Brighter Shores Wiki
en_bshoreswiki
https://brightershoreswiki.org/
MediaWiki 1.41.1
first-letter
Media
Special
Talk
User
User talk
Brighter Shores
Brighter Shores talk
File
File talk
MediaWiki
MediaWiki talk
Template
Template talk
Help
Help talk
Category
Category talk
Forum
Forum talk
Property
Property talk
Concept
Concept talk
smw/schema
smw/schema talk
Rule
Rule talk
Module
Module talk
Gadget
Gadget talk
Gadget definition
Gadget definition talk
MediaWiki:Licenses
8
2
3
2024-03-22T01:55:27Z
Jayden
3
Created page with "- Test"
wikitext
text/x-wiki
- Test
460e1c05fd0384495986b8e31311db316915831a
File:Favicon.ico
6
3
4
2024-03-22T01:56:10Z
Jayden
3
wikitext
text/x-wiki
da39a3ee5e6b4b0d3255bfef95601890afd80709
5
4
2024-03-22T01:56:19Z
Jayden
3
Protected "[[File:Favicon.ico]]": High traffic page ([Edit=Allow only administrators] (indefinite) [Move=Allow only administrators] (indefinite) [Upload=Allow only administrators] (indefinite))
wikitext
text/x-wiki
da39a3ee5e6b4b0d3255bfef95601890afd80709
Main Page
0
4
6
2024-03-22T01:57:03Z
Jayden
3
Created blank page
wikitext
text/x-wiki
da39a3ee5e6b4b0d3255bfef95601890afd80709
MediaWiki:Common.less
8
5
7
2024-03-22T02:14:07Z
Jayden
3
initial based on osw
wikitext
text/x-wiki
/* =============================================================================
* This is the root Less file that is parsed to produce [[MediaWiki:Common.css]].
*
* These styles will be applied to all skins (desktop and mobile).
* -----------------------------------------------------------------------------
* Less documentation: <http://lesscss.org/features/>
* Gadget: <https://meta.weirdgloop.org/w/MediaWiki:Gadget-Less.js>
* Core Less JS: <https://meta.weirdgloop.org/w/MediaWiki:Gadget-Less-core.js>
* Non-standard mixins: <https://meta.weirdgloop.org/w/MediaWiki:Gadget-LessMixins.less>
* Online Less tester: <https://lesscss.org/less-preview/>
* ============================================================================= */
// ===== CSS Variables =====
@common: 'MediaWiki:Common.less';
:root {
--body-main: #e2dbc8;
--body-light: #d8ccb4;
--body-mid: #d0bd97;
--body-dark: #b8a282;
--body-border: #94866d;
--body-background-color: #c0a886;
--button-background: #605443;
--button-color: @white;
--button-border: #3c352a;
--button-dark: #18140c;
--button-light: #3a301d;
--sidebar: #cfc08d;
--background-text-color: #444;
--background-link-color: #52351e;
--search-box: #efeee6;
--link-color: #936039;
--redlink-color: #ba0000;
--text-color: @black;
--byline-color: @tundora;
--subtle-color: @boulder;
--admin-blue: #332e75;
--bearcat-green: #13592e;
--awb-purple: #933b96;
--rsw-blue: #438ab6;
--osrsw-brown: #605443;
// used for gallery & thumbs
--thumb-bg: var(--body-light);
--thumb-caption-bg: var(--body-mid);
// for sourceeditor - CodeMirror and WikiEditor's that are only available on
// desktop are also here to not fragment the vars across many files
--sourceeditor-input-background: @white;
--sourceeditor-background: var(--body-light);
--sourceeditor-background-secondary: var(--body-light); // used on .editOptions
--sourceeditor-border: var(--body-mid);
--codemirror-gutter-background: var(--body-mid);
}
// ===== Imports =====
// include fonts first
@import '@{common}/mixins.less';
@import '@{common}/fonts.less'; // Font definitions and font stack definitions
@import '@{common}/variables.less'; // Less variables
@import '@{common}/elements.less'; // HTML elements
@import '@{common}/links.less'; // Link colours
@import '@{common}/highlight.less'; // Usergroup highlighting
// Interface
@import '@{common}/interface.less'; // MW common elements
@import '@{common}/wikitables.less'; // .wikitable class and etc
//@import '@{common}/cookies.less'; // Do you accept these cookies?
@import '@{common}/charts.less'; // ChartJS hide config
@import '@{common}/diff.less'; // Revision differences
//@import '@{common}/itemcompare.less'; // Item compare css
//@import '@{common}/announcement.less'; // Mainpage annnouncement pill (unused rn)
@import '@{common}/notifications.less';
@import '@{common}/pagepreviews.less'; // Page preview popups
@import '@{common}/smw.less'; // Semantic MediaWiki
@import '@{common}/tabber.less'; // <tabber>
@import '@{common}/tooltips.less';
@import '@{common}/ooui.less'; // OOUI Customisations
// Kartographer customisations - previously at /dooglemaps.less, currently being
// imported here as as of 2022/8/22 it gets loaded before default styles instead
@import 'MediaWiki:Kartographer.less'; // currently broken on its css page
@import '@{common}/visualeditor.less'; // VisualEditor
// Templates
@import '@{common}/templates.less'; // Various templates
@import '@{common}/infobox.less'; // Infobox vars
@import '@{common}/coins.less'; // [[Template:Coins]]
@import '@{common}/documentation.less'; // [[Template:Documentation]]
@import '@{common}/fairycode.less'; // [[Template:Fairycode]]
@import '@{common}/floornumber.less'; // [[Template:FloorNumber]]
@import '@{common}/listen.less'; // [[Template:Listen]]
@import '@{common}/plink.less'; // [[Template:Plink]]
//@import '@{common}/pohroom.less'; // [[Template:POH Room]] - converted to TemplateStyles
@import '@{common}/questdetails.less'; // [[Template:Quest details]]
@import '@{common}/references.less'; // <references>
@import '@{common}/editnotice.less'; // [[Template:Editnotice]]
@import '@{common}/messagebox.less'; // Messagebox templates
@import '@{common}/poll.less'; // Ajax poll styles
//@import '@{common}/skilltraining.less'; // Skilltraining class
@import '@{common}/storage.less'; // Storage templates; [[Template:Inventory]], [[Template:Equipment]], and related templates
@import '@{common}/transcripts.less'; // Transcript pages
// Page specific
@import '@{common}/tiles.less'; // Main page tiles
@import '@{common}/mainpage.less'; // OSRS Wiki home page
@import '@{common}/prefs.less'; // Wiki preferences theming
@import '@{common}/specials.less'; // Special pages
@import '@{common}/sitenotice.less'; // [[MediaWiki:Sitenotice]]
@import '@{common}/mmg.less'; // [[Money making guides]]
@import '@{common}/discussions.less'; // [[RS:RG]] [[RS:AD]]
//@import '@{common}/oswf.less'; // [[RS:OSWF]] - unused
//@import '@{common}/rstheme.less'; // [[RS:THEME]] - converted to TemplateStyles
@import '@{common}/gemw.less'; // GE charts and Exchange ns pages
// ===== Miscellaneous =====
// hide certain links in sidebar tools
#t-print,
#t-permalink {
display: none;
}
// calculator script config
.jcConfig {
display: none;
}
#filetoc {
border-radius: @border-radius;
background: @BODY_MID;
border-color: transparent;
margin: 0.5em auto;
text-align: center;
box-shadow: @box-shadow;
}
// Galleries
li.gallerybox div.thumb {
border: none;
background-color: var(--thumb-bg);
}
.smwfact {
display: none;
}
// applies to mobile talk pages, and smw??
.list-header {
background-color: var(--body-mid);
color: inherit;
}
// Source editor w/o syntaxhighlight; also applies to mobile in case JS is
// turned off
.editOptions {
color: var(--text-color);
background-color: var(--sourceeditor-background-secondary);
border-color: var(--sourceeditor-border);
}
// "updated since your last visit" notice when checking watchlisted page hist
.updatedmarker {
background-color: @caper;
// static colour instead of inheriting, prob dont want to change across themes
color: darken( @san-felix, 10% )
}
// .json pages
.mw-json {
th,
td {
border-color: var(--wikitable-border);
}
// instead of selecting `tr`, do this to avoid dealing with mw-json-* classes
td {
background: var(--wikitable-bg);
}
th {
background: var(--wikitable-header-bg);
}
}
0320d0a75b1d0193a8bb72c0d467969ddc879bf3
11
7
2024-03-22T02:17:59Z
Jayden
3
Jayden changed the content model of the page [[MediaWiki:Common.less]] from "wikitext" to "less"
less
less
/* =============================================================================
* This is the root Less file that is parsed to produce [[MediaWiki:Common.css]].
*
* These styles will be applied to all skins (desktop and mobile).
* -----------------------------------------------------------------------------
* Less documentation: <http://lesscss.org/features/>
* Gadget: <https://meta.weirdgloop.org/w/MediaWiki:Gadget-Less.js>
* Core Less JS: <https://meta.weirdgloop.org/w/MediaWiki:Gadget-Less-core.js>
* Non-standard mixins: <https://meta.weirdgloop.org/w/MediaWiki:Gadget-LessMixins.less>
* Online Less tester: <https://lesscss.org/less-preview/>
* ============================================================================= */
// ===== CSS Variables =====
@common: 'MediaWiki:Common.less';
:root {
--body-main: #e2dbc8;
--body-light: #d8ccb4;
--body-mid: #d0bd97;
--body-dark: #b8a282;
--body-border: #94866d;
--body-background-color: #c0a886;
--button-background: #605443;
--button-color: @white;
--button-border: #3c352a;
--button-dark: #18140c;
--button-light: #3a301d;
--sidebar: #cfc08d;
--background-text-color: #444;
--background-link-color: #52351e;
--search-box: #efeee6;
--link-color: #936039;
--redlink-color: #ba0000;
--text-color: @black;
--byline-color: @tundora;
--subtle-color: @boulder;
--admin-blue: #332e75;
--bearcat-green: #13592e;
--awb-purple: #933b96;
--rsw-blue: #438ab6;
--osrsw-brown: #605443;
// used for gallery & thumbs
--thumb-bg: var(--body-light);
--thumb-caption-bg: var(--body-mid);
// for sourceeditor - CodeMirror and WikiEditor's that are only available on
// desktop are also here to not fragment the vars across many files
--sourceeditor-input-background: @white;
--sourceeditor-background: var(--body-light);
--sourceeditor-background-secondary: var(--body-light); // used on .editOptions
--sourceeditor-border: var(--body-mid);
--codemirror-gutter-background: var(--body-mid);
}
// ===== Imports =====
// include fonts first
@import '@{common}/mixins.less';
@import '@{common}/fonts.less'; // Font definitions and font stack definitions
@import '@{common}/variables.less'; // Less variables
@import '@{common}/elements.less'; // HTML elements
@import '@{common}/links.less'; // Link colours
@import '@{common}/highlight.less'; // Usergroup highlighting
// Interface
@import '@{common}/interface.less'; // MW common elements
@import '@{common}/wikitables.less'; // .wikitable class and etc
//@import '@{common}/cookies.less'; // Do you accept these cookies?
@import '@{common}/charts.less'; // ChartJS hide config
@import '@{common}/diff.less'; // Revision differences
//@import '@{common}/itemcompare.less'; // Item compare css
//@import '@{common}/announcement.less'; // Mainpage annnouncement pill (unused rn)
@import '@{common}/notifications.less';
@import '@{common}/pagepreviews.less'; // Page preview popups
@import '@{common}/smw.less'; // Semantic MediaWiki
@import '@{common}/tabber.less'; // <tabber>
@import '@{common}/tooltips.less';
@import '@{common}/ooui.less'; // OOUI Customisations
// Kartographer customisations - previously at /dooglemaps.less, currently being
// imported here as as of 2022/8/22 it gets loaded before default styles instead
@import 'MediaWiki:Kartographer.less'; // currently broken on its css page
@import '@{common}/visualeditor.less'; // VisualEditor
// Templates
@import '@{common}/templates.less'; // Various templates
@import '@{common}/infobox.less'; // Infobox vars
@import '@{common}/coins.less'; // [[Template:Coins]]
@import '@{common}/documentation.less'; // [[Template:Documentation]]
@import '@{common}/fairycode.less'; // [[Template:Fairycode]]
@import '@{common}/floornumber.less'; // [[Template:FloorNumber]]
@import '@{common}/listen.less'; // [[Template:Listen]]
@import '@{common}/plink.less'; // [[Template:Plink]]
//@import '@{common}/pohroom.less'; // [[Template:POH Room]] - converted to TemplateStyles
@import '@{common}/questdetails.less'; // [[Template:Quest details]]
@import '@{common}/references.less'; // <references>
@import '@{common}/editnotice.less'; // [[Template:Editnotice]]
@import '@{common}/messagebox.less'; // Messagebox templates
@import '@{common}/poll.less'; // Ajax poll styles
//@import '@{common}/skilltraining.less'; // Skilltraining class
@import '@{common}/storage.less'; // Storage templates; [[Template:Inventory]], [[Template:Equipment]], and related templates
@import '@{common}/transcripts.less'; // Transcript pages
// Page specific
@import '@{common}/tiles.less'; // Main page tiles
@import '@{common}/mainpage.less'; // OSRS Wiki home page
@import '@{common}/prefs.less'; // Wiki preferences theming
@import '@{common}/specials.less'; // Special pages
@import '@{common}/sitenotice.less'; // [[MediaWiki:Sitenotice]]
@import '@{common}/mmg.less'; // [[Money making guides]]
@import '@{common}/discussions.less'; // [[RS:RG]] [[RS:AD]]
//@import '@{common}/oswf.less'; // [[RS:OSWF]] - unused
//@import '@{common}/rstheme.less'; // [[RS:THEME]] - converted to TemplateStyles
@import '@{common}/gemw.less'; // GE charts and Exchange ns pages
// ===== Miscellaneous =====
// hide certain links in sidebar tools
#t-print,
#t-permalink {
display: none;
}
// calculator script config
.jcConfig {
display: none;
}
#filetoc {
border-radius: @border-radius;
background: @BODY_MID;
border-color: transparent;
margin: 0.5em auto;
text-align: center;
box-shadow: @box-shadow;
}
// Galleries
li.gallerybox div.thumb {
border: none;
background-color: var(--thumb-bg);
}
.smwfact {
display: none;
}
// applies to mobile talk pages, and smw??
.list-header {
background-color: var(--body-mid);
color: inherit;
}
// Source editor w/o syntaxhighlight; also applies to mobile in case JS is
// turned off
.editOptions {
color: var(--text-color);
background-color: var(--sourceeditor-background-secondary);
border-color: var(--sourceeditor-border);
}
// "updated since your last visit" notice when checking watchlisted page hist
.updatedmarker {
background-color: @caper;
// static colour instead of inheriting, prob dont want to change across themes
color: darken( @san-felix, 10% )
}
// .json pages
.mw-json {
th,
td {
border-color: var(--wikitable-border);
}
// instead of selecting `tr`, do this to avoid dealing with mw-json-* classes
td {
background: var(--wikitable-bg);
}
th {
background: var(--wikitable-header-bg);
}
}
0320d0a75b1d0193a8bb72c0d467969ddc879bf3
12
11
2024-03-22T02:20:21Z
Jayden
3
remove stuff that is going to be unnecessary
less
less
/* =============================================================================
* This is the root Less file that is parsed to produce [[MediaWiki:Common.css]].
*
* These styles will be applied to all skins (desktop and mobile).
* -----------------------------------------------------------------------------
* Less documentation: <http://lesscss.org/features/>
* Gadget: <https://meta.weirdgloop.org/w/MediaWiki:Gadget-Less.js>
* Core Less JS: <https://meta.weirdgloop.org/w/MediaWiki:Gadget-Less-core.js>
* Non-standard mixins: <https://meta.weirdgloop.org/w/MediaWiki:Gadget-LessMixins.less>
* Online Less tester: <https://lesscss.org/less-preview/>
* ============================================================================= */
// ===== CSS Variables =====
@common: 'MediaWiki:Common.less';
:root {
--body-main: #e2dbc8;
--body-light: #d8ccb4;
--body-mid: #d0bd97;
--body-dark: #b8a282;
--body-border: #94866d;
--body-background-color: #c0a886;
--button-background: #605443;
--button-color: @white;
--button-border: #3c352a;
--button-dark: #18140c;
--button-light: #3a301d;
--sidebar: #cfc08d;
--background-text-color: #444;
--background-link-color: #52351e;
--search-box: #efeee6;
--link-color: #936039;
--redlink-color: #ba0000;
--text-color: @black;
--byline-color: @tundora;
--subtle-color: @boulder;
--admin-blue: #332e75;
--bearcat-green: #13592e;
--awb-purple: #933b96;
--rsw-blue: #438ab6;
--osrsw-brown: #605443;
// used for gallery & thumbs
--thumb-bg: var(--body-light);
--thumb-caption-bg: var(--body-mid);
// for sourceeditor - CodeMirror and WikiEditor's that are only available on
// desktop are also here to not fragment the vars across many files
--sourceeditor-input-background: @white;
--sourceeditor-background: var(--body-light);
--sourceeditor-background-secondary: var(--body-light); // used on .editOptions
--sourceeditor-border: var(--body-mid);
--codemirror-gutter-background: var(--body-mid);
}
// ===== Imports =====
// include fonts first
@import '@{common}/mixins.less';
@import '@{common}/fonts.less'; // Font definitions and font stack definitions
@import '@{common}/variables.less'; // Less variables
@import '@{common}/elements.less'; // HTML elements
@import '@{common}/links.less'; // Link colours
// Interface
@import '@{common}/interface.less'; // MW common elements
@import '@{common}/wikitables.less'; // .wikitable class and etc
@import '@{common}/diff.less'; // Revision differences
@import '@{common}/notifications.less';
@import '@{common}/pagepreviews.less'; // Page preview popups
@import '@{common}/smw.less'; // Semantic MediaWiki
@import '@{common}/tabber.less'; // <tabber>
@import '@{common}/ooui.less'; // OOUI Customisations
@import '@{common}/visualeditor.less'; // VisualEditor
// Templates
@import '@{common}/templates.less'; // Various templates
@import '@{common}/infobox.less'; // Infobox vars
@import '@{common}/references.less'; // <references>
// Page specific
@import '@{common}/prefs.less'; // Wiki preferences theming
@import '@{common}/specials.less'; // Special pages
// ===== Miscellaneous =====
// hide certain links in sidebar tools
#t-print,
#t-permalink {
display: none;
}
#filetoc {
border-radius: @border-radius;
background: @BODY_MID;
border-color: transparent;
margin: 0.5em auto;
text-align: center;
box-shadow: @box-shadow;
}
// Galleries
li.gallerybox div.thumb {
border: none;
background-color: var(--thumb-bg);
}
.smwfact {
display: none;
}
// applies to mobile talk pages, and smw??
.list-header {
background-color: var(--body-mid);
color: inherit;
}
// Source editor w/o syntaxhighlight; also applies to mobile in case JS is
// turned off
.editOptions {
color: var(--text-color);
background-color: var(--sourceeditor-background-secondary);
border-color: var(--sourceeditor-border);
}
// .json pages
.mw-json {
th,
td {
border-color: var(--wikitable-border);
}
// instead of selecting `tr`, do this to avoid dealing with mw-json-* classes
td {
background: var(--wikitable-bg);
}
th {
background: var(--wikitable-header-bg);
}
}
bfdeeb95ce9ef88cbd4a4a4815897dcfdb140f75
MediaWiki:Gadgets-definition
8
6
8
2024-03-22T02:16:32Z
Jayden
3
Created page with "This page contains the definitions for all gadgets on the wiki. In most cases, code that could be placed in Common.js should be made into a module here instead for granularity and better support for mobile, etc. Edits to this page should be done with care. When targeting a gadget for mobile, ensure that the gadget '''works''' on mobile properly by debugging it on mobile devices. Some mobile devices do not allow JavaScript to run, or do not run it by default, so there sh..."
wikitext
text/x-wiki
This page contains the definitions for all gadgets on the wiki. In most cases, code that could be placed in Common.js should be made into a module here instead for granularity and better support for mobile, etc.
Edits to this page should be done with care. When targeting a gadget for mobile, ensure that the gadget '''works''' on mobile properly by debugging it on mobile devices. Some mobile devices do not allow JavaScript to run, or do not run it by default, so there should always be a fallback option for those that do not have JS enabled.
==Core==
* Less[ResourceLoader|rights=editinterface|dependencies=mediawiki.api|type=general|default|hidden]|Less.js|Less.css
1213ce9b473b6240c11f919234d56f6a131e0faa
10
8
2024-03-22T02:17:31Z
Jayden
3
wikitext
text/x-wiki
This page contains the definitions for all gadgets on the wiki. In most cases, code that could be placed in Common.js should be made into a module here instead for granularity and better support for mobile, etc.
Edits to this page should be done with care. When targeting a gadget for mobile, ensure that the gadget '''works''' on mobile properly by debugging it on mobile devices. Some mobile devices do not allow JavaScript to run, or do not run it by default, so there should always be a fallback option for those that do not have JS enabled.
==Core==
* Less[ResourceLoader|rights=editinterface|dependencies=mediawiki.api|type=general|default|hidden]|Less.js
3222ab9a29b33e1557f169310e4e97f1ca3760e6
MediaWiki:Gadget-Less.js
8
7
9
2024-03-22T02:17:03Z
Jayden
3
Created page with "window.lessTargets = [ // globals 'MediaWiki:Common.css', 'MediaWiki:Minerva.css', 'MediaWiki:Vector.css', ] if ( window.lessTargets.includes( mw.config.get( 'wgPageName' ).replace(new RegExp('\.less$'),'.css' ) ) ) { mw.loader.load( '//meta.weirdgloop.org/w/MediaWiki:Gadget-Less-core.js?action=raw&ctype=text/javascript' ) }"
javascript
text/javascript
window.lessTargets = [
// globals
'MediaWiki:Common.css',
'MediaWiki:Minerva.css',
'MediaWiki:Vector.css',
]
if ( window.lessTargets.includes( mw.config.get( 'wgPageName' ).replace(new RegExp('\.less$'),'.css' ) ) ) {
mw.loader.load( '//meta.weirdgloop.org/w/MediaWiki:Gadget-Less-core.js?action=raw&ctype=text/javascript' )
}
555903f818bcedc4b7b8637521b9f43eb6572b1b
MediaWiki:Common.less/mixins.less
8
8
13
2024-03-22T02:21:09Z
Jayden
3
Created page with "/* Less mixins to be used from any skin. */ // for HiDPI screens; otherwise icons appear blurry .pixelate() { @media (-webkit-min-device-pixel-ratio: 2), (min-resolution: 192dpi) { image-rendering: pixelated; // chrome only supports this value image-rendering: crisp-edges; // this is what should be used } } // used for .messagebox class .mbox(@name) { &.@{name} { background-color: var(~"--messagebox-@{name}-background"); border-color: var(~"--messagebox-@..."
less
less
/*
Less mixins to be used from any skin.
*/
// for HiDPI screens; otherwise icons appear blurry
.pixelate() {
@media (-webkit-min-device-pixel-ratio: 2), (min-resolution: 192dpi) {
image-rendering: pixelated; // chrome only supports this value
image-rendering: crisp-edges; // this is what should be used
}
}
// used for .messagebox class
.mbox(@name) {
&.@{name} {
background-color: var(~"--messagebox-@{name}-background");
border-color: var(~"--messagebox-@{name}-border");
color: var(~"--messagebox-@{name}-color");
a,
a:visited,
a:active {
color: var(~"--messagebox-@{name}-link-color");
}
}
}
.mboxvar(@name, @background, @border, @color, @link-color) {
--messagebox-@{name}-background: @background;
--messagebox-@{name}-border: @border;
--messagebox-@{name}-color: @color;
--messagebox-@{name}-link-color: @link-color;
}
// possible replacement of defining inline svgs as css vars using mask-image
// currentColor functionality
.mask(@url) {
// chrome/edge doesnt support unprefixed as of 2023
-webkit-mask: url(~'"@{url}"') no-repeat 50% 50% / contain;
mask: url(~'"@{url}"') no-repeat 50% 50% / contain;
}
f8b131a3392658708df53e292f5ef1a99530624b
File:Lora.woff2
6
9
14
2024-03-22T02:27:28Z
Jayden
3
wikitext
text/x-wiki
da39a3ee5e6b4b0d3255bfef95601890afd80709
17
14
2024-03-22T02:28:44Z
Jayden
3
Protected "[[File:Lora.woff2]]": High traffic page ([Edit=Allow only administrators] (indefinite) [Move=Allow only administrators] (indefinite) [Upload=Allow only administrators] (indefinite))
wikitext
text/x-wiki
da39a3ee5e6b4b0d3255bfef95601890afd80709
File:Lora-Italic.woff2
6
10
15
2024-03-22T02:28:30Z
Jayden
3
wikitext
text/x-wiki
da39a3ee5e6b4b0d3255bfef95601890afd80709
16
15
2024-03-22T02:28:36Z
Jayden
3
Protected "[[File:Lora-Italic.woff2]]": High traffic page ([Edit=Allow only administrators] (indefinite) [Move=Allow only administrators] (indefinite) [Upload=Allow only administrators] (indefinite))
wikitext
text/x-wiki
da39a3ee5e6b4b0d3255bfef95601890afd80709
MediaWiki:Common.less/fonts.less
8
11
18
2024-03-22T02:30:21Z
Jayden
3
Created page with "// https://fonts.google.com/specimen/Lora @font-face { font-family: 'Lora'; font-weight: 400 700; font-style: normal; font-display: swap; src: url('filepath://Lora.woff2') format('woff2'); } @font-face { font-family: 'Lora'; font-weight: 400 700; font-style: italic; font-display: swap; src: url('filepath://Lora-Italic.woff2') format('woff2'); }"
less
less
// https://fonts.google.com/specimen/Lora
@font-face {
font-family: 'Lora';
font-weight: 400 700;
font-style: normal;
font-display: swap;
src: url('filepath://Lora.woff2') format('woff2');
}
@font-face {
font-family: 'Lora';
font-weight: 400 700;
font-style: italic;
font-display: swap;
src: url('filepath://Lora-Italic.woff2') format('woff2');
}
eab9f703cb08be07eb88833a64a3ac2d84b91df2
MediaWiki:Common.less/variables.less
8
12
19
2024-03-22T02:32:56Z
Jayden
3
base cp from rsw
less
less
/* ======================
THEME VARIABLES
====================== */
// colors are sorted from darkest to lightest
// See <https://davidwalsh.name/sass-color-variables-dont-suck> for naming system
// Don't change any of this unless you know what you're doing
/* ------------------
brand colors
------------------ */
// blues
@chathams-blue: #115883;
@jelly-bean: #246c97;
@steel-blue: #438ab5;
@fountain-blue: #6ba5c8;
@spindle: #c1deee;
@selago: #f6fbfe;
@nav-blue: #d8e5ff;
// gray-blues
@grey-gray: #ddd;
@river-bed: #444e5a;
@shuttle-gray: #5d6773;
@gray-chateau: #949eaa;
@loblolly: #bdc5cd;
@mystic: #e4eaee;
@black-haze: #f9fafa;
// grays
@mineshaft: #333;
@tundora: #4c4c4c;
@boulder: #777;
@silver: #ccc;
@gallery: #eee;
@alabaster: #f9f9f9;
// dark mode
@black-pearl: #071022;
@big-stone: #172136;
@cloud-burst: #222e45;
@pickled-bluewood: #313e59;
@waikawa-grey: #596e96;
@portage: #8cabe6;
// BROWN dark mode
@ebony-brown: #1b1612;
@mocha-brown: #28221d;
@cacao-brown: #312a25;
@sable-brown: #3e362f;
@driftwood-brown: #5e5248;
@taupe-brown: #736559;
@kharid-sand: #b79d7e;
@slate-grey: #98a2b6;
@ivory-white: #f4eaea;
/* -------------------
other brands
------------------- */
// Discord
@discord-bg: #5865f2;
@discord-bg-dark: #525ee0;
@discord-bg-darker: #4c57d0;
/* -------------------
status colors
------------------- */
// reds
@mocaccino: #801c13;
@old-brick: #9f261e;
@flamingo: #ee4231;
@apricot-peach: #fbc0ba;
@bridesmaid: #feecea;
// oranges
@antique-bronze: #7a3f08;
@korma: #b55e0c;
@ecstasy: #f7861b;
@corvette: #fbcfa6;
@lace: #fef0e4;
// yellows
@cinnamon: #786300;
@olive: #a48900;
@supernova: #f9d000;
@golden: #fcea94;
@half-dutch: #fef9de;
// greens
@san-felix: #2e5e05;
@la-palma: #3c780a;
@lima: #6bc71f;
@caper: #c3e8a3;
@frost: #ecf8e3;
// blues
@regal-blue: #03436b;
@venice-blue: #0b5884;
@curious-blue: #3ea6e6;
@jordy-blue: #aad9f5;
@tropical-blue: #e5f3fc;
// purples
@honey-flower: #3d276b;
@seance: #4f348b;
@medium-purple: #855cd8;
@perfume: #cfc0f0;
@heliotrope: #f0ecfa;
// pinks
@cosmic: #6d3662;
@cannon-pink: #984c89;
@lavender: #e874cf;
@cherub: #f5c8ec;
@french-lilac: #fceef9;
// other
@black: #000;
@white: #fff;
/* ----------------
shadows
---------------- */
@box-shadow: 0 .25rem .35rem -0.25rem rgba(0,0,0,.1);
@box-shadow-dark: 0 .25rem .35rem -0.25rem rgba(0,0,0,.3);
/* ---------------------
border-radius
--------------------- */
// from wmui:
// <https://github.com/wikimedia/wikimedia-ui-base/blob/master/wikimedia-ui-base.less>
@border-radius: 2px;
@border-radius-circle: 50%;
@border-radius-round: 9999px;
/* ---------------------
breakpoints
--------------------- */
// also from wmui
// mobile
@width-breakpoint-mobile: 320px;
// tablet
@width-breakpoint-tablet: 720px;
// desktop
@width-breakpoint-desktop: 1000px;
// Wider desktop
@width-breakpoint-desktop-wide: 1200px;
@width-breakpoint-desktop-extrawide: 2000px;
/* ------------------------
easing curves
<https://easings.net>
------------------------ */
@ease-out-quad: cubic-bezier(0.25, 0.46, 0.45, 0.94);
@ease-out-cubic: cubic-bezier(0.215, 0.61, 0.355, 1);
/* -----------------
typefaces
----------------- */
// imported in [[MediaWiki:Common.less/fonts.less]]
@serif-stack: 'Lora', 'Palatino', 'Georgia', serif;
@sans-serif-stack: 'Helvetica Neue', 'Arial', sans-serif;
@BODY_MAIN: var(--body-main);
@BODY_LIGHT: var(--body-light);
@BODY_MID: var(--body-mid);
@BODY_DARK: var(--body-dark);
@BODY_BORDER: var(--body-border);
@BUTTON_BORDER: var(--button-border);
@BUTTON_DARK: var(--button-dark);
@BUTTON_LIGHT: var(--button-light);
@SIDEBAR: var(--sidebar);
@SEARCH_BOX: var(--search-box);
@LINK_COLOR: var(--link-color);
@REDLINK_COLOR: var(--redlink-color);
@TEXT_COLOR: var(--text-color);
@infobox-background: @BODY_LIGHT;
@infobox-header-color: @BODY_DARK;
@infobox-border-color: @BODY_BORDER;
@infobox-subheader-color: @BODY_DARK;
105ef40b78f0a254f6e2d5e5076eaea93cd56b60
MediaWiki:Common.less/elements.less
8
13
20
2024-03-22T02:34:03Z
Jayden
3
Created page with "/* =================== HTML elements =================== */ :root { // todo: delete these, they're for rsw only and we already use our own colors --base-text-color: saturate( darken( @river-bed, 5% ), 5% ); --base-heading-color: @river-bed; --base-heading-border: @mystic; --mw-code-background-color: #ddd4bb; --body-background-image: url('filepath://Wiki_background.jpg'); } @base-text-color: var(--base-text-color); @base-heading-color: var(--base-heading-..."
less
less
/* ===================
HTML elements
=================== */
:root {
// todo: delete these, they're for rsw only and we already use our own colors
--base-text-color: saturate( darken( @river-bed, 5% ), 5% );
--base-heading-color: @river-bed;
--base-heading-border: @mystic;
--mw-code-background-color: #ddd4bb;
--body-background-image: url('filepath://Wiki_background.jpg');
}
@base-text-color: var(--base-text-color);
@base-heading-color: var(--base-heading-color);
@base-heading-border: var(--base-heading-border);
/* --------------------
body
-------------------- */
#mw-page-base {
background: none;
}
.mw-body {
background-color: var(--body-main);
color: var(--text-color);
border-color: transparent;
box-shadow: 0 0 7px rgba(0, 0, 0, 0.15);
margin-top: 0;
}
/* --------------------
headings
-------------------- */
h1,
h2,
h3,
h4,
h5,
h6 {
color: var(--text-color);
}
h1,
h2 {
border-color: var(--sidebar);
}
.mw-body h1,
.mw-body-content h1,
.mw-body-content h2,
.mw-body-content h3,
.mw-body-content h4,
.mw-body-content h5,
.mw-body-content h6 {
font-family: @serif-stack;
}
// Clear left on first subheader. Useful to start section after DIIs
.mw-parser-output h2:first-of-type {
clear: left;
}
/* -------------------------
<footer> below content
------------------------- */
.mw-footer {
color: var(--background-text-color);
li {
color: var(--background-text-color);
}
a,
a:active,
a:visited {
color: var(--background-link-color);
}
}
/* -------------------------
<input> placeholder
------------------------- */
::placeholder {
color: var(--subtle-color);
}
b3676b4ca26089931db1cc63e0a949902007a85f
File:Wiki background.jpg
6
14
21
2024-03-22T02:34:25Z
Jayden
3
wikitext
text/x-wiki
da39a3ee5e6b4b0d3255bfef95601890afd80709
22
21
2024-03-22T02:34:34Z
Jayden
3
Protected "[[File:Wiki-background.jpg]]": High traffic page ([Edit=Allow only administrators] (indefinite) [Move=Allow only administrators] (indefinite) [Upload=Allow only administrators] (indefinite))
wikitext
text/x-wiki
da39a3ee5e6b4b0d3255bfef95601890afd80709
23
22
2024-03-22T02:34:44Z
Jayden
3
Jayden moved page [[File:Wiki-background.jpg]] to [[File:Wiki background.jpg]] without leaving a redirect
wikitext
text/x-wiki
da39a3ee5e6b4b0d3255bfef95601890afd80709
MediaWiki:Common.less/links.less
8
15
24
2024-03-22T02:35:08Z
Jayden
3
base cp from rsw
less
less
/* =================
link colors
================= */
/* --------------------
internal links
-------------------- */
a {
color: @LINK_COLOR;
&:visited,
&:active {
color: @LINK_COLOR;
}
&.new {
color: @REDLINK_COLOR;
&:visited {
color: @REDLINK_COLOR;
}
}
}
// interwiki link
.mw-parser-output a.extiw,
// external links
.mw-parser-output a.external {
color: @LINK_COLOR;
&:visited,
&:active {
color: @LINK_COLOR;
}
}
// recolor internal purge links classified by MediaWiki as external
.jsPurgeLink a.external {
color: @LINK_COLOR;
}
b6aabe6e4a2fe4c5820dd3accc0b3aa26c13bb63
MediaWiki:Common.less/interface.less
8
16
25
2024-03-22T02:35:37Z
Jayden
3
base cp from rsw
less
less
/* =====================
Common MediaWiki
elements inside .mw-body
===================== */
:root {
--errorbox-bg: @bridesmaid;
--errorbox-border: @flamingo;
--warningbox-bg: @half-dutch;
--warningbox-border: @supernova;
--successbox-bg: @frost;
--successbox-border: @lima;
}
// core mw messagebox
.mw-message-box-error, .errorbox,
.mw-message-box-warning, .warningbox,
.mw-message-box-success, .successbox,
// anon talk page message alert
.usermessage {
box-shadow: @box-shadow;
}
.mw-message-box-error, .errorbox {
background-color: var(--errorbox-bg);
border-color: var(--errorbox-border);
}
.mw-message-box-warning, .warningbox,
.usermessage {
background-color: var(--warningbox-bg);
border-color: var(--warningbox-border);
}
.mw-message-box-success, .successbox {
background-color: var(--successbox-bg);
border-color: var(--successbox-border);
}
.catlinks {
background: var(--body-light);
border: 1px solid var(--body-dark);
padding: 8px 15px;
box-shadow: @box-shadow;
li {
border-color: var(--body-mid);
}
}
// checkered background in file pages
.filehistory a img,
#file img {
background: url("data:image/svg+xml,%3C%3Fxml version='1.0' encoding='UTF-8'%3F%3E%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16'%3E%3Cpath d='M0 0h8v16h8V8H0z' opacity='.13'/%3E%3C/svg%3E") repeat;
}
#file img:hover {
background: none;
}
// Prevents undesired background showing when next to expanded toc
.mw-highlight {
background: none;
.linenos {
background-color: var(--mw-code-background-color);
// line number
color: var(--byline-color);
}
// line number hover
a:hover .linenos,
.hll a .linenos {
color: var(--text-color);
}
}
.mw-content-ltr.mw-highlight-lines pre,
.mw-content-ltr.content .mw-highlight-lines pre {
box-shadow: inset 2.75em 0 0 var(--mw-code-background-color);
}
// page history
#pagehistory {
ul {
list-style: none;
margin: 0;
}
li {
border: 1px solid transparent;
padding: 1px 10px;
margin: 2px 0;
&.selected {
background-color: var(--body-light);
color: inherit;
border: 1px dashed var(--body-border);
outline: none;
}
}
}
// Sticky compare rev
#mw-history-compare > div:first-of-type {
position: -webkit-sticky;
position: sticky;
top: 0;
background-color: var(--body-main);
border-bottom: 1px solid @BODY_DARK;
padding: .25em 0;
.wgl-stickyheader & {
top: 2.5rem; // = height of stickyheader
}
}
// auto section edit summaries
.autocomment,
.autocomment a,
.autocomment a:visited {
color: var(--link-color);
}
// revdeleted logs: "(log details removed)"
li span.deleted,
span.history-deleted {
color: var(--byline-color);
}
// redlinked contribs page for users without edits
.mw-usertoollinks-contribs-no-edits,
.mw-usertoollinks-contribs-no-edits:visited {
color: var(--redlink-color);
}
.CategoryTreeToggle {
color: var(--link-color);
}
/* --------------------------------------
fix section heading being hidden
underneath sticky header
-------------------------------------- */
// technique from <https://css-tricks.com/hash-tag-links-padding/>
body.wgl-stickyheader.action-view .mw-headline:target::before {
display: block;
content: '';
margin-top: -3rem;
height: 3rem;
visibility: hidden;
pointer-events: none;
}
/* ------------------------
MultimediaViewer
------------------------*/
// main lightbox
.mw-mmv-post-image {
color: var(--text-color);
background-color: var(--body-main);
}
// metadata panel
.mw-mmv-image-metadata {
border-top-color: var(--body-mid);
background-color: var(--body-light);
}
// download box and etc
.mw-mmv-dialog,
.mw-mmv-dialog .mw-mmv-dialog-down-arrow,
.mw-mmv-options-dialog .mw-mmv-dialog-down-arrow {
background-color: var(--body-light);
box-shadow: none;
}
// activation box header
.mw-mmv-options-enable-alert {
background-color: var(--body-light);
color: var(--text-color);
}
// use consistent text color for all for simplicity
.mw-mmv-options-dialog-header,
.mw-mmv-options-text-header,
.mw-mmv-options-text-body,
// activation box
.mw-mmv-options-enable-alert,
// deactivation box
.mw-mmv-options-dialog .mw-mmv-disable-confirmation .mw-mmv-options-dialog-header,
.mw-mmv-options-dialog .mw-mmv-disable-confirmation .mw-mmv-options-text-header {
color: var(--text-color);
}
/* ------------------------
RevisionSlider
------------------------*/
.mw-revslider-container {
border-color: var(--sidebar);
}
.mw-revslider-slider-wrapper {
border-top-color: var(--sidebar);
}
/* ------------------------
mediawiki.ui
------------------------*/
.mw-ui {
&-button {
background-color: var(--ooui-normal);
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
&:not(:disabled) {
&:hover,
&:active {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
}
&:focus {
color: var(--ooui-text);
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent),inset 0 0 0 2px #fff;
}
// there's an override for it
&:visited {
color: var(--ooui-text);
}
}
&.mw-ui-progressive {
&:not(:disabled) {
background-color: var(--ooui-progressive);
color: #fff;
border-color: var(--ooui-progressive);
&:hover {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
}
&:focus {
box-shadow: inset 0 0 0 1px var(--ooui-accent),inset 0 0 0 2px #fff;
}
&:active,
&.is-on {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
box-shadow: none;
}
}
}
}
// a lot of these need to be redefined since they have the same specificity
// as the above
&-button&-destructive:not( :disabled ) {
color: #fff;
}
&-button&-quiet,
&-button&-quiet&-progressive,
&-button&-quiet&-destructive {
// background-color: transparent;
color: var(--text-color);
}
input[type='checkbox']:hover + &-button&-quiet,
input[type='checkbox']:hover + &-button&-quiet&-progressive,
input[type='checkbox']:hover + &-button&-quiet&-destructive,
&-button&-quiet:hover,
&-button&-quiet&-progressive:hover,
&-button&-quiet&-destructive:hover {
background-color: rgba(0,24,73,0.02745098);
color: var(--text-color);
border-color: transparent
}
input[type='checkbox']:focus + &-button&-quiet,
input[type='checkbox']:focus + &-button&-quiet&-progressive,
input[type='checkbox']:focus + &-button&-quiet&-destructive,
&-button&-quiet:focus,
&-button&-quiet&-progressive:focus,
&-button&-quiet&-destructive:focus {
color: var(--text-color);
// border-color: #36c;
// box-shadow: inset 0 0 0 1px #36c,inset 0 0 0 2px #fff
}
input[type='checkbox']:active + &-button&-quiet,
input[type='checkbox']:active + &-button&-quiet&-progressive,
input[type='checkbox']:active + &-button&-quiet&-destructive,
&-button&-quiet:active,
&-button&-quiet&-progressive:active,
&-button&-quiet&-destructive:active {
background-color: rgba(0,36,73,0.08235294);
color: var(--text-color);
border-color: #72777d;
// box-shadow: none
}
&-input {
background-color: var(--ooui-input);
color: var(--text-color);
border-color: var(--ooui-input-border);
&:hover {
border-color: var(--ooui-input-border--hover);
}
&::placeholder {
color: var(--byline-color);
}
}
}
/* ------------------------
Redirects
------------------------*/
// convert to mask
.mw-content-ltr .redirectText li {
&:first-child {
padding: 0;
background: 0;
&::before {
content:'';
background: currentcolor;
.mask("filepath://Redirect-arrow.svg");
display: inline-block;
width: 47px;
height: 20px;
}
}
}
f795d41042c128e4f228f295b3f576cc1fdbeb14
MediaWiki:Common.less/wikitables.less
8
17
26
2024-03-22T02:36:24Z
Jayden
3
base cp from rsw
less
less
:root {
--wikitable-header-bg: @BODY_DARK;
--wikitable-border: @BODY_BORDER;
--wikitable-bg: @BODY_LIGHT;
--wikitable-bg-lighter: #e9e3d6; // lighten(@wikitable-bg, 10%); Used on hover effect
--wikitable-color: @TEXT_COLOR;
--table-na-background: fade(@white, 30);
--table-na-color: var(--subtle-color);
--table-yes-background: @caper;
--table-yes-color: @san-felix;
--table-no-background: @apricot-peach;
--table-no-color: @mocaccino;
--table-maybe-background: @golden;
--table-maybe-color: @cinnamon;
}
// Brown-ify defaults
.wikitable {
background: var(--wikitable-bg);
color: var(--wikitable-color);
border-color: var(--wikitable-border);
box-shadow: @box-shadow;
// All cells borders
> tr > th,
> tr > td,
> * > tr > th,
> * > tr > td {
border-color: var(--wikitable-border);
// Template:NoBorder
&.table-noborder {
border-left-style: hidden;
border-right-style: hidden;
padding-left: 0;
padding-right: 0;
}
}
// All header cells bg
> tr > th,
> * > tr > th {
background-color: var(--wikitable-header-bg);
}
// Already in a box
.tabber & {
box-shadow: none;
}
}
// Metadata tables, allmessages, etc
.mw_metadata {
td,
th {
border-color: var(--wikitable-border);
}
th {
background-color: var(--wikitable-header-bg);
}
td {
background-color: var(--wikitable-bg);
}
}
// Special:AllPages, BlockList, etc
.mw-datatable {
border-color: var(--wikitable-border);
td,
th {
border-color: var(--wikitable-border);
}
// cells
th {
background-color: var(--wikitable-header-bg);
}
// headers
td {
background-color: var(--wikitable-bg);
}
// on hover on both cells
tr:hover td {
background-color: var(--wikitable-bg);
}
}
// alternating colours (similar to spreadsheets)
table.alternating-rows tr:nth-child(odd),
table.alternating-cols td:nth-child(odd) {
background: var(--wikitable-alternating-bg);
}
// Template:NA
.table-na {
background: var(--table-na-background);
color: var(--table-na-color);
vertical-align: middle;
text-align: center;
}
// Template:Yes
.table-yes {
background: var(--table-yes-background);
color: var(--table-yes-color);
}
.table-positive {
background: var(--table-yes-background);
}
// Template:No
.table-no {
background: var(--table-no-background);
color: var(--table-no-color);
}
.table-negative {
background: var(--table-no-background);
}
// Template:Maybe
.table-maybe {
background: var(--table-maybe-background);
color: var(--table-maybe-color);
}
// Special:AllMessages
#mw-allmessagestable {
.am_actual,
.am_default {
background-color: var(--wikitable-bg);
}
.am_default:hover,
.am_actual:hover,
tbody:hover td {
background-color: var(--wikitable-bg-lighter);
}
}
// For tables within tables, to make them take up the full space of a cell
table.wikitable td.no-cell-spacing {
padding: 0;
height: 0; // actual height is overridden by content height, but this allows height:100% to stretch to full td height
table {
margin: -1px; // collapse borders with parent td
width: calc(100% + 2px);
height: calc(100% + 2px);
}
}
// used on mmg table and similar
// to hide bullet points
.plainlist {
ol,
ul {
margin: 0;
}
li {
margin-bottom: 0; // might make lists slightly clamped tho
list-style: none;
}
}
/* table alignment help */
/* nth td from the left is right-aligned - ths are ignored */
table.align-right-1 td:nth-of-type(1),
table.align-right-2 td:nth-of-type(2),
table.align-right-3 td:nth-of-type(3),
table.align-right-4 td:nth-of-type(4),
table.align-right-5 td:nth-of-type(5),
table.align-right-6 td:nth-of-type(6),
table.align-right-7 td:nth-of-type(7),
table.align-right-8 td:nth-of-type(8),
table.align-right-9 td:nth-of-type(9),
table.align-right-10 td:nth-of-type(10),
table.align-right-11 td:nth-of-type(11),
table.align-right-12 td:nth-of-type(12),
table.align-right-13 td:nth-of-type(13),
table.align-right-14 td:nth-of-type(14),
table.align-right-15 td:nth-of-type(15),
table.align-right-16 td:nth-of-type(16),
table.align-right-17 td:nth-of-type(17),
table.align-right-18 td:nth-of-type(18),
table.align-right-19 td:nth-of-type(19),
table.align-right-20 td:nth-of-type(20) {
text-align: right;
}
/* center */
table.align-center-1 td:nth-of-type(1),
table.align-center-2 td:nth-of-type(2),
table.align-center-3 td:nth-of-type(3),
table.align-center-4 td:nth-of-type(4),
table.align-center-5 td:nth-of-type(5),
table.align-center-6 td:nth-of-type(6),
table.align-center-7 td:nth-of-type(7),
table.align-center-8 td:nth-of-type(8),
table.align-center-9 td:nth-of-type(9),
table.align-center-10 td:nth-of-type(10),
table.align-center-11 td:nth-of-type(11),
table.align-center-12 td:nth-of-type(12),
table.align-center-13 td:nth-of-type(13),
table.align-center-14 td:nth-of-type(14),
table.align-center-15 td:nth-of-type(15),
table.align-center-16 td:nth-of-type(16),
table.align-center-17 td:nth-of-type(17),
table.align-center-18 td:nth-of-type(18),
table.align-center-19 td:nth-of-type(19),
table.align-center-20 td:nth-of-type(20) {
text-align: center;
}
/* left */
table.align-left-1 td:nth-of-type(1),
table.align-left-2 td:nth-of-type(2),
table.align-left-3 td:nth-of-type(3),
table.align-left-4 td:nth-of-type(4),
table.align-left-5 td:nth-of-type(5),
table.align-left-6 td:nth-of-type(6),
table.align-left-7 td:nth-of-type(7),
table.align-left-8 td:nth-of-type(8),
table.align-left-9 td:nth-of-type(9),
table.align-left-10 td:nth-of-type(10),
table.align-left-11 td:nth-of-type(11),
table.align-left-12 td:nth-of-type(12),
table.align-left-13 td:nth-of-type(13),
table.align-left-14 td:nth-of-type(14),
table.align-left-15 td:nth-of-type(15),
table.align-left-16 td:nth-of-type(16),
table.align-left-17 td:nth-of-type(17),
table.align-left-18 td:nth-of-type(18),
table.align-left-19 td:nth-of-type(19),
table.align-left-20 td:nth-of-type(20) {
text-align: left;
}
dd0fd26ccb6dfb9f28bfefd5d04d556a18453f88
MediaWiki:Common.less/diff.less
8
18
27
2024-03-22T02:36:38Z
Jayden
3
Created page with "/* ================= diffs ================= */ :root { --diff-addedline-border-color: #438ab5; --diff-addedline-background: #bddff2; --diff-addedline-color: @black; --diff-deletedline-border-color: #379541; --diff-deletedline-background: #c1edbf; --diff-deletedline-color: @black; --diff-context-border-color: @BODY_MID; --diff-context-background: @BODY_MID; } .diff-context { border-color: var(--diff-context-border-color); background: var(--diff-con..."
less
less
/* =================
diffs
================= */
:root {
--diff-addedline-border-color: #438ab5;
--diff-addedline-background: #bddff2;
--diff-addedline-color: @black;
--diff-deletedline-border-color: #379541;
--diff-deletedline-background: #c1edbf;
--diff-deletedline-color: @black;
--diff-context-border-color: @BODY_MID;
--diff-context-background: @BODY_MID;
}
.diff-context {
border-color: var(--diff-context-border-color);
background: var(--diff-context-background);
color: inherit;
}
.diff-addedline {
border-color: var(--diff-addedline-border-color); // blue
.diffchange {
background: var(--diff-addedline-background);
color: var(--diff-addedline-color);
}
}
.diff-deletedline {
border-color: var(--diff-deletedline-border-color); // green
.diffchange {
background: var(--diff-deletedline-background);
color: var(--diff-deletedline-color);
}
}
// "↪"
.mw-diff-movedpara-left:after,
// "↩"
.mw-diff-movedpara-right:after {
color: var(--text-color);
}
2a6dec5f19ef71fb4b194e5554e06e213c876336
MediaWiki:Common.less/notifications.less
8
19
28
2024-03-22T02:37:02Z
Jayden
3
base cp from rsw
less
less
// MediaWiki notif popup when saving edits or adding page to watchlist
.mw-notification {
background-color: var(--body-light);
border-color: var(--body-border);
color: var(--text-color);
}
// == Echo ==
// Special:Notifications
// Page toolbar
.mw-echo-ui-notificationsInboxWidget-toolbarWrapper {
background: var(--body-main);
}
// secondary dates next to "Today", "Yesterday", etc.
.mw-body-content .mw-echo-ui-datedSubGroupListWidget-title-secondary {
color: var(--byline-color);
}
// wiki name
.mw-echo-ui-pageNotificationsOptionWidget {
&.oo-ui-optionWidget-selected {
background-color: var(--ooui-normal);
color: var(--ooui-accent);
}
// number of notifs
&-label-count {
background-color: var(--ooui-normal);
color: var(--byline-color);
// number of notifs for selected
.oo-ui-optionWidget-selected & {
color: var(--ooui-accent);
}
}
// highlighted wiki name
&.oo-ui-optionWidget-highlighted {
background-color: var(--ooui-normal);
color: var(--text-color);
}
}
.mw-echo-ui-crossWikiUnreadFilterWidget {
border-color: var(--body-border);
// "Pages with unread notifications"
&-subtitle {
color: var(--byline-color);
}
}
// popup and footer
.mw-echo-ui-notificationBadgeButtonPopupWidget-popup {
> .oo-ui-popupWidget-popup {
> .oo-ui-popupWidget-head,
> .oo-ui-popupWidget-footer {
border-color: var(--ooui-interface-border);
}
// in actuality an ooui button
> .oo-ui-popupWidget-footer .mw-echo-ui-notificationBadgeButtonPopupWidget-footer-buttons .oo-ui-buttonElement:last-child {
border-left-color: var(--ooui-normal-border);
}
}
}
// Notifications interface
.mw-echo-ui-notificationItemWidget {
background-color: var(--ooui-normal);
border-color: var(--ooui-normal-border);
&:hover,
&-unread:hover {
background-color: var(--ooui-normal--hover);
}
&:last-child {
border-bottom-color: var(--ooui-normal-border);
}
&-unread {
background-color: var(--search-box);
}
}
.mw-echo-ui-crossWikiNotificationItemWidget-group,
.mw-echo-ui-bundleNotificationItemWidget-group {
background-color: var(--ooui-interface);
}
// unread circle
.mw-echo-ui-toggleReadCircleButtonWidget-circle {
background-color: var(--ooui-progressive);
.mw-echo-ui-toggleReadCircleButtonWidget:hover & {
background-color: var(--ooui-progressive--hover);
}
}
// read
.mw-echo-ui-toggleReadCircleButtonWidget-circle-unread {
background-color: var(--ooui-normal);
border-color: var(--ooui-normal-border);
}
// same text colour for all
.mw-echo-ui-notificationItemWidget-content-message-header,
.mw-echo-ui-notificationItemWidget-content-message-body,
.mw-echo-ui-menuItemWidget > .oo-ui-buttonElement-button > .oo-ui-labelElement-label,
.mw-echo-ui-notificationItemWidget-content-actions-timestamp {
color: var(--ooui-text);
}
.mw-echo-ui-bundleNotificationItemWidget-group {
background-color: var(--body-main);
}
@notification-background-unseen: var(--wikitable-bg-lighter);
@notification-background-unread: var(--search-box);
@notification-background-read: var(--body-main);
@keyframes unseen-fadeout-to-unread {
from {
background-color: @notification-background-unseen;
}
to {
background-color: @notification-background-unread;
}
}
@keyframes unseen-fadeout-to-read {
from {
background-color: @notification-background-unseen;
}
to {
background-color: @notification-background-read;
}
}
d7d0ac681e942677378eca716e4e0acc8a358d12
MediaWiki:Common.less/pagepreviews.less
8
20
29
2024-03-22T02:37:28Z
Jayden
3
base cp from rsw
less
less
// Page preview popups
.mwe-popups {
background: var(--body-light);
.mwe-popups-container {
color: var(--text-color);
background: var(--body-light);
// arrow pointing to link
// seems to be a different class for each possible position and img combination
&.flipped-x-y:before,
&.flipped-y:before {
border-top: none;
}
&.mwe-popups-no-image-tri:before {
border-bottom: none;
}
&.flipped-x-y:after,
&.flipped-y:after {
border-top-color: var(--body-light);
}
&.mwe-popups-no-image-tri:after {
border-bottom-color: var(--body-light);
}
}
.mwe-popups-settings-icon:hover,
.mwe-popups-settings-icon:active {
background-color: var(--ooui-normal--hover);
}
// the following cancelled out the brightness adjustment by above
// and also was added to the preview-generic icon
.mw-ui-icon-element:not(.disabled):hover {
background: none;
}
// text section
.mwe-popups-extract {
color: var(--text-color);
// fade for text overflow
&[dir='ltr']:after {
background-image: linear-gradient(to right, rgba(49, 62, 89, 0), var(--body-light) 50%);
}
}
}
// Anon preferences popup
.mwe-popups-overlay {
background-color: var(--ooui-window-background);
}
#mwe-popups-settings {
background: var(--ooui-interface);
border-color: var(--ooui-interface-border);
color: var(--text-color);
header {
border-color: var(--ooui-interface-border);
}
main#mwe-popups-settings-form {
p {
color: var(--byline-color);
}
// text beside radio button
form label > span {
color: var(--ooui-text);
}
}
}
cae7f4b7db5ab6454f5fc21dddf26b725c0802e8
MediaWiki:Common.less/smw.less
8
21
30
2024-03-22T02:37:58Z
Jayden
3
base cp from rsw
less
less
/**
* Semantic MediaWiki
*/
:root {
--smw-ask-options-even-bg: @BODY_MID;
--smw-ask-options-odd-bg: @BODY_LIGHT;
--smw-ask-action-btn-lblue-bg: @BODY_MAIN;
--smw-ask-action-btn-lblue-color: @black;
--smw-ask-action-btn-lblue-border-color: @OSRSW_BROWN;
--smw-ask-action-btn-dblue-bg: @OSRSW_BROWN;
--smw-ask-action-btn-dblue-color: @white;
--smw-ask-action-btn-dblue-border-color: @BUTTON_BORDER;
}
// fieldset borders
.smw-ask-condition fieldset,
.smw-ask-printhead fieldset {
border-color: var(--sidebar);
}
.smw-ask-search fieldset,
.smw-ask-format fieldset,
.smw-ask-options fieldset {
border-color: var(--sidebar);
}
.strike > span:before,
.strike > span:after {
background: var(--sidebar);
}
.smw-ask-options-fields {
tr td {
background-color: var(--smw-ask-options-even-bg);
}
tr:nth-child(odd) td {
background-color: var(--smw-ask-options-odd-bg);
}
}
.smw-ask-action-btn {
&.smw-ask-action-btn-lblue,
&.smw-ask-action-btn-lblue:hover,
&.smw-ask-action-btn-lblue:visited {
background-color: var(--smw-ask-action-btn-lblue-bg);
color: var(--smw-ask-action-btn-lblue-color);
border-color: var(--smw-ask-action-btn-lblue-border-color);
}
&.smw-ask-action-btn-dblue,
&.smw-ask-action-btn-dblue:hover,
&.smw-ask-action-btn-dblue:visited {
background-color: var(--smw-ask-action-btn-dblue-bg);
color: var(--smw-ask-action-btn-dblue-color);
border-color: var(--smw-ask-action-btn-dblue-border-color);
}
}
/* =====================================
SMW search, ask and property pages
===================================== */
.smw-ask-query,
.smw-ask-actions {
textarea {
background-color: var(--ooui-interface);
border-color: var(--ooui-interface-border);
color: var(--ooui-text);
}
}
.smw-ask-query-format {
select {
background-color: var(--ooui-interface);
border: 1px solid var(--ooui-interface-border);
color: var(--ooui-text);
}
}
/*
.smw-ask-sorting,
.smw-ask-options-fields {
select {
background-color: darken( var(--body-mid), 2% );
border: 1px solid #4c5574; // this is how it looks with 'rgba(250, 250, 255, .25)'
color: var(--ooui-text);
}
input {
background-color: darken( var(--body-mid), 2% );
border: 1px solid #4c5574; // this is how it looks with 'rgba(250, 250, 255, .25)'
color: var(--ooui-text);
padding: 2px 1px;
}
}
*/
.smw-ask-toplinks {
background-color: var(--body-mid);
span.smw-icon-info {
background: none;
padding: 0 !important; // beat inline styles
&::before {
content: '';
background: var(--text-color);
.mask("data:image/svg+xml,%3C%3Fxml version='1.0' encoding='UTF-8'%3F%3E%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 20 20'%3E%3Ctitle%3Einfo%3C/title%3E%3Cpath d='M10 0C4.477 0 0 4.477 0 10s4.477 10 10 10 10-4.477 10-10S15.523 0 10 0zM9 5h2v2H9zm0 4h2v6H9z'/%3E%3C/svg%3E");
padding: 0 0 3px 18px;
}
}
}
.smw-ask-options-row-odd {
background-color: var(--body-light);
}
.smw-ask-options-row-even {
background-color: var(--body-mid);
}
#options-toggle:not(:checked) + #options-list .options-parameter-list:after {
background-image: linear-gradient(to bottom,transparent,var(--body-mid) 90%);
}
.smw-ask-button-submit input {
background-color: var(--ooui-normal);
border-color: var(--ooui-normal-border);
color: var(--text-color);
}
.smw-ask-button-submit input:hover,
.smw-ask-button-lgrey:hover {
background-color: var(--ooui-normal--hover);
border-color: var(--ooui-normal-border);
}
// buttons
input {
&.smw-ask-action-btn {
&.smw-ask-action-btn-dblue {
background-color: var(--ooui-normal);
border-color: var(--ooui-normal-border);
color: var(--ooui-text);
}
}
}
a {
&.smw-ask-action-btn {
&.smw-ask-action-btn-lblue {
background-color: var(--body-mid);
border-color: var(--body-mid);
color: var(--ooui-text);
&:visited {
background-color: var(--body-mid);
border-color: var(--body-mid);
color: var(--ooui-text);
}
&:hover {
background-color: var(--body-mid);
border-color: var(--body-mid);
color: var(--ooui-text);
}
}
}
&.smw-ask-action-btn-lgrey {
background-color: var(--ooui-normal);
border-color: var(--ooui-normal-border);
color: var(--ooui-text);
&:hover {
background-color: var(--ooui-normal--hover);
border-color: var(--ooui-normal-border);
color: var(--ooui-text);
}
}
}
// Callout messages
.smw-callout {
// why dont these just use mediawiki core ones...
&-error {
background-color: var(--errorbox-bg);
border-color: var(--errorbox-border);
}
&-info {
background-color: var(--body-light);
border-color: var(--body-dark);
}
&-success {
background-color: var(--successbox-bg);
border-color: var(--successbox-border);
}
&-warning {
background-color: var(--warningbox-bg);
border-color: var(--warningbox-bg);
}
}
// Property page usage count indicators
.smw-tabs input.nav-tab:checked + label.nav-label {
&,
&:hover {
color: inherit;
}
}
#tab-smw-property-value:checked + label.nav-label .usage-count {
color: @white;
background-color: var(--ooui-progressive);
&.moderate {
color: @white;
background-color: @korma;
border-color: @korma;
}
&.high {
color: @white;
background-color: @old-brick;
border-color: @old-brick;
}
}
// Property:Foo pages
.smw-property-page-results {
// Property page results headers
.header-title {
background-color: var(--ooui-interface);
border-bottom-color: var(--ooui-interface-border);
color: var(--ooui-text);
}
// Property page result rows hover
.value-row:hover {
background-color: var(--ooui-normal--hover);
}
// Property page alphabetic headers
.smw-table .header-row {
color: var(--text-color);
}
}
// Tooltips
.tippy-tooltip.light-border-theme {
background-color: var(--body-light);
color: var(--text-color);
.tippy-arrow {
border-top-color: var(--body-light);
&:after {
border-top-color: var(--body-light);
}
}
}
.tippy-header {
background-color: var(--body-dark);
border-bottom-color: var(--body-mid);
}
.smw-ui-input-filter {
background-color: var(--ooui-interface);
border-color: var(--ooui-interface-border);
color: var(--ooui-text);
input {
border-left-color: var(--ooui-interface-border) !important; //beating !important on default style
color: var(--ooui-text) !important;
}
}
/* Special:Concepts & Property: */
.smw-ui-pagination .page-link.link-disabled {
background-color: var(--ooui-disabled);
border-color: var(--ooui-disabled-border);
color: var(--subtle-color);
}
.smw-ui-pagination .page-link {
background-color: var(--ooui-normal);
border-color: var(--ooui-normal-border);
color: var(--link-color);
}
.smw-ui-pagination .page-link:hover {
background-color: var(--ooui-normal--hover);
border-color: var(--ooui-normal-border);
color: var(--link-color);
}
.smw-ui-pagination .page-link.link-active {
color: @white;
background-color: var(--ooui-progressive);
border-color: var(--ooui-progressive);
}
.smw-tabs input.nav-tab:checked + label.nav-label {
border-color: var(--ooui-normal-border);
}
.smw-tabs section,
.smw-tabs .subtab-content {
border-top-color: var(--ooui-normal-border);
}
.smw-column-header {
color: var(--text-color);
}
/* ===================
FACTS under edits
==================== */
.smw-factbox {
background: var(--body-main);
border-color: transparent;
}
// is this still needed
.mw-body .mw-indicators #mw-indicator-smw-entity-examiner.mw-indicator .smw-indicator-vertical-bar-loader {
display: none;
}
/* ---------------------------------
[[Special:Browse]]
--------------------------------- */
.smwb-theme-light {
.smwb-title,
.smwb-center,
.smwb-actions,
.smwb-prophead {
background-color: @BODY_MID;
}
.smwb-factbox {
border-left-color: @BODY_MID;
}
.smwb-ifactbox {
border-right-color: @BODY_MID;
}
.smwb-propval {
background-color: @BODY_LIGHT;
}
}
.smwb-action-separator {
border-color: var(--wikitable-border);
}
.smwb-bottom {
border-bottom: 1px solid var(--wikitable-border);
}
.smwb-ifactbox,
.smwb-factbox {
.smwb-cell {
border-top: 1px solid var(--wikitable-border);
}
}
.smwb-propvalue,
.smwb-ipropvalue {
.smwb-prophead,
.smwb-propval {
font-size: 0.9em;
}
}
// Override very specific link styles
:root {
--filter-black-to-link: invert(36%) sepia(58%) saturate(433%) hue-rotate(344deg) brightness(100%) contrast(91%);
}
#bodyContent {
span.smwbrowse {
a {
color: black;
background-image: url('filepath://Smwbrowse.svg');
filter: var(--filter-black-to-link);
}
a:hover {
color: black;
background-image: url('filepath://Smwbrowse-hover.svg');
text-decoration: underline;
}
}
span.smwsearch {
a {
color: black;
filter: var(--filter-black-to-link);
background-image: url('filepath://Smwsearch.svg');
}
a:hover {
color: black;
background-image: url('filepath://Smwsearch-hover.svg');
text-decoration: underline;
}
}
}
09002a5551b3e38bfb657867b8df6ea225f84497
39
30
2024-03-22T02:42:08Z
Jayden
3
less
less
/**
* Semantic MediaWiki
*/
:root {
--smw-ask-options-even-bg: @BODY_MID;
--smw-ask-options-odd-bg: @BODY_LIGHT;
--smw-ask-action-btn-lblue-bg: @BODY_MAIN;
--smw-ask-action-btn-lblue-color: @black;
--smw-ask-action-btn-lblue-border-color: @BODY_LIGHT;
--smw-ask-action-btn-dblue-bg: @BODY_LIGHT;
--smw-ask-action-btn-dblue-color: @white;
--smw-ask-action-btn-dblue-border-color: @BUTTON_BORDER;
}
// fieldset borders
.smw-ask-condition fieldset,
.smw-ask-printhead fieldset {
border-color: var(--sidebar);
}
.smw-ask-search fieldset,
.smw-ask-format fieldset,
.smw-ask-options fieldset {
border-color: var(--sidebar);
}
.strike > span:before,
.strike > span:after {
background: var(--sidebar);
}
.smw-ask-options-fields {
tr td {
background-color: var(--smw-ask-options-even-bg);
}
tr:nth-child(odd) td {
background-color: var(--smw-ask-options-odd-bg);
}
}
.smw-ask-action-btn {
&.smw-ask-action-btn-lblue,
&.smw-ask-action-btn-lblue:hover,
&.smw-ask-action-btn-lblue:visited {
background-color: var(--smw-ask-action-btn-lblue-bg);
color: var(--smw-ask-action-btn-lblue-color);
border-color: var(--smw-ask-action-btn-lblue-border-color);
}
&.smw-ask-action-btn-dblue,
&.smw-ask-action-btn-dblue:hover,
&.smw-ask-action-btn-dblue:visited {
background-color: var(--smw-ask-action-btn-dblue-bg);
color: var(--smw-ask-action-btn-dblue-color);
border-color: var(--smw-ask-action-btn-dblue-border-color);
}
}
/* =====================================
SMW search, ask and property pages
===================================== */
.smw-ask-query,
.smw-ask-actions {
textarea {
background-color: var(--ooui-interface);
border-color: var(--ooui-interface-border);
color: var(--ooui-text);
}
}
.smw-ask-query-format {
select {
background-color: var(--ooui-interface);
border: 1px solid var(--ooui-interface-border);
color: var(--ooui-text);
}
}
/*
.smw-ask-sorting,
.smw-ask-options-fields {
select {
background-color: darken( var(--body-mid), 2% );
border: 1px solid #4c5574; // this is how it looks with 'rgba(250, 250, 255, .25)'
color: var(--ooui-text);
}
input {
background-color: darken( var(--body-mid), 2% );
border: 1px solid #4c5574; // this is how it looks with 'rgba(250, 250, 255, .25)'
color: var(--ooui-text);
padding: 2px 1px;
}
}
*/
.smw-ask-toplinks {
background-color: var(--body-mid);
span.smw-icon-info {
background: none;
padding: 0 !important; // beat inline styles
&::before {
content: '';
background: var(--text-color);
.mask("data:image/svg+xml,%3C%3Fxml version='1.0' encoding='UTF-8'%3F%3E%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 20 20'%3E%3Ctitle%3Einfo%3C/title%3E%3Cpath d='M10 0C4.477 0 0 4.477 0 10s4.477 10 10 10 10-4.477 10-10S15.523 0 10 0zM9 5h2v2H9zm0 4h2v6H9z'/%3E%3C/svg%3E");
padding: 0 0 3px 18px;
}
}
}
.smw-ask-options-row-odd {
background-color: var(--body-light);
}
.smw-ask-options-row-even {
background-color: var(--body-mid);
}
#options-toggle:not(:checked) + #options-list .options-parameter-list:after {
background-image: linear-gradient(to bottom,transparent,var(--body-mid) 90%);
}
.smw-ask-button-submit input {
background-color: var(--ooui-normal);
border-color: var(--ooui-normal-border);
color: var(--text-color);
}
.smw-ask-button-submit input:hover,
.smw-ask-button-lgrey:hover {
background-color: var(--ooui-normal--hover);
border-color: var(--ooui-normal-border);
}
// buttons
input {
&.smw-ask-action-btn {
&.smw-ask-action-btn-dblue {
background-color: var(--ooui-normal);
border-color: var(--ooui-normal-border);
color: var(--ooui-text);
}
}
}
a {
&.smw-ask-action-btn {
&.smw-ask-action-btn-lblue {
background-color: var(--body-mid);
border-color: var(--body-mid);
color: var(--ooui-text);
&:visited {
background-color: var(--body-mid);
border-color: var(--body-mid);
color: var(--ooui-text);
}
&:hover {
background-color: var(--body-mid);
border-color: var(--body-mid);
color: var(--ooui-text);
}
}
}
&.smw-ask-action-btn-lgrey {
background-color: var(--ooui-normal);
border-color: var(--ooui-normal-border);
color: var(--ooui-text);
&:hover {
background-color: var(--ooui-normal--hover);
border-color: var(--ooui-normal-border);
color: var(--ooui-text);
}
}
}
// Callout messages
.smw-callout {
// why dont these just use mediawiki core ones...
&-error {
background-color: var(--errorbox-bg);
border-color: var(--errorbox-border);
}
&-info {
background-color: var(--body-light);
border-color: var(--body-dark);
}
&-success {
background-color: var(--successbox-bg);
border-color: var(--successbox-border);
}
&-warning {
background-color: var(--warningbox-bg);
border-color: var(--warningbox-bg);
}
}
// Property page usage count indicators
.smw-tabs input.nav-tab:checked + label.nav-label {
&,
&:hover {
color: inherit;
}
}
#tab-smw-property-value:checked + label.nav-label .usage-count {
color: @white;
background-color: var(--ooui-progressive);
&.moderate {
color: @white;
background-color: @korma;
border-color: @korma;
}
&.high {
color: @white;
background-color: @old-brick;
border-color: @old-brick;
}
}
// Property:Foo pages
.smw-property-page-results {
// Property page results headers
.header-title {
background-color: var(--ooui-interface);
border-bottom-color: var(--ooui-interface-border);
color: var(--ooui-text);
}
// Property page result rows hover
.value-row:hover {
background-color: var(--ooui-normal--hover);
}
// Property page alphabetic headers
.smw-table .header-row {
color: var(--text-color);
}
}
// Tooltips
.tippy-tooltip.light-border-theme {
background-color: var(--body-light);
color: var(--text-color);
.tippy-arrow {
border-top-color: var(--body-light);
&:after {
border-top-color: var(--body-light);
}
}
}
.tippy-header {
background-color: var(--body-dark);
border-bottom-color: var(--body-mid);
}
.smw-ui-input-filter {
background-color: var(--ooui-interface);
border-color: var(--ooui-interface-border);
color: var(--ooui-text);
input {
border-left-color: var(--ooui-interface-border) !important; //beating !important on default style
color: var(--ooui-text) !important;
}
}
/* Special:Concepts & Property: */
.smw-ui-pagination .page-link.link-disabled {
background-color: var(--ooui-disabled);
border-color: var(--ooui-disabled-border);
color: var(--subtle-color);
}
.smw-ui-pagination .page-link {
background-color: var(--ooui-normal);
border-color: var(--ooui-normal-border);
color: var(--link-color);
}
.smw-ui-pagination .page-link:hover {
background-color: var(--ooui-normal--hover);
border-color: var(--ooui-normal-border);
color: var(--link-color);
}
.smw-ui-pagination .page-link.link-active {
color: @white;
background-color: var(--ooui-progressive);
border-color: var(--ooui-progressive);
}
.smw-tabs input.nav-tab:checked + label.nav-label {
border-color: var(--ooui-normal-border);
}
.smw-tabs section,
.smw-tabs .subtab-content {
border-top-color: var(--ooui-normal-border);
}
.smw-column-header {
color: var(--text-color);
}
/* ===================
FACTS under edits
==================== */
.smw-factbox {
background: var(--body-main);
border-color: transparent;
}
// is this still needed
.mw-body .mw-indicators #mw-indicator-smw-entity-examiner.mw-indicator .smw-indicator-vertical-bar-loader {
display: none;
}
/* ---------------------------------
[[Special:Browse]]
--------------------------------- */
.smwb-theme-light {
.smwb-title,
.smwb-center,
.smwb-actions,
.smwb-prophead {
background-color: @BODY_MID;
}
.smwb-factbox {
border-left-color: @BODY_MID;
}
.smwb-ifactbox {
border-right-color: @BODY_MID;
}
.smwb-propval {
background-color: @BODY_LIGHT;
}
}
.smwb-action-separator {
border-color: var(--wikitable-border);
}
.smwb-bottom {
border-bottom: 1px solid var(--wikitable-border);
}
.smwb-ifactbox,
.smwb-factbox {
.smwb-cell {
border-top: 1px solid var(--wikitable-border);
}
}
.smwb-propvalue,
.smwb-ipropvalue {
.smwb-prophead,
.smwb-propval {
font-size: 0.9em;
}
}
// Override very specific link styles
:root {
--filter-black-to-link: invert(36%) sepia(58%) saturate(433%) hue-rotate(344deg) brightness(100%) contrast(91%);
}
#bodyContent {
span.smwbrowse {
a {
color: black;
background-image: url('filepath://Smwbrowse.svg');
filter: var(--filter-black-to-link);
}
a:hover {
color: black;
background-image: url('filepath://Smwbrowse-hover.svg');
text-decoration: underline;
}
}
span.smwsearch {
a {
color: black;
filter: var(--filter-black-to-link);
background-image: url('filepath://Smwsearch.svg');
}
a:hover {
color: black;
background-image: url('filepath://Smwsearch-hover.svg');
text-decoration: underline;
}
}
}
672f80a30394f9fb3332eeb3035c36cd85721842
MediaWiki:Common.less/tabber.less
8
22
31
2024-03-22T02:38:24Z
Jayden
3
base cp from rsw
less
less
/* ==============================
<tabber> styling
============================== */
:root {
--tabber-tab-bg: @BODY_LIGHT;
--tabber-tab-border-color: @BODY_BORDER;
--tabber-active-tab-bg: @BODY_LIGHT;
--tabber-active-tab-color: var(--text-color);
--tabber-active-tab-hover-bg: @BODY_LIGHT;
--tabber-active-tab-hover-border-color: @BODY_BORDER;
--tabber-active-tab-hover-color: var(--text-color);
--tabber-active-tab-border-hider-color: @BODY_LIGHT;
--tabber-inactive-tab-bg: var(--body-background-color);
--tabber-inactive-tab-border-color: @BODY_BORDER;
--tabber-inactive-tab-color: var(--text-color);
--tabber-inactive-tab-hover-bg: @BODY_LIGHT;
--tabber-inactive-tab-hover-border-color: @BODY_BORDER;
}
.tabber {
margin: 1em 0;
// display: inline-grid; moved to Vector because of mobile
.tabbertab {
background-color: var(--tabber-tab-bg);
border: 1px solid var(--tabber-tab-border-color);
box-shadow: @box-shadow;
padding: 1em 1.5em;
}
}
ul.tabbernav {
border: none;
margin-left: 2em;
margin-bottom: 0;
margin-right: 2em;
padding: 0;
font-family: inherit; // override default Verdana
li.tabberactive > a {
background-color: var(--tabber-active-tab-bg);
color: var(--tabber-active-tab-color);
border-bottom: none;
position: relative;
&:hover {
color: var(--tabber-active-tab-hover-color);
background-color: var(--tabber-active-tab-hover-bg);
border-color: var(--tabber-active-tab-hover-border-color);
border-bottom: none;
}
// hide the border between the active button and the tab
&::after {
content: '';
position: absolute;
left: 0;
right: 0;
bottom: -1px;
border-bottom: 2px solid var(--tabber-active-tab-border-hider-color);
}
}
li a {
background-color: var(--tabber-inactive-tab-bg);
border-bottom: transparent;
border-color: var(--tabber-inactive-tab-border-color);
color: var(--tabber-inactive-tab-color);
display: inline-block;
font-size: 110%;
padding: 0.5em 1em;
&:hover {
background-color: var(--tabber-inactive-tab-hover-bg);
border-color: var(--tabber-inactive-tab-hover-border-color);
}
&:link,
&:visited {
color: var(--tabber-inactive-tab-color);
}
}
}
d13abe3bc9afea2a2f2f8360beba0c6449ed753d
MediaWiki:Common.less/ooui.less
8
23
32
2024-03-22T02:38:48Z
Jayden
3
Created page with "/* ====================== OOUI ====================== */ // MediaWiki documentation: <https://www.mediawiki.org/wiki/OOUI> // Interactive documentation: <https://doc.wikimedia.org/oojs-ui/master/demos/> // Styles repo directory: <https://github.com/wikimedia/oojs-ui/tree/master/src/themes/wikimediaui> // Variables @ooui-normal: #d8ccb4; // aka --body-light @ooui-normal-border: #b8a282; // aka --body-dark @ooui-progressive: #605443; // aka --button-backgr..."
less
less
/* ======================
OOUI
====================== */
// MediaWiki documentation: <https://www.mediawiki.org/wiki/OOUI>
// Interactive documentation: <https://doc.wikimedia.org/oojs-ui/master/demos/>
// Styles repo directory: <https://github.com/wikimedia/oojs-ui/tree/master/src/themes/wikimediaui>
// Variables
@ooui-normal: #d8ccb4; // aka --body-light
@ooui-normal-border: #b8a282; // aka --body-dark
@ooui-progressive: #605443; // aka --button-background; maybe too dark
@ooui-box-shadow-base--focus: inset 0 0 0 1px var(--ooui-accent);
@ooui-box-shadow-input-binary--active: inset 0 0 0 1px var(--ooui-progressive--hover);
@ooui-color-base--inverted: @white;
:root {
--ooui-text: var(--text-color);
--ooui-interface: var(--body-light);
--ooui-interface-border: var(--body-border);
--ooui-window-background: rgba(255,255,255,0.5);
// use the same styles for :hover AND :active
// :focus will use the accent var
--ooui-normal: darken( @ooui-normal, 2% );
// default styles basically add +2% luminance (from #f8f9fa to #ffffff)
// there's also another hover color: #eaecf0 (like .oo-ui-tool-link:hover)
// ...but we only have one var for button hover, so we should make sure
// the color does not blend with its bg
--ooui-normal--hover: lighten(@ooui-normal, 4%);
--ooui-normal-border: @ooui-normal-border;
// use separate color for progressive buttons - BUT use link-color for
// anywhere else that uses progressive colors; this isnt the greatest idea
// and unifying them is better in the longer term
--ooui-progressive: @ooui-progressive;
--ooui-progressive--hover: lighten(@ooui-progressive, 10%);
// border and bg are the same in non-normal buttons
--ooui-accent: var(--link-color);
// probably not worth adjusting <textarea>/<input>-esque bg in light mode
--ooui-input: #fff;
--ooui-input-border: @ooui-normal-border;
--ooui-input-border--hover: darken(@ooui-normal-border, 19%);
--ooui-disabled: desaturate( lighten( @ooui-normal, 2%), 20% );
--ooui-disabled-border: desaturate( lighten( @ooui-normal-border, 10%), 12% );
--ooui-disabled-text: var(--subtle-color);
--ooui-pending-background-image: repeating-linear-gradient(-45deg, @SEARCH_BOX, @SEARCH_BOX 20px, @BODY_MAIN 20px, @BODY_MAIN 30px);
}
/* ----------------------
widgets
---------------------- */
// need this one to be able to adjust the font color inside popups and etc
.oo-ui-widget {
color: var(--ooui-text);
}
// combine checkbox and radio as theyre really similar
.oo-ui-checkboxInputWidget [type='checkbox'] + span,
.oo-ui-radioInputWidget [type='radio'] + span {
background-color: var(--ooui-input);
border-color: var(--ooui-input-border);
}
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:checked + span,
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:indeterminate + span {
background-color: var(--ooui-progressive);
border-color: var(--ooui-progressive);
}
.oo-ui-radioInputWidget.oo-ui-widget-enabled [type='radio']:checked + span {
border-color: var(--ooui-progressive);
}
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:checked:hover + span,
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:indeterminate:hover + span {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
}
.oo-ui-radioInputWidget.oo-ui-widget-enabled [type='radio']:checked:hover + span {
border-color: var(--ooui-progressive--hover);
}
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:hover + span,
.oo-ui-radioInputWidget.oo-ui-widget-enabled [type='radio']:hover + span {
border-color: var(--ooui-accent);
}
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:focus + span {
border-color: var(--ooui-accent);
box-shadow: @ooui-box-shadow-base--focus;
}
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:active + span,
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:checked:active + span,
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:indeterminate:active + span {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
box-shadow: @ooui-box-shadow-input-binary--active;
}
.oo-ui-radioInputWidget.oo-ui-widget-enabled [type='radio']:active + span {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
}
.oo-ui-radioInputWidget.oo-ui-widget-enabled [type='radio']:checked:active + span {
border-color: var(--ooui-progressive--hover);
box-shadow: @ooui-box-shadow-input-binary--active;
}
.oo-ui-radioInputWidget.oo-ui-widget-enabled [type='radio']:checked:active + span:before {
border-color: var(--ooui-progressive--hover);
}
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:checked:focus + span,
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:indeterminate:focus + span {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent), inset 0 0 0 2px #fff;
}
.oo-ui-checkboxInputWidget [type='checkbox']:disabled + span,
.oo-ui-radioInputWidget [type='radio']:disabled + span {
background-color: var(--ooui-disabled);
border-color: var(--ooui-disabled); // same as bg for both
}
.oo-ui-dropdownWidget {
&-handle {
border-color: var(--ooui-normal-border);
}
&.oo-ui-widget-enabled &-handle {
background-color: var(--ooui-normal);
color: var(--ooui-text);
&:hover {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
}
&:active {
color: var(--ooui-text);
}
&:focus {
border-color: var(--ooui-accent);
box-shadow: @ooui-box-shadow-base--focus;
}
}
&.oo-ui-widget-enabled&-open &-handle {
background-color: var(--ooui-normal--hover);
}
&.oo-ui-widget-disabled &-handle {
color: var(--ooui-disabled-text);
text-shadow: none; // wont look good on dark mode
border-color: var(--ooui-disabled-border);
background-color: var(--ooui-disabled);
}
}
// input dropdowns
.oo-ui-dropdownInputWidget {
// ooui styled dropdown thats actually an html <select>
select {
border-color: var(--ooui-normal-border);
}
option {
background-color: var(--ooui-interface);
}
&.oo-ui-widget-enabled {
background-color: var(--ooui-normal);
&:hover {
background-color: var(--ooui-normal--hover);
}
select {
color: var(--ooui-text);
&:hover,
&:active {
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
}
&:focus {
border-color: var(--ooui-accent);
box-shadow: @ooui-box-shadow-base--focus;
}
// there's a `oo-ui-indicator-down` class here that adds the pointer
// icon, it's not a separate element so invert filter for dark mode
// is infeasible
}
}
}
// in Special:Preferences
.oo-ui-labelWidget {
&.oo-ui-inline-help {
color: var(--byline-color);
}
}
// dropdown selection menu
.oo-ui-menuSelectWidget {
background-color: var(--ooui-interface);
border-color: var(--ooui-interface-border);
&-frameless {
box-shadow: inset 0 -1px 0 0 var(--ooui-normal-border);
}
}
.oo-ui-menuSectionOptionWidget {
color: var(--byline-color);
}
// options eg. on page deletion/move
.oo-ui-menuOptionWidget {
// hover
&.oo-ui-optionWidget {
// hover and selected option
&-highlighted,
// combined
&-selected {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
}
// hover on chosen option
&-selected&-highlighted,
&-pressed&-highlighted {
color: var(--ooui-accent);
}
}
// hover again
&.oo-ui-widget-enabled {
&.oo-ui-optionWidget {
color: var(--ooui-text);
}
}
// highlight & hover eg page deletion reason
// &.oo-ui-optionWidget-selected&.oo-ui-optionWidget-highlighted,
// &.oo-ui-optionWidget-pressed&.oo-ui-optionWidget-highlighted {
//
// }
}
.oo-ui-messageDialog {
// eg exiting out editor without saving the edit modal
&-title {
color: inherit;
}
}
.oo-ui-messageWidget {
// all .messagebox like boxes
&.oo-ui-messageWidget-block {
// matching .errorbox
&.oo-ui-flaggedElement-error {
background-color: var(--errorbox-bg);
border-color: var(--errorbox-border);
}
// eg warning when there's templatedata when editing a template
// matching .warningbox
&.oo-ui-flaggedElement-warning {
background-color: var(--warningbox-bg);
border-color: var(--warningbox-border);
}
// matching .successbox
&.oo-ui-flaggedElement-success {
background-color: var(--successbox-bg);
border-color: var(--successbox-border);
}
&.oo-ui-flaggedElement-notice {
background-color: var(--messagebox-info-background);
border-color: var(--messagebox-info-border);
}
}
// ideally we would use our own success and error colors, but this will do for now
&.oo-ui-flaggedElement-error:not(.oo-ui-messageWidget-block),
&.oo-ui-flaggedElement-success:not(.oo-ui-messageWidget-block) {
color: var(--ooui-text);
}
}
.oo-ui-optionWidget {
&.oo-ui-widget-disabled {
color: var(--ooui-disabled-text);
}
}
.oo-ui-outlineControlsWidget {
background-color: var(--ooui-normal);
}
// eg in ve "Options" window
.oo-ui-outlineOptionWidget {
&.oo-ui-optionWidget-highlighted {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
}
}
.oo-ui-popupWidget {
// Popups eg when interacting with templates in ve
&-popup {
background-color: var(--ooui-interface);
border-color: var(--ooui-interface-border);
}
// popups anchors/arrow
.ooui-anchor(@direction) {
.oo-ui-popupWidget-anchor:after {
border-@{direction}-color: var(--ooui-interface);
}
.oo-ui-popupWidget-anchor:before {
border-@{direction}-color: var(--ooui-interface-border);
}
}
&-anchored- {
&top {
.ooui-anchor(bottom);
}
&bottom {
.ooui-anchor(top);
}
&start {
.ooui-anchor(right);
}
&end {
.ooui-anchor(left);
}
}
}
.oo-ui-searchWidget-query {
border-bottom-color: var(--ooui-interface-border);
}
.oo-ui-selectFileWidget {
&-dropTarget {
background-color: var(--ooui-interface);
border-color: var(--ooui-interface-border);
}
&.oo-ui-widget-enabled {
&.oo-ui-selectFileWidget-dropTarget {
background-color: var(--ooui-interface);
&:hover {
border-color: var(--ooui-input-border--hover);
}
}
}
}
.oo-ui-tabOptionWidget {
color: var(--ooui-text);
.oo-ui-tabSelectWidget-framed & {
&.oo-ui-optionWidget-selected {
background-color: var(--body-dark);
color: var(--ooui-text);
& .oo-ui-labelElement-label {
border-bottom-color: var(--body-border);
}
}
&.oo-ui-widget-enabled {
&:hover,
&:active {
background-color: var(--body-light);
color: var(--ooui-text);
}
&.oo-ui-optionWidget-selected:hover {
background-color: var(--body-dark);
}
}
}
.oo-ui-tabSelectWidget-frameless & {
&.oo-ui-optionWidget-selected {
color: var(--ooui-progressive);
box-shadow: inset 0 -2px 0 0 var(--ooui-progressive);
&:hover,
&:focus {
color: var(--ooui-progressive--hover);
box-shadow: inset 0 -2px 0 0 var(--ooui-progressive--hover);
}
}
}
}
.oo-ui-tabSelectWidget {
// eg used on [[Special:Preferences]]
&-framed {
background: none; // actually uses something like --ooui-interface
border-bottom: 1px solid var(--ooui-interface-border); // our customisation
}
// used in TabberNeue (even though we dont have it)
&-frameless {
box-shadow: inset 0 -1px 0 0 var(--ooui-interface-border);
}
&-mobile {
// both use the following mixin in core; but we already have a similar
// var in minerva.css for these stuff already used in navboxes
/*
.oo-ui-horizontal-gradient( @startColor: #eee, @endColor: #fff, @startPos: 0, @endPos: 100% ) {
background-color: average( @startColor, @endColor );
background-image: linear-gradient( to right, @startColor @startPos, @endColor @endPos );
}
*/
&.oo-ui-tabSelectWidget-framed:after {
// background instead of -image so the prev properties used as
// fallback for ancient browsers are reset
background: var(--mobile-navbox-linear-gradient);
}
&.oo-ui-tabSelectWidget-frameless:after {
background: var(--mobile-navbox-linear-gradient);
}
}
}
// eg recent changes selected filter tag
.oo-ui-tagItemWidget {
border-color: var(--ooui-normal-border);
&.oo-ui-widget-enabled {
color: var(--ooui-text);
&:hover {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
}
&:not( .oo-ui-tagItemWidget-fixed ) {
background-color: var(--ooui-normal);
}
& .oo-ui-buttonElement-button {
&:hover {
background-color: var(--ooui-normal--hover);
}
}
}
}
.oo-ui-tagMultiselectWidget {
// rc/watchlist filter box
&.oo-ui-widget-enabled {
background-color: var(--ooui-interface);
// and again - this time it's button bg
&.oo-ui-tagMultiselectWidget-outlined {
background-color: var(--ooui-normal);
.oo-ui-tagItemWidget.oo-ui-widget-enabled {
background-color: var(--ooui-interface);
}
}
}
}
.oo-ui-textInputWidget {
// eg RecentChanges filter changes input
.oo-ui-inputWidget-input {
background-color: var(--ooui-input);
color: var(--ooui-text);
border-color: var(--ooui-input-border);
}
&.oo-ui-widget-enabled {
.oo-ui-inputWidget-input {
&::placeholder {
color: var(--subtle-color);
}
&:focus {
border-color: var(--ooui-accent);
box-shadow: @ooui-box-shadow-base--focus;
}
&[readonly]:not(.oo-ui-pendingElement-pending) {
background-color: var(--ooui-disabled);
color: var(--ooui-disabled-text);
}
}
&:hover {
.oo-ui-inputWidget-input {
border-color: var(--ooui-input-border--hover);
&:focus {
border-color: var(--ooui-accent);
}
}
}
@media screen {
@media ( min-width: 0 ) {
textarea.oo-ui-inputWidget-input:focus {
outline: 1px solid var(--ooui-accent);
}
}
}
}
&.oo-ui-widget-disabled {
.oo-ui-inputWidget-input {
background-color: var(--ooui-disabled);
color: var(--ooui-disabled-text);
text-shadow: none; // wont look good on dark mode
border-color: var(--ooui-disabled-border);
}
}
}
.oo-ui-toggleSwitchWidget {
background-color: var(--ooui-input);
border-color: var(--ooui-input-border);
&.oo-ui-widget-enabled {
.oo-ui-toggleSwitchWidget-grip {
background-color: var(--ooui-input);
border-color: var(--ooui-input-border);
}
&:hover {
background-color: var(--ooui-input);
border-color: var(--ooui-accent);
.oo-ui-toggleSwitchWidget-grip {
background-color: var(--ooui-input);
border-color: var(--ooui-accent);
}
}
&:active,
&:active:hover,
&:active:focus {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
box-shadow: @ooui-box-shadow-input-binary--active;
.oo-ui-toggleSwitchWidget-grip {
background-color: var(--ooui-input);
border-color: var(--ooui-input);
}
}
&:focus {
border-color: var(--ooui-accent);
box-shadow: @ooui-box-shadow-base--focus;
.oo-ui-toggleSwitchWidget-grip {
border-color: var(--ooui-accent);
}
}
&.oo-ui-toggleWidget-on {
background-color: var(--ooui-progressive);
border-color: var(--ooui-progressive);
.oo-ui-toggleSwitchWidget-grip {
background-color: var(--ooui-input);
border-color: var(--ooui-input);
}
&:hover {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
}
&:active,
&:active:hover {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
}
&:focus {
border-color: var(--ooui-progressive);
&::before {
border-color: @ooui-color-base--inverted;
}
}
}
}
&.oo-ui-widget-disabled {
background-color: var(--ooui-disabled);
border-color: var(--ooui-disabled); // same as bg
}
}
/* ----------------------
elements/buttons
---------------------- */
// mixin for frameless progressive/destructive button
.mw-frameless-button-colored( @child, @color-text ) {
> @{child},
// no distinct color for hover
> @{child}:hover {
color: @color-text;
}
> @{child}:active,
&.oo-ui-buttonElement-pressed > @{child} {
// dont differentiate between :active and normal
color: @color-text;
border-color: @color-text;
}
}
.mw-framed-button-colored( @child, @color-text, @hover, @border-color--hover, /* @active,*/ @focus ) {
> @{child} {
color: @color-text;
}
> @{child}:hover {
background-color: @hover;
border-color: @border-color--hover;
}
> @{child}:focus {
border-color: @focus;
box-shadow: inset 0 0 0 1px @focus;
}
/* ugh uses lighten()
> @{child}:active,
&.oo-ui-buttonElement-pressed > @{child},
&.oo-ui-buttonElement-active > @{child},
&.oo-ui-popupToolGroup-active > @{child} {
background-color: lighten( @active, 60% );
color: @active;
border-color: @active;
}
*/
}
// mixin for framed progressive/destructive button
.mw-framed-primary-button-colored( @child, @color, @hover, @active, @focus ) {
> @{child} {
background-color: @color;
border-color: @color;
}
> @{child}:hover {
background-color: @hover;
border-color: @hover;
}
> @{child}:focus {
border-color: @focus;
box-shadow: inset 0 0 0 1px @focus, inset 0 0 0 2px @ooui-color-base--inverted;
}
> @{child}:active,
&.oo-ui-buttonElement-pressed > @{child},
&.oo-ui-buttonElement-active > @{child},
&.oo-ui-popupToolGroup-active > @{child} {
color: @ooui-color-base--inverted;
background-color: @active;
border-color: @active;
}
}
.oo-ui-buttonElement {
&-frameless {
&.oo-ui-widget-enabled {
> .oo-ui-buttonElement-button {
color: var(--ooui-text);
&:hover {
color: var(--ooui-text);
}
&:focus {
border-color: var(--ooui-accent);
box-shadow: @ooui-box-shadow-base--focus;
}
}
&.oo-ui-buttonElement-pressed > input.oo-ui-buttonElement-button,
> .oo-ui-buttonElement-button:active {
color: var(--ooui-text);
}
&.oo-ui-flaggedElement {
&-progressive {
.mw-frameless-button-colored( ~'.oo-ui-buttonElement-button', var(--ooui-text) ); // try out using text color as the button label like hard-coded darkmode
}
// not needed
// &-destructive {
// .mw-frameless-button-colored( ~'.oo-ui-buttonElement-button' );
// }
}
}
&.oo-ui-widget-disabled {
> .oo-ui-buttonElement-button {
color: var(--ooui-disabled-text);
}
}
}
&-framed {
&.oo-ui-widget-disabled {
> .oo-ui-buttonElement-button {
background-color: var(--ooui-disabled);
border-color: var(--ooui-disabled-border);
}
}
&.oo-ui-widget-enabled {
> .oo-ui-buttonElement-button {
background-color: var(--ooui-normal);
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
&:hover {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
}
&:focus {
border-color: var(--ooui-accent);
box-shadow: @ooui-box-shadow-base--focus;
}
}
&.oo-ui-buttonElement-active > .oo-ui-buttonElement-button {
background-color: var(--ooui-progressive--hover);
color: #fff; // needed, else it would be overriden by non-active styles
border-color: var(--ooui-progressive--hover);
&:focus {
border-color: var(--ooui-progressive--hover);
box-shadow: @ooui-box-shadow-base--focus;
}
}
// same as :hover above
> .oo-ui-buttonElement-button:active,
&.oo-ui-buttonElement-pressed > .oo-ui-buttonElement-button {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
}
&.oo-ui-flaggedElement {
&-progressive {
.mw-framed-button-colored( ~'.oo-ui-buttonElement-button', var(--ooui-text), var(--ooui-normal--hover), var(--ooui-progressive--hover), var(--ooui-accent) );
}
&-destructive {
// .mw-framed-button-colored( ~'.oo-ui-buttonElement-button', @color-destructive-non-primary, @background-color-framed--hover, @border-color-framed-destructive--hover, @color-destructive--active, @color-destructive--focus );
// since we arent changing destructive
> .oo-ui-buttonElement-button {
color: var(--ooui-text);
&:hover {
background-color: var(--ooui-normal--hover);
}
}
}
}
&.oo-ui-flaggedElement-primary {
&.oo-ui-flaggedElement {
&-progressive {
.mw-framed-primary-button-colored( ~'.oo-ui-buttonElement-button', var(--ooui-progressive), var(--ooui-progressive--hover), var(--ooui-progressive--hover), var(--ooui-accent) );
}
// dont need
// &-destructive {
// .mw-framed-primary-button-colored( ~'.oo-ui-buttonElement-button' );
// }
}
}
}
}
}
.oo-ui-pendingElement-pending {
background-image: var(--ooui-pending-background-image);
background-size: 200%;
animation: oo-ui-pendingElement-stripes 6s linear infinite;
@keyframes oo-ui-pendingElement-stripes {
100% {
background-position: 100%;
}
}
}
/* ----------------------
windows
---------------------- */
.oo-ui-messageDialog {
&-content > .oo-ui-window-foot {
outline-color: var(--ooui-interface-border);
}
&-message {
color: var(--ooui-text);
}
&-actions {
// eg ace editor "Go to line number..." window
&-horizontal .oo-ui-actionWidget {
border-right-color: var(--ooui-interface-border);
}
&-vertical .oo-ui-actionWidget {
border-bottom-color: var(--ooui-interface-border);
}
}
}
.oo-ui-processDialog {
&-content {
.oo-ui-window-head,
.oo-ui-window-foot {
outline-color: var(--ooui-interface-border);
}
}
// need to reoverride so buttons wont have weird borders
.oo-ui-actionWidget {
> .oo-ui-buttonElement-button {
border-top-color: transparent;
border-bottom-color: transparent;
&:hover,
&:active {
border-top-color: transparent;
border-bottom-color: transparent;
}
}
&:not( .oo-ui-flaggedElement-progressive ):not( .oo-ui-flaggedElement-destructive ) {
> .oo-ui-buttonElement-button {
&:hover,
&:active {
border-right-color: var(--ooui-interface-border);
border-left-color: transparent;
}
&:focus {
border-color: var(--ooui-accent);
}
}
}
}
&-actions {
&-safe,
&-other {
.oo-ui-actionWidget > .oo-ui-buttonElement-button {
border-right-color: var(--ooui-normal-border);
border-left-color: transparent;
}
}
&-safe {
.oo-ui-widget-enabled.oo-ui-iconElement:not( .oo-ui-labelElement ) {
> .oo-ui-buttonElement-button {
&:hover {
background-color: var(--ooui-normal--hover);
border-right-color: var(--ooui-interface-border);
}
}
}
}
}
}
.oo-ui-windowManager {
&-modal {
// bg behind windows
> .oo-ui-dialog {
background-color: var(--ooui-window-background);
}
// all popup windows
> .oo-ui-dialog > .oo-ui-window-frame {
background-color: var(--ooui-interface);
}
}
// window outlines
&-modal&-floating > .oo-ui-dialog > .oo-ui-window-frame {
border-color: var(--ooui-interface-border);
}
}
// we need this one to be able to adjust the font color inside windows
.oo-ui-window {
color: var(--ooui-text);
}
/* ----------------------
tools
---------------------- */
.mw-tool-colored( @child /*, @color-text*/ , @hover, @active , @focus , @active-text: @active ) {
// > @{child} {
// color: @color-text;
// }
> @{child}:hover {
background-color: @hover;
}
> @{child}:focus {
outline: 1px solid @focus;
box-shadow: inset 0 0 0 1px @focus;
}
> @{child}:active,
&.oo-ui-tool-active > @{child},
&.oo-ui-popupToolGroup-active > @{child} {
background-color: var(--ooui-normal--hover);
color: @active-text;
box-shadow: none;
}
}
.mw-primary-tool-colored( @child, @color, @hover, @active, @focus ) {
> @{child} {
// color: @ooui-color-base--inverted;
background-color: @color;
}
> @{child}:hover {
background-color: @hover;
}
> @{child}:focus {
// outline: @border-width-base @border-style-base @focus;
box-shadow: inset 0 0 0 1px @focus, inset 0 0 0 2px @ooui-color-base--inverted;
}
> @{child}:active,
&.oo-ui-tool-active > @{child} {
// color: @ooui-color-base--inverted;
background-color: @active;
// box-shadow: none;
}
// &.oo-ui-widget-disabled > @{child},
// &.oo-ui-widget-disabled > @{child}:active {
// background-color: @background-color-filled--disabled;
// color: @color-filled--disabled;
// }
}
@ooui-toolbar: var(--ooui-interface);
@ooui-toolbar-border: var(--body-mid);
// mainly used by ve and source editor
// toolbar
.oo-ui-toolbar {
&-bar {
background-color: @ooui-toolbar;
color: var(--ooui-text);
// toolbar borders
.oo-ui-toolbar-position-top > & {
border-bottom-color: @ooui-toolbar-border;
}
.oo-ui-bookletLayout > .oo-ui-menuLayout-menu {
border-right-color: @ooui-toolbar-border;
}
}
}
.oo-ui-tool {
&.oo-ui-widget-enabled {
.mw-tool-colored( ~'.oo-ui-tool-link', var(--ooui-normal--hover), var(--ooui-accent), var(--ooui-accent) );
// &.oo-ui-flaggedElement {
// &-progressive {
// .mw-tool-colored( ~'.oo-ui-tool-link', @background-color-tool--hover, @color-primary--active, @color-primary--focus );
// }
// &-destructive {
// .mw-tool-colored( ~'.oo-ui-tool-link', @color-destructive-non-primary, @background-color-tool--hover, @color-destructive--active, @color-destructive--focus );
// }
// }
&.oo-ui-flaggedElement-primary {
&.oo-ui-flaggedElement {
&-progressive {
.mw-primary-tool-colored( ~'.oo-ui-tool-link', var(--ooui-progressive), var(--ooui-progressive--hover), var(--ooui-progressive--hover), var(--ooui-accent) );
}
// &-destructive {
// .mw-primary-tool-colored( ~'.oo-ui-tool-link', @color-destructive, @color-destructive--hover, @color-destructive--active, @color-destructive--focus );
// }
}
}
}
}
.oo-ui-listToolGroup {
// eg "Page options" dropdown
&-tools .oo-ui-tool {
&.oo-ui-widget-enabled {
background-color: var(--ooui-normal);
&:hover {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
}
}
// does not match source ordering
&-active.oo-ui-widget-enabled .oo-ui-tool-link .oo-ui-tool-title {
color: var(--ooui-progressive)
}
}
}
// left-hand tool group
.oo-ui-menuToolGroup {
border-left-color: @ooui-toolbar-border;
border-right-color: @ooui-toolbar-border;
}
.oo-ui-popupToolGroup {
// dropdown menu
&-tools {
background-color: @ooui-toolbar;
border-color: @ooui-toolbar-border;
}
&.oo-ui-widget-enabled {
// eg hover "Insert"
> .oo-ui-popupToolGroup-handle {
&:hover {
background-color: var(--ooui-normal--hover);
}
&:focus {
outline: 1px solid var(--ooui-accent);
box-shadow: @ooui-box-shadow-base--focus;
}
}
// ve "Page options" again
.oo-ui-toolbar-actions & {
> .oo-ui-popupToolGroup-handle {
&:hover {
// same as button hover
border-right-color: var(--ooui-normal--hover);
}
}
}
}
// might not match source ordering
&-tools .oo-ui-tool.oo-ui-widget-enabled .oo-ui-tool-link:focus {
box-shadow: inset 0 0 0 2px var(--ooui-accent);
}
&-tools .oo-ui-tool-active.oo-ui-widget-enabled .oo-ui-tool-link .oo-ui-tool-title {
color: var(--ooui-progressive);
}
&.oo-ui-popupToolGroup-active {
> .oo-ui-popupToolGroup-handle {
// aka active
background-color: var(--ooui-normal);
color: var(--ooui-accent);
&:hover {
background-color: var(--ooui-normal--hover);
color: var(--ooui-accent);
}
}
}
}
/* ----------------------
layouts
---------------------- */
.oo-ui-bookletLayout {
&-outlinePanel {
> .oo-ui-outlineControlsWidget {
border-top-color: var(--ooui-interface-border);
}
}
// eg "Show options" in ve template editor
> .oo-ui-menuLayout-menu {
border-right-color: var(--ooui-interface-border);
}
}
.oo-ui-fieldLayout {
// disabled text color in layouts
&-disabled > .oo-ui-fieldLayout-body > .oo-ui-fieldLayout-header > .oo-ui-labelElement-label {
color: var(--ooui-disabled-text);
}
}
// ooui <fieldset>
.oo-ui-panelLayout {
&-framed {
border-color: var(--sidebar); // along with <h1/2> border
}
}
/* ----------------------
others
---------------------- */
.oo-ui-icon-settings {
background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' width='20' height='20' viewBox='0 0 20 20'%3E%3Ctitle%3Esettings%3C/title%3E%3Cg transform='translate(10 10)'%3E%3Cpath id='a' d='M1.5-10h-3l-1 6.5h5m0 7h-5l1 6.5h3'/%3E%3Cuse xlink:href='%23a' transform='rotate(45)'/%3E%3Cuse xlink:href='%23a' transform='rotate(90)'/%3E%3Cuse xlink:href='%23a' transform='rotate(135)'/%3E%3C/g%3E%3Cpath d='M10 2.5a7.5 7.5 0 0 0 0 15 7.5 7.5 0 0 0 0-15v4a3.5 3.5 0 0 1 0 7 3.5 3.5 0 0 1 0-7'/%3E%3C/svg%3E");
}
.oo-ui-icon-clear {
background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 20 20'%3E%3Ctitle%3Eclear%3C/title%3E%3Cpath d='M10 0a10 10 0 1 0 10 10A10 10 0 0 0 10 0zm5.66 14.24-1.41 1.41L10 11.41l-4.24 4.25-1.42-1.42L8.59 10 4.34 5.76l1.42-1.42L10 8.59l4.24-4.24 1.41 1.41L11.41 10z'/%3E%3C/svg%3E");
}
// --- widgets in core mediawiki ---
// DateInputWidget
.mw-widget-dateInputWidget {
&-handle {
background-color: var(--ooui-input);
color: var(--ooui-text);
border-color: var(--ooui-input-border);
}
&-calendar {
background-color: var(--ooui-interface);
}
&.oo-ui-widget-enabled .mw-widget-dateInputWidget-handle:hover {
border-color: var(--ooui-input-border--hover);
}
}
// CalendarWidget
.mw-widget-calendarWidget {
border-color: var(--ooui-interface-border);
&:focus {
border-color: var(--ooui-accent);
box-shadow: @ooui-box-shadow-base--focus;
}
// focused month
&-day,
// week day name
&-day-heading {
color: var(--ooui-text);
}
// other months
&-day-additional {
color: var(--ooui-text);
opacity: 0.67;
}
&-day-today {
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
&-item {
&:hover {
background-color: var(--ooui-progressive);
}
&-selected {
background-color: var(--ooui-progressive--hover);
}
}
}
// e.g. on [[Special:AbuseFilter/examine]]
.mw-widgets-datetime-calendarWidget {
background-color: var(--ooui-interface);
border-color: var(--ooui-interface-border);
&:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent), 0 2px 2px 0 rgba(0,0,0,0.25);
}
&-grid {
.mw-widgets-datetime-calendarWidget-cell {
&.mw-widgets-datetime-calendarWidget-extra .oo-ui-buttonElement-button {
.oo-ui-labelElement-label {
color: var(--subtle-color);
}
}
&.mw-widgets-datetime-calendarWidget-selected .oo-ui-buttonElement-button {
background-color: var(--ooui-progressive--hover);
}
}
}
}
// input box
.mw-widgets-datetime-dateTimeInputWidget {
&-handle {
background-color: var(--ooui-input);
color: var(--ooui-text);
border-color: var(--ooui-input-border);
}
&.oo-ui-widget-enabled {
&.mw-widgets-datetime-dateTimeInputWidget-handle {
&:hover {
border-color: var(--ooui-input-border--hover);
}
}
&:hover {
input,
textarea {
border-color: var(--ooui-input-border--hover);
}
}
.mw-widgets-datetime-dateTimeInputWidget-editField:hover {
background-color: var(--ooui-normal);
}
}
}
2cebc4be97205d3d999fac025770169069d82407
MediaWiki:Common.less/visualeditor.less
8
24
33
2024-03-22T02:39:10Z
Jayden
3
Created page with "/* ========================== VisualEditor ========================== */ @ooui-text: var(--ooui-text); @ooui-interface: var(--ooui-interface); @ooui-interface-border: var(--body-border); @ve-toolbar-border: var(--body-mid); // may look into https://www.mediawiki.org/wiki/VisualEditor/Gadgets#Gadget_-_Registering_VE_plugin // so ve-specific stuff will be all lazy loaded .ve-activated { .ve-init-mw-desktopArticleTarget-originalContent #catlinks:hover { ba..."
less
less
/* ==========================
VisualEditor
========================== */
@ooui-text: var(--ooui-text);
@ooui-interface: var(--ooui-interface);
@ooui-interface-border: var(--body-border);
@ve-toolbar-border: var(--body-mid);
// may look into https://www.mediawiki.org/wiki/VisualEditor/Gadgets#Gadget_-_Registering_VE_plugin
// so ve-specific stuff will be all lazy loaded
.ve-activated {
.ve-init-mw-desktopArticleTarget-originalContent #catlinks:hover {
background: var(--ooui-normal--hover);
}
}
// limit to vector to not load on mobile
.ve-ui-overlay {
font-family: inherit;
}
// border atop special character menu
.oo-ui-toolbar-position-top .ve-ui-toolbarDialog-position-above {
border-top-color: @ve-toolbar-border;
}
// "Insert paragraph" button, maybe other things
.ve-ce-branchNode-blockSlug,
.ve-ce-branchNode-newSlug {
outline-color: @ooui-interface-border;
background-color: @ooui-interface;
}
// special characters menu
// header
.ve-ui-specialCharacterPage h3 {
color: var(--byline-color);
}
// buttons - same as source editor
.ve-ui-specialCharacterPage-character {
border-color: var(--body-mid);
&:hover {
border-color: var(--body-dark);
}
}
// when a link is selected
.ve-ce-linkAnnotation.ve-ce-annotation-active {
box-shadow: 0 0 0 1px var(--body-mid);
background: none;
}
// inside link annotation box
.ve-ui-desktopContext .ve-ui-linkContextItem .ve-ui-linkContextItem-label {
border-color: @ooui-interface-border;
}
// ve version number
.ve-ui-mwHelpPopupTool-version-label,
.ve-ui-mwHelpPopupTool-version-link,
.ve-ui-mwHelpPopupTool-version-date {
color: var(--byline-color);
}
// unstyled tables
.ve-ce-tableCellableNode {
border-color: @ve-toolbar-border;
}
// "There are no references on this page to include in this list."
// even though there is, just because it doesnt recognise cites templates
// with <ref> tags embeded inside them
.ve-ce-mwReferencesListNode-muted {
color: var(--byline-color);
}
/* ------------------
modals
------------------ */
// template editor modal
.ve-ui-mwTemplatePage-description,
.ve-ui-mwParameterPage-label,
.ve-ui-mwParameterPage-description-required,
.ve-ui-mwParameterPage-description-deprecated {
color: var(--byline-color);
}
// template description
.mw-widget-titleWidget-menu .mw-widget-titleOptionWidget-description {
color: var(--byline-color);
}
// gallery modal
.ve-ui-mwGalleryDialog-menuLayout > .oo-ui-menuLayout-menu,
.ve-ui-mwGalleryDialog-innerMenuLayout > .oo-ui-menuLayout-menu,
.ve-ui-mwGalleryDialog .ve-ui-mwGalleryDialog-image-container,
.ve-ui-targetWidget {
border-color: @ooui-interface-border;
}
.ve-ui-targetWidget:not(.oo-ui-pendingElement-pending) {
background-color: var(--body-main);
}
// "Save your changes" modal
.ve-ui-mwSaveDialog {
color: var(--ooui-text);
}
// box below edit summary box
.ve-ui-mwSaveDialog-options {
background-color: @ooui-interface;
border-color: @ooui-interface-border;
}
.ve-ui-mwSaveDialog-summary {
background-color: var(--ooui-input);
}
// char count remaining
.ve-ui-mwSaveDialog-editSummary-count {
border-color: @ooui-interface-border;
}
.ve-ui-mwSaveDialog-license {
color: var(--byline-color);
}
.ve-ui-mwReferenceContextItem-muted {
color: var(--byline-color);
}
// borders inside edit notices
.ve-ui-mwNoticesPopupTool-items > div:not(:first-child),
.ve-ui-mwHelpPopupTool-item:not(:first-child) {
border-color: @ooui-interface-border;
}
// Templates config window
.ve-ui-mwTransclusionOutlineControlsWidget {
background-color: @ooui-interface;
border-top-color: @ooui-interface-border;
}
.ve-ui-mwTransclusionOutlineTemplateWidget {
&-sticky {
background-color: @ooui-interface;
}
.ve-ui-mwTransclusionOutlineParameterWidget.oo-ui-optionWidget-highlighted {
color: var(--ooui-text);
}
&-no-template-parameters {
color: var(--subtle-color);
}
}
.ve-ui-mwParameterPage-undocumentedLabel {
color: var(--subtle-color);
}
.ve-ui-mwTwoPaneTransclusionDialogLayout > .oo-ui-menuLayout-menu {
border-right: @ooui-interface-border;
}
.ve-ui-mwParameterPage-doc-required, .ve-ui-mwParameterPage-doc-deprecated,
.ve-ui-mwParameterPage-inlineDescription .ve-ui-mwParameterPage-doc-example {
color: var(--byline-color);
}
// param "More" details button
.ve-ui-expandableContent-toggle {
background-color: @ooui-interface;
}
// fade beside it
.ve-ui-expandableContent-fade {
background: linear-gradient( to right, rgba( 255, 255, 255, 0 ) 0, @ooui-interface 90% )
}
// keyboard shortcuts modal
.ve-ui-commandHelpDialog-shortcut > kbd,
.ve-ui-commandHelpDialog-sequence > kbd {
background-color: var(--keypress-background);
color: var(--keypress-color);
border-color: var(--keypress-border);
box-shadow: none;
text-shadow: none;
}
/* ------------------
initialisation
------------------ */
.ve-init-mw-desktopArticleTarget-toolbarPlaceholder-floating .ve-init-mw-desktopArticleTarget-toolbarPlaceholder-bar {
background: @ooui-interface; // based on `.oo-ui-toolbar-bar`
}
.ve-init-mw-desktopArticleTarget-toolbarPlaceholder-bar {
border-bottom-color: @ve-toolbar-border; // `.oo-ui-toolbar-position-top > .oo-ui-toolbar-bar`
}
/* ------------------
Parsoid
------------------ */
// technically these should not be here
figure[typeof~='mw:File/Thumb'],
figure[typeof~='mw:File/Frame'],
figure[typeof~='mw:Image/Thumb'],
figure[typeof~='mw:Video/Thumb'],
//figure[typeof~='mw:Audio/Thumb'],
figure[typeof~='mw:Image/Frame'],
figure[typeof~='mw:Video/Frame'] /*,
figure[typeof~='mw:Audio/Frame']*/ {
border: none;
background-color: var(--thumb-bg);
> a:first-child > *:first-child:not( .mw-broken-media ) {
border: none;
background: var(--thumb-bg);
}
> figcaption {
// same as .thumbcaption
border: none;
background-color: var(--thumb-caption-bg);
padding: 4px 6px;
}
}
13c9e11aa5cbb4e84eeea523476bb7e4e58321b9
MediaWiki:Common.less/templates.less
8
25
34
2024-03-22T02:39:31Z
Jayden
3
Created blank page
less
less
da39a3ee5e6b4b0d3255bfef95601890afd80709
MediaWiki:Common.less/infobox.less
8
26
35
2024-03-22T02:40:09Z
Jayden
3
base cp from rsw
less
less
:root {
--infobox-text-color: var(--text-color);
}
7cd8e00aa1a2f47d74e37c35403aa973f0950a45
MediaWiki:Common.less/references.less
8
27
36
2024-03-22T02:40:27Z
Jayden
3
base cp from rsw
less
less
/* ==================
references
================== */
// Small reference list
// apply to all <references/>
ol.references,
// apply to {{Reflist}}
.reflist {
font-size: 90%;
}
.reflist {
list-style-type: decimal;
}
.reflist .references {
font-size: 100%;
// inherit from .reflist instead
list-style-type: inherit;
}
// for {{Notelist}}
.reflist-lower-alpha {
list-style-type: lower-alpha;
}
// refs background when targetting refs
ol.references li:target,
sup.reference:target {
background-color: var(--body-light);
}
// Hide certain text (namely quote parameters) from the references section to
// shorten it and make it readable
.hideQuotes .refhide {
display: none;
}
dc09767e9cd1e83d6b2e2cb8e112ead830733d0f
MediaWiki:Common.less/prefs.less
8
28
37
2024-03-22T02:40:43Z
Jayden
3
base cp from rsw
less
less
.mw-prefs-buttons {
background-color: var(--body-main);
border-top-color: var(--body-border);
box-shadow: none;
}
.mw-prefs-tabs-wrapper.oo-ui-panelLayout-framed,
.mw-prefs-tabs > .oo-ui-menuLayout-content > .oo-ui-indexLayout-stackLayout > .oo-ui-tabPanelLayout {
border-color: var(--body-border);
}
.mw-htmlform-ooui .mw-htmlform-matrix tbody {
tr:nth-child(even) td {
background-color: var(--body-light);
}
tr:hover td {
background-color: var(--body-mid)
}
}
ef9ae361a245ca4a136a490b0194d70b7ea98547
MediaWiki:Common.less/specials.less
8
29
38
2024-03-22T02:41:10Z
Jayden
3
base cp from rsw
less
less
/* ---------------------------------
[[Special:RecentChanges]]
[[Special:Watchlist]]
--------------------------------- */
:root {
--rc-positive-color: darken( @lima, 18% );
--rc-negative-color: darken( @flamingo, 18% );
}
// Recent changes/page history byte indicators
.mw-plusminus {
&-pos {
color: var(--rc-positive-color);
}
&-neg {
color: var(--rc-negative-color);
}
}
// "Other review tools" box
.client-js .mw-recentchanges-toplinks:not(.mw-recentchanges-toplinks-collapsed) {
border-color: var(--body-border);
background-color: var(--body-light);
border-radius: @border-radius;
}
// Filter box
.mw-rcfilters-ui-filterTagMultiselectWidget {
// "Active filtes"
&-wrapper-content-title {
color: var(--text-color);
}
// "No active filters."
&-emptyFilters {
color: var(--byline-color);
}
// full box bg
&.oo-ui-widget-enabled .oo-ui-tagMultiselectWidget-handle {
background-color: var(--ooui-interface);
border-color: var(--ooui-interface-border);
}
// "Namespace" and "Tags" buttons
&-views-select-widget.oo-ui-widget {
border-color: var(--ooui-interface-border);
}
// Small border when collapsed
.mw-rcfilters-collapsed & {
border-bottom-color: var(--ooui-interface-border);
}
}
// dropdown menu footer
.mw-rcfilters-ui-menuSelectWidget-footer {
background-color: var(--ooui-interface);
border-color: var(--ooui-interface-border);
}
// "Advanced filters" in footer
.mw-rcfilters-ui-viewSwitchWidget label.oo-ui-labelWidget {
color: var(--byline-color);
}
// hovering over filter tag buttons
.mw-rcfilters-ui-tagItemWidget-popup-content {
color: var(--ooui-text);
}
// Legend
// Use both selector to prevent FOUC
.mw-changeslist-legend,
.mw-rcfilters-ui-changesListWrapperWidget .mw-changeslist-legend {
background-color: var(--body-light);
border-color: var(--body-dark); // same as .catlinks
}
// the line separating old changes from new changes
.mw-rcfilters-ui-changesListWrapperWidget-previousChangesIndicator {
border-color: var(--sidebar);
}
// cut out huge amount of whitespace before each row
.mw-changeslist {
.client-js & ul,
.client-js & table.mw-enhanced-rc {
margin-left: 0;
}
}
// separator in watchlist
.mw-rcfilters-ui-watchlistTopSectionWidget-separator {
border-color: var(--sidebar);
}
// Filter selection drop down menu
.mw-rcfilters-ui-itemMenuOptionWidget {
&-header {
border-bottom-color: var(--ooui-interface);
background-color: var(--ooui-interface-border);
}
// every tile
&:not(:last-child):not(.mw-rcfilters-ui-itemMenuOptionWidget-identifier-talk) {
border-bottom-color: var(--ooui-normal-border);
}
&-label {
// tile descriptions
&-title,
&-desc {
color: var(--text-color);
}
}
}
// Selected filter
.mw-rcfilters-ui-filterMenuOptionWidget.oo-ui-flaggedElement-muted {
&:not(.oo-ui-optionWidget-selected) {
background-color: var(--body-main);
}
.mw-rcfilters-ui-itemMenuOptionWidget-label-title,
.mw-rcfilters-ui-itemMenuOptionWidget-label-desc {
color: var(--subtle-color);
}
}
// filter sections
.mw-rcfilters-ui-filterMenuSectionOptionWidget {
background-color: var(--body-mid);
&-header-title.oo-ui-labelElement-label {
color: var(--ooui-text);
}
}
// Dropdown header
.mw-rcfilters-ui-filterMenuHeaderWidget {
// "Filters"
&-title {
color: var(--ooui-text);
}
// bg
&-header {
border-bottom-color: var(--ooui-interface-border);
background-color: var(--ooui-interface);
}
}
// in namespace filters
.mw-rcfilters-ui-itemMenuOptionWidget-view-namespaces {
border-top-color: var(--ooui-interface-border);
}
// "Results to show"
.mw-rcfilters-ui-datePopupWidget {
border-color: var(--ooui-interface-border);
.mw-rcfilters-ui-valuePickerWidget-title {
color: var(--byline-color);
}
}
// Saved filters label
.mw-rcfilters-ui-savedLinksListItemWidget {
&-label {
color: var(--ooui-accent);
}
}
.mw-changeslist.mw-rcfilters-ui-changesListWrapperWidget-highlighted {
.client-js & ul,
.client-js & table.mw-enhanced-rc {
margin-left: 1.5em;
}
}
/* ---------------------------------
[[Special:CreateAccount]]
[[Special:UserLogin]]
--------------------------------- */
.page-Special_CreateAccount,
.page-Special_UserLogin {
// message + form container
.mw-ui-container {
max-width: 64rem;
margin: 0 auto;
}
}
// Stats
.mw-number-text {
color: var(--byline-color);
.mw-body-content & h3 {
color: var(--text-color);
}
}
/* ---------------------------
[[Special:Search]]
--------------------------- */
// convert icon to use masking
#mw-indicator-mw-helplink a {
background: none;
padding: 0;
display: flex; // for alignment
align-items: center;
&::before {
content: '';
margin-right: 5px;
// maybe should import the file on-wiki
.mask('/resources/src/mediawiki.helplink/images/helpNotice.svg?46d34');
background: var(--text-color);
height: 20px;
width: 20px;
}
}
// Search results info
.results-info {
color: inherit;
}
// Search options table
.mw-search-profile-tabs {
background-color: var(--body-mid);
border-color: transparent;
}
// Selected tab
.search-types .current a {
color: inherit;
}
#mw-searchoptions {
background-color: var(--body-mid);
border-color: transparent;
.divider {
border-color: var(--body-border);
}
// "Search in namespaces:"
h4 {
font-family: inherit;
}
// bold subject namespace
.oo-ui-labelElement:nth-of-type(odd) {
font-weight: bold;
}
}
.searchresult {
line-height: 1.5;
}
.searchalttitle,
#mw-search-interwiki li {
font-size: 90%; // override 95%
}
.mw-search-result-data {
color: var(--byline-color);
}
/* -----------------------------
[[Special:Listfiles]]
----------------------------- */
// fixing small images on FileList
.page-Special_ListFiles {
a.image img {
width: inherit;
height: inherit;
}
.TablePager_col_thumb {
text-align: center;
}
}
/* -----------------------------
[[Special:Editcount]]
----------------------------- */
#editcount table[border="1"] {
background-color: @BODY_MAIN !important; // override inline style
border-color: var(--wikitable-border) !important;
margin-top: .5em;
th,
td {
padding: .2em .4em;
}
th {
background-color: var(--wikitable-header-bg);
border: 1px solid var(--wikitable-border);
}
td {
border: 1px solid var(--wikitable-border);
}
tr:nth-child(odd) {
background-color: @BODY_LIGHT;
}
}
/* Special:Notifications-related */
/* Fix placeholder background colour whilst loading items */
.mw-echo-ui-notificationBadgeButtonPopupWidget-popup > .oo-ui-popupWidget-popup .mw-echo-ui-placeholderItemWidget {
background-color: inherit;
}
// Special:Interwiki
// same as [[Template:Yes]]
table.mw-interwikitable.body td.mw-interwikitable-local-yes {
background-color: var(--table-yes-background);
color: var(--table-yes-color);
}
// Special:ProtectedPages
.mw-protectedpages-unknown {
color: var(--byline-color);
}
// Mark redirects in Special:AllPages and Special:Watchlist
.watchlistredir,
.allpagesredirect {
font-style: italic;
}
.allpagesredirect:after {
color: var(--byline-color);
content: " (redirect)"
}
// [[Special:ApiSandbox]]
.mw-apisandbox-toolbar {
background: var(--body-main);
}
.oo-ui-menuOptionWidget .mw-apisandbox-flag {
color: var(--byline-color);
}
// AbuseFilter and AbuseLog tables and text
tr.mw-abusefilter-list-disabled,
tr.mw-abusefilter-list-disabled td {
color: var(--byline-color);
}
table.mw-abuselog-details {
background: var(--wikitable-bg);
border-color: var(--wikitable-border);
th {
background: var(--wikitable-header-bg);
}
th,
td {
border-color: var(--wikitable-border);
}
}
.mw-abusefilter-log-hidden-entry {
color: var(--subtle-color);
}
body td.mw-abusefilter-history-changed {
background: var(--table-no-background);
}
// AbuseFilter editor - is div specific
div.mw-abusefilter-editor,
// warning/disallow message preview box
#mw-abusefilter-warn-preview,
#mw-abusefilter-disallow-preview {
border-color: var(--ooui-input-border);
}
// dupe upload warningbox
.mw-destfile-warning {
border-color: var(--warningbox-border);
color: var(--text-color);
background-color: var(--warningbox-bg);
}
/* ------------------------
SimpleBatchUpload
------------------------*/
// "Select files (or drop them here)..."
span.fileinput-button {
background-color: var(--ooui-normal);
border-color: var(--ooui-normal-border);
color: var(--ooui-text);
}
// results list
ul.fileupload-results {
li.ful-success {
background-color: var(--successbox-bg);
a {
color: var(--link-color);
}
}
li.ful-error {
background-color: var(--errorbox-bg);
}
}
decac8c7fea361ecfae1699340b21a2ea9b414c2
MediaWiki:Common.css
8
30
40
2024-03-22T02:42:12Z
Jayden
3
Updating CSS from [[MediaWiki:Common.less]]
css
text/css
/* <pre> */
:root {
--body-main: #e2dbc8;
--body-light: #d8ccb4;
--body-mid: #d0bd97;
--body-dark: #b8a282;
--body-border: #94866d;
--body-background-color: #c0a886;
--button-background: #605443;
--button-color: #fff;
--button-border: #3c352a;
--button-dark: #18140c;
--button-light: #3a301d;
--sidebar: #cfc08d;
--background-text-color: #444;
--background-link-color: #52351e;
--search-box: #efeee6;
--link-color: #936039;
--redlink-color: #ba0000;
--text-color: #000;
--byline-color: #4c4c4c;
--subtle-color: #777;
--admin-blue: #332e75;
--bearcat-green: #13592e;
--awb-purple: #933b96;
--rsw-blue: #438ab6;
--osrsw-brown: #605443;
--thumb-bg: var(--body-light);
--thumb-caption-bg: var(--body-mid);
--sourceeditor-input-background: #fff;
--sourceeditor-background: var(--body-light);
--sourceeditor-background-secondary: var(--body-light);
--sourceeditor-border: var(--body-mid);
--codemirror-gutter-background: var(--body-mid);
}
@font-face {
font-family: 'Lora';
font-weight: 400 700;
font-style: normal;
font-display: swap;
src: url('filepath://Lora.woff2') format('woff2');
}
@font-face {
font-family: 'Lora';
font-weight: 400 700;
font-style: italic;
font-display: swap;
src: url('filepath://Lora-Italic.woff2') format('woff2');
}
:root {
--base-text-color: #36414f;
--base-heading-color: #444e5a;
--base-heading-border: #e4eaee;
--mw-code-background-color: #ddd4bb;
--body-background-image: url('filepath://Wiki_background.jpg');
}
#mw-page-base {
background: none;
}
.mw-body {
background-color: var(--body-main);
color: var(--text-color);
border-color: transparent;
box-shadow: 0 0 7px rgba(0, 0, 0, 0.15);
margin-top: 0;
}
h1,
h2,
h3,
h4,
h5,
h6 {
color: var(--text-color);
}
h1,
h2 {
border-color: var(--sidebar);
}
.mw-body h1,
.mw-body-content h1,
.mw-body-content h2,
.mw-body-content h3,
.mw-body-content h4,
.mw-body-content h5,
.mw-body-content h6 {
font-family: 'Lora', 'Palatino', 'Georgia', serif;
}
.mw-parser-output h2:first-of-type {
clear: left;
}
.mw-footer {
color: var(--background-text-color);
}
.mw-footer li {
color: var(--background-text-color);
}
.mw-footer a,
.mw-footer a:active,
.mw-footer a:visited {
color: var(--background-link-color);
}
::placeholder {
color: var(--subtle-color);
}
a {
color: var(--link-color);
}
a:visited,
a:active {
color: var(--link-color);
}
a.new {
color: var(--redlink-color);
}
a.new:visited {
color: var(--redlink-color);
}
.mw-parser-output a.extiw,
.mw-parser-output a.external {
color: var(--link-color);
}
.mw-parser-output a.extiw:visited,
.mw-parser-output a.external:visited,
.mw-parser-output a.extiw:active,
.mw-parser-output a.external:active {
color: var(--link-color);
}
.jsPurgeLink a.external {
color: var(--link-color);
}
:root {
--errorbox-bg: #feecea;
--errorbox-border: #ee4231;
--warningbox-bg: #fef9de;
--warningbox-border: #f9d000;
--successbox-bg: #ecf8e3;
--successbox-border: #6bc71f;
}
.mw-message-box-error,
.errorbox,
.mw-message-box-warning,
.warningbox,
.mw-message-box-success,
.successbox,
.usermessage {
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
}
.mw-message-box-error,
.errorbox {
background-color: var(--errorbox-bg);
border-color: var(--errorbox-border);
}
.mw-message-box-warning,
.warningbox,
.usermessage {
background-color: var(--warningbox-bg);
border-color: var(--warningbox-border);
}
.mw-message-box-success,
.successbox {
background-color: var(--successbox-bg);
border-color: var(--successbox-border);
}
.catlinks {
background: var(--body-light);
border: 1px solid var(--body-dark);
padding: 8px 15px;
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
}
.catlinks li {
border-color: var(--body-mid);
}
.filehistory a img,
#file img {
background: url("data:image/svg+xml,%3C%3Fxml version='1.0' encoding='UTF-8'%3F%3E%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16'%3E%3Cpath d='M0 0h8v16h8V8H0z' opacity='.13'/%3E%3C/svg%3E") repeat;
}
#file img:hover {
background: none;
}
.mw-highlight {
background: none;
}
.mw-highlight .linenos {
background-color: var(--mw-code-background-color);
color: var(--byline-color);
}
.mw-highlight a:hover .linenos,
.mw-highlight .hll a .linenos {
color: var(--text-color);
}
.mw-content-ltr.mw-highlight-lines pre,
.mw-content-ltr.content .mw-highlight-lines pre {
box-shadow: inset 2.75em 0 0 var(--mw-code-background-color);
}
#pagehistory ul {
list-style: none;
margin: 0;
}
#pagehistory li {
border: 1px solid transparent;
padding: 1px 10px;
margin: 2px 0;
}
#pagehistory li.selected {
background-color: var(--body-light);
color: inherit;
border: 1px dashed var(--body-border);
outline: none;
}
#mw-history-compare > div:first-of-type {
position: -webkit-sticky;
position: sticky;
top: 0;
background-color: var(--body-main);
border-bottom: 1px solid var(--body-dark);
padding: 0.25em 0;
}
.wgl-stickyheader #mw-history-compare > div:first-of-type {
top: 2.5rem;
}
.autocomment,
.autocomment a,
.autocomment a:visited {
color: var(--link-color);
}
li span.deleted,
span.history-deleted {
color: var(--byline-color);
}
.mw-usertoollinks-contribs-no-edits,
.mw-usertoollinks-contribs-no-edits:visited {
color: var(--redlink-color);
}
.CategoryTreeToggle {
color: var(--link-color);
}
body.wgl-stickyheader.action-view .mw-headline:target::before {
display: block;
content: '';
margin-top: -3rem;
height: 3rem;
visibility: hidden;
pointer-events: none;
}
.mw-mmv-post-image {
color: var(--text-color);
background-color: var(--body-main);
}
.mw-mmv-image-metadata {
border-top-color: var(--body-mid);
background-color: var(--body-light);
}
.mw-mmv-dialog,
.mw-mmv-dialog .mw-mmv-dialog-down-arrow,
.mw-mmv-options-dialog .mw-mmv-dialog-down-arrow {
background-color: var(--body-light);
box-shadow: none;
}
.mw-mmv-options-enable-alert {
background-color: var(--body-light);
color: var(--text-color);
}
.mw-mmv-options-dialog-header,
.mw-mmv-options-text-header,
.mw-mmv-options-text-body,
.mw-mmv-options-enable-alert,
.mw-mmv-options-dialog .mw-mmv-disable-confirmation .mw-mmv-options-dialog-header,
.mw-mmv-options-dialog .mw-mmv-disable-confirmation .mw-mmv-options-text-header {
color: var(--text-color);
}
.mw-revslider-container {
border-color: var(--sidebar);
}
.mw-revslider-slider-wrapper {
border-top-color: var(--sidebar);
}
.mw-ui-button {
background-color: var(--ooui-normal);
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
}
.mw-ui-button:not(:disabled):hover,
.mw-ui-button:not(:disabled):active {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
}
.mw-ui-button:not(:disabled):focus {
color: var(--ooui-text);
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent), inset 0 0 0 2px #fff;
}
.mw-ui-button:not(:disabled):visited {
color: var(--ooui-text);
}
.mw-ui-button.mw-ui-progressive:not(:disabled) {
background-color: var(--ooui-progressive);
color: #fff;
border-color: var(--ooui-progressive);
}
.mw-ui-button.mw-ui-progressive:not(:disabled):hover {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
}
.mw-ui-button.mw-ui-progressive:not(:disabled):focus {
box-shadow: inset 0 0 0 1px var(--ooui-accent), inset 0 0 0 2px #fff;
}
.mw-ui-button.mw-ui-progressive:not(:disabled):active,
.mw-ui-button.mw-ui-progressive:not(:disabled).is-on {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
box-shadow: none;
}
.mw-ui-button.mw-ui-destructive:not( :disabled ) {
color: #fff;
}
.mw-ui-button.mw-ui-quiet,
.mw-ui-button.mw-ui-quiet.mw-ui-progressive,
.mw-ui-button.mw-ui-quiet.mw-ui-destructive {
color: var(--text-color);
}
input[type='checkbox']:hover + .mw-ui-button.mw-ui-quiet,
input[type='checkbox']:hover + .mw-ui-button.mw-ui-quiet.mw-ui-progressive,
input[type='checkbox']:hover + .mw-ui-button.mw-ui-quiet.mw-ui-destructive,
.mw-ui-button.mw-ui-quiet:hover,
.mw-ui-button.mw-ui-quiet.mw-ui-progressive:hover,
.mw-ui-button.mw-ui-quiet.mw-ui-destructive:hover {
background-color: rgba(0, 24, 73, 0.02745098);
color: var(--text-color);
border-color: transparent;
}
input[type='checkbox']:focus + .mw-ui-button.mw-ui-quiet,
input[type='checkbox']:focus + .mw-ui-button.mw-ui-quiet.mw-ui-progressive,
input[type='checkbox']:focus + .mw-ui-button.mw-ui-quiet.mw-ui-destructive,
.mw-ui-button.mw-ui-quiet:focus,
.mw-ui-button.mw-ui-quiet.mw-ui-progressive:focus,
.mw-ui-button.mw-ui-quiet.mw-ui-destructive:focus {
color: var(--text-color);
}
input[type='checkbox']:active + .mw-ui-button.mw-ui-quiet,
input[type='checkbox']:active + .mw-ui-button.mw-ui-quiet.mw-ui-progressive,
input[type='checkbox']:active + .mw-ui-button.mw-ui-quiet.mw-ui-destructive,
.mw-ui-button.mw-ui-quiet:active,
.mw-ui-button.mw-ui-quiet.mw-ui-progressive:active,
.mw-ui-button.mw-ui-quiet.mw-ui-destructive:active {
background-color: rgba(0, 36, 73, 0.08235294);
color: var(--text-color);
border-color: #72777d;
}
.mw-ui-input {
background-color: var(--ooui-input);
color: var(--text-color);
border-color: var(--ooui-input-border);
}
.mw-ui-input:hover {
border-color: var(--ooui-input-border--hover);
}
.mw-ui-input::placeholder {
color: var(--byline-color);
}
.mw-content-ltr .redirectText li:first-child {
padding: 0;
background: 0;
}
.mw-content-ltr .redirectText li:first-child::before {
content: '';
background: currentcolor;
-webkit-mask: url("filepath://Redirect-arrow.svg") no-repeat 50% 50% / contain;
mask: url("filepath://Redirect-arrow.svg") no-repeat 50% 50% / contain;
display: inline-block;
width: 47px;
height: 20px;
}
:root {
--wikitable-header-bg: var(--body-dark);
--wikitable-border: var(--body-border);
--wikitable-bg: var(--body-light);
--wikitable-bg-lighter: #e9e3d6;
--wikitable-color: var(--text-color);
--table-na-background: rgba(255, 255, 255, 0.3);
--table-na-color: var(--subtle-color);
--table-yes-background: #c3e8a3;
--table-yes-color: #2e5e05;
--table-no-background: #fbc0ba;
--table-no-color: #801c13;
--table-maybe-background: #fcea94;
--table-maybe-color: #786300;
}
.wikitable {
background: var(--wikitable-bg);
color: var(--wikitable-color);
border-color: var(--wikitable-border);
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
}
.wikitable > tr > th,
.wikitable > tr > td,
.wikitable > * > tr > th,
.wikitable > * > tr > td {
border-color: var(--wikitable-border);
}
.wikitable > tr > th.table-noborder,
.wikitable > tr > td.table-noborder,
.wikitable > * > tr > th.table-noborder,
.wikitable > * > tr > td.table-noborder {
border-left-style: hidden;
border-right-style: hidden;
padding-left: 0;
padding-right: 0;
}
.wikitable > tr > th,
.wikitable > * > tr > th {
background-color: var(--wikitable-header-bg);
}
.tabber .wikitable {
box-shadow: none;
}
.mw_metadata td,
.mw_metadata th {
border-color: var(--wikitable-border);
}
.mw_metadata th {
background-color: var(--wikitable-header-bg);
}
.mw_metadata td {
background-color: var(--wikitable-bg);
}
.mw-datatable {
border-color: var(--wikitable-border);
}
.mw-datatable td,
.mw-datatable th {
border-color: var(--wikitable-border);
}
.mw-datatable th {
background-color: var(--wikitable-header-bg);
}
.mw-datatable td {
background-color: var(--wikitable-bg);
}
.mw-datatable tr:hover td {
background-color: var(--wikitable-bg);
}
table.alternating-rows tr:nth-child(odd),
table.alternating-cols td:nth-child(odd) {
background: var(--wikitable-alternating-bg);
}
.table-na {
background: var(--table-na-background);
color: var(--table-na-color);
vertical-align: middle;
text-align: center;
}
.table-yes {
background: var(--table-yes-background);
color: var(--table-yes-color);
}
.table-positive {
background: var(--table-yes-background);
}
.table-no {
background: var(--table-no-background);
color: var(--table-no-color);
}
.table-negative {
background: var(--table-no-background);
}
.table-maybe {
background: var(--table-maybe-background);
color: var(--table-maybe-color);
}
#mw-allmessagestable .am_actual,
#mw-allmessagestable .am_default {
background-color: var(--wikitable-bg);
}
#mw-allmessagestable .am_default:hover,
#mw-allmessagestable .am_actual:hover,
#mw-allmessagestable tbody:hover td {
background-color: var(--wikitable-bg-lighter);
}
table.wikitable td.no-cell-spacing {
padding: 0;
height: 0;
}
table.wikitable td.no-cell-spacing table {
margin: -1px;
width: calc(100% + 2px);
height: calc(100% + 2px);
}
.plainlist ol,
.plainlist ul {
margin: 0;
}
.plainlist li {
margin-bottom: 0;
list-style: none;
}
table.align-right-1 td:nth-of-type(1),
table.align-right-2 td:nth-of-type(2),
table.align-right-3 td:nth-of-type(3),
table.align-right-4 td:nth-of-type(4),
table.align-right-5 td:nth-of-type(5),
table.align-right-6 td:nth-of-type(6),
table.align-right-7 td:nth-of-type(7),
table.align-right-8 td:nth-of-type(8),
table.align-right-9 td:nth-of-type(9),
table.align-right-10 td:nth-of-type(10),
table.align-right-11 td:nth-of-type(11),
table.align-right-12 td:nth-of-type(12),
table.align-right-13 td:nth-of-type(13),
table.align-right-14 td:nth-of-type(14),
table.align-right-15 td:nth-of-type(15),
table.align-right-16 td:nth-of-type(16),
table.align-right-17 td:nth-of-type(17),
table.align-right-18 td:nth-of-type(18),
table.align-right-19 td:nth-of-type(19),
table.align-right-20 td:nth-of-type(20) {
text-align: right;
}
table.align-center-1 td:nth-of-type(1),
table.align-center-2 td:nth-of-type(2),
table.align-center-3 td:nth-of-type(3),
table.align-center-4 td:nth-of-type(4),
table.align-center-5 td:nth-of-type(5),
table.align-center-6 td:nth-of-type(6),
table.align-center-7 td:nth-of-type(7),
table.align-center-8 td:nth-of-type(8),
table.align-center-9 td:nth-of-type(9),
table.align-center-10 td:nth-of-type(10),
table.align-center-11 td:nth-of-type(11),
table.align-center-12 td:nth-of-type(12),
table.align-center-13 td:nth-of-type(13),
table.align-center-14 td:nth-of-type(14),
table.align-center-15 td:nth-of-type(15),
table.align-center-16 td:nth-of-type(16),
table.align-center-17 td:nth-of-type(17),
table.align-center-18 td:nth-of-type(18),
table.align-center-19 td:nth-of-type(19),
table.align-center-20 td:nth-of-type(20) {
text-align: center;
}
table.align-left-1 td:nth-of-type(1),
table.align-left-2 td:nth-of-type(2),
table.align-left-3 td:nth-of-type(3),
table.align-left-4 td:nth-of-type(4),
table.align-left-5 td:nth-of-type(5),
table.align-left-6 td:nth-of-type(6),
table.align-left-7 td:nth-of-type(7),
table.align-left-8 td:nth-of-type(8),
table.align-left-9 td:nth-of-type(9),
table.align-left-10 td:nth-of-type(10),
table.align-left-11 td:nth-of-type(11),
table.align-left-12 td:nth-of-type(12),
table.align-left-13 td:nth-of-type(13),
table.align-left-14 td:nth-of-type(14),
table.align-left-15 td:nth-of-type(15),
table.align-left-16 td:nth-of-type(16),
table.align-left-17 td:nth-of-type(17),
table.align-left-18 td:nth-of-type(18),
table.align-left-19 td:nth-of-type(19),
table.align-left-20 td:nth-of-type(20) {
text-align: left;
}
:root {
--diff-addedline-border-color: #438ab5;
--diff-addedline-background: #bddff2;
--diff-addedline-color: #000;
--diff-deletedline-border-color: #379541;
--diff-deletedline-background: #c1edbf;
--diff-deletedline-color: #000;
--diff-context-border-color: var(--body-mid);
--diff-context-background: var(--body-mid);
}
.diff-context {
border-color: var(--diff-context-border-color);
background: var(--diff-context-background);
color: inherit;
}
.diff-addedline {
border-color: var(--diff-addedline-border-color);
}
.diff-addedline .diffchange {
background: var(--diff-addedline-background);
color: var(--diff-addedline-color);
}
.diff-deletedline {
border-color: var(--diff-deletedline-border-color);
}
.diff-deletedline .diffchange {
background: var(--diff-deletedline-background);
color: var(--diff-deletedline-color);
}
.mw-diff-movedpara-left:after,
.mw-diff-movedpara-right:after {
color: var(--text-color);
}
.mw-notification {
background-color: var(--body-light);
border-color: var(--body-border);
color: var(--text-color);
}
.mw-echo-ui-notificationsInboxWidget-toolbarWrapper {
background: var(--body-main);
}
.mw-body-content .mw-echo-ui-datedSubGroupListWidget-title-secondary {
color: var(--byline-color);
}
.mw-echo-ui-pageNotificationsOptionWidget.oo-ui-optionWidget-selected {
background-color: var(--ooui-normal);
color: var(--ooui-accent);
}
.mw-echo-ui-pageNotificationsOptionWidget-label-count {
background-color: var(--ooui-normal);
color: var(--byline-color);
}
.oo-ui-optionWidget-selected .mw-echo-ui-pageNotificationsOptionWidget-label-count {
color: var(--ooui-accent);
}
.mw-echo-ui-pageNotificationsOptionWidget.oo-ui-optionWidget-highlighted {
background-color: var(--ooui-normal);
color: var(--text-color);
}
.mw-echo-ui-crossWikiUnreadFilterWidget {
border-color: var(--body-border);
}
.mw-echo-ui-crossWikiUnreadFilterWidget-subtitle {
color: var(--byline-color);
}
.mw-echo-ui-notificationBadgeButtonPopupWidget-popup > .oo-ui-popupWidget-popup > .oo-ui-popupWidget-head,
.mw-echo-ui-notificationBadgeButtonPopupWidget-popup > .oo-ui-popupWidget-popup > .oo-ui-popupWidget-footer {
border-color: var(--ooui-interface-border);
}
.mw-echo-ui-notificationBadgeButtonPopupWidget-popup > .oo-ui-popupWidget-popup > .oo-ui-popupWidget-footer .mw-echo-ui-notificationBadgeButtonPopupWidget-footer-buttons .oo-ui-buttonElement:last-child {
border-left-color: var(--ooui-normal-border);
}
.mw-echo-ui-notificationItemWidget {
background-color: var(--ooui-normal);
border-color: var(--ooui-normal-border);
}
.mw-echo-ui-notificationItemWidget:hover,
.mw-echo-ui-notificationItemWidget-unread:hover {
background-color: var(--ooui-normal--hover);
}
.mw-echo-ui-notificationItemWidget:last-child {
border-bottom-color: var(--ooui-normal-border);
}
.mw-echo-ui-notificationItemWidget-unread {
background-color: var(--search-box);
}
.mw-echo-ui-crossWikiNotificationItemWidget-group,
.mw-echo-ui-bundleNotificationItemWidget-group {
background-color: var(--ooui-interface);
}
.mw-echo-ui-toggleReadCircleButtonWidget-circle {
background-color: var(--ooui-progressive);
}
.mw-echo-ui-toggleReadCircleButtonWidget:hover .mw-echo-ui-toggleReadCircleButtonWidget-circle {
background-color: var(--ooui-progressive--hover);
}
.mw-echo-ui-toggleReadCircleButtonWidget-circle-unread {
background-color: var(--ooui-normal);
border-color: var(--ooui-normal-border);
}
.mw-echo-ui-notificationItemWidget-content-message-header,
.mw-echo-ui-notificationItemWidget-content-message-body,
.mw-echo-ui-menuItemWidget > .oo-ui-buttonElement-button > .oo-ui-labelElement-label,
.mw-echo-ui-notificationItemWidget-content-actions-timestamp {
color: var(--ooui-text);
}
.mw-echo-ui-bundleNotificationItemWidget-group {
background-color: var(--body-main);
}
@keyframes unseen-fadeout-to-unread {
from {
background-color: var(--wikitable-bg-lighter);
}
to {
background-color: var(--search-box);
}
}
@keyframes unseen-fadeout-to-read {
from {
background-color: var(--wikitable-bg-lighter);
}
to {
background-color: var(--body-main);
}
}
.mwe-popups {
background: var(--body-light);
}
.mwe-popups .mwe-popups-container {
color: var(--text-color);
background: var(--body-light);
}
.mwe-popups .mwe-popups-container.flipped-x-y:before,
.mwe-popups .mwe-popups-container.flipped-y:before {
border-top: none;
}
.mwe-popups .mwe-popups-container.mwe-popups-no-image-tri:before {
border-bottom: none;
}
.mwe-popups .mwe-popups-container.flipped-x-y:after,
.mwe-popups .mwe-popups-container.flipped-y:after {
border-top-color: var(--body-light);
}
.mwe-popups .mwe-popups-container.mwe-popups-no-image-tri:after {
border-bottom-color: var(--body-light);
}
.mwe-popups .mwe-popups-settings-icon:hover,
.mwe-popups .mwe-popups-settings-icon:active {
background-color: var(--ooui-normal--hover);
}
.mwe-popups .mw-ui-icon-element:not(.disabled):hover {
background: none;
}
.mwe-popups .mwe-popups-extract {
color: var(--text-color);
}
.mwe-popups .mwe-popups-extract[dir='ltr']:after {
background-image: linear-gradient(to right, rgba(49, 62, 89, 0), var(--body-light) 50%);
}
.mwe-popups-overlay {
background-color: var(--ooui-window-background);
}
#mwe-popups-settings {
background: var(--ooui-interface);
border-color: var(--ooui-interface-border);
color: var(--text-color);
}
#mwe-popups-settings header {
border-color: var(--ooui-interface-border);
}
#mwe-popups-settings main#mwe-popups-settings-form p {
color: var(--byline-color);
}
#mwe-popups-settings main#mwe-popups-settings-form form label > span {
color: var(--ooui-text);
}
:root {
--smw-ask-options-even-bg: var(--body-mid);
--smw-ask-options-odd-bg: var(--body-light);
--smw-ask-action-btn-lblue-bg: var(--body-main);
--smw-ask-action-btn-lblue-color: #000;
--smw-ask-action-btn-lblue-border-color: var(--body-light);
--smw-ask-action-btn-dblue-bg: var(--body-light);
--smw-ask-action-btn-dblue-color: #fff;
--smw-ask-action-btn-dblue-border-color: var(--button-border);
}
.smw-ask-condition fieldset,
.smw-ask-printhead fieldset {
border-color: var(--sidebar);
}
.smw-ask-search fieldset,
.smw-ask-format fieldset,
.smw-ask-options fieldset {
border-color: var(--sidebar);
}
.strike > span:before,
.strike > span:after {
background: var(--sidebar);
}
.smw-ask-options-fields tr td {
background-color: var(--smw-ask-options-even-bg);
}
.smw-ask-options-fields tr:nth-child(odd) td {
background-color: var(--smw-ask-options-odd-bg);
}
.smw-ask-action-btn.smw-ask-action-btn-lblue,
.smw-ask-action-btn.smw-ask-action-btn-lblue:hover,
.smw-ask-action-btn.smw-ask-action-btn-lblue:visited {
background-color: var(--smw-ask-action-btn-lblue-bg);
color: var(--smw-ask-action-btn-lblue-color);
border-color: var(--smw-ask-action-btn-lblue-border-color);
}
.smw-ask-action-btn.smw-ask-action-btn-dblue,
.smw-ask-action-btn.smw-ask-action-btn-dblue:hover,
.smw-ask-action-btn.smw-ask-action-btn-dblue:visited {
background-color: var(--smw-ask-action-btn-dblue-bg);
color: var(--smw-ask-action-btn-dblue-color);
border-color: var(--smw-ask-action-btn-dblue-border-color);
}
.smw-ask-query textarea,
.smw-ask-actions textarea {
background-color: var(--ooui-interface);
border-color: var(--ooui-interface-border);
color: var(--ooui-text);
}
.smw-ask-query-format select {
background-color: var(--ooui-interface);
border: 1px solid var(--ooui-interface-border);
color: var(--ooui-text);
}
.smw-ask-toplinks {
background-color: var(--body-mid);
}
.smw-ask-toplinks span.smw-icon-info {
background: none;
padding: 0 !important;
}
.smw-ask-toplinks span.smw-icon-info::before {
content: '';
background: var(--text-color);
-webkit-mask: url("data:image/svg+xml,%3C%3Fxml version='1.0' encoding='UTF-8'%3F%3E%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 20 20'%3E%3Ctitle%3Einfo%3C/title%3E%3Cpath d='M10 0C4.477 0 0 4.477 0 10s4.477 10 10 10 10-4.477 10-10S15.523 0 10 0zM9 5h2v2H9zm0 4h2v6H9z'/%3E%3C/svg%3E") no-repeat 50% 50% / contain;
mask: url("data:image/svg+xml,%3C%3Fxml version='1.0' encoding='UTF-8'%3F%3E%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 20 20'%3E%3Ctitle%3Einfo%3C/title%3E%3Cpath d='M10 0C4.477 0 0 4.477 0 10s4.477 10 10 10 10-4.477 10-10S15.523 0 10 0zM9 5h2v2H9zm0 4h2v6H9z'/%3E%3C/svg%3E") no-repeat 50% 50% / contain;
padding: 0 0 3px 18px;
}
.smw-ask-options-row-odd {
background-color: var(--body-light);
}
.smw-ask-options-row-even {
background-color: var(--body-mid);
}
#options-toggle:not(:checked) + #options-list .options-parameter-list:after {
background-image: linear-gradient(to bottom, transparent, var(--body-mid) 90%);
}
.smw-ask-button-submit input {
background-color: var(--ooui-normal);
border-color: var(--ooui-normal-border);
color: var(--text-color);
}
.smw-ask-button-submit input:hover,
.smw-ask-button-lgrey:hover {
background-color: var(--ooui-normal--hover);
border-color: var(--ooui-normal-border);
}
input.smw-ask-action-btn.smw-ask-action-btn-dblue {
background-color: var(--ooui-normal);
border-color: var(--ooui-normal-border);
color: var(--ooui-text);
}
a.smw-ask-action-btn.smw-ask-action-btn-lblue {
background-color: var(--body-mid);
border-color: var(--body-mid);
color: var(--ooui-text);
}
a.smw-ask-action-btn.smw-ask-action-btn-lblue:visited {
background-color: var(--body-mid);
border-color: var(--body-mid);
color: var(--ooui-text);
}
a.smw-ask-action-btn.smw-ask-action-btn-lblue:hover {
background-color: var(--body-mid);
border-color: var(--body-mid);
color: var(--ooui-text);
}
a.smw-ask-action-btn-lgrey {
background-color: var(--ooui-normal);
border-color: var(--ooui-normal-border);
color: var(--ooui-text);
}
a.smw-ask-action-btn-lgrey:hover {
background-color: var(--ooui-normal--hover);
border-color: var(--ooui-normal-border);
color: var(--ooui-text);
}
.smw-callout-error {
background-color: var(--errorbox-bg);
border-color: var(--errorbox-border);
}
.smw-callout-info {
background-color: var(--body-light);
border-color: var(--body-dark);
}
.smw-callout-success {
background-color: var(--successbox-bg);
border-color: var(--successbox-border);
}
.smw-callout-warning {
background-color: var(--warningbox-bg);
border-color: var(--warningbox-bg);
}
.smw-tabs input.nav-tab:checked + label.nav-label,
.smw-tabs input.nav-tab:checked + label.nav-label:hover {
color: inherit;
}
#tab-smw-property-value:checked + label.nav-label .usage-count {
color: #fff;
background-color: var(--ooui-progressive);
}
#tab-smw-property-value:checked + label.nav-label .usage-count.moderate {
color: #fff;
background-color: #b55e0c;
border-color: #b55e0c;
}
#tab-smw-property-value:checked + label.nav-label .usage-count.high {
color: #fff;
background-color: #9f261e;
border-color: #9f261e;
}
.smw-property-page-results .header-title {
background-color: var(--ooui-interface);
border-bottom-color: var(--ooui-interface-border);
color: var(--ooui-text);
}
.smw-property-page-results .value-row:hover {
background-color: var(--ooui-normal--hover);
}
.smw-property-page-results .smw-table .header-row {
color: var(--text-color);
}
.tippy-tooltip.light-border-theme {
background-color: var(--body-light);
color: var(--text-color);
}
.tippy-tooltip.light-border-theme .tippy-arrow {
border-top-color: var(--body-light);
}
.tippy-tooltip.light-border-theme .tippy-arrow:after {
border-top-color: var(--body-light);
}
.tippy-header {
background-color: var(--body-dark);
border-bottom-color: var(--body-mid);
}
.smw-ui-input-filter {
background-color: var(--ooui-interface);
border-color: var(--ooui-interface-border);
color: var(--ooui-text);
}
.smw-ui-input-filter input {
border-left-color: var(--ooui-interface-border) !important;
color: var(--ooui-text) !important;
}
.smw-ui-pagination .page-link.link-disabled {
background-color: var(--ooui-disabled);
border-color: var(--ooui-disabled-border);
color: var(--subtle-color);
}
.smw-ui-pagination .page-link {
background-color: var(--ooui-normal);
border-color: var(--ooui-normal-border);
color: var(--link-color);
}
.smw-ui-pagination .page-link:hover {
background-color: var(--ooui-normal--hover);
border-color: var(--ooui-normal-border);
color: var(--link-color);
}
.smw-ui-pagination .page-link.link-active {
color: #fff;
background-color: var(--ooui-progressive);
border-color: var(--ooui-progressive);
}
.smw-tabs input.nav-tab:checked + label.nav-label {
border-color: var(--ooui-normal-border);
}
.smw-tabs section,
.smw-tabs .subtab-content {
border-top-color: var(--ooui-normal-border);
}
.smw-column-header {
color: var(--text-color);
}
.smw-factbox {
background: var(--body-main);
border-color: transparent;
}
.mw-body .mw-indicators #mw-indicator-smw-entity-examiner.mw-indicator .smw-indicator-vertical-bar-loader {
display: none;
}
.smwb-theme-light .smwb-title,
.smwb-theme-light .smwb-center,
.smwb-theme-light .smwb-actions,
.smwb-theme-light .smwb-prophead {
background-color: var(--body-mid);
}
.smwb-theme-light .smwb-factbox {
border-left-color: var(--body-mid);
}
.smwb-theme-light .smwb-ifactbox {
border-right-color: var(--body-mid);
}
.smwb-theme-light .smwb-propval {
background-color: var(--body-light);
}
.smwb-action-separator {
border-color: var(--wikitable-border);
}
.smwb-bottom {
border-bottom: 1px solid var(--wikitable-border);
}
.smwb-ifactbox .smwb-cell,
.smwb-factbox .smwb-cell {
border-top: 1px solid var(--wikitable-border);
}
.smwb-propvalue .smwb-prophead,
.smwb-ipropvalue .smwb-prophead,
.smwb-propvalue .smwb-propval,
.smwb-ipropvalue .smwb-propval {
font-size: 0.9em;
}
:root {
--filter-black-to-link: invert(36%) sepia(58%) saturate(433%) hue-rotate(344deg) brightness(100%) contrast(91%);
}
#bodyContent span.smwbrowse a {
color: black;
background-image: url('filepath://Smwbrowse.svg');
filter: var(--filter-black-to-link);
}
#bodyContent span.smwbrowse a:hover {
color: black;
background-image: url('filepath://Smwbrowse-hover.svg');
text-decoration: underline;
}
#bodyContent span.smwsearch a {
color: black;
filter: var(--filter-black-to-link);
background-image: url('filepath://Smwsearch.svg');
}
#bodyContent span.smwsearch a:hover {
color: black;
background-image: url('filepath://Smwsearch-hover.svg');
text-decoration: underline;
}
:root {
--tabber-tab-bg: var(--body-light);
--tabber-tab-border-color: var(--body-border);
--tabber-active-tab-bg: var(--body-light);
--tabber-active-tab-color: var(--text-color);
--tabber-active-tab-hover-bg: var(--body-light);
--tabber-active-tab-hover-border-color: var(--body-border);
--tabber-active-tab-hover-color: var(--text-color);
--tabber-active-tab-border-hider-color: var(--body-light);
--tabber-inactive-tab-bg: var(--body-background-color);
--tabber-inactive-tab-border-color: var(--body-border);
--tabber-inactive-tab-color: var(--text-color);
--tabber-inactive-tab-hover-bg: var(--body-light);
--tabber-inactive-tab-hover-border-color: var(--body-border);
}
.tabber {
margin: 1em 0;
}
.tabber .tabbertab {
background-color: var(--tabber-tab-bg);
border: 1px solid var(--tabber-tab-border-color);
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
padding: 1em 1.5em;
}
ul.tabbernav {
border: none;
margin-left: 2em;
margin-bottom: 0;
margin-right: 2em;
padding: 0;
font-family: inherit;
}
ul.tabbernav li.tabberactive > a {
background-color: var(--tabber-active-tab-bg);
color: var(--tabber-active-tab-color);
border-bottom: none;
position: relative;
}
ul.tabbernav li.tabberactive > a:hover {
color: var(--tabber-active-tab-hover-color);
background-color: var(--tabber-active-tab-hover-bg);
border-color: var(--tabber-active-tab-hover-border-color);
border-bottom: none;
}
ul.tabbernav li.tabberactive > a::after {
content: '';
position: absolute;
left: 0;
right: 0;
bottom: -1px;
border-bottom: 2px solid var(--tabber-active-tab-border-hider-color);
}
ul.tabbernav li a {
background-color: var(--tabber-inactive-tab-bg);
border-bottom: transparent;
border-color: var(--tabber-inactive-tab-border-color);
color: var(--tabber-inactive-tab-color);
display: inline-block;
font-size: 110%;
padding: 0.5em 1em;
}
ul.tabbernav li a:hover {
background-color: var(--tabber-inactive-tab-hover-bg);
border-color: var(--tabber-inactive-tab-hover-border-color);
}
ul.tabbernav li a:link,
ul.tabbernav li a:visited {
color: var(--tabber-inactive-tab-color);
}
:root {
--ooui-text: var(--text-color);
--ooui-interface: var(--body-light);
--ooui-interface-border: var(--body-border);
--ooui-window-background: rgba(255, 255, 255, 0.5);
--ooui-normal: #d5c7ad;
--ooui-normal--hover: #dfd5c1;
--ooui-normal-border: #b8a282;
--ooui-progressive: #605443;
--ooui-progressive--hover: #7e6e58;
--ooui-accent: var(--link-color);
--ooui-input: #fff;
--ooui-input-border: #b8a282;
--ooui-input-border--hover: #8a724f;
--ooui-disabled: #d1cdc5;
--ooui-disabled-border: #c2b9ab;
--ooui-disabled-text: var(--subtle-color);
--ooui-pending-background-image: repeating-linear-gradient(-45deg, var(--search-box), var(--search-box) 20px, var(--body-main) 20px, var(--body-main) 30px);
}
.oo-ui-widget {
color: var(--ooui-text);
}
.oo-ui-checkboxInputWidget [type='checkbox'] + span,
.oo-ui-radioInputWidget [type='radio'] + span {
background-color: var(--ooui-input);
border-color: var(--ooui-input-border);
}
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:checked + span,
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:indeterminate + span {
background-color: var(--ooui-progressive);
border-color: var(--ooui-progressive);
}
.oo-ui-radioInputWidget.oo-ui-widget-enabled [type='radio']:checked + span {
border-color: var(--ooui-progressive);
}
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:checked:hover + span,
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:indeterminate:hover + span {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
}
.oo-ui-radioInputWidget.oo-ui-widget-enabled [type='radio']:checked:hover + span {
border-color: var(--ooui-progressive--hover);
}
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:hover + span,
.oo-ui-radioInputWidget.oo-ui-widget-enabled [type='radio']:hover + span {
border-color: var(--ooui-accent);
}
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:focus + span {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:active + span,
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:checked:active + span,
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:indeterminate:active + span {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
box-shadow: inset 0 0 0 1px var(--ooui-progressive--hover);
}
.oo-ui-radioInputWidget.oo-ui-widget-enabled [type='radio']:active + span {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
}
.oo-ui-radioInputWidget.oo-ui-widget-enabled [type='radio']:checked:active + span {
border-color: var(--ooui-progressive--hover);
box-shadow: inset 0 0 0 1px var(--ooui-progressive--hover);
}
.oo-ui-radioInputWidget.oo-ui-widget-enabled [type='radio']:checked:active + span:before {
border-color: var(--ooui-progressive--hover);
}
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:checked:focus + span,
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:indeterminate:focus + span {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent), inset 0 0 0 2px #fff;
}
.oo-ui-checkboxInputWidget [type='checkbox']:disabled + span,
.oo-ui-radioInputWidget [type='radio']:disabled + span {
background-color: var(--ooui-disabled);
border-color: var(--ooui-disabled);
}
.oo-ui-dropdownWidget-handle {
border-color: var(--ooui-normal-border);
}
.oo-ui-dropdownWidget.oo-ui-widget-enabled .oo-ui-dropdownWidget-handle {
background-color: var(--ooui-normal);
color: var(--ooui-text);
}
.oo-ui-dropdownWidget.oo-ui-widget-enabled .oo-ui-dropdownWidget-handle:hover {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
}
.oo-ui-dropdownWidget.oo-ui-widget-enabled .oo-ui-dropdownWidget-handle:active {
color: var(--ooui-text);
}
.oo-ui-dropdownWidget.oo-ui-widget-enabled .oo-ui-dropdownWidget-handle:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-dropdownWidget.oo-ui-widget-enabled.oo-ui-dropdownWidget-open .oo-ui-dropdownWidget-handle {
background-color: var(--ooui-normal--hover);
}
.oo-ui-dropdownWidget.oo-ui-widget-disabled .oo-ui-dropdownWidget-handle {
color: var(--ooui-disabled-text);
text-shadow: none;
border-color: var(--ooui-disabled-border);
background-color: var(--ooui-disabled);
}
.oo-ui-dropdownInputWidget select {
border-color: var(--ooui-normal-border);
}
.oo-ui-dropdownInputWidget option {
background-color: var(--ooui-interface);
}
.oo-ui-dropdownInputWidget.oo-ui-widget-enabled {
background-color: var(--ooui-normal);
}
.oo-ui-dropdownInputWidget.oo-ui-widget-enabled:hover {
background-color: var(--ooui-normal--hover);
}
.oo-ui-dropdownInputWidget.oo-ui-widget-enabled select {
color: var(--ooui-text);
}
.oo-ui-dropdownInputWidget.oo-ui-widget-enabled select:hover,
.oo-ui-dropdownInputWidget.oo-ui-widget-enabled select:active {
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
}
.oo-ui-dropdownInputWidget.oo-ui-widget-enabled select:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-labelWidget.oo-ui-inline-help {
color: var(--byline-color);
}
.oo-ui-menuSelectWidget {
background-color: var(--ooui-interface);
border-color: var(--ooui-interface-border);
}
.oo-ui-menuSelectWidget-frameless {
box-shadow: inset 0 -1px 0 0 var(--ooui-normal-border);
}
.oo-ui-menuSectionOptionWidget {
color: var(--byline-color);
}
.oo-ui-menuOptionWidget.oo-ui-optionWidget-highlighted,
.oo-ui-menuOptionWidget.oo-ui-optionWidget-selected {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
}
.oo-ui-menuOptionWidget.oo-ui-optionWidget-selected.oo-ui-menuOptionWidget.oo-ui-optionWidget-highlighted,
.oo-ui-menuOptionWidget.oo-ui-optionWidget-pressed.oo-ui-menuOptionWidget.oo-ui-optionWidget-highlighted {
color: var(--ooui-accent);
}
.oo-ui-menuOptionWidget.oo-ui-widget-enabled.oo-ui-optionWidget {
color: var(--ooui-text);
}
.oo-ui-messageDialog-title {
color: inherit;
}
.oo-ui-messageWidget.oo-ui-messageWidget-block.oo-ui-flaggedElement-error {
background-color: var(--errorbox-bg);
border-color: var(--errorbox-border);
}
.oo-ui-messageWidget.oo-ui-messageWidget-block.oo-ui-flaggedElement-warning {
background-color: var(--warningbox-bg);
border-color: var(--warningbox-border);
}
.oo-ui-messageWidget.oo-ui-messageWidget-block.oo-ui-flaggedElement-success {
background-color: var(--successbox-bg);
border-color: var(--successbox-border);
}
.oo-ui-messageWidget.oo-ui-messageWidget-block.oo-ui-flaggedElement-notice {
background-color: var(--messagebox-info-background);
border-color: var(--messagebox-info-border);
}
.oo-ui-messageWidget.oo-ui-flaggedElement-error:not(.oo-ui-messageWidget-block),
.oo-ui-messageWidget.oo-ui-flaggedElement-success:not(.oo-ui-messageWidget-block) {
color: var(--ooui-text);
}
.oo-ui-optionWidget.oo-ui-widget-disabled {
color: var(--ooui-disabled-text);
}
.oo-ui-outlineControlsWidget {
background-color: var(--ooui-normal);
}
.oo-ui-outlineOptionWidget.oo-ui-optionWidget-highlighted {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
}
.oo-ui-popupWidget-popup {
background-color: var(--ooui-interface);
border-color: var(--ooui-interface-border);
}
.oo-ui-popupWidget-anchored-top .oo-ui-popupWidget-anchor:after {
border-bottom-color: var(--ooui-interface);
}
.oo-ui-popupWidget-anchored-top .oo-ui-popupWidget-anchor:before {
border-bottom-color: var(--ooui-interface-border);
}
.oo-ui-popupWidget-anchored-bottom .oo-ui-popupWidget-anchor:after {
border-top-color: var(--ooui-interface);
}
.oo-ui-popupWidget-anchored-bottom .oo-ui-popupWidget-anchor:before {
border-top-color: var(--ooui-interface-border);
}
.oo-ui-popupWidget-anchored-start .oo-ui-popupWidget-anchor:after {
border-right-color: var(--ooui-interface);
}
.oo-ui-popupWidget-anchored-start .oo-ui-popupWidget-anchor:before {
border-right-color: var(--ooui-interface-border);
}
.oo-ui-popupWidget-anchored-end .oo-ui-popupWidget-anchor:after {
border-left-color: var(--ooui-interface);
}
.oo-ui-popupWidget-anchored-end .oo-ui-popupWidget-anchor:before {
border-left-color: var(--ooui-interface-border);
}
.oo-ui-searchWidget-query {
border-bottom-color: var(--ooui-interface-border);
}
.oo-ui-selectFileWidget-dropTarget {
background-color: var(--ooui-interface);
border-color: var(--ooui-interface-border);
}
.oo-ui-selectFileWidget.oo-ui-widget-enabled.oo-ui-selectFileWidget-dropTarget {
background-color: var(--ooui-interface);
}
.oo-ui-selectFileWidget.oo-ui-widget-enabled.oo-ui-selectFileWidget-dropTarget:hover {
border-color: var(--ooui-input-border--hover);
}
.oo-ui-tabOptionWidget {
color: var(--ooui-text);
}
.oo-ui-tabSelectWidget-framed .oo-ui-tabOptionWidget.oo-ui-optionWidget-selected {
background-color: var(--body-dark);
color: var(--ooui-text);
}
.oo-ui-tabSelectWidget-framed .oo-ui-tabOptionWidget.oo-ui-optionWidget-selected .oo-ui-labelElement-label {
border-bottom-color: var(--body-border);
}
.oo-ui-tabSelectWidget-framed .oo-ui-tabOptionWidget.oo-ui-widget-enabled:hover,
.oo-ui-tabSelectWidget-framed .oo-ui-tabOptionWidget.oo-ui-widget-enabled:active {
background-color: var(--body-light);
color: var(--ooui-text);
}
.oo-ui-tabSelectWidget-framed .oo-ui-tabOptionWidget.oo-ui-widget-enabled.oo-ui-optionWidget-selected:hover {
background-color: var(--body-dark);
}
.oo-ui-tabSelectWidget-frameless .oo-ui-tabOptionWidget.oo-ui-optionWidget-selected {
color: var(--ooui-progressive);
box-shadow: inset 0 -2px 0 0 var(--ooui-progressive);
}
.oo-ui-tabSelectWidget-frameless .oo-ui-tabOptionWidget.oo-ui-optionWidget-selected:hover,
.oo-ui-tabSelectWidget-frameless .oo-ui-tabOptionWidget.oo-ui-optionWidget-selected:focus {
color: var(--ooui-progressive--hover);
box-shadow: inset 0 -2px 0 0 var(--ooui-progressive--hover);
}
.oo-ui-tabSelectWidget-framed {
background: none;
border-bottom: 1px solid var(--ooui-interface-border);
}
.oo-ui-tabSelectWidget-frameless {
box-shadow: inset 0 -1px 0 0 var(--ooui-interface-border);
}
.oo-ui-tabSelectWidget-mobile {
}
.oo-ui-tabSelectWidget-mobile.oo-ui-tabSelectWidget-framed:after {
background: var(--mobile-navbox-linear-gradient);
}
.oo-ui-tabSelectWidget-mobile.oo-ui-tabSelectWidget-frameless:after {
background: var(--mobile-navbox-linear-gradient);
}
.oo-ui-tagItemWidget {
border-color: var(--ooui-normal-border);
}
.oo-ui-tagItemWidget.oo-ui-widget-enabled {
color: var(--ooui-text);
}
.oo-ui-tagItemWidget.oo-ui-widget-enabled:hover {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
}
.oo-ui-tagItemWidget.oo-ui-widget-enabled:not( .oo-ui-tagItemWidget-fixed ) {
background-color: var(--ooui-normal);
}
.oo-ui-tagItemWidget.oo-ui-widget-enabled .oo-ui-buttonElement-button:hover {
background-color: var(--ooui-normal--hover);
}
.oo-ui-tagMultiselectWidget.oo-ui-widget-enabled {
background-color: var(--ooui-interface);
}
.oo-ui-tagMultiselectWidget.oo-ui-widget-enabled.oo-ui-tagMultiselectWidget-outlined {
background-color: var(--ooui-normal);
}
.oo-ui-tagMultiselectWidget.oo-ui-widget-enabled.oo-ui-tagMultiselectWidget-outlined .oo-ui-tagItemWidget.oo-ui-widget-enabled {
background-color: var(--ooui-interface);
}
.oo-ui-textInputWidget .oo-ui-inputWidget-input {
background-color: var(--ooui-input);
color: var(--ooui-text);
border-color: var(--ooui-input-border);
}
.oo-ui-textInputWidget.oo-ui-widget-enabled .oo-ui-inputWidget-input::placeholder {
color: var(--subtle-color);
}
.oo-ui-textInputWidget.oo-ui-widget-enabled .oo-ui-inputWidget-input:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-textInputWidget.oo-ui-widget-enabled .oo-ui-inputWidget-input[readonly]:not(.oo-ui-pendingElement-pending) {
background-color: var(--ooui-disabled);
color: var(--ooui-disabled-text);
}
.oo-ui-textInputWidget.oo-ui-widget-enabled:hover .oo-ui-inputWidget-input {
border-color: var(--ooui-input-border--hover);
}
.oo-ui-textInputWidget.oo-ui-widget-enabled:hover .oo-ui-inputWidget-input:focus {
border-color: var(--ooui-accent);
}
@media screen and (min-width: 0) {
.oo-ui-textInputWidget.oo-ui-widget-enabled textarea.oo-ui-inputWidget-input:focus {
outline: 1px solid var(--ooui-accent);
}
}
.oo-ui-textInputWidget.oo-ui-widget-disabled .oo-ui-inputWidget-input {
background-color: var(--ooui-disabled);
color: var(--ooui-disabled-text);
text-shadow: none;
border-color: var(--ooui-disabled-border);
}
.oo-ui-toggleSwitchWidget {
background-color: var(--ooui-input);
border-color: var(--ooui-input-border);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled .oo-ui-toggleSwitchWidget-grip {
background-color: var(--ooui-input);
border-color: var(--ooui-input-border);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:hover {
background-color: var(--ooui-input);
border-color: var(--ooui-accent);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:hover .oo-ui-toggleSwitchWidget-grip {
background-color: var(--ooui-input);
border-color: var(--ooui-accent);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:active,
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:active:hover,
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:active:focus {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
box-shadow: inset 0 0 0 1px var(--ooui-progressive--hover);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:active .oo-ui-toggleSwitchWidget-grip,
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:active:hover .oo-ui-toggleSwitchWidget-grip,
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:active:focus .oo-ui-toggleSwitchWidget-grip {
background-color: var(--ooui-input);
border-color: var(--ooui-input);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:focus .oo-ui-toggleSwitchWidget-grip {
border-color: var(--ooui-accent);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled.oo-ui-toggleWidget-on {
background-color: var(--ooui-progressive);
border-color: var(--ooui-progressive);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled.oo-ui-toggleWidget-on .oo-ui-toggleSwitchWidget-grip {
background-color: var(--ooui-input);
border-color: var(--ooui-input);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled.oo-ui-toggleWidget-on:hover {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled.oo-ui-toggleWidget-on:active,
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled.oo-ui-toggleWidget-on:active:hover {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled.oo-ui-toggleWidget-on:focus {
border-color: var(--ooui-progressive);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled.oo-ui-toggleWidget-on:focus::before {
border-color: #fff;
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-disabled {
background-color: var(--ooui-disabled);
border-color: var(--ooui-disabled);
}
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled > .oo-ui-buttonElement-button {
color: var(--ooui-text);
}
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled > .oo-ui-buttonElement-button:hover {
color: var(--ooui-text);
}
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled > .oo-ui-buttonElement-button:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled.oo-ui-buttonElement-pressed > input.oo-ui-buttonElement-button,
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled > .oo-ui-buttonElement-button:active {
color: var(--ooui-text);
}
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button,
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button:hover {
color: var(--ooui-text);
}
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button:active,
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive.oo-ui-buttonElement-pressed > .oo-ui-buttonElement-button {
color: var(--ooui-text);
border-color: var(--ooui-text);
}
.oo-ui-buttonElement-frameless.oo-ui-widget-disabled > .oo-ui-buttonElement-button {
color: var(--ooui-disabled-text);
}
.oo-ui-buttonElement-framed.oo-ui-widget-disabled > .oo-ui-buttonElement-button {
background-color: var(--ooui-disabled);
border-color: var(--ooui-disabled-border);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled > .oo-ui-buttonElement-button {
background-color: var(--ooui-normal);
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled > .oo-ui-buttonElement-button:hover {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled > .oo-ui-buttonElement-button:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-buttonElement-active > .oo-ui-buttonElement-button {
background-color: var(--ooui-progressive--hover);
color: #fff;
border-color: var(--ooui-progressive--hover);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-buttonElement-active > .oo-ui-buttonElement-button:focus {
border-color: var(--ooui-progressive--hover);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled > .oo-ui-buttonElement-button:active,
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-buttonElement-pressed > .oo-ui-buttonElement-button {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive {
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button {
color: var(--ooui-text);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button:hover {
background-color: var(--ooui-normal--hover);
border-color: var(--ooui-progressive--hover);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-destructive > .oo-ui-buttonElement-button {
color: var(--ooui-text);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-destructive > .oo-ui-buttonElement-button:hover {
background-color: var(--ooui-normal--hover);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button {
background-color: var(--ooui-progressive);
border-color: var(--ooui-progressive);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button:hover {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent), inset 0 0 0 2px #fff;
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button:active,
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive.oo-ui-buttonElement-pressed > .oo-ui-buttonElement-button,
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive.oo-ui-buttonElement-active > .oo-ui-buttonElement-button,
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive.oo-ui-popupToolGroup-active > .oo-ui-buttonElement-button {
color: #fff;
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
}
.oo-ui-pendingElement-pending {
background-image: var(--ooui-pending-background-image);
background-size: 200%;
animation: oo-ui-pendingElement-stripes 6s linear infinite;
}
@keyframes oo-ui-pendingElement-stripes {
100% {
background-position: 100%;
}
}
.oo-ui-messageDialog-content > .oo-ui-window-foot {
outline-color: var(--ooui-interface-border);
}
.oo-ui-messageDialog-message {
color: var(--ooui-text);
}
.oo-ui-messageDialog-actions-horizontal .oo-ui-actionWidget {
border-right-color: var(--ooui-interface-border);
}
.oo-ui-messageDialog-actions-vertical .oo-ui-actionWidget {
border-bottom-color: var(--ooui-interface-border);
}
.oo-ui-processDialog-content .oo-ui-window-head,
.oo-ui-processDialog-content .oo-ui-window-foot {
outline-color: var(--ooui-interface-border);
}
.oo-ui-processDialog .oo-ui-actionWidget > .oo-ui-buttonElement-button {
border-top-color: transparent;
border-bottom-color: transparent;
}
.oo-ui-processDialog .oo-ui-actionWidget > .oo-ui-buttonElement-button:hover,
.oo-ui-processDialog .oo-ui-actionWidget > .oo-ui-buttonElement-button:active {
border-top-color: transparent;
border-bottom-color: transparent;
}
.oo-ui-processDialog .oo-ui-actionWidget:not( .oo-ui-flaggedElement-progressive ):not( .oo-ui-flaggedElement-destructive ) > .oo-ui-buttonElement-button:hover,
.oo-ui-processDialog .oo-ui-actionWidget:not( .oo-ui-flaggedElement-progressive ):not( .oo-ui-flaggedElement-destructive ) > .oo-ui-buttonElement-button:active {
border-right-color: var(--ooui-interface-border);
border-left-color: transparent;
}
.oo-ui-processDialog .oo-ui-actionWidget:not( .oo-ui-flaggedElement-progressive ):not( .oo-ui-flaggedElement-destructive ) > .oo-ui-buttonElement-button:focus {
border-color: var(--ooui-accent);
}
.oo-ui-processDialog-actions-safe .oo-ui-actionWidget > .oo-ui-buttonElement-button,
.oo-ui-processDialog-actions-other .oo-ui-actionWidget > .oo-ui-buttonElement-button {
border-right-color: var(--ooui-normal-border);
border-left-color: transparent;
}
.oo-ui-processDialog-actions-safe .oo-ui-widget-enabled.oo-ui-iconElement:not( .oo-ui-labelElement ) > .oo-ui-buttonElement-button:hover {
background-color: var(--ooui-normal--hover);
border-right-color: var(--ooui-interface-border);
}
.oo-ui-windowManager-modal > .oo-ui-dialog {
background-color: var(--ooui-window-background);
}
.oo-ui-windowManager-modal > .oo-ui-dialog > .oo-ui-window-frame {
background-color: var(--ooui-interface);
}
.oo-ui-windowManager-modal.oo-ui-windowManager-floating > .oo-ui-dialog > .oo-ui-window-frame {
border-color: var(--ooui-interface-border);
}
.oo-ui-window {
color: var(--ooui-text);
}
.oo-ui-toolbar-bar {
background-color: var(--ooui-interface);
color: var(--ooui-text);
}
.oo-ui-toolbar-position-top > .oo-ui-toolbar-bar {
border-bottom-color: var(--body-mid);
}
.oo-ui-toolbar-bar .oo-ui-bookletLayout > .oo-ui-menuLayout-menu {
border-right-color: var(--body-mid);
}
.oo-ui-tool.oo-ui-widget-enabled > .oo-ui-tool-link:hover {
background-color: var(--ooui-normal--hover);
}
.oo-ui-tool.oo-ui-widget-enabled > .oo-ui-tool-link:focus {
outline: 1px solid var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-tool.oo-ui-widget-enabled > .oo-ui-tool-link:active,
.oo-ui-tool.oo-ui-widget-enabled.oo-ui-tool-active > .oo-ui-tool-link,
.oo-ui-tool.oo-ui-widget-enabled.oo-ui-popupToolGroup-active > .oo-ui-tool-link {
background-color: var(--ooui-normal--hover);
color: var(--ooui-accent);
box-shadow: none;
}
.oo-ui-tool.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive > .oo-ui-tool-link {
background-color: var(--ooui-progressive);
}
.oo-ui-tool.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive > .oo-ui-tool-link:hover {
background-color: var(--ooui-progressive--hover);
}
.oo-ui-tool.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive > .oo-ui-tool-link:focus {
box-shadow: inset 0 0 0 1px var(--ooui-accent), inset 0 0 0 2px #fff;
}
.oo-ui-tool.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive > .oo-ui-tool-link:active,
.oo-ui-tool.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive.oo-ui-tool-active > .oo-ui-tool-link {
background-color: var(--ooui-progressive--hover);
}
.oo-ui-listToolGroup-tools .oo-ui-tool.oo-ui-widget-enabled {
background-color: var(--ooui-normal);
}
.oo-ui-listToolGroup-tools .oo-ui-tool.oo-ui-widget-enabled:hover {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
}
.oo-ui-listToolGroup-tools .oo-ui-tool-active.oo-ui-widget-enabled .oo-ui-tool-link .oo-ui-tool-title {
color: var(--ooui-progressive);
}
.oo-ui-menuToolGroup {
border-left-color: var(--body-mid);
border-right-color: var(--body-mid);
}
.oo-ui-popupToolGroup-tools {
background-color: var(--ooui-interface);
border-color: var(--body-mid);
}
.oo-ui-popupToolGroup.oo-ui-widget-enabled > .oo-ui-popupToolGroup-handle:hover {
background-color: var(--ooui-normal--hover);
}
.oo-ui-popupToolGroup.oo-ui-widget-enabled > .oo-ui-popupToolGroup-handle:focus {
outline: 1px solid var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-toolbar-actions .oo-ui-popupToolGroup.oo-ui-widget-enabled > .oo-ui-popupToolGroup-handle:hover {
border-right-color: var(--ooui-normal--hover);
}
.oo-ui-popupToolGroup-tools .oo-ui-tool.oo-ui-widget-enabled .oo-ui-tool-link:focus {
box-shadow: inset 0 0 0 2px var(--ooui-accent);
}
.oo-ui-popupToolGroup-tools .oo-ui-tool-active.oo-ui-widget-enabled .oo-ui-tool-link .oo-ui-tool-title {
color: var(--ooui-progressive);
}
.oo-ui-popupToolGroup.oo-ui-popupToolGroup-active > .oo-ui-popupToolGroup-handle {
background-color: var(--ooui-normal);
color: var(--ooui-accent);
}
.oo-ui-popupToolGroup.oo-ui-popupToolGroup-active > .oo-ui-popupToolGroup-handle:hover {
background-color: var(--ooui-normal--hover);
color: var(--ooui-accent);
}
.oo-ui-bookletLayout-outlinePanel > .oo-ui-outlineControlsWidget {
border-top-color: var(--ooui-interface-border);
}
.oo-ui-bookletLayout > .oo-ui-menuLayout-menu {
border-right-color: var(--ooui-interface-border);
}
.oo-ui-fieldLayout-disabled > .oo-ui-fieldLayout-body > .oo-ui-fieldLayout-header > .oo-ui-labelElement-label {
color: var(--ooui-disabled-text);
}
.oo-ui-panelLayout-framed {
border-color: var(--sidebar);
}
.oo-ui-icon-settings {
background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' width='20' height='20' viewBox='0 0 20 20'%3E%3Ctitle%3Esettings%3C/title%3E%3Cg transform='translate(10 10)'%3E%3Cpath id='a' d='M1.5-10h-3l-1 6.5h5m0 7h-5l1 6.5h3'/%3E%3Cuse xlink:href='%23a' transform='rotate(45)'/%3E%3Cuse xlink:href='%23a' transform='rotate(90)'/%3E%3Cuse xlink:href='%23a' transform='rotate(135)'/%3E%3C/g%3E%3Cpath d='M10 2.5a7.5 7.5 0 0 0 0 15 7.5 7.5 0 0 0 0-15v4a3.5 3.5 0 0 1 0 7 3.5 3.5 0 0 1 0-7'/%3E%3C/svg%3E");
}
.oo-ui-icon-clear {
background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 20 20'%3E%3Ctitle%3Eclear%3C/title%3E%3Cpath d='M10 0a10 10 0 1 0 10 10A10 10 0 0 0 10 0zm5.66 14.24-1.41 1.41L10 11.41l-4.24 4.25-1.42-1.42L8.59 10 4.34 5.76l1.42-1.42L10 8.59l4.24-4.24 1.41 1.41L11.41 10z'/%3E%3C/svg%3E");
}
.mw-widget-dateInputWidget-handle {
background-color: var(--ooui-input);
color: var(--ooui-text);
border-color: var(--ooui-input-border);
}
.mw-widget-dateInputWidget-calendar {
background-color: var(--ooui-interface);
}
.mw-widget-dateInputWidget.oo-ui-widget-enabled .mw-widget-dateInputWidget-handle:hover {
border-color: var(--ooui-input-border--hover);
}
.mw-widget-calendarWidget {
border-color: var(--ooui-interface-border);
}
.mw-widget-calendarWidget:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.mw-widget-calendarWidget-day,
.mw-widget-calendarWidget-day-heading {
color: var(--ooui-text);
}
.mw-widget-calendarWidget-day-additional {
color: var(--ooui-text);
opacity: 0.67;
}
.mw-widget-calendarWidget-day-today {
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.mw-widget-calendarWidget-item:hover {
background-color: var(--ooui-progressive);
}
.mw-widget-calendarWidget-item-selected {
background-color: var(--ooui-progressive--hover);
}
.mw-widgets-datetime-calendarWidget {
background-color: var(--ooui-interface);
border-color: var(--ooui-interface-border);
}
.mw-widgets-datetime-calendarWidget:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent), 0 2px 2px 0 rgba(0, 0, 0, 0.25);
}
.mw-widgets-datetime-calendarWidget-grid .mw-widgets-datetime-calendarWidget-cell.mw-widgets-datetime-calendarWidget-extra .oo-ui-buttonElement-button .oo-ui-labelElement-label {
color: var(--subtle-color);
}
.mw-widgets-datetime-calendarWidget-grid .mw-widgets-datetime-calendarWidget-cell.mw-widgets-datetime-calendarWidget-selected .oo-ui-buttonElement-button {
background-color: var(--ooui-progressive--hover);
}
.mw-widgets-datetime-dateTimeInputWidget-handle {
background-color: var(--ooui-input);
color: var(--ooui-text);
border-color: var(--ooui-input-border);
}
.mw-widgets-datetime-dateTimeInputWidget.oo-ui-widget-enabled.mw-widgets-datetime-dateTimeInputWidget-handle:hover {
border-color: var(--ooui-input-border--hover);
}
.mw-widgets-datetime-dateTimeInputWidget.oo-ui-widget-enabled:hover input,
.mw-widgets-datetime-dateTimeInputWidget.oo-ui-widget-enabled:hover textarea {
border-color: var(--ooui-input-border--hover);
}
.mw-widgets-datetime-dateTimeInputWidget.oo-ui-widget-enabled .mw-widgets-datetime-dateTimeInputWidget-editField:hover {
background-color: var(--ooui-normal);
}
.ve-activated .ve-init-mw-desktopArticleTarget-originalContent #catlinks:hover {
background: var(--ooui-normal--hover);
}
.ve-ui-overlay {
font-family: inherit;
}
.oo-ui-toolbar-position-top .ve-ui-toolbarDialog-position-above {
border-top-color: var(--body-mid);
}
.ve-ce-branchNode-blockSlug,
.ve-ce-branchNode-newSlug {
outline-color: var(--body-border);
background-color: var(--ooui-interface);
}
.ve-ui-specialCharacterPage h3 {
color: var(--byline-color);
}
.ve-ui-specialCharacterPage-character {
border-color: var(--body-mid);
}
.ve-ui-specialCharacterPage-character:hover {
border-color: var(--body-dark);
}
.ve-ce-linkAnnotation.ve-ce-annotation-active {
box-shadow: 0 0 0 1px var(--body-mid);
background: none;
}
.ve-ui-desktopContext .ve-ui-linkContextItem .ve-ui-linkContextItem-label {
border-color: var(--body-border);
}
.ve-ui-mwHelpPopupTool-version-label,
.ve-ui-mwHelpPopupTool-version-link,
.ve-ui-mwHelpPopupTool-version-date {
color: var(--byline-color);
}
.ve-ce-tableCellableNode {
border-color: var(--body-mid);
}
.ve-ce-mwReferencesListNode-muted {
color: var(--byline-color);
}
.ve-ui-mwTemplatePage-description,
.ve-ui-mwParameterPage-label,
.ve-ui-mwParameterPage-description-required,
.ve-ui-mwParameterPage-description-deprecated {
color: var(--byline-color);
}
.mw-widget-titleWidget-menu .mw-widget-titleOptionWidget-description {
color: var(--byline-color);
}
.ve-ui-mwGalleryDialog-menuLayout > .oo-ui-menuLayout-menu,
.ve-ui-mwGalleryDialog-innerMenuLayout > .oo-ui-menuLayout-menu,
.ve-ui-mwGalleryDialog .ve-ui-mwGalleryDialog-image-container,
.ve-ui-targetWidget {
border-color: var(--body-border);
}
.ve-ui-targetWidget:not(.oo-ui-pendingElement-pending) {
background-color: var(--body-main);
}
.ve-ui-mwSaveDialog {
color: var(--ooui-text);
}
.ve-ui-mwSaveDialog-options {
background-color: var(--ooui-interface);
border-color: var(--body-border);
}
.ve-ui-mwSaveDialog-summary {
background-color: var(--ooui-input);
}
.ve-ui-mwSaveDialog-editSummary-count {
border-color: var(--body-border);
}
.ve-ui-mwSaveDialog-license {
color: var(--byline-color);
}
.ve-ui-mwReferenceContextItem-muted {
color: var(--byline-color);
}
.ve-ui-mwNoticesPopupTool-items > div:not(:first-child),
.ve-ui-mwHelpPopupTool-item:not(:first-child) {
border-color: var(--body-border);
}
.ve-ui-mwTransclusionOutlineControlsWidget {
background-color: var(--ooui-interface);
border-top-color: var(--body-border);
}
.ve-ui-mwTransclusionOutlineTemplateWidget-sticky {
background-color: var(--ooui-interface);
}
.ve-ui-mwTransclusionOutlineTemplateWidget .ve-ui-mwTransclusionOutlineParameterWidget.oo-ui-optionWidget-highlighted {
color: var(--ooui-text);
}
.ve-ui-mwTransclusionOutlineTemplateWidget-no-template-parameters {
color: var(--subtle-color);
}
.ve-ui-mwParameterPage-undocumentedLabel {
color: var(--subtle-color);
}
.ve-ui-mwTwoPaneTransclusionDialogLayout > .oo-ui-menuLayout-menu {
border-right: var(--body-border);
}
.ve-ui-mwParameterPage-doc-required,
.ve-ui-mwParameterPage-doc-deprecated,
.ve-ui-mwParameterPage-inlineDescription .ve-ui-mwParameterPage-doc-example {
color: var(--byline-color);
}
.ve-ui-expandableContent-toggle {
background-color: var(--ooui-interface);
}
.ve-ui-expandableContent-fade {
background: linear-gradient(to right, rgba(255, 255, 255, 0) 0, var(--ooui-interface) 90%);
}
.ve-ui-commandHelpDialog-shortcut > kbd,
.ve-ui-commandHelpDialog-sequence > kbd {
background-color: var(--keypress-background);
color: var(--keypress-color);
border-color: var(--keypress-border);
box-shadow: none;
text-shadow: none;
}
.ve-init-mw-desktopArticleTarget-toolbarPlaceholder-floating .ve-init-mw-desktopArticleTarget-toolbarPlaceholder-bar {
background: var(--ooui-interface);
}
.ve-init-mw-desktopArticleTarget-toolbarPlaceholder-bar {
border-bottom-color: var(--body-mid);
}
figure[typeof~='mw:File/Thumb'],
figure[typeof~='mw:File/Frame'],
figure[typeof~='mw:Image/Thumb'],
figure[typeof~='mw:Video/Thumb'],
figure[typeof~='mw:Image/Frame'],
figure[typeof~='mw:Video/Frame'] {
border: none;
background-color: var(--thumb-bg);
}
figure[typeof~='mw:File/Thumb'] > a:first-child > *:first-child:not( .mw-broken-media ),
figure[typeof~='mw:File/Frame'] > a:first-child > *:first-child:not( .mw-broken-media ),
figure[typeof~='mw:Image/Thumb'] > a:first-child > *:first-child:not( .mw-broken-media ),
figure[typeof~='mw:Video/Thumb'] > a:first-child > *:first-child:not( .mw-broken-media ),
figure[typeof~='mw:Image/Frame'] > a:first-child > *:first-child:not( .mw-broken-media ),
figure[typeof~='mw:Video/Frame'] > a:first-child > *:first-child:not( .mw-broken-media ) {
border: none;
background: var(--thumb-bg);
}
figure[typeof~='mw:File/Thumb'] > figcaption,
figure[typeof~='mw:File/Frame'] > figcaption,
figure[typeof~='mw:Image/Thumb'] > figcaption,
figure[typeof~='mw:Video/Thumb'] > figcaption,
figure[typeof~='mw:Image/Frame'] > figcaption,
figure[typeof~='mw:Video/Frame'] > figcaption {
border: none;
background-color: var(--thumb-caption-bg);
padding: 4px 6px;
}
:root {
--infobox-text-color: var(--text-color);
}
ol.references,
.reflist {
font-size: 90%;
}
.reflist {
list-style-type: decimal;
}
.reflist .references {
font-size: 100%;
list-style-type: inherit;
}
.reflist-lower-alpha {
list-style-type: lower-alpha;
}
ol.references li:target,
sup.reference:target {
background-color: var(--body-light);
}
.hideQuotes .refhide {
display: none;
}
.mw-prefs-buttons {
background-color: var(--body-main);
border-top-color: var(--body-border);
box-shadow: none;
}
.mw-prefs-tabs-wrapper.oo-ui-panelLayout-framed,
.mw-prefs-tabs > .oo-ui-menuLayout-content > .oo-ui-indexLayout-stackLayout > .oo-ui-tabPanelLayout {
border-color: var(--body-border);
}
.mw-htmlform-ooui .mw-htmlform-matrix tbody tr:nth-child(even) td {
background-color: var(--body-light);
}
.mw-htmlform-ooui .mw-htmlform-matrix tbody tr:hover td {
background-color: var(--body-mid);
}
:root {
--rc-positive-color: #407813;
--rc-negative-color: #b41e0f;
}
.mw-plusminus-pos {
color: var(--rc-positive-color);
}
.mw-plusminus-neg {
color: var(--rc-negative-color);
}
.client-js .mw-recentchanges-toplinks:not(.mw-recentchanges-toplinks-collapsed) {
border-color: var(--body-border);
background-color: var(--body-light);
border-radius: 2px;
}
.mw-rcfilters-ui-filterTagMultiselectWidget-wrapper-content-title {
color: var(--text-color);
}
.mw-rcfilters-ui-filterTagMultiselectWidget-emptyFilters {
color: var(--byline-color);
}
.mw-rcfilters-ui-filterTagMultiselectWidget.oo-ui-widget-enabled .oo-ui-tagMultiselectWidget-handle {
background-color: var(--ooui-interface);
border-color: var(--ooui-interface-border);
}
.mw-rcfilters-ui-filterTagMultiselectWidget-views-select-widget.oo-ui-widget {
border-color: var(--ooui-interface-border);
}
.mw-rcfilters-collapsed .mw-rcfilters-ui-filterTagMultiselectWidget {
border-bottom-color: var(--ooui-interface-border);
}
.mw-rcfilters-ui-menuSelectWidget-footer {
background-color: var(--ooui-interface);
border-color: var(--ooui-interface-border);
}
.mw-rcfilters-ui-viewSwitchWidget label.oo-ui-labelWidget {
color: var(--byline-color);
}
.mw-rcfilters-ui-tagItemWidget-popup-content {
color: var(--ooui-text);
}
.mw-changeslist-legend,
.mw-rcfilters-ui-changesListWrapperWidget .mw-changeslist-legend {
background-color: var(--body-light);
border-color: var(--body-dark);
}
.mw-rcfilters-ui-changesListWrapperWidget-previousChangesIndicator {
border-color: var(--sidebar);
}
.client-js .mw-changeslist ul,
.client-js .mw-changeslist table.mw-enhanced-rc {
margin-left: 0;
}
.mw-rcfilters-ui-watchlistTopSectionWidget-separator {
border-color: var(--sidebar);
}
.mw-rcfilters-ui-itemMenuOptionWidget-header {
border-bottom-color: var(--ooui-interface);
background-color: var(--ooui-interface-border);
}
.mw-rcfilters-ui-itemMenuOptionWidget:not(:last-child):not(.mw-rcfilters-ui-itemMenuOptionWidget-identifier-talk) {
border-bottom-color: var(--ooui-normal-border);
}
.mw-rcfilters-ui-itemMenuOptionWidget-label-title,
.mw-rcfilters-ui-itemMenuOptionWidget-label-desc {
color: var(--text-color);
}
.mw-rcfilters-ui-filterMenuOptionWidget.oo-ui-flaggedElement-muted:not(.oo-ui-optionWidget-selected) {
background-color: var(--body-main);
}
.mw-rcfilters-ui-filterMenuOptionWidget.oo-ui-flaggedElement-muted .mw-rcfilters-ui-itemMenuOptionWidget-label-title,
.mw-rcfilters-ui-filterMenuOptionWidget.oo-ui-flaggedElement-muted .mw-rcfilters-ui-itemMenuOptionWidget-label-desc {
color: var(--subtle-color);
}
.mw-rcfilters-ui-filterMenuSectionOptionWidget {
background-color: var(--body-mid);
}
.mw-rcfilters-ui-filterMenuSectionOptionWidget-header-title.oo-ui-labelElement-label {
color: var(--ooui-text);
}
.mw-rcfilters-ui-filterMenuHeaderWidget-title {
color: var(--ooui-text);
}
.mw-rcfilters-ui-filterMenuHeaderWidget-header {
border-bottom-color: var(--ooui-interface-border);
background-color: var(--ooui-interface);
}
.mw-rcfilters-ui-itemMenuOptionWidget-view-namespaces {
border-top-color: var(--ooui-interface-border);
}
.mw-rcfilters-ui-datePopupWidget {
border-color: var(--ooui-interface-border);
}
.mw-rcfilters-ui-datePopupWidget .mw-rcfilters-ui-valuePickerWidget-title {
color: var(--byline-color);
}
.mw-rcfilters-ui-savedLinksListItemWidget-label {
color: var(--ooui-accent);
}
.client-js .mw-changeslist.mw-rcfilters-ui-changesListWrapperWidget-highlighted ul,
.client-js .mw-changeslist.mw-rcfilters-ui-changesListWrapperWidget-highlighted table.mw-enhanced-rc {
margin-left: 1.5em;
}
.page-Special_CreateAccount .mw-ui-container,
.page-Special_UserLogin .mw-ui-container {
max-width: 64rem;
margin: 0 auto;
}
.mw-number-text {
color: var(--byline-color);
}
.mw-body-content .mw-number-text h3 {
color: var(--text-color);
}
#mw-indicator-mw-helplink a {
background: none;
padding: 0;
display: flex;
align-items: center;
}
#mw-indicator-mw-helplink a::before {
content: '';
margin-right: 5px;
-webkit-mask: url("/resources/src/mediawiki.helplink/images/helpNotice.svg?46d34") no-repeat 50% 50% / contain;
mask: url("/resources/src/mediawiki.helplink/images/helpNotice.svg?46d34") no-repeat 50% 50% / contain;
background: var(--text-color);
height: 20px;
width: 20px;
}
.results-info {
color: inherit;
}
.mw-search-profile-tabs {
background-color: var(--body-mid);
border-color: transparent;
}
.search-types .current a {
color: inherit;
}
#mw-searchoptions {
background-color: var(--body-mid);
border-color: transparent;
}
#mw-searchoptions .divider {
border-color: var(--body-border);
}
#mw-searchoptions h4 {
font-family: inherit;
}
#mw-searchoptions .oo-ui-labelElement:nth-of-type(odd) {
font-weight: bold;
}
.searchresult {
line-height: 1.5;
}
.searchalttitle,
#mw-search-interwiki li {
font-size: 90%;
}
.mw-search-result-data {
color: var(--byline-color);
}
.page-Special_ListFiles a.image img {
width: inherit;
height: inherit;
}
.page-Special_ListFiles .TablePager_col_thumb {
text-align: center;
}
#editcount table[border="1"] {
background-color: var(--body-main) !important;
border-color: var(--wikitable-border) !important;
margin-top: 0.5em;
}
#editcount table[border="1"] th,
#editcount table[border="1"] td {
padding: 0.2em 0.4em;
}
#editcount table[border="1"] th {
background-color: var(--wikitable-header-bg);
border: 1px solid var(--wikitable-border);
}
#editcount table[border="1"] td {
border: 1px solid var(--wikitable-border);
}
#editcount table[border="1"] tr:nth-child(odd) {
background-color: var(--body-light);
}
.mw-echo-ui-notificationBadgeButtonPopupWidget-popup > .oo-ui-popupWidget-popup .mw-echo-ui-placeholderItemWidget {
background-color: inherit;
}
table.mw-interwikitable.body td.mw-interwikitable-local-yes {
background-color: var(--table-yes-background);
color: var(--table-yes-color);
}
.mw-protectedpages-unknown {
color: var(--byline-color);
}
.watchlistredir,
.allpagesredirect {
font-style: italic;
}
.allpagesredirect:after {
color: var(--byline-color);
content: " (redirect)";
}
.mw-apisandbox-toolbar {
background: var(--body-main);
}
.oo-ui-menuOptionWidget .mw-apisandbox-flag {
color: var(--byline-color);
}
tr.mw-abusefilter-list-disabled,
tr.mw-abusefilter-list-disabled td {
color: var(--byline-color);
}
table.mw-abuselog-details {
background: var(--wikitable-bg);
border-color: var(--wikitable-border);
}
table.mw-abuselog-details th {
background: var(--wikitable-header-bg);
}
table.mw-abuselog-details th,
table.mw-abuselog-details td {
border-color: var(--wikitable-border);
}
.mw-abusefilter-log-hidden-entry {
color: var(--subtle-color);
}
body td.mw-abusefilter-history-changed {
background: var(--table-no-background);
}
div.mw-abusefilter-editor,
#mw-abusefilter-warn-preview,
#mw-abusefilter-disallow-preview {
border-color: var(--ooui-input-border);
}
.mw-destfile-warning {
border-color: var(--warningbox-border);
color: var(--text-color);
background-color: var(--warningbox-bg);
}
span.fileinput-button {
background-color: var(--ooui-normal);
border-color: var(--ooui-normal-border);
color: var(--ooui-text);
}
ul.fileupload-results li.ful-success {
background-color: var(--successbox-bg);
}
ul.fileupload-results li.ful-success a {
color: var(--link-color);
}
ul.fileupload-results li.ful-error {
background-color: var(--errorbox-bg);
}
#t-print,
#t-permalink {
display: none;
}
#filetoc {
border-radius: 2px;
background: var(--body-mid);
border-color: transparent;
margin: 0.5em auto;
text-align: center;
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
}
li.gallerybox div.thumb {
border: none;
background-color: var(--thumb-bg);
}
.smwfact {
display: none;
}
.list-header {
background-color: var(--body-mid);
color: inherit;
}
.editOptions {
color: var(--text-color);
background-color: var(--sourceeditor-background-secondary);
border-color: var(--sourceeditor-border);
}
.mw-json th,
.mw-json td {
border-color: var(--wikitable-border);
}
.mw-json td {
background: var(--wikitable-bg);
}
.mw-json th {
background: var(--wikitable-header-bg);
}
fabb7a58fc7a77178034ca33d3bf301e5ef88b65
MediaWiki:Vector.less
8
31
41
2024-03-22T02:43:40Z
Jayden
3
base cp from rsw
less
less
/* =============================================================================
* This is the root Less file that is parsed to produce [[MediaWiki:Vector.css]].
*
* These styles will be applied to the Vector skin (desktop).
* -----------------------------------------------------------------------------
* Less documentation: <http://lesscss.org/features/>
* Gadget: <https://meta.weirdgloop.org/w/MediaWiki:Gadget-Less.js>
* Core Less JS: <https://meta.weirdgloop.org/w/MediaWiki:Gadget-Less-core.js>
* Non-standard mixins: <https://meta.weirdgloop.org/w/MediaWiki:Gadget-LessMixins.less>
* Online Less tester: <https://lesscss.org/less-preview/>
* ============================================================================= */
@common: 'MediaWiki:Common.less';
@dir: 'MediaWiki:Vector.less';
// ===== Imports =====
@import '@{common}/mixins.less';
@import '@{common}/variables.less';
@import '@{dir}/elements.less';
// Vector interface files
@import '@{dir}/vectormenu.less';
@import '@{dir}/vectorsearch.less';
@import '@{dir}/vectorsidebar.less';
@import '@{dir}/vectortabs.less';
@import '@{dir}/vectorfooter.less';
// Sidebar (rc widget)
@import '@{dir}/rcsidebar.less';
// Image thumbnails
@import '@{dir}/thumb.less';
// Table of Contents
@import '@{dir}/toc.less';
// anything else that doesn't go into above files
@import '@{dir}/interface.less';
// Editor interface
@import '@{dir}/sourceeditor.less';
@import '@{dir}/editor.less';
// jQuery UI
@import '@{dir}/jqueryui.less';
// Templates
@import '@{dir}/infobox.less';
@import '@{dir}/navbox.less';
// Infobox & Misc Buttons
//@import '@{dir}/button.less'; this is a duplicate of styles in [[MediaWiki:Gadget-switch-infobox.css]]
// Misc
@import '@{dir}/echo.less';
@import '@{dir}/transcripts.less';
@import '@{dir}/nodesktop.less';
// ===== Miscellaneous =====
// moved from [[MediaWiki:Common.less/tabber.less]]
// because it caused them to go off-screen on mobile
.tabber {
display: inline-grid;
}
506a6dc9ea2440e271a35ac25d81d2b8cde4437f
42
41
2024-03-22T02:44:13Z
Jayden
3
remove stuff that is going to be unnecessary
less
less
/* =============================================================================
* This is the root Less file that is parsed to produce [[MediaWiki:Vector.css]].
*
* These styles will be applied to the Vector skin (desktop).
* -----------------------------------------------------------------------------
* Less documentation: <http://lesscss.org/features/>
* Gadget: <https://meta.weirdgloop.org/w/MediaWiki:Gadget-Less.js>
* Core Less JS: <https://meta.weirdgloop.org/w/MediaWiki:Gadget-Less-core.js>
* Non-standard mixins: <https://meta.weirdgloop.org/w/MediaWiki:Gadget-LessMixins.less>
* Online Less tester: <https://lesscss.org/less-preview/>
* ============================================================================= */
@common: 'MediaWiki:Common.less';
@dir: 'MediaWiki:Vector.less';
// ===== Imports =====
@import '@{common}/mixins.less';
@import '@{common}/variables.less';
@import '@{dir}/elements.less';
// Vector interface files
@import '@{dir}/vectormenu.less';
@import '@{dir}/vectorsearch.less';
@import '@{dir}/vectorsidebar.less';
@import '@{dir}/vectortabs.less';
@import '@{dir}/vectorfooter.less';
// Sidebar (rc widget)
@import '@{dir}/rcsidebar.less';
// Image thumbnails
@import '@{dir}/thumb.less';
// Table of Contents
@import '@{dir}/toc.less';
// anything else that doesn't go into above files
@import '@{dir}/interface.less';
// Editor interface
@import '@{dir}/sourceeditor.less';
@import '@{dir}/editor.less';
// Misc
@import '@{dir}/echo.less';
// ===== Miscellaneous =====
// moved from [[MediaWiki:Common.less/tabber.less]]
// because it caused them to go off-screen on mobile
.tabber {
display: inline-grid;
}
76ebdfd8b9e2514702209b0363503ea82d3a7fed
48
42
2024-03-22T02:47:18Z
Jayden
3
less
less
/* =============================================================================
* This is the root Less file that is parsed to produce [[MediaWiki:Vector.css]].
*
* These styles will be applied to the Vector skin (desktop).
* -----------------------------------------------------------------------------
* Less documentation: <http://lesscss.org/features/>
* Gadget: <https://meta.weirdgloop.org/w/MediaWiki:Gadget-Less.js>
* Core Less JS: <https://meta.weirdgloop.org/w/MediaWiki:Gadget-Less-core.js>
* Non-standard mixins: <https://meta.weirdgloop.org/w/MediaWiki:Gadget-LessMixins.less>
* Online Less tester: <https://lesscss.org/less-preview/>
* ============================================================================= */
@common: 'MediaWiki:Common.less';
@dir: 'MediaWiki:Vector.less';
// ===== Imports =====
@import '@{common}/mixins.less';
@import '@{common}/variables.less';
@import '@{dir}/elements.less';
// Vector interface files
@import '@{dir}/vectormenu.less';
@import '@{dir}/vectorsearch.less';
@import '@{dir}/vectorsidebar.less';
@import '@{dir}/vectortabs.less';
// Image thumbnails
@import '@{dir}/thumb.less';
// Table of Contents
@import '@{dir}/toc.less';
// anything else that doesn't go into above files
@import '@{dir}/interface.less';
// Editor interface
@import '@{dir}/sourceeditor.less';
@import '@{dir}/editor.less';
// Misc
@import '@{dir}/echo.less';
// ===== Miscellaneous =====
// moved from [[MediaWiki:Common.less/tabber.less]]
// because it caused them to go off-screen on mobile
.tabber {
display: inline-grid;
}
b482f72a84b227ed47669a51bf6b8a489da143cd
MediaWiki:Vector.less/elements.less
8
32
43
2024-03-22T02:44:42Z
Jayden
3
base cp from rsw
less
less
/* ===================
Page elements
=================== */
:root {
--ul-list-style-image: url("data:image/svg+xml,%3C%3Fxml version='1.0' encoding='UTF-8'%3F%3E%3Csvg xmlns='http://www.w3.org/2000/svg' width='5' height='13'%3E%3Ccircle cx='2.5' cy='9' r='2.5' fill='%23000'/%3E%3C/svg%3E"); // change fill to #000
}
/* --------------------
body
-------------------- */
// Prevent weird font scaling in Safari - is also in minerva
html {
-webkit-text-size-adjust: 100%;
}
body {
background: var(--body-background-image) var(--body-background-color) top left / 1500px 375px no-repeat;
font-family: @sans-serif-stack;
}
// for 1.37 the default text adjustments are put
// on this class rather than .mw-body-content
.vector-body {
font-size: .9em; // changing Vector default 14px (0.875em) to 14.4px
// line-height: 1.6; default
}
/* --------------------
headings
-------------------- */
// page title
#firstHeading {
font-weight: bold;
}
/* --------------------
pre and code
-------------------- */
pre,
code,
.mw-code {
color: inherit; // inherit from body
background-color: var(--mw-code-background-color);
border: 1px solid var(--body-border);
}
/* --------------------
lists
-------------------- */
// bold line margins
dl {
margin: 0;
}
/* --------------------
list
-------------------- */
ul {
list-style-image: var(--ul-list-style-image);
}
/* -------------------------
why is <hr> inset
------------------------- */
hr {
background: none;
border-color: var(--sidebar);
border-style: solid;
border-width: 1px 0 0 0;
height: initial;
}
/* -------------------------
fieldset
------------------------- */
fieldset {
// same as <hr> and line under headers
border-color: var(--sidebar);
}
/* --------------------
blockquote
-------------------- */
.vector-body blockquote {
border-color: var(--body-mid);
}
b637db091a3d88e51ff38ec082a0390f34910a31
MediaWiki:Vector.less/vectormenu.less
8
33
44
2024-03-22T02:45:07Z
Jayden
3
base cp from rsw
less
less
:root {
--personal-links-bg: var(--body-main);
// --background-text-color (#444) fill
--arrow-down: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath d='M11.05 3.996l-.965-1.053-4.035 3.86-3.947-3.86L1.05 3.996l5 5 5-5' fill='%23444'/%3E%3C/svg%3E");
}
.vector-menu-dropdown {
.vector-menu-heading {
background-color: var(--vector-tab-background);
padding: 1em 0.75em 0.6923em; // 0.6923em is roughly 9px
margin: 0; // kill negative pixel margin
// "More" text
&,
&:hover,
&:focus {
color: var(--background-text-color);
}
&:after {
background-image: var(--arrow-down);
opacity: 1;
}
}
.vector-menu-content {
border-color: transparent;
background-color: var(--body-light);
box-shadow: 0 2px 3px 0 rgba(0, 0, 0, 0.1);
left: 0; // reset -1px offset since we don't have border between tabs
}
.mw-list-item {
a {
color: var(--link-color);
}
// Selected page on the menu
&.selected a,
&.selected a:visited {
color: var(--text-color);
}
}
}
// top links
#p-personal {
background: var(--personal-links-bg);
top: 0;
right: 0;
border-radius: 0 0 0 @border-radius * 2;
height: 1.875em; // 30px with a 16px default font-size
ul {
padding: 0 1em 0 .4375em; // + list items' margin-left of 9px = 1em on both sides
}
}
abd60d91c8e7b6b309873effc3406f1a45ff84dc
MediaWiki:Vector.less/vectorsearch.less
8
34
45
2024-03-22T02:45:26Z
Jayden
3
base cp from rsw
less
less
// search bar
.vector-search-box-inner {
background: var(--search-box);
height: 2.5em; // 40px
margin-top: 0;
box-shadow: inset 0 -7px 7px -7px rgba(0, 0, 0, 0.15);
}
// search text
.vector-search-box-input {
color: var(--text-color);
height: 100%;
border: none;
background: none;
padding-left: .75em;
&::placeholder {
color: var(--text-color);
opacity: 0.67; // same as icon
}
.vector-search-box-inner:hover &,
&:focus,
.vector-search-box-inner:hover &:focus {
border: none;
box-shadow: none;
}
}
:root {
// use --text-color (#000)
--searchbutton-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='13'%3E%3Cg fill='none' stroke='%23000' stroke-width='2'%3E%3Cpath d='M11.29 11.71l-4-4'/%3E%3Ccircle cx='5' cy='5' r='4'/%3E%3C/g%3E%3C/svg%3E");
}
// magnifying glass
.searchButton[name='go'] {
background: no-repeat center var(--searchbutton-icon);
// opacity: 0.67; this is inherited from default css
}
.vector-search-box {
margin: 0;
form {
margin-top: 0;
}
}
// search suggestions dropdown
.suggestions {
// class for each entry
&-results {
background-color: var(--body-light);
border-color: var(--body-border);
}
// class for text inside entries
&-result {
color: var(--text-color);
}
a.mw-searchSuggest-link,
a.mw-searchSuggest-link:hover,
a.mw-searchSuggest-link:active,
a.mw-searchSuggest-link:focus {
color: var(--text-color);
}
&-special {
background-color: var(--body-light);
border-color: var(--body-border);
// "Search for pages containing"
& .special-label {
color: var(--byline-color);
}
& .special-query {
color: var(--text-color);
}
}
// hover over entry
&-result-current {
background-color: var(--body-mid);
color: var(--text-color);
& .special-label,
& .special-query {
color: var(--text-color);
}
}
}
cd806ad8f6b8f7cd8d5c36b61971bb124f7d255d
MediaWiki:Vector.less/vectorsidebar.less
8
35
46
2024-03-22T02:45:51Z
Jayden
3
base cp from rsw
less
less
// sidebar
#mw-panel {
padding-top: 2.5em;
}
// sidebar links
.vector-menu-portal {
.vector-menu-heading {
color: var(--background-text-color);
font-weight: bold;
background: none;
}
.vector-menu-content li {
a,
a:visited {
color: var(--background-link-color);
}
}
}
// logo
#p-logo {
filter: drop-shadow(0 2px 5px rgba(0,0,0,.25));
margin: -1.5em 0 0;
}
/* [[Forum:Add a better Discord link to the sidebar]] */
#n-Discord a {
color: @white !important;
// font-size: 12px; // default sidebar font size
font-weight: bold;
border-radius: @border-radius * 2;
border: 1px solid @discord-bg-darker;
background-color: @discord-bg;
display: block;
position: relative;
padding: 4px 4px 5px calc(17px + 6.5px * 2); // width of icon + padding on either side
box-shadow: 0 2px 3px rgba(0, 0, 0, .1);
transition: .2s; // `ease` is the default timing-function
&::before {
content: 'Chat on ';
font-weight: normal;
opacity: .85;
}
&::after {
content: '';
background: url('filepath://Discord_logo_icon.svg') no-repeat;
background-size: 17px 13px;
filter: drop-shadow(0 1px 1px rgba(0, 0, 0, .1));
position: absolute;
top: 5px;
left: 7px;
width: 17px;
height: 13px;
}
&:hover {
text-decoration: none;
background-color: @discord-bg-dark;
}
}
.wgl-theme-dark #n-Discord a {
background-color: @discord-bg-dark;
&:hover {
background-color: @discord-bg-darker;
}
}
8623bc387e9ab56e04c53477ac4d9935337502fd
MediaWiki:Vector.less/vectortabs.less
8
36
47
2024-03-22T02:46:58Z
Jayden
3
base cp from rsw
less
less
:root {
// for more granular control for dark mode
--vector-tab-background: var(--body-background-color);
--vector-tab-background--hover: var(--body-mid);
--vector-tab-link-color: var(--background-link-color);
// uses --background-link-color (#52351e)
--watch-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16'%3E%3Cpath fill='transparent' stroke='%2352351e' stroke-width='.8' d='m8.1 1.1 2.2 4.5 4.8.7-3.5 3.4.9 4.8L8 12.2l-4.3 2.3.8-4.8L1 6.3l4.8-.7z'/%3E%3C/svg%3E");
--unwatch-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16'%3E%3Cpath fill='%2352351e' stroke='%2352351e' stroke-width='.8' d='m8.1 1.1 2.2 4.5 4.8.7-3.5 3.4.9 4.8L8 12.2l-4.3 2.3.8-4.8L1 6.3l4.8-.7z'/%3E%3C/svg%3E");
}
.vector-menu-tabs-legacy {
// Part of the css required to fix external link heights regardless of font size
//.vector-menu-content {
// height: 100%; still needed?
//}
// pixel padding for border
padding: 0;
// redlink in tab
.new {
a,
a:visited {
color: var(--redlink-color);
}
}
// selected tab
.selected {
background: var(--body-main);
a,
a:visited {
color: var(--text-color);
}
}
// padding for tabs
li a {
color: var(--vector-tab-link-color);
padding: 0 .75em;
padding-top: 1em;
&:visited {
color: var(--vector-tab-link-color);
}
}
// background for tabs
ul {
li {
background: var(--vector-tab-background);
}
a:hover {
text-decoration: none;
}
}
}
// hide "Read" tab
#ca-view {
display: none !important; // for beating the inline style in lower widths
}
// Tabs hover
.vector-menu-tabs ul li:not(.selected):hover,
// "More options" dropdown
#p-cactions:hover #p-cactions-label {
background: var(--vector-tab-background--hover);
}
// inner shadow for tabs
.vector-menu-tabs ul li:not(.selected),
#mw-head .vector-menu-dropdown .vector-menu-heading {
box-shadow: inset 0 -7px 7px -7px rgba(0, 0, 0, 0.15);
}
// remove image borders between all tabs
.vector-menu-tabs,
.vector-menu-tabs a,
#mw-head .vector-menu-dropdown .vector-menu-heading {
background-image: none;
}
// remove remaining blue border in VisualEditor
.ve-activated .vector-menu-tabs .selected {
box-shadow: none;
}
// Watch icon
.vector-menu-tabs {
#ca-watch.icon a {
&:before,
&:hover:before,
&:focus:before {
background-image: var(--watch-icon);
}
}
#ca-unwatch.icon a {
&:before,
&:hover:before,
&:focus:before {
background-image: var(--unwatch-icon);
}
}
}
b625eda78a1b2e070c5ce5936e607b2fa702e35f
MediaWiki:Vector.less/thumb.less
8
37
49
2024-03-22T02:47:29Z
Jayden
3
base cp from rsw
less
less
/* -------------------------
image thumbnails
------------------------- */
div.thumbinner {
border: none;
background-color: var(--thumb-bg);
padding: 0;
}
.thumbimage {
background-color: transparent;
border-color: transparent;
border-bottom: none;
}
.thumbcaption {
background: var(--thumb-caption-bg);
padding: 4px 6px;
}
fb0a0c7396e4225e0abc0dc5a239236976334876
MediaWiki:Vector.less/toc.less
8
38
50
2024-03-22T02:47:44Z
Jayden
3
base cp from rsw
less
less
/* ========================
[[Template:ToC]]
======================== */
:root {
--toc-bg: @BODY_LIGHT;
--toc-title-bg: @infobox-header-color;
--toc-border-color: @infobox-border-color;
--toc-list-border-color: @infobox-border-color;
}
.toc {
font-size: .9em;
background: var(--toc-bg);
margin-top: 1em;
padding: 0;
border-color: var(--toc-border-color);
box-shadow: @box-shadow;
clear: left;
.toctitle {
background: var(--toc-title-bg);
padding: .25em 1em;
h2 {
font-family: inherit;
}
}
// entire group of headings
> ul {
line-height: 1.8em;
padding: .75em 1.75em;
margin: 0;
}
// subheadings only
ul ul {
border-left: 1px dotted var(--toc-list-border-color);
padding-left: .5em;
}
}
// are these actually useful?
.tocnumber {
display: none;
}
// [hide]/[show] button
.toctogglespan {
// small spacing
padding-left: .2em;
// match navbox's button
font-size: 0.9em;
}
// change the actual label to link-color
.toctogglelabel {
color: var(--link-color);
}
.toclimit-2 #toc .toclevel-2,
.toclimit-3 #toc .toclevel-3,
.toclimit-4 #toc .toclevel-4,
.toclimit-5 #toc .toclevel-5,
.toclimit-6 #toc .toclevel-6,
.toclimit-7 #toc .toclevel-7 {
display: none;
}
bf876497784672759b6f97c5135b7b2809598cc5
MediaWiki:Vector.less/interface.less
8
39
51
2024-03-22T02:48:00Z
Jayden
3
base cp from rsw
less
less
/* == miscellaneous vector elements == */
:root {
--external-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath fill='%23936039' d='M6 1h5v5L8.86 3.85 4.7 8 4 7.3l4.15-4.16L6 1Z M2 3h2v1H2v6h6V8h1v2a1 1 0 0 1-1 1H2a1 1 0 0 1-1-1V4a1 1 0 0 1 1-1Z'/%3E%3C/svg%3E");
}
// external links icon
.mw-parser-output a.external {
// using vector-2022 new icon
background-image: var(--external-icon);
// 12px / <paragraph font size>px; in our wikis' case 0.833
background-size: 0.833em; // remove like below when on mw1.40
// padding-right: 1em;
}
// [edit] section
.mw-editsection {
font-family: @sans-serif-stack;
// brackets between editor link(s)
.client-js .mw-content-ltr &-bracket:first-of-type,
.client-js .mw-content-ltr &-bracket:not(:first-of-type),
// divider line between source and vis editor links
&-divider {
color: var(--text-color);
}
}
// "(Redirected from X)"
#contentSub,
#contentSub2 {
color: var(--byline-color);
margin: 0; // reset margin; re-added below
}
// re-add margin when not empty, as to not push content down ever so slightly
#contentSub:not(:empty),
#contentSub2:not(:empty) {
margin: 0 0 1.4em 0;
}
// Technically not vector-specific, but also not available on our only other skin: minerva
// collapsible tables
.mw-collapsible {
&.mw-collapsed {
min-width: 250px;
}
// Fix toggle style being different before JS takes over.
&:not( .mw-made-collapsible) th::before,
.mw-collapsible-toggle {
font-weight: normal;
margin-left: 0.2em;
}
}
e5564334c44dfa195a90c4d222e2b17dd54ff711
MediaWiki:Vector.less/sourceeditor.less
8
40
52
2024-03-22T02:48:22Z
Jayden
3
base cp from rsw
less
less
/* =============================
Source editor
============================== */
// repurposed from [[MediaWiki:Vector-darkmode.less/sourceeditor.less]]
// Add border to top and middle boxes
.wikiEditor-ui {
.wikiEditor-ui-view,
.wikiEditor-ui-top {
border-color: var(--sourceeditor-border);
}
}
// Toolbar: Very first bar at the top
.wikiEditor-ui-toolbar {
background-color: var(--sourceeditor-background);
/* comment out until we figure out a decent ooui
// What are these elements??
.oo-ui-popupToolGroup-handle:hover,
.oo-ui-popupToolGroup.oo-ui-popupToolGroup-active > .oo-ui-popupToolGroup-handle {
background-color: @dark-wikitable-background-lighter;
}
// When clicking the crayon, new menu, customize
.oo-ui-toolGroup-tools.oo-ui-clippableElement-clippable {
border-color: @dark-wikitable-border;
background-color: @dark-wikitable-background;
// Main element
.oo-ui-tool-name-editModeVisual {
background-color: @dark-wikitable-background;
&:hover {
background-color: @dark-wikitable-background-lighter;
}
}
// Source button
.oo-ui-tool-name-editModeSource {
background-color: @dark-wikitable-background-lighter;
.oo-ui-tool-title {
color: @dark-links-lighter;
}
}
} */
.tabs {
// Some links were hard-coded
span.tab > a,
span.tab > a:visited {
color: var(--link-color);
}
// Hardcoded text colour
span.tab a {
&.current,
&.current:visited {
color: var(--text-colour);
}
}
}
/*
Button colors
*/
// Border between the buttons
.group {
border-color: var(--sourceeditor-border);
// "Heading" dropdown menu in advanced toolbar
.tool-select {
background-color: var(--sourceeditor-background);
border-color: var(--sourceeditor-border);
.options {
border-color: var(--sourceeditor-border);
background-color: var(--body-main);
.option {
color: var(--link-color);
}
}
.menu .options .option:hover {
background-color: var(--ooui-normal--hover);
}
}
}
.group-search {
border-left-color: var(--body-mid);
}
.page-table {
td {
border-color: var(--body-mid);
color: var(--text-color);
}
th {
color: var(--text-color);
}
}
/*
Normal editor button colors
*/
// Advanced tab
.sections {
// border above the box
.section {
border-color: var(--body-mid);
}
// Specifically the advanced tab
.toolbar {
// "Format" and "Insert" labels
.group > .label {
color: var(--text-color);
}
// "Heading" label text
.tool > .label {
color: var(--text-color);
}
}
}
// Special characters and help tabs
.booklet {
// Hovered item in list
> .index > :hover {
background-color: var(--body-mid);
color: var(--text-color);
}
.index > .current {
background-color: var(--body-mid);
color: var(--link-color);
}
}
// Text inside the button/characters
.page-characters div span {
border-color: var(--body-mid);
color: var(--text-color);
// On hover of those characters
&:hover {
border-color: var(--body-dark);
background-color: transparent;
}
}
}
// changing arrow on tabs and "Heading" to use masking
.wikiEditor-ui-toolbar .tabs span.tab a:before,
.wikiEditor-ui-toolbar .group .tool-select .label:after {
background: var(--text-color);
-webkit-mask: var(--arrow-down) center no-repeat; // chrome support
mask: var(--arrow-down) center no-repeat;
}
/* --------------------------
ACE EDITOR
-------------------------- */
// highlighter
.ace-tm {
background-color: var(--sourceeditor-input-background);
color: var(--text-color);
// Numbers
.ace_gutter {
background: var(--body-mid);
color: var(--text-color);
&-cell {
color: var(--text-color);
}
}
.ace_gutter-active-line {
background-color: var(--body-light);
}
}
// Search & Replace
.ace_search {
background-color: var(--body-light);
color: var(--text-color);
border-color: var(--body-mid);
}
// input
.ace_search_field {
background-color: var(--ooui-input);
color: var(--ooui-text);
border-color: var(--ooui-input-border);
}
// buttons beside input
.ace_searchbtn {
border-color: var(--ooui-normal-border);
background-color: var(--ooui-normal);
color: var(--ooui-text);
&:last-child {
border-color: var(--ooui-normal-border);
}
&:hover {
background-color: var(--ooui-normal--hover);
}
// < > arrows
&.prev:after,
&.next:after {
border-color: var(--ooui-text);
}
}
// search buttons
.ace_button {
color: var(--text-color);
&:hover {
// same as sourceeditor toolbar
background-color: rgba(0, 23, 70, 0.086);
}
&:active {
background-color: rgba(0, 23, 70, 0.06);
}
&.checked {
border-color: var(--ooui-accent)
}
}
/* ---------------------------
CodeMirror adjustments
--------------------------- */
// same as no syntaxhighlight
.CodeMirror {
background: var(--sourceeditor-input-background);
// text color
pre {
color: var(--text-color);
}
}
// Status bar under text box in the middle
.codeEditor-status {
border-color: var(--sourceeditor-border);
background-color: var(--sourceeditor-background);
}
.codeEditor-status-message {
border-color: var(--sourceeditor-border);
}
.CodeMirror-gutters {
background-color: var(--codemirror-gutter-background);
border-color: var(--sourceeditor-border);
}
.CodeMirror-linenumber {
color: var(--text-color);
}
// VE source editor
.ve-init-mw-desktopArticleTarget .CodeMirror-linenumber {
color: var(--byline-color);
}
/* ===========================
source editor without
CodeMirror turned on
=========================== */
.mw-editform #wpTextbox1 {
color: var(--text-color);
background: var(--sourceeditor-input-background);
border-color: var(--sourceeditor-border);
}
1499cb54019b1ec7b9e130476376d4eb635209d6
MediaWiki:Vector.less/editor.less
8
41
53
2024-03-22T02:48:52Z
Jayden
3
base cp from rsw
less
less
/* Change the look of the editor */
// Make code-editors 100px (~11 lines of code) taller than the default 400px (~19.9 lines)
input[name="model"] {
&[value="Scribunto"],
&[value="css"],
&[value="less"],
&[value="javascript"],
&[value="json"] {
& ~ .wikiEditor-ui #wpTextbox1 {
height: 600px;
}
}
}
// TemplateData dialog template description textarea
.tdg-templateDataDialog-listParamsPanel textarea.oo-ui-textInputWidget-autosized {
resize: vertical;
}
// Abusefilter editor
#wpAceFilterEditor {
resize: horizontal;
}
// hide userspace upload warning by default, and hide generic 'own work' label on userspace
.warn-userupload,
.ns-2 .upload-own-work {
display: none;
}
// in userspace, replace 'own work' label with userspace upload warning
.ns-2 .warn-userupload {
display: inline;
}
// Batch Upload boxes
textarea[name="wfUploadDescription"] {
height: 3em;
}
// space between edit box and mediawiki warnings
#editform {
margin-top: 1.25em;
}
/* ===========================
Lua debug console
=========================== */
// Give Lua console styling consistent with the editor
#mw-scribunto-input,
#mw-scribunto-output {
padding: 3px; // make caret appear even at the start of the line
font-family: monospace;
font-size: 13px;
line-height: 1.5em;
}
#mw-scribunto-input {
background-color: var(--ooui-input);
border-color: var(--ooui-input-border);
}
:root {
--scribuntoconsole-input: @venice-blue;
--scibuntoconsole-print: @olive;
--scribuntoconsole-error: @old-brick;
--scribuntoconsole-message: @la-palma;
--scribuntoconsole-tabcomplete: @seance;
--scribuntoconsole-clear: @old-brick;
}
.mw-scribunto {
&-console-fieldset {
color: inherit;
background-color: var(--ooui-interface);
border-color: var(--ooui-interface-border);
}
// remove white backgrounds
&-normalOutput,
&-print,
&-error,
&-propList,
&-message,
&-tabcomplete {
background: none;
}
// console input and echoes
&-input {
color: var(--scribuntoconsole-input);
}
&-normalOutput {
color: inherit;
}
&-print {
color: var(--scibuntoconsole-print);
}
&-error {
color: var(--scribuntoconsole-error);
}
&-propList,
&-message {
color: var(--scribuntoconsole-message);
}
&-tabcomplete {
color: var(--scribuntoconsole-tabcomplete);
}
&-clear {
color: var(--scribuntoconsole-clear);
border-bottom-color: var(--scribuntoconsole-clear);
}
}
260d1c389eb6d25597cf7dc298a528982db56f62
MediaWiki:Vector.less/echo.less
8
42
54
2024-03-22T02:49:28Z
Jayden
3
base cp from rsw
less
less
// Echo (and skin switcher) icons
:root {
// all are using #4c4c4c fill aka @tundra
--echo-icon-moon-bg-image: url("data:image/svg+xml,%3C%3Fxml version='1.0' encoding='UTF-8'%3F%3E%3Csvg height='21' viewBox='0 0 21 21' width='21' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='m8.85464918.37900488c-1.91149353 1.51069427-3.13816124 3.84973402-3.13816124 6.47527736 0 4.55564936 3.69308349 8.24873286 8.24873286 8.24873286 2.5815709 0 4.8861545-1.1859235 6.3986798-3.0426994-.8206378 4.7389755-4.9523867 8.343122-9.9259291 8.343122-5.56375572 0-10.07407088-4.5103151-10.07407088-10.0740709 0-5.02506013 3.67919933-9.19079725 8.49074856-9.95036192z' fill='%234c4c4c'/%3E%3C/svg%3E");
--echo-icon-person-bg-image: url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 width=%2212%22 height=%2213.836%22 viewBox=%220 0 12 13.836%22%3E %3Cpath fill='%234c4c4c' d=%22M1.938%2C6.656c-1.32%2C1.485-1.47%2C3.15-0.97%2C4.25c0.323%2C0.707%2C0.78%2C1.127%2C1.313%2C1.375 c0.496%2C0.229%2C1.074%2C0.273%2C1.658%2C0.282c0.023%2C0%2C0.04%2C0.03%2C0.062%2C0.03h4.187c0.61%2C0%2C1.225-0.125%2C1.75-0.405 c0.527-0.28%2C0.961-0.718%2C1.188-1.376c0.335-0.964%2C0.175-2.529-1.094-4.03C9.094%2C7.954%2C7.68%2C8.719%2C6.065%2C8.719 c-1.677%2C0-3.182-0.812-4.125-2.063H1.938z%22/%3E %3Cpath fill='%234c4c4c' d=%22M6.063%2C0c-1.89%2C0-3.595%2C1.674-3.594%2C3.563C2.467%2C5.45%2C4.173%2C7.155%2C6.06%2C7.155 c1.89%2C0%2C3.564-1.705%2C3.563-3.593C9.625%2C1.673%2C7.95%2C0%2C6.063%2C0L6.063%2C0z%22/%3E %3C/svg%3E");
--echo-icon-bell-bg-image: url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 width=%2220%22 height=%2220%22 viewBox=%220 0 20 20%22%3E%3Ctitle%3Ebell%3C/title%3E%3Cpath d=%22M16 7a5.38 5.38 0 00-4.46-4.85C11.6 1.46 11.53 0 10 0S8.4 1.46 8.46 2.15A5.38 5.38 0 004 7v6l-2 2v1h16v-1l-2-2zm-6 13a3 3 0 003-3H7a3 3 0 003 3z%22 fill='%234c4c4c'/%3E%3C/svg%3E");
--echo-icon-tray-bg-image: url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 width=%2220%22 height=%2220%22 viewBox=%220 0 20 20%22%3E%3Ctitle%3Etray%3C/title%3E%3Cpath d=%22M3 1a2 2 0 00-2 2v14a2 2 0 002 2h14a2 2 0 002-2V3a2 2 0 00-2-2zm14 12h-4l-1 2H8l-1-2H3V3h14z%22 fill='%234c4c4c'/%3E%3C/svg%3E");
--echo-icon-fullscreen-bg-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 20 20'%3E%3Ctitle%3E fullscreen %3C/title%3E%3Cg fill='%234c4c4c'%3E%3Cpath d='M1 1v6h2V3h4V1zm2 12H1v6h6v-2H3zm14 4h-4v2h6v-6h-2zm0-16h-4v2h4v4h2V1z'/%3E%3C/g%3E%3Cscript xmlns=''/%3E%3C/svg%3E");
--echo-icon-exitFullscreen-bg-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 20 20'%3E%3Ctitle%3E exit fullscreen %3C/title%3E%3Cg fill='%234c4c4c'%3E%3Cpath d='M7 7V1H5v4H1v2zM5 19h2v-6H1v2h4zm10-4h4v-2h-6v6h2zm0-8h4V5h-4V1h-2v6z'/%3E%3C/g%3E%3Cscript xmlns=''/%3E%3C/svg%3E");
}
// User profile icon
.vector-user-menu-legacy {
#pt-userpage a,
#pt-anonuserpage {
background-image: var(--echo-icon-person-bg-image);
padding-top: 0;
background-position-y: 0;
}
#pt-anonuserpage {
// anon "Not logged in" text
color: var(--byline-color);
}
}
// Echo boxes
#pt-notifications-alert .mw-echo-notifications-badge,
#pt-notifications-notice .mw-echo-notifications-badge {
background-size: 75%;
background-position: center 80%;
background-repeat: no-repeat;
// unset all opacity so all icons would consistently coloured
opacity: unset;
}
#pt-notifications-alert .mw-echo-notifications-badge.mw-echo-notifications-badge-all-read,
#pt-notifications-notice .mw-echo-notifications-badge.mw-echo-notifications-badge-all-read {
opacity: unset;
}
// alerts
#pt-notifications-alert .oo-ui-icon-bell {
background-image: var(--echo-icon-bell-bg-image);
}
// notifs
#pt-notifications-notice .oo-ui-icon-tray {
background-image: var(--echo-icon-tray-bg-image);
}
// Skin switcher menu icon
#pt-fixed-width .oo-ui-icon-advanced {
background-image: var(--echo-icon-exitFullscreen-bg-image);
}
body.wgl-fixedWidth #pt-fixed-width .oo-ui-icon-advanced {
background-image: var(--echo-icon-fullscreen-bg-image);
}
#pt-theme-toggles .oo-ui-icon-advanced {
background-image: var(--echo-icon-moon-bg-image);
}
// Hack so that personal urls are at final vertical position when added to by JS.
#pt-anontalk {
padding-top: 0.6em;
}
afbf69108b6db006055ffb474b8bb5f5b489d80e
MediaWiki:Vector.css
8
43
55
2024-03-22T02:49:33Z
Jayden
3
Updating CSS from [[MediaWiki:Vector.less]]
css
text/css
/* <pre> */
:root {
--ul-list-style-image: url("data:image/svg+xml,%3C%3Fxml version='1.0' encoding='UTF-8'%3F%3E%3Csvg xmlns='http://www.w3.org/2000/svg' width='5' height='13'%3E%3Ccircle cx='2.5' cy='9' r='2.5' fill='%23000'/%3E%3C/svg%3E");
}
html {
-webkit-text-size-adjust: 100%;
}
body {
background: var(--body-background-image) var(--body-background-color) top left / 1500px 375px no-repeat;
font-family: 'Helvetica Neue', 'Arial', sans-serif;
}
.vector-body {
font-size: 0.9em;
}
#firstHeading {
font-weight: bold;
}
pre,
code,
.mw-code {
color: inherit;
background-color: var(--mw-code-background-color);
border: 1px solid var(--body-border);
}
dl {
margin: 0;
}
ul {
list-style-image: var(--ul-list-style-image);
}
hr {
background: none;
border-color: var(--sidebar);
border-style: solid;
border-width: 1px 0 0 0;
height: initial;
}
fieldset {
border-color: var(--sidebar);
}
.vector-body blockquote {
border-color: var(--body-mid);
}
:root {
--personal-links-bg: var(--body-main);
--arrow-down: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath d='M11.05 3.996l-.965-1.053-4.035 3.86-3.947-3.86L1.05 3.996l5 5 5-5' fill='%23444'/%3E%3C/svg%3E");
}
.vector-menu-dropdown .vector-menu-heading {
background-color: var(--vector-tab-background);
padding: 1em 0.75em 0.6923em;
margin: 0;
}
.vector-menu-dropdown .vector-menu-heading,
.vector-menu-dropdown .vector-menu-heading:hover,
.vector-menu-dropdown .vector-menu-heading:focus {
color: var(--background-text-color);
}
.vector-menu-dropdown .vector-menu-heading:after {
background-image: var(--arrow-down);
opacity: 1;
}
.vector-menu-dropdown .vector-menu-content {
border-color: transparent;
background-color: var(--body-light);
box-shadow: 0 2px 3px 0 rgba(0, 0, 0, 0.1);
left: 0;
}
.vector-menu-dropdown .mw-list-item a {
color: var(--link-color);
}
.vector-menu-dropdown .mw-list-item.selected a,
.vector-menu-dropdown .mw-list-item.selected a:visited {
color: var(--text-color);
}
#p-personal {
background: var(--personal-links-bg);
top: 0;
right: 0;
border-radius: 0 0 0 4px;
height: 1.875em;
}
#p-personal ul {
padding: 0 1em 0 0.4375em;
}
.vector-search-box-inner {
background: var(--search-box);
height: 2.5em;
margin-top: 0;
box-shadow: inset 0 -7px 7px -7px rgba(0, 0, 0, 0.15);
}
.vector-search-box-input {
color: var(--text-color);
height: 100%;
border: none;
background: none;
padding-left: 0.75em;
}
.vector-search-box-input::placeholder {
color: var(--text-color);
opacity: 0.67;
}
.vector-search-box-inner:hover .vector-search-box-input,
.vector-search-box-input:focus,
.vector-search-box-inner:hover .vector-search-box-input:focus {
border: none;
box-shadow: none;
}
:root {
--searchbutton-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='13'%3E%3Cg fill='none' stroke='%23000' stroke-width='2'%3E%3Cpath d='M11.29 11.71l-4-4'/%3E%3Ccircle cx='5' cy='5' r='4'/%3E%3C/g%3E%3C/svg%3E");
}
.searchButton[name='go'] {
background: no-repeat center var(--searchbutton-icon);
}
.vector-search-box {
margin: 0;
}
.vector-search-box form {
margin-top: 0;
}
.suggestions-results {
background-color: var(--body-light);
border-color: var(--body-border);
}
.suggestions-result {
color: var(--text-color);
}
.suggestions a.mw-searchSuggest-link,
.suggestions a.mw-searchSuggest-link:hover,
.suggestions a.mw-searchSuggest-link:active,
.suggestions a.mw-searchSuggest-link:focus {
color: var(--text-color);
}
.suggestions-special {
background-color: var(--body-light);
border-color: var(--body-border);
}
.suggestions-special .special-label {
color: var(--byline-color);
}
.suggestions-special .special-query {
color: var(--text-color);
}
.suggestions-result-current {
background-color: var(--body-mid);
color: var(--text-color);
}
.suggestions-result-current .special-label,
.suggestions-result-current .special-query {
color: var(--text-color);
}
#mw-panel {
padding-top: 2.5em;
}
.vector-menu-portal .vector-menu-heading {
color: var(--background-text-color);
font-weight: bold;
background: none;
}
.vector-menu-portal .vector-menu-content li a,
.vector-menu-portal .vector-menu-content li a:visited {
color: var(--background-link-color);
}
#p-logo {
filter: drop-shadow(0 2px 5px rgba(0, 0, 0, 0.25));
margin: -1.5em 0 0;
}
#n-Discord a {
color: #fff !important;
font-weight: bold;
border-radius: 4px;
border: 1px solid #4c57d0;
background-color: #5865f2;
display: block;
position: relative;
padding: 4px 4px 5px calc(17px + 6.5px * 2);
box-shadow: 0 2px 3px rgba(0, 0, 0, 0.1);
transition: 0.2s;
}
#n-Discord a::before {
content: 'Chat on ';
font-weight: normal;
opacity: 0.85;
}
#n-Discord a::after {
content: '';
background: url('filepath://Discord_logo_icon.svg') no-repeat;
background-size: 17px 13px;
filter: drop-shadow(0 1px 1px rgba(0, 0, 0, 0.1));
position: absolute;
top: 5px;
left: 7px;
width: 17px;
height: 13px;
}
#n-Discord a:hover {
text-decoration: none;
background-color: #525ee0;
}
.wgl-theme-dark #n-Discord a {
background-color: #525ee0;
}
.wgl-theme-dark #n-Discord a:hover {
background-color: #4c57d0;
}
:root {
--vector-tab-background: var(--body-background-color);
--vector-tab-background--hover: var(--body-mid);
--vector-tab-link-color: var(--background-link-color);
--watch-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16'%3E%3Cpath fill='transparent' stroke='%2352351e' stroke-width='.8' d='m8.1 1.1 2.2 4.5 4.8.7-3.5 3.4.9 4.8L8 12.2l-4.3 2.3.8-4.8L1 6.3l4.8-.7z'/%3E%3C/svg%3E");
--unwatch-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16'%3E%3Cpath fill='%2352351e' stroke='%2352351e' stroke-width='.8' d='m8.1 1.1 2.2 4.5 4.8.7-3.5 3.4.9 4.8L8 12.2l-4.3 2.3.8-4.8L1 6.3l4.8-.7z'/%3E%3C/svg%3E");
}
.vector-menu-tabs-legacy {
padding: 0;
}
.vector-menu-tabs-legacy .new a,
.vector-menu-tabs-legacy .new a:visited {
color: var(--redlink-color);
}
.vector-menu-tabs-legacy .selected {
background: var(--body-main);
}
.vector-menu-tabs-legacy .selected a,
.vector-menu-tabs-legacy .selected a:visited {
color: var(--text-color);
}
.vector-menu-tabs-legacy li a {
color: var(--vector-tab-link-color);
padding: 0 0.75em;
padding-top: 1em;
}
.vector-menu-tabs-legacy li a:visited {
color: var(--vector-tab-link-color);
}
.vector-menu-tabs-legacy ul li {
background: var(--vector-tab-background);
}
.vector-menu-tabs-legacy ul a:hover {
text-decoration: none;
}
#ca-view {
display: none !important;
}
.vector-menu-tabs ul li:not(.selected):hover,
#p-cactions:hover #p-cactions-label {
background: var(--vector-tab-background--hover);
}
.vector-menu-tabs ul li:not(.selected),
#mw-head .vector-menu-dropdown .vector-menu-heading {
box-shadow: inset 0 -7px 7px -7px rgba(0, 0, 0, 0.15);
}
.vector-menu-tabs,
.vector-menu-tabs a,
#mw-head .vector-menu-dropdown .vector-menu-heading {
background-image: none;
}
.ve-activated .vector-menu-tabs .selected {
box-shadow: none;
}
.vector-menu-tabs #ca-watch.icon a:before,
.vector-menu-tabs #ca-watch.icon a:hover:before,
.vector-menu-tabs #ca-watch.icon a:focus:before {
background-image: var(--watch-icon);
}
.vector-menu-tabs #ca-unwatch.icon a:before,
.vector-menu-tabs #ca-unwatch.icon a:hover:before,
.vector-menu-tabs #ca-unwatch.icon a:focus:before {
background-image: var(--unwatch-icon);
}
div.thumbinner {
border: none;
background-color: var(--thumb-bg);
padding: 0;
}
.thumbimage {
background-color: transparent;
border-color: transparent;
border-bottom: none;
}
.thumbcaption {
background: var(--thumb-caption-bg);
padding: 4px 6px;
}
:root {
--toc-bg: var(--body-light);
--toc-title-bg: var(--body-dark);
--toc-border-color: var(--body-border);
--toc-list-border-color: var(--body-border);
}
.toc {
font-size: 0.9em;
background: var(--toc-bg);
margin-top: 1em;
padding: 0;
border-color: var(--toc-border-color);
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
clear: left;
}
.toc .toctitle {
background: var(--toc-title-bg);
padding: 0.25em 1em;
}
.toc .toctitle h2 {
font-family: inherit;
}
.toc > ul {
line-height: 1.8em;
padding: 0.75em 1.75em;
margin: 0;
}
.toc ul ul {
border-left: 1px dotted var(--toc-list-border-color);
padding-left: 0.5em;
}
.tocnumber {
display: none;
}
.toctogglespan {
padding-left: 0.2em;
font-size: 0.9em;
}
.toctogglelabel {
color: var(--link-color);
}
.toclimit-2 #toc .toclevel-2,
.toclimit-3 #toc .toclevel-3,
.toclimit-4 #toc .toclevel-4,
.toclimit-5 #toc .toclevel-5,
.toclimit-6 #toc .toclevel-6,
.toclimit-7 #toc .toclevel-7 {
display: none;
}
:root {
--external-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath fill='%23936039' d='M6 1h5v5L8.86 3.85 4.7 8 4 7.3l4.15-4.16L6 1Z M2 3h2v1H2v6h6V8h1v2a1 1 0 0 1-1 1H2a1 1 0 0 1-1-1V4a1 1 0 0 1 1-1Z'/%3E%3C/svg%3E");
}
.mw-parser-output a.external {
background-image: var(--external-icon);
background-size: 0.833em;
}
.mw-editsection {
font-family: 'Helvetica Neue', 'Arial', sans-serif;
}
.client-js .mw-content-ltr .mw-editsection-bracket:first-of-type,
.client-js .mw-content-ltr .mw-editsection-bracket:not(:first-of-type),
.mw-editsection-divider {
color: var(--text-color);
}
#contentSub,
#contentSub2 {
color: var(--byline-color);
margin: 0;
}
#contentSub:not(:empty),
#contentSub2:not(:empty) {
margin: 0 0 1.4em 0;
}
.mw-collapsible.mw-collapsed {
min-width: 250px;
}
.mw-collapsible:not( .mw-made-collapsible) th::before,
.mw-collapsible .mw-collapsible-toggle {
font-weight: normal;
margin-left: 0.2em;
}
.wikiEditor-ui .wikiEditor-ui-view,
.wikiEditor-ui .wikiEditor-ui-top {
border-color: var(--sourceeditor-border);
}
.wikiEditor-ui-toolbar {
background-color: var(--sourceeditor-background);
}
.wikiEditor-ui-toolbar .tabs span.tab > a,
.wikiEditor-ui-toolbar .tabs span.tab > a:visited {
color: var(--link-color);
}
.wikiEditor-ui-toolbar .tabs span.tab a.current,
.wikiEditor-ui-toolbar .tabs span.tab a.current:visited {
color: var(--text-colour);
}
.wikiEditor-ui-toolbar .group {
border-color: var(--sourceeditor-border);
}
.wikiEditor-ui-toolbar .group .tool-select {
background-color: var(--sourceeditor-background);
border-color: var(--sourceeditor-border);
}
.wikiEditor-ui-toolbar .group .tool-select .options {
border-color: var(--sourceeditor-border);
background-color: var(--body-main);
}
.wikiEditor-ui-toolbar .group .tool-select .options .option {
color: var(--link-color);
}
.wikiEditor-ui-toolbar .group .tool-select .menu .options .option:hover {
background-color: var(--ooui-normal--hover);
}
.wikiEditor-ui-toolbar .group-search {
border-left-color: var(--body-mid);
}
.wikiEditor-ui-toolbar .page-table td {
border-color: var(--body-mid);
color: var(--text-color);
}
.wikiEditor-ui-toolbar .page-table th {
color: var(--text-color);
}
.wikiEditor-ui-toolbar .sections .section {
border-color: var(--body-mid);
}
.wikiEditor-ui-toolbar .sections .toolbar .group > .label {
color: var(--text-color);
}
.wikiEditor-ui-toolbar .sections .toolbar .tool > .label {
color: var(--text-color);
}
.wikiEditor-ui-toolbar .booklet > .index > :hover {
background-color: var(--body-mid);
color: var(--text-color);
}
.wikiEditor-ui-toolbar .booklet .index > .current {
background-color: var(--body-mid);
color: var(--link-color);
}
.wikiEditor-ui-toolbar .page-characters div span {
border-color: var(--body-mid);
color: var(--text-color);
}
.wikiEditor-ui-toolbar .page-characters div span:hover {
border-color: var(--body-dark);
background-color: transparent;
}
.wikiEditor-ui-toolbar .tabs span.tab a:before,
.wikiEditor-ui-toolbar .group .tool-select .label:after {
background: var(--text-color);
-webkit-mask: var(--arrow-down) center no-repeat;
mask: var(--arrow-down) center no-repeat;
}
.ace-tm {
background-color: var(--sourceeditor-input-background);
color: var(--text-color);
}
.ace-tm .ace_gutter {
background: var(--body-mid);
color: var(--text-color);
}
.ace-tm .ace_gutter-cell {
color: var(--text-color);
}
.ace-tm .ace_gutter-active-line {
background-color: var(--body-light);
}
.ace_search {
background-color: var(--body-light);
color: var(--text-color);
border-color: var(--body-mid);
}
.ace_search_field {
background-color: var(--ooui-input);
color: var(--ooui-text);
border-color: var(--ooui-input-border);
}
.ace_searchbtn {
border-color: var(--ooui-normal-border);
background-color: var(--ooui-normal);
color: var(--ooui-text);
}
.ace_searchbtn:last-child {
border-color: var(--ooui-normal-border);
}
.ace_searchbtn:hover {
background-color: var(--ooui-normal--hover);
}
.ace_searchbtn.prev:after,
.ace_searchbtn.next:after {
border-color: var(--ooui-text);
}
.ace_button {
color: var(--text-color);
}
.ace_button:hover {
background-color: rgba(0, 23, 70, 0.086);
}
.ace_button:active {
background-color: rgba(0, 23, 70, 0.06);
}
.ace_button.checked {
border-color: var(--ooui-accent);
}
.CodeMirror {
background: var(--sourceeditor-input-background);
}
.CodeMirror pre {
color: var(--text-color);
}
.codeEditor-status {
border-color: var(--sourceeditor-border);
background-color: var(--sourceeditor-background);
}
.codeEditor-status-message {
border-color: var(--sourceeditor-border);
}
.CodeMirror-gutters {
background-color: var(--codemirror-gutter-background);
border-color: var(--sourceeditor-border);
}
.CodeMirror-linenumber {
color: var(--text-color);
}
.ve-init-mw-desktopArticleTarget .CodeMirror-linenumber {
color: var(--byline-color);
}
.mw-editform #wpTextbox1 {
color: var(--text-color);
background: var(--sourceeditor-input-background);
border-color: var(--sourceeditor-border);
}
input[name="model"][value="Scribunto"] ~ .wikiEditor-ui #wpTextbox1,
input[name="model"][value="css"] ~ .wikiEditor-ui #wpTextbox1,
input[name="model"][value="less"] ~ .wikiEditor-ui #wpTextbox1,
input[name="model"][value="javascript"] ~ .wikiEditor-ui #wpTextbox1,
input[name="model"][value="json"] ~ .wikiEditor-ui #wpTextbox1 {
height: 600px;
}
.tdg-templateDataDialog-listParamsPanel textarea.oo-ui-textInputWidget-autosized {
resize: vertical;
}
#wpAceFilterEditor {
resize: horizontal;
}
.warn-userupload,
.ns-2 .upload-own-work {
display: none;
}
.ns-2 .warn-userupload {
display: inline;
}
textarea[name="wfUploadDescription"] {
height: 3em;
}
#editform {
margin-top: 1.25em;
}
#mw-scribunto-input,
#mw-scribunto-output {
padding: 3px;
font-family: monospace;
font-size: 13px;
line-height: 1.5em;
}
#mw-scribunto-input {
background-color: var(--ooui-input);
border-color: var(--ooui-input-border);
}
:root {
--scribuntoconsole-input: #0b5884;
--scibuntoconsole-print: #a48900;
--scribuntoconsole-error: #9f261e;
--scribuntoconsole-message: #3c780a;
--scribuntoconsole-tabcomplete: #4f348b;
--scribuntoconsole-clear: #9f261e;
}
.mw-scribunto-console-fieldset {
color: inherit;
background-color: var(--ooui-interface);
border-color: var(--ooui-interface-border);
}
.mw-scribunto-normalOutput,
.mw-scribunto-print,
.mw-scribunto-error,
.mw-scribunto-propList,
.mw-scribunto-message,
.mw-scribunto-tabcomplete {
background: none;
}
.mw-scribunto-input {
color: var(--scribuntoconsole-input);
}
.mw-scribunto-normalOutput {
color: inherit;
}
.mw-scribunto-print {
color: var(--scibuntoconsole-print);
}
.mw-scribunto-error {
color: var(--scribuntoconsole-error);
}
.mw-scribunto-propList,
.mw-scribunto-message {
color: var(--scribuntoconsole-message);
}
.mw-scribunto-tabcomplete {
color: var(--scribuntoconsole-tabcomplete);
}
.mw-scribunto-clear {
color: var(--scribuntoconsole-clear);
border-bottom-color: var(--scribuntoconsole-clear);
}
:root {
--echo-icon-moon-bg-image: url("data:image/svg+xml,%3C%3Fxml version='1.0' encoding='UTF-8'%3F%3E%3Csvg height='21' viewBox='0 0 21 21' width='21' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='m8.85464918.37900488c-1.91149353 1.51069427-3.13816124 3.84973402-3.13816124 6.47527736 0 4.55564936 3.69308349 8.24873286 8.24873286 8.24873286 2.5815709 0 4.8861545-1.1859235 6.3986798-3.0426994-.8206378 4.7389755-4.9523867 8.343122-9.9259291 8.343122-5.56375572 0-10.07407088-4.5103151-10.07407088-10.0740709 0-5.02506013 3.67919933-9.19079725 8.49074856-9.95036192z' fill='%234c4c4c'/%3E%3C/svg%3E");
--echo-icon-person-bg-image: url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 width=%2212%22 height=%2213.836%22 viewBox=%220 0 12 13.836%22%3E %3Cpath fill='%234c4c4c' d=%22M1.938%2C6.656c-1.32%2C1.485-1.47%2C3.15-0.97%2C4.25c0.323%2C0.707%2C0.78%2C1.127%2C1.313%2C1.375 c0.496%2C0.229%2C1.074%2C0.273%2C1.658%2C0.282c0.023%2C0%2C0.04%2C0.03%2C0.062%2C0.03h4.187c0.61%2C0%2C1.225-0.125%2C1.75-0.405 c0.527-0.28%2C0.961-0.718%2C1.188-1.376c0.335-0.964%2C0.175-2.529-1.094-4.03C9.094%2C7.954%2C7.68%2C8.719%2C6.065%2C8.719 c-1.677%2C0-3.182-0.812-4.125-2.063H1.938z%22/%3E %3Cpath fill='%234c4c4c' d=%22M6.063%2C0c-1.89%2C0-3.595%2C1.674-3.594%2C3.563C2.467%2C5.45%2C4.173%2C7.155%2C6.06%2C7.155 c1.89%2C0%2C3.564-1.705%2C3.563-3.593C9.625%2C1.673%2C7.95%2C0%2C6.063%2C0L6.063%2C0z%22/%3E %3C/svg%3E");
--echo-icon-bell-bg-image: url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 width=%2220%22 height=%2220%22 viewBox=%220 0 20 20%22%3E%3Ctitle%3Ebell%3C/title%3E%3Cpath d=%22M16 7a5.38 5.38 0 00-4.46-4.85C11.6 1.46 11.53 0 10 0S8.4 1.46 8.46 2.15A5.38 5.38 0 004 7v6l-2 2v1h16v-1l-2-2zm-6 13a3 3 0 003-3H7a3 3 0 003 3z%22 fill='%234c4c4c'/%3E%3C/svg%3E");
--echo-icon-tray-bg-image: url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 width=%2220%22 height=%2220%22 viewBox=%220 0 20 20%22%3E%3Ctitle%3Etray%3C/title%3E%3Cpath d=%22M3 1a2 2 0 00-2 2v14a2 2 0 002 2h14a2 2 0 002-2V3a2 2 0 00-2-2zm14 12h-4l-1 2H8l-1-2H3V3h14z%22 fill='%234c4c4c'/%3E%3C/svg%3E");
--echo-icon-fullscreen-bg-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 20 20'%3E%3Ctitle%3E fullscreen %3C/title%3E%3Cg fill='%234c4c4c'%3E%3Cpath d='M1 1v6h2V3h4V1zm2 12H1v6h6v-2H3zm14 4h-4v2h6v-6h-2zm0-16h-4v2h4v4h2V1z'/%3E%3C/g%3E%3Cscript xmlns=''/%3E%3C/svg%3E");
--echo-icon-exitFullscreen-bg-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 20 20'%3E%3Ctitle%3E exit fullscreen %3C/title%3E%3Cg fill='%234c4c4c'%3E%3Cpath d='M7 7V1H5v4H1v2zM5 19h2v-6H1v2h4zm10-4h4v-2h-6v6h2zm0-8h4V5h-4V1h-2v6z'/%3E%3C/g%3E%3Cscript xmlns=''/%3E%3C/svg%3E");
}
.vector-user-menu-legacy #pt-userpage a,
.vector-user-menu-legacy #pt-anonuserpage {
background-image: var(--echo-icon-person-bg-image);
padding-top: 0;
background-position-y: 0;
}
.vector-user-menu-legacy #pt-anonuserpage {
color: var(--byline-color);
}
#pt-notifications-alert .mw-echo-notifications-badge,
#pt-notifications-notice .mw-echo-notifications-badge {
background-size: 75%;
background-position: center 80%;
background-repeat: no-repeat;
opacity: unset;
}
#pt-notifications-alert .mw-echo-notifications-badge.mw-echo-notifications-badge-all-read,
#pt-notifications-notice .mw-echo-notifications-badge.mw-echo-notifications-badge-all-read {
opacity: unset;
}
#pt-notifications-alert .oo-ui-icon-bell {
background-image: var(--echo-icon-bell-bg-image);
}
#pt-notifications-notice .oo-ui-icon-tray {
background-image: var(--echo-icon-tray-bg-image);
}
#pt-fixed-width .oo-ui-icon-advanced {
background-image: var(--echo-icon-exitFullscreen-bg-image);
}
body.wgl-fixedWidth #pt-fixed-width .oo-ui-icon-advanced {
background-image: var(--echo-icon-fullscreen-bg-image);
}
#pt-theme-toggles .oo-ui-icon-advanced {
background-image: var(--echo-icon-moon-bg-image);
}
#pt-anontalk {
padding-top: 0.6em;
}
.tabber {
display: inline-grid;
}
6eab2ce81af87c406deec175cedc5e8b0a28af4f
MediaWiki:Common.less
8
5
56
12
2024-03-22T02:50:50Z
Jayden
3
update body-background-color
less
less
/* =============================================================================
* This is the root Less file that is parsed to produce [[MediaWiki:Common.css]].
*
* These styles will be applied to all skins (desktop and mobile).
* -----------------------------------------------------------------------------
* Less documentation: <http://lesscss.org/features/>
* Gadget: <https://meta.weirdgloop.org/w/MediaWiki:Gadget-Less.js>
* Core Less JS: <https://meta.weirdgloop.org/w/MediaWiki:Gadget-Less-core.js>
* Non-standard mixins: <https://meta.weirdgloop.org/w/MediaWiki:Gadget-LessMixins.less>
* Online Less tester: <https://lesscss.org/less-preview/>
* ============================================================================= */
// ===== CSS Variables =====
@common: 'MediaWiki:Common.less';
:root {
--body-main: #e2dbc8;
--body-light: #d8ccb4;
--body-mid: #d0bd97;
--body-dark: #b8a282;
--body-border: #94866d;
--body-background-color: #513e36;
--button-background: #605443;
--button-color: @white;
--button-border: #3c352a;
--button-dark: #18140c;
--button-light: #3a301d;
--sidebar: #cfc08d;
--background-text-color: #444;
--background-link-color: #52351e;
--search-box: #efeee6;
--link-color: #936039;
--redlink-color: #ba0000;
--text-color: @black;
--byline-color: @tundora;
--subtle-color: @boulder;
--admin-blue: #332e75;
--bearcat-green: #13592e;
--awb-purple: #933b96;
--rsw-blue: #438ab6;
--osrsw-brown: #605443;
// used for gallery & thumbs
--thumb-bg: var(--body-light);
--thumb-caption-bg: var(--body-mid);
// for sourceeditor - CodeMirror and WikiEditor's that are only available on
// desktop are also here to not fragment the vars across many files
--sourceeditor-input-background: @white;
--sourceeditor-background: var(--body-light);
--sourceeditor-background-secondary: var(--body-light); // used on .editOptions
--sourceeditor-border: var(--body-mid);
--codemirror-gutter-background: var(--body-mid);
}
// ===== Imports =====
// include fonts first
@import '@{common}/mixins.less';
@import '@{common}/fonts.less'; // Font definitions and font stack definitions
@import '@{common}/variables.less'; // Less variables
@import '@{common}/elements.less'; // HTML elements
@import '@{common}/links.less'; // Link colours
// Interface
@import '@{common}/interface.less'; // MW common elements
@import '@{common}/wikitables.less'; // .wikitable class and etc
@import '@{common}/diff.less'; // Revision differences
@import '@{common}/notifications.less';
@import '@{common}/pagepreviews.less'; // Page preview popups
@import '@{common}/smw.less'; // Semantic MediaWiki
@import '@{common}/tabber.less'; // <tabber>
@import '@{common}/ooui.less'; // OOUI Customisations
@import '@{common}/visualeditor.less'; // VisualEditor
// Templates
@import '@{common}/templates.less'; // Various templates
@import '@{common}/infobox.less'; // Infobox vars
@import '@{common}/references.less'; // <references>
// Page specific
@import '@{common}/prefs.less'; // Wiki preferences theming
@import '@{common}/specials.less'; // Special pages
// ===== Miscellaneous =====
// hide certain links in sidebar tools
#t-print,
#t-permalink {
display: none;
}
#filetoc {
border-radius: @border-radius;
background: @BODY_MID;
border-color: transparent;
margin: 0.5em auto;
text-align: center;
box-shadow: @box-shadow;
}
// Galleries
li.gallerybox div.thumb {
border: none;
background-color: var(--thumb-bg);
}
.smwfact {
display: none;
}
// applies to mobile talk pages, and smw??
.list-header {
background-color: var(--body-mid);
color: inherit;
}
// Source editor w/o syntaxhighlight; also applies to mobile in case JS is
// turned off
.editOptions {
color: var(--text-color);
background-color: var(--sourceeditor-background-secondary);
border-color: var(--sourceeditor-border);
}
// .json pages
.mw-json {
th,
td {
border-color: var(--wikitable-border);
}
// instead of selecting `tr`, do this to avoid dealing with mw-json-* classes
td {
background: var(--wikitable-bg);
}
th {
background: var(--wikitable-header-bg);
}
}
e7be5fd62842db72ba21fc593b776833abf0f279
58
56
2024-03-22T02:53:41Z
Jayden
3
change some background vars
less
less
/* =============================================================================
* This is the root Less file that is parsed to produce [[MediaWiki:Common.css]].
*
* These styles will be applied to all skins (desktop and mobile).
* -----------------------------------------------------------------------------
* Less documentation: <http://lesscss.org/features/>
* Gadget: <https://meta.weirdgloop.org/w/MediaWiki:Gadget-Less.js>
* Core Less JS: <https://meta.weirdgloop.org/w/MediaWiki:Gadget-Less-core.js>
* Non-standard mixins: <https://meta.weirdgloop.org/w/MediaWiki:Gadget-LessMixins.less>
* Online Less tester: <https://lesscss.org/less-preview/>
* ============================================================================= */
// ===== CSS Variables =====
@common: 'MediaWiki:Common.less';
:root {
--body-main: #e2dbc8;
--body-light: #d8ccb4;
--body-mid: #d0bd97;
--body-dark: #b8a282;
--body-border: #94866d;
--body-background-color: #513e36;
--button-background: #605443;
--button-color: @white;
--button-border: #3c352a;
--button-dark: #18140c;
--button-light: #3a301d;
--sidebar: #cfc08d;
--background-text-color: #e2dbc8;
--background-link-color: #e2bd8a;
--search-box: #efeee6;
--link-color: #936039;
--redlink-color: #ba0000;
--text-color: @black;
--byline-color: @tundora;
--subtle-color: @boulder;
--admin-blue: #332e75;
--bearcat-green: #13592e;
--awb-purple: #933b96;
--rsw-blue: #438ab6;
--osrsw-brown: #605443;
// used for gallery & thumbs
--thumb-bg: var(--body-light);
--thumb-caption-bg: var(--body-mid);
// for sourceeditor - CodeMirror and WikiEditor's that are only available on
// desktop are also here to not fragment the vars across many files
--sourceeditor-input-background: @white;
--sourceeditor-background: var(--body-light);
--sourceeditor-background-secondary: var(--body-light); // used on .editOptions
--sourceeditor-border: var(--body-mid);
--codemirror-gutter-background: var(--body-mid);
}
// ===== Imports =====
// include fonts first
@import '@{common}/mixins.less';
@import '@{common}/fonts.less'; // Font definitions and font stack definitions
@import '@{common}/variables.less'; // Less variables
@import '@{common}/elements.less'; // HTML elements
@import '@{common}/links.less'; // Link colours
// Interface
@import '@{common}/interface.less'; // MW common elements
@import '@{common}/wikitables.less'; // .wikitable class and etc
@import '@{common}/diff.less'; // Revision differences
@import '@{common}/notifications.less';
@import '@{common}/pagepreviews.less'; // Page preview popups
@import '@{common}/smw.less'; // Semantic MediaWiki
@import '@{common}/tabber.less'; // <tabber>
@import '@{common}/ooui.less'; // OOUI Customisations
@import '@{common}/visualeditor.less'; // VisualEditor
// Templates
@import '@{common}/templates.less'; // Various templates
@import '@{common}/infobox.less'; // Infobox vars
@import '@{common}/references.less'; // <references>
// Page specific
@import '@{common}/prefs.less'; // Wiki preferences theming
@import '@{common}/specials.less'; // Special pages
// ===== Miscellaneous =====
// hide certain links in sidebar tools
#t-print,
#t-permalink {
display: none;
}
#filetoc {
border-radius: @border-radius;
background: @BODY_MID;
border-color: transparent;
margin: 0.5em auto;
text-align: center;
box-shadow: @box-shadow;
}
// Galleries
li.gallerybox div.thumb {
border: none;
background-color: var(--thumb-bg);
}
.smwfact {
display: none;
}
// applies to mobile talk pages, and smw??
.list-header {
background-color: var(--body-mid);
color: inherit;
}
// Source editor w/o syntaxhighlight; also applies to mobile in case JS is
// turned off
.editOptions {
color: var(--text-color);
background-color: var(--sourceeditor-background-secondary);
border-color: var(--sourceeditor-border);
}
// .json pages
.mw-json {
th,
td {
border-color: var(--wikitable-border);
}
// instead of selecting `tr`, do this to avoid dealing with mw-json-* classes
td {
background: var(--wikitable-bg);
}
th {
background: var(--wikitable-header-bg);
}
}
2d4ea7c1832fd98d7786cc47800b4098a23e6da9
61
58
2024-03-22T03:01:12Z
Jayden
3
less
less
/* =============================================================================
* This is the root Less file that is parsed to produce [[MediaWiki:Common.css]].
*
* These styles will be applied to all skins (desktop and mobile).
* -----------------------------------------------------------------------------
* Less documentation: <http://lesscss.org/features/>
* Gadget: <https://meta.weirdgloop.org/w/MediaWiki:Gadget-Less.js>
* Core Less JS: <https://meta.weirdgloop.org/w/MediaWiki:Gadget-Less-core.js>
* Non-standard mixins: <https://meta.weirdgloop.org/w/MediaWiki:Gadget-LessMixins.less>
* Online Less tester: <https://lesscss.org/less-preview/>
* ============================================================================= */
// ===== CSS Variables =====
@common: 'MediaWiki:Common.less';
:root {
--body-main: #e2dbc8;
--body-light: #d8ccb4;
--body-mid: #d0bd97;
--body-dark: #b8a282;
--body-border: #94866d;
--body-background-color: #513e36;
--button-background: #605443;
--button-color: @white;
--button-border: #3c352a;
--button-dark: #18140c;
--button-light: #3a301d;
--sidebar: #cfc08d;
--background-text-color: #e2dbc8;
--background-link-color: #e2bd8a;
--search-box: #efeee6;
--link-color: #936039;
--redlink-color: #ba0000;
--text-color: @black;
--byline-color: @tundora;
--subtle-color: @boulder;
--admin-blue: #332e75;
--bearcat-green: #13592e;
--awb-purple: #933b96;
--rsw-blue: #438ab6;
--osrsw-brown: #605443;
// used for gallery & thumbs
--thumb-bg: var(--body-light);
--thumb-caption-bg: var(--body-mid);
// for sourceeditor - CodeMirror and WikiEditor's that are only available on
// desktop are also here to not fragment the vars across many files
--sourceeditor-input-background: @white;
--sourceeditor-background: var(--body-light);
--sourceeditor-background-secondary: var(--body-light); // used on .editOptions
--sourceeditor-border: var(--body-mid);
--codemirror-gutter-background: var(--body-mid);
}
// ===== Imports =====
// include fonts first
@import '@{common}/mixins.less';
@import '@{common}/fonts.less'; // Font definitions and font stack definitions
@import '@{common}/variables.less'; // Less variables
@import '@{common}/elements.less'; // HTML elements
@import '@{common}/links.less'; // Link colours
// Interface
@import '@{common}/interface.less'; // MW common elements
@import '@{common}/wikitables.less'; // .wikitable class and etc
@import '@{common}/diff.less'; // Revision differences
@import '@{common}/notifications.less';
@import '@{common}/pagepreviews.less'; // Page preview popups
@import '@{common}/smw.less'; // Semantic MediaWiki
@import '@{common}/tabber.less'; // <tabber>
@import '@{common}/ooui.less'; // OOUI Customisations
@import '@{common}/visualeditor.less'; // VisualEditor
// Templates
@import '@{common}/templates.less'; // Various templates
@import '@{common}/infobox.less'; // Infobox vars
@import '@{common}/references.less'; // <references>
// Page specific
@import '@{common}/mainpage.less'; // Main page
@import '@{common}/prefs.less'; // Wiki preferences theming
@import '@{common}/specials.less'; // Special pages
// ===== Miscellaneous =====
// hide certain links in sidebar tools
#t-print,
#t-permalink {
display: none;
}
#filetoc {
border-radius: @border-radius;
background: @BODY_MID;
border-color: transparent;
margin: 0.5em auto;
text-align: center;
box-shadow: @box-shadow;
}
// Galleries
li.gallerybox div.thumb {
border: none;
background-color: var(--thumb-bg);
}
.smwfact {
display: none;
}
// applies to mobile talk pages, and smw??
.list-header {
background-color: var(--body-mid);
color: inherit;
}
// Source editor w/o syntaxhighlight; also applies to mobile in case JS is
// turned off
.editOptions {
color: var(--text-color);
background-color: var(--sourceeditor-background-secondary);
border-color: var(--sourceeditor-border);
}
// .json pages
.mw-json {
th,
td {
border-color: var(--wikitable-border);
}
// instead of selecting `tr`, do this to avoid dealing with mw-json-* classes
td {
background: var(--wikitable-bg);
}
th {
background: var(--wikitable-header-bg);
}
}
9d73f797bd1dd3bfbbaa853bd1a1cd2939279ce6
79
61
2024-03-22T03:17:29Z
Jayden
3
less
less
/* =============================================================================
* This is the root Less file that is parsed to produce [[MediaWiki:Common.css]].
*
* These styles will be applied to all skins (desktop and mobile).
* -----------------------------------------------------------------------------
* Less documentation: <http://lesscss.org/features/>
* Gadget: <https://meta.weirdgloop.org/w/MediaWiki:Gadget-Less.js>
* Core Less JS: <https://meta.weirdgloop.org/w/MediaWiki:Gadget-Less-core.js>
* Non-standard mixins: <https://meta.weirdgloop.org/w/MediaWiki:Gadget-LessMixins.less>
* Online Less tester: <https://lesscss.org/less-preview/>
* ============================================================================= */
// ===== CSS Variables =====
@common: 'MediaWiki:Common.less';
:root {
--body-main: #e2dbc8;
--body-light: #d8ccb4;
--body-mid: #d0bd97;
--body-dark: #b8a282;
--body-border: #94866d;
--body-background-color: #513e36;
--button-background: #605443;
--button-color: @white;
--button-border: #3c352a;
--button-dark: #18140c;
--button-light: #3a301d;
--sidebar: #cfc08d;
--background-text-color: #e2dbc8;
--background-link-color: #e2bd8a;
--search-box: #efeee6;
--link-color: #936039;
--redlink-color: #ba0000;
--text-color: @black;
--byline-color: @tundora;
--subtle-color: @boulder;
--admin-blue: #332e75;
--bearcat-green: #13592e;
--awb-purple: #933b96;
--rsw-blue: #438ab6;
--osrsw-brown: #605443;
// used for gallery & thumbs
--thumb-bg: var(--body-light);
--thumb-caption-bg: var(--body-mid);
// for sourceeditor - CodeMirror and WikiEditor's that are only available on
// desktop are also here to not fragment the vars across many files
--sourceeditor-input-background: @white;
--sourceeditor-background: var(--body-light);
--sourceeditor-background-secondary: var(--body-light); // used on .editOptions
--sourceeditor-border: var(--body-mid);
--codemirror-gutter-background: var(--body-mid);
}
// ===== Imports =====
// include fonts first
@import '@{common}/mixins.less';
@import '@{common}/fonts.less'; // Font definitions and font stack definitions
@import '@{common}/variables.less'; // Less variables
@import '@{common}/elements.less'; // HTML elements
@import '@{common}/links.less'; // Link colours
// Interface
@import '@{common}/interface.less'; // MW common elements
@import '@{common}/wikitables.less'; // .wikitable class and etc
@import '@{common}/diff.less'; // Revision differences
@import '@{common}/notifications.less';
@import '@{common}/pagepreviews.less'; // Page preview popups
@import '@{common}/smw.less'; // Semantic MediaWiki
@import '@{common}/tabber.less'; // <tabber>
@import '@{common}/ooui.less'; // OOUI Customisations
@import '@{common}/visualeditor.less'; // VisualEditor
// Templates
@import '@{common}/templates.less'; // Various templates
@import '@{common}/infobox.less'; // Infobox vars
@import '@{common}/references.less'; // <references>
// Page specific
@import '@{common}/tiles.less'; // Main page tiles
@import '@{common}/mainpage.less'; // Main page
@import '@{common}/prefs.less'; // Wiki preferences theming
@import '@{common}/specials.less'; // Special pages
// ===== Miscellaneous =====
// hide certain links in sidebar tools
#t-print,
#t-permalink {
display: none;
}
#filetoc {
border-radius: @border-radius;
background: @BODY_MID;
border-color: transparent;
margin: 0.5em auto;
text-align: center;
box-shadow: @box-shadow;
}
// Galleries
li.gallerybox div.thumb {
border: none;
background-color: var(--thumb-bg);
}
.smwfact {
display: none;
}
// applies to mobile talk pages, and smw??
.list-header {
background-color: var(--body-mid);
color: inherit;
}
// Source editor w/o syntaxhighlight; also applies to mobile in case JS is
// turned off
.editOptions {
color: var(--text-color);
background-color: var(--sourceeditor-background-secondary);
border-color: var(--sourceeditor-border);
}
// .json pages
.mw-json {
th,
td {
border-color: var(--wikitable-border);
}
// instead of selecting `tr`, do this to avoid dealing with mw-json-* classes
td {
background: var(--wikitable-bg);
}
th {
background: var(--wikitable-header-bg);
}
}
85cbc02b921ff40958ebb0849587409d370c0f3b
100
79
2024-03-22T04:11:42Z
Jayden
3
less
less
/* =============================================================================
* This is the root Less file that is parsed to produce [[MediaWiki:Common.css]].
*
* These styles will be applied to all skins (desktop and mobile).
* -----------------------------------------------------------------------------
* Less documentation: <http://lesscss.org/features/>
* Gadget: <https://meta.weirdgloop.org/w/MediaWiki:Gadget-Less.js>
* Core Less JS: <https://meta.weirdgloop.org/w/MediaWiki:Gadget-Less-core.js>
* Non-standard mixins: <https://meta.weirdgloop.org/w/MediaWiki:Gadget-LessMixins.less>
* Online Less tester: <https://lesscss.org/less-preview/>
* ============================================================================= */
// ===== CSS Variables =====
@common: 'MediaWiki:Common.less';
:root {
--body-main: #feffff;
--body-light: #d8ccb4;
--body-mid: #d0bd97;
--body-dark: #b8a282;
--body-border: #94866d;
--body-background-color: #513e36;
--button-background: #605443;
--button-color: @white;
--button-border: #3c352a;
--button-dark: #18140c;
--button-light: #3a301d;
--sidebar: #cfc08d;
--background-text-color: #e2dbc8;
--background-link-color: #e2bd8a;
--search-box: #efeee6;
--link-color: #936039;
--redlink-color: #ba0000;
--text-color: @black;
--byline-color: @tundora;
--subtle-color: @boulder;
--admin-blue: #332e75;
--bearcat-green: #13592e;
--awb-purple: #933b96;
--rsw-blue: #438ab6;
--osrsw-brown: #605443;
// used for gallery & thumbs
--thumb-bg: var(--body-light);
--thumb-caption-bg: var(--body-mid);
// for sourceeditor - CodeMirror and WikiEditor's that are only available on
// desktop are also here to not fragment the vars across many files
--sourceeditor-input-background: @white;
--sourceeditor-background: var(--body-light);
--sourceeditor-background-secondary: var(--body-light); // used on .editOptions
--sourceeditor-border: var(--body-mid);
--codemirror-gutter-background: var(--body-mid);
}
// ===== Imports =====
// include fonts first
@import '@{common}/mixins.less';
@import '@{common}/fonts.less'; // Font definitions and font stack definitions
@import '@{common}/variables.less'; // Less variables
@import '@{common}/elements.less'; // HTML elements
@import '@{common}/links.less'; // Link colours
// Interface
@import '@{common}/interface.less'; // MW common elements
@import '@{common}/wikitables.less'; // .wikitable class and etc
@import '@{common}/diff.less'; // Revision differences
@import '@{common}/notifications.less';
@import '@{common}/pagepreviews.less'; // Page preview popups
@import '@{common}/smw.less'; // Semantic MediaWiki
@import '@{common}/tabber.less'; // <tabber>
@import '@{common}/ooui.less'; // OOUI Customisations
@import '@{common}/visualeditor.less'; // VisualEditor
// Templates
@import '@{common}/templates.less'; // Various templates
@import '@{common}/infobox.less'; // Infobox vars
@import '@{common}/references.less'; // <references>
// Page specific
@import '@{common}/tiles.less'; // Main page tiles
@import '@{common}/mainpage.less'; // Main page
@import '@{common}/prefs.less'; // Wiki preferences theming
@import '@{common}/specials.less'; // Special pages
// ===== Miscellaneous =====
// hide certain links in sidebar tools
#t-print,
#t-permalink {
display: none;
}
#filetoc {
border-radius: @border-radius;
background: @BODY_MID;
border-color: transparent;
margin: 0.5em auto;
text-align: center;
box-shadow: @box-shadow;
}
// Galleries
li.gallerybox div.thumb {
border: none;
background-color: var(--thumb-bg);
}
.smwfact {
display: none;
}
// applies to mobile talk pages, and smw??
.list-header {
background-color: var(--body-mid);
color: inherit;
}
// Source editor w/o syntaxhighlight; also applies to mobile in case JS is
// turned off
.editOptions {
color: var(--text-color);
background-color: var(--sourceeditor-background-secondary);
border-color: var(--sourceeditor-border);
}
// .json pages
.mw-json {
th,
td {
border-color: var(--wikitable-border);
}
// instead of selecting `tr`, do this to avoid dealing with mw-json-* classes
td {
background: var(--wikitable-bg);
}
th {
background: var(--wikitable-header-bg);
}
}
3c4ba158e5ea13f763f487a87b4313eb7d065e70
101
100
2024-03-22T04:12:53Z
Jayden
3
less
less
/* =============================================================================
* This is the root Less file that is parsed to produce [[MediaWiki:Common.css]].
*
* These styles will be applied to all skins (desktop and mobile).
* -----------------------------------------------------------------------------
* Less documentation: <http://lesscss.org/features/>
* Gadget: <https://meta.weirdgloop.org/w/MediaWiki:Gadget-Less.js>
* Core Less JS: <https://meta.weirdgloop.org/w/MediaWiki:Gadget-Less-core.js>
* Non-standard mixins: <https://meta.weirdgloop.org/w/MediaWiki:Gadget-LessMixins.less>
* Online Less tester: <https://lesscss.org/less-preview/>
* ============================================================================= */
// ===== CSS Variables =====
@common: 'MediaWiki:Common.less';
:root {
--body-main: #feffff;
--body-light: #d8ccb4;
--body-mid: #d0bd97;
--body-dark: #b8a282;
--body-border: #94866d;
--body-background-color: #173a4d;
--button-background: #605443;
--button-color: @white;
--button-border: #3c352a;
--button-dark: #18140c;
--button-light: #3a301d;
--sidebar: #cfc08d;
--background-text-color: #e2dbc8;
--background-link-color: #e2bd8a;
--search-box: #efeee6;
--link-color: #936039;
--redlink-color: #ba0000;
--text-color: @black;
--byline-color: @tundora;
--subtle-color: @boulder;
--admin-blue: #332e75;
--bearcat-green: #13592e;
--awb-purple: #933b96;
--rsw-blue: #438ab6;
--osrsw-brown: #605443;
// used for gallery & thumbs
--thumb-bg: var(--body-light);
--thumb-caption-bg: var(--body-mid);
// for sourceeditor - CodeMirror and WikiEditor's that are only available on
// desktop are also here to not fragment the vars across many files
--sourceeditor-input-background: @white;
--sourceeditor-background: var(--body-light);
--sourceeditor-background-secondary: var(--body-light); // used on .editOptions
--sourceeditor-border: var(--body-mid);
--codemirror-gutter-background: var(--body-mid);
}
// ===== Imports =====
// include fonts first
@import '@{common}/mixins.less';
@import '@{common}/fonts.less'; // Font definitions and font stack definitions
@import '@{common}/variables.less'; // Less variables
@import '@{common}/elements.less'; // HTML elements
@import '@{common}/links.less'; // Link colours
// Interface
@import '@{common}/interface.less'; // MW common elements
@import '@{common}/wikitables.less'; // .wikitable class and etc
@import '@{common}/diff.less'; // Revision differences
@import '@{common}/notifications.less';
@import '@{common}/pagepreviews.less'; // Page preview popups
@import '@{common}/smw.less'; // Semantic MediaWiki
@import '@{common}/tabber.less'; // <tabber>
@import '@{common}/ooui.less'; // OOUI Customisations
@import '@{common}/visualeditor.less'; // VisualEditor
// Templates
@import '@{common}/templates.less'; // Various templates
@import '@{common}/infobox.less'; // Infobox vars
@import '@{common}/references.less'; // <references>
// Page specific
@import '@{common}/tiles.less'; // Main page tiles
@import '@{common}/mainpage.less'; // Main page
@import '@{common}/prefs.less'; // Wiki preferences theming
@import '@{common}/specials.less'; // Special pages
// ===== Miscellaneous =====
// hide certain links in sidebar tools
#t-print,
#t-permalink {
display: none;
}
#filetoc {
border-radius: @border-radius;
background: @BODY_MID;
border-color: transparent;
margin: 0.5em auto;
text-align: center;
box-shadow: @box-shadow;
}
// Galleries
li.gallerybox div.thumb {
border: none;
background-color: var(--thumb-bg);
}
.smwfact {
display: none;
}
// applies to mobile talk pages, and smw??
.list-header {
background-color: var(--body-mid);
color: inherit;
}
// Source editor w/o syntaxhighlight; also applies to mobile in case JS is
// turned off
.editOptions {
color: var(--text-color);
background-color: var(--sourceeditor-background-secondary);
border-color: var(--sourceeditor-border);
}
// .json pages
.mw-json {
th,
td {
border-color: var(--wikitable-border);
}
// instead of selecting `tr`, do this to avoid dealing with mw-json-* classes
td {
background: var(--wikitable-bg);
}
th {
background: var(--wikitable-header-bg);
}
}
7cc218c28d59ebdb20c50cb1e0cbbfbcdb1927e6
MediaWiki:Common.css
8
30
57
40
2024-03-22T02:50:53Z
Jayden
3
Updating CSS from [[MediaWiki:Common.less]]
css
text/css
/* <pre> */
:root {
--body-main: #e2dbc8;
--body-light: #d8ccb4;
--body-mid: #d0bd97;
--body-dark: #b8a282;
--body-border: #94866d;
--body-background-color: #513e36;
--button-background: #605443;
--button-color: #fff;
--button-border: #3c352a;
--button-dark: #18140c;
--button-light: #3a301d;
--sidebar: #cfc08d;
--background-text-color: #444;
--background-link-color: #52351e;
--search-box: #efeee6;
--link-color: #936039;
--redlink-color: #ba0000;
--text-color: #000;
--byline-color: #4c4c4c;
--subtle-color: #777;
--admin-blue: #332e75;
--bearcat-green: #13592e;
--awb-purple: #933b96;
--rsw-blue: #438ab6;
--osrsw-brown: #605443;
--thumb-bg: var(--body-light);
--thumb-caption-bg: var(--body-mid);
--sourceeditor-input-background: #fff;
--sourceeditor-background: var(--body-light);
--sourceeditor-background-secondary: var(--body-light);
--sourceeditor-border: var(--body-mid);
--codemirror-gutter-background: var(--body-mid);
}
@font-face {
font-family: 'Lora';
font-weight: 400 700;
font-style: normal;
font-display: swap;
src: url('filepath://Lora.woff2') format('woff2');
}
@font-face {
font-family: 'Lora';
font-weight: 400 700;
font-style: italic;
font-display: swap;
src: url('filepath://Lora-Italic.woff2') format('woff2');
}
:root {
--base-text-color: #36414f;
--base-heading-color: #444e5a;
--base-heading-border: #e4eaee;
--mw-code-background-color: #ddd4bb;
--body-background-image: url('filepath://Wiki_background.jpg');
}
#mw-page-base {
background: none;
}
.mw-body {
background-color: var(--body-main);
color: var(--text-color);
border-color: transparent;
box-shadow: 0 0 7px rgba(0, 0, 0, 0.15);
margin-top: 0;
}
h1,
h2,
h3,
h4,
h5,
h6 {
color: var(--text-color);
}
h1,
h2 {
border-color: var(--sidebar);
}
.mw-body h1,
.mw-body-content h1,
.mw-body-content h2,
.mw-body-content h3,
.mw-body-content h4,
.mw-body-content h5,
.mw-body-content h6 {
font-family: 'Lora', 'Palatino', 'Georgia', serif;
}
.mw-parser-output h2:first-of-type {
clear: left;
}
.mw-footer {
color: var(--background-text-color);
}
.mw-footer li {
color: var(--background-text-color);
}
.mw-footer a,
.mw-footer a:active,
.mw-footer a:visited {
color: var(--background-link-color);
}
::placeholder {
color: var(--subtle-color);
}
a {
color: var(--link-color);
}
a:visited,
a:active {
color: var(--link-color);
}
a.new {
color: var(--redlink-color);
}
a.new:visited {
color: var(--redlink-color);
}
.mw-parser-output a.extiw,
.mw-parser-output a.external {
color: var(--link-color);
}
.mw-parser-output a.extiw:visited,
.mw-parser-output a.external:visited,
.mw-parser-output a.extiw:active,
.mw-parser-output a.external:active {
color: var(--link-color);
}
.jsPurgeLink a.external {
color: var(--link-color);
}
:root {
--errorbox-bg: #feecea;
--errorbox-border: #ee4231;
--warningbox-bg: #fef9de;
--warningbox-border: #f9d000;
--successbox-bg: #ecf8e3;
--successbox-border: #6bc71f;
}
.mw-message-box-error,
.errorbox,
.mw-message-box-warning,
.warningbox,
.mw-message-box-success,
.successbox,
.usermessage {
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
}
.mw-message-box-error,
.errorbox {
background-color: var(--errorbox-bg);
border-color: var(--errorbox-border);
}
.mw-message-box-warning,
.warningbox,
.usermessage {
background-color: var(--warningbox-bg);
border-color: var(--warningbox-border);
}
.mw-message-box-success,
.successbox {
background-color: var(--successbox-bg);
border-color: var(--successbox-border);
}
.catlinks {
background: var(--body-light);
border: 1px solid var(--body-dark);
padding: 8px 15px;
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
}
.catlinks li {
border-color: var(--body-mid);
}
.filehistory a img,
#file img {
background: url("data:image/svg+xml,%3C%3Fxml version='1.0' encoding='UTF-8'%3F%3E%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16'%3E%3Cpath d='M0 0h8v16h8V8H0z' opacity='.13'/%3E%3C/svg%3E") repeat;
}
#file img:hover {
background: none;
}
.mw-highlight {
background: none;
}
.mw-highlight .linenos {
background-color: var(--mw-code-background-color);
color: var(--byline-color);
}
.mw-highlight a:hover .linenos,
.mw-highlight .hll a .linenos {
color: var(--text-color);
}
.mw-content-ltr.mw-highlight-lines pre,
.mw-content-ltr.content .mw-highlight-lines pre {
box-shadow: inset 2.75em 0 0 var(--mw-code-background-color);
}
#pagehistory ul {
list-style: none;
margin: 0;
}
#pagehistory li {
border: 1px solid transparent;
padding: 1px 10px;
margin: 2px 0;
}
#pagehistory li.selected {
background-color: var(--body-light);
color: inherit;
border: 1px dashed var(--body-border);
outline: none;
}
#mw-history-compare > div:first-of-type {
position: -webkit-sticky;
position: sticky;
top: 0;
background-color: var(--body-main);
border-bottom: 1px solid var(--body-dark);
padding: 0.25em 0;
}
.wgl-stickyheader #mw-history-compare > div:first-of-type {
top: 2.5rem;
}
.autocomment,
.autocomment a,
.autocomment a:visited {
color: var(--link-color);
}
li span.deleted,
span.history-deleted {
color: var(--byline-color);
}
.mw-usertoollinks-contribs-no-edits,
.mw-usertoollinks-contribs-no-edits:visited {
color: var(--redlink-color);
}
.CategoryTreeToggle {
color: var(--link-color);
}
body.wgl-stickyheader.action-view .mw-headline:target::before {
display: block;
content: '';
margin-top: -3rem;
height: 3rem;
visibility: hidden;
pointer-events: none;
}
.mw-mmv-post-image {
color: var(--text-color);
background-color: var(--body-main);
}
.mw-mmv-image-metadata {
border-top-color: var(--body-mid);
background-color: var(--body-light);
}
.mw-mmv-dialog,
.mw-mmv-dialog .mw-mmv-dialog-down-arrow,
.mw-mmv-options-dialog .mw-mmv-dialog-down-arrow {
background-color: var(--body-light);
box-shadow: none;
}
.mw-mmv-options-enable-alert {
background-color: var(--body-light);
color: var(--text-color);
}
.mw-mmv-options-dialog-header,
.mw-mmv-options-text-header,
.mw-mmv-options-text-body,
.mw-mmv-options-enable-alert,
.mw-mmv-options-dialog .mw-mmv-disable-confirmation .mw-mmv-options-dialog-header,
.mw-mmv-options-dialog .mw-mmv-disable-confirmation .mw-mmv-options-text-header {
color: var(--text-color);
}
.mw-revslider-container {
border-color: var(--sidebar);
}
.mw-revslider-slider-wrapper {
border-top-color: var(--sidebar);
}
.mw-ui-button {
background-color: var(--ooui-normal);
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
}
.mw-ui-button:not(:disabled):hover,
.mw-ui-button:not(:disabled):active {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
}
.mw-ui-button:not(:disabled):focus {
color: var(--ooui-text);
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent), inset 0 0 0 2px #fff;
}
.mw-ui-button:not(:disabled):visited {
color: var(--ooui-text);
}
.mw-ui-button.mw-ui-progressive:not(:disabled) {
background-color: var(--ooui-progressive);
color: #fff;
border-color: var(--ooui-progressive);
}
.mw-ui-button.mw-ui-progressive:not(:disabled):hover {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
}
.mw-ui-button.mw-ui-progressive:not(:disabled):focus {
box-shadow: inset 0 0 0 1px var(--ooui-accent), inset 0 0 0 2px #fff;
}
.mw-ui-button.mw-ui-progressive:not(:disabled):active,
.mw-ui-button.mw-ui-progressive:not(:disabled).is-on {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
box-shadow: none;
}
.mw-ui-button.mw-ui-destructive:not( :disabled ) {
color: #fff;
}
.mw-ui-button.mw-ui-quiet,
.mw-ui-button.mw-ui-quiet.mw-ui-progressive,
.mw-ui-button.mw-ui-quiet.mw-ui-destructive {
color: var(--text-color);
}
input[type='checkbox']:hover + .mw-ui-button.mw-ui-quiet,
input[type='checkbox']:hover + .mw-ui-button.mw-ui-quiet.mw-ui-progressive,
input[type='checkbox']:hover + .mw-ui-button.mw-ui-quiet.mw-ui-destructive,
.mw-ui-button.mw-ui-quiet:hover,
.mw-ui-button.mw-ui-quiet.mw-ui-progressive:hover,
.mw-ui-button.mw-ui-quiet.mw-ui-destructive:hover {
background-color: rgba(0, 24, 73, 0.02745098);
color: var(--text-color);
border-color: transparent;
}
input[type='checkbox']:focus + .mw-ui-button.mw-ui-quiet,
input[type='checkbox']:focus + .mw-ui-button.mw-ui-quiet.mw-ui-progressive,
input[type='checkbox']:focus + .mw-ui-button.mw-ui-quiet.mw-ui-destructive,
.mw-ui-button.mw-ui-quiet:focus,
.mw-ui-button.mw-ui-quiet.mw-ui-progressive:focus,
.mw-ui-button.mw-ui-quiet.mw-ui-destructive:focus {
color: var(--text-color);
}
input[type='checkbox']:active + .mw-ui-button.mw-ui-quiet,
input[type='checkbox']:active + .mw-ui-button.mw-ui-quiet.mw-ui-progressive,
input[type='checkbox']:active + .mw-ui-button.mw-ui-quiet.mw-ui-destructive,
.mw-ui-button.mw-ui-quiet:active,
.mw-ui-button.mw-ui-quiet.mw-ui-progressive:active,
.mw-ui-button.mw-ui-quiet.mw-ui-destructive:active {
background-color: rgba(0, 36, 73, 0.08235294);
color: var(--text-color);
border-color: #72777d;
}
.mw-ui-input {
background-color: var(--ooui-input);
color: var(--text-color);
border-color: var(--ooui-input-border);
}
.mw-ui-input:hover {
border-color: var(--ooui-input-border--hover);
}
.mw-ui-input::placeholder {
color: var(--byline-color);
}
.mw-content-ltr .redirectText li:first-child {
padding: 0;
background: 0;
}
.mw-content-ltr .redirectText li:first-child::before {
content: '';
background: currentcolor;
-webkit-mask: url("filepath://Redirect-arrow.svg") no-repeat 50% 50% / contain;
mask: url("filepath://Redirect-arrow.svg") no-repeat 50% 50% / contain;
display: inline-block;
width: 47px;
height: 20px;
}
:root {
--wikitable-header-bg: var(--body-dark);
--wikitable-border: var(--body-border);
--wikitable-bg: var(--body-light);
--wikitable-bg-lighter: #e9e3d6;
--wikitable-color: var(--text-color);
--table-na-background: rgba(255, 255, 255, 0.3);
--table-na-color: var(--subtle-color);
--table-yes-background: #c3e8a3;
--table-yes-color: #2e5e05;
--table-no-background: #fbc0ba;
--table-no-color: #801c13;
--table-maybe-background: #fcea94;
--table-maybe-color: #786300;
}
.wikitable {
background: var(--wikitable-bg);
color: var(--wikitable-color);
border-color: var(--wikitable-border);
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
}
.wikitable > tr > th,
.wikitable > tr > td,
.wikitable > * > tr > th,
.wikitable > * > tr > td {
border-color: var(--wikitable-border);
}
.wikitable > tr > th.table-noborder,
.wikitable > tr > td.table-noborder,
.wikitable > * > tr > th.table-noborder,
.wikitable > * > tr > td.table-noborder {
border-left-style: hidden;
border-right-style: hidden;
padding-left: 0;
padding-right: 0;
}
.wikitable > tr > th,
.wikitable > * > tr > th {
background-color: var(--wikitable-header-bg);
}
.tabber .wikitable {
box-shadow: none;
}
.mw_metadata td,
.mw_metadata th {
border-color: var(--wikitable-border);
}
.mw_metadata th {
background-color: var(--wikitable-header-bg);
}
.mw_metadata td {
background-color: var(--wikitable-bg);
}
.mw-datatable {
border-color: var(--wikitable-border);
}
.mw-datatable td,
.mw-datatable th {
border-color: var(--wikitable-border);
}
.mw-datatable th {
background-color: var(--wikitable-header-bg);
}
.mw-datatable td {
background-color: var(--wikitable-bg);
}
.mw-datatable tr:hover td {
background-color: var(--wikitable-bg);
}
table.alternating-rows tr:nth-child(odd),
table.alternating-cols td:nth-child(odd) {
background: var(--wikitable-alternating-bg);
}
.table-na {
background: var(--table-na-background);
color: var(--table-na-color);
vertical-align: middle;
text-align: center;
}
.table-yes {
background: var(--table-yes-background);
color: var(--table-yes-color);
}
.table-positive {
background: var(--table-yes-background);
}
.table-no {
background: var(--table-no-background);
color: var(--table-no-color);
}
.table-negative {
background: var(--table-no-background);
}
.table-maybe {
background: var(--table-maybe-background);
color: var(--table-maybe-color);
}
#mw-allmessagestable .am_actual,
#mw-allmessagestable .am_default {
background-color: var(--wikitable-bg);
}
#mw-allmessagestable .am_default:hover,
#mw-allmessagestable .am_actual:hover,
#mw-allmessagestable tbody:hover td {
background-color: var(--wikitable-bg-lighter);
}
table.wikitable td.no-cell-spacing {
padding: 0;
height: 0;
}
table.wikitable td.no-cell-spacing table {
margin: -1px;
width: calc(100% + 2px);
height: calc(100% + 2px);
}
.plainlist ol,
.plainlist ul {
margin: 0;
}
.plainlist li {
margin-bottom: 0;
list-style: none;
}
table.align-right-1 td:nth-of-type(1),
table.align-right-2 td:nth-of-type(2),
table.align-right-3 td:nth-of-type(3),
table.align-right-4 td:nth-of-type(4),
table.align-right-5 td:nth-of-type(5),
table.align-right-6 td:nth-of-type(6),
table.align-right-7 td:nth-of-type(7),
table.align-right-8 td:nth-of-type(8),
table.align-right-9 td:nth-of-type(9),
table.align-right-10 td:nth-of-type(10),
table.align-right-11 td:nth-of-type(11),
table.align-right-12 td:nth-of-type(12),
table.align-right-13 td:nth-of-type(13),
table.align-right-14 td:nth-of-type(14),
table.align-right-15 td:nth-of-type(15),
table.align-right-16 td:nth-of-type(16),
table.align-right-17 td:nth-of-type(17),
table.align-right-18 td:nth-of-type(18),
table.align-right-19 td:nth-of-type(19),
table.align-right-20 td:nth-of-type(20) {
text-align: right;
}
table.align-center-1 td:nth-of-type(1),
table.align-center-2 td:nth-of-type(2),
table.align-center-3 td:nth-of-type(3),
table.align-center-4 td:nth-of-type(4),
table.align-center-5 td:nth-of-type(5),
table.align-center-6 td:nth-of-type(6),
table.align-center-7 td:nth-of-type(7),
table.align-center-8 td:nth-of-type(8),
table.align-center-9 td:nth-of-type(9),
table.align-center-10 td:nth-of-type(10),
table.align-center-11 td:nth-of-type(11),
table.align-center-12 td:nth-of-type(12),
table.align-center-13 td:nth-of-type(13),
table.align-center-14 td:nth-of-type(14),
table.align-center-15 td:nth-of-type(15),
table.align-center-16 td:nth-of-type(16),
table.align-center-17 td:nth-of-type(17),
table.align-center-18 td:nth-of-type(18),
table.align-center-19 td:nth-of-type(19),
table.align-center-20 td:nth-of-type(20) {
text-align: center;
}
table.align-left-1 td:nth-of-type(1),
table.align-left-2 td:nth-of-type(2),
table.align-left-3 td:nth-of-type(3),
table.align-left-4 td:nth-of-type(4),
table.align-left-5 td:nth-of-type(5),
table.align-left-6 td:nth-of-type(6),
table.align-left-7 td:nth-of-type(7),
table.align-left-8 td:nth-of-type(8),
table.align-left-9 td:nth-of-type(9),
table.align-left-10 td:nth-of-type(10),
table.align-left-11 td:nth-of-type(11),
table.align-left-12 td:nth-of-type(12),
table.align-left-13 td:nth-of-type(13),
table.align-left-14 td:nth-of-type(14),
table.align-left-15 td:nth-of-type(15),
table.align-left-16 td:nth-of-type(16),
table.align-left-17 td:nth-of-type(17),
table.align-left-18 td:nth-of-type(18),
table.align-left-19 td:nth-of-type(19),
table.align-left-20 td:nth-of-type(20) {
text-align: left;
}
:root {
--diff-addedline-border-color: #438ab5;
--diff-addedline-background: #bddff2;
--diff-addedline-color: #000;
--diff-deletedline-border-color: #379541;
--diff-deletedline-background: #c1edbf;
--diff-deletedline-color: #000;
--diff-context-border-color: var(--body-mid);
--diff-context-background: var(--body-mid);
}
.diff-context {
border-color: var(--diff-context-border-color);
background: var(--diff-context-background);
color: inherit;
}
.diff-addedline {
border-color: var(--diff-addedline-border-color);
}
.diff-addedline .diffchange {
background: var(--diff-addedline-background);
color: var(--diff-addedline-color);
}
.diff-deletedline {
border-color: var(--diff-deletedline-border-color);
}
.diff-deletedline .diffchange {
background: var(--diff-deletedline-background);
color: var(--diff-deletedline-color);
}
.mw-diff-movedpara-left:after,
.mw-diff-movedpara-right:after {
color: var(--text-color);
}
.mw-notification {
background-color: var(--body-light);
border-color: var(--body-border);
color: var(--text-color);
}
.mw-echo-ui-notificationsInboxWidget-toolbarWrapper {
background: var(--body-main);
}
.mw-body-content .mw-echo-ui-datedSubGroupListWidget-title-secondary {
color: var(--byline-color);
}
.mw-echo-ui-pageNotificationsOptionWidget.oo-ui-optionWidget-selected {
background-color: var(--ooui-normal);
color: var(--ooui-accent);
}
.mw-echo-ui-pageNotificationsOptionWidget-label-count {
background-color: var(--ooui-normal);
color: var(--byline-color);
}
.oo-ui-optionWidget-selected .mw-echo-ui-pageNotificationsOptionWidget-label-count {
color: var(--ooui-accent);
}
.mw-echo-ui-pageNotificationsOptionWidget.oo-ui-optionWidget-highlighted {
background-color: var(--ooui-normal);
color: var(--text-color);
}
.mw-echo-ui-crossWikiUnreadFilterWidget {
border-color: var(--body-border);
}
.mw-echo-ui-crossWikiUnreadFilterWidget-subtitle {
color: var(--byline-color);
}
.mw-echo-ui-notificationBadgeButtonPopupWidget-popup > .oo-ui-popupWidget-popup > .oo-ui-popupWidget-head,
.mw-echo-ui-notificationBadgeButtonPopupWidget-popup > .oo-ui-popupWidget-popup > .oo-ui-popupWidget-footer {
border-color: var(--ooui-interface-border);
}
.mw-echo-ui-notificationBadgeButtonPopupWidget-popup > .oo-ui-popupWidget-popup > .oo-ui-popupWidget-footer .mw-echo-ui-notificationBadgeButtonPopupWidget-footer-buttons .oo-ui-buttonElement:last-child {
border-left-color: var(--ooui-normal-border);
}
.mw-echo-ui-notificationItemWidget {
background-color: var(--ooui-normal);
border-color: var(--ooui-normal-border);
}
.mw-echo-ui-notificationItemWidget:hover,
.mw-echo-ui-notificationItemWidget-unread:hover {
background-color: var(--ooui-normal--hover);
}
.mw-echo-ui-notificationItemWidget:last-child {
border-bottom-color: var(--ooui-normal-border);
}
.mw-echo-ui-notificationItemWidget-unread {
background-color: var(--search-box);
}
.mw-echo-ui-crossWikiNotificationItemWidget-group,
.mw-echo-ui-bundleNotificationItemWidget-group {
background-color: var(--ooui-interface);
}
.mw-echo-ui-toggleReadCircleButtonWidget-circle {
background-color: var(--ooui-progressive);
}
.mw-echo-ui-toggleReadCircleButtonWidget:hover .mw-echo-ui-toggleReadCircleButtonWidget-circle {
background-color: var(--ooui-progressive--hover);
}
.mw-echo-ui-toggleReadCircleButtonWidget-circle-unread {
background-color: var(--ooui-normal);
border-color: var(--ooui-normal-border);
}
.mw-echo-ui-notificationItemWidget-content-message-header,
.mw-echo-ui-notificationItemWidget-content-message-body,
.mw-echo-ui-menuItemWidget > .oo-ui-buttonElement-button > .oo-ui-labelElement-label,
.mw-echo-ui-notificationItemWidget-content-actions-timestamp {
color: var(--ooui-text);
}
.mw-echo-ui-bundleNotificationItemWidget-group {
background-color: var(--body-main);
}
@keyframes unseen-fadeout-to-unread {
from {
background-color: var(--wikitable-bg-lighter);
}
to {
background-color: var(--search-box);
}
}
@keyframes unseen-fadeout-to-read {
from {
background-color: var(--wikitable-bg-lighter);
}
to {
background-color: var(--body-main);
}
}
.mwe-popups {
background: var(--body-light);
}
.mwe-popups .mwe-popups-container {
color: var(--text-color);
background: var(--body-light);
}
.mwe-popups .mwe-popups-container.flipped-x-y:before,
.mwe-popups .mwe-popups-container.flipped-y:before {
border-top: none;
}
.mwe-popups .mwe-popups-container.mwe-popups-no-image-tri:before {
border-bottom: none;
}
.mwe-popups .mwe-popups-container.flipped-x-y:after,
.mwe-popups .mwe-popups-container.flipped-y:after {
border-top-color: var(--body-light);
}
.mwe-popups .mwe-popups-container.mwe-popups-no-image-tri:after {
border-bottom-color: var(--body-light);
}
.mwe-popups .mwe-popups-settings-icon:hover,
.mwe-popups .mwe-popups-settings-icon:active {
background-color: var(--ooui-normal--hover);
}
.mwe-popups .mw-ui-icon-element:not(.disabled):hover {
background: none;
}
.mwe-popups .mwe-popups-extract {
color: var(--text-color);
}
.mwe-popups .mwe-popups-extract[dir='ltr']:after {
background-image: linear-gradient(to right, rgba(49, 62, 89, 0), var(--body-light) 50%);
}
.mwe-popups-overlay {
background-color: var(--ooui-window-background);
}
#mwe-popups-settings {
background: var(--ooui-interface);
border-color: var(--ooui-interface-border);
color: var(--text-color);
}
#mwe-popups-settings header {
border-color: var(--ooui-interface-border);
}
#mwe-popups-settings main#mwe-popups-settings-form p {
color: var(--byline-color);
}
#mwe-popups-settings main#mwe-popups-settings-form form label > span {
color: var(--ooui-text);
}
:root {
--smw-ask-options-even-bg: var(--body-mid);
--smw-ask-options-odd-bg: var(--body-light);
--smw-ask-action-btn-lblue-bg: var(--body-main);
--smw-ask-action-btn-lblue-color: #000;
--smw-ask-action-btn-lblue-border-color: var(--body-light);
--smw-ask-action-btn-dblue-bg: var(--body-light);
--smw-ask-action-btn-dblue-color: #fff;
--smw-ask-action-btn-dblue-border-color: var(--button-border);
}
.smw-ask-condition fieldset,
.smw-ask-printhead fieldset {
border-color: var(--sidebar);
}
.smw-ask-search fieldset,
.smw-ask-format fieldset,
.smw-ask-options fieldset {
border-color: var(--sidebar);
}
.strike > span:before,
.strike > span:after {
background: var(--sidebar);
}
.smw-ask-options-fields tr td {
background-color: var(--smw-ask-options-even-bg);
}
.smw-ask-options-fields tr:nth-child(odd) td {
background-color: var(--smw-ask-options-odd-bg);
}
.smw-ask-action-btn.smw-ask-action-btn-lblue,
.smw-ask-action-btn.smw-ask-action-btn-lblue:hover,
.smw-ask-action-btn.smw-ask-action-btn-lblue:visited {
background-color: var(--smw-ask-action-btn-lblue-bg);
color: var(--smw-ask-action-btn-lblue-color);
border-color: var(--smw-ask-action-btn-lblue-border-color);
}
.smw-ask-action-btn.smw-ask-action-btn-dblue,
.smw-ask-action-btn.smw-ask-action-btn-dblue:hover,
.smw-ask-action-btn.smw-ask-action-btn-dblue:visited {
background-color: var(--smw-ask-action-btn-dblue-bg);
color: var(--smw-ask-action-btn-dblue-color);
border-color: var(--smw-ask-action-btn-dblue-border-color);
}
.smw-ask-query textarea,
.smw-ask-actions textarea {
background-color: var(--ooui-interface);
border-color: var(--ooui-interface-border);
color: var(--ooui-text);
}
.smw-ask-query-format select {
background-color: var(--ooui-interface);
border: 1px solid var(--ooui-interface-border);
color: var(--ooui-text);
}
.smw-ask-toplinks {
background-color: var(--body-mid);
}
.smw-ask-toplinks span.smw-icon-info {
background: none;
padding: 0 !important;
}
.smw-ask-toplinks span.smw-icon-info::before {
content: '';
background: var(--text-color);
-webkit-mask: url("data:image/svg+xml,%3C%3Fxml version='1.0' encoding='UTF-8'%3F%3E%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 20 20'%3E%3Ctitle%3Einfo%3C/title%3E%3Cpath d='M10 0C4.477 0 0 4.477 0 10s4.477 10 10 10 10-4.477 10-10S15.523 0 10 0zM9 5h2v2H9zm0 4h2v6H9z'/%3E%3C/svg%3E") no-repeat 50% 50% / contain;
mask: url("data:image/svg+xml,%3C%3Fxml version='1.0' encoding='UTF-8'%3F%3E%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 20 20'%3E%3Ctitle%3Einfo%3C/title%3E%3Cpath d='M10 0C4.477 0 0 4.477 0 10s4.477 10 10 10 10-4.477 10-10S15.523 0 10 0zM9 5h2v2H9zm0 4h2v6H9z'/%3E%3C/svg%3E") no-repeat 50% 50% / contain;
padding: 0 0 3px 18px;
}
.smw-ask-options-row-odd {
background-color: var(--body-light);
}
.smw-ask-options-row-even {
background-color: var(--body-mid);
}
#options-toggle:not(:checked) + #options-list .options-parameter-list:after {
background-image: linear-gradient(to bottom, transparent, var(--body-mid) 90%);
}
.smw-ask-button-submit input {
background-color: var(--ooui-normal);
border-color: var(--ooui-normal-border);
color: var(--text-color);
}
.smw-ask-button-submit input:hover,
.smw-ask-button-lgrey:hover {
background-color: var(--ooui-normal--hover);
border-color: var(--ooui-normal-border);
}
input.smw-ask-action-btn.smw-ask-action-btn-dblue {
background-color: var(--ooui-normal);
border-color: var(--ooui-normal-border);
color: var(--ooui-text);
}
a.smw-ask-action-btn.smw-ask-action-btn-lblue {
background-color: var(--body-mid);
border-color: var(--body-mid);
color: var(--ooui-text);
}
a.smw-ask-action-btn.smw-ask-action-btn-lblue:visited {
background-color: var(--body-mid);
border-color: var(--body-mid);
color: var(--ooui-text);
}
a.smw-ask-action-btn.smw-ask-action-btn-lblue:hover {
background-color: var(--body-mid);
border-color: var(--body-mid);
color: var(--ooui-text);
}
a.smw-ask-action-btn-lgrey {
background-color: var(--ooui-normal);
border-color: var(--ooui-normal-border);
color: var(--ooui-text);
}
a.smw-ask-action-btn-lgrey:hover {
background-color: var(--ooui-normal--hover);
border-color: var(--ooui-normal-border);
color: var(--ooui-text);
}
.smw-callout-error {
background-color: var(--errorbox-bg);
border-color: var(--errorbox-border);
}
.smw-callout-info {
background-color: var(--body-light);
border-color: var(--body-dark);
}
.smw-callout-success {
background-color: var(--successbox-bg);
border-color: var(--successbox-border);
}
.smw-callout-warning {
background-color: var(--warningbox-bg);
border-color: var(--warningbox-bg);
}
.smw-tabs input.nav-tab:checked + label.nav-label,
.smw-tabs input.nav-tab:checked + label.nav-label:hover {
color: inherit;
}
#tab-smw-property-value:checked + label.nav-label .usage-count {
color: #fff;
background-color: var(--ooui-progressive);
}
#tab-smw-property-value:checked + label.nav-label .usage-count.moderate {
color: #fff;
background-color: #b55e0c;
border-color: #b55e0c;
}
#tab-smw-property-value:checked + label.nav-label .usage-count.high {
color: #fff;
background-color: #9f261e;
border-color: #9f261e;
}
.smw-property-page-results .header-title {
background-color: var(--ooui-interface);
border-bottom-color: var(--ooui-interface-border);
color: var(--ooui-text);
}
.smw-property-page-results .value-row:hover {
background-color: var(--ooui-normal--hover);
}
.smw-property-page-results .smw-table .header-row {
color: var(--text-color);
}
.tippy-tooltip.light-border-theme {
background-color: var(--body-light);
color: var(--text-color);
}
.tippy-tooltip.light-border-theme .tippy-arrow {
border-top-color: var(--body-light);
}
.tippy-tooltip.light-border-theme .tippy-arrow:after {
border-top-color: var(--body-light);
}
.tippy-header {
background-color: var(--body-dark);
border-bottom-color: var(--body-mid);
}
.smw-ui-input-filter {
background-color: var(--ooui-interface);
border-color: var(--ooui-interface-border);
color: var(--ooui-text);
}
.smw-ui-input-filter input {
border-left-color: var(--ooui-interface-border) !important;
color: var(--ooui-text) !important;
}
.smw-ui-pagination .page-link.link-disabled {
background-color: var(--ooui-disabled);
border-color: var(--ooui-disabled-border);
color: var(--subtle-color);
}
.smw-ui-pagination .page-link {
background-color: var(--ooui-normal);
border-color: var(--ooui-normal-border);
color: var(--link-color);
}
.smw-ui-pagination .page-link:hover {
background-color: var(--ooui-normal--hover);
border-color: var(--ooui-normal-border);
color: var(--link-color);
}
.smw-ui-pagination .page-link.link-active {
color: #fff;
background-color: var(--ooui-progressive);
border-color: var(--ooui-progressive);
}
.smw-tabs input.nav-tab:checked + label.nav-label {
border-color: var(--ooui-normal-border);
}
.smw-tabs section,
.smw-tabs .subtab-content {
border-top-color: var(--ooui-normal-border);
}
.smw-column-header {
color: var(--text-color);
}
.smw-factbox {
background: var(--body-main);
border-color: transparent;
}
.mw-body .mw-indicators #mw-indicator-smw-entity-examiner.mw-indicator .smw-indicator-vertical-bar-loader {
display: none;
}
.smwb-theme-light .smwb-title,
.smwb-theme-light .smwb-center,
.smwb-theme-light .smwb-actions,
.smwb-theme-light .smwb-prophead {
background-color: var(--body-mid);
}
.smwb-theme-light .smwb-factbox {
border-left-color: var(--body-mid);
}
.smwb-theme-light .smwb-ifactbox {
border-right-color: var(--body-mid);
}
.smwb-theme-light .smwb-propval {
background-color: var(--body-light);
}
.smwb-action-separator {
border-color: var(--wikitable-border);
}
.smwb-bottom {
border-bottom: 1px solid var(--wikitable-border);
}
.smwb-ifactbox .smwb-cell,
.smwb-factbox .smwb-cell {
border-top: 1px solid var(--wikitable-border);
}
.smwb-propvalue .smwb-prophead,
.smwb-ipropvalue .smwb-prophead,
.smwb-propvalue .smwb-propval,
.smwb-ipropvalue .smwb-propval {
font-size: 0.9em;
}
:root {
--filter-black-to-link: invert(36%) sepia(58%) saturate(433%) hue-rotate(344deg) brightness(100%) contrast(91%);
}
#bodyContent span.smwbrowse a {
color: black;
background-image: url('filepath://Smwbrowse.svg');
filter: var(--filter-black-to-link);
}
#bodyContent span.smwbrowse a:hover {
color: black;
background-image: url('filepath://Smwbrowse-hover.svg');
text-decoration: underline;
}
#bodyContent span.smwsearch a {
color: black;
filter: var(--filter-black-to-link);
background-image: url('filepath://Smwsearch.svg');
}
#bodyContent span.smwsearch a:hover {
color: black;
background-image: url('filepath://Smwsearch-hover.svg');
text-decoration: underline;
}
:root {
--tabber-tab-bg: var(--body-light);
--tabber-tab-border-color: var(--body-border);
--tabber-active-tab-bg: var(--body-light);
--tabber-active-tab-color: var(--text-color);
--tabber-active-tab-hover-bg: var(--body-light);
--tabber-active-tab-hover-border-color: var(--body-border);
--tabber-active-tab-hover-color: var(--text-color);
--tabber-active-tab-border-hider-color: var(--body-light);
--tabber-inactive-tab-bg: var(--body-background-color);
--tabber-inactive-tab-border-color: var(--body-border);
--tabber-inactive-tab-color: var(--text-color);
--tabber-inactive-tab-hover-bg: var(--body-light);
--tabber-inactive-tab-hover-border-color: var(--body-border);
}
.tabber {
margin: 1em 0;
}
.tabber .tabbertab {
background-color: var(--tabber-tab-bg);
border: 1px solid var(--tabber-tab-border-color);
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
padding: 1em 1.5em;
}
ul.tabbernav {
border: none;
margin-left: 2em;
margin-bottom: 0;
margin-right: 2em;
padding: 0;
font-family: inherit;
}
ul.tabbernav li.tabberactive > a {
background-color: var(--tabber-active-tab-bg);
color: var(--tabber-active-tab-color);
border-bottom: none;
position: relative;
}
ul.tabbernav li.tabberactive > a:hover {
color: var(--tabber-active-tab-hover-color);
background-color: var(--tabber-active-tab-hover-bg);
border-color: var(--tabber-active-tab-hover-border-color);
border-bottom: none;
}
ul.tabbernav li.tabberactive > a::after {
content: '';
position: absolute;
left: 0;
right: 0;
bottom: -1px;
border-bottom: 2px solid var(--tabber-active-tab-border-hider-color);
}
ul.tabbernav li a {
background-color: var(--tabber-inactive-tab-bg);
border-bottom: transparent;
border-color: var(--tabber-inactive-tab-border-color);
color: var(--tabber-inactive-tab-color);
display: inline-block;
font-size: 110%;
padding: 0.5em 1em;
}
ul.tabbernav li a:hover {
background-color: var(--tabber-inactive-tab-hover-bg);
border-color: var(--tabber-inactive-tab-hover-border-color);
}
ul.tabbernav li a:link,
ul.tabbernav li a:visited {
color: var(--tabber-inactive-tab-color);
}
:root {
--ooui-text: var(--text-color);
--ooui-interface: var(--body-light);
--ooui-interface-border: var(--body-border);
--ooui-window-background: rgba(255, 255, 255, 0.5);
--ooui-normal: #d5c7ad;
--ooui-normal--hover: #dfd5c1;
--ooui-normal-border: #b8a282;
--ooui-progressive: #605443;
--ooui-progressive--hover: #7e6e58;
--ooui-accent: var(--link-color);
--ooui-input: #fff;
--ooui-input-border: #b8a282;
--ooui-input-border--hover: #8a724f;
--ooui-disabled: #d1cdc5;
--ooui-disabled-border: #c2b9ab;
--ooui-disabled-text: var(--subtle-color);
--ooui-pending-background-image: repeating-linear-gradient(-45deg, var(--search-box), var(--search-box) 20px, var(--body-main) 20px, var(--body-main) 30px);
}
.oo-ui-widget {
color: var(--ooui-text);
}
.oo-ui-checkboxInputWidget [type='checkbox'] + span,
.oo-ui-radioInputWidget [type='radio'] + span {
background-color: var(--ooui-input);
border-color: var(--ooui-input-border);
}
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:checked + span,
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:indeterminate + span {
background-color: var(--ooui-progressive);
border-color: var(--ooui-progressive);
}
.oo-ui-radioInputWidget.oo-ui-widget-enabled [type='radio']:checked + span {
border-color: var(--ooui-progressive);
}
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:checked:hover + span,
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:indeterminate:hover + span {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
}
.oo-ui-radioInputWidget.oo-ui-widget-enabled [type='radio']:checked:hover + span {
border-color: var(--ooui-progressive--hover);
}
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:hover + span,
.oo-ui-radioInputWidget.oo-ui-widget-enabled [type='radio']:hover + span {
border-color: var(--ooui-accent);
}
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:focus + span {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:active + span,
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:checked:active + span,
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:indeterminate:active + span {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
box-shadow: inset 0 0 0 1px var(--ooui-progressive--hover);
}
.oo-ui-radioInputWidget.oo-ui-widget-enabled [type='radio']:active + span {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
}
.oo-ui-radioInputWidget.oo-ui-widget-enabled [type='radio']:checked:active + span {
border-color: var(--ooui-progressive--hover);
box-shadow: inset 0 0 0 1px var(--ooui-progressive--hover);
}
.oo-ui-radioInputWidget.oo-ui-widget-enabled [type='radio']:checked:active + span:before {
border-color: var(--ooui-progressive--hover);
}
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:checked:focus + span,
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:indeterminate:focus + span {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent), inset 0 0 0 2px #fff;
}
.oo-ui-checkboxInputWidget [type='checkbox']:disabled + span,
.oo-ui-radioInputWidget [type='radio']:disabled + span {
background-color: var(--ooui-disabled);
border-color: var(--ooui-disabled);
}
.oo-ui-dropdownWidget-handle {
border-color: var(--ooui-normal-border);
}
.oo-ui-dropdownWidget.oo-ui-widget-enabled .oo-ui-dropdownWidget-handle {
background-color: var(--ooui-normal);
color: var(--ooui-text);
}
.oo-ui-dropdownWidget.oo-ui-widget-enabled .oo-ui-dropdownWidget-handle:hover {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
}
.oo-ui-dropdownWidget.oo-ui-widget-enabled .oo-ui-dropdownWidget-handle:active {
color: var(--ooui-text);
}
.oo-ui-dropdownWidget.oo-ui-widget-enabled .oo-ui-dropdownWidget-handle:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-dropdownWidget.oo-ui-widget-enabled.oo-ui-dropdownWidget-open .oo-ui-dropdownWidget-handle {
background-color: var(--ooui-normal--hover);
}
.oo-ui-dropdownWidget.oo-ui-widget-disabled .oo-ui-dropdownWidget-handle {
color: var(--ooui-disabled-text);
text-shadow: none;
border-color: var(--ooui-disabled-border);
background-color: var(--ooui-disabled);
}
.oo-ui-dropdownInputWidget select {
border-color: var(--ooui-normal-border);
}
.oo-ui-dropdownInputWidget option {
background-color: var(--ooui-interface);
}
.oo-ui-dropdownInputWidget.oo-ui-widget-enabled {
background-color: var(--ooui-normal);
}
.oo-ui-dropdownInputWidget.oo-ui-widget-enabled:hover {
background-color: var(--ooui-normal--hover);
}
.oo-ui-dropdownInputWidget.oo-ui-widget-enabled select {
color: var(--ooui-text);
}
.oo-ui-dropdownInputWidget.oo-ui-widget-enabled select:hover,
.oo-ui-dropdownInputWidget.oo-ui-widget-enabled select:active {
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
}
.oo-ui-dropdownInputWidget.oo-ui-widget-enabled select:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-labelWidget.oo-ui-inline-help {
color: var(--byline-color);
}
.oo-ui-menuSelectWidget {
background-color: var(--ooui-interface);
border-color: var(--ooui-interface-border);
}
.oo-ui-menuSelectWidget-frameless {
box-shadow: inset 0 -1px 0 0 var(--ooui-normal-border);
}
.oo-ui-menuSectionOptionWidget {
color: var(--byline-color);
}
.oo-ui-menuOptionWidget.oo-ui-optionWidget-highlighted,
.oo-ui-menuOptionWidget.oo-ui-optionWidget-selected {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
}
.oo-ui-menuOptionWidget.oo-ui-optionWidget-selected.oo-ui-menuOptionWidget.oo-ui-optionWidget-highlighted,
.oo-ui-menuOptionWidget.oo-ui-optionWidget-pressed.oo-ui-menuOptionWidget.oo-ui-optionWidget-highlighted {
color: var(--ooui-accent);
}
.oo-ui-menuOptionWidget.oo-ui-widget-enabled.oo-ui-optionWidget {
color: var(--ooui-text);
}
.oo-ui-messageDialog-title {
color: inherit;
}
.oo-ui-messageWidget.oo-ui-messageWidget-block.oo-ui-flaggedElement-error {
background-color: var(--errorbox-bg);
border-color: var(--errorbox-border);
}
.oo-ui-messageWidget.oo-ui-messageWidget-block.oo-ui-flaggedElement-warning {
background-color: var(--warningbox-bg);
border-color: var(--warningbox-border);
}
.oo-ui-messageWidget.oo-ui-messageWidget-block.oo-ui-flaggedElement-success {
background-color: var(--successbox-bg);
border-color: var(--successbox-border);
}
.oo-ui-messageWidget.oo-ui-messageWidget-block.oo-ui-flaggedElement-notice {
background-color: var(--messagebox-info-background);
border-color: var(--messagebox-info-border);
}
.oo-ui-messageWidget.oo-ui-flaggedElement-error:not(.oo-ui-messageWidget-block),
.oo-ui-messageWidget.oo-ui-flaggedElement-success:not(.oo-ui-messageWidget-block) {
color: var(--ooui-text);
}
.oo-ui-optionWidget.oo-ui-widget-disabled {
color: var(--ooui-disabled-text);
}
.oo-ui-outlineControlsWidget {
background-color: var(--ooui-normal);
}
.oo-ui-outlineOptionWidget.oo-ui-optionWidget-highlighted {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
}
.oo-ui-popupWidget-popup {
background-color: var(--ooui-interface);
border-color: var(--ooui-interface-border);
}
.oo-ui-popupWidget-anchored-top .oo-ui-popupWidget-anchor:after {
border-bottom-color: var(--ooui-interface);
}
.oo-ui-popupWidget-anchored-top .oo-ui-popupWidget-anchor:before {
border-bottom-color: var(--ooui-interface-border);
}
.oo-ui-popupWidget-anchored-bottom .oo-ui-popupWidget-anchor:after {
border-top-color: var(--ooui-interface);
}
.oo-ui-popupWidget-anchored-bottom .oo-ui-popupWidget-anchor:before {
border-top-color: var(--ooui-interface-border);
}
.oo-ui-popupWidget-anchored-start .oo-ui-popupWidget-anchor:after {
border-right-color: var(--ooui-interface);
}
.oo-ui-popupWidget-anchored-start .oo-ui-popupWidget-anchor:before {
border-right-color: var(--ooui-interface-border);
}
.oo-ui-popupWidget-anchored-end .oo-ui-popupWidget-anchor:after {
border-left-color: var(--ooui-interface);
}
.oo-ui-popupWidget-anchored-end .oo-ui-popupWidget-anchor:before {
border-left-color: var(--ooui-interface-border);
}
.oo-ui-searchWidget-query {
border-bottom-color: var(--ooui-interface-border);
}
.oo-ui-selectFileWidget-dropTarget {
background-color: var(--ooui-interface);
border-color: var(--ooui-interface-border);
}
.oo-ui-selectFileWidget.oo-ui-widget-enabled.oo-ui-selectFileWidget-dropTarget {
background-color: var(--ooui-interface);
}
.oo-ui-selectFileWidget.oo-ui-widget-enabled.oo-ui-selectFileWidget-dropTarget:hover {
border-color: var(--ooui-input-border--hover);
}
.oo-ui-tabOptionWidget {
color: var(--ooui-text);
}
.oo-ui-tabSelectWidget-framed .oo-ui-tabOptionWidget.oo-ui-optionWidget-selected {
background-color: var(--body-dark);
color: var(--ooui-text);
}
.oo-ui-tabSelectWidget-framed .oo-ui-tabOptionWidget.oo-ui-optionWidget-selected .oo-ui-labelElement-label {
border-bottom-color: var(--body-border);
}
.oo-ui-tabSelectWidget-framed .oo-ui-tabOptionWidget.oo-ui-widget-enabled:hover,
.oo-ui-tabSelectWidget-framed .oo-ui-tabOptionWidget.oo-ui-widget-enabled:active {
background-color: var(--body-light);
color: var(--ooui-text);
}
.oo-ui-tabSelectWidget-framed .oo-ui-tabOptionWidget.oo-ui-widget-enabled.oo-ui-optionWidget-selected:hover {
background-color: var(--body-dark);
}
.oo-ui-tabSelectWidget-frameless .oo-ui-tabOptionWidget.oo-ui-optionWidget-selected {
color: var(--ooui-progressive);
box-shadow: inset 0 -2px 0 0 var(--ooui-progressive);
}
.oo-ui-tabSelectWidget-frameless .oo-ui-tabOptionWidget.oo-ui-optionWidget-selected:hover,
.oo-ui-tabSelectWidget-frameless .oo-ui-tabOptionWidget.oo-ui-optionWidget-selected:focus {
color: var(--ooui-progressive--hover);
box-shadow: inset 0 -2px 0 0 var(--ooui-progressive--hover);
}
.oo-ui-tabSelectWidget-framed {
background: none;
border-bottom: 1px solid var(--ooui-interface-border);
}
.oo-ui-tabSelectWidget-frameless {
box-shadow: inset 0 -1px 0 0 var(--ooui-interface-border);
}
.oo-ui-tabSelectWidget-mobile {
}
.oo-ui-tabSelectWidget-mobile.oo-ui-tabSelectWidget-framed:after {
background: var(--mobile-navbox-linear-gradient);
}
.oo-ui-tabSelectWidget-mobile.oo-ui-tabSelectWidget-frameless:after {
background: var(--mobile-navbox-linear-gradient);
}
.oo-ui-tagItemWidget {
border-color: var(--ooui-normal-border);
}
.oo-ui-tagItemWidget.oo-ui-widget-enabled {
color: var(--ooui-text);
}
.oo-ui-tagItemWidget.oo-ui-widget-enabled:hover {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
}
.oo-ui-tagItemWidget.oo-ui-widget-enabled:not( .oo-ui-tagItemWidget-fixed ) {
background-color: var(--ooui-normal);
}
.oo-ui-tagItemWidget.oo-ui-widget-enabled .oo-ui-buttonElement-button:hover {
background-color: var(--ooui-normal--hover);
}
.oo-ui-tagMultiselectWidget.oo-ui-widget-enabled {
background-color: var(--ooui-interface);
}
.oo-ui-tagMultiselectWidget.oo-ui-widget-enabled.oo-ui-tagMultiselectWidget-outlined {
background-color: var(--ooui-normal);
}
.oo-ui-tagMultiselectWidget.oo-ui-widget-enabled.oo-ui-tagMultiselectWidget-outlined .oo-ui-tagItemWidget.oo-ui-widget-enabled {
background-color: var(--ooui-interface);
}
.oo-ui-textInputWidget .oo-ui-inputWidget-input {
background-color: var(--ooui-input);
color: var(--ooui-text);
border-color: var(--ooui-input-border);
}
.oo-ui-textInputWidget.oo-ui-widget-enabled .oo-ui-inputWidget-input::placeholder {
color: var(--subtle-color);
}
.oo-ui-textInputWidget.oo-ui-widget-enabled .oo-ui-inputWidget-input:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-textInputWidget.oo-ui-widget-enabled .oo-ui-inputWidget-input[readonly]:not(.oo-ui-pendingElement-pending) {
background-color: var(--ooui-disabled);
color: var(--ooui-disabled-text);
}
.oo-ui-textInputWidget.oo-ui-widget-enabled:hover .oo-ui-inputWidget-input {
border-color: var(--ooui-input-border--hover);
}
.oo-ui-textInputWidget.oo-ui-widget-enabled:hover .oo-ui-inputWidget-input:focus {
border-color: var(--ooui-accent);
}
@media screen and (min-width: 0) {
.oo-ui-textInputWidget.oo-ui-widget-enabled textarea.oo-ui-inputWidget-input:focus {
outline: 1px solid var(--ooui-accent);
}
}
.oo-ui-textInputWidget.oo-ui-widget-disabled .oo-ui-inputWidget-input {
background-color: var(--ooui-disabled);
color: var(--ooui-disabled-text);
text-shadow: none;
border-color: var(--ooui-disabled-border);
}
.oo-ui-toggleSwitchWidget {
background-color: var(--ooui-input);
border-color: var(--ooui-input-border);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled .oo-ui-toggleSwitchWidget-grip {
background-color: var(--ooui-input);
border-color: var(--ooui-input-border);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:hover {
background-color: var(--ooui-input);
border-color: var(--ooui-accent);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:hover .oo-ui-toggleSwitchWidget-grip {
background-color: var(--ooui-input);
border-color: var(--ooui-accent);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:active,
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:active:hover,
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:active:focus {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
box-shadow: inset 0 0 0 1px var(--ooui-progressive--hover);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:active .oo-ui-toggleSwitchWidget-grip,
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:active:hover .oo-ui-toggleSwitchWidget-grip,
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:active:focus .oo-ui-toggleSwitchWidget-grip {
background-color: var(--ooui-input);
border-color: var(--ooui-input);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:focus .oo-ui-toggleSwitchWidget-grip {
border-color: var(--ooui-accent);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled.oo-ui-toggleWidget-on {
background-color: var(--ooui-progressive);
border-color: var(--ooui-progressive);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled.oo-ui-toggleWidget-on .oo-ui-toggleSwitchWidget-grip {
background-color: var(--ooui-input);
border-color: var(--ooui-input);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled.oo-ui-toggleWidget-on:hover {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled.oo-ui-toggleWidget-on:active,
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled.oo-ui-toggleWidget-on:active:hover {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled.oo-ui-toggleWidget-on:focus {
border-color: var(--ooui-progressive);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled.oo-ui-toggleWidget-on:focus::before {
border-color: #fff;
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-disabled {
background-color: var(--ooui-disabled);
border-color: var(--ooui-disabled);
}
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled > .oo-ui-buttonElement-button {
color: var(--ooui-text);
}
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled > .oo-ui-buttonElement-button:hover {
color: var(--ooui-text);
}
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled > .oo-ui-buttonElement-button:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled.oo-ui-buttonElement-pressed > input.oo-ui-buttonElement-button,
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled > .oo-ui-buttonElement-button:active {
color: var(--ooui-text);
}
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button,
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button:hover {
color: var(--ooui-text);
}
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button:active,
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive.oo-ui-buttonElement-pressed > .oo-ui-buttonElement-button {
color: var(--ooui-text);
border-color: var(--ooui-text);
}
.oo-ui-buttonElement-frameless.oo-ui-widget-disabled > .oo-ui-buttonElement-button {
color: var(--ooui-disabled-text);
}
.oo-ui-buttonElement-framed.oo-ui-widget-disabled > .oo-ui-buttonElement-button {
background-color: var(--ooui-disabled);
border-color: var(--ooui-disabled-border);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled > .oo-ui-buttonElement-button {
background-color: var(--ooui-normal);
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled > .oo-ui-buttonElement-button:hover {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled > .oo-ui-buttonElement-button:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-buttonElement-active > .oo-ui-buttonElement-button {
background-color: var(--ooui-progressive--hover);
color: #fff;
border-color: var(--ooui-progressive--hover);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-buttonElement-active > .oo-ui-buttonElement-button:focus {
border-color: var(--ooui-progressive--hover);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled > .oo-ui-buttonElement-button:active,
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-buttonElement-pressed > .oo-ui-buttonElement-button {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive {
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button {
color: var(--ooui-text);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button:hover {
background-color: var(--ooui-normal--hover);
border-color: var(--ooui-progressive--hover);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-destructive > .oo-ui-buttonElement-button {
color: var(--ooui-text);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-destructive > .oo-ui-buttonElement-button:hover {
background-color: var(--ooui-normal--hover);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button {
background-color: var(--ooui-progressive);
border-color: var(--ooui-progressive);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button:hover {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent), inset 0 0 0 2px #fff;
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button:active,
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive.oo-ui-buttonElement-pressed > .oo-ui-buttonElement-button,
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive.oo-ui-buttonElement-active > .oo-ui-buttonElement-button,
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive.oo-ui-popupToolGroup-active > .oo-ui-buttonElement-button {
color: #fff;
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
}
.oo-ui-pendingElement-pending {
background-image: var(--ooui-pending-background-image);
background-size: 200%;
animation: oo-ui-pendingElement-stripes 6s linear infinite;
}
@keyframes oo-ui-pendingElement-stripes {
100% {
background-position: 100%;
}
}
.oo-ui-messageDialog-content > .oo-ui-window-foot {
outline-color: var(--ooui-interface-border);
}
.oo-ui-messageDialog-message {
color: var(--ooui-text);
}
.oo-ui-messageDialog-actions-horizontal .oo-ui-actionWidget {
border-right-color: var(--ooui-interface-border);
}
.oo-ui-messageDialog-actions-vertical .oo-ui-actionWidget {
border-bottom-color: var(--ooui-interface-border);
}
.oo-ui-processDialog-content .oo-ui-window-head,
.oo-ui-processDialog-content .oo-ui-window-foot {
outline-color: var(--ooui-interface-border);
}
.oo-ui-processDialog .oo-ui-actionWidget > .oo-ui-buttonElement-button {
border-top-color: transparent;
border-bottom-color: transparent;
}
.oo-ui-processDialog .oo-ui-actionWidget > .oo-ui-buttonElement-button:hover,
.oo-ui-processDialog .oo-ui-actionWidget > .oo-ui-buttonElement-button:active {
border-top-color: transparent;
border-bottom-color: transparent;
}
.oo-ui-processDialog .oo-ui-actionWidget:not( .oo-ui-flaggedElement-progressive ):not( .oo-ui-flaggedElement-destructive ) > .oo-ui-buttonElement-button:hover,
.oo-ui-processDialog .oo-ui-actionWidget:not( .oo-ui-flaggedElement-progressive ):not( .oo-ui-flaggedElement-destructive ) > .oo-ui-buttonElement-button:active {
border-right-color: var(--ooui-interface-border);
border-left-color: transparent;
}
.oo-ui-processDialog .oo-ui-actionWidget:not( .oo-ui-flaggedElement-progressive ):not( .oo-ui-flaggedElement-destructive ) > .oo-ui-buttonElement-button:focus {
border-color: var(--ooui-accent);
}
.oo-ui-processDialog-actions-safe .oo-ui-actionWidget > .oo-ui-buttonElement-button,
.oo-ui-processDialog-actions-other .oo-ui-actionWidget > .oo-ui-buttonElement-button {
border-right-color: var(--ooui-normal-border);
border-left-color: transparent;
}
.oo-ui-processDialog-actions-safe .oo-ui-widget-enabled.oo-ui-iconElement:not( .oo-ui-labelElement ) > .oo-ui-buttonElement-button:hover {
background-color: var(--ooui-normal--hover);
border-right-color: var(--ooui-interface-border);
}
.oo-ui-windowManager-modal > .oo-ui-dialog {
background-color: var(--ooui-window-background);
}
.oo-ui-windowManager-modal > .oo-ui-dialog > .oo-ui-window-frame {
background-color: var(--ooui-interface);
}
.oo-ui-windowManager-modal.oo-ui-windowManager-floating > .oo-ui-dialog > .oo-ui-window-frame {
border-color: var(--ooui-interface-border);
}
.oo-ui-window {
color: var(--ooui-text);
}
.oo-ui-toolbar-bar {
background-color: var(--ooui-interface);
color: var(--ooui-text);
}
.oo-ui-toolbar-position-top > .oo-ui-toolbar-bar {
border-bottom-color: var(--body-mid);
}
.oo-ui-toolbar-bar .oo-ui-bookletLayout > .oo-ui-menuLayout-menu {
border-right-color: var(--body-mid);
}
.oo-ui-tool.oo-ui-widget-enabled > .oo-ui-tool-link:hover {
background-color: var(--ooui-normal--hover);
}
.oo-ui-tool.oo-ui-widget-enabled > .oo-ui-tool-link:focus {
outline: 1px solid var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-tool.oo-ui-widget-enabled > .oo-ui-tool-link:active,
.oo-ui-tool.oo-ui-widget-enabled.oo-ui-tool-active > .oo-ui-tool-link,
.oo-ui-tool.oo-ui-widget-enabled.oo-ui-popupToolGroup-active > .oo-ui-tool-link {
background-color: var(--ooui-normal--hover);
color: var(--ooui-accent);
box-shadow: none;
}
.oo-ui-tool.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive > .oo-ui-tool-link {
background-color: var(--ooui-progressive);
}
.oo-ui-tool.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive > .oo-ui-tool-link:hover {
background-color: var(--ooui-progressive--hover);
}
.oo-ui-tool.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive > .oo-ui-tool-link:focus {
box-shadow: inset 0 0 0 1px var(--ooui-accent), inset 0 0 0 2px #fff;
}
.oo-ui-tool.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive > .oo-ui-tool-link:active,
.oo-ui-tool.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive.oo-ui-tool-active > .oo-ui-tool-link {
background-color: var(--ooui-progressive--hover);
}
.oo-ui-listToolGroup-tools .oo-ui-tool.oo-ui-widget-enabled {
background-color: var(--ooui-normal);
}
.oo-ui-listToolGroup-tools .oo-ui-tool.oo-ui-widget-enabled:hover {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
}
.oo-ui-listToolGroup-tools .oo-ui-tool-active.oo-ui-widget-enabled .oo-ui-tool-link .oo-ui-tool-title {
color: var(--ooui-progressive);
}
.oo-ui-menuToolGroup {
border-left-color: var(--body-mid);
border-right-color: var(--body-mid);
}
.oo-ui-popupToolGroup-tools {
background-color: var(--ooui-interface);
border-color: var(--body-mid);
}
.oo-ui-popupToolGroup.oo-ui-widget-enabled > .oo-ui-popupToolGroup-handle:hover {
background-color: var(--ooui-normal--hover);
}
.oo-ui-popupToolGroup.oo-ui-widget-enabled > .oo-ui-popupToolGroup-handle:focus {
outline: 1px solid var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-toolbar-actions .oo-ui-popupToolGroup.oo-ui-widget-enabled > .oo-ui-popupToolGroup-handle:hover {
border-right-color: var(--ooui-normal--hover);
}
.oo-ui-popupToolGroup-tools .oo-ui-tool.oo-ui-widget-enabled .oo-ui-tool-link:focus {
box-shadow: inset 0 0 0 2px var(--ooui-accent);
}
.oo-ui-popupToolGroup-tools .oo-ui-tool-active.oo-ui-widget-enabled .oo-ui-tool-link .oo-ui-tool-title {
color: var(--ooui-progressive);
}
.oo-ui-popupToolGroup.oo-ui-popupToolGroup-active > .oo-ui-popupToolGroup-handle {
background-color: var(--ooui-normal);
color: var(--ooui-accent);
}
.oo-ui-popupToolGroup.oo-ui-popupToolGroup-active > .oo-ui-popupToolGroup-handle:hover {
background-color: var(--ooui-normal--hover);
color: var(--ooui-accent);
}
.oo-ui-bookletLayout-outlinePanel > .oo-ui-outlineControlsWidget {
border-top-color: var(--ooui-interface-border);
}
.oo-ui-bookletLayout > .oo-ui-menuLayout-menu {
border-right-color: var(--ooui-interface-border);
}
.oo-ui-fieldLayout-disabled > .oo-ui-fieldLayout-body > .oo-ui-fieldLayout-header > .oo-ui-labelElement-label {
color: var(--ooui-disabled-text);
}
.oo-ui-panelLayout-framed {
border-color: var(--sidebar);
}
.oo-ui-icon-settings {
background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' width='20' height='20' viewBox='0 0 20 20'%3E%3Ctitle%3Esettings%3C/title%3E%3Cg transform='translate(10 10)'%3E%3Cpath id='a' d='M1.5-10h-3l-1 6.5h5m0 7h-5l1 6.5h3'/%3E%3Cuse xlink:href='%23a' transform='rotate(45)'/%3E%3Cuse xlink:href='%23a' transform='rotate(90)'/%3E%3Cuse xlink:href='%23a' transform='rotate(135)'/%3E%3C/g%3E%3Cpath d='M10 2.5a7.5 7.5 0 0 0 0 15 7.5 7.5 0 0 0 0-15v4a3.5 3.5 0 0 1 0 7 3.5 3.5 0 0 1 0-7'/%3E%3C/svg%3E");
}
.oo-ui-icon-clear {
background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 20 20'%3E%3Ctitle%3Eclear%3C/title%3E%3Cpath d='M10 0a10 10 0 1 0 10 10A10 10 0 0 0 10 0zm5.66 14.24-1.41 1.41L10 11.41l-4.24 4.25-1.42-1.42L8.59 10 4.34 5.76l1.42-1.42L10 8.59l4.24-4.24 1.41 1.41L11.41 10z'/%3E%3C/svg%3E");
}
.mw-widget-dateInputWidget-handle {
background-color: var(--ooui-input);
color: var(--ooui-text);
border-color: var(--ooui-input-border);
}
.mw-widget-dateInputWidget-calendar {
background-color: var(--ooui-interface);
}
.mw-widget-dateInputWidget.oo-ui-widget-enabled .mw-widget-dateInputWidget-handle:hover {
border-color: var(--ooui-input-border--hover);
}
.mw-widget-calendarWidget {
border-color: var(--ooui-interface-border);
}
.mw-widget-calendarWidget:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.mw-widget-calendarWidget-day,
.mw-widget-calendarWidget-day-heading {
color: var(--ooui-text);
}
.mw-widget-calendarWidget-day-additional {
color: var(--ooui-text);
opacity: 0.67;
}
.mw-widget-calendarWidget-day-today {
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.mw-widget-calendarWidget-item:hover {
background-color: var(--ooui-progressive);
}
.mw-widget-calendarWidget-item-selected {
background-color: var(--ooui-progressive--hover);
}
.mw-widgets-datetime-calendarWidget {
background-color: var(--ooui-interface);
border-color: var(--ooui-interface-border);
}
.mw-widgets-datetime-calendarWidget:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent), 0 2px 2px 0 rgba(0, 0, 0, 0.25);
}
.mw-widgets-datetime-calendarWidget-grid .mw-widgets-datetime-calendarWidget-cell.mw-widgets-datetime-calendarWidget-extra .oo-ui-buttonElement-button .oo-ui-labelElement-label {
color: var(--subtle-color);
}
.mw-widgets-datetime-calendarWidget-grid .mw-widgets-datetime-calendarWidget-cell.mw-widgets-datetime-calendarWidget-selected .oo-ui-buttonElement-button {
background-color: var(--ooui-progressive--hover);
}
.mw-widgets-datetime-dateTimeInputWidget-handle {
background-color: var(--ooui-input);
color: var(--ooui-text);
border-color: var(--ooui-input-border);
}
.mw-widgets-datetime-dateTimeInputWidget.oo-ui-widget-enabled.mw-widgets-datetime-dateTimeInputWidget-handle:hover {
border-color: var(--ooui-input-border--hover);
}
.mw-widgets-datetime-dateTimeInputWidget.oo-ui-widget-enabled:hover input,
.mw-widgets-datetime-dateTimeInputWidget.oo-ui-widget-enabled:hover textarea {
border-color: var(--ooui-input-border--hover);
}
.mw-widgets-datetime-dateTimeInputWidget.oo-ui-widget-enabled .mw-widgets-datetime-dateTimeInputWidget-editField:hover {
background-color: var(--ooui-normal);
}
.ve-activated .ve-init-mw-desktopArticleTarget-originalContent #catlinks:hover {
background: var(--ooui-normal--hover);
}
.ve-ui-overlay {
font-family: inherit;
}
.oo-ui-toolbar-position-top .ve-ui-toolbarDialog-position-above {
border-top-color: var(--body-mid);
}
.ve-ce-branchNode-blockSlug,
.ve-ce-branchNode-newSlug {
outline-color: var(--body-border);
background-color: var(--ooui-interface);
}
.ve-ui-specialCharacterPage h3 {
color: var(--byline-color);
}
.ve-ui-specialCharacterPage-character {
border-color: var(--body-mid);
}
.ve-ui-specialCharacterPage-character:hover {
border-color: var(--body-dark);
}
.ve-ce-linkAnnotation.ve-ce-annotation-active {
box-shadow: 0 0 0 1px var(--body-mid);
background: none;
}
.ve-ui-desktopContext .ve-ui-linkContextItem .ve-ui-linkContextItem-label {
border-color: var(--body-border);
}
.ve-ui-mwHelpPopupTool-version-label,
.ve-ui-mwHelpPopupTool-version-link,
.ve-ui-mwHelpPopupTool-version-date {
color: var(--byline-color);
}
.ve-ce-tableCellableNode {
border-color: var(--body-mid);
}
.ve-ce-mwReferencesListNode-muted {
color: var(--byline-color);
}
.ve-ui-mwTemplatePage-description,
.ve-ui-mwParameterPage-label,
.ve-ui-mwParameterPage-description-required,
.ve-ui-mwParameterPage-description-deprecated {
color: var(--byline-color);
}
.mw-widget-titleWidget-menu .mw-widget-titleOptionWidget-description {
color: var(--byline-color);
}
.ve-ui-mwGalleryDialog-menuLayout > .oo-ui-menuLayout-menu,
.ve-ui-mwGalleryDialog-innerMenuLayout > .oo-ui-menuLayout-menu,
.ve-ui-mwGalleryDialog .ve-ui-mwGalleryDialog-image-container,
.ve-ui-targetWidget {
border-color: var(--body-border);
}
.ve-ui-targetWidget:not(.oo-ui-pendingElement-pending) {
background-color: var(--body-main);
}
.ve-ui-mwSaveDialog {
color: var(--ooui-text);
}
.ve-ui-mwSaveDialog-options {
background-color: var(--ooui-interface);
border-color: var(--body-border);
}
.ve-ui-mwSaveDialog-summary {
background-color: var(--ooui-input);
}
.ve-ui-mwSaveDialog-editSummary-count {
border-color: var(--body-border);
}
.ve-ui-mwSaveDialog-license {
color: var(--byline-color);
}
.ve-ui-mwReferenceContextItem-muted {
color: var(--byline-color);
}
.ve-ui-mwNoticesPopupTool-items > div:not(:first-child),
.ve-ui-mwHelpPopupTool-item:not(:first-child) {
border-color: var(--body-border);
}
.ve-ui-mwTransclusionOutlineControlsWidget {
background-color: var(--ooui-interface);
border-top-color: var(--body-border);
}
.ve-ui-mwTransclusionOutlineTemplateWidget-sticky {
background-color: var(--ooui-interface);
}
.ve-ui-mwTransclusionOutlineTemplateWidget .ve-ui-mwTransclusionOutlineParameterWidget.oo-ui-optionWidget-highlighted {
color: var(--ooui-text);
}
.ve-ui-mwTransclusionOutlineTemplateWidget-no-template-parameters {
color: var(--subtle-color);
}
.ve-ui-mwParameterPage-undocumentedLabel {
color: var(--subtle-color);
}
.ve-ui-mwTwoPaneTransclusionDialogLayout > .oo-ui-menuLayout-menu {
border-right: var(--body-border);
}
.ve-ui-mwParameterPage-doc-required,
.ve-ui-mwParameterPage-doc-deprecated,
.ve-ui-mwParameterPage-inlineDescription .ve-ui-mwParameterPage-doc-example {
color: var(--byline-color);
}
.ve-ui-expandableContent-toggle {
background-color: var(--ooui-interface);
}
.ve-ui-expandableContent-fade {
background: linear-gradient(to right, rgba(255, 255, 255, 0) 0, var(--ooui-interface) 90%);
}
.ve-ui-commandHelpDialog-shortcut > kbd,
.ve-ui-commandHelpDialog-sequence > kbd {
background-color: var(--keypress-background);
color: var(--keypress-color);
border-color: var(--keypress-border);
box-shadow: none;
text-shadow: none;
}
.ve-init-mw-desktopArticleTarget-toolbarPlaceholder-floating .ve-init-mw-desktopArticleTarget-toolbarPlaceholder-bar {
background: var(--ooui-interface);
}
.ve-init-mw-desktopArticleTarget-toolbarPlaceholder-bar {
border-bottom-color: var(--body-mid);
}
figure[typeof~='mw:File/Thumb'],
figure[typeof~='mw:File/Frame'],
figure[typeof~='mw:Image/Thumb'],
figure[typeof~='mw:Video/Thumb'],
figure[typeof~='mw:Image/Frame'],
figure[typeof~='mw:Video/Frame'] {
border: none;
background-color: var(--thumb-bg);
}
figure[typeof~='mw:File/Thumb'] > a:first-child > *:first-child:not( .mw-broken-media ),
figure[typeof~='mw:File/Frame'] > a:first-child > *:first-child:not( .mw-broken-media ),
figure[typeof~='mw:Image/Thumb'] > a:first-child > *:first-child:not( .mw-broken-media ),
figure[typeof~='mw:Video/Thumb'] > a:first-child > *:first-child:not( .mw-broken-media ),
figure[typeof~='mw:Image/Frame'] > a:first-child > *:first-child:not( .mw-broken-media ),
figure[typeof~='mw:Video/Frame'] > a:first-child > *:first-child:not( .mw-broken-media ) {
border: none;
background: var(--thumb-bg);
}
figure[typeof~='mw:File/Thumb'] > figcaption,
figure[typeof~='mw:File/Frame'] > figcaption,
figure[typeof~='mw:Image/Thumb'] > figcaption,
figure[typeof~='mw:Video/Thumb'] > figcaption,
figure[typeof~='mw:Image/Frame'] > figcaption,
figure[typeof~='mw:Video/Frame'] > figcaption {
border: none;
background-color: var(--thumb-caption-bg);
padding: 4px 6px;
}
:root {
--infobox-text-color: var(--text-color);
}
ol.references,
.reflist {
font-size: 90%;
}
.reflist {
list-style-type: decimal;
}
.reflist .references {
font-size: 100%;
list-style-type: inherit;
}
.reflist-lower-alpha {
list-style-type: lower-alpha;
}
ol.references li:target,
sup.reference:target {
background-color: var(--body-light);
}
.hideQuotes .refhide {
display: none;
}
.mw-prefs-buttons {
background-color: var(--body-main);
border-top-color: var(--body-border);
box-shadow: none;
}
.mw-prefs-tabs-wrapper.oo-ui-panelLayout-framed,
.mw-prefs-tabs > .oo-ui-menuLayout-content > .oo-ui-indexLayout-stackLayout > .oo-ui-tabPanelLayout {
border-color: var(--body-border);
}
.mw-htmlform-ooui .mw-htmlform-matrix tbody tr:nth-child(even) td {
background-color: var(--body-light);
}
.mw-htmlform-ooui .mw-htmlform-matrix tbody tr:hover td {
background-color: var(--body-mid);
}
:root {
--rc-positive-color: #407813;
--rc-negative-color: #b41e0f;
}
.mw-plusminus-pos {
color: var(--rc-positive-color);
}
.mw-plusminus-neg {
color: var(--rc-negative-color);
}
.client-js .mw-recentchanges-toplinks:not(.mw-recentchanges-toplinks-collapsed) {
border-color: var(--body-border);
background-color: var(--body-light);
border-radius: 2px;
}
.mw-rcfilters-ui-filterTagMultiselectWidget-wrapper-content-title {
color: var(--text-color);
}
.mw-rcfilters-ui-filterTagMultiselectWidget-emptyFilters {
color: var(--byline-color);
}
.mw-rcfilters-ui-filterTagMultiselectWidget.oo-ui-widget-enabled .oo-ui-tagMultiselectWidget-handle {
background-color: var(--ooui-interface);
border-color: var(--ooui-interface-border);
}
.mw-rcfilters-ui-filterTagMultiselectWidget-views-select-widget.oo-ui-widget {
border-color: var(--ooui-interface-border);
}
.mw-rcfilters-collapsed .mw-rcfilters-ui-filterTagMultiselectWidget {
border-bottom-color: var(--ooui-interface-border);
}
.mw-rcfilters-ui-menuSelectWidget-footer {
background-color: var(--ooui-interface);
border-color: var(--ooui-interface-border);
}
.mw-rcfilters-ui-viewSwitchWidget label.oo-ui-labelWidget {
color: var(--byline-color);
}
.mw-rcfilters-ui-tagItemWidget-popup-content {
color: var(--ooui-text);
}
.mw-changeslist-legend,
.mw-rcfilters-ui-changesListWrapperWidget .mw-changeslist-legend {
background-color: var(--body-light);
border-color: var(--body-dark);
}
.mw-rcfilters-ui-changesListWrapperWidget-previousChangesIndicator {
border-color: var(--sidebar);
}
.client-js .mw-changeslist ul,
.client-js .mw-changeslist table.mw-enhanced-rc {
margin-left: 0;
}
.mw-rcfilters-ui-watchlistTopSectionWidget-separator {
border-color: var(--sidebar);
}
.mw-rcfilters-ui-itemMenuOptionWidget-header {
border-bottom-color: var(--ooui-interface);
background-color: var(--ooui-interface-border);
}
.mw-rcfilters-ui-itemMenuOptionWidget:not(:last-child):not(.mw-rcfilters-ui-itemMenuOptionWidget-identifier-talk) {
border-bottom-color: var(--ooui-normal-border);
}
.mw-rcfilters-ui-itemMenuOptionWidget-label-title,
.mw-rcfilters-ui-itemMenuOptionWidget-label-desc {
color: var(--text-color);
}
.mw-rcfilters-ui-filterMenuOptionWidget.oo-ui-flaggedElement-muted:not(.oo-ui-optionWidget-selected) {
background-color: var(--body-main);
}
.mw-rcfilters-ui-filterMenuOptionWidget.oo-ui-flaggedElement-muted .mw-rcfilters-ui-itemMenuOptionWidget-label-title,
.mw-rcfilters-ui-filterMenuOptionWidget.oo-ui-flaggedElement-muted .mw-rcfilters-ui-itemMenuOptionWidget-label-desc {
color: var(--subtle-color);
}
.mw-rcfilters-ui-filterMenuSectionOptionWidget {
background-color: var(--body-mid);
}
.mw-rcfilters-ui-filterMenuSectionOptionWidget-header-title.oo-ui-labelElement-label {
color: var(--ooui-text);
}
.mw-rcfilters-ui-filterMenuHeaderWidget-title {
color: var(--ooui-text);
}
.mw-rcfilters-ui-filterMenuHeaderWidget-header {
border-bottom-color: var(--ooui-interface-border);
background-color: var(--ooui-interface);
}
.mw-rcfilters-ui-itemMenuOptionWidget-view-namespaces {
border-top-color: var(--ooui-interface-border);
}
.mw-rcfilters-ui-datePopupWidget {
border-color: var(--ooui-interface-border);
}
.mw-rcfilters-ui-datePopupWidget .mw-rcfilters-ui-valuePickerWidget-title {
color: var(--byline-color);
}
.mw-rcfilters-ui-savedLinksListItemWidget-label {
color: var(--ooui-accent);
}
.client-js .mw-changeslist.mw-rcfilters-ui-changesListWrapperWidget-highlighted ul,
.client-js .mw-changeslist.mw-rcfilters-ui-changesListWrapperWidget-highlighted table.mw-enhanced-rc {
margin-left: 1.5em;
}
.page-Special_CreateAccount .mw-ui-container,
.page-Special_UserLogin .mw-ui-container {
max-width: 64rem;
margin: 0 auto;
}
.mw-number-text {
color: var(--byline-color);
}
.mw-body-content .mw-number-text h3 {
color: var(--text-color);
}
#mw-indicator-mw-helplink a {
background: none;
padding: 0;
display: flex;
align-items: center;
}
#mw-indicator-mw-helplink a::before {
content: '';
margin-right: 5px;
-webkit-mask: url("/resources/src/mediawiki.helplink/images/helpNotice.svg?46d34") no-repeat 50% 50% / contain;
mask: url("/resources/src/mediawiki.helplink/images/helpNotice.svg?46d34") no-repeat 50% 50% / contain;
background: var(--text-color);
height: 20px;
width: 20px;
}
.results-info {
color: inherit;
}
.mw-search-profile-tabs {
background-color: var(--body-mid);
border-color: transparent;
}
.search-types .current a {
color: inherit;
}
#mw-searchoptions {
background-color: var(--body-mid);
border-color: transparent;
}
#mw-searchoptions .divider {
border-color: var(--body-border);
}
#mw-searchoptions h4 {
font-family: inherit;
}
#mw-searchoptions .oo-ui-labelElement:nth-of-type(odd) {
font-weight: bold;
}
.searchresult {
line-height: 1.5;
}
.searchalttitle,
#mw-search-interwiki li {
font-size: 90%;
}
.mw-search-result-data {
color: var(--byline-color);
}
.page-Special_ListFiles a.image img {
width: inherit;
height: inherit;
}
.page-Special_ListFiles .TablePager_col_thumb {
text-align: center;
}
#editcount table[border="1"] {
background-color: var(--body-main) !important;
border-color: var(--wikitable-border) !important;
margin-top: 0.5em;
}
#editcount table[border="1"] th,
#editcount table[border="1"] td {
padding: 0.2em 0.4em;
}
#editcount table[border="1"] th {
background-color: var(--wikitable-header-bg);
border: 1px solid var(--wikitable-border);
}
#editcount table[border="1"] td {
border: 1px solid var(--wikitable-border);
}
#editcount table[border="1"] tr:nth-child(odd) {
background-color: var(--body-light);
}
.mw-echo-ui-notificationBadgeButtonPopupWidget-popup > .oo-ui-popupWidget-popup .mw-echo-ui-placeholderItemWidget {
background-color: inherit;
}
table.mw-interwikitable.body td.mw-interwikitable-local-yes {
background-color: var(--table-yes-background);
color: var(--table-yes-color);
}
.mw-protectedpages-unknown {
color: var(--byline-color);
}
.watchlistredir,
.allpagesredirect {
font-style: italic;
}
.allpagesredirect:after {
color: var(--byline-color);
content: " (redirect)";
}
.mw-apisandbox-toolbar {
background: var(--body-main);
}
.oo-ui-menuOptionWidget .mw-apisandbox-flag {
color: var(--byline-color);
}
tr.mw-abusefilter-list-disabled,
tr.mw-abusefilter-list-disabled td {
color: var(--byline-color);
}
table.mw-abuselog-details {
background: var(--wikitable-bg);
border-color: var(--wikitable-border);
}
table.mw-abuselog-details th {
background: var(--wikitable-header-bg);
}
table.mw-abuselog-details th,
table.mw-abuselog-details td {
border-color: var(--wikitable-border);
}
.mw-abusefilter-log-hidden-entry {
color: var(--subtle-color);
}
body td.mw-abusefilter-history-changed {
background: var(--table-no-background);
}
div.mw-abusefilter-editor,
#mw-abusefilter-warn-preview,
#mw-abusefilter-disallow-preview {
border-color: var(--ooui-input-border);
}
.mw-destfile-warning {
border-color: var(--warningbox-border);
color: var(--text-color);
background-color: var(--warningbox-bg);
}
span.fileinput-button {
background-color: var(--ooui-normal);
border-color: var(--ooui-normal-border);
color: var(--ooui-text);
}
ul.fileupload-results li.ful-success {
background-color: var(--successbox-bg);
}
ul.fileupload-results li.ful-success a {
color: var(--link-color);
}
ul.fileupload-results li.ful-error {
background-color: var(--errorbox-bg);
}
#t-print,
#t-permalink {
display: none;
}
#filetoc {
border-radius: 2px;
background: var(--body-mid);
border-color: transparent;
margin: 0.5em auto;
text-align: center;
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
}
li.gallerybox div.thumb {
border: none;
background-color: var(--thumb-bg);
}
.smwfact {
display: none;
}
.list-header {
background-color: var(--body-mid);
color: inherit;
}
.editOptions {
color: var(--text-color);
background-color: var(--sourceeditor-background-secondary);
border-color: var(--sourceeditor-border);
}
.mw-json th,
.mw-json td {
border-color: var(--wikitable-border);
}
.mw-json td {
background: var(--wikitable-bg);
}
.mw-json th {
background: var(--wikitable-header-bg);
}
ffcb7f4a937f0aee149235844d9bce36ef7168cb
59
57
2024-03-22T02:53:45Z
Jayden
3
Updating CSS from [[MediaWiki:Common.less]]
css
text/css
/* <pre> */
:root {
--body-main: #e2dbc8;
--body-light: #d8ccb4;
--body-mid: #d0bd97;
--body-dark: #b8a282;
--body-border: #94866d;
--body-background-color: #513e36;
--button-background: #605443;
--button-color: #fff;
--button-border: #3c352a;
--button-dark: #18140c;
--button-light: #3a301d;
--sidebar: #cfc08d;
--background-text-color: #e2dbc8;
--background-link-color: #e2bd8a;
--search-box: #efeee6;
--link-color: #936039;
--redlink-color: #ba0000;
--text-color: #000;
--byline-color: #4c4c4c;
--subtle-color: #777;
--admin-blue: #332e75;
--bearcat-green: #13592e;
--awb-purple: #933b96;
--rsw-blue: #438ab6;
--osrsw-brown: #605443;
--thumb-bg: var(--body-light);
--thumb-caption-bg: var(--body-mid);
--sourceeditor-input-background: #fff;
--sourceeditor-background: var(--body-light);
--sourceeditor-background-secondary: var(--body-light);
--sourceeditor-border: var(--body-mid);
--codemirror-gutter-background: var(--body-mid);
}
@font-face {
font-family: 'Lora';
font-weight: 400 700;
font-style: normal;
font-display: swap;
src: url('filepath://Lora.woff2') format('woff2');
}
@font-face {
font-family: 'Lora';
font-weight: 400 700;
font-style: italic;
font-display: swap;
src: url('filepath://Lora-Italic.woff2') format('woff2');
}
:root {
--base-text-color: #36414f;
--base-heading-color: #444e5a;
--base-heading-border: #e4eaee;
--mw-code-background-color: #ddd4bb;
--body-background-image: url('filepath://Wiki_background.jpg');
}
#mw-page-base {
background: none;
}
.mw-body {
background-color: var(--body-main);
color: var(--text-color);
border-color: transparent;
box-shadow: 0 0 7px rgba(0, 0, 0, 0.15);
margin-top: 0;
}
h1,
h2,
h3,
h4,
h5,
h6 {
color: var(--text-color);
}
h1,
h2 {
border-color: var(--sidebar);
}
.mw-body h1,
.mw-body-content h1,
.mw-body-content h2,
.mw-body-content h3,
.mw-body-content h4,
.mw-body-content h5,
.mw-body-content h6 {
font-family: 'Lora', 'Palatino', 'Georgia', serif;
}
.mw-parser-output h2:first-of-type {
clear: left;
}
.mw-footer {
color: var(--background-text-color);
}
.mw-footer li {
color: var(--background-text-color);
}
.mw-footer a,
.mw-footer a:active,
.mw-footer a:visited {
color: var(--background-link-color);
}
::placeholder {
color: var(--subtle-color);
}
a {
color: var(--link-color);
}
a:visited,
a:active {
color: var(--link-color);
}
a.new {
color: var(--redlink-color);
}
a.new:visited {
color: var(--redlink-color);
}
.mw-parser-output a.extiw,
.mw-parser-output a.external {
color: var(--link-color);
}
.mw-parser-output a.extiw:visited,
.mw-parser-output a.external:visited,
.mw-parser-output a.extiw:active,
.mw-parser-output a.external:active {
color: var(--link-color);
}
.jsPurgeLink a.external {
color: var(--link-color);
}
:root {
--errorbox-bg: #feecea;
--errorbox-border: #ee4231;
--warningbox-bg: #fef9de;
--warningbox-border: #f9d000;
--successbox-bg: #ecf8e3;
--successbox-border: #6bc71f;
}
.mw-message-box-error,
.errorbox,
.mw-message-box-warning,
.warningbox,
.mw-message-box-success,
.successbox,
.usermessage {
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
}
.mw-message-box-error,
.errorbox {
background-color: var(--errorbox-bg);
border-color: var(--errorbox-border);
}
.mw-message-box-warning,
.warningbox,
.usermessage {
background-color: var(--warningbox-bg);
border-color: var(--warningbox-border);
}
.mw-message-box-success,
.successbox {
background-color: var(--successbox-bg);
border-color: var(--successbox-border);
}
.catlinks {
background: var(--body-light);
border: 1px solid var(--body-dark);
padding: 8px 15px;
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
}
.catlinks li {
border-color: var(--body-mid);
}
.filehistory a img,
#file img {
background: url("data:image/svg+xml,%3C%3Fxml version='1.0' encoding='UTF-8'%3F%3E%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16'%3E%3Cpath d='M0 0h8v16h8V8H0z' opacity='.13'/%3E%3C/svg%3E") repeat;
}
#file img:hover {
background: none;
}
.mw-highlight {
background: none;
}
.mw-highlight .linenos {
background-color: var(--mw-code-background-color);
color: var(--byline-color);
}
.mw-highlight a:hover .linenos,
.mw-highlight .hll a .linenos {
color: var(--text-color);
}
.mw-content-ltr.mw-highlight-lines pre,
.mw-content-ltr.content .mw-highlight-lines pre {
box-shadow: inset 2.75em 0 0 var(--mw-code-background-color);
}
#pagehistory ul {
list-style: none;
margin: 0;
}
#pagehistory li {
border: 1px solid transparent;
padding: 1px 10px;
margin: 2px 0;
}
#pagehistory li.selected {
background-color: var(--body-light);
color: inherit;
border: 1px dashed var(--body-border);
outline: none;
}
#mw-history-compare > div:first-of-type {
position: -webkit-sticky;
position: sticky;
top: 0;
background-color: var(--body-main);
border-bottom: 1px solid var(--body-dark);
padding: 0.25em 0;
}
.wgl-stickyheader #mw-history-compare > div:first-of-type {
top: 2.5rem;
}
.autocomment,
.autocomment a,
.autocomment a:visited {
color: var(--link-color);
}
li span.deleted,
span.history-deleted {
color: var(--byline-color);
}
.mw-usertoollinks-contribs-no-edits,
.mw-usertoollinks-contribs-no-edits:visited {
color: var(--redlink-color);
}
.CategoryTreeToggle {
color: var(--link-color);
}
body.wgl-stickyheader.action-view .mw-headline:target::before {
display: block;
content: '';
margin-top: -3rem;
height: 3rem;
visibility: hidden;
pointer-events: none;
}
.mw-mmv-post-image {
color: var(--text-color);
background-color: var(--body-main);
}
.mw-mmv-image-metadata {
border-top-color: var(--body-mid);
background-color: var(--body-light);
}
.mw-mmv-dialog,
.mw-mmv-dialog .mw-mmv-dialog-down-arrow,
.mw-mmv-options-dialog .mw-mmv-dialog-down-arrow {
background-color: var(--body-light);
box-shadow: none;
}
.mw-mmv-options-enable-alert {
background-color: var(--body-light);
color: var(--text-color);
}
.mw-mmv-options-dialog-header,
.mw-mmv-options-text-header,
.mw-mmv-options-text-body,
.mw-mmv-options-enable-alert,
.mw-mmv-options-dialog .mw-mmv-disable-confirmation .mw-mmv-options-dialog-header,
.mw-mmv-options-dialog .mw-mmv-disable-confirmation .mw-mmv-options-text-header {
color: var(--text-color);
}
.mw-revslider-container {
border-color: var(--sidebar);
}
.mw-revslider-slider-wrapper {
border-top-color: var(--sidebar);
}
.mw-ui-button {
background-color: var(--ooui-normal);
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
}
.mw-ui-button:not(:disabled):hover,
.mw-ui-button:not(:disabled):active {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
}
.mw-ui-button:not(:disabled):focus {
color: var(--ooui-text);
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent), inset 0 0 0 2px #fff;
}
.mw-ui-button:not(:disabled):visited {
color: var(--ooui-text);
}
.mw-ui-button.mw-ui-progressive:not(:disabled) {
background-color: var(--ooui-progressive);
color: #fff;
border-color: var(--ooui-progressive);
}
.mw-ui-button.mw-ui-progressive:not(:disabled):hover {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
}
.mw-ui-button.mw-ui-progressive:not(:disabled):focus {
box-shadow: inset 0 0 0 1px var(--ooui-accent), inset 0 0 0 2px #fff;
}
.mw-ui-button.mw-ui-progressive:not(:disabled):active,
.mw-ui-button.mw-ui-progressive:not(:disabled).is-on {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
box-shadow: none;
}
.mw-ui-button.mw-ui-destructive:not( :disabled ) {
color: #fff;
}
.mw-ui-button.mw-ui-quiet,
.mw-ui-button.mw-ui-quiet.mw-ui-progressive,
.mw-ui-button.mw-ui-quiet.mw-ui-destructive {
color: var(--text-color);
}
input[type='checkbox']:hover + .mw-ui-button.mw-ui-quiet,
input[type='checkbox']:hover + .mw-ui-button.mw-ui-quiet.mw-ui-progressive,
input[type='checkbox']:hover + .mw-ui-button.mw-ui-quiet.mw-ui-destructive,
.mw-ui-button.mw-ui-quiet:hover,
.mw-ui-button.mw-ui-quiet.mw-ui-progressive:hover,
.mw-ui-button.mw-ui-quiet.mw-ui-destructive:hover {
background-color: rgba(0, 24, 73, 0.02745098);
color: var(--text-color);
border-color: transparent;
}
input[type='checkbox']:focus + .mw-ui-button.mw-ui-quiet,
input[type='checkbox']:focus + .mw-ui-button.mw-ui-quiet.mw-ui-progressive,
input[type='checkbox']:focus + .mw-ui-button.mw-ui-quiet.mw-ui-destructive,
.mw-ui-button.mw-ui-quiet:focus,
.mw-ui-button.mw-ui-quiet.mw-ui-progressive:focus,
.mw-ui-button.mw-ui-quiet.mw-ui-destructive:focus {
color: var(--text-color);
}
input[type='checkbox']:active + .mw-ui-button.mw-ui-quiet,
input[type='checkbox']:active + .mw-ui-button.mw-ui-quiet.mw-ui-progressive,
input[type='checkbox']:active + .mw-ui-button.mw-ui-quiet.mw-ui-destructive,
.mw-ui-button.mw-ui-quiet:active,
.mw-ui-button.mw-ui-quiet.mw-ui-progressive:active,
.mw-ui-button.mw-ui-quiet.mw-ui-destructive:active {
background-color: rgba(0, 36, 73, 0.08235294);
color: var(--text-color);
border-color: #72777d;
}
.mw-ui-input {
background-color: var(--ooui-input);
color: var(--text-color);
border-color: var(--ooui-input-border);
}
.mw-ui-input:hover {
border-color: var(--ooui-input-border--hover);
}
.mw-ui-input::placeholder {
color: var(--byline-color);
}
.mw-content-ltr .redirectText li:first-child {
padding: 0;
background: 0;
}
.mw-content-ltr .redirectText li:first-child::before {
content: '';
background: currentcolor;
-webkit-mask: url("filepath://Redirect-arrow.svg") no-repeat 50% 50% / contain;
mask: url("filepath://Redirect-arrow.svg") no-repeat 50% 50% / contain;
display: inline-block;
width: 47px;
height: 20px;
}
:root {
--wikitable-header-bg: var(--body-dark);
--wikitable-border: var(--body-border);
--wikitable-bg: var(--body-light);
--wikitable-bg-lighter: #e9e3d6;
--wikitable-color: var(--text-color);
--table-na-background: rgba(255, 255, 255, 0.3);
--table-na-color: var(--subtle-color);
--table-yes-background: #c3e8a3;
--table-yes-color: #2e5e05;
--table-no-background: #fbc0ba;
--table-no-color: #801c13;
--table-maybe-background: #fcea94;
--table-maybe-color: #786300;
}
.wikitable {
background: var(--wikitable-bg);
color: var(--wikitable-color);
border-color: var(--wikitable-border);
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
}
.wikitable > tr > th,
.wikitable > tr > td,
.wikitable > * > tr > th,
.wikitable > * > tr > td {
border-color: var(--wikitable-border);
}
.wikitable > tr > th.table-noborder,
.wikitable > tr > td.table-noborder,
.wikitable > * > tr > th.table-noborder,
.wikitable > * > tr > td.table-noborder {
border-left-style: hidden;
border-right-style: hidden;
padding-left: 0;
padding-right: 0;
}
.wikitable > tr > th,
.wikitable > * > tr > th {
background-color: var(--wikitable-header-bg);
}
.tabber .wikitable {
box-shadow: none;
}
.mw_metadata td,
.mw_metadata th {
border-color: var(--wikitable-border);
}
.mw_metadata th {
background-color: var(--wikitable-header-bg);
}
.mw_metadata td {
background-color: var(--wikitable-bg);
}
.mw-datatable {
border-color: var(--wikitable-border);
}
.mw-datatable td,
.mw-datatable th {
border-color: var(--wikitable-border);
}
.mw-datatable th {
background-color: var(--wikitable-header-bg);
}
.mw-datatable td {
background-color: var(--wikitable-bg);
}
.mw-datatable tr:hover td {
background-color: var(--wikitable-bg);
}
table.alternating-rows tr:nth-child(odd),
table.alternating-cols td:nth-child(odd) {
background: var(--wikitable-alternating-bg);
}
.table-na {
background: var(--table-na-background);
color: var(--table-na-color);
vertical-align: middle;
text-align: center;
}
.table-yes {
background: var(--table-yes-background);
color: var(--table-yes-color);
}
.table-positive {
background: var(--table-yes-background);
}
.table-no {
background: var(--table-no-background);
color: var(--table-no-color);
}
.table-negative {
background: var(--table-no-background);
}
.table-maybe {
background: var(--table-maybe-background);
color: var(--table-maybe-color);
}
#mw-allmessagestable .am_actual,
#mw-allmessagestable .am_default {
background-color: var(--wikitable-bg);
}
#mw-allmessagestable .am_default:hover,
#mw-allmessagestable .am_actual:hover,
#mw-allmessagestable tbody:hover td {
background-color: var(--wikitable-bg-lighter);
}
table.wikitable td.no-cell-spacing {
padding: 0;
height: 0;
}
table.wikitable td.no-cell-spacing table {
margin: -1px;
width: calc(100% + 2px);
height: calc(100% + 2px);
}
.plainlist ol,
.plainlist ul {
margin: 0;
}
.plainlist li {
margin-bottom: 0;
list-style: none;
}
table.align-right-1 td:nth-of-type(1),
table.align-right-2 td:nth-of-type(2),
table.align-right-3 td:nth-of-type(3),
table.align-right-4 td:nth-of-type(4),
table.align-right-5 td:nth-of-type(5),
table.align-right-6 td:nth-of-type(6),
table.align-right-7 td:nth-of-type(7),
table.align-right-8 td:nth-of-type(8),
table.align-right-9 td:nth-of-type(9),
table.align-right-10 td:nth-of-type(10),
table.align-right-11 td:nth-of-type(11),
table.align-right-12 td:nth-of-type(12),
table.align-right-13 td:nth-of-type(13),
table.align-right-14 td:nth-of-type(14),
table.align-right-15 td:nth-of-type(15),
table.align-right-16 td:nth-of-type(16),
table.align-right-17 td:nth-of-type(17),
table.align-right-18 td:nth-of-type(18),
table.align-right-19 td:nth-of-type(19),
table.align-right-20 td:nth-of-type(20) {
text-align: right;
}
table.align-center-1 td:nth-of-type(1),
table.align-center-2 td:nth-of-type(2),
table.align-center-3 td:nth-of-type(3),
table.align-center-4 td:nth-of-type(4),
table.align-center-5 td:nth-of-type(5),
table.align-center-6 td:nth-of-type(6),
table.align-center-7 td:nth-of-type(7),
table.align-center-8 td:nth-of-type(8),
table.align-center-9 td:nth-of-type(9),
table.align-center-10 td:nth-of-type(10),
table.align-center-11 td:nth-of-type(11),
table.align-center-12 td:nth-of-type(12),
table.align-center-13 td:nth-of-type(13),
table.align-center-14 td:nth-of-type(14),
table.align-center-15 td:nth-of-type(15),
table.align-center-16 td:nth-of-type(16),
table.align-center-17 td:nth-of-type(17),
table.align-center-18 td:nth-of-type(18),
table.align-center-19 td:nth-of-type(19),
table.align-center-20 td:nth-of-type(20) {
text-align: center;
}
table.align-left-1 td:nth-of-type(1),
table.align-left-2 td:nth-of-type(2),
table.align-left-3 td:nth-of-type(3),
table.align-left-4 td:nth-of-type(4),
table.align-left-5 td:nth-of-type(5),
table.align-left-6 td:nth-of-type(6),
table.align-left-7 td:nth-of-type(7),
table.align-left-8 td:nth-of-type(8),
table.align-left-9 td:nth-of-type(9),
table.align-left-10 td:nth-of-type(10),
table.align-left-11 td:nth-of-type(11),
table.align-left-12 td:nth-of-type(12),
table.align-left-13 td:nth-of-type(13),
table.align-left-14 td:nth-of-type(14),
table.align-left-15 td:nth-of-type(15),
table.align-left-16 td:nth-of-type(16),
table.align-left-17 td:nth-of-type(17),
table.align-left-18 td:nth-of-type(18),
table.align-left-19 td:nth-of-type(19),
table.align-left-20 td:nth-of-type(20) {
text-align: left;
}
:root {
--diff-addedline-border-color: #438ab5;
--diff-addedline-background: #bddff2;
--diff-addedline-color: #000;
--diff-deletedline-border-color: #379541;
--diff-deletedline-background: #c1edbf;
--diff-deletedline-color: #000;
--diff-context-border-color: var(--body-mid);
--diff-context-background: var(--body-mid);
}
.diff-context {
border-color: var(--diff-context-border-color);
background: var(--diff-context-background);
color: inherit;
}
.diff-addedline {
border-color: var(--diff-addedline-border-color);
}
.diff-addedline .diffchange {
background: var(--diff-addedline-background);
color: var(--diff-addedline-color);
}
.diff-deletedline {
border-color: var(--diff-deletedline-border-color);
}
.diff-deletedline .diffchange {
background: var(--diff-deletedline-background);
color: var(--diff-deletedline-color);
}
.mw-diff-movedpara-left:after,
.mw-diff-movedpara-right:after {
color: var(--text-color);
}
.mw-notification {
background-color: var(--body-light);
border-color: var(--body-border);
color: var(--text-color);
}
.mw-echo-ui-notificationsInboxWidget-toolbarWrapper {
background: var(--body-main);
}
.mw-body-content .mw-echo-ui-datedSubGroupListWidget-title-secondary {
color: var(--byline-color);
}
.mw-echo-ui-pageNotificationsOptionWidget.oo-ui-optionWidget-selected {
background-color: var(--ooui-normal);
color: var(--ooui-accent);
}
.mw-echo-ui-pageNotificationsOptionWidget-label-count {
background-color: var(--ooui-normal);
color: var(--byline-color);
}
.oo-ui-optionWidget-selected .mw-echo-ui-pageNotificationsOptionWidget-label-count {
color: var(--ooui-accent);
}
.mw-echo-ui-pageNotificationsOptionWidget.oo-ui-optionWidget-highlighted {
background-color: var(--ooui-normal);
color: var(--text-color);
}
.mw-echo-ui-crossWikiUnreadFilterWidget {
border-color: var(--body-border);
}
.mw-echo-ui-crossWikiUnreadFilterWidget-subtitle {
color: var(--byline-color);
}
.mw-echo-ui-notificationBadgeButtonPopupWidget-popup > .oo-ui-popupWidget-popup > .oo-ui-popupWidget-head,
.mw-echo-ui-notificationBadgeButtonPopupWidget-popup > .oo-ui-popupWidget-popup > .oo-ui-popupWidget-footer {
border-color: var(--ooui-interface-border);
}
.mw-echo-ui-notificationBadgeButtonPopupWidget-popup > .oo-ui-popupWidget-popup > .oo-ui-popupWidget-footer .mw-echo-ui-notificationBadgeButtonPopupWidget-footer-buttons .oo-ui-buttonElement:last-child {
border-left-color: var(--ooui-normal-border);
}
.mw-echo-ui-notificationItemWidget {
background-color: var(--ooui-normal);
border-color: var(--ooui-normal-border);
}
.mw-echo-ui-notificationItemWidget:hover,
.mw-echo-ui-notificationItemWidget-unread:hover {
background-color: var(--ooui-normal--hover);
}
.mw-echo-ui-notificationItemWidget:last-child {
border-bottom-color: var(--ooui-normal-border);
}
.mw-echo-ui-notificationItemWidget-unread {
background-color: var(--search-box);
}
.mw-echo-ui-crossWikiNotificationItemWidget-group,
.mw-echo-ui-bundleNotificationItemWidget-group {
background-color: var(--ooui-interface);
}
.mw-echo-ui-toggleReadCircleButtonWidget-circle {
background-color: var(--ooui-progressive);
}
.mw-echo-ui-toggleReadCircleButtonWidget:hover .mw-echo-ui-toggleReadCircleButtonWidget-circle {
background-color: var(--ooui-progressive--hover);
}
.mw-echo-ui-toggleReadCircleButtonWidget-circle-unread {
background-color: var(--ooui-normal);
border-color: var(--ooui-normal-border);
}
.mw-echo-ui-notificationItemWidget-content-message-header,
.mw-echo-ui-notificationItemWidget-content-message-body,
.mw-echo-ui-menuItemWidget > .oo-ui-buttonElement-button > .oo-ui-labelElement-label,
.mw-echo-ui-notificationItemWidget-content-actions-timestamp {
color: var(--ooui-text);
}
.mw-echo-ui-bundleNotificationItemWidget-group {
background-color: var(--body-main);
}
@keyframes unseen-fadeout-to-unread {
from {
background-color: var(--wikitable-bg-lighter);
}
to {
background-color: var(--search-box);
}
}
@keyframes unseen-fadeout-to-read {
from {
background-color: var(--wikitable-bg-lighter);
}
to {
background-color: var(--body-main);
}
}
.mwe-popups {
background: var(--body-light);
}
.mwe-popups .mwe-popups-container {
color: var(--text-color);
background: var(--body-light);
}
.mwe-popups .mwe-popups-container.flipped-x-y:before,
.mwe-popups .mwe-popups-container.flipped-y:before {
border-top: none;
}
.mwe-popups .mwe-popups-container.mwe-popups-no-image-tri:before {
border-bottom: none;
}
.mwe-popups .mwe-popups-container.flipped-x-y:after,
.mwe-popups .mwe-popups-container.flipped-y:after {
border-top-color: var(--body-light);
}
.mwe-popups .mwe-popups-container.mwe-popups-no-image-tri:after {
border-bottom-color: var(--body-light);
}
.mwe-popups .mwe-popups-settings-icon:hover,
.mwe-popups .mwe-popups-settings-icon:active {
background-color: var(--ooui-normal--hover);
}
.mwe-popups .mw-ui-icon-element:not(.disabled):hover {
background: none;
}
.mwe-popups .mwe-popups-extract {
color: var(--text-color);
}
.mwe-popups .mwe-popups-extract[dir='ltr']:after {
background-image: linear-gradient(to right, rgba(49, 62, 89, 0), var(--body-light) 50%);
}
.mwe-popups-overlay {
background-color: var(--ooui-window-background);
}
#mwe-popups-settings {
background: var(--ooui-interface);
border-color: var(--ooui-interface-border);
color: var(--text-color);
}
#mwe-popups-settings header {
border-color: var(--ooui-interface-border);
}
#mwe-popups-settings main#mwe-popups-settings-form p {
color: var(--byline-color);
}
#mwe-popups-settings main#mwe-popups-settings-form form label > span {
color: var(--ooui-text);
}
:root {
--smw-ask-options-even-bg: var(--body-mid);
--smw-ask-options-odd-bg: var(--body-light);
--smw-ask-action-btn-lblue-bg: var(--body-main);
--smw-ask-action-btn-lblue-color: #000;
--smw-ask-action-btn-lblue-border-color: var(--body-light);
--smw-ask-action-btn-dblue-bg: var(--body-light);
--smw-ask-action-btn-dblue-color: #fff;
--smw-ask-action-btn-dblue-border-color: var(--button-border);
}
.smw-ask-condition fieldset,
.smw-ask-printhead fieldset {
border-color: var(--sidebar);
}
.smw-ask-search fieldset,
.smw-ask-format fieldset,
.smw-ask-options fieldset {
border-color: var(--sidebar);
}
.strike > span:before,
.strike > span:after {
background: var(--sidebar);
}
.smw-ask-options-fields tr td {
background-color: var(--smw-ask-options-even-bg);
}
.smw-ask-options-fields tr:nth-child(odd) td {
background-color: var(--smw-ask-options-odd-bg);
}
.smw-ask-action-btn.smw-ask-action-btn-lblue,
.smw-ask-action-btn.smw-ask-action-btn-lblue:hover,
.smw-ask-action-btn.smw-ask-action-btn-lblue:visited {
background-color: var(--smw-ask-action-btn-lblue-bg);
color: var(--smw-ask-action-btn-lblue-color);
border-color: var(--smw-ask-action-btn-lblue-border-color);
}
.smw-ask-action-btn.smw-ask-action-btn-dblue,
.smw-ask-action-btn.smw-ask-action-btn-dblue:hover,
.smw-ask-action-btn.smw-ask-action-btn-dblue:visited {
background-color: var(--smw-ask-action-btn-dblue-bg);
color: var(--smw-ask-action-btn-dblue-color);
border-color: var(--smw-ask-action-btn-dblue-border-color);
}
.smw-ask-query textarea,
.smw-ask-actions textarea {
background-color: var(--ooui-interface);
border-color: var(--ooui-interface-border);
color: var(--ooui-text);
}
.smw-ask-query-format select {
background-color: var(--ooui-interface);
border: 1px solid var(--ooui-interface-border);
color: var(--ooui-text);
}
.smw-ask-toplinks {
background-color: var(--body-mid);
}
.smw-ask-toplinks span.smw-icon-info {
background: none;
padding: 0 !important;
}
.smw-ask-toplinks span.smw-icon-info::before {
content: '';
background: var(--text-color);
-webkit-mask: url("data:image/svg+xml,%3C%3Fxml version='1.0' encoding='UTF-8'%3F%3E%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 20 20'%3E%3Ctitle%3Einfo%3C/title%3E%3Cpath d='M10 0C4.477 0 0 4.477 0 10s4.477 10 10 10 10-4.477 10-10S15.523 0 10 0zM9 5h2v2H9zm0 4h2v6H9z'/%3E%3C/svg%3E") no-repeat 50% 50% / contain;
mask: url("data:image/svg+xml,%3C%3Fxml version='1.0' encoding='UTF-8'%3F%3E%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 20 20'%3E%3Ctitle%3Einfo%3C/title%3E%3Cpath d='M10 0C4.477 0 0 4.477 0 10s4.477 10 10 10 10-4.477 10-10S15.523 0 10 0zM9 5h2v2H9zm0 4h2v6H9z'/%3E%3C/svg%3E") no-repeat 50% 50% / contain;
padding: 0 0 3px 18px;
}
.smw-ask-options-row-odd {
background-color: var(--body-light);
}
.smw-ask-options-row-even {
background-color: var(--body-mid);
}
#options-toggle:not(:checked) + #options-list .options-parameter-list:after {
background-image: linear-gradient(to bottom, transparent, var(--body-mid) 90%);
}
.smw-ask-button-submit input {
background-color: var(--ooui-normal);
border-color: var(--ooui-normal-border);
color: var(--text-color);
}
.smw-ask-button-submit input:hover,
.smw-ask-button-lgrey:hover {
background-color: var(--ooui-normal--hover);
border-color: var(--ooui-normal-border);
}
input.smw-ask-action-btn.smw-ask-action-btn-dblue {
background-color: var(--ooui-normal);
border-color: var(--ooui-normal-border);
color: var(--ooui-text);
}
a.smw-ask-action-btn.smw-ask-action-btn-lblue {
background-color: var(--body-mid);
border-color: var(--body-mid);
color: var(--ooui-text);
}
a.smw-ask-action-btn.smw-ask-action-btn-lblue:visited {
background-color: var(--body-mid);
border-color: var(--body-mid);
color: var(--ooui-text);
}
a.smw-ask-action-btn.smw-ask-action-btn-lblue:hover {
background-color: var(--body-mid);
border-color: var(--body-mid);
color: var(--ooui-text);
}
a.smw-ask-action-btn-lgrey {
background-color: var(--ooui-normal);
border-color: var(--ooui-normal-border);
color: var(--ooui-text);
}
a.smw-ask-action-btn-lgrey:hover {
background-color: var(--ooui-normal--hover);
border-color: var(--ooui-normal-border);
color: var(--ooui-text);
}
.smw-callout-error {
background-color: var(--errorbox-bg);
border-color: var(--errorbox-border);
}
.smw-callout-info {
background-color: var(--body-light);
border-color: var(--body-dark);
}
.smw-callout-success {
background-color: var(--successbox-bg);
border-color: var(--successbox-border);
}
.smw-callout-warning {
background-color: var(--warningbox-bg);
border-color: var(--warningbox-bg);
}
.smw-tabs input.nav-tab:checked + label.nav-label,
.smw-tabs input.nav-tab:checked + label.nav-label:hover {
color: inherit;
}
#tab-smw-property-value:checked + label.nav-label .usage-count {
color: #fff;
background-color: var(--ooui-progressive);
}
#tab-smw-property-value:checked + label.nav-label .usage-count.moderate {
color: #fff;
background-color: #b55e0c;
border-color: #b55e0c;
}
#tab-smw-property-value:checked + label.nav-label .usage-count.high {
color: #fff;
background-color: #9f261e;
border-color: #9f261e;
}
.smw-property-page-results .header-title {
background-color: var(--ooui-interface);
border-bottom-color: var(--ooui-interface-border);
color: var(--ooui-text);
}
.smw-property-page-results .value-row:hover {
background-color: var(--ooui-normal--hover);
}
.smw-property-page-results .smw-table .header-row {
color: var(--text-color);
}
.tippy-tooltip.light-border-theme {
background-color: var(--body-light);
color: var(--text-color);
}
.tippy-tooltip.light-border-theme .tippy-arrow {
border-top-color: var(--body-light);
}
.tippy-tooltip.light-border-theme .tippy-arrow:after {
border-top-color: var(--body-light);
}
.tippy-header {
background-color: var(--body-dark);
border-bottom-color: var(--body-mid);
}
.smw-ui-input-filter {
background-color: var(--ooui-interface);
border-color: var(--ooui-interface-border);
color: var(--ooui-text);
}
.smw-ui-input-filter input {
border-left-color: var(--ooui-interface-border) !important;
color: var(--ooui-text) !important;
}
.smw-ui-pagination .page-link.link-disabled {
background-color: var(--ooui-disabled);
border-color: var(--ooui-disabled-border);
color: var(--subtle-color);
}
.smw-ui-pagination .page-link {
background-color: var(--ooui-normal);
border-color: var(--ooui-normal-border);
color: var(--link-color);
}
.smw-ui-pagination .page-link:hover {
background-color: var(--ooui-normal--hover);
border-color: var(--ooui-normal-border);
color: var(--link-color);
}
.smw-ui-pagination .page-link.link-active {
color: #fff;
background-color: var(--ooui-progressive);
border-color: var(--ooui-progressive);
}
.smw-tabs input.nav-tab:checked + label.nav-label {
border-color: var(--ooui-normal-border);
}
.smw-tabs section,
.smw-tabs .subtab-content {
border-top-color: var(--ooui-normal-border);
}
.smw-column-header {
color: var(--text-color);
}
.smw-factbox {
background: var(--body-main);
border-color: transparent;
}
.mw-body .mw-indicators #mw-indicator-smw-entity-examiner.mw-indicator .smw-indicator-vertical-bar-loader {
display: none;
}
.smwb-theme-light .smwb-title,
.smwb-theme-light .smwb-center,
.smwb-theme-light .smwb-actions,
.smwb-theme-light .smwb-prophead {
background-color: var(--body-mid);
}
.smwb-theme-light .smwb-factbox {
border-left-color: var(--body-mid);
}
.smwb-theme-light .smwb-ifactbox {
border-right-color: var(--body-mid);
}
.smwb-theme-light .smwb-propval {
background-color: var(--body-light);
}
.smwb-action-separator {
border-color: var(--wikitable-border);
}
.smwb-bottom {
border-bottom: 1px solid var(--wikitable-border);
}
.smwb-ifactbox .smwb-cell,
.smwb-factbox .smwb-cell {
border-top: 1px solid var(--wikitable-border);
}
.smwb-propvalue .smwb-prophead,
.smwb-ipropvalue .smwb-prophead,
.smwb-propvalue .smwb-propval,
.smwb-ipropvalue .smwb-propval {
font-size: 0.9em;
}
:root {
--filter-black-to-link: invert(36%) sepia(58%) saturate(433%) hue-rotate(344deg) brightness(100%) contrast(91%);
}
#bodyContent span.smwbrowse a {
color: black;
background-image: url('filepath://Smwbrowse.svg');
filter: var(--filter-black-to-link);
}
#bodyContent span.smwbrowse a:hover {
color: black;
background-image: url('filepath://Smwbrowse-hover.svg');
text-decoration: underline;
}
#bodyContent span.smwsearch a {
color: black;
filter: var(--filter-black-to-link);
background-image: url('filepath://Smwsearch.svg');
}
#bodyContent span.smwsearch a:hover {
color: black;
background-image: url('filepath://Smwsearch-hover.svg');
text-decoration: underline;
}
:root {
--tabber-tab-bg: var(--body-light);
--tabber-tab-border-color: var(--body-border);
--tabber-active-tab-bg: var(--body-light);
--tabber-active-tab-color: var(--text-color);
--tabber-active-tab-hover-bg: var(--body-light);
--tabber-active-tab-hover-border-color: var(--body-border);
--tabber-active-tab-hover-color: var(--text-color);
--tabber-active-tab-border-hider-color: var(--body-light);
--tabber-inactive-tab-bg: var(--body-background-color);
--tabber-inactive-tab-border-color: var(--body-border);
--tabber-inactive-tab-color: var(--text-color);
--tabber-inactive-tab-hover-bg: var(--body-light);
--tabber-inactive-tab-hover-border-color: var(--body-border);
}
.tabber {
margin: 1em 0;
}
.tabber .tabbertab {
background-color: var(--tabber-tab-bg);
border: 1px solid var(--tabber-tab-border-color);
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
padding: 1em 1.5em;
}
ul.tabbernav {
border: none;
margin-left: 2em;
margin-bottom: 0;
margin-right: 2em;
padding: 0;
font-family: inherit;
}
ul.tabbernav li.tabberactive > a {
background-color: var(--tabber-active-tab-bg);
color: var(--tabber-active-tab-color);
border-bottom: none;
position: relative;
}
ul.tabbernav li.tabberactive > a:hover {
color: var(--tabber-active-tab-hover-color);
background-color: var(--tabber-active-tab-hover-bg);
border-color: var(--tabber-active-tab-hover-border-color);
border-bottom: none;
}
ul.tabbernav li.tabberactive > a::after {
content: '';
position: absolute;
left: 0;
right: 0;
bottom: -1px;
border-bottom: 2px solid var(--tabber-active-tab-border-hider-color);
}
ul.tabbernav li a {
background-color: var(--tabber-inactive-tab-bg);
border-bottom: transparent;
border-color: var(--tabber-inactive-tab-border-color);
color: var(--tabber-inactive-tab-color);
display: inline-block;
font-size: 110%;
padding: 0.5em 1em;
}
ul.tabbernav li a:hover {
background-color: var(--tabber-inactive-tab-hover-bg);
border-color: var(--tabber-inactive-tab-hover-border-color);
}
ul.tabbernav li a:link,
ul.tabbernav li a:visited {
color: var(--tabber-inactive-tab-color);
}
:root {
--ooui-text: var(--text-color);
--ooui-interface: var(--body-light);
--ooui-interface-border: var(--body-border);
--ooui-window-background: rgba(255, 255, 255, 0.5);
--ooui-normal: #d5c7ad;
--ooui-normal--hover: #dfd5c1;
--ooui-normal-border: #b8a282;
--ooui-progressive: #605443;
--ooui-progressive--hover: #7e6e58;
--ooui-accent: var(--link-color);
--ooui-input: #fff;
--ooui-input-border: #b8a282;
--ooui-input-border--hover: #8a724f;
--ooui-disabled: #d1cdc5;
--ooui-disabled-border: #c2b9ab;
--ooui-disabled-text: var(--subtle-color);
--ooui-pending-background-image: repeating-linear-gradient(-45deg, var(--search-box), var(--search-box) 20px, var(--body-main) 20px, var(--body-main) 30px);
}
.oo-ui-widget {
color: var(--ooui-text);
}
.oo-ui-checkboxInputWidget [type='checkbox'] + span,
.oo-ui-radioInputWidget [type='radio'] + span {
background-color: var(--ooui-input);
border-color: var(--ooui-input-border);
}
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:checked + span,
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:indeterminate + span {
background-color: var(--ooui-progressive);
border-color: var(--ooui-progressive);
}
.oo-ui-radioInputWidget.oo-ui-widget-enabled [type='radio']:checked + span {
border-color: var(--ooui-progressive);
}
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:checked:hover + span,
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:indeterminate:hover + span {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
}
.oo-ui-radioInputWidget.oo-ui-widget-enabled [type='radio']:checked:hover + span {
border-color: var(--ooui-progressive--hover);
}
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:hover + span,
.oo-ui-radioInputWidget.oo-ui-widget-enabled [type='radio']:hover + span {
border-color: var(--ooui-accent);
}
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:focus + span {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:active + span,
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:checked:active + span,
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:indeterminate:active + span {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
box-shadow: inset 0 0 0 1px var(--ooui-progressive--hover);
}
.oo-ui-radioInputWidget.oo-ui-widget-enabled [type='radio']:active + span {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
}
.oo-ui-radioInputWidget.oo-ui-widget-enabled [type='radio']:checked:active + span {
border-color: var(--ooui-progressive--hover);
box-shadow: inset 0 0 0 1px var(--ooui-progressive--hover);
}
.oo-ui-radioInputWidget.oo-ui-widget-enabled [type='radio']:checked:active + span:before {
border-color: var(--ooui-progressive--hover);
}
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:checked:focus + span,
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:indeterminate:focus + span {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent), inset 0 0 0 2px #fff;
}
.oo-ui-checkboxInputWidget [type='checkbox']:disabled + span,
.oo-ui-radioInputWidget [type='radio']:disabled + span {
background-color: var(--ooui-disabled);
border-color: var(--ooui-disabled);
}
.oo-ui-dropdownWidget-handle {
border-color: var(--ooui-normal-border);
}
.oo-ui-dropdownWidget.oo-ui-widget-enabled .oo-ui-dropdownWidget-handle {
background-color: var(--ooui-normal);
color: var(--ooui-text);
}
.oo-ui-dropdownWidget.oo-ui-widget-enabled .oo-ui-dropdownWidget-handle:hover {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
}
.oo-ui-dropdownWidget.oo-ui-widget-enabled .oo-ui-dropdownWidget-handle:active {
color: var(--ooui-text);
}
.oo-ui-dropdownWidget.oo-ui-widget-enabled .oo-ui-dropdownWidget-handle:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-dropdownWidget.oo-ui-widget-enabled.oo-ui-dropdownWidget-open .oo-ui-dropdownWidget-handle {
background-color: var(--ooui-normal--hover);
}
.oo-ui-dropdownWidget.oo-ui-widget-disabled .oo-ui-dropdownWidget-handle {
color: var(--ooui-disabled-text);
text-shadow: none;
border-color: var(--ooui-disabled-border);
background-color: var(--ooui-disabled);
}
.oo-ui-dropdownInputWidget select {
border-color: var(--ooui-normal-border);
}
.oo-ui-dropdownInputWidget option {
background-color: var(--ooui-interface);
}
.oo-ui-dropdownInputWidget.oo-ui-widget-enabled {
background-color: var(--ooui-normal);
}
.oo-ui-dropdownInputWidget.oo-ui-widget-enabled:hover {
background-color: var(--ooui-normal--hover);
}
.oo-ui-dropdownInputWidget.oo-ui-widget-enabled select {
color: var(--ooui-text);
}
.oo-ui-dropdownInputWidget.oo-ui-widget-enabled select:hover,
.oo-ui-dropdownInputWidget.oo-ui-widget-enabled select:active {
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
}
.oo-ui-dropdownInputWidget.oo-ui-widget-enabled select:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-labelWidget.oo-ui-inline-help {
color: var(--byline-color);
}
.oo-ui-menuSelectWidget {
background-color: var(--ooui-interface);
border-color: var(--ooui-interface-border);
}
.oo-ui-menuSelectWidget-frameless {
box-shadow: inset 0 -1px 0 0 var(--ooui-normal-border);
}
.oo-ui-menuSectionOptionWidget {
color: var(--byline-color);
}
.oo-ui-menuOptionWidget.oo-ui-optionWidget-highlighted,
.oo-ui-menuOptionWidget.oo-ui-optionWidget-selected {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
}
.oo-ui-menuOptionWidget.oo-ui-optionWidget-selected.oo-ui-menuOptionWidget.oo-ui-optionWidget-highlighted,
.oo-ui-menuOptionWidget.oo-ui-optionWidget-pressed.oo-ui-menuOptionWidget.oo-ui-optionWidget-highlighted {
color: var(--ooui-accent);
}
.oo-ui-menuOptionWidget.oo-ui-widget-enabled.oo-ui-optionWidget {
color: var(--ooui-text);
}
.oo-ui-messageDialog-title {
color: inherit;
}
.oo-ui-messageWidget.oo-ui-messageWidget-block.oo-ui-flaggedElement-error {
background-color: var(--errorbox-bg);
border-color: var(--errorbox-border);
}
.oo-ui-messageWidget.oo-ui-messageWidget-block.oo-ui-flaggedElement-warning {
background-color: var(--warningbox-bg);
border-color: var(--warningbox-border);
}
.oo-ui-messageWidget.oo-ui-messageWidget-block.oo-ui-flaggedElement-success {
background-color: var(--successbox-bg);
border-color: var(--successbox-border);
}
.oo-ui-messageWidget.oo-ui-messageWidget-block.oo-ui-flaggedElement-notice {
background-color: var(--messagebox-info-background);
border-color: var(--messagebox-info-border);
}
.oo-ui-messageWidget.oo-ui-flaggedElement-error:not(.oo-ui-messageWidget-block),
.oo-ui-messageWidget.oo-ui-flaggedElement-success:not(.oo-ui-messageWidget-block) {
color: var(--ooui-text);
}
.oo-ui-optionWidget.oo-ui-widget-disabled {
color: var(--ooui-disabled-text);
}
.oo-ui-outlineControlsWidget {
background-color: var(--ooui-normal);
}
.oo-ui-outlineOptionWidget.oo-ui-optionWidget-highlighted {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
}
.oo-ui-popupWidget-popup {
background-color: var(--ooui-interface);
border-color: var(--ooui-interface-border);
}
.oo-ui-popupWidget-anchored-top .oo-ui-popupWidget-anchor:after {
border-bottom-color: var(--ooui-interface);
}
.oo-ui-popupWidget-anchored-top .oo-ui-popupWidget-anchor:before {
border-bottom-color: var(--ooui-interface-border);
}
.oo-ui-popupWidget-anchored-bottom .oo-ui-popupWidget-anchor:after {
border-top-color: var(--ooui-interface);
}
.oo-ui-popupWidget-anchored-bottom .oo-ui-popupWidget-anchor:before {
border-top-color: var(--ooui-interface-border);
}
.oo-ui-popupWidget-anchored-start .oo-ui-popupWidget-anchor:after {
border-right-color: var(--ooui-interface);
}
.oo-ui-popupWidget-anchored-start .oo-ui-popupWidget-anchor:before {
border-right-color: var(--ooui-interface-border);
}
.oo-ui-popupWidget-anchored-end .oo-ui-popupWidget-anchor:after {
border-left-color: var(--ooui-interface);
}
.oo-ui-popupWidget-anchored-end .oo-ui-popupWidget-anchor:before {
border-left-color: var(--ooui-interface-border);
}
.oo-ui-searchWidget-query {
border-bottom-color: var(--ooui-interface-border);
}
.oo-ui-selectFileWidget-dropTarget {
background-color: var(--ooui-interface);
border-color: var(--ooui-interface-border);
}
.oo-ui-selectFileWidget.oo-ui-widget-enabled.oo-ui-selectFileWidget-dropTarget {
background-color: var(--ooui-interface);
}
.oo-ui-selectFileWidget.oo-ui-widget-enabled.oo-ui-selectFileWidget-dropTarget:hover {
border-color: var(--ooui-input-border--hover);
}
.oo-ui-tabOptionWidget {
color: var(--ooui-text);
}
.oo-ui-tabSelectWidget-framed .oo-ui-tabOptionWidget.oo-ui-optionWidget-selected {
background-color: var(--body-dark);
color: var(--ooui-text);
}
.oo-ui-tabSelectWidget-framed .oo-ui-tabOptionWidget.oo-ui-optionWidget-selected .oo-ui-labelElement-label {
border-bottom-color: var(--body-border);
}
.oo-ui-tabSelectWidget-framed .oo-ui-tabOptionWidget.oo-ui-widget-enabled:hover,
.oo-ui-tabSelectWidget-framed .oo-ui-tabOptionWidget.oo-ui-widget-enabled:active {
background-color: var(--body-light);
color: var(--ooui-text);
}
.oo-ui-tabSelectWidget-framed .oo-ui-tabOptionWidget.oo-ui-widget-enabled.oo-ui-optionWidget-selected:hover {
background-color: var(--body-dark);
}
.oo-ui-tabSelectWidget-frameless .oo-ui-tabOptionWidget.oo-ui-optionWidget-selected {
color: var(--ooui-progressive);
box-shadow: inset 0 -2px 0 0 var(--ooui-progressive);
}
.oo-ui-tabSelectWidget-frameless .oo-ui-tabOptionWidget.oo-ui-optionWidget-selected:hover,
.oo-ui-tabSelectWidget-frameless .oo-ui-tabOptionWidget.oo-ui-optionWidget-selected:focus {
color: var(--ooui-progressive--hover);
box-shadow: inset 0 -2px 0 0 var(--ooui-progressive--hover);
}
.oo-ui-tabSelectWidget-framed {
background: none;
border-bottom: 1px solid var(--ooui-interface-border);
}
.oo-ui-tabSelectWidget-frameless {
box-shadow: inset 0 -1px 0 0 var(--ooui-interface-border);
}
.oo-ui-tabSelectWidget-mobile {
}
.oo-ui-tabSelectWidget-mobile.oo-ui-tabSelectWidget-framed:after {
background: var(--mobile-navbox-linear-gradient);
}
.oo-ui-tabSelectWidget-mobile.oo-ui-tabSelectWidget-frameless:after {
background: var(--mobile-navbox-linear-gradient);
}
.oo-ui-tagItemWidget {
border-color: var(--ooui-normal-border);
}
.oo-ui-tagItemWidget.oo-ui-widget-enabled {
color: var(--ooui-text);
}
.oo-ui-tagItemWidget.oo-ui-widget-enabled:hover {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
}
.oo-ui-tagItemWidget.oo-ui-widget-enabled:not( .oo-ui-tagItemWidget-fixed ) {
background-color: var(--ooui-normal);
}
.oo-ui-tagItemWidget.oo-ui-widget-enabled .oo-ui-buttonElement-button:hover {
background-color: var(--ooui-normal--hover);
}
.oo-ui-tagMultiselectWidget.oo-ui-widget-enabled {
background-color: var(--ooui-interface);
}
.oo-ui-tagMultiselectWidget.oo-ui-widget-enabled.oo-ui-tagMultiselectWidget-outlined {
background-color: var(--ooui-normal);
}
.oo-ui-tagMultiselectWidget.oo-ui-widget-enabled.oo-ui-tagMultiselectWidget-outlined .oo-ui-tagItemWidget.oo-ui-widget-enabled {
background-color: var(--ooui-interface);
}
.oo-ui-textInputWidget .oo-ui-inputWidget-input {
background-color: var(--ooui-input);
color: var(--ooui-text);
border-color: var(--ooui-input-border);
}
.oo-ui-textInputWidget.oo-ui-widget-enabled .oo-ui-inputWidget-input::placeholder {
color: var(--subtle-color);
}
.oo-ui-textInputWidget.oo-ui-widget-enabled .oo-ui-inputWidget-input:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-textInputWidget.oo-ui-widget-enabled .oo-ui-inputWidget-input[readonly]:not(.oo-ui-pendingElement-pending) {
background-color: var(--ooui-disabled);
color: var(--ooui-disabled-text);
}
.oo-ui-textInputWidget.oo-ui-widget-enabled:hover .oo-ui-inputWidget-input {
border-color: var(--ooui-input-border--hover);
}
.oo-ui-textInputWidget.oo-ui-widget-enabled:hover .oo-ui-inputWidget-input:focus {
border-color: var(--ooui-accent);
}
@media screen and (min-width: 0) {
.oo-ui-textInputWidget.oo-ui-widget-enabled textarea.oo-ui-inputWidget-input:focus {
outline: 1px solid var(--ooui-accent);
}
}
.oo-ui-textInputWidget.oo-ui-widget-disabled .oo-ui-inputWidget-input {
background-color: var(--ooui-disabled);
color: var(--ooui-disabled-text);
text-shadow: none;
border-color: var(--ooui-disabled-border);
}
.oo-ui-toggleSwitchWidget {
background-color: var(--ooui-input);
border-color: var(--ooui-input-border);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled .oo-ui-toggleSwitchWidget-grip {
background-color: var(--ooui-input);
border-color: var(--ooui-input-border);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:hover {
background-color: var(--ooui-input);
border-color: var(--ooui-accent);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:hover .oo-ui-toggleSwitchWidget-grip {
background-color: var(--ooui-input);
border-color: var(--ooui-accent);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:active,
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:active:hover,
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:active:focus {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
box-shadow: inset 0 0 0 1px var(--ooui-progressive--hover);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:active .oo-ui-toggleSwitchWidget-grip,
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:active:hover .oo-ui-toggleSwitchWidget-grip,
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:active:focus .oo-ui-toggleSwitchWidget-grip {
background-color: var(--ooui-input);
border-color: var(--ooui-input);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:focus .oo-ui-toggleSwitchWidget-grip {
border-color: var(--ooui-accent);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled.oo-ui-toggleWidget-on {
background-color: var(--ooui-progressive);
border-color: var(--ooui-progressive);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled.oo-ui-toggleWidget-on .oo-ui-toggleSwitchWidget-grip {
background-color: var(--ooui-input);
border-color: var(--ooui-input);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled.oo-ui-toggleWidget-on:hover {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled.oo-ui-toggleWidget-on:active,
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled.oo-ui-toggleWidget-on:active:hover {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled.oo-ui-toggleWidget-on:focus {
border-color: var(--ooui-progressive);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled.oo-ui-toggleWidget-on:focus::before {
border-color: #fff;
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-disabled {
background-color: var(--ooui-disabled);
border-color: var(--ooui-disabled);
}
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled > .oo-ui-buttonElement-button {
color: var(--ooui-text);
}
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled > .oo-ui-buttonElement-button:hover {
color: var(--ooui-text);
}
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled > .oo-ui-buttonElement-button:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled.oo-ui-buttonElement-pressed > input.oo-ui-buttonElement-button,
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled > .oo-ui-buttonElement-button:active {
color: var(--ooui-text);
}
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button,
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button:hover {
color: var(--ooui-text);
}
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button:active,
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive.oo-ui-buttonElement-pressed > .oo-ui-buttonElement-button {
color: var(--ooui-text);
border-color: var(--ooui-text);
}
.oo-ui-buttonElement-frameless.oo-ui-widget-disabled > .oo-ui-buttonElement-button {
color: var(--ooui-disabled-text);
}
.oo-ui-buttonElement-framed.oo-ui-widget-disabled > .oo-ui-buttonElement-button {
background-color: var(--ooui-disabled);
border-color: var(--ooui-disabled-border);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled > .oo-ui-buttonElement-button {
background-color: var(--ooui-normal);
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled > .oo-ui-buttonElement-button:hover {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled > .oo-ui-buttonElement-button:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-buttonElement-active > .oo-ui-buttonElement-button {
background-color: var(--ooui-progressive--hover);
color: #fff;
border-color: var(--ooui-progressive--hover);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-buttonElement-active > .oo-ui-buttonElement-button:focus {
border-color: var(--ooui-progressive--hover);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled > .oo-ui-buttonElement-button:active,
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-buttonElement-pressed > .oo-ui-buttonElement-button {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive {
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button {
color: var(--ooui-text);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button:hover {
background-color: var(--ooui-normal--hover);
border-color: var(--ooui-progressive--hover);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-destructive > .oo-ui-buttonElement-button {
color: var(--ooui-text);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-destructive > .oo-ui-buttonElement-button:hover {
background-color: var(--ooui-normal--hover);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button {
background-color: var(--ooui-progressive);
border-color: var(--ooui-progressive);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button:hover {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent), inset 0 0 0 2px #fff;
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button:active,
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive.oo-ui-buttonElement-pressed > .oo-ui-buttonElement-button,
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive.oo-ui-buttonElement-active > .oo-ui-buttonElement-button,
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive.oo-ui-popupToolGroup-active > .oo-ui-buttonElement-button {
color: #fff;
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
}
.oo-ui-pendingElement-pending {
background-image: var(--ooui-pending-background-image);
background-size: 200%;
animation: oo-ui-pendingElement-stripes 6s linear infinite;
}
@keyframes oo-ui-pendingElement-stripes {
100% {
background-position: 100%;
}
}
.oo-ui-messageDialog-content > .oo-ui-window-foot {
outline-color: var(--ooui-interface-border);
}
.oo-ui-messageDialog-message {
color: var(--ooui-text);
}
.oo-ui-messageDialog-actions-horizontal .oo-ui-actionWidget {
border-right-color: var(--ooui-interface-border);
}
.oo-ui-messageDialog-actions-vertical .oo-ui-actionWidget {
border-bottom-color: var(--ooui-interface-border);
}
.oo-ui-processDialog-content .oo-ui-window-head,
.oo-ui-processDialog-content .oo-ui-window-foot {
outline-color: var(--ooui-interface-border);
}
.oo-ui-processDialog .oo-ui-actionWidget > .oo-ui-buttonElement-button {
border-top-color: transparent;
border-bottom-color: transparent;
}
.oo-ui-processDialog .oo-ui-actionWidget > .oo-ui-buttonElement-button:hover,
.oo-ui-processDialog .oo-ui-actionWidget > .oo-ui-buttonElement-button:active {
border-top-color: transparent;
border-bottom-color: transparent;
}
.oo-ui-processDialog .oo-ui-actionWidget:not( .oo-ui-flaggedElement-progressive ):not( .oo-ui-flaggedElement-destructive ) > .oo-ui-buttonElement-button:hover,
.oo-ui-processDialog .oo-ui-actionWidget:not( .oo-ui-flaggedElement-progressive ):not( .oo-ui-flaggedElement-destructive ) > .oo-ui-buttonElement-button:active {
border-right-color: var(--ooui-interface-border);
border-left-color: transparent;
}
.oo-ui-processDialog .oo-ui-actionWidget:not( .oo-ui-flaggedElement-progressive ):not( .oo-ui-flaggedElement-destructive ) > .oo-ui-buttonElement-button:focus {
border-color: var(--ooui-accent);
}
.oo-ui-processDialog-actions-safe .oo-ui-actionWidget > .oo-ui-buttonElement-button,
.oo-ui-processDialog-actions-other .oo-ui-actionWidget > .oo-ui-buttonElement-button {
border-right-color: var(--ooui-normal-border);
border-left-color: transparent;
}
.oo-ui-processDialog-actions-safe .oo-ui-widget-enabled.oo-ui-iconElement:not( .oo-ui-labelElement ) > .oo-ui-buttonElement-button:hover {
background-color: var(--ooui-normal--hover);
border-right-color: var(--ooui-interface-border);
}
.oo-ui-windowManager-modal > .oo-ui-dialog {
background-color: var(--ooui-window-background);
}
.oo-ui-windowManager-modal > .oo-ui-dialog > .oo-ui-window-frame {
background-color: var(--ooui-interface);
}
.oo-ui-windowManager-modal.oo-ui-windowManager-floating > .oo-ui-dialog > .oo-ui-window-frame {
border-color: var(--ooui-interface-border);
}
.oo-ui-window {
color: var(--ooui-text);
}
.oo-ui-toolbar-bar {
background-color: var(--ooui-interface);
color: var(--ooui-text);
}
.oo-ui-toolbar-position-top > .oo-ui-toolbar-bar {
border-bottom-color: var(--body-mid);
}
.oo-ui-toolbar-bar .oo-ui-bookletLayout > .oo-ui-menuLayout-menu {
border-right-color: var(--body-mid);
}
.oo-ui-tool.oo-ui-widget-enabled > .oo-ui-tool-link:hover {
background-color: var(--ooui-normal--hover);
}
.oo-ui-tool.oo-ui-widget-enabled > .oo-ui-tool-link:focus {
outline: 1px solid var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-tool.oo-ui-widget-enabled > .oo-ui-tool-link:active,
.oo-ui-tool.oo-ui-widget-enabled.oo-ui-tool-active > .oo-ui-tool-link,
.oo-ui-tool.oo-ui-widget-enabled.oo-ui-popupToolGroup-active > .oo-ui-tool-link {
background-color: var(--ooui-normal--hover);
color: var(--ooui-accent);
box-shadow: none;
}
.oo-ui-tool.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive > .oo-ui-tool-link {
background-color: var(--ooui-progressive);
}
.oo-ui-tool.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive > .oo-ui-tool-link:hover {
background-color: var(--ooui-progressive--hover);
}
.oo-ui-tool.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive > .oo-ui-tool-link:focus {
box-shadow: inset 0 0 0 1px var(--ooui-accent), inset 0 0 0 2px #fff;
}
.oo-ui-tool.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive > .oo-ui-tool-link:active,
.oo-ui-tool.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive.oo-ui-tool-active > .oo-ui-tool-link {
background-color: var(--ooui-progressive--hover);
}
.oo-ui-listToolGroup-tools .oo-ui-tool.oo-ui-widget-enabled {
background-color: var(--ooui-normal);
}
.oo-ui-listToolGroup-tools .oo-ui-tool.oo-ui-widget-enabled:hover {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
}
.oo-ui-listToolGroup-tools .oo-ui-tool-active.oo-ui-widget-enabled .oo-ui-tool-link .oo-ui-tool-title {
color: var(--ooui-progressive);
}
.oo-ui-menuToolGroup {
border-left-color: var(--body-mid);
border-right-color: var(--body-mid);
}
.oo-ui-popupToolGroup-tools {
background-color: var(--ooui-interface);
border-color: var(--body-mid);
}
.oo-ui-popupToolGroup.oo-ui-widget-enabled > .oo-ui-popupToolGroup-handle:hover {
background-color: var(--ooui-normal--hover);
}
.oo-ui-popupToolGroup.oo-ui-widget-enabled > .oo-ui-popupToolGroup-handle:focus {
outline: 1px solid var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-toolbar-actions .oo-ui-popupToolGroup.oo-ui-widget-enabled > .oo-ui-popupToolGroup-handle:hover {
border-right-color: var(--ooui-normal--hover);
}
.oo-ui-popupToolGroup-tools .oo-ui-tool.oo-ui-widget-enabled .oo-ui-tool-link:focus {
box-shadow: inset 0 0 0 2px var(--ooui-accent);
}
.oo-ui-popupToolGroup-tools .oo-ui-tool-active.oo-ui-widget-enabled .oo-ui-tool-link .oo-ui-tool-title {
color: var(--ooui-progressive);
}
.oo-ui-popupToolGroup.oo-ui-popupToolGroup-active > .oo-ui-popupToolGroup-handle {
background-color: var(--ooui-normal);
color: var(--ooui-accent);
}
.oo-ui-popupToolGroup.oo-ui-popupToolGroup-active > .oo-ui-popupToolGroup-handle:hover {
background-color: var(--ooui-normal--hover);
color: var(--ooui-accent);
}
.oo-ui-bookletLayout-outlinePanel > .oo-ui-outlineControlsWidget {
border-top-color: var(--ooui-interface-border);
}
.oo-ui-bookletLayout > .oo-ui-menuLayout-menu {
border-right-color: var(--ooui-interface-border);
}
.oo-ui-fieldLayout-disabled > .oo-ui-fieldLayout-body > .oo-ui-fieldLayout-header > .oo-ui-labelElement-label {
color: var(--ooui-disabled-text);
}
.oo-ui-panelLayout-framed {
border-color: var(--sidebar);
}
.oo-ui-icon-settings {
background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' width='20' height='20' viewBox='0 0 20 20'%3E%3Ctitle%3Esettings%3C/title%3E%3Cg transform='translate(10 10)'%3E%3Cpath id='a' d='M1.5-10h-3l-1 6.5h5m0 7h-5l1 6.5h3'/%3E%3Cuse xlink:href='%23a' transform='rotate(45)'/%3E%3Cuse xlink:href='%23a' transform='rotate(90)'/%3E%3Cuse xlink:href='%23a' transform='rotate(135)'/%3E%3C/g%3E%3Cpath d='M10 2.5a7.5 7.5 0 0 0 0 15 7.5 7.5 0 0 0 0-15v4a3.5 3.5 0 0 1 0 7 3.5 3.5 0 0 1 0-7'/%3E%3C/svg%3E");
}
.oo-ui-icon-clear {
background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 20 20'%3E%3Ctitle%3Eclear%3C/title%3E%3Cpath d='M10 0a10 10 0 1 0 10 10A10 10 0 0 0 10 0zm5.66 14.24-1.41 1.41L10 11.41l-4.24 4.25-1.42-1.42L8.59 10 4.34 5.76l1.42-1.42L10 8.59l4.24-4.24 1.41 1.41L11.41 10z'/%3E%3C/svg%3E");
}
.mw-widget-dateInputWidget-handle {
background-color: var(--ooui-input);
color: var(--ooui-text);
border-color: var(--ooui-input-border);
}
.mw-widget-dateInputWidget-calendar {
background-color: var(--ooui-interface);
}
.mw-widget-dateInputWidget.oo-ui-widget-enabled .mw-widget-dateInputWidget-handle:hover {
border-color: var(--ooui-input-border--hover);
}
.mw-widget-calendarWidget {
border-color: var(--ooui-interface-border);
}
.mw-widget-calendarWidget:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.mw-widget-calendarWidget-day,
.mw-widget-calendarWidget-day-heading {
color: var(--ooui-text);
}
.mw-widget-calendarWidget-day-additional {
color: var(--ooui-text);
opacity: 0.67;
}
.mw-widget-calendarWidget-day-today {
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.mw-widget-calendarWidget-item:hover {
background-color: var(--ooui-progressive);
}
.mw-widget-calendarWidget-item-selected {
background-color: var(--ooui-progressive--hover);
}
.mw-widgets-datetime-calendarWidget {
background-color: var(--ooui-interface);
border-color: var(--ooui-interface-border);
}
.mw-widgets-datetime-calendarWidget:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent), 0 2px 2px 0 rgba(0, 0, 0, 0.25);
}
.mw-widgets-datetime-calendarWidget-grid .mw-widgets-datetime-calendarWidget-cell.mw-widgets-datetime-calendarWidget-extra .oo-ui-buttonElement-button .oo-ui-labelElement-label {
color: var(--subtle-color);
}
.mw-widgets-datetime-calendarWidget-grid .mw-widgets-datetime-calendarWidget-cell.mw-widgets-datetime-calendarWidget-selected .oo-ui-buttonElement-button {
background-color: var(--ooui-progressive--hover);
}
.mw-widgets-datetime-dateTimeInputWidget-handle {
background-color: var(--ooui-input);
color: var(--ooui-text);
border-color: var(--ooui-input-border);
}
.mw-widgets-datetime-dateTimeInputWidget.oo-ui-widget-enabled.mw-widgets-datetime-dateTimeInputWidget-handle:hover {
border-color: var(--ooui-input-border--hover);
}
.mw-widgets-datetime-dateTimeInputWidget.oo-ui-widget-enabled:hover input,
.mw-widgets-datetime-dateTimeInputWidget.oo-ui-widget-enabled:hover textarea {
border-color: var(--ooui-input-border--hover);
}
.mw-widgets-datetime-dateTimeInputWidget.oo-ui-widget-enabled .mw-widgets-datetime-dateTimeInputWidget-editField:hover {
background-color: var(--ooui-normal);
}
.ve-activated .ve-init-mw-desktopArticleTarget-originalContent #catlinks:hover {
background: var(--ooui-normal--hover);
}
.ve-ui-overlay {
font-family: inherit;
}
.oo-ui-toolbar-position-top .ve-ui-toolbarDialog-position-above {
border-top-color: var(--body-mid);
}
.ve-ce-branchNode-blockSlug,
.ve-ce-branchNode-newSlug {
outline-color: var(--body-border);
background-color: var(--ooui-interface);
}
.ve-ui-specialCharacterPage h3 {
color: var(--byline-color);
}
.ve-ui-specialCharacterPage-character {
border-color: var(--body-mid);
}
.ve-ui-specialCharacterPage-character:hover {
border-color: var(--body-dark);
}
.ve-ce-linkAnnotation.ve-ce-annotation-active {
box-shadow: 0 0 0 1px var(--body-mid);
background: none;
}
.ve-ui-desktopContext .ve-ui-linkContextItem .ve-ui-linkContextItem-label {
border-color: var(--body-border);
}
.ve-ui-mwHelpPopupTool-version-label,
.ve-ui-mwHelpPopupTool-version-link,
.ve-ui-mwHelpPopupTool-version-date {
color: var(--byline-color);
}
.ve-ce-tableCellableNode {
border-color: var(--body-mid);
}
.ve-ce-mwReferencesListNode-muted {
color: var(--byline-color);
}
.ve-ui-mwTemplatePage-description,
.ve-ui-mwParameterPage-label,
.ve-ui-mwParameterPage-description-required,
.ve-ui-mwParameterPage-description-deprecated {
color: var(--byline-color);
}
.mw-widget-titleWidget-menu .mw-widget-titleOptionWidget-description {
color: var(--byline-color);
}
.ve-ui-mwGalleryDialog-menuLayout > .oo-ui-menuLayout-menu,
.ve-ui-mwGalleryDialog-innerMenuLayout > .oo-ui-menuLayout-menu,
.ve-ui-mwGalleryDialog .ve-ui-mwGalleryDialog-image-container,
.ve-ui-targetWidget {
border-color: var(--body-border);
}
.ve-ui-targetWidget:not(.oo-ui-pendingElement-pending) {
background-color: var(--body-main);
}
.ve-ui-mwSaveDialog {
color: var(--ooui-text);
}
.ve-ui-mwSaveDialog-options {
background-color: var(--ooui-interface);
border-color: var(--body-border);
}
.ve-ui-mwSaveDialog-summary {
background-color: var(--ooui-input);
}
.ve-ui-mwSaveDialog-editSummary-count {
border-color: var(--body-border);
}
.ve-ui-mwSaveDialog-license {
color: var(--byline-color);
}
.ve-ui-mwReferenceContextItem-muted {
color: var(--byline-color);
}
.ve-ui-mwNoticesPopupTool-items > div:not(:first-child),
.ve-ui-mwHelpPopupTool-item:not(:first-child) {
border-color: var(--body-border);
}
.ve-ui-mwTransclusionOutlineControlsWidget {
background-color: var(--ooui-interface);
border-top-color: var(--body-border);
}
.ve-ui-mwTransclusionOutlineTemplateWidget-sticky {
background-color: var(--ooui-interface);
}
.ve-ui-mwTransclusionOutlineTemplateWidget .ve-ui-mwTransclusionOutlineParameterWidget.oo-ui-optionWidget-highlighted {
color: var(--ooui-text);
}
.ve-ui-mwTransclusionOutlineTemplateWidget-no-template-parameters {
color: var(--subtle-color);
}
.ve-ui-mwParameterPage-undocumentedLabel {
color: var(--subtle-color);
}
.ve-ui-mwTwoPaneTransclusionDialogLayout > .oo-ui-menuLayout-menu {
border-right: var(--body-border);
}
.ve-ui-mwParameterPage-doc-required,
.ve-ui-mwParameterPage-doc-deprecated,
.ve-ui-mwParameterPage-inlineDescription .ve-ui-mwParameterPage-doc-example {
color: var(--byline-color);
}
.ve-ui-expandableContent-toggle {
background-color: var(--ooui-interface);
}
.ve-ui-expandableContent-fade {
background: linear-gradient(to right, rgba(255, 255, 255, 0) 0, var(--ooui-interface) 90%);
}
.ve-ui-commandHelpDialog-shortcut > kbd,
.ve-ui-commandHelpDialog-sequence > kbd {
background-color: var(--keypress-background);
color: var(--keypress-color);
border-color: var(--keypress-border);
box-shadow: none;
text-shadow: none;
}
.ve-init-mw-desktopArticleTarget-toolbarPlaceholder-floating .ve-init-mw-desktopArticleTarget-toolbarPlaceholder-bar {
background: var(--ooui-interface);
}
.ve-init-mw-desktopArticleTarget-toolbarPlaceholder-bar {
border-bottom-color: var(--body-mid);
}
figure[typeof~='mw:File/Thumb'],
figure[typeof~='mw:File/Frame'],
figure[typeof~='mw:Image/Thumb'],
figure[typeof~='mw:Video/Thumb'],
figure[typeof~='mw:Image/Frame'],
figure[typeof~='mw:Video/Frame'] {
border: none;
background-color: var(--thumb-bg);
}
figure[typeof~='mw:File/Thumb'] > a:first-child > *:first-child:not( .mw-broken-media ),
figure[typeof~='mw:File/Frame'] > a:first-child > *:first-child:not( .mw-broken-media ),
figure[typeof~='mw:Image/Thumb'] > a:first-child > *:first-child:not( .mw-broken-media ),
figure[typeof~='mw:Video/Thumb'] > a:first-child > *:first-child:not( .mw-broken-media ),
figure[typeof~='mw:Image/Frame'] > a:first-child > *:first-child:not( .mw-broken-media ),
figure[typeof~='mw:Video/Frame'] > a:first-child > *:first-child:not( .mw-broken-media ) {
border: none;
background: var(--thumb-bg);
}
figure[typeof~='mw:File/Thumb'] > figcaption,
figure[typeof~='mw:File/Frame'] > figcaption,
figure[typeof~='mw:Image/Thumb'] > figcaption,
figure[typeof~='mw:Video/Thumb'] > figcaption,
figure[typeof~='mw:Image/Frame'] > figcaption,
figure[typeof~='mw:Video/Frame'] > figcaption {
border: none;
background-color: var(--thumb-caption-bg);
padding: 4px 6px;
}
:root {
--infobox-text-color: var(--text-color);
}
ol.references,
.reflist {
font-size: 90%;
}
.reflist {
list-style-type: decimal;
}
.reflist .references {
font-size: 100%;
list-style-type: inherit;
}
.reflist-lower-alpha {
list-style-type: lower-alpha;
}
ol.references li:target,
sup.reference:target {
background-color: var(--body-light);
}
.hideQuotes .refhide {
display: none;
}
.mw-prefs-buttons {
background-color: var(--body-main);
border-top-color: var(--body-border);
box-shadow: none;
}
.mw-prefs-tabs-wrapper.oo-ui-panelLayout-framed,
.mw-prefs-tabs > .oo-ui-menuLayout-content > .oo-ui-indexLayout-stackLayout > .oo-ui-tabPanelLayout {
border-color: var(--body-border);
}
.mw-htmlform-ooui .mw-htmlform-matrix tbody tr:nth-child(even) td {
background-color: var(--body-light);
}
.mw-htmlform-ooui .mw-htmlform-matrix tbody tr:hover td {
background-color: var(--body-mid);
}
:root {
--rc-positive-color: #407813;
--rc-negative-color: #b41e0f;
}
.mw-plusminus-pos {
color: var(--rc-positive-color);
}
.mw-plusminus-neg {
color: var(--rc-negative-color);
}
.client-js .mw-recentchanges-toplinks:not(.mw-recentchanges-toplinks-collapsed) {
border-color: var(--body-border);
background-color: var(--body-light);
border-radius: 2px;
}
.mw-rcfilters-ui-filterTagMultiselectWidget-wrapper-content-title {
color: var(--text-color);
}
.mw-rcfilters-ui-filterTagMultiselectWidget-emptyFilters {
color: var(--byline-color);
}
.mw-rcfilters-ui-filterTagMultiselectWidget.oo-ui-widget-enabled .oo-ui-tagMultiselectWidget-handle {
background-color: var(--ooui-interface);
border-color: var(--ooui-interface-border);
}
.mw-rcfilters-ui-filterTagMultiselectWidget-views-select-widget.oo-ui-widget {
border-color: var(--ooui-interface-border);
}
.mw-rcfilters-collapsed .mw-rcfilters-ui-filterTagMultiselectWidget {
border-bottom-color: var(--ooui-interface-border);
}
.mw-rcfilters-ui-menuSelectWidget-footer {
background-color: var(--ooui-interface);
border-color: var(--ooui-interface-border);
}
.mw-rcfilters-ui-viewSwitchWidget label.oo-ui-labelWidget {
color: var(--byline-color);
}
.mw-rcfilters-ui-tagItemWidget-popup-content {
color: var(--ooui-text);
}
.mw-changeslist-legend,
.mw-rcfilters-ui-changesListWrapperWidget .mw-changeslist-legend {
background-color: var(--body-light);
border-color: var(--body-dark);
}
.mw-rcfilters-ui-changesListWrapperWidget-previousChangesIndicator {
border-color: var(--sidebar);
}
.client-js .mw-changeslist ul,
.client-js .mw-changeslist table.mw-enhanced-rc {
margin-left: 0;
}
.mw-rcfilters-ui-watchlistTopSectionWidget-separator {
border-color: var(--sidebar);
}
.mw-rcfilters-ui-itemMenuOptionWidget-header {
border-bottom-color: var(--ooui-interface);
background-color: var(--ooui-interface-border);
}
.mw-rcfilters-ui-itemMenuOptionWidget:not(:last-child):not(.mw-rcfilters-ui-itemMenuOptionWidget-identifier-talk) {
border-bottom-color: var(--ooui-normal-border);
}
.mw-rcfilters-ui-itemMenuOptionWidget-label-title,
.mw-rcfilters-ui-itemMenuOptionWidget-label-desc {
color: var(--text-color);
}
.mw-rcfilters-ui-filterMenuOptionWidget.oo-ui-flaggedElement-muted:not(.oo-ui-optionWidget-selected) {
background-color: var(--body-main);
}
.mw-rcfilters-ui-filterMenuOptionWidget.oo-ui-flaggedElement-muted .mw-rcfilters-ui-itemMenuOptionWidget-label-title,
.mw-rcfilters-ui-filterMenuOptionWidget.oo-ui-flaggedElement-muted .mw-rcfilters-ui-itemMenuOptionWidget-label-desc {
color: var(--subtle-color);
}
.mw-rcfilters-ui-filterMenuSectionOptionWidget {
background-color: var(--body-mid);
}
.mw-rcfilters-ui-filterMenuSectionOptionWidget-header-title.oo-ui-labelElement-label {
color: var(--ooui-text);
}
.mw-rcfilters-ui-filterMenuHeaderWidget-title {
color: var(--ooui-text);
}
.mw-rcfilters-ui-filterMenuHeaderWidget-header {
border-bottom-color: var(--ooui-interface-border);
background-color: var(--ooui-interface);
}
.mw-rcfilters-ui-itemMenuOptionWidget-view-namespaces {
border-top-color: var(--ooui-interface-border);
}
.mw-rcfilters-ui-datePopupWidget {
border-color: var(--ooui-interface-border);
}
.mw-rcfilters-ui-datePopupWidget .mw-rcfilters-ui-valuePickerWidget-title {
color: var(--byline-color);
}
.mw-rcfilters-ui-savedLinksListItemWidget-label {
color: var(--ooui-accent);
}
.client-js .mw-changeslist.mw-rcfilters-ui-changesListWrapperWidget-highlighted ul,
.client-js .mw-changeslist.mw-rcfilters-ui-changesListWrapperWidget-highlighted table.mw-enhanced-rc {
margin-left: 1.5em;
}
.page-Special_CreateAccount .mw-ui-container,
.page-Special_UserLogin .mw-ui-container {
max-width: 64rem;
margin: 0 auto;
}
.mw-number-text {
color: var(--byline-color);
}
.mw-body-content .mw-number-text h3 {
color: var(--text-color);
}
#mw-indicator-mw-helplink a {
background: none;
padding: 0;
display: flex;
align-items: center;
}
#mw-indicator-mw-helplink a::before {
content: '';
margin-right: 5px;
-webkit-mask: url("/resources/src/mediawiki.helplink/images/helpNotice.svg?46d34") no-repeat 50% 50% / contain;
mask: url("/resources/src/mediawiki.helplink/images/helpNotice.svg?46d34") no-repeat 50% 50% / contain;
background: var(--text-color);
height: 20px;
width: 20px;
}
.results-info {
color: inherit;
}
.mw-search-profile-tabs {
background-color: var(--body-mid);
border-color: transparent;
}
.search-types .current a {
color: inherit;
}
#mw-searchoptions {
background-color: var(--body-mid);
border-color: transparent;
}
#mw-searchoptions .divider {
border-color: var(--body-border);
}
#mw-searchoptions h4 {
font-family: inherit;
}
#mw-searchoptions .oo-ui-labelElement:nth-of-type(odd) {
font-weight: bold;
}
.searchresult {
line-height: 1.5;
}
.searchalttitle,
#mw-search-interwiki li {
font-size: 90%;
}
.mw-search-result-data {
color: var(--byline-color);
}
.page-Special_ListFiles a.image img {
width: inherit;
height: inherit;
}
.page-Special_ListFiles .TablePager_col_thumb {
text-align: center;
}
#editcount table[border="1"] {
background-color: var(--body-main) !important;
border-color: var(--wikitable-border) !important;
margin-top: 0.5em;
}
#editcount table[border="1"] th,
#editcount table[border="1"] td {
padding: 0.2em 0.4em;
}
#editcount table[border="1"] th {
background-color: var(--wikitable-header-bg);
border: 1px solid var(--wikitable-border);
}
#editcount table[border="1"] td {
border: 1px solid var(--wikitable-border);
}
#editcount table[border="1"] tr:nth-child(odd) {
background-color: var(--body-light);
}
.mw-echo-ui-notificationBadgeButtonPopupWidget-popup > .oo-ui-popupWidget-popup .mw-echo-ui-placeholderItemWidget {
background-color: inherit;
}
table.mw-interwikitable.body td.mw-interwikitable-local-yes {
background-color: var(--table-yes-background);
color: var(--table-yes-color);
}
.mw-protectedpages-unknown {
color: var(--byline-color);
}
.watchlistredir,
.allpagesredirect {
font-style: italic;
}
.allpagesredirect:after {
color: var(--byline-color);
content: " (redirect)";
}
.mw-apisandbox-toolbar {
background: var(--body-main);
}
.oo-ui-menuOptionWidget .mw-apisandbox-flag {
color: var(--byline-color);
}
tr.mw-abusefilter-list-disabled,
tr.mw-abusefilter-list-disabled td {
color: var(--byline-color);
}
table.mw-abuselog-details {
background: var(--wikitable-bg);
border-color: var(--wikitable-border);
}
table.mw-abuselog-details th {
background: var(--wikitable-header-bg);
}
table.mw-abuselog-details th,
table.mw-abuselog-details td {
border-color: var(--wikitable-border);
}
.mw-abusefilter-log-hidden-entry {
color: var(--subtle-color);
}
body td.mw-abusefilter-history-changed {
background: var(--table-no-background);
}
div.mw-abusefilter-editor,
#mw-abusefilter-warn-preview,
#mw-abusefilter-disallow-preview {
border-color: var(--ooui-input-border);
}
.mw-destfile-warning {
border-color: var(--warningbox-border);
color: var(--text-color);
background-color: var(--warningbox-bg);
}
span.fileinput-button {
background-color: var(--ooui-normal);
border-color: var(--ooui-normal-border);
color: var(--ooui-text);
}
ul.fileupload-results li.ful-success {
background-color: var(--successbox-bg);
}
ul.fileupload-results li.ful-success a {
color: var(--link-color);
}
ul.fileupload-results li.ful-error {
background-color: var(--errorbox-bg);
}
#t-print,
#t-permalink {
display: none;
}
#filetoc {
border-radius: 2px;
background: var(--body-mid);
border-color: transparent;
margin: 0.5em auto;
text-align: center;
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
}
li.gallerybox div.thumb {
border: none;
background-color: var(--thumb-bg);
}
.smwfact {
display: none;
}
.list-header {
background-color: var(--body-mid);
color: inherit;
}
.editOptions {
color: var(--text-color);
background-color: var(--sourceeditor-background-secondary);
border-color: var(--sourceeditor-border);
}
.mw-json th,
.mw-json td {
border-color: var(--wikitable-border);
}
.mw-json td {
background: var(--wikitable-bg);
}
.mw-json th {
background: var(--wikitable-header-bg);
}
bbca7d870fcfc2ba29e4cb215de948269dc76b01
62
59
2024-03-22T03:01:16Z
Jayden
3
Updating CSS from [[MediaWiki:Common.less]]
css
text/css
/* <pre> */
:root {
--body-main: #e2dbc8;
--body-light: #d8ccb4;
--body-mid: #d0bd97;
--body-dark: #b8a282;
--body-border: #94866d;
--body-background-color: #513e36;
--button-background: #605443;
--button-color: #fff;
--button-border: #3c352a;
--button-dark: #18140c;
--button-light: #3a301d;
--sidebar: #cfc08d;
--background-text-color: #e2dbc8;
--background-link-color: #e2bd8a;
--search-box: #efeee6;
--link-color: #936039;
--redlink-color: #ba0000;
--text-color: #000;
--byline-color: #4c4c4c;
--subtle-color: #777;
--admin-blue: #332e75;
--bearcat-green: #13592e;
--awb-purple: #933b96;
--rsw-blue: #438ab6;
--osrsw-brown: #605443;
--thumb-bg: var(--body-light);
--thumb-caption-bg: var(--body-mid);
--sourceeditor-input-background: #fff;
--sourceeditor-background: var(--body-light);
--sourceeditor-background-secondary: var(--body-light);
--sourceeditor-border: var(--body-mid);
--codemirror-gutter-background: var(--body-mid);
}
@font-face {
font-family: 'Lora';
font-weight: 400 700;
font-style: normal;
font-display: swap;
src: url('filepath://Lora.woff2') format('woff2');
}
@font-face {
font-family: 'Lora';
font-weight: 400 700;
font-style: italic;
font-display: swap;
src: url('filepath://Lora-Italic.woff2') format('woff2');
}
:root {
--base-text-color: #36414f;
--base-heading-color: #444e5a;
--base-heading-border: #e4eaee;
--mw-code-background-color: #ddd4bb;
--body-background-image: url('filepath://Wiki_background.jpg');
}
#mw-page-base {
background: none;
}
.mw-body {
background-color: var(--body-main);
color: var(--text-color);
border-color: transparent;
box-shadow: 0 0 7px rgba(0, 0, 0, 0.15);
margin-top: 0;
}
h1,
h2,
h3,
h4,
h5,
h6 {
color: var(--text-color);
}
h1,
h2 {
border-color: var(--sidebar);
}
.mw-body h1,
.mw-body-content h1,
.mw-body-content h2,
.mw-body-content h3,
.mw-body-content h4,
.mw-body-content h5,
.mw-body-content h6 {
font-family: 'Lora', 'Palatino', 'Georgia', serif;
}
.mw-parser-output h2:first-of-type {
clear: left;
}
.mw-footer {
color: var(--background-text-color);
}
.mw-footer li {
color: var(--background-text-color);
}
.mw-footer a,
.mw-footer a:active,
.mw-footer a:visited {
color: var(--background-link-color);
}
::placeholder {
color: var(--subtle-color);
}
a {
color: var(--link-color);
}
a:visited,
a:active {
color: var(--link-color);
}
a.new {
color: var(--redlink-color);
}
a.new:visited {
color: var(--redlink-color);
}
.mw-parser-output a.extiw,
.mw-parser-output a.external {
color: var(--link-color);
}
.mw-parser-output a.extiw:visited,
.mw-parser-output a.external:visited,
.mw-parser-output a.extiw:active,
.mw-parser-output a.external:active {
color: var(--link-color);
}
.jsPurgeLink a.external {
color: var(--link-color);
}
:root {
--errorbox-bg: #feecea;
--errorbox-border: #ee4231;
--warningbox-bg: #fef9de;
--warningbox-border: #f9d000;
--successbox-bg: #ecf8e3;
--successbox-border: #6bc71f;
}
.mw-message-box-error,
.errorbox,
.mw-message-box-warning,
.warningbox,
.mw-message-box-success,
.successbox,
.usermessage {
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
}
.mw-message-box-error,
.errorbox {
background-color: var(--errorbox-bg);
border-color: var(--errorbox-border);
}
.mw-message-box-warning,
.warningbox,
.usermessage {
background-color: var(--warningbox-bg);
border-color: var(--warningbox-border);
}
.mw-message-box-success,
.successbox {
background-color: var(--successbox-bg);
border-color: var(--successbox-border);
}
.catlinks {
background: var(--body-light);
border: 1px solid var(--body-dark);
padding: 8px 15px;
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
}
.catlinks li {
border-color: var(--body-mid);
}
.filehistory a img,
#file img {
background: url("data:image/svg+xml,%3C%3Fxml version='1.0' encoding='UTF-8'%3F%3E%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16'%3E%3Cpath d='M0 0h8v16h8V8H0z' opacity='.13'/%3E%3C/svg%3E") repeat;
}
#file img:hover {
background: none;
}
.mw-highlight {
background: none;
}
.mw-highlight .linenos {
background-color: var(--mw-code-background-color);
color: var(--byline-color);
}
.mw-highlight a:hover .linenos,
.mw-highlight .hll a .linenos {
color: var(--text-color);
}
.mw-content-ltr.mw-highlight-lines pre,
.mw-content-ltr.content .mw-highlight-lines pre {
box-shadow: inset 2.75em 0 0 var(--mw-code-background-color);
}
#pagehistory ul {
list-style: none;
margin: 0;
}
#pagehistory li {
border: 1px solid transparent;
padding: 1px 10px;
margin: 2px 0;
}
#pagehistory li.selected {
background-color: var(--body-light);
color: inherit;
border: 1px dashed var(--body-border);
outline: none;
}
#mw-history-compare > div:first-of-type {
position: -webkit-sticky;
position: sticky;
top: 0;
background-color: var(--body-main);
border-bottom: 1px solid var(--body-dark);
padding: 0.25em 0;
}
.wgl-stickyheader #mw-history-compare > div:first-of-type {
top: 2.5rem;
}
.autocomment,
.autocomment a,
.autocomment a:visited {
color: var(--link-color);
}
li span.deleted,
span.history-deleted {
color: var(--byline-color);
}
.mw-usertoollinks-contribs-no-edits,
.mw-usertoollinks-contribs-no-edits:visited {
color: var(--redlink-color);
}
.CategoryTreeToggle {
color: var(--link-color);
}
body.wgl-stickyheader.action-view .mw-headline:target::before {
display: block;
content: '';
margin-top: -3rem;
height: 3rem;
visibility: hidden;
pointer-events: none;
}
.mw-mmv-post-image {
color: var(--text-color);
background-color: var(--body-main);
}
.mw-mmv-image-metadata {
border-top-color: var(--body-mid);
background-color: var(--body-light);
}
.mw-mmv-dialog,
.mw-mmv-dialog .mw-mmv-dialog-down-arrow,
.mw-mmv-options-dialog .mw-mmv-dialog-down-arrow {
background-color: var(--body-light);
box-shadow: none;
}
.mw-mmv-options-enable-alert {
background-color: var(--body-light);
color: var(--text-color);
}
.mw-mmv-options-dialog-header,
.mw-mmv-options-text-header,
.mw-mmv-options-text-body,
.mw-mmv-options-enable-alert,
.mw-mmv-options-dialog .mw-mmv-disable-confirmation .mw-mmv-options-dialog-header,
.mw-mmv-options-dialog .mw-mmv-disable-confirmation .mw-mmv-options-text-header {
color: var(--text-color);
}
.mw-revslider-container {
border-color: var(--sidebar);
}
.mw-revslider-slider-wrapper {
border-top-color: var(--sidebar);
}
.mw-ui-button {
background-color: var(--ooui-normal);
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
}
.mw-ui-button:not(:disabled):hover,
.mw-ui-button:not(:disabled):active {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
}
.mw-ui-button:not(:disabled):focus {
color: var(--ooui-text);
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent), inset 0 0 0 2px #fff;
}
.mw-ui-button:not(:disabled):visited {
color: var(--ooui-text);
}
.mw-ui-button.mw-ui-progressive:not(:disabled) {
background-color: var(--ooui-progressive);
color: #fff;
border-color: var(--ooui-progressive);
}
.mw-ui-button.mw-ui-progressive:not(:disabled):hover {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
}
.mw-ui-button.mw-ui-progressive:not(:disabled):focus {
box-shadow: inset 0 0 0 1px var(--ooui-accent), inset 0 0 0 2px #fff;
}
.mw-ui-button.mw-ui-progressive:not(:disabled):active,
.mw-ui-button.mw-ui-progressive:not(:disabled).is-on {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
box-shadow: none;
}
.mw-ui-button.mw-ui-destructive:not( :disabled ) {
color: #fff;
}
.mw-ui-button.mw-ui-quiet,
.mw-ui-button.mw-ui-quiet.mw-ui-progressive,
.mw-ui-button.mw-ui-quiet.mw-ui-destructive {
color: var(--text-color);
}
input[type='checkbox']:hover + .mw-ui-button.mw-ui-quiet,
input[type='checkbox']:hover + .mw-ui-button.mw-ui-quiet.mw-ui-progressive,
input[type='checkbox']:hover + .mw-ui-button.mw-ui-quiet.mw-ui-destructive,
.mw-ui-button.mw-ui-quiet:hover,
.mw-ui-button.mw-ui-quiet.mw-ui-progressive:hover,
.mw-ui-button.mw-ui-quiet.mw-ui-destructive:hover {
background-color: rgba(0, 24, 73, 0.02745098);
color: var(--text-color);
border-color: transparent;
}
input[type='checkbox']:focus + .mw-ui-button.mw-ui-quiet,
input[type='checkbox']:focus + .mw-ui-button.mw-ui-quiet.mw-ui-progressive,
input[type='checkbox']:focus + .mw-ui-button.mw-ui-quiet.mw-ui-destructive,
.mw-ui-button.mw-ui-quiet:focus,
.mw-ui-button.mw-ui-quiet.mw-ui-progressive:focus,
.mw-ui-button.mw-ui-quiet.mw-ui-destructive:focus {
color: var(--text-color);
}
input[type='checkbox']:active + .mw-ui-button.mw-ui-quiet,
input[type='checkbox']:active + .mw-ui-button.mw-ui-quiet.mw-ui-progressive,
input[type='checkbox']:active + .mw-ui-button.mw-ui-quiet.mw-ui-destructive,
.mw-ui-button.mw-ui-quiet:active,
.mw-ui-button.mw-ui-quiet.mw-ui-progressive:active,
.mw-ui-button.mw-ui-quiet.mw-ui-destructive:active {
background-color: rgba(0, 36, 73, 0.08235294);
color: var(--text-color);
border-color: #72777d;
}
.mw-ui-input {
background-color: var(--ooui-input);
color: var(--text-color);
border-color: var(--ooui-input-border);
}
.mw-ui-input:hover {
border-color: var(--ooui-input-border--hover);
}
.mw-ui-input::placeholder {
color: var(--byline-color);
}
.mw-content-ltr .redirectText li:first-child {
padding: 0;
background: 0;
}
.mw-content-ltr .redirectText li:first-child::before {
content: '';
background: currentcolor;
-webkit-mask: url("filepath://Redirect-arrow.svg") no-repeat 50% 50% / contain;
mask: url("filepath://Redirect-arrow.svg") no-repeat 50% 50% / contain;
display: inline-block;
width: 47px;
height: 20px;
}
:root {
--wikitable-header-bg: var(--body-dark);
--wikitable-border: var(--body-border);
--wikitable-bg: var(--body-light);
--wikitable-bg-lighter: #e9e3d6;
--wikitable-color: var(--text-color);
--table-na-background: rgba(255, 255, 255, 0.3);
--table-na-color: var(--subtle-color);
--table-yes-background: #c3e8a3;
--table-yes-color: #2e5e05;
--table-no-background: #fbc0ba;
--table-no-color: #801c13;
--table-maybe-background: #fcea94;
--table-maybe-color: #786300;
}
.wikitable {
background: var(--wikitable-bg);
color: var(--wikitable-color);
border-color: var(--wikitable-border);
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
}
.wikitable > tr > th,
.wikitable > tr > td,
.wikitable > * > tr > th,
.wikitable > * > tr > td {
border-color: var(--wikitable-border);
}
.wikitable > tr > th.table-noborder,
.wikitable > tr > td.table-noborder,
.wikitable > * > tr > th.table-noborder,
.wikitable > * > tr > td.table-noborder {
border-left-style: hidden;
border-right-style: hidden;
padding-left: 0;
padding-right: 0;
}
.wikitable > tr > th,
.wikitable > * > tr > th {
background-color: var(--wikitable-header-bg);
}
.tabber .wikitable {
box-shadow: none;
}
.mw_metadata td,
.mw_metadata th {
border-color: var(--wikitable-border);
}
.mw_metadata th {
background-color: var(--wikitable-header-bg);
}
.mw_metadata td {
background-color: var(--wikitable-bg);
}
.mw-datatable {
border-color: var(--wikitable-border);
}
.mw-datatable td,
.mw-datatable th {
border-color: var(--wikitable-border);
}
.mw-datatable th {
background-color: var(--wikitable-header-bg);
}
.mw-datatable td {
background-color: var(--wikitable-bg);
}
.mw-datatable tr:hover td {
background-color: var(--wikitable-bg);
}
table.alternating-rows tr:nth-child(odd),
table.alternating-cols td:nth-child(odd) {
background: var(--wikitable-alternating-bg);
}
.table-na {
background: var(--table-na-background);
color: var(--table-na-color);
vertical-align: middle;
text-align: center;
}
.table-yes {
background: var(--table-yes-background);
color: var(--table-yes-color);
}
.table-positive {
background: var(--table-yes-background);
}
.table-no {
background: var(--table-no-background);
color: var(--table-no-color);
}
.table-negative {
background: var(--table-no-background);
}
.table-maybe {
background: var(--table-maybe-background);
color: var(--table-maybe-color);
}
#mw-allmessagestable .am_actual,
#mw-allmessagestable .am_default {
background-color: var(--wikitable-bg);
}
#mw-allmessagestable .am_default:hover,
#mw-allmessagestable .am_actual:hover,
#mw-allmessagestable tbody:hover td {
background-color: var(--wikitable-bg-lighter);
}
table.wikitable td.no-cell-spacing {
padding: 0;
height: 0;
}
table.wikitable td.no-cell-spacing table {
margin: -1px;
width: calc(100% + 2px);
height: calc(100% + 2px);
}
.plainlist ol,
.plainlist ul {
margin: 0;
}
.plainlist li {
margin-bottom: 0;
list-style: none;
}
table.align-right-1 td:nth-of-type(1),
table.align-right-2 td:nth-of-type(2),
table.align-right-3 td:nth-of-type(3),
table.align-right-4 td:nth-of-type(4),
table.align-right-5 td:nth-of-type(5),
table.align-right-6 td:nth-of-type(6),
table.align-right-7 td:nth-of-type(7),
table.align-right-8 td:nth-of-type(8),
table.align-right-9 td:nth-of-type(9),
table.align-right-10 td:nth-of-type(10),
table.align-right-11 td:nth-of-type(11),
table.align-right-12 td:nth-of-type(12),
table.align-right-13 td:nth-of-type(13),
table.align-right-14 td:nth-of-type(14),
table.align-right-15 td:nth-of-type(15),
table.align-right-16 td:nth-of-type(16),
table.align-right-17 td:nth-of-type(17),
table.align-right-18 td:nth-of-type(18),
table.align-right-19 td:nth-of-type(19),
table.align-right-20 td:nth-of-type(20) {
text-align: right;
}
table.align-center-1 td:nth-of-type(1),
table.align-center-2 td:nth-of-type(2),
table.align-center-3 td:nth-of-type(3),
table.align-center-4 td:nth-of-type(4),
table.align-center-5 td:nth-of-type(5),
table.align-center-6 td:nth-of-type(6),
table.align-center-7 td:nth-of-type(7),
table.align-center-8 td:nth-of-type(8),
table.align-center-9 td:nth-of-type(9),
table.align-center-10 td:nth-of-type(10),
table.align-center-11 td:nth-of-type(11),
table.align-center-12 td:nth-of-type(12),
table.align-center-13 td:nth-of-type(13),
table.align-center-14 td:nth-of-type(14),
table.align-center-15 td:nth-of-type(15),
table.align-center-16 td:nth-of-type(16),
table.align-center-17 td:nth-of-type(17),
table.align-center-18 td:nth-of-type(18),
table.align-center-19 td:nth-of-type(19),
table.align-center-20 td:nth-of-type(20) {
text-align: center;
}
table.align-left-1 td:nth-of-type(1),
table.align-left-2 td:nth-of-type(2),
table.align-left-3 td:nth-of-type(3),
table.align-left-4 td:nth-of-type(4),
table.align-left-5 td:nth-of-type(5),
table.align-left-6 td:nth-of-type(6),
table.align-left-7 td:nth-of-type(7),
table.align-left-8 td:nth-of-type(8),
table.align-left-9 td:nth-of-type(9),
table.align-left-10 td:nth-of-type(10),
table.align-left-11 td:nth-of-type(11),
table.align-left-12 td:nth-of-type(12),
table.align-left-13 td:nth-of-type(13),
table.align-left-14 td:nth-of-type(14),
table.align-left-15 td:nth-of-type(15),
table.align-left-16 td:nth-of-type(16),
table.align-left-17 td:nth-of-type(17),
table.align-left-18 td:nth-of-type(18),
table.align-left-19 td:nth-of-type(19),
table.align-left-20 td:nth-of-type(20) {
text-align: left;
}
:root {
--diff-addedline-border-color: #438ab5;
--diff-addedline-background: #bddff2;
--diff-addedline-color: #000;
--diff-deletedline-border-color: #379541;
--diff-deletedline-background: #c1edbf;
--diff-deletedline-color: #000;
--diff-context-border-color: var(--body-mid);
--diff-context-background: var(--body-mid);
}
.diff-context {
border-color: var(--diff-context-border-color);
background: var(--diff-context-background);
color: inherit;
}
.diff-addedline {
border-color: var(--diff-addedline-border-color);
}
.diff-addedline .diffchange {
background: var(--diff-addedline-background);
color: var(--diff-addedline-color);
}
.diff-deletedline {
border-color: var(--diff-deletedline-border-color);
}
.diff-deletedline .diffchange {
background: var(--diff-deletedline-background);
color: var(--diff-deletedline-color);
}
.mw-diff-movedpara-left:after,
.mw-diff-movedpara-right:after {
color: var(--text-color);
}
.mw-notification {
background-color: var(--body-light);
border-color: var(--body-border);
color: var(--text-color);
}
.mw-echo-ui-notificationsInboxWidget-toolbarWrapper {
background: var(--body-main);
}
.mw-body-content .mw-echo-ui-datedSubGroupListWidget-title-secondary {
color: var(--byline-color);
}
.mw-echo-ui-pageNotificationsOptionWidget.oo-ui-optionWidget-selected {
background-color: var(--ooui-normal);
color: var(--ooui-accent);
}
.mw-echo-ui-pageNotificationsOptionWidget-label-count {
background-color: var(--ooui-normal);
color: var(--byline-color);
}
.oo-ui-optionWidget-selected .mw-echo-ui-pageNotificationsOptionWidget-label-count {
color: var(--ooui-accent);
}
.mw-echo-ui-pageNotificationsOptionWidget.oo-ui-optionWidget-highlighted {
background-color: var(--ooui-normal);
color: var(--text-color);
}
.mw-echo-ui-crossWikiUnreadFilterWidget {
border-color: var(--body-border);
}
.mw-echo-ui-crossWikiUnreadFilterWidget-subtitle {
color: var(--byline-color);
}
.mw-echo-ui-notificationBadgeButtonPopupWidget-popup > .oo-ui-popupWidget-popup > .oo-ui-popupWidget-head,
.mw-echo-ui-notificationBadgeButtonPopupWidget-popup > .oo-ui-popupWidget-popup > .oo-ui-popupWidget-footer {
border-color: var(--ooui-interface-border);
}
.mw-echo-ui-notificationBadgeButtonPopupWidget-popup > .oo-ui-popupWidget-popup > .oo-ui-popupWidget-footer .mw-echo-ui-notificationBadgeButtonPopupWidget-footer-buttons .oo-ui-buttonElement:last-child {
border-left-color: var(--ooui-normal-border);
}
.mw-echo-ui-notificationItemWidget {
background-color: var(--ooui-normal);
border-color: var(--ooui-normal-border);
}
.mw-echo-ui-notificationItemWidget:hover,
.mw-echo-ui-notificationItemWidget-unread:hover {
background-color: var(--ooui-normal--hover);
}
.mw-echo-ui-notificationItemWidget:last-child {
border-bottom-color: var(--ooui-normal-border);
}
.mw-echo-ui-notificationItemWidget-unread {
background-color: var(--search-box);
}
.mw-echo-ui-crossWikiNotificationItemWidget-group,
.mw-echo-ui-bundleNotificationItemWidget-group {
background-color: var(--ooui-interface);
}
.mw-echo-ui-toggleReadCircleButtonWidget-circle {
background-color: var(--ooui-progressive);
}
.mw-echo-ui-toggleReadCircleButtonWidget:hover .mw-echo-ui-toggleReadCircleButtonWidget-circle {
background-color: var(--ooui-progressive--hover);
}
.mw-echo-ui-toggleReadCircleButtonWidget-circle-unread {
background-color: var(--ooui-normal);
border-color: var(--ooui-normal-border);
}
.mw-echo-ui-notificationItemWidget-content-message-header,
.mw-echo-ui-notificationItemWidget-content-message-body,
.mw-echo-ui-menuItemWidget > .oo-ui-buttonElement-button > .oo-ui-labelElement-label,
.mw-echo-ui-notificationItemWidget-content-actions-timestamp {
color: var(--ooui-text);
}
.mw-echo-ui-bundleNotificationItemWidget-group {
background-color: var(--body-main);
}
@keyframes unseen-fadeout-to-unread {
from {
background-color: var(--wikitable-bg-lighter);
}
to {
background-color: var(--search-box);
}
}
@keyframes unseen-fadeout-to-read {
from {
background-color: var(--wikitable-bg-lighter);
}
to {
background-color: var(--body-main);
}
}
.mwe-popups {
background: var(--body-light);
}
.mwe-popups .mwe-popups-container {
color: var(--text-color);
background: var(--body-light);
}
.mwe-popups .mwe-popups-container.flipped-x-y:before,
.mwe-popups .mwe-popups-container.flipped-y:before {
border-top: none;
}
.mwe-popups .mwe-popups-container.mwe-popups-no-image-tri:before {
border-bottom: none;
}
.mwe-popups .mwe-popups-container.flipped-x-y:after,
.mwe-popups .mwe-popups-container.flipped-y:after {
border-top-color: var(--body-light);
}
.mwe-popups .mwe-popups-container.mwe-popups-no-image-tri:after {
border-bottom-color: var(--body-light);
}
.mwe-popups .mwe-popups-settings-icon:hover,
.mwe-popups .mwe-popups-settings-icon:active {
background-color: var(--ooui-normal--hover);
}
.mwe-popups .mw-ui-icon-element:not(.disabled):hover {
background: none;
}
.mwe-popups .mwe-popups-extract {
color: var(--text-color);
}
.mwe-popups .mwe-popups-extract[dir='ltr']:after {
background-image: linear-gradient(to right, rgba(49, 62, 89, 0), var(--body-light) 50%);
}
.mwe-popups-overlay {
background-color: var(--ooui-window-background);
}
#mwe-popups-settings {
background: var(--ooui-interface);
border-color: var(--ooui-interface-border);
color: var(--text-color);
}
#mwe-popups-settings header {
border-color: var(--ooui-interface-border);
}
#mwe-popups-settings main#mwe-popups-settings-form p {
color: var(--byline-color);
}
#mwe-popups-settings main#mwe-popups-settings-form form label > span {
color: var(--ooui-text);
}
:root {
--smw-ask-options-even-bg: var(--body-mid);
--smw-ask-options-odd-bg: var(--body-light);
--smw-ask-action-btn-lblue-bg: var(--body-main);
--smw-ask-action-btn-lblue-color: #000;
--smw-ask-action-btn-lblue-border-color: var(--body-light);
--smw-ask-action-btn-dblue-bg: var(--body-light);
--smw-ask-action-btn-dblue-color: #fff;
--smw-ask-action-btn-dblue-border-color: var(--button-border);
}
.smw-ask-condition fieldset,
.smw-ask-printhead fieldset {
border-color: var(--sidebar);
}
.smw-ask-search fieldset,
.smw-ask-format fieldset,
.smw-ask-options fieldset {
border-color: var(--sidebar);
}
.strike > span:before,
.strike > span:after {
background: var(--sidebar);
}
.smw-ask-options-fields tr td {
background-color: var(--smw-ask-options-even-bg);
}
.smw-ask-options-fields tr:nth-child(odd) td {
background-color: var(--smw-ask-options-odd-bg);
}
.smw-ask-action-btn.smw-ask-action-btn-lblue,
.smw-ask-action-btn.smw-ask-action-btn-lblue:hover,
.smw-ask-action-btn.smw-ask-action-btn-lblue:visited {
background-color: var(--smw-ask-action-btn-lblue-bg);
color: var(--smw-ask-action-btn-lblue-color);
border-color: var(--smw-ask-action-btn-lblue-border-color);
}
.smw-ask-action-btn.smw-ask-action-btn-dblue,
.smw-ask-action-btn.smw-ask-action-btn-dblue:hover,
.smw-ask-action-btn.smw-ask-action-btn-dblue:visited {
background-color: var(--smw-ask-action-btn-dblue-bg);
color: var(--smw-ask-action-btn-dblue-color);
border-color: var(--smw-ask-action-btn-dblue-border-color);
}
.smw-ask-query textarea,
.smw-ask-actions textarea {
background-color: var(--ooui-interface);
border-color: var(--ooui-interface-border);
color: var(--ooui-text);
}
.smw-ask-query-format select {
background-color: var(--ooui-interface);
border: 1px solid var(--ooui-interface-border);
color: var(--ooui-text);
}
.smw-ask-toplinks {
background-color: var(--body-mid);
}
.smw-ask-toplinks span.smw-icon-info {
background: none;
padding: 0 !important;
}
.smw-ask-toplinks span.smw-icon-info::before {
content: '';
background: var(--text-color);
-webkit-mask: url("data:image/svg+xml,%3C%3Fxml version='1.0' encoding='UTF-8'%3F%3E%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 20 20'%3E%3Ctitle%3Einfo%3C/title%3E%3Cpath d='M10 0C4.477 0 0 4.477 0 10s4.477 10 10 10 10-4.477 10-10S15.523 0 10 0zM9 5h2v2H9zm0 4h2v6H9z'/%3E%3C/svg%3E") no-repeat 50% 50% / contain;
mask: url("data:image/svg+xml,%3C%3Fxml version='1.0' encoding='UTF-8'%3F%3E%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 20 20'%3E%3Ctitle%3Einfo%3C/title%3E%3Cpath d='M10 0C4.477 0 0 4.477 0 10s4.477 10 10 10 10-4.477 10-10S15.523 0 10 0zM9 5h2v2H9zm0 4h2v6H9z'/%3E%3C/svg%3E") no-repeat 50% 50% / contain;
padding: 0 0 3px 18px;
}
.smw-ask-options-row-odd {
background-color: var(--body-light);
}
.smw-ask-options-row-even {
background-color: var(--body-mid);
}
#options-toggle:not(:checked) + #options-list .options-parameter-list:after {
background-image: linear-gradient(to bottom, transparent, var(--body-mid) 90%);
}
.smw-ask-button-submit input {
background-color: var(--ooui-normal);
border-color: var(--ooui-normal-border);
color: var(--text-color);
}
.smw-ask-button-submit input:hover,
.smw-ask-button-lgrey:hover {
background-color: var(--ooui-normal--hover);
border-color: var(--ooui-normal-border);
}
input.smw-ask-action-btn.smw-ask-action-btn-dblue {
background-color: var(--ooui-normal);
border-color: var(--ooui-normal-border);
color: var(--ooui-text);
}
a.smw-ask-action-btn.smw-ask-action-btn-lblue {
background-color: var(--body-mid);
border-color: var(--body-mid);
color: var(--ooui-text);
}
a.smw-ask-action-btn.smw-ask-action-btn-lblue:visited {
background-color: var(--body-mid);
border-color: var(--body-mid);
color: var(--ooui-text);
}
a.smw-ask-action-btn.smw-ask-action-btn-lblue:hover {
background-color: var(--body-mid);
border-color: var(--body-mid);
color: var(--ooui-text);
}
a.smw-ask-action-btn-lgrey {
background-color: var(--ooui-normal);
border-color: var(--ooui-normal-border);
color: var(--ooui-text);
}
a.smw-ask-action-btn-lgrey:hover {
background-color: var(--ooui-normal--hover);
border-color: var(--ooui-normal-border);
color: var(--ooui-text);
}
.smw-callout-error {
background-color: var(--errorbox-bg);
border-color: var(--errorbox-border);
}
.smw-callout-info {
background-color: var(--body-light);
border-color: var(--body-dark);
}
.smw-callout-success {
background-color: var(--successbox-bg);
border-color: var(--successbox-border);
}
.smw-callout-warning {
background-color: var(--warningbox-bg);
border-color: var(--warningbox-bg);
}
.smw-tabs input.nav-tab:checked + label.nav-label,
.smw-tabs input.nav-tab:checked + label.nav-label:hover {
color: inherit;
}
#tab-smw-property-value:checked + label.nav-label .usage-count {
color: #fff;
background-color: var(--ooui-progressive);
}
#tab-smw-property-value:checked + label.nav-label .usage-count.moderate {
color: #fff;
background-color: #b55e0c;
border-color: #b55e0c;
}
#tab-smw-property-value:checked + label.nav-label .usage-count.high {
color: #fff;
background-color: #9f261e;
border-color: #9f261e;
}
.smw-property-page-results .header-title {
background-color: var(--ooui-interface);
border-bottom-color: var(--ooui-interface-border);
color: var(--ooui-text);
}
.smw-property-page-results .value-row:hover {
background-color: var(--ooui-normal--hover);
}
.smw-property-page-results .smw-table .header-row {
color: var(--text-color);
}
.tippy-tooltip.light-border-theme {
background-color: var(--body-light);
color: var(--text-color);
}
.tippy-tooltip.light-border-theme .tippy-arrow {
border-top-color: var(--body-light);
}
.tippy-tooltip.light-border-theme .tippy-arrow:after {
border-top-color: var(--body-light);
}
.tippy-header {
background-color: var(--body-dark);
border-bottom-color: var(--body-mid);
}
.smw-ui-input-filter {
background-color: var(--ooui-interface);
border-color: var(--ooui-interface-border);
color: var(--ooui-text);
}
.smw-ui-input-filter input {
border-left-color: var(--ooui-interface-border) !important;
color: var(--ooui-text) !important;
}
.smw-ui-pagination .page-link.link-disabled {
background-color: var(--ooui-disabled);
border-color: var(--ooui-disabled-border);
color: var(--subtle-color);
}
.smw-ui-pagination .page-link {
background-color: var(--ooui-normal);
border-color: var(--ooui-normal-border);
color: var(--link-color);
}
.smw-ui-pagination .page-link:hover {
background-color: var(--ooui-normal--hover);
border-color: var(--ooui-normal-border);
color: var(--link-color);
}
.smw-ui-pagination .page-link.link-active {
color: #fff;
background-color: var(--ooui-progressive);
border-color: var(--ooui-progressive);
}
.smw-tabs input.nav-tab:checked + label.nav-label {
border-color: var(--ooui-normal-border);
}
.smw-tabs section,
.smw-tabs .subtab-content {
border-top-color: var(--ooui-normal-border);
}
.smw-column-header {
color: var(--text-color);
}
.smw-factbox {
background: var(--body-main);
border-color: transparent;
}
.mw-body .mw-indicators #mw-indicator-smw-entity-examiner.mw-indicator .smw-indicator-vertical-bar-loader {
display: none;
}
.smwb-theme-light .smwb-title,
.smwb-theme-light .smwb-center,
.smwb-theme-light .smwb-actions,
.smwb-theme-light .smwb-prophead {
background-color: var(--body-mid);
}
.smwb-theme-light .smwb-factbox {
border-left-color: var(--body-mid);
}
.smwb-theme-light .smwb-ifactbox {
border-right-color: var(--body-mid);
}
.smwb-theme-light .smwb-propval {
background-color: var(--body-light);
}
.smwb-action-separator {
border-color: var(--wikitable-border);
}
.smwb-bottom {
border-bottom: 1px solid var(--wikitable-border);
}
.smwb-ifactbox .smwb-cell,
.smwb-factbox .smwb-cell {
border-top: 1px solid var(--wikitable-border);
}
.smwb-propvalue .smwb-prophead,
.smwb-ipropvalue .smwb-prophead,
.smwb-propvalue .smwb-propval,
.smwb-ipropvalue .smwb-propval {
font-size: 0.9em;
}
:root {
--filter-black-to-link: invert(36%) sepia(58%) saturate(433%) hue-rotate(344deg) brightness(100%) contrast(91%);
}
#bodyContent span.smwbrowse a {
color: black;
background-image: url('filepath://Smwbrowse.svg');
filter: var(--filter-black-to-link);
}
#bodyContent span.smwbrowse a:hover {
color: black;
background-image: url('filepath://Smwbrowse-hover.svg');
text-decoration: underline;
}
#bodyContent span.smwsearch a {
color: black;
filter: var(--filter-black-to-link);
background-image: url('filepath://Smwsearch.svg');
}
#bodyContent span.smwsearch a:hover {
color: black;
background-image: url('filepath://Smwsearch-hover.svg');
text-decoration: underline;
}
:root {
--tabber-tab-bg: var(--body-light);
--tabber-tab-border-color: var(--body-border);
--tabber-active-tab-bg: var(--body-light);
--tabber-active-tab-color: var(--text-color);
--tabber-active-tab-hover-bg: var(--body-light);
--tabber-active-tab-hover-border-color: var(--body-border);
--tabber-active-tab-hover-color: var(--text-color);
--tabber-active-tab-border-hider-color: var(--body-light);
--tabber-inactive-tab-bg: var(--body-background-color);
--tabber-inactive-tab-border-color: var(--body-border);
--tabber-inactive-tab-color: var(--text-color);
--tabber-inactive-tab-hover-bg: var(--body-light);
--tabber-inactive-tab-hover-border-color: var(--body-border);
}
.tabber {
margin: 1em 0;
}
.tabber .tabbertab {
background-color: var(--tabber-tab-bg);
border: 1px solid var(--tabber-tab-border-color);
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
padding: 1em 1.5em;
}
ul.tabbernav {
border: none;
margin-left: 2em;
margin-bottom: 0;
margin-right: 2em;
padding: 0;
font-family: inherit;
}
ul.tabbernav li.tabberactive > a {
background-color: var(--tabber-active-tab-bg);
color: var(--tabber-active-tab-color);
border-bottom: none;
position: relative;
}
ul.tabbernav li.tabberactive > a:hover {
color: var(--tabber-active-tab-hover-color);
background-color: var(--tabber-active-tab-hover-bg);
border-color: var(--tabber-active-tab-hover-border-color);
border-bottom: none;
}
ul.tabbernav li.tabberactive > a::after {
content: '';
position: absolute;
left: 0;
right: 0;
bottom: -1px;
border-bottom: 2px solid var(--tabber-active-tab-border-hider-color);
}
ul.tabbernav li a {
background-color: var(--tabber-inactive-tab-bg);
border-bottom: transparent;
border-color: var(--tabber-inactive-tab-border-color);
color: var(--tabber-inactive-tab-color);
display: inline-block;
font-size: 110%;
padding: 0.5em 1em;
}
ul.tabbernav li a:hover {
background-color: var(--tabber-inactive-tab-hover-bg);
border-color: var(--tabber-inactive-tab-hover-border-color);
}
ul.tabbernav li a:link,
ul.tabbernav li a:visited {
color: var(--tabber-inactive-tab-color);
}
:root {
--ooui-text: var(--text-color);
--ooui-interface: var(--body-light);
--ooui-interface-border: var(--body-border);
--ooui-window-background: rgba(255, 255, 255, 0.5);
--ooui-normal: #d5c7ad;
--ooui-normal--hover: #dfd5c1;
--ooui-normal-border: #b8a282;
--ooui-progressive: #605443;
--ooui-progressive--hover: #7e6e58;
--ooui-accent: var(--link-color);
--ooui-input: #fff;
--ooui-input-border: #b8a282;
--ooui-input-border--hover: #8a724f;
--ooui-disabled: #d1cdc5;
--ooui-disabled-border: #c2b9ab;
--ooui-disabled-text: var(--subtle-color);
--ooui-pending-background-image: repeating-linear-gradient(-45deg, var(--search-box), var(--search-box) 20px, var(--body-main) 20px, var(--body-main) 30px);
}
.oo-ui-widget {
color: var(--ooui-text);
}
.oo-ui-checkboxInputWidget [type='checkbox'] + span,
.oo-ui-radioInputWidget [type='radio'] + span {
background-color: var(--ooui-input);
border-color: var(--ooui-input-border);
}
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:checked + span,
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:indeterminate + span {
background-color: var(--ooui-progressive);
border-color: var(--ooui-progressive);
}
.oo-ui-radioInputWidget.oo-ui-widget-enabled [type='radio']:checked + span {
border-color: var(--ooui-progressive);
}
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:checked:hover + span,
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:indeterminate:hover + span {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
}
.oo-ui-radioInputWidget.oo-ui-widget-enabled [type='radio']:checked:hover + span {
border-color: var(--ooui-progressive--hover);
}
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:hover + span,
.oo-ui-radioInputWidget.oo-ui-widget-enabled [type='radio']:hover + span {
border-color: var(--ooui-accent);
}
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:focus + span {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:active + span,
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:checked:active + span,
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:indeterminate:active + span {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
box-shadow: inset 0 0 0 1px var(--ooui-progressive--hover);
}
.oo-ui-radioInputWidget.oo-ui-widget-enabled [type='radio']:active + span {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
}
.oo-ui-radioInputWidget.oo-ui-widget-enabled [type='radio']:checked:active + span {
border-color: var(--ooui-progressive--hover);
box-shadow: inset 0 0 0 1px var(--ooui-progressive--hover);
}
.oo-ui-radioInputWidget.oo-ui-widget-enabled [type='radio']:checked:active + span:before {
border-color: var(--ooui-progressive--hover);
}
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:checked:focus + span,
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:indeterminate:focus + span {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent), inset 0 0 0 2px #fff;
}
.oo-ui-checkboxInputWidget [type='checkbox']:disabled + span,
.oo-ui-radioInputWidget [type='radio']:disabled + span {
background-color: var(--ooui-disabled);
border-color: var(--ooui-disabled);
}
.oo-ui-dropdownWidget-handle {
border-color: var(--ooui-normal-border);
}
.oo-ui-dropdownWidget.oo-ui-widget-enabled .oo-ui-dropdownWidget-handle {
background-color: var(--ooui-normal);
color: var(--ooui-text);
}
.oo-ui-dropdownWidget.oo-ui-widget-enabled .oo-ui-dropdownWidget-handle:hover {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
}
.oo-ui-dropdownWidget.oo-ui-widget-enabled .oo-ui-dropdownWidget-handle:active {
color: var(--ooui-text);
}
.oo-ui-dropdownWidget.oo-ui-widget-enabled .oo-ui-dropdownWidget-handle:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-dropdownWidget.oo-ui-widget-enabled.oo-ui-dropdownWidget-open .oo-ui-dropdownWidget-handle {
background-color: var(--ooui-normal--hover);
}
.oo-ui-dropdownWidget.oo-ui-widget-disabled .oo-ui-dropdownWidget-handle {
color: var(--ooui-disabled-text);
text-shadow: none;
border-color: var(--ooui-disabled-border);
background-color: var(--ooui-disabled);
}
.oo-ui-dropdownInputWidget select {
border-color: var(--ooui-normal-border);
}
.oo-ui-dropdownInputWidget option {
background-color: var(--ooui-interface);
}
.oo-ui-dropdownInputWidget.oo-ui-widget-enabled {
background-color: var(--ooui-normal);
}
.oo-ui-dropdownInputWidget.oo-ui-widget-enabled:hover {
background-color: var(--ooui-normal--hover);
}
.oo-ui-dropdownInputWidget.oo-ui-widget-enabled select {
color: var(--ooui-text);
}
.oo-ui-dropdownInputWidget.oo-ui-widget-enabled select:hover,
.oo-ui-dropdownInputWidget.oo-ui-widget-enabled select:active {
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
}
.oo-ui-dropdownInputWidget.oo-ui-widget-enabled select:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-labelWidget.oo-ui-inline-help {
color: var(--byline-color);
}
.oo-ui-menuSelectWidget {
background-color: var(--ooui-interface);
border-color: var(--ooui-interface-border);
}
.oo-ui-menuSelectWidget-frameless {
box-shadow: inset 0 -1px 0 0 var(--ooui-normal-border);
}
.oo-ui-menuSectionOptionWidget {
color: var(--byline-color);
}
.oo-ui-menuOptionWidget.oo-ui-optionWidget-highlighted,
.oo-ui-menuOptionWidget.oo-ui-optionWidget-selected {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
}
.oo-ui-menuOptionWidget.oo-ui-optionWidget-selected.oo-ui-menuOptionWidget.oo-ui-optionWidget-highlighted,
.oo-ui-menuOptionWidget.oo-ui-optionWidget-pressed.oo-ui-menuOptionWidget.oo-ui-optionWidget-highlighted {
color: var(--ooui-accent);
}
.oo-ui-menuOptionWidget.oo-ui-widget-enabled.oo-ui-optionWidget {
color: var(--ooui-text);
}
.oo-ui-messageDialog-title {
color: inherit;
}
.oo-ui-messageWidget.oo-ui-messageWidget-block.oo-ui-flaggedElement-error {
background-color: var(--errorbox-bg);
border-color: var(--errorbox-border);
}
.oo-ui-messageWidget.oo-ui-messageWidget-block.oo-ui-flaggedElement-warning {
background-color: var(--warningbox-bg);
border-color: var(--warningbox-border);
}
.oo-ui-messageWidget.oo-ui-messageWidget-block.oo-ui-flaggedElement-success {
background-color: var(--successbox-bg);
border-color: var(--successbox-border);
}
.oo-ui-messageWidget.oo-ui-messageWidget-block.oo-ui-flaggedElement-notice {
background-color: var(--messagebox-info-background);
border-color: var(--messagebox-info-border);
}
.oo-ui-messageWidget.oo-ui-flaggedElement-error:not(.oo-ui-messageWidget-block),
.oo-ui-messageWidget.oo-ui-flaggedElement-success:not(.oo-ui-messageWidget-block) {
color: var(--ooui-text);
}
.oo-ui-optionWidget.oo-ui-widget-disabled {
color: var(--ooui-disabled-text);
}
.oo-ui-outlineControlsWidget {
background-color: var(--ooui-normal);
}
.oo-ui-outlineOptionWidget.oo-ui-optionWidget-highlighted {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
}
.oo-ui-popupWidget-popup {
background-color: var(--ooui-interface);
border-color: var(--ooui-interface-border);
}
.oo-ui-popupWidget-anchored-top .oo-ui-popupWidget-anchor:after {
border-bottom-color: var(--ooui-interface);
}
.oo-ui-popupWidget-anchored-top .oo-ui-popupWidget-anchor:before {
border-bottom-color: var(--ooui-interface-border);
}
.oo-ui-popupWidget-anchored-bottom .oo-ui-popupWidget-anchor:after {
border-top-color: var(--ooui-interface);
}
.oo-ui-popupWidget-anchored-bottom .oo-ui-popupWidget-anchor:before {
border-top-color: var(--ooui-interface-border);
}
.oo-ui-popupWidget-anchored-start .oo-ui-popupWidget-anchor:after {
border-right-color: var(--ooui-interface);
}
.oo-ui-popupWidget-anchored-start .oo-ui-popupWidget-anchor:before {
border-right-color: var(--ooui-interface-border);
}
.oo-ui-popupWidget-anchored-end .oo-ui-popupWidget-anchor:after {
border-left-color: var(--ooui-interface);
}
.oo-ui-popupWidget-anchored-end .oo-ui-popupWidget-anchor:before {
border-left-color: var(--ooui-interface-border);
}
.oo-ui-searchWidget-query {
border-bottom-color: var(--ooui-interface-border);
}
.oo-ui-selectFileWidget-dropTarget {
background-color: var(--ooui-interface);
border-color: var(--ooui-interface-border);
}
.oo-ui-selectFileWidget.oo-ui-widget-enabled.oo-ui-selectFileWidget-dropTarget {
background-color: var(--ooui-interface);
}
.oo-ui-selectFileWidget.oo-ui-widget-enabled.oo-ui-selectFileWidget-dropTarget:hover {
border-color: var(--ooui-input-border--hover);
}
.oo-ui-tabOptionWidget {
color: var(--ooui-text);
}
.oo-ui-tabSelectWidget-framed .oo-ui-tabOptionWidget.oo-ui-optionWidget-selected {
background-color: var(--body-dark);
color: var(--ooui-text);
}
.oo-ui-tabSelectWidget-framed .oo-ui-tabOptionWidget.oo-ui-optionWidget-selected .oo-ui-labelElement-label {
border-bottom-color: var(--body-border);
}
.oo-ui-tabSelectWidget-framed .oo-ui-tabOptionWidget.oo-ui-widget-enabled:hover,
.oo-ui-tabSelectWidget-framed .oo-ui-tabOptionWidget.oo-ui-widget-enabled:active {
background-color: var(--body-light);
color: var(--ooui-text);
}
.oo-ui-tabSelectWidget-framed .oo-ui-tabOptionWidget.oo-ui-widget-enabled.oo-ui-optionWidget-selected:hover {
background-color: var(--body-dark);
}
.oo-ui-tabSelectWidget-frameless .oo-ui-tabOptionWidget.oo-ui-optionWidget-selected {
color: var(--ooui-progressive);
box-shadow: inset 0 -2px 0 0 var(--ooui-progressive);
}
.oo-ui-tabSelectWidget-frameless .oo-ui-tabOptionWidget.oo-ui-optionWidget-selected:hover,
.oo-ui-tabSelectWidget-frameless .oo-ui-tabOptionWidget.oo-ui-optionWidget-selected:focus {
color: var(--ooui-progressive--hover);
box-shadow: inset 0 -2px 0 0 var(--ooui-progressive--hover);
}
.oo-ui-tabSelectWidget-framed {
background: none;
border-bottom: 1px solid var(--ooui-interface-border);
}
.oo-ui-tabSelectWidget-frameless {
box-shadow: inset 0 -1px 0 0 var(--ooui-interface-border);
}
.oo-ui-tabSelectWidget-mobile {
}
.oo-ui-tabSelectWidget-mobile.oo-ui-tabSelectWidget-framed:after {
background: var(--mobile-navbox-linear-gradient);
}
.oo-ui-tabSelectWidget-mobile.oo-ui-tabSelectWidget-frameless:after {
background: var(--mobile-navbox-linear-gradient);
}
.oo-ui-tagItemWidget {
border-color: var(--ooui-normal-border);
}
.oo-ui-tagItemWidget.oo-ui-widget-enabled {
color: var(--ooui-text);
}
.oo-ui-tagItemWidget.oo-ui-widget-enabled:hover {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
}
.oo-ui-tagItemWidget.oo-ui-widget-enabled:not( .oo-ui-tagItemWidget-fixed ) {
background-color: var(--ooui-normal);
}
.oo-ui-tagItemWidget.oo-ui-widget-enabled .oo-ui-buttonElement-button:hover {
background-color: var(--ooui-normal--hover);
}
.oo-ui-tagMultiselectWidget.oo-ui-widget-enabled {
background-color: var(--ooui-interface);
}
.oo-ui-tagMultiselectWidget.oo-ui-widget-enabled.oo-ui-tagMultiselectWidget-outlined {
background-color: var(--ooui-normal);
}
.oo-ui-tagMultiselectWidget.oo-ui-widget-enabled.oo-ui-tagMultiselectWidget-outlined .oo-ui-tagItemWidget.oo-ui-widget-enabled {
background-color: var(--ooui-interface);
}
.oo-ui-textInputWidget .oo-ui-inputWidget-input {
background-color: var(--ooui-input);
color: var(--ooui-text);
border-color: var(--ooui-input-border);
}
.oo-ui-textInputWidget.oo-ui-widget-enabled .oo-ui-inputWidget-input::placeholder {
color: var(--subtle-color);
}
.oo-ui-textInputWidget.oo-ui-widget-enabled .oo-ui-inputWidget-input:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-textInputWidget.oo-ui-widget-enabled .oo-ui-inputWidget-input[readonly]:not(.oo-ui-pendingElement-pending) {
background-color: var(--ooui-disabled);
color: var(--ooui-disabled-text);
}
.oo-ui-textInputWidget.oo-ui-widget-enabled:hover .oo-ui-inputWidget-input {
border-color: var(--ooui-input-border--hover);
}
.oo-ui-textInputWidget.oo-ui-widget-enabled:hover .oo-ui-inputWidget-input:focus {
border-color: var(--ooui-accent);
}
@media screen and (min-width: 0) {
.oo-ui-textInputWidget.oo-ui-widget-enabled textarea.oo-ui-inputWidget-input:focus {
outline: 1px solid var(--ooui-accent);
}
}
.oo-ui-textInputWidget.oo-ui-widget-disabled .oo-ui-inputWidget-input {
background-color: var(--ooui-disabled);
color: var(--ooui-disabled-text);
text-shadow: none;
border-color: var(--ooui-disabled-border);
}
.oo-ui-toggleSwitchWidget {
background-color: var(--ooui-input);
border-color: var(--ooui-input-border);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled .oo-ui-toggleSwitchWidget-grip {
background-color: var(--ooui-input);
border-color: var(--ooui-input-border);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:hover {
background-color: var(--ooui-input);
border-color: var(--ooui-accent);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:hover .oo-ui-toggleSwitchWidget-grip {
background-color: var(--ooui-input);
border-color: var(--ooui-accent);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:active,
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:active:hover,
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:active:focus {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
box-shadow: inset 0 0 0 1px var(--ooui-progressive--hover);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:active .oo-ui-toggleSwitchWidget-grip,
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:active:hover .oo-ui-toggleSwitchWidget-grip,
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:active:focus .oo-ui-toggleSwitchWidget-grip {
background-color: var(--ooui-input);
border-color: var(--ooui-input);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:focus .oo-ui-toggleSwitchWidget-grip {
border-color: var(--ooui-accent);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled.oo-ui-toggleWidget-on {
background-color: var(--ooui-progressive);
border-color: var(--ooui-progressive);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled.oo-ui-toggleWidget-on .oo-ui-toggleSwitchWidget-grip {
background-color: var(--ooui-input);
border-color: var(--ooui-input);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled.oo-ui-toggleWidget-on:hover {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled.oo-ui-toggleWidget-on:active,
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled.oo-ui-toggleWidget-on:active:hover {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled.oo-ui-toggleWidget-on:focus {
border-color: var(--ooui-progressive);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled.oo-ui-toggleWidget-on:focus::before {
border-color: #fff;
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-disabled {
background-color: var(--ooui-disabled);
border-color: var(--ooui-disabled);
}
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled > .oo-ui-buttonElement-button {
color: var(--ooui-text);
}
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled > .oo-ui-buttonElement-button:hover {
color: var(--ooui-text);
}
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled > .oo-ui-buttonElement-button:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled.oo-ui-buttonElement-pressed > input.oo-ui-buttonElement-button,
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled > .oo-ui-buttonElement-button:active {
color: var(--ooui-text);
}
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button,
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button:hover {
color: var(--ooui-text);
}
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button:active,
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive.oo-ui-buttonElement-pressed > .oo-ui-buttonElement-button {
color: var(--ooui-text);
border-color: var(--ooui-text);
}
.oo-ui-buttonElement-frameless.oo-ui-widget-disabled > .oo-ui-buttonElement-button {
color: var(--ooui-disabled-text);
}
.oo-ui-buttonElement-framed.oo-ui-widget-disabled > .oo-ui-buttonElement-button {
background-color: var(--ooui-disabled);
border-color: var(--ooui-disabled-border);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled > .oo-ui-buttonElement-button {
background-color: var(--ooui-normal);
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled > .oo-ui-buttonElement-button:hover {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled > .oo-ui-buttonElement-button:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-buttonElement-active > .oo-ui-buttonElement-button {
background-color: var(--ooui-progressive--hover);
color: #fff;
border-color: var(--ooui-progressive--hover);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-buttonElement-active > .oo-ui-buttonElement-button:focus {
border-color: var(--ooui-progressive--hover);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled > .oo-ui-buttonElement-button:active,
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-buttonElement-pressed > .oo-ui-buttonElement-button {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive {
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button {
color: var(--ooui-text);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button:hover {
background-color: var(--ooui-normal--hover);
border-color: var(--ooui-progressive--hover);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-destructive > .oo-ui-buttonElement-button {
color: var(--ooui-text);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-destructive > .oo-ui-buttonElement-button:hover {
background-color: var(--ooui-normal--hover);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button {
background-color: var(--ooui-progressive);
border-color: var(--ooui-progressive);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button:hover {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent), inset 0 0 0 2px #fff;
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button:active,
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive.oo-ui-buttonElement-pressed > .oo-ui-buttonElement-button,
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive.oo-ui-buttonElement-active > .oo-ui-buttonElement-button,
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive.oo-ui-popupToolGroup-active > .oo-ui-buttonElement-button {
color: #fff;
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
}
.oo-ui-pendingElement-pending {
background-image: var(--ooui-pending-background-image);
background-size: 200%;
animation: oo-ui-pendingElement-stripes 6s linear infinite;
}
@keyframes oo-ui-pendingElement-stripes {
100% {
background-position: 100%;
}
}
.oo-ui-messageDialog-content > .oo-ui-window-foot {
outline-color: var(--ooui-interface-border);
}
.oo-ui-messageDialog-message {
color: var(--ooui-text);
}
.oo-ui-messageDialog-actions-horizontal .oo-ui-actionWidget {
border-right-color: var(--ooui-interface-border);
}
.oo-ui-messageDialog-actions-vertical .oo-ui-actionWidget {
border-bottom-color: var(--ooui-interface-border);
}
.oo-ui-processDialog-content .oo-ui-window-head,
.oo-ui-processDialog-content .oo-ui-window-foot {
outline-color: var(--ooui-interface-border);
}
.oo-ui-processDialog .oo-ui-actionWidget > .oo-ui-buttonElement-button {
border-top-color: transparent;
border-bottom-color: transparent;
}
.oo-ui-processDialog .oo-ui-actionWidget > .oo-ui-buttonElement-button:hover,
.oo-ui-processDialog .oo-ui-actionWidget > .oo-ui-buttonElement-button:active {
border-top-color: transparent;
border-bottom-color: transparent;
}
.oo-ui-processDialog .oo-ui-actionWidget:not( .oo-ui-flaggedElement-progressive ):not( .oo-ui-flaggedElement-destructive ) > .oo-ui-buttonElement-button:hover,
.oo-ui-processDialog .oo-ui-actionWidget:not( .oo-ui-flaggedElement-progressive ):not( .oo-ui-flaggedElement-destructive ) > .oo-ui-buttonElement-button:active {
border-right-color: var(--ooui-interface-border);
border-left-color: transparent;
}
.oo-ui-processDialog .oo-ui-actionWidget:not( .oo-ui-flaggedElement-progressive ):not( .oo-ui-flaggedElement-destructive ) > .oo-ui-buttonElement-button:focus {
border-color: var(--ooui-accent);
}
.oo-ui-processDialog-actions-safe .oo-ui-actionWidget > .oo-ui-buttonElement-button,
.oo-ui-processDialog-actions-other .oo-ui-actionWidget > .oo-ui-buttonElement-button {
border-right-color: var(--ooui-normal-border);
border-left-color: transparent;
}
.oo-ui-processDialog-actions-safe .oo-ui-widget-enabled.oo-ui-iconElement:not( .oo-ui-labelElement ) > .oo-ui-buttonElement-button:hover {
background-color: var(--ooui-normal--hover);
border-right-color: var(--ooui-interface-border);
}
.oo-ui-windowManager-modal > .oo-ui-dialog {
background-color: var(--ooui-window-background);
}
.oo-ui-windowManager-modal > .oo-ui-dialog > .oo-ui-window-frame {
background-color: var(--ooui-interface);
}
.oo-ui-windowManager-modal.oo-ui-windowManager-floating > .oo-ui-dialog > .oo-ui-window-frame {
border-color: var(--ooui-interface-border);
}
.oo-ui-window {
color: var(--ooui-text);
}
.oo-ui-toolbar-bar {
background-color: var(--ooui-interface);
color: var(--ooui-text);
}
.oo-ui-toolbar-position-top > .oo-ui-toolbar-bar {
border-bottom-color: var(--body-mid);
}
.oo-ui-toolbar-bar .oo-ui-bookletLayout > .oo-ui-menuLayout-menu {
border-right-color: var(--body-mid);
}
.oo-ui-tool.oo-ui-widget-enabled > .oo-ui-tool-link:hover {
background-color: var(--ooui-normal--hover);
}
.oo-ui-tool.oo-ui-widget-enabled > .oo-ui-tool-link:focus {
outline: 1px solid var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-tool.oo-ui-widget-enabled > .oo-ui-tool-link:active,
.oo-ui-tool.oo-ui-widget-enabled.oo-ui-tool-active > .oo-ui-tool-link,
.oo-ui-tool.oo-ui-widget-enabled.oo-ui-popupToolGroup-active > .oo-ui-tool-link {
background-color: var(--ooui-normal--hover);
color: var(--ooui-accent);
box-shadow: none;
}
.oo-ui-tool.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive > .oo-ui-tool-link {
background-color: var(--ooui-progressive);
}
.oo-ui-tool.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive > .oo-ui-tool-link:hover {
background-color: var(--ooui-progressive--hover);
}
.oo-ui-tool.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive > .oo-ui-tool-link:focus {
box-shadow: inset 0 0 0 1px var(--ooui-accent), inset 0 0 0 2px #fff;
}
.oo-ui-tool.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive > .oo-ui-tool-link:active,
.oo-ui-tool.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive.oo-ui-tool-active > .oo-ui-tool-link {
background-color: var(--ooui-progressive--hover);
}
.oo-ui-listToolGroup-tools .oo-ui-tool.oo-ui-widget-enabled {
background-color: var(--ooui-normal);
}
.oo-ui-listToolGroup-tools .oo-ui-tool.oo-ui-widget-enabled:hover {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
}
.oo-ui-listToolGroup-tools .oo-ui-tool-active.oo-ui-widget-enabled .oo-ui-tool-link .oo-ui-tool-title {
color: var(--ooui-progressive);
}
.oo-ui-menuToolGroup {
border-left-color: var(--body-mid);
border-right-color: var(--body-mid);
}
.oo-ui-popupToolGroup-tools {
background-color: var(--ooui-interface);
border-color: var(--body-mid);
}
.oo-ui-popupToolGroup.oo-ui-widget-enabled > .oo-ui-popupToolGroup-handle:hover {
background-color: var(--ooui-normal--hover);
}
.oo-ui-popupToolGroup.oo-ui-widget-enabled > .oo-ui-popupToolGroup-handle:focus {
outline: 1px solid var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-toolbar-actions .oo-ui-popupToolGroup.oo-ui-widget-enabled > .oo-ui-popupToolGroup-handle:hover {
border-right-color: var(--ooui-normal--hover);
}
.oo-ui-popupToolGroup-tools .oo-ui-tool.oo-ui-widget-enabled .oo-ui-tool-link:focus {
box-shadow: inset 0 0 0 2px var(--ooui-accent);
}
.oo-ui-popupToolGroup-tools .oo-ui-tool-active.oo-ui-widget-enabled .oo-ui-tool-link .oo-ui-tool-title {
color: var(--ooui-progressive);
}
.oo-ui-popupToolGroup.oo-ui-popupToolGroup-active > .oo-ui-popupToolGroup-handle {
background-color: var(--ooui-normal);
color: var(--ooui-accent);
}
.oo-ui-popupToolGroup.oo-ui-popupToolGroup-active > .oo-ui-popupToolGroup-handle:hover {
background-color: var(--ooui-normal--hover);
color: var(--ooui-accent);
}
.oo-ui-bookletLayout-outlinePanel > .oo-ui-outlineControlsWidget {
border-top-color: var(--ooui-interface-border);
}
.oo-ui-bookletLayout > .oo-ui-menuLayout-menu {
border-right-color: var(--ooui-interface-border);
}
.oo-ui-fieldLayout-disabled > .oo-ui-fieldLayout-body > .oo-ui-fieldLayout-header > .oo-ui-labelElement-label {
color: var(--ooui-disabled-text);
}
.oo-ui-panelLayout-framed {
border-color: var(--sidebar);
}
.oo-ui-icon-settings {
background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' width='20' height='20' viewBox='0 0 20 20'%3E%3Ctitle%3Esettings%3C/title%3E%3Cg transform='translate(10 10)'%3E%3Cpath id='a' d='M1.5-10h-3l-1 6.5h5m0 7h-5l1 6.5h3'/%3E%3Cuse xlink:href='%23a' transform='rotate(45)'/%3E%3Cuse xlink:href='%23a' transform='rotate(90)'/%3E%3Cuse xlink:href='%23a' transform='rotate(135)'/%3E%3C/g%3E%3Cpath d='M10 2.5a7.5 7.5 0 0 0 0 15 7.5 7.5 0 0 0 0-15v4a3.5 3.5 0 0 1 0 7 3.5 3.5 0 0 1 0-7'/%3E%3C/svg%3E");
}
.oo-ui-icon-clear {
background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 20 20'%3E%3Ctitle%3Eclear%3C/title%3E%3Cpath d='M10 0a10 10 0 1 0 10 10A10 10 0 0 0 10 0zm5.66 14.24-1.41 1.41L10 11.41l-4.24 4.25-1.42-1.42L8.59 10 4.34 5.76l1.42-1.42L10 8.59l4.24-4.24 1.41 1.41L11.41 10z'/%3E%3C/svg%3E");
}
.mw-widget-dateInputWidget-handle {
background-color: var(--ooui-input);
color: var(--ooui-text);
border-color: var(--ooui-input-border);
}
.mw-widget-dateInputWidget-calendar {
background-color: var(--ooui-interface);
}
.mw-widget-dateInputWidget.oo-ui-widget-enabled .mw-widget-dateInputWidget-handle:hover {
border-color: var(--ooui-input-border--hover);
}
.mw-widget-calendarWidget {
border-color: var(--ooui-interface-border);
}
.mw-widget-calendarWidget:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.mw-widget-calendarWidget-day,
.mw-widget-calendarWidget-day-heading {
color: var(--ooui-text);
}
.mw-widget-calendarWidget-day-additional {
color: var(--ooui-text);
opacity: 0.67;
}
.mw-widget-calendarWidget-day-today {
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.mw-widget-calendarWidget-item:hover {
background-color: var(--ooui-progressive);
}
.mw-widget-calendarWidget-item-selected {
background-color: var(--ooui-progressive--hover);
}
.mw-widgets-datetime-calendarWidget {
background-color: var(--ooui-interface);
border-color: var(--ooui-interface-border);
}
.mw-widgets-datetime-calendarWidget:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent), 0 2px 2px 0 rgba(0, 0, 0, 0.25);
}
.mw-widgets-datetime-calendarWidget-grid .mw-widgets-datetime-calendarWidget-cell.mw-widgets-datetime-calendarWidget-extra .oo-ui-buttonElement-button .oo-ui-labelElement-label {
color: var(--subtle-color);
}
.mw-widgets-datetime-calendarWidget-grid .mw-widgets-datetime-calendarWidget-cell.mw-widgets-datetime-calendarWidget-selected .oo-ui-buttonElement-button {
background-color: var(--ooui-progressive--hover);
}
.mw-widgets-datetime-dateTimeInputWidget-handle {
background-color: var(--ooui-input);
color: var(--ooui-text);
border-color: var(--ooui-input-border);
}
.mw-widgets-datetime-dateTimeInputWidget.oo-ui-widget-enabled.mw-widgets-datetime-dateTimeInputWidget-handle:hover {
border-color: var(--ooui-input-border--hover);
}
.mw-widgets-datetime-dateTimeInputWidget.oo-ui-widget-enabled:hover input,
.mw-widgets-datetime-dateTimeInputWidget.oo-ui-widget-enabled:hover textarea {
border-color: var(--ooui-input-border--hover);
}
.mw-widgets-datetime-dateTimeInputWidget.oo-ui-widget-enabled .mw-widgets-datetime-dateTimeInputWidget-editField:hover {
background-color: var(--ooui-normal);
}
.ve-activated .ve-init-mw-desktopArticleTarget-originalContent #catlinks:hover {
background: var(--ooui-normal--hover);
}
.ve-ui-overlay {
font-family: inherit;
}
.oo-ui-toolbar-position-top .ve-ui-toolbarDialog-position-above {
border-top-color: var(--body-mid);
}
.ve-ce-branchNode-blockSlug,
.ve-ce-branchNode-newSlug {
outline-color: var(--body-border);
background-color: var(--ooui-interface);
}
.ve-ui-specialCharacterPage h3 {
color: var(--byline-color);
}
.ve-ui-specialCharacterPage-character {
border-color: var(--body-mid);
}
.ve-ui-specialCharacterPage-character:hover {
border-color: var(--body-dark);
}
.ve-ce-linkAnnotation.ve-ce-annotation-active {
box-shadow: 0 0 0 1px var(--body-mid);
background: none;
}
.ve-ui-desktopContext .ve-ui-linkContextItem .ve-ui-linkContextItem-label {
border-color: var(--body-border);
}
.ve-ui-mwHelpPopupTool-version-label,
.ve-ui-mwHelpPopupTool-version-link,
.ve-ui-mwHelpPopupTool-version-date {
color: var(--byline-color);
}
.ve-ce-tableCellableNode {
border-color: var(--body-mid);
}
.ve-ce-mwReferencesListNode-muted {
color: var(--byline-color);
}
.ve-ui-mwTemplatePage-description,
.ve-ui-mwParameterPage-label,
.ve-ui-mwParameterPage-description-required,
.ve-ui-mwParameterPage-description-deprecated {
color: var(--byline-color);
}
.mw-widget-titleWidget-menu .mw-widget-titleOptionWidget-description {
color: var(--byline-color);
}
.ve-ui-mwGalleryDialog-menuLayout > .oo-ui-menuLayout-menu,
.ve-ui-mwGalleryDialog-innerMenuLayout > .oo-ui-menuLayout-menu,
.ve-ui-mwGalleryDialog .ve-ui-mwGalleryDialog-image-container,
.ve-ui-targetWidget {
border-color: var(--body-border);
}
.ve-ui-targetWidget:not(.oo-ui-pendingElement-pending) {
background-color: var(--body-main);
}
.ve-ui-mwSaveDialog {
color: var(--ooui-text);
}
.ve-ui-mwSaveDialog-options {
background-color: var(--ooui-interface);
border-color: var(--body-border);
}
.ve-ui-mwSaveDialog-summary {
background-color: var(--ooui-input);
}
.ve-ui-mwSaveDialog-editSummary-count {
border-color: var(--body-border);
}
.ve-ui-mwSaveDialog-license {
color: var(--byline-color);
}
.ve-ui-mwReferenceContextItem-muted {
color: var(--byline-color);
}
.ve-ui-mwNoticesPopupTool-items > div:not(:first-child),
.ve-ui-mwHelpPopupTool-item:not(:first-child) {
border-color: var(--body-border);
}
.ve-ui-mwTransclusionOutlineControlsWidget {
background-color: var(--ooui-interface);
border-top-color: var(--body-border);
}
.ve-ui-mwTransclusionOutlineTemplateWidget-sticky {
background-color: var(--ooui-interface);
}
.ve-ui-mwTransclusionOutlineTemplateWidget .ve-ui-mwTransclusionOutlineParameterWidget.oo-ui-optionWidget-highlighted {
color: var(--ooui-text);
}
.ve-ui-mwTransclusionOutlineTemplateWidget-no-template-parameters {
color: var(--subtle-color);
}
.ve-ui-mwParameterPage-undocumentedLabel {
color: var(--subtle-color);
}
.ve-ui-mwTwoPaneTransclusionDialogLayout > .oo-ui-menuLayout-menu {
border-right: var(--body-border);
}
.ve-ui-mwParameterPage-doc-required,
.ve-ui-mwParameterPage-doc-deprecated,
.ve-ui-mwParameterPage-inlineDescription .ve-ui-mwParameterPage-doc-example {
color: var(--byline-color);
}
.ve-ui-expandableContent-toggle {
background-color: var(--ooui-interface);
}
.ve-ui-expandableContent-fade {
background: linear-gradient(to right, rgba(255, 255, 255, 0) 0, var(--ooui-interface) 90%);
}
.ve-ui-commandHelpDialog-shortcut > kbd,
.ve-ui-commandHelpDialog-sequence > kbd {
background-color: var(--keypress-background);
color: var(--keypress-color);
border-color: var(--keypress-border);
box-shadow: none;
text-shadow: none;
}
.ve-init-mw-desktopArticleTarget-toolbarPlaceholder-floating .ve-init-mw-desktopArticleTarget-toolbarPlaceholder-bar {
background: var(--ooui-interface);
}
.ve-init-mw-desktopArticleTarget-toolbarPlaceholder-bar {
border-bottom-color: var(--body-mid);
}
figure[typeof~='mw:File/Thumb'],
figure[typeof~='mw:File/Frame'],
figure[typeof~='mw:Image/Thumb'],
figure[typeof~='mw:Video/Thumb'],
figure[typeof~='mw:Image/Frame'],
figure[typeof~='mw:Video/Frame'] {
border: none;
background-color: var(--thumb-bg);
}
figure[typeof~='mw:File/Thumb'] > a:first-child > *:first-child:not( .mw-broken-media ),
figure[typeof~='mw:File/Frame'] > a:first-child > *:first-child:not( .mw-broken-media ),
figure[typeof~='mw:Image/Thumb'] > a:first-child > *:first-child:not( .mw-broken-media ),
figure[typeof~='mw:Video/Thumb'] > a:first-child > *:first-child:not( .mw-broken-media ),
figure[typeof~='mw:Image/Frame'] > a:first-child > *:first-child:not( .mw-broken-media ),
figure[typeof~='mw:Video/Frame'] > a:first-child > *:first-child:not( .mw-broken-media ) {
border: none;
background: var(--thumb-bg);
}
figure[typeof~='mw:File/Thumb'] > figcaption,
figure[typeof~='mw:File/Frame'] > figcaption,
figure[typeof~='mw:Image/Thumb'] > figcaption,
figure[typeof~='mw:Video/Thumb'] > figcaption,
figure[typeof~='mw:Image/Frame'] > figcaption,
figure[typeof~='mw:Video/Frame'] > figcaption {
border: none;
background-color: var(--thumb-caption-bg);
padding: 4px 6px;
}
:root {
--infobox-text-color: var(--text-color);
}
ol.references,
.reflist {
font-size: 90%;
}
.reflist {
list-style-type: decimal;
}
.reflist .references {
font-size: 100%;
list-style-type: inherit;
}
.reflist-lower-alpha {
list-style-type: lower-alpha;
}
ol.references li:target,
sup.reference:target {
background-color: var(--body-light);
}
.hideQuotes .refhide {
display: none;
}
body.page-Main_Page .mw-parser-output {
max-width: 75em;
margin: 0 auto;
}
body.page-Main_Page.action-view .catlinks,
body.page-Main_Page.action-view #contentSub,
body.page-Main_Page.action-view #siteNotice {
display: none;
}
.mainpage-header {
display: flex;
margin: 2.6em 1.75em 1.5em;
}
.mainpage-header .header-intro {
flex: 2;
}
.mainpage-header .header-intro h1 {
font-size: 2.5em;
font-weight: bold;
border: none;
margin: 0 0 0.15em;
}
.mainpage-header .header-intro p {
font-size: 1.1em;
line-height: 1.7em;
}
.mainpage-header .header-stats {
flex: 1;
display: flex;
justify-content: center;
align-items: center;
margin-top: -1em;
}
.mainpage-body {
display: grid;
grid-template-areas: "event event event" "update update update" "content content content" "left left right";
gap: 0.9rem;
grid-template-columns: repeat(3, 1fr);
}
.mainpage-body h2 a {
color: var(--text-color);
}
.mainpage-body .tile {
padding-left: 1.75em;
padding-right: 1.75em;
max-width: 100%;
}
.mainpage-body .tile-row {
width: 100%;
margin-bottom: 0;
}
.mainpage-body .tile-row {
display: grid;
gap: 0.9rem;
}
.mainpage-left {
grid-area: left;
flex: 2;
display: flex;
flex-flow: column wrap;
}
.mainpage-left > * {
margin: 0 0 0.9rem;
}
.mainpage-right {
grid-area: right;
flex: 1;
display: flex;
flex-flow: column wrap;
}
.mainpage-right > * {
margin: 0 0 0.9rem;
}
.arrow {
background: url('filepath://White-chevron.svg') no-repeat;
display: inline-block;
height: 0.7rem;
width: 0.45rem;
vertical-align: middle;
}
.arrow.dark {
filter: invert(80%);
}
.mainpage-contents {
grid-area: content;
grid-template-columns: repeat(6, 1fr);
}
.mainpage-contents .tile-halves {
flex: 1;
}
.mainpage-contents .tile-top {
position: relative;
}
.mainpage-contents h2 {
margin: 0;
padding: 0;
}
.mainpage-contents .tile-bottom.link-button a {
padding: 0.75em 0.2em;
}
.popular-pages ul {
display: grid;
grid-template-columns: repeat(3, 1fr);
grid-gap: 0.6em;
margin: 1em 0 0.7em 0;
}
.mp-popular-page-light {
display: flex;
align-items: center;
background-color: var(--button-background);
transition: 100ms;
}
.mp-popular-page-light a {
flex: 1;
display: block;
color: #fff;
font-weight: bold;
text-align: center;
text-decoration: none;
padding: 0.7em 1em;
}
.mp-popular-page-light:hover {
filter: brightness(115%);
transition: 100ms;
}
.mainpage-discord {
border: none;
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.3);
}
.mainpage-discord .tile-top {
display: flex;
align-items: center;
background: #5865f2;
padding: 1em 1.75em;
}
.mainpage-discord .tile-top a {
flex: 1;
position: relative;
text-decoration: none;
}
.mainpage-discord .tile-top a:hover .arrow {
transform: translateX(50%);
}
.mainpage-discord .tile-bottom {
background: #525ee0;
border: none;
padding: 1em 1.75em;
}
.mainpage-discord .tile-bottom p {
color: #fff;
font-weight: bold;
font-size: 0.9em;
text-align: center;
text-transform: uppercase;
letter-spacing: 0.03em;
margin: 0;
}
.mainpage-discord .partner-icon {
margin-right: 0.75em;
}
.mainpage-discord .server-name {
color: #fff;
font-weight: bold;
font-size: 1.25em;
margin: 0.5em 0 -0.15em;
}
.mainpage-discord .server-tagline {
color: rgba(255, 255, 255, 0.9);
margin-bottom: 0.5em;
}
.mainpage-discord .arrow {
position: absolute;
top: calc(50% - .5em);
right: 0;
height: 1em;
width: 0.7em;
background-size: 0.7em 1em;
transition: 0.3s ease-out;
}
.mainpage-editing {
border: none;
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.3);
}
.mainpage-editing .tile-top {
background: #438ab5;
}
.mainpage-editing .tile-bottom {
background: #3980ab;
border: none;
padding: 0.8rem 1.5rem 0.4rem;
}
.mainpage-editing h2,
.mainpage-editing a {
color: #fff;
}
.mainpage-editing p {
color: rgba(255, 255, 255, 0.9);
}
.mainpage-editing ul {
list-style-image: url('filepath://Transparent-chevron.svg');
}
@media only screen and (max-width: 1200px) {
.mainpage-contents {
grid-template-columns: repeat(3, 1fr);
}
}
@media only screen and (max-width: 1000px) {
.mainpage-body {
grid-template-areas: "event event event" "update update update" "content content content" "left left left" "right right right";
}
.mainpage-recent-updates {
grid-template-columns: repeat(2, 1fr);
}
.mainpage-recent-updates .tile-halves:last-child {
display: none;
}
.mainpage-recent-updates .tile-halves:hover .tile-top img {
transform: scale(1.04);
}
.mainpage-recent-updates .tile-top {
height: 18vw;
min-height: 9em;
}
.mainpage-header .header-stats {
display: none;
}
.mainpage-left > *:last-child,
.mainpage-right > *:last-child {
margin-bottom: 0;
}
.popular-pages ul {
grid-template-columns: repeat(2, 1fr);
}
}
@media only screen and (max-width: 720px) {
.mainpage-recent-updates {
grid-template-columns: none;
}
.mainpage-recent-updates .tile-halves:last-child {
display: flex;
}
.mainpage-contents {
grid-template-columns: repeat(2, 1fr);
}
}
.mw-prefs-buttons {
background-color: var(--body-main);
border-top-color: var(--body-border);
box-shadow: none;
}
.mw-prefs-tabs-wrapper.oo-ui-panelLayout-framed,
.mw-prefs-tabs > .oo-ui-menuLayout-content > .oo-ui-indexLayout-stackLayout > .oo-ui-tabPanelLayout {
border-color: var(--body-border);
}
.mw-htmlform-ooui .mw-htmlform-matrix tbody tr:nth-child(even) td {
background-color: var(--body-light);
}
.mw-htmlform-ooui .mw-htmlform-matrix tbody tr:hover td {
background-color: var(--body-mid);
}
:root {
--rc-positive-color: #407813;
--rc-negative-color: #b41e0f;
}
.mw-plusminus-pos {
color: var(--rc-positive-color);
}
.mw-plusminus-neg {
color: var(--rc-negative-color);
}
.client-js .mw-recentchanges-toplinks:not(.mw-recentchanges-toplinks-collapsed) {
border-color: var(--body-border);
background-color: var(--body-light);
border-radius: 2px;
}
.mw-rcfilters-ui-filterTagMultiselectWidget-wrapper-content-title {
color: var(--text-color);
}
.mw-rcfilters-ui-filterTagMultiselectWidget-emptyFilters {
color: var(--byline-color);
}
.mw-rcfilters-ui-filterTagMultiselectWidget.oo-ui-widget-enabled .oo-ui-tagMultiselectWidget-handle {
background-color: var(--ooui-interface);
border-color: var(--ooui-interface-border);
}
.mw-rcfilters-ui-filterTagMultiselectWidget-views-select-widget.oo-ui-widget {
border-color: var(--ooui-interface-border);
}
.mw-rcfilters-collapsed .mw-rcfilters-ui-filterTagMultiselectWidget {
border-bottom-color: var(--ooui-interface-border);
}
.mw-rcfilters-ui-menuSelectWidget-footer {
background-color: var(--ooui-interface);
border-color: var(--ooui-interface-border);
}
.mw-rcfilters-ui-viewSwitchWidget label.oo-ui-labelWidget {
color: var(--byline-color);
}
.mw-rcfilters-ui-tagItemWidget-popup-content {
color: var(--ooui-text);
}
.mw-changeslist-legend,
.mw-rcfilters-ui-changesListWrapperWidget .mw-changeslist-legend {
background-color: var(--body-light);
border-color: var(--body-dark);
}
.mw-rcfilters-ui-changesListWrapperWidget-previousChangesIndicator {
border-color: var(--sidebar);
}
.client-js .mw-changeslist ul,
.client-js .mw-changeslist table.mw-enhanced-rc {
margin-left: 0;
}
.mw-rcfilters-ui-watchlistTopSectionWidget-separator {
border-color: var(--sidebar);
}
.mw-rcfilters-ui-itemMenuOptionWidget-header {
border-bottom-color: var(--ooui-interface);
background-color: var(--ooui-interface-border);
}
.mw-rcfilters-ui-itemMenuOptionWidget:not(:last-child):not(.mw-rcfilters-ui-itemMenuOptionWidget-identifier-talk) {
border-bottom-color: var(--ooui-normal-border);
}
.mw-rcfilters-ui-itemMenuOptionWidget-label-title,
.mw-rcfilters-ui-itemMenuOptionWidget-label-desc {
color: var(--text-color);
}
.mw-rcfilters-ui-filterMenuOptionWidget.oo-ui-flaggedElement-muted:not(.oo-ui-optionWidget-selected) {
background-color: var(--body-main);
}
.mw-rcfilters-ui-filterMenuOptionWidget.oo-ui-flaggedElement-muted .mw-rcfilters-ui-itemMenuOptionWidget-label-title,
.mw-rcfilters-ui-filterMenuOptionWidget.oo-ui-flaggedElement-muted .mw-rcfilters-ui-itemMenuOptionWidget-label-desc {
color: var(--subtle-color);
}
.mw-rcfilters-ui-filterMenuSectionOptionWidget {
background-color: var(--body-mid);
}
.mw-rcfilters-ui-filterMenuSectionOptionWidget-header-title.oo-ui-labelElement-label {
color: var(--ooui-text);
}
.mw-rcfilters-ui-filterMenuHeaderWidget-title {
color: var(--ooui-text);
}
.mw-rcfilters-ui-filterMenuHeaderWidget-header {
border-bottom-color: var(--ooui-interface-border);
background-color: var(--ooui-interface);
}
.mw-rcfilters-ui-itemMenuOptionWidget-view-namespaces {
border-top-color: var(--ooui-interface-border);
}
.mw-rcfilters-ui-datePopupWidget {
border-color: var(--ooui-interface-border);
}
.mw-rcfilters-ui-datePopupWidget .mw-rcfilters-ui-valuePickerWidget-title {
color: var(--byline-color);
}
.mw-rcfilters-ui-savedLinksListItemWidget-label {
color: var(--ooui-accent);
}
.client-js .mw-changeslist.mw-rcfilters-ui-changesListWrapperWidget-highlighted ul,
.client-js .mw-changeslist.mw-rcfilters-ui-changesListWrapperWidget-highlighted table.mw-enhanced-rc {
margin-left: 1.5em;
}
.page-Special_CreateAccount .mw-ui-container,
.page-Special_UserLogin .mw-ui-container {
max-width: 64rem;
margin: 0 auto;
}
.mw-number-text {
color: var(--byline-color);
}
.mw-body-content .mw-number-text h3 {
color: var(--text-color);
}
#mw-indicator-mw-helplink a {
background: none;
padding: 0;
display: flex;
align-items: center;
}
#mw-indicator-mw-helplink a::before {
content: '';
margin-right: 5px;
-webkit-mask: url("/resources/src/mediawiki.helplink/images/helpNotice.svg?46d34") no-repeat 50% 50% / contain;
mask: url("/resources/src/mediawiki.helplink/images/helpNotice.svg?46d34") no-repeat 50% 50% / contain;
background: var(--text-color);
height: 20px;
width: 20px;
}
.results-info {
color: inherit;
}
.mw-search-profile-tabs {
background-color: var(--body-mid);
border-color: transparent;
}
.search-types .current a {
color: inherit;
}
#mw-searchoptions {
background-color: var(--body-mid);
border-color: transparent;
}
#mw-searchoptions .divider {
border-color: var(--body-border);
}
#mw-searchoptions h4 {
font-family: inherit;
}
#mw-searchoptions .oo-ui-labelElement:nth-of-type(odd) {
font-weight: bold;
}
.searchresult {
line-height: 1.5;
}
.searchalttitle,
#mw-search-interwiki li {
font-size: 90%;
}
.mw-search-result-data {
color: var(--byline-color);
}
.page-Special_ListFiles a.image img {
width: inherit;
height: inherit;
}
.page-Special_ListFiles .TablePager_col_thumb {
text-align: center;
}
#editcount table[border="1"] {
background-color: var(--body-main) !important;
border-color: var(--wikitable-border) !important;
margin-top: 0.5em;
}
#editcount table[border="1"] th,
#editcount table[border="1"] td {
padding: 0.2em 0.4em;
}
#editcount table[border="1"] th {
background-color: var(--wikitable-header-bg);
border: 1px solid var(--wikitable-border);
}
#editcount table[border="1"] td {
border: 1px solid var(--wikitable-border);
}
#editcount table[border="1"] tr:nth-child(odd) {
background-color: var(--body-light);
}
.mw-echo-ui-notificationBadgeButtonPopupWidget-popup > .oo-ui-popupWidget-popup .mw-echo-ui-placeholderItemWidget {
background-color: inherit;
}
table.mw-interwikitable.body td.mw-interwikitable-local-yes {
background-color: var(--table-yes-background);
color: var(--table-yes-color);
}
.mw-protectedpages-unknown {
color: var(--byline-color);
}
.watchlistredir,
.allpagesredirect {
font-style: italic;
}
.allpagesredirect:after {
color: var(--byline-color);
content: " (redirect)";
}
.mw-apisandbox-toolbar {
background: var(--body-main);
}
.oo-ui-menuOptionWidget .mw-apisandbox-flag {
color: var(--byline-color);
}
tr.mw-abusefilter-list-disabled,
tr.mw-abusefilter-list-disabled td {
color: var(--byline-color);
}
table.mw-abuselog-details {
background: var(--wikitable-bg);
border-color: var(--wikitable-border);
}
table.mw-abuselog-details th {
background: var(--wikitable-header-bg);
}
table.mw-abuselog-details th,
table.mw-abuselog-details td {
border-color: var(--wikitable-border);
}
.mw-abusefilter-log-hidden-entry {
color: var(--subtle-color);
}
body td.mw-abusefilter-history-changed {
background: var(--table-no-background);
}
div.mw-abusefilter-editor,
#mw-abusefilter-warn-preview,
#mw-abusefilter-disallow-preview {
border-color: var(--ooui-input-border);
}
.mw-destfile-warning {
border-color: var(--warningbox-border);
color: var(--text-color);
background-color: var(--warningbox-bg);
}
span.fileinput-button {
background-color: var(--ooui-normal);
border-color: var(--ooui-normal-border);
color: var(--ooui-text);
}
ul.fileupload-results li.ful-success {
background-color: var(--successbox-bg);
}
ul.fileupload-results li.ful-success a {
color: var(--link-color);
}
ul.fileupload-results li.ful-error {
background-color: var(--errorbox-bg);
}
#t-print,
#t-permalink {
display: none;
}
#filetoc {
border-radius: 2px;
background: var(--body-mid);
border-color: transparent;
margin: 0.5em auto;
text-align: center;
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
}
li.gallerybox div.thumb {
border: none;
background-color: var(--thumb-bg);
}
.smwfact {
display: none;
}
.list-header {
background-color: var(--body-mid);
color: inherit;
}
.editOptions {
color: var(--text-color);
background-color: var(--sourceeditor-background-secondary);
border-color: var(--sourceeditor-border);
}
.mw-json th,
.mw-json td {
border-color: var(--wikitable-border);
}
.mw-json td {
background: var(--wikitable-bg);
}
.mw-json th {
background: var(--wikitable-header-bg);
}
027c798280ff7f849cdc8d074b6e1551ee51ba52
80
62
2024-03-22T03:17:33Z
Jayden
3
Updating CSS from [[MediaWiki:Common.less]]
css
text/css
/* <pre> */
:root {
--body-main: #e2dbc8;
--body-light: #d8ccb4;
--body-mid: #d0bd97;
--body-dark: #b8a282;
--body-border: #94866d;
--body-background-color: #513e36;
--button-background: #605443;
--button-color: #fff;
--button-border: #3c352a;
--button-dark: #18140c;
--button-light: #3a301d;
--sidebar: #cfc08d;
--background-text-color: #e2dbc8;
--background-link-color: #e2bd8a;
--search-box: #efeee6;
--link-color: #936039;
--redlink-color: #ba0000;
--text-color: #000;
--byline-color: #4c4c4c;
--subtle-color: #777;
--admin-blue: #332e75;
--bearcat-green: #13592e;
--awb-purple: #933b96;
--rsw-blue: #438ab6;
--osrsw-brown: #605443;
--thumb-bg: var(--body-light);
--thumb-caption-bg: var(--body-mid);
--sourceeditor-input-background: #fff;
--sourceeditor-background: var(--body-light);
--sourceeditor-background-secondary: var(--body-light);
--sourceeditor-border: var(--body-mid);
--codemirror-gutter-background: var(--body-mid);
}
@font-face {
font-family: 'Lora';
font-weight: 400 700;
font-style: normal;
font-display: swap;
src: url('filepath://Lora.woff2') format('woff2');
}
@font-face {
font-family: 'Lora';
font-weight: 400 700;
font-style: italic;
font-display: swap;
src: url('filepath://Lora-Italic.woff2') format('woff2');
}
:root {
--base-text-color: #36414f;
--base-heading-color: #444e5a;
--base-heading-border: #e4eaee;
--mw-code-background-color: #ddd4bb;
--body-background-image: url('filepath://Wiki_background.jpg');
}
#mw-page-base {
background: none;
}
.mw-body {
background-color: var(--body-main);
color: var(--text-color);
border-color: transparent;
box-shadow: 0 0 7px rgba(0, 0, 0, 0.15);
margin-top: 0;
}
h1,
h2,
h3,
h4,
h5,
h6 {
color: var(--text-color);
}
h1,
h2 {
border-color: var(--sidebar);
}
.mw-body h1,
.mw-body-content h1,
.mw-body-content h2,
.mw-body-content h3,
.mw-body-content h4,
.mw-body-content h5,
.mw-body-content h6 {
font-family: 'Lora', 'Palatino', 'Georgia', serif;
}
.mw-parser-output h2:first-of-type {
clear: left;
}
.mw-footer {
color: var(--background-text-color);
}
.mw-footer li {
color: var(--background-text-color);
}
.mw-footer a,
.mw-footer a:active,
.mw-footer a:visited {
color: var(--background-link-color);
}
::placeholder {
color: var(--subtle-color);
}
a {
color: var(--link-color);
}
a:visited,
a:active {
color: var(--link-color);
}
a.new {
color: var(--redlink-color);
}
a.new:visited {
color: var(--redlink-color);
}
.mw-parser-output a.extiw,
.mw-parser-output a.external {
color: var(--link-color);
}
.mw-parser-output a.extiw:visited,
.mw-parser-output a.external:visited,
.mw-parser-output a.extiw:active,
.mw-parser-output a.external:active {
color: var(--link-color);
}
.jsPurgeLink a.external {
color: var(--link-color);
}
:root {
--errorbox-bg: #feecea;
--errorbox-border: #ee4231;
--warningbox-bg: #fef9de;
--warningbox-border: #f9d000;
--successbox-bg: #ecf8e3;
--successbox-border: #6bc71f;
}
.mw-message-box-error,
.errorbox,
.mw-message-box-warning,
.warningbox,
.mw-message-box-success,
.successbox,
.usermessage {
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
}
.mw-message-box-error,
.errorbox {
background-color: var(--errorbox-bg);
border-color: var(--errorbox-border);
}
.mw-message-box-warning,
.warningbox,
.usermessage {
background-color: var(--warningbox-bg);
border-color: var(--warningbox-border);
}
.mw-message-box-success,
.successbox {
background-color: var(--successbox-bg);
border-color: var(--successbox-border);
}
.catlinks {
background: var(--body-light);
border: 1px solid var(--body-dark);
padding: 8px 15px;
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
}
.catlinks li {
border-color: var(--body-mid);
}
.filehistory a img,
#file img {
background: url("data:image/svg+xml,%3C%3Fxml version='1.0' encoding='UTF-8'%3F%3E%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16'%3E%3Cpath d='M0 0h8v16h8V8H0z' opacity='.13'/%3E%3C/svg%3E") repeat;
}
#file img:hover {
background: none;
}
.mw-highlight {
background: none;
}
.mw-highlight .linenos {
background-color: var(--mw-code-background-color);
color: var(--byline-color);
}
.mw-highlight a:hover .linenos,
.mw-highlight .hll a .linenos {
color: var(--text-color);
}
.mw-content-ltr.mw-highlight-lines pre,
.mw-content-ltr.content .mw-highlight-lines pre {
box-shadow: inset 2.75em 0 0 var(--mw-code-background-color);
}
#pagehistory ul {
list-style: none;
margin: 0;
}
#pagehistory li {
border: 1px solid transparent;
padding: 1px 10px;
margin: 2px 0;
}
#pagehistory li.selected {
background-color: var(--body-light);
color: inherit;
border: 1px dashed var(--body-border);
outline: none;
}
#mw-history-compare > div:first-of-type {
position: -webkit-sticky;
position: sticky;
top: 0;
background-color: var(--body-main);
border-bottom: 1px solid var(--body-dark);
padding: 0.25em 0;
}
.wgl-stickyheader #mw-history-compare > div:first-of-type {
top: 2.5rem;
}
.autocomment,
.autocomment a,
.autocomment a:visited {
color: var(--link-color);
}
li span.deleted,
span.history-deleted {
color: var(--byline-color);
}
.mw-usertoollinks-contribs-no-edits,
.mw-usertoollinks-contribs-no-edits:visited {
color: var(--redlink-color);
}
.CategoryTreeToggle {
color: var(--link-color);
}
body.wgl-stickyheader.action-view .mw-headline:target::before {
display: block;
content: '';
margin-top: -3rem;
height: 3rem;
visibility: hidden;
pointer-events: none;
}
.mw-mmv-post-image {
color: var(--text-color);
background-color: var(--body-main);
}
.mw-mmv-image-metadata {
border-top-color: var(--body-mid);
background-color: var(--body-light);
}
.mw-mmv-dialog,
.mw-mmv-dialog .mw-mmv-dialog-down-arrow,
.mw-mmv-options-dialog .mw-mmv-dialog-down-arrow {
background-color: var(--body-light);
box-shadow: none;
}
.mw-mmv-options-enable-alert {
background-color: var(--body-light);
color: var(--text-color);
}
.mw-mmv-options-dialog-header,
.mw-mmv-options-text-header,
.mw-mmv-options-text-body,
.mw-mmv-options-enable-alert,
.mw-mmv-options-dialog .mw-mmv-disable-confirmation .mw-mmv-options-dialog-header,
.mw-mmv-options-dialog .mw-mmv-disable-confirmation .mw-mmv-options-text-header {
color: var(--text-color);
}
.mw-revslider-container {
border-color: var(--sidebar);
}
.mw-revslider-slider-wrapper {
border-top-color: var(--sidebar);
}
.mw-ui-button {
background-color: var(--ooui-normal);
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
}
.mw-ui-button:not(:disabled):hover,
.mw-ui-button:not(:disabled):active {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
}
.mw-ui-button:not(:disabled):focus {
color: var(--ooui-text);
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent), inset 0 0 0 2px #fff;
}
.mw-ui-button:not(:disabled):visited {
color: var(--ooui-text);
}
.mw-ui-button.mw-ui-progressive:not(:disabled) {
background-color: var(--ooui-progressive);
color: #fff;
border-color: var(--ooui-progressive);
}
.mw-ui-button.mw-ui-progressive:not(:disabled):hover {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
}
.mw-ui-button.mw-ui-progressive:not(:disabled):focus {
box-shadow: inset 0 0 0 1px var(--ooui-accent), inset 0 0 0 2px #fff;
}
.mw-ui-button.mw-ui-progressive:not(:disabled):active,
.mw-ui-button.mw-ui-progressive:not(:disabled).is-on {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
box-shadow: none;
}
.mw-ui-button.mw-ui-destructive:not( :disabled ) {
color: #fff;
}
.mw-ui-button.mw-ui-quiet,
.mw-ui-button.mw-ui-quiet.mw-ui-progressive,
.mw-ui-button.mw-ui-quiet.mw-ui-destructive {
color: var(--text-color);
}
input[type='checkbox']:hover + .mw-ui-button.mw-ui-quiet,
input[type='checkbox']:hover + .mw-ui-button.mw-ui-quiet.mw-ui-progressive,
input[type='checkbox']:hover + .mw-ui-button.mw-ui-quiet.mw-ui-destructive,
.mw-ui-button.mw-ui-quiet:hover,
.mw-ui-button.mw-ui-quiet.mw-ui-progressive:hover,
.mw-ui-button.mw-ui-quiet.mw-ui-destructive:hover {
background-color: rgba(0, 24, 73, 0.02745098);
color: var(--text-color);
border-color: transparent;
}
input[type='checkbox']:focus + .mw-ui-button.mw-ui-quiet,
input[type='checkbox']:focus + .mw-ui-button.mw-ui-quiet.mw-ui-progressive,
input[type='checkbox']:focus + .mw-ui-button.mw-ui-quiet.mw-ui-destructive,
.mw-ui-button.mw-ui-quiet:focus,
.mw-ui-button.mw-ui-quiet.mw-ui-progressive:focus,
.mw-ui-button.mw-ui-quiet.mw-ui-destructive:focus {
color: var(--text-color);
}
input[type='checkbox']:active + .mw-ui-button.mw-ui-quiet,
input[type='checkbox']:active + .mw-ui-button.mw-ui-quiet.mw-ui-progressive,
input[type='checkbox']:active + .mw-ui-button.mw-ui-quiet.mw-ui-destructive,
.mw-ui-button.mw-ui-quiet:active,
.mw-ui-button.mw-ui-quiet.mw-ui-progressive:active,
.mw-ui-button.mw-ui-quiet.mw-ui-destructive:active {
background-color: rgba(0, 36, 73, 0.08235294);
color: var(--text-color);
border-color: #72777d;
}
.mw-ui-input {
background-color: var(--ooui-input);
color: var(--text-color);
border-color: var(--ooui-input-border);
}
.mw-ui-input:hover {
border-color: var(--ooui-input-border--hover);
}
.mw-ui-input::placeholder {
color: var(--byline-color);
}
.mw-content-ltr .redirectText li:first-child {
padding: 0;
background: 0;
}
.mw-content-ltr .redirectText li:first-child::before {
content: '';
background: currentcolor;
-webkit-mask: url("filepath://Redirect-arrow.svg") no-repeat 50% 50% / contain;
mask: url("filepath://Redirect-arrow.svg") no-repeat 50% 50% / contain;
display: inline-block;
width: 47px;
height: 20px;
}
:root {
--wikitable-header-bg: var(--body-dark);
--wikitable-border: var(--body-border);
--wikitable-bg: var(--body-light);
--wikitable-bg-lighter: #e9e3d6;
--wikitable-color: var(--text-color);
--table-na-background: rgba(255, 255, 255, 0.3);
--table-na-color: var(--subtle-color);
--table-yes-background: #c3e8a3;
--table-yes-color: #2e5e05;
--table-no-background: #fbc0ba;
--table-no-color: #801c13;
--table-maybe-background: #fcea94;
--table-maybe-color: #786300;
}
.wikitable {
background: var(--wikitable-bg);
color: var(--wikitable-color);
border-color: var(--wikitable-border);
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
}
.wikitable > tr > th,
.wikitable > tr > td,
.wikitable > * > tr > th,
.wikitable > * > tr > td {
border-color: var(--wikitable-border);
}
.wikitable > tr > th.table-noborder,
.wikitable > tr > td.table-noborder,
.wikitable > * > tr > th.table-noborder,
.wikitable > * > tr > td.table-noborder {
border-left-style: hidden;
border-right-style: hidden;
padding-left: 0;
padding-right: 0;
}
.wikitable > tr > th,
.wikitable > * > tr > th {
background-color: var(--wikitable-header-bg);
}
.tabber .wikitable {
box-shadow: none;
}
.mw_metadata td,
.mw_metadata th {
border-color: var(--wikitable-border);
}
.mw_metadata th {
background-color: var(--wikitable-header-bg);
}
.mw_metadata td {
background-color: var(--wikitable-bg);
}
.mw-datatable {
border-color: var(--wikitable-border);
}
.mw-datatable td,
.mw-datatable th {
border-color: var(--wikitable-border);
}
.mw-datatable th {
background-color: var(--wikitable-header-bg);
}
.mw-datatable td {
background-color: var(--wikitable-bg);
}
.mw-datatable tr:hover td {
background-color: var(--wikitable-bg);
}
table.alternating-rows tr:nth-child(odd),
table.alternating-cols td:nth-child(odd) {
background: var(--wikitable-alternating-bg);
}
.table-na {
background: var(--table-na-background);
color: var(--table-na-color);
vertical-align: middle;
text-align: center;
}
.table-yes {
background: var(--table-yes-background);
color: var(--table-yes-color);
}
.table-positive {
background: var(--table-yes-background);
}
.table-no {
background: var(--table-no-background);
color: var(--table-no-color);
}
.table-negative {
background: var(--table-no-background);
}
.table-maybe {
background: var(--table-maybe-background);
color: var(--table-maybe-color);
}
#mw-allmessagestable .am_actual,
#mw-allmessagestable .am_default {
background-color: var(--wikitable-bg);
}
#mw-allmessagestable .am_default:hover,
#mw-allmessagestable .am_actual:hover,
#mw-allmessagestable tbody:hover td {
background-color: var(--wikitable-bg-lighter);
}
table.wikitable td.no-cell-spacing {
padding: 0;
height: 0;
}
table.wikitable td.no-cell-spacing table {
margin: -1px;
width: calc(100% + 2px);
height: calc(100% + 2px);
}
.plainlist ol,
.plainlist ul {
margin: 0;
}
.plainlist li {
margin-bottom: 0;
list-style: none;
}
table.align-right-1 td:nth-of-type(1),
table.align-right-2 td:nth-of-type(2),
table.align-right-3 td:nth-of-type(3),
table.align-right-4 td:nth-of-type(4),
table.align-right-5 td:nth-of-type(5),
table.align-right-6 td:nth-of-type(6),
table.align-right-7 td:nth-of-type(7),
table.align-right-8 td:nth-of-type(8),
table.align-right-9 td:nth-of-type(9),
table.align-right-10 td:nth-of-type(10),
table.align-right-11 td:nth-of-type(11),
table.align-right-12 td:nth-of-type(12),
table.align-right-13 td:nth-of-type(13),
table.align-right-14 td:nth-of-type(14),
table.align-right-15 td:nth-of-type(15),
table.align-right-16 td:nth-of-type(16),
table.align-right-17 td:nth-of-type(17),
table.align-right-18 td:nth-of-type(18),
table.align-right-19 td:nth-of-type(19),
table.align-right-20 td:nth-of-type(20) {
text-align: right;
}
table.align-center-1 td:nth-of-type(1),
table.align-center-2 td:nth-of-type(2),
table.align-center-3 td:nth-of-type(3),
table.align-center-4 td:nth-of-type(4),
table.align-center-5 td:nth-of-type(5),
table.align-center-6 td:nth-of-type(6),
table.align-center-7 td:nth-of-type(7),
table.align-center-8 td:nth-of-type(8),
table.align-center-9 td:nth-of-type(9),
table.align-center-10 td:nth-of-type(10),
table.align-center-11 td:nth-of-type(11),
table.align-center-12 td:nth-of-type(12),
table.align-center-13 td:nth-of-type(13),
table.align-center-14 td:nth-of-type(14),
table.align-center-15 td:nth-of-type(15),
table.align-center-16 td:nth-of-type(16),
table.align-center-17 td:nth-of-type(17),
table.align-center-18 td:nth-of-type(18),
table.align-center-19 td:nth-of-type(19),
table.align-center-20 td:nth-of-type(20) {
text-align: center;
}
table.align-left-1 td:nth-of-type(1),
table.align-left-2 td:nth-of-type(2),
table.align-left-3 td:nth-of-type(3),
table.align-left-4 td:nth-of-type(4),
table.align-left-5 td:nth-of-type(5),
table.align-left-6 td:nth-of-type(6),
table.align-left-7 td:nth-of-type(7),
table.align-left-8 td:nth-of-type(8),
table.align-left-9 td:nth-of-type(9),
table.align-left-10 td:nth-of-type(10),
table.align-left-11 td:nth-of-type(11),
table.align-left-12 td:nth-of-type(12),
table.align-left-13 td:nth-of-type(13),
table.align-left-14 td:nth-of-type(14),
table.align-left-15 td:nth-of-type(15),
table.align-left-16 td:nth-of-type(16),
table.align-left-17 td:nth-of-type(17),
table.align-left-18 td:nth-of-type(18),
table.align-left-19 td:nth-of-type(19),
table.align-left-20 td:nth-of-type(20) {
text-align: left;
}
:root {
--diff-addedline-border-color: #438ab5;
--diff-addedline-background: #bddff2;
--diff-addedline-color: #000;
--diff-deletedline-border-color: #379541;
--diff-deletedline-background: #c1edbf;
--diff-deletedline-color: #000;
--diff-context-border-color: var(--body-mid);
--diff-context-background: var(--body-mid);
}
.diff-context {
border-color: var(--diff-context-border-color);
background: var(--diff-context-background);
color: inherit;
}
.diff-addedline {
border-color: var(--diff-addedline-border-color);
}
.diff-addedline .diffchange {
background: var(--diff-addedline-background);
color: var(--diff-addedline-color);
}
.diff-deletedline {
border-color: var(--diff-deletedline-border-color);
}
.diff-deletedline .diffchange {
background: var(--diff-deletedline-background);
color: var(--diff-deletedline-color);
}
.mw-diff-movedpara-left:after,
.mw-diff-movedpara-right:after {
color: var(--text-color);
}
.mw-notification {
background-color: var(--body-light);
border-color: var(--body-border);
color: var(--text-color);
}
.mw-echo-ui-notificationsInboxWidget-toolbarWrapper {
background: var(--body-main);
}
.mw-body-content .mw-echo-ui-datedSubGroupListWidget-title-secondary {
color: var(--byline-color);
}
.mw-echo-ui-pageNotificationsOptionWidget.oo-ui-optionWidget-selected {
background-color: var(--ooui-normal);
color: var(--ooui-accent);
}
.mw-echo-ui-pageNotificationsOptionWidget-label-count {
background-color: var(--ooui-normal);
color: var(--byline-color);
}
.oo-ui-optionWidget-selected .mw-echo-ui-pageNotificationsOptionWidget-label-count {
color: var(--ooui-accent);
}
.mw-echo-ui-pageNotificationsOptionWidget.oo-ui-optionWidget-highlighted {
background-color: var(--ooui-normal);
color: var(--text-color);
}
.mw-echo-ui-crossWikiUnreadFilterWidget {
border-color: var(--body-border);
}
.mw-echo-ui-crossWikiUnreadFilterWidget-subtitle {
color: var(--byline-color);
}
.mw-echo-ui-notificationBadgeButtonPopupWidget-popup > .oo-ui-popupWidget-popup > .oo-ui-popupWidget-head,
.mw-echo-ui-notificationBadgeButtonPopupWidget-popup > .oo-ui-popupWidget-popup > .oo-ui-popupWidget-footer {
border-color: var(--ooui-interface-border);
}
.mw-echo-ui-notificationBadgeButtonPopupWidget-popup > .oo-ui-popupWidget-popup > .oo-ui-popupWidget-footer .mw-echo-ui-notificationBadgeButtonPopupWidget-footer-buttons .oo-ui-buttonElement:last-child {
border-left-color: var(--ooui-normal-border);
}
.mw-echo-ui-notificationItemWidget {
background-color: var(--ooui-normal);
border-color: var(--ooui-normal-border);
}
.mw-echo-ui-notificationItemWidget:hover,
.mw-echo-ui-notificationItemWidget-unread:hover {
background-color: var(--ooui-normal--hover);
}
.mw-echo-ui-notificationItemWidget:last-child {
border-bottom-color: var(--ooui-normal-border);
}
.mw-echo-ui-notificationItemWidget-unread {
background-color: var(--search-box);
}
.mw-echo-ui-crossWikiNotificationItemWidget-group,
.mw-echo-ui-bundleNotificationItemWidget-group {
background-color: var(--ooui-interface);
}
.mw-echo-ui-toggleReadCircleButtonWidget-circle {
background-color: var(--ooui-progressive);
}
.mw-echo-ui-toggleReadCircleButtonWidget:hover .mw-echo-ui-toggleReadCircleButtonWidget-circle {
background-color: var(--ooui-progressive--hover);
}
.mw-echo-ui-toggleReadCircleButtonWidget-circle-unread {
background-color: var(--ooui-normal);
border-color: var(--ooui-normal-border);
}
.mw-echo-ui-notificationItemWidget-content-message-header,
.mw-echo-ui-notificationItemWidget-content-message-body,
.mw-echo-ui-menuItemWidget > .oo-ui-buttonElement-button > .oo-ui-labelElement-label,
.mw-echo-ui-notificationItemWidget-content-actions-timestamp {
color: var(--ooui-text);
}
.mw-echo-ui-bundleNotificationItemWidget-group {
background-color: var(--body-main);
}
@keyframes unseen-fadeout-to-unread {
from {
background-color: var(--wikitable-bg-lighter);
}
to {
background-color: var(--search-box);
}
}
@keyframes unseen-fadeout-to-read {
from {
background-color: var(--wikitable-bg-lighter);
}
to {
background-color: var(--body-main);
}
}
.mwe-popups {
background: var(--body-light);
}
.mwe-popups .mwe-popups-container {
color: var(--text-color);
background: var(--body-light);
}
.mwe-popups .mwe-popups-container.flipped-x-y:before,
.mwe-popups .mwe-popups-container.flipped-y:before {
border-top: none;
}
.mwe-popups .mwe-popups-container.mwe-popups-no-image-tri:before {
border-bottom: none;
}
.mwe-popups .mwe-popups-container.flipped-x-y:after,
.mwe-popups .mwe-popups-container.flipped-y:after {
border-top-color: var(--body-light);
}
.mwe-popups .mwe-popups-container.mwe-popups-no-image-tri:after {
border-bottom-color: var(--body-light);
}
.mwe-popups .mwe-popups-settings-icon:hover,
.mwe-popups .mwe-popups-settings-icon:active {
background-color: var(--ooui-normal--hover);
}
.mwe-popups .mw-ui-icon-element:not(.disabled):hover {
background: none;
}
.mwe-popups .mwe-popups-extract {
color: var(--text-color);
}
.mwe-popups .mwe-popups-extract[dir='ltr']:after {
background-image: linear-gradient(to right, rgba(49, 62, 89, 0), var(--body-light) 50%);
}
.mwe-popups-overlay {
background-color: var(--ooui-window-background);
}
#mwe-popups-settings {
background: var(--ooui-interface);
border-color: var(--ooui-interface-border);
color: var(--text-color);
}
#mwe-popups-settings header {
border-color: var(--ooui-interface-border);
}
#mwe-popups-settings main#mwe-popups-settings-form p {
color: var(--byline-color);
}
#mwe-popups-settings main#mwe-popups-settings-form form label > span {
color: var(--ooui-text);
}
:root {
--smw-ask-options-even-bg: var(--body-mid);
--smw-ask-options-odd-bg: var(--body-light);
--smw-ask-action-btn-lblue-bg: var(--body-main);
--smw-ask-action-btn-lblue-color: #000;
--smw-ask-action-btn-lblue-border-color: var(--body-light);
--smw-ask-action-btn-dblue-bg: var(--body-light);
--smw-ask-action-btn-dblue-color: #fff;
--smw-ask-action-btn-dblue-border-color: var(--button-border);
}
.smw-ask-condition fieldset,
.smw-ask-printhead fieldset {
border-color: var(--sidebar);
}
.smw-ask-search fieldset,
.smw-ask-format fieldset,
.smw-ask-options fieldset {
border-color: var(--sidebar);
}
.strike > span:before,
.strike > span:after {
background: var(--sidebar);
}
.smw-ask-options-fields tr td {
background-color: var(--smw-ask-options-even-bg);
}
.smw-ask-options-fields tr:nth-child(odd) td {
background-color: var(--smw-ask-options-odd-bg);
}
.smw-ask-action-btn.smw-ask-action-btn-lblue,
.smw-ask-action-btn.smw-ask-action-btn-lblue:hover,
.smw-ask-action-btn.smw-ask-action-btn-lblue:visited {
background-color: var(--smw-ask-action-btn-lblue-bg);
color: var(--smw-ask-action-btn-lblue-color);
border-color: var(--smw-ask-action-btn-lblue-border-color);
}
.smw-ask-action-btn.smw-ask-action-btn-dblue,
.smw-ask-action-btn.smw-ask-action-btn-dblue:hover,
.smw-ask-action-btn.smw-ask-action-btn-dblue:visited {
background-color: var(--smw-ask-action-btn-dblue-bg);
color: var(--smw-ask-action-btn-dblue-color);
border-color: var(--smw-ask-action-btn-dblue-border-color);
}
.smw-ask-query textarea,
.smw-ask-actions textarea {
background-color: var(--ooui-interface);
border-color: var(--ooui-interface-border);
color: var(--ooui-text);
}
.smw-ask-query-format select {
background-color: var(--ooui-interface);
border: 1px solid var(--ooui-interface-border);
color: var(--ooui-text);
}
.smw-ask-toplinks {
background-color: var(--body-mid);
}
.smw-ask-toplinks span.smw-icon-info {
background: none;
padding: 0 !important;
}
.smw-ask-toplinks span.smw-icon-info::before {
content: '';
background: var(--text-color);
-webkit-mask: url("data:image/svg+xml,%3C%3Fxml version='1.0' encoding='UTF-8'%3F%3E%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 20 20'%3E%3Ctitle%3Einfo%3C/title%3E%3Cpath d='M10 0C4.477 0 0 4.477 0 10s4.477 10 10 10 10-4.477 10-10S15.523 0 10 0zM9 5h2v2H9zm0 4h2v6H9z'/%3E%3C/svg%3E") no-repeat 50% 50% / contain;
mask: url("data:image/svg+xml,%3C%3Fxml version='1.0' encoding='UTF-8'%3F%3E%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 20 20'%3E%3Ctitle%3Einfo%3C/title%3E%3Cpath d='M10 0C4.477 0 0 4.477 0 10s4.477 10 10 10 10-4.477 10-10S15.523 0 10 0zM9 5h2v2H9zm0 4h2v6H9z'/%3E%3C/svg%3E") no-repeat 50% 50% / contain;
padding: 0 0 3px 18px;
}
.smw-ask-options-row-odd {
background-color: var(--body-light);
}
.smw-ask-options-row-even {
background-color: var(--body-mid);
}
#options-toggle:not(:checked) + #options-list .options-parameter-list:after {
background-image: linear-gradient(to bottom, transparent, var(--body-mid) 90%);
}
.smw-ask-button-submit input {
background-color: var(--ooui-normal);
border-color: var(--ooui-normal-border);
color: var(--text-color);
}
.smw-ask-button-submit input:hover,
.smw-ask-button-lgrey:hover {
background-color: var(--ooui-normal--hover);
border-color: var(--ooui-normal-border);
}
input.smw-ask-action-btn.smw-ask-action-btn-dblue {
background-color: var(--ooui-normal);
border-color: var(--ooui-normal-border);
color: var(--ooui-text);
}
a.smw-ask-action-btn.smw-ask-action-btn-lblue {
background-color: var(--body-mid);
border-color: var(--body-mid);
color: var(--ooui-text);
}
a.smw-ask-action-btn.smw-ask-action-btn-lblue:visited {
background-color: var(--body-mid);
border-color: var(--body-mid);
color: var(--ooui-text);
}
a.smw-ask-action-btn.smw-ask-action-btn-lblue:hover {
background-color: var(--body-mid);
border-color: var(--body-mid);
color: var(--ooui-text);
}
a.smw-ask-action-btn-lgrey {
background-color: var(--ooui-normal);
border-color: var(--ooui-normal-border);
color: var(--ooui-text);
}
a.smw-ask-action-btn-lgrey:hover {
background-color: var(--ooui-normal--hover);
border-color: var(--ooui-normal-border);
color: var(--ooui-text);
}
.smw-callout-error {
background-color: var(--errorbox-bg);
border-color: var(--errorbox-border);
}
.smw-callout-info {
background-color: var(--body-light);
border-color: var(--body-dark);
}
.smw-callout-success {
background-color: var(--successbox-bg);
border-color: var(--successbox-border);
}
.smw-callout-warning {
background-color: var(--warningbox-bg);
border-color: var(--warningbox-bg);
}
.smw-tabs input.nav-tab:checked + label.nav-label,
.smw-tabs input.nav-tab:checked + label.nav-label:hover {
color: inherit;
}
#tab-smw-property-value:checked + label.nav-label .usage-count {
color: #fff;
background-color: var(--ooui-progressive);
}
#tab-smw-property-value:checked + label.nav-label .usage-count.moderate {
color: #fff;
background-color: #b55e0c;
border-color: #b55e0c;
}
#tab-smw-property-value:checked + label.nav-label .usage-count.high {
color: #fff;
background-color: #9f261e;
border-color: #9f261e;
}
.smw-property-page-results .header-title {
background-color: var(--ooui-interface);
border-bottom-color: var(--ooui-interface-border);
color: var(--ooui-text);
}
.smw-property-page-results .value-row:hover {
background-color: var(--ooui-normal--hover);
}
.smw-property-page-results .smw-table .header-row {
color: var(--text-color);
}
.tippy-tooltip.light-border-theme {
background-color: var(--body-light);
color: var(--text-color);
}
.tippy-tooltip.light-border-theme .tippy-arrow {
border-top-color: var(--body-light);
}
.tippy-tooltip.light-border-theme .tippy-arrow:after {
border-top-color: var(--body-light);
}
.tippy-header {
background-color: var(--body-dark);
border-bottom-color: var(--body-mid);
}
.smw-ui-input-filter {
background-color: var(--ooui-interface);
border-color: var(--ooui-interface-border);
color: var(--ooui-text);
}
.smw-ui-input-filter input {
border-left-color: var(--ooui-interface-border) !important;
color: var(--ooui-text) !important;
}
.smw-ui-pagination .page-link.link-disabled {
background-color: var(--ooui-disabled);
border-color: var(--ooui-disabled-border);
color: var(--subtle-color);
}
.smw-ui-pagination .page-link {
background-color: var(--ooui-normal);
border-color: var(--ooui-normal-border);
color: var(--link-color);
}
.smw-ui-pagination .page-link:hover {
background-color: var(--ooui-normal--hover);
border-color: var(--ooui-normal-border);
color: var(--link-color);
}
.smw-ui-pagination .page-link.link-active {
color: #fff;
background-color: var(--ooui-progressive);
border-color: var(--ooui-progressive);
}
.smw-tabs input.nav-tab:checked + label.nav-label {
border-color: var(--ooui-normal-border);
}
.smw-tabs section,
.smw-tabs .subtab-content {
border-top-color: var(--ooui-normal-border);
}
.smw-column-header {
color: var(--text-color);
}
.smw-factbox {
background: var(--body-main);
border-color: transparent;
}
.mw-body .mw-indicators #mw-indicator-smw-entity-examiner.mw-indicator .smw-indicator-vertical-bar-loader {
display: none;
}
.smwb-theme-light .smwb-title,
.smwb-theme-light .smwb-center,
.smwb-theme-light .smwb-actions,
.smwb-theme-light .smwb-prophead {
background-color: var(--body-mid);
}
.smwb-theme-light .smwb-factbox {
border-left-color: var(--body-mid);
}
.smwb-theme-light .smwb-ifactbox {
border-right-color: var(--body-mid);
}
.smwb-theme-light .smwb-propval {
background-color: var(--body-light);
}
.smwb-action-separator {
border-color: var(--wikitable-border);
}
.smwb-bottom {
border-bottom: 1px solid var(--wikitable-border);
}
.smwb-ifactbox .smwb-cell,
.smwb-factbox .smwb-cell {
border-top: 1px solid var(--wikitable-border);
}
.smwb-propvalue .smwb-prophead,
.smwb-ipropvalue .smwb-prophead,
.smwb-propvalue .smwb-propval,
.smwb-ipropvalue .smwb-propval {
font-size: 0.9em;
}
:root {
--filter-black-to-link: invert(36%) sepia(58%) saturate(433%) hue-rotate(344deg) brightness(100%) contrast(91%);
}
#bodyContent span.smwbrowse a {
color: black;
background-image: url('filepath://Smwbrowse.svg');
filter: var(--filter-black-to-link);
}
#bodyContent span.smwbrowse a:hover {
color: black;
background-image: url('filepath://Smwbrowse-hover.svg');
text-decoration: underline;
}
#bodyContent span.smwsearch a {
color: black;
filter: var(--filter-black-to-link);
background-image: url('filepath://Smwsearch.svg');
}
#bodyContent span.smwsearch a:hover {
color: black;
background-image: url('filepath://Smwsearch-hover.svg');
text-decoration: underline;
}
:root {
--tabber-tab-bg: var(--body-light);
--tabber-tab-border-color: var(--body-border);
--tabber-active-tab-bg: var(--body-light);
--tabber-active-tab-color: var(--text-color);
--tabber-active-tab-hover-bg: var(--body-light);
--tabber-active-tab-hover-border-color: var(--body-border);
--tabber-active-tab-hover-color: var(--text-color);
--tabber-active-tab-border-hider-color: var(--body-light);
--tabber-inactive-tab-bg: var(--body-background-color);
--tabber-inactive-tab-border-color: var(--body-border);
--tabber-inactive-tab-color: var(--text-color);
--tabber-inactive-tab-hover-bg: var(--body-light);
--tabber-inactive-tab-hover-border-color: var(--body-border);
}
.tabber {
margin: 1em 0;
}
.tabber .tabbertab {
background-color: var(--tabber-tab-bg);
border: 1px solid var(--tabber-tab-border-color);
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
padding: 1em 1.5em;
}
ul.tabbernav {
border: none;
margin-left: 2em;
margin-bottom: 0;
margin-right: 2em;
padding: 0;
font-family: inherit;
}
ul.tabbernav li.tabberactive > a {
background-color: var(--tabber-active-tab-bg);
color: var(--tabber-active-tab-color);
border-bottom: none;
position: relative;
}
ul.tabbernav li.tabberactive > a:hover {
color: var(--tabber-active-tab-hover-color);
background-color: var(--tabber-active-tab-hover-bg);
border-color: var(--tabber-active-tab-hover-border-color);
border-bottom: none;
}
ul.tabbernav li.tabberactive > a::after {
content: '';
position: absolute;
left: 0;
right: 0;
bottom: -1px;
border-bottom: 2px solid var(--tabber-active-tab-border-hider-color);
}
ul.tabbernav li a {
background-color: var(--tabber-inactive-tab-bg);
border-bottom: transparent;
border-color: var(--tabber-inactive-tab-border-color);
color: var(--tabber-inactive-tab-color);
display: inline-block;
font-size: 110%;
padding: 0.5em 1em;
}
ul.tabbernav li a:hover {
background-color: var(--tabber-inactive-tab-hover-bg);
border-color: var(--tabber-inactive-tab-hover-border-color);
}
ul.tabbernav li a:link,
ul.tabbernav li a:visited {
color: var(--tabber-inactive-tab-color);
}
:root {
--ooui-text: var(--text-color);
--ooui-interface: var(--body-light);
--ooui-interface-border: var(--body-border);
--ooui-window-background: rgba(255, 255, 255, 0.5);
--ooui-normal: #d5c7ad;
--ooui-normal--hover: #dfd5c1;
--ooui-normal-border: #b8a282;
--ooui-progressive: #605443;
--ooui-progressive--hover: #7e6e58;
--ooui-accent: var(--link-color);
--ooui-input: #fff;
--ooui-input-border: #b8a282;
--ooui-input-border--hover: #8a724f;
--ooui-disabled: #d1cdc5;
--ooui-disabled-border: #c2b9ab;
--ooui-disabled-text: var(--subtle-color);
--ooui-pending-background-image: repeating-linear-gradient(-45deg, var(--search-box), var(--search-box) 20px, var(--body-main) 20px, var(--body-main) 30px);
}
.oo-ui-widget {
color: var(--ooui-text);
}
.oo-ui-checkboxInputWidget [type='checkbox'] + span,
.oo-ui-radioInputWidget [type='radio'] + span {
background-color: var(--ooui-input);
border-color: var(--ooui-input-border);
}
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:checked + span,
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:indeterminate + span {
background-color: var(--ooui-progressive);
border-color: var(--ooui-progressive);
}
.oo-ui-radioInputWidget.oo-ui-widget-enabled [type='radio']:checked + span {
border-color: var(--ooui-progressive);
}
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:checked:hover + span,
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:indeterminate:hover + span {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
}
.oo-ui-radioInputWidget.oo-ui-widget-enabled [type='radio']:checked:hover + span {
border-color: var(--ooui-progressive--hover);
}
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:hover + span,
.oo-ui-radioInputWidget.oo-ui-widget-enabled [type='radio']:hover + span {
border-color: var(--ooui-accent);
}
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:focus + span {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:active + span,
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:checked:active + span,
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:indeterminate:active + span {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
box-shadow: inset 0 0 0 1px var(--ooui-progressive--hover);
}
.oo-ui-radioInputWidget.oo-ui-widget-enabled [type='radio']:active + span {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
}
.oo-ui-radioInputWidget.oo-ui-widget-enabled [type='radio']:checked:active + span {
border-color: var(--ooui-progressive--hover);
box-shadow: inset 0 0 0 1px var(--ooui-progressive--hover);
}
.oo-ui-radioInputWidget.oo-ui-widget-enabled [type='radio']:checked:active + span:before {
border-color: var(--ooui-progressive--hover);
}
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:checked:focus + span,
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:indeterminate:focus + span {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent), inset 0 0 0 2px #fff;
}
.oo-ui-checkboxInputWidget [type='checkbox']:disabled + span,
.oo-ui-radioInputWidget [type='radio']:disabled + span {
background-color: var(--ooui-disabled);
border-color: var(--ooui-disabled);
}
.oo-ui-dropdownWidget-handle {
border-color: var(--ooui-normal-border);
}
.oo-ui-dropdownWidget.oo-ui-widget-enabled .oo-ui-dropdownWidget-handle {
background-color: var(--ooui-normal);
color: var(--ooui-text);
}
.oo-ui-dropdownWidget.oo-ui-widget-enabled .oo-ui-dropdownWidget-handle:hover {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
}
.oo-ui-dropdownWidget.oo-ui-widget-enabled .oo-ui-dropdownWidget-handle:active {
color: var(--ooui-text);
}
.oo-ui-dropdownWidget.oo-ui-widget-enabled .oo-ui-dropdownWidget-handle:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-dropdownWidget.oo-ui-widget-enabled.oo-ui-dropdownWidget-open .oo-ui-dropdownWidget-handle {
background-color: var(--ooui-normal--hover);
}
.oo-ui-dropdownWidget.oo-ui-widget-disabled .oo-ui-dropdownWidget-handle {
color: var(--ooui-disabled-text);
text-shadow: none;
border-color: var(--ooui-disabled-border);
background-color: var(--ooui-disabled);
}
.oo-ui-dropdownInputWidget select {
border-color: var(--ooui-normal-border);
}
.oo-ui-dropdownInputWidget option {
background-color: var(--ooui-interface);
}
.oo-ui-dropdownInputWidget.oo-ui-widget-enabled {
background-color: var(--ooui-normal);
}
.oo-ui-dropdownInputWidget.oo-ui-widget-enabled:hover {
background-color: var(--ooui-normal--hover);
}
.oo-ui-dropdownInputWidget.oo-ui-widget-enabled select {
color: var(--ooui-text);
}
.oo-ui-dropdownInputWidget.oo-ui-widget-enabled select:hover,
.oo-ui-dropdownInputWidget.oo-ui-widget-enabled select:active {
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
}
.oo-ui-dropdownInputWidget.oo-ui-widget-enabled select:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-labelWidget.oo-ui-inline-help {
color: var(--byline-color);
}
.oo-ui-menuSelectWidget {
background-color: var(--ooui-interface);
border-color: var(--ooui-interface-border);
}
.oo-ui-menuSelectWidget-frameless {
box-shadow: inset 0 -1px 0 0 var(--ooui-normal-border);
}
.oo-ui-menuSectionOptionWidget {
color: var(--byline-color);
}
.oo-ui-menuOptionWidget.oo-ui-optionWidget-highlighted,
.oo-ui-menuOptionWidget.oo-ui-optionWidget-selected {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
}
.oo-ui-menuOptionWidget.oo-ui-optionWidget-selected.oo-ui-menuOptionWidget.oo-ui-optionWidget-highlighted,
.oo-ui-menuOptionWidget.oo-ui-optionWidget-pressed.oo-ui-menuOptionWidget.oo-ui-optionWidget-highlighted {
color: var(--ooui-accent);
}
.oo-ui-menuOptionWidget.oo-ui-widget-enabled.oo-ui-optionWidget {
color: var(--ooui-text);
}
.oo-ui-messageDialog-title {
color: inherit;
}
.oo-ui-messageWidget.oo-ui-messageWidget-block.oo-ui-flaggedElement-error {
background-color: var(--errorbox-bg);
border-color: var(--errorbox-border);
}
.oo-ui-messageWidget.oo-ui-messageWidget-block.oo-ui-flaggedElement-warning {
background-color: var(--warningbox-bg);
border-color: var(--warningbox-border);
}
.oo-ui-messageWidget.oo-ui-messageWidget-block.oo-ui-flaggedElement-success {
background-color: var(--successbox-bg);
border-color: var(--successbox-border);
}
.oo-ui-messageWidget.oo-ui-messageWidget-block.oo-ui-flaggedElement-notice {
background-color: var(--messagebox-info-background);
border-color: var(--messagebox-info-border);
}
.oo-ui-messageWidget.oo-ui-flaggedElement-error:not(.oo-ui-messageWidget-block),
.oo-ui-messageWidget.oo-ui-flaggedElement-success:not(.oo-ui-messageWidget-block) {
color: var(--ooui-text);
}
.oo-ui-optionWidget.oo-ui-widget-disabled {
color: var(--ooui-disabled-text);
}
.oo-ui-outlineControlsWidget {
background-color: var(--ooui-normal);
}
.oo-ui-outlineOptionWidget.oo-ui-optionWidget-highlighted {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
}
.oo-ui-popupWidget-popup {
background-color: var(--ooui-interface);
border-color: var(--ooui-interface-border);
}
.oo-ui-popupWidget-anchored-top .oo-ui-popupWidget-anchor:after {
border-bottom-color: var(--ooui-interface);
}
.oo-ui-popupWidget-anchored-top .oo-ui-popupWidget-anchor:before {
border-bottom-color: var(--ooui-interface-border);
}
.oo-ui-popupWidget-anchored-bottom .oo-ui-popupWidget-anchor:after {
border-top-color: var(--ooui-interface);
}
.oo-ui-popupWidget-anchored-bottom .oo-ui-popupWidget-anchor:before {
border-top-color: var(--ooui-interface-border);
}
.oo-ui-popupWidget-anchored-start .oo-ui-popupWidget-anchor:after {
border-right-color: var(--ooui-interface);
}
.oo-ui-popupWidget-anchored-start .oo-ui-popupWidget-anchor:before {
border-right-color: var(--ooui-interface-border);
}
.oo-ui-popupWidget-anchored-end .oo-ui-popupWidget-anchor:after {
border-left-color: var(--ooui-interface);
}
.oo-ui-popupWidget-anchored-end .oo-ui-popupWidget-anchor:before {
border-left-color: var(--ooui-interface-border);
}
.oo-ui-searchWidget-query {
border-bottom-color: var(--ooui-interface-border);
}
.oo-ui-selectFileWidget-dropTarget {
background-color: var(--ooui-interface);
border-color: var(--ooui-interface-border);
}
.oo-ui-selectFileWidget.oo-ui-widget-enabled.oo-ui-selectFileWidget-dropTarget {
background-color: var(--ooui-interface);
}
.oo-ui-selectFileWidget.oo-ui-widget-enabled.oo-ui-selectFileWidget-dropTarget:hover {
border-color: var(--ooui-input-border--hover);
}
.oo-ui-tabOptionWidget {
color: var(--ooui-text);
}
.oo-ui-tabSelectWidget-framed .oo-ui-tabOptionWidget.oo-ui-optionWidget-selected {
background-color: var(--body-dark);
color: var(--ooui-text);
}
.oo-ui-tabSelectWidget-framed .oo-ui-tabOptionWidget.oo-ui-optionWidget-selected .oo-ui-labelElement-label {
border-bottom-color: var(--body-border);
}
.oo-ui-tabSelectWidget-framed .oo-ui-tabOptionWidget.oo-ui-widget-enabled:hover,
.oo-ui-tabSelectWidget-framed .oo-ui-tabOptionWidget.oo-ui-widget-enabled:active {
background-color: var(--body-light);
color: var(--ooui-text);
}
.oo-ui-tabSelectWidget-framed .oo-ui-tabOptionWidget.oo-ui-widget-enabled.oo-ui-optionWidget-selected:hover {
background-color: var(--body-dark);
}
.oo-ui-tabSelectWidget-frameless .oo-ui-tabOptionWidget.oo-ui-optionWidget-selected {
color: var(--ooui-progressive);
box-shadow: inset 0 -2px 0 0 var(--ooui-progressive);
}
.oo-ui-tabSelectWidget-frameless .oo-ui-tabOptionWidget.oo-ui-optionWidget-selected:hover,
.oo-ui-tabSelectWidget-frameless .oo-ui-tabOptionWidget.oo-ui-optionWidget-selected:focus {
color: var(--ooui-progressive--hover);
box-shadow: inset 0 -2px 0 0 var(--ooui-progressive--hover);
}
.oo-ui-tabSelectWidget-framed {
background: none;
border-bottom: 1px solid var(--ooui-interface-border);
}
.oo-ui-tabSelectWidget-frameless {
box-shadow: inset 0 -1px 0 0 var(--ooui-interface-border);
}
.oo-ui-tabSelectWidget-mobile {
}
.oo-ui-tabSelectWidget-mobile.oo-ui-tabSelectWidget-framed:after {
background: var(--mobile-navbox-linear-gradient);
}
.oo-ui-tabSelectWidget-mobile.oo-ui-tabSelectWidget-frameless:after {
background: var(--mobile-navbox-linear-gradient);
}
.oo-ui-tagItemWidget {
border-color: var(--ooui-normal-border);
}
.oo-ui-tagItemWidget.oo-ui-widget-enabled {
color: var(--ooui-text);
}
.oo-ui-tagItemWidget.oo-ui-widget-enabled:hover {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
}
.oo-ui-tagItemWidget.oo-ui-widget-enabled:not( .oo-ui-tagItemWidget-fixed ) {
background-color: var(--ooui-normal);
}
.oo-ui-tagItemWidget.oo-ui-widget-enabled .oo-ui-buttonElement-button:hover {
background-color: var(--ooui-normal--hover);
}
.oo-ui-tagMultiselectWidget.oo-ui-widget-enabled {
background-color: var(--ooui-interface);
}
.oo-ui-tagMultiselectWidget.oo-ui-widget-enabled.oo-ui-tagMultiselectWidget-outlined {
background-color: var(--ooui-normal);
}
.oo-ui-tagMultiselectWidget.oo-ui-widget-enabled.oo-ui-tagMultiselectWidget-outlined .oo-ui-tagItemWidget.oo-ui-widget-enabled {
background-color: var(--ooui-interface);
}
.oo-ui-textInputWidget .oo-ui-inputWidget-input {
background-color: var(--ooui-input);
color: var(--ooui-text);
border-color: var(--ooui-input-border);
}
.oo-ui-textInputWidget.oo-ui-widget-enabled .oo-ui-inputWidget-input::placeholder {
color: var(--subtle-color);
}
.oo-ui-textInputWidget.oo-ui-widget-enabled .oo-ui-inputWidget-input:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-textInputWidget.oo-ui-widget-enabled .oo-ui-inputWidget-input[readonly]:not(.oo-ui-pendingElement-pending) {
background-color: var(--ooui-disabled);
color: var(--ooui-disabled-text);
}
.oo-ui-textInputWidget.oo-ui-widget-enabled:hover .oo-ui-inputWidget-input {
border-color: var(--ooui-input-border--hover);
}
.oo-ui-textInputWidget.oo-ui-widget-enabled:hover .oo-ui-inputWidget-input:focus {
border-color: var(--ooui-accent);
}
@media screen and (min-width: 0) {
.oo-ui-textInputWidget.oo-ui-widget-enabled textarea.oo-ui-inputWidget-input:focus {
outline: 1px solid var(--ooui-accent);
}
}
.oo-ui-textInputWidget.oo-ui-widget-disabled .oo-ui-inputWidget-input {
background-color: var(--ooui-disabled);
color: var(--ooui-disabled-text);
text-shadow: none;
border-color: var(--ooui-disabled-border);
}
.oo-ui-toggleSwitchWidget {
background-color: var(--ooui-input);
border-color: var(--ooui-input-border);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled .oo-ui-toggleSwitchWidget-grip {
background-color: var(--ooui-input);
border-color: var(--ooui-input-border);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:hover {
background-color: var(--ooui-input);
border-color: var(--ooui-accent);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:hover .oo-ui-toggleSwitchWidget-grip {
background-color: var(--ooui-input);
border-color: var(--ooui-accent);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:active,
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:active:hover,
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:active:focus {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
box-shadow: inset 0 0 0 1px var(--ooui-progressive--hover);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:active .oo-ui-toggleSwitchWidget-grip,
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:active:hover .oo-ui-toggleSwitchWidget-grip,
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:active:focus .oo-ui-toggleSwitchWidget-grip {
background-color: var(--ooui-input);
border-color: var(--ooui-input);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:focus .oo-ui-toggleSwitchWidget-grip {
border-color: var(--ooui-accent);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled.oo-ui-toggleWidget-on {
background-color: var(--ooui-progressive);
border-color: var(--ooui-progressive);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled.oo-ui-toggleWidget-on .oo-ui-toggleSwitchWidget-grip {
background-color: var(--ooui-input);
border-color: var(--ooui-input);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled.oo-ui-toggleWidget-on:hover {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled.oo-ui-toggleWidget-on:active,
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled.oo-ui-toggleWidget-on:active:hover {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled.oo-ui-toggleWidget-on:focus {
border-color: var(--ooui-progressive);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled.oo-ui-toggleWidget-on:focus::before {
border-color: #fff;
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-disabled {
background-color: var(--ooui-disabled);
border-color: var(--ooui-disabled);
}
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled > .oo-ui-buttonElement-button {
color: var(--ooui-text);
}
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled > .oo-ui-buttonElement-button:hover {
color: var(--ooui-text);
}
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled > .oo-ui-buttonElement-button:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled.oo-ui-buttonElement-pressed > input.oo-ui-buttonElement-button,
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled > .oo-ui-buttonElement-button:active {
color: var(--ooui-text);
}
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button,
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button:hover {
color: var(--ooui-text);
}
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button:active,
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive.oo-ui-buttonElement-pressed > .oo-ui-buttonElement-button {
color: var(--ooui-text);
border-color: var(--ooui-text);
}
.oo-ui-buttonElement-frameless.oo-ui-widget-disabled > .oo-ui-buttonElement-button {
color: var(--ooui-disabled-text);
}
.oo-ui-buttonElement-framed.oo-ui-widget-disabled > .oo-ui-buttonElement-button {
background-color: var(--ooui-disabled);
border-color: var(--ooui-disabled-border);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled > .oo-ui-buttonElement-button {
background-color: var(--ooui-normal);
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled > .oo-ui-buttonElement-button:hover {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled > .oo-ui-buttonElement-button:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-buttonElement-active > .oo-ui-buttonElement-button {
background-color: var(--ooui-progressive--hover);
color: #fff;
border-color: var(--ooui-progressive--hover);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-buttonElement-active > .oo-ui-buttonElement-button:focus {
border-color: var(--ooui-progressive--hover);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled > .oo-ui-buttonElement-button:active,
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-buttonElement-pressed > .oo-ui-buttonElement-button {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive {
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button {
color: var(--ooui-text);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button:hover {
background-color: var(--ooui-normal--hover);
border-color: var(--ooui-progressive--hover);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-destructive > .oo-ui-buttonElement-button {
color: var(--ooui-text);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-destructive > .oo-ui-buttonElement-button:hover {
background-color: var(--ooui-normal--hover);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button {
background-color: var(--ooui-progressive);
border-color: var(--ooui-progressive);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button:hover {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent), inset 0 0 0 2px #fff;
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button:active,
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive.oo-ui-buttonElement-pressed > .oo-ui-buttonElement-button,
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive.oo-ui-buttonElement-active > .oo-ui-buttonElement-button,
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive.oo-ui-popupToolGroup-active > .oo-ui-buttonElement-button {
color: #fff;
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
}
.oo-ui-pendingElement-pending {
background-image: var(--ooui-pending-background-image);
background-size: 200%;
animation: oo-ui-pendingElement-stripes 6s linear infinite;
}
@keyframes oo-ui-pendingElement-stripes {
100% {
background-position: 100%;
}
}
.oo-ui-messageDialog-content > .oo-ui-window-foot {
outline-color: var(--ooui-interface-border);
}
.oo-ui-messageDialog-message {
color: var(--ooui-text);
}
.oo-ui-messageDialog-actions-horizontal .oo-ui-actionWidget {
border-right-color: var(--ooui-interface-border);
}
.oo-ui-messageDialog-actions-vertical .oo-ui-actionWidget {
border-bottom-color: var(--ooui-interface-border);
}
.oo-ui-processDialog-content .oo-ui-window-head,
.oo-ui-processDialog-content .oo-ui-window-foot {
outline-color: var(--ooui-interface-border);
}
.oo-ui-processDialog .oo-ui-actionWidget > .oo-ui-buttonElement-button {
border-top-color: transparent;
border-bottom-color: transparent;
}
.oo-ui-processDialog .oo-ui-actionWidget > .oo-ui-buttonElement-button:hover,
.oo-ui-processDialog .oo-ui-actionWidget > .oo-ui-buttonElement-button:active {
border-top-color: transparent;
border-bottom-color: transparent;
}
.oo-ui-processDialog .oo-ui-actionWidget:not( .oo-ui-flaggedElement-progressive ):not( .oo-ui-flaggedElement-destructive ) > .oo-ui-buttonElement-button:hover,
.oo-ui-processDialog .oo-ui-actionWidget:not( .oo-ui-flaggedElement-progressive ):not( .oo-ui-flaggedElement-destructive ) > .oo-ui-buttonElement-button:active {
border-right-color: var(--ooui-interface-border);
border-left-color: transparent;
}
.oo-ui-processDialog .oo-ui-actionWidget:not( .oo-ui-flaggedElement-progressive ):not( .oo-ui-flaggedElement-destructive ) > .oo-ui-buttonElement-button:focus {
border-color: var(--ooui-accent);
}
.oo-ui-processDialog-actions-safe .oo-ui-actionWidget > .oo-ui-buttonElement-button,
.oo-ui-processDialog-actions-other .oo-ui-actionWidget > .oo-ui-buttonElement-button {
border-right-color: var(--ooui-normal-border);
border-left-color: transparent;
}
.oo-ui-processDialog-actions-safe .oo-ui-widget-enabled.oo-ui-iconElement:not( .oo-ui-labelElement ) > .oo-ui-buttonElement-button:hover {
background-color: var(--ooui-normal--hover);
border-right-color: var(--ooui-interface-border);
}
.oo-ui-windowManager-modal > .oo-ui-dialog {
background-color: var(--ooui-window-background);
}
.oo-ui-windowManager-modal > .oo-ui-dialog > .oo-ui-window-frame {
background-color: var(--ooui-interface);
}
.oo-ui-windowManager-modal.oo-ui-windowManager-floating > .oo-ui-dialog > .oo-ui-window-frame {
border-color: var(--ooui-interface-border);
}
.oo-ui-window {
color: var(--ooui-text);
}
.oo-ui-toolbar-bar {
background-color: var(--ooui-interface);
color: var(--ooui-text);
}
.oo-ui-toolbar-position-top > .oo-ui-toolbar-bar {
border-bottom-color: var(--body-mid);
}
.oo-ui-toolbar-bar .oo-ui-bookletLayout > .oo-ui-menuLayout-menu {
border-right-color: var(--body-mid);
}
.oo-ui-tool.oo-ui-widget-enabled > .oo-ui-tool-link:hover {
background-color: var(--ooui-normal--hover);
}
.oo-ui-tool.oo-ui-widget-enabled > .oo-ui-tool-link:focus {
outline: 1px solid var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-tool.oo-ui-widget-enabled > .oo-ui-tool-link:active,
.oo-ui-tool.oo-ui-widget-enabled.oo-ui-tool-active > .oo-ui-tool-link,
.oo-ui-tool.oo-ui-widget-enabled.oo-ui-popupToolGroup-active > .oo-ui-tool-link {
background-color: var(--ooui-normal--hover);
color: var(--ooui-accent);
box-shadow: none;
}
.oo-ui-tool.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive > .oo-ui-tool-link {
background-color: var(--ooui-progressive);
}
.oo-ui-tool.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive > .oo-ui-tool-link:hover {
background-color: var(--ooui-progressive--hover);
}
.oo-ui-tool.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive > .oo-ui-tool-link:focus {
box-shadow: inset 0 0 0 1px var(--ooui-accent), inset 0 0 0 2px #fff;
}
.oo-ui-tool.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive > .oo-ui-tool-link:active,
.oo-ui-tool.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive.oo-ui-tool-active > .oo-ui-tool-link {
background-color: var(--ooui-progressive--hover);
}
.oo-ui-listToolGroup-tools .oo-ui-tool.oo-ui-widget-enabled {
background-color: var(--ooui-normal);
}
.oo-ui-listToolGroup-tools .oo-ui-tool.oo-ui-widget-enabled:hover {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
}
.oo-ui-listToolGroup-tools .oo-ui-tool-active.oo-ui-widget-enabled .oo-ui-tool-link .oo-ui-tool-title {
color: var(--ooui-progressive);
}
.oo-ui-menuToolGroup {
border-left-color: var(--body-mid);
border-right-color: var(--body-mid);
}
.oo-ui-popupToolGroup-tools {
background-color: var(--ooui-interface);
border-color: var(--body-mid);
}
.oo-ui-popupToolGroup.oo-ui-widget-enabled > .oo-ui-popupToolGroup-handle:hover {
background-color: var(--ooui-normal--hover);
}
.oo-ui-popupToolGroup.oo-ui-widget-enabled > .oo-ui-popupToolGroup-handle:focus {
outline: 1px solid var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-toolbar-actions .oo-ui-popupToolGroup.oo-ui-widget-enabled > .oo-ui-popupToolGroup-handle:hover {
border-right-color: var(--ooui-normal--hover);
}
.oo-ui-popupToolGroup-tools .oo-ui-tool.oo-ui-widget-enabled .oo-ui-tool-link:focus {
box-shadow: inset 0 0 0 2px var(--ooui-accent);
}
.oo-ui-popupToolGroup-tools .oo-ui-tool-active.oo-ui-widget-enabled .oo-ui-tool-link .oo-ui-tool-title {
color: var(--ooui-progressive);
}
.oo-ui-popupToolGroup.oo-ui-popupToolGroup-active > .oo-ui-popupToolGroup-handle {
background-color: var(--ooui-normal);
color: var(--ooui-accent);
}
.oo-ui-popupToolGroup.oo-ui-popupToolGroup-active > .oo-ui-popupToolGroup-handle:hover {
background-color: var(--ooui-normal--hover);
color: var(--ooui-accent);
}
.oo-ui-bookletLayout-outlinePanel > .oo-ui-outlineControlsWidget {
border-top-color: var(--ooui-interface-border);
}
.oo-ui-bookletLayout > .oo-ui-menuLayout-menu {
border-right-color: var(--ooui-interface-border);
}
.oo-ui-fieldLayout-disabled > .oo-ui-fieldLayout-body > .oo-ui-fieldLayout-header > .oo-ui-labelElement-label {
color: var(--ooui-disabled-text);
}
.oo-ui-panelLayout-framed {
border-color: var(--sidebar);
}
.oo-ui-icon-settings {
background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' width='20' height='20' viewBox='0 0 20 20'%3E%3Ctitle%3Esettings%3C/title%3E%3Cg transform='translate(10 10)'%3E%3Cpath id='a' d='M1.5-10h-3l-1 6.5h5m0 7h-5l1 6.5h3'/%3E%3Cuse xlink:href='%23a' transform='rotate(45)'/%3E%3Cuse xlink:href='%23a' transform='rotate(90)'/%3E%3Cuse xlink:href='%23a' transform='rotate(135)'/%3E%3C/g%3E%3Cpath d='M10 2.5a7.5 7.5 0 0 0 0 15 7.5 7.5 0 0 0 0-15v4a3.5 3.5 0 0 1 0 7 3.5 3.5 0 0 1 0-7'/%3E%3C/svg%3E");
}
.oo-ui-icon-clear {
background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 20 20'%3E%3Ctitle%3Eclear%3C/title%3E%3Cpath d='M10 0a10 10 0 1 0 10 10A10 10 0 0 0 10 0zm5.66 14.24-1.41 1.41L10 11.41l-4.24 4.25-1.42-1.42L8.59 10 4.34 5.76l1.42-1.42L10 8.59l4.24-4.24 1.41 1.41L11.41 10z'/%3E%3C/svg%3E");
}
.mw-widget-dateInputWidget-handle {
background-color: var(--ooui-input);
color: var(--ooui-text);
border-color: var(--ooui-input-border);
}
.mw-widget-dateInputWidget-calendar {
background-color: var(--ooui-interface);
}
.mw-widget-dateInputWidget.oo-ui-widget-enabled .mw-widget-dateInputWidget-handle:hover {
border-color: var(--ooui-input-border--hover);
}
.mw-widget-calendarWidget {
border-color: var(--ooui-interface-border);
}
.mw-widget-calendarWidget:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.mw-widget-calendarWidget-day,
.mw-widget-calendarWidget-day-heading {
color: var(--ooui-text);
}
.mw-widget-calendarWidget-day-additional {
color: var(--ooui-text);
opacity: 0.67;
}
.mw-widget-calendarWidget-day-today {
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.mw-widget-calendarWidget-item:hover {
background-color: var(--ooui-progressive);
}
.mw-widget-calendarWidget-item-selected {
background-color: var(--ooui-progressive--hover);
}
.mw-widgets-datetime-calendarWidget {
background-color: var(--ooui-interface);
border-color: var(--ooui-interface-border);
}
.mw-widgets-datetime-calendarWidget:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent), 0 2px 2px 0 rgba(0, 0, 0, 0.25);
}
.mw-widgets-datetime-calendarWidget-grid .mw-widgets-datetime-calendarWidget-cell.mw-widgets-datetime-calendarWidget-extra .oo-ui-buttonElement-button .oo-ui-labelElement-label {
color: var(--subtle-color);
}
.mw-widgets-datetime-calendarWidget-grid .mw-widgets-datetime-calendarWidget-cell.mw-widgets-datetime-calendarWidget-selected .oo-ui-buttonElement-button {
background-color: var(--ooui-progressive--hover);
}
.mw-widgets-datetime-dateTimeInputWidget-handle {
background-color: var(--ooui-input);
color: var(--ooui-text);
border-color: var(--ooui-input-border);
}
.mw-widgets-datetime-dateTimeInputWidget.oo-ui-widget-enabled.mw-widgets-datetime-dateTimeInputWidget-handle:hover {
border-color: var(--ooui-input-border--hover);
}
.mw-widgets-datetime-dateTimeInputWidget.oo-ui-widget-enabled:hover input,
.mw-widgets-datetime-dateTimeInputWidget.oo-ui-widget-enabled:hover textarea {
border-color: var(--ooui-input-border--hover);
}
.mw-widgets-datetime-dateTimeInputWidget.oo-ui-widget-enabled .mw-widgets-datetime-dateTimeInputWidget-editField:hover {
background-color: var(--ooui-normal);
}
.ve-activated .ve-init-mw-desktopArticleTarget-originalContent #catlinks:hover {
background: var(--ooui-normal--hover);
}
.ve-ui-overlay {
font-family: inherit;
}
.oo-ui-toolbar-position-top .ve-ui-toolbarDialog-position-above {
border-top-color: var(--body-mid);
}
.ve-ce-branchNode-blockSlug,
.ve-ce-branchNode-newSlug {
outline-color: var(--body-border);
background-color: var(--ooui-interface);
}
.ve-ui-specialCharacterPage h3 {
color: var(--byline-color);
}
.ve-ui-specialCharacterPage-character {
border-color: var(--body-mid);
}
.ve-ui-specialCharacterPage-character:hover {
border-color: var(--body-dark);
}
.ve-ce-linkAnnotation.ve-ce-annotation-active {
box-shadow: 0 0 0 1px var(--body-mid);
background: none;
}
.ve-ui-desktopContext .ve-ui-linkContextItem .ve-ui-linkContextItem-label {
border-color: var(--body-border);
}
.ve-ui-mwHelpPopupTool-version-label,
.ve-ui-mwHelpPopupTool-version-link,
.ve-ui-mwHelpPopupTool-version-date {
color: var(--byline-color);
}
.ve-ce-tableCellableNode {
border-color: var(--body-mid);
}
.ve-ce-mwReferencesListNode-muted {
color: var(--byline-color);
}
.ve-ui-mwTemplatePage-description,
.ve-ui-mwParameterPage-label,
.ve-ui-mwParameterPage-description-required,
.ve-ui-mwParameterPage-description-deprecated {
color: var(--byline-color);
}
.mw-widget-titleWidget-menu .mw-widget-titleOptionWidget-description {
color: var(--byline-color);
}
.ve-ui-mwGalleryDialog-menuLayout > .oo-ui-menuLayout-menu,
.ve-ui-mwGalleryDialog-innerMenuLayout > .oo-ui-menuLayout-menu,
.ve-ui-mwGalleryDialog .ve-ui-mwGalleryDialog-image-container,
.ve-ui-targetWidget {
border-color: var(--body-border);
}
.ve-ui-targetWidget:not(.oo-ui-pendingElement-pending) {
background-color: var(--body-main);
}
.ve-ui-mwSaveDialog {
color: var(--ooui-text);
}
.ve-ui-mwSaveDialog-options {
background-color: var(--ooui-interface);
border-color: var(--body-border);
}
.ve-ui-mwSaveDialog-summary {
background-color: var(--ooui-input);
}
.ve-ui-mwSaveDialog-editSummary-count {
border-color: var(--body-border);
}
.ve-ui-mwSaveDialog-license {
color: var(--byline-color);
}
.ve-ui-mwReferenceContextItem-muted {
color: var(--byline-color);
}
.ve-ui-mwNoticesPopupTool-items > div:not(:first-child),
.ve-ui-mwHelpPopupTool-item:not(:first-child) {
border-color: var(--body-border);
}
.ve-ui-mwTransclusionOutlineControlsWidget {
background-color: var(--ooui-interface);
border-top-color: var(--body-border);
}
.ve-ui-mwTransclusionOutlineTemplateWidget-sticky {
background-color: var(--ooui-interface);
}
.ve-ui-mwTransclusionOutlineTemplateWidget .ve-ui-mwTransclusionOutlineParameterWidget.oo-ui-optionWidget-highlighted {
color: var(--ooui-text);
}
.ve-ui-mwTransclusionOutlineTemplateWidget-no-template-parameters {
color: var(--subtle-color);
}
.ve-ui-mwParameterPage-undocumentedLabel {
color: var(--subtle-color);
}
.ve-ui-mwTwoPaneTransclusionDialogLayout > .oo-ui-menuLayout-menu {
border-right: var(--body-border);
}
.ve-ui-mwParameterPage-doc-required,
.ve-ui-mwParameterPage-doc-deprecated,
.ve-ui-mwParameterPage-inlineDescription .ve-ui-mwParameterPage-doc-example {
color: var(--byline-color);
}
.ve-ui-expandableContent-toggle {
background-color: var(--ooui-interface);
}
.ve-ui-expandableContent-fade {
background: linear-gradient(to right, rgba(255, 255, 255, 0) 0, var(--ooui-interface) 90%);
}
.ve-ui-commandHelpDialog-shortcut > kbd,
.ve-ui-commandHelpDialog-sequence > kbd {
background-color: var(--keypress-background);
color: var(--keypress-color);
border-color: var(--keypress-border);
box-shadow: none;
text-shadow: none;
}
.ve-init-mw-desktopArticleTarget-toolbarPlaceholder-floating .ve-init-mw-desktopArticleTarget-toolbarPlaceholder-bar {
background: var(--ooui-interface);
}
.ve-init-mw-desktopArticleTarget-toolbarPlaceholder-bar {
border-bottom-color: var(--body-mid);
}
figure[typeof~='mw:File/Thumb'],
figure[typeof~='mw:File/Frame'],
figure[typeof~='mw:Image/Thumb'],
figure[typeof~='mw:Video/Thumb'],
figure[typeof~='mw:Image/Frame'],
figure[typeof~='mw:Video/Frame'] {
border: none;
background-color: var(--thumb-bg);
}
figure[typeof~='mw:File/Thumb'] > a:first-child > *:first-child:not( .mw-broken-media ),
figure[typeof~='mw:File/Frame'] > a:first-child > *:first-child:not( .mw-broken-media ),
figure[typeof~='mw:Image/Thumb'] > a:first-child > *:first-child:not( .mw-broken-media ),
figure[typeof~='mw:Video/Thumb'] > a:first-child > *:first-child:not( .mw-broken-media ),
figure[typeof~='mw:Image/Frame'] > a:first-child > *:first-child:not( .mw-broken-media ),
figure[typeof~='mw:Video/Frame'] > a:first-child > *:first-child:not( .mw-broken-media ) {
border: none;
background: var(--thumb-bg);
}
figure[typeof~='mw:File/Thumb'] > figcaption,
figure[typeof~='mw:File/Frame'] > figcaption,
figure[typeof~='mw:Image/Thumb'] > figcaption,
figure[typeof~='mw:Video/Thumb'] > figcaption,
figure[typeof~='mw:Image/Frame'] > figcaption,
figure[typeof~='mw:Video/Frame'] > figcaption {
border: none;
background-color: var(--thumb-caption-bg);
padding: 4px 6px;
}
:root {
--infobox-text-color: var(--text-color);
}
ol.references,
.reflist {
font-size: 90%;
}
.reflist {
list-style-type: decimal;
}
.reflist .references {
font-size: 100%;
list-style-type: inherit;
}
.reflist-lower-alpha {
list-style-type: lower-alpha;
}
ol.references li:target,
sup.reference:target {
background-color: var(--body-light);
}
.hideQuotes .refhide {
display: none;
}
:root {
--byline-arrow-filter: invert(29%) sepia(0%) saturate(376%) hue-rotate(172deg) brightness(87%) contrast(80%);
--tile-border-color: #cabe9b;
--tile-background-color: #f9f3eb;
--tile-link-button-color: #f5e9db;
--tile-link-button-highlight-color: #dfccb0;
--tile-dark-color: #fff;
--tile-dark-bg: #5d6773;
--tile-dark-link-color: #ccc;
--tile-dark-byline-color: rgba(255, 255, 255, 0.7);
--tile-dark-header-color: #fff;
}
.tile {
background: var(--tile-background-color);
border: 1px solid var(--tile-border-color);
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
padding: 1.5em 2em 1em;
max-width: 40em;
}
.tile h2 {
font-size: 1.4em;
font-weight: bold;
border: none;
margin: 0 0 0.4em;
}
.tile .byline + h2 {
margin-top: -0.5em;
}
.tile.dark {
color: var(--tile-dark-color);
background: var(--tile-dark-bg);
border: none;
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.3);
}
.tile.dark h2 {
color: var(--tile-dark-header-color);
}
.tile.dark a {
color: var(--tile-dark-link-color);
}
.tile.dark .byline {
color: var(--tile-dark-byline-color);
}
.byline {
font-size: 0.9em;
color: var(--byline-color);
}
.byline a {
color: var(--byline-color);
}
.tile-row {
display: flex;
flex-flow: row wrap;
margin-bottom: 1em;
}
.tile-halves {
display: flex;
flex-flow: row wrap;
border: 1px solid var(--tile-border-color);
background: var(--tile-background-color);
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
}
.tile-halves h2 {
font-size: 1.4em;
font-weight: bold;
border: none;
margin: 0 0 0.4em;
}
.tile-halves .byline + h2 {
margin-top: -0.5em;
}
.tile-top {
width: 100%;
padding: 1.3rem 1.5rem 0.6rem;
}
.tile-top.tile-image {
display: flex;
align-items: center;
background-color: var(--byline-color);
overflow: hidden;
padding: 0;
height: 13vw;
max-height: 12em;
transition: 0.4s ease-out;
}
.tile-halves:hover .tile-top.tile-image img {
transform: scale(1.1);
transition: 0.5s ease-out;
}
.tile-top.tile-image a {
width: 100%;
}
.tile-top.tile-image img {
width: 100%;
object-fit: cover;
max-height: 200px;
transition: 0.4s ease-out;
}
.tile-bottom {
background: var(--tile-background-color);
border-top: 1px solid var(--tile-border-color);
width: 100%;
padding: 1rem 1.5rem 0.6rem;
}
.tile-bottom.link-button {
align-self: flex-end;
padding: 0;
}
.tile-bottom.link-button a {
display: block;
text-align: center;
padding: 0.75em 1.5em 0.8em;
text-decoration: none;
}
.tile-bottom.read-more {
background: var(--tile-link-button-color);
transition: 0.3s ease-out;
}
.tile-bottom.read-more a {
color: var(--byline-color);
font-weight: bold;
text-align: right;
}
.tile-bottom.read-more:hover {
background: var(--tile-link-button-highlight-color);
}
.tile-bottom.read-more:hover .arrow {
transform: translateX(50%);
}
.tile-bottom.read-more .arrow {
filter: var(--byline-arrow-filter);
margin-left: 0.4em;
transition: 0.3s ease-out;
}
body.page-Main_Page .mw-parser-output {
max-width: 75em;
margin: 0 auto;
}
body.page-Main_Page.action-view .catlinks,
body.page-Main_Page.action-view #contentSub,
body.page-Main_Page.action-view #siteNotice {
display: none;
}
.mainpage-header {
display: flex;
margin: 2.6em 1.75em 1.5em;
}
.mainpage-header .header-intro {
flex: 2;
}
.mainpage-header .header-intro h1 {
font-size: 2.5em;
font-weight: bold;
border: none;
margin: 0 0 0.15em;
}
.mainpage-header .header-intro p {
font-size: 1.1em;
line-height: 1.7em;
}
.mainpage-header .header-stats {
flex: 1;
display: flex;
justify-content: center;
align-items: center;
margin-top: -1em;
}
.mainpage-body {
display: grid;
grid-template-areas: "event event event" "update update update" "content content content" "left left right";
gap: 0.9rem;
grid-template-columns: repeat(3, 1fr);
}
.mainpage-body h2 a {
color: var(--text-color);
}
.mainpage-body .tile {
padding-left: 1.75em;
padding-right: 1.75em;
max-width: 100%;
}
.mainpage-body .tile-row {
width: 100%;
margin-bottom: 0;
}
.mainpage-body .tile-row {
display: grid;
gap: 0.9rem;
}
.mainpage-left {
grid-area: left;
flex: 2;
display: flex;
flex-flow: column wrap;
}
.mainpage-left > * {
margin: 0 0 0.9rem;
}
.mainpage-right {
grid-area: right;
flex: 1;
display: flex;
flex-flow: column wrap;
}
.mainpage-right > * {
margin: 0 0 0.9rem;
}
.arrow {
background: url('filepath://White-chevron.svg') no-repeat;
display: inline-block;
height: 0.7rem;
width: 0.45rem;
vertical-align: middle;
}
.arrow.dark {
filter: invert(80%);
}
.mainpage-contents {
grid-area: content;
grid-template-columns: repeat(6, 1fr);
}
.mainpage-contents .tile-halves {
flex: 1;
}
.mainpage-contents .tile-top {
position: relative;
}
.mainpage-contents h2 {
margin: 0;
padding: 0;
}
.mainpage-contents .tile-bottom.link-button a {
padding: 0.75em 0.2em;
}
.popular-pages ul {
display: grid;
grid-template-columns: repeat(3, 1fr);
grid-gap: 0.6em;
margin: 1em 0 0.7em 0;
}
.mp-popular-page-light {
display: flex;
align-items: center;
background-color: var(--button-background);
transition: 100ms;
}
.mp-popular-page-light a {
flex: 1;
display: block;
color: #fff;
font-weight: bold;
text-align: center;
text-decoration: none;
padding: 0.7em 1em;
}
.mp-popular-page-light:hover {
filter: brightness(115%);
transition: 100ms;
}
.mainpage-discord {
border: none;
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.3);
}
.mainpage-discord .tile-top {
display: flex;
align-items: center;
background: #5865f2;
padding: 1em 1.75em;
}
.mainpage-discord .tile-top a {
flex: 1;
position: relative;
text-decoration: none;
}
.mainpage-discord .tile-top a:hover .arrow {
transform: translateX(50%);
}
.mainpage-discord .tile-bottom {
background: #525ee0;
border: none;
padding: 1em 1.75em;
}
.mainpage-discord .tile-bottom p {
color: #fff;
font-weight: bold;
font-size: 0.9em;
text-align: center;
text-transform: uppercase;
letter-spacing: 0.03em;
margin: 0;
}
.mainpage-discord .partner-icon {
margin-right: 0.75em;
}
.mainpage-discord .server-name {
color: #fff;
font-weight: bold;
font-size: 1.25em;
margin: 0.5em 0 -0.15em;
}
.mainpage-discord .server-tagline {
color: rgba(255, 255, 255, 0.9);
margin-bottom: 0.5em;
}
.mainpage-discord .arrow {
position: absolute;
top: calc(50% - .5em);
right: 0;
height: 1em;
width: 0.7em;
background-size: 0.7em 1em;
transition: 0.3s ease-out;
}
.mainpage-editing {
border: none;
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.3);
}
.mainpage-editing .tile-top {
background: #438ab5;
}
.mainpage-editing .tile-bottom {
background: #3980ab;
border: none;
padding: 0.8rem 1.5rem 0.4rem;
}
.mainpage-editing h2,
.mainpage-editing a {
color: #fff;
}
.mainpage-editing p {
color: rgba(255, 255, 255, 0.9);
}
.mainpage-editing ul {
list-style-image: url('filepath://Transparent-chevron.svg');
}
@media only screen and (max-width: 1200px) {
.mainpage-contents {
grid-template-columns: repeat(3, 1fr);
}
}
@media only screen and (max-width: 1000px) {
.mainpage-body {
grid-template-areas: "event event event" "update update update" "content content content" "left left left" "right right right";
}
.mainpage-recent-updates {
grid-template-columns: repeat(2, 1fr);
}
.mainpage-recent-updates .tile-halves:last-child {
display: none;
}
.mainpage-recent-updates .tile-halves:hover .tile-top img {
transform: scale(1.04);
}
.mainpage-recent-updates .tile-top {
height: 18vw;
min-height: 9em;
}
.mainpage-header .header-stats {
display: none;
}
.mainpage-left > *:last-child,
.mainpage-right > *:last-child {
margin-bottom: 0;
}
.popular-pages ul {
grid-template-columns: repeat(2, 1fr);
}
}
@media only screen and (max-width: 720px) {
.mainpage-recent-updates {
grid-template-columns: none;
}
.mainpage-recent-updates .tile-halves:last-child {
display: flex;
}
.mainpage-contents {
grid-template-columns: repeat(2, 1fr);
}
}
.mw-prefs-buttons {
background-color: var(--body-main);
border-top-color: var(--body-border);
box-shadow: none;
}
.mw-prefs-tabs-wrapper.oo-ui-panelLayout-framed,
.mw-prefs-tabs > .oo-ui-menuLayout-content > .oo-ui-indexLayout-stackLayout > .oo-ui-tabPanelLayout {
border-color: var(--body-border);
}
.mw-htmlform-ooui .mw-htmlform-matrix tbody tr:nth-child(even) td {
background-color: var(--body-light);
}
.mw-htmlform-ooui .mw-htmlform-matrix tbody tr:hover td {
background-color: var(--body-mid);
}
:root {
--rc-positive-color: #407813;
--rc-negative-color: #b41e0f;
}
.mw-plusminus-pos {
color: var(--rc-positive-color);
}
.mw-plusminus-neg {
color: var(--rc-negative-color);
}
.client-js .mw-recentchanges-toplinks:not(.mw-recentchanges-toplinks-collapsed) {
border-color: var(--body-border);
background-color: var(--body-light);
border-radius: 2px;
}
.mw-rcfilters-ui-filterTagMultiselectWidget-wrapper-content-title {
color: var(--text-color);
}
.mw-rcfilters-ui-filterTagMultiselectWidget-emptyFilters {
color: var(--byline-color);
}
.mw-rcfilters-ui-filterTagMultiselectWidget.oo-ui-widget-enabled .oo-ui-tagMultiselectWidget-handle {
background-color: var(--ooui-interface);
border-color: var(--ooui-interface-border);
}
.mw-rcfilters-ui-filterTagMultiselectWidget-views-select-widget.oo-ui-widget {
border-color: var(--ooui-interface-border);
}
.mw-rcfilters-collapsed .mw-rcfilters-ui-filterTagMultiselectWidget {
border-bottom-color: var(--ooui-interface-border);
}
.mw-rcfilters-ui-menuSelectWidget-footer {
background-color: var(--ooui-interface);
border-color: var(--ooui-interface-border);
}
.mw-rcfilters-ui-viewSwitchWidget label.oo-ui-labelWidget {
color: var(--byline-color);
}
.mw-rcfilters-ui-tagItemWidget-popup-content {
color: var(--ooui-text);
}
.mw-changeslist-legend,
.mw-rcfilters-ui-changesListWrapperWidget .mw-changeslist-legend {
background-color: var(--body-light);
border-color: var(--body-dark);
}
.mw-rcfilters-ui-changesListWrapperWidget-previousChangesIndicator {
border-color: var(--sidebar);
}
.client-js .mw-changeslist ul,
.client-js .mw-changeslist table.mw-enhanced-rc {
margin-left: 0;
}
.mw-rcfilters-ui-watchlistTopSectionWidget-separator {
border-color: var(--sidebar);
}
.mw-rcfilters-ui-itemMenuOptionWidget-header {
border-bottom-color: var(--ooui-interface);
background-color: var(--ooui-interface-border);
}
.mw-rcfilters-ui-itemMenuOptionWidget:not(:last-child):not(.mw-rcfilters-ui-itemMenuOptionWidget-identifier-talk) {
border-bottom-color: var(--ooui-normal-border);
}
.mw-rcfilters-ui-itemMenuOptionWidget-label-title,
.mw-rcfilters-ui-itemMenuOptionWidget-label-desc {
color: var(--text-color);
}
.mw-rcfilters-ui-filterMenuOptionWidget.oo-ui-flaggedElement-muted:not(.oo-ui-optionWidget-selected) {
background-color: var(--body-main);
}
.mw-rcfilters-ui-filterMenuOptionWidget.oo-ui-flaggedElement-muted .mw-rcfilters-ui-itemMenuOptionWidget-label-title,
.mw-rcfilters-ui-filterMenuOptionWidget.oo-ui-flaggedElement-muted .mw-rcfilters-ui-itemMenuOptionWidget-label-desc {
color: var(--subtle-color);
}
.mw-rcfilters-ui-filterMenuSectionOptionWidget {
background-color: var(--body-mid);
}
.mw-rcfilters-ui-filterMenuSectionOptionWidget-header-title.oo-ui-labelElement-label {
color: var(--ooui-text);
}
.mw-rcfilters-ui-filterMenuHeaderWidget-title {
color: var(--ooui-text);
}
.mw-rcfilters-ui-filterMenuHeaderWidget-header {
border-bottom-color: var(--ooui-interface-border);
background-color: var(--ooui-interface);
}
.mw-rcfilters-ui-itemMenuOptionWidget-view-namespaces {
border-top-color: var(--ooui-interface-border);
}
.mw-rcfilters-ui-datePopupWidget {
border-color: var(--ooui-interface-border);
}
.mw-rcfilters-ui-datePopupWidget .mw-rcfilters-ui-valuePickerWidget-title {
color: var(--byline-color);
}
.mw-rcfilters-ui-savedLinksListItemWidget-label {
color: var(--ooui-accent);
}
.client-js .mw-changeslist.mw-rcfilters-ui-changesListWrapperWidget-highlighted ul,
.client-js .mw-changeslist.mw-rcfilters-ui-changesListWrapperWidget-highlighted table.mw-enhanced-rc {
margin-left: 1.5em;
}
.page-Special_CreateAccount .mw-ui-container,
.page-Special_UserLogin .mw-ui-container {
max-width: 64rem;
margin: 0 auto;
}
.mw-number-text {
color: var(--byline-color);
}
.mw-body-content .mw-number-text h3 {
color: var(--text-color);
}
#mw-indicator-mw-helplink a {
background: none;
padding: 0;
display: flex;
align-items: center;
}
#mw-indicator-mw-helplink a::before {
content: '';
margin-right: 5px;
-webkit-mask: url("/resources/src/mediawiki.helplink/images/helpNotice.svg?46d34") no-repeat 50% 50% / contain;
mask: url("/resources/src/mediawiki.helplink/images/helpNotice.svg?46d34") no-repeat 50% 50% / contain;
background: var(--text-color);
height: 20px;
width: 20px;
}
.results-info {
color: inherit;
}
.mw-search-profile-tabs {
background-color: var(--body-mid);
border-color: transparent;
}
.search-types .current a {
color: inherit;
}
#mw-searchoptions {
background-color: var(--body-mid);
border-color: transparent;
}
#mw-searchoptions .divider {
border-color: var(--body-border);
}
#mw-searchoptions h4 {
font-family: inherit;
}
#mw-searchoptions .oo-ui-labelElement:nth-of-type(odd) {
font-weight: bold;
}
.searchresult {
line-height: 1.5;
}
.searchalttitle,
#mw-search-interwiki li {
font-size: 90%;
}
.mw-search-result-data {
color: var(--byline-color);
}
.page-Special_ListFiles a.image img {
width: inherit;
height: inherit;
}
.page-Special_ListFiles .TablePager_col_thumb {
text-align: center;
}
#editcount table[border="1"] {
background-color: var(--body-main) !important;
border-color: var(--wikitable-border) !important;
margin-top: 0.5em;
}
#editcount table[border="1"] th,
#editcount table[border="1"] td {
padding: 0.2em 0.4em;
}
#editcount table[border="1"] th {
background-color: var(--wikitable-header-bg);
border: 1px solid var(--wikitable-border);
}
#editcount table[border="1"] td {
border: 1px solid var(--wikitable-border);
}
#editcount table[border="1"] tr:nth-child(odd) {
background-color: var(--body-light);
}
.mw-echo-ui-notificationBadgeButtonPopupWidget-popup > .oo-ui-popupWidget-popup .mw-echo-ui-placeholderItemWidget {
background-color: inherit;
}
table.mw-interwikitable.body td.mw-interwikitable-local-yes {
background-color: var(--table-yes-background);
color: var(--table-yes-color);
}
.mw-protectedpages-unknown {
color: var(--byline-color);
}
.watchlistredir,
.allpagesredirect {
font-style: italic;
}
.allpagesredirect:after {
color: var(--byline-color);
content: " (redirect)";
}
.mw-apisandbox-toolbar {
background: var(--body-main);
}
.oo-ui-menuOptionWidget .mw-apisandbox-flag {
color: var(--byline-color);
}
tr.mw-abusefilter-list-disabled,
tr.mw-abusefilter-list-disabled td {
color: var(--byline-color);
}
table.mw-abuselog-details {
background: var(--wikitable-bg);
border-color: var(--wikitable-border);
}
table.mw-abuselog-details th {
background: var(--wikitable-header-bg);
}
table.mw-abuselog-details th,
table.mw-abuselog-details td {
border-color: var(--wikitable-border);
}
.mw-abusefilter-log-hidden-entry {
color: var(--subtle-color);
}
body td.mw-abusefilter-history-changed {
background: var(--table-no-background);
}
div.mw-abusefilter-editor,
#mw-abusefilter-warn-preview,
#mw-abusefilter-disallow-preview {
border-color: var(--ooui-input-border);
}
.mw-destfile-warning {
border-color: var(--warningbox-border);
color: var(--text-color);
background-color: var(--warningbox-bg);
}
span.fileinput-button {
background-color: var(--ooui-normal);
border-color: var(--ooui-normal-border);
color: var(--ooui-text);
}
ul.fileupload-results li.ful-success {
background-color: var(--successbox-bg);
}
ul.fileupload-results li.ful-success a {
color: var(--link-color);
}
ul.fileupload-results li.ful-error {
background-color: var(--errorbox-bg);
}
#t-print,
#t-permalink {
display: none;
}
#filetoc {
border-radius: 2px;
background: var(--body-mid);
border-color: transparent;
margin: 0.5em auto;
text-align: center;
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
}
li.gallerybox div.thumb {
border: none;
background-color: var(--thumb-bg);
}
.smwfact {
display: none;
}
.list-header {
background-color: var(--body-mid);
color: inherit;
}
.editOptions {
color: var(--text-color);
background-color: var(--sourceeditor-background-secondary);
border-color: var(--sourceeditor-border);
}
.mw-json th,
.mw-json td {
border-color: var(--wikitable-border);
}
.mw-json td {
background: var(--wikitable-bg);
}
.mw-json th {
background: var(--wikitable-header-bg);
}
75aa4211a6bcabafa5436d0d5788908d3f9edf54
82
80
2024-03-22T03:18:35Z
Jayden
3
Updating CSS from [[MediaWiki:Common.less]]
css
text/css
/* <pre> */
:root {
--body-main: #e2dbc8;
--body-light: #d8ccb4;
--body-mid: #d0bd97;
--body-dark: #b8a282;
--body-border: #94866d;
--body-background-color: #513e36;
--button-background: #605443;
--button-color: #fff;
--button-border: #3c352a;
--button-dark: #18140c;
--button-light: #3a301d;
--sidebar: #cfc08d;
--background-text-color: #e2dbc8;
--background-link-color: #e2bd8a;
--search-box: #efeee6;
--link-color: #936039;
--redlink-color: #ba0000;
--text-color: #000;
--byline-color: #4c4c4c;
--subtle-color: #777;
--admin-blue: #332e75;
--bearcat-green: #13592e;
--awb-purple: #933b96;
--rsw-blue: #438ab6;
--osrsw-brown: #605443;
--thumb-bg: var(--body-light);
--thumb-caption-bg: var(--body-mid);
--sourceeditor-input-background: #fff;
--sourceeditor-background: var(--body-light);
--sourceeditor-background-secondary: var(--body-light);
--sourceeditor-border: var(--body-mid);
--codemirror-gutter-background: var(--body-mid);
}
@font-face {
font-family: 'Lora';
font-weight: 400 700;
font-style: normal;
font-display: swap;
src: url('filepath://Lora.woff2') format('woff2');
}
@font-face {
font-family: 'Lora';
font-weight: 400 700;
font-style: italic;
font-display: swap;
src: url('filepath://Lora-Italic.woff2') format('woff2');
}
:root {
--base-text-color: #36414f;
--base-heading-color: #444e5a;
--base-heading-border: #e4eaee;
--mw-code-background-color: #ddd4bb;
--body-background-image: url('filepath://Wiki_background.jpg');
}
#mw-page-base {
background: none;
}
.mw-body {
background-color: var(--body-main);
color: var(--text-color);
border-color: transparent;
box-shadow: 0 0 7px rgba(0, 0, 0, 0.15);
margin-top: 0;
}
h1,
h2,
h3,
h4,
h5,
h6 {
color: var(--text-color);
}
h1,
h2 {
border-color: var(--sidebar);
}
.mw-body h1,
.mw-body-content h1,
.mw-body-content h2,
.mw-body-content h3,
.mw-body-content h4,
.mw-body-content h5,
.mw-body-content h6 {
font-family: 'Lora', 'Palatino', 'Georgia', serif;
}
.mw-parser-output h2:first-of-type {
clear: left;
}
.mw-footer {
color: var(--background-text-color);
}
.mw-footer li {
color: var(--background-text-color);
}
.mw-footer a,
.mw-footer a:active,
.mw-footer a:visited {
color: var(--background-link-color);
}
::placeholder {
color: var(--subtle-color);
}
a {
color: var(--link-color);
}
a:visited,
a:active {
color: var(--link-color);
}
a.new {
color: var(--redlink-color);
}
a.new:visited {
color: var(--redlink-color);
}
.mw-parser-output a.extiw,
.mw-parser-output a.external {
color: var(--link-color);
}
.mw-parser-output a.extiw:visited,
.mw-parser-output a.external:visited,
.mw-parser-output a.extiw:active,
.mw-parser-output a.external:active {
color: var(--link-color);
}
.jsPurgeLink a.external {
color: var(--link-color);
}
:root {
--errorbox-bg: #feecea;
--errorbox-border: #ee4231;
--warningbox-bg: #fef9de;
--warningbox-border: #f9d000;
--successbox-bg: #ecf8e3;
--successbox-border: #6bc71f;
}
.mw-message-box-error,
.errorbox,
.mw-message-box-warning,
.warningbox,
.mw-message-box-success,
.successbox,
.usermessage {
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
}
.mw-message-box-error,
.errorbox {
background-color: var(--errorbox-bg);
border-color: var(--errorbox-border);
}
.mw-message-box-warning,
.warningbox,
.usermessage {
background-color: var(--warningbox-bg);
border-color: var(--warningbox-border);
}
.mw-message-box-success,
.successbox {
background-color: var(--successbox-bg);
border-color: var(--successbox-border);
}
.catlinks {
background: var(--body-light);
border: 1px solid var(--body-dark);
padding: 8px 15px;
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
}
.catlinks li {
border-color: var(--body-mid);
}
.filehistory a img,
#file img {
background: url("data:image/svg+xml,%3C%3Fxml version='1.0' encoding='UTF-8'%3F%3E%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16'%3E%3Cpath d='M0 0h8v16h8V8H0z' opacity='.13'/%3E%3C/svg%3E") repeat;
}
#file img:hover {
background: none;
}
.mw-highlight {
background: none;
}
.mw-highlight .linenos {
background-color: var(--mw-code-background-color);
color: var(--byline-color);
}
.mw-highlight a:hover .linenos,
.mw-highlight .hll a .linenos {
color: var(--text-color);
}
.mw-content-ltr.mw-highlight-lines pre,
.mw-content-ltr.content .mw-highlight-lines pre {
box-shadow: inset 2.75em 0 0 var(--mw-code-background-color);
}
#pagehistory ul {
list-style: none;
margin: 0;
}
#pagehistory li {
border: 1px solid transparent;
padding: 1px 10px;
margin: 2px 0;
}
#pagehistory li.selected {
background-color: var(--body-light);
color: inherit;
border: 1px dashed var(--body-border);
outline: none;
}
#mw-history-compare > div:first-of-type {
position: -webkit-sticky;
position: sticky;
top: 0;
background-color: var(--body-main);
border-bottom: 1px solid var(--body-dark);
padding: 0.25em 0;
}
.wgl-stickyheader #mw-history-compare > div:first-of-type {
top: 2.5rem;
}
.autocomment,
.autocomment a,
.autocomment a:visited {
color: var(--link-color);
}
li span.deleted,
span.history-deleted {
color: var(--byline-color);
}
.mw-usertoollinks-contribs-no-edits,
.mw-usertoollinks-contribs-no-edits:visited {
color: var(--redlink-color);
}
.CategoryTreeToggle {
color: var(--link-color);
}
body.wgl-stickyheader.action-view .mw-headline:target::before {
display: block;
content: '';
margin-top: -3rem;
height: 3rem;
visibility: hidden;
pointer-events: none;
}
.mw-mmv-post-image {
color: var(--text-color);
background-color: var(--body-main);
}
.mw-mmv-image-metadata {
border-top-color: var(--body-mid);
background-color: var(--body-light);
}
.mw-mmv-dialog,
.mw-mmv-dialog .mw-mmv-dialog-down-arrow,
.mw-mmv-options-dialog .mw-mmv-dialog-down-arrow {
background-color: var(--body-light);
box-shadow: none;
}
.mw-mmv-options-enable-alert {
background-color: var(--body-light);
color: var(--text-color);
}
.mw-mmv-options-dialog-header,
.mw-mmv-options-text-header,
.mw-mmv-options-text-body,
.mw-mmv-options-enable-alert,
.mw-mmv-options-dialog .mw-mmv-disable-confirmation .mw-mmv-options-dialog-header,
.mw-mmv-options-dialog .mw-mmv-disable-confirmation .mw-mmv-options-text-header {
color: var(--text-color);
}
.mw-revslider-container {
border-color: var(--sidebar);
}
.mw-revslider-slider-wrapper {
border-top-color: var(--sidebar);
}
.mw-ui-button {
background-color: var(--ooui-normal);
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
}
.mw-ui-button:not(:disabled):hover,
.mw-ui-button:not(:disabled):active {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
}
.mw-ui-button:not(:disabled):focus {
color: var(--ooui-text);
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent), inset 0 0 0 2px #fff;
}
.mw-ui-button:not(:disabled):visited {
color: var(--ooui-text);
}
.mw-ui-button.mw-ui-progressive:not(:disabled) {
background-color: var(--ooui-progressive);
color: #fff;
border-color: var(--ooui-progressive);
}
.mw-ui-button.mw-ui-progressive:not(:disabled):hover {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
}
.mw-ui-button.mw-ui-progressive:not(:disabled):focus {
box-shadow: inset 0 0 0 1px var(--ooui-accent), inset 0 0 0 2px #fff;
}
.mw-ui-button.mw-ui-progressive:not(:disabled):active,
.mw-ui-button.mw-ui-progressive:not(:disabled).is-on {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
box-shadow: none;
}
.mw-ui-button.mw-ui-destructive:not( :disabled ) {
color: #fff;
}
.mw-ui-button.mw-ui-quiet,
.mw-ui-button.mw-ui-quiet.mw-ui-progressive,
.mw-ui-button.mw-ui-quiet.mw-ui-destructive {
color: var(--text-color);
}
input[type='checkbox']:hover + .mw-ui-button.mw-ui-quiet,
input[type='checkbox']:hover + .mw-ui-button.mw-ui-quiet.mw-ui-progressive,
input[type='checkbox']:hover + .mw-ui-button.mw-ui-quiet.mw-ui-destructive,
.mw-ui-button.mw-ui-quiet:hover,
.mw-ui-button.mw-ui-quiet.mw-ui-progressive:hover,
.mw-ui-button.mw-ui-quiet.mw-ui-destructive:hover {
background-color: rgba(0, 24, 73, 0.02745098);
color: var(--text-color);
border-color: transparent;
}
input[type='checkbox']:focus + .mw-ui-button.mw-ui-quiet,
input[type='checkbox']:focus + .mw-ui-button.mw-ui-quiet.mw-ui-progressive,
input[type='checkbox']:focus + .mw-ui-button.mw-ui-quiet.mw-ui-destructive,
.mw-ui-button.mw-ui-quiet:focus,
.mw-ui-button.mw-ui-quiet.mw-ui-progressive:focus,
.mw-ui-button.mw-ui-quiet.mw-ui-destructive:focus {
color: var(--text-color);
}
input[type='checkbox']:active + .mw-ui-button.mw-ui-quiet,
input[type='checkbox']:active + .mw-ui-button.mw-ui-quiet.mw-ui-progressive,
input[type='checkbox']:active + .mw-ui-button.mw-ui-quiet.mw-ui-destructive,
.mw-ui-button.mw-ui-quiet:active,
.mw-ui-button.mw-ui-quiet.mw-ui-progressive:active,
.mw-ui-button.mw-ui-quiet.mw-ui-destructive:active {
background-color: rgba(0, 36, 73, 0.08235294);
color: var(--text-color);
border-color: #72777d;
}
.mw-ui-input {
background-color: var(--ooui-input);
color: var(--text-color);
border-color: var(--ooui-input-border);
}
.mw-ui-input:hover {
border-color: var(--ooui-input-border--hover);
}
.mw-ui-input::placeholder {
color: var(--byline-color);
}
.mw-content-ltr .redirectText li:first-child {
padding: 0;
background: 0;
}
.mw-content-ltr .redirectText li:first-child::before {
content: '';
background: currentcolor;
-webkit-mask: url("filepath://Redirect-arrow.svg") no-repeat 50% 50% / contain;
mask: url("filepath://Redirect-arrow.svg") no-repeat 50% 50% / contain;
display: inline-block;
width: 47px;
height: 20px;
}
:root {
--wikitable-header-bg: var(--body-dark);
--wikitable-border: var(--body-border);
--wikitable-bg: var(--body-light);
--wikitable-bg-lighter: #e9e3d6;
--wikitable-color: var(--text-color);
--table-na-background: rgba(255, 255, 255, 0.3);
--table-na-color: var(--subtle-color);
--table-yes-background: #c3e8a3;
--table-yes-color: #2e5e05;
--table-no-background: #fbc0ba;
--table-no-color: #801c13;
--table-maybe-background: #fcea94;
--table-maybe-color: #786300;
}
.wikitable {
background: var(--wikitable-bg);
color: var(--wikitable-color);
border-color: var(--wikitable-border);
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
}
.wikitable > tr > th,
.wikitable > tr > td,
.wikitable > * > tr > th,
.wikitable > * > tr > td {
border-color: var(--wikitable-border);
}
.wikitable > tr > th.table-noborder,
.wikitable > tr > td.table-noborder,
.wikitable > * > tr > th.table-noborder,
.wikitable > * > tr > td.table-noborder {
border-left-style: hidden;
border-right-style: hidden;
padding-left: 0;
padding-right: 0;
}
.wikitable > tr > th,
.wikitable > * > tr > th {
background-color: var(--wikitable-header-bg);
}
.tabber .wikitable {
box-shadow: none;
}
.mw_metadata td,
.mw_metadata th {
border-color: var(--wikitable-border);
}
.mw_metadata th {
background-color: var(--wikitable-header-bg);
}
.mw_metadata td {
background-color: var(--wikitable-bg);
}
.mw-datatable {
border-color: var(--wikitable-border);
}
.mw-datatable td,
.mw-datatable th {
border-color: var(--wikitable-border);
}
.mw-datatable th {
background-color: var(--wikitable-header-bg);
}
.mw-datatable td {
background-color: var(--wikitable-bg);
}
.mw-datatable tr:hover td {
background-color: var(--wikitable-bg);
}
table.alternating-rows tr:nth-child(odd),
table.alternating-cols td:nth-child(odd) {
background: var(--wikitable-alternating-bg);
}
.table-na {
background: var(--table-na-background);
color: var(--table-na-color);
vertical-align: middle;
text-align: center;
}
.table-yes {
background: var(--table-yes-background);
color: var(--table-yes-color);
}
.table-positive {
background: var(--table-yes-background);
}
.table-no {
background: var(--table-no-background);
color: var(--table-no-color);
}
.table-negative {
background: var(--table-no-background);
}
.table-maybe {
background: var(--table-maybe-background);
color: var(--table-maybe-color);
}
#mw-allmessagestable .am_actual,
#mw-allmessagestable .am_default {
background-color: var(--wikitable-bg);
}
#mw-allmessagestable .am_default:hover,
#mw-allmessagestable .am_actual:hover,
#mw-allmessagestable tbody:hover td {
background-color: var(--wikitable-bg-lighter);
}
table.wikitable td.no-cell-spacing {
padding: 0;
height: 0;
}
table.wikitable td.no-cell-spacing table {
margin: -1px;
width: calc(100% + 2px);
height: calc(100% + 2px);
}
.plainlist ol,
.plainlist ul {
margin: 0;
}
.plainlist li {
margin-bottom: 0;
list-style: none;
}
table.align-right-1 td:nth-of-type(1),
table.align-right-2 td:nth-of-type(2),
table.align-right-3 td:nth-of-type(3),
table.align-right-4 td:nth-of-type(4),
table.align-right-5 td:nth-of-type(5),
table.align-right-6 td:nth-of-type(6),
table.align-right-7 td:nth-of-type(7),
table.align-right-8 td:nth-of-type(8),
table.align-right-9 td:nth-of-type(9),
table.align-right-10 td:nth-of-type(10),
table.align-right-11 td:nth-of-type(11),
table.align-right-12 td:nth-of-type(12),
table.align-right-13 td:nth-of-type(13),
table.align-right-14 td:nth-of-type(14),
table.align-right-15 td:nth-of-type(15),
table.align-right-16 td:nth-of-type(16),
table.align-right-17 td:nth-of-type(17),
table.align-right-18 td:nth-of-type(18),
table.align-right-19 td:nth-of-type(19),
table.align-right-20 td:nth-of-type(20) {
text-align: right;
}
table.align-center-1 td:nth-of-type(1),
table.align-center-2 td:nth-of-type(2),
table.align-center-3 td:nth-of-type(3),
table.align-center-4 td:nth-of-type(4),
table.align-center-5 td:nth-of-type(5),
table.align-center-6 td:nth-of-type(6),
table.align-center-7 td:nth-of-type(7),
table.align-center-8 td:nth-of-type(8),
table.align-center-9 td:nth-of-type(9),
table.align-center-10 td:nth-of-type(10),
table.align-center-11 td:nth-of-type(11),
table.align-center-12 td:nth-of-type(12),
table.align-center-13 td:nth-of-type(13),
table.align-center-14 td:nth-of-type(14),
table.align-center-15 td:nth-of-type(15),
table.align-center-16 td:nth-of-type(16),
table.align-center-17 td:nth-of-type(17),
table.align-center-18 td:nth-of-type(18),
table.align-center-19 td:nth-of-type(19),
table.align-center-20 td:nth-of-type(20) {
text-align: center;
}
table.align-left-1 td:nth-of-type(1),
table.align-left-2 td:nth-of-type(2),
table.align-left-3 td:nth-of-type(3),
table.align-left-4 td:nth-of-type(4),
table.align-left-5 td:nth-of-type(5),
table.align-left-6 td:nth-of-type(6),
table.align-left-7 td:nth-of-type(7),
table.align-left-8 td:nth-of-type(8),
table.align-left-9 td:nth-of-type(9),
table.align-left-10 td:nth-of-type(10),
table.align-left-11 td:nth-of-type(11),
table.align-left-12 td:nth-of-type(12),
table.align-left-13 td:nth-of-type(13),
table.align-left-14 td:nth-of-type(14),
table.align-left-15 td:nth-of-type(15),
table.align-left-16 td:nth-of-type(16),
table.align-left-17 td:nth-of-type(17),
table.align-left-18 td:nth-of-type(18),
table.align-left-19 td:nth-of-type(19),
table.align-left-20 td:nth-of-type(20) {
text-align: left;
}
:root {
--diff-addedline-border-color: #438ab5;
--diff-addedline-background: #bddff2;
--diff-addedline-color: #000;
--diff-deletedline-border-color: #379541;
--diff-deletedline-background: #c1edbf;
--diff-deletedline-color: #000;
--diff-context-border-color: var(--body-mid);
--diff-context-background: var(--body-mid);
}
.diff-context {
border-color: var(--diff-context-border-color);
background: var(--diff-context-background);
color: inherit;
}
.diff-addedline {
border-color: var(--diff-addedline-border-color);
}
.diff-addedline .diffchange {
background: var(--diff-addedline-background);
color: var(--diff-addedline-color);
}
.diff-deletedline {
border-color: var(--diff-deletedline-border-color);
}
.diff-deletedline .diffchange {
background: var(--diff-deletedline-background);
color: var(--diff-deletedline-color);
}
.mw-diff-movedpara-left:after,
.mw-diff-movedpara-right:after {
color: var(--text-color);
}
.mw-notification {
background-color: var(--body-light);
border-color: var(--body-border);
color: var(--text-color);
}
.mw-echo-ui-notificationsInboxWidget-toolbarWrapper {
background: var(--body-main);
}
.mw-body-content .mw-echo-ui-datedSubGroupListWidget-title-secondary {
color: var(--byline-color);
}
.mw-echo-ui-pageNotificationsOptionWidget.oo-ui-optionWidget-selected {
background-color: var(--ooui-normal);
color: var(--ooui-accent);
}
.mw-echo-ui-pageNotificationsOptionWidget-label-count {
background-color: var(--ooui-normal);
color: var(--byline-color);
}
.oo-ui-optionWidget-selected .mw-echo-ui-pageNotificationsOptionWidget-label-count {
color: var(--ooui-accent);
}
.mw-echo-ui-pageNotificationsOptionWidget.oo-ui-optionWidget-highlighted {
background-color: var(--ooui-normal);
color: var(--text-color);
}
.mw-echo-ui-crossWikiUnreadFilterWidget {
border-color: var(--body-border);
}
.mw-echo-ui-crossWikiUnreadFilterWidget-subtitle {
color: var(--byline-color);
}
.mw-echo-ui-notificationBadgeButtonPopupWidget-popup > .oo-ui-popupWidget-popup > .oo-ui-popupWidget-head,
.mw-echo-ui-notificationBadgeButtonPopupWidget-popup > .oo-ui-popupWidget-popup > .oo-ui-popupWidget-footer {
border-color: var(--ooui-interface-border);
}
.mw-echo-ui-notificationBadgeButtonPopupWidget-popup > .oo-ui-popupWidget-popup > .oo-ui-popupWidget-footer .mw-echo-ui-notificationBadgeButtonPopupWidget-footer-buttons .oo-ui-buttonElement:last-child {
border-left-color: var(--ooui-normal-border);
}
.mw-echo-ui-notificationItemWidget {
background-color: var(--ooui-normal);
border-color: var(--ooui-normal-border);
}
.mw-echo-ui-notificationItemWidget:hover,
.mw-echo-ui-notificationItemWidget-unread:hover {
background-color: var(--ooui-normal--hover);
}
.mw-echo-ui-notificationItemWidget:last-child {
border-bottom-color: var(--ooui-normal-border);
}
.mw-echo-ui-notificationItemWidget-unread {
background-color: var(--search-box);
}
.mw-echo-ui-crossWikiNotificationItemWidget-group,
.mw-echo-ui-bundleNotificationItemWidget-group {
background-color: var(--ooui-interface);
}
.mw-echo-ui-toggleReadCircleButtonWidget-circle {
background-color: var(--ooui-progressive);
}
.mw-echo-ui-toggleReadCircleButtonWidget:hover .mw-echo-ui-toggleReadCircleButtonWidget-circle {
background-color: var(--ooui-progressive--hover);
}
.mw-echo-ui-toggleReadCircleButtonWidget-circle-unread {
background-color: var(--ooui-normal);
border-color: var(--ooui-normal-border);
}
.mw-echo-ui-notificationItemWidget-content-message-header,
.mw-echo-ui-notificationItemWidget-content-message-body,
.mw-echo-ui-menuItemWidget > .oo-ui-buttonElement-button > .oo-ui-labelElement-label,
.mw-echo-ui-notificationItemWidget-content-actions-timestamp {
color: var(--ooui-text);
}
.mw-echo-ui-bundleNotificationItemWidget-group {
background-color: var(--body-main);
}
@keyframes unseen-fadeout-to-unread {
from {
background-color: var(--wikitable-bg-lighter);
}
to {
background-color: var(--search-box);
}
}
@keyframes unseen-fadeout-to-read {
from {
background-color: var(--wikitable-bg-lighter);
}
to {
background-color: var(--body-main);
}
}
.mwe-popups {
background: var(--body-light);
}
.mwe-popups .mwe-popups-container {
color: var(--text-color);
background: var(--body-light);
}
.mwe-popups .mwe-popups-container.flipped-x-y:before,
.mwe-popups .mwe-popups-container.flipped-y:before {
border-top: none;
}
.mwe-popups .mwe-popups-container.mwe-popups-no-image-tri:before {
border-bottom: none;
}
.mwe-popups .mwe-popups-container.flipped-x-y:after,
.mwe-popups .mwe-popups-container.flipped-y:after {
border-top-color: var(--body-light);
}
.mwe-popups .mwe-popups-container.mwe-popups-no-image-tri:after {
border-bottom-color: var(--body-light);
}
.mwe-popups .mwe-popups-settings-icon:hover,
.mwe-popups .mwe-popups-settings-icon:active {
background-color: var(--ooui-normal--hover);
}
.mwe-popups .mw-ui-icon-element:not(.disabled):hover {
background: none;
}
.mwe-popups .mwe-popups-extract {
color: var(--text-color);
}
.mwe-popups .mwe-popups-extract[dir='ltr']:after {
background-image: linear-gradient(to right, rgba(49, 62, 89, 0), var(--body-light) 50%);
}
.mwe-popups-overlay {
background-color: var(--ooui-window-background);
}
#mwe-popups-settings {
background: var(--ooui-interface);
border-color: var(--ooui-interface-border);
color: var(--text-color);
}
#mwe-popups-settings header {
border-color: var(--ooui-interface-border);
}
#mwe-popups-settings main#mwe-popups-settings-form p {
color: var(--byline-color);
}
#mwe-popups-settings main#mwe-popups-settings-form form label > span {
color: var(--ooui-text);
}
:root {
--smw-ask-options-even-bg: var(--body-mid);
--smw-ask-options-odd-bg: var(--body-light);
--smw-ask-action-btn-lblue-bg: var(--body-main);
--smw-ask-action-btn-lblue-color: #000;
--smw-ask-action-btn-lblue-border-color: var(--body-light);
--smw-ask-action-btn-dblue-bg: var(--body-light);
--smw-ask-action-btn-dblue-color: #fff;
--smw-ask-action-btn-dblue-border-color: var(--button-border);
}
.smw-ask-condition fieldset,
.smw-ask-printhead fieldset {
border-color: var(--sidebar);
}
.smw-ask-search fieldset,
.smw-ask-format fieldset,
.smw-ask-options fieldset {
border-color: var(--sidebar);
}
.strike > span:before,
.strike > span:after {
background: var(--sidebar);
}
.smw-ask-options-fields tr td {
background-color: var(--smw-ask-options-even-bg);
}
.smw-ask-options-fields tr:nth-child(odd) td {
background-color: var(--smw-ask-options-odd-bg);
}
.smw-ask-action-btn.smw-ask-action-btn-lblue,
.smw-ask-action-btn.smw-ask-action-btn-lblue:hover,
.smw-ask-action-btn.smw-ask-action-btn-lblue:visited {
background-color: var(--smw-ask-action-btn-lblue-bg);
color: var(--smw-ask-action-btn-lblue-color);
border-color: var(--smw-ask-action-btn-lblue-border-color);
}
.smw-ask-action-btn.smw-ask-action-btn-dblue,
.smw-ask-action-btn.smw-ask-action-btn-dblue:hover,
.smw-ask-action-btn.smw-ask-action-btn-dblue:visited {
background-color: var(--smw-ask-action-btn-dblue-bg);
color: var(--smw-ask-action-btn-dblue-color);
border-color: var(--smw-ask-action-btn-dblue-border-color);
}
.smw-ask-query textarea,
.smw-ask-actions textarea {
background-color: var(--ooui-interface);
border-color: var(--ooui-interface-border);
color: var(--ooui-text);
}
.smw-ask-query-format select {
background-color: var(--ooui-interface);
border: 1px solid var(--ooui-interface-border);
color: var(--ooui-text);
}
.smw-ask-toplinks {
background-color: var(--body-mid);
}
.smw-ask-toplinks span.smw-icon-info {
background: none;
padding: 0 !important;
}
.smw-ask-toplinks span.smw-icon-info::before {
content: '';
background: var(--text-color);
-webkit-mask: url("data:image/svg+xml,%3C%3Fxml version='1.0' encoding='UTF-8'%3F%3E%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 20 20'%3E%3Ctitle%3Einfo%3C/title%3E%3Cpath d='M10 0C4.477 0 0 4.477 0 10s4.477 10 10 10 10-4.477 10-10S15.523 0 10 0zM9 5h2v2H9zm0 4h2v6H9z'/%3E%3C/svg%3E") no-repeat 50% 50% / contain;
mask: url("data:image/svg+xml,%3C%3Fxml version='1.0' encoding='UTF-8'%3F%3E%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 20 20'%3E%3Ctitle%3Einfo%3C/title%3E%3Cpath d='M10 0C4.477 0 0 4.477 0 10s4.477 10 10 10 10-4.477 10-10S15.523 0 10 0zM9 5h2v2H9zm0 4h2v6H9z'/%3E%3C/svg%3E") no-repeat 50% 50% / contain;
padding: 0 0 3px 18px;
}
.smw-ask-options-row-odd {
background-color: var(--body-light);
}
.smw-ask-options-row-even {
background-color: var(--body-mid);
}
#options-toggle:not(:checked) + #options-list .options-parameter-list:after {
background-image: linear-gradient(to bottom, transparent, var(--body-mid) 90%);
}
.smw-ask-button-submit input {
background-color: var(--ooui-normal);
border-color: var(--ooui-normal-border);
color: var(--text-color);
}
.smw-ask-button-submit input:hover,
.smw-ask-button-lgrey:hover {
background-color: var(--ooui-normal--hover);
border-color: var(--ooui-normal-border);
}
input.smw-ask-action-btn.smw-ask-action-btn-dblue {
background-color: var(--ooui-normal);
border-color: var(--ooui-normal-border);
color: var(--ooui-text);
}
a.smw-ask-action-btn.smw-ask-action-btn-lblue {
background-color: var(--body-mid);
border-color: var(--body-mid);
color: var(--ooui-text);
}
a.smw-ask-action-btn.smw-ask-action-btn-lblue:visited {
background-color: var(--body-mid);
border-color: var(--body-mid);
color: var(--ooui-text);
}
a.smw-ask-action-btn.smw-ask-action-btn-lblue:hover {
background-color: var(--body-mid);
border-color: var(--body-mid);
color: var(--ooui-text);
}
a.smw-ask-action-btn-lgrey {
background-color: var(--ooui-normal);
border-color: var(--ooui-normal-border);
color: var(--ooui-text);
}
a.smw-ask-action-btn-lgrey:hover {
background-color: var(--ooui-normal--hover);
border-color: var(--ooui-normal-border);
color: var(--ooui-text);
}
.smw-callout-error {
background-color: var(--errorbox-bg);
border-color: var(--errorbox-border);
}
.smw-callout-info {
background-color: var(--body-light);
border-color: var(--body-dark);
}
.smw-callout-success {
background-color: var(--successbox-bg);
border-color: var(--successbox-border);
}
.smw-callout-warning {
background-color: var(--warningbox-bg);
border-color: var(--warningbox-bg);
}
.smw-tabs input.nav-tab:checked + label.nav-label,
.smw-tabs input.nav-tab:checked + label.nav-label:hover {
color: inherit;
}
#tab-smw-property-value:checked + label.nav-label .usage-count {
color: #fff;
background-color: var(--ooui-progressive);
}
#tab-smw-property-value:checked + label.nav-label .usage-count.moderate {
color: #fff;
background-color: #b55e0c;
border-color: #b55e0c;
}
#tab-smw-property-value:checked + label.nav-label .usage-count.high {
color: #fff;
background-color: #9f261e;
border-color: #9f261e;
}
.smw-property-page-results .header-title {
background-color: var(--ooui-interface);
border-bottom-color: var(--ooui-interface-border);
color: var(--ooui-text);
}
.smw-property-page-results .value-row:hover {
background-color: var(--ooui-normal--hover);
}
.smw-property-page-results .smw-table .header-row {
color: var(--text-color);
}
.tippy-tooltip.light-border-theme {
background-color: var(--body-light);
color: var(--text-color);
}
.tippy-tooltip.light-border-theme .tippy-arrow {
border-top-color: var(--body-light);
}
.tippy-tooltip.light-border-theme .tippy-arrow:after {
border-top-color: var(--body-light);
}
.tippy-header {
background-color: var(--body-dark);
border-bottom-color: var(--body-mid);
}
.smw-ui-input-filter {
background-color: var(--ooui-interface);
border-color: var(--ooui-interface-border);
color: var(--ooui-text);
}
.smw-ui-input-filter input {
border-left-color: var(--ooui-interface-border) !important;
color: var(--ooui-text) !important;
}
.smw-ui-pagination .page-link.link-disabled {
background-color: var(--ooui-disabled);
border-color: var(--ooui-disabled-border);
color: var(--subtle-color);
}
.smw-ui-pagination .page-link {
background-color: var(--ooui-normal);
border-color: var(--ooui-normal-border);
color: var(--link-color);
}
.smw-ui-pagination .page-link:hover {
background-color: var(--ooui-normal--hover);
border-color: var(--ooui-normal-border);
color: var(--link-color);
}
.smw-ui-pagination .page-link.link-active {
color: #fff;
background-color: var(--ooui-progressive);
border-color: var(--ooui-progressive);
}
.smw-tabs input.nav-tab:checked + label.nav-label {
border-color: var(--ooui-normal-border);
}
.smw-tabs section,
.smw-tabs .subtab-content {
border-top-color: var(--ooui-normal-border);
}
.smw-column-header {
color: var(--text-color);
}
.smw-factbox {
background: var(--body-main);
border-color: transparent;
}
.mw-body .mw-indicators #mw-indicator-smw-entity-examiner.mw-indicator .smw-indicator-vertical-bar-loader {
display: none;
}
.smwb-theme-light .smwb-title,
.smwb-theme-light .smwb-center,
.smwb-theme-light .smwb-actions,
.smwb-theme-light .smwb-prophead {
background-color: var(--body-mid);
}
.smwb-theme-light .smwb-factbox {
border-left-color: var(--body-mid);
}
.smwb-theme-light .smwb-ifactbox {
border-right-color: var(--body-mid);
}
.smwb-theme-light .smwb-propval {
background-color: var(--body-light);
}
.smwb-action-separator {
border-color: var(--wikitable-border);
}
.smwb-bottom {
border-bottom: 1px solid var(--wikitable-border);
}
.smwb-ifactbox .smwb-cell,
.smwb-factbox .smwb-cell {
border-top: 1px solid var(--wikitable-border);
}
.smwb-propvalue .smwb-prophead,
.smwb-ipropvalue .smwb-prophead,
.smwb-propvalue .smwb-propval,
.smwb-ipropvalue .smwb-propval {
font-size: 0.9em;
}
:root {
--filter-black-to-link: invert(36%) sepia(58%) saturate(433%) hue-rotate(344deg) brightness(100%) contrast(91%);
}
#bodyContent span.smwbrowse a {
color: black;
background-image: url('filepath://Smwbrowse.svg');
filter: var(--filter-black-to-link);
}
#bodyContent span.smwbrowse a:hover {
color: black;
background-image: url('filepath://Smwbrowse-hover.svg');
text-decoration: underline;
}
#bodyContent span.smwsearch a {
color: black;
filter: var(--filter-black-to-link);
background-image: url('filepath://Smwsearch.svg');
}
#bodyContent span.smwsearch a:hover {
color: black;
background-image: url('filepath://Smwsearch-hover.svg');
text-decoration: underline;
}
:root {
--tabber-tab-bg: var(--body-light);
--tabber-tab-border-color: var(--body-border);
--tabber-active-tab-bg: var(--body-light);
--tabber-active-tab-color: var(--text-color);
--tabber-active-tab-hover-bg: var(--body-light);
--tabber-active-tab-hover-border-color: var(--body-border);
--tabber-active-tab-hover-color: var(--text-color);
--tabber-active-tab-border-hider-color: var(--body-light);
--tabber-inactive-tab-bg: var(--body-background-color);
--tabber-inactive-tab-border-color: var(--body-border);
--tabber-inactive-tab-color: var(--text-color);
--tabber-inactive-tab-hover-bg: var(--body-light);
--tabber-inactive-tab-hover-border-color: var(--body-border);
}
.tabber {
margin: 1em 0;
}
.tabber .tabbertab {
background-color: var(--tabber-tab-bg);
border: 1px solid var(--tabber-tab-border-color);
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
padding: 1em 1.5em;
}
ul.tabbernav {
border: none;
margin-left: 2em;
margin-bottom: 0;
margin-right: 2em;
padding: 0;
font-family: inherit;
}
ul.tabbernav li.tabberactive > a {
background-color: var(--tabber-active-tab-bg);
color: var(--tabber-active-tab-color);
border-bottom: none;
position: relative;
}
ul.tabbernav li.tabberactive > a:hover {
color: var(--tabber-active-tab-hover-color);
background-color: var(--tabber-active-tab-hover-bg);
border-color: var(--tabber-active-tab-hover-border-color);
border-bottom: none;
}
ul.tabbernav li.tabberactive > a::after {
content: '';
position: absolute;
left: 0;
right: 0;
bottom: -1px;
border-bottom: 2px solid var(--tabber-active-tab-border-hider-color);
}
ul.tabbernav li a {
background-color: var(--tabber-inactive-tab-bg);
border-bottom: transparent;
border-color: var(--tabber-inactive-tab-border-color);
color: var(--tabber-inactive-tab-color);
display: inline-block;
font-size: 110%;
padding: 0.5em 1em;
}
ul.tabbernav li a:hover {
background-color: var(--tabber-inactive-tab-hover-bg);
border-color: var(--tabber-inactive-tab-hover-border-color);
}
ul.tabbernav li a:link,
ul.tabbernav li a:visited {
color: var(--tabber-inactive-tab-color);
}
:root {
--ooui-text: var(--text-color);
--ooui-interface: var(--body-light);
--ooui-interface-border: var(--body-border);
--ooui-window-background: rgba(255, 255, 255, 0.5);
--ooui-normal: #d5c7ad;
--ooui-normal--hover: #dfd5c1;
--ooui-normal-border: #b8a282;
--ooui-progressive: #605443;
--ooui-progressive--hover: #7e6e58;
--ooui-accent: var(--link-color);
--ooui-input: #fff;
--ooui-input-border: #b8a282;
--ooui-input-border--hover: #8a724f;
--ooui-disabled: #d1cdc5;
--ooui-disabled-border: #c2b9ab;
--ooui-disabled-text: var(--subtle-color);
--ooui-pending-background-image: repeating-linear-gradient(-45deg, var(--search-box), var(--search-box) 20px, var(--body-main) 20px, var(--body-main) 30px);
}
.oo-ui-widget {
color: var(--ooui-text);
}
.oo-ui-checkboxInputWidget [type='checkbox'] + span,
.oo-ui-radioInputWidget [type='radio'] + span {
background-color: var(--ooui-input);
border-color: var(--ooui-input-border);
}
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:checked + span,
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:indeterminate + span {
background-color: var(--ooui-progressive);
border-color: var(--ooui-progressive);
}
.oo-ui-radioInputWidget.oo-ui-widget-enabled [type='radio']:checked + span {
border-color: var(--ooui-progressive);
}
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:checked:hover + span,
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:indeterminate:hover + span {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
}
.oo-ui-radioInputWidget.oo-ui-widget-enabled [type='radio']:checked:hover + span {
border-color: var(--ooui-progressive--hover);
}
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:hover + span,
.oo-ui-radioInputWidget.oo-ui-widget-enabled [type='radio']:hover + span {
border-color: var(--ooui-accent);
}
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:focus + span {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:active + span,
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:checked:active + span,
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:indeterminate:active + span {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
box-shadow: inset 0 0 0 1px var(--ooui-progressive--hover);
}
.oo-ui-radioInputWidget.oo-ui-widget-enabled [type='radio']:active + span {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
}
.oo-ui-radioInputWidget.oo-ui-widget-enabled [type='radio']:checked:active + span {
border-color: var(--ooui-progressive--hover);
box-shadow: inset 0 0 0 1px var(--ooui-progressive--hover);
}
.oo-ui-radioInputWidget.oo-ui-widget-enabled [type='radio']:checked:active + span:before {
border-color: var(--ooui-progressive--hover);
}
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:checked:focus + span,
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:indeterminate:focus + span {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent), inset 0 0 0 2px #fff;
}
.oo-ui-checkboxInputWidget [type='checkbox']:disabled + span,
.oo-ui-radioInputWidget [type='radio']:disabled + span {
background-color: var(--ooui-disabled);
border-color: var(--ooui-disabled);
}
.oo-ui-dropdownWidget-handle {
border-color: var(--ooui-normal-border);
}
.oo-ui-dropdownWidget.oo-ui-widget-enabled .oo-ui-dropdownWidget-handle {
background-color: var(--ooui-normal);
color: var(--ooui-text);
}
.oo-ui-dropdownWidget.oo-ui-widget-enabled .oo-ui-dropdownWidget-handle:hover {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
}
.oo-ui-dropdownWidget.oo-ui-widget-enabled .oo-ui-dropdownWidget-handle:active {
color: var(--ooui-text);
}
.oo-ui-dropdownWidget.oo-ui-widget-enabled .oo-ui-dropdownWidget-handle:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-dropdownWidget.oo-ui-widget-enabled.oo-ui-dropdownWidget-open .oo-ui-dropdownWidget-handle {
background-color: var(--ooui-normal--hover);
}
.oo-ui-dropdownWidget.oo-ui-widget-disabled .oo-ui-dropdownWidget-handle {
color: var(--ooui-disabled-text);
text-shadow: none;
border-color: var(--ooui-disabled-border);
background-color: var(--ooui-disabled);
}
.oo-ui-dropdownInputWidget select {
border-color: var(--ooui-normal-border);
}
.oo-ui-dropdownInputWidget option {
background-color: var(--ooui-interface);
}
.oo-ui-dropdownInputWidget.oo-ui-widget-enabled {
background-color: var(--ooui-normal);
}
.oo-ui-dropdownInputWidget.oo-ui-widget-enabled:hover {
background-color: var(--ooui-normal--hover);
}
.oo-ui-dropdownInputWidget.oo-ui-widget-enabled select {
color: var(--ooui-text);
}
.oo-ui-dropdownInputWidget.oo-ui-widget-enabled select:hover,
.oo-ui-dropdownInputWidget.oo-ui-widget-enabled select:active {
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
}
.oo-ui-dropdownInputWidget.oo-ui-widget-enabled select:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-labelWidget.oo-ui-inline-help {
color: var(--byline-color);
}
.oo-ui-menuSelectWidget {
background-color: var(--ooui-interface);
border-color: var(--ooui-interface-border);
}
.oo-ui-menuSelectWidget-frameless {
box-shadow: inset 0 -1px 0 0 var(--ooui-normal-border);
}
.oo-ui-menuSectionOptionWidget {
color: var(--byline-color);
}
.oo-ui-menuOptionWidget.oo-ui-optionWidget-highlighted,
.oo-ui-menuOptionWidget.oo-ui-optionWidget-selected {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
}
.oo-ui-menuOptionWidget.oo-ui-optionWidget-selected.oo-ui-menuOptionWidget.oo-ui-optionWidget-highlighted,
.oo-ui-menuOptionWidget.oo-ui-optionWidget-pressed.oo-ui-menuOptionWidget.oo-ui-optionWidget-highlighted {
color: var(--ooui-accent);
}
.oo-ui-menuOptionWidget.oo-ui-widget-enabled.oo-ui-optionWidget {
color: var(--ooui-text);
}
.oo-ui-messageDialog-title {
color: inherit;
}
.oo-ui-messageWidget.oo-ui-messageWidget-block.oo-ui-flaggedElement-error {
background-color: var(--errorbox-bg);
border-color: var(--errorbox-border);
}
.oo-ui-messageWidget.oo-ui-messageWidget-block.oo-ui-flaggedElement-warning {
background-color: var(--warningbox-bg);
border-color: var(--warningbox-border);
}
.oo-ui-messageWidget.oo-ui-messageWidget-block.oo-ui-flaggedElement-success {
background-color: var(--successbox-bg);
border-color: var(--successbox-border);
}
.oo-ui-messageWidget.oo-ui-messageWidget-block.oo-ui-flaggedElement-notice {
background-color: var(--messagebox-info-background);
border-color: var(--messagebox-info-border);
}
.oo-ui-messageWidget.oo-ui-flaggedElement-error:not(.oo-ui-messageWidget-block),
.oo-ui-messageWidget.oo-ui-flaggedElement-success:not(.oo-ui-messageWidget-block) {
color: var(--ooui-text);
}
.oo-ui-optionWidget.oo-ui-widget-disabled {
color: var(--ooui-disabled-text);
}
.oo-ui-outlineControlsWidget {
background-color: var(--ooui-normal);
}
.oo-ui-outlineOptionWidget.oo-ui-optionWidget-highlighted {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
}
.oo-ui-popupWidget-popup {
background-color: var(--ooui-interface);
border-color: var(--ooui-interface-border);
}
.oo-ui-popupWidget-anchored-top .oo-ui-popupWidget-anchor:after {
border-bottom-color: var(--ooui-interface);
}
.oo-ui-popupWidget-anchored-top .oo-ui-popupWidget-anchor:before {
border-bottom-color: var(--ooui-interface-border);
}
.oo-ui-popupWidget-anchored-bottom .oo-ui-popupWidget-anchor:after {
border-top-color: var(--ooui-interface);
}
.oo-ui-popupWidget-anchored-bottom .oo-ui-popupWidget-anchor:before {
border-top-color: var(--ooui-interface-border);
}
.oo-ui-popupWidget-anchored-start .oo-ui-popupWidget-anchor:after {
border-right-color: var(--ooui-interface);
}
.oo-ui-popupWidget-anchored-start .oo-ui-popupWidget-anchor:before {
border-right-color: var(--ooui-interface-border);
}
.oo-ui-popupWidget-anchored-end .oo-ui-popupWidget-anchor:after {
border-left-color: var(--ooui-interface);
}
.oo-ui-popupWidget-anchored-end .oo-ui-popupWidget-anchor:before {
border-left-color: var(--ooui-interface-border);
}
.oo-ui-searchWidget-query {
border-bottom-color: var(--ooui-interface-border);
}
.oo-ui-selectFileWidget-dropTarget {
background-color: var(--ooui-interface);
border-color: var(--ooui-interface-border);
}
.oo-ui-selectFileWidget.oo-ui-widget-enabled.oo-ui-selectFileWidget-dropTarget {
background-color: var(--ooui-interface);
}
.oo-ui-selectFileWidget.oo-ui-widget-enabled.oo-ui-selectFileWidget-dropTarget:hover {
border-color: var(--ooui-input-border--hover);
}
.oo-ui-tabOptionWidget {
color: var(--ooui-text);
}
.oo-ui-tabSelectWidget-framed .oo-ui-tabOptionWidget.oo-ui-optionWidget-selected {
background-color: var(--body-dark);
color: var(--ooui-text);
}
.oo-ui-tabSelectWidget-framed .oo-ui-tabOptionWidget.oo-ui-optionWidget-selected .oo-ui-labelElement-label {
border-bottom-color: var(--body-border);
}
.oo-ui-tabSelectWidget-framed .oo-ui-tabOptionWidget.oo-ui-widget-enabled:hover,
.oo-ui-tabSelectWidget-framed .oo-ui-tabOptionWidget.oo-ui-widget-enabled:active {
background-color: var(--body-light);
color: var(--ooui-text);
}
.oo-ui-tabSelectWidget-framed .oo-ui-tabOptionWidget.oo-ui-widget-enabled.oo-ui-optionWidget-selected:hover {
background-color: var(--body-dark);
}
.oo-ui-tabSelectWidget-frameless .oo-ui-tabOptionWidget.oo-ui-optionWidget-selected {
color: var(--ooui-progressive);
box-shadow: inset 0 -2px 0 0 var(--ooui-progressive);
}
.oo-ui-tabSelectWidget-frameless .oo-ui-tabOptionWidget.oo-ui-optionWidget-selected:hover,
.oo-ui-tabSelectWidget-frameless .oo-ui-tabOptionWidget.oo-ui-optionWidget-selected:focus {
color: var(--ooui-progressive--hover);
box-shadow: inset 0 -2px 0 0 var(--ooui-progressive--hover);
}
.oo-ui-tabSelectWidget-framed {
background: none;
border-bottom: 1px solid var(--ooui-interface-border);
}
.oo-ui-tabSelectWidget-frameless {
box-shadow: inset 0 -1px 0 0 var(--ooui-interface-border);
}
.oo-ui-tabSelectWidget-mobile {
}
.oo-ui-tabSelectWidget-mobile.oo-ui-tabSelectWidget-framed:after {
background: var(--mobile-navbox-linear-gradient);
}
.oo-ui-tabSelectWidget-mobile.oo-ui-tabSelectWidget-frameless:after {
background: var(--mobile-navbox-linear-gradient);
}
.oo-ui-tagItemWidget {
border-color: var(--ooui-normal-border);
}
.oo-ui-tagItemWidget.oo-ui-widget-enabled {
color: var(--ooui-text);
}
.oo-ui-tagItemWidget.oo-ui-widget-enabled:hover {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
}
.oo-ui-tagItemWidget.oo-ui-widget-enabled:not( .oo-ui-tagItemWidget-fixed ) {
background-color: var(--ooui-normal);
}
.oo-ui-tagItemWidget.oo-ui-widget-enabled .oo-ui-buttonElement-button:hover {
background-color: var(--ooui-normal--hover);
}
.oo-ui-tagMultiselectWidget.oo-ui-widget-enabled {
background-color: var(--ooui-interface);
}
.oo-ui-tagMultiselectWidget.oo-ui-widget-enabled.oo-ui-tagMultiselectWidget-outlined {
background-color: var(--ooui-normal);
}
.oo-ui-tagMultiselectWidget.oo-ui-widget-enabled.oo-ui-tagMultiselectWidget-outlined .oo-ui-tagItemWidget.oo-ui-widget-enabled {
background-color: var(--ooui-interface);
}
.oo-ui-textInputWidget .oo-ui-inputWidget-input {
background-color: var(--ooui-input);
color: var(--ooui-text);
border-color: var(--ooui-input-border);
}
.oo-ui-textInputWidget.oo-ui-widget-enabled .oo-ui-inputWidget-input::placeholder {
color: var(--subtle-color);
}
.oo-ui-textInputWidget.oo-ui-widget-enabled .oo-ui-inputWidget-input:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-textInputWidget.oo-ui-widget-enabled .oo-ui-inputWidget-input[readonly]:not(.oo-ui-pendingElement-pending) {
background-color: var(--ooui-disabled);
color: var(--ooui-disabled-text);
}
.oo-ui-textInputWidget.oo-ui-widget-enabled:hover .oo-ui-inputWidget-input {
border-color: var(--ooui-input-border--hover);
}
.oo-ui-textInputWidget.oo-ui-widget-enabled:hover .oo-ui-inputWidget-input:focus {
border-color: var(--ooui-accent);
}
@media screen and (min-width: 0) {
.oo-ui-textInputWidget.oo-ui-widget-enabled textarea.oo-ui-inputWidget-input:focus {
outline: 1px solid var(--ooui-accent);
}
}
.oo-ui-textInputWidget.oo-ui-widget-disabled .oo-ui-inputWidget-input {
background-color: var(--ooui-disabled);
color: var(--ooui-disabled-text);
text-shadow: none;
border-color: var(--ooui-disabled-border);
}
.oo-ui-toggleSwitchWidget {
background-color: var(--ooui-input);
border-color: var(--ooui-input-border);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled .oo-ui-toggleSwitchWidget-grip {
background-color: var(--ooui-input);
border-color: var(--ooui-input-border);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:hover {
background-color: var(--ooui-input);
border-color: var(--ooui-accent);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:hover .oo-ui-toggleSwitchWidget-grip {
background-color: var(--ooui-input);
border-color: var(--ooui-accent);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:active,
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:active:hover,
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:active:focus {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
box-shadow: inset 0 0 0 1px var(--ooui-progressive--hover);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:active .oo-ui-toggleSwitchWidget-grip,
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:active:hover .oo-ui-toggleSwitchWidget-grip,
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:active:focus .oo-ui-toggleSwitchWidget-grip {
background-color: var(--ooui-input);
border-color: var(--ooui-input);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:focus .oo-ui-toggleSwitchWidget-grip {
border-color: var(--ooui-accent);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled.oo-ui-toggleWidget-on {
background-color: var(--ooui-progressive);
border-color: var(--ooui-progressive);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled.oo-ui-toggleWidget-on .oo-ui-toggleSwitchWidget-grip {
background-color: var(--ooui-input);
border-color: var(--ooui-input);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled.oo-ui-toggleWidget-on:hover {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled.oo-ui-toggleWidget-on:active,
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled.oo-ui-toggleWidget-on:active:hover {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled.oo-ui-toggleWidget-on:focus {
border-color: var(--ooui-progressive);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled.oo-ui-toggleWidget-on:focus::before {
border-color: #fff;
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-disabled {
background-color: var(--ooui-disabled);
border-color: var(--ooui-disabled);
}
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled > .oo-ui-buttonElement-button {
color: var(--ooui-text);
}
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled > .oo-ui-buttonElement-button:hover {
color: var(--ooui-text);
}
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled > .oo-ui-buttonElement-button:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled.oo-ui-buttonElement-pressed > input.oo-ui-buttonElement-button,
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled > .oo-ui-buttonElement-button:active {
color: var(--ooui-text);
}
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button,
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button:hover {
color: var(--ooui-text);
}
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button:active,
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive.oo-ui-buttonElement-pressed > .oo-ui-buttonElement-button {
color: var(--ooui-text);
border-color: var(--ooui-text);
}
.oo-ui-buttonElement-frameless.oo-ui-widget-disabled > .oo-ui-buttonElement-button {
color: var(--ooui-disabled-text);
}
.oo-ui-buttonElement-framed.oo-ui-widget-disabled > .oo-ui-buttonElement-button {
background-color: var(--ooui-disabled);
border-color: var(--ooui-disabled-border);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled > .oo-ui-buttonElement-button {
background-color: var(--ooui-normal);
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled > .oo-ui-buttonElement-button:hover {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled > .oo-ui-buttonElement-button:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-buttonElement-active > .oo-ui-buttonElement-button {
background-color: var(--ooui-progressive--hover);
color: #fff;
border-color: var(--ooui-progressive--hover);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-buttonElement-active > .oo-ui-buttonElement-button:focus {
border-color: var(--ooui-progressive--hover);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled > .oo-ui-buttonElement-button:active,
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-buttonElement-pressed > .oo-ui-buttonElement-button {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive {
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button {
color: var(--ooui-text);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button:hover {
background-color: var(--ooui-normal--hover);
border-color: var(--ooui-progressive--hover);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-destructive > .oo-ui-buttonElement-button {
color: var(--ooui-text);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-destructive > .oo-ui-buttonElement-button:hover {
background-color: var(--ooui-normal--hover);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button {
background-color: var(--ooui-progressive);
border-color: var(--ooui-progressive);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button:hover {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent), inset 0 0 0 2px #fff;
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button:active,
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive.oo-ui-buttonElement-pressed > .oo-ui-buttonElement-button,
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive.oo-ui-buttonElement-active > .oo-ui-buttonElement-button,
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive.oo-ui-popupToolGroup-active > .oo-ui-buttonElement-button {
color: #fff;
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
}
.oo-ui-pendingElement-pending {
background-image: var(--ooui-pending-background-image);
background-size: 200%;
animation: oo-ui-pendingElement-stripes 6s linear infinite;
}
@keyframes oo-ui-pendingElement-stripes {
100% {
background-position: 100%;
}
}
.oo-ui-messageDialog-content > .oo-ui-window-foot {
outline-color: var(--ooui-interface-border);
}
.oo-ui-messageDialog-message {
color: var(--ooui-text);
}
.oo-ui-messageDialog-actions-horizontal .oo-ui-actionWidget {
border-right-color: var(--ooui-interface-border);
}
.oo-ui-messageDialog-actions-vertical .oo-ui-actionWidget {
border-bottom-color: var(--ooui-interface-border);
}
.oo-ui-processDialog-content .oo-ui-window-head,
.oo-ui-processDialog-content .oo-ui-window-foot {
outline-color: var(--ooui-interface-border);
}
.oo-ui-processDialog .oo-ui-actionWidget > .oo-ui-buttonElement-button {
border-top-color: transparent;
border-bottom-color: transparent;
}
.oo-ui-processDialog .oo-ui-actionWidget > .oo-ui-buttonElement-button:hover,
.oo-ui-processDialog .oo-ui-actionWidget > .oo-ui-buttonElement-button:active {
border-top-color: transparent;
border-bottom-color: transparent;
}
.oo-ui-processDialog .oo-ui-actionWidget:not( .oo-ui-flaggedElement-progressive ):not( .oo-ui-flaggedElement-destructive ) > .oo-ui-buttonElement-button:hover,
.oo-ui-processDialog .oo-ui-actionWidget:not( .oo-ui-flaggedElement-progressive ):not( .oo-ui-flaggedElement-destructive ) > .oo-ui-buttonElement-button:active {
border-right-color: var(--ooui-interface-border);
border-left-color: transparent;
}
.oo-ui-processDialog .oo-ui-actionWidget:not( .oo-ui-flaggedElement-progressive ):not( .oo-ui-flaggedElement-destructive ) > .oo-ui-buttonElement-button:focus {
border-color: var(--ooui-accent);
}
.oo-ui-processDialog-actions-safe .oo-ui-actionWidget > .oo-ui-buttonElement-button,
.oo-ui-processDialog-actions-other .oo-ui-actionWidget > .oo-ui-buttonElement-button {
border-right-color: var(--ooui-normal-border);
border-left-color: transparent;
}
.oo-ui-processDialog-actions-safe .oo-ui-widget-enabled.oo-ui-iconElement:not( .oo-ui-labelElement ) > .oo-ui-buttonElement-button:hover {
background-color: var(--ooui-normal--hover);
border-right-color: var(--ooui-interface-border);
}
.oo-ui-windowManager-modal > .oo-ui-dialog {
background-color: var(--ooui-window-background);
}
.oo-ui-windowManager-modal > .oo-ui-dialog > .oo-ui-window-frame {
background-color: var(--ooui-interface);
}
.oo-ui-windowManager-modal.oo-ui-windowManager-floating > .oo-ui-dialog > .oo-ui-window-frame {
border-color: var(--ooui-interface-border);
}
.oo-ui-window {
color: var(--ooui-text);
}
.oo-ui-toolbar-bar {
background-color: var(--ooui-interface);
color: var(--ooui-text);
}
.oo-ui-toolbar-position-top > .oo-ui-toolbar-bar {
border-bottom-color: var(--body-mid);
}
.oo-ui-toolbar-bar .oo-ui-bookletLayout > .oo-ui-menuLayout-menu {
border-right-color: var(--body-mid);
}
.oo-ui-tool.oo-ui-widget-enabled > .oo-ui-tool-link:hover {
background-color: var(--ooui-normal--hover);
}
.oo-ui-tool.oo-ui-widget-enabled > .oo-ui-tool-link:focus {
outline: 1px solid var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-tool.oo-ui-widget-enabled > .oo-ui-tool-link:active,
.oo-ui-tool.oo-ui-widget-enabled.oo-ui-tool-active > .oo-ui-tool-link,
.oo-ui-tool.oo-ui-widget-enabled.oo-ui-popupToolGroup-active > .oo-ui-tool-link {
background-color: var(--ooui-normal--hover);
color: var(--ooui-accent);
box-shadow: none;
}
.oo-ui-tool.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive > .oo-ui-tool-link {
background-color: var(--ooui-progressive);
}
.oo-ui-tool.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive > .oo-ui-tool-link:hover {
background-color: var(--ooui-progressive--hover);
}
.oo-ui-tool.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive > .oo-ui-tool-link:focus {
box-shadow: inset 0 0 0 1px var(--ooui-accent), inset 0 0 0 2px #fff;
}
.oo-ui-tool.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive > .oo-ui-tool-link:active,
.oo-ui-tool.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive.oo-ui-tool-active > .oo-ui-tool-link {
background-color: var(--ooui-progressive--hover);
}
.oo-ui-listToolGroup-tools .oo-ui-tool.oo-ui-widget-enabled {
background-color: var(--ooui-normal);
}
.oo-ui-listToolGroup-tools .oo-ui-tool.oo-ui-widget-enabled:hover {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
}
.oo-ui-listToolGroup-tools .oo-ui-tool-active.oo-ui-widget-enabled .oo-ui-tool-link .oo-ui-tool-title {
color: var(--ooui-progressive);
}
.oo-ui-menuToolGroup {
border-left-color: var(--body-mid);
border-right-color: var(--body-mid);
}
.oo-ui-popupToolGroup-tools {
background-color: var(--ooui-interface);
border-color: var(--body-mid);
}
.oo-ui-popupToolGroup.oo-ui-widget-enabled > .oo-ui-popupToolGroup-handle:hover {
background-color: var(--ooui-normal--hover);
}
.oo-ui-popupToolGroup.oo-ui-widget-enabled > .oo-ui-popupToolGroup-handle:focus {
outline: 1px solid var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-toolbar-actions .oo-ui-popupToolGroup.oo-ui-widget-enabled > .oo-ui-popupToolGroup-handle:hover {
border-right-color: var(--ooui-normal--hover);
}
.oo-ui-popupToolGroup-tools .oo-ui-tool.oo-ui-widget-enabled .oo-ui-tool-link:focus {
box-shadow: inset 0 0 0 2px var(--ooui-accent);
}
.oo-ui-popupToolGroup-tools .oo-ui-tool-active.oo-ui-widget-enabled .oo-ui-tool-link .oo-ui-tool-title {
color: var(--ooui-progressive);
}
.oo-ui-popupToolGroup.oo-ui-popupToolGroup-active > .oo-ui-popupToolGroup-handle {
background-color: var(--ooui-normal);
color: var(--ooui-accent);
}
.oo-ui-popupToolGroup.oo-ui-popupToolGroup-active > .oo-ui-popupToolGroup-handle:hover {
background-color: var(--ooui-normal--hover);
color: var(--ooui-accent);
}
.oo-ui-bookletLayout-outlinePanel > .oo-ui-outlineControlsWidget {
border-top-color: var(--ooui-interface-border);
}
.oo-ui-bookletLayout > .oo-ui-menuLayout-menu {
border-right-color: var(--ooui-interface-border);
}
.oo-ui-fieldLayout-disabled > .oo-ui-fieldLayout-body > .oo-ui-fieldLayout-header > .oo-ui-labelElement-label {
color: var(--ooui-disabled-text);
}
.oo-ui-panelLayout-framed {
border-color: var(--sidebar);
}
.oo-ui-icon-settings {
background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' width='20' height='20' viewBox='0 0 20 20'%3E%3Ctitle%3Esettings%3C/title%3E%3Cg transform='translate(10 10)'%3E%3Cpath id='a' d='M1.5-10h-3l-1 6.5h5m0 7h-5l1 6.5h3'/%3E%3Cuse xlink:href='%23a' transform='rotate(45)'/%3E%3Cuse xlink:href='%23a' transform='rotate(90)'/%3E%3Cuse xlink:href='%23a' transform='rotate(135)'/%3E%3C/g%3E%3Cpath d='M10 2.5a7.5 7.5 0 0 0 0 15 7.5 7.5 0 0 0 0-15v4a3.5 3.5 0 0 1 0 7 3.5 3.5 0 0 1 0-7'/%3E%3C/svg%3E");
}
.oo-ui-icon-clear {
background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 20 20'%3E%3Ctitle%3Eclear%3C/title%3E%3Cpath d='M10 0a10 10 0 1 0 10 10A10 10 0 0 0 10 0zm5.66 14.24-1.41 1.41L10 11.41l-4.24 4.25-1.42-1.42L8.59 10 4.34 5.76l1.42-1.42L10 8.59l4.24-4.24 1.41 1.41L11.41 10z'/%3E%3C/svg%3E");
}
.mw-widget-dateInputWidget-handle {
background-color: var(--ooui-input);
color: var(--ooui-text);
border-color: var(--ooui-input-border);
}
.mw-widget-dateInputWidget-calendar {
background-color: var(--ooui-interface);
}
.mw-widget-dateInputWidget.oo-ui-widget-enabled .mw-widget-dateInputWidget-handle:hover {
border-color: var(--ooui-input-border--hover);
}
.mw-widget-calendarWidget {
border-color: var(--ooui-interface-border);
}
.mw-widget-calendarWidget:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.mw-widget-calendarWidget-day,
.mw-widget-calendarWidget-day-heading {
color: var(--ooui-text);
}
.mw-widget-calendarWidget-day-additional {
color: var(--ooui-text);
opacity: 0.67;
}
.mw-widget-calendarWidget-day-today {
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.mw-widget-calendarWidget-item:hover {
background-color: var(--ooui-progressive);
}
.mw-widget-calendarWidget-item-selected {
background-color: var(--ooui-progressive--hover);
}
.mw-widgets-datetime-calendarWidget {
background-color: var(--ooui-interface);
border-color: var(--ooui-interface-border);
}
.mw-widgets-datetime-calendarWidget:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent), 0 2px 2px 0 rgba(0, 0, 0, 0.25);
}
.mw-widgets-datetime-calendarWidget-grid .mw-widgets-datetime-calendarWidget-cell.mw-widgets-datetime-calendarWidget-extra .oo-ui-buttonElement-button .oo-ui-labelElement-label {
color: var(--subtle-color);
}
.mw-widgets-datetime-calendarWidget-grid .mw-widgets-datetime-calendarWidget-cell.mw-widgets-datetime-calendarWidget-selected .oo-ui-buttonElement-button {
background-color: var(--ooui-progressive--hover);
}
.mw-widgets-datetime-dateTimeInputWidget-handle {
background-color: var(--ooui-input);
color: var(--ooui-text);
border-color: var(--ooui-input-border);
}
.mw-widgets-datetime-dateTimeInputWidget.oo-ui-widget-enabled.mw-widgets-datetime-dateTimeInputWidget-handle:hover {
border-color: var(--ooui-input-border--hover);
}
.mw-widgets-datetime-dateTimeInputWidget.oo-ui-widget-enabled:hover input,
.mw-widgets-datetime-dateTimeInputWidget.oo-ui-widget-enabled:hover textarea {
border-color: var(--ooui-input-border--hover);
}
.mw-widgets-datetime-dateTimeInputWidget.oo-ui-widget-enabled .mw-widgets-datetime-dateTimeInputWidget-editField:hover {
background-color: var(--ooui-normal);
}
.ve-activated .ve-init-mw-desktopArticleTarget-originalContent #catlinks:hover {
background: var(--ooui-normal--hover);
}
.ve-ui-overlay {
font-family: inherit;
}
.oo-ui-toolbar-position-top .ve-ui-toolbarDialog-position-above {
border-top-color: var(--body-mid);
}
.ve-ce-branchNode-blockSlug,
.ve-ce-branchNode-newSlug {
outline-color: var(--body-border);
background-color: var(--ooui-interface);
}
.ve-ui-specialCharacterPage h3 {
color: var(--byline-color);
}
.ve-ui-specialCharacterPage-character {
border-color: var(--body-mid);
}
.ve-ui-specialCharacterPage-character:hover {
border-color: var(--body-dark);
}
.ve-ce-linkAnnotation.ve-ce-annotation-active {
box-shadow: 0 0 0 1px var(--body-mid);
background: none;
}
.ve-ui-desktopContext .ve-ui-linkContextItem .ve-ui-linkContextItem-label {
border-color: var(--body-border);
}
.ve-ui-mwHelpPopupTool-version-label,
.ve-ui-mwHelpPopupTool-version-link,
.ve-ui-mwHelpPopupTool-version-date {
color: var(--byline-color);
}
.ve-ce-tableCellableNode {
border-color: var(--body-mid);
}
.ve-ce-mwReferencesListNode-muted {
color: var(--byline-color);
}
.ve-ui-mwTemplatePage-description,
.ve-ui-mwParameterPage-label,
.ve-ui-mwParameterPage-description-required,
.ve-ui-mwParameterPage-description-deprecated {
color: var(--byline-color);
}
.mw-widget-titleWidget-menu .mw-widget-titleOptionWidget-description {
color: var(--byline-color);
}
.ve-ui-mwGalleryDialog-menuLayout > .oo-ui-menuLayout-menu,
.ve-ui-mwGalleryDialog-innerMenuLayout > .oo-ui-menuLayout-menu,
.ve-ui-mwGalleryDialog .ve-ui-mwGalleryDialog-image-container,
.ve-ui-targetWidget {
border-color: var(--body-border);
}
.ve-ui-targetWidget:not(.oo-ui-pendingElement-pending) {
background-color: var(--body-main);
}
.ve-ui-mwSaveDialog {
color: var(--ooui-text);
}
.ve-ui-mwSaveDialog-options {
background-color: var(--ooui-interface);
border-color: var(--body-border);
}
.ve-ui-mwSaveDialog-summary {
background-color: var(--ooui-input);
}
.ve-ui-mwSaveDialog-editSummary-count {
border-color: var(--body-border);
}
.ve-ui-mwSaveDialog-license {
color: var(--byline-color);
}
.ve-ui-mwReferenceContextItem-muted {
color: var(--byline-color);
}
.ve-ui-mwNoticesPopupTool-items > div:not(:first-child),
.ve-ui-mwHelpPopupTool-item:not(:first-child) {
border-color: var(--body-border);
}
.ve-ui-mwTransclusionOutlineControlsWidget {
background-color: var(--ooui-interface);
border-top-color: var(--body-border);
}
.ve-ui-mwTransclusionOutlineTemplateWidget-sticky {
background-color: var(--ooui-interface);
}
.ve-ui-mwTransclusionOutlineTemplateWidget .ve-ui-mwTransclusionOutlineParameterWidget.oo-ui-optionWidget-highlighted {
color: var(--ooui-text);
}
.ve-ui-mwTransclusionOutlineTemplateWidget-no-template-parameters {
color: var(--subtle-color);
}
.ve-ui-mwParameterPage-undocumentedLabel {
color: var(--subtle-color);
}
.ve-ui-mwTwoPaneTransclusionDialogLayout > .oo-ui-menuLayout-menu {
border-right: var(--body-border);
}
.ve-ui-mwParameterPage-doc-required,
.ve-ui-mwParameterPage-doc-deprecated,
.ve-ui-mwParameterPage-inlineDescription .ve-ui-mwParameterPage-doc-example {
color: var(--byline-color);
}
.ve-ui-expandableContent-toggle {
background-color: var(--ooui-interface);
}
.ve-ui-expandableContent-fade {
background: linear-gradient(to right, rgba(255, 255, 255, 0) 0, var(--ooui-interface) 90%);
}
.ve-ui-commandHelpDialog-shortcut > kbd,
.ve-ui-commandHelpDialog-sequence > kbd {
background-color: var(--keypress-background);
color: var(--keypress-color);
border-color: var(--keypress-border);
box-shadow: none;
text-shadow: none;
}
.ve-init-mw-desktopArticleTarget-toolbarPlaceholder-floating .ve-init-mw-desktopArticleTarget-toolbarPlaceholder-bar {
background: var(--ooui-interface);
}
.ve-init-mw-desktopArticleTarget-toolbarPlaceholder-bar {
border-bottom-color: var(--body-mid);
}
figure[typeof~='mw:File/Thumb'],
figure[typeof~='mw:File/Frame'],
figure[typeof~='mw:Image/Thumb'],
figure[typeof~='mw:Video/Thumb'],
figure[typeof~='mw:Image/Frame'],
figure[typeof~='mw:Video/Frame'] {
border: none;
background-color: var(--thumb-bg);
}
figure[typeof~='mw:File/Thumb'] > a:first-child > *:first-child:not( .mw-broken-media ),
figure[typeof~='mw:File/Frame'] > a:first-child > *:first-child:not( .mw-broken-media ),
figure[typeof~='mw:Image/Thumb'] > a:first-child > *:first-child:not( .mw-broken-media ),
figure[typeof~='mw:Video/Thumb'] > a:first-child > *:first-child:not( .mw-broken-media ),
figure[typeof~='mw:Image/Frame'] > a:first-child > *:first-child:not( .mw-broken-media ),
figure[typeof~='mw:Video/Frame'] > a:first-child > *:first-child:not( .mw-broken-media ) {
border: none;
background: var(--thumb-bg);
}
figure[typeof~='mw:File/Thumb'] > figcaption,
figure[typeof~='mw:File/Frame'] > figcaption,
figure[typeof~='mw:Image/Thumb'] > figcaption,
figure[typeof~='mw:Video/Thumb'] > figcaption,
figure[typeof~='mw:Image/Frame'] > figcaption,
figure[typeof~='mw:Video/Frame'] > figcaption {
border: none;
background-color: var(--thumb-caption-bg);
padding: 4px 6px;
}
:root {
--infobox-text-color: var(--text-color);
}
ol.references,
.reflist {
font-size: 90%;
}
.reflist {
list-style-type: decimal;
}
.reflist .references {
font-size: 100%;
list-style-type: inherit;
}
.reflist-lower-alpha {
list-style-type: lower-alpha;
}
ol.references li:target,
sup.reference:target {
background-color: var(--body-light);
}
.hideQuotes .refhide {
display: none;
}
:root {
--byline-arrow-filter: invert(29%) sepia(0%) saturate(376%) hue-rotate(172deg) brightness(87%) contrast(80%);
--tile-border-color: #cabe9b;
--tile-background-color: #f9f3eb;
--tile-link-button-color: #f5e9db;
--tile-link-button-highlight-color: #dfccb0;
--tile-dark-color: #fff;
--tile-dark-bg: #5d6773;
--tile-dark-link-color: #ccc;
--tile-dark-byline-color: rgba(255, 255, 255, 0.7);
--tile-dark-header-color: #fff;
}
.tile {
background: var(--tile-background-color);
border: 1px solid var(--tile-border-color);
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
padding: 1.5em 2em 1em;
max-width: 40em;
}
.tile h2 {
font-size: 1.4em;
font-weight: bold;
border: none;
margin: 0 0 0.4em;
}
.tile .byline + h2 {
margin-top: -0.5em;
}
.tile.dark {
color: var(--tile-dark-color);
background: var(--tile-dark-bg);
border: none;
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.3);
}
.tile.dark h2 {
color: var(--tile-dark-header-color);
}
.tile.dark a {
color: var(--tile-dark-link-color);
}
.tile.dark .byline {
color: var(--tile-dark-byline-color);
}
.byline {
font-size: 0.9em;
color: var(--byline-color);
}
.byline a {
color: var(--byline-color);
}
.tile-row {
display: flex;
flex-flow: row wrap;
margin-bottom: 1em;
}
.tile-halves {
display: flex;
flex-flow: row wrap;
border: 1px solid var(--tile-border-color);
background: var(--tile-background-color);
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
}
.tile-halves h2 {
font-size: 1.4em;
font-weight: bold;
border: none;
margin: 0 0 0.4em;
}
.tile-halves .byline + h2 {
margin-top: -0.5em;
}
.tile-top {
width: 100%;
padding: 1.3rem 1.5rem 0.6rem;
}
.tile-top.tile-image {
display: flex;
align-items: center;
background-color: var(--byline-color);
overflow: hidden;
padding: 0;
height: 13vw;
max-height: 12em;
transition: 0.4s ease-out;
}
.tile-halves:hover .tile-top.tile-image img {
transform: scale(1.1);
transition: 0.5s ease-out;
}
.tile-top.tile-image a {
width: 100%;
}
.tile-top.tile-image img {
width: 100%;
object-fit: cover;
max-height: 200px;
transition: 0.4s ease-out;
}
.tile-bottom {
background: var(--tile-background-color);
border-top: 1px solid var(--tile-border-color);
width: 100%;
padding: 1rem 1.5rem 0.6rem;
}
.tile-bottom.link-button {
align-self: flex-end;
padding: 0;
}
.tile-bottom.link-button a {
display: block;
text-align: center;
padding: 0.75em 1.5em 0.8em;
text-decoration: none;
}
.tile-bottom.read-more {
background: var(--tile-link-button-color);
transition: 0.3s ease-out;
}
.tile-bottom.read-more a {
color: var(--byline-color);
font-weight: bold;
text-align: right;
}
.tile-bottom.read-more:hover {
background: var(--tile-link-button-highlight-color);
}
.tile-bottom.read-more:hover .arrow {
transform: translateX(50%);
}
.tile-bottom.read-more .arrow {
filter: var(--byline-arrow-filter);
margin-left: 0.4em;
transition: 0.3s ease-out;
}
body.page-Main_Page .mw-parser-output {
max-width: 75em;
margin: 0 auto;
}
body.page-Main_Page.action-view .catlinks,
body.page-Main_Page.action-view #contentSub,
body.page-Main_Page.action-view #siteNotice {
display: none;
}
.mainpage-header {
display: flex;
margin: 2.6em 1.75em 1.5em;
}
.mainpage-header .header-intro {
flex: 2;
}
.mainpage-header .header-intro h1 {
font-size: 2.5em;
font-weight: bold;
border: none;
margin: 0 0 0.15em;
}
.mainpage-header .header-intro p {
font-size: 1.1em;
line-height: 1.7em;
}
.mainpage-header .header-stats {
flex: 1;
display: flex;
justify-content: center;
align-items: center;
margin-top: -1em;
}
.mainpage-body {
display: grid;
grid-template-areas: "event event event" "update update update" "content content content" "left left right";
gap: 0.9rem;
grid-template-columns: repeat(3, 1fr);
}
.mainpage-body h2 a {
color: var(--text-color);
}
.mainpage-body .tile {
padding-left: 1.75em;
padding-right: 1.75em;
max-width: 100%;
}
.mainpage-body .tile-row {
width: 100%;
margin-bottom: 0;
}
.mainpage-body .tile-row {
display: grid;
gap: 0.9rem;
}
.mainpage-left {
grid-area: left;
flex: 2;
display: flex;
flex-flow: column wrap;
}
.mainpage-left > * {
margin: 0 0 0.9rem;
}
.mainpage-right {
grid-area: right;
flex: 1;
display: flex;
flex-flow: column wrap;
}
.mainpage-right > * {
margin: 0 0 0.9rem;
}
.arrow {
background: url('filepath://White-chevron.svg') no-repeat;
display: inline-block;
height: 0.7rem;
width: 0.45rem;
vertical-align: middle;
}
.arrow.dark {
filter: invert(80%);
}
.mainpage-contents .tile-halves {
flex: 1;
margin-right: 0.9rem;
}
.mainpage-contents .tile-halves:hover .tile-top img {
transform: scale(1.04);
}
.mainpage-contents .tile-halves:last-child {
margin-right: 0;
}
.mainpage-contents .tile-top {
height: 4.5rem;
position: relative;
}
.mainpage-contents .tile-top h2 a {
display: block;
text-align: center;
text-decoration: none;
line-height: 4.5rem;
padding-left: 0.45rem;
}
.mainpage-contents h2 {
margin: 0;
padding: 0;
}
.popular-pages ul {
display: grid;
grid-template-columns: repeat(3, 1fr);
grid-gap: 0.6em;
margin: 1em 0 0.7em 0;
}
.mp-popular-page-light {
display: flex;
align-items: center;
background-color: var(--button-background);
transition: 100ms;
}
.mp-popular-page-light a {
flex: 1;
display: block;
color: #fff;
font-weight: bold;
text-align: center;
text-decoration: none;
padding: 0.7em 1em;
}
.mp-popular-page-light:hover {
filter: brightness(115%);
transition: 100ms;
}
.mainpage-discord {
border: none;
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.3);
}
.mainpage-discord .tile-top {
display: flex;
align-items: center;
background: #5865f2;
padding: 1em 1.75em;
}
.mainpage-discord .tile-top a {
flex: 1;
position: relative;
text-decoration: none;
}
.mainpage-discord .tile-top a:hover .arrow {
transform: translateX(50%);
}
.mainpage-discord .tile-bottom {
background: #525ee0;
border: none;
padding: 1em 1.75em;
}
.mainpage-discord .tile-bottom p {
color: #fff;
font-weight: bold;
font-size: 0.9em;
text-align: center;
text-transform: uppercase;
letter-spacing: 0.03em;
margin: 0;
}
.mainpage-discord .partner-icon {
margin-right: 0.75em;
}
.mainpage-discord .server-name {
color: #fff;
font-weight: bold;
font-size: 1.25em;
margin: 0.5em 0 -0.15em;
}
.mainpage-discord .server-tagline {
color: rgba(255, 255, 255, 0.9);
margin-bottom: 0.5em;
}
.mainpage-discord .arrow {
position: absolute;
top: calc(50% - .5em);
right: 0;
height: 1em;
width: 0.7em;
background-size: 0.7em 1em;
transition: 0.3s ease-out;
}
.mainpage-editing {
border: none;
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.3);
}
.mainpage-editing .tile-top {
background: #438ab5;
}
.mainpage-editing .tile-bottom {
background: #3980ab;
border: none;
padding: 0.8rem 1.5rem 0.4rem;
}
.mainpage-editing h2,
.mainpage-editing a {
color: #fff;
}
.mainpage-editing p {
color: rgba(255, 255, 255, 0.9);
}
.mainpage-editing ul {
list-style-image: url('filepath://Transparent-chevron.svg');
}
@media only screen and (max-width: 1200px) {
.mainpage-contents {
grid-template-columns: repeat(3, 1fr);
}
}
@media only screen and (max-width: 1000px) {
.mainpage-body {
grid-template-areas: "event event event" "update update update" "content content content" "left left left" "right right right";
}
.mainpage-recent-updates {
grid-template-columns: repeat(2, 1fr);
}
.mainpage-recent-updates .tile-halves:last-child {
display: none;
}
.mainpage-recent-updates .tile-halves:hover .tile-top img {
transform: scale(1.04);
}
.mainpage-recent-updates .tile-top {
height: 18vw;
min-height: 9em;
}
.mainpage-header .header-stats {
display: none;
}
.mainpage-left > *:last-child,
.mainpage-right > *:last-child {
margin-bottom: 0;
}
.popular-pages ul {
grid-template-columns: repeat(2, 1fr);
}
}
@media only screen and (max-width: 720px) {
.mainpage-recent-updates {
grid-template-columns: none;
}
.mainpage-recent-updates .tile-halves:last-child {
display: flex;
}
.mainpage-contents {
grid-template-columns: repeat(2, 1fr);
}
}
.mw-prefs-buttons {
background-color: var(--body-main);
border-top-color: var(--body-border);
box-shadow: none;
}
.mw-prefs-tabs-wrapper.oo-ui-panelLayout-framed,
.mw-prefs-tabs > .oo-ui-menuLayout-content > .oo-ui-indexLayout-stackLayout > .oo-ui-tabPanelLayout {
border-color: var(--body-border);
}
.mw-htmlform-ooui .mw-htmlform-matrix tbody tr:nth-child(even) td {
background-color: var(--body-light);
}
.mw-htmlform-ooui .mw-htmlform-matrix tbody tr:hover td {
background-color: var(--body-mid);
}
:root {
--rc-positive-color: #407813;
--rc-negative-color: #b41e0f;
}
.mw-plusminus-pos {
color: var(--rc-positive-color);
}
.mw-plusminus-neg {
color: var(--rc-negative-color);
}
.client-js .mw-recentchanges-toplinks:not(.mw-recentchanges-toplinks-collapsed) {
border-color: var(--body-border);
background-color: var(--body-light);
border-radius: 2px;
}
.mw-rcfilters-ui-filterTagMultiselectWidget-wrapper-content-title {
color: var(--text-color);
}
.mw-rcfilters-ui-filterTagMultiselectWidget-emptyFilters {
color: var(--byline-color);
}
.mw-rcfilters-ui-filterTagMultiselectWidget.oo-ui-widget-enabled .oo-ui-tagMultiselectWidget-handle {
background-color: var(--ooui-interface);
border-color: var(--ooui-interface-border);
}
.mw-rcfilters-ui-filterTagMultiselectWidget-views-select-widget.oo-ui-widget {
border-color: var(--ooui-interface-border);
}
.mw-rcfilters-collapsed .mw-rcfilters-ui-filterTagMultiselectWidget {
border-bottom-color: var(--ooui-interface-border);
}
.mw-rcfilters-ui-menuSelectWidget-footer {
background-color: var(--ooui-interface);
border-color: var(--ooui-interface-border);
}
.mw-rcfilters-ui-viewSwitchWidget label.oo-ui-labelWidget {
color: var(--byline-color);
}
.mw-rcfilters-ui-tagItemWidget-popup-content {
color: var(--ooui-text);
}
.mw-changeslist-legend,
.mw-rcfilters-ui-changesListWrapperWidget .mw-changeslist-legend {
background-color: var(--body-light);
border-color: var(--body-dark);
}
.mw-rcfilters-ui-changesListWrapperWidget-previousChangesIndicator {
border-color: var(--sidebar);
}
.client-js .mw-changeslist ul,
.client-js .mw-changeslist table.mw-enhanced-rc {
margin-left: 0;
}
.mw-rcfilters-ui-watchlistTopSectionWidget-separator {
border-color: var(--sidebar);
}
.mw-rcfilters-ui-itemMenuOptionWidget-header {
border-bottom-color: var(--ooui-interface);
background-color: var(--ooui-interface-border);
}
.mw-rcfilters-ui-itemMenuOptionWidget:not(:last-child):not(.mw-rcfilters-ui-itemMenuOptionWidget-identifier-talk) {
border-bottom-color: var(--ooui-normal-border);
}
.mw-rcfilters-ui-itemMenuOptionWidget-label-title,
.mw-rcfilters-ui-itemMenuOptionWidget-label-desc {
color: var(--text-color);
}
.mw-rcfilters-ui-filterMenuOptionWidget.oo-ui-flaggedElement-muted:not(.oo-ui-optionWidget-selected) {
background-color: var(--body-main);
}
.mw-rcfilters-ui-filterMenuOptionWidget.oo-ui-flaggedElement-muted .mw-rcfilters-ui-itemMenuOptionWidget-label-title,
.mw-rcfilters-ui-filterMenuOptionWidget.oo-ui-flaggedElement-muted .mw-rcfilters-ui-itemMenuOptionWidget-label-desc {
color: var(--subtle-color);
}
.mw-rcfilters-ui-filterMenuSectionOptionWidget {
background-color: var(--body-mid);
}
.mw-rcfilters-ui-filterMenuSectionOptionWidget-header-title.oo-ui-labelElement-label {
color: var(--ooui-text);
}
.mw-rcfilters-ui-filterMenuHeaderWidget-title {
color: var(--ooui-text);
}
.mw-rcfilters-ui-filterMenuHeaderWidget-header {
border-bottom-color: var(--ooui-interface-border);
background-color: var(--ooui-interface);
}
.mw-rcfilters-ui-itemMenuOptionWidget-view-namespaces {
border-top-color: var(--ooui-interface-border);
}
.mw-rcfilters-ui-datePopupWidget {
border-color: var(--ooui-interface-border);
}
.mw-rcfilters-ui-datePopupWidget .mw-rcfilters-ui-valuePickerWidget-title {
color: var(--byline-color);
}
.mw-rcfilters-ui-savedLinksListItemWidget-label {
color: var(--ooui-accent);
}
.client-js .mw-changeslist.mw-rcfilters-ui-changesListWrapperWidget-highlighted ul,
.client-js .mw-changeslist.mw-rcfilters-ui-changesListWrapperWidget-highlighted table.mw-enhanced-rc {
margin-left: 1.5em;
}
.page-Special_CreateAccount .mw-ui-container,
.page-Special_UserLogin .mw-ui-container {
max-width: 64rem;
margin: 0 auto;
}
.mw-number-text {
color: var(--byline-color);
}
.mw-body-content .mw-number-text h3 {
color: var(--text-color);
}
#mw-indicator-mw-helplink a {
background: none;
padding: 0;
display: flex;
align-items: center;
}
#mw-indicator-mw-helplink a::before {
content: '';
margin-right: 5px;
-webkit-mask: url("/resources/src/mediawiki.helplink/images/helpNotice.svg?46d34") no-repeat 50% 50% / contain;
mask: url("/resources/src/mediawiki.helplink/images/helpNotice.svg?46d34") no-repeat 50% 50% / contain;
background: var(--text-color);
height: 20px;
width: 20px;
}
.results-info {
color: inherit;
}
.mw-search-profile-tabs {
background-color: var(--body-mid);
border-color: transparent;
}
.search-types .current a {
color: inherit;
}
#mw-searchoptions {
background-color: var(--body-mid);
border-color: transparent;
}
#mw-searchoptions .divider {
border-color: var(--body-border);
}
#mw-searchoptions h4 {
font-family: inherit;
}
#mw-searchoptions .oo-ui-labelElement:nth-of-type(odd) {
font-weight: bold;
}
.searchresult {
line-height: 1.5;
}
.searchalttitle,
#mw-search-interwiki li {
font-size: 90%;
}
.mw-search-result-data {
color: var(--byline-color);
}
.page-Special_ListFiles a.image img {
width: inherit;
height: inherit;
}
.page-Special_ListFiles .TablePager_col_thumb {
text-align: center;
}
#editcount table[border="1"] {
background-color: var(--body-main) !important;
border-color: var(--wikitable-border) !important;
margin-top: 0.5em;
}
#editcount table[border="1"] th,
#editcount table[border="1"] td {
padding: 0.2em 0.4em;
}
#editcount table[border="1"] th {
background-color: var(--wikitable-header-bg);
border: 1px solid var(--wikitable-border);
}
#editcount table[border="1"] td {
border: 1px solid var(--wikitable-border);
}
#editcount table[border="1"] tr:nth-child(odd) {
background-color: var(--body-light);
}
.mw-echo-ui-notificationBadgeButtonPopupWidget-popup > .oo-ui-popupWidget-popup .mw-echo-ui-placeholderItemWidget {
background-color: inherit;
}
table.mw-interwikitable.body td.mw-interwikitable-local-yes {
background-color: var(--table-yes-background);
color: var(--table-yes-color);
}
.mw-protectedpages-unknown {
color: var(--byline-color);
}
.watchlistredir,
.allpagesredirect {
font-style: italic;
}
.allpagesredirect:after {
color: var(--byline-color);
content: " (redirect)";
}
.mw-apisandbox-toolbar {
background: var(--body-main);
}
.oo-ui-menuOptionWidget .mw-apisandbox-flag {
color: var(--byline-color);
}
tr.mw-abusefilter-list-disabled,
tr.mw-abusefilter-list-disabled td {
color: var(--byline-color);
}
table.mw-abuselog-details {
background: var(--wikitable-bg);
border-color: var(--wikitable-border);
}
table.mw-abuselog-details th {
background: var(--wikitable-header-bg);
}
table.mw-abuselog-details th,
table.mw-abuselog-details td {
border-color: var(--wikitable-border);
}
.mw-abusefilter-log-hidden-entry {
color: var(--subtle-color);
}
body td.mw-abusefilter-history-changed {
background: var(--table-no-background);
}
div.mw-abusefilter-editor,
#mw-abusefilter-warn-preview,
#mw-abusefilter-disallow-preview {
border-color: var(--ooui-input-border);
}
.mw-destfile-warning {
border-color: var(--warningbox-border);
color: var(--text-color);
background-color: var(--warningbox-bg);
}
span.fileinput-button {
background-color: var(--ooui-normal);
border-color: var(--ooui-normal-border);
color: var(--ooui-text);
}
ul.fileupload-results li.ful-success {
background-color: var(--successbox-bg);
}
ul.fileupload-results li.ful-success a {
color: var(--link-color);
}
ul.fileupload-results li.ful-error {
background-color: var(--errorbox-bg);
}
#t-print,
#t-permalink {
display: none;
}
#filetoc {
border-radius: 2px;
background: var(--body-mid);
border-color: transparent;
margin: 0.5em auto;
text-align: center;
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
}
li.gallerybox div.thumb {
border: none;
background-color: var(--thumb-bg);
}
.smwfact {
display: none;
}
.list-header {
background-color: var(--body-mid);
color: inherit;
}
.editOptions {
color: var(--text-color);
background-color: var(--sourceeditor-background-secondary);
border-color: var(--sourceeditor-border);
}
.mw-json th,
.mw-json td {
border-color: var(--wikitable-border);
}
.mw-json td {
background: var(--wikitable-bg);
}
.mw-json th {
background: var(--wikitable-header-bg);
}
e5fd87a2881686310d850fa12d603f9e4d03bc40
84
82
2024-03-22T03:19:34Z
Jayden
3
Updating CSS from [[MediaWiki:Common.less]]
css
text/css
/* <pre> */
:root {
--body-main: #e2dbc8;
--body-light: #d8ccb4;
--body-mid: #d0bd97;
--body-dark: #b8a282;
--body-border: #94866d;
--body-background-color: #513e36;
--button-background: #605443;
--button-color: #fff;
--button-border: #3c352a;
--button-dark: #18140c;
--button-light: #3a301d;
--sidebar: #cfc08d;
--background-text-color: #e2dbc8;
--background-link-color: #e2bd8a;
--search-box: #efeee6;
--link-color: #936039;
--redlink-color: #ba0000;
--text-color: #000;
--byline-color: #4c4c4c;
--subtle-color: #777;
--admin-blue: #332e75;
--bearcat-green: #13592e;
--awb-purple: #933b96;
--rsw-blue: #438ab6;
--osrsw-brown: #605443;
--thumb-bg: var(--body-light);
--thumb-caption-bg: var(--body-mid);
--sourceeditor-input-background: #fff;
--sourceeditor-background: var(--body-light);
--sourceeditor-background-secondary: var(--body-light);
--sourceeditor-border: var(--body-mid);
--codemirror-gutter-background: var(--body-mid);
}
@font-face {
font-family: 'Lora';
font-weight: 400 700;
font-style: normal;
font-display: swap;
src: url('filepath://Lora.woff2') format('woff2');
}
@font-face {
font-family: 'Lora';
font-weight: 400 700;
font-style: italic;
font-display: swap;
src: url('filepath://Lora-Italic.woff2') format('woff2');
}
:root {
--base-text-color: #36414f;
--base-heading-color: #444e5a;
--base-heading-border: #e4eaee;
--mw-code-background-color: #ddd4bb;
--body-background-image: url('filepath://Wiki_background.jpg');
}
#mw-page-base {
background: none;
}
.mw-body {
background-color: var(--body-main);
color: var(--text-color);
border-color: transparent;
box-shadow: 0 0 7px rgba(0, 0, 0, 0.15);
margin-top: 0;
}
h1,
h2,
h3,
h4,
h5,
h6 {
color: var(--text-color);
}
h1,
h2 {
border-color: var(--sidebar);
}
.mw-body h1,
.mw-body-content h1,
.mw-body-content h2,
.mw-body-content h3,
.mw-body-content h4,
.mw-body-content h5,
.mw-body-content h6 {
font-family: 'Lora', 'Palatino', 'Georgia', serif;
}
.mw-parser-output h2:first-of-type {
clear: left;
}
.mw-footer {
color: var(--background-text-color);
}
.mw-footer li {
color: var(--background-text-color);
}
.mw-footer a,
.mw-footer a:active,
.mw-footer a:visited {
color: var(--background-link-color);
}
::placeholder {
color: var(--subtle-color);
}
a {
color: var(--link-color);
}
a:visited,
a:active {
color: var(--link-color);
}
a.new {
color: var(--redlink-color);
}
a.new:visited {
color: var(--redlink-color);
}
.mw-parser-output a.extiw,
.mw-parser-output a.external {
color: var(--link-color);
}
.mw-parser-output a.extiw:visited,
.mw-parser-output a.external:visited,
.mw-parser-output a.extiw:active,
.mw-parser-output a.external:active {
color: var(--link-color);
}
.jsPurgeLink a.external {
color: var(--link-color);
}
:root {
--errorbox-bg: #feecea;
--errorbox-border: #ee4231;
--warningbox-bg: #fef9de;
--warningbox-border: #f9d000;
--successbox-bg: #ecf8e3;
--successbox-border: #6bc71f;
}
.mw-message-box-error,
.errorbox,
.mw-message-box-warning,
.warningbox,
.mw-message-box-success,
.successbox,
.usermessage {
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
}
.mw-message-box-error,
.errorbox {
background-color: var(--errorbox-bg);
border-color: var(--errorbox-border);
}
.mw-message-box-warning,
.warningbox,
.usermessage {
background-color: var(--warningbox-bg);
border-color: var(--warningbox-border);
}
.mw-message-box-success,
.successbox {
background-color: var(--successbox-bg);
border-color: var(--successbox-border);
}
.catlinks {
background: var(--body-light);
border: 1px solid var(--body-dark);
padding: 8px 15px;
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
}
.catlinks li {
border-color: var(--body-mid);
}
.filehistory a img,
#file img {
background: url("data:image/svg+xml,%3C%3Fxml version='1.0' encoding='UTF-8'%3F%3E%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16'%3E%3Cpath d='M0 0h8v16h8V8H0z' opacity='.13'/%3E%3C/svg%3E") repeat;
}
#file img:hover {
background: none;
}
.mw-highlight {
background: none;
}
.mw-highlight .linenos {
background-color: var(--mw-code-background-color);
color: var(--byline-color);
}
.mw-highlight a:hover .linenos,
.mw-highlight .hll a .linenos {
color: var(--text-color);
}
.mw-content-ltr.mw-highlight-lines pre,
.mw-content-ltr.content .mw-highlight-lines pre {
box-shadow: inset 2.75em 0 0 var(--mw-code-background-color);
}
#pagehistory ul {
list-style: none;
margin: 0;
}
#pagehistory li {
border: 1px solid transparent;
padding: 1px 10px;
margin: 2px 0;
}
#pagehistory li.selected {
background-color: var(--body-light);
color: inherit;
border: 1px dashed var(--body-border);
outline: none;
}
#mw-history-compare > div:first-of-type {
position: -webkit-sticky;
position: sticky;
top: 0;
background-color: var(--body-main);
border-bottom: 1px solid var(--body-dark);
padding: 0.25em 0;
}
.wgl-stickyheader #mw-history-compare > div:first-of-type {
top: 2.5rem;
}
.autocomment,
.autocomment a,
.autocomment a:visited {
color: var(--link-color);
}
li span.deleted,
span.history-deleted {
color: var(--byline-color);
}
.mw-usertoollinks-contribs-no-edits,
.mw-usertoollinks-contribs-no-edits:visited {
color: var(--redlink-color);
}
.CategoryTreeToggle {
color: var(--link-color);
}
body.wgl-stickyheader.action-view .mw-headline:target::before {
display: block;
content: '';
margin-top: -3rem;
height: 3rem;
visibility: hidden;
pointer-events: none;
}
.mw-mmv-post-image {
color: var(--text-color);
background-color: var(--body-main);
}
.mw-mmv-image-metadata {
border-top-color: var(--body-mid);
background-color: var(--body-light);
}
.mw-mmv-dialog,
.mw-mmv-dialog .mw-mmv-dialog-down-arrow,
.mw-mmv-options-dialog .mw-mmv-dialog-down-arrow {
background-color: var(--body-light);
box-shadow: none;
}
.mw-mmv-options-enable-alert {
background-color: var(--body-light);
color: var(--text-color);
}
.mw-mmv-options-dialog-header,
.mw-mmv-options-text-header,
.mw-mmv-options-text-body,
.mw-mmv-options-enable-alert,
.mw-mmv-options-dialog .mw-mmv-disable-confirmation .mw-mmv-options-dialog-header,
.mw-mmv-options-dialog .mw-mmv-disable-confirmation .mw-mmv-options-text-header {
color: var(--text-color);
}
.mw-revslider-container {
border-color: var(--sidebar);
}
.mw-revslider-slider-wrapper {
border-top-color: var(--sidebar);
}
.mw-ui-button {
background-color: var(--ooui-normal);
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
}
.mw-ui-button:not(:disabled):hover,
.mw-ui-button:not(:disabled):active {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
}
.mw-ui-button:not(:disabled):focus {
color: var(--ooui-text);
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent), inset 0 0 0 2px #fff;
}
.mw-ui-button:not(:disabled):visited {
color: var(--ooui-text);
}
.mw-ui-button.mw-ui-progressive:not(:disabled) {
background-color: var(--ooui-progressive);
color: #fff;
border-color: var(--ooui-progressive);
}
.mw-ui-button.mw-ui-progressive:not(:disabled):hover {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
}
.mw-ui-button.mw-ui-progressive:not(:disabled):focus {
box-shadow: inset 0 0 0 1px var(--ooui-accent), inset 0 0 0 2px #fff;
}
.mw-ui-button.mw-ui-progressive:not(:disabled):active,
.mw-ui-button.mw-ui-progressive:not(:disabled).is-on {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
box-shadow: none;
}
.mw-ui-button.mw-ui-destructive:not( :disabled ) {
color: #fff;
}
.mw-ui-button.mw-ui-quiet,
.mw-ui-button.mw-ui-quiet.mw-ui-progressive,
.mw-ui-button.mw-ui-quiet.mw-ui-destructive {
color: var(--text-color);
}
input[type='checkbox']:hover + .mw-ui-button.mw-ui-quiet,
input[type='checkbox']:hover + .mw-ui-button.mw-ui-quiet.mw-ui-progressive,
input[type='checkbox']:hover + .mw-ui-button.mw-ui-quiet.mw-ui-destructive,
.mw-ui-button.mw-ui-quiet:hover,
.mw-ui-button.mw-ui-quiet.mw-ui-progressive:hover,
.mw-ui-button.mw-ui-quiet.mw-ui-destructive:hover {
background-color: rgba(0, 24, 73, 0.02745098);
color: var(--text-color);
border-color: transparent;
}
input[type='checkbox']:focus + .mw-ui-button.mw-ui-quiet,
input[type='checkbox']:focus + .mw-ui-button.mw-ui-quiet.mw-ui-progressive,
input[type='checkbox']:focus + .mw-ui-button.mw-ui-quiet.mw-ui-destructive,
.mw-ui-button.mw-ui-quiet:focus,
.mw-ui-button.mw-ui-quiet.mw-ui-progressive:focus,
.mw-ui-button.mw-ui-quiet.mw-ui-destructive:focus {
color: var(--text-color);
}
input[type='checkbox']:active + .mw-ui-button.mw-ui-quiet,
input[type='checkbox']:active + .mw-ui-button.mw-ui-quiet.mw-ui-progressive,
input[type='checkbox']:active + .mw-ui-button.mw-ui-quiet.mw-ui-destructive,
.mw-ui-button.mw-ui-quiet:active,
.mw-ui-button.mw-ui-quiet.mw-ui-progressive:active,
.mw-ui-button.mw-ui-quiet.mw-ui-destructive:active {
background-color: rgba(0, 36, 73, 0.08235294);
color: var(--text-color);
border-color: #72777d;
}
.mw-ui-input {
background-color: var(--ooui-input);
color: var(--text-color);
border-color: var(--ooui-input-border);
}
.mw-ui-input:hover {
border-color: var(--ooui-input-border--hover);
}
.mw-ui-input::placeholder {
color: var(--byline-color);
}
.mw-content-ltr .redirectText li:first-child {
padding: 0;
background: 0;
}
.mw-content-ltr .redirectText li:first-child::before {
content: '';
background: currentcolor;
-webkit-mask: url("filepath://Redirect-arrow.svg") no-repeat 50% 50% / contain;
mask: url("filepath://Redirect-arrow.svg") no-repeat 50% 50% / contain;
display: inline-block;
width: 47px;
height: 20px;
}
:root {
--wikitable-header-bg: var(--body-dark);
--wikitable-border: var(--body-border);
--wikitable-bg: var(--body-light);
--wikitable-bg-lighter: #e9e3d6;
--wikitable-color: var(--text-color);
--table-na-background: rgba(255, 255, 255, 0.3);
--table-na-color: var(--subtle-color);
--table-yes-background: #c3e8a3;
--table-yes-color: #2e5e05;
--table-no-background: #fbc0ba;
--table-no-color: #801c13;
--table-maybe-background: #fcea94;
--table-maybe-color: #786300;
}
.wikitable {
background: var(--wikitable-bg);
color: var(--wikitable-color);
border-color: var(--wikitable-border);
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
}
.wikitable > tr > th,
.wikitable > tr > td,
.wikitable > * > tr > th,
.wikitable > * > tr > td {
border-color: var(--wikitable-border);
}
.wikitable > tr > th.table-noborder,
.wikitable > tr > td.table-noborder,
.wikitable > * > tr > th.table-noborder,
.wikitable > * > tr > td.table-noborder {
border-left-style: hidden;
border-right-style: hidden;
padding-left: 0;
padding-right: 0;
}
.wikitable > tr > th,
.wikitable > * > tr > th {
background-color: var(--wikitable-header-bg);
}
.tabber .wikitable {
box-shadow: none;
}
.mw_metadata td,
.mw_metadata th {
border-color: var(--wikitable-border);
}
.mw_metadata th {
background-color: var(--wikitable-header-bg);
}
.mw_metadata td {
background-color: var(--wikitable-bg);
}
.mw-datatable {
border-color: var(--wikitable-border);
}
.mw-datatable td,
.mw-datatable th {
border-color: var(--wikitable-border);
}
.mw-datatable th {
background-color: var(--wikitable-header-bg);
}
.mw-datatable td {
background-color: var(--wikitable-bg);
}
.mw-datatable tr:hover td {
background-color: var(--wikitable-bg);
}
table.alternating-rows tr:nth-child(odd),
table.alternating-cols td:nth-child(odd) {
background: var(--wikitable-alternating-bg);
}
.table-na {
background: var(--table-na-background);
color: var(--table-na-color);
vertical-align: middle;
text-align: center;
}
.table-yes {
background: var(--table-yes-background);
color: var(--table-yes-color);
}
.table-positive {
background: var(--table-yes-background);
}
.table-no {
background: var(--table-no-background);
color: var(--table-no-color);
}
.table-negative {
background: var(--table-no-background);
}
.table-maybe {
background: var(--table-maybe-background);
color: var(--table-maybe-color);
}
#mw-allmessagestable .am_actual,
#mw-allmessagestable .am_default {
background-color: var(--wikitable-bg);
}
#mw-allmessagestable .am_default:hover,
#mw-allmessagestable .am_actual:hover,
#mw-allmessagestable tbody:hover td {
background-color: var(--wikitable-bg-lighter);
}
table.wikitable td.no-cell-spacing {
padding: 0;
height: 0;
}
table.wikitable td.no-cell-spacing table {
margin: -1px;
width: calc(100% + 2px);
height: calc(100% + 2px);
}
.plainlist ol,
.plainlist ul {
margin: 0;
}
.plainlist li {
margin-bottom: 0;
list-style: none;
}
table.align-right-1 td:nth-of-type(1),
table.align-right-2 td:nth-of-type(2),
table.align-right-3 td:nth-of-type(3),
table.align-right-4 td:nth-of-type(4),
table.align-right-5 td:nth-of-type(5),
table.align-right-6 td:nth-of-type(6),
table.align-right-7 td:nth-of-type(7),
table.align-right-8 td:nth-of-type(8),
table.align-right-9 td:nth-of-type(9),
table.align-right-10 td:nth-of-type(10),
table.align-right-11 td:nth-of-type(11),
table.align-right-12 td:nth-of-type(12),
table.align-right-13 td:nth-of-type(13),
table.align-right-14 td:nth-of-type(14),
table.align-right-15 td:nth-of-type(15),
table.align-right-16 td:nth-of-type(16),
table.align-right-17 td:nth-of-type(17),
table.align-right-18 td:nth-of-type(18),
table.align-right-19 td:nth-of-type(19),
table.align-right-20 td:nth-of-type(20) {
text-align: right;
}
table.align-center-1 td:nth-of-type(1),
table.align-center-2 td:nth-of-type(2),
table.align-center-3 td:nth-of-type(3),
table.align-center-4 td:nth-of-type(4),
table.align-center-5 td:nth-of-type(5),
table.align-center-6 td:nth-of-type(6),
table.align-center-7 td:nth-of-type(7),
table.align-center-8 td:nth-of-type(8),
table.align-center-9 td:nth-of-type(9),
table.align-center-10 td:nth-of-type(10),
table.align-center-11 td:nth-of-type(11),
table.align-center-12 td:nth-of-type(12),
table.align-center-13 td:nth-of-type(13),
table.align-center-14 td:nth-of-type(14),
table.align-center-15 td:nth-of-type(15),
table.align-center-16 td:nth-of-type(16),
table.align-center-17 td:nth-of-type(17),
table.align-center-18 td:nth-of-type(18),
table.align-center-19 td:nth-of-type(19),
table.align-center-20 td:nth-of-type(20) {
text-align: center;
}
table.align-left-1 td:nth-of-type(1),
table.align-left-2 td:nth-of-type(2),
table.align-left-3 td:nth-of-type(3),
table.align-left-4 td:nth-of-type(4),
table.align-left-5 td:nth-of-type(5),
table.align-left-6 td:nth-of-type(6),
table.align-left-7 td:nth-of-type(7),
table.align-left-8 td:nth-of-type(8),
table.align-left-9 td:nth-of-type(9),
table.align-left-10 td:nth-of-type(10),
table.align-left-11 td:nth-of-type(11),
table.align-left-12 td:nth-of-type(12),
table.align-left-13 td:nth-of-type(13),
table.align-left-14 td:nth-of-type(14),
table.align-left-15 td:nth-of-type(15),
table.align-left-16 td:nth-of-type(16),
table.align-left-17 td:nth-of-type(17),
table.align-left-18 td:nth-of-type(18),
table.align-left-19 td:nth-of-type(19),
table.align-left-20 td:nth-of-type(20) {
text-align: left;
}
:root {
--diff-addedline-border-color: #438ab5;
--diff-addedline-background: #bddff2;
--diff-addedline-color: #000;
--diff-deletedline-border-color: #379541;
--diff-deletedline-background: #c1edbf;
--diff-deletedline-color: #000;
--diff-context-border-color: var(--body-mid);
--diff-context-background: var(--body-mid);
}
.diff-context {
border-color: var(--diff-context-border-color);
background: var(--diff-context-background);
color: inherit;
}
.diff-addedline {
border-color: var(--diff-addedline-border-color);
}
.diff-addedline .diffchange {
background: var(--diff-addedline-background);
color: var(--diff-addedline-color);
}
.diff-deletedline {
border-color: var(--diff-deletedline-border-color);
}
.diff-deletedline .diffchange {
background: var(--diff-deletedline-background);
color: var(--diff-deletedline-color);
}
.mw-diff-movedpara-left:after,
.mw-diff-movedpara-right:after {
color: var(--text-color);
}
.mw-notification {
background-color: var(--body-light);
border-color: var(--body-border);
color: var(--text-color);
}
.mw-echo-ui-notificationsInboxWidget-toolbarWrapper {
background: var(--body-main);
}
.mw-body-content .mw-echo-ui-datedSubGroupListWidget-title-secondary {
color: var(--byline-color);
}
.mw-echo-ui-pageNotificationsOptionWidget.oo-ui-optionWidget-selected {
background-color: var(--ooui-normal);
color: var(--ooui-accent);
}
.mw-echo-ui-pageNotificationsOptionWidget-label-count {
background-color: var(--ooui-normal);
color: var(--byline-color);
}
.oo-ui-optionWidget-selected .mw-echo-ui-pageNotificationsOptionWidget-label-count {
color: var(--ooui-accent);
}
.mw-echo-ui-pageNotificationsOptionWidget.oo-ui-optionWidget-highlighted {
background-color: var(--ooui-normal);
color: var(--text-color);
}
.mw-echo-ui-crossWikiUnreadFilterWidget {
border-color: var(--body-border);
}
.mw-echo-ui-crossWikiUnreadFilterWidget-subtitle {
color: var(--byline-color);
}
.mw-echo-ui-notificationBadgeButtonPopupWidget-popup > .oo-ui-popupWidget-popup > .oo-ui-popupWidget-head,
.mw-echo-ui-notificationBadgeButtonPopupWidget-popup > .oo-ui-popupWidget-popup > .oo-ui-popupWidget-footer {
border-color: var(--ooui-interface-border);
}
.mw-echo-ui-notificationBadgeButtonPopupWidget-popup > .oo-ui-popupWidget-popup > .oo-ui-popupWidget-footer .mw-echo-ui-notificationBadgeButtonPopupWidget-footer-buttons .oo-ui-buttonElement:last-child {
border-left-color: var(--ooui-normal-border);
}
.mw-echo-ui-notificationItemWidget {
background-color: var(--ooui-normal);
border-color: var(--ooui-normal-border);
}
.mw-echo-ui-notificationItemWidget:hover,
.mw-echo-ui-notificationItemWidget-unread:hover {
background-color: var(--ooui-normal--hover);
}
.mw-echo-ui-notificationItemWidget:last-child {
border-bottom-color: var(--ooui-normal-border);
}
.mw-echo-ui-notificationItemWidget-unread {
background-color: var(--search-box);
}
.mw-echo-ui-crossWikiNotificationItemWidget-group,
.mw-echo-ui-bundleNotificationItemWidget-group {
background-color: var(--ooui-interface);
}
.mw-echo-ui-toggleReadCircleButtonWidget-circle {
background-color: var(--ooui-progressive);
}
.mw-echo-ui-toggleReadCircleButtonWidget:hover .mw-echo-ui-toggleReadCircleButtonWidget-circle {
background-color: var(--ooui-progressive--hover);
}
.mw-echo-ui-toggleReadCircleButtonWidget-circle-unread {
background-color: var(--ooui-normal);
border-color: var(--ooui-normal-border);
}
.mw-echo-ui-notificationItemWidget-content-message-header,
.mw-echo-ui-notificationItemWidget-content-message-body,
.mw-echo-ui-menuItemWidget > .oo-ui-buttonElement-button > .oo-ui-labelElement-label,
.mw-echo-ui-notificationItemWidget-content-actions-timestamp {
color: var(--ooui-text);
}
.mw-echo-ui-bundleNotificationItemWidget-group {
background-color: var(--body-main);
}
@keyframes unseen-fadeout-to-unread {
from {
background-color: var(--wikitable-bg-lighter);
}
to {
background-color: var(--search-box);
}
}
@keyframes unseen-fadeout-to-read {
from {
background-color: var(--wikitable-bg-lighter);
}
to {
background-color: var(--body-main);
}
}
.mwe-popups {
background: var(--body-light);
}
.mwe-popups .mwe-popups-container {
color: var(--text-color);
background: var(--body-light);
}
.mwe-popups .mwe-popups-container.flipped-x-y:before,
.mwe-popups .mwe-popups-container.flipped-y:before {
border-top: none;
}
.mwe-popups .mwe-popups-container.mwe-popups-no-image-tri:before {
border-bottom: none;
}
.mwe-popups .mwe-popups-container.flipped-x-y:after,
.mwe-popups .mwe-popups-container.flipped-y:after {
border-top-color: var(--body-light);
}
.mwe-popups .mwe-popups-container.mwe-popups-no-image-tri:after {
border-bottom-color: var(--body-light);
}
.mwe-popups .mwe-popups-settings-icon:hover,
.mwe-popups .mwe-popups-settings-icon:active {
background-color: var(--ooui-normal--hover);
}
.mwe-popups .mw-ui-icon-element:not(.disabled):hover {
background: none;
}
.mwe-popups .mwe-popups-extract {
color: var(--text-color);
}
.mwe-popups .mwe-popups-extract[dir='ltr']:after {
background-image: linear-gradient(to right, rgba(49, 62, 89, 0), var(--body-light) 50%);
}
.mwe-popups-overlay {
background-color: var(--ooui-window-background);
}
#mwe-popups-settings {
background: var(--ooui-interface);
border-color: var(--ooui-interface-border);
color: var(--text-color);
}
#mwe-popups-settings header {
border-color: var(--ooui-interface-border);
}
#mwe-popups-settings main#mwe-popups-settings-form p {
color: var(--byline-color);
}
#mwe-popups-settings main#mwe-popups-settings-form form label > span {
color: var(--ooui-text);
}
:root {
--smw-ask-options-even-bg: var(--body-mid);
--smw-ask-options-odd-bg: var(--body-light);
--smw-ask-action-btn-lblue-bg: var(--body-main);
--smw-ask-action-btn-lblue-color: #000;
--smw-ask-action-btn-lblue-border-color: var(--body-light);
--smw-ask-action-btn-dblue-bg: var(--body-light);
--smw-ask-action-btn-dblue-color: #fff;
--smw-ask-action-btn-dblue-border-color: var(--button-border);
}
.smw-ask-condition fieldset,
.smw-ask-printhead fieldset {
border-color: var(--sidebar);
}
.smw-ask-search fieldset,
.smw-ask-format fieldset,
.smw-ask-options fieldset {
border-color: var(--sidebar);
}
.strike > span:before,
.strike > span:after {
background: var(--sidebar);
}
.smw-ask-options-fields tr td {
background-color: var(--smw-ask-options-even-bg);
}
.smw-ask-options-fields tr:nth-child(odd) td {
background-color: var(--smw-ask-options-odd-bg);
}
.smw-ask-action-btn.smw-ask-action-btn-lblue,
.smw-ask-action-btn.smw-ask-action-btn-lblue:hover,
.smw-ask-action-btn.smw-ask-action-btn-lblue:visited {
background-color: var(--smw-ask-action-btn-lblue-bg);
color: var(--smw-ask-action-btn-lblue-color);
border-color: var(--smw-ask-action-btn-lblue-border-color);
}
.smw-ask-action-btn.smw-ask-action-btn-dblue,
.smw-ask-action-btn.smw-ask-action-btn-dblue:hover,
.smw-ask-action-btn.smw-ask-action-btn-dblue:visited {
background-color: var(--smw-ask-action-btn-dblue-bg);
color: var(--smw-ask-action-btn-dblue-color);
border-color: var(--smw-ask-action-btn-dblue-border-color);
}
.smw-ask-query textarea,
.smw-ask-actions textarea {
background-color: var(--ooui-interface);
border-color: var(--ooui-interface-border);
color: var(--ooui-text);
}
.smw-ask-query-format select {
background-color: var(--ooui-interface);
border: 1px solid var(--ooui-interface-border);
color: var(--ooui-text);
}
.smw-ask-toplinks {
background-color: var(--body-mid);
}
.smw-ask-toplinks span.smw-icon-info {
background: none;
padding: 0 !important;
}
.smw-ask-toplinks span.smw-icon-info::before {
content: '';
background: var(--text-color);
-webkit-mask: url("data:image/svg+xml,%3C%3Fxml version='1.0' encoding='UTF-8'%3F%3E%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 20 20'%3E%3Ctitle%3Einfo%3C/title%3E%3Cpath d='M10 0C4.477 0 0 4.477 0 10s4.477 10 10 10 10-4.477 10-10S15.523 0 10 0zM9 5h2v2H9zm0 4h2v6H9z'/%3E%3C/svg%3E") no-repeat 50% 50% / contain;
mask: url("data:image/svg+xml,%3C%3Fxml version='1.0' encoding='UTF-8'%3F%3E%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 20 20'%3E%3Ctitle%3Einfo%3C/title%3E%3Cpath d='M10 0C4.477 0 0 4.477 0 10s4.477 10 10 10 10-4.477 10-10S15.523 0 10 0zM9 5h2v2H9zm0 4h2v6H9z'/%3E%3C/svg%3E") no-repeat 50% 50% / contain;
padding: 0 0 3px 18px;
}
.smw-ask-options-row-odd {
background-color: var(--body-light);
}
.smw-ask-options-row-even {
background-color: var(--body-mid);
}
#options-toggle:not(:checked) + #options-list .options-parameter-list:after {
background-image: linear-gradient(to bottom, transparent, var(--body-mid) 90%);
}
.smw-ask-button-submit input {
background-color: var(--ooui-normal);
border-color: var(--ooui-normal-border);
color: var(--text-color);
}
.smw-ask-button-submit input:hover,
.smw-ask-button-lgrey:hover {
background-color: var(--ooui-normal--hover);
border-color: var(--ooui-normal-border);
}
input.smw-ask-action-btn.smw-ask-action-btn-dblue {
background-color: var(--ooui-normal);
border-color: var(--ooui-normal-border);
color: var(--ooui-text);
}
a.smw-ask-action-btn.smw-ask-action-btn-lblue {
background-color: var(--body-mid);
border-color: var(--body-mid);
color: var(--ooui-text);
}
a.smw-ask-action-btn.smw-ask-action-btn-lblue:visited {
background-color: var(--body-mid);
border-color: var(--body-mid);
color: var(--ooui-text);
}
a.smw-ask-action-btn.smw-ask-action-btn-lblue:hover {
background-color: var(--body-mid);
border-color: var(--body-mid);
color: var(--ooui-text);
}
a.smw-ask-action-btn-lgrey {
background-color: var(--ooui-normal);
border-color: var(--ooui-normal-border);
color: var(--ooui-text);
}
a.smw-ask-action-btn-lgrey:hover {
background-color: var(--ooui-normal--hover);
border-color: var(--ooui-normal-border);
color: var(--ooui-text);
}
.smw-callout-error {
background-color: var(--errorbox-bg);
border-color: var(--errorbox-border);
}
.smw-callout-info {
background-color: var(--body-light);
border-color: var(--body-dark);
}
.smw-callout-success {
background-color: var(--successbox-bg);
border-color: var(--successbox-border);
}
.smw-callout-warning {
background-color: var(--warningbox-bg);
border-color: var(--warningbox-bg);
}
.smw-tabs input.nav-tab:checked + label.nav-label,
.smw-tabs input.nav-tab:checked + label.nav-label:hover {
color: inherit;
}
#tab-smw-property-value:checked + label.nav-label .usage-count {
color: #fff;
background-color: var(--ooui-progressive);
}
#tab-smw-property-value:checked + label.nav-label .usage-count.moderate {
color: #fff;
background-color: #b55e0c;
border-color: #b55e0c;
}
#tab-smw-property-value:checked + label.nav-label .usage-count.high {
color: #fff;
background-color: #9f261e;
border-color: #9f261e;
}
.smw-property-page-results .header-title {
background-color: var(--ooui-interface);
border-bottom-color: var(--ooui-interface-border);
color: var(--ooui-text);
}
.smw-property-page-results .value-row:hover {
background-color: var(--ooui-normal--hover);
}
.smw-property-page-results .smw-table .header-row {
color: var(--text-color);
}
.tippy-tooltip.light-border-theme {
background-color: var(--body-light);
color: var(--text-color);
}
.tippy-tooltip.light-border-theme .tippy-arrow {
border-top-color: var(--body-light);
}
.tippy-tooltip.light-border-theme .tippy-arrow:after {
border-top-color: var(--body-light);
}
.tippy-header {
background-color: var(--body-dark);
border-bottom-color: var(--body-mid);
}
.smw-ui-input-filter {
background-color: var(--ooui-interface);
border-color: var(--ooui-interface-border);
color: var(--ooui-text);
}
.smw-ui-input-filter input {
border-left-color: var(--ooui-interface-border) !important;
color: var(--ooui-text) !important;
}
.smw-ui-pagination .page-link.link-disabled {
background-color: var(--ooui-disabled);
border-color: var(--ooui-disabled-border);
color: var(--subtle-color);
}
.smw-ui-pagination .page-link {
background-color: var(--ooui-normal);
border-color: var(--ooui-normal-border);
color: var(--link-color);
}
.smw-ui-pagination .page-link:hover {
background-color: var(--ooui-normal--hover);
border-color: var(--ooui-normal-border);
color: var(--link-color);
}
.smw-ui-pagination .page-link.link-active {
color: #fff;
background-color: var(--ooui-progressive);
border-color: var(--ooui-progressive);
}
.smw-tabs input.nav-tab:checked + label.nav-label {
border-color: var(--ooui-normal-border);
}
.smw-tabs section,
.smw-tabs .subtab-content {
border-top-color: var(--ooui-normal-border);
}
.smw-column-header {
color: var(--text-color);
}
.smw-factbox {
background: var(--body-main);
border-color: transparent;
}
.mw-body .mw-indicators #mw-indicator-smw-entity-examiner.mw-indicator .smw-indicator-vertical-bar-loader {
display: none;
}
.smwb-theme-light .smwb-title,
.smwb-theme-light .smwb-center,
.smwb-theme-light .smwb-actions,
.smwb-theme-light .smwb-prophead {
background-color: var(--body-mid);
}
.smwb-theme-light .smwb-factbox {
border-left-color: var(--body-mid);
}
.smwb-theme-light .smwb-ifactbox {
border-right-color: var(--body-mid);
}
.smwb-theme-light .smwb-propval {
background-color: var(--body-light);
}
.smwb-action-separator {
border-color: var(--wikitable-border);
}
.smwb-bottom {
border-bottom: 1px solid var(--wikitable-border);
}
.smwb-ifactbox .smwb-cell,
.smwb-factbox .smwb-cell {
border-top: 1px solid var(--wikitable-border);
}
.smwb-propvalue .smwb-prophead,
.smwb-ipropvalue .smwb-prophead,
.smwb-propvalue .smwb-propval,
.smwb-ipropvalue .smwb-propval {
font-size: 0.9em;
}
:root {
--filter-black-to-link: invert(36%) sepia(58%) saturate(433%) hue-rotate(344deg) brightness(100%) contrast(91%);
}
#bodyContent span.smwbrowse a {
color: black;
background-image: url('filepath://Smwbrowse.svg');
filter: var(--filter-black-to-link);
}
#bodyContent span.smwbrowse a:hover {
color: black;
background-image: url('filepath://Smwbrowse-hover.svg');
text-decoration: underline;
}
#bodyContent span.smwsearch a {
color: black;
filter: var(--filter-black-to-link);
background-image: url('filepath://Smwsearch.svg');
}
#bodyContent span.smwsearch a:hover {
color: black;
background-image: url('filepath://Smwsearch-hover.svg');
text-decoration: underline;
}
:root {
--tabber-tab-bg: var(--body-light);
--tabber-tab-border-color: var(--body-border);
--tabber-active-tab-bg: var(--body-light);
--tabber-active-tab-color: var(--text-color);
--tabber-active-tab-hover-bg: var(--body-light);
--tabber-active-tab-hover-border-color: var(--body-border);
--tabber-active-tab-hover-color: var(--text-color);
--tabber-active-tab-border-hider-color: var(--body-light);
--tabber-inactive-tab-bg: var(--body-background-color);
--tabber-inactive-tab-border-color: var(--body-border);
--tabber-inactive-tab-color: var(--text-color);
--tabber-inactive-tab-hover-bg: var(--body-light);
--tabber-inactive-tab-hover-border-color: var(--body-border);
}
.tabber {
margin: 1em 0;
}
.tabber .tabbertab {
background-color: var(--tabber-tab-bg);
border: 1px solid var(--tabber-tab-border-color);
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
padding: 1em 1.5em;
}
ul.tabbernav {
border: none;
margin-left: 2em;
margin-bottom: 0;
margin-right: 2em;
padding: 0;
font-family: inherit;
}
ul.tabbernav li.tabberactive > a {
background-color: var(--tabber-active-tab-bg);
color: var(--tabber-active-tab-color);
border-bottom: none;
position: relative;
}
ul.tabbernav li.tabberactive > a:hover {
color: var(--tabber-active-tab-hover-color);
background-color: var(--tabber-active-tab-hover-bg);
border-color: var(--tabber-active-tab-hover-border-color);
border-bottom: none;
}
ul.tabbernav li.tabberactive > a::after {
content: '';
position: absolute;
left: 0;
right: 0;
bottom: -1px;
border-bottom: 2px solid var(--tabber-active-tab-border-hider-color);
}
ul.tabbernav li a {
background-color: var(--tabber-inactive-tab-bg);
border-bottom: transparent;
border-color: var(--tabber-inactive-tab-border-color);
color: var(--tabber-inactive-tab-color);
display: inline-block;
font-size: 110%;
padding: 0.5em 1em;
}
ul.tabbernav li a:hover {
background-color: var(--tabber-inactive-tab-hover-bg);
border-color: var(--tabber-inactive-tab-hover-border-color);
}
ul.tabbernav li a:link,
ul.tabbernav li a:visited {
color: var(--tabber-inactive-tab-color);
}
:root {
--ooui-text: var(--text-color);
--ooui-interface: var(--body-light);
--ooui-interface-border: var(--body-border);
--ooui-window-background: rgba(255, 255, 255, 0.5);
--ooui-normal: #d5c7ad;
--ooui-normal--hover: #dfd5c1;
--ooui-normal-border: #b8a282;
--ooui-progressive: #605443;
--ooui-progressive--hover: #7e6e58;
--ooui-accent: var(--link-color);
--ooui-input: #fff;
--ooui-input-border: #b8a282;
--ooui-input-border--hover: #8a724f;
--ooui-disabled: #d1cdc5;
--ooui-disabled-border: #c2b9ab;
--ooui-disabled-text: var(--subtle-color);
--ooui-pending-background-image: repeating-linear-gradient(-45deg, var(--search-box), var(--search-box) 20px, var(--body-main) 20px, var(--body-main) 30px);
}
.oo-ui-widget {
color: var(--ooui-text);
}
.oo-ui-checkboxInputWidget [type='checkbox'] + span,
.oo-ui-radioInputWidget [type='radio'] + span {
background-color: var(--ooui-input);
border-color: var(--ooui-input-border);
}
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:checked + span,
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:indeterminate + span {
background-color: var(--ooui-progressive);
border-color: var(--ooui-progressive);
}
.oo-ui-radioInputWidget.oo-ui-widget-enabled [type='radio']:checked + span {
border-color: var(--ooui-progressive);
}
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:checked:hover + span,
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:indeterminate:hover + span {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
}
.oo-ui-radioInputWidget.oo-ui-widget-enabled [type='radio']:checked:hover + span {
border-color: var(--ooui-progressive--hover);
}
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:hover + span,
.oo-ui-radioInputWidget.oo-ui-widget-enabled [type='radio']:hover + span {
border-color: var(--ooui-accent);
}
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:focus + span {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:active + span,
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:checked:active + span,
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:indeterminate:active + span {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
box-shadow: inset 0 0 0 1px var(--ooui-progressive--hover);
}
.oo-ui-radioInputWidget.oo-ui-widget-enabled [type='radio']:active + span {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
}
.oo-ui-radioInputWidget.oo-ui-widget-enabled [type='radio']:checked:active + span {
border-color: var(--ooui-progressive--hover);
box-shadow: inset 0 0 0 1px var(--ooui-progressive--hover);
}
.oo-ui-radioInputWidget.oo-ui-widget-enabled [type='radio']:checked:active + span:before {
border-color: var(--ooui-progressive--hover);
}
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:checked:focus + span,
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:indeterminate:focus + span {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent), inset 0 0 0 2px #fff;
}
.oo-ui-checkboxInputWidget [type='checkbox']:disabled + span,
.oo-ui-radioInputWidget [type='radio']:disabled + span {
background-color: var(--ooui-disabled);
border-color: var(--ooui-disabled);
}
.oo-ui-dropdownWidget-handle {
border-color: var(--ooui-normal-border);
}
.oo-ui-dropdownWidget.oo-ui-widget-enabled .oo-ui-dropdownWidget-handle {
background-color: var(--ooui-normal);
color: var(--ooui-text);
}
.oo-ui-dropdownWidget.oo-ui-widget-enabled .oo-ui-dropdownWidget-handle:hover {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
}
.oo-ui-dropdownWidget.oo-ui-widget-enabled .oo-ui-dropdownWidget-handle:active {
color: var(--ooui-text);
}
.oo-ui-dropdownWidget.oo-ui-widget-enabled .oo-ui-dropdownWidget-handle:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-dropdownWidget.oo-ui-widget-enabled.oo-ui-dropdownWidget-open .oo-ui-dropdownWidget-handle {
background-color: var(--ooui-normal--hover);
}
.oo-ui-dropdownWidget.oo-ui-widget-disabled .oo-ui-dropdownWidget-handle {
color: var(--ooui-disabled-text);
text-shadow: none;
border-color: var(--ooui-disabled-border);
background-color: var(--ooui-disabled);
}
.oo-ui-dropdownInputWidget select {
border-color: var(--ooui-normal-border);
}
.oo-ui-dropdownInputWidget option {
background-color: var(--ooui-interface);
}
.oo-ui-dropdownInputWidget.oo-ui-widget-enabled {
background-color: var(--ooui-normal);
}
.oo-ui-dropdownInputWidget.oo-ui-widget-enabled:hover {
background-color: var(--ooui-normal--hover);
}
.oo-ui-dropdownInputWidget.oo-ui-widget-enabled select {
color: var(--ooui-text);
}
.oo-ui-dropdownInputWidget.oo-ui-widget-enabled select:hover,
.oo-ui-dropdownInputWidget.oo-ui-widget-enabled select:active {
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
}
.oo-ui-dropdownInputWidget.oo-ui-widget-enabled select:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-labelWidget.oo-ui-inline-help {
color: var(--byline-color);
}
.oo-ui-menuSelectWidget {
background-color: var(--ooui-interface);
border-color: var(--ooui-interface-border);
}
.oo-ui-menuSelectWidget-frameless {
box-shadow: inset 0 -1px 0 0 var(--ooui-normal-border);
}
.oo-ui-menuSectionOptionWidget {
color: var(--byline-color);
}
.oo-ui-menuOptionWidget.oo-ui-optionWidget-highlighted,
.oo-ui-menuOptionWidget.oo-ui-optionWidget-selected {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
}
.oo-ui-menuOptionWidget.oo-ui-optionWidget-selected.oo-ui-menuOptionWidget.oo-ui-optionWidget-highlighted,
.oo-ui-menuOptionWidget.oo-ui-optionWidget-pressed.oo-ui-menuOptionWidget.oo-ui-optionWidget-highlighted {
color: var(--ooui-accent);
}
.oo-ui-menuOptionWidget.oo-ui-widget-enabled.oo-ui-optionWidget {
color: var(--ooui-text);
}
.oo-ui-messageDialog-title {
color: inherit;
}
.oo-ui-messageWidget.oo-ui-messageWidget-block.oo-ui-flaggedElement-error {
background-color: var(--errorbox-bg);
border-color: var(--errorbox-border);
}
.oo-ui-messageWidget.oo-ui-messageWidget-block.oo-ui-flaggedElement-warning {
background-color: var(--warningbox-bg);
border-color: var(--warningbox-border);
}
.oo-ui-messageWidget.oo-ui-messageWidget-block.oo-ui-flaggedElement-success {
background-color: var(--successbox-bg);
border-color: var(--successbox-border);
}
.oo-ui-messageWidget.oo-ui-messageWidget-block.oo-ui-flaggedElement-notice {
background-color: var(--messagebox-info-background);
border-color: var(--messagebox-info-border);
}
.oo-ui-messageWidget.oo-ui-flaggedElement-error:not(.oo-ui-messageWidget-block),
.oo-ui-messageWidget.oo-ui-flaggedElement-success:not(.oo-ui-messageWidget-block) {
color: var(--ooui-text);
}
.oo-ui-optionWidget.oo-ui-widget-disabled {
color: var(--ooui-disabled-text);
}
.oo-ui-outlineControlsWidget {
background-color: var(--ooui-normal);
}
.oo-ui-outlineOptionWidget.oo-ui-optionWidget-highlighted {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
}
.oo-ui-popupWidget-popup {
background-color: var(--ooui-interface);
border-color: var(--ooui-interface-border);
}
.oo-ui-popupWidget-anchored-top .oo-ui-popupWidget-anchor:after {
border-bottom-color: var(--ooui-interface);
}
.oo-ui-popupWidget-anchored-top .oo-ui-popupWidget-anchor:before {
border-bottom-color: var(--ooui-interface-border);
}
.oo-ui-popupWidget-anchored-bottom .oo-ui-popupWidget-anchor:after {
border-top-color: var(--ooui-interface);
}
.oo-ui-popupWidget-anchored-bottom .oo-ui-popupWidget-anchor:before {
border-top-color: var(--ooui-interface-border);
}
.oo-ui-popupWidget-anchored-start .oo-ui-popupWidget-anchor:after {
border-right-color: var(--ooui-interface);
}
.oo-ui-popupWidget-anchored-start .oo-ui-popupWidget-anchor:before {
border-right-color: var(--ooui-interface-border);
}
.oo-ui-popupWidget-anchored-end .oo-ui-popupWidget-anchor:after {
border-left-color: var(--ooui-interface);
}
.oo-ui-popupWidget-anchored-end .oo-ui-popupWidget-anchor:before {
border-left-color: var(--ooui-interface-border);
}
.oo-ui-searchWidget-query {
border-bottom-color: var(--ooui-interface-border);
}
.oo-ui-selectFileWidget-dropTarget {
background-color: var(--ooui-interface);
border-color: var(--ooui-interface-border);
}
.oo-ui-selectFileWidget.oo-ui-widget-enabled.oo-ui-selectFileWidget-dropTarget {
background-color: var(--ooui-interface);
}
.oo-ui-selectFileWidget.oo-ui-widget-enabled.oo-ui-selectFileWidget-dropTarget:hover {
border-color: var(--ooui-input-border--hover);
}
.oo-ui-tabOptionWidget {
color: var(--ooui-text);
}
.oo-ui-tabSelectWidget-framed .oo-ui-tabOptionWidget.oo-ui-optionWidget-selected {
background-color: var(--body-dark);
color: var(--ooui-text);
}
.oo-ui-tabSelectWidget-framed .oo-ui-tabOptionWidget.oo-ui-optionWidget-selected .oo-ui-labelElement-label {
border-bottom-color: var(--body-border);
}
.oo-ui-tabSelectWidget-framed .oo-ui-tabOptionWidget.oo-ui-widget-enabled:hover,
.oo-ui-tabSelectWidget-framed .oo-ui-tabOptionWidget.oo-ui-widget-enabled:active {
background-color: var(--body-light);
color: var(--ooui-text);
}
.oo-ui-tabSelectWidget-framed .oo-ui-tabOptionWidget.oo-ui-widget-enabled.oo-ui-optionWidget-selected:hover {
background-color: var(--body-dark);
}
.oo-ui-tabSelectWidget-frameless .oo-ui-tabOptionWidget.oo-ui-optionWidget-selected {
color: var(--ooui-progressive);
box-shadow: inset 0 -2px 0 0 var(--ooui-progressive);
}
.oo-ui-tabSelectWidget-frameless .oo-ui-tabOptionWidget.oo-ui-optionWidget-selected:hover,
.oo-ui-tabSelectWidget-frameless .oo-ui-tabOptionWidget.oo-ui-optionWidget-selected:focus {
color: var(--ooui-progressive--hover);
box-shadow: inset 0 -2px 0 0 var(--ooui-progressive--hover);
}
.oo-ui-tabSelectWidget-framed {
background: none;
border-bottom: 1px solid var(--ooui-interface-border);
}
.oo-ui-tabSelectWidget-frameless {
box-shadow: inset 0 -1px 0 0 var(--ooui-interface-border);
}
.oo-ui-tabSelectWidget-mobile {
}
.oo-ui-tabSelectWidget-mobile.oo-ui-tabSelectWidget-framed:after {
background: var(--mobile-navbox-linear-gradient);
}
.oo-ui-tabSelectWidget-mobile.oo-ui-tabSelectWidget-frameless:after {
background: var(--mobile-navbox-linear-gradient);
}
.oo-ui-tagItemWidget {
border-color: var(--ooui-normal-border);
}
.oo-ui-tagItemWidget.oo-ui-widget-enabled {
color: var(--ooui-text);
}
.oo-ui-tagItemWidget.oo-ui-widget-enabled:hover {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
}
.oo-ui-tagItemWidget.oo-ui-widget-enabled:not( .oo-ui-tagItemWidget-fixed ) {
background-color: var(--ooui-normal);
}
.oo-ui-tagItemWidget.oo-ui-widget-enabled .oo-ui-buttonElement-button:hover {
background-color: var(--ooui-normal--hover);
}
.oo-ui-tagMultiselectWidget.oo-ui-widget-enabled {
background-color: var(--ooui-interface);
}
.oo-ui-tagMultiselectWidget.oo-ui-widget-enabled.oo-ui-tagMultiselectWidget-outlined {
background-color: var(--ooui-normal);
}
.oo-ui-tagMultiselectWidget.oo-ui-widget-enabled.oo-ui-tagMultiselectWidget-outlined .oo-ui-tagItemWidget.oo-ui-widget-enabled {
background-color: var(--ooui-interface);
}
.oo-ui-textInputWidget .oo-ui-inputWidget-input {
background-color: var(--ooui-input);
color: var(--ooui-text);
border-color: var(--ooui-input-border);
}
.oo-ui-textInputWidget.oo-ui-widget-enabled .oo-ui-inputWidget-input::placeholder {
color: var(--subtle-color);
}
.oo-ui-textInputWidget.oo-ui-widget-enabled .oo-ui-inputWidget-input:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-textInputWidget.oo-ui-widget-enabled .oo-ui-inputWidget-input[readonly]:not(.oo-ui-pendingElement-pending) {
background-color: var(--ooui-disabled);
color: var(--ooui-disabled-text);
}
.oo-ui-textInputWidget.oo-ui-widget-enabled:hover .oo-ui-inputWidget-input {
border-color: var(--ooui-input-border--hover);
}
.oo-ui-textInputWidget.oo-ui-widget-enabled:hover .oo-ui-inputWidget-input:focus {
border-color: var(--ooui-accent);
}
@media screen and (min-width: 0) {
.oo-ui-textInputWidget.oo-ui-widget-enabled textarea.oo-ui-inputWidget-input:focus {
outline: 1px solid var(--ooui-accent);
}
}
.oo-ui-textInputWidget.oo-ui-widget-disabled .oo-ui-inputWidget-input {
background-color: var(--ooui-disabled);
color: var(--ooui-disabled-text);
text-shadow: none;
border-color: var(--ooui-disabled-border);
}
.oo-ui-toggleSwitchWidget {
background-color: var(--ooui-input);
border-color: var(--ooui-input-border);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled .oo-ui-toggleSwitchWidget-grip {
background-color: var(--ooui-input);
border-color: var(--ooui-input-border);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:hover {
background-color: var(--ooui-input);
border-color: var(--ooui-accent);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:hover .oo-ui-toggleSwitchWidget-grip {
background-color: var(--ooui-input);
border-color: var(--ooui-accent);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:active,
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:active:hover,
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:active:focus {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
box-shadow: inset 0 0 0 1px var(--ooui-progressive--hover);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:active .oo-ui-toggleSwitchWidget-grip,
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:active:hover .oo-ui-toggleSwitchWidget-grip,
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:active:focus .oo-ui-toggleSwitchWidget-grip {
background-color: var(--ooui-input);
border-color: var(--ooui-input);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:focus .oo-ui-toggleSwitchWidget-grip {
border-color: var(--ooui-accent);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled.oo-ui-toggleWidget-on {
background-color: var(--ooui-progressive);
border-color: var(--ooui-progressive);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled.oo-ui-toggleWidget-on .oo-ui-toggleSwitchWidget-grip {
background-color: var(--ooui-input);
border-color: var(--ooui-input);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled.oo-ui-toggleWidget-on:hover {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled.oo-ui-toggleWidget-on:active,
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled.oo-ui-toggleWidget-on:active:hover {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled.oo-ui-toggleWidget-on:focus {
border-color: var(--ooui-progressive);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled.oo-ui-toggleWidget-on:focus::before {
border-color: #fff;
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-disabled {
background-color: var(--ooui-disabled);
border-color: var(--ooui-disabled);
}
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled > .oo-ui-buttonElement-button {
color: var(--ooui-text);
}
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled > .oo-ui-buttonElement-button:hover {
color: var(--ooui-text);
}
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled > .oo-ui-buttonElement-button:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled.oo-ui-buttonElement-pressed > input.oo-ui-buttonElement-button,
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled > .oo-ui-buttonElement-button:active {
color: var(--ooui-text);
}
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button,
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button:hover {
color: var(--ooui-text);
}
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button:active,
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive.oo-ui-buttonElement-pressed > .oo-ui-buttonElement-button {
color: var(--ooui-text);
border-color: var(--ooui-text);
}
.oo-ui-buttonElement-frameless.oo-ui-widget-disabled > .oo-ui-buttonElement-button {
color: var(--ooui-disabled-text);
}
.oo-ui-buttonElement-framed.oo-ui-widget-disabled > .oo-ui-buttonElement-button {
background-color: var(--ooui-disabled);
border-color: var(--ooui-disabled-border);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled > .oo-ui-buttonElement-button {
background-color: var(--ooui-normal);
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled > .oo-ui-buttonElement-button:hover {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled > .oo-ui-buttonElement-button:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-buttonElement-active > .oo-ui-buttonElement-button {
background-color: var(--ooui-progressive--hover);
color: #fff;
border-color: var(--ooui-progressive--hover);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-buttonElement-active > .oo-ui-buttonElement-button:focus {
border-color: var(--ooui-progressive--hover);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled > .oo-ui-buttonElement-button:active,
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-buttonElement-pressed > .oo-ui-buttonElement-button {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive {
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button {
color: var(--ooui-text);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button:hover {
background-color: var(--ooui-normal--hover);
border-color: var(--ooui-progressive--hover);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-destructive > .oo-ui-buttonElement-button {
color: var(--ooui-text);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-destructive > .oo-ui-buttonElement-button:hover {
background-color: var(--ooui-normal--hover);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button {
background-color: var(--ooui-progressive);
border-color: var(--ooui-progressive);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button:hover {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent), inset 0 0 0 2px #fff;
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button:active,
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive.oo-ui-buttonElement-pressed > .oo-ui-buttonElement-button,
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive.oo-ui-buttonElement-active > .oo-ui-buttonElement-button,
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive.oo-ui-popupToolGroup-active > .oo-ui-buttonElement-button {
color: #fff;
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
}
.oo-ui-pendingElement-pending {
background-image: var(--ooui-pending-background-image);
background-size: 200%;
animation: oo-ui-pendingElement-stripes 6s linear infinite;
}
@keyframes oo-ui-pendingElement-stripes {
100% {
background-position: 100%;
}
}
.oo-ui-messageDialog-content > .oo-ui-window-foot {
outline-color: var(--ooui-interface-border);
}
.oo-ui-messageDialog-message {
color: var(--ooui-text);
}
.oo-ui-messageDialog-actions-horizontal .oo-ui-actionWidget {
border-right-color: var(--ooui-interface-border);
}
.oo-ui-messageDialog-actions-vertical .oo-ui-actionWidget {
border-bottom-color: var(--ooui-interface-border);
}
.oo-ui-processDialog-content .oo-ui-window-head,
.oo-ui-processDialog-content .oo-ui-window-foot {
outline-color: var(--ooui-interface-border);
}
.oo-ui-processDialog .oo-ui-actionWidget > .oo-ui-buttonElement-button {
border-top-color: transparent;
border-bottom-color: transparent;
}
.oo-ui-processDialog .oo-ui-actionWidget > .oo-ui-buttonElement-button:hover,
.oo-ui-processDialog .oo-ui-actionWidget > .oo-ui-buttonElement-button:active {
border-top-color: transparent;
border-bottom-color: transparent;
}
.oo-ui-processDialog .oo-ui-actionWidget:not( .oo-ui-flaggedElement-progressive ):not( .oo-ui-flaggedElement-destructive ) > .oo-ui-buttonElement-button:hover,
.oo-ui-processDialog .oo-ui-actionWidget:not( .oo-ui-flaggedElement-progressive ):not( .oo-ui-flaggedElement-destructive ) > .oo-ui-buttonElement-button:active {
border-right-color: var(--ooui-interface-border);
border-left-color: transparent;
}
.oo-ui-processDialog .oo-ui-actionWidget:not( .oo-ui-flaggedElement-progressive ):not( .oo-ui-flaggedElement-destructive ) > .oo-ui-buttonElement-button:focus {
border-color: var(--ooui-accent);
}
.oo-ui-processDialog-actions-safe .oo-ui-actionWidget > .oo-ui-buttonElement-button,
.oo-ui-processDialog-actions-other .oo-ui-actionWidget > .oo-ui-buttonElement-button {
border-right-color: var(--ooui-normal-border);
border-left-color: transparent;
}
.oo-ui-processDialog-actions-safe .oo-ui-widget-enabled.oo-ui-iconElement:not( .oo-ui-labelElement ) > .oo-ui-buttonElement-button:hover {
background-color: var(--ooui-normal--hover);
border-right-color: var(--ooui-interface-border);
}
.oo-ui-windowManager-modal > .oo-ui-dialog {
background-color: var(--ooui-window-background);
}
.oo-ui-windowManager-modal > .oo-ui-dialog > .oo-ui-window-frame {
background-color: var(--ooui-interface);
}
.oo-ui-windowManager-modal.oo-ui-windowManager-floating > .oo-ui-dialog > .oo-ui-window-frame {
border-color: var(--ooui-interface-border);
}
.oo-ui-window {
color: var(--ooui-text);
}
.oo-ui-toolbar-bar {
background-color: var(--ooui-interface);
color: var(--ooui-text);
}
.oo-ui-toolbar-position-top > .oo-ui-toolbar-bar {
border-bottom-color: var(--body-mid);
}
.oo-ui-toolbar-bar .oo-ui-bookletLayout > .oo-ui-menuLayout-menu {
border-right-color: var(--body-mid);
}
.oo-ui-tool.oo-ui-widget-enabled > .oo-ui-tool-link:hover {
background-color: var(--ooui-normal--hover);
}
.oo-ui-tool.oo-ui-widget-enabled > .oo-ui-tool-link:focus {
outline: 1px solid var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-tool.oo-ui-widget-enabled > .oo-ui-tool-link:active,
.oo-ui-tool.oo-ui-widget-enabled.oo-ui-tool-active > .oo-ui-tool-link,
.oo-ui-tool.oo-ui-widget-enabled.oo-ui-popupToolGroup-active > .oo-ui-tool-link {
background-color: var(--ooui-normal--hover);
color: var(--ooui-accent);
box-shadow: none;
}
.oo-ui-tool.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive > .oo-ui-tool-link {
background-color: var(--ooui-progressive);
}
.oo-ui-tool.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive > .oo-ui-tool-link:hover {
background-color: var(--ooui-progressive--hover);
}
.oo-ui-tool.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive > .oo-ui-tool-link:focus {
box-shadow: inset 0 0 0 1px var(--ooui-accent), inset 0 0 0 2px #fff;
}
.oo-ui-tool.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive > .oo-ui-tool-link:active,
.oo-ui-tool.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive.oo-ui-tool-active > .oo-ui-tool-link {
background-color: var(--ooui-progressive--hover);
}
.oo-ui-listToolGroup-tools .oo-ui-tool.oo-ui-widget-enabled {
background-color: var(--ooui-normal);
}
.oo-ui-listToolGroup-tools .oo-ui-tool.oo-ui-widget-enabled:hover {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
}
.oo-ui-listToolGroup-tools .oo-ui-tool-active.oo-ui-widget-enabled .oo-ui-tool-link .oo-ui-tool-title {
color: var(--ooui-progressive);
}
.oo-ui-menuToolGroup {
border-left-color: var(--body-mid);
border-right-color: var(--body-mid);
}
.oo-ui-popupToolGroup-tools {
background-color: var(--ooui-interface);
border-color: var(--body-mid);
}
.oo-ui-popupToolGroup.oo-ui-widget-enabled > .oo-ui-popupToolGroup-handle:hover {
background-color: var(--ooui-normal--hover);
}
.oo-ui-popupToolGroup.oo-ui-widget-enabled > .oo-ui-popupToolGroup-handle:focus {
outline: 1px solid var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-toolbar-actions .oo-ui-popupToolGroup.oo-ui-widget-enabled > .oo-ui-popupToolGroup-handle:hover {
border-right-color: var(--ooui-normal--hover);
}
.oo-ui-popupToolGroup-tools .oo-ui-tool.oo-ui-widget-enabled .oo-ui-tool-link:focus {
box-shadow: inset 0 0 0 2px var(--ooui-accent);
}
.oo-ui-popupToolGroup-tools .oo-ui-tool-active.oo-ui-widget-enabled .oo-ui-tool-link .oo-ui-tool-title {
color: var(--ooui-progressive);
}
.oo-ui-popupToolGroup.oo-ui-popupToolGroup-active > .oo-ui-popupToolGroup-handle {
background-color: var(--ooui-normal);
color: var(--ooui-accent);
}
.oo-ui-popupToolGroup.oo-ui-popupToolGroup-active > .oo-ui-popupToolGroup-handle:hover {
background-color: var(--ooui-normal--hover);
color: var(--ooui-accent);
}
.oo-ui-bookletLayout-outlinePanel > .oo-ui-outlineControlsWidget {
border-top-color: var(--ooui-interface-border);
}
.oo-ui-bookletLayout > .oo-ui-menuLayout-menu {
border-right-color: var(--ooui-interface-border);
}
.oo-ui-fieldLayout-disabled > .oo-ui-fieldLayout-body > .oo-ui-fieldLayout-header > .oo-ui-labelElement-label {
color: var(--ooui-disabled-text);
}
.oo-ui-panelLayout-framed {
border-color: var(--sidebar);
}
.oo-ui-icon-settings {
background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' width='20' height='20' viewBox='0 0 20 20'%3E%3Ctitle%3Esettings%3C/title%3E%3Cg transform='translate(10 10)'%3E%3Cpath id='a' d='M1.5-10h-3l-1 6.5h5m0 7h-5l1 6.5h3'/%3E%3Cuse xlink:href='%23a' transform='rotate(45)'/%3E%3Cuse xlink:href='%23a' transform='rotate(90)'/%3E%3Cuse xlink:href='%23a' transform='rotate(135)'/%3E%3C/g%3E%3Cpath d='M10 2.5a7.5 7.5 0 0 0 0 15 7.5 7.5 0 0 0 0-15v4a3.5 3.5 0 0 1 0 7 3.5 3.5 0 0 1 0-7'/%3E%3C/svg%3E");
}
.oo-ui-icon-clear {
background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 20 20'%3E%3Ctitle%3Eclear%3C/title%3E%3Cpath d='M10 0a10 10 0 1 0 10 10A10 10 0 0 0 10 0zm5.66 14.24-1.41 1.41L10 11.41l-4.24 4.25-1.42-1.42L8.59 10 4.34 5.76l1.42-1.42L10 8.59l4.24-4.24 1.41 1.41L11.41 10z'/%3E%3C/svg%3E");
}
.mw-widget-dateInputWidget-handle {
background-color: var(--ooui-input);
color: var(--ooui-text);
border-color: var(--ooui-input-border);
}
.mw-widget-dateInputWidget-calendar {
background-color: var(--ooui-interface);
}
.mw-widget-dateInputWidget.oo-ui-widget-enabled .mw-widget-dateInputWidget-handle:hover {
border-color: var(--ooui-input-border--hover);
}
.mw-widget-calendarWidget {
border-color: var(--ooui-interface-border);
}
.mw-widget-calendarWidget:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.mw-widget-calendarWidget-day,
.mw-widget-calendarWidget-day-heading {
color: var(--ooui-text);
}
.mw-widget-calendarWidget-day-additional {
color: var(--ooui-text);
opacity: 0.67;
}
.mw-widget-calendarWidget-day-today {
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.mw-widget-calendarWidget-item:hover {
background-color: var(--ooui-progressive);
}
.mw-widget-calendarWidget-item-selected {
background-color: var(--ooui-progressive--hover);
}
.mw-widgets-datetime-calendarWidget {
background-color: var(--ooui-interface);
border-color: var(--ooui-interface-border);
}
.mw-widgets-datetime-calendarWidget:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent), 0 2px 2px 0 rgba(0, 0, 0, 0.25);
}
.mw-widgets-datetime-calendarWidget-grid .mw-widgets-datetime-calendarWidget-cell.mw-widgets-datetime-calendarWidget-extra .oo-ui-buttonElement-button .oo-ui-labelElement-label {
color: var(--subtle-color);
}
.mw-widgets-datetime-calendarWidget-grid .mw-widgets-datetime-calendarWidget-cell.mw-widgets-datetime-calendarWidget-selected .oo-ui-buttonElement-button {
background-color: var(--ooui-progressive--hover);
}
.mw-widgets-datetime-dateTimeInputWidget-handle {
background-color: var(--ooui-input);
color: var(--ooui-text);
border-color: var(--ooui-input-border);
}
.mw-widgets-datetime-dateTimeInputWidget.oo-ui-widget-enabled.mw-widgets-datetime-dateTimeInputWidget-handle:hover {
border-color: var(--ooui-input-border--hover);
}
.mw-widgets-datetime-dateTimeInputWidget.oo-ui-widget-enabled:hover input,
.mw-widgets-datetime-dateTimeInputWidget.oo-ui-widget-enabled:hover textarea {
border-color: var(--ooui-input-border--hover);
}
.mw-widgets-datetime-dateTimeInputWidget.oo-ui-widget-enabled .mw-widgets-datetime-dateTimeInputWidget-editField:hover {
background-color: var(--ooui-normal);
}
.ve-activated .ve-init-mw-desktopArticleTarget-originalContent #catlinks:hover {
background: var(--ooui-normal--hover);
}
.ve-ui-overlay {
font-family: inherit;
}
.oo-ui-toolbar-position-top .ve-ui-toolbarDialog-position-above {
border-top-color: var(--body-mid);
}
.ve-ce-branchNode-blockSlug,
.ve-ce-branchNode-newSlug {
outline-color: var(--body-border);
background-color: var(--ooui-interface);
}
.ve-ui-specialCharacterPage h3 {
color: var(--byline-color);
}
.ve-ui-specialCharacterPage-character {
border-color: var(--body-mid);
}
.ve-ui-specialCharacterPage-character:hover {
border-color: var(--body-dark);
}
.ve-ce-linkAnnotation.ve-ce-annotation-active {
box-shadow: 0 0 0 1px var(--body-mid);
background: none;
}
.ve-ui-desktopContext .ve-ui-linkContextItem .ve-ui-linkContextItem-label {
border-color: var(--body-border);
}
.ve-ui-mwHelpPopupTool-version-label,
.ve-ui-mwHelpPopupTool-version-link,
.ve-ui-mwHelpPopupTool-version-date {
color: var(--byline-color);
}
.ve-ce-tableCellableNode {
border-color: var(--body-mid);
}
.ve-ce-mwReferencesListNode-muted {
color: var(--byline-color);
}
.ve-ui-mwTemplatePage-description,
.ve-ui-mwParameterPage-label,
.ve-ui-mwParameterPage-description-required,
.ve-ui-mwParameterPage-description-deprecated {
color: var(--byline-color);
}
.mw-widget-titleWidget-menu .mw-widget-titleOptionWidget-description {
color: var(--byline-color);
}
.ve-ui-mwGalleryDialog-menuLayout > .oo-ui-menuLayout-menu,
.ve-ui-mwGalleryDialog-innerMenuLayout > .oo-ui-menuLayout-menu,
.ve-ui-mwGalleryDialog .ve-ui-mwGalleryDialog-image-container,
.ve-ui-targetWidget {
border-color: var(--body-border);
}
.ve-ui-targetWidget:not(.oo-ui-pendingElement-pending) {
background-color: var(--body-main);
}
.ve-ui-mwSaveDialog {
color: var(--ooui-text);
}
.ve-ui-mwSaveDialog-options {
background-color: var(--ooui-interface);
border-color: var(--body-border);
}
.ve-ui-mwSaveDialog-summary {
background-color: var(--ooui-input);
}
.ve-ui-mwSaveDialog-editSummary-count {
border-color: var(--body-border);
}
.ve-ui-mwSaveDialog-license {
color: var(--byline-color);
}
.ve-ui-mwReferenceContextItem-muted {
color: var(--byline-color);
}
.ve-ui-mwNoticesPopupTool-items > div:not(:first-child),
.ve-ui-mwHelpPopupTool-item:not(:first-child) {
border-color: var(--body-border);
}
.ve-ui-mwTransclusionOutlineControlsWidget {
background-color: var(--ooui-interface);
border-top-color: var(--body-border);
}
.ve-ui-mwTransclusionOutlineTemplateWidget-sticky {
background-color: var(--ooui-interface);
}
.ve-ui-mwTransclusionOutlineTemplateWidget .ve-ui-mwTransclusionOutlineParameterWidget.oo-ui-optionWidget-highlighted {
color: var(--ooui-text);
}
.ve-ui-mwTransclusionOutlineTemplateWidget-no-template-parameters {
color: var(--subtle-color);
}
.ve-ui-mwParameterPage-undocumentedLabel {
color: var(--subtle-color);
}
.ve-ui-mwTwoPaneTransclusionDialogLayout > .oo-ui-menuLayout-menu {
border-right: var(--body-border);
}
.ve-ui-mwParameterPage-doc-required,
.ve-ui-mwParameterPage-doc-deprecated,
.ve-ui-mwParameterPage-inlineDescription .ve-ui-mwParameterPage-doc-example {
color: var(--byline-color);
}
.ve-ui-expandableContent-toggle {
background-color: var(--ooui-interface);
}
.ve-ui-expandableContent-fade {
background: linear-gradient(to right, rgba(255, 255, 255, 0) 0, var(--ooui-interface) 90%);
}
.ve-ui-commandHelpDialog-shortcut > kbd,
.ve-ui-commandHelpDialog-sequence > kbd {
background-color: var(--keypress-background);
color: var(--keypress-color);
border-color: var(--keypress-border);
box-shadow: none;
text-shadow: none;
}
.ve-init-mw-desktopArticleTarget-toolbarPlaceholder-floating .ve-init-mw-desktopArticleTarget-toolbarPlaceholder-bar {
background: var(--ooui-interface);
}
.ve-init-mw-desktopArticleTarget-toolbarPlaceholder-bar {
border-bottom-color: var(--body-mid);
}
figure[typeof~='mw:File/Thumb'],
figure[typeof~='mw:File/Frame'],
figure[typeof~='mw:Image/Thumb'],
figure[typeof~='mw:Video/Thumb'],
figure[typeof~='mw:Image/Frame'],
figure[typeof~='mw:Video/Frame'] {
border: none;
background-color: var(--thumb-bg);
}
figure[typeof~='mw:File/Thumb'] > a:first-child > *:first-child:not( .mw-broken-media ),
figure[typeof~='mw:File/Frame'] > a:first-child > *:first-child:not( .mw-broken-media ),
figure[typeof~='mw:Image/Thumb'] > a:first-child > *:first-child:not( .mw-broken-media ),
figure[typeof~='mw:Video/Thumb'] > a:first-child > *:first-child:not( .mw-broken-media ),
figure[typeof~='mw:Image/Frame'] > a:first-child > *:first-child:not( .mw-broken-media ),
figure[typeof~='mw:Video/Frame'] > a:first-child > *:first-child:not( .mw-broken-media ) {
border: none;
background: var(--thumb-bg);
}
figure[typeof~='mw:File/Thumb'] > figcaption,
figure[typeof~='mw:File/Frame'] > figcaption,
figure[typeof~='mw:Image/Thumb'] > figcaption,
figure[typeof~='mw:Video/Thumb'] > figcaption,
figure[typeof~='mw:Image/Frame'] > figcaption,
figure[typeof~='mw:Video/Frame'] > figcaption {
border: none;
background-color: var(--thumb-caption-bg);
padding: 4px 6px;
}
:root {
--infobox-text-color: var(--text-color);
}
ol.references,
.reflist {
font-size: 90%;
}
.reflist {
list-style-type: decimal;
}
.reflist .references {
font-size: 100%;
list-style-type: inherit;
}
.reflist-lower-alpha {
list-style-type: lower-alpha;
}
ol.references li:target,
sup.reference:target {
background-color: var(--body-light);
}
.hideQuotes .refhide {
display: none;
}
:root {
--byline-arrow-filter: invert(29%) sepia(0%) saturate(376%) hue-rotate(172deg) brightness(87%) contrast(80%);
--tile-border-color: #cabe9b;
--tile-background-color: #f9f3eb;
--tile-link-button-color: #f5e9db;
--tile-link-button-highlight-color: #dfccb0;
--tile-dark-color: #fff;
--tile-dark-bg: #5d6773;
--tile-dark-link-color: #ccc;
--tile-dark-byline-color: rgba(255, 255, 255, 0.7);
--tile-dark-header-color: #fff;
}
.tile {
background: var(--tile-background-color);
border: 1px solid var(--tile-border-color);
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
padding: 1.5em 2em 1em;
max-width: 40em;
}
.tile h2 {
font-size: 1.4em;
font-weight: bold;
border: none;
margin: 0 0 0.4em;
}
.tile .byline + h2 {
margin-top: -0.5em;
}
.tile.dark {
color: var(--tile-dark-color);
background: var(--tile-dark-bg);
border: none;
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.3);
}
.tile.dark h2 {
color: var(--tile-dark-header-color);
}
.tile.dark a {
color: var(--tile-dark-link-color);
}
.tile.dark .byline {
color: var(--tile-dark-byline-color);
}
.byline {
font-size: 0.9em;
color: var(--byline-color);
}
.byline a {
color: var(--byline-color);
}
.tile-row {
display: flex;
flex-flow: row wrap;
margin-bottom: 1em;
}
.tile-halves {
display: flex;
flex-flow: row wrap;
border: 1px solid var(--tile-border-color);
background: var(--tile-background-color);
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
}
.tile-halves h2 {
font-size: 1.4em;
font-weight: bold;
border: none;
margin: 0 0 0.4em;
}
.tile-halves .byline + h2 {
margin-top: -0.5em;
}
.tile-top {
width: 100%;
padding: 1.3rem 1.5rem 0.6rem;
}
.tile-top.tile-image {
display: flex;
align-items: center;
background-color: var(--byline-color);
overflow: hidden;
padding: 0;
height: 13vw;
max-height: 12em;
transition: 0.4s ease-out;
}
.tile-halves:hover .tile-top.tile-image img {
transform: scale(1.1);
transition: 0.5s ease-out;
}
.tile-top.tile-image a {
width: 100%;
}
.tile-top.tile-image img {
width: 100%;
object-fit: cover;
max-height: 200px;
transition: 0.4s ease-out;
}
.tile-bottom {
background: var(--tile-background-color);
border-top: 1px solid var(--tile-border-color);
width: 100%;
padding: 1rem 1.5rem 0.6rem;
}
.tile-bottom.link-button {
align-self: flex-end;
padding: 0;
}
.tile-bottom.link-button a {
display: block;
text-align: center;
padding: 0.75em 1.5em 0.8em;
text-decoration: none;
}
.tile-bottom.read-more {
background: var(--tile-link-button-color);
transition: 0.3s ease-out;
}
.tile-bottom.read-more a {
color: var(--byline-color);
font-weight: bold;
text-align: right;
}
.tile-bottom.read-more:hover {
background: var(--tile-link-button-highlight-color);
}
.tile-bottom.read-more:hover .arrow {
transform: translateX(50%);
}
.tile-bottom.read-more .arrow {
filter: var(--byline-arrow-filter);
margin-left: 0.4em;
transition: 0.3s ease-out;
}
body.page-Main_Page .mw-parser-output {
max-width: 75em;
margin: 0 auto;
}
body.page-Main_Page.action-view .catlinks,
body.page-Main_Page.action-view #contentSub,
body.page-Main_Page.action-view #siteNotice {
display: none;
}
.mainpage-header {
display: flex;
margin: 2.6em 1.75em 1.5em;
}
.mainpage-header .header-intro {
flex: 2;
}
.mainpage-header .header-intro h1 {
font-size: 2.5em;
font-weight: bold;
border: none;
margin: 0 0 0.15em;
}
.mainpage-header .header-intro p {
font-size: 1.1em;
line-height: 1.7em;
}
.mainpage-header .header-stats {
flex: 1;
display: flex;
justify-content: center;
align-items: center;
margin-top: -1em;
}
.mainpage-body {
display: grid;
grid-template-areas: "event event event" "update update update" "content content content" "left left right";
gap: 0.9rem;
grid-template-columns: repeat(3, 1fr);
}
.mainpage-body h2 a {
color: var(--text-color);
}
.mainpage-body .tile {
padding-left: 1.75em;
padding-right: 1.75em;
max-width: 100%;
}
.mainpage-body .tile-row {
width: 100%;
margin-bottom: 0;
}
.mainpage-body .tile-row {
display: grid;
gap: 0.9rem;
}
.mainpage-left {
grid-area: left;
flex: 2;
display: flex;
flex-flow: column wrap;
}
.mainpage-left > * {
margin: 0 0 0.9rem;
}
.mainpage-right {
grid-area: right;
flex: 1;
display: flex;
flex-flow: column wrap;
}
.mainpage-right > * {
margin: 0 0 0.9rem;
}
.arrow {
background: url('filepath://White-chevron.svg') no-repeat;
display: inline-block;
height: 0.7rem;
width: 0.45rem;
vertical-align: middle;
}
.arrow.dark {
filter: invert(80%);
}
.mainpage-contents {
grid-area: content;
grid-template-columns: repeat(6, 1fr);
}
.mainpage-contents .tile-halves {
flex: 1;
}
.mainpage-contents .tile-top {
position: relative;
}
.mainpage-contents h2 {
margin: 0;
padding: 0;
}
.mainpage-contents .tile-bottom.link-button a {
padding: 0.75em 0.2em;
}
.popular-pages ul {
display: grid;
grid-template-columns: repeat(3, 1fr);
grid-gap: 0.6em;
margin: 1em 0 0.7em 0;
}
.mp-popular-page-light {
display: flex;
align-items: center;
background-color: var(--button-background);
transition: 100ms;
}
.mp-popular-page-light a {
flex: 1;
display: block;
color: #fff;
font-weight: bold;
text-align: center;
text-decoration: none;
padding: 0.7em 1em;
}
.mp-popular-page-light:hover {
filter: brightness(115%);
transition: 100ms;
}
.mainpage-discord {
border: none;
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.3);
}
.mainpage-discord .tile-top {
display: flex;
align-items: center;
background: #5865f2;
padding: 1em 1.75em;
}
.mainpage-discord .tile-top a {
flex: 1;
position: relative;
text-decoration: none;
}
.mainpage-discord .tile-top a:hover .arrow {
transform: translateX(50%);
}
.mainpage-discord .tile-bottom {
background: #525ee0;
border: none;
padding: 1em 1.75em;
}
.mainpage-discord .tile-bottom p {
color: #fff;
font-weight: bold;
font-size: 0.9em;
text-align: center;
text-transform: uppercase;
letter-spacing: 0.03em;
margin: 0;
}
.mainpage-discord .partner-icon {
margin-right: 0.75em;
}
.mainpage-discord .server-name {
color: #fff;
font-weight: bold;
font-size: 1.25em;
margin: 0.5em 0 -0.15em;
}
.mainpage-discord .server-tagline {
color: rgba(255, 255, 255, 0.9);
margin-bottom: 0.5em;
}
.mainpage-discord .arrow {
position: absolute;
top: calc(50% - .5em);
right: 0;
height: 1em;
width: 0.7em;
background-size: 0.7em 1em;
transition: 0.3s ease-out;
}
.mainpage-editing {
border: none;
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.3);
}
.mainpage-editing .tile-top {
background: #438ab5;
}
.mainpage-editing .tile-bottom {
background: #3980ab;
border: none;
padding: 0.8rem 1.5rem 0.4rem;
}
.mainpage-editing h2,
.mainpage-editing a {
color: #fff;
}
.mainpage-editing p {
color: rgba(255, 255, 255, 0.9);
}
.mainpage-editing ul {
list-style-image: url('filepath://Transparent-chevron.svg');
}
@media only screen and (max-width: 1200px) {
.mainpage-contents {
grid-template-columns: repeat(3, 1fr);
}
}
@media only screen and (max-width: 1000px) {
.mainpage-body {
grid-template-areas: "event event event" "update update update" "content content content" "left left left" "right right right";
}
.mainpage-recent-updates {
grid-template-columns: repeat(2, 1fr);
}
.mainpage-recent-updates .tile-halves:last-child {
display: none;
}
.mainpage-recent-updates .tile-halves:hover .tile-top img {
transform: scale(1.04);
}
.mainpage-recent-updates .tile-top {
height: 18vw;
min-height: 9em;
}
.mainpage-header .header-stats {
display: none;
}
.mainpage-left > *:last-child,
.mainpage-right > *:last-child {
margin-bottom: 0;
}
.popular-pages ul {
grid-template-columns: repeat(2, 1fr);
}
}
@media only screen and (max-width: 720px) {
.mainpage-recent-updates {
grid-template-columns: none;
}
.mainpage-recent-updates .tile-halves:last-child {
display: flex;
}
.mainpage-contents {
grid-template-columns: repeat(2, 1fr);
}
}
.mw-prefs-buttons {
background-color: var(--body-main);
border-top-color: var(--body-border);
box-shadow: none;
}
.mw-prefs-tabs-wrapper.oo-ui-panelLayout-framed,
.mw-prefs-tabs > .oo-ui-menuLayout-content > .oo-ui-indexLayout-stackLayout > .oo-ui-tabPanelLayout {
border-color: var(--body-border);
}
.mw-htmlform-ooui .mw-htmlform-matrix tbody tr:nth-child(even) td {
background-color: var(--body-light);
}
.mw-htmlform-ooui .mw-htmlform-matrix tbody tr:hover td {
background-color: var(--body-mid);
}
:root {
--rc-positive-color: #407813;
--rc-negative-color: #b41e0f;
}
.mw-plusminus-pos {
color: var(--rc-positive-color);
}
.mw-plusminus-neg {
color: var(--rc-negative-color);
}
.client-js .mw-recentchanges-toplinks:not(.mw-recentchanges-toplinks-collapsed) {
border-color: var(--body-border);
background-color: var(--body-light);
border-radius: 2px;
}
.mw-rcfilters-ui-filterTagMultiselectWidget-wrapper-content-title {
color: var(--text-color);
}
.mw-rcfilters-ui-filterTagMultiselectWidget-emptyFilters {
color: var(--byline-color);
}
.mw-rcfilters-ui-filterTagMultiselectWidget.oo-ui-widget-enabled .oo-ui-tagMultiselectWidget-handle {
background-color: var(--ooui-interface);
border-color: var(--ooui-interface-border);
}
.mw-rcfilters-ui-filterTagMultiselectWidget-views-select-widget.oo-ui-widget {
border-color: var(--ooui-interface-border);
}
.mw-rcfilters-collapsed .mw-rcfilters-ui-filterTagMultiselectWidget {
border-bottom-color: var(--ooui-interface-border);
}
.mw-rcfilters-ui-menuSelectWidget-footer {
background-color: var(--ooui-interface);
border-color: var(--ooui-interface-border);
}
.mw-rcfilters-ui-viewSwitchWidget label.oo-ui-labelWidget {
color: var(--byline-color);
}
.mw-rcfilters-ui-tagItemWidget-popup-content {
color: var(--ooui-text);
}
.mw-changeslist-legend,
.mw-rcfilters-ui-changesListWrapperWidget .mw-changeslist-legend {
background-color: var(--body-light);
border-color: var(--body-dark);
}
.mw-rcfilters-ui-changesListWrapperWidget-previousChangesIndicator {
border-color: var(--sidebar);
}
.client-js .mw-changeslist ul,
.client-js .mw-changeslist table.mw-enhanced-rc {
margin-left: 0;
}
.mw-rcfilters-ui-watchlistTopSectionWidget-separator {
border-color: var(--sidebar);
}
.mw-rcfilters-ui-itemMenuOptionWidget-header {
border-bottom-color: var(--ooui-interface);
background-color: var(--ooui-interface-border);
}
.mw-rcfilters-ui-itemMenuOptionWidget:not(:last-child):not(.mw-rcfilters-ui-itemMenuOptionWidget-identifier-talk) {
border-bottom-color: var(--ooui-normal-border);
}
.mw-rcfilters-ui-itemMenuOptionWidget-label-title,
.mw-rcfilters-ui-itemMenuOptionWidget-label-desc {
color: var(--text-color);
}
.mw-rcfilters-ui-filterMenuOptionWidget.oo-ui-flaggedElement-muted:not(.oo-ui-optionWidget-selected) {
background-color: var(--body-main);
}
.mw-rcfilters-ui-filterMenuOptionWidget.oo-ui-flaggedElement-muted .mw-rcfilters-ui-itemMenuOptionWidget-label-title,
.mw-rcfilters-ui-filterMenuOptionWidget.oo-ui-flaggedElement-muted .mw-rcfilters-ui-itemMenuOptionWidget-label-desc {
color: var(--subtle-color);
}
.mw-rcfilters-ui-filterMenuSectionOptionWidget {
background-color: var(--body-mid);
}
.mw-rcfilters-ui-filterMenuSectionOptionWidget-header-title.oo-ui-labelElement-label {
color: var(--ooui-text);
}
.mw-rcfilters-ui-filterMenuHeaderWidget-title {
color: var(--ooui-text);
}
.mw-rcfilters-ui-filterMenuHeaderWidget-header {
border-bottom-color: var(--ooui-interface-border);
background-color: var(--ooui-interface);
}
.mw-rcfilters-ui-itemMenuOptionWidget-view-namespaces {
border-top-color: var(--ooui-interface-border);
}
.mw-rcfilters-ui-datePopupWidget {
border-color: var(--ooui-interface-border);
}
.mw-rcfilters-ui-datePopupWidget .mw-rcfilters-ui-valuePickerWidget-title {
color: var(--byline-color);
}
.mw-rcfilters-ui-savedLinksListItemWidget-label {
color: var(--ooui-accent);
}
.client-js .mw-changeslist.mw-rcfilters-ui-changesListWrapperWidget-highlighted ul,
.client-js .mw-changeslist.mw-rcfilters-ui-changesListWrapperWidget-highlighted table.mw-enhanced-rc {
margin-left: 1.5em;
}
.page-Special_CreateAccount .mw-ui-container,
.page-Special_UserLogin .mw-ui-container {
max-width: 64rem;
margin: 0 auto;
}
.mw-number-text {
color: var(--byline-color);
}
.mw-body-content .mw-number-text h3 {
color: var(--text-color);
}
#mw-indicator-mw-helplink a {
background: none;
padding: 0;
display: flex;
align-items: center;
}
#mw-indicator-mw-helplink a::before {
content: '';
margin-right: 5px;
-webkit-mask: url("/resources/src/mediawiki.helplink/images/helpNotice.svg?46d34") no-repeat 50% 50% / contain;
mask: url("/resources/src/mediawiki.helplink/images/helpNotice.svg?46d34") no-repeat 50% 50% / contain;
background: var(--text-color);
height: 20px;
width: 20px;
}
.results-info {
color: inherit;
}
.mw-search-profile-tabs {
background-color: var(--body-mid);
border-color: transparent;
}
.search-types .current a {
color: inherit;
}
#mw-searchoptions {
background-color: var(--body-mid);
border-color: transparent;
}
#mw-searchoptions .divider {
border-color: var(--body-border);
}
#mw-searchoptions h4 {
font-family: inherit;
}
#mw-searchoptions .oo-ui-labelElement:nth-of-type(odd) {
font-weight: bold;
}
.searchresult {
line-height: 1.5;
}
.searchalttitle,
#mw-search-interwiki li {
font-size: 90%;
}
.mw-search-result-data {
color: var(--byline-color);
}
.page-Special_ListFiles a.image img {
width: inherit;
height: inherit;
}
.page-Special_ListFiles .TablePager_col_thumb {
text-align: center;
}
#editcount table[border="1"] {
background-color: var(--body-main) !important;
border-color: var(--wikitable-border) !important;
margin-top: 0.5em;
}
#editcount table[border="1"] th,
#editcount table[border="1"] td {
padding: 0.2em 0.4em;
}
#editcount table[border="1"] th {
background-color: var(--wikitable-header-bg);
border: 1px solid var(--wikitable-border);
}
#editcount table[border="1"] td {
border: 1px solid var(--wikitable-border);
}
#editcount table[border="1"] tr:nth-child(odd) {
background-color: var(--body-light);
}
.mw-echo-ui-notificationBadgeButtonPopupWidget-popup > .oo-ui-popupWidget-popup .mw-echo-ui-placeholderItemWidget {
background-color: inherit;
}
table.mw-interwikitable.body td.mw-interwikitable-local-yes {
background-color: var(--table-yes-background);
color: var(--table-yes-color);
}
.mw-protectedpages-unknown {
color: var(--byline-color);
}
.watchlistredir,
.allpagesredirect {
font-style: italic;
}
.allpagesredirect:after {
color: var(--byline-color);
content: " (redirect)";
}
.mw-apisandbox-toolbar {
background: var(--body-main);
}
.oo-ui-menuOptionWidget .mw-apisandbox-flag {
color: var(--byline-color);
}
tr.mw-abusefilter-list-disabled,
tr.mw-abusefilter-list-disabled td {
color: var(--byline-color);
}
table.mw-abuselog-details {
background: var(--wikitable-bg);
border-color: var(--wikitable-border);
}
table.mw-abuselog-details th {
background: var(--wikitable-header-bg);
}
table.mw-abuselog-details th,
table.mw-abuselog-details td {
border-color: var(--wikitable-border);
}
.mw-abusefilter-log-hidden-entry {
color: var(--subtle-color);
}
body td.mw-abusefilter-history-changed {
background: var(--table-no-background);
}
div.mw-abusefilter-editor,
#mw-abusefilter-warn-preview,
#mw-abusefilter-disallow-preview {
border-color: var(--ooui-input-border);
}
.mw-destfile-warning {
border-color: var(--warningbox-border);
color: var(--text-color);
background-color: var(--warningbox-bg);
}
span.fileinput-button {
background-color: var(--ooui-normal);
border-color: var(--ooui-normal-border);
color: var(--ooui-text);
}
ul.fileupload-results li.ful-success {
background-color: var(--successbox-bg);
}
ul.fileupload-results li.ful-success a {
color: var(--link-color);
}
ul.fileupload-results li.ful-error {
background-color: var(--errorbox-bg);
}
#t-print,
#t-permalink {
display: none;
}
#filetoc {
border-radius: 2px;
background: var(--body-mid);
border-color: transparent;
margin: 0.5em auto;
text-align: center;
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
}
li.gallerybox div.thumb {
border: none;
background-color: var(--thumb-bg);
}
.smwfact {
display: none;
}
.list-header {
background-color: var(--body-mid);
color: inherit;
}
.editOptions {
color: var(--text-color);
background-color: var(--sourceeditor-background-secondary);
border-color: var(--sourceeditor-border);
}
.mw-json th,
.mw-json td {
border-color: var(--wikitable-border);
}
.mw-json td {
background: var(--wikitable-bg);
}
.mw-json th {
background: var(--wikitable-header-bg);
}
75aa4211a6bcabafa5436d0d5788908d3f9edf54
87
84
2024-03-22T03:25:49Z
Jayden
3
Updating CSS from [[MediaWiki:Common.less]]
css
text/css
/* <pre> */
:root {
--body-main: #e2dbc8;
--body-light: #d8ccb4;
--body-mid: #d0bd97;
--body-dark: #b8a282;
--body-border: #94866d;
--body-background-color: #513e36;
--button-background: #605443;
--button-color: #fff;
--button-border: #3c352a;
--button-dark: #18140c;
--button-light: #3a301d;
--sidebar: #cfc08d;
--background-text-color: #e2dbc8;
--background-link-color: #e2bd8a;
--search-box: #efeee6;
--link-color: #936039;
--redlink-color: #ba0000;
--text-color: #000;
--byline-color: #4c4c4c;
--subtle-color: #777;
--admin-blue: #332e75;
--bearcat-green: #13592e;
--awb-purple: #933b96;
--rsw-blue: #438ab6;
--osrsw-brown: #605443;
--thumb-bg: var(--body-light);
--thumb-caption-bg: var(--body-mid);
--sourceeditor-input-background: #fff;
--sourceeditor-background: var(--body-light);
--sourceeditor-background-secondary: var(--body-light);
--sourceeditor-border: var(--body-mid);
--codemirror-gutter-background: var(--body-mid);
}
@font-face {
font-family: 'Lora';
font-weight: 400 700;
font-style: normal;
font-display: swap;
src: url('filepath://Lora.woff2') format('woff2');
}
@font-face {
font-family: 'Lora';
font-weight: 400 700;
font-style: italic;
font-display: swap;
src: url('filepath://Lora-Italic.woff2') format('woff2');
}
:root {
--base-text-color: #36414f;
--base-heading-color: #444e5a;
--base-heading-border: #e4eaee;
--mw-code-background-color: #ddd4bb;
--body-background-image: url('filepath://Wiki_background.jpg');
}
#mw-page-base {
background: none;
}
.mw-body {
background-color: var(--body-main);
color: var(--text-color);
border-color: transparent;
box-shadow: 0 0 7px rgba(0, 0, 0, 0.15);
margin-top: 0;
}
h1,
h2,
h3,
h4,
h5,
h6 {
color: var(--text-color);
}
h1,
h2 {
border-color: var(--sidebar);
}
.mw-body h1,
.mw-body-content h1,
.mw-body-content h2,
.mw-body-content h3,
.mw-body-content h4,
.mw-body-content h5,
.mw-body-content h6 {
font-family: 'Lora', 'Palatino', 'Georgia', serif;
}
.mw-parser-output h2:first-of-type {
clear: left;
}
.mw-footer {
color: var(--background-text-color);
}
.mw-footer li {
color: var(--background-text-color);
}
.mw-footer a,
.mw-footer a:active,
.mw-footer a:visited {
color: var(--background-link-color);
}
::placeholder {
color: var(--subtle-color);
}
a {
color: var(--link-color);
}
a:visited,
a:active {
color: var(--link-color);
}
a.new {
color: var(--redlink-color);
}
a.new:visited {
color: var(--redlink-color);
}
.mw-parser-output a.extiw,
.mw-parser-output a.external {
color: var(--link-color);
}
.mw-parser-output a.extiw:visited,
.mw-parser-output a.external:visited,
.mw-parser-output a.extiw:active,
.mw-parser-output a.external:active {
color: var(--link-color);
}
.jsPurgeLink a.external {
color: var(--link-color);
}
:root {
--errorbox-bg: #feecea;
--errorbox-border: #ee4231;
--warningbox-bg: #fef9de;
--warningbox-border: #f9d000;
--successbox-bg: #ecf8e3;
--successbox-border: #6bc71f;
}
.mw-message-box-error,
.errorbox,
.mw-message-box-warning,
.warningbox,
.mw-message-box-success,
.successbox,
.usermessage {
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
}
.mw-message-box-error,
.errorbox {
background-color: var(--errorbox-bg);
border-color: var(--errorbox-border);
}
.mw-message-box-warning,
.warningbox,
.usermessage {
background-color: var(--warningbox-bg);
border-color: var(--warningbox-border);
}
.mw-message-box-success,
.successbox {
background-color: var(--successbox-bg);
border-color: var(--successbox-border);
}
.catlinks {
background: var(--body-light);
border: 1px solid var(--body-dark);
padding: 8px 15px;
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
}
.catlinks li {
border-color: var(--body-mid);
}
.filehistory a img,
#file img {
background: url("data:image/svg+xml,%3C%3Fxml version='1.0' encoding='UTF-8'%3F%3E%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16'%3E%3Cpath d='M0 0h8v16h8V8H0z' opacity='.13'/%3E%3C/svg%3E") repeat;
}
#file img:hover {
background: none;
}
.mw-highlight {
background: none;
}
.mw-highlight .linenos {
background-color: var(--mw-code-background-color);
color: var(--byline-color);
}
.mw-highlight a:hover .linenos,
.mw-highlight .hll a .linenos {
color: var(--text-color);
}
.mw-content-ltr.mw-highlight-lines pre,
.mw-content-ltr.content .mw-highlight-lines pre {
box-shadow: inset 2.75em 0 0 var(--mw-code-background-color);
}
#pagehistory ul {
list-style: none;
margin: 0;
}
#pagehistory li {
border: 1px solid transparent;
padding: 1px 10px;
margin: 2px 0;
}
#pagehistory li.selected {
background-color: var(--body-light);
color: inherit;
border: 1px dashed var(--body-border);
outline: none;
}
#mw-history-compare > div:first-of-type {
position: -webkit-sticky;
position: sticky;
top: 0;
background-color: var(--body-main);
border-bottom: 1px solid var(--body-dark);
padding: 0.25em 0;
}
.wgl-stickyheader #mw-history-compare > div:first-of-type {
top: 2.5rem;
}
.autocomment,
.autocomment a,
.autocomment a:visited {
color: var(--link-color);
}
li span.deleted,
span.history-deleted {
color: var(--byline-color);
}
.mw-usertoollinks-contribs-no-edits,
.mw-usertoollinks-contribs-no-edits:visited {
color: var(--redlink-color);
}
.CategoryTreeToggle {
color: var(--link-color);
}
body.wgl-stickyheader.action-view .mw-headline:target::before {
display: block;
content: '';
margin-top: -3rem;
height: 3rem;
visibility: hidden;
pointer-events: none;
}
.mw-mmv-post-image {
color: var(--text-color);
background-color: var(--body-main);
}
.mw-mmv-image-metadata {
border-top-color: var(--body-mid);
background-color: var(--body-light);
}
.mw-mmv-dialog,
.mw-mmv-dialog .mw-mmv-dialog-down-arrow,
.mw-mmv-options-dialog .mw-mmv-dialog-down-arrow {
background-color: var(--body-light);
box-shadow: none;
}
.mw-mmv-options-enable-alert {
background-color: var(--body-light);
color: var(--text-color);
}
.mw-mmv-options-dialog-header,
.mw-mmv-options-text-header,
.mw-mmv-options-text-body,
.mw-mmv-options-enable-alert,
.mw-mmv-options-dialog .mw-mmv-disable-confirmation .mw-mmv-options-dialog-header,
.mw-mmv-options-dialog .mw-mmv-disable-confirmation .mw-mmv-options-text-header {
color: var(--text-color);
}
.mw-revslider-container {
border-color: var(--sidebar);
}
.mw-revslider-slider-wrapper {
border-top-color: var(--sidebar);
}
.mw-ui-button {
background-color: var(--ooui-normal);
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
}
.mw-ui-button:not(:disabled):hover,
.mw-ui-button:not(:disabled):active {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
}
.mw-ui-button:not(:disabled):focus {
color: var(--ooui-text);
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent), inset 0 0 0 2px #fff;
}
.mw-ui-button:not(:disabled):visited {
color: var(--ooui-text);
}
.mw-ui-button.mw-ui-progressive:not(:disabled) {
background-color: var(--ooui-progressive);
color: #fff;
border-color: var(--ooui-progressive);
}
.mw-ui-button.mw-ui-progressive:not(:disabled):hover {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
}
.mw-ui-button.mw-ui-progressive:not(:disabled):focus {
box-shadow: inset 0 0 0 1px var(--ooui-accent), inset 0 0 0 2px #fff;
}
.mw-ui-button.mw-ui-progressive:not(:disabled):active,
.mw-ui-button.mw-ui-progressive:not(:disabled).is-on {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
box-shadow: none;
}
.mw-ui-button.mw-ui-destructive:not( :disabled ) {
color: #fff;
}
.mw-ui-button.mw-ui-quiet,
.mw-ui-button.mw-ui-quiet.mw-ui-progressive,
.mw-ui-button.mw-ui-quiet.mw-ui-destructive {
color: var(--text-color);
}
input[type='checkbox']:hover + .mw-ui-button.mw-ui-quiet,
input[type='checkbox']:hover + .mw-ui-button.mw-ui-quiet.mw-ui-progressive,
input[type='checkbox']:hover + .mw-ui-button.mw-ui-quiet.mw-ui-destructive,
.mw-ui-button.mw-ui-quiet:hover,
.mw-ui-button.mw-ui-quiet.mw-ui-progressive:hover,
.mw-ui-button.mw-ui-quiet.mw-ui-destructive:hover {
background-color: rgba(0, 24, 73, 0.02745098);
color: var(--text-color);
border-color: transparent;
}
input[type='checkbox']:focus + .mw-ui-button.mw-ui-quiet,
input[type='checkbox']:focus + .mw-ui-button.mw-ui-quiet.mw-ui-progressive,
input[type='checkbox']:focus + .mw-ui-button.mw-ui-quiet.mw-ui-destructive,
.mw-ui-button.mw-ui-quiet:focus,
.mw-ui-button.mw-ui-quiet.mw-ui-progressive:focus,
.mw-ui-button.mw-ui-quiet.mw-ui-destructive:focus {
color: var(--text-color);
}
input[type='checkbox']:active + .mw-ui-button.mw-ui-quiet,
input[type='checkbox']:active + .mw-ui-button.mw-ui-quiet.mw-ui-progressive,
input[type='checkbox']:active + .mw-ui-button.mw-ui-quiet.mw-ui-destructive,
.mw-ui-button.mw-ui-quiet:active,
.mw-ui-button.mw-ui-quiet.mw-ui-progressive:active,
.mw-ui-button.mw-ui-quiet.mw-ui-destructive:active {
background-color: rgba(0, 36, 73, 0.08235294);
color: var(--text-color);
border-color: #72777d;
}
.mw-ui-input {
background-color: var(--ooui-input);
color: var(--text-color);
border-color: var(--ooui-input-border);
}
.mw-ui-input:hover {
border-color: var(--ooui-input-border--hover);
}
.mw-ui-input::placeholder {
color: var(--byline-color);
}
.mw-content-ltr .redirectText li:first-child {
padding: 0;
background: 0;
}
.mw-content-ltr .redirectText li:first-child::before {
content: '';
background: currentcolor;
-webkit-mask: url("filepath://Redirect-arrow.svg") no-repeat 50% 50% / contain;
mask: url("filepath://Redirect-arrow.svg") no-repeat 50% 50% / contain;
display: inline-block;
width: 47px;
height: 20px;
}
:root {
--wikitable-header-bg: var(--body-dark);
--wikitable-border: var(--body-border);
--wikitable-bg: var(--body-light);
--wikitable-bg-lighter: #e9e3d6;
--wikitable-color: var(--text-color);
--table-na-background: rgba(255, 255, 255, 0.3);
--table-na-color: var(--subtle-color);
--table-yes-background: #c3e8a3;
--table-yes-color: #2e5e05;
--table-no-background: #fbc0ba;
--table-no-color: #801c13;
--table-maybe-background: #fcea94;
--table-maybe-color: #786300;
}
.wikitable {
background: var(--wikitable-bg);
color: var(--wikitable-color);
border-color: var(--wikitable-border);
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
}
.wikitable > tr > th,
.wikitable > tr > td,
.wikitable > * > tr > th,
.wikitable > * > tr > td {
border-color: var(--wikitable-border);
}
.wikitable > tr > th.table-noborder,
.wikitable > tr > td.table-noborder,
.wikitable > * > tr > th.table-noborder,
.wikitable > * > tr > td.table-noborder {
border-left-style: hidden;
border-right-style: hidden;
padding-left: 0;
padding-right: 0;
}
.wikitable > tr > th,
.wikitable > * > tr > th {
background-color: var(--wikitable-header-bg);
}
.tabber .wikitable {
box-shadow: none;
}
.mw_metadata td,
.mw_metadata th {
border-color: var(--wikitable-border);
}
.mw_metadata th {
background-color: var(--wikitable-header-bg);
}
.mw_metadata td {
background-color: var(--wikitable-bg);
}
.mw-datatable {
border-color: var(--wikitable-border);
}
.mw-datatable td,
.mw-datatable th {
border-color: var(--wikitable-border);
}
.mw-datatable th {
background-color: var(--wikitable-header-bg);
}
.mw-datatable td {
background-color: var(--wikitable-bg);
}
.mw-datatable tr:hover td {
background-color: var(--wikitable-bg);
}
table.alternating-rows tr:nth-child(odd),
table.alternating-cols td:nth-child(odd) {
background: var(--wikitable-alternating-bg);
}
.table-na {
background: var(--table-na-background);
color: var(--table-na-color);
vertical-align: middle;
text-align: center;
}
.table-yes {
background: var(--table-yes-background);
color: var(--table-yes-color);
}
.table-positive {
background: var(--table-yes-background);
}
.table-no {
background: var(--table-no-background);
color: var(--table-no-color);
}
.table-negative {
background: var(--table-no-background);
}
.table-maybe {
background: var(--table-maybe-background);
color: var(--table-maybe-color);
}
#mw-allmessagestable .am_actual,
#mw-allmessagestable .am_default {
background-color: var(--wikitable-bg);
}
#mw-allmessagestable .am_default:hover,
#mw-allmessagestable .am_actual:hover,
#mw-allmessagestable tbody:hover td {
background-color: var(--wikitable-bg-lighter);
}
table.wikitable td.no-cell-spacing {
padding: 0;
height: 0;
}
table.wikitable td.no-cell-spacing table {
margin: -1px;
width: calc(100% + 2px);
height: calc(100% + 2px);
}
.plainlist ol,
.plainlist ul {
margin: 0;
}
.plainlist li {
margin-bottom: 0;
list-style: none;
}
table.align-right-1 td:nth-of-type(1),
table.align-right-2 td:nth-of-type(2),
table.align-right-3 td:nth-of-type(3),
table.align-right-4 td:nth-of-type(4),
table.align-right-5 td:nth-of-type(5),
table.align-right-6 td:nth-of-type(6),
table.align-right-7 td:nth-of-type(7),
table.align-right-8 td:nth-of-type(8),
table.align-right-9 td:nth-of-type(9),
table.align-right-10 td:nth-of-type(10),
table.align-right-11 td:nth-of-type(11),
table.align-right-12 td:nth-of-type(12),
table.align-right-13 td:nth-of-type(13),
table.align-right-14 td:nth-of-type(14),
table.align-right-15 td:nth-of-type(15),
table.align-right-16 td:nth-of-type(16),
table.align-right-17 td:nth-of-type(17),
table.align-right-18 td:nth-of-type(18),
table.align-right-19 td:nth-of-type(19),
table.align-right-20 td:nth-of-type(20) {
text-align: right;
}
table.align-center-1 td:nth-of-type(1),
table.align-center-2 td:nth-of-type(2),
table.align-center-3 td:nth-of-type(3),
table.align-center-4 td:nth-of-type(4),
table.align-center-5 td:nth-of-type(5),
table.align-center-6 td:nth-of-type(6),
table.align-center-7 td:nth-of-type(7),
table.align-center-8 td:nth-of-type(8),
table.align-center-9 td:nth-of-type(9),
table.align-center-10 td:nth-of-type(10),
table.align-center-11 td:nth-of-type(11),
table.align-center-12 td:nth-of-type(12),
table.align-center-13 td:nth-of-type(13),
table.align-center-14 td:nth-of-type(14),
table.align-center-15 td:nth-of-type(15),
table.align-center-16 td:nth-of-type(16),
table.align-center-17 td:nth-of-type(17),
table.align-center-18 td:nth-of-type(18),
table.align-center-19 td:nth-of-type(19),
table.align-center-20 td:nth-of-type(20) {
text-align: center;
}
table.align-left-1 td:nth-of-type(1),
table.align-left-2 td:nth-of-type(2),
table.align-left-3 td:nth-of-type(3),
table.align-left-4 td:nth-of-type(4),
table.align-left-5 td:nth-of-type(5),
table.align-left-6 td:nth-of-type(6),
table.align-left-7 td:nth-of-type(7),
table.align-left-8 td:nth-of-type(8),
table.align-left-9 td:nth-of-type(9),
table.align-left-10 td:nth-of-type(10),
table.align-left-11 td:nth-of-type(11),
table.align-left-12 td:nth-of-type(12),
table.align-left-13 td:nth-of-type(13),
table.align-left-14 td:nth-of-type(14),
table.align-left-15 td:nth-of-type(15),
table.align-left-16 td:nth-of-type(16),
table.align-left-17 td:nth-of-type(17),
table.align-left-18 td:nth-of-type(18),
table.align-left-19 td:nth-of-type(19),
table.align-left-20 td:nth-of-type(20) {
text-align: left;
}
:root {
--diff-addedline-border-color: #438ab5;
--diff-addedline-background: #bddff2;
--diff-addedline-color: #000;
--diff-deletedline-border-color: #379541;
--diff-deletedline-background: #c1edbf;
--diff-deletedline-color: #000;
--diff-context-border-color: var(--body-mid);
--diff-context-background: var(--body-mid);
}
.diff-context {
border-color: var(--diff-context-border-color);
background: var(--diff-context-background);
color: inherit;
}
.diff-addedline {
border-color: var(--diff-addedline-border-color);
}
.diff-addedline .diffchange {
background: var(--diff-addedline-background);
color: var(--diff-addedline-color);
}
.diff-deletedline {
border-color: var(--diff-deletedline-border-color);
}
.diff-deletedline .diffchange {
background: var(--diff-deletedline-background);
color: var(--diff-deletedline-color);
}
.mw-diff-movedpara-left:after,
.mw-diff-movedpara-right:after {
color: var(--text-color);
}
.mw-notification {
background-color: var(--body-light);
border-color: var(--body-border);
color: var(--text-color);
}
.mw-echo-ui-notificationsInboxWidget-toolbarWrapper {
background: var(--body-main);
}
.mw-body-content .mw-echo-ui-datedSubGroupListWidget-title-secondary {
color: var(--byline-color);
}
.mw-echo-ui-pageNotificationsOptionWidget.oo-ui-optionWidget-selected {
background-color: var(--ooui-normal);
color: var(--ooui-accent);
}
.mw-echo-ui-pageNotificationsOptionWidget-label-count {
background-color: var(--ooui-normal);
color: var(--byline-color);
}
.oo-ui-optionWidget-selected .mw-echo-ui-pageNotificationsOptionWidget-label-count {
color: var(--ooui-accent);
}
.mw-echo-ui-pageNotificationsOptionWidget.oo-ui-optionWidget-highlighted {
background-color: var(--ooui-normal);
color: var(--text-color);
}
.mw-echo-ui-crossWikiUnreadFilterWidget {
border-color: var(--body-border);
}
.mw-echo-ui-crossWikiUnreadFilterWidget-subtitle {
color: var(--byline-color);
}
.mw-echo-ui-notificationBadgeButtonPopupWidget-popup > .oo-ui-popupWidget-popup > .oo-ui-popupWidget-head,
.mw-echo-ui-notificationBadgeButtonPopupWidget-popup > .oo-ui-popupWidget-popup > .oo-ui-popupWidget-footer {
border-color: var(--ooui-interface-border);
}
.mw-echo-ui-notificationBadgeButtonPopupWidget-popup > .oo-ui-popupWidget-popup > .oo-ui-popupWidget-footer .mw-echo-ui-notificationBadgeButtonPopupWidget-footer-buttons .oo-ui-buttonElement:last-child {
border-left-color: var(--ooui-normal-border);
}
.mw-echo-ui-notificationItemWidget {
background-color: var(--ooui-normal);
border-color: var(--ooui-normal-border);
}
.mw-echo-ui-notificationItemWidget:hover,
.mw-echo-ui-notificationItemWidget-unread:hover {
background-color: var(--ooui-normal--hover);
}
.mw-echo-ui-notificationItemWidget:last-child {
border-bottom-color: var(--ooui-normal-border);
}
.mw-echo-ui-notificationItemWidget-unread {
background-color: var(--search-box);
}
.mw-echo-ui-crossWikiNotificationItemWidget-group,
.mw-echo-ui-bundleNotificationItemWidget-group {
background-color: var(--ooui-interface);
}
.mw-echo-ui-toggleReadCircleButtonWidget-circle {
background-color: var(--ooui-progressive);
}
.mw-echo-ui-toggleReadCircleButtonWidget:hover .mw-echo-ui-toggleReadCircleButtonWidget-circle {
background-color: var(--ooui-progressive--hover);
}
.mw-echo-ui-toggleReadCircleButtonWidget-circle-unread {
background-color: var(--ooui-normal);
border-color: var(--ooui-normal-border);
}
.mw-echo-ui-notificationItemWidget-content-message-header,
.mw-echo-ui-notificationItemWidget-content-message-body,
.mw-echo-ui-menuItemWidget > .oo-ui-buttonElement-button > .oo-ui-labelElement-label,
.mw-echo-ui-notificationItemWidget-content-actions-timestamp {
color: var(--ooui-text);
}
.mw-echo-ui-bundleNotificationItemWidget-group {
background-color: var(--body-main);
}
@keyframes unseen-fadeout-to-unread {
from {
background-color: var(--wikitable-bg-lighter);
}
to {
background-color: var(--search-box);
}
}
@keyframes unseen-fadeout-to-read {
from {
background-color: var(--wikitable-bg-lighter);
}
to {
background-color: var(--body-main);
}
}
.mwe-popups {
background: var(--body-light);
}
.mwe-popups .mwe-popups-container {
color: var(--text-color);
background: var(--body-light);
}
.mwe-popups .mwe-popups-container.flipped-x-y:before,
.mwe-popups .mwe-popups-container.flipped-y:before {
border-top: none;
}
.mwe-popups .mwe-popups-container.mwe-popups-no-image-tri:before {
border-bottom: none;
}
.mwe-popups .mwe-popups-container.flipped-x-y:after,
.mwe-popups .mwe-popups-container.flipped-y:after {
border-top-color: var(--body-light);
}
.mwe-popups .mwe-popups-container.mwe-popups-no-image-tri:after {
border-bottom-color: var(--body-light);
}
.mwe-popups .mwe-popups-settings-icon:hover,
.mwe-popups .mwe-popups-settings-icon:active {
background-color: var(--ooui-normal--hover);
}
.mwe-popups .mw-ui-icon-element:not(.disabled):hover {
background: none;
}
.mwe-popups .mwe-popups-extract {
color: var(--text-color);
}
.mwe-popups .mwe-popups-extract[dir='ltr']:after {
background-image: linear-gradient(to right, rgba(49, 62, 89, 0), var(--body-light) 50%);
}
.mwe-popups-overlay {
background-color: var(--ooui-window-background);
}
#mwe-popups-settings {
background: var(--ooui-interface);
border-color: var(--ooui-interface-border);
color: var(--text-color);
}
#mwe-popups-settings header {
border-color: var(--ooui-interface-border);
}
#mwe-popups-settings main#mwe-popups-settings-form p {
color: var(--byline-color);
}
#mwe-popups-settings main#mwe-popups-settings-form form label > span {
color: var(--ooui-text);
}
:root {
--smw-ask-options-even-bg: var(--body-mid);
--smw-ask-options-odd-bg: var(--body-light);
--smw-ask-action-btn-lblue-bg: var(--body-main);
--smw-ask-action-btn-lblue-color: #000;
--smw-ask-action-btn-lblue-border-color: var(--body-light);
--smw-ask-action-btn-dblue-bg: var(--body-light);
--smw-ask-action-btn-dblue-color: #fff;
--smw-ask-action-btn-dblue-border-color: var(--button-border);
}
.smw-ask-condition fieldset,
.smw-ask-printhead fieldset {
border-color: var(--sidebar);
}
.smw-ask-search fieldset,
.smw-ask-format fieldset,
.smw-ask-options fieldset {
border-color: var(--sidebar);
}
.strike > span:before,
.strike > span:after {
background: var(--sidebar);
}
.smw-ask-options-fields tr td {
background-color: var(--smw-ask-options-even-bg);
}
.smw-ask-options-fields tr:nth-child(odd) td {
background-color: var(--smw-ask-options-odd-bg);
}
.smw-ask-action-btn.smw-ask-action-btn-lblue,
.smw-ask-action-btn.smw-ask-action-btn-lblue:hover,
.smw-ask-action-btn.smw-ask-action-btn-lblue:visited {
background-color: var(--smw-ask-action-btn-lblue-bg);
color: var(--smw-ask-action-btn-lblue-color);
border-color: var(--smw-ask-action-btn-lblue-border-color);
}
.smw-ask-action-btn.smw-ask-action-btn-dblue,
.smw-ask-action-btn.smw-ask-action-btn-dblue:hover,
.smw-ask-action-btn.smw-ask-action-btn-dblue:visited {
background-color: var(--smw-ask-action-btn-dblue-bg);
color: var(--smw-ask-action-btn-dblue-color);
border-color: var(--smw-ask-action-btn-dblue-border-color);
}
.smw-ask-query textarea,
.smw-ask-actions textarea {
background-color: var(--ooui-interface);
border-color: var(--ooui-interface-border);
color: var(--ooui-text);
}
.smw-ask-query-format select {
background-color: var(--ooui-interface);
border: 1px solid var(--ooui-interface-border);
color: var(--ooui-text);
}
.smw-ask-toplinks {
background-color: var(--body-mid);
}
.smw-ask-toplinks span.smw-icon-info {
background: none;
padding: 0 !important;
}
.smw-ask-toplinks span.smw-icon-info::before {
content: '';
background: var(--text-color);
-webkit-mask: url("data:image/svg+xml,%3C%3Fxml version='1.0' encoding='UTF-8'%3F%3E%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 20 20'%3E%3Ctitle%3Einfo%3C/title%3E%3Cpath d='M10 0C4.477 0 0 4.477 0 10s4.477 10 10 10 10-4.477 10-10S15.523 0 10 0zM9 5h2v2H9zm0 4h2v6H9z'/%3E%3C/svg%3E") no-repeat 50% 50% / contain;
mask: url("data:image/svg+xml,%3C%3Fxml version='1.0' encoding='UTF-8'%3F%3E%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 20 20'%3E%3Ctitle%3Einfo%3C/title%3E%3Cpath d='M10 0C4.477 0 0 4.477 0 10s4.477 10 10 10 10-4.477 10-10S15.523 0 10 0zM9 5h2v2H9zm0 4h2v6H9z'/%3E%3C/svg%3E") no-repeat 50% 50% / contain;
padding: 0 0 3px 18px;
}
.smw-ask-options-row-odd {
background-color: var(--body-light);
}
.smw-ask-options-row-even {
background-color: var(--body-mid);
}
#options-toggle:not(:checked) + #options-list .options-parameter-list:after {
background-image: linear-gradient(to bottom, transparent, var(--body-mid) 90%);
}
.smw-ask-button-submit input {
background-color: var(--ooui-normal);
border-color: var(--ooui-normal-border);
color: var(--text-color);
}
.smw-ask-button-submit input:hover,
.smw-ask-button-lgrey:hover {
background-color: var(--ooui-normal--hover);
border-color: var(--ooui-normal-border);
}
input.smw-ask-action-btn.smw-ask-action-btn-dblue {
background-color: var(--ooui-normal);
border-color: var(--ooui-normal-border);
color: var(--ooui-text);
}
a.smw-ask-action-btn.smw-ask-action-btn-lblue {
background-color: var(--body-mid);
border-color: var(--body-mid);
color: var(--ooui-text);
}
a.smw-ask-action-btn.smw-ask-action-btn-lblue:visited {
background-color: var(--body-mid);
border-color: var(--body-mid);
color: var(--ooui-text);
}
a.smw-ask-action-btn.smw-ask-action-btn-lblue:hover {
background-color: var(--body-mid);
border-color: var(--body-mid);
color: var(--ooui-text);
}
a.smw-ask-action-btn-lgrey {
background-color: var(--ooui-normal);
border-color: var(--ooui-normal-border);
color: var(--ooui-text);
}
a.smw-ask-action-btn-lgrey:hover {
background-color: var(--ooui-normal--hover);
border-color: var(--ooui-normal-border);
color: var(--ooui-text);
}
.smw-callout-error {
background-color: var(--errorbox-bg);
border-color: var(--errorbox-border);
}
.smw-callout-info {
background-color: var(--body-light);
border-color: var(--body-dark);
}
.smw-callout-success {
background-color: var(--successbox-bg);
border-color: var(--successbox-border);
}
.smw-callout-warning {
background-color: var(--warningbox-bg);
border-color: var(--warningbox-bg);
}
.smw-tabs input.nav-tab:checked + label.nav-label,
.smw-tabs input.nav-tab:checked + label.nav-label:hover {
color: inherit;
}
#tab-smw-property-value:checked + label.nav-label .usage-count {
color: #fff;
background-color: var(--ooui-progressive);
}
#tab-smw-property-value:checked + label.nav-label .usage-count.moderate {
color: #fff;
background-color: #b55e0c;
border-color: #b55e0c;
}
#tab-smw-property-value:checked + label.nav-label .usage-count.high {
color: #fff;
background-color: #9f261e;
border-color: #9f261e;
}
.smw-property-page-results .header-title {
background-color: var(--ooui-interface);
border-bottom-color: var(--ooui-interface-border);
color: var(--ooui-text);
}
.smw-property-page-results .value-row:hover {
background-color: var(--ooui-normal--hover);
}
.smw-property-page-results .smw-table .header-row {
color: var(--text-color);
}
.tippy-tooltip.light-border-theme {
background-color: var(--body-light);
color: var(--text-color);
}
.tippy-tooltip.light-border-theme .tippy-arrow {
border-top-color: var(--body-light);
}
.tippy-tooltip.light-border-theme .tippy-arrow:after {
border-top-color: var(--body-light);
}
.tippy-header {
background-color: var(--body-dark);
border-bottom-color: var(--body-mid);
}
.smw-ui-input-filter {
background-color: var(--ooui-interface);
border-color: var(--ooui-interface-border);
color: var(--ooui-text);
}
.smw-ui-input-filter input {
border-left-color: var(--ooui-interface-border) !important;
color: var(--ooui-text) !important;
}
.smw-ui-pagination .page-link.link-disabled {
background-color: var(--ooui-disabled);
border-color: var(--ooui-disabled-border);
color: var(--subtle-color);
}
.smw-ui-pagination .page-link {
background-color: var(--ooui-normal);
border-color: var(--ooui-normal-border);
color: var(--link-color);
}
.smw-ui-pagination .page-link:hover {
background-color: var(--ooui-normal--hover);
border-color: var(--ooui-normal-border);
color: var(--link-color);
}
.smw-ui-pagination .page-link.link-active {
color: #fff;
background-color: var(--ooui-progressive);
border-color: var(--ooui-progressive);
}
.smw-tabs input.nav-tab:checked + label.nav-label {
border-color: var(--ooui-normal-border);
}
.smw-tabs section,
.smw-tabs .subtab-content {
border-top-color: var(--ooui-normal-border);
}
.smw-column-header {
color: var(--text-color);
}
.smw-factbox {
background: var(--body-main);
border-color: transparent;
}
.mw-body .mw-indicators #mw-indicator-smw-entity-examiner.mw-indicator .smw-indicator-vertical-bar-loader {
display: none;
}
.smwb-theme-light .smwb-title,
.smwb-theme-light .smwb-center,
.smwb-theme-light .smwb-actions,
.smwb-theme-light .smwb-prophead {
background-color: var(--body-mid);
}
.smwb-theme-light .smwb-factbox {
border-left-color: var(--body-mid);
}
.smwb-theme-light .smwb-ifactbox {
border-right-color: var(--body-mid);
}
.smwb-theme-light .smwb-propval {
background-color: var(--body-light);
}
.smwb-action-separator {
border-color: var(--wikitable-border);
}
.smwb-bottom {
border-bottom: 1px solid var(--wikitable-border);
}
.smwb-ifactbox .smwb-cell,
.smwb-factbox .smwb-cell {
border-top: 1px solid var(--wikitable-border);
}
.smwb-propvalue .smwb-prophead,
.smwb-ipropvalue .smwb-prophead,
.smwb-propvalue .smwb-propval,
.smwb-ipropvalue .smwb-propval {
font-size: 0.9em;
}
:root {
--filter-black-to-link: invert(36%) sepia(58%) saturate(433%) hue-rotate(344deg) brightness(100%) contrast(91%);
}
#bodyContent span.smwbrowse a {
color: black;
background-image: url('filepath://Smwbrowse.svg');
filter: var(--filter-black-to-link);
}
#bodyContent span.smwbrowse a:hover {
color: black;
background-image: url('filepath://Smwbrowse-hover.svg');
text-decoration: underline;
}
#bodyContent span.smwsearch a {
color: black;
filter: var(--filter-black-to-link);
background-image: url('filepath://Smwsearch.svg');
}
#bodyContent span.smwsearch a:hover {
color: black;
background-image: url('filepath://Smwsearch-hover.svg');
text-decoration: underline;
}
:root {
--tabber-tab-bg: var(--body-light);
--tabber-tab-border-color: var(--body-border);
--tabber-active-tab-bg: var(--body-light);
--tabber-active-tab-color: var(--text-color);
--tabber-active-tab-hover-bg: var(--body-light);
--tabber-active-tab-hover-border-color: var(--body-border);
--tabber-active-tab-hover-color: var(--text-color);
--tabber-active-tab-border-hider-color: var(--body-light);
--tabber-inactive-tab-bg: var(--body-background-color);
--tabber-inactive-tab-border-color: var(--body-border);
--tabber-inactive-tab-color: var(--text-color);
--tabber-inactive-tab-hover-bg: var(--body-light);
--tabber-inactive-tab-hover-border-color: var(--body-border);
}
.tabber {
margin: 1em 0;
}
.tabber .tabbertab {
background-color: var(--tabber-tab-bg);
border: 1px solid var(--tabber-tab-border-color);
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
padding: 1em 1.5em;
}
ul.tabbernav {
border: none;
margin-left: 2em;
margin-bottom: 0;
margin-right: 2em;
padding: 0;
font-family: inherit;
}
ul.tabbernav li.tabberactive > a {
background-color: var(--tabber-active-tab-bg);
color: var(--tabber-active-tab-color);
border-bottom: none;
position: relative;
}
ul.tabbernav li.tabberactive > a:hover {
color: var(--tabber-active-tab-hover-color);
background-color: var(--tabber-active-tab-hover-bg);
border-color: var(--tabber-active-tab-hover-border-color);
border-bottom: none;
}
ul.tabbernav li.tabberactive > a::after {
content: '';
position: absolute;
left: 0;
right: 0;
bottom: -1px;
border-bottom: 2px solid var(--tabber-active-tab-border-hider-color);
}
ul.tabbernav li a {
background-color: var(--tabber-inactive-tab-bg);
border-bottom: transparent;
border-color: var(--tabber-inactive-tab-border-color);
color: var(--tabber-inactive-tab-color);
display: inline-block;
font-size: 110%;
padding: 0.5em 1em;
}
ul.tabbernav li a:hover {
background-color: var(--tabber-inactive-tab-hover-bg);
border-color: var(--tabber-inactive-tab-hover-border-color);
}
ul.tabbernav li a:link,
ul.tabbernav li a:visited {
color: var(--tabber-inactive-tab-color);
}
:root {
--ooui-text: var(--text-color);
--ooui-interface: var(--body-light);
--ooui-interface-border: var(--body-border);
--ooui-window-background: rgba(255, 255, 255, 0.5);
--ooui-normal: #d5c7ad;
--ooui-normal--hover: #dfd5c1;
--ooui-normal-border: #b8a282;
--ooui-progressive: #605443;
--ooui-progressive--hover: #7e6e58;
--ooui-accent: var(--link-color);
--ooui-input: #fff;
--ooui-input-border: #b8a282;
--ooui-input-border--hover: #8a724f;
--ooui-disabled: #d1cdc5;
--ooui-disabled-border: #c2b9ab;
--ooui-disabled-text: var(--subtle-color);
--ooui-pending-background-image: repeating-linear-gradient(-45deg, var(--search-box), var(--search-box) 20px, var(--body-main) 20px, var(--body-main) 30px);
}
.oo-ui-widget {
color: var(--ooui-text);
}
.oo-ui-checkboxInputWidget [type='checkbox'] + span,
.oo-ui-radioInputWidget [type='radio'] + span {
background-color: var(--ooui-input);
border-color: var(--ooui-input-border);
}
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:checked + span,
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:indeterminate + span {
background-color: var(--ooui-progressive);
border-color: var(--ooui-progressive);
}
.oo-ui-radioInputWidget.oo-ui-widget-enabled [type='radio']:checked + span {
border-color: var(--ooui-progressive);
}
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:checked:hover + span,
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:indeterminate:hover + span {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
}
.oo-ui-radioInputWidget.oo-ui-widget-enabled [type='radio']:checked:hover + span {
border-color: var(--ooui-progressive--hover);
}
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:hover + span,
.oo-ui-radioInputWidget.oo-ui-widget-enabled [type='radio']:hover + span {
border-color: var(--ooui-accent);
}
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:focus + span {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:active + span,
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:checked:active + span,
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:indeterminate:active + span {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
box-shadow: inset 0 0 0 1px var(--ooui-progressive--hover);
}
.oo-ui-radioInputWidget.oo-ui-widget-enabled [type='radio']:active + span {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
}
.oo-ui-radioInputWidget.oo-ui-widget-enabled [type='radio']:checked:active + span {
border-color: var(--ooui-progressive--hover);
box-shadow: inset 0 0 0 1px var(--ooui-progressive--hover);
}
.oo-ui-radioInputWidget.oo-ui-widget-enabled [type='radio']:checked:active + span:before {
border-color: var(--ooui-progressive--hover);
}
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:checked:focus + span,
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:indeterminate:focus + span {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent), inset 0 0 0 2px #fff;
}
.oo-ui-checkboxInputWidget [type='checkbox']:disabled + span,
.oo-ui-radioInputWidget [type='radio']:disabled + span {
background-color: var(--ooui-disabled);
border-color: var(--ooui-disabled);
}
.oo-ui-dropdownWidget-handle {
border-color: var(--ooui-normal-border);
}
.oo-ui-dropdownWidget.oo-ui-widget-enabled .oo-ui-dropdownWidget-handle {
background-color: var(--ooui-normal);
color: var(--ooui-text);
}
.oo-ui-dropdownWidget.oo-ui-widget-enabled .oo-ui-dropdownWidget-handle:hover {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
}
.oo-ui-dropdownWidget.oo-ui-widget-enabled .oo-ui-dropdownWidget-handle:active {
color: var(--ooui-text);
}
.oo-ui-dropdownWidget.oo-ui-widget-enabled .oo-ui-dropdownWidget-handle:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-dropdownWidget.oo-ui-widget-enabled.oo-ui-dropdownWidget-open .oo-ui-dropdownWidget-handle {
background-color: var(--ooui-normal--hover);
}
.oo-ui-dropdownWidget.oo-ui-widget-disabled .oo-ui-dropdownWidget-handle {
color: var(--ooui-disabled-text);
text-shadow: none;
border-color: var(--ooui-disabled-border);
background-color: var(--ooui-disabled);
}
.oo-ui-dropdownInputWidget select {
border-color: var(--ooui-normal-border);
}
.oo-ui-dropdownInputWidget option {
background-color: var(--ooui-interface);
}
.oo-ui-dropdownInputWidget.oo-ui-widget-enabled {
background-color: var(--ooui-normal);
}
.oo-ui-dropdownInputWidget.oo-ui-widget-enabled:hover {
background-color: var(--ooui-normal--hover);
}
.oo-ui-dropdownInputWidget.oo-ui-widget-enabled select {
color: var(--ooui-text);
}
.oo-ui-dropdownInputWidget.oo-ui-widget-enabled select:hover,
.oo-ui-dropdownInputWidget.oo-ui-widget-enabled select:active {
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
}
.oo-ui-dropdownInputWidget.oo-ui-widget-enabled select:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-labelWidget.oo-ui-inline-help {
color: var(--byline-color);
}
.oo-ui-menuSelectWidget {
background-color: var(--ooui-interface);
border-color: var(--ooui-interface-border);
}
.oo-ui-menuSelectWidget-frameless {
box-shadow: inset 0 -1px 0 0 var(--ooui-normal-border);
}
.oo-ui-menuSectionOptionWidget {
color: var(--byline-color);
}
.oo-ui-menuOptionWidget.oo-ui-optionWidget-highlighted,
.oo-ui-menuOptionWidget.oo-ui-optionWidget-selected {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
}
.oo-ui-menuOptionWidget.oo-ui-optionWidget-selected.oo-ui-menuOptionWidget.oo-ui-optionWidget-highlighted,
.oo-ui-menuOptionWidget.oo-ui-optionWidget-pressed.oo-ui-menuOptionWidget.oo-ui-optionWidget-highlighted {
color: var(--ooui-accent);
}
.oo-ui-menuOptionWidget.oo-ui-widget-enabled.oo-ui-optionWidget {
color: var(--ooui-text);
}
.oo-ui-messageDialog-title {
color: inherit;
}
.oo-ui-messageWidget.oo-ui-messageWidget-block.oo-ui-flaggedElement-error {
background-color: var(--errorbox-bg);
border-color: var(--errorbox-border);
}
.oo-ui-messageWidget.oo-ui-messageWidget-block.oo-ui-flaggedElement-warning {
background-color: var(--warningbox-bg);
border-color: var(--warningbox-border);
}
.oo-ui-messageWidget.oo-ui-messageWidget-block.oo-ui-flaggedElement-success {
background-color: var(--successbox-bg);
border-color: var(--successbox-border);
}
.oo-ui-messageWidget.oo-ui-messageWidget-block.oo-ui-flaggedElement-notice {
background-color: var(--messagebox-info-background);
border-color: var(--messagebox-info-border);
}
.oo-ui-messageWidget.oo-ui-flaggedElement-error:not(.oo-ui-messageWidget-block),
.oo-ui-messageWidget.oo-ui-flaggedElement-success:not(.oo-ui-messageWidget-block) {
color: var(--ooui-text);
}
.oo-ui-optionWidget.oo-ui-widget-disabled {
color: var(--ooui-disabled-text);
}
.oo-ui-outlineControlsWidget {
background-color: var(--ooui-normal);
}
.oo-ui-outlineOptionWidget.oo-ui-optionWidget-highlighted {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
}
.oo-ui-popupWidget-popup {
background-color: var(--ooui-interface);
border-color: var(--ooui-interface-border);
}
.oo-ui-popupWidget-anchored-top .oo-ui-popupWidget-anchor:after {
border-bottom-color: var(--ooui-interface);
}
.oo-ui-popupWidget-anchored-top .oo-ui-popupWidget-anchor:before {
border-bottom-color: var(--ooui-interface-border);
}
.oo-ui-popupWidget-anchored-bottom .oo-ui-popupWidget-anchor:after {
border-top-color: var(--ooui-interface);
}
.oo-ui-popupWidget-anchored-bottom .oo-ui-popupWidget-anchor:before {
border-top-color: var(--ooui-interface-border);
}
.oo-ui-popupWidget-anchored-start .oo-ui-popupWidget-anchor:after {
border-right-color: var(--ooui-interface);
}
.oo-ui-popupWidget-anchored-start .oo-ui-popupWidget-anchor:before {
border-right-color: var(--ooui-interface-border);
}
.oo-ui-popupWidget-anchored-end .oo-ui-popupWidget-anchor:after {
border-left-color: var(--ooui-interface);
}
.oo-ui-popupWidget-anchored-end .oo-ui-popupWidget-anchor:before {
border-left-color: var(--ooui-interface-border);
}
.oo-ui-searchWidget-query {
border-bottom-color: var(--ooui-interface-border);
}
.oo-ui-selectFileWidget-dropTarget {
background-color: var(--ooui-interface);
border-color: var(--ooui-interface-border);
}
.oo-ui-selectFileWidget.oo-ui-widget-enabled.oo-ui-selectFileWidget-dropTarget {
background-color: var(--ooui-interface);
}
.oo-ui-selectFileWidget.oo-ui-widget-enabled.oo-ui-selectFileWidget-dropTarget:hover {
border-color: var(--ooui-input-border--hover);
}
.oo-ui-tabOptionWidget {
color: var(--ooui-text);
}
.oo-ui-tabSelectWidget-framed .oo-ui-tabOptionWidget.oo-ui-optionWidget-selected {
background-color: var(--body-dark);
color: var(--ooui-text);
}
.oo-ui-tabSelectWidget-framed .oo-ui-tabOptionWidget.oo-ui-optionWidget-selected .oo-ui-labelElement-label {
border-bottom-color: var(--body-border);
}
.oo-ui-tabSelectWidget-framed .oo-ui-tabOptionWidget.oo-ui-widget-enabled:hover,
.oo-ui-tabSelectWidget-framed .oo-ui-tabOptionWidget.oo-ui-widget-enabled:active {
background-color: var(--body-light);
color: var(--ooui-text);
}
.oo-ui-tabSelectWidget-framed .oo-ui-tabOptionWidget.oo-ui-widget-enabled.oo-ui-optionWidget-selected:hover {
background-color: var(--body-dark);
}
.oo-ui-tabSelectWidget-frameless .oo-ui-tabOptionWidget.oo-ui-optionWidget-selected {
color: var(--ooui-progressive);
box-shadow: inset 0 -2px 0 0 var(--ooui-progressive);
}
.oo-ui-tabSelectWidget-frameless .oo-ui-tabOptionWidget.oo-ui-optionWidget-selected:hover,
.oo-ui-tabSelectWidget-frameless .oo-ui-tabOptionWidget.oo-ui-optionWidget-selected:focus {
color: var(--ooui-progressive--hover);
box-shadow: inset 0 -2px 0 0 var(--ooui-progressive--hover);
}
.oo-ui-tabSelectWidget-framed {
background: none;
border-bottom: 1px solid var(--ooui-interface-border);
}
.oo-ui-tabSelectWidget-frameless {
box-shadow: inset 0 -1px 0 0 var(--ooui-interface-border);
}
.oo-ui-tabSelectWidget-mobile {
}
.oo-ui-tabSelectWidget-mobile.oo-ui-tabSelectWidget-framed:after {
background: var(--mobile-navbox-linear-gradient);
}
.oo-ui-tabSelectWidget-mobile.oo-ui-tabSelectWidget-frameless:after {
background: var(--mobile-navbox-linear-gradient);
}
.oo-ui-tagItemWidget {
border-color: var(--ooui-normal-border);
}
.oo-ui-tagItemWidget.oo-ui-widget-enabled {
color: var(--ooui-text);
}
.oo-ui-tagItemWidget.oo-ui-widget-enabled:hover {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
}
.oo-ui-tagItemWidget.oo-ui-widget-enabled:not( .oo-ui-tagItemWidget-fixed ) {
background-color: var(--ooui-normal);
}
.oo-ui-tagItemWidget.oo-ui-widget-enabled .oo-ui-buttonElement-button:hover {
background-color: var(--ooui-normal--hover);
}
.oo-ui-tagMultiselectWidget.oo-ui-widget-enabled {
background-color: var(--ooui-interface);
}
.oo-ui-tagMultiselectWidget.oo-ui-widget-enabled.oo-ui-tagMultiselectWidget-outlined {
background-color: var(--ooui-normal);
}
.oo-ui-tagMultiselectWidget.oo-ui-widget-enabled.oo-ui-tagMultiselectWidget-outlined .oo-ui-tagItemWidget.oo-ui-widget-enabled {
background-color: var(--ooui-interface);
}
.oo-ui-textInputWidget .oo-ui-inputWidget-input {
background-color: var(--ooui-input);
color: var(--ooui-text);
border-color: var(--ooui-input-border);
}
.oo-ui-textInputWidget.oo-ui-widget-enabled .oo-ui-inputWidget-input::placeholder {
color: var(--subtle-color);
}
.oo-ui-textInputWidget.oo-ui-widget-enabled .oo-ui-inputWidget-input:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-textInputWidget.oo-ui-widget-enabled .oo-ui-inputWidget-input[readonly]:not(.oo-ui-pendingElement-pending) {
background-color: var(--ooui-disabled);
color: var(--ooui-disabled-text);
}
.oo-ui-textInputWidget.oo-ui-widget-enabled:hover .oo-ui-inputWidget-input {
border-color: var(--ooui-input-border--hover);
}
.oo-ui-textInputWidget.oo-ui-widget-enabled:hover .oo-ui-inputWidget-input:focus {
border-color: var(--ooui-accent);
}
@media screen and (min-width: 0) {
.oo-ui-textInputWidget.oo-ui-widget-enabled textarea.oo-ui-inputWidget-input:focus {
outline: 1px solid var(--ooui-accent);
}
}
.oo-ui-textInputWidget.oo-ui-widget-disabled .oo-ui-inputWidget-input {
background-color: var(--ooui-disabled);
color: var(--ooui-disabled-text);
text-shadow: none;
border-color: var(--ooui-disabled-border);
}
.oo-ui-toggleSwitchWidget {
background-color: var(--ooui-input);
border-color: var(--ooui-input-border);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled .oo-ui-toggleSwitchWidget-grip {
background-color: var(--ooui-input);
border-color: var(--ooui-input-border);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:hover {
background-color: var(--ooui-input);
border-color: var(--ooui-accent);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:hover .oo-ui-toggleSwitchWidget-grip {
background-color: var(--ooui-input);
border-color: var(--ooui-accent);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:active,
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:active:hover,
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:active:focus {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
box-shadow: inset 0 0 0 1px var(--ooui-progressive--hover);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:active .oo-ui-toggleSwitchWidget-grip,
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:active:hover .oo-ui-toggleSwitchWidget-grip,
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:active:focus .oo-ui-toggleSwitchWidget-grip {
background-color: var(--ooui-input);
border-color: var(--ooui-input);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:focus .oo-ui-toggleSwitchWidget-grip {
border-color: var(--ooui-accent);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled.oo-ui-toggleWidget-on {
background-color: var(--ooui-progressive);
border-color: var(--ooui-progressive);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled.oo-ui-toggleWidget-on .oo-ui-toggleSwitchWidget-grip {
background-color: var(--ooui-input);
border-color: var(--ooui-input);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled.oo-ui-toggleWidget-on:hover {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled.oo-ui-toggleWidget-on:active,
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled.oo-ui-toggleWidget-on:active:hover {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled.oo-ui-toggleWidget-on:focus {
border-color: var(--ooui-progressive);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled.oo-ui-toggleWidget-on:focus::before {
border-color: #fff;
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-disabled {
background-color: var(--ooui-disabled);
border-color: var(--ooui-disabled);
}
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled > .oo-ui-buttonElement-button {
color: var(--ooui-text);
}
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled > .oo-ui-buttonElement-button:hover {
color: var(--ooui-text);
}
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled > .oo-ui-buttonElement-button:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled.oo-ui-buttonElement-pressed > input.oo-ui-buttonElement-button,
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled > .oo-ui-buttonElement-button:active {
color: var(--ooui-text);
}
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button,
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button:hover {
color: var(--ooui-text);
}
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button:active,
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive.oo-ui-buttonElement-pressed > .oo-ui-buttonElement-button {
color: var(--ooui-text);
border-color: var(--ooui-text);
}
.oo-ui-buttonElement-frameless.oo-ui-widget-disabled > .oo-ui-buttonElement-button {
color: var(--ooui-disabled-text);
}
.oo-ui-buttonElement-framed.oo-ui-widget-disabled > .oo-ui-buttonElement-button {
background-color: var(--ooui-disabled);
border-color: var(--ooui-disabled-border);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled > .oo-ui-buttonElement-button {
background-color: var(--ooui-normal);
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled > .oo-ui-buttonElement-button:hover {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled > .oo-ui-buttonElement-button:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-buttonElement-active > .oo-ui-buttonElement-button {
background-color: var(--ooui-progressive--hover);
color: #fff;
border-color: var(--ooui-progressive--hover);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-buttonElement-active > .oo-ui-buttonElement-button:focus {
border-color: var(--ooui-progressive--hover);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled > .oo-ui-buttonElement-button:active,
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-buttonElement-pressed > .oo-ui-buttonElement-button {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive {
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button {
color: var(--ooui-text);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button:hover {
background-color: var(--ooui-normal--hover);
border-color: var(--ooui-progressive--hover);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-destructive > .oo-ui-buttonElement-button {
color: var(--ooui-text);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-destructive > .oo-ui-buttonElement-button:hover {
background-color: var(--ooui-normal--hover);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button {
background-color: var(--ooui-progressive);
border-color: var(--ooui-progressive);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button:hover {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent), inset 0 0 0 2px #fff;
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button:active,
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive.oo-ui-buttonElement-pressed > .oo-ui-buttonElement-button,
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive.oo-ui-buttonElement-active > .oo-ui-buttonElement-button,
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive.oo-ui-popupToolGroup-active > .oo-ui-buttonElement-button {
color: #fff;
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
}
.oo-ui-pendingElement-pending {
background-image: var(--ooui-pending-background-image);
background-size: 200%;
animation: oo-ui-pendingElement-stripes 6s linear infinite;
}
@keyframes oo-ui-pendingElement-stripes {
100% {
background-position: 100%;
}
}
.oo-ui-messageDialog-content > .oo-ui-window-foot {
outline-color: var(--ooui-interface-border);
}
.oo-ui-messageDialog-message {
color: var(--ooui-text);
}
.oo-ui-messageDialog-actions-horizontal .oo-ui-actionWidget {
border-right-color: var(--ooui-interface-border);
}
.oo-ui-messageDialog-actions-vertical .oo-ui-actionWidget {
border-bottom-color: var(--ooui-interface-border);
}
.oo-ui-processDialog-content .oo-ui-window-head,
.oo-ui-processDialog-content .oo-ui-window-foot {
outline-color: var(--ooui-interface-border);
}
.oo-ui-processDialog .oo-ui-actionWidget > .oo-ui-buttonElement-button {
border-top-color: transparent;
border-bottom-color: transparent;
}
.oo-ui-processDialog .oo-ui-actionWidget > .oo-ui-buttonElement-button:hover,
.oo-ui-processDialog .oo-ui-actionWidget > .oo-ui-buttonElement-button:active {
border-top-color: transparent;
border-bottom-color: transparent;
}
.oo-ui-processDialog .oo-ui-actionWidget:not( .oo-ui-flaggedElement-progressive ):not( .oo-ui-flaggedElement-destructive ) > .oo-ui-buttonElement-button:hover,
.oo-ui-processDialog .oo-ui-actionWidget:not( .oo-ui-flaggedElement-progressive ):not( .oo-ui-flaggedElement-destructive ) > .oo-ui-buttonElement-button:active {
border-right-color: var(--ooui-interface-border);
border-left-color: transparent;
}
.oo-ui-processDialog .oo-ui-actionWidget:not( .oo-ui-flaggedElement-progressive ):not( .oo-ui-flaggedElement-destructive ) > .oo-ui-buttonElement-button:focus {
border-color: var(--ooui-accent);
}
.oo-ui-processDialog-actions-safe .oo-ui-actionWidget > .oo-ui-buttonElement-button,
.oo-ui-processDialog-actions-other .oo-ui-actionWidget > .oo-ui-buttonElement-button {
border-right-color: var(--ooui-normal-border);
border-left-color: transparent;
}
.oo-ui-processDialog-actions-safe .oo-ui-widget-enabled.oo-ui-iconElement:not( .oo-ui-labelElement ) > .oo-ui-buttonElement-button:hover {
background-color: var(--ooui-normal--hover);
border-right-color: var(--ooui-interface-border);
}
.oo-ui-windowManager-modal > .oo-ui-dialog {
background-color: var(--ooui-window-background);
}
.oo-ui-windowManager-modal > .oo-ui-dialog > .oo-ui-window-frame {
background-color: var(--ooui-interface);
}
.oo-ui-windowManager-modal.oo-ui-windowManager-floating > .oo-ui-dialog > .oo-ui-window-frame {
border-color: var(--ooui-interface-border);
}
.oo-ui-window {
color: var(--ooui-text);
}
.oo-ui-toolbar-bar {
background-color: var(--ooui-interface);
color: var(--ooui-text);
}
.oo-ui-toolbar-position-top > .oo-ui-toolbar-bar {
border-bottom-color: var(--body-mid);
}
.oo-ui-toolbar-bar .oo-ui-bookletLayout > .oo-ui-menuLayout-menu {
border-right-color: var(--body-mid);
}
.oo-ui-tool.oo-ui-widget-enabled > .oo-ui-tool-link:hover {
background-color: var(--ooui-normal--hover);
}
.oo-ui-tool.oo-ui-widget-enabled > .oo-ui-tool-link:focus {
outline: 1px solid var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-tool.oo-ui-widget-enabled > .oo-ui-tool-link:active,
.oo-ui-tool.oo-ui-widget-enabled.oo-ui-tool-active > .oo-ui-tool-link,
.oo-ui-tool.oo-ui-widget-enabled.oo-ui-popupToolGroup-active > .oo-ui-tool-link {
background-color: var(--ooui-normal--hover);
color: var(--ooui-accent);
box-shadow: none;
}
.oo-ui-tool.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive > .oo-ui-tool-link {
background-color: var(--ooui-progressive);
}
.oo-ui-tool.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive > .oo-ui-tool-link:hover {
background-color: var(--ooui-progressive--hover);
}
.oo-ui-tool.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive > .oo-ui-tool-link:focus {
box-shadow: inset 0 0 0 1px var(--ooui-accent), inset 0 0 0 2px #fff;
}
.oo-ui-tool.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive > .oo-ui-tool-link:active,
.oo-ui-tool.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive.oo-ui-tool-active > .oo-ui-tool-link {
background-color: var(--ooui-progressive--hover);
}
.oo-ui-listToolGroup-tools .oo-ui-tool.oo-ui-widget-enabled {
background-color: var(--ooui-normal);
}
.oo-ui-listToolGroup-tools .oo-ui-tool.oo-ui-widget-enabled:hover {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
}
.oo-ui-listToolGroup-tools .oo-ui-tool-active.oo-ui-widget-enabled .oo-ui-tool-link .oo-ui-tool-title {
color: var(--ooui-progressive);
}
.oo-ui-menuToolGroup {
border-left-color: var(--body-mid);
border-right-color: var(--body-mid);
}
.oo-ui-popupToolGroup-tools {
background-color: var(--ooui-interface);
border-color: var(--body-mid);
}
.oo-ui-popupToolGroup.oo-ui-widget-enabled > .oo-ui-popupToolGroup-handle:hover {
background-color: var(--ooui-normal--hover);
}
.oo-ui-popupToolGroup.oo-ui-widget-enabled > .oo-ui-popupToolGroup-handle:focus {
outline: 1px solid var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-toolbar-actions .oo-ui-popupToolGroup.oo-ui-widget-enabled > .oo-ui-popupToolGroup-handle:hover {
border-right-color: var(--ooui-normal--hover);
}
.oo-ui-popupToolGroup-tools .oo-ui-tool.oo-ui-widget-enabled .oo-ui-tool-link:focus {
box-shadow: inset 0 0 0 2px var(--ooui-accent);
}
.oo-ui-popupToolGroup-tools .oo-ui-tool-active.oo-ui-widget-enabled .oo-ui-tool-link .oo-ui-tool-title {
color: var(--ooui-progressive);
}
.oo-ui-popupToolGroup.oo-ui-popupToolGroup-active > .oo-ui-popupToolGroup-handle {
background-color: var(--ooui-normal);
color: var(--ooui-accent);
}
.oo-ui-popupToolGroup.oo-ui-popupToolGroup-active > .oo-ui-popupToolGroup-handle:hover {
background-color: var(--ooui-normal--hover);
color: var(--ooui-accent);
}
.oo-ui-bookletLayout-outlinePanel > .oo-ui-outlineControlsWidget {
border-top-color: var(--ooui-interface-border);
}
.oo-ui-bookletLayout > .oo-ui-menuLayout-menu {
border-right-color: var(--ooui-interface-border);
}
.oo-ui-fieldLayout-disabled > .oo-ui-fieldLayout-body > .oo-ui-fieldLayout-header > .oo-ui-labelElement-label {
color: var(--ooui-disabled-text);
}
.oo-ui-panelLayout-framed {
border-color: var(--sidebar);
}
.oo-ui-icon-settings {
background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' width='20' height='20' viewBox='0 0 20 20'%3E%3Ctitle%3Esettings%3C/title%3E%3Cg transform='translate(10 10)'%3E%3Cpath id='a' d='M1.5-10h-3l-1 6.5h5m0 7h-5l1 6.5h3'/%3E%3Cuse xlink:href='%23a' transform='rotate(45)'/%3E%3Cuse xlink:href='%23a' transform='rotate(90)'/%3E%3Cuse xlink:href='%23a' transform='rotate(135)'/%3E%3C/g%3E%3Cpath d='M10 2.5a7.5 7.5 0 0 0 0 15 7.5 7.5 0 0 0 0-15v4a3.5 3.5 0 0 1 0 7 3.5 3.5 0 0 1 0-7'/%3E%3C/svg%3E");
}
.oo-ui-icon-clear {
background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 20 20'%3E%3Ctitle%3Eclear%3C/title%3E%3Cpath d='M10 0a10 10 0 1 0 10 10A10 10 0 0 0 10 0zm5.66 14.24-1.41 1.41L10 11.41l-4.24 4.25-1.42-1.42L8.59 10 4.34 5.76l1.42-1.42L10 8.59l4.24-4.24 1.41 1.41L11.41 10z'/%3E%3C/svg%3E");
}
.mw-widget-dateInputWidget-handle {
background-color: var(--ooui-input);
color: var(--ooui-text);
border-color: var(--ooui-input-border);
}
.mw-widget-dateInputWidget-calendar {
background-color: var(--ooui-interface);
}
.mw-widget-dateInputWidget.oo-ui-widget-enabled .mw-widget-dateInputWidget-handle:hover {
border-color: var(--ooui-input-border--hover);
}
.mw-widget-calendarWidget {
border-color: var(--ooui-interface-border);
}
.mw-widget-calendarWidget:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.mw-widget-calendarWidget-day,
.mw-widget-calendarWidget-day-heading {
color: var(--ooui-text);
}
.mw-widget-calendarWidget-day-additional {
color: var(--ooui-text);
opacity: 0.67;
}
.mw-widget-calendarWidget-day-today {
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.mw-widget-calendarWidget-item:hover {
background-color: var(--ooui-progressive);
}
.mw-widget-calendarWidget-item-selected {
background-color: var(--ooui-progressive--hover);
}
.mw-widgets-datetime-calendarWidget {
background-color: var(--ooui-interface);
border-color: var(--ooui-interface-border);
}
.mw-widgets-datetime-calendarWidget:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent), 0 2px 2px 0 rgba(0, 0, 0, 0.25);
}
.mw-widgets-datetime-calendarWidget-grid .mw-widgets-datetime-calendarWidget-cell.mw-widgets-datetime-calendarWidget-extra .oo-ui-buttonElement-button .oo-ui-labelElement-label {
color: var(--subtle-color);
}
.mw-widgets-datetime-calendarWidget-grid .mw-widgets-datetime-calendarWidget-cell.mw-widgets-datetime-calendarWidget-selected .oo-ui-buttonElement-button {
background-color: var(--ooui-progressive--hover);
}
.mw-widgets-datetime-dateTimeInputWidget-handle {
background-color: var(--ooui-input);
color: var(--ooui-text);
border-color: var(--ooui-input-border);
}
.mw-widgets-datetime-dateTimeInputWidget.oo-ui-widget-enabled.mw-widgets-datetime-dateTimeInputWidget-handle:hover {
border-color: var(--ooui-input-border--hover);
}
.mw-widgets-datetime-dateTimeInputWidget.oo-ui-widget-enabled:hover input,
.mw-widgets-datetime-dateTimeInputWidget.oo-ui-widget-enabled:hover textarea {
border-color: var(--ooui-input-border--hover);
}
.mw-widgets-datetime-dateTimeInputWidget.oo-ui-widget-enabled .mw-widgets-datetime-dateTimeInputWidget-editField:hover {
background-color: var(--ooui-normal);
}
.ve-activated .ve-init-mw-desktopArticleTarget-originalContent #catlinks:hover {
background: var(--ooui-normal--hover);
}
.ve-ui-overlay {
font-family: inherit;
}
.oo-ui-toolbar-position-top .ve-ui-toolbarDialog-position-above {
border-top-color: var(--body-mid);
}
.ve-ce-branchNode-blockSlug,
.ve-ce-branchNode-newSlug {
outline-color: var(--body-border);
background-color: var(--ooui-interface);
}
.ve-ui-specialCharacterPage h3 {
color: var(--byline-color);
}
.ve-ui-specialCharacterPage-character {
border-color: var(--body-mid);
}
.ve-ui-specialCharacterPage-character:hover {
border-color: var(--body-dark);
}
.ve-ce-linkAnnotation.ve-ce-annotation-active {
box-shadow: 0 0 0 1px var(--body-mid);
background: none;
}
.ve-ui-desktopContext .ve-ui-linkContextItem .ve-ui-linkContextItem-label {
border-color: var(--body-border);
}
.ve-ui-mwHelpPopupTool-version-label,
.ve-ui-mwHelpPopupTool-version-link,
.ve-ui-mwHelpPopupTool-version-date {
color: var(--byline-color);
}
.ve-ce-tableCellableNode {
border-color: var(--body-mid);
}
.ve-ce-mwReferencesListNode-muted {
color: var(--byline-color);
}
.ve-ui-mwTemplatePage-description,
.ve-ui-mwParameterPage-label,
.ve-ui-mwParameterPage-description-required,
.ve-ui-mwParameterPage-description-deprecated {
color: var(--byline-color);
}
.mw-widget-titleWidget-menu .mw-widget-titleOptionWidget-description {
color: var(--byline-color);
}
.ve-ui-mwGalleryDialog-menuLayout > .oo-ui-menuLayout-menu,
.ve-ui-mwGalleryDialog-innerMenuLayout > .oo-ui-menuLayout-menu,
.ve-ui-mwGalleryDialog .ve-ui-mwGalleryDialog-image-container,
.ve-ui-targetWidget {
border-color: var(--body-border);
}
.ve-ui-targetWidget:not(.oo-ui-pendingElement-pending) {
background-color: var(--body-main);
}
.ve-ui-mwSaveDialog {
color: var(--ooui-text);
}
.ve-ui-mwSaveDialog-options {
background-color: var(--ooui-interface);
border-color: var(--body-border);
}
.ve-ui-mwSaveDialog-summary {
background-color: var(--ooui-input);
}
.ve-ui-mwSaveDialog-editSummary-count {
border-color: var(--body-border);
}
.ve-ui-mwSaveDialog-license {
color: var(--byline-color);
}
.ve-ui-mwReferenceContextItem-muted {
color: var(--byline-color);
}
.ve-ui-mwNoticesPopupTool-items > div:not(:first-child),
.ve-ui-mwHelpPopupTool-item:not(:first-child) {
border-color: var(--body-border);
}
.ve-ui-mwTransclusionOutlineControlsWidget {
background-color: var(--ooui-interface);
border-top-color: var(--body-border);
}
.ve-ui-mwTransclusionOutlineTemplateWidget-sticky {
background-color: var(--ooui-interface);
}
.ve-ui-mwTransclusionOutlineTemplateWidget .ve-ui-mwTransclusionOutlineParameterWidget.oo-ui-optionWidget-highlighted {
color: var(--ooui-text);
}
.ve-ui-mwTransclusionOutlineTemplateWidget-no-template-parameters {
color: var(--subtle-color);
}
.ve-ui-mwParameterPage-undocumentedLabel {
color: var(--subtle-color);
}
.ve-ui-mwTwoPaneTransclusionDialogLayout > .oo-ui-menuLayout-menu {
border-right: var(--body-border);
}
.ve-ui-mwParameterPage-doc-required,
.ve-ui-mwParameterPage-doc-deprecated,
.ve-ui-mwParameterPage-inlineDescription .ve-ui-mwParameterPage-doc-example {
color: var(--byline-color);
}
.ve-ui-expandableContent-toggle {
background-color: var(--ooui-interface);
}
.ve-ui-expandableContent-fade {
background: linear-gradient(to right, rgba(255, 255, 255, 0) 0, var(--ooui-interface) 90%);
}
.ve-ui-commandHelpDialog-shortcut > kbd,
.ve-ui-commandHelpDialog-sequence > kbd {
background-color: var(--keypress-background);
color: var(--keypress-color);
border-color: var(--keypress-border);
box-shadow: none;
text-shadow: none;
}
.ve-init-mw-desktopArticleTarget-toolbarPlaceholder-floating .ve-init-mw-desktopArticleTarget-toolbarPlaceholder-bar {
background: var(--ooui-interface);
}
.ve-init-mw-desktopArticleTarget-toolbarPlaceholder-bar {
border-bottom-color: var(--body-mid);
}
figure[typeof~='mw:File/Thumb'],
figure[typeof~='mw:File/Frame'],
figure[typeof~='mw:Image/Thumb'],
figure[typeof~='mw:Video/Thumb'],
figure[typeof~='mw:Image/Frame'],
figure[typeof~='mw:Video/Frame'] {
border: none;
background-color: var(--thumb-bg);
}
figure[typeof~='mw:File/Thumb'] > a:first-child > *:first-child:not( .mw-broken-media ),
figure[typeof~='mw:File/Frame'] > a:first-child > *:first-child:not( .mw-broken-media ),
figure[typeof~='mw:Image/Thumb'] > a:first-child > *:first-child:not( .mw-broken-media ),
figure[typeof~='mw:Video/Thumb'] > a:first-child > *:first-child:not( .mw-broken-media ),
figure[typeof~='mw:Image/Frame'] > a:first-child > *:first-child:not( .mw-broken-media ),
figure[typeof~='mw:Video/Frame'] > a:first-child > *:first-child:not( .mw-broken-media ) {
border: none;
background: var(--thumb-bg);
}
figure[typeof~='mw:File/Thumb'] > figcaption,
figure[typeof~='mw:File/Frame'] > figcaption,
figure[typeof~='mw:Image/Thumb'] > figcaption,
figure[typeof~='mw:Video/Thumb'] > figcaption,
figure[typeof~='mw:Image/Frame'] > figcaption,
figure[typeof~='mw:Video/Frame'] > figcaption {
border: none;
background-color: var(--thumb-caption-bg);
padding: 4px 6px;
}
:root {
--infobox-text-color: var(--text-color);
}
ol.references,
.reflist {
font-size: 90%;
}
.reflist {
list-style-type: decimal;
}
.reflist .references {
font-size: 100%;
list-style-type: inherit;
}
.reflist-lower-alpha {
list-style-type: lower-alpha;
}
ol.references li:target,
sup.reference:target {
background-color: var(--body-light);
}
.hideQuotes .refhide {
display: none;
}
:root {
--byline-arrow-filter: invert(29%) sepia(0%) saturate(376%) hue-rotate(172deg) brightness(87%) contrast(80%);
--tile-border-color: #cabe9b;
--tile-background-color: #f9f3eb;
--tile-link-button-color: #f5e9db;
--tile-link-button-highlight-color: #dfccb0;
--tile-dark-color: #fff;
--tile-dark-bg: #5d6773;
--tile-dark-link-color: #ccc;
--tile-dark-byline-color: rgba(255, 255, 255, 0.7);
--tile-dark-header-color: #fff;
}
.tile {
background: var(--tile-background-color);
border: 1px solid var(--tile-border-color);
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
padding: 1.5em 2em 1em;
max-width: 40em;
}
.tile h2 {
font-size: 1.4em;
font-weight: bold;
border: none;
margin: 0 0 0.4em;
}
.tile .byline + h2 {
margin-top: -0.5em;
}
.tile.dark {
color: var(--tile-dark-color);
background: var(--tile-dark-bg);
border: none;
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.3);
}
.tile.dark h2 {
color: var(--tile-dark-header-color);
}
.tile.dark a {
color: var(--tile-dark-link-color);
}
.tile.dark .byline {
color: var(--tile-dark-byline-color);
}
.byline {
font-size: 0.9em;
color: var(--byline-color);
}
.byline a {
color: var(--byline-color);
}
.tile-row {
display: flex;
flex-flow: row wrap;
margin-bottom: 1em;
}
.tile-halves {
display: flex;
flex-flow: row wrap;
border: 1px solid var(--tile-border-color);
background: var(--tile-background-color);
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
}
.tile-halves h2 {
font-size: 1.4em;
font-weight: bold;
border: none;
margin: 0 0 0.4em;
}
.tile-halves .byline + h2 {
margin-top: -0.5em;
}
.tile-top {
width: 100%;
padding: 1.3rem 1.5rem 0.6rem;
}
.tile-top.tile-image {
display: flex;
align-items: center;
background-color: var(--byline-color);
overflow: hidden;
padding: 0;
height: 13vw;
max-height: 12em;
transition: 0.4s ease-out;
}
.tile-halves:hover .tile-top.tile-image img {
transform: scale(1.1);
transition: 0.5s ease-out;
}
.tile-top.tile-image a {
width: 100%;
}
.tile-top.tile-image img {
width: 100%;
object-fit: cover;
max-height: 200px;
transition: 0.4s ease-out;
}
.tile-bottom {
background: var(--tile-background-color);
border-top: 1px solid var(--tile-border-color);
width: 100%;
padding: 1rem 1.5rem 0.6rem;
}
.tile-bottom.link-button {
align-self: flex-end;
padding: 0;
}
.tile-bottom.link-button a {
display: block;
text-align: center;
padding: 0.75em 1.5em 0.8em;
text-decoration: none;
}
.tile-bottom.read-more {
background: var(--tile-link-button-color);
transition: 0.3s ease-out;
}
.tile-bottom.read-more a {
color: var(--byline-color);
font-weight: bold;
text-align: right;
}
.tile-bottom.read-more:hover {
background: var(--tile-link-button-highlight-color);
}
.tile-bottom.read-more:hover .arrow {
transform: translateX(50%);
}
.tile-bottom.read-more .arrow {
filter: var(--byline-arrow-filter);
margin-left: 0.4em;
transition: 0.3s ease-out;
}
body.page-Main_Page .mw-parser-output {
max-width: 75em;
margin: 0 auto;
}
body.page-Main_Page.action-view .catlinks,
body.page-Main_Page.action-view #contentSub,
body.page-Main_Page.action-view #siteNotice {
display: none;
}
.mainpage-header {
display: flex;
margin: 2.6em 1.75em 1.5em;
}
.mainpage-header .header-intro {
flex: 2;
}
.mainpage-header .header-intro h1 {
font-size: 2.5em;
font-weight: bold;
border: none;
margin: 0 0 0.15em;
}
.mainpage-header .header-intro p {
font-size: 1.1em;
line-height: 1.7em;
}
.mainpage-header .header-stats {
flex: 1;
display: flex;
justify-content: center;
align-items: center;
margin-top: -1em;
}
.mainpage-body {
display: grid;
grid-template-areas: "event event event" "update update update" "content content content" "left left right";
gap: 0.9rem;
grid-template-columns: repeat(3, 1fr);
}
.mainpage-body h2 a {
color: var(--text-color);
}
.mainpage-body .tile {
padding-left: 1.75em;
padding-right: 1.75em;
max-width: 100%;
}
.mainpage-body .tile-row {
width: 100%;
margin-bottom: 0;
}
.mainpage-body .tile-row {
display: grid;
gap: 0.9rem;
}
.mainpage-left {
grid-area: left;
flex: 2;
display: flex;
flex-flow: column wrap;
}
.mainpage-left > * {
margin: 0 0 0.9rem;
}
.mainpage-right {
grid-area: right;
flex: 1;
display: flex;
flex-flow: column wrap;
}
.mainpage-right > * {
margin: 0 0 0.9rem;
}
.arrow {
background: url('filepath://White-chevron.svg') no-repeat;
display: inline-block;
height: 0.7rem;
width: 0.45rem;
vertical-align: middle;
}
.arrow.dark {
filter: invert(80%);
}
.mainpage-contents {
grid-area: content;
grid-template-columns: repeat(6, 1fr);
}
.mainpage-contents .tile-halves {
flex: 1;
}
.mainpage-contents .tile-top {
height: 4.5rem;
position: relative;
}
.mainpage-contents h2 {
margin: 0;
padding: 0;
}
.mainpage-contents .tile-bottom.link-button a {
padding: 0.75em 0.2em;
}
.popular-pages ul {
display: grid;
grid-template-columns: repeat(3, 1fr);
grid-gap: 0.6em;
margin: 1em 0 0.7em 0;
}
.mp-popular-page-light {
display: flex;
align-items: center;
background-color: var(--button-background);
transition: 100ms;
}
.mp-popular-page-light a {
flex: 1;
display: block;
color: #fff;
font-weight: bold;
text-align: center;
text-decoration: none;
padding: 0.7em 1em;
}
.mp-popular-page-light:hover {
filter: brightness(115%);
transition: 100ms;
}
.mainpage-discord {
border: none;
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.3);
}
.mainpage-discord .tile-top {
display: flex;
align-items: center;
background: #5865f2;
padding: 1em 1.75em;
}
.mainpage-discord .tile-top a {
flex: 1;
position: relative;
text-decoration: none;
}
.mainpage-discord .tile-top a:hover .arrow {
transform: translateX(50%);
}
.mainpage-discord .tile-bottom {
background: #525ee0;
border: none;
padding: 1em 1.75em;
}
.mainpage-discord .tile-bottom p {
color: #fff;
font-weight: bold;
font-size: 0.9em;
text-align: center;
text-transform: uppercase;
letter-spacing: 0.03em;
margin: 0;
}
.mainpage-discord .partner-icon {
margin-right: 0.75em;
}
.mainpage-discord .server-name {
color: #fff;
font-weight: bold;
font-size: 1.25em;
margin: 0.5em 0 -0.15em;
}
.mainpage-discord .server-tagline {
color: rgba(255, 255, 255, 0.9);
margin-bottom: 0.5em;
}
.mainpage-discord .arrow {
position: absolute;
top: calc(50% - .5em);
right: 0;
height: 1em;
width: 0.7em;
background-size: 0.7em 1em;
transition: 0.3s ease-out;
}
.mainpage-editing {
border: none;
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.3);
}
.mainpage-editing .tile-top {
background: #438ab5;
}
.mainpage-editing .tile-bottom {
background: #3980ab;
border: none;
padding: 0.8rem 1.5rem 0.4rem;
}
.mainpage-editing h2,
.mainpage-editing a {
color: #fff;
}
.mainpage-editing p {
color: rgba(255, 255, 255, 0.9);
}
.mainpage-editing ul {
list-style-image: url('filepath://Transparent-chevron.svg');
}
@media only screen and (max-width: 1200px) {
.mainpage-contents {
grid-template-columns: repeat(3, 1fr);
}
}
@media only screen and (max-width: 1000px) {
.mainpage-body {
grid-template-areas: "event event event" "update update update" "content content content" "left left left" "right right right";
}
.mainpage-recent-updates {
grid-template-columns: repeat(2, 1fr);
}
.mainpage-recent-updates .tile-halves:last-child {
display: none;
}
.mainpage-recent-updates .tile-halves:hover .tile-top img {
transform: scale(1.04);
}
.mainpage-recent-updates .tile-top {
height: 18vw;
min-height: 9em;
}
.mainpage-header .header-stats {
display: none;
}
.mainpage-left > *:last-child,
.mainpage-right > *:last-child {
margin-bottom: 0;
}
.popular-pages ul {
grid-template-columns: repeat(2, 1fr);
}
}
@media only screen and (max-width: 720px) {
.mainpage-recent-updates {
grid-template-columns: none;
}
.mainpage-recent-updates .tile-halves:last-child {
display: flex;
}
.mainpage-contents {
grid-template-columns: repeat(2, 1fr);
}
}
.mw-prefs-buttons {
background-color: var(--body-main);
border-top-color: var(--body-border);
box-shadow: none;
}
.mw-prefs-tabs-wrapper.oo-ui-panelLayout-framed,
.mw-prefs-tabs > .oo-ui-menuLayout-content > .oo-ui-indexLayout-stackLayout > .oo-ui-tabPanelLayout {
border-color: var(--body-border);
}
.mw-htmlform-ooui .mw-htmlform-matrix tbody tr:nth-child(even) td {
background-color: var(--body-light);
}
.mw-htmlform-ooui .mw-htmlform-matrix tbody tr:hover td {
background-color: var(--body-mid);
}
:root {
--rc-positive-color: #407813;
--rc-negative-color: #b41e0f;
}
.mw-plusminus-pos {
color: var(--rc-positive-color);
}
.mw-plusminus-neg {
color: var(--rc-negative-color);
}
.client-js .mw-recentchanges-toplinks:not(.mw-recentchanges-toplinks-collapsed) {
border-color: var(--body-border);
background-color: var(--body-light);
border-radius: 2px;
}
.mw-rcfilters-ui-filterTagMultiselectWidget-wrapper-content-title {
color: var(--text-color);
}
.mw-rcfilters-ui-filterTagMultiselectWidget-emptyFilters {
color: var(--byline-color);
}
.mw-rcfilters-ui-filterTagMultiselectWidget.oo-ui-widget-enabled .oo-ui-tagMultiselectWidget-handle {
background-color: var(--ooui-interface);
border-color: var(--ooui-interface-border);
}
.mw-rcfilters-ui-filterTagMultiselectWidget-views-select-widget.oo-ui-widget {
border-color: var(--ooui-interface-border);
}
.mw-rcfilters-collapsed .mw-rcfilters-ui-filterTagMultiselectWidget {
border-bottom-color: var(--ooui-interface-border);
}
.mw-rcfilters-ui-menuSelectWidget-footer {
background-color: var(--ooui-interface);
border-color: var(--ooui-interface-border);
}
.mw-rcfilters-ui-viewSwitchWidget label.oo-ui-labelWidget {
color: var(--byline-color);
}
.mw-rcfilters-ui-tagItemWidget-popup-content {
color: var(--ooui-text);
}
.mw-changeslist-legend,
.mw-rcfilters-ui-changesListWrapperWidget .mw-changeslist-legend {
background-color: var(--body-light);
border-color: var(--body-dark);
}
.mw-rcfilters-ui-changesListWrapperWidget-previousChangesIndicator {
border-color: var(--sidebar);
}
.client-js .mw-changeslist ul,
.client-js .mw-changeslist table.mw-enhanced-rc {
margin-left: 0;
}
.mw-rcfilters-ui-watchlistTopSectionWidget-separator {
border-color: var(--sidebar);
}
.mw-rcfilters-ui-itemMenuOptionWidget-header {
border-bottom-color: var(--ooui-interface);
background-color: var(--ooui-interface-border);
}
.mw-rcfilters-ui-itemMenuOptionWidget:not(:last-child):not(.mw-rcfilters-ui-itemMenuOptionWidget-identifier-talk) {
border-bottom-color: var(--ooui-normal-border);
}
.mw-rcfilters-ui-itemMenuOptionWidget-label-title,
.mw-rcfilters-ui-itemMenuOptionWidget-label-desc {
color: var(--text-color);
}
.mw-rcfilters-ui-filterMenuOptionWidget.oo-ui-flaggedElement-muted:not(.oo-ui-optionWidget-selected) {
background-color: var(--body-main);
}
.mw-rcfilters-ui-filterMenuOptionWidget.oo-ui-flaggedElement-muted .mw-rcfilters-ui-itemMenuOptionWidget-label-title,
.mw-rcfilters-ui-filterMenuOptionWidget.oo-ui-flaggedElement-muted .mw-rcfilters-ui-itemMenuOptionWidget-label-desc {
color: var(--subtle-color);
}
.mw-rcfilters-ui-filterMenuSectionOptionWidget {
background-color: var(--body-mid);
}
.mw-rcfilters-ui-filterMenuSectionOptionWidget-header-title.oo-ui-labelElement-label {
color: var(--ooui-text);
}
.mw-rcfilters-ui-filterMenuHeaderWidget-title {
color: var(--ooui-text);
}
.mw-rcfilters-ui-filterMenuHeaderWidget-header {
border-bottom-color: var(--ooui-interface-border);
background-color: var(--ooui-interface);
}
.mw-rcfilters-ui-itemMenuOptionWidget-view-namespaces {
border-top-color: var(--ooui-interface-border);
}
.mw-rcfilters-ui-datePopupWidget {
border-color: var(--ooui-interface-border);
}
.mw-rcfilters-ui-datePopupWidget .mw-rcfilters-ui-valuePickerWidget-title {
color: var(--byline-color);
}
.mw-rcfilters-ui-savedLinksListItemWidget-label {
color: var(--ooui-accent);
}
.client-js .mw-changeslist.mw-rcfilters-ui-changesListWrapperWidget-highlighted ul,
.client-js .mw-changeslist.mw-rcfilters-ui-changesListWrapperWidget-highlighted table.mw-enhanced-rc {
margin-left: 1.5em;
}
.page-Special_CreateAccount .mw-ui-container,
.page-Special_UserLogin .mw-ui-container {
max-width: 64rem;
margin: 0 auto;
}
.mw-number-text {
color: var(--byline-color);
}
.mw-body-content .mw-number-text h3 {
color: var(--text-color);
}
#mw-indicator-mw-helplink a {
background: none;
padding: 0;
display: flex;
align-items: center;
}
#mw-indicator-mw-helplink a::before {
content: '';
margin-right: 5px;
-webkit-mask: url("/resources/src/mediawiki.helplink/images/helpNotice.svg?46d34") no-repeat 50% 50% / contain;
mask: url("/resources/src/mediawiki.helplink/images/helpNotice.svg?46d34") no-repeat 50% 50% / contain;
background: var(--text-color);
height: 20px;
width: 20px;
}
.results-info {
color: inherit;
}
.mw-search-profile-tabs {
background-color: var(--body-mid);
border-color: transparent;
}
.search-types .current a {
color: inherit;
}
#mw-searchoptions {
background-color: var(--body-mid);
border-color: transparent;
}
#mw-searchoptions .divider {
border-color: var(--body-border);
}
#mw-searchoptions h4 {
font-family: inherit;
}
#mw-searchoptions .oo-ui-labelElement:nth-of-type(odd) {
font-weight: bold;
}
.searchresult {
line-height: 1.5;
}
.searchalttitle,
#mw-search-interwiki li {
font-size: 90%;
}
.mw-search-result-data {
color: var(--byline-color);
}
.page-Special_ListFiles a.image img {
width: inherit;
height: inherit;
}
.page-Special_ListFiles .TablePager_col_thumb {
text-align: center;
}
#editcount table[border="1"] {
background-color: var(--body-main) !important;
border-color: var(--wikitable-border) !important;
margin-top: 0.5em;
}
#editcount table[border="1"] th,
#editcount table[border="1"] td {
padding: 0.2em 0.4em;
}
#editcount table[border="1"] th {
background-color: var(--wikitable-header-bg);
border: 1px solid var(--wikitable-border);
}
#editcount table[border="1"] td {
border: 1px solid var(--wikitable-border);
}
#editcount table[border="1"] tr:nth-child(odd) {
background-color: var(--body-light);
}
.mw-echo-ui-notificationBadgeButtonPopupWidget-popup > .oo-ui-popupWidget-popup .mw-echo-ui-placeholderItemWidget {
background-color: inherit;
}
table.mw-interwikitable.body td.mw-interwikitable-local-yes {
background-color: var(--table-yes-background);
color: var(--table-yes-color);
}
.mw-protectedpages-unknown {
color: var(--byline-color);
}
.watchlistredir,
.allpagesredirect {
font-style: italic;
}
.allpagesredirect:after {
color: var(--byline-color);
content: " (redirect)";
}
.mw-apisandbox-toolbar {
background: var(--body-main);
}
.oo-ui-menuOptionWidget .mw-apisandbox-flag {
color: var(--byline-color);
}
tr.mw-abusefilter-list-disabled,
tr.mw-abusefilter-list-disabled td {
color: var(--byline-color);
}
table.mw-abuselog-details {
background: var(--wikitable-bg);
border-color: var(--wikitable-border);
}
table.mw-abuselog-details th {
background: var(--wikitable-header-bg);
}
table.mw-abuselog-details th,
table.mw-abuselog-details td {
border-color: var(--wikitable-border);
}
.mw-abusefilter-log-hidden-entry {
color: var(--subtle-color);
}
body td.mw-abusefilter-history-changed {
background: var(--table-no-background);
}
div.mw-abusefilter-editor,
#mw-abusefilter-warn-preview,
#mw-abusefilter-disallow-preview {
border-color: var(--ooui-input-border);
}
.mw-destfile-warning {
border-color: var(--warningbox-border);
color: var(--text-color);
background-color: var(--warningbox-bg);
}
span.fileinput-button {
background-color: var(--ooui-normal);
border-color: var(--ooui-normal-border);
color: var(--ooui-text);
}
ul.fileupload-results li.ful-success {
background-color: var(--successbox-bg);
}
ul.fileupload-results li.ful-success a {
color: var(--link-color);
}
ul.fileupload-results li.ful-error {
background-color: var(--errorbox-bg);
}
#t-print,
#t-permalink {
display: none;
}
#filetoc {
border-radius: 2px;
background: var(--body-mid);
border-color: transparent;
margin: 0.5em auto;
text-align: center;
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
}
li.gallerybox div.thumb {
border: none;
background-color: var(--thumb-bg);
}
.smwfact {
display: none;
}
.list-header {
background-color: var(--body-mid);
color: inherit;
}
.editOptions {
color: var(--text-color);
background-color: var(--sourceeditor-background-secondary);
border-color: var(--sourceeditor-border);
}
.mw-json th,
.mw-json td {
border-color: var(--wikitable-border);
}
.mw-json td {
background: var(--wikitable-bg);
}
.mw-json th {
background: var(--wikitable-header-bg);
}
54bb9cce5a825deff519749f435b1b077d5fc736
90
87
2024-03-22T03:33:08Z
Jayden
3
Updating CSS from [[MediaWiki:Common.less]]
css
text/css
/* <pre> */
:root {
--body-main: #e2dbc8;
--body-light: #d8ccb4;
--body-mid: #d0bd97;
--body-dark: #b8a282;
--body-border: #94866d;
--body-background-color: #513e36;
--button-background: #605443;
--button-color: #fff;
--button-border: #3c352a;
--button-dark: #18140c;
--button-light: #3a301d;
--sidebar: #cfc08d;
--background-text-color: #e2dbc8;
--background-link-color: #e2bd8a;
--search-box: #efeee6;
--link-color: #936039;
--redlink-color: #ba0000;
--text-color: #000;
--byline-color: #4c4c4c;
--subtle-color: #777;
--admin-blue: #332e75;
--bearcat-green: #13592e;
--awb-purple: #933b96;
--rsw-blue: #438ab6;
--osrsw-brown: #605443;
--thumb-bg: var(--body-light);
--thumb-caption-bg: var(--body-mid);
--sourceeditor-input-background: #fff;
--sourceeditor-background: var(--body-light);
--sourceeditor-background-secondary: var(--body-light);
--sourceeditor-border: var(--body-mid);
--codemirror-gutter-background: var(--body-mid);
}
@font-face {
font-family: 'Lora';
font-weight: 400 700;
font-style: normal;
font-display: swap;
src: url('filepath://Lora.woff2') format('woff2');
}
@font-face {
font-family: 'Lora';
font-weight: 400 700;
font-style: italic;
font-display: swap;
src: url('filepath://Lora-Italic.woff2') format('woff2');
}
:root {
--base-text-color: #36414f;
--base-heading-color: #444e5a;
--base-heading-border: #e4eaee;
--mw-code-background-color: #ddd4bb;
--body-background-image: url('filepath://Wiki_background.jpg');
}
#mw-page-base {
background: none;
}
.mw-body {
background-color: var(--body-main);
color: var(--text-color);
border-color: transparent;
box-shadow: 0 0 7px rgba(0, 0, 0, 0.15);
margin-top: 0;
}
h1,
h2,
h3,
h4,
h5,
h6 {
color: var(--text-color);
}
h1,
h2 {
border-color: var(--sidebar);
}
.mw-body h1,
.mw-body-content h1,
.mw-body-content h2,
.mw-body-content h3,
.mw-body-content h4,
.mw-body-content h5,
.mw-body-content h6 {
font-family: 'Lora', 'Palatino', 'Georgia', serif;
}
.mw-parser-output h2:first-of-type {
clear: left;
}
.mw-footer {
color: var(--background-text-color);
}
.mw-footer li {
color: var(--background-text-color);
}
.mw-footer a,
.mw-footer a:active,
.mw-footer a:visited {
color: var(--background-link-color);
}
::placeholder {
color: var(--subtle-color);
}
a {
color: var(--link-color);
}
a:visited,
a:active {
color: var(--link-color);
}
a.new {
color: var(--redlink-color);
}
a.new:visited {
color: var(--redlink-color);
}
.mw-parser-output a.extiw,
.mw-parser-output a.external {
color: var(--link-color);
}
.mw-parser-output a.extiw:visited,
.mw-parser-output a.external:visited,
.mw-parser-output a.extiw:active,
.mw-parser-output a.external:active {
color: var(--link-color);
}
.jsPurgeLink a.external {
color: var(--link-color);
}
:root {
--errorbox-bg: #feecea;
--errorbox-border: #ee4231;
--warningbox-bg: #fef9de;
--warningbox-border: #f9d000;
--successbox-bg: #ecf8e3;
--successbox-border: #6bc71f;
}
.mw-message-box-error,
.errorbox,
.mw-message-box-warning,
.warningbox,
.mw-message-box-success,
.successbox,
.usermessage {
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
}
.mw-message-box-error,
.errorbox {
background-color: var(--errorbox-bg);
border-color: var(--errorbox-border);
}
.mw-message-box-warning,
.warningbox,
.usermessage {
background-color: var(--warningbox-bg);
border-color: var(--warningbox-border);
}
.mw-message-box-success,
.successbox {
background-color: var(--successbox-bg);
border-color: var(--successbox-border);
}
.catlinks {
background: var(--body-light);
border: 1px solid var(--body-dark);
padding: 8px 15px;
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
}
.catlinks li {
border-color: var(--body-mid);
}
.filehistory a img,
#file img {
background: url("data:image/svg+xml,%3C%3Fxml version='1.0' encoding='UTF-8'%3F%3E%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16'%3E%3Cpath d='M0 0h8v16h8V8H0z' opacity='.13'/%3E%3C/svg%3E") repeat;
}
#file img:hover {
background: none;
}
.mw-highlight {
background: none;
}
.mw-highlight .linenos {
background-color: var(--mw-code-background-color);
color: var(--byline-color);
}
.mw-highlight a:hover .linenos,
.mw-highlight .hll a .linenos {
color: var(--text-color);
}
.mw-content-ltr.mw-highlight-lines pre,
.mw-content-ltr.content .mw-highlight-lines pre {
box-shadow: inset 2.75em 0 0 var(--mw-code-background-color);
}
#pagehistory ul {
list-style: none;
margin: 0;
}
#pagehistory li {
border: 1px solid transparent;
padding: 1px 10px;
margin: 2px 0;
}
#pagehistory li.selected {
background-color: var(--body-light);
color: inherit;
border: 1px dashed var(--body-border);
outline: none;
}
#mw-history-compare > div:first-of-type {
position: -webkit-sticky;
position: sticky;
top: 0;
background-color: var(--body-main);
border-bottom: 1px solid var(--body-dark);
padding: 0.25em 0;
}
.wgl-stickyheader #mw-history-compare > div:first-of-type {
top: 2.5rem;
}
.autocomment,
.autocomment a,
.autocomment a:visited {
color: var(--link-color);
}
li span.deleted,
span.history-deleted {
color: var(--byline-color);
}
.mw-usertoollinks-contribs-no-edits,
.mw-usertoollinks-contribs-no-edits:visited {
color: var(--redlink-color);
}
.CategoryTreeToggle {
color: var(--link-color);
}
body.wgl-stickyheader.action-view .mw-headline:target::before {
display: block;
content: '';
margin-top: -3rem;
height: 3rem;
visibility: hidden;
pointer-events: none;
}
.mw-mmv-post-image {
color: var(--text-color);
background-color: var(--body-main);
}
.mw-mmv-image-metadata {
border-top-color: var(--body-mid);
background-color: var(--body-light);
}
.mw-mmv-dialog,
.mw-mmv-dialog .mw-mmv-dialog-down-arrow,
.mw-mmv-options-dialog .mw-mmv-dialog-down-arrow {
background-color: var(--body-light);
box-shadow: none;
}
.mw-mmv-options-enable-alert {
background-color: var(--body-light);
color: var(--text-color);
}
.mw-mmv-options-dialog-header,
.mw-mmv-options-text-header,
.mw-mmv-options-text-body,
.mw-mmv-options-enable-alert,
.mw-mmv-options-dialog .mw-mmv-disable-confirmation .mw-mmv-options-dialog-header,
.mw-mmv-options-dialog .mw-mmv-disable-confirmation .mw-mmv-options-text-header {
color: var(--text-color);
}
.mw-revslider-container {
border-color: var(--sidebar);
}
.mw-revslider-slider-wrapper {
border-top-color: var(--sidebar);
}
.mw-ui-button {
background-color: var(--ooui-normal);
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
}
.mw-ui-button:not(:disabled):hover,
.mw-ui-button:not(:disabled):active {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
}
.mw-ui-button:not(:disabled):focus {
color: var(--ooui-text);
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent), inset 0 0 0 2px #fff;
}
.mw-ui-button:not(:disabled):visited {
color: var(--ooui-text);
}
.mw-ui-button.mw-ui-progressive:not(:disabled) {
background-color: var(--ooui-progressive);
color: #fff;
border-color: var(--ooui-progressive);
}
.mw-ui-button.mw-ui-progressive:not(:disabled):hover {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
}
.mw-ui-button.mw-ui-progressive:not(:disabled):focus {
box-shadow: inset 0 0 0 1px var(--ooui-accent), inset 0 0 0 2px #fff;
}
.mw-ui-button.mw-ui-progressive:not(:disabled):active,
.mw-ui-button.mw-ui-progressive:not(:disabled).is-on {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
box-shadow: none;
}
.mw-ui-button.mw-ui-destructive:not( :disabled ) {
color: #fff;
}
.mw-ui-button.mw-ui-quiet,
.mw-ui-button.mw-ui-quiet.mw-ui-progressive,
.mw-ui-button.mw-ui-quiet.mw-ui-destructive {
color: var(--text-color);
}
input[type='checkbox']:hover + .mw-ui-button.mw-ui-quiet,
input[type='checkbox']:hover + .mw-ui-button.mw-ui-quiet.mw-ui-progressive,
input[type='checkbox']:hover + .mw-ui-button.mw-ui-quiet.mw-ui-destructive,
.mw-ui-button.mw-ui-quiet:hover,
.mw-ui-button.mw-ui-quiet.mw-ui-progressive:hover,
.mw-ui-button.mw-ui-quiet.mw-ui-destructive:hover {
background-color: rgba(0, 24, 73, 0.02745098);
color: var(--text-color);
border-color: transparent;
}
input[type='checkbox']:focus + .mw-ui-button.mw-ui-quiet,
input[type='checkbox']:focus + .mw-ui-button.mw-ui-quiet.mw-ui-progressive,
input[type='checkbox']:focus + .mw-ui-button.mw-ui-quiet.mw-ui-destructive,
.mw-ui-button.mw-ui-quiet:focus,
.mw-ui-button.mw-ui-quiet.mw-ui-progressive:focus,
.mw-ui-button.mw-ui-quiet.mw-ui-destructive:focus {
color: var(--text-color);
}
input[type='checkbox']:active + .mw-ui-button.mw-ui-quiet,
input[type='checkbox']:active + .mw-ui-button.mw-ui-quiet.mw-ui-progressive,
input[type='checkbox']:active + .mw-ui-button.mw-ui-quiet.mw-ui-destructive,
.mw-ui-button.mw-ui-quiet:active,
.mw-ui-button.mw-ui-quiet.mw-ui-progressive:active,
.mw-ui-button.mw-ui-quiet.mw-ui-destructive:active {
background-color: rgba(0, 36, 73, 0.08235294);
color: var(--text-color);
border-color: #72777d;
}
.mw-ui-input {
background-color: var(--ooui-input);
color: var(--text-color);
border-color: var(--ooui-input-border);
}
.mw-ui-input:hover {
border-color: var(--ooui-input-border--hover);
}
.mw-ui-input::placeholder {
color: var(--byline-color);
}
.mw-content-ltr .redirectText li:first-child {
padding: 0;
background: 0;
}
.mw-content-ltr .redirectText li:first-child::before {
content: '';
background: currentcolor;
-webkit-mask: url("filepath://Redirect-arrow.svg") no-repeat 50% 50% / contain;
mask: url("filepath://Redirect-arrow.svg") no-repeat 50% 50% / contain;
display: inline-block;
width: 47px;
height: 20px;
}
:root {
--wikitable-header-bg: var(--body-dark);
--wikitable-border: var(--body-border);
--wikitable-bg: var(--body-light);
--wikitable-bg-lighter: #e9e3d6;
--wikitable-color: var(--text-color);
--table-na-background: rgba(255, 255, 255, 0.3);
--table-na-color: var(--subtle-color);
--table-yes-background: #c3e8a3;
--table-yes-color: #2e5e05;
--table-no-background: #fbc0ba;
--table-no-color: #801c13;
--table-maybe-background: #fcea94;
--table-maybe-color: #786300;
}
.wikitable {
background: var(--wikitable-bg);
color: var(--wikitable-color);
border-color: var(--wikitable-border);
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
}
.wikitable > tr > th,
.wikitable > tr > td,
.wikitable > * > tr > th,
.wikitable > * > tr > td {
border-color: var(--wikitable-border);
}
.wikitable > tr > th.table-noborder,
.wikitable > tr > td.table-noborder,
.wikitable > * > tr > th.table-noborder,
.wikitable > * > tr > td.table-noborder {
border-left-style: hidden;
border-right-style: hidden;
padding-left: 0;
padding-right: 0;
}
.wikitable > tr > th,
.wikitable > * > tr > th {
background-color: var(--wikitable-header-bg);
}
.tabber .wikitable {
box-shadow: none;
}
.mw_metadata td,
.mw_metadata th {
border-color: var(--wikitable-border);
}
.mw_metadata th {
background-color: var(--wikitable-header-bg);
}
.mw_metadata td {
background-color: var(--wikitable-bg);
}
.mw-datatable {
border-color: var(--wikitable-border);
}
.mw-datatable td,
.mw-datatable th {
border-color: var(--wikitable-border);
}
.mw-datatable th {
background-color: var(--wikitable-header-bg);
}
.mw-datatable td {
background-color: var(--wikitable-bg);
}
.mw-datatable tr:hover td {
background-color: var(--wikitable-bg);
}
table.alternating-rows tr:nth-child(odd),
table.alternating-cols td:nth-child(odd) {
background: var(--wikitable-alternating-bg);
}
.table-na {
background: var(--table-na-background);
color: var(--table-na-color);
vertical-align: middle;
text-align: center;
}
.table-yes {
background: var(--table-yes-background);
color: var(--table-yes-color);
}
.table-positive {
background: var(--table-yes-background);
}
.table-no {
background: var(--table-no-background);
color: var(--table-no-color);
}
.table-negative {
background: var(--table-no-background);
}
.table-maybe {
background: var(--table-maybe-background);
color: var(--table-maybe-color);
}
#mw-allmessagestable .am_actual,
#mw-allmessagestable .am_default {
background-color: var(--wikitable-bg);
}
#mw-allmessagestable .am_default:hover,
#mw-allmessagestable .am_actual:hover,
#mw-allmessagestable tbody:hover td {
background-color: var(--wikitable-bg-lighter);
}
table.wikitable td.no-cell-spacing {
padding: 0;
height: 0;
}
table.wikitable td.no-cell-spacing table {
margin: -1px;
width: calc(100% + 2px);
height: calc(100% + 2px);
}
.plainlist ol,
.plainlist ul {
margin: 0;
}
.plainlist li {
margin-bottom: 0;
list-style: none;
}
table.align-right-1 td:nth-of-type(1),
table.align-right-2 td:nth-of-type(2),
table.align-right-3 td:nth-of-type(3),
table.align-right-4 td:nth-of-type(4),
table.align-right-5 td:nth-of-type(5),
table.align-right-6 td:nth-of-type(6),
table.align-right-7 td:nth-of-type(7),
table.align-right-8 td:nth-of-type(8),
table.align-right-9 td:nth-of-type(9),
table.align-right-10 td:nth-of-type(10),
table.align-right-11 td:nth-of-type(11),
table.align-right-12 td:nth-of-type(12),
table.align-right-13 td:nth-of-type(13),
table.align-right-14 td:nth-of-type(14),
table.align-right-15 td:nth-of-type(15),
table.align-right-16 td:nth-of-type(16),
table.align-right-17 td:nth-of-type(17),
table.align-right-18 td:nth-of-type(18),
table.align-right-19 td:nth-of-type(19),
table.align-right-20 td:nth-of-type(20) {
text-align: right;
}
table.align-center-1 td:nth-of-type(1),
table.align-center-2 td:nth-of-type(2),
table.align-center-3 td:nth-of-type(3),
table.align-center-4 td:nth-of-type(4),
table.align-center-5 td:nth-of-type(5),
table.align-center-6 td:nth-of-type(6),
table.align-center-7 td:nth-of-type(7),
table.align-center-8 td:nth-of-type(8),
table.align-center-9 td:nth-of-type(9),
table.align-center-10 td:nth-of-type(10),
table.align-center-11 td:nth-of-type(11),
table.align-center-12 td:nth-of-type(12),
table.align-center-13 td:nth-of-type(13),
table.align-center-14 td:nth-of-type(14),
table.align-center-15 td:nth-of-type(15),
table.align-center-16 td:nth-of-type(16),
table.align-center-17 td:nth-of-type(17),
table.align-center-18 td:nth-of-type(18),
table.align-center-19 td:nth-of-type(19),
table.align-center-20 td:nth-of-type(20) {
text-align: center;
}
table.align-left-1 td:nth-of-type(1),
table.align-left-2 td:nth-of-type(2),
table.align-left-3 td:nth-of-type(3),
table.align-left-4 td:nth-of-type(4),
table.align-left-5 td:nth-of-type(5),
table.align-left-6 td:nth-of-type(6),
table.align-left-7 td:nth-of-type(7),
table.align-left-8 td:nth-of-type(8),
table.align-left-9 td:nth-of-type(9),
table.align-left-10 td:nth-of-type(10),
table.align-left-11 td:nth-of-type(11),
table.align-left-12 td:nth-of-type(12),
table.align-left-13 td:nth-of-type(13),
table.align-left-14 td:nth-of-type(14),
table.align-left-15 td:nth-of-type(15),
table.align-left-16 td:nth-of-type(16),
table.align-left-17 td:nth-of-type(17),
table.align-left-18 td:nth-of-type(18),
table.align-left-19 td:nth-of-type(19),
table.align-left-20 td:nth-of-type(20) {
text-align: left;
}
:root {
--diff-addedline-border-color: #438ab5;
--diff-addedline-background: #bddff2;
--diff-addedline-color: #000;
--diff-deletedline-border-color: #379541;
--diff-deletedline-background: #c1edbf;
--diff-deletedline-color: #000;
--diff-context-border-color: var(--body-mid);
--diff-context-background: var(--body-mid);
}
.diff-context {
border-color: var(--diff-context-border-color);
background: var(--diff-context-background);
color: inherit;
}
.diff-addedline {
border-color: var(--diff-addedline-border-color);
}
.diff-addedline .diffchange {
background: var(--diff-addedline-background);
color: var(--diff-addedline-color);
}
.diff-deletedline {
border-color: var(--diff-deletedline-border-color);
}
.diff-deletedline .diffchange {
background: var(--diff-deletedline-background);
color: var(--diff-deletedline-color);
}
.mw-diff-movedpara-left:after,
.mw-diff-movedpara-right:after {
color: var(--text-color);
}
.mw-notification {
background-color: var(--body-light);
border-color: var(--body-border);
color: var(--text-color);
}
.mw-echo-ui-notificationsInboxWidget-toolbarWrapper {
background: var(--body-main);
}
.mw-body-content .mw-echo-ui-datedSubGroupListWidget-title-secondary {
color: var(--byline-color);
}
.mw-echo-ui-pageNotificationsOptionWidget.oo-ui-optionWidget-selected {
background-color: var(--ooui-normal);
color: var(--ooui-accent);
}
.mw-echo-ui-pageNotificationsOptionWidget-label-count {
background-color: var(--ooui-normal);
color: var(--byline-color);
}
.oo-ui-optionWidget-selected .mw-echo-ui-pageNotificationsOptionWidget-label-count {
color: var(--ooui-accent);
}
.mw-echo-ui-pageNotificationsOptionWidget.oo-ui-optionWidget-highlighted {
background-color: var(--ooui-normal);
color: var(--text-color);
}
.mw-echo-ui-crossWikiUnreadFilterWidget {
border-color: var(--body-border);
}
.mw-echo-ui-crossWikiUnreadFilterWidget-subtitle {
color: var(--byline-color);
}
.mw-echo-ui-notificationBadgeButtonPopupWidget-popup > .oo-ui-popupWidget-popup > .oo-ui-popupWidget-head,
.mw-echo-ui-notificationBadgeButtonPopupWidget-popup > .oo-ui-popupWidget-popup > .oo-ui-popupWidget-footer {
border-color: var(--ooui-interface-border);
}
.mw-echo-ui-notificationBadgeButtonPopupWidget-popup > .oo-ui-popupWidget-popup > .oo-ui-popupWidget-footer .mw-echo-ui-notificationBadgeButtonPopupWidget-footer-buttons .oo-ui-buttonElement:last-child {
border-left-color: var(--ooui-normal-border);
}
.mw-echo-ui-notificationItemWidget {
background-color: var(--ooui-normal);
border-color: var(--ooui-normal-border);
}
.mw-echo-ui-notificationItemWidget:hover,
.mw-echo-ui-notificationItemWidget-unread:hover {
background-color: var(--ooui-normal--hover);
}
.mw-echo-ui-notificationItemWidget:last-child {
border-bottom-color: var(--ooui-normal-border);
}
.mw-echo-ui-notificationItemWidget-unread {
background-color: var(--search-box);
}
.mw-echo-ui-crossWikiNotificationItemWidget-group,
.mw-echo-ui-bundleNotificationItemWidget-group {
background-color: var(--ooui-interface);
}
.mw-echo-ui-toggleReadCircleButtonWidget-circle {
background-color: var(--ooui-progressive);
}
.mw-echo-ui-toggleReadCircleButtonWidget:hover .mw-echo-ui-toggleReadCircleButtonWidget-circle {
background-color: var(--ooui-progressive--hover);
}
.mw-echo-ui-toggleReadCircleButtonWidget-circle-unread {
background-color: var(--ooui-normal);
border-color: var(--ooui-normal-border);
}
.mw-echo-ui-notificationItemWidget-content-message-header,
.mw-echo-ui-notificationItemWidget-content-message-body,
.mw-echo-ui-menuItemWidget > .oo-ui-buttonElement-button > .oo-ui-labelElement-label,
.mw-echo-ui-notificationItemWidget-content-actions-timestamp {
color: var(--ooui-text);
}
.mw-echo-ui-bundleNotificationItemWidget-group {
background-color: var(--body-main);
}
@keyframes unseen-fadeout-to-unread {
from {
background-color: var(--wikitable-bg-lighter);
}
to {
background-color: var(--search-box);
}
}
@keyframes unseen-fadeout-to-read {
from {
background-color: var(--wikitable-bg-lighter);
}
to {
background-color: var(--body-main);
}
}
.mwe-popups {
background: var(--body-light);
}
.mwe-popups .mwe-popups-container {
color: var(--text-color);
background: var(--body-light);
}
.mwe-popups .mwe-popups-container.flipped-x-y:before,
.mwe-popups .mwe-popups-container.flipped-y:before {
border-top: none;
}
.mwe-popups .mwe-popups-container.mwe-popups-no-image-tri:before {
border-bottom: none;
}
.mwe-popups .mwe-popups-container.flipped-x-y:after,
.mwe-popups .mwe-popups-container.flipped-y:after {
border-top-color: var(--body-light);
}
.mwe-popups .mwe-popups-container.mwe-popups-no-image-tri:after {
border-bottom-color: var(--body-light);
}
.mwe-popups .mwe-popups-settings-icon:hover,
.mwe-popups .mwe-popups-settings-icon:active {
background-color: var(--ooui-normal--hover);
}
.mwe-popups .mw-ui-icon-element:not(.disabled):hover {
background: none;
}
.mwe-popups .mwe-popups-extract {
color: var(--text-color);
}
.mwe-popups .mwe-popups-extract[dir='ltr']:after {
background-image: linear-gradient(to right, rgba(49, 62, 89, 0), var(--body-light) 50%);
}
.mwe-popups-overlay {
background-color: var(--ooui-window-background);
}
#mwe-popups-settings {
background: var(--ooui-interface);
border-color: var(--ooui-interface-border);
color: var(--text-color);
}
#mwe-popups-settings header {
border-color: var(--ooui-interface-border);
}
#mwe-popups-settings main#mwe-popups-settings-form p {
color: var(--byline-color);
}
#mwe-popups-settings main#mwe-popups-settings-form form label > span {
color: var(--ooui-text);
}
:root {
--smw-ask-options-even-bg: var(--body-mid);
--smw-ask-options-odd-bg: var(--body-light);
--smw-ask-action-btn-lblue-bg: var(--body-main);
--smw-ask-action-btn-lblue-color: #000;
--smw-ask-action-btn-lblue-border-color: var(--body-light);
--smw-ask-action-btn-dblue-bg: var(--body-light);
--smw-ask-action-btn-dblue-color: #fff;
--smw-ask-action-btn-dblue-border-color: var(--button-border);
}
.smw-ask-condition fieldset,
.smw-ask-printhead fieldset {
border-color: var(--sidebar);
}
.smw-ask-search fieldset,
.smw-ask-format fieldset,
.smw-ask-options fieldset {
border-color: var(--sidebar);
}
.strike > span:before,
.strike > span:after {
background: var(--sidebar);
}
.smw-ask-options-fields tr td {
background-color: var(--smw-ask-options-even-bg);
}
.smw-ask-options-fields tr:nth-child(odd) td {
background-color: var(--smw-ask-options-odd-bg);
}
.smw-ask-action-btn.smw-ask-action-btn-lblue,
.smw-ask-action-btn.smw-ask-action-btn-lblue:hover,
.smw-ask-action-btn.smw-ask-action-btn-lblue:visited {
background-color: var(--smw-ask-action-btn-lblue-bg);
color: var(--smw-ask-action-btn-lblue-color);
border-color: var(--smw-ask-action-btn-lblue-border-color);
}
.smw-ask-action-btn.smw-ask-action-btn-dblue,
.smw-ask-action-btn.smw-ask-action-btn-dblue:hover,
.smw-ask-action-btn.smw-ask-action-btn-dblue:visited {
background-color: var(--smw-ask-action-btn-dblue-bg);
color: var(--smw-ask-action-btn-dblue-color);
border-color: var(--smw-ask-action-btn-dblue-border-color);
}
.smw-ask-query textarea,
.smw-ask-actions textarea {
background-color: var(--ooui-interface);
border-color: var(--ooui-interface-border);
color: var(--ooui-text);
}
.smw-ask-query-format select {
background-color: var(--ooui-interface);
border: 1px solid var(--ooui-interface-border);
color: var(--ooui-text);
}
.smw-ask-toplinks {
background-color: var(--body-mid);
}
.smw-ask-toplinks span.smw-icon-info {
background: none;
padding: 0 !important;
}
.smw-ask-toplinks span.smw-icon-info::before {
content: '';
background: var(--text-color);
-webkit-mask: url("data:image/svg+xml,%3C%3Fxml version='1.0' encoding='UTF-8'%3F%3E%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 20 20'%3E%3Ctitle%3Einfo%3C/title%3E%3Cpath d='M10 0C4.477 0 0 4.477 0 10s4.477 10 10 10 10-4.477 10-10S15.523 0 10 0zM9 5h2v2H9zm0 4h2v6H9z'/%3E%3C/svg%3E") no-repeat 50% 50% / contain;
mask: url("data:image/svg+xml,%3C%3Fxml version='1.0' encoding='UTF-8'%3F%3E%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 20 20'%3E%3Ctitle%3Einfo%3C/title%3E%3Cpath d='M10 0C4.477 0 0 4.477 0 10s4.477 10 10 10 10-4.477 10-10S15.523 0 10 0zM9 5h2v2H9zm0 4h2v6H9z'/%3E%3C/svg%3E") no-repeat 50% 50% / contain;
padding: 0 0 3px 18px;
}
.smw-ask-options-row-odd {
background-color: var(--body-light);
}
.smw-ask-options-row-even {
background-color: var(--body-mid);
}
#options-toggle:not(:checked) + #options-list .options-parameter-list:after {
background-image: linear-gradient(to bottom, transparent, var(--body-mid) 90%);
}
.smw-ask-button-submit input {
background-color: var(--ooui-normal);
border-color: var(--ooui-normal-border);
color: var(--text-color);
}
.smw-ask-button-submit input:hover,
.smw-ask-button-lgrey:hover {
background-color: var(--ooui-normal--hover);
border-color: var(--ooui-normal-border);
}
input.smw-ask-action-btn.smw-ask-action-btn-dblue {
background-color: var(--ooui-normal);
border-color: var(--ooui-normal-border);
color: var(--ooui-text);
}
a.smw-ask-action-btn.smw-ask-action-btn-lblue {
background-color: var(--body-mid);
border-color: var(--body-mid);
color: var(--ooui-text);
}
a.smw-ask-action-btn.smw-ask-action-btn-lblue:visited {
background-color: var(--body-mid);
border-color: var(--body-mid);
color: var(--ooui-text);
}
a.smw-ask-action-btn.smw-ask-action-btn-lblue:hover {
background-color: var(--body-mid);
border-color: var(--body-mid);
color: var(--ooui-text);
}
a.smw-ask-action-btn-lgrey {
background-color: var(--ooui-normal);
border-color: var(--ooui-normal-border);
color: var(--ooui-text);
}
a.smw-ask-action-btn-lgrey:hover {
background-color: var(--ooui-normal--hover);
border-color: var(--ooui-normal-border);
color: var(--ooui-text);
}
.smw-callout-error {
background-color: var(--errorbox-bg);
border-color: var(--errorbox-border);
}
.smw-callout-info {
background-color: var(--body-light);
border-color: var(--body-dark);
}
.smw-callout-success {
background-color: var(--successbox-bg);
border-color: var(--successbox-border);
}
.smw-callout-warning {
background-color: var(--warningbox-bg);
border-color: var(--warningbox-bg);
}
.smw-tabs input.nav-tab:checked + label.nav-label,
.smw-tabs input.nav-tab:checked + label.nav-label:hover {
color: inherit;
}
#tab-smw-property-value:checked + label.nav-label .usage-count {
color: #fff;
background-color: var(--ooui-progressive);
}
#tab-smw-property-value:checked + label.nav-label .usage-count.moderate {
color: #fff;
background-color: #b55e0c;
border-color: #b55e0c;
}
#tab-smw-property-value:checked + label.nav-label .usage-count.high {
color: #fff;
background-color: #9f261e;
border-color: #9f261e;
}
.smw-property-page-results .header-title {
background-color: var(--ooui-interface);
border-bottom-color: var(--ooui-interface-border);
color: var(--ooui-text);
}
.smw-property-page-results .value-row:hover {
background-color: var(--ooui-normal--hover);
}
.smw-property-page-results .smw-table .header-row {
color: var(--text-color);
}
.tippy-tooltip.light-border-theme {
background-color: var(--body-light);
color: var(--text-color);
}
.tippy-tooltip.light-border-theme .tippy-arrow {
border-top-color: var(--body-light);
}
.tippy-tooltip.light-border-theme .tippy-arrow:after {
border-top-color: var(--body-light);
}
.tippy-header {
background-color: var(--body-dark);
border-bottom-color: var(--body-mid);
}
.smw-ui-input-filter {
background-color: var(--ooui-interface);
border-color: var(--ooui-interface-border);
color: var(--ooui-text);
}
.smw-ui-input-filter input {
border-left-color: var(--ooui-interface-border) !important;
color: var(--ooui-text) !important;
}
.smw-ui-pagination .page-link.link-disabled {
background-color: var(--ooui-disabled);
border-color: var(--ooui-disabled-border);
color: var(--subtle-color);
}
.smw-ui-pagination .page-link {
background-color: var(--ooui-normal);
border-color: var(--ooui-normal-border);
color: var(--link-color);
}
.smw-ui-pagination .page-link:hover {
background-color: var(--ooui-normal--hover);
border-color: var(--ooui-normal-border);
color: var(--link-color);
}
.smw-ui-pagination .page-link.link-active {
color: #fff;
background-color: var(--ooui-progressive);
border-color: var(--ooui-progressive);
}
.smw-tabs input.nav-tab:checked + label.nav-label {
border-color: var(--ooui-normal-border);
}
.smw-tabs section,
.smw-tabs .subtab-content {
border-top-color: var(--ooui-normal-border);
}
.smw-column-header {
color: var(--text-color);
}
.smw-factbox {
background: var(--body-main);
border-color: transparent;
}
.mw-body .mw-indicators #mw-indicator-smw-entity-examiner.mw-indicator .smw-indicator-vertical-bar-loader {
display: none;
}
.smwb-theme-light .smwb-title,
.smwb-theme-light .smwb-center,
.smwb-theme-light .smwb-actions,
.smwb-theme-light .smwb-prophead {
background-color: var(--body-mid);
}
.smwb-theme-light .smwb-factbox {
border-left-color: var(--body-mid);
}
.smwb-theme-light .smwb-ifactbox {
border-right-color: var(--body-mid);
}
.smwb-theme-light .smwb-propval {
background-color: var(--body-light);
}
.smwb-action-separator {
border-color: var(--wikitable-border);
}
.smwb-bottom {
border-bottom: 1px solid var(--wikitable-border);
}
.smwb-ifactbox .smwb-cell,
.smwb-factbox .smwb-cell {
border-top: 1px solid var(--wikitable-border);
}
.smwb-propvalue .smwb-prophead,
.smwb-ipropvalue .smwb-prophead,
.smwb-propvalue .smwb-propval,
.smwb-ipropvalue .smwb-propval {
font-size: 0.9em;
}
:root {
--filter-black-to-link: invert(36%) sepia(58%) saturate(433%) hue-rotate(344deg) brightness(100%) contrast(91%);
}
#bodyContent span.smwbrowse a {
color: black;
background-image: url('filepath://Smwbrowse.svg');
filter: var(--filter-black-to-link);
}
#bodyContent span.smwbrowse a:hover {
color: black;
background-image: url('filepath://Smwbrowse-hover.svg');
text-decoration: underline;
}
#bodyContent span.smwsearch a {
color: black;
filter: var(--filter-black-to-link);
background-image: url('filepath://Smwsearch.svg');
}
#bodyContent span.smwsearch a:hover {
color: black;
background-image: url('filepath://Smwsearch-hover.svg');
text-decoration: underline;
}
:root {
--tabber-tab-bg: var(--body-light);
--tabber-tab-border-color: var(--body-border);
--tabber-active-tab-bg: var(--body-light);
--tabber-active-tab-color: var(--text-color);
--tabber-active-tab-hover-bg: var(--body-light);
--tabber-active-tab-hover-border-color: var(--body-border);
--tabber-active-tab-hover-color: var(--text-color);
--tabber-active-tab-border-hider-color: var(--body-light);
--tabber-inactive-tab-bg: var(--body-background-color);
--tabber-inactive-tab-border-color: var(--body-border);
--tabber-inactive-tab-color: var(--text-color);
--tabber-inactive-tab-hover-bg: var(--body-light);
--tabber-inactive-tab-hover-border-color: var(--body-border);
}
.tabber {
margin: 1em 0;
}
.tabber .tabbertab {
background-color: var(--tabber-tab-bg);
border: 1px solid var(--tabber-tab-border-color);
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
padding: 1em 1.5em;
}
ul.tabbernav {
border: none;
margin-left: 2em;
margin-bottom: 0;
margin-right: 2em;
padding: 0;
font-family: inherit;
}
ul.tabbernav li.tabberactive > a {
background-color: var(--tabber-active-tab-bg);
color: var(--tabber-active-tab-color);
border-bottom: none;
position: relative;
}
ul.tabbernav li.tabberactive > a:hover {
color: var(--tabber-active-tab-hover-color);
background-color: var(--tabber-active-tab-hover-bg);
border-color: var(--tabber-active-tab-hover-border-color);
border-bottom: none;
}
ul.tabbernav li.tabberactive > a::after {
content: '';
position: absolute;
left: 0;
right: 0;
bottom: -1px;
border-bottom: 2px solid var(--tabber-active-tab-border-hider-color);
}
ul.tabbernav li a {
background-color: var(--tabber-inactive-tab-bg);
border-bottom: transparent;
border-color: var(--tabber-inactive-tab-border-color);
color: var(--tabber-inactive-tab-color);
display: inline-block;
font-size: 110%;
padding: 0.5em 1em;
}
ul.tabbernav li a:hover {
background-color: var(--tabber-inactive-tab-hover-bg);
border-color: var(--tabber-inactive-tab-hover-border-color);
}
ul.tabbernav li a:link,
ul.tabbernav li a:visited {
color: var(--tabber-inactive-tab-color);
}
:root {
--ooui-text: var(--text-color);
--ooui-interface: var(--body-light);
--ooui-interface-border: var(--body-border);
--ooui-window-background: rgba(255, 255, 255, 0.5);
--ooui-normal: #d5c7ad;
--ooui-normal--hover: #dfd5c1;
--ooui-normal-border: #b8a282;
--ooui-progressive: #605443;
--ooui-progressive--hover: #7e6e58;
--ooui-accent: var(--link-color);
--ooui-input: #fff;
--ooui-input-border: #b8a282;
--ooui-input-border--hover: #8a724f;
--ooui-disabled: #d1cdc5;
--ooui-disabled-border: #c2b9ab;
--ooui-disabled-text: var(--subtle-color);
--ooui-pending-background-image: repeating-linear-gradient(-45deg, var(--search-box), var(--search-box) 20px, var(--body-main) 20px, var(--body-main) 30px);
}
.oo-ui-widget {
color: var(--ooui-text);
}
.oo-ui-checkboxInputWidget [type='checkbox'] + span,
.oo-ui-radioInputWidget [type='radio'] + span {
background-color: var(--ooui-input);
border-color: var(--ooui-input-border);
}
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:checked + span,
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:indeterminate + span {
background-color: var(--ooui-progressive);
border-color: var(--ooui-progressive);
}
.oo-ui-radioInputWidget.oo-ui-widget-enabled [type='radio']:checked + span {
border-color: var(--ooui-progressive);
}
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:checked:hover + span,
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:indeterminate:hover + span {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
}
.oo-ui-radioInputWidget.oo-ui-widget-enabled [type='radio']:checked:hover + span {
border-color: var(--ooui-progressive--hover);
}
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:hover + span,
.oo-ui-radioInputWidget.oo-ui-widget-enabled [type='radio']:hover + span {
border-color: var(--ooui-accent);
}
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:focus + span {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:active + span,
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:checked:active + span,
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:indeterminate:active + span {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
box-shadow: inset 0 0 0 1px var(--ooui-progressive--hover);
}
.oo-ui-radioInputWidget.oo-ui-widget-enabled [type='radio']:active + span {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
}
.oo-ui-radioInputWidget.oo-ui-widget-enabled [type='radio']:checked:active + span {
border-color: var(--ooui-progressive--hover);
box-shadow: inset 0 0 0 1px var(--ooui-progressive--hover);
}
.oo-ui-radioInputWidget.oo-ui-widget-enabled [type='radio']:checked:active + span:before {
border-color: var(--ooui-progressive--hover);
}
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:checked:focus + span,
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:indeterminate:focus + span {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent), inset 0 0 0 2px #fff;
}
.oo-ui-checkboxInputWidget [type='checkbox']:disabled + span,
.oo-ui-radioInputWidget [type='radio']:disabled + span {
background-color: var(--ooui-disabled);
border-color: var(--ooui-disabled);
}
.oo-ui-dropdownWidget-handle {
border-color: var(--ooui-normal-border);
}
.oo-ui-dropdownWidget.oo-ui-widget-enabled .oo-ui-dropdownWidget-handle {
background-color: var(--ooui-normal);
color: var(--ooui-text);
}
.oo-ui-dropdownWidget.oo-ui-widget-enabled .oo-ui-dropdownWidget-handle:hover {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
}
.oo-ui-dropdownWidget.oo-ui-widget-enabled .oo-ui-dropdownWidget-handle:active {
color: var(--ooui-text);
}
.oo-ui-dropdownWidget.oo-ui-widget-enabled .oo-ui-dropdownWidget-handle:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-dropdownWidget.oo-ui-widget-enabled.oo-ui-dropdownWidget-open .oo-ui-dropdownWidget-handle {
background-color: var(--ooui-normal--hover);
}
.oo-ui-dropdownWidget.oo-ui-widget-disabled .oo-ui-dropdownWidget-handle {
color: var(--ooui-disabled-text);
text-shadow: none;
border-color: var(--ooui-disabled-border);
background-color: var(--ooui-disabled);
}
.oo-ui-dropdownInputWidget select {
border-color: var(--ooui-normal-border);
}
.oo-ui-dropdownInputWidget option {
background-color: var(--ooui-interface);
}
.oo-ui-dropdownInputWidget.oo-ui-widget-enabled {
background-color: var(--ooui-normal);
}
.oo-ui-dropdownInputWidget.oo-ui-widget-enabled:hover {
background-color: var(--ooui-normal--hover);
}
.oo-ui-dropdownInputWidget.oo-ui-widget-enabled select {
color: var(--ooui-text);
}
.oo-ui-dropdownInputWidget.oo-ui-widget-enabled select:hover,
.oo-ui-dropdownInputWidget.oo-ui-widget-enabled select:active {
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
}
.oo-ui-dropdownInputWidget.oo-ui-widget-enabled select:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-labelWidget.oo-ui-inline-help {
color: var(--byline-color);
}
.oo-ui-menuSelectWidget {
background-color: var(--ooui-interface);
border-color: var(--ooui-interface-border);
}
.oo-ui-menuSelectWidget-frameless {
box-shadow: inset 0 -1px 0 0 var(--ooui-normal-border);
}
.oo-ui-menuSectionOptionWidget {
color: var(--byline-color);
}
.oo-ui-menuOptionWidget.oo-ui-optionWidget-highlighted,
.oo-ui-menuOptionWidget.oo-ui-optionWidget-selected {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
}
.oo-ui-menuOptionWidget.oo-ui-optionWidget-selected.oo-ui-menuOptionWidget.oo-ui-optionWidget-highlighted,
.oo-ui-menuOptionWidget.oo-ui-optionWidget-pressed.oo-ui-menuOptionWidget.oo-ui-optionWidget-highlighted {
color: var(--ooui-accent);
}
.oo-ui-menuOptionWidget.oo-ui-widget-enabled.oo-ui-optionWidget {
color: var(--ooui-text);
}
.oo-ui-messageDialog-title {
color: inherit;
}
.oo-ui-messageWidget.oo-ui-messageWidget-block.oo-ui-flaggedElement-error {
background-color: var(--errorbox-bg);
border-color: var(--errorbox-border);
}
.oo-ui-messageWidget.oo-ui-messageWidget-block.oo-ui-flaggedElement-warning {
background-color: var(--warningbox-bg);
border-color: var(--warningbox-border);
}
.oo-ui-messageWidget.oo-ui-messageWidget-block.oo-ui-flaggedElement-success {
background-color: var(--successbox-bg);
border-color: var(--successbox-border);
}
.oo-ui-messageWidget.oo-ui-messageWidget-block.oo-ui-flaggedElement-notice {
background-color: var(--messagebox-info-background);
border-color: var(--messagebox-info-border);
}
.oo-ui-messageWidget.oo-ui-flaggedElement-error:not(.oo-ui-messageWidget-block),
.oo-ui-messageWidget.oo-ui-flaggedElement-success:not(.oo-ui-messageWidget-block) {
color: var(--ooui-text);
}
.oo-ui-optionWidget.oo-ui-widget-disabled {
color: var(--ooui-disabled-text);
}
.oo-ui-outlineControlsWidget {
background-color: var(--ooui-normal);
}
.oo-ui-outlineOptionWidget.oo-ui-optionWidget-highlighted {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
}
.oo-ui-popupWidget-popup {
background-color: var(--ooui-interface);
border-color: var(--ooui-interface-border);
}
.oo-ui-popupWidget-anchored-top .oo-ui-popupWidget-anchor:after {
border-bottom-color: var(--ooui-interface);
}
.oo-ui-popupWidget-anchored-top .oo-ui-popupWidget-anchor:before {
border-bottom-color: var(--ooui-interface-border);
}
.oo-ui-popupWidget-anchored-bottom .oo-ui-popupWidget-anchor:after {
border-top-color: var(--ooui-interface);
}
.oo-ui-popupWidget-anchored-bottom .oo-ui-popupWidget-anchor:before {
border-top-color: var(--ooui-interface-border);
}
.oo-ui-popupWidget-anchored-start .oo-ui-popupWidget-anchor:after {
border-right-color: var(--ooui-interface);
}
.oo-ui-popupWidget-anchored-start .oo-ui-popupWidget-anchor:before {
border-right-color: var(--ooui-interface-border);
}
.oo-ui-popupWidget-anchored-end .oo-ui-popupWidget-anchor:after {
border-left-color: var(--ooui-interface);
}
.oo-ui-popupWidget-anchored-end .oo-ui-popupWidget-anchor:before {
border-left-color: var(--ooui-interface-border);
}
.oo-ui-searchWidget-query {
border-bottom-color: var(--ooui-interface-border);
}
.oo-ui-selectFileWidget-dropTarget {
background-color: var(--ooui-interface);
border-color: var(--ooui-interface-border);
}
.oo-ui-selectFileWidget.oo-ui-widget-enabled.oo-ui-selectFileWidget-dropTarget {
background-color: var(--ooui-interface);
}
.oo-ui-selectFileWidget.oo-ui-widget-enabled.oo-ui-selectFileWidget-dropTarget:hover {
border-color: var(--ooui-input-border--hover);
}
.oo-ui-tabOptionWidget {
color: var(--ooui-text);
}
.oo-ui-tabSelectWidget-framed .oo-ui-tabOptionWidget.oo-ui-optionWidget-selected {
background-color: var(--body-dark);
color: var(--ooui-text);
}
.oo-ui-tabSelectWidget-framed .oo-ui-tabOptionWidget.oo-ui-optionWidget-selected .oo-ui-labelElement-label {
border-bottom-color: var(--body-border);
}
.oo-ui-tabSelectWidget-framed .oo-ui-tabOptionWidget.oo-ui-widget-enabled:hover,
.oo-ui-tabSelectWidget-framed .oo-ui-tabOptionWidget.oo-ui-widget-enabled:active {
background-color: var(--body-light);
color: var(--ooui-text);
}
.oo-ui-tabSelectWidget-framed .oo-ui-tabOptionWidget.oo-ui-widget-enabled.oo-ui-optionWidget-selected:hover {
background-color: var(--body-dark);
}
.oo-ui-tabSelectWidget-frameless .oo-ui-tabOptionWidget.oo-ui-optionWidget-selected {
color: var(--ooui-progressive);
box-shadow: inset 0 -2px 0 0 var(--ooui-progressive);
}
.oo-ui-tabSelectWidget-frameless .oo-ui-tabOptionWidget.oo-ui-optionWidget-selected:hover,
.oo-ui-tabSelectWidget-frameless .oo-ui-tabOptionWidget.oo-ui-optionWidget-selected:focus {
color: var(--ooui-progressive--hover);
box-shadow: inset 0 -2px 0 0 var(--ooui-progressive--hover);
}
.oo-ui-tabSelectWidget-framed {
background: none;
border-bottom: 1px solid var(--ooui-interface-border);
}
.oo-ui-tabSelectWidget-frameless {
box-shadow: inset 0 -1px 0 0 var(--ooui-interface-border);
}
.oo-ui-tabSelectWidget-mobile {
}
.oo-ui-tabSelectWidget-mobile.oo-ui-tabSelectWidget-framed:after {
background: var(--mobile-navbox-linear-gradient);
}
.oo-ui-tabSelectWidget-mobile.oo-ui-tabSelectWidget-frameless:after {
background: var(--mobile-navbox-linear-gradient);
}
.oo-ui-tagItemWidget {
border-color: var(--ooui-normal-border);
}
.oo-ui-tagItemWidget.oo-ui-widget-enabled {
color: var(--ooui-text);
}
.oo-ui-tagItemWidget.oo-ui-widget-enabled:hover {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
}
.oo-ui-tagItemWidget.oo-ui-widget-enabled:not( .oo-ui-tagItemWidget-fixed ) {
background-color: var(--ooui-normal);
}
.oo-ui-tagItemWidget.oo-ui-widget-enabled .oo-ui-buttonElement-button:hover {
background-color: var(--ooui-normal--hover);
}
.oo-ui-tagMultiselectWidget.oo-ui-widget-enabled {
background-color: var(--ooui-interface);
}
.oo-ui-tagMultiselectWidget.oo-ui-widget-enabled.oo-ui-tagMultiselectWidget-outlined {
background-color: var(--ooui-normal);
}
.oo-ui-tagMultiselectWidget.oo-ui-widget-enabled.oo-ui-tagMultiselectWidget-outlined .oo-ui-tagItemWidget.oo-ui-widget-enabled {
background-color: var(--ooui-interface);
}
.oo-ui-textInputWidget .oo-ui-inputWidget-input {
background-color: var(--ooui-input);
color: var(--ooui-text);
border-color: var(--ooui-input-border);
}
.oo-ui-textInputWidget.oo-ui-widget-enabled .oo-ui-inputWidget-input::placeholder {
color: var(--subtle-color);
}
.oo-ui-textInputWidget.oo-ui-widget-enabled .oo-ui-inputWidget-input:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-textInputWidget.oo-ui-widget-enabled .oo-ui-inputWidget-input[readonly]:not(.oo-ui-pendingElement-pending) {
background-color: var(--ooui-disabled);
color: var(--ooui-disabled-text);
}
.oo-ui-textInputWidget.oo-ui-widget-enabled:hover .oo-ui-inputWidget-input {
border-color: var(--ooui-input-border--hover);
}
.oo-ui-textInputWidget.oo-ui-widget-enabled:hover .oo-ui-inputWidget-input:focus {
border-color: var(--ooui-accent);
}
@media screen and (min-width: 0) {
.oo-ui-textInputWidget.oo-ui-widget-enabled textarea.oo-ui-inputWidget-input:focus {
outline: 1px solid var(--ooui-accent);
}
}
.oo-ui-textInputWidget.oo-ui-widget-disabled .oo-ui-inputWidget-input {
background-color: var(--ooui-disabled);
color: var(--ooui-disabled-text);
text-shadow: none;
border-color: var(--ooui-disabled-border);
}
.oo-ui-toggleSwitchWidget {
background-color: var(--ooui-input);
border-color: var(--ooui-input-border);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled .oo-ui-toggleSwitchWidget-grip {
background-color: var(--ooui-input);
border-color: var(--ooui-input-border);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:hover {
background-color: var(--ooui-input);
border-color: var(--ooui-accent);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:hover .oo-ui-toggleSwitchWidget-grip {
background-color: var(--ooui-input);
border-color: var(--ooui-accent);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:active,
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:active:hover,
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:active:focus {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
box-shadow: inset 0 0 0 1px var(--ooui-progressive--hover);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:active .oo-ui-toggleSwitchWidget-grip,
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:active:hover .oo-ui-toggleSwitchWidget-grip,
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:active:focus .oo-ui-toggleSwitchWidget-grip {
background-color: var(--ooui-input);
border-color: var(--ooui-input);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:focus .oo-ui-toggleSwitchWidget-grip {
border-color: var(--ooui-accent);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled.oo-ui-toggleWidget-on {
background-color: var(--ooui-progressive);
border-color: var(--ooui-progressive);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled.oo-ui-toggleWidget-on .oo-ui-toggleSwitchWidget-grip {
background-color: var(--ooui-input);
border-color: var(--ooui-input);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled.oo-ui-toggleWidget-on:hover {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled.oo-ui-toggleWidget-on:active,
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled.oo-ui-toggleWidget-on:active:hover {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled.oo-ui-toggleWidget-on:focus {
border-color: var(--ooui-progressive);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled.oo-ui-toggleWidget-on:focus::before {
border-color: #fff;
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-disabled {
background-color: var(--ooui-disabled);
border-color: var(--ooui-disabled);
}
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled > .oo-ui-buttonElement-button {
color: var(--ooui-text);
}
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled > .oo-ui-buttonElement-button:hover {
color: var(--ooui-text);
}
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled > .oo-ui-buttonElement-button:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled.oo-ui-buttonElement-pressed > input.oo-ui-buttonElement-button,
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled > .oo-ui-buttonElement-button:active {
color: var(--ooui-text);
}
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button,
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button:hover {
color: var(--ooui-text);
}
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button:active,
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive.oo-ui-buttonElement-pressed > .oo-ui-buttonElement-button {
color: var(--ooui-text);
border-color: var(--ooui-text);
}
.oo-ui-buttonElement-frameless.oo-ui-widget-disabled > .oo-ui-buttonElement-button {
color: var(--ooui-disabled-text);
}
.oo-ui-buttonElement-framed.oo-ui-widget-disabled > .oo-ui-buttonElement-button {
background-color: var(--ooui-disabled);
border-color: var(--ooui-disabled-border);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled > .oo-ui-buttonElement-button {
background-color: var(--ooui-normal);
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled > .oo-ui-buttonElement-button:hover {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled > .oo-ui-buttonElement-button:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-buttonElement-active > .oo-ui-buttonElement-button {
background-color: var(--ooui-progressive--hover);
color: #fff;
border-color: var(--ooui-progressive--hover);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-buttonElement-active > .oo-ui-buttonElement-button:focus {
border-color: var(--ooui-progressive--hover);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled > .oo-ui-buttonElement-button:active,
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-buttonElement-pressed > .oo-ui-buttonElement-button {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive {
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button {
color: var(--ooui-text);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button:hover {
background-color: var(--ooui-normal--hover);
border-color: var(--ooui-progressive--hover);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-destructive > .oo-ui-buttonElement-button {
color: var(--ooui-text);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-destructive > .oo-ui-buttonElement-button:hover {
background-color: var(--ooui-normal--hover);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button {
background-color: var(--ooui-progressive);
border-color: var(--ooui-progressive);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button:hover {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent), inset 0 0 0 2px #fff;
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button:active,
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive.oo-ui-buttonElement-pressed > .oo-ui-buttonElement-button,
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive.oo-ui-buttonElement-active > .oo-ui-buttonElement-button,
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive.oo-ui-popupToolGroup-active > .oo-ui-buttonElement-button {
color: #fff;
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
}
.oo-ui-pendingElement-pending {
background-image: var(--ooui-pending-background-image);
background-size: 200%;
animation: oo-ui-pendingElement-stripes 6s linear infinite;
}
@keyframes oo-ui-pendingElement-stripes {
100% {
background-position: 100%;
}
}
.oo-ui-messageDialog-content > .oo-ui-window-foot {
outline-color: var(--ooui-interface-border);
}
.oo-ui-messageDialog-message {
color: var(--ooui-text);
}
.oo-ui-messageDialog-actions-horizontal .oo-ui-actionWidget {
border-right-color: var(--ooui-interface-border);
}
.oo-ui-messageDialog-actions-vertical .oo-ui-actionWidget {
border-bottom-color: var(--ooui-interface-border);
}
.oo-ui-processDialog-content .oo-ui-window-head,
.oo-ui-processDialog-content .oo-ui-window-foot {
outline-color: var(--ooui-interface-border);
}
.oo-ui-processDialog .oo-ui-actionWidget > .oo-ui-buttonElement-button {
border-top-color: transparent;
border-bottom-color: transparent;
}
.oo-ui-processDialog .oo-ui-actionWidget > .oo-ui-buttonElement-button:hover,
.oo-ui-processDialog .oo-ui-actionWidget > .oo-ui-buttonElement-button:active {
border-top-color: transparent;
border-bottom-color: transparent;
}
.oo-ui-processDialog .oo-ui-actionWidget:not( .oo-ui-flaggedElement-progressive ):not( .oo-ui-flaggedElement-destructive ) > .oo-ui-buttonElement-button:hover,
.oo-ui-processDialog .oo-ui-actionWidget:not( .oo-ui-flaggedElement-progressive ):not( .oo-ui-flaggedElement-destructive ) > .oo-ui-buttonElement-button:active {
border-right-color: var(--ooui-interface-border);
border-left-color: transparent;
}
.oo-ui-processDialog .oo-ui-actionWidget:not( .oo-ui-flaggedElement-progressive ):not( .oo-ui-flaggedElement-destructive ) > .oo-ui-buttonElement-button:focus {
border-color: var(--ooui-accent);
}
.oo-ui-processDialog-actions-safe .oo-ui-actionWidget > .oo-ui-buttonElement-button,
.oo-ui-processDialog-actions-other .oo-ui-actionWidget > .oo-ui-buttonElement-button {
border-right-color: var(--ooui-normal-border);
border-left-color: transparent;
}
.oo-ui-processDialog-actions-safe .oo-ui-widget-enabled.oo-ui-iconElement:not( .oo-ui-labelElement ) > .oo-ui-buttonElement-button:hover {
background-color: var(--ooui-normal--hover);
border-right-color: var(--ooui-interface-border);
}
.oo-ui-windowManager-modal > .oo-ui-dialog {
background-color: var(--ooui-window-background);
}
.oo-ui-windowManager-modal > .oo-ui-dialog > .oo-ui-window-frame {
background-color: var(--ooui-interface);
}
.oo-ui-windowManager-modal.oo-ui-windowManager-floating > .oo-ui-dialog > .oo-ui-window-frame {
border-color: var(--ooui-interface-border);
}
.oo-ui-window {
color: var(--ooui-text);
}
.oo-ui-toolbar-bar {
background-color: var(--ooui-interface);
color: var(--ooui-text);
}
.oo-ui-toolbar-position-top > .oo-ui-toolbar-bar {
border-bottom-color: var(--body-mid);
}
.oo-ui-toolbar-bar .oo-ui-bookletLayout > .oo-ui-menuLayout-menu {
border-right-color: var(--body-mid);
}
.oo-ui-tool.oo-ui-widget-enabled > .oo-ui-tool-link:hover {
background-color: var(--ooui-normal--hover);
}
.oo-ui-tool.oo-ui-widget-enabled > .oo-ui-tool-link:focus {
outline: 1px solid var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-tool.oo-ui-widget-enabled > .oo-ui-tool-link:active,
.oo-ui-tool.oo-ui-widget-enabled.oo-ui-tool-active > .oo-ui-tool-link,
.oo-ui-tool.oo-ui-widget-enabled.oo-ui-popupToolGroup-active > .oo-ui-tool-link {
background-color: var(--ooui-normal--hover);
color: var(--ooui-accent);
box-shadow: none;
}
.oo-ui-tool.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive > .oo-ui-tool-link {
background-color: var(--ooui-progressive);
}
.oo-ui-tool.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive > .oo-ui-tool-link:hover {
background-color: var(--ooui-progressive--hover);
}
.oo-ui-tool.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive > .oo-ui-tool-link:focus {
box-shadow: inset 0 0 0 1px var(--ooui-accent), inset 0 0 0 2px #fff;
}
.oo-ui-tool.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive > .oo-ui-tool-link:active,
.oo-ui-tool.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive.oo-ui-tool-active > .oo-ui-tool-link {
background-color: var(--ooui-progressive--hover);
}
.oo-ui-listToolGroup-tools .oo-ui-tool.oo-ui-widget-enabled {
background-color: var(--ooui-normal);
}
.oo-ui-listToolGroup-tools .oo-ui-tool.oo-ui-widget-enabled:hover {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
}
.oo-ui-listToolGroup-tools .oo-ui-tool-active.oo-ui-widget-enabled .oo-ui-tool-link .oo-ui-tool-title {
color: var(--ooui-progressive);
}
.oo-ui-menuToolGroup {
border-left-color: var(--body-mid);
border-right-color: var(--body-mid);
}
.oo-ui-popupToolGroup-tools {
background-color: var(--ooui-interface);
border-color: var(--body-mid);
}
.oo-ui-popupToolGroup.oo-ui-widget-enabled > .oo-ui-popupToolGroup-handle:hover {
background-color: var(--ooui-normal--hover);
}
.oo-ui-popupToolGroup.oo-ui-widget-enabled > .oo-ui-popupToolGroup-handle:focus {
outline: 1px solid var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-toolbar-actions .oo-ui-popupToolGroup.oo-ui-widget-enabled > .oo-ui-popupToolGroup-handle:hover {
border-right-color: var(--ooui-normal--hover);
}
.oo-ui-popupToolGroup-tools .oo-ui-tool.oo-ui-widget-enabled .oo-ui-tool-link:focus {
box-shadow: inset 0 0 0 2px var(--ooui-accent);
}
.oo-ui-popupToolGroup-tools .oo-ui-tool-active.oo-ui-widget-enabled .oo-ui-tool-link .oo-ui-tool-title {
color: var(--ooui-progressive);
}
.oo-ui-popupToolGroup.oo-ui-popupToolGroup-active > .oo-ui-popupToolGroup-handle {
background-color: var(--ooui-normal);
color: var(--ooui-accent);
}
.oo-ui-popupToolGroup.oo-ui-popupToolGroup-active > .oo-ui-popupToolGroup-handle:hover {
background-color: var(--ooui-normal--hover);
color: var(--ooui-accent);
}
.oo-ui-bookletLayout-outlinePanel > .oo-ui-outlineControlsWidget {
border-top-color: var(--ooui-interface-border);
}
.oo-ui-bookletLayout > .oo-ui-menuLayout-menu {
border-right-color: var(--ooui-interface-border);
}
.oo-ui-fieldLayout-disabled > .oo-ui-fieldLayout-body > .oo-ui-fieldLayout-header > .oo-ui-labelElement-label {
color: var(--ooui-disabled-text);
}
.oo-ui-panelLayout-framed {
border-color: var(--sidebar);
}
.oo-ui-icon-settings {
background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' width='20' height='20' viewBox='0 0 20 20'%3E%3Ctitle%3Esettings%3C/title%3E%3Cg transform='translate(10 10)'%3E%3Cpath id='a' d='M1.5-10h-3l-1 6.5h5m0 7h-5l1 6.5h3'/%3E%3Cuse xlink:href='%23a' transform='rotate(45)'/%3E%3Cuse xlink:href='%23a' transform='rotate(90)'/%3E%3Cuse xlink:href='%23a' transform='rotate(135)'/%3E%3C/g%3E%3Cpath d='M10 2.5a7.5 7.5 0 0 0 0 15 7.5 7.5 0 0 0 0-15v4a3.5 3.5 0 0 1 0 7 3.5 3.5 0 0 1 0-7'/%3E%3C/svg%3E");
}
.oo-ui-icon-clear {
background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 20 20'%3E%3Ctitle%3Eclear%3C/title%3E%3Cpath d='M10 0a10 10 0 1 0 10 10A10 10 0 0 0 10 0zm5.66 14.24-1.41 1.41L10 11.41l-4.24 4.25-1.42-1.42L8.59 10 4.34 5.76l1.42-1.42L10 8.59l4.24-4.24 1.41 1.41L11.41 10z'/%3E%3C/svg%3E");
}
.mw-widget-dateInputWidget-handle {
background-color: var(--ooui-input);
color: var(--ooui-text);
border-color: var(--ooui-input-border);
}
.mw-widget-dateInputWidget-calendar {
background-color: var(--ooui-interface);
}
.mw-widget-dateInputWidget.oo-ui-widget-enabled .mw-widget-dateInputWidget-handle:hover {
border-color: var(--ooui-input-border--hover);
}
.mw-widget-calendarWidget {
border-color: var(--ooui-interface-border);
}
.mw-widget-calendarWidget:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.mw-widget-calendarWidget-day,
.mw-widget-calendarWidget-day-heading {
color: var(--ooui-text);
}
.mw-widget-calendarWidget-day-additional {
color: var(--ooui-text);
opacity: 0.67;
}
.mw-widget-calendarWidget-day-today {
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.mw-widget-calendarWidget-item:hover {
background-color: var(--ooui-progressive);
}
.mw-widget-calendarWidget-item-selected {
background-color: var(--ooui-progressive--hover);
}
.mw-widgets-datetime-calendarWidget {
background-color: var(--ooui-interface);
border-color: var(--ooui-interface-border);
}
.mw-widgets-datetime-calendarWidget:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent), 0 2px 2px 0 rgba(0, 0, 0, 0.25);
}
.mw-widgets-datetime-calendarWidget-grid .mw-widgets-datetime-calendarWidget-cell.mw-widgets-datetime-calendarWidget-extra .oo-ui-buttonElement-button .oo-ui-labelElement-label {
color: var(--subtle-color);
}
.mw-widgets-datetime-calendarWidget-grid .mw-widgets-datetime-calendarWidget-cell.mw-widgets-datetime-calendarWidget-selected .oo-ui-buttonElement-button {
background-color: var(--ooui-progressive--hover);
}
.mw-widgets-datetime-dateTimeInputWidget-handle {
background-color: var(--ooui-input);
color: var(--ooui-text);
border-color: var(--ooui-input-border);
}
.mw-widgets-datetime-dateTimeInputWidget.oo-ui-widget-enabled.mw-widgets-datetime-dateTimeInputWidget-handle:hover {
border-color: var(--ooui-input-border--hover);
}
.mw-widgets-datetime-dateTimeInputWidget.oo-ui-widget-enabled:hover input,
.mw-widgets-datetime-dateTimeInputWidget.oo-ui-widget-enabled:hover textarea {
border-color: var(--ooui-input-border--hover);
}
.mw-widgets-datetime-dateTimeInputWidget.oo-ui-widget-enabled .mw-widgets-datetime-dateTimeInputWidget-editField:hover {
background-color: var(--ooui-normal);
}
.ve-activated .ve-init-mw-desktopArticleTarget-originalContent #catlinks:hover {
background: var(--ooui-normal--hover);
}
.ve-ui-overlay {
font-family: inherit;
}
.oo-ui-toolbar-position-top .ve-ui-toolbarDialog-position-above {
border-top-color: var(--body-mid);
}
.ve-ce-branchNode-blockSlug,
.ve-ce-branchNode-newSlug {
outline-color: var(--body-border);
background-color: var(--ooui-interface);
}
.ve-ui-specialCharacterPage h3 {
color: var(--byline-color);
}
.ve-ui-specialCharacterPage-character {
border-color: var(--body-mid);
}
.ve-ui-specialCharacterPage-character:hover {
border-color: var(--body-dark);
}
.ve-ce-linkAnnotation.ve-ce-annotation-active {
box-shadow: 0 0 0 1px var(--body-mid);
background: none;
}
.ve-ui-desktopContext .ve-ui-linkContextItem .ve-ui-linkContextItem-label {
border-color: var(--body-border);
}
.ve-ui-mwHelpPopupTool-version-label,
.ve-ui-mwHelpPopupTool-version-link,
.ve-ui-mwHelpPopupTool-version-date {
color: var(--byline-color);
}
.ve-ce-tableCellableNode {
border-color: var(--body-mid);
}
.ve-ce-mwReferencesListNode-muted {
color: var(--byline-color);
}
.ve-ui-mwTemplatePage-description,
.ve-ui-mwParameterPage-label,
.ve-ui-mwParameterPage-description-required,
.ve-ui-mwParameterPage-description-deprecated {
color: var(--byline-color);
}
.mw-widget-titleWidget-menu .mw-widget-titleOptionWidget-description {
color: var(--byline-color);
}
.ve-ui-mwGalleryDialog-menuLayout > .oo-ui-menuLayout-menu,
.ve-ui-mwGalleryDialog-innerMenuLayout > .oo-ui-menuLayout-menu,
.ve-ui-mwGalleryDialog .ve-ui-mwGalleryDialog-image-container,
.ve-ui-targetWidget {
border-color: var(--body-border);
}
.ve-ui-targetWidget:not(.oo-ui-pendingElement-pending) {
background-color: var(--body-main);
}
.ve-ui-mwSaveDialog {
color: var(--ooui-text);
}
.ve-ui-mwSaveDialog-options {
background-color: var(--ooui-interface);
border-color: var(--body-border);
}
.ve-ui-mwSaveDialog-summary {
background-color: var(--ooui-input);
}
.ve-ui-mwSaveDialog-editSummary-count {
border-color: var(--body-border);
}
.ve-ui-mwSaveDialog-license {
color: var(--byline-color);
}
.ve-ui-mwReferenceContextItem-muted {
color: var(--byline-color);
}
.ve-ui-mwNoticesPopupTool-items > div:not(:first-child),
.ve-ui-mwHelpPopupTool-item:not(:first-child) {
border-color: var(--body-border);
}
.ve-ui-mwTransclusionOutlineControlsWidget {
background-color: var(--ooui-interface);
border-top-color: var(--body-border);
}
.ve-ui-mwTransclusionOutlineTemplateWidget-sticky {
background-color: var(--ooui-interface);
}
.ve-ui-mwTransclusionOutlineTemplateWidget .ve-ui-mwTransclusionOutlineParameterWidget.oo-ui-optionWidget-highlighted {
color: var(--ooui-text);
}
.ve-ui-mwTransclusionOutlineTemplateWidget-no-template-parameters {
color: var(--subtle-color);
}
.ve-ui-mwParameterPage-undocumentedLabel {
color: var(--subtle-color);
}
.ve-ui-mwTwoPaneTransclusionDialogLayout > .oo-ui-menuLayout-menu {
border-right: var(--body-border);
}
.ve-ui-mwParameterPage-doc-required,
.ve-ui-mwParameterPage-doc-deprecated,
.ve-ui-mwParameterPage-inlineDescription .ve-ui-mwParameterPage-doc-example {
color: var(--byline-color);
}
.ve-ui-expandableContent-toggle {
background-color: var(--ooui-interface);
}
.ve-ui-expandableContent-fade {
background: linear-gradient(to right, rgba(255, 255, 255, 0) 0, var(--ooui-interface) 90%);
}
.ve-ui-commandHelpDialog-shortcut > kbd,
.ve-ui-commandHelpDialog-sequence > kbd {
background-color: var(--keypress-background);
color: var(--keypress-color);
border-color: var(--keypress-border);
box-shadow: none;
text-shadow: none;
}
.ve-init-mw-desktopArticleTarget-toolbarPlaceholder-floating .ve-init-mw-desktopArticleTarget-toolbarPlaceholder-bar {
background: var(--ooui-interface);
}
.ve-init-mw-desktopArticleTarget-toolbarPlaceholder-bar {
border-bottom-color: var(--body-mid);
}
figure[typeof~='mw:File/Thumb'],
figure[typeof~='mw:File/Frame'],
figure[typeof~='mw:Image/Thumb'],
figure[typeof~='mw:Video/Thumb'],
figure[typeof~='mw:Image/Frame'],
figure[typeof~='mw:Video/Frame'] {
border: none;
background-color: var(--thumb-bg);
}
figure[typeof~='mw:File/Thumb'] > a:first-child > *:first-child:not( .mw-broken-media ),
figure[typeof~='mw:File/Frame'] > a:first-child > *:first-child:not( .mw-broken-media ),
figure[typeof~='mw:Image/Thumb'] > a:first-child > *:first-child:not( .mw-broken-media ),
figure[typeof~='mw:Video/Thumb'] > a:first-child > *:first-child:not( .mw-broken-media ),
figure[typeof~='mw:Image/Frame'] > a:first-child > *:first-child:not( .mw-broken-media ),
figure[typeof~='mw:Video/Frame'] > a:first-child > *:first-child:not( .mw-broken-media ) {
border: none;
background: var(--thumb-bg);
}
figure[typeof~='mw:File/Thumb'] > figcaption,
figure[typeof~='mw:File/Frame'] > figcaption,
figure[typeof~='mw:Image/Thumb'] > figcaption,
figure[typeof~='mw:Video/Thumb'] > figcaption,
figure[typeof~='mw:Image/Frame'] > figcaption,
figure[typeof~='mw:Video/Frame'] > figcaption {
border: none;
background-color: var(--thumb-caption-bg);
padding: 4px 6px;
}
:root {
--infobox-text-color: var(--text-color);
}
ol.references,
.reflist {
font-size: 90%;
}
.reflist {
list-style-type: decimal;
}
.reflist .references {
font-size: 100%;
list-style-type: inherit;
}
.reflist-lower-alpha {
list-style-type: lower-alpha;
}
ol.references li:target,
sup.reference:target {
background-color: var(--body-light);
}
.hideQuotes .refhide {
display: none;
}
:root {
--byline-arrow-filter: invert(29%) sepia(0%) saturate(376%) hue-rotate(172deg) brightness(87%) contrast(80%);
--tile-border-color: #cabe9b;
--tile-background-color: #f9f3eb;
--tile-link-button-color: #f5e9db;
--tile-link-button-highlight-color: #dfccb0;
--tile-dark-color: #fff;
--tile-dark-bg: #5d6773;
--tile-dark-link-color: #ccc;
--tile-dark-byline-color: rgba(255, 255, 255, 0.7);
--tile-dark-header-color: #fff;
}
.tile {
background: var(--tile-background-color);
border: 1px solid var(--tile-border-color);
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
padding: 1.5em 2em 1em;
max-width: 40em;
}
.tile h2 {
font-size: 1.4em;
font-weight: bold;
border: none;
margin: 0 0 0.4em;
}
.tile .byline + h2 {
margin-top: -0.5em;
}
.tile.dark {
color: var(--tile-dark-color);
background: var(--tile-dark-bg);
border: none;
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.3);
}
.tile.dark h2 {
color: var(--tile-dark-header-color);
}
.tile.dark a {
color: var(--tile-dark-link-color);
}
.tile.dark .byline {
color: var(--tile-dark-byline-color);
}
.byline {
font-size: 0.9em;
color: var(--byline-color);
}
.byline a {
color: var(--byline-color);
}
.tile-row {
display: flex;
flex-flow: row wrap;
margin-bottom: 1em;
}
.tile-halves {
display: flex;
flex-flow: row wrap;
border: 1px solid var(--tile-border-color);
background: var(--tile-background-color);
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
}
.tile-halves h2 {
font-size: 1.4em;
font-weight: bold;
border: none;
margin: 0 0 0.4em;
}
.tile-halves .byline + h2 {
margin-top: -0.5em;
}
.tile-top {
width: 100%;
padding: 1.3rem 1.5rem 0.6rem;
}
.tile-top.tile-image {
display: flex;
align-items: center;
background-color: var(--byline-color);
overflow: hidden;
padding: 0;
height: 13vw;
max-height: 12em;
transition: 0.4s ease-out;
}
.tile-halves:hover .tile-top.tile-image img {
transform: scale(1.1);
transition: 0.5s ease-out;
}
.tile-top.tile-image a {
width: 100%;
}
.tile-top.tile-image img {
width: 100%;
object-fit: cover;
max-height: 200px;
transition: 0.4s ease-out;
}
.tile-bottom {
background: var(--tile-background-color);
border-top: 1px solid var(--tile-border-color);
width: 100%;
padding: 1rem 1.5rem 0.6rem;
}
.tile-bottom.link-button {
align-self: flex-end;
padding: 0;
}
.tile-bottom.link-button a {
display: block;
text-align: center;
padding: 0.75em 1.5em 0.8em;
text-decoration: none;
}
.tile-bottom.read-more {
background: var(--tile-link-button-color);
transition: 0.3s ease-out;
}
.tile-bottom.read-more a {
color: var(--byline-color);
font-weight: bold;
text-align: right;
}
.tile-bottom.read-more:hover {
background: var(--tile-link-button-highlight-color);
}
.tile-bottom.read-more:hover .arrow {
transform: translateX(50%);
}
.tile-bottom.read-more .arrow {
filter: var(--byline-arrow-filter);
margin-left: 0.4em;
transition: 0.3s ease-out;
}
body.page-Main_Page.action-view .catlinks,
body.page-Main_Page.action-view #contentSub,
body.page-Main_Page.action-view #firstHeading,
body.page-Main_Page.action-view #siteNotice {
display: none;
}
body.page-Main_Page .mw-parser-output {
max-width: 75em;
margin: 0 auto;
}
body.page-Main_Page.action-view .catlinks,
body.page-Main_Page.action-view #contentSub,
body.page-Main_Page.action-view #siteNotice {
display: none;
}
.mainpage-header {
display: flex;
margin: 2.6em 1.75em 1.5em;
}
.mainpage-header .header-intro {
flex: 2;
}
.mainpage-header .header-intro h1 {
font-size: 2.5em;
font-weight: bold;
border: none;
margin: 0 0 0.15em;
}
.mainpage-header .header-intro p {
font-size: 1.1em;
line-height: 1.7em;
}
.mainpage-header .header-stats {
flex: 1;
display: flex;
justify-content: center;
align-items: center;
margin-top: -1em;
}
.mainpage-body {
display: grid;
grid-template-areas: "event event event" "update update update" "content content content" "left left right";
gap: 0.9rem;
grid-template-columns: repeat(3, 1fr);
}
.mainpage-body h2 a {
color: var(--text-color);
}
.mainpage-body .tile {
padding-left: 1.75em;
padding-right: 1.75em;
max-width: 100%;
}
.mainpage-body .tile-row {
width: 100%;
margin-bottom: 0;
}
.mainpage-body .tile-row {
display: grid;
gap: 0.9rem;
}
.mainpage-left {
grid-area: left;
flex: 2;
display: flex;
flex-flow: column wrap;
}
.mainpage-left > * {
margin: 0 0 0.9rem;
}
.mainpage-right {
grid-area: right;
flex: 1;
display: flex;
flex-flow: column wrap;
}
.mainpage-right > * {
margin: 0 0 0.9rem;
}
.arrow {
background: url('filepath://White-chevron.svg') no-repeat;
display: inline-block;
height: 0.7rem;
width: 0.45rem;
vertical-align: middle;
}
.arrow.dark {
filter: invert(80%);
}
.mainpage-contents {
grid-area: content;
grid-template-columns: repeat(6, 1fr);
}
.mainpage-contents .tile-halves {
flex: 1;
}
.mainpage-contents .tile-top {
height: 4.5rem;
position: relative;
}
.mainpage-contents h2 {
margin: 0;
padding: 0;
}
.mainpage-contents .tile-bottom.link-button a {
padding: 0.75em 0.2em;
}
.popular-pages ul {
display: grid;
grid-template-columns: repeat(3, 1fr);
grid-gap: 0.6em;
margin: 1em 0 0.7em 0;
}
.mp-popular-page-light {
display: flex;
align-items: center;
background-color: var(--button-background);
transition: 100ms;
}
.mp-popular-page-light a {
flex: 1;
display: block;
color: #fff;
font-weight: bold;
text-align: center;
text-decoration: none;
padding: 0.7em 1em;
}
.mp-popular-page-light:hover {
filter: brightness(115%);
transition: 100ms;
}
.mainpage-discord {
border: none;
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.3);
}
.mainpage-discord .tile-top {
display: flex;
align-items: center;
background: #5865f2;
padding: 1em 1.75em;
}
.mainpage-discord .tile-top a {
flex: 1;
position: relative;
text-decoration: none;
}
.mainpage-discord .tile-top a:hover .arrow {
transform: translateX(50%);
}
.mainpage-discord .tile-bottom {
background: #525ee0;
border: none;
padding: 1em 1.75em;
}
.mainpage-discord .tile-bottom p {
color: #fff;
font-weight: bold;
font-size: 0.9em;
text-align: center;
text-transform: uppercase;
letter-spacing: 0.03em;
margin: 0;
}
.mainpage-discord .partner-icon {
margin-right: 0.75em;
}
.mainpage-discord .server-name {
color: #fff;
font-weight: bold;
font-size: 1.25em;
margin: 0.5em 0 -0.15em;
}
.mainpage-discord .server-tagline {
color: rgba(255, 255, 255, 0.9);
margin-bottom: 0.5em;
}
.mainpage-discord .arrow {
position: absolute;
top: calc(50% - .5em);
right: 0;
height: 1em;
width: 0.7em;
background-size: 0.7em 1em;
transition: 0.3s ease-out;
}
.mainpage-editing {
border: none;
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.3);
}
.mainpage-editing .tile-top {
background: #438ab5;
}
.mainpage-editing .tile-bottom {
background: #3980ab;
border: none;
padding: 0.8rem 1.5rem 0.4rem;
}
.mainpage-editing h2,
.mainpage-editing a {
color: #fff;
}
.mainpage-editing p {
color: rgba(255, 255, 255, 0.9);
}
.mainpage-editing ul {
list-style-image: url('filepath://Transparent-chevron.svg');
}
@media only screen and (max-width: 1200px) {
.mainpage-contents {
grid-template-columns: repeat(3, 1fr);
}
}
@media only screen and (max-width: 1000px) {
.mainpage-body {
grid-template-areas: "event event event" "update update update" "content content content" "left left left" "right right right";
}
.mainpage-recent-updates {
grid-template-columns: repeat(2, 1fr);
}
.mainpage-recent-updates .tile-halves:last-child {
display: none;
}
.mainpage-recent-updates .tile-halves:hover .tile-top img {
transform: scale(1.04);
}
.mainpage-recent-updates .tile-top {
height: 18vw;
min-height: 9em;
}
.mainpage-header .header-stats {
display: none;
}
.mainpage-left > *:last-child,
.mainpage-right > *:last-child {
margin-bottom: 0;
}
.popular-pages ul {
grid-template-columns: repeat(2, 1fr);
}
}
@media only screen and (max-width: 720px) {
.mainpage-recent-updates {
grid-template-columns: none;
}
.mainpage-recent-updates .tile-halves:last-child {
display: flex;
}
.mainpage-contents {
grid-template-columns: repeat(2, 1fr);
}
}
.mw-prefs-buttons {
background-color: var(--body-main);
border-top-color: var(--body-border);
box-shadow: none;
}
.mw-prefs-tabs-wrapper.oo-ui-panelLayout-framed,
.mw-prefs-tabs > .oo-ui-menuLayout-content > .oo-ui-indexLayout-stackLayout > .oo-ui-tabPanelLayout {
border-color: var(--body-border);
}
.mw-htmlform-ooui .mw-htmlform-matrix tbody tr:nth-child(even) td {
background-color: var(--body-light);
}
.mw-htmlform-ooui .mw-htmlform-matrix tbody tr:hover td {
background-color: var(--body-mid);
}
:root {
--rc-positive-color: #407813;
--rc-negative-color: #b41e0f;
}
.mw-plusminus-pos {
color: var(--rc-positive-color);
}
.mw-plusminus-neg {
color: var(--rc-negative-color);
}
.client-js .mw-recentchanges-toplinks:not(.mw-recentchanges-toplinks-collapsed) {
border-color: var(--body-border);
background-color: var(--body-light);
border-radius: 2px;
}
.mw-rcfilters-ui-filterTagMultiselectWidget-wrapper-content-title {
color: var(--text-color);
}
.mw-rcfilters-ui-filterTagMultiselectWidget-emptyFilters {
color: var(--byline-color);
}
.mw-rcfilters-ui-filterTagMultiselectWidget.oo-ui-widget-enabled .oo-ui-tagMultiselectWidget-handle {
background-color: var(--ooui-interface);
border-color: var(--ooui-interface-border);
}
.mw-rcfilters-ui-filterTagMultiselectWidget-views-select-widget.oo-ui-widget {
border-color: var(--ooui-interface-border);
}
.mw-rcfilters-collapsed .mw-rcfilters-ui-filterTagMultiselectWidget {
border-bottom-color: var(--ooui-interface-border);
}
.mw-rcfilters-ui-menuSelectWidget-footer {
background-color: var(--ooui-interface);
border-color: var(--ooui-interface-border);
}
.mw-rcfilters-ui-viewSwitchWidget label.oo-ui-labelWidget {
color: var(--byline-color);
}
.mw-rcfilters-ui-tagItemWidget-popup-content {
color: var(--ooui-text);
}
.mw-changeslist-legend,
.mw-rcfilters-ui-changesListWrapperWidget .mw-changeslist-legend {
background-color: var(--body-light);
border-color: var(--body-dark);
}
.mw-rcfilters-ui-changesListWrapperWidget-previousChangesIndicator {
border-color: var(--sidebar);
}
.client-js .mw-changeslist ul,
.client-js .mw-changeslist table.mw-enhanced-rc {
margin-left: 0;
}
.mw-rcfilters-ui-watchlistTopSectionWidget-separator {
border-color: var(--sidebar);
}
.mw-rcfilters-ui-itemMenuOptionWidget-header {
border-bottom-color: var(--ooui-interface);
background-color: var(--ooui-interface-border);
}
.mw-rcfilters-ui-itemMenuOptionWidget:not(:last-child):not(.mw-rcfilters-ui-itemMenuOptionWidget-identifier-talk) {
border-bottom-color: var(--ooui-normal-border);
}
.mw-rcfilters-ui-itemMenuOptionWidget-label-title,
.mw-rcfilters-ui-itemMenuOptionWidget-label-desc {
color: var(--text-color);
}
.mw-rcfilters-ui-filterMenuOptionWidget.oo-ui-flaggedElement-muted:not(.oo-ui-optionWidget-selected) {
background-color: var(--body-main);
}
.mw-rcfilters-ui-filterMenuOptionWidget.oo-ui-flaggedElement-muted .mw-rcfilters-ui-itemMenuOptionWidget-label-title,
.mw-rcfilters-ui-filterMenuOptionWidget.oo-ui-flaggedElement-muted .mw-rcfilters-ui-itemMenuOptionWidget-label-desc {
color: var(--subtle-color);
}
.mw-rcfilters-ui-filterMenuSectionOptionWidget {
background-color: var(--body-mid);
}
.mw-rcfilters-ui-filterMenuSectionOptionWidget-header-title.oo-ui-labelElement-label {
color: var(--ooui-text);
}
.mw-rcfilters-ui-filterMenuHeaderWidget-title {
color: var(--ooui-text);
}
.mw-rcfilters-ui-filterMenuHeaderWidget-header {
border-bottom-color: var(--ooui-interface-border);
background-color: var(--ooui-interface);
}
.mw-rcfilters-ui-itemMenuOptionWidget-view-namespaces {
border-top-color: var(--ooui-interface-border);
}
.mw-rcfilters-ui-datePopupWidget {
border-color: var(--ooui-interface-border);
}
.mw-rcfilters-ui-datePopupWidget .mw-rcfilters-ui-valuePickerWidget-title {
color: var(--byline-color);
}
.mw-rcfilters-ui-savedLinksListItemWidget-label {
color: var(--ooui-accent);
}
.client-js .mw-changeslist.mw-rcfilters-ui-changesListWrapperWidget-highlighted ul,
.client-js .mw-changeslist.mw-rcfilters-ui-changesListWrapperWidget-highlighted table.mw-enhanced-rc {
margin-left: 1.5em;
}
.page-Special_CreateAccount .mw-ui-container,
.page-Special_UserLogin .mw-ui-container {
max-width: 64rem;
margin: 0 auto;
}
.mw-number-text {
color: var(--byline-color);
}
.mw-body-content .mw-number-text h3 {
color: var(--text-color);
}
#mw-indicator-mw-helplink a {
background: none;
padding: 0;
display: flex;
align-items: center;
}
#mw-indicator-mw-helplink a::before {
content: '';
margin-right: 5px;
-webkit-mask: url("/resources/src/mediawiki.helplink/images/helpNotice.svg?46d34") no-repeat 50% 50% / contain;
mask: url("/resources/src/mediawiki.helplink/images/helpNotice.svg?46d34") no-repeat 50% 50% / contain;
background: var(--text-color);
height: 20px;
width: 20px;
}
.results-info {
color: inherit;
}
.mw-search-profile-tabs {
background-color: var(--body-mid);
border-color: transparent;
}
.search-types .current a {
color: inherit;
}
#mw-searchoptions {
background-color: var(--body-mid);
border-color: transparent;
}
#mw-searchoptions .divider {
border-color: var(--body-border);
}
#mw-searchoptions h4 {
font-family: inherit;
}
#mw-searchoptions .oo-ui-labelElement:nth-of-type(odd) {
font-weight: bold;
}
.searchresult {
line-height: 1.5;
}
.searchalttitle,
#mw-search-interwiki li {
font-size: 90%;
}
.mw-search-result-data {
color: var(--byline-color);
}
.page-Special_ListFiles a.image img {
width: inherit;
height: inherit;
}
.page-Special_ListFiles .TablePager_col_thumb {
text-align: center;
}
#editcount table[border="1"] {
background-color: var(--body-main) !important;
border-color: var(--wikitable-border) !important;
margin-top: 0.5em;
}
#editcount table[border="1"] th,
#editcount table[border="1"] td {
padding: 0.2em 0.4em;
}
#editcount table[border="1"] th {
background-color: var(--wikitable-header-bg);
border: 1px solid var(--wikitable-border);
}
#editcount table[border="1"] td {
border: 1px solid var(--wikitable-border);
}
#editcount table[border="1"] tr:nth-child(odd) {
background-color: var(--body-light);
}
.mw-echo-ui-notificationBadgeButtonPopupWidget-popup > .oo-ui-popupWidget-popup .mw-echo-ui-placeholderItemWidget {
background-color: inherit;
}
table.mw-interwikitable.body td.mw-interwikitable-local-yes {
background-color: var(--table-yes-background);
color: var(--table-yes-color);
}
.mw-protectedpages-unknown {
color: var(--byline-color);
}
.watchlistredir,
.allpagesredirect {
font-style: italic;
}
.allpagesredirect:after {
color: var(--byline-color);
content: " (redirect)";
}
.mw-apisandbox-toolbar {
background: var(--body-main);
}
.oo-ui-menuOptionWidget .mw-apisandbox-flag {
color: var(--byline-color);
}
tr.mw-abusefilter-list-disabled,
tr.mw-abusefilter-list-disabled td {
color: var(--byline-color);
}
table.mw-abuselog-details {
background: var(--wikitable-bg);
border-color: var(--wikitable-border);
}
table.mw-abuselog-details th {
background: var(--wikitable-header-bg);
}
table.mw-abuselog-details th,
table.mw-abuselog-details td {
border-color: var(--wikitable-border);
}
.mw-abusefilter-log-hidden-entry {
color: var(--subtle-color);
}
body td.mw-abusefilter-history-changed {
background: var(--table-no-background);
}
div.mw-abusefilter-editor,
#mw-abusefilter-warn-preview,
#mw-abusefilter-disallow-preview {
border-color: var(--ooui-input-border);
}
.mw-destfile-warning {
border-color: var(--warningbox-border);
color: var(--text-color);
background-color: var(--warningbox-bg);
}
span.fileinput-button {
background-color: var(--ooui-normal);
border-color: var(--ooui-normal-border);
color: var(--ooui-text);
}
ul.fileupload-results li.ful-success {
background-color: var(--successbox-bg);
}
ul.fileupload-results li.ful-success a {
color: var(--link-color);
}
ul.fileupload-results li.ful-error {
background-color: var(--errorbox-bg);
}
#t-print,
#t-permalink {
display: none;
}
#filetoc {
border-radius: 2px;
background: var(--body-mid);
border-color: transparent;
margin: 0.5em auto;
text-align: center;
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
}
li.gallerybox div.thumb {
border: none;
background-color: var(--thumb-bg);
}
.smwfact {
display: none;
}
.list-header {
background-color: var(--body-mid);
color: inherit;
}
.editOptions {
color: var(--text-color);
background-color: var(--sourceeditor-background-secondary);
border-color: var(--sourceeditor-border);
}
.mw-json th,
.mw-json td {
border-color: var(--wikitable-border);
}
.mw-json td {
background: var(--wikitable-bg);
}
.mw-json th {
background: var(--wikitable-header-bg);
}
2178752996ff649b32c0a066097b41478f803d90
102
90
2024-03-22T04:12:58Z
Jayden
3
Updating CSS from [[MediaWiki:Common.less]]
css
text/css
/* <pre> */
:root {
--body-main: #feffff;
--body-light: #d8ccb4;
--body-mid: #d0bd97;
--body-dark: #b8a282;
--body-border: #94866d;
--body-background-color: #173a4d;
--button-background: #605443;
--button-color: #fff;
--button-border: #3c352a;
--button-dark: #18140c;
--button-light: #3a301d;
--sidebar: #cfc08d;
--background-text-color: #e2dbc8;
--background-link-color: #e2bd8a;
--search-box: #efeee6;
--link-color: #936039;
--redlink-color: #ba0000;
--text-color: #000;
--byline-color: #4c4c4c;
--subtle-color: #777;
--admin-blue: #332e75;
--bearcat-green: #13592e;
--awb-purple: #933b96;
--rsw-blue: #438ab6;
--osrsw-brown: #605443;
--thumb-bg: var(--body-light);
--thumb-caption-bg: var(--body-mid);
--sourceeditor-input-background: #fff;
--sourceeditor-background: var(--body-light);
--sourceeditor-background-secondary: var(--body-light);
--sourceeditor-border: var(--body-mid);
--codemirror-gutter-background: var(--body-mid);
}
@font-face {
font-family: 'Lora';
font-weight: 400 700;
font-style: normal;
font-display: swap;
src: url('filepath://Lora.woff2') format('woff2');
}
@font-face {
font-family: 'Lora';
font-weight: 400 700;
font-style: italic;
font-display: swap;
src: url('filepath://Lora-Italic.woff2') format('woff2');
}
:root {
--base-text-color: #36414f;
--base-heading-color: #444e5a;
--base-heading-border: #e4eaee;
--mw-code-background-color: #ddd4bb;
--body-background-image: url('filepath://Wiki_background.jpg');
}
#mw-page-base {
background: none;
}
.mw-body {
background-color: var(--body-main);
color: var(--text-color);
border-color: transparent;
box-shadow: 0 0 7px rgba(0, 0, 0, 0.15);
margin-top: 0;
}
h1,
h2,
h3,
h4,
h5,
h6 {
color: var(--text-color);
}
h1,
h2 {
border-color: var(--sidebar);
}
.mw-body h1,
.mw-body-content h1,
.mw-body-content h2,
.mw-body-content h3,
.mw-body-content h4,
.mw-body-content h5,
.mw-body-content h6 {
font-family: 'Lora', 'Palatino', 'Georgia', serif;
}
.mw-parser-output h2:first-of-type {
clear: left;
}
.mw-footer {
color: var(--background-text-color);
}
.mw-footer li {
color: var(--background-text-color);
}
.mw-footer a,
.mw-footer a:active,
.mw-footer a:visited {
color: var(--background-link-color);
}
::placeholder {
color: var(--subtle-color);
}
a {
color: var(--link-color);
}
a:visited,
a:active {
color: var(--link-color);
}
a.new {
color: var(--redlink-color);
}
a.new:visited {
color: var(--redlink-color);
}
.mw-parser-output a.extiw,
.mw-parser-output a.external {
color: var(--link-color);
}
.mw-parser-output a.extiw:visited,
.mw-parser-output a.external:visited,
.mw-parser-output a.extiw:active,
.mw-parser-output a.external:active {
color: var(--link-color);
}
.jsPurgeLink a.external {
color: var(--link-color);
}
:root {
--errorbox-bg: #feecea;
--errorbox-border: #ee4231;
--warningbox-bg: #fef9de;
--warningbox-border: #f9d000;
--successbox-bg: #ecf8e3;
--successbox-border: #6bc71f;
}
.mw-message-box-error,
.errorbox,
.mw-message-box-warning,
.warningbox,
.mw-message-box-success,
.successbox,
.usermessage {
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
}
.mw-message-box-error,
.errorbox {
background-color: var(--errorbox-bg);
border-color: var(--errorbox-border);
}
.mw-message-box-warning,
.warningbox,
.usermessage {
background-color: var(--warningbox-bg);
border-color: var(--warningbox-border);
}
.mw-message-box-success,
.successbox {
background-color: var(--successbox-bg);
border-color: var(--successbox-border);
}
.catlinks {
background: var(--body-light);
border: 1px solid var(--body-dark);
padding: 8px 15px;
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
}
.catlinks li {
border-color: var(--body-mid);
}
.filehistory a img,
#file img {
background: url("data:image/svg+xml,%3C%3Fxml version='1.0' encoding='UTF-8'%3F%3E%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16'%3E%3Cpath d='M0 0h8v16h8V8H0z' opacity='.13'/%3E%3C/svg%3E") repeat;
}
#file img:hover {
background: none;
}
.mw-highlight {
background: none;
}
.mw-highlight .linenos {
background-color: var(--mw-code-background-color);
color: var(--byline-color);
}
.mw-highlight a:hover .linenos,
.mw-highlight .hll a .linenos {
color: var(--text-color);
}
.mw-content-ltr.mw-highlight-lines pre,
.mw-content-ltr.content .mw-highlight-lines pre {
box-shadow: inset 2.75em 0 0 var(--mw-code-background-color);
}
#pagehistory ul {
list-style: none;
margin: 0;
}
#pagehistory li {
border: 1px solid transparent;
padding: 1px 10px;
margin: 2px 0;
}
#pagehistory li.selected {
background-color: var(--body-light);
color: inherit;
border: 1px dashed var(--body-border);
outline: none;
}
#mw-history-compare > div:first-of-type {
position: -webkit-sticky;
position: sticky;
top: 0;
background-color: var(--body-main);
border-bottom: 1px solid var(--body-dark);
padding: 0.25em 0;
}
.wgl-stickyheader #mw-history-compare > div:first-of-type {
top: 2.5rem;
}
.autocomment,
.autocomment a,
.autocomment a:visited {
color: var(--link-color);
}
li span.deleted,
span.history-deleted {
color: var(--byline-color);
}
.mw-usertoollinks-contribs-no-edits,
.mw-usertoollinks-contribs-no-edits:visited {
color: var(--redlink-color);
}
.CategoryTreeToggle {
color: var(--link-color);
}
body.wgl-stickyheader.action-view .mw-headline:target::before {
display: block;
content: '';
margin-top: -3rem;
height: 3rem;
visibility: hidden;
pointer-events: none;
}
.mw-mmv-post-image {
color: var(--text-color);
background-color: var(--body-main);
}
.mw-mmv-image-metadata {
border-top-color: var(--body-mid);
background-color: var(--body-light);
}
.mw-mmv-dialog,
.mw-mmv-dialog .mw-mmv-dialog-down-arrow,
.mw-mmv-options-dialog .mw-mmv-dialog-down-arrow {
background-color: var(--body-light);
box-shadow: none;
}
.mw-mmv-options-enable-alert {
background-color: var(--body-light);
color: var(--text-color);
}
.mw-mmv-options-dialog-header,
.mw-mmv-options-text-header,
.mw-mmv-options-text-body,
.mw-mmv-options-enable-alert,
.mw-mmv-options-dialog .mw-mmv-disable-confirmation .mw-mmv-options-dialog-header,
.mw-mmv-options-dialog .mw-mmv-disable-confirmation .mw-mmv-options-text-header {
color: var(--text-color);
}
.mw-revslider-container {
border-color: var(--sidebar);
}
.mw-revslider-slider-wrapper {
border-top-color: var(--sidebar);
}
.mw-ui-button {
background-color: var(--ooui-normal);
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
}
.mw-ui-button:not(:disabled):hover,
.mw-ui-button:not(:disabled):active {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
}
.mw-ui-button:not(:disabled):focus {
color: var(--ooui-text);
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent), inset 0 0 0 2px #fff;
}
.mw-ui-button:not(:disabled):visited {
color: var(--ooui-text);
}
.mw-ui-button.mw-ui-progressive:not(:disabled) {
background-color: var(--ooui-progressive);
color: #fff;
border-color: var(--ooui-progressive);
}
.mw-ui-button.mw-ui-progressive:not(:disabled):hover {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
}
.mw-ui-button.mw-ui-progressive:not(:disabled):focus {
box-shadow: inset 0 0 0 1px var(--ooui-accent), inset 0 0 0 2px #fff;
}
.mw-ui-button.mw-ui-progressive:not(:disabled):active,
.mw-ui-button.mw-ui-progressive:not(:disabled).is-on {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
box-shadow: none;
}
.mw-ui-button.mw-ui-destructive:not( :disabled ) {
color: #fff;
}
.mw-ui-button.mw-ui-quiet,
.mw-ui-button.mw-ui-quiet.mw-ui-progressive,
.mw-ui-button.mw-ui-quiet.mw-ui-destructive {
color: var(--text-color);
}
input[type='checkbox']:hover + .mw-ui-button.mw-ui-quiet,
input[type='checkbox']:hover + .mw-ui-button.mw-ui-quiet.mw-ui-progressive,
input[type='checkbox']:hover + .mw-ui-button.mw-ui-quiet.mw-ui-destructive,
.mw-ui-button.mw-ui-quiet:hover,
.mw-ui-button.mw-ui-quiet.mw-ui-progressive:hover,
.mw-ui-button.mw-ui-quiet.mw-ui-destructive:hover {
background-color: rgba(0, 24, 73, 0.02745098);
color: var(--text-color);
border-color: transparent;
}
input[type='checkbox']:focus + .mw-ui-button.mw-ui-quiet,
input[type='checkbox']:focus + .mw-ui-button.mw-ui-quiet.mw-ui-progressive,
input[type='checkbox']:focus + .mw-ui-button.mw-ui-quiet.mw-ui-destructive,
.mw-ui-button.mw-ui-quiet:focus,
.mw-ui-button.mw-ui-quiet.mw-ui-progressive:focus,
.mw-ui-button.mw-ui-quiet.mw-ui-destructive:focus {
color: var(--text-color);
}
input[type='checkbox']:active + .mw-ui-button.mw-ui-quiet,
input[type='checkbox']:active + .mw-ui-button.mw-ui-quiet.mw-ui-progressive,
input[type='checkbox']:active + .mw-ui-button.mw-ui-quiet.mw-ui-destructive,
.mw-ui-button.mw-ui-quiet:active,
.mw-ui-button.mw-ui-quiet.mw-ui-progressive:active,
.mw-ui-button.mw-ui-quiet.mw-ui-destructive:active {
background-color: rgba(0, 36, 73, 0.08235294);
color: var(--text-color);
border-color: #72777d;
}
.mw-ui-input {
background-color: var(--ooui-input);
color: var(--text-color);
border-color: var(--ooui-input-border);
}
.mw-ui-input:hover {
border-color: var(--ooui-input-border--hover);
}
.mw-ui-input::placeholder {
color: var(--byline-color);
}
.mw-content-ltr .redirectText li:first-child {
padding: 0;
background: 0;
}
.mw-content-ltr .redirectText li:first-child::before {
content: '';
background: currentcolor;
-webkit-mask: url("filepath://Redirect-arrow.svg") no-repeat 50% 50% / contain;
mask: url("filepath://Redirect-arrow.svg") no-repeat 50% 50% / contain;
display: inline-block;
width: 47px;
height: 20px;
}
:root {
--wikitable-header-bg: var(--body-dark);
--wikitable-border: var(--body-border);
--wikitable-bg: var(--body-light);
--wikitable-bg-lighter: #e9e3d6;
--wikitable-color: var(--text-color);
--table-na-background: rgba(255, 255, 255, 0.3);
--table-na-color: var(--subtle-color);
--table-yes-background: #c3e8a3;
--table-yes-color: #2e5e05;
--table-no-background: #fbc0ba;
--table-no-color: #801c13;
--table-maybe-background: #fcea94;
--table-maybe-color: #786300;
}
.wikitable {
background: var(--wikitable-bg);
color: var(--wikitable-color);
border-color: var(--wikitable-border);
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
}
.wikitable > tr > th,
.wikitable > tr > td,
.wikitable > * > tr > th,
.wikitable > * > tr > td {
border-color: var(--wikitable-border);
}
.wikitable > tr > th.table-noborder,
.wikitable > tr > td.table-noborder,
.wikitable > * > tr > th.table-noborder,
.wikitable > * > tr > td.table-noborder {
border-left-style: hidden;
border-right-style: hidden;
padding-left: 0;
padding-right: 0;
}
.wikitable > tr > th,
.wikitable > * > tr > th {
background-color: var(--wikitable-header-bg);
}
.tabber .wikitable {
box-shadow: none;
}
.mw_metadata td,
.mw_metadata th {
border-color: var(--wikitable-border);
}
.mw_metadata th {
background-color: var(--wikitable-header-bg);
}
.mw_metadata td {
background-color: var(--wikitable-bg);
}
.mw-datatable {
border-color: var(--wikitable-border);
}
.mw-datatable td,
.mw-datatable th {
border-color: var(--wikitable-border);
}
.mw-datatable th {
background-color: var(--wikitable-header-bg);
}
.mw-datatable td {
background-color: var(--wikitable-bg);
}
.mw-datatable tr:hover td {
background-color: var(--wikitable-bg);
}
table.alternating-rows tr:nth-child(odd),
table.alternating-cols td:nth-child(odd) {
background: var(--wikitable-alternating-bg);
}
.table-na {
background: var(--table-na-background);
color: var(--table-na-color);
vertical-align: middle;
text-align: center;
}
.table-yes {
background: var(--table-yes-background);
color: var(--table-yes-color);
}
.table-positive {
background: var(--table-yes-background);
}
.table-no {
background: var(--table-no-background);
color: var(--table-no-color);
}
.table-negative {
background: var(--table-no-background);
}
.table-maybe {
background: var(--table-maybe-background);
color: var(--table-maybe-color);
}
#mw-allmessagestable .am_actual,
#mw-allmessagestable .am_default {
background-color: var(--wikitable-bg);
}
#mw-allmessagestable .am_default:hover,
#mw-allmessagestable .am_actual:hover,
#mw-allmessagestable tbody:hover td {
background-color: var(--wikitable-bg-lighter);
}
table.wikitable td.no-cell-spacing {
padding: 0;
height: 0;
}
table.wikitable td.no-cell-spacing table {
margin: -1px;
width: calc(100% + 2px);
height: calc(100% + 2px);
}
.plainlist ol,
.plainlist ul {
margin: 0;
}
.plainlist li {
margin-bottom: 0;
list-style: none;
}
table.align-right-1 td:nth-of-type(1),
table.align-right-2 td:nth-of-type(2),
table.align-right-3 td:nth-of-type(3),
table.align-right-4 td:nth-of-type(4),
table.align-right-5 td:nth-of-type(5),
table.align-right-6 td:nth-of-type(6),
table.align-right-7 td:nth-of-type(7),
table.align-right-8 td:nth-of-type(8),
table.align-right-9 td:nth-of-type(9),
table.align-right-10 td:nth-of-type(10),
table.align-right-11 td:nth-of-type(11),
table.align-right-12 td:nth-of-type(12),
table.align-right-13 td:nth-of-type(13),
table.align-right-14 td:nth-of-type(14),
table.align-right-15 td:nth-of-type(15),
table.align-right-16 td:nth-of-type(16),
table.align-right-17 td:nth-of-type(17),
table.align-right-18 td:nth-of-type(18),
table.align-right-19 td:nth-of-type(19),
table.align-right-20 td:nth-of-type(20) {
text-align: right;
}
table.align-center-1 td:nth-of-type(1),
table.align-center-2 td:nth-of-type(2),
table.align-center-3 td:nth-of-type(3),
table.align-center-4 td:nth-of-type(4),
table.align-center-5 td:nth-of-type(5),
table.align-center-6 td:nth-of-type(6),
table.align-center-7 td:nth-of-type(7),
table.align-center-8 td:nth-of-type(8),
table.align-center-9 td:nth-of-type(9),
table.align-center-10 td:nth-of-type(10),
table.align-center-11 td:nth-of-type(11),
table.align-center-12 td:nth-of-type(12),
table.align-center-13 td:nth-of-type(13),
table.align-center-14 td:nth-of-type(14),
table.align-center-15 td:nth-of-type(15),
table.align-center-16 td:nth-of-type(16),
table.align-center-17 td:nth-of-type(17),
table.align-center-18 td:nth-of-type(18),
table.align-center-19 td:nth-of-type(19),
table.align-center-20 td:nth-of-type(20) {
text-align: center;
}
table.align-left-1 td:nth-of-type(1),
table.align-left-2 td:nth-of-type(2),
table.align-left-3 td:nth-of-type(3),
table.align-left-4 td:nth-of-type(4),
table.align-left-5 td:nth-of-type(5),
table.align-left-6 td:nth-of-type(6),
table.align-left-7 td:nth-of-type(7),
table.align-left-8 td:nth-of-type(8),
table.align-left-9 td:nth-of-type(9),
table.align-left-10 td:nth-of-type(10),
table.align-left-11 td:nth-of-type(11),
table.align-left-12 td:nth-of-type(12),
table.align-left-13 td:nth-of-type(13),
table.align-left-14 td:nth-of-type(14),
table.align-left-15 td:nth-of-type(15),
table.align-left-16 td:nth-of-type(16),
table.align-left-17 td:nth-of-type(17),
table.align-left-18 td:nth-of-type(18),
table.align-left-19 td:nth-of-type(19),
table.align-left-20 td:nth-of-type(20) {
text-align: left;
}
:root {
--diff-addedline-border-color: #438ab5;
--diff-addedline-background: #bddff2;
--diff-addedline-color: #000;
--diff-deletedline-border-color: #379541;
--diff-deletedline-background: #c1edbf;
--diff-deletedline-color: #000;
--diff-context-border-color: var(--body-mid);
--diff-context-background: var(--body-mid);
}
.diff-context {
border-color: var(--diff-context-border-color);
background: var(--diff-context-background);
color: inherit;
}
.diff-addedline {
border-color: var(--diff-addedline-border-color);
}
.diff-addedline .diffchange {
background: var(--diff-addedline-background);
color: var(--diff-addedline-color);
}
.diff-deletedline {
border-color: var(--diff-deletedline-border-color);
}
.diff-deletedline .diffchange {
background: var(--diff-deletedline-background);
color: var(--diff-deletedline-color);
}
.mw-diff-movedpara-left:after,
.mw-diff-movedpara-right:after {
color: var(--text-color);
}
.mw-notification {
background-color: var(--body-light);
border-color: var(--body-border);
color: var(--text-color);
}
.mw-echo-ui-notificationsInboxWidget-toolbarWrapper {
background: var(--body-main);
}
.mw-body-content .mw-echo-ui-datedSubGroupListWidget-title-secondary {
color: var(--byline-color);
}
.mw-echo-ui-pageNotificationsOptionWidget.oo-ui-optionWidget-selected {
background-color: var(--ooui-normal);
color: var(--ooui-accent);
}
.mw-echo-ui-pageNotificationsOptionWidget-label-count {
background-color: var(--ooui-normal);
color: var(--byline-color);
}
.oo-ui-optionWidget-selected .mw-echo-ui-pageNotificationsOptionWidget-label-count {
color: var(--ooui-accent);
}
.mw-echo-ui-pageNotificationsOptionWidget.oo-ui-optionWidget-highlighted {
background-color: var(--ooui-normal);
color: var(--text-color);
}
.mw-echo-ui-crossWikiUnreadFilterWidget {
border-color: var(--body-border);
}
.mw-echo-ui-crossWikiUnreadFilterWidget-subtitle {
color: var(--byline-color);
}
.mw-echo-ui-notificationBadgeButtonPopupWidget-popup > .oo-ui-popupWidget-popup > .oo-ui-popupWidget-head,
.mw-echo-ui-notificationBadgeButtonPopupWidget-popup > .oo-ui-popupWidget-popup > .oo-ui-popupWidget-footer {
border-color: var(--ooui-interface-border);
}
.mw-echo-ui-notificationBadgeButtonPopupWidget-popup > .oo-ui-popupWidget-popup > .oo-ui-popupWidget-footer .mw-echo-ui-notificationBadgeButtonPopupWidget-footer-buttons .oo-ui-buttonElement:last-child {
border-left-color: var(--ooui-normal-border);
}
.mw-echo-ui-notificationItemWidget {
background-color: var(--ooui-normal);
border-color: var(--ooui-normal-border);
}
.mw-echo-ui-notificationItemWidget:hover,
.mw-echo-ui-notificationItemWidget-unread:hover {
background-color: var(--ooui-normal--hover);
}
.mw-echo-ui-notificationItemWidget:last-child {
border-bottom-color: var(--ooui-normal-border);
}
.mw-echo-ui-notificationItemWidget-unread {
background-color: var(--search-box);
}
.mw-echo-ui-crossWikiNotificationItemWidget-group,
.mw-echo-ui-bundleNotificationItemWidget-group {
background-color: var(--ooui-interface);
}
.mw-echo-ui-toggleReadCircleButtonWidget-circle {
background-color: var(--ooui-progressive);
}
.mw-echo-ui-toggleReadCircleButtonWidget:hover .mw-echo-ui-toggleReadCircleButtonWidget-circle {
background-color: var(--ooui-progressive--hover);
}
.mw-echo-ui-toggleReadCircleButtonWidget-circle-unread {
background-color: var(--ooui-normal);
border-color: var(--ooui-normal-border);
}
.mw-echo-ui-notificationItemWidget-content-message-header,
.mw-echo-ui-notificationItemWidget-content-message-body,
.mw-echo-ui-menuItemWidget > .oo-ui-buttonElement-button > .oo-ui-labelElement-label,
.mw-echo-ui-notificationItemWidget-content-actions-timestamp {
color: var(--ooui-text);
}
.mw-echo-ui-bundleNotificationItemWidget-group {
background-color: var(--body-main);
}
@keyframes unseen-fadeout-to-unread {
from {
background-color: var(--wikitable-bg-lighter);
}
to {
background-color: var(--search-box);
}
}
@keyframes unseen-fadeout-to-read {
from {
background-color: var(--wikitable-bg-lighter);
}
to {
background-color: var(--body-main);
}
}
.mwe-popups {
background: var(--body-light);
}
.mwe-popups .mwe-popups-container {
color: var(--text-color);
background: var(--body-light);
}
.mwe-popups .mwe-popups-container.flipped-x-y:before,
.mwe-popups .mwe-popups-container.flipped-y:before {
border-top: none;
}
.mwe-popups .mwe-popups-container.mwe-popups-no-image-tri:before {
border-bottom: none;
}
.mwe-popups .mwe-popups-container.flipped-x-y:after,
.mwe-popups .mwe-popups-container.flipped-y:after {
border-top-color: var(--body-light);
}
.mwe-popups .mwe-popups-container.mwe-popups-no-image-tri:after {
border-bottom-color: var(--body-light);
}
.mwe-popups .mwe-popups-settings-icon:hover,
.mwe-popups .mwe-popups-settings-icon:active {
background-color: var(--ooui-normal--hover);
}
.mwe-popups .mw-ui-icon-element:not(.disabled):hover {
background: none;
}
.mwe-popups .mwe-popups-extract {
color: var(--text-color);
}
.mwe-popups .mwe-popups-extract[dir='ltr']:after {
background-image: linear-gradient(to right, rgba(49, 62, 89, 0), var(--body-light) 50%);
}
.mwe-popups-overlay {
background-color: var(--ooui-window-background);
}
#mwe-popups-settings {
background: var(--ooui-interface);
border-color: var(--ooui-interface-border);
color: var(--text-color);
}
#mwe-popups-settings header {
border-color: var(--ooui-interface-border);
}
#mwe-popups-settings main#mwe-popups-settings-form p {
color: var(--byline-color);
}
#mwe-popups-settings main#mwe-popups-settings-form form label > span {
color: var(--ooui-text);
}
:root {
--smw-ask-options-even-bg: var(--body-mid);
--smw-ask-options-odd-bg: var(--body-light);
--smw-ask-action-btn-lblue-bg: var(--body-main);
--smw-ask-action-btn-lblue-color: #000;
--smw-ask-action-btn-lblue-border-color: var(--body-light);
--smw-ask-action-btn-dblue-bg: var(--body-light);
--smw-ask-action-btn-dblue-color: #fff;
--smw-ask-action-btn-dblue-border-color: var(--button-border);
}
.smw-ask-condition fieldset,
.smw-ask-printhead fieldset {
border-color: var(--sidebar);
}
.smw-ask-search fieldset,
.smw-ask-format fieldset,
.smw-ask-options fieldset {
border-color: var(--sidebar);
}
.strike > span:before,
.strike > span:after {
background: var(--sidebar);
}
.smw-ask-options-fields tr td {
background-color: var(--smw-ask-options-even-bg);
}
.smw-ask-options-fields tr:nth-child(odd) td {
background-color: var(--smw-ask-options-odd-bg);
}
.smw-ask-action-btn.smw-ask-action-btn-lblue,
.smw-ask-action-btn.smw-ask-action-btn-lblue:hover,
.smw-ask-action-btn.smw-ask-action-btn-lblue:visited {
background-color: var(--smw-ask-action-btn-lblue-bg);
color: var(--smw-ask-action-btn-lblue-color);
border-color: var(--smw-ask-action-btn-lblue-border-color);
}
.smw-ask-action-btn.smw-ask-action-btn-dblue,
.smw-ask-action-btn.smw-ask-action-btn-dblue:hover,
.smw-ask-action-btn.smw-ask-action-btn-dblue:visited {
background-color: var(--smw-ask-action-btn-dblue-bg);
color: var(--smw-ask-action-btn-dblue-color);
border-color: var(--smw-ask-action-btn-dblue-border-color);
}
.smw-ask-query textarea,
.smw-ask-actions textarea {
background-color: var(--ooui-interface);
border-color: var(--ooui-interface-border);
color: var(--ooui-text);
}
.smw-ask-query-format select {
background-color: var(--ooui-interface);
border: 1px solid var(--ooui-interface-border);
color: var(--ooui-text);
}
.smw-ask-toplinks {
background-color: var(--body-mid);
}
.smw-ask-toplinks span.smw-icon-info {
background: none;
padding: 0 !important;
}
.smw-ask-toplinks span.smw-icon-info::before {
content: '';
background: var(--text-color);
-webkit-mask: url("data:image/svg+xml,%3C%3Fxml version='1.0' encoding='UTF-8'%3F%3E%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 20 20'%3E%3Ctitle%3Einfo%3C/title%3E%3Cpath d='M10 0C4.477 0 0 4.477 0 10s4.477 10 10 10 10-4.477 10-10S15.523 0 10 0zM9 5h2v2H9zm0 4h2v6H9z'/%3E%3C/svg%3E") no-repeat 50% 50% / contain;
mask: url("data:image/svg+xml,%3C%3Fxml version='1.0' encoding='UTF-8'%3F%3E%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 20 20'%3E%3Ctitle%3Einfo%3C/title%3E%3Cpath d='M10 0C4.477 0 0 4.477 0 10s4.477 10 10 10 10-4.477 10-10S15.523 0 10 0zM9 5h2v2H9zm0 4h2v6H9z'/%3E%3C/svg%3E") no-repeat 50% 50% / contain;
padding: 0 0 3px 18px;
}
.smw-ask-options-row-odd {
background-color: var(--body-light);
}
.smw-ask-options-row-even {
background-color: var(--body-mid);
}
#options-toggle:not(:checked) + #options-list .options-parameter-list:after {
background-image: linear-gradient(to bottom, transparent, var(--body-mid) 90%);
}
.smw-ask-button-submit input {
background-color: var(--ooui-normal);
border-color: var(--ooui-normal-border);
color: var(--text-color);
}
.smw-ask-button-submit input:hover,
.smw-ask-button-lgrey:hover {
background-color: var(--ooui-normal--hover);
border-color: var(--ooui-normal-border);
}
input.smw-ask-action-btn.smw-ask-action-btn-dblue {
background-color: var(--ooui-normal);
border-color: var(--ooui-normal-border);
color: var(--ooui-text);
}
a.smw-ask-action-btn.smw-ask-action-btn-lblue {
background-color: var(--body-mid);
border-color: var(--body-mid);
color: var(--ooui-text);
}
a.smw-ask-action-btn.smw-ask-action-btn-lblue:visited {
background-color: var(--body-mid);
border-color: var(--body-mid);
color: var(--ooui-text);
}
a.smw-ask-action-btn.smw-ask-action-btn-lblue:hover {
background-color: var(--body-mid);
border-color: var(--body-mid);
color: var(--ooui-text);
}
a.smw-ask-action-btn-lgrey {
background-color: var(--ooui-normal);
border-color: var(--ooui-normal-border);
color: var(--ooui-text);
}
a.smw-ask-action-btn-lgrey:hover {
background-color: var(--ooui-normal--hover);
border-color: var(--ooui-normal-border);
color: var(--ooui-text);
}
.smw-callout-error {
background-color: var(--errorbox-bg);
border-color: var(--errorbox-border);
}
.smw-callout-info {
background-color: var(--body-light);
border-color: var(--body-dark);
}
.smw-callout-success {
background-color: var(--successbox-bg);
border-color: var(--successbox-border);
}
.smw-callout-warning {
background-color: var(--warningbox-bg);
border-color: var(--warningbox-bg);
}
.smw-tabs input.nav-tab:checked + label.nav-label,
.smw-tabs input.nav-tab:checked + label.nav-label:hover {
color: inherit;
}
#tab-smw-property-value:checked + label.nav-label .usage-count {
color: #fff;
background-color: var(--ooui-progressive);
}
#tab-smw-property-value:checked + label.nav-label .usage-count.moderate {
color: #fff;
background-color: #b55e0c;
border-color: #b55e0c;
}
#tab-smw-property-value:checked + label.nav-label .usage-count.high {
color: #fff;
background-color: #9f261e;
border-color: #9f261e;
}
.smw-property-page-results .header-title {
background-color: var(--ooui-interface);
border-bottom-color: var(--ooui-interface-border);
color: var(--ooui-text);
}
.smw-property-page-results .value-row:hover {
background-color: var(--ooui-normal--hover);
}
.smw-property-page-results .smw-table .header-row {
color: var(--text-color);
}
.tippy-tooltip.light-border-theme {
background-color: var(--body-light);
color: var(--text-color);
}
.tippy-tooltip.light-border-theme .tippy-arrow {
border-top-color: var(--body-light);
}
.tippy-tooltip.light-border-theme .tippy-arrow:after {
border-top-color: var(--body-light);
}
.tippy-header {
background-color: var(--body-dark);
border-bottom-color: var(--body-mid);
}
.smw-ui-input-filter {
background-color: var(--ooui-interface);
border-color: var(--ooui-interface-border);
color: var(--ooui-text);
}
.smw-ui-input-filter input {
border-left-color: var(--ooui-interface-border) !important;
color: var(--ooui-text) !important;
}
.smw-ui-pagination .page-link.link-disabled {
background-color: var(--ooui-disabled);
border-color: var(--ooui-disabled-border);
color: var(--subtle-color);
}
.smw-ui-pagination .page-link {
background-color: var(--ooui-normal);
border-color: var(--ooui-normal-border);
color: var(--link-color);
}
.smw-ui-pagination .page-link:hover {
background-color: var(--ooui-normal--hover);
border-color: var(--ooui-normal-border);
color: var(--link-color);
}
.smw-ui-pagination .page-link.link-active {
color: #fff;
background-color: var(--ooui-progressive);
border-color: var(--ooui-progressive);
}
.smw-tabs input.nav-tab:checked + label.nav-label {
border-color: var(--ooui-normal-border);
}
.smw-tabs section,
.smw-tabs .subtab-content {
border-top-color: var(--ooui-normal-border);
}
.smw-column-header {
color: var(--text-color);
}
.smw-factbox {
background: var(--body-main);
border-color: transparent;
}
.mw-body .mw-indicators #mw-indicator-smw-entity-examiner.mw-indicator .smw-indicator-vertical-bar-loader {
display: none;
}
.smwb-theme-light .smwb-title,
.smwb-theme-light .smwb-center,
.smwb-theme-light .smwb-actions,
.smwb-theme-light .smwb-prophead {
background-color: var(--body-mid);
}
.smwb-theme-light .smwb-factbox {
border-left-color: var(--body-mid);
}
.smwb-theme-light .smwb-ifactbox {
border-right-color: var(--body-mid);
}
.smwb-theme-light .smwb-propval {
background-color: var(--body-light);
}
.smwb-action-separator {
border-color: var(--wikitable-border);
}
.smwb-bottom {
border-bottom: 1px solid var(--wikitable-border);
}
.smwb-ifactbox .smwb-cell,
.smwb-factbox .smwb-cell {
border-top: 1px solid var(--wikitable-border);
}
.smwb-propvalue .smwb-prophead,
.smwb-ipropvalue .smwb-prophead,
.smwb-propvalue .smwb-propval,
.smwb-ipropvalue .smwb-propval {
font-size: 0.9em;
}
:root {
--filter-black-to-link: invert(36%) sepia(58%) saturate(433%) hue-rotate(344deg) brightness(100%) contrast(91%);
}
#bodyContent span.smwbrowse a {
color: black;
background-image: url('filepath://Smwbrowse.svg');
filter: var(--filter-black-to-link);
}
#bodyContent span.smwbrowse a:hover {
color: black;
background-image: url('filepath://Smwbrowse-hover.svg');
text-decoration: underline;
}
#bodyContent span.smwsearch a {
color: black;
filter: var(--filter-black-to-link);
background-image: url('filepath://Smwsearch.svg');
}
#bodyContent span.smwsearch a:hover {
color: black;
background-image: url('filepath://Smwsearch-hover.svg');
text-decoration: underline;
}
:root {
--tabber-tab-bg: var(--body-light);
--tabber-tab-border-color: var(--body-border);
--tabber-active-tab-bg: var(--body-light);
--tabber-active-tab-color: var(--text-color);
--tabber-active-tab-hover-bg: var(--body-light);
--tabber-active-tab-hover-border-color: var(--body-border);
--tabber-active-tab-hover-color: var(--text-color);
--tabber-active-tab-border-hider-color: var(--body-light);
--tabber-inactive-tab-bg: var(--body-background-color);
--tabber-inactive-tab-border-color: var(--body-border);
--tabber-inactive-tab-color: var(--text-color);
--tabber-inactive-tab-hover-bg: var(--body-light);
--tabber-inactive-tab-hover-border-color: var(--body-border);
}
.tabber {
margin: 1em 0;
}
.tabber .tabbertab {
background-color: var(--tabber-tab-bg);
border: 1px solid var(--tabber-tab-border-color);
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
padding: 1em 1.5em;
}
ul.tabbernav {
border: none;
margin-left: 2em;
margin-bottom: 0;
margin-right: 2em;
padding: 0;
font-family: inherit;
}
ul.tabbernav li.tabberactive > a {
background-color: var(--tabber-active-tab-bg);
color: var(--tabber-active-tab-color);
border-bottom: none;
position: relative;
}
ul.tabbernav li.tabberactive > a:hover {
color: var(--tabber-active-tab-hover-color);
background-color: var(--tabber-active-tab-hover-bg);
border-color: var(--tabber-active-tab-hover-border-color);
border-bottom: none;
}
ul.tabbernav li.tabberactive > a::after {
content: '';
position: absolute;
left: 0;
right: 0;
bottom: -1px;
border-bottom: 2px solid var(--tabber-active-tab-border-hider-color);
}
ul.tabbernav li a {
background-color: var(--tabber-inactive-tab-bg);
border-bottom: transparent;
border-color: var(--tabber-inactive-tab-border-color);
color: var(--tabber-inactive-tab-color);
display: inline-block;
font-size: 110%;
padding: 0.5em 1em;
}
ul.tabbernav li a:hover {
background-color: var(--tabber-inactive-tab-hover-bg);
border-color: var(--tabber-inactive-tab-hover-border-color);
}
ul.tabbernav li a:link,
ul.tabbernav li a:visited {
color: var(--tabber-inactive-tab-color);
}
:root {
--ooui-text: var(--text-color);
--ooui-interface: var(--body-light);
--ooui-interface-border: var(--body-border);
--ooui-window-background: rgba(255, 255, 255, 0.5);
--ooui-normal: #d5c7ad;
--ooui-normal--hover: #dfd5c1;
--ooui-normal-border: #b8a282;
--ooui-progressive: #605443;
--ooui-progressive--hover: #7e6e58;
--ooui-accent: var(--link-color);
--ooui-input: #fff;
--ooui-input-border: #b8a282;
--ooui-input-border--hover: #8a724f;
--ooui-disabled: #d1cdc5;
--ooui-disabled-border: #c2b9ab;
--ooui-disabled-text: var(--subtle-color);
--ooui-pending-background-image: repeating-linear-gradient(-45deg, var(--search-box), var(--search-box) 20px, var(--body-main) 20px, var(--body-main) 30px);
}
.oo-ui-widget {
color: var(--ooui-text);
}
.oo-ui-checkboxInputWidget [type='checkbox'] + span,
.oo-ui-radioInputWidget [type='radio'] + span {
background-color: var(--ooui-input);
border-color: var(--ooui-input-border);
}
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:checked + span,
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:indeterminate + span {
background-color: var(--ooui-progressive);
border-color: var(--ooui-progressive);
}
.oo-ui-radioInputWidget.oo-ui-widget-enabled [type='radio']:checked + span {
border-color: var(--ooui-progressive);
}
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:checked:hover + span,
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:indeterminate:hover + span {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
}
.oo-ui-radioInputWidget.oo-ui-widget-enabled [type='radio']:checked:hover + span {
border-color: var(--ooui-progressive--hover);
}
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:hover + span,
.oo-ui-radioInputWidget.oo-ui-widget-enabled [type='radio']:hover + span {
border-color: var(--ooui-accent);
}
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:focus + span {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:active + span,
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:checked:active + span,
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:indeterminate:active + span {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
box-shadow: inset 0 0 0 1px var(--ooui-progressive--hover);
}
.oo-ui-radioInputWidget.oo-ui-widget-enabled [type='radio']:active + span {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
}
.oo-ui-radioInputWidget.oo-ui-widget-enabled [type='radio']:checked:active + span {
border-color: var(--ooui-progressive--hover);
box-shadow: inset 0 0 0 1px var(--ooui-progressive--hover);
}
.oo-ui-radioInputWidget.oo-ui-widget-enabled [type='radio']:checked:active + span:before {
border-color: var(--ooui-progressive--hover);
}
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:checked:focus + span,
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:indeterminate:focus + span {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent), inset 0 0 0 2px #fff;
}
.oo-ui-checkboxInputWidget [type='checkbox']:disabled + span,
.oo-ui-radioInputWidget [type='radio']:disabled + span {
background-color: var(--ooui-disabled);
border-color: var(--ooui-disabled);
}
.oo-ui-dropdownWidget-handle {
border-color: var(--ooui-normal-border);
}
.oo-ui-dropdownWidget.oo-ui-widget-enabled .oo-ui-dropdownWidget-handle {
background-color: var(--ooui-normal);
color: var(--ooui-text);
}
.oo-ui-dropdownWidget.oo-ui-widget-enabled .oo-ui-dropdownWidget-handle:hover {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
}
.oo-ui-dropdownWidget.oo-ui-widget-enabled .oo-ui-dropdownWidget-handle:active {
color: var(--ooui-text);
}
.oo-ui-dropdownWidget.oo-ui-widget-enabled .oo-ui-dropdownWidget-handle:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-dropdownWidget.oo-ui-widget-enabled.oo-ui-dropdownWidget-open .oo-ui-dropdownWidget-handle {
background-color: var(--ooui-normal--hover);
}
.oo-ui-dropdownWidget.oo-ui-widget-disabled .oo-ui-dropdownWidget-handle {
color: var(--ooui-disabled-text);
text-shadow: none;
border-color: var(--ooui-disabled-border);
background-color: var(--ooui-disabled);
}
.oo-ui-dropdownInputWidget select {
border-color: var(--ooui-normal-border);
}
.oo-ui-dropdownInputWidget option {
background-color: var(--ooui-interface);
}
.oo-ui-dropdownInputWidget.oo-ui-widget-enabled {
background-color: var(--ooui-normal);
}
.oo-ui-dropdownInputWidget.oo-ui-widget-enabled:hover {
background-color: var(--ooui-normal--hover);
}
.oo-ui-dropdownInputWidget.oo-ui-widget-enabled select {
color: var(--ooui-text);
}
.oo-ui-dropdownInputWidget.oo-ui-widget-enabled select:hover,
.oo-ui-dropdownInputWidget.oo-ui-widget-enabled select:active {
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
}
.oo-ui-dropdownInputWidget.oo-ui-widget-enabled select:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-labelWidget.oo-ui-inline-help {
color: var(--byline-color);
}
.oo-ui-menuSelectWidget {
background-color: var(--ooui-interface);
border-color: var(--ooui-interface-border);
}
.oo-ui-menuSelectWidget-frameless {
box-shadow: inset 0 -1px 0 0 var(--ooui-normal-border);
}
.oo-ui-menuSectionOptionWidget {
color: var(--byline-color);
}
.oo-ui-menuOptionWidget.oo-ui-optionWidget-highlighted,
.oo-ui-menuOptionWidget.oo-ui-optionWidget-selected {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
}
.oo-ui-menuOptionWidget.oo-ui-optionWidget-selected.oo-ui-menuOptionWidget.oo-ui-optionWidget-highlighted,
.oo-ui-menuOptionWidget.oo-ui-optionWidget-pressed.oo-ui-menuOptionWidget.oo-ui-optionWidget-highlighted {
color: var(--ooui-accent);
}
.oo-ui-menuOptionWidget.oo-ui-widget-enabled.oo-ui-optionWidget {
color: var(--ooui-text);
}
.oo-ui-messageDialog-title {
color: inherit;
}
.oo-ui-messageWidget.oo-ui-messageWidget-block.oo-ui-flaggedElement-error {
background-color: var(--errorbox-bg);
border-color: var(--errorbox-border);
}
.oo-ui-messageWidget.oo-ui-messageWidget-block.oo-ui-flaggedElement-warning {
background-color: var(--warningbox-bg);
border-color: var(--warningbox-border);
}
.oo-ui-messageWidget.oo-ui-messageWidget-block.oo-ui-flaggedElement-success {
background-color: var(--successbox-bg);
border-color: var(--successbox-border);
}
.oo-ui-messageWidget.oo-ui-messageWidget-block.oo-ui-flaggedElement-notice {
background-color: var(--messagebox-info-background);
border-color: var(--messagebox-info-border);
}
.oo-ui-messageWidget.oo-ui-flaggedElement-error:not(.oo-ui-messageWidget-block),
.oo-ui-messageWidget.oo-ui-flaggedElement-success:not(.oo-ui-messageWidget-block) {
color: var(--ooui-text);
}
.oo-ui-optionWidget.oo-ui-widget-disabled {
color: var(--ooui-disabled-text);
}
.oo-ui-outlineControlsWidget {
background-color: var(--ooui-normal);
}
.oo-ui-outlineOptionWidget.oo-ui-optionWidget-highlighted {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
}
.oo-ui-popupWidget-popup {
background-color: var(--ooui-interface);
border-color: var(--ooui-interface-border);
}
.oo-ui-popupWidget-anchored-top .oo-ui-popupWidget-anchor:after {
border-bottom-color: var(--ooui-interface);
}
.oo-ui-popupWidget-anchored-top .oo-ui-popupWidget-anchor:before {
border-bottom-color: var(--ooui-interface-border);
}
.oo-ui-popupWidget-anchored-bottom .oo-ui-popupWidget-anchor:after {
border-top-color: var(--ooui-interface);
}
.oo-ui-popupWidget-anchored-bottom .oo-ui-popupWidget-anchor:before {
border-top-color: var(--ooui-interface-border);
}
.oo-ui-popupWidget-anchored-start .oo-ui-popupWidget-anchor:after {
border-right-color: var(--ooui-interface);
}
.oo-ui-popupWidget-anchored-start .oo-ui-popupWidget-anchor:before {
border-right-color: var(--ooui-interface-border);
}
.oo-ui-popupWidget-anchored-end .oo-ui-popupWidget-anchor:after {
border-left-color: var(--ooui-interface);
}
.oo-ui-popupWidget-anchored-end .oo-ui-popupWidget-anchor:before {
border-left-color: var(--ooui-interface-border);
}
.oo-ui-searchWidget-query {
border-bottom-color: var(--ooui-interface-border);
}
.oo-ui-selectFileWidget-dropTarget {
background-color: var(--ooui-interface);
border-color: var(--ooui-interface-border);
}
.oo-ui-selectFileWidget.oo-ui-widget-enabled.oo-ui-selectFileWidget-dropTarget {
background-color: var(--ooui-interface);
}
.oo-ui-selectFileWidget.oo-ui-widget-enabled.oo-ui-selectFileWidget-dropTarget:hover {
border-color: var(--ooui-input-border--hover);
}
.oo-ui-tabOptionWidget {
color: var(--ooui-text);
}
.oo-ui-tabSelectWidget-framed .oo-ui-tabOptionWidget.oo-ui-optionWidget-selected {
background-color: var(--body-dark);
color: var(--ooui-text);
}
.oo-ui-tabSelectWidget-framed .oo-ui-tabOptionWidget.oo-ui-optionWidget-selected .oo-ui-labelElement-label {
border-bottom-color: var(--body-border);
}
.oo-ui-tabSelectWidget-framed .oo-ui-tabOptionWidget.oo-ui-widget-enabled:hover,
.oo-ui-tabSelectWidget-framed .oo-ui-tabOptionWidget.oo-ui-widget-enabled:active {
background-color: var(--body-light);
color: var(--ooui-text);
}
.oo-ui-tabSelectWidget-framed .oo-ui-tabOptionWidget.oo-ui-widget-enabled.oo-ui-optionWidget-selected:hover {
background-color: var(--body-dark);
}
.oo-ui-tabSelectWidget-frameless .oo-ui-tabOptionWidget.oo-ui-optionWidget-selected {
color: var(--ooui-progressive);
box-shadow: inset 0 -2px 0 0 var(--ooui-progressive);
}
.oo-ui-tabSelectWidget-frameless .oo-ui-tabOptionWidget.oo-ui-optionWidget-selected:hover,
.oo-ui-tabSelectWidget-frameless .oo-ui-tabOptionWidget.oo-ui-optionWidget-selected:focus {
color: var(--ooui-progressive--hover);
box-shadow: inset 0 -2px 0 0 var(--ooui-progressive--hover);
}
.oo-ui-tabSelectWidget-framed {
background: none;
border-bottom: 1px solid var(--ooui-interface-border);
}
.oo-ui-tabSelectWidget-frameless {
box-shadow: inset 0 -1px 0 0 var(--ooui-interface-border);
}
.oo-ui-tabSelectWidget-mobile {
}
.oo-ui-tabSelectWidget-mobile.oo-ui-tabSelectWidget-framed:after {
background: var(--mobile-navbox-linear-gradient);
}
.oo-ui-tabSelectWidget-mobile.oo-ui-tabSelectWidget-frameless:after {
background: var(--mobile-navbox-linear-gradient);
}
.oo-ui-tagItemWidget {
border-color: var(--ooui-normal-border);
}
.oo-ui-tagItemWidget.oo-ui-widget-enabled {
color: var(--ooui-text);
}
.oo-ui-tagItemWidget.oo-ui-widget-enabled:hover {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
}
.oo-ui-tagItemWidget.oo-ui-widget-enabled:not( .oo-ui-tagItemWidget-fixed ) {
background-color: var(--ooui-normal);
}
.oo-ui-tagItemWidget.oo-ui-widget-enabled .oo-ui-buttonElement-button:hover {
background-color: var(--ooui-normal--hover);
}
.oo-ui-tagMultiselectWidget.oo-ui-widget-enabled {
background-color: var(--ooui-interface);
}
.oo-ui-tagMultiselectWidget.oo-ui-widget-enabled.oo-ui-tagMultiselectWidget-outlined {
background-color: var(--ooui-normal);
}
.oo-ui-tagMultiselectWidget.oo-ui-widget-enabled.oo-ui-tagMultiselectWidget-outlined .oo-ui-tagItemWidget.oo-ui-widget-enabled {
background-color: var(--ooui-interface);
}
.oo-ui-textInputWidget .oo-ui-inputWidget-input {
background-color: var(--ooui-input);
color: var(--ooui-text);
border-color: var(--ooui-input-border);
}
.oo-ui-textInputWidget.oo-ui-widget-enabled .oo-ui-inputWidget-input::placeholder {
color: var(--subtle-color);
}
.oo-ui-textInputWidget.oo-ui-widget-enabled .oo-ui-inputWidget-input:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-textInputWidget.oo-ui-widget-enabled .oo-ui-inputWidget-input[readonly]:not(.oo-ui-pendingElement-pending) {
background-color: var(--ooui-disabled);
color: var(--ooui-disabled-text);
}
.oo-ui-textInputWidget.oo-ui-widget-enabled:hover .oo-ui-inputWidget-input {
border-color: var(--ooui-input-border--hover);
}
.oo-ui-textInputWidget.oo-ui-widget-enabled:hover .oo-ui-inputWidget-input:focus {
border-color: var(--ooui-accent);
}
@media screen and (min-width: 0) {
.oo-ui-textInputWidget.oo-ui-widget-enabled textarea.oo-ui-inputWidget-input:focus {
outline: 1px solid var(--ooui-accent);
}
}
.oo-ui-textInputWidget.oo-ui-widget-disabled .oo-ui-inputWidget-input {
background-color: var(--ooui-disabled);
color: var(--ooui-disabled-text);
text-shadow: none;
border-color: var(--ooui-disabled-border);
}
.oo-ui-toggleSwitchWidget {
background-color: var(--ooui-input);
border-color: var(--ooui-input-border);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled .oo-ui-toggleSwitchWidget-grip {
background-color: var(--ooui-input);
border-color: var(--ooui-input-border);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:hover {
background-color: var(--ooui-input);
border-color: var(--ooui-accent);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:hover .oo-ui-toggleSwitchWidget-grip {
background-color: var(--ooui-input);
border-color: var(--ooui-accent);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:active,
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:active:hover,
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:active:focus {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
box-shadow: inset 0 0 0 1px var(--ooui-progressive--hover);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:active .oo-ui-toggleSwitchWidget-grip,
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:active:hover .oo-ui-toggleSwitchWidget-grip,
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:active:focus .oo-ui-toggleSwitchWidget-grip {
background-color: var(--ooui-input);
border-color: var(--ooui-input);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:focus .oo-ui-toggleSwitchWidget-grip {
border-color: var(--ooui-accent);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled.oo-ui-toggleWidget-on {
background-color: var(--ooui-progressive);
border-color: var(--ooui-progressive);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled.oo-ui-toggleWidget-on .oo-ui-toggleSwitchWidget-grip {
background-color: var(--ooui-input);
border-color: var(--ooui-input);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled.oo-ui-toggleWidget-on:hover {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled.oo-ui-toggleWidget-on:active,
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled.oo-ui-toggleWidget-on:active:hover {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled.oo-ui-toggleWidget-on:focus {
border-color: var(--ooui-progressive);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled.oo-ui-toggleWidget-on:focus::before {
border-color: #fff;
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-disabled {
background-color: var(--ooui-disabled);
border-color: var(--ooui-disabled);
}
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled > .oo-ui-buttonElement-button {
color: var(--ooui-text);
}
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled > .oo-ui-buttonElement-button:hover {
color: var(--ooui-text);
}
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled > .oo-ui-buttonElement-button:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled.oo-ui-buttonElement-pressed > input.oo-ui-buttonElement-button,
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled > .oo-ui-buttonElement-button:active {
color: var(--ooui-text);
}
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button,
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button:hover {
color: var(--ooui-text);
}
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button:active,
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive.oo-ui-buttonElement-pressed > .oo-ui-buttonElement-button {
color: var(--ooui-text);
border-color: var(--ooui-text);
}
.oo-ui-buttonElement-frameless.oo-ui-widget-disabled > .oo-ui-buttonElement-button {
color: var(--ooui-disabled-text);
}
.oo-ui-buttonElement-framed.oo-ui-widget-disabled > .oo-ui-buttonElement-button {
background-color: var(--ooui-disabled);
border-color: var(--ooui-disabled-border);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled > .oo-ui-buttonElement-button {
background-color: var(--ooui-normal);
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled > .oo-ui-buttonElement-button:hover {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled > .oo-ui-buttonElement-button:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-buttonElement-active > .oo-ui-buttonElement-button {
background-color: var(--ooui-progressive--hover);
color: #fff;
border-color: var(--ooui-progressive--hover);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-buttonElement-active > .oo-ui-buttonElement-button:focus {
border-color: var(--ooui-progressive--hover);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled > .oo-ui-buttonElement-button:active,
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-buttonElement-pressed > .oo-ui-buttonElement-button {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive {
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button {
color: var(--ooui-text);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button:hover {
background-color: var(--ooui-normal--hover);
border-color: var(--ooui-progressive--hover);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-destructive > .oo-ui-buttonElement-button {
color: var(--ooui-text);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-destructive > .oo-ui-buttonElement-button:hover {
background-color: var(--ooui-normal--hover);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button {
background-color: var(--ooui-progressive);
border-color: var(--ooui-progressive);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button:hover {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent), inset 0 0 0 2px #fff;
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button:active,
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive.oo-ui-buttonElement-pressed > .oo-ui-buttonElement-button,
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive.oo-ui-buttonElement-active > .oo-ui-buttonElement-button,
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive.oo-ui-popupToolGroup-active > .oo-ui-buttonElement-button {
color: #fff;
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
}
.oo-ui-pendingElement-pending {
background-image: var(--ooui-pending-background-image);
background-size: 200%;
animation: oo-ui-pendingElement-stripes 6s linear infinite;
}
@keyframes oo-ui-pendingElement-stripes {
100% {
background-position: 100%;
}
}
.oo-ui-messageDialog-content > .oo-ui-window-foot {
outline-color: var(--ooui-interface-border);
}
.oo-ui-messageDialog-message {
color: var(--ooui-text);
}
.oo-ui-messageDialog-actions-horizontal .oo-ui-actionWidget {
border-right-color: var(--ooui-interface-border);
}
.oo-ui-messageDialog-actions-vertical .oo-ui-actionWidget {
border-bottom-color: var(--ooui-interface-border);
}
.oo-ui-processDialog-content .oo-ui-window-head,
.oo-ui-processDialog-content .oo-ui-window-foot {
outline-color: var(--ooui-interface-border);
}
.oo-ui-processDialog .oo-ui-actionWidget > .oo-ui-buttonElement-button {
border-top-color: transparent;
border-bottom-color: transparent;
}
.oo-ui-processDialog .oo-ui-actionWidget > .oo-ui-buttonElement-button:hover,
.oo-ui-processDialog .oo-ui-actionWidget > .oo-ui-buttonElement-button:active {
border-top-color: transparent;
border-bottom-color: transparent;
}
.oo-ui-processDialog .oo-ui-actionWidget:not( .oo-ui-flaggedElement-progressive ):not( .oo-ui-flaggedElement-destructive ) > .oo-ui-buttonElement-button:hover,
.oo-ui-processDialog .oo-ui-actionWidget:not( .oo-ui-flaggedElement-progressive ):not( .oo-ui-flaggedElement-destructive ) > .oo-ui-buttonElement-button:active {
border-right-color: var(--ooui-interface-border);
border-left-color: transparent;
}
.oo-ui-processDialog .oo-ui-actionWidget:not( .oo-ui-flaggedElement-progressive ):not( .oo-ui-flaggedElement-destructive ) > .oo-ui-buttonElement-button:focus {
border-color: var(--ooui-accent);
}
.oo-ui-processDialog-actions-safe .oo-ui-actionWidget > .oo-ui-buttonElement-button,
.oo-ui-processDialog-actions-other .oo-ui-actionWidget > .oo-ui-buttonElement-button {
border-right-color: var(--ooui-normal-border);
border-left-color: transparent;
}
.oo-ui-processDialog-actions-safe .oo-ui-widget-enabled.oo-ui-iconElement:not( .oo-ui-labelElement ) > .oo-ui-buttonElement-button:hover {
background-color: var(--ooui-normal--hover);
border-right-color: var(--ooui-interface-border);
}
.oo-ui-windowManager-modal > .oo-ui-dialog {
background-color: var(--ooui-window-background);
}
.oo-ui-windowManager-modal > .oo-ui-dialog > .oo-ui-window-frame {
background-color: var(--ooui-interface);
}
.oo-ui-windowManager-modal.oo-ui-windowManager-floating > .oo-ui-dialog > .oo-ui-window-frame {
border-color: var(--ooui-interface-border);
}
.oo-ui-window {
color: var(--ooui-text);
}
.oo-ui-toolbar-bar {
background-color: var(--ooui-interface);
color: var(--ooui-text);
}
.oo-ui-toolbar-position-top > .oo-ui-toolbar-bar {
border-bottom-color: var(--body-mid);
}
.oo-ui-toolbar-bar .oo-ui-bookletLayout > .oo-ui-menuLayout-menu {
border-right-color: var(--body-mid);
}
.oo-ui-tool.oo-ui-widget-enabled > .oo-ui-tool-link:hover {
background-color: var(--ooui-normal--hover);
}
.oo-ui-tool.oo-ui-widget-enabled > .oo-ui-tool-link:focus {
outline: 1px solid var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-tool.oo-ui-widget-enabled > .oo-ui-tool-link:active,
.oo-ui-tool.oo-ui-widget-enabled.oo-ui-tool-active > .oo-ui-tool-link,
.oo-ui-tool.oo-ui-widget-enabled.oo-ui-popupToolGroup-active > .oo-ui-tool-link {
background-color: var(--ooui-normal--hover);
color: var(--ooui-accent);
box-shadow: none;
}
.oo-ui-tool.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive > .oo-ui-tool-link {
background-color: var(--ooui-progressive);
}
.oo-ui-tool.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive > .oo-ui-tool-link:hover {
background-color: var(--ooui-progressive--hover);
}
.oo-ui-tool.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive > .oo-ui-tool-link:focus {
box-shadow: inset 0 0 0 1px var(--ooui-accent), inset 0 0 0 2px #fff;
}
.oo-ui-tool.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive > .oo-ui-tool-link:active,
.oo-ui-tool.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive.oo-ui-tool-active > .oo-ui-tool-link {
background-color: var(--ooui-progressive--hover);
}
.oo-ui-listToolGroup-tools .oo-ui-tool.oo-ui-widget-enabled {
background-color: var(--ooui-normal);
}
.oo-ui-listToolGroup-tools .oo-ui-tool.oo-ui-widget-enabled:hover {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
}
.oo-ui-listToolGroup-tools .oo-ui-tool-active.oo-ui-widget-enabled .oo-ui-tool-link .oo-ui-tool-title {
color: var(--ooui-progressive);
}
.oo-ui-menuToolGroup {
border-left-color: var(--body-mid);
border-right-color: var(--body-mid);
}
.oo-ui-popupToolGroup-tools {
background-color: var(--ooui-interface);
border-color: var(--body-mid);
}
.oo-ui-popupToolGroup.oo-ui-widget-enabled > .oo-ui-popupToolGroup-handle:hover {
background-color: var(--ooui-normal--hover);
}
.oo-ui-popupToolGroup.oo-ui-widget-enabled > .oo-ui-popupToolGroup-handle:focus {
outline: 1px solid var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-toolbar-actions .oo-ui-popupToolGroup.oo-ui-widget-enabled > .oo-ui-popupToolGroup-handle:hover {
border-right-color: var(--ooui-normal--hover);
}
.oo-ui-popupToolGroup-tools .oo-ui-tool.oo-ui-widget-enabled .oo-ui-tool-link:focus {
box-shadow: inset 0 0 0 2px var(--ooui-accent);
}
.oo-ui-popupToolGroup-tools .oo-ui-tool-active.oo-ui-widget-enabled .oo-ui-tool-link .oo-ui-tool-title {
color: var(--ooui-progressive);
}
.oo-ui-popupToolGroup.oo-ui-popupToolGroup-active > .oo-ui-popupToolGroup-handle {
background-color: var(--ooui-normal);
color: var(--ooui-accent);
}
.oo-ui-popupToolGroup.oo-ui-popupToolGroup-active > .oo-ui-popupToolGroup-handle:hover {
background-color: var(--ooui-normal--hover);
color: var(--ooui-accent);
}
.oo-ui-bookletLayout-outlinePanel > .oo-ui-outlineControlsWidget {
border-top-color: var(--ooui-interface-border);
}
.oo-ui-bookletLayout > .oo-ui-menuLayout-menu {
border-right-color: var(--ooui-interface-border);
}
.oo-ui-fieldLayout-disabled > .oo-ui-fieldLayout-body > .oo-ui-fieldLayout-header > .oo-ui-labelElement-label {
color: var(--ooui-disabled-text);
}
.oo-ui-panelLayout-framed {
border-color: var(--sidebar);
}
.oo-ui-icon-settings {
background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' width='20' height='20' viewBox='0 0 20 20'%3E%3Ctitle%3Esettings%3C/title%3E%3Cg transform='translate(10 10)'%3E%3Cpath id='a' d='M1.5-10h-3l-1 6.5h5m0 7h-5l1 6.5h3'/%3E%3Cuse xlink:href='%23a' transform='rotate(45)'/%3E%3Cuse xlink:href='%23a' transform='rotate(90)'/%3E%3Cuse xlink:href='%23a' transform='rotate(135)'/%3E%3C/g%3E%3Cpath d='M10 2.5a7.5 7.5 0 0 0 0 15 7.5 7.5 0 0 0 0-15v4a3.5 3.5 0 0 1 0 7 3.5 3.5 0 0 1 0-7'/%3E%3C/svg%3E");
}
.oo-ui-icon-clear {
background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 20 20'%3E%3Ctitle%3Eclear%3C/title%3E%3Cpath d='M10 0a10 10 0 1 0 10 10A10 10 0 0 0 10 0zm5.66 14.24-1.41 1.41L10 11.41l-4.24 4.25-1.42-1.42L8.59 10 4.34 5.76l1.42-1.42L10 8.59l4.24-4.24 1.41 1.41L11.41 10z'/%3E%3C/svg%3E");
}
.mw-widget-dateInputWidget-handle {
background-color: var(--ooui-input);
color: var(--ooui-text);
border-color: var(--ooui-input-border);
}
.mw-widget-dateInputWidget-calendar {
background-color: var(--ooui-interface);
}
.mw-widget-dateInputWidget.oo-ui-widget-enabled .mw-widget-dateInputWidget-handle:hover {
border-color: var(--ooui-input-border--hover);
}
.mw-widget-calendarWidget {
border-color: var(--ooui-interface-border);
}
.mw-widget-calendarWidget:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.mw-widget-calendarWidget-day,
.mw-widget-calendarWidget-day-heading {
color: var(--ooui-text);
}
.mw-widget-calendarWidget-day-additional {
color: var(--ooui-text);
opacity: 0.67;
}
.mw-widget-calendarWidget-day-today {
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.mw-widget-calendarWidget-item:hover {
background-color: var(--ooui-progressive);
}
.mw-widget-calendarWidget-item-selected {
background-color: var(--ooui-progressive--hover);
}
.mw-widgets-datetime-calendarWidget {
background-color: var(--ooui-interface);
border-color: var(--ooui-interface-border);
}
.mw-widgets-datetime-calendarWidget:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent), 0 2px 2px 0 rgba(0, 0, 0, 0.25);
}
.mw-widgets-datetime-calendarWidget-grid .mw-widgets-datetime-calendarWidget-cell.mw-widgets-datetime-calendarWidget-extra .oo-ui-buttonElement-button .oo-ui-labelElement-label {
color: var(--subtle-color);
}
.mw-widgets-datetime-calendarWidget-grid .mw-widgets-datetime-calendarWidget-cell.mw-widgets-datetime-calendarWidget-selected .oo-ui-buttonElement-button {
background-color: var(--ooui-progressive--hover);
}
.mw-widgets-datetime-dateTimeInputWidget-handle {
background-color: var(--ooui-input);
color: var(--ooui-text);
border-color: var(--ooui-input-border);
}
.mw-widgets-datetime-dateTimeInputWidget.oo-ui-widget-enabled.mw-widgets-datetime-dateTimeInputWidget-handle:hover {
border-color: var(--ooui-input-border--hover);
}
.mw-widgets-datetime-dateTimeInputWidget.oo-ui-widget-enabled:hover input,
.mw-widgets-datetime-dateTimeInputWidget.oo-ui-widget-enabled:hover textarea {
border-color: var(--ooui-input-border--hover);
}
.mw-widgets-datetime-dateTimeInputWidget.oo-ui-widget-enabled .mw-widgets-datetime-dateTimeInputWidget-editField:hover {
background-color: var(--ooui-normal);
}
.ve-activated .ve-init-mw-desktopArticleTarget-originalContent #catlinks:hover {
background: var(--ooui-normal--hover);
}
.ve-ui-overlay {
font-family: inherit;
}
.oo-ui-toolbar-position-top .ve-ui-toolbarDialog-position-above {
border-top-color: var(--body-mid);
}
.ve-ce-branchNode-blockSlug,
.ve-ce-branchNode-newSlug {
outline-color: var(--body-border);
background-color: var(--ooui-interface);
}
.ve-ui-specialCharacterPage h3 {
color: var(--byline-color);
}
.ve-ui-specialCharacterPage-character {
border-color: var(--body-mid);
}
.ve-ui-specialCharacterPage-character:hover {
border-color: var(--body-dark);
}
.ve-ce-linkAnnotation.ve-ce-annotation-active {
box-shadow: 0 0 0 1px var(--body-mid);
background: none;
}
.ve-ui-desktopContext .ve-ui-linkContextItem .ve-ui-linkContextItem-label {
border-color: var(--body-border);
}
.ve-ui-mwHelpPopupTool-version-label,
.ve-ui-mwHelpPopupTool-version-link,
.ve-ui-mwHelpPopupTool-version-date {
color: var(--byline-color);
}
.ve-ce-tableCellableNode {
border-color: var(--body-mid);
}
.ve-ce-mwReferencesListNode-muted {
color: var(--byline-color);
}
.ve-ui-mwTemplatePage-description,
.ve-ui-mwParameterPage-label,
.ve-ui-mwParameterPage-description-required,
.ve-ui-mwParameterPage-description-deprecated {
color: var(--byline-color);
}
.mw-widget-titleWidget-menu .mw-widget-titleOptionWidget-description {
color: var(--byline-color);
}
.ve-ui-mwGalleryDialog-menuLayout > .oo-ui-menuLayout-menu,
.ve-ui-mwGalleryDialog-innerMenuLayout > .oo-ui-menuLayout-menu,
.ve-ui-mwGalleryDialog .ve-ui-mwGalleryDialog-image-container,
.ve-ui-targetWidget {
border-color: var(--body-border);
}
.ve-ui-targetWidget:not(.oo-ui-pendingElement-pending) {
background-color: var(--body-main);
}
.ve-ui-mwSaveDialog {
color: var(--ooui-text);
}
.ve-ui-mwSaveDialog-options {
background-color: var(--ooui-interface);
border-color: var(--body-border);
}
.ve-ui-mwSaveDialog-summary {
background-color: var(--ooui-input);
}
.ve-ui-mwSaveDialog-editSummary-count {
border-color: var(--body-border);
}
.ve-ui-mwSaveDialog-license {
color: var(--byline-color);
}
.ve-ui-mwReferenceContextItem-muted {
color: var(--byline-color);
}
.ve-ui-mwNoticesPopupTool-items > div:not(:first-child),
.ve-ui-mwHelpPopupTool-item:not(:first-child) {
border-color: var(--body-border);
}
.ve-ui-mwTransclusionOutlineControlsWidget {
background-color: var(--ooui-interface);
border-top-color: var(--body-border);
}
.ve-ui-mwTransclusionOutlineTemplateWidget-sticky {
background-color: var(--ooui-interface);
}
.ve-ui-mwTransclusionOutlineTemplateWidget .ve-ui-mwTransclusionOutlineParameterWidget.oo-ui-optionWidget-highlighted {
color: var(--ooui-text);
}
.ve-ui-mwTransclusionOutlineTemplateWidget-no-template-parameters {
color: var(--subtle-color);
}
.ve-ui-mwParameterPage-undocumentedLabel {
color: var(--subtle-color);
}
.ve-ui-mwTwoPaneTransclusionDialogLayout > .oo-ui-menuLayout-menu {
border-right: var(--body-border);
}
.ve-ui-mwParameterPage-doc-required,
.ve-ui-mwParameterPage-doc-deprecated,
.ve-ui-mwParameterPage-inlineDescription .ve-ui-mwParameterPage-doc-example {
color: var(--byline-color);
}
.ve-ui-expandableContent-toggle {
background-color: var(--ooui-interface);
}
.ve-ui-expandableContent-fade {
background: linear-gradient(to right, rgba(255, 255, 255, 0) 0, var(--ooui-interface) 90%);
}
.ve-ui-commandHelpDialog-shortcut > kbd,
.ve-ui-commandHelpDialog-sequence > kbd {
background-color: var(--keypress-background);
color: var(--keypress-color);
border-color: var(--keypress-border);
box-shadow: none;
text-shadow: none;
}
.ve-init-mw-desktopArticleTarget-toolbarPlaceholder-floating .ve-init-mw-desktopArticleTarget-toolbarPlaceholder-bar {
background: var(--ooui-interface);
}
.ve-init-mw-desktopArticleTarget-toolbarPlaceholder-bar {
border-bottom-color: var(--body-mid);
}
figure[typeof~='mw:File/Thumb'],
figure[typeof~='mw:File/Frame'],
figure[typeof~='mw:Image/Thumb'],
figure[typeof~='mw:Video/Thumb'],
figure[typeof~='mw:Image/Frame'],
figure[typeof~='mw:Video/Frame'] {
border: none;
background-color: var(--thumb-bg);
}
figure[typeof~='mw:File/Thumb'] > a:first-child > *:first-child:not( .mw-broken-media ),
figure[typeof~='mw:File/Frame'] > a:first-child > *:first-child:not( .mw-broken-media ),
figure[typeof~='mw:Image/Thumb'] > a:first-child > *:first-child:not( .mw-broken-media ),
figure[typeof~='mw:Video/Thumb'] > a:first-child > *:first-child:not( .mw-broken-media ),
figure[typeof~='mw:Image/Frame'] > a:first-child > *:first-child:not( .mw-broken-media ),
figure[typeof~='mw:Video/Frame'] > a:first-child > *:first-child:not( .mw-broken-media ) {
border: none;
background: var(--thumb-bg);
}
figure[typeof~='mw:File/Thumb'] > figcaption,
figure[typeof~='mw:File/Frame'] > figcaption,
figure[typeof~='mw:Image/Thumb'] > figcaption,
figure[typeof~='mw:Video/Thumb'] > figcaption,
figure[typeof~='mw:Image/Frame'] > figcaption,
figure[typeof~='mw:Video/Frame'] > figcaption {
border: none;
background-color: var(--thumb-caption-bg);
padding: 4px 6px;
}
:root {
--infobox-text-color: var(--text-color);
}
ol.references,
.reflist {
font-size: 90%;
}
.reflist {
list-style-type: decimal;
}
.reflist .references {
font-size: 100%;
list-style-type: inherit;
}
.reflist-lower-alpha {
list-style-type: lower-alpha;
}
ol.references li:target,
sup.reference:target {
background-color: var(--body-light);
}
.hideQuotes .refhide {
display: none;
}
:root {
--byline-arrow-filter: invert(29%) sepia(0%) saturate(376%) hue-rotate(172deg) brightness(87%) contrast(80%);
--tile-border-color: #cabe9b;
--tile-background-color: #f9f3eb;
--tile-link-button-color: #f5e9db;
--tile-link-button-highlight-color: #dfccb0;
--tile-dark-color: #fff;
--tile-dark-bg: #5d6773;
--tile-dark-link-color: #ccc;
--tile-dark-byline-color: rgba(255, 255, 255, 0.7);
--tile-dark-header-color: #fff;
}
.tile {
background: var(--tile-background-color);
border: 1px solid var(--tile-border-color);
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
padding: 1.5em 2em 1em;
max-width: 40em;
}
.tile h2 {
font-size: 1.4em;
font-weight: bold;
border: none;
margin: 0 0 0.4em;
}
.tile .byline + h2 {
margin-top: -0.5em;
}
.tile.dark {
color: var(--tile-dark-color);
background: var(--tile-dark-bg);
border: none;
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.3);
}
.tile.dark h2 {
color: var(--tile-dark-header-color);
}
.tile.dark a {
color: var(--tile-dark-link-color);
}
.tile.dark .byline {
color: var(--tile-dark-byline-color);
}
.byline {
font-size: 0.9em;
color: var(--byline-color);
}
.byline a {
color: var(--byline-color);
}
.tile-row {
display: flex;
flex-flow: row wrap;
margin-bottom: 1em;
}
.tile-halves {
display: flex;
flex-flow: row wrap;
border: 1px solid var(--tile-border-color);
background: var(--tile-background-color);
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
}
.tile-halves h2 {
font-size: 1.4em;
font-weight: bold;
border: none;
margin: 0 0 0.4em;
}
.tile-halves .byline + h2 {
margin-top: -0.5em;
}
.tile-top {
width: 100%;
padding: 1.3rem 1.5rem 0.6rem;
}
.tile-top.tile-image {
display: flex;
align-items: center;
background-color: var(--byline-color);
overflow: hidden;
padding: 0;
height: 13vw;
max-height: 12em;
transition: 0.4s ease-out;
}
.tile-halves:hover .tile-top.tile-image img {
transform: scale(1.1);
transition: 0.5s ease-out;
}
.tile-top.tile-image a {
width: 100%;
}
.tile-top.tile-image img {
width: 100%;
object-fit: cover;
max-height: 200px;
transition: 0.4s ease-out;
}
.tile-bottom {
background: var(--tile-background-color);
border-top: 1px solid var(--tile-border-color);
width: 100%;
padding: 1rem 1.5rem 0.6rem;
}
.tile-bottom.link-button {
align-self: flex-end;
padding: 0;
}
.tile-bottom.link-button a {
display: block;
text-align: center;
padding: 0.75em 1.5em 0.8em;
text-decoration: none;
}
.tile-bottom.read-more {
background: var(--tile-link-button-color);
transition: 0.3s ease-out;
}
.tile-bottom.read-more a {
color: var(--byline-color);
font-weight: bold;
text-align: right;
}
.tile-bottom.read-more:hover {
background: var(--tile-link-button-highlight-color);
}
.tile-bottom.read-more:hover .arrow {
transform: translateX(50%);
}
.tile-bottom.read-more .arrow {
filter: var(--byline-arrow-filter);
margin-left: 0.4em;
transition: 0.3s ease-out;
}
body.page-Main_Page.action-view .catlinks,
body.page-Main_Page.action-view #contentSub,
body.page-Main_Page.action-view #firstHeading,
body.page-Main_Page.action-view #siteNotice {
display: none;
}
body.page-Main_Page .mw-parser-output {
max-width: 75em;
margin: 0 auto;
}
body.page-Main_Page.action-view .catlinks,
body.page-Main_Page.action-view #contentSub,
body.page-Main_Page.action-view #siteNotice {
display: none;
}
.mainpage-header {
display: flex;
margin: 2.6em 1.75em 1.5em;
}
.mainpage-header .header-intro {
flex: 2;
}
.mainpage-header .header-intro h1 {
font-size: 2.5em;
font-weight: bold;
border: none;
margin: 0 0 0.15em;
}
.mainpage-header .header-intro p {
font-size: 1.1em;
line-height: 1.7em;
}
.mainpage-header .header-stats {
flex: 1;
display: flex;
justify-content: center;
align-items: center;
margin-top: -1em;
}
.mainpage-body {
display: grid;
grid-template-areas: "event event event" "update update update" "content content content" "left left right";
gap: 0.9rem;
grid-template-columns: repeat(3, 1fr);
}
.mainpage-body h2 a {
color: var(--text-color);
}
.mainpage-body .tile {
padding-left: 1.75em;
padding-right: 1.75em;
max-width: 100%;
}
.mainpage-body .tile-row {
width: 100%;
margin-bottom: 0;
}
.mainpage-body .tile-row {
display: grid;
gap: 0.9rem;
}
.mainpage-left {
grid-area: left;
flex: 2;
display: flex;
flex-flow: column wrap;
}
.mainpage-left > * {
margin: 0 0 0.9rem;
}
.mainpage-right {
grid-area: right;
flex: 1;
display: flex;
flex-flow: column wrap;
}
.mainpage-right > * {
margin: 0 0 0.9rem;
}
.arrow {
background: url('filepath://White-chevron.svg') no-repeat;
display: inline-block;
height: 0.7rem;
width: 0.45rem;
vertical-align: middle;
}
.arrow.dark {
filter: invert(80%);
}
.mainpage-contents {
grid-area: content;
grid-template-columns: repeat(6, 1fr);
}
.mainpage-contents .tile-halves {
flex: 1;
}
.mainpage-contents .tile-top {
height: 4.5rem;
position: relative;
}
.mainpage-contents h2 {
margin: 0;
padding: 0;
}
.mainpage-contents .tile-bottom.link-button a {
padding: 0.75em 0.2em;
}
.popular-pages ul {
display: grid;
grid-template-columns: repeat(3, 1fr);
grid-gap: 0.6em;
margin: 1em 0 0.7em 0;
}
.mp-popular-page-light {
display: flex;
align-items: center;
background-color: var(--button-background);
transition: 100ms;
}
.mp-popular-page-light a {
flex: 1;
display: block;
color: #fff;
font-weight: bold;
text-align: center;
text-decoration: none;
padding: 0.7em 1em;
}
.mp-popular-page-light:hover {
filter: brightness(115%);
transition: 100ms;
}
.mainpage-discord {
border: none;
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.3);
}
.mainpage-discord .tile-top {
display: flex;
align-items: center;
background: #5865f2;
padding: 1em 1.75em;
}
.mainpage-discord .tile-top a {
flex: 1;
position: relative;
text-decoration: none;
}
.mainpage-discord .tile-top a:hover .arrow {
transform: translateX(50%);
}
.mainpage-discord .tile-bottom {
background: #525ee0;
border: none;
padding: 1em 1.75em;
}
.mainpage-discord .tile-bottom p {
color: #fff;
font-weight: bold;
font-size: 0.9em;
text-align: center;
text-transform: uppercase;
letter-spacing: 0.03em;
margin: 0;
}
.mainpage-discord .partner-icon {
margin-right: 0.75em;
}
.mainpage-discord .server-name {
color: #fff;
font-weight: bold;
font-size: 1.25em;
margin: 0.5em 0 -0.15em;
}
.mainpage-discord .server-tagline {
color: rgba(255, 255, 255, 0.9);
margin-bottom: 0.5em;
}
.mainpage-discord .arrow {
position: absolute;
top: calc(50% - .5em);
right: 0;
height: 1em;
width: 0.7em;
background-size: 0.7em 1em;
transition: 0.3s ease-out;
}
.mainpage-editing {
border: none;
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.3);
}
.mainpage-editing .tile-top {
background: #438ab5;
}
.mainpage-editing .tile-bottom {
background: #3980ab;
border: none;
padding: 0.8rem 1.5rem 0.4rem;
}
.mainpage-editing h2,
.mainpage-editing a {
color: #fff;
}
.mainpage-editing p {
color: rgba(255, 255, 255, 0.9);
}
.mainpage-editing ul {
list-style-image: url('filepath://Transparent-chevron.svg');
}
@media only screen and (max-width: 1200px) {
.mainpage-contents {
grid-template-columns: repeat(3, 1fr);
}
}
@media only screen and (max-width: 1000px) {
.mainpage-body {
grid-template-areas: "event event event" "update update update" "content content content" "left left left" "right right right";
}
.mainpage-recent-updates {
grid-template-columns: repeat(2, 1fr);
}
.mainpage-recent-updates .tile-halves:last-child {
display: none;
}
.mainpage-recent-updates .tile-halves:hover .tile-top img {
transform: scale(1.04);
}
.mainpage-recent-updates .tile-top {
height: 18vw;
min-height: 9em;
}
.mainpage-header .header-stats {
display: none;
}
.mainpage-left > *:last-child,
.mainpage-right > *:last-child {
margin-bottom: 0;
}
.popular-pages ul {
grid-template-columns: repeat(2, 1fr);
}
}
@media only screen and (max-width: 720px) {
.mainpage-recent-updates {
grid-template-columns: none;
}
.mainpage-recent-updates .tile-halves:last-child {
display: flex;
}
.mainpage-contents {
grid-template-columns: repeat(2, 1fr);
}
}
.mw-prefs-buttons {
background-color: var(--body-main);
border-top-color: var(--body-border);
box-shadow: none;
}
.mw-prefs-tabs-wrapper.oo-ui-panelLayout-framed,
.mw-prefs-tabs > .oo-ui-menuLayout-content > .oo-ui-indexLayout-stackLayout > .oo-ui-tabPanelLayout {
border-color: var(--body-border);
}
.mw-htmlform-ooui .mw-htmlform-matrix tbody tr:nth-child(even) td {
background-color: var(--body-light);
}
.mw-htmlform-ooui .mw-htmlform-matrix tbody tr:hover td {
background-color: var(--body-mid);
}
:root {
--rc-positive-color: #407813;
--rc-negative-color: #b41e0f;
}
.mw-plusminus-pos {
color: var(--rc-positive-color);
}
.mw-plusminus-neg {
color: var(--rc-negative-color);
}
.client-js .mw-recentchanges-toplinks:not(.mw-recentchanges-toplinks-collapsed) {
border-color: var(--body-border);
background-color: var(--body-light);
border-radius: 2px;
}
.mw-rcfilters-ui-filterTagMultiselectWidget-wrapper-content-title {
color: var(--text-color);
}
.mw-rcfilters-ui-filterTagMultiselectWidget-emptyFilters {
color: var(--byline-color);
}
.mw-rcfilters-ui-filterTagMultiselectWidget.oo-ui-widget-enabled .oo-ui-tagMultiselectWidget-handle {
background-color: var(--ooui-interface);
border-color: var(--ooui-interface-border);
}
.mw-rcfilters-ui-filterTagMultiselectWidget-views-select-widget.oo-ui-widget {
border-color: var(--ooui-interface-border);
}
.mw-rcfilters-collapsed .mw-rcfilters-ui-filterTagMultiselectWidget {
border-bottom-color: var(--ooui-interface-border);
}
.mw-rcfilters-ui-menuSelectWidget-footer {
background-color: var(--ooui-interface);
border-color: var(--ooui-interface-border);
}
.mw-rcfilters-ui-viewSwitchWidget label.oo-ui-labelWidget {
color: var(--byline-color);
}
.mw-rcfilters-ui-tagItemWidget-popup-content {
color: var(--ooui-text);
}
.mw-changeslist-legend,
.mw-rcfilters-ui-changesListWrapperWidget .mw-changeslist-legend {
background-color: var(--body-light);
border-color: var(--body-dark);
}
.mw-rcfilters-ui-changesListWrapperWidget-previousChangesIndicator {
border-color: var(--sidebar);
}
.client-js .mw-changeslist ul,
.client-js .mw-changeslist table.mw-enhanced-rc {
margin-left: 0;
}
.mw-rcfilters-ui-watchlistTopSectionWidget-separator {
border-color: var(--sidebar);
}
.mw-rcfilters-ui-itemMenuOptionWidget-header {
border-bottom-color: var(--ooui-interface);
background-color: var(--ooui-interface-border);
}
.mw-rcfilters-ui-itemMenuOptionWidget:not(:last-child):not(.mw-rcfilters-ui-itemMenuOptionWidget-identifier-talk) {
border-bottom-color: var(--ooui-normal-border);
}
.mw-rcfilters-ui-itemMenuOptionWidget-label-title,
.mw-rcfilters-ui-itemMenuOptionWidget-label-desc {
color: var(--text-color);
}
.mw-rcfilters-ui-filterMenuOptionWidget.oo-ui-flaggedElement-muted:not(.oo-ui-optionWidget-selected) {
background-color: var(--body-main);
}
.mw-rcfilters-ui-filterMenuOptionWidget.oo-ui-flaggedElement-muted .mw-rcfilters-ui-itemMenuOptionWidget-label-title,
.mw-rcfilters-ui-filterMenuOptionWidget.oo-ui-flaggedElement-muted .mw-rcfilters-ui-itemMenuOptionWidget-label-desc {
color: var(--subtle-color);
}
.mw-rcfilters-ui-filterMenuSectionOptionWidget {
background-color: var(--body-mid);
}
.mw-rcfilters-ui-filterMenuSectionOptionWidget-header-title.oo-ui-labelElement-label {
color: var(--ooui-text);
}
.mw-rcfilters-ui-filterMenuHeaderWidget-title {
color: var(--ooui-text);
}
.mw-rcfilters-ui-filterMenuHeaderWidget-header {
border-bottom-color: var(--ooui-interface-border);
background-color: var(--ooui-interface);
}
.mw-rcfilters-ui-itemMenuOptionWidget-view-namespaces {
border-top-color: var(--ooui-interface-border);
}
.mw-rcfilters-ui-datePopupWidget {
border-color: var(--ooui-interface-border);
}
.mw-rcfilters-ui-datePopupWidget .mw-rcfilters-ui-valuePickerWidget-title {
color: var(--byline-color);
}
.mw-rcfilters-ui-savedLinksListItemWidget-label {
color: var(--ooui-accent);
}
.client-js .mw-changeslist.mw-rcfilters-ui-changesListWrapperWidget-highlighted ul,
.client-js .mw-changeslist.mw-rcfilters-ui-changesListWrapperWidget-highlighted table.mw-enhanced-rc {
margin-left: 1.5em;
}
.page-Special_CreateAccount .mw-ui-container,
.page-Special_UserLogin .mw-ui-container {
max-width: 64rem;
margin: 0 auto;
}
.mw-number-text {
color: var(--byline-color);
}
.mw-body-content .mw-number-text h3 {
color: var(--text-color);
}
#mw-indicator-mw-helplink a {
background: none;
padding: 0;
display: flex;
align-items: center;
}
#mw-indicator-mw-helplink a::before {
content: '';
margin-right: 5px;
-webkit-mask: url("/resources/src/mediawiki.helplink/images/helpNotice.svg?46d34") no-repeat 50% 50% / contain;
mask: url("/resources/src/mediawiki.helplink/images/helpNotice.svg?46d34") no-repeat 50% 50% / contain;
background: var(--text-color);
height: 20px;
width: 20px;
}
.results-info {
color: inherit;
}
.mw-search-profile-tabs {
background-color: var(--body-mid);
border-color: transparent;
}
.search-types .current a {
color: inherit;
}
#mw-searchoptions {
background-color: var(--body-mid);
border-color: transparent;
}
#mw-searchoptions .divider {
border-color: var(--body-border);
}
#mw-searchoptions h4 {
font-family: inherit;
}
#mw-searchoptions .oo-ui-labelElement:nth-of-type(odd) {
font-weight: bold;
}
.searchresult {
line-height: 1.5;
}
.searchalttitle,
#mw-search-interwiki li {
font-size: 90%;
}
.mw-search-result-data {
color: var(--byline-color);
}
.page-Special_ListFiles a.image img {
width: inherit;
height: inherit;
}
.page-Special_ListFiles .TablePager_col_thumb {
text-align: center;
}
#editcount table[border="1"] {
background-color: var(--body-main) !important;
border-color: var(--wikitable-border) !important;
margin-top: 0.5em;
}
#editcount table[border="1"] th,
#editcount table[border="1"] td {
padding: 0.2em 0.4em;
}
#editcount table[border="1"] th {
background-color: var(--wikitable-header-bg);
border: 1px solid var(--wikitable-border);
}
#editcount table[border="1"] td {
border: 1px solid var(--wikitable-border);
}
#editcount table[border="1"] tr:nth-child(odd) {
background-color: var(--body-light);
}
.mw-echo-ui-notificationBadgeButtonPopupWidget-popup > .oo-ui-popupWidget-popup .mw-echo-ui-placeholderItemWidget {
background-color: inherit;
}
table.mw-interwikitable.body td.mw-interwikitable-local-yes {
background-color: var(--table-yes-background);
color: var(--table-yes-color);
}
.mw-protectedpages-unknown {
color: var(--byline-color);
}
.watchlistredir,
.allpagesredirect {
font-style: italic;
}
.allpagesredirect:after {
color: var(--byline-color);
content: " (redirect)";
}
.mw-apisandbox-toolbar {
background: var(--body-main);
}
.oo-ui-menuOptionWidget .mw-apisandbox-flag {
color: var(--byline-color);
}
tr.mw-abusefilter-list-disabled,
tr.mw-abusefilter-list-disabled td {
color: var(--byline-color);
}
table.mw-abuselog-details {
background: var(--wikitable-bg);
border-color: var(--wikitable-border);
}
table.mw-abuselog-details th {
background: var(--wikitable-header-bg);
}
table.mw-abuselog-details th,
table.mw-abuselog-details td {
border-color: var(--wikitable-border);
}
.mw-abusefilter-log-hidden-entry {
color: var(--subtle-color);
}
body td.mw-abusefilter-history-changed {
background: var(--table-no-background);
}
div.mw-abusefilter-editor,
#mw-abusefilter-warn-preview,
#mw-abusefilter-disallow-preview {
border-color: var(--ooui-input-border);
}
.mw-destfile-warning {
border-color: var(--warningbox-border);
color: var(--text-color);
background-color: var(--warningbox-bg);
}
span.fileinput-button {
background-color: var(--ooui-normal);
border-color: var(--ooui-normal-border);
color: var(--ooui-text);
}
ul.fileupload-results li.ful-success {
background-color: var(--successbox-bg);
}
ul.fileupload-results li.ful-success a {
color: var(--link-color);
}
ul.fileupload-results li.ful-error {
background-color: var(--errorbox-bg);
}
#t-print,
#t-permalink {
display: none;
}
#filetoc {
border-radius: 2px;
background: var(--body-mid);
border-color: transparent;
margin: 0.5em auto;
text-align: center;
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
}
li.gallerybox div.thumb {
border: none;
background-color: var(--thumb-bg);
}
.smwfact {
display: none;
}
.list-header {
background-color: var(--body-mid);
color: inherit;
}
.editOptions {
color: var(--text-color);
background-color: var(--sourceeditor-background-secondary);
border-color: var(--sourceeditor-border);
}
.mw-json th,
.mw-json td {
border-color: var(--wikitable-border);
}
.mw-json td {
background: var(--wikitable-bg);
}
.mw-json th {
background: var(--wikitable-header-bg);
}
acc404b7b644cb41fbe2d96af331070a64f6ea2f
MediaWiki:Common.less/mainpage.less
8
44
60
2024-03-22T03:00:57Z
Jayden
3
base cp from rsw
less
less
/* ===================
MAIN PAGE
=================== */
/* ===================
variables
=================== */
@mp-text-light: fade( @white, 90% );
@mp-gutter-width: .9rem;
/* ==========================
page-specific styles
========================== */
body.page-Main_Page {
// limit max width for readability
// don't use #mw-content-text because it includes the editform
.mw-parser-output {
max-width: 75em;
margin: 0 auto;
}
// not when editing
&.action-view {
.catlinks,
#contentSub,
// hide pagetitle in favor of .mainpage-header
// Note: as of mw1.38, this is not needed anymore
// blanking both [[MediaWiki:Mainpage-title-loggedin]] &
// [[MediaWiki:Mainpage-title]] applies an inline `display: none;`
// #firstHeading,
// anything listed in the sitenotice should already be on the main page
#siteNotice {
display: none;
}
}
}
/* ====================
general styles
==================== */
.mainpage-header {
display: flex;
margin: 2.6em 1.75em 1.5em;
.header-intro {
flex: 2;
h1 {
font-size: 2.5em;
font-weight: bold;
border: none;
margin: 0 0 .15em;
}
p {
font-size: 1.1em;
line-height: 1.7em;
}
}
.header-stats {
flex: 1;
display: flex;
justify-content: center;
align-items: center;
margin-top: -1em;
}
}
// main sections
.mainpage-body {
display: grid;
grid-template-areas:
"event event event" // for tbzr tile
"update update update"
"content content content"
"left left right";
gap: 0.9rem;
grid-template-columns: repeat(3, 1fr);
h2 a {
color: var(--text-color);
}
.tile {
padding-left: 1.75em;
padding-right: 1.75em;
max-width: 100%;
}
.tile-row {
width: 100%;
margin-bottom: 0;
}
}
.mainpage-body .tile-row {
display: grid;
gap: 0.9rem
}
// left column
.mainpage-left {
grid-area: left;
flex: 2;
display: flex;
flex-flow: column wrap;
> * {
margin: 0 0 @mp-gutter-width;
}
}
// right column
.mainpage-right {
grid-area: right;
flex: 1;
display: flex;
flex-flow: column wrap;
> * {
margin: 0 0 @mp-gutter-width;
}
}
/* ====================
components
==================== */
.arrow {
background: url('filepath://White-chevron.svg') no-repeat;
display: inline-block;
height: .7rem;
width: .45rem;
vertical-align: middle;
&.dark {
filter: invert(80%);
}
}
/* =============================
section-specific styles
============================= */
/* --------------------
wiki contents
-------------------- */
@mp-contents-height: 4.5rem;
.mainpage-contents {
grid-area: content;
grid-template-columns: repeat(6, 1fr);
.tile-halves {
flex: 1;
}
.tile-top {
position: relative; // needed for ribbon
}
h2 {
margin: 0;
padding: 0;
}
.tile-bottom.link-button a {
padding: 0.75em 0.2em; // prevent grid gap misalignment
}
}
/* --------------------
popular pages
-------------------- */
.popular-pages ul {
display: grid;
grid-template-columns: repeat(3, 1fr);
grid-gap: .6em;
margin: 1em 0 .7em 0;
}
.mp-popular-page-light {
display: flex;
align-items: center;
background-color: var(--button-background);
transition: 100ms;
a {
flex: 1;
display: block;
color: @white;
font-weight: bold;
text-align: center;
text-decoration: none;
padding: .7em 1em;
}
&:hover {
filter: brightness(115%);
transition: 100ms;
}
}
/* --------------------
discord server
-------------------- */
.mainpage-discord {
border: none;
box-shadow: @box-shadow-dark;
.tile-top {
display: flex;
align-items: center;
background: @discord-bg;
padding: 1em 1.75em;
a {
flex: 1;
position: relative; // allow link to cover icon
text-decoration: none;
&:hover .arrow {
transform: translateX(50%);
}
}
}
.tile-bottom {
background: @discord-bg-dark;
border: none;
padding: 1em 1.75em;
p {
color: @white;
font-weight: bold;
font-size: .9em;
text-align: center;
text-transform: uppercase;
letter-spacing: .03em;
margin: 0;
}
}
.partner-icon {
margin-right: .75em;
}
.server-name {
color: @white;
font-weight: bold;
font-size: 1.25em;
margin: .5em 0 -0.15em;
}
.server-tagline {
color: @mp-text-light;
margin-bottom: .5em;
}
.arrow {
position: absolute;
top: ~"calc(50% - .5em)"; // center arrow on its point
right: 0;
height: 1em;
width: .7em;
background-size: .7em 1em;
transition: .3s ease-out;
}
}
/* --------------------
edit the wiki
-------------------- */
.mainpage-editing {
border: none;
box-shadow: @box-shadow-dark;
.tile-top {
background: @steel-blue;
}
.tile-bottom {
background: saturate( darken( @steel-blue, 4% ), 4% );
border: none;
padding: .8rem 1.5rem .4rem;
}
h2,
a {
color: @white;
}
p {
color: @mp-text-light;
}
ul {
list-style-image: url('filepath://Transparent-chevron.svg');
}
}
/* ==========================
media queries
========================== */
@media only screen and (max-width: @width-breakpoint-desktop-wide) {
// switch to two rows of three tiles
.mainpage-contents {
grid-template-columns: repeat(3, 1fr)
}
}
@media only screen and (max-width: @width-breakpoint-desktop) {
// mainpage-left and -right on one column now
.mainpage-body {
grid-template-areas:
"event event event"
"update update update"
"content content content"
"left left left"
"right right right";
}
.mainpage-recent-updates {
grid-template-columns: repeat(2, 1fr);
.tile-halves {
// hide third recent update
&:last-child {
display: none;
}
// zoom on hover
&:hover .tile-top img {
transform: scale(1.04);
}
}
.tile-top {
height: 18vw;
min-height: 9em;
}
}
// hide other things
.mainpage-header .header-stats {
display: none;
}
// kill margin as it duplicates grid's gap
.mainpage-left > *:last-child,
.mainpage-right > *:last-child {
margin-bottom: 0;
}
.popular-pages ul {
grid-template-columns: repeat(2, 1fr);
}
}
@media only screen and (max-width: @width-breakpoint-tablet) {
.mainpage-recent-updates {
// resulting in single column
grid-template-columns: none;
// revert display:none
.tile-halves:last-child {
display: flex;
}
}
// switch to three rows of two tiles
.mainpage-contents {
grid-template-columns: repeat(2, 1fr);
}
}
b3c47db531eb4cf31cbe526e5f5d6ab2258574ad
81
60
2024-03-22T03:18:31Z
Jayden
3
less
less
/* ===================
MAIN PAGE
=================== */
/* ===================
variables
=================== */
@mp-text-light: fade( @white, 90% );
@mp-gutter-width: .9rem;
/* ==========================
page-specific styles
========================== */
body.page-Main_Page {
// limit max width for readability
// don't use #mw-content-text because it includes the editform
.mw-parser-output {
max-width: 75em;
margin: 0 auto;
}
// not when editing
&.action-view {
.catlinks,
#contentSub,
// hide pagetitle in favor of .mainpage-header
// Note: as of mw1.38, this is not needed anymore
// blanking both [[MediaWiki:Mainpage-title-loggedin]] &
// [[MediaWiki:Mainpage-title]] applies an inline `display: none;`
// #firstHeading,
// anything listed in the sitenotice should already be on the main page
#siteNotice {
display: none;
}
}
}
/* ====================
general styles
==================== */
.mainpage-header {
display: flex;
margin: 2.6em 1.75em 1.5em;
.header-intro {
flex: 2;
h1 {
font-size: 2.5em;
font-weight: bold;
border: none;
margin: 0 0 .15em;
}
p {
font-size: 1.1em;
line-height: 1.7em;
}
}
.header-stats {
flex: 1;
display: flex;
justify-content: center;
align-items: center;
margin-top: -1em;
}
}
// main sections
.mainpage-body {
display: grid;
grid-template-areas:
"event event event" // for tbzr tile
"update update update"
"content content content"
"left left right";
gap: 0.9rem;
grid-template-columns: repeat(3, 1fr);
h2 a {
color: var(--text-color);
}
.tile {
padding-left: 1.75em;
padding-right: 1.75em;
max-width: 100%;
}
.tile-row {
width: 100%;
margin-bottom: 0;
}
}
.mainpage-body .tile-row {
display: grid;
gap: 0.9rem
}
// left column
.mainpage-left {
grid-area: left;
flex: 2;
display: flex;
flex-flow: column wrap;
> * {
margin: 0 0 @mp-gutter-width;
}
}
// right column
.mainpage-right {
grid-area: right;
flex: 1;
display: flex;
flex-flow: column wrap;
> * {
margin: 0 0 @mp-gutter-width;
}
}
/* ====================
components
==================== */
.arrow {
background: url('filepath://White-chevron.svg') no-repeat;
display: inline-block;
height: .7rem;
width: .45rem;
vertical-align: middle;
&.dark {
filter: invert(80%);
}
}
/* =============================
section-specific styles
============================= */
/* --------------------
wiki contents
-------------------- */
@mp-contents-height: 4.5rem;
.mainpage-contents {
.tile-halves {
flex: 1;
margin-right: @mp-gutter-width;
// zoom on hover
&:hover .tile-top img {
transform: scale(1.04);
}
&:last-child {
margin-right: 0;
}
}
.tile-top {
height: @mp-contents-height;
position: relative; // needed for ribbon
h2 a {
display: block;
text-align: center;
text-decoration: none;
line-height: @mp-contents-height;
padding-left: .45rem; // to make up for arrow width
}
}
h2 {
margin: 0;
padding: 0;
}
}
/* --------------------
popular pages
-------------------- */
.popular-pages ul {
display: grid;
grid-template-columns: repeat(3, 1fr);
grid-gap: .6em;
margin: 1em 0 .7em 0;
}
.mp-popular-page-light {
display: flex;
align-items: center;
background-color: var(--button-background);
transition: 100ms;
a {
flex: 1;
display: block;
color: @white;
font-weight: bold;
text-align: center;
text-decoration: none;
padding: .7em 1em;
}
&:hover {
filter: brightness(115%);
transition: 100ms;
}
}
/* --------------------
discord server
-------------------- */
.mainpage-discord {
border: none;
box-shadow: @box-shadow-dark;
.tile-top {
display: flex;
align-items: center;
background: @discord-bg;
padding: 1em 1.75em;
a {
flex: 1;
position: relative; // allow link to cover icon
text-decoration: none;
&:hover .arrow {
transform: translateX(50%);
}
}
}
.tile-bottom {
background: @discord-bg-dark;
border: none;
padding: 1em 1.75em;
p {
color: @white;
font-weight: bold;
font-size: .9em;
text-align: center;
text-transform: uppercase;
letter-spacing: .03em;
margin: 0;
}
}
.partner-icon {
margin-right: .75em;
}
.server-name {
color: @white;
font-weight: bold;
font-size: 1.25em;
margin: .5em 0 -0.15em;
}
.server-tagline {
color: @mp-text-light;
margin-bottom: .5em;
}
.arrow {
position: absolute;
top: ~"calc(50% - .5em)"; // center arrow on its point
right: 0;
height: 1em;
width: .7em;
background-size: .7em 1em;
transition: .3s ease-out;
}
}
/* --------------------
edit the wiki
-------------------- */
.mainpage-editing {
border: none;
box-shadow: @box-shadow-dark;
.tile-top {
background: @steel-blue;
}
.tile-bottom {
background: saturate( darken( @steel-blue, 4% ), 4% );
border: none;
padding: .8rem 1.5rem .4rem;
}
h2,
a {
color: @white;
}
p {
color: @mp-text-light;
}
ul {
list-style-image: url('filepath://Transparent-chevron.svg');
}
}
/* ==========================
media queries
========================== */
@media only screen and (max-width: @width-breakpoint-desktop-wide) {
// switch to two rows of three tiles
.mainpage-contents {
grid-template-columns: repeat(3, 1fr)
}
}
@media only screen and (max-width: @width-breakpoint-desktop) {
// mainpage-left and -right on one column now
.mainpage-body {
grid-template-areas:
"event event event"
"update update update"
"content content content"
"left left left"
"right right right";
}
.mainpage-recent-updates {
grid-template-columns: repeat(2, 1fr);
.tile-halves {
// hide third recent update
&:last-child {
display: none;
}
// zoom on hover
&:hover .tile-top img {
transform: scale(1.04);
}
}
.tile-top {
height: 18vw;
min-height: 9em;
}
}
// hide other things
.mainpage-header .header-stats {
display: none;
}
// kill margin as it duplicates grid's gap
.mainpage-left > *:last-child,
.mainpage-right > *:last-child {
margin-bottom: 0;
}
.popular-pages ul {
grid-template-columns: repeat(2, 1fr);
}
}
@media only screen and (max-width: @width-breakpoint-tablet) {
.mainpage-recent-updates {
// resulting in single column
grid-template-columns: none;
// revert display:none
.tile-halves:last-child {
display: flex;
}
}
// switch to three rows of two tiles
.mainpage-contents {
grid-template-columns: repeat(2, 1fr);
}
}
e1766afedcac853bd8b4d3cabbb23172ee7171fe
83
81
2024-03-22T03:19:22Z
Jayden
3
Undo revision 81 by [[Special:Contributions/Jayden|Jayden]] ([[User talk:Jayden|talk]])
less
less
/* ===================
MAIN PAGE
=================== */
/* ===================
variables
=================== */
@mp-text-light: fade( @white, 90% );
@mp-gutter-width: .9rem;
/* ==========================
page-specific styles
========================== */
body.page-Main_Page {
// limit max width for readability
// don't use #mw-content-text because it includes the editform
.mw-parser-output {
max-width: 75em;
margin: 0 auto;
}
// not when editing
&.action-view {
.catlinks,
#contentSub,
// hide pagetitle in favor of .mainpage-header
// Note: as of mw1.38, this is not needed anymore
// blanking both [[MediaWiki:Mainpage-title-loggedin]] &
// [[MediaWiki:Mainpage-title]] applies an inline `display: none;`
// #firstHeading,
// anything listed in the sitenotice should already be on the main page
#siteNotice {
display: none;
}
}
}
/* ====================
general styles
==================== */
.mainpage-header {
display: flex;
margin: 2.6em 1.75em 1.5em;
.header-intro {
flex: 2;
h1 {
font-size: 2.5em;
font-weight: bold;
border: none;
margin: 0 0 .15em;
}
p {
font-size: 1.1em;
line-height: 1.7em;
}
}
.header-stats {
flex: 1;
display: flex;
justify-content: center;
align-items: center;
margin-top: -1em;
}
}
// main sections
.mainpage-body {
display: grid;
grid-template-areas:
"event event event" // for tbzr tile
"update update update"
"content content content"
"left left right";
gap: 0.9rem;
grid-template-columns: repeat(3, 1fr);
h2 a {
color: var(--text-color);
}
.tile {
padding-left: 1.75em;
padding-right: 1.75em;
max-width: 100%;
}
.tile-row {
width: 100%;
margin-bottom: 0;
}
}
.mainpage-body .tile-row {
display: grid;
gap: 0.9rem
}
// left column
.mainpage-left {
grid-area: left;
flex: 2;
display: flex;
flex-flow: column wrap;
> * {
margin: 0 0 @mp-gutter-width;
}
}
// right column
.mainpage-right {
grid-area: right;
flex: 1;
display: flex;
flex-flow: column wrap;
> * {
margin: 0 0 @mp-gutter-width;
}
}
/* ====================
components
==================== */
.arrow {
background: url('filepath://White-chevron.svg') no-repeat;
display: inline-block;
height: .7rem;
width: .45rem;
vertical-align: middle;
&.dark {
filter: invert(80%);
}
}
/* =============================
section-specific styles
============================= */
/* --------------------
wiki contents
-------------------- */
@mp-contents-height: 4.5rem;
.mainpage-contents {
grid-area: content;
grid-template-columns: repeat(6, 1fr);
.tile-halves {
flex: 1;
}
.tile-top {
position: relative; // needed for ribbon
}
h2 {
margin: 0;
padding: 0;
}
.tile-bottom.link-button a {
padding: 0.75em 0.2em; // prevent grid gap misalignment
}
}
/* --------------------
popular pages
-------------------- */
.popular-pages ul {
display: grid;
grid-template-columns: repeat(3, 1fr);
grid-gap: .6em;
margin: 1em 0 .7em 0;
}
.mp-popular-page-light {
display: flex;
align-items: center;
background-color: var(--button-background);
transition: 100ms;
a {
flex: 1;
display: block;
color: @white;
font-weight: bold;
text-align: center;
text-decoration: none;
padding: .7em 1em;
}
&:hover {
filter: brightness(115%);
transition: 100ms;
}
}
/* --------------------
discord server
-------------------- */
.mainpage-discord {
border: none;
box-shadow: @box-shadow-dark;
.tile-top {
display: flex;
align-items: center;
background: @discord-bg;
padding: 1em 1.75em;
a {
flex: 1;
position: relative; // allow link to cover icon
text-decoration: none;
&:hover .arrow {
transform: translateX(50%);
}
}
}
.tile-bottom {
background: @discord-bg-dark;
border: none;
padding: 1em 1.75em;
p {
color: @white;
font-weight: bold;
font-size: .9em;
text-align: center;
text-transform: uppercase;
letter-spacing: .03em;
margin: 0;
}
}
.partner-icon {
margin-right: .75em;
}
.server-name {
color: @white;
font-weight: bold;
font-size: 1.25em;
margin: .5em 0 -0.15em;
}
.server-tagline {
color: @mp-text-light;
margin-bottom: .5em;
}
.arrow {
position: absolute;
top: ~"calc(50% - .5em)"; // center arrow on its point
right: 0;
height: 1em;
width: .7em;
background-size: .7em 1em;
transition: .3s ease-out;
}
}
/* --------------------
edit the wiki
-------------------- */
.mainpage-editing {
border: none;
box-shadow: @box-shadow-dark;
.tile-top {
background: @steel-blue;
}
.tile-bottom {
background: saturate( darken( @steel-blue, 4% ), 4% );
border: none;
padding: .8rem 1.5rem .4rem;
}
h2,
a {
color: @white;
}
p {
color: @mp-text-light;
}
ul {
list-style-image: url('filepath://Transparent-chevron.svg');
}
}
/* ==========================
media queries
========================== */
@media only screen and (max-width: @width-breakpoint-desktop-wide) {
// switch to two rows of three tiles
.mainpage-contents {
grid-template-columns: repeat(3, 1fr)
}
}
@media only screen and (max-width: @width-breakpoint-desktop) {
// mainpage-left and -right on one column now
.mainpage-body {
grid-template-areas:
"event event event"
"update update update"
"content content content"
"left left left"
"right right right";
}
.mainpage-recent-updates {
grid-template-columns: repeat(2, 1fr);
.tile-halves {
// hide third recent update
&:last-child {
display: none;
}
// zoom on hover
&:hover .tile-top img {
transform: scale(1.04);
}
}
.tile-top {
height: 18vw;
min-height: 9em;
}
}
// hide other things
.mainpage-header .header-stats {
display: none;
}
// kill margin as it duplicates grid's gap
.mainpage-left > *:last-child,
.mainpage-right > *:last-child {
margin-bottom: 0;
}
.popular-pages ul {
grid-template-columns: repeat(2, 1fr);
}
}
@media only screen and (max-width: @width-breakpoint-tablet) {
.mainpage-recent-updates {
// resulting in single column
grid-template-columns: none;
// revert display:none
.tile-halves:last-child {
display: flex;
}
}
// switch to three rows of two tiles
.mainpage-contents {
grid-template-columns: repeat(2, 1fr);
}
}
b3c47db531eb4cf31cbe526e5f5d6ab2258574ad
86
83
2024-03-22T03:25:41Z
Jayden
3
less
less
/* ===================
MAIN PAGE
=================== */
/* ===================
variables
=================== */
@mp-text-light: fade( @white, 90% );
@mp-gutter-width: .9rem;
/* ==========================
page-specific styles
========================== */
body.page-Main_Page {
// limit max width for readability
// don't use #mw-content-text because it includes the editform
.mw-parser-output {
max-width: 75em;
margin: 0 auto;
}
// not when editing
&.action-view {
.catlinks,
#contentSub,
// hide pagetitle in favor of .mainpage-header
// Note: as of mw1.38, this is not needed anymore
// blanking both [[MediaWiki:Mainpage-title-loggedin]] &
// [[MediaWiki:Mainpage-title]] applies an inline `display: none;`
// #firstHeading,
// anything listed in the sitenotice should already be on the main page
#siteNotice {
display: none;
}
}
}
/* ====================
general styles
==================== */
.mainpage-header {
display: flex;
margin: 2.6em 1.75em 1.5em;
.header-intro {
flex: 2;
h1 {
font-size: 2.5em;
font-weight: bold;
border: none;
margin: 0 0 .15em;
}
p {
font-size: 1.1em;
line-height: 1.7em;
}
}
.header-stats {
flex: 1;
display: flex;
justify-content: center;
align-items: center;
margin-top: -1em;
}
}
// main sections
.mainpage-body {
display: grid;
grid-template-areas:
"event event event" // for tbzr tile
"update update update"
"content content content"
"left left right";
gap: 0.9rem;
grid-template-columns: repeat(3, 1fr);
h2 a {
color: var(--text-color);
}
.tile {
padding-left: 1.75em;
padding-right: 1.75em;
max-width: 100%;
}
.tile-row {
width: 100%;
margin-bottom: 0;
}
}
.mainpage-body .tile-row {
display: grid;
gap: 0.9rem
}
// left column
.mainpage-left {
grid-area: left;
flex: 2;
display: flex;
flex-flow: column wrap;
> * {
margin: 0 0 @mp-gutter-width;
}
}
// right column
.mainpage-right {
grid-area: right;
flex: 1;
display: flex;
flex-flow: column wrap;
> * {
margin: 0 0 @mp-gutter-width;
}
}
/* ====================
components
==================== */
.arrow {
background: url('filepath://White-chevron.svg') no-repeat;
display: inline-block;
height: .7rem;
width: .45rem;
vertical-align: middle;
&.dark {
filter: invert(80%);
}
}
/* =============================
section-specific styles
============================= */
/* --------------------
wiki contents
-------------------- */
@mp-contents-height: 4.5rem;
.mainpage-contents {
grid-area: content;
grid-template-columns: repeat(6, 1fr);
.tile-halves {
flex: 1;
}
.tile-top {
height: 4.5rem;
position: relative; // needed for ribbon
}
h2 {
margin: 0;
padding: 0;
}
.tile-bottom.link-button a {
padding: 0.75em 0.2em; // prevent grid gap misalignment
}
}
/* --------------------
popular pages
-------------------- */
.popular-pages ul {
display: grid;
grid-template-columns: repeat(3, 1fr);
grid-gap: .6em;
margin: 1em 0 .7em 0;
}
.mp-popular-page-light {
display: flex;
align-items: center;
background-color: var(--button-background);
transition: 100ms;
a {
flex: 1;
display: block;
color: @white;
font-weight: bold;
text-align: center;
text-decoration: none;
padding: .7em 1em;
}
&:hover {
filter: brightness(115%);
transition: 100ms;
}
}
/* --------------------
discord server
-------------------- */
.mainpage-discord {
border: none;
box-shadow: @box-shadow-dark;
.tile-top {
display: flex;
align-items: center;
background: @discord-bg;
padding: 1em 1.75em;
a {
flex: 1;
position: relative; // allow link to cover icon
text-decoration: none;
&:hover .arrow {
transform: translateX(50%);
}
}
}
.tile-bottom {
background: @discord-bg-dark;
border: none;
padding: 1em 1.75em;
p {
color: @white;
font-weight: bold;
font-size: .9em;
text-align: center;
text-transform: uppercase;
letter-spacing: .03em;
margin: 0;
}
}
.partner-icon {
margin-right: .75em;
}
.server-name {
color: @white;
font-weight: bold;
font-size: 1.25em;
margin: .5em 0 -0.15em;
}
.server-tagline {
color: @mp-text-light;
margin-bottom: .5em;
}
.arrow {
position: absolute;
top: ~"calc(50% - .5em)"; // center arrow on its point
right: 0;
height: 1em;
width: .7em;
background-size: .7em 1em;
transition: .3s ease-out;
}
}
/* --------------------
edit the wiki
-------------------- */
.mainpage-editing {
border: none;
box-shadow: @box-shadow-dark;
.tile-top {
background: @steel-blue;
}
.tile-bottom {
background: saturate( darken( @steel-blue, 4% ), 4% );
border: none;
padding: .8rem 1.5rem .4rem;
}
h2,
a {
color: @white;
}
p {
color: @mp-text-light;
}
ul {
list-style-image: url('filepath://Transparent-chevron.svg');
}
}
/* ==========================
media queries
========================== */
@media only screen and (max-width: @width-breakpoint-desktop-wide) {
// switch to two rows of three tiles
.mainpage-contents {
grid-template-columns: repeat(3, 1fr)
}
}
@media only screen and (max-width: @width-breakpoint-desktop) {
// mainpage-left and -right on one column now
.mainpage-body {
grid-template-areas:
"event event event"
"update update update"
"content content content"
"left left left"
"right right right";
}
.mainpage-recent-updates {
grid-template-columns: repeat(2, 1fr);
.tile-halves {
// hide third recent update
&:last-child {
display: none;
}
// zoom on hover
&:hover .tile-top img {
transform: scale(1.04);
}
}
.tile-top {
height: 18vw;
min-height: 9em;
}
}
// hide other things
.mainpage-header .header-stats {
display: none;
}
// kill margin as it duplicates grid's gap
.mainpage-left > *:last-child,
.mainpage-right > *:last-child {
margin-bottom: 0;
}
.popular-pages ul {
grid-template-columns: repeat(2, 1fr);
}
}
@media only screen and (max-width: @width-breakpoint-tablet) {
.mainpage-recent-updates {
// resulting in single column
grid-template-columns: none;
// revert display:none
.tile-halves:last-child {
display: flex;
}
}
// switch to three rows of two tiles
.mainpage-contents {
grid-template-columns: repeat(2, 1fr);
}
}
f1f77aa3bf3d8c0f09a79cffdbc8dbcc76862c49
89
86
2024-03-22T03:33:03Z
Jayden
3
less
less
/* ===================
MAIN PAGE
=================== */
body.page-Main_Page.action-view .catlinks,
body.page-Main_Page.action-view #contentSub,
body.page-Main_Page.action-view #firstHeading,
body.page-Main_Page.action-view #siteNotice {
display: none;
}
/* ===================
variables
=================== */
@mp-text-light: fade( @white, 90% );
@mp-gutter-width: .9rem;
/* ==========================
page-specific styles
========================== */
body.page-Main_Page {
// limit max width for readability
// don't use #mw-content-text because it includes the editform
.mw-parser-output {
max-width: 75em;
margin: 0 auto;
}
// not when editing
&.action-view {
.catlinks,
#contentSub,
// hide pagetitle in favor of .mainpage-header
// Note: as of mw1.38, this is not needed anymore
// blanking both [[MediaWiki:Mainpage-title-loggedin]] &
// [[MediaWiki:Mainpage-title]] applies an inline `display: none;`
// #firstHeading,
// anything listed in the sitenotice should already be on the main page
#siteNotice {
display: none;
}
}
}
/* ====================
general styles
==================== */
.mainpage-header {
display: flex;
margin: 2.6em 1.75em 1.5em;
.header-intro {
flex: 2;
h1 {
font-size: 2.5em;
font-weight: bold;
border: none;
margin: 0 0 .15em;
}
p {
font-size: 1.1em;
line-height: 1.7em;
}
}
.header-stats {
flex: 1;
display: flex;
justify-content: center;
align-items: center;
margin-top: -1em;
}
}
// main sections
.mainpage-body {
display: grid;
grid-template-areas:
"event event event" // for tbzr tile
"update update update"
"content content content"
"left left right";
gap: 0.9rem;
grid-template-columns: repeat(3, 1fr);
h2 a {
color: var(--text-color);
}
.tile {
padding-left: 1.75em;
padding-right: 1.75em;
max-width: 100%;
}
.tile-row {
width: 100%;
margin-bottom: 0;
}
}
.mainpage-body .tile-row {
display: grid;
gap: 0.9rem
}
// left column
.mainpage-left {
grid-area: left;
flex: 2;
display: flex;
flex-flow: column wrap;
> * {
margin: 0 0 @mp-gutter-width;
}
}
// right column
.mainpage-right {
grid-area: right;
flex: 1;
display: flex;
flex-flow: column wrap;
> * {
margin: 0 0 @mp-gutter-width;
}
}
/* ====================
components
==================== */
.arrow {
background: url('filepath://White-chevron.svg') no-repeat;
display: inline-block;
height: .7rem;
width: .45rem;
vertical-align: middle;
&.dark {
filter: invert(80%);
}
}
/* =============================
section-specific styles
============================= */
/* --------------------
wiki contents
-------------------- */
@mp-contents-height: 4.5rem;
.mainpage-contents {
grid-area: content;
grid-template-columns: repeat(6, 1fr);
.tile-halves {
flex: 1;
}
.tile-top {
height: 4.5rem;
position: relative; // needed for ribbon
}
h2 {
margin: 0;
padding: 0;
}
.tile-bottom.link-button a {
padding: 0.75em 0.2em; // prevent grid gap misalignment
}
}
/* --------------------
popular pages
-------------------- */
.popular-pages ul {
display: grid;
grid-template-columns: repeat(3, 1fr);
grid-gap: .6em;
margin: 1em 0 .7em 0;
}
.mp-popular-page-light {
display: flex;
align-items: center;
background-color: var(--button-background);
transition: 100ms;
a {
flex: 1;
display: block;
color: @white;
font-weight: bold;
text-align: center;
text-decoration: none;
padding: .7em 1em;
}
&:hover {
filter: brightness(115%);
transition: 100ms;
}
}
/* --------------------
discord server
-------------------- */
.mainpage-discord {
border: none;
box-shadow: @box-shadow-dark;
.tile-top {
display: flex;
align-items: center;
background: @discord-bg;
padding: 1em 1.75em;
a {
flex: 1;
position: relative; // allow link to cover icon
text-decoration: none;
&:hover .arrow {
transform: translateX(50%);
}
}
}
.tile-bottom {
background: @discord-bg-dark;
border: none;
padding: 1em 1.75em;
p {
color: @white;
font-weight: bold;
font-size: .9em;
text-align: center;
text-transform: uppercase;
letter-spacing: .03em;
margin: 0;
}
}
.partner-icon {
margin-right: .75em;
}
.server-name {
color: @white;
font-weight: bold;
font-size: 1.25em;
margin: .5em 0 -0.15em;
}
.server-tagline {
color: @mp-text-light;
margin-bottom: .5em;
}
.arrow {
position: absolute;
top: ~"calc(50% - .5em)"; // center arrow on its point
right: 0;
height: 1em;
width: .7em;
background-size: .7em 1em;
transition: .3s ease-out;
}
}
/* --------------------
edit the wiki
-------------------- */
.mainpage-editing {
border: none;
box-shadow: @box-shadow-dark;
.tile-top {
background: @steel-blue;
}
.tile-bottom {
background: saturate( darken( @steel-blue, 4% ), 4% );
border: none;
padding: .8rem 1.5rem .4rem;
}
h2,
a {
color: @white;
}
p {
color: @mp-text-light;
}
ul {
list-style-image: url('filepath://Transparent-chevron.svg');
}
}
/* ==========================
media queries
========================== */
@media only screen and (max-width: @width-breakpoint-desktop-wide) {
// switch to two rows of three tiles
.mainpage-contents {
grid-template-columns: repeat(3, 1fr)
}
}
@media only screen and (max-width: @width-breakpoint-desktop) {
// mainpage-left and -right on one column now
.mainpage-body {
grid-template-areas:
"event event event"
"update update update"
"content content content"
"left left left"
"right right right";
}
.mainpage-recent-updates {
grid-template-columns: repeat(2, 1fr);
.tile-halves {
// hide third recent update
&:last-child {
display: none;
}
// zoom on hover
&:hover .tile-top img {
transform: scale(1.04);
}
}
.tile-top {
height: 18vw;
min-height: 9em;
}
}
// hide other things
.mainpage-header .header-stats {
display: none;
}
// kill margin as it duplicates grid's gap
.mainpage-left > *:last-child,
.mainpage-right > *:last-child {
margin-bottom: 0;
}
.popular-pages ul {
grid-template-columns: repeat(2, 1fr);
}
}
@media only screen and (max-width: @width-breakpoint-tablet) {
.mainpage-recent-updates {
// resulting in single column
grid-template-columns: none;
// revert display:none
.tile-halves:last-child {
display: flex;
}
}
// switch to three rows of two tiles
.mainpage-contents {
grid-template-columns: repeat(2, 1fr);
}
}
0c0ce2919232b746fd9257bcb20049eb90e7c088
Template:Main Page/Header
10
45
63
2024-03-22T03:02:27Z
Jayden
3
Created page with "<div class="mainpage-header"> <div class="header-intro"> <h1>Welcome to the Brighter Shores Wiki</h1> <p>We are the wiki for ''[[Brighter Shores]]'', an upcoming fantasy MMORPG developed by Andrew Gower, and we're the most complete source of information about monsters, locations, items, professions, and more.</p> </div> <div class="header-stats plainlist nomobile"> <ul> <li>Number of articles: '''{{NUMBEROFARTICLES}}'''</li..."
wikitext
text/x-wiki
<div class="mainpage-header">
<div class="header-intro">
<h1>Welcome to the Brighter Shores Wiki</h1>
<p>We are the wiki for ''[[Brighter Shores]]'', an upcoming fantasy MMORPG developed by Andrew Gower, and we're the most complete source of information about monsters, locations, items, professions, and more.</p>
</div>
<div class="header-stats plainlist nomobile">
<ul>
<li>Number of articles: '''{{NUMBEROFARTICLES}}'''</li>
<li>Number of files: '''{{NUMBEROFFILES}}'''</li>
<li>Number of active users: '''{{NUMBEROFACTIVEUSERS}}'''</li>
<li>Number of edits: '''{{NUMBEROFEDITS}}'''</li>
</ul>
</div>
</div>
2faf0b81858058001a12cb266366d9f3bf3bf5d0
64
63
2024-03-22T03:02:36Z
Jayden
3
Protected "[[Main Page/Header]]": High traffic page ([Edit=Allow only administrators] (indefinite) [Move=Allow only administrators] (indefinite))
wikitext
text/x-wiki
<div class="mainpage-header">
<div class="header-intro">
<h1>Welcome to the Brighter Shores Wiki</h1>
<p>We are the wiki for ''[[Brighter Shores]]'', an upcoming fantasy MMORPG developed by Andrew Gower, and we're the most complete source of information about monsters, locations, items, professions, and more.</p>
</div>
<div class="header-stats plainlist nomobile">
<ul>
<li>Number of articles: '''{{NUMBEROFARTICLES}}'''</li>
<li>Number of files: '''{{NUMBEROFFILES}}'''</li>
<li>Number of active users: '''{{NUMBEROFACTIVEUSERS}}'''</li>
<li>Number of edits: '''{{NUMBEROFEDITS}}'''</li>
</ul>
</div>
</div>
2faf0b81858058001a12cb266366d9f3bf3bf5d0
66
64
2024-03-22T03:03:28Z
Jayden
3
Jayden moved page [[Main Page/Header]] to [[Template:Main Page/Header]] without leaving a redirect
wikitext
text/x-wiki
<div class="mainpage-header">
<div class="header-intro">
<h1>Welcome to the Brighter Shores Wiki</h1>
<p>We are the wiki for ''[[Brighter Shores]]'', an upcoming fantasy MMORPG developed by Andrew Gower, and we're the most complete source of information about monsters, locations, items, professions, and more.</p>
</div>
<div class="header-stats plainlist nomobile">
<ul>
<li>Number of articles: '''{{NUMBEROFARTICLES}}'''</li>
<li>Number of files: '''{{NUMBEROFFILES}}'''</li>
<li>Number of active users: '''{{NUMBEROFACTIVEUSERS}}'''</li>
<li>Number of edits: '''{{NUMBEROFEDITS}}'''</li>
</ul>
</div>
</div>
2faf0b81858058001a12cb266366d9f3bf3bf5d0
95
66
2024-03-22T03:49:28Z
Jayden
3
wikitext
text/x-wiki
<div class="mainpage-header">
<div class="header-intro">
<h1>Welcome to the Brighter Shores Wiki</h1>
<p>We are the wiki for ''[[Brighter Shores]]'', an upcoming medieval MMORPG developed by [[Andrew Gower]], and the most complete source of information about monsters, locations, items, professions, and more.</p>
</div>
<div class="header-stats plainlist nomobile">
<ul>
<li>Number of articles: '''{{NUMBEROFARTICLES}}'''</li>
<li>Number of files: '''{{NUMBEROFFILES}}'''</li>
<li>Number of active users: '''{{NUMBEROFACTIVEUSERS}}'''</li>
<li>Number of edits: '''{{NUMBEROFEDITS}}'''</li>
</ul>
</div>
</div>
6af2b0eafd33b83f4d8e1a42cae93b2e8b75437c
Main Page
0
4
65
6
2024-03-22T03:02:44Z
Jayden
3
Protected "[[Main Page]]": High traffic page ([Edit=Allow only administrators] (indefinite) [Move=Allow only administrators] (indefinite))
wikitext
text/x-wiki
da39a3ee5e6b4b0d3255bfef95601890afd80709
67
65
2024-03-22T03:03:37Z
Jayden
3
wikitext
text/x-wiki
{{Main Page/Header}}
4d467e42830bc3ea8bc210f3af534be381cb4fd0
70
67
2024-03-22T03:09:48Z
Jayden
3
wikitext
text/x-wiki
{{Main Page/Header}}
<div class="mainpage-body">
{{Main Page/Contents}}
</div>
3213b8f19667668f44deaee09f344d2efc026e1c
Template:Main Page/Contents
10
46
68
2024-03-22T03:09:00Z
Jayden
3
Created page with "<noinclude>{{/doc}}</noinclude>__NOTOC__<div class="mainpage-contents tile-row"> <div class="contents-equipment tile-halves"> <div class="tile-top tile-image">[[File:Professions.png|link=Professions]]</div> <div class="tile-bottom link-button"><h2>[[Professions]]</h2></div> </div> <div class="contents-guides tile-halves"> <div class="tile-top tile-image">[[File:Monsters.png|link=Monsters]]</div> <div class="tile-bottom link-but..."
wikitext
text/x-wiki
<noinclude>{{/doc}}</noinclude>__NOTOC__<div class="mainpage-contents tile-row">
<div class="contents-equipment tile-halves">
<div class="tile-top tile-image">[[File:Professions.png|link=Professions]]</div>
<div class="tile-bottom link-button"><h2>[[Professions]]</h2></div>
</div>
<div class="contents-guides tile-halves">
<div class="tile-top tile-image">[[File:Monsters.png|link=Monsters]]</div>
<div class="tile-bottom link-button"><h2>[[Monsters]]</h2></div>
</div>
<div class="contents-quests tile-halves">
<div class="tile-top tile-image">[[File:Equipment.png|link=Equipment]]</div>
<div class="tile-bottom link-button"><h2>[[Equipment]]</h2></div>
</div>
<div class="contents-bestiary tile-halves">
<div class="tile-top tile-image">[[File:Locations.png|link=Locations]]</div>
<div class="tile-bottom link-button"><h2>[[Locations]]</h2></div>
</div>
</div>
e10a177816a4508f50196a589e34452dfa38f184
69
68
2024-03-22T03:09:06Z
Jayden
3
Protected "[[Template:Main Page/Contents]]": High traffic page ([Edit=Allow only administrators] (indefinite))
wikitext
text/x-wiki
<noinclude>{{/doc}}</noinclude>__NOTOC__<div class="mainpage-contents tile-row">
<div class="contents-equipment tile-halves">
<div class="tile-top tile-image">[[File:Professions.png|link=Professions]]</div>
<div class="tile-bottom link-button"><h2>[[Professions]]</h2></div>
</div>
<div class="contents-guides tile-halves">
<div class="tile-top tile-image">[[File:Monsters.png|link=Monsters]]</div>
<div class="tile-bottom link-button"><h2>[[Monsters]]</h2></div>
</div>
<div class="contents-quests tile-halves">
<div class="tile-top tile-image">[[File:Equipment.png|link=Equipment]]</div>
<div class="tile-bottom link-button"><h2>[[Equipment]]</h2></div>
</div>
<div class="contents-bestiary tile-halves">
<div class="tile-top tile-image">[[File:Locations.png|link=Locations]]</div>
<div class="tile-bottom link-button"><h2>[[Locations]]</h2></div>
</div>
</div>
e10a177816a4508f50196a589e34452dfa38f184
77
69
2024-03-22T03:15:08Z
Jayden
3
wikitext
text/x-wiki
<noinclude>{{/doc}}</noinclude>__NOTOC__<div class="mainpage-contents tile-row">
<div class="contents-equipment tile-halves">
<div class="tile-top tile-image">[[File:Professions.jpg|link=Professions]]</div>
<div class="tile-bottom link-button"><h2>[[Professions]]</h2></div>
</div>
<div class="contents-quests tile-halves">
<div class="tile-top tile-image">[[File:Equipment.jpg|link=Equipment]]</div>
<div class="tile-bottom link-button"><h2>[[Equipment]]</h2></div>
</div>
<div class="contents-bestiary tile-halves">
<div class="tile-top tile-image">[[File:Locations.jpg|link=Locations]]</div>
<div class="tile-bottom link-button"><h2>[[Locations]]</h2></div>
</div>
</div>
6c440ebc10192eb91978b7346d7bef25ace2feb2
85
77
2024-03-22T03:22:27Z
Jayden
3
wikitext
text/x-wiki
<noinclude>{{/doc}}</noinclude>__NOTOC__<div class="mainpage-contents tile-row">
<div class="contents-professions tile-halves">
<div class="tile-top tile-image">[[File:Professions.jpg|link=Professions]]</div>
<div class="tile-bottom link-button"><h2>[[Professions]]</h2></div>
</div>
<div class="contents-equipment tile-halves">
<div class="tile-top tile-image">[[File:Equipment.jpg|link=Equipment]]</div>
<div class="tile-bottom link-button"><h2>[[Equipment]]</h2></div>
</div>
<div class="contents-locations tile-halves">
<div class="tile-top tile-image">[[File:Locations.jpg|link=Locations]]</div>
<div class="tile-bottom link-button"><h2>[[Locations]]</h2></div>
</div>
<div class="contents-quests tile-halves">
<div class="tile-top tile-image">[[File:Professions.jpg|link=Quests]]</div>
<div class="tile-bottom link-button"><h2>[[Quests]]</h2></div>
</div>
<div class="contents-characters tile-halves">
<div class="tile-top tile-image">[[File:Equipment.jpg|link=Characters]]</div>
<div class="tile-bottom link-button"><h2>[[Characters]]</h2></div>
</div>
<div class="contents-calculators tile-halves">
<div class="tile-top tile-image">[[File:Locations.jpg|link=Calculators]]</div>
<div class="tile-bottom link-button"><h2>[[Calculators]]</h2></div>
</div>
</div>
512d1eaa315adeb9349a3619695a2192c38c6281
File:Locations.jpg
6
47
71
2024-03-22T03:12:46Z
Jayden
3
wikitext
text/x-wiki
da39a3ee5e6b4b0d3255bfef95601890afd80709
72
71
2024-03-22T03:12:52Z
Jayden
3
Protected "[[File:Locations.jpg]]": main page ([Edit=Allow only administrators] (indefinite) [Move=Allow only administrators] (indefinite) [Upload=Allow only administrators] (indefinite))
wikitext
text/x-wiki
da39a3ee5e6b4b0d3255bfef95601890afd80709
File:Equipment.jpg
6
48
73
2024-03-22T03:13:27Z
Jayden
3
wikitext
text/x-wiki
da39a3ee5e6b4b0d3255bfef95601890afd80709
74
73
2024-03-22T03:13:32Z
Jayden
3
Protected "[[File:Equipment.jpg]]": main page ([Edit=Allow only administrators] (indefinite) [Move=Allow only administrators] (indefinite) [Upload=Allow only administrators] (indefinite))
wikitext
text/x-wiki
da39a3ee5e6b4b0d3255bfef95601890afd80709
File:Professions.jpg
6
49
75
2024-03-22T03:14:28Z
Jayden
3
wikitext
text/x-wiki
da39a3ee5e6b4b0d3255bfef95601890afd80709
76
75
2024-03-22T03:14:34Z
Jayden
3
Protected "[[File:Professions.jpg]]": main page ([Edit=Allow only administrators] (indefinite) [Move=Allow only administrators] (indefinite) [Upload=Allow only administrators] (indefinite))
wikitext
text/x-wiki
da39a3ee5e6b4b0d3255bfef95601890afd80709
MediaWiki:Common.less/tiles.less
8
50
78
2024-03-22T03:17:06Z
Jayden
3
base cp from rsw
less
less
/* ---------------------
tiles
--------------------- */
// mainpage.less relies on this; check before changing anything
:root {
--byline-arrow-filter: invert(29%) sepia(0%) saturate(376%) hue-rotate(172deg) brightness(87%) contrast(80%); // match --byline-color
--tile-border-color: #cabe9b;
--tile-background-color: #f9f3eb;
--tile-link-button-color: #f5e9db;
--tile-link-button-highlight-color: saturate( darken( #e2d2ba, 2.5% ), 2% );
--tile-dark-color: @white;
--tile-dark-bg: @shuttle-gray;
--tile-dark-link-color: #ccc;
--tile-dark-byline-color: fade( @white, 70% );
--tile-dark-header-color: @white;
}
.tile {
background: var(--tile-background-color);
border: 1px solid var(--tile-border-color);
box-shadow: @box-shadow;
padding: 1.5em 2em 1em;
max-width: 40em;
h2 {
font-size: 1.4em;
font-weight: bold;
border: none;
margin: 0 0 .4em;
}
// reduce spacing when byline and heading appear together
// (which should be the only way bylines appear)
.byline + h2 {
margin-top: -0.5em;
}
&.dark {
color: var(--tile-dark-color);
background: var(--tile-dark-bg);
border: none;
box-shadow: @box-shadow-dark;
h2 {
color: var(--tile-dark-header-color);
}
a {
color: var(--tile-dark-link-color);
}
.byline {
color: var(--tile-dark-byline-color);
}
}
}
.byline {
font-size: .9em;
color: var(--byline-color);
a {
color: var(--byline-color);
}
}
/* ---------------------
tile halves
--------------------- */
// contains .tile or .tile-halves
.tile-row {
display: flex;
flex-flow: row wrap;
margin-bottom: 1em;
}
.tile-halves {
display: flex;
flex-flow: row wrap;
border: 1px solid var(--tile-border-color);
background: var(--tile-background-color);
box-shadow: @box-shadow;
h2 {
font-size: 1.4em;
font-weight: bold;
border: none;
margin: 0 0 .4em;
}
.byline + h2 {
margin-top: -0.5em;
}
}
// goes inside .tile-halves
.tile-top {
width: 100%;
padding: 1.3rem 1.5rem .6rem;
&.tile-image {
display: flex;
align-items: center; // vertically center images
background-color: var(--byline-color);
overflow: hidden;
padding: 0;
height: 13vw;
max-height: 12em;
transition: .4s ease-out;
.tile-halves:hover & img {
transform: scale(1.1);
transition: .5s ease-out;
}
a {
width: 100%;
}
img {
width: 100%;
object-fit: cover;
max-height: 200px;
transition: .4s ease-out;
}
}
}
// goes inside .tile-halves
.tile-bottom {
background: var(--tile-background-color);
border-top: 1px solid var(--tile-border-color);
width: 100%;
padding: 1rem 1.5rem .6rem;
&.link-button {
align-self: flex-end; // have link stick to the bottom
padding: 0;
a {
display: block;
text-align: center;
padding: .75em 1.5em .8em;
text-decoration: none;
}
}
// must be used in conjunction with .link-button
&.read-more {
background: var(--tile-link-button-color);
transition: .3s ease-out;
a {
color: var(--byline-color);
font-weight: bold;
text-align: right;
}
&:hover {
background: var(--tile-link-button-highlight-color);
.arrow {
transform: translateX(50%);
}
}
.arrow {
filter: var(--byline-arrow-filter);
margin-left: .4em;
transition: .3s ease-out;
}
}
}
8c5849d38a2c54734227c9e3a82b4f22d41a17e9
Brighter Shores
0
51
88
2024-03-22T03:27:49Z
Jayden
3
Created page with "'''''Brighter Shores''''' is an upcoming game developed by [[Fen Research]] and designed by [[Andrew Gower]]. It will be released in Q3 2024. [[Category:Games]] [[Category:Fen Research]]"
wikitext
text/x-wiki
'''''Brighter Shores''''' is an upcoming game developed by [[Fen Research]] and designed by [[Andrew Gower]]. It will be released in Q3 2024.
[[Category:Games]]
[[Category:Fen Research]]
1c9cb74f6a123ea3457f283a7e5078ce34137c48
File:Wiki@2x.png
6
52
91
2024-03-22T03:46:09Z
Jayden
3
wikitext
text/x-wiki
da39a3ee5e6b4b0d3255bfef95601890afd80709
92
91
2024-03-22T03:46:15Z
Jayden
3
Protected "[[File:Wiki@2x.png]]" ([Edit=Allow only administrators] (indefinite) [Move=Allow only administrators] (indefinite) [Upload=Allow only administrators] (indefinite))
wikitext
text/x-wiki
da39a3ee5e6b4b0d3255bfef95601890afd80709
File:Wiki.png
6
53
93
2024-03-22T03:47:17Z
Jayden
3
wikitext
text/x-wiki
da39a3ee5e6b4b0d3255bfef95601890afd80709
94
93
2024-03-22T03:47:21Z
Jayden
3
Protected "[[File:Wiki.png]]" ([Edit=Allow only administrators] (indefinite) [Move=Allow only administrators] (indefinite) [Upload=Allow only administrators] (indefinite))
wikitext
text/x-wiki
da39a3ee5e6b4b0d3255bfef95601890afd80709
Andrew Gower
0
54
96
2024-03-22T03:52:26Z
Jayden
3
Created page with "'''Andrew Gower''' is the founder of [[Fen Research]], and the designer of the game [[Brighter Shores]]. Before working on Brighter Shores, he was most known for the popular [[Wikipedia:Massively multiplayer online role-playing game|MMORPG]] [[Wikipedia:RuneScape|RuneScape]], which he created while studying at the [[Wikipedia:University of Cambridge|University of Cambridge]]."
wikitext
text/x-wiki
'''Andrew Gower''' is the founder of [[Fen Research]], and the designer of the game [[Brighter Shores]]. Before working on Brighter Shores, he was most known for the popular [[Wikipedia:Massively multiplayer online role-playing game|MMORPG]] [[Wikipedia:RuneScape|RuneScape]], which he created while studying at the [[Wikipedia:University of Cambridge|University of Cambridge]].
3ef0a4413a4f6ab43693c97e9c9f634b88c404c6
Fen Research
0
55
97
2024-03-22T03:54:14Z
Jayden
3
Created page with "'''Fen Research''' is a game development studio based in [[Wikipedia:Cambridge|Cambridge]], UK. Founded by [[Andrew Gower]], it is currently actively developing the game [[Brighter Shores]]."
wikitext
text/x-wiki
'''Fen Research''' is a game development studio based in [[Wikipedia:Cambridge|Cambridge]], UK. Founded by [[Andrew Gower]], it is currently actively developing the game [[Brighter Shores]].
feb599ee09de43aa96e3af1791f72dea13dad255
Professions
0
56
98
2024-03-22T04:01:59Z
Jayden
3
Created page with "'''Professions''' are skills that [[player]]s can train and utilise in [[Brighter Shores]]. ==List of professions== {| class="wikitable" ! Name !! Uses |- | [[Fisher]] || Catching various [[fish]] |- | [[Forager]] || Gathering items |- | [[Chef]] || Cooking [[food]] items |- | [[Woodcutter]] || Chopping down [[tree]]s |- | [[Miner]] || Mining [[mineral]]s |- | [[Alchemist]] || |- | [[Stonemason]] || |- | [[Merchant]] || |- | [[Blacksmith]] || |}"
wikitext
text/x-wiki
'''Professions''' are skills that [[player]]s can train and utilise in [[Brighter Shores]].
==List of professions==
{| class="wikitable"
! Name !! Uses
|-
| [[Fisher]] || Catching various [[fish]]
|-
| [[Forager]] || Gathering items
|-
| [[Chef]] || Cooking [[food]] items
|-
| [[Woodcutter]] || Chopping down [[tree]]s
|-
| [[Miner]] || Mining [[mineral]]s
|-
| [[Alchemist]] ||
|-
| [[Stonemason]] ||
|-
| [[Merchant]] ||
|-
| [[Blacksmith]] ||
|}
5f3a40ae4cf4be8c7587716fb8c6e60fa4ab4155
MediaWiki:Sidebar
8
57
99
2024-03-22T04:05:10Z
Jayden
3
Created page with " * navigation ** mainpage|mainpage-description ** recentchanges-url|recentchanges ** randompage-url|randompage * Guides ** Professions ** Equipment ** Locations ** Quests * SEARCH * TOOLBOX * LANGUAGES"
wikitext
text/x-wiki
* navigation
** mainpage|mainpage-description
** recentchanges-url|recentchanges
** randompage-url|randompage
* Guides
** Professions
** Equipment
** Locations
** Quests
* SEARCH
* TOOLBOX
* LANGUAGES
fd49a968b7bd5d710b34d75ad2bd4c546e006490
File:Wiki background.jpg
6
14
103
23
2024-03-22T04:14:03Z
Jayden
3
Jayden uploaded a new version of [[File:Wiki background.jpg]]
wikitext
text/x-wiki
da39a3ee5e6b4b0d3255bfef95601890afd80709
110
103
2024-03-22T04:30:15Z
Jayden
3
Jayden uploaded a new version of [[File:Wiki background.jpg]]
wikitext
text/x-wiki
da39a3ee5e6b4b0d3255bfef95601890afd80709
MediaWiki:Vector.less/vectortabs.less
8
36
104
47
2024-03-22T04:19:06Z
Jayden
3
less
less
:root {
// for more granular control for dark mode
--vector-tab-background: #f0f0f0;
--vector-tab-background--hover: var(--body-mid);
--vector-tab-link-color: var(--background-link-color);
// uses --background-link-color (#52351e)
--watch-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16'%3E%3Cpath fill='transparent' stroke='%2352351e' stroke-width='.8' d='m8.1 1.1 2.2 4.5 4.8.7-3.5 3.4.9 4.8L8 12.2l-4.3 2.3.8-4.8L1 6.3l4.8-.7z'/%3E%3C/svg%3E");
--unwatch-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16'%3E%3Cpath fill='%2352351e' stroke='%2352351e' stroke-width='.8' d='m8.1 1.1 2.2 4.5 4.8.7-3.5 3.4.9 4.8L8 12.2l-4.3 2.3.8-4.8L1 6.3l4.8-.7z'/%3E%3C/svg%3E");
}
.vector-menu-tabs-legacy {
// Part of the css required to fix external link heights regardless of font size
//.vector-menu-content {
// height: 100%; still needed?
//}
// pixel padding for border
padding: 0;
// redlink in tab
.new {
a,
a:visited {
color: var(--redlink-color);
}
}
// selected tab
.selected {
background: var(--body-main);
a,
a:visited {
color: var(--text-color);
}
}
// padding for tabs
li a {
color: var(--vector-tab-link-color);
padding: 0 .75em;
padding-top: 1em;
&:visited {
color: var(--vector-tab-link-color);
}
}
// background for tabs
ul {
li {
background: var(--vector-tab-background);
}
a:hover {
text-decoration: none;
}
}
}
// hide "Read" tab
#ca-view {
display: none !important; // for beating the inline style in lower widths
}
// Tabs hover
.vector-menu-tabs ul li:not(.selected):hover,
// "More options" dropdown
#p-cactions:hover #p-cactions-label {
background: var(--vector-tab-background--hover);
}
// inner shadow for tabs
.vector-menu-tabs ul li:not(.selected),
#mw-head .vector-menu-dropdown .vector-menu-heading {
box-shadow: inset 0 -7px 7px -7px rgba(0, 0, 0, 0.15);
}
// remove image borders between all tabs
.vector-menu-tabs,
.vector-menu-tabs a,
#mw-head .vector-menu-dropdown .vector-menu-heading {
background-image: none;
}
// remove remaining blue border in VisualEditor
.ve-activated .vector-menu-tabs .selected {
box-shadow: none;
}
// Watch icon
.vector-menu-tabs {
#ca-watch.icon a {
&:before,
&:hover:before,
&:focus:before {
background-image: var(--watch-icon);
}
}
#ca-unwatch.icon a {
&:before,
&:hover:before,
&:focus:before {
background-image: var(--unwatch-icon);
}
}
}
742c3295ece3a7910ee3941a1115d3c106617ede
106
104
2024-03-22T04:20:31Z
Jayden
3
less
less
:root {
// for more granular control for dark mode
--vector-tab-background: #f0f0f0;
--vector-tab-background--hover: var(--body-mid);
--vector-tab-link-color: #937040;
// uses --background-link-color (#52351e)
--watch-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16'%3E%3Cpath fill='transparent' stroke='%2352351e' stroke-width='.8' d='m8.1 1.1 2.2 4.5 4.8.7-3.5 3.4.9 4.8L8 12.2l-4.3 2.3.8-4.8L1 6.3l4.8-.7z'/%3E%3C/svg%3E");
--unwatch-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16'%3E%3Cpath fill='%2352351e' stroke='%2352351e' stroke-width='.8' d='m8.1 1.1 2.2 4.5 4.8.7-3.5 3.4.9 4.8L8 12.2l-4.3 2.3.8-4.8L1 6.3l4.8-.7z'/%3E%3C/svg%3E");
}
.vector-menu-tabs-legacy {
// Part of the css required to fix external link heights regardless of font size
//.vector-menu-content {
// height: 100%; still needed?
//}
// pixel padding for border
padding: 0;
// redlink in tab
.new {
a,
a:visited {
color: var(--redlink-color);
}
}
// selected tab
.selected {
background: var(--body-main);
a,
a:visited {
color: var(--text-color);
}
}
// padding for tabs
li a {
color: var(--vector-tab-link-color);
padding: 0 .75em;
padding-top: 1em;
&:visited {
color: var(--vector-tab-link-color);
}
}
// background for tabs
ul {
li {
background: var(--vector-tab-background);
}
a:hover {
text-decoration: none;
}
}
}
// hide "Read" tab
#ca-view {
display: none !important; // for beating the inline style in lower widths
}
// Tabs hover
.vector-menu-tabs ul li:not(.selected):hover,
// "More options" dropdown
#p-cactions:hover #p-cactions-label {
background: var(--vector-tab-background--hover);
}
// inner shadow for tabs
.vector-menu-tabs ul li:not(.selected),
#mw-head .vector-menu-dropdown .vector-menu-heading {
box-shadow: inset 0 -7px 7px -7px rgba(0, 0, 0, 0.15);
}
// remove image borders between all tabs
.vector-menu-tabs,
.vector-menu-tabs a,
#mw-head .vector-menu-dropdown .vector-menu-heading {
background-image: none;
}
// remove remaining blue border in VisualEditor
.ve-activated .vector-menu-tabs .selected {
box-shadow: none;
}
// Watch icon
.vector-menu-tabs {
#ca-watch.icon a {
&:before,
&:hover:before,
&:focus:before {
background-image: var(--watch-icon);
}
}
#ca-unwatch.icon a {
&:before,
&:hover:before,
&:focus:before {
background-image: var(--unwatch-icon);
}
}
}
bf9b6b0a2dafee92b23836ba07faffcabdfc99e9
MediaWiki:Vector.css
8
43
105
55
2024-03-22T04:19:11Z
Jayden
3
Updating CSS from [[MediaWiki:Vector.less]]
css
text/css
/* <pre> */
:root {
--ul-list-style-image: url("data:image/svg+xml,%3C%3Fxml version='1.0' encoding='UTF-8'%3F%3E%3Csvg xmlns='http://www.w3.org/2000/svg' width='5' height='13'%3E%3Ccircle cx='2.5' cy='9' r='2.5' fill='%23000'/%3E%3C/svg%3E");
}
html {
-webkit-text-size-adjust: 100%;
}
body {
background: var(--body-background-image) var(--body-background-color) top left / 1500px 375px no-repeat;
font-family: 'Helvetica Neue', 'Arial', sans-serif;
}
.vector-body {
font-size: 0.9em;
}
#firstHeading {
font-weight: bold;
}
pre,
code,
.mw-code {
color: inherit;
background-color: var(--mw-code-background-color);
border: 1px solid var(--body-border);
}
dl {
margin: 0;
}
ul {
list-style-image: var(--ul-list-style-image);
}
hr {
background: none;
border-color: var(--sidebar);
border-style: solid;
border-width: 1px 0 0 0;
height: initial;
}
fieldset {
border-color: var(--sidebar);
}
.vector-body blockquote {
border-color: var(--body-mid);
}
:root {
--personal-links-bg: var(--body-main);
--arrow-down: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath d='M11.05 3.996l-.965-1.053-4.035 3.86-3.947-3.86L1.05 3.996l5 5 5-5' fill='%23444'/%3E%3C/svg%3E");
}
.vector-menu-dropdown .vector-menu-heading {
background-color: var(--vector-tab-background);
padding: 1em 0.75em 0.6923em;
margin: 0;
}
.vector-menu-dropdown .vector-menu-heading,
.vector-menu-dropdown .vector-menu-heading:hover,
.vector-menu-dropdown .vector-menu-heading:focus {
color: var(--background-text-color);
}
.vector-menu-dropdown .vector-menu-heading:after {
background-image: var(--arrow-down);
opacity: 1;
}
.vector-menu-dropdown .vector-menu-content {
border-color: transparent;
background-color: var(--body-light);
box-shadow: 0 2px 3px 0 rgba(0, 0, 0, 0.1);
left: 0;
}
.vector-menu-dropdown .mw-list-item a {
color: var(--link-color);
}
.vector-menu-dropdown .mw-list-item.selected a,
.vector-menu-dropdown .mw-list-item.selected a:visited {
color: var(--text-color);
}
#p-personal {
background: var(--personal-links-bg);
top: 0;
right: 0;
border-radius: 0 0 0 4px;
height: 1.875em;
}
#p-personal ul {
padding: 0 1em 0 0.4375em;
}
.vector-search-box-inner {
background: var(--search-box);
height: 2.5em;
margin-top: 0;
box-shadow: inset 0 -7px 7px -7px rgba(0, 0, 0, 0.15);
}
.vector-search-box-input {
color: var(--text-color);
height: 100%;
border: none;
background: none;
padding-left: 0.75em;
}
.vector-search-box-input::placeholder {
color: var(--text-color);
opacity: 0.67;
}
.vector-search-box-inner:hover .vector-search-box-input,
.vector-search-box-input:focus,
.vector-search-box-inner:hover .vector-search-box-input:focus {
border: none;
box-shadow: none;
}
:root {
--searchbutton-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='13'%3E%3Cg fill='none' stroke='%23000' stroke-width='2'%3E%3Cpath d='M11.29 11.71l-4-4'/%3E%3Ccircle cx='5' cy='5' r='4'/%3E%3C/g%3E%3C/svg%3E");
}
.searchButton[name='go'] {
background: no-repeat center var(--searchbutton-icon);
}
.vector-search-box {
margin: 0;
}
.vector-search-box form {
margin-top: 0;
}
.suggestions-results {
background-color: var(--body-light);
border-color: var(--body-border);
}
.suggestions-result {
color: var(--text-color);
}
.suggestions a.mw-searchSuggest-link,
.suggestions a.mw-searchSuggest-link:hover,
.suggestions a.mw-searchSuggest-link:active,
.suggestions a.mw-searchSuggest-link:focus {
color: var(--text-color);
}
.suggestions-special {
background-color: var(--body-light);
border-color: var(--body-border);
}
.suggestions-special .special-label {
color: var(--byline-color);
}
.suggestions-special .special-query {
color: var(--text-color);
}
.suggestions-result-current {
background-color: var(--body-mid);
color: var(--text-color);
}
.suggestions-result-current .special-label,
.suggestions-result-current .special-query {
color: var(--text-color);
}
#mw-panel {
padding-top: 2.5em;
}
.vector-menu-portal .vector-menu-heading {
color: var(--background-text-color);
font-weight: bold;
background: none;
}
.vector-menu-portal .vector-menu-content li a,
.vector-menu-portal .vector-menu-content li a:visited {
color: var(--background-link-color);
}
#p-logo {
filter: drop-shadow(0 2px 5px rgba(0, 0, 0, 0.25));
margin: -1.5em 0 0;
}
#n-Discord a {
color: #fff !important;
font-weight: bold;
border-radius: 4px;
border: 1px solid #4c57d0;
background-color: #5865f2;
display: block;
position: relative;
padding: 4px 4px 5px calc(17px + 6.5px * 2);
box-shadow: 0 2px 3px rgba(0, 0, 0, 0.1);
transition: 0.2s;
}
#n-Discord a::before {
content: 'Chat on ';
font-weight: normal;
opacity: 0.85;
}
#n-Discord a::after {
content: '';
background: url('filepath://Discord_logo_icon.svg') no-repeat;
background-size: 17px 13px;
filter: drop-shadow(0 1px 1px rgba(0, 0, 0, 0.1));
position: absolute;
top: 5px;
left: 7px;
width: 17px;
height: 13px;
}
#n-Discord a:hover {
text-decoration: none;
background-color: #525ee0;
}
.wgl-theme-dark #n-Discord a {
background-color: #525ee0;
}
.wgl-theme-dark #n-Discord a:hover {
background-color: #4c57d0;
}
:root {
--vector-tab-background: #f0f0f0;
--vector-tab-background--hover: var(--body-mid);
--vector-tab-link-color: var(--background-link-color);
--watch-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16'%3E%3Cpath fill='transparent' stroke='%2352351e' stroke-width='.8' d='m8.1 1.1 2.2 4.5 4.8.7-3.5 3.4.9 4.8L8 12.2l-4.3 2.3.8-4.8L1 6.3l4.8-.7z'/%3E%3C/svg%3E");
--unwatch-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16'%3E%3Cpath fill='%2352351e' stroke='%2352351e' stroke-width='.8' d='m8.1 1.1 2.2 4.5 4.8.7-3.5 3.4.9 4.8L8 12.2l-4.3 2.3.8-4.8L1 6.3l4.8-.7z'/%3E%3C/svg%3E");
}
.vector-menu-tabs-legacy {
padding: 0;
}
.vector-menu-tabs-legacy .new a,
.vector-menu-tabs-legacy .new a:visited {
color: var(--redlink-color);
}
.vector-menu-tabs-legacy .selected {
background: var(--body-main);
}
.vector-menu-tabs-legacy .selected a,
.vector-menu-tabs-legacy .selected a:visited {
color: var(--text-color);
}
.vector-menu-tabs-legacy li a {
color: var(--vector-tab-link-color);
padding: 0 0.75em;
padding-top: 1em;
}
.vector-menu-tabs-legacy li a:visited {
color: var(--vector-tab-link-color);
}
.vector-menu-tabs-legacy ul li {
background: var(--vector-tab-background);
}
.vector-menu-tabs-legacy ul a:hover {
text-decoration: none;
}
#ca-view {
display: none !important;
}
.vector-menu-tabs ul li:not(.selected):hover,
#p-cactions:hover #p-cactions-label {
background: var(--vector-tab-background--hover);
}
.vector-menu-tabs ul li:not(.selected),
#mw-head .vector-menu-dropdown .vector-menu-heading {
box-shadow: inset 0 -7px 7px -7px rgba(0, 0, 0, 0.15);
}
.vector-menu-tabs,
.vector-menu-tabs a,
#mw-head .vector-menu-dropdown .vector-menu-heading {
background-image: none;
}
.ve-activated .vector-menu-tabs .selected {
box-shadow: none;
}
.vector-menu-tabs #ca-watch.icon a:before,
.vector-menu-tabs #ca-watch.icon a:hover:before,
.vector-menu-tabs #ca-watch.icon a:focus:before {
background-image: var(--watch-icon);
}
.vector-menu-tabs #ca-unwatch.icon a:before,
.vector-menu-tabs #ca-unwatch.icon a:hover:before,
.vector-menu-tabs #ca-unwatch.icon a:focus:before {
background-image: var(--unwatch-icon);
}
div.thumbinner {
border: none;
background-color: var(--thumb-bg);
padding: 0;
}
.thumbimage {
background-color: transparent;
border-color: transparent;
border-bottom: none;
}
.thumbcaption {
background: var(--thumb-caption-bg);
padding: 4px 6px;
}
:root {
--toc-bg: var(--body-light);
--toc-title-bg: var(--body-dark);
--toc-border-color: var(--body-border);
--toc-list-border-color: var(--body-border);
}
.toc {
font-size: 0.9em;
background: var(--toc-bg);
margin-top: 1em;
padding: 0;
border-color: var(--toc-border-color);
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
clear: left;
}
.toc .toctitle {
background: var(--toc-title-bg);
padding: 0.25em 1em;
}
.toc .toctitle h2 {
font-family: inherit;
}
.toc > ul {
line-height: 1.8em;
padding: 0.75em 1.75em;
margin: 0;
}
.toc ul ul {
border-left: 1px dotted var(--toc-list-border-color);
padding-left: 0.5em;
}
.tocnumber {
display: none;
}
.toctogglespan {
padding-left: 0.2em;
font-size: 0.9em;
}
.toctogglelabel {
color: var(--link-color);
}
.toclimit-2 #toc .toclevel-2,
.toclimit-3 #toc .toclevel-3,
.toclimit-4 #toc .toclevel-4,
.toclimit-5 #toc .toclevel-5,
.toclimit-6 #toc .toclevel-6,
.toclimit-7 #toc .toclevel-7 {
display: none;
}
:root {
--external-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath fill='%23936039' d='M6 1h5v5L8.86 3.85 4.7 8 4 7.3l4.15-4.16L6 1Z M2 3h2v1H2v6h6V8h1v2a1 1 0 0 1-1 1H2a1 1 0 0 1-1-1V4a1 1 0 0 1 1-1Z'/%3E%3C/svg%3E");
}
.mw-parser-output a.external {
background-image: var(--external-icon);
background-size: 0.833em;
}
.mw-editsection {
font-family: 'Helvetica Neue', 'Arial', sans-serif;
}
.client-js .mw-content-ltr .mw-editsection-bracket:first-of-type,
.client-js .mw-content-ltr .mw-editsection-bracket:not(:first-of-type),
.mw-editsection-divider {
color: var(--text-color);
}
#contentSub,
#contentSub2 {
color: var(--byline-color);
margin: 0;
}
#contentSub:not(:empty),
#contentSub2:not(:empty) {
margin: 0 0 1.4em 0;
}
.mw-collapsible.mw-collapsed {
min-width: 250px;
}
.mw-collapsible:not( .mw-made-collapsible) th::before,
.mw-collapsible .mw-collapsible-toggle {
font-weight: normal;
margin-left: 0.2em;
}
.wikiEditor-ui .wikiEditor-ui-view,
.wikiEditor-ui .wikiEditor-ui-top {
border-color: var(--sourceeditor-border);
}
.wikiEditor-ui-toolbar {
background-color: var(--sourceeditor-background);
}
.wikiEditor-ui-toolbar .tabs span.tab > a,
.wikiEditor-ui-toolbar .tabs span.tab > a:visited {
color: var(--link-color);
}
.wikiEditor-ui-toolbar .tabs span.tab a.current,
.wikiEditor-ui-toolbar .tabs span.tab a.current:visited {
color: var(--text-colour);
}
.wikiEditor-ui-toolbar .group {
border-color: var(--sourceeditor-border);
}
.wikiEditor-ui-toolbar .group .tool-select {
background-color: var(--sourceeditor-background);
border-color: var(--sourceeditor-border);
}
.wikiEditor-ui-toolbar .group .tool-select .options {
border-color: var(--sourceeditor-border);
background-color: var(--body-main);
}
.wikiEditor-ui-toolbar .group .tool-select .options .option {
color: var(--link-color);
}
.wikiEditor-ui-toolbar .group .tool-select .menu .options .option:hover {
background-color: var(--ooui-normal--hover);
}
.wikiEditor-ui-toolbar .group-search {
border-left-color: var(--body-mid);
}
.wikiEditor-ui-toolbar .page-table td {
border-color: var(--body-mid);
color: var(--text-color);
}
.wikiEditor-ui-toolbar .page-table th {
color: var(--text-color);
}
.wikiEditor-ui-toolbar .sections .section {
border-color: var(--body-mid);
}
.wikiEditor-ui-toolbar .sections .toolbar .group > .label {
color: var(--text-color);
}
.wikiEditor-ui-toolbar .sections .toolbar .tool > .label {
color: var(--text-color);
}
.wikiEditor-ui-toolbar .booklet > .index > :hover {
background-color: var(--body-mid);
color: var(--text-color);
}
.wikiEditor-ui-toolbar .booklet .index > .current {
background-color: var(--body-mid);
color: var(--link-color);
}
.wikiEditor-ui-toolbar .page-characters div span {
border-color: var(--body-mid);
color: var(--text-color);
}
.wikiEditor-ui-toolbar .page-characters div span:hover {
border-color: var(--body-dark);
background-color: transparent;
}
.wikiEditor-ui-toolbar .tabs span.tab a:before,
.wikiEditor-ui-toolbar .group .tool-select .label:after {
background: var(--text-color);
-webkit-mask: var(--arrow-down) center no-repeat;
mask: var(--arrow-down) center no-repeat;
}
.ace-tm {
background-color: var(--sourceeditor-input-background);
color: var(--text-color);
}
.ace-tm .ace_gutter {
background: var(--body-mid);
color: var(--text-color);
}
.ace-tm .ace_gutter-cell {
color: var(--text-color);
}
.ace-tm .ace_gutter-active-line {
background-color: var(--body-light);
}
.ace_search {
background-color: var(--body-light);
color: var(--text-color);
border-color: var(--body-mid);
}
.ace_search_field {
background-color: var(--ooui-input);
color: var(--ooui-text);
border-color: var(--ooui-input-border);
}
.ace_searchbtn {
border-color: var(--ooui-normal-border);
background-color: var(--ooui-normal);
color: var(--ooui-text);
}
.ace_searchbtn:last-child {
border-color: var(--ooui-normal-border);
}
.ace_searchbtn:hover {
background-color: var(--ooui-normal--hover);
}
.ace_searchbtn.prev:after,
.ace_searchbtn.next:after {
border-color: var(--ooui-text);
}
.ace_button {
color: var(--text-color);
}
.ace_button:hover {
background-color: rgba(0, 23, 70, 0.086);
}
.ace_button:active {
background-color: rgba(0, 23, 70, 0.06);
}
.ace_button.checked {
border-color: var(--ooui-accent);
}
.CodeMirror {
background: var(--sourceeditor-input-background);
}
.CodeMirror pre {
color: var(--text-color);
}
.codeEditor-status {
border-color: var(--sourceeditor-border);
background-color: var(--sourceeditor-background);
}
.codeEditor-status-message {
border-color: var(--sourceeditor-border);
}
.CodeMirror-gutters {
background-color: var(--codemirror-gutter-background);
border-color: var(--sourceeditor-border);
}
.CodeMirror-linenumber {
color: var(--text-color);
}
.ve-init-mw-desktopArticleTarget .CodeMirror-linenumber {
color: var(--byline-color);
}
.mw-editform #wpTextbox1 {
color: var(--text-color);
background: var(--sourceeditor-input-background);
border-color: var(--sourceeditor-border);
}
input[name="model"][value="Scribunto"] ~ .wikiEditor-ui #wpTextbox1,
input[name="model"][value="css"] ~ .wikiEditor-ui #wpTextbox1,
input[name="model"][value="less"] ~ .wikiEditor-ui #wpTextbox1,
input[name="model"][value="javascript"] ~ .wikiEditor-ui #wpTextbox1,
input[name="model"][value="json"] ~ .wikiEditor-ui #wpTextbox1 {
height: 600px;
}
.tdg-templateDataDialog-listParamsPanel textarea.oo-ui-textInputWidget-autosized {
resize: vertical;
}
#wpAceFilterEditor {
resize: horizontal;
}
.warn-userupload,
.ns-2 .upload-own-work {
display: none;
}
.ns-2 .warn-userupload {
display: inline;
}
textarea[name="wfUploadDescription"] {
height: 3em;
}
#editform {
margin-top: 1.25em;
}
#mw-scribunto-input,
#mw-scribunto-output {
padding: 3px;
font-family: monospace;
font-size: 13px;
line-height: 1.5em;
}
#mw-scribunto-input {
background-color: var(--ooui-input);
border-color: var(--ooui-input-border);
}
:root {
--scribuntoconsole-input: #0b5884;
--scibuntoconsole-print: #a48900;
--scribuntoconsole-error: #9f261e;
--scribuntoconsole-message: #3c780a;
--scribuntoconsole-tabcomplete: #4f348b;
--scribuntoconsole-clear: #9f261e;
}
.mw-scribunto-console-fieldset {
color: inherit;
background-color: var(--ooui-interface);
border-color: var(--ooui-interface-border);
}
.mw-scribunto-normalOutput,
.mw-scribunto-print,
.mw-scribunto-error,
.mw-scribunto-propList,
.mw-scribunto-message,
.mw-scribunto-tabcomplete {
background: none;
}
.mw-scribunto-input {
color: var(--scribuntoconsole-input);
}
.mw-scribunto-normalOutput {
color: inherit;
}
.mw-scribunto-print {
color: var(--scibuntoconsole-print);
}
.mw-scribunto-error {
color: var(--scribuntoconsole-error);
}
.mw-scribunto-propList,
.mw-scribunto-message {
color: var(--scribuntoconsole-message);
}
.mw-scribunto-tabcomplete {
color: var(--scribuntoconsole-tabcomplete);
}
.mw-scribunto-clear {
color: var(--scribuntoconsole-clear);
border-bottom-color: var(--scribuntoconsole-clear);
}
:root {
--echo-icon-moon-bg-image: url("data:image/svg+xml,%3C%3Fxml version='1.0' encoding='UTF-8'%3F%3E%3Csvg height='21' viewBox='0 0 21 21' width='21' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='m8.85464918.37900488c-1.91149353 1.51069427-3.13816124 3.84973402-3.13816124 6.47527736 0 4.55564936 3.69308349 8.24873286 8.24873286 8.24873286 2.5815709 0 4.8861545-1.1859235 6.3986798-3.0426994-.8206378 4.7389755-4.9523867 8.343122-9.9259291 8.343122-5.56375572 0-10.07407088-4.5103151-10.07407088-10.0740709 0-5.02506013 3.67919933-9.19079725 8.49074856-9.95036192z' fill='%234c4c4c'/%3E%3C/svg%3E");
--echo-icon-person-bg-image: url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 width=%2212%22 height=%2213.836%22 viewBox=%220 0 12 13.836%22%3E %3Cpath fill='%234c4c4c' d=%22M1.938%2C6.656c-1.32%2C1.485-1.47%2C3.15-0.97%2C4.25c0.323%2C0.707%2C0.78%2C1.127%2C1.313%2C1.375 c0.496%2C0.229%2C1.074%2C0.273%2C1.658%2C0.282c0.023%2C0%2C0.04%2C0.03%2C0.062%2C0.03h4.187c0.61%2C0%2C1.225-0.125%2C1.75-0.405 c0.527-0.28%2C0.961-0.718%2C1.188-1.376c0.335-0.964%2C0.175-2.529-1.094-4.03C9.094%2C7.954%2C7.68%2C8.719%2C6.065%2C8.719 c-1.677%2C0-3.182-0.812-4.125-2.063H1.938z%22/%3E %3Cpath fill='%234c4c4c' d=%22M6.063%2C0c-1.89%2C0-3.595%2C1.674-3.594%2C3.563C2.467%2C5.45%2C4.173%2C7.155%2C6.06%2C7.155 c1.89%2C0%2C3.564-1.705%2C3.563-3.593C9.625%2C1.673%2C7.95%2C0%2C6.063%2C0L6.063%2C0z%22/%3E %3C/svg%3E");
--echo-icon-bell-bg-image: url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 width=%2220%22 height=%2220%22 viewBox=%220 0 20 20%22%3E%3Ctitle%3Ebell%3C/title%3E%3Cpath d=%22M16 7a5.38 5.38 0 00-4.46-4.85C11.6 1.46 11.53 0 10 0S8.4 1.46 8.46 2.15A5.38 5.38 0 004 7v6l-2 2v1h16v-1l-2-2zm-6 13a3 3 0 003-3H7a3 3 0 003 3z%22 fill='%234c4c4c'/%3E%3C/svg%3E");
--echo-icon-tray-bg-image: url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 width=%2220%22 height=%2220%22 viewBox=%220 0 20 20%22%3E%3Ctitle%3Etray%3C/title%3E%3Cpath d=%22M3 1a2 2 0 00-2 2v14a2 2 0 002 2h14a2 2 0 002-2V3a2 2 0 00-2-2zm14 12h-4l-1 2H8l-1-2H3V3h14z%22 fill='%234c4c4c'/%3E%3C/svg%3E");
--echo-icon-fullscreen-bg-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 20 20'%3E%3Ctitle%3E fullscreen %3C/title%3E%3Cg fill='%234c4c4c'%3E%3Cpath d='M1 1v6h2V3h4V1zm2 12H1v6h6v-2H3zm14 4h-4v2h6v-6h-2zm0-16h-4v2h4v4h2V1z'/%3E%3C/g%3E%3Cscript xmlns=''/%3E%3C/svg%3E");
--echo-icon-exitFullscreen-bg-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 20 20'%3E%3Ctitle%3E exit fullscreen %3C/title%3E%3Cg fill='%234c4c4c'%3E%3Cpath d='M7 7V1H5v4H1v2zM5 19h2v-6H1v2h4zm10-4h4v-2h-6v6h2zm0-8h4V5h-4V1h-2v6z'/%3E%3C/g%3E%3Cscript xmlns=''/%3E%3C/svg%3E");
}
.vector-user-menu-legacy #pt-userpage a,
.vector-user-menu-legacy #pt-anonuserpage {
background-image: var(--echo-icon-person-bg-image);
padding-top: 0;
background-position-y: 0;
}
.vector-user-menu-legacy #pt-anonuserpage {
color: var(--byline-color);
}
#pt-notifications-alert .mw-echo-notifications-badge,
#pt-notifications-notice .mw-echo-notifications-badge {
background-size: 75%;
background-position: center 80%;
background-repeat: no-repeat;
opacity: unset;
}
#pt-notifications-alert .mw-echo-notifications-badge.mw-echo-notifications-badge-all-read,
#pt-notifications-notice .mw-echo-notifications-badge.mw-echo-notifications-badge-all-read {
opacity: unset;
}
#pt-notifications-alert .oo-ui-icon-bell {
background-image: var(--echo-icon-bell-bg-image);
}
#pt-notifications-notice .oo-ui-icon-tray {
background-image: var(--echo-icon-tray-bg-image);
}
#pt-fixed-width .oo-ui-icon-advanced {
background-image: var(--echo-icon-exitFullscreen-bg-image);
}
body.wgl-fixedWidth #pt-fixed-width .oo-ui-icon-advanced {
background-image: var(--echo-icon-fullscreen-bg-image);
}
#pt-theme-toggles .oo-ui-icon-advanced {
background-image: var(--echo-icon-moon-bg-image);
}
#pt-anontalk {
padding-top: 0.6em;
}
.tabber {
display: inline-grid;
}
a4623a2619a011280333fb2a38609fbc1612bacc
107
105
2024-03-22T04:20:34Z
Jayden
3
Updating CSS from [[MediaWiki:Vector.less]]
css
text/css
/* <pre> */
:root {
--ul-list-style-image: url("data:image/svg+xml,%3C%3Fxml version='1.0' encoding='UTF-8'%3F%3E%3Csvg xmlns='http://www.w3.org/2000/svg' width='5' height='13'%3E%3Ccircle cx='2.5' cy='9' r='2.5' fill='%23000'/%3E%3C/svg%3E");
}
html {
-webkit-text-size-adjust: 100%;
}
body {
background: var(--body-background-image) var(--body-background-color) top left / 1500px 375px no-repeat;
font-family: 'Helvetica Neue', 'Arial', sans-serif;
}
.vector-body {
font-size: 0.9em;
}
#firstHeading {
font-weight: bold;
}
pre,
code,
.mw-code {
color: inherit;
background-color: var(--mw-code-background-color);
border: 1px solid var(--body-border);
}
dl {
margin: 0;
}
ul {
list-style-image: var(--ul-list-style-image);
}
hr {
background: none;
border-color: var(--sidebar);
border-style: solid;
border-width: 1px 0 0 0;
height: initial;
}
fieldset {
border-color: var(--sidebar);
}
.vector-body blockquote {
border-color: var(--body-mid);
}
:root {
--personal-links-bg: var(--body-main);
--arrow-down: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath d='M11.05 3.996l-.965-1.053-4.035 3.86-3.947-3.86L1.05 3.996l5 5 5-5' fill='%23444'/%3E%3C/svg%3E");
}
.vector-menu-dropdown .vector-menu-heading {
background-color: var(--vector-tab-background);
padding: 1em 0.75em 0.6923em;
margin: 0;
}
.vector-menu-dropdown .vector-menu-heading,
.vector-menu-dropdown .vector-menu-heading:hover,
.vector-menu-dropdown .vector-menu-heading:focus {
color: var(--background-text-color);
}
.vector-menu-dropdown .vector-menu-heading:after {
background-image: var(--arrow-down);
opacity: 1;
}
.vector-menu-dropdown .vector-menu-content {
border-color: transparent;
background-color: var(--body-light);
box-shadow: 0 2px 3px 0 rgba(0, 0, 0, 0.1);
left: 0;
}
.vector-menu-dropdown .mw-list-item a {
color: var(--link-color);
}
.vector-menu-dropdown .mw-list-item.selected a,
.vector-menu-dropdown .mw-list-item.selected a:visited {
color: var(--text-color);
}
#p-personal {
background: var(--personal-links-bg);
top: 0;
right: 0;
border-radius: 0 0 0 4px;
height: 1.875em;
}
#p-personal ul {
padding: 0 1em 0 0.4375em;
}
.vector-search-box-inner {
background: var(--search-box);
height: 2.5em;
margin-top: 0;
box-shadow: inset 0 -7px 7px -7px rgba(0, 0, 0, 0.15);
}
.vector-search-box-input {
color: var(--text-color);
height: 100%;
border: none;
background: none;
padding-left: 0.75em;
}
.vector-search-box-input::placeholder {
color: var(--text-color);
opacity: 0.67;
}
.vector-search-box-inner:hover .vector-search-box-input,
.vector-search-box-input:focus,
.vector-search-box-inner:hover .vector-search-box-input:focus {
border: none;
box-shadow: none;
}
:root {
--searchbutton-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='13'%3E%3Cg fill='none' stroke='%23000' stroke-width='2'%3E%3Cpath d='M11.29 11.71l-4-4'/%3E%3Ccircle cx='5' cy='5' r='4'/%3E%3C/g%3E%3C/svg%3E");
}
.searchButton[name='go'] {
background: no-repeat center var(--searchbutton-icon);
}
.vector-search-box {
margin: 0;
}
.vector-search-box form {
margin-top: 0;
}
.suggestions-results {
background-color: var(--body-light);
border-color: var(--body-border);
}
.suggestions-result {
color: var(--text-color);
}
.suggestions a.mw-searchSuggest-link,
.suggestions a.mw-searchSuggest-link:hover,
.suggestions a.mw-searchSuggest-link:active,
.suggestions a.mw-searchSuggest-link:focus {
color: var(--text-color);
}
.suggestions-special {
background-color: var(--body-light);
border-color: var(--body-border);
}
.suggestions-special .special-label {
color: var(--byline-color);
}
.suggestions-special .special-query {
color: var(--text-color);
}
.suggestions-result-current {
background-color: var(--body-mid);
color: var(--text-color);
}
.suggestions-result-current .special-label,
.suggestions-result-current .special-query {
color: var(--text-color);
}
#mw-panel {
padding-top: 2.5em;
}
.vector-menu-portal .vector-menu-heading {
color: var(--background-text-color);
font-weight: bold;
background: none;
}
.vector-menu-portal .vector-menu-content li a,
.vector-menu-portal .vector-menu-content li a:visited {
color: var(--background-link-color);
}
#p-logo {
filter: drop-shadow(0 2px 5px rgba(0, 0, 0, 0.25));
margin: -1.5em 0 0;
}
#n-Discord a {
color: #fff !important;
font-weight: bold;
border-radius: 4px;
border: 1px solid #4c57d0;
background-color: #5865f2;
display: block;
position: relative;
padding: 4px 4px 5px calc(17px + 6.5px * 2);
box-shadow: 0 2px 3px rgba(0, 0, 0, 0.1);
transition: 0.2s;
}
#n-Discord a::before {
content: 'Chat on ';
font-weight: normal;
opacity: 0.85;
}
#n-Discord a::after {
content: '';
background: url('filepath://Discord_logo_icon.svg') no-repeat;
background-size: 17px 13px;
filter: drop-shadow(0 1px 1px rgba(0, 0, 0, 0.1));
position: absolute;
top: 5px;
left: 7px;
width: 17px;
height: 13px;
}
#n-Discord a:hover {
text-decoration: none;
background-color: #525ee0;
}
.wgl-theme-dark #n-Discord a {
background-color: #525ee0;
}
.wgl-theme-dark #n-Discord a:hover {
background-color: #4c57d0;
}
:root {
--vector-tab-background: #f0f0f0;
--vector-tab-background--hover: var(--body-mid);
--vector-tab-link-color: #937040;
--watch-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16'%3E%3Cpath fill='transparent' stroke='%2352351e' stroke-width='.8' d='m8.1 1.1 2.2 4.5 4.8.7-3.5 3.4.9 4.8L8 12.2l-4.3 2.3.8-4.8L1 6.3l4.8-.7z'/%3E%3C/svg%3E");
--unwatch-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16'%3E%3Cpath fill='%2352351e' stroke='%2352351e' stroke-width='.8' d='m8.1 1.1 2.2 4.5 4.8.7-3.5 3.4.9 4.8L8 12.2l-4.3 2.3.8-4.8L1 6.3l4.8-.7z'/%3E%3C/svg%3E");
}
.vector-menu-tabs-legacy {
padding: 0;
}
.vector-menu-tabs-legacy .new a,
.vector-menu-tabs-legacy .new a:visited {
color: var(--redlink-color);
}
.vector-menu-tabs-legacy .selected {
background: var(--body-main);
}
.vector-menu-tabs-legacy .selected a,
.vector-menu-tabs-legacy .selected a:visited {
color: var(--text-color);
}
.vector-menu-tabs-legacy li a {
color: var(--vector-tab-link-color);
padding: 0 0.75em;
padding-top: 1em;
}
.vector-menu-tabs-legacy li a:visited {
color: var(--vector-tab-link-color);
}
.vector-menu-tabs-legacy ul li {
background: var(--vector-tab-background);
}
.vector-menu-tabs-legacy ul a:hover {
text-decoration: none;
}
#ca-view {
display: none !important;
}
.vector-menu-tabs ul li:not(.selected):hover,
#p-cactions:hover #p-cactions-label {
background: var(--vector-tab-background--hover);
}
.vector-menu-tabs ul li:not(.selected),
#mw-head .vector-menu-dropdown .vector-menu-heading {
box-shadow: inset 0 -7px 7px -7px rgba(0, 0, 0, 0.15);
}
.vector-menu-tabs,
.vector-menu-tabs a,
#mw-head .vector-menu-dropdown .vector-menu-heading {
background-image: none;
}
.ve-activated .vector-menu-tabs .selected {
box-shadow: none;
}
.vector-menu-tabs #ca-watch.icon a:before,
.vector-menu-tabs #ca-watch.icon a:hover:before,
.vector-menu-tabs #ca-watch.icon a:focus:before {
background-image: var(--watch-icon);
}
.vector-menu-tabs #ca-unwatch.icon a:before,
.vector-menu-tabs #ca-unwatch.icon a:hover:before,
.vector-menu-tabs #ca-unwatch.icon a:focus:before {
background-image: var(--unwatch-icon);
}
div.thumbinner {
border: none;
background-color: var(--thumb-bg);
padding: 0;
}
.thumbimage {
background-color: transparent;
border-color: transparent;
border-bottom: none;
}
.thumbcaption {
background: var(--thumb-caption-bg);
padding: 4px 6px;
}
:root {
--toc-bg: var(--body-light);
--toc-title-bg: var(--body-dark);
--toc-border-color: var(--body-border);
--toc-list-border-color: var(--body-border);
}
.toc {
font-size: 0.9em;
background: var(--toc-bg);
margin-top: 1em;
padding: 0;
border-color: var(--toc-border-color);
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
clear: left;
}
.toc .toctitle {
background: var(--toc-title-bg);
padding: 0.25em 1em;
}
.toc .toctitle h2 {
font-family: inherit;
}
.toc > ul {
line-height: 1.8em;
padding: 0.75em 1.75em;
margin: 0;
}
.toc ul ul {
border-left: 1px dotted var(--toc-list-border-color);
padding-left: 0.5em;
}
.tocnumber {
display: none;
}
.toctogglespan {
padding-left: 0.2em;
font-size: 0.9em;
}
.toctogglelabel {
color: var(--link-color);
}
.toclimit-2 #toc .toclevel-2,
.toclimit-3 #toc .toclevel-3,
.toclimit-4 #toc .toclevel-4,
.toclimit-5 #toc .toclevel-5,
.toclimit-6 #toc .toclevel-6,
.toclimit-7 #toc .toclevel-7 {
display: none;
}
:root {
--external-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath fill='%23936039' d='M6 1h5v5L8.86 3.85 4.7 8 4 7.3l4.15-4.16L6 1Z M2 3h2v1H2v6h6V8h1v2a1 1 0 0 1-1 1H2a1 1 0 0 1-1-1V4a1 1 0 0 1 1-1Z'/%3E%3C/svg%3E");
}
.mw-parser-output a.external {
background-image: var(--external-icon);
background-size: 0.833em;
}
.mw-editsection {
font-family: 'Helvetica Neue', 'Arial', sans-serif;
}
.client-js .mw-content-ltr .mw-editsection-bracket:first-of-type,
.client-js .mw-content-ltr .mw-editsection-bracket:not(:first-of-type),
.mw-editsection-divider {
color: var(--text-color);
}
#contentSub,
#contentSub2 {
color: var(--byline-color);
margin: 0;
}
#contentSub:not(:empty),
#contentSub2:not(:empty) {
margin: 0 0 1.4em 0;
}
.mw-collapsible.mw-collapsed {
min-width: 250px;
}
.mw-collapsible:not( .mw-made-collapsible) th::before,
.mw-collapsible .mw-collapsible-toggle {
font-weight: normal;
margin-left: 0.2em;
}
.wikiEditor-ui .wikiEditor-ui-view,
.wikiEditor-ui .wikiEditor-ui-top {
border-color: var(--sourceeditor-border);
}
.wikiEditor-ui-toolbar {
background-color: var(--sourceeditor-background);
}
.wikiEditor-ui-toolbar .tabs span.tab > a,
.wikiEditor-ui-toolbar .tabs span.tab > a:visited {
color: var(--link-color);
}
.wikiEditor-ui-toolbar .tabs span.tab a.current,
.wikiEditor-ui-toolbar .tabs span.tab a.current:visited {
color: var(--text-colour);
}
.wikiEditor-ui-toolbar .group {
border-color: var(--sourceeditor-border);
}
.wikiEditor-ui-toolbar .group .tool-select {
background-color: var(--sourceeditor-background);
border-color: var(--sourceeditor-border);
}
.wikiEditor-ui-toolbar .group .tool-select .options {
border-color: var(--sourceeditor-border);
background-color: var(--body-main);
}
.wikiEditor-ui-toolbar .group .tool-select .options .option {
color: var(--link-color);
}
.wikiEditor-ui-toolbar .group .tool-select .menu .options .option:hover {
background-color: var(--ooui-normal--hover);
}
.wikiEditor-ui-toolbar .group-search {
border-left-color: var(--body-mid);
}
.wikiEditor-ui-toolbar .page-table td {
border-color: var(--body-mid);
color: var(--text-color);
}
.wikiEditor-ui-toolbar .page-table th {
color: var(--text-color);
}
.wikiEditor-ui-toolbar .sections .section {
border-color: var(--body-mid);
}
.wikiEditor-ui-toolbar .sections .toolbar .group > .label {
color: var(--text-color);
}
.wikiEditor-ui-toolbar .sections .toolbar .tool > .label {
color: var(--text-color);
}
.wikiEditor-ui-toolbar .booklet > .index > :hover {
background-color: var(--body-mid);
color: var(--text-color);
}
.wikiEditor-ui-toolbar .booklet .index > .current {
background-color: var(--body-mid);
color: var(--link-color);
}
.wikiEditor-ui-toolbar .page-characters div span {
border-color: var(--body-mid);
color: var(--text-color);
}
.wikiEditor-ui-toolbar .page-characters div span:hover {
border-color: var(--body-dark);
background-color: transparent;
}
.wikiEditor-ui-toolbar .tabs span.tab a:before,
.wikiEditor-ui-toolbar .group .tool-select .label:after {
background: var(--text-color);
-webkit-mask: var(--arrow-down) center no-repeat;
mask: var(--arrow-down) center no-repeat;
}
.ace-tm {
background-color: var(--sourceeditor-input-background);
color: var(--text-color);
}
.ace-tm .ace_gutter {
background: var(--body-mid);
color: var(--text-color);
}
.ace-tm .ace_gutter-cell {
color: var(--text-color);
}
.ace-tm .ace_gutter-active-line {
background-color: var(--body-light);
}
.ace_search {
background-color: var(--body-light);
color: var(--text-color);
border-color: var(--body-mid);
}
.ace_search_field {
background-color: var(--ooui-input);
color: var(--ooui-text);
border-color: var(--ooui-input-border);
}
.ace_searchbtn {
border-color: var(--ooui-normal-border);
background-color: var(--ooui-normal);
color: var(--ooui-text);
}
.ace_searchbtn:last-child {
border-color: var(--ooui-normal-border);
}
.ace_searchbtn:hover {
background-color: var(--ooui-normal--hover);
}
.ace_searchbtn.prev:after,
.ace_searchbtn.next:after {
border-color: var(--ooui-text);
}
.ace_button {
color: var(--text-color);
}
.ace_button:hover {
background-color: rgba(0, 23, 70, 0.086);
}
.ace_button:active {
background-color: rgba(0, 23, 70, 0.06);
}
.ace_button.checked {
border-color: var(--ooui-accent);
}
.CodeMirror {
background: var(--sourceeditor-input-background);
}
.CodeMirror pre {
color: var(--text-color);
}
.codeEditor-status {
border-color: var(--sourceeditor-border);
background-color: var(--sourceeditor-background);
}
.codeEditor-status-message {
border-color: var(--sourceeditor-border);
}
.CodeMirror-gutters {
background-color: var(--codemirror-gutter-background);
border-color: var(--sourceeditor-border);
}
.CodeMirror-linenumber {
color: var(--text-color);
}
.ve-init-mw-desktopArticleTarget .CodeMirror-linenumber {
color: var(--byline-color);
}
.mw-editform #wpTextbox1 {
color: var(--text-color);
background: var(--sourceeditor-input-background);
border-color: var(--sourceeditor-border);
}
input[name="model"][value="Scribunto"] ~ .wikiEditor-ui #wpTextbox1,
input[name="model"][value="css"] ~ .wikiEditor-ui #wpTextbox1,
input[name="model"][value="less"] ~ .wikiEditor-ui #wpTextbox1,
input[name="model"][value="javascript"] ~ .wikiEditor-ui #wpTextbox1,
input[name="model"][value="json"] ~ .wikiEditor-ui #wpTextbox1 {
height: 600px;
}
.tdg-templateDataDialog-listParamsPanel textarea.oo-ui-textInputWidget-autosized {
resize: vertical;
}
#wpAceFilterEditor {
resize: horizontal;
}
.warn-userupload,
.ns-2 .upload-own-work {
display: none;
}
.ns-2 .warn-userupload {
display: inline;
}
textarea[name="wfUploadDescription"] {
height: 3em;
}
#editform {
margin-top: 1.25em;
}
#mw-scribunto-input,
#mw-scribunto-output {
padding: 3px;
font-family: monospace;
font-size: 13px;
line-height: 1.5em;
}
#mw-scribunto-input {
background-color: var(--ooui-input);
border-color: var(--ooui-input-border);
}
:root {
--scribuntoconsole-input: #0b5884;
--scibuntoconsole-print: #a48900;
--scribuntoconsole-error: #9f261e;
--scribuntoconsole-message: #3c780a;
--scribuntoconsole-tabcomplete: #4f348b;
--scribuntoconsole-clear: #9f261e;
}
.mw-scribunto-console-fieldset {
color: inherit;
background-color: var(--ooui-interface);
border-color: var(--ooui-interface-border);
}
.mw-scribunto-normalOutput,
.mw-scribunto-print,
.mw-scribunto-error,
.mw-scribunto-propList,
.mw-scribunto-message,
.mw-scribunto-tabcomplete {
background: none;
}
.mw-scribunto-input {
color: var(--scribuntoconsole-input);
}
.mw-scribunto-normalOutput {
color: inherit;
}
.mw-scribunto-print {
color: var(--scibuntoconsole-print);
}
.mw-scribunto-error {
color: var(--scribuntoconsole-error);
}
.mw-scribunto-propList,
.mw-scribunto-message {
color: var(--scribuntoconsole-message);
}
.mw-scribunto-tabcomplete {
color: var(--scribuntoconsole-tabcomplete);
}
.mw-scribunto-clear {
color: var(--scribuntoconsole-clear);
border-bottom-color: var(--scribuntoconsole-clear);
}
:root {
--echo-icon-moon-bg-image: url("data:image/svg+xml,%3C%3Fxml version='1.0' encoding='UTF-8'%3F%3E%3Csvg height='21' viewBox='0 0 21 21' width='21' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='m8.85464918.37900488c-1.91149353 1.51069427-3.13816124 3.84973402-3.13816124 6.47527736 0 4.55564936 3.69308349 8.24873286 8.24873286 8.24873286 2.5815709 0 4.8861545-1.1859235 6.3986798-3.0426994-.8206378 4.7389755-4.9523867 8.343122-9.9259291 8.343122-5.56375572 0-10.07407088-4.5103151-10.07407088-10.0740709 0-5.02506013 3.67919933-9.19079725 8.49074856-9.95036192z' fill='%234c4c4c'/%3E%3C/svg%3E");
--echo-icon-person-bg-image: url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 width=%2212%22 height=%2213.836%22 viewBox=%220 0 12 13.836%22%3E %3Cpath fill='%234c4c4c' d=%22M1.938%2C6.656c-1.32%2C1.485-1.47%2C3.15-0.97%2C4.25c0.323%2C0.707%2C0.78%2C1.127%2C1.313%2C1.375 c0.496%2C0.229%2C1.074%2C0.273%2C1.658%2C0.282c0.023%2C0%2C0.04%2C0.03%2C0.062%2C0.03h4.187c0.61%2C0%2C1.225-0.125%2C1.75-0.405 c0.527-0.28%2C0.961-0.718%2C1.188-1.376c0.335-0.964%2C0.175-2.529-1.094-4.03C9.094%2C7.954%2C7.68%2C8.719%2C6.065%2C8.719 c-1.677%2C0-3.182-0.812-4.125-2.063H1.938z%22/%3E %3Cpath fill='%234c4c4c' d=%22M6.063%2C0c-1.89%2C0-3.595%2C1.674-3.594%2C3.563C2.467%2C5.45%2C4.173%2C7.155%2C6.06%2C7.155 c1.89%2C0%2C3.564-1.705%2C3.563-3.593C9.625%2C1.673%2C7.95%2C0%2C6.063%2C0L6.063%2C0z%22/%3E %3C/svg%3E");
--echo-icon-bell-bg-image: url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 width=%2220%22 height=%2220%22 viewBox=%220 0 20 20%22%3E%3Ctitle%3Ebell%3C/title%3E%3Cpath d=%22M16 7a5.38 5.38 0 00-4.46-4.85C11.6 1.46 11.53 0 10 0S8.4 1.46 8.46 2.15A5.38 5.38 0 004 7v6l-2 2v1h16v-1l-2-2zm-6 13a3 3 0 003-3H7a3 3 0 003 3z%22 fill='%234c4c4c'/%3E%3C/svg%3E");
--echo-icon-tray-bg-image: url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 width=%2220%22 height=%2220%22 viewBox=%220 0 20 20%22%3E%3Ctitle%3Etray%3C/title%3E%3Cpath d=%22M3 1a2 2 0 00-2 2v14a2 2 0 002 2h14a2 2 0 002-2V3a2 2 0 00-2-2zm14 12h-4l-1 2H8l-1-2H3V3h14z%22 fill='%234c4c4c'/%3E%3C/svg%3E");
--echo-icon-fullscreen-bg-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 20 20'%3E%3Ctitle%3E fullscreen %3C/title%3E%3Cg fill='%234c4c4c'%3E%3Cpath d='M1 1v6h2V3h4V1zm2 12H1v6h6v-2H3zm14 4h-4v2h6v-6h-2zm0-16h-4v2h4v4h2V1z'/%3E%3C/g%3E%3Cscript xmlns=''/%3E%3C/svg%3E");
--echo-icon-exitFullscreen-bg-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 20 20'%3E%3Ctitle%3E exit fullscreen %3C/title%3E%3Cg fill='%234c4c4c'%3E%3Cpath d='M7 7V1H5v4H1v2zM5 19h2v-6H1v2h4zm10-4h4v-2h-6v6h2zm0-8h4V5h-4V1h-2v6z'/%3E%3C/g%3E%3Cscript xmlns=''/%3E%3C/svg%3E");
}
.vector-user-menu-legacy #pt-userpage a,
.vector-user-menu-legacy #pt-anonuserpage {
background-image: var(--echo-icon-person-bg-image);
padding-top: 0;
background-position-y: 0;
}
.vector-user-menu-legacy #pt-anonuserpage {
color: var(--byline-color);
}
#pt-notifications-alert .mw-echo-notifications-badge,
#pt-notifications-notice .mw-echo-notifications-badge {
background-size: 75%;
background-position: center 80%;
background-repeat: no-repeat;
opacity: unset;
}
#pt-notifications-alert .mw-echo-notifications-badge.mw-echo-notifications-badge-all-read,
#pt-notifications-notice .mw-echo-notifications-badge.mw-echo-notifications-badge-all-read {
opacity: unset;
}
#pt-notifications-alert .oo-ui-icon-bell {
background-image: var(--echo-icon-bell-bg-image);
}
#pt-notifications-notice .oo-ui-icon-tray {
background-image: var(--echo-icon-tray-bg-image);
}
#pt-fixed-width .oo-ui-icon-advanced {
background-image: var(--echo-icon-exitFullscreen-bg-image);
}
body.wgl-fixedWidth #pt-fixed-width .oo-ui-icon-advanced {
background-image: var(--echo-icon-fullscreen-bg-image);
}
#pt-theme-toggles .oo-ui-icon-advanced {
background-image: var(--echo-icon-moon-bg-image);
}
#pt-anontalk {
padding-top: 0.6em;
}
.tabber {
display: inline-grid;
}
13a07fc1f7c6aee6a695d7023cad1a9868cabf36
MediaWiki:Common.less
8
5
108
101
2024-03-22T04:23:30Z
Jayden
3
less
less
/* =============================================================================
* This is the root Less file that is parsed to produce [[MediaWiki:Common.css]].
*
* These styles will be applied to all skins (desktop and mobile).
* -----------------------------------------------------------------------------
* Less documentation: <http://lesscss.org/features/>
* Gadget: <https://meta.weirdgloop.org/w/MediaWiki:Gadget-Less.js>
* Core Less JS: <https://meta.weirdgloop.org/w/MediaWiki:Gadget-Less-core.js>
* Non-standard mixins: <https://meta.weirdgloop.org/w/MediaWiki:Gadget-LessMixins.less>
* Online Less tester: <https://lesscss.org/less-preview/>
* ============================================================================= */
// ===== CSS Variables =====
@common: 'MediaWiki:Common.less';
:root {
--body-main: #feffff;
--body-light: #f2f2f2;
--body-mid: #d0bd97;
--body-dark: #e3e3e3;
--body-border: #000;
--body-background-color: #173a4d;
--button-background: #605443;
--button-color: @white;
--button-border: #3c352a;
--button-dark: #18140c;
--button-light: #3a301d;
--sidebar: #cfc08d;
--background-text-color: #e2dbc8;
--background-link-color: #e2bd8a;
--search-box: #efeee6;
--link-color: #936039;
--redlink-color: #ba0000;
--text-color: @black;
--byline-color: @tundora;
--subtle-color: @boulder;
--admin-blue: #332e75;
--bearcat-green: #13592e;
--awb-purple: #933b96;
--rsw-blue: #438ab6;
--osrsw-brown: #605443;
// used for gallery & thumbs
--thumb-bg: var(--body-light);
--thumb-caption-bg: var(--body-mid);
// for sourceeditor - CodeMirror and WikiEditor's that are only available on
// desktop are also here to not fragment the vars across many files
--sourceeditor-input-background: @white;
--sourceeditor-background: var(--body-light);
--sourceeditor-background-secondary: var(--body-light); // used on .editOptions
--sourceeditor-border: var(--body-mid);
--codemirror-gutter-background: var(--body-mid);
}
// ===== Imports =====
// include fonts first
@import '@{common}/mixins.less';
@import '@{common}/fonts.less'; // Font definitions and font stack definitions
@import '@{common}/variables.less'; // Less variables
@import '@{common}/elements.less'; // HTML elements
@import '@{common}/links.less'; // Link colours
// Interface
@import '@{common}/interface.less'; // MW common elements
@import '@{common}/wikitables.less'; // .wikitable class and etc
@import '@{common}/diff.less'; // Revision differences
@import '@{common}/notifications.less';
@import '@{common}/pagepreviews.less'; // Page preview popups
@import '@{common}/smw.less'; // Semantic MediaWiki
@import '@{common}/tabber.less'; // <tabber>
@import '@{common}/ooui.less'; // OOUI Customisations
@import '@{common}/visualeditor.less'; // VisualEditor
// Templates
@import '@{common}/templates.less'; // Various templates
@import '@{common}/infobox.less'; // Infobox vars
@import '@{common}/references.less'; // <references>
// Page specific
@import '@{common}/tiles.less'; // Main page tiles
@import '@{common}/mainpage.less'; // Main page
@import '@{common}/prefs.less'; // Wiki preferences theming
@import '@{common}/specials.less'; // Special pages
// ===== Miscellaneous =====
// hide certain links in sidebar tools
#t-print,
#t-permalink {
display: none;
}
#filetoc {
border-radius: @border-radius;
background: @BODY_MID;
border-color: transparent;
margin: 0.5em auto;
text-align: center;
box-shadow: @box-shadow;
}
// Galleries
li.gallerybox div.thumb {
border: none;
background-color: var(--thumb-bg);
}
.smwfact {
display: none;
}
// applies to mobile talk pages, and smw??
.list-header {
background-color: var(--body-mid);
color: inherit;
}
// Source editor w/o syntaxhighlight; also applies to mobile in case JS is
// turned off
.editOptions {
color: var(--text-color);
background-color: var(--sourceeditor-background-secondary);
border-color: var(--sourceeditor-border);
}
// .json pages
.mw-json {
th,
td {
border-color: var(--wikitable-border);
}
// instead of selecting `tr`, do this to avoid dealing with mw-json-* classes
td {
background: var(--wikitable-bg);
}
th {
background: var(--wikitable-header-bg);
}
}
e8027f38375b2cddf1501b75ce52d31a03076521
MediaWiki:Common.css
8
30
109
102
2024-03-22T04:23:34Z
Jayden
3
Updating CSS from [[MediaWiki:Common.less]]
css
text/css
/* <pre> */
:root {
--body-main: #feffff;
--body-light: #f2f2f2;
--body-mid: #d0bd97;
--body-dark: #e3e3e3;
--body-border: #000;
--body-background-color: #173a4d;
--button-background: #605443;
--button-color: #fff;
--button-border: #3c352a;
--button-dark: #18140c;
--button-light: #3a301d;
--sidebar: #cfc08d;
--background-text-color: #e2dbc8;
--background-link-color: #e2bd8a;
--search-box: #efeee6;
--link-color: #936039;
--redlink-color: #ba0000;
--text-color: #000;
--byline-color: #4c4c4c;
--subtle-color: #777;
--admin-blue: #332e75;
--bearcat-green: #13592e;
--awb-purple: #933b96;
--rsw-blue: #438ab6;
--osrsw-brown: #605443;
--thumb-bg: var(--body-light);
--thumb-caption-bg: var(--body-mid);
--sourceeditor-input-background: #fff;
--sourceeditor-background: var(--body-light);
--sourceeditor-background-secondary: var(--body-light);
--sourceeditor-border: var(--body-mid);
--codemirror-gutter-background: var(--body-mid);
}
@font-face {
font-family: 'Lora';
font-weight: 400 700;
font-style: normal;
font-display: swap;
src: url('filepath://Lora.woff2') format('woff2');
}
@font-face {
font-family: 'Lora';
font-weight: 400 700;
font-style: italic;
font-display: swap;
src: url('filepath://Lora-Italic.woff2') format('woff2');
}
:root {
--base-text-color: #36414f;
--base-heading-color: #444e5a;
--base-heading-border: #e4eaee;
--mw-code-background-color: #ddd4bb;
--body-background-image: url('filepath://Wiki_background.jpg');
}
#mw-page-base {
background: none;
}
.mw-body {
background-color: var(--body-main);
color: var(--text-color);
border-color: transparent;
box-shadow: 0 0 7px rgba(0, 0, 0, 0.15);
margin-top: 0;
}
h1,
h2,
h3,
h4,
h5,
h6 {
color: var(--text-color);
}
h1,
h2 {
border-color: var(--sidebar);
}
.mw-body h1,
.mw-body-content h1,
.mw-body-content h2,
.mw-body-content h3,
.mw-body-content h4,
.mw-body-content h5,
.mw-body-content h6 {
font-family: 'Lora', 'Palatino', 'Georgia', serif;
}
.mw-parser-output h2:first-of-type {
clear: left;
}
.mw-footer {
color: var(--background-text-color);
}
.mw-footer li {
color: var(--background-text-color);
}
.mw-footer a,
.mw-footer a:active,
.mw-footer a:visited {
color: var(--background-link-color);
}
::placeholder {
color: var(--subtle-color);
}
a {
color: var(--link-color);
}
a:visited,
a:active {
color: var(--link-color);
}
a.new {
color: var(--redlink-color);
}
a.new:visited {
color: var(--redlink-color);
}
.mw-parser-output a.extiw,
.mw-parser-output a.external {
color: var(--link-color);
}
.mw-parser-output a.extiw:visited,
.mw-parser-output a.external:visited,
.mw-parser-output a.extiw:active,
.mw-parser-output a.external:active {
color: var(--link-color);
}
.jsPurgeLink a.external {
color: var(--link-color);
}
:root {
--errorbox-bg: #feecea;
--errorbox-border: #ee4231;
--warningbox-bg: #fef9de;
--warningbox-border: #f9d000;
--successbox-bg: #ecf8e3;
--successbox-border: #6bc71f;
}
.mw-message-box-error,
.errorbox,
.mw-message-box-warning,
.warningbox,
.mw-message-box-success,
.successbox,
.usermessage {
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
}
.mw-message-box-error,
.errorbox {
background-color: var(--errorbox-bg);
border-color: var(--errorbox-border);
}
.mw-message-box-warning,
.warningbox,
.usermessage {
background-color: var(--warningbox-bg);
border-color: var(--warningbox-border);
}
.mw-message-box-success,
.successbox {
background-color: var(--successbox-bg);
border-color: var(--successbox-border);
}
.catlinks {
background: var(--body-light);
border: 1px solid var(--body-dark);
padding: 8px 15px;
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
}
.catlinks li {
border-color: var(--body-mid);
}
.filehistory a img,
#file img {
background: url("data:image/svg+xml,%3C%3Fxml version='1.0' encoding='UTF-8'%3F%3E%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16'%3E%3Cpath d='M0 0h8v16h8V8H0z' opacity='.13'/%3E%3C/svg%3E") repeat;
}
#file img:hover {
background: none;
}
.mw-highlight {
background: none;
}
.mw-highlight .linenos {
background-color: var(--mw-code-background-color);
color: var(--byline-color);
}
.mw-highlight a:hover .linenos,
.mw-highlight .hll a .linenos {
color: var(--text-color);
}
.mw-content-ltr.mw-highlight-lines pre,
.mw-content-ltr.content .mw-highlight-lines pre {
box-shadow: inset 2.75em 0 0 var(--mw-code-background-color);
}
#pagehistory ul {
list-style: none;
margin: 0;
}
#pagehistory li {
border: 1px solid transparent;
padding: 1px 10px;
margin: 2px 0;
}
#pagehistory li.selected {
background-color: var(--body-light);
color: inherit;
border: 1px dashed var(--body-border);
outline: none;
}
#mw-history-compare > div:first-of-type {
position: -webkit-sticky;
position: sticky;
top: 0;
background-color: var(--body-main);
border-bottom: 1px solid var(--body-dark);
padding: 0.25em 0;
}
.wgl-stickyheader #mw-history-compare > div:first-of-type {
top: 2.5rem;
}
.autocomment,
.autocomment a,
.autocomment a:visited {
color: var(--link-color);
}
li span.deleted,
span.history-deleted {
color: var(--byline-color);
}
.mw-usertoollinks-contribs-no-edits,
.mw-usertoollinks-contribs-no-edits:visited {
color: var(--redlink-color);
}
.CategoryTreeToggle {
color: var(--link-color);
}
body.wgl-stickyheader.action-view .mw-headline:target::before {
display: block;
content: '';
margin-top: -3rem;
height: 3rem;
visibility: hidden;
pointer-events: none;
}
.mw-mmv-post-image {
color: var(--text-color);
background-color: var(--body-main);
}
.mw-mmv-image-metadata {
border-top-color: var(--body-mid);
background-color: var(--body-light);
}
.mw-mmv-dialog,
.mw-mmv-dialog .mw-mmv-dialog-down-arrow,
.mw-mmv-options-dialog .mw-mmv-dialog-down-arrow {
background-color: var(--body-light);
box-shadow: none;
}
.mw-mmv-options-enable-alert {
background-color: var(--body-light);
color: var(--text-color);
}
.mw-mmv-options-dialog-header,
.mw-mmv-options-text-header,
.mw-mmv-options-text-body,
.mw-mmv-options-enable-alert,
.mw-mmv-options-dialog .mw-mmv-disable-confirmation .mw-mmv-options-dialog-header,
.mw-mmv-options-dialog .mw-mmv-disable-confirmation .mw-mmv-options-text-header {
color: var(--text-color);
}
.mw-revslider-container {
border-color: var(--sidebar);
}
.mw-revslider-slider-wrapper {
border-top-color: var(--sidebar);
}
.mw-ui-button {
background-color: var(--ooui-normal);
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
}
.mw-ui-button:not(:disabled):hover,
.mw-ui-button:not(:disabled):active {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
}
.mw-ui-button:not(:disabled):focus {
color: var(--ooui-text);
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent), inset 0 0 0 2px #fff;
}
.mw-ui-button:not(:disabled):visited {
color: var(--ooui-text);
}
.mw-ui-button.mw-ui-progressive:not(:disabled) {
background-color: var(--ooui-progressive);
color: #fff;
border-color: var(--ooui-progressive);
}
.mw-ui-button.mw-ui-progressive:not(:disabled):hover {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
}
.mw-ui-button.mw-ui-progressive:not(:disabled):focus {
box-shadow: inset 0 0 0 1px var(--ooui-accent), inset 0 0 0 2px #fff;
}
.mw-ui-button.mw-ui-progressive:not(:disabled):active,
.mw-ui-button.mw-ui-progressive:not(:disabled).is-on {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
box-shadow: none;
}
.mw-ui-button.mw-ui-destructive:not( :disabled ) {
color: #fff;
}
.mw-ui-button.mw-ui-quiet,
.mw-ui-button.mw-ui-quiet.mw-ui-progressive,
.mw-ui-button.mw-ui-quiet.mw-ui-destructive {
color: var(--text-color);
}
input[type='checkbox']:hover + .mw-ui-button.mw-ui-quiet,
input[type='checkbox']:hover + .mw-ui-button.mw-ui-quiet.mw-ui-progressive,
input[type='checkbox']:hover + .mw-ui-button.mw-ui-quiet.mw-ui-destructive,
.mw-ui-button.mw-ui-quiet:hover,
.mw-ui-button.mw-ui-quiet.mw-ui-progressive:hover,
.mw-ui-button.mw-ui-quiet.mw-ui-destructive:hover {
background-color: rgba(0, 24, 73, 0.02745098);
color: var(--text-color);
border-color: transparent;
}
input[type='checkbox']:focus + .mw-ui-button.mw-ui-quiet,
input[type='checkbox']:focus + .mw-ui-button.mw-ui-quiet.mw-ui-progressive,
input[type='checkbox']:focus + .mw-ui-button.mw-ui-quiet.mw-ui-destructive,
.mw-ui-button.mw-ui-quiet:focus,
.mw-ui-button.mw-ui-quiet.mw-ui-progressive:focus,
.mw-ui-button.mw-ui-quiet.mw-ui-destructive:focus {
color: var(--text-color);
}
input[type='checkbox']:active + .mw-ui-button.mw-ui-quiet,
input[type='checkbox']:active + .mw-ui-button.mw-ui-quiet.mw-ui-progressive,
input[type='checkbox']:active + .mw-ui-button.mw-ui-quiet.mw-ui-destructive,
.mw-ui-button.mw-ui-quiet:active,
.mw-ui-button.mw-ui-quiet.mw-ui-progressive:active,
.mw-ui-button.mw-ui-quiet.mw-ui-destructive:active {
background-color: rgba(0, 36, 73, 0.08235294);
color: var(--text-color);
border-color: #72777d;
}
.mw-ui-input {
background-color: var(--ooui-input);
color: var(--text-color);
border-color: var(--ooui-input-border);
}
.mw-ui-input:hover {
border-color: var(--ooui-input-border--hover);
}
.mw-ui-input::placeholder {
color: var(--byline-color);
}
.mw-content-ltr .redirectText li:first-child {
padding: 0;
background: 0;
}
.mw-content-ltr .redirectText li:first-child::before {
content: '';
background: currentcolor;
-webkit-mask: url("filepath://Redirect-arrow.svg") no-repeat 50% 50% / contain;
mask: url("filepath://Redirect-arrow.svg") no-repeat 50% 50% / contain;
display: inline-block;
width: 47px;
height: 20px;
}
:root {
--wikitable-header-bg: var(--body-dark);
--wikitable-border: var(--body-border);
--wikitable-bg: var(--body-light);
--wikitable-bg-lighter: #e9e3d6;
--wikitable-color: var(--text-color);
--table-na-background: rgba(255, 255, 255, 0.3);
--table-na-color: var(--subtle-color);
--table-yes-background: #c3e8a3;
--table-yes-color: #2e5e05;
--table-no-background: #fbc0ba;
--table-no-color: #801c13;
--table-maybe-background: #fcea94;
--table-maybe-color: #786300;
}
.wikitable {
background: var(--wikitable-bg);
color: var(--wikitable-color);
border-color: var(--wikitable-border);
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
}
.wikitable > tr > th,
.wikitable > tr > td,
.wikitable > * > tr > th,
.wikitable > * > tr > td {
border-color: var(--wikitable-border);
}
.wikitable > tr > th.table-noborder,
.wikitable > tr > td.table-noborder,
.wikitable > * > tr > th.table-noborder,
.wikitable > * > tr > td.table-noborder {
border-left-style: hidden;
border-right-style: hidden;
padding-left: 0;
padding-right: 0;
}
.wikitable > tr > th,
.wikitable > * > tr > th {
background-color: var(--wikitable-header-bg);
}
.tabber .wikitable {
box-shadow: none;
}
.mw_metadata td,
.mw_metadata th {
border-color: var(--wikitable-border);
}
.mw_metadata th {
background-color: var(--wikitable-header-bg);
}
.mw_metadata td {
background-color: var(--wikitable-bg);
}
.mw-datatable {
border-color: var(--wikitable-border);
}
.mw-datatable td,
.mw-datatable th {
border-color: var(--wikitable-border);
}
.mw-datatable th {
background-color: var(--wikitable-header-bg);
}
.mw-datatable td {
background-color: var(--wikitable-bg);
}
.mw-datatable tr:hover td {
background-color: var(--wikitable-bg);
}
table.alternating-rows tr:nth-child(odd),
table.alternating-cols td:nth-child(odd) {
background: var(--wikitable-alternating-bg);
}
.table-na {
background: var(--table-na-background);
color: var(--table-na-color);
vertical-align: middle;
text-align: center;
}
.table-yes {
background: var(--table-yes-background);
color: var(--table-yes-color);
}
.table-positive {
background: var(--table-yes-background);
}
.table-no {
background: var(--table-no-background);
color: var(--table-no-color);
}
.table-negative {
background: var(--table-no-background);
}
.table-maybe {
background: var(--table-maybe-background);
color: var(--table-maybe-color);
}
#mw-allmessagestable .am_actual,
#mw-allmessagestable .am_default {
background-color: var(--wikitable-bg);
}
#mw-allmessagestable .am_default:hover,
#mw-allmessagestable .am_actual:hover,
#mw-allmessagestable tbody:hover td {
background-color: var(--wikitable-bg-lighter);
}
table.wikitable td.no-cell-spacing {
padding: 0;
height: 0;
}
table.wikitable td.no-cell-spacing table {
margin: -1px;
width: calc(100% + 2px);
height: calc(100% + 2px);
}
.plainlist ol,
.plainlist ul {
margin: 0;
}
.plainlist li {
margin-bottom: 0;
list-style: none;
}
table.align-right-1 td:nth-of-type(1),
table.align-right-2 td:nth-of-type(2),
table.align-right-3 td:nth-of-type(3),
table.align-right-4 td:nth-of-type(4),
table.align-right-5 td:nth-of-type(5),
table.align-right-6 td:nth-of-type(6),
table.align-right-7 td:nth-of-type(7),
table.align-right-8 td:nth-of-type(8),
table.align-right-9 td:nth-of-type(9),
table.align-right-10 td:nth-of-type(10),
table.align-right-11 td:nth-of-type(11),
table.align-right-12 td:nth-of-type(12),
table.align-right-13 td:nth-of-type(13),
table.align-right-14 td:nth-of-type(14),
table.align-right-15 td:nth-of-type(15),
table.align-right-16 td:nth-of-type(16),
table.align-right-17 td:nth-of-type(17),
table.align-right-18 td:nth-of-type(18),
table.align-right-19 td:nth-of-type(19),
table.align-right-20 td:nth-of-type(20) {
text-align: right;
}
table.align-center-1 td:nth-of-type(1),
table.align-center-2 td:nth-of-type(2),
table.align-center-3 td:nth-of-type(3),
table.align-center-4 td:nth-of-type(4),
table.align-center-5 td:nth-of-type(5),
table.align-center-6 td:nth-of-type(6),
table.align-center-7 td:nth-of-type(7),
table.align-center-8 td:nth-of-type(8),
table.align-center-9 td:nth-of-type(9),
table.align-center-10 td:nth-of-type(10),
table.align-center-11 td:nth-of-type(11),
table.align-center-12 td:nth-of-type(12),
table.align-center-13 td:nth-of-type(13),
table.align-center-14 td:nth-of-type(14),
table.align-center-15 td:nth-of-type(15),
table.align-center-16 td:nth-of-type(16),
table.align-center-17 td:nth-of-type(17),
table.align-center-18 td:nth-of-type(18),
table.align-center-19 td:nth-of-type(19),
table.align-center-20 td:nth-of-type(20) {
text-align: center;
}
table.align-left-1 td:nth-of-type(1),
table.align-left-2 td:nth-of-type(2),
table.align-left-3 td:nth-of-type(3),
table.align-left-4 td:nth-of-type(4),
table.align-left-5 td:nth-of-type(5),
table.align-left-6 td:nth-of-type(6),
table.align-left-7 td:nth-of-type(7),
table.align-left-8 td:nth-of-type(8),
table.align-left-9 td:nth-of-type(9),
table.align-left-10 td:nth-of-type(10),
table.align-left-11 td:nth-of-type(11),
table.align-left-12 td:nth-of-type(12),
table.align-left-13 td:nth-of-type(13),
table.align-left-14 td:nth-of-type(14),
table.align-left-15 td:nth-of-type(15),
table.align-left-16 td:nth-of-type(16),
table.align-left-17 td:nth-of-type(17),
table.align-left-18 td:nth-of-type(18),
table.align-left-19 td:nth-of-type(19),
table.align-left-20 td:nth-of-type(20) {
text-align: left;
}
:root {
--diff-addedline-border-color: #438ab5;
--diff-addedline-background: #bddff2;
--diff-addedline-color: #000;
--diff-deletedline-border-color: #379541;
--diff-deletedline-background: #c1edbf;
--diff-deletedline-color: #000;
--diff-context-border-color: var(--body-mid);
--diff-context-background: var(--body-mid);
}
.diff-context {
border-color: var(--diff-context-border-color);
background: var(--diff-context-background);
color: inherit;
}
.diff-addedline {
border-color: var(--diff-addedline-border-color);
}
.diff-addedline .diffchange {
background: var(--diff-addedline-background);
color: var(--diff-addedline-color);
}
.diff-deletedline {
border-color: var(--diff-deletedline-border-color);
}
.diff-deletedline .diffchange {
background: var(--diff-deletedline-background);
color: var(--diff-deletedline-color);
}
.mw-diff-movedpara-left:after,
.mw-diff-movedpara-right:after {
color: var(--text-color);
}
.mw-notification {
background-color: var(--body-light);
border-color: var(--body-border);
color: var(--text-color);
}
.mw-echo-ui-notificationsInboxWidget-toolbarWrapper {
background: var(--body-main);
}
.mw-body-content .mw-echo-ui-datedSubGroupListWidget-title-secondary {
color: var(--byline-color);
}
.mw-echo-ui-pageNotificationsOptionWidget.oo-ui-optionWidget-selected {
background-color: var(--ooui-normal);
color: var(--ooui-accent);
}
.mw-echo-ui-pageNotificationsOptionWidget-label-count {
background-color: var(--ooui-normal);
color: var(--byline-color);
}
.oo-ui-optionWidget-selected .mw-echo-ui-pageNotificationsOptionWidget-label-count {
color: var(--ooui-accent);
}
.mw-echo-ui-pageNotificationsOptionWidget.oo-ui-optionWidget-highlighted {
background-color: var(--ooui-normal);
color: var(--text-color);
}
.mw-echo-ui-crossWikiUnreadFilterWidget {
border-color: var(--body-border);
}
.mw-echo-ui-crossWikiUnreadFilterWidget-subtitle {
color: var(--byline-color);
}
.mw-echo-ui-notificationBadgeButtonPopupWidget-popup > .oo-ui-popupWidget-popup > .oo-ui-popupWidget-head,
.mw-echo-ui-notificationBadgeButtonPopupWidget-popup > .oo-ui-popupWidget-popup > .oo-ui-popupWidget-footer {
border-color: var(--ooui-interface-border);
}
.mw-echo-ui-notificationBadgeButtonPopupWidget-popup > .oo-ui-popupWidget-popup > .oo-ui-popupWidget-footer .mw-echo-ui-notificationBadgeButtonPopupWidget-footer-buttons .oo-ui-buttonElement:last-child {
border-left-color: var(--ooui-normal-border);
}
.mw-echo-ui-notificationItemWidget {
background-color: var(--ooui-normal);
border-color: var(--ooui-normal-border);
}
.mw-echo-ui-notificationItemWidget:hover,
.mw-echo-ui-notificationItemWidget-unread:hover {
background-color: var(--ooui-normal--hover);
}
.mw-echo-ui-notificationItemWidget:last-child {
border-bottom-color: var(--ooui-normal-border);
}
.mw-echo-ui-notificationItemWidget-unread {
background-color: var(--search-box);
}
.mw-echo-ui-crossWikiNotificationItemWidget-group,
.mw-echo-ui-bundleNotificationItemWidget-group {
background-color: var(--ooui-interface);
}
.mw-echo-ui-toggleReadCircleButtonWidget-circle {
background-color: var(--ooui-progressive);
}
.mw-echo-ui-toggleReadCircleButtonWidget:hover .mw-echo-ui-toggleReadCircleButtonWidget-circle {
background-color: var(--ooui-progressive--hover);
}
.mw-echo-ui-toggleReadCircleButtonWidget-circle-unread {
background-color: var(--ooui-normal);
border-color: var(--ooui-normal-border);
}
.mw-echo-ui-notificationItemWidget-content-message-header,
.mw-echo-ui-notificationItemWidget-content-message-body,
.mw-echo-ui-menuItemWidget > .oo-ui-buttonElement-button > .oo-ui-labelElement-label,
.mw-echo-ui-notificationItemWidget-content-actions-timestamp {
color: var(--ooui-text);
}
.mw-echo-ui-bundleNotificationItemWidget-group {
background-color: var(--body-main);
}
@keyframes unseen-fadeout-to-unread {
from {
background-color: var(--wikitable-bg-lighter);
}
to {
background-color: var(--search-box);
}
}
@keyframes unseen-fadeout-to-read {
from {
background-color: var(--wikitable-bg-lighter);
}
to {
background-color: var(--body-main);
}
}
.mwe-popups {
background: var(--body-light);
}
.mwe-popups .mwe-popups-container {
color: var(--text-color);
background: var(--body-light);
}
.mwe-popups .mwe-popups-container.flipped-x-y:before,
.mwe-popups .mwe-popups-container.flipped-y:before {
border-top: none;
}
.mwe-popups .mwe-popups-container.mwe-popups-no-image-tri:before {
border-bottom: none;
}
.mwe-popups .mwe-popups-container.flipped-x-y:after,
.mwe-popups .mwe-popups-container.flipped-y:after {
border-top-color: var(--body-light);
}
.mwe-popups .mwe-popups-container.mwe-popups-no-image-tri:after {
border-bottom-color: var(--body-light);
}
.mwe-popups .mwe-popups-settings-icon:hover,
.mwe-popups .mwe-popups-settings-icon:active {
background-color: var(--ooui-normal--hover);
}
.mwe-popups .mw-ui-icon-element:not(.disabled):hover {
background: none;
}
.mwe-popups .mwe-popups-extract {
color: var(--text-color);
}
.mwe-popups .mwe-popups-extract[dir='ltr']:after {
background-image: linear-gradient(to right, rgba(49, 62, 89, 0), var(--body-light) 50%);
}
.mwe-popups-overlay {
background-color: var(--ooui-window-background);
}
#mwe-popups-settings {
background: var(--ooui-interface);
border-color: var(--ooui-interface-border);
color: var(--text-color);
}
#mwe-popups-settings header {
border-color: var(--ooui-interface-border);
}
#mwe-popups-settings main#mwe-popups-settings-form p {
color: var(--byline-color);
}
#mwe-popups-settings main#mwe-popups-settings-form form label > span {
color: var(--ooui-text);
}
:root {
--smw-ask-options-even-bg: var(--body-mid);
--smw-ask-options-odd-bg: var(--body-light);
--smw-ask-action-btn-lblue-bg: var(--body-main);
--smw-ask-action-btn-lblue-color: #000;
--smw-ask-action-btn-lblue-border-color: var(--body-light);
--smw-ask-action-btn-dblue-bg: var(--body-light);
--smw-ask-action-btn-dblue-color: #fff;
--smw-ask-action-btn-dblue-border-color: var(--button-border);
}
.smw-ask-condition fieldset,
.smw-ask-printhead fieldset {
border-color: var(--sidebar);
}
.smw-ask-search fieldset,
.smw-ask-format fieldset,
.smw-ask-options fieldset {
border-color: var(--sidebar);
}
.strike > span:before,
.strike > span:after {
background: var(--sidebar);
}
.smw-ask-options-fields tr td {
background-color: var(--smw-ask-options-even-bg);
}
.smw-ask-options-fields tr:nth-child(odd) td {
background-color: var(--smw-ask-options-odd-bg);
}
.smw-ask-action-btn.smw-ask-action-btn-lblue,
.smw-ask-action-btn.smw-ask-action-btn-lblue:hover,
.smw-ask-action-btn.smw-ask-action-btn-lblue:visited {
background-color: var(--smw-ask-action-btn-lblue-bg);
color: var(--smw-ask-action-btn-lblue-color);
border-color: var(--smw-ask-action-btn-lblue-border-color);
}
.smw-ask-action-btn.smw-ask-action-btn-dblue,
.smw-ask-action-btn.smw-ask-action-btn-dblue:hover,
.smw-ask-action-btn.smw-ask-action-btn-dblue:visited {
background-color: var(--smw-ask-action-btn-dblue-bg);
color: var(--smw-ask-action-btn-dblue-color);
border-color: var(--smw-ask-action-btn-dblue-border-color);
}
.smw-ask-query textarea,
.smw-ask-actions textarea {
background-color: var(--ooui-interface);
border-color: var(--ooui-interface-border);
color: var(--ooui-text);
}
.smw-ask-query-format select {
background-color: var(--ooui-interface);
border: 1px solid var(--ooui-interface-border);
color: var(--ooui-text);
}
.smw-ask-toplinks {
background-color: var(--body-mid);
}
.smw-ask-toplinks span.smw-icon-info {
background: none;
padding: 0 !important;
}
.smw-ask-toplinks span.smw-icon-info::before {
content: '';
background: var(--text-color);
-webkit-mask: url("data:image/svg+xml,%3C%3Fxml version='1.0' encoding='UTF-8'%3F%3E%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 20 20'%3E%3Ctitle%3Einfo%3C/title%3E%3Cpath d='M10 0C4.477 0 0 4.477 0 10s4.477 10 10 10 10-4.477 10-10S15.523 0 10 0zM9 5h2v2H9zm0 4h2v6H9z'/%3E%3C/svg%3E") no-repeat 50% 50% / contain;
mask: url("data:image/svg+xml,%3C%3Fxml version='1.0' encoding='UTF-8'%3F%3E%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 20 20'%3E%3Ctitle%3Einfo%3C/title%3E%3Cpath d='M10 0C4.477 0 0 4.477 0 10s4.477 10 10 10 10-4.477 10-10S15.523 0 10 0zM9 5h2v2H9zm0 4h2v6H9z'/%3E%3C/svg%3E") no-repeat 50% 50% / contain;
padding: 0 0 3px 18px;
}
.smw-ask-options-row-odd {
background-color: var(--body-light);
}
.smw-ask-options-row-even {
background-color: var(--body-mid);
}
#options-toggle:not(:checked) + #options-list .options-parameter-list:after {
background-image: linear-gradient(to bottom, transparent, var(--body-mid) 90%);
}
.smw-ask-button-submit input {
background-color: var(--ooui-normal);
border-color: var(--ooui-normal-border);
color: var(--text-color);
}
.smw-ask-button-submit input:hover,
.smw-ask-button-lgrey:hover {
background-color: var(--ooui-normal--hover);
border-color: var(--ooui-normal-border);
}
input.smw-ask-action-btn.smw-ask-action-btn-dblue {
background-color: var(--ooui-normal);
border-color: var(--ooui-normal-border);
color: var(--ooui-text);
}
a.smw-ask-action-btn.smw-ask-action-btn-lblue {
background-color: var(--body-mid);
border-color: var(--body-mid);
color: var(--ooui-text);
}
a.smw-ask-action-btn.smw-ask-action-btn-lblue:visited {
background-color: var(--body-mid);
border-color: var(--body-mid);
color: var(--ooui-text);
}
a.smw-ask-action-btn.smw-ask-action-btn-lblue:hover {
background-color: var(--body-mid);
border-color: var(--body-mid);
color: var(--ooui-text);
}
a.smw-ask-action-btn-lgrey {
background-color: var(--ooui-normal);
border-color: var(--ooui-normal-border);
color: var(--ooui-text);
}
a.smw-ask-action-btn-lgrey:hover {
background-color: var(--ooui-normal--hover);
border-color: var(--ooui-normal-border);
color: var(--ooui-text);
}
.smw-callout-error {
background-color: var(--errorbox-bg);
border-color: var(--errorbox-border);
}
.smw-callout-info {
background-color: var(--body-light);
border-color: var(--body-dark);
}
.smw-callout-success {
background-color: var(--successbox-bg);
border-color: var(--successbox-border);
}
.smw-callout-warning {
background-color: var(--warningbox-bg);
border-color: var(--warningbox-bg);
}
.smw-tabs input.nav-tab:checked + label.nav-label,
.smw-tabs input.nav-tab:checked + label.nav-label:hover {
color: inherit;
}
#tab-smw-property-value:checked + label.nav-label .usage-count {
color: #fff;
background-color: var(--ooui-progressive);
}
#tab-smw-property-value:checked + label.nav-label .usage-count.moderate {
color: #fff;
background-color: #b55e0c;
border-color: #b55e0c;
}
#tab-smw-property-value:checked + label.nav-label .usage-count.high {
color: #fff;
background-color: #9f261e;
border-color: #9f261e;
}
.smw-property-page-results .header-title {
background-color: var(--ooui-interface);
border-bottom-color: var(--ooui-interface-border);
color: var(--ooui-text);
}
.smw-property-page-results .value-row:hover {
background-color: var(--ooui-normal--hover);
}
.smw-property-page-results .smw-table .header-row {
color: var(--text-color);
}
.tippy-tooltip.light-border-theme {
background-color: var(--body-light);
color: var(--text-color);
}
.tippy-tooltip.light-border-theme .tippy-arrow {
border-top-color: var(--body-light);
}
.tippy-tooltip.light-border-theme .tippy-arrow:after {
border-top-color: var(--body-light);
}
.tippy-header {
background-color: var(--body-dark);
border-bottom-color: var(--body-mid);
}
.smw-ui-input-filter {
background-color: var(--ooui-interface);
border-color: var(--ooui-interface-border);
color: var(--ooui-text);
}
.smw-ui-input-filter input {
border-left-color: var(--ooui-interface-border) !important;
color: var(--ooui-text) !important;
}
.smw-ui-pagination .page-link.link-disabled {
background-color: var(--ooui-disabled);
border-color: var(--ooui-disabled-border);
color: var(--subtle-color);
}
.smw-ui-pagination .page-link {
background-color: var(--ooui-normal);
border-color: var(--ooui-normal-border);
color: var(--link-color);
}
.smw-ui-pagination .page-link:hover {
background-color: var(--ooui-normal--hover);
border-color: var(--ooui-normal-border);
color: var(--link-color);
}
.smw-ui-pagination .page-link.link-active {
color: #fff;
background-color: var(--ooui-progressive);
border-color: var(--ooui-progressive);
}
.smw-tabs input.nav-tab:checked + label.nav-label {
border-color: var(--ooui-normal-border);
}
.smw-tabs section,
.smw-tabs .subtab-content {
border-top-color: var(--ooui-normal-border);
}
.smw-column-header {
color: var(--text-color);
}
.smw-factbox {
background: var(--body-main);
border-color: transparent;
}
.mw-body .mw-indicators #mw-indicator-smw-entity-examiner.mw-indicator .smw-indicator-vertical-bar-loader {
display: none;
}
.smwb-theme-light .smwb-title,
.smwb-theme-light .smwb-center,
.smwb-theme-light .smwb-actions,
.smwb-theme-light .smwb-prophead {
background-color: var(--body-mid);
}
.smwb-theme-light .smwb-factbox {
border-left-color: var(--body-mid);
}
.smwb-theme-light .smwb-ifactbox {
border-right-color: var(--body-mid);
}
.smwb-theme-light .smwb-propval {
background-color: var(--body-light);
}
.smwb-action-separator {
border-color: var(--wikitable-border);
}
.smwb-bottom {
border-bottom: 1px solid var(--wikitable-border);
}
.smwb-ifactbox .smwb-cell,
.smwb-factbox .smwb-cell {
border-top: 1px solid var(--wikitable-border);
}
.smwb-propvalue .smwb-prophead,
.smwb-ipropvalue .smwb-prophead,
.smwb-propvalue .smwb-propval,
.smwb-ipropvalue .smwb-propval {
font-size: 0.9em;
}
:root {
--filter-black-to-link: invert(36%) sepia(58%) saturate(433%) hue-rotate(344deg) brightness(100%) contrast(91%);
}
#bodyContent span.smwbrowse a {
color: black;
background-image: url('filepath://Smwbrowse.svg');
filter: var(--filter-black-to-link);
}
#bodyContent span.smwbrowse a:hover {
color: black;
background-image: url('filepath://Smwbrowse-hover.svg');
text-decoration: underline;
}
#bodyContent span.smwsearch a {
color: black;
filter: var(--filter-black-to-link);
background-image: url('filepath://Smwsearch.svg');
}
#bodyContent span.smwsearch a:hover {
color: black;
background-image: url('filepath://Smwsearch-hover.svg');
text-decoration: underline;
}
:root {
--tabber-tab-bg: var(--body-light);
--tabber-tab-border-color: var(--body-border);
--tabber-active-tab-bg: var(--body-light);
--tabber-active-tab-color: var(--text-color);
--tabber-active-tab-hover-bg: var(--body-light);
--tabber-active-tab-hover-border-color: var(--body-border);
--tabber-active-tab-hover-color: var(--text-color);
--tabber-active-tab-border-hider-color: var(--body-light);
--tabber-inactive-tab-bg: var(--body-background-color);
--tabber-inactive-tab-border-color: var(--body-border);
--tabber-inactive-tab-color: var(--text-color);
--tabber-inactive-tab-hover-bg: var(--body-light);
--tabber-inactive-tab-hover-border-color: var(--body-border);
}
.tabber {
margin: 1em 0;
}
.tabber .tabbertab {
background-color: var(--tabber-tab-bg);
border: 1px solid var(--tabber-tab-border-color);
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
padding: 1em 1.5em;
}
ul.tabbernav {
border: none;
margin-left: 2em;
margin-bottom: 0;
margin-right: 2em;
padding: 0;
font-family: inherit;
}
ul.tabbernav li.tabberactive > a {
background-color: var(--tabber-active-tab-bg);
color: var(--tabber-active-tab-color);
border-bottom: none;
position: relative;
}
ul.tabbernav li.tabberactive > a:hover {
color: var(--tabber-active-tab-hover-color);
background-color: var(--tabber-active-tab-hover-bg);
border-color: var(--tabber-active-tab-hover-border-color);
border-bottom: none;
}
ul.tabbernav li.tabberactive > a::after {
content: '';
position: absolute;
left: 0;
right: 0;
bottom: -1px;
border-bottom: 2px solid var(--tabber-active-tab-border-hider-color);
}
ul.tabbernav li a {
background-color: var(--tabber-inactive-tab-bg);
border-bottom: transparent;
border-color: var(--tabber-inactive-tab-border-color);
color: var(--tabber-inactive-tab-color);
display: inline-block;
font-size: 110%;
padding: 0.5em 1em;
}
ul.tabbernav li a:hover {
background-color: var(--tabber-inactive-tab-hover-bg);
border-color: var(--tabber-inactive-tab-hover-border-color);
}
ul.tabbernav li a:link,
ul.tabbernav li a:visited {
color: var(--tabber-inactive-tab-color);
}
:root {
--ooui-text: var(--text-color);
--ooui-interface: var(--body-light);
--ooui-interface-border: var(--body-border);
--ooui-window-background: rgba(255, 255, 255, 0.5);
--ooui-normal: #d5c7ad;
--ooui-normal--hover: #dfd5c1;
--ooui-normal-border: #b8a282;
--ooui-progressive: #605443;
--ooui-progressive--hover: #7e6e58;
--ooui-accent: var(--link-color);
--ooui-input: #fff;
--ooui-input-border: #b8a282;
--ooui-input-border--hover: #8a724f;
--ooui-disabled: #d1cdc5;
--ooui-disabled-border: #c2b9ab;
--ooui-disabled-text: var(--subtle-color);
--ooui-pending-background-image: repeating-linear-gradient(-45deg, var(--search-box), var(--search-box) 20px, var(--body-main) 20px, var(--body-main) 30px);
}
.oo-ui-widget {
color: var(--ooui-text);
}
.oo-ui-checkboxInputWidget [type='checkbox'] + span,
.oo-ui-radioInputWidget [type='radio'] + span {
background-color: var(--ooui-input);
border-color: var(--ooui-input-border);
}
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:checked + span,
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:indeterminate + span {
background-color: var(--ooui-progressive);
border-color: var(--ooui-progressive);
}
.oo-ui-radioInputWidget.oo-ui-widget-enabled [type='radio']:checked + span {
border-color: var(--ooui-progressive);
}
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:checked:hover + span,
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:indeterminate:hover + span {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
}
.oo-ui-radioInputWidget.oo-ui-widget-enabled [type='radio']:checked:hover + span {
border-color: var(--ooui-progressive--hover);
}
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:hover + span,
.oo-ui-radioInputWidget.oo-ui-widget-enabled [type='radio']:hover + span {
border-color: var(--ooui-accent);
}
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:focus + span {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:active + span,
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:checked:active + span,
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:indeterminate:active + span {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
box-shadow: inset 0 0 0 1px var(--ooui-progressive--hover);
}
.oo-ui-radioInputWidget.oo-ui-widget-enabled [type='radio']:active + span {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
}
.oo-ui-radioInputWidget.oo-ui-widget-enabled [type='radio']:checked:active + span {
border-color: var(--ooui-progressive--hover);
box-shadow: inset 0 0 0 1px var(--ooui-progressive--hover);
}
.oo-ui-radioInputWidget.oo-ui-widget-enabled [type='radio']:checked:active + span:before {
border-color: var(--ooui-progressive--hover);
}
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:checked:focus + span,
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:indeterminate:focus + span {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent), inset 0 0 0 2px #fff;
}
.oo-ui-checkboxInputWidget [type='checkbox']:disabled + span,
.oo-ui-radioInputWidget [type='radio']:disabled + span {
background-color: var(--ooui-disabled);
border-color: var(--ooui-disabled);
}
.oo-ui-dropdownWidget-handle {
border-color: var(--ooui-normal-border);
}
.oo-ui-dropdownWidget.oo-ui-widget-enabled .oo-ui-dropdownWidget-handle {
background-color: var(--ooui-normal);
color: var(--ooui-text);
}
.oo-ui-dropdownWidget.oo-ui-widget-enabled .oo-ui-dropdownWidget-handle:hover {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
}
.oo-ui-dropdownWidget.oo-ui-widget-enabled .oo-ui-dropdownWidget-handle:active {
color: var(--ooui-text);
}
.oo-ui-dropdownWidget.oo-ui-widget-enabled .oo-ui-dropdownWidget-handle:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-dropdownWidget.oo-ui-widget-enabled.oo-ui-dropdownWidget-open .oo-ui-dropdownWidget-handle {
background-color: var(--ooui-normal--hover);
}
.oo-ui-dropdownWidget.oo-ui-widget-disabled .oo-ui-dropdownWidget-handle {
color: var(--ooui-disabled-text);
text-shadow: none;
border-color: var(--ooui-disabled-border);
background-color: var(--ooui-disabled);
}
.oo-ui-dropdownInputWidget select {
border-color: var(--ooui-normal-border);
}
.oo-ui-dropdownInputWidget option {
background-color: var(--ooui-interface);
}
.oo-ui-dropdownInputWidget.oo-ui-widget-enabled {
background-color: var(--ooui-normal);
}
.oo-ui-dropdownInputWidget.oo-ui-widget-enabled:hover {
background-color: var(--ooui-normal--hover);
}
.oo-ui-dropdownInputWidget.oo-ui-widget-enabled select {
color: var(--ooui-text);
}
.oo-ui-dropdownInputWidget.oo-ui-widget-enabled select:hover,
.oo-ui-dropdownInputWidget.oo-ui-widget-enabled select:active {
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
}
.oo-ui-dropdownInputWidget.oo-ui-widget-enabled select:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-labelWidget.oo-ui-inline-help {
color: var(--byline-color);
}
.oo-ui-menuSelectWidget {
background-color: var(--ooui-interface);
border-color: var(--ooui-interface-border);
}
.oo-ui-menuSelectWidget-frameless {
box-shadow: inset 0 -1px 0 0 var(--ooui-normal-border);
}
.oo-ui-menuSectionOptionWidget {
color: var(--byline-color);
}
.oo-ui-menuOptionWidget.oo-ui-optionWidget-highlighted,
.oo-ui-menuOptionWidget.oo-ui-optionWidget-selected {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
}
.oo-ui-menuOptionWidget.oo-ui-optionWidget-selected.oo-ui-menuOptionWidget.oo-ui-optionWidget-highlighted,
.oo-ui-menuOptionWidget.oo-ui-optionWidget-pressed.oo-ui-menuOptionWidget.oo-ui-optionWidget-highlighted {
color: var(--ooui-accent);
}
.oo-ui-menuOptionWidget.oo-ui-widget-enabled.oo-ui-optionWidget {
color: var(--ooui-text);
}
.oo-ui-messageDialog-title {
color: inherit;
}
.oo-ui-messageWidget.oo-ui-messageWidget-block.oo-ui-flaggedElement-error {
background-color: var(--errorbox-bg);
border-color: var(--errorbox-border);
}
.oo-ui-messageWidget.oo-ui-messageWidget-block.oo-ui-flaggedElement-warning {
background-color: var(--warningbox-bg);
border-color: var(--warningbox-border);
}
.oo-ui-messageWidget.oo-ui-messageWidget-block.oo-ui-flaggedElement-success {
background-color: var(--successbox-bg);
border-color: var(--successbox-border);
}
.oo-ui-messageWidget.oo-ui-messageWidget-block.oo-ui-flaggedElement-notice {
background-color: var(--messagebox-info-background);
border-color: var(--messagebox-info-border);
}
.oo-ui-messageWidget.oo-ui-flaggedElement-error:not(.oo-ui-messageWidget-block),
.oo-ui-messageWidget.oo-ui-flaggedElement-success:not(.oo-ui-messageWidget-block) {
color: var(--ooui-text);
}
.oo-ui-optionWidget.oo-ui-widget-disabled {
color: var(--ooui-disabled-text);
}
.oo-ui-outlineControlsWidget {
background-color: var(--ooui-normal);
}
.oo-ui-outlineOptionWidget.oo-ui-optionWidget-highlighted {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
}
.oo-ui-popupWidget-popup {
background-color: var(--ooui-interface);
border-color: var(--ooui-interface-border);
}
.oo-ui-popupWidget-anchored-top .oo-ui-popupWidget-anchor:after {
border-bottom-color: var(--ooui-interface);
}
.oo-ui-popupWidget-anchored-top .oo-ui-popupWidget-anchor:before {
border-bottom-color: var(--ooui-interface-border);
}
.oo-ui-popupWidget-anchored-bottom .oo-ui-popupWidget-anchor:after {
border-top-color: var(--ooui-interface);
}
.oo-ui-popupWidget-anchored-bottom .oo-ui-popupWidget-anchor:before {
border-top-color: var(--ooui-interface-border);
}
.oo-ui-popupWidget-anchored-start .oo-ui-popupWidget-anchor:after {
border-right-color: var(--ooui-interface);
}
.oo-ui-popupWidget-anchored-start .oo-ui-popupWidget-anchor:before {
border-right-color: var(--ooui-interface-border);
}
.oo-ui-popupWidget-anchored-end .oo-ui-popupWidget-anchor:after {
border-left-color: var(--ooui-interface);
}
.oo-ui-popupWidget-anchored-end .oo-ui-popupWidget-anchor:before {
border-left-color: var(--ooui-interface-border);
}
.oo-ui-searchWidget-query {
border-bottom-color: var(--ooui-interface-border);
}
.oo-ui-selectFileWidget-dropTarget {
background-color: var(--ooui-interface);
border-color: var(--ooui-interface-border);
}
.oo-ui-selectFileWidget.oo-ui-widget-enabled.oo-ui-selectFileWidget-dropTarget {
background-color: var(--ooui-interface);
}
.oo-ui-selectFileWidget.oo-ui-widget-enabled.oo-ui-selectFileWidget-dropTarget:hover {
border-color: var(--ooui-input-border--hover);
}
.oo-ui-tabOptionWidget {
color: var(--ooui-text);
}
.oo-ui-tabSelectWidget-framed .oo-ui-tabOptionWidget.oo-ui-optionWidget-selected {
background-color: var(--body-dark);
color: var(--ooui-text);
}
.oo-ui-tabSelectWidget-framed .oo-ui-tabOptionWidget.oo-ui-optionWidget-selected .oo-ui-labelElement-label {
border-bottom-color: var(--body-border);
}
.oo-ui-tabSelectWidget-framed .oo-ui-tabOptionWidget.oo-ui-widget-enabled:hover,
.oo-ui-tabSelectWidget-framed .oo-ui-tabOptionWidget.oo-ui-widget-enabled:active {
background-color: var(--body-light);
color: var(--ooui-text);
}
.oo-ui-tabSelectWidget-framed .oo-ui-tabOptionWidget.oo-ui-widget-enabled.oo-ui-optionWidget-selected:hover {
background-color: var(--body-dark);
}
.oo-ui-tabSelectWidget-frameless .oo-ui-tabOptionWidget.oo-ui-optionWidget-selected {
color: var(--ooui-progressive);
box-shadow: inset 0 -2px 0 0 var(--ooui-progressive);
}
.oo-ui-tabSelectWidget-frameless .oo-ui-tabOptionWidget.oo-ui-optionWidget-selected:hover,
.oo-ui-tabSelectWidget-frameless .oo-ui-tabOptionWidget.oo-ui-optionWidget-selected:focus {
color: var(--ooui-progressive--hover);
box-shadow: inset 0 -2px 0 0 var(--ooui-progressive--hover);
}
.oo-ui-tabSelectWidget-framed {
background: none;
border-bottom: 1px solid var(--ooui-interface-border);
}
.oo-ui-tabSelectWidget-frameless {
box-shadow: inset 0 -1px 0 0 var(--ooui-interface-border);
}
.oo-ui-tabSelectWidget-mobile {
}
.oo-ui-tabSelectWidget-mobile.oo-ui-tabSelectWidget-framed:after {
background: var(--mobile-navbox-linear-gradient);
}
.oo-ui-tabSelectWidget-mobile.oo-ui-tabSelectWidget-frameless:after {
background: var(--mobile-navbox-linear-gradient);
}
.oo-ui-tagItemWidget {
border-color: var(--ooui-normal-border);
}
.oo-ui-tagItemWidget.oo-ui-widget-enabled {
color: var(--ooui-text);
}
.oo-ui-tagItemWidget.oo-ui-widget-enabled:hover {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
}
.oo-ui-tagItemWidget.oo-ui-widget-enabled:not( .oo-ui-tagItemWidget-fixed ) {
background-color: var(--ooui-normal);
}
.oo-ui-tagItemWidget.oo-ui-widget-enabled .oo-ui-buttonElement-button:hover {
background-color: var(--ooui-normal--hover);
}
.oo-ui-tagMultiselectWidget.oo-ui-widget-enabled {
background-color: var(--ooui-interface);
}
.oo-ui-tagMultiselectWidget.oo-ui-widget-enabled.oo-ui-tagMultiselectWidget-outlined {
background-color: var(--ooui-normal);
}
.oo-ui-tagMultiselectWidget.oo-ui-widget-enabled.oo-ui-tagMultiselectWidget-outlined .oo-ui-tagItemWidget.oo-ui-widget-enabled {
background-color: var(--ooui-interface);
}
.oo-ui-textInputWidget .oo-ui-inputWidget-input {
background-color: var(--ooui-input);
color: var(--ooui-text);
border-color: var(--ooui-input-border);
}
.oo-ui-textInputWidget.oo-ui-widget-enabled .oo-ui-inputWidget-input::placeholder {
color: var(--subtle-color);
}
.oo-ui-textInputWidget.oo-ui-widget-enabled .oo-ui-inputWidget-input:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-textInputWidget.oo-ui-widget-enabled .oo-ui-inputWidget-input[readonly]:not(.oo-ui-pendingElement-pending) {
background-color: var(--ooui-disabled);
color: var(--ooui-disabled-text);
}
.oo-ui-textInputWidget.oo-ui-widget-enabled:hover .oo-ui-inputWidget-input {
border-color: var(--ooui-input-border--hover);
}
.oo-ui-textInputWidget.oo-ui-widget-enabled:hover .oo-ui-inputWidget-input:focus {
border-color: var(--ooui-accent);
}
@media screen and (min-width: 0) {
.oo-ui-textInputWidget.oo-ui-widget-enabled textarea.oo-ui-inputWidget-input:focus {
outline: 1px solid var(--ooui-accent);
}
}
.oo-ui-textInputWidget.oo-ui-widget-disabled .oo-ui-inputWidget-input {
background-color: var(--ooui-disabled);
color: var(--ooui-disabled-text);
text-shadow: none;
border-color: var(--ooui-disabled-border);
}
.oo-ui-toggleSwitchWidget {
background-color: var(--ooui-input);
border-color: var(--ooui-input-border);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled .oo-ui-toggleSwitchWidget-grip {
background-color: var(--ooui-input);
border-color: var(--ooui-input-border);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:hover {
background-color: var(--ooui-input);
border-color: var(--ooui-accent);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:hover .oo-ui-toggleSwitchWidget-grip {
background-color: var(--ooui-input);
border-color: var(--ooui-accent);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:active,
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:active:hover,
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:active:focus {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
box-shadow: inset 0 0 0 1px var(--ooui-progressive--hover);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:active .oo-ui-toggleSwitchWidget-grip,
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:active:hover .oo-ui-toggleSwitchWidget-grip,
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:active:focus .oo-ui-toggleSwitchWidget-grip {
background-color: var(--ooui-input);
border-color: var(--ooui-input);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:focus .oo-ui-toggleSwitchWidget-grip {
border-color: var(--ooui-accent);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled.oo-ui-toggleWidget-on {
background-color: var(--ooui-progressive);
border-color: var(--ooui-progressive);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled.oo-ui-toggleWidget-on .oo-ui-toggleSwitchWidget-grip {
background-color: var(--ooui-input);
border-color: var(--ooui-input);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled.oo-ui-toggleWidget-on:hover {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled.oo-ui-toggleWidget-on:active,
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled.oo-ui-toggleWidget-on:active:hover {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled.oo-ui-toggleWidget-on:focus {
border-color: var(--ooui-progressive);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled.oo-ui-toggleWidget-on:focus::before {
border-color: #fff;
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-disabled {
background-color: var(--ooui-disabled);
border-color: var(--ooui-disabled);
}
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled > .oo-ui-buttonElement-button {
color: var(--ooui-text);
}
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled > .oo-ui-buttonElement-button:hover {
color: var(--ooui-text);
}
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled > .oo-ui-buttonElement-button:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled.oo-ui-buttonElement-pressed > input.oo-ui-buttonElement-button,
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled > .oo-ui-buttonElement-button:active {
color: var(--ooui-text);
}
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button,
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button:hover {
color: var(--ooui-text);
}
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button:active,
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive.oo-ui-buttonElement-pressed > .oo-ui-buttonElement-button {
color: var(--ooui-text);
border-color: var(--ooui-text);
}
.oo-ui-buttonElement-frameless.oo-ui-widget-disabled > .oo-ui-buttonElement-button {
color: var(--ooui-disabled-text);
}
.oo-ui-buttonElement-framed.oo-ui-widget-disabled > .oo-ui-buttonElement-button {
background-color: var(--ooui-disabled);
border-color: var(--ooui-disabled-border);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled > .oo-ui-buttonElement-button {
background-color: var(--ooui-normal);
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled > .oo-ui-buttonElement-button:hover {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled > .oo-ui-buttonElement-button:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-buttonElement-active > .oo-ui-buttonElement-button {
background-color: var(--ooui-progressive--hover);
color: #fff;
border-color: var(--ooui-progressive--hover);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-buttonElement-active > .oo-ui-buttonElement-button:focus {
border-color: var(--ooui-progressive--hover);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled > .oo-ui-buttonElement-button:active,
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-buttonElement-pressed > .oo-ui-buttonElement-button {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive {
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button {
color: var(--ooui-text);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button:hover {
background-color: var(--ooui-normal--hover);
border-color: var(--ooui-progressive--hover);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-destructive > .oo-ui-buttonElement-button {
color: var(--ooui-text);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-destructive > .oo-ui-buttonElement-button:hover {
background-color: var(--ooui-normal--hover);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button {
background-color: var(--ooui-progressive);
border-color: var(--ooui-progressive);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button:hover {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent), inset 0 0 0 2px #fff;
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button:active,
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive.oo-ui-buttonElement-pressed > .oo-ui-buttonElement-button,
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive.oo-ui-buttonElement-active > .oo-ui-buttonElement-button,
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive.oo-ui-popupToolGroup-active > .oo-ui-buttonElement-button {
color: #fff;
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
}
.oo-ui-pendingElement-pending {
background-image: var(--ooui-pending-background-image);
background-size: 200%;
animation: oo-ui-pendingElement-stripes 6s linear infinite;
}
@keyframes oo-ui-pendingElement-stripes {
100% {
background-position: 100%;
}
}
.oo-ui-messageDialog-content > .oo-ui-window-foot {
outline-color: var(--ooui-interface-border);
}
.oo-ui-messageDialog-message {
color: var(--ooui-text);
}
.oo-ui-messageDialog-actions-horizontal .oo-ui-actionWidget {
border-right-color: var(--ooui-interface-border);
}
.oo-ui-messageDialog-actions-vertical .oo-ui-actionWidget {
border-bottom-color: var(--ooui-interface-border);
}
.oo-ui-processDialog-content .oo-ui-window-head,
.oo-ui-processDialog-content .oo-ui-window-foot {
outline-color: var(--ooui-interface-border);
}
.oo-ui-processDialog .oo-ui-actionWidget > .oo-ui-buttonElement-button {
border-top-color: transparent;
border-bottom-color: transparent;
}
.oo-ui-processDialog .oo-ui-actionWidget > .oo-ui-buttonElement-button:hover,
.oo-ui-processDialog .oo-ui-actionWidget > .oo-ui-buttonElement-button:active {
border-top-color: transparent;
border-bottom-color: transparent;
}
.oo-ui-processDialog .oo-ui-actionWidget:not( .oo-ui-flaggedElement-progressive ):not( .oo-ui-flaggedElement-destructive ) > .oo-ui-buttonElement-button:hover,
.oo-ui-processDialog .oo-ui-actionWidget:not( .oo-ui-flaggedElement-progressive ):not( .oo-ui-flaggedElement-destructive ) > .oo-ui-buttonElement-button:active {
border-right-color: var(--ooui-interface-border);
border-left-color: transparent;
}
.oo-ui-processDialog .oo-ui-actionWidget:not( .oo-ui-flaggedElement-progressive ):not( .oo-ui-flaggedElement-destructive ) > .oo-ui-buttonElement-button:focus {
border-color: var(--ooui-accent);
}
.oo-ui-processDialog-actions-safe .oo-ui-actionWidget > .oo-ui-buttonElement-button,
.oo-ui-processDialog-actions-other .oo-ui-actionWidget > .oo-ui-buttonElement-button {
border-right-color: var(--ooui-normal-border);
border-left-color: transparent;
}
.oo-ui-processDialog-actions-safe .oo-ui-widget-enabled.oo-ui-iconElement:not( .oo-ui-labelElement ) > .oo-ui-buttonElement-button:hover {
background-color: var(--ooui-normal--hover);
border-right-color: var(--ooui-interface-border);
}
.oo-ui-windowManager-modal > .oo-ui-dialog {
background-color: var(--ooui-window-background);
}
.oo-ui-windowManager-modal > .oo-ui-dialog > .oo-ui-window-frame {
background-color: var(--ooui-interface);
}
.oo-ui-windowManager-modal.oo-ui-windowManager-floating > .oo-ui-dialog > .oo-ui-window-frame {
border-color: var(--ooui-interface-border);
}
.oo-ui-window {
color: var(--ooui-text);
}
.oo-ui-toolbar-bar {
background-color: var(--ooui-interface);
color: var(--ooui-text);
}
.oo-ui-toolbar-position-top > .oo-ui-toolbar-bar {
border-bottom-color: var(--body-mid);
}
.oo-ui-toolbar-bar .oo-ui-bookletLayout > .oo-ui-menuLayout-menu {
border-right-color: var(--body-mid);
}
.oo-ui-tool.oo-ui-widget-enabled > .oo-ui-tool-link:hover {
background-color: var(--ooui-normal--hover);
}
.oo-ui-tool.oo-ui-widget-enabled > .oo-ui-tool-link:focus {
outline: 1px solid var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-tool.oo-ui-widget-enabled > .oo-ui-tool-link:active,
.oo-ui-tool.oo-ui-widget-enabled.oo-ui-tool-active > .oo-ui-tool-link,
.oo-ui-tool.oo-ui-widget-enabled.oo-ui-popupToolGroup-active > .oo-ui-tool-link {
background-color: var(--ooui-normal--hover);
color: var(--ooui-accent);
box-shadow: none;
}
.oo-ui-tool.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive > .oo-ui-tool-link {
background-color: var(--ooui-progressive);
}
.oo-ui-tool.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive > .oo-ui-tool-link:hover {
background-color: var(--ooui-progressive--hover);
}
.oo-ui-tool.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive > .oo-ui-tool-link:focus {
box-shadow: inset 0 0 0 1px var(--ooui-accent), inset 0 0 0 2px #fff;
}
.oo-ui-tool.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive > .oo-ui-tool-link:active,
.oo-ui-tool.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive.oo-ui-tool-active > .oo-ui-tool-link {
background-color: var(--ooui-progressive--hover);
}
.oo-ui-listToolGroup-tools .oo-ui-tool.oo-ui-widget-enabled {
background-color: var(--ooui-normal);
}
.oo-ui-listToolGroup-tools .oo-ui-tool.oo-ui-widget-enabled:hover {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
}
.oo-ui-listToolGroup-tools .oo-ui-tool-active.oo-ui-widget-enabled .oo-ui-tool-link .oo-ui-tool-title {
color: var(--ooui-progressive);
}
.oo-ui-menuToolGroup {
border-left-color: var(--body-mid);
border-right-color: var(--body-mid);
}
.oo-ui-popupToolGroup-tools {
background-color: var(--ooui-interface);
border-color: var(--body-mid);
}
.oo-ui-popupToolGroup.oo-ui-widget-enabled > .oo-ui-popupToolGroup-handle:hover {
background-color: var(--ooui-normal--hover);
}
.oo-ui-popupToolGroup.oo-ui-widget-enabled > .oo-ui-popupToolGroup-handle:focus {
outline: 1px solid var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-toolbar-actions .oo-ui-popupToolGroup.oo-ui-widget-enabled > .oo-ui-popupToolGroup-handle:hover {
border-right-color: var(--ooui-normal--hover);
}
.oo-ui-popupToolGroup-tools .oo-ui-tool.oo-ui-widget-enabled .oo-ui-tool-link:focus {
box-shadow: inset 0 0 0 2px var(--ooui-accent);
}
.oo-ui-popupToolGroup-tools .oo-ui-tool-active.oo-ui-widget-enabled .oo-ui-tool-link .oo-ui-tool-title {
color: var(--ooui-progressive);
}
.oo-ui-popupToolGroup.oo-ui-popupToolGroup-active > .oo-ui-popupToolGroup-handle {
background-color: var(--ooui-normal);
color: var(--ooui-accent);
}
.oo-ui-popupToolGroup.oo-ui-popupToolGroup-active > .oo-ui-popupToolGroup-handle:hover {
background-color: var(--ooui-normal--hover);
color: var(--ooui-accent);
}
.oo-ui-bookletLayout-outlinePanel > .oo-ui-outlineControlsWidget {
border-top-color: var(--ooui-interface-border);
}
.oo-ui-bookletLayout > .oo-ui-menuLayout-menu {
border-right-color: var(--ooui-interface-border);
}
.oo-ui-fieldLayout-disabled > .oo-ui-fieldLayout-body > .oo-ui-fieldLayout-header > .oo-ui-labelElement-label {
color: var(--ooui-disabled-text);
}
.oo-ui-panelLayout-framed {
border-color: var(--sidebar);
}
.oo-ui-icon-settings {
background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' width='20' height='20' viewBox='0 0 20 20'%3E%3Ctitle%3Esettings%3C/title%3E%3Cg transform='translate(10 10)'%3E%3Cpath id='a' d='M1.5-10h-3l-1 6.5h5m0 7h-5l1 6.5h3'/%3E%3Cuse xlink:href='%23a' transform='rotate(45)'/%3E%3Cuse xlink:href='%23a' transform='rotate(90)'/%3E%3Cuse xlink:href='%23a' transform='rotate(135)'/%3E%3C/g%3E%3Cpath d='M10 2.5a7.5 7.5 0 0 0 0 15 7.5 7.5 0 0 0 0-15v4a3.5 3.5 0 0 1 0 7 3.5 3.5 0 0 1 0-7'/%3E%3C/svg%3E");
}
.oo-ui-icon-clear {
background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 20 20'%3E%3Ctitle%3Eclear%3C/title%3E%3Cpath d='M10 0a10 10 0 1 0 10 10A10 10 0 0 0 10 0zm5.66 14.24-1.41 1.41L10 11.41l-4.24 4.25-1.42-1.42L8.59 10 4.34 5.76l1.42-1.42L10 8.59l4.24-4.24 1.41 1.41L11.41 10z'/%3E%3C/svg%3E");
}
.mw-widget-dateInputWidget-handle {
background-color: var(--ooui-input);
color: var(--ooui-text);
border-color: var(--ooui-input-border);
}
.mw-widget-dateInputWidget-calendar {
background-color: var(--ooui-interface);
}
.mw-widget-dateInputWidget.oo-ui-widget-enabled .mw-widget-dateInputWidget-handle:hover {
border-color: var(--ooui-input-border--hover);
}
.mw-widget-calendarWidget {
border-color: var(--ooui-interface-border);
}
.mw-widget-calendarWidget:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.mw-widget-calendarWidget-day,
.mw-widget-calendarWidget-day-heading {
color: var(--ooui-text);
}
.mw-widget-calendarWidget-day-additional {
color: var(--ooui-text);
opacity: 0.67;
}
.mw-widget-calendarWidget-day-today {
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.mw-widget-calendarWidget-item:hover {
background-color: var(--ooui-progressive);
}
.mw-widget-calendarWidget-item-selected {
background-color: var(--ooui-progressive--hover);
}
.mw-widgets-datetime-calendarWidget {
background-color: var(--ooui-interface);
border-color: var(--ooui-interface-border);
}
.mw-widgets-datetime-calendarWidget:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent), 0 2px 2px 0 rgba(0, 0, 0, 0.25);
}
.mw-widgets-datetime-calendarWidget-grid .mw-widgets-datetime-calendarWidget-cell.mw-widgets-datetime-calendarWidget-extra .oo-ui-buttonElement-button .oo-ui-labelElement-label {
color: var(--subtle-color);
}
.mw-widgets-datetime-calendarWidget-grid .mw-widgets-datetime-calendarWidget-cell.mw-widgets-datetime-calendarWidget-selected .oo-ui-buttonElement-button {
background-color: var(--ooui-progressive--hover);
}
.mw-widgets-datetime-dateTimeInputWidget-handle {
background-color: var(--ooui-input);
color: var(--ooui-text);
border-color: var(--ooui-input-border);
}
.mw-widgets-datetime-dateTimeInputWidget.oo-ui-widget-enabled.mw-widgets-datetime-dateTimeInputWidget-handle:hover {
border-color: var(--ooui-input-border--hover);
}
.mw-widgets-datetime-dateTimeInputWidget.oo-ui-widget-enabled:hover input,
.mw-widgets-datetime-dateTimeInputWidget.oo-ui-widget-enabled:hover textarea {
border-color: var(--ooui-input-border--hover);
}
.mw-widgets-datetime-dateTimeInputWidget.oo-ui-widget-enabled .mw-widgets-datetime-dateTimeInputWidget-editField:hover {
background-color: var(--ooui-normal);
}
.ve-activated .ve-init-mw-desktopArticleTarget-originalContent #catlinks:hover {
background: var(--ooui-normal--hover);
}
.ve-ui-overlay {
font-family: inherit;
}
.oo-ui-toolbar-position-top .ve-ui-toolbarDialog-position-above {
border-top-color: var(--body-mid);
}
.ve-ce-branchNode-blockSlug,
.ve-ce-branchNode-newSlug {
outline-color: var(--body-border);
background-color: var(--ooui-interface);
}
.ve-ui-specialCharacterPage h3 {
color: var(--byline-color);
}
.ve-ui-specialCharacterPage-character {
border-color: var(--body-mid);
}
.ve-ui-specialCharacterPage-character:hover {
border-color: var(--body-dark);
}
.ve-ce-linkAnnotation.ve-ce-annotation-active {
box-shadow: 0 0 0 1px var(--body-mid);
background: none;
}
.ve-ui-desktopContext .ve-ui-linkContextItem .ve-ui-linkContextItem-label {
border-color: var(--body-border);
}
.ve-ui-mwHelpPopupTool-version-label,
.ve-ui-mwHelpPopupTool-version-link,
.ve-ui-mwHelpPopupTool-version-date {
color: var(--byline-color);
}
.ve-ce-tableCellableNode {
border-color: var(--body-mid);
}
.ve-ce-mwReferencesListNode-muted {
color: var(--byline-color);
}
.ve-ui-mwTemplatePage-description,
.ve-ui-mwParameterPage-label,
.ve-ui-mwParameterPage-description-required,
.ve-ui-mwParameterPage-description-deprecated {
color: var(--byline-color);
}
.mw-widget-titleWidget-menu .mw-widget-titleOptionWidget-description {
color: var(--byline-color);
}
.ve-ui-mwGalleryDialog-menuLayout > .oo-ui-menuLayout-menu,
.ve-ui-mwGalleryDialog-innerMenuLayout > .oo-ui-menuLayout-menu,
.ve-ui-mwGalleryDialog .ve-ui-mwGalleryDialog-image-container,
.ve-ui-targetWidget {
border-color: var(--body-border);
}
.ve-ui-targetWidget:not(.oo-ui-pendingElement-pending) {
background-color: var(--body-main);
}
.ve-ui-mwSaveDialog {
color: var(--ooui-text);
}
.ve-ui-mwSaveDialog-options {
background-color: var(--ooui-interface);
border-color: var(--body-border);
}
.ve-ui-mwSaveDialog-summary {
background-color: var(--ooui-input);
}
.ve-ui-mwSaveDialog-editSummary-count {
border-color: var(--body-border);
}
.ve-ui-mwSaveDialog-license {
color: var(--byline-color);
}
.ve-ui-mwReferenceContextItem-muted {
color: var(--byline-color);
}
.ve-ui-mwNoticesPopupTool-items > div:not(:first-child),
.ve-ui-mwHelpPopupTool-item:not(:first-child) {
border-color: var(--body-border);
}
.ve-ui-mwTransclusionOutlineControlsWidget {
background-color: var(--ooui-interface);
border-top-color: var(--body-border);
}
.ve-ui-mwTransclusionOutlineTemplateWidget-sticky {
background-color: var(--ooui-interface);
}
.ve-ui-mwTransclusionOutlineTemplateWidget .ve-ui-mwTransclusionOutlineParameterWidget.oo-ui-optionWidget-highlighted {
color: var(--ooui-text);
}
.ve-ui-mwTransclusionOutlineTemplateWidget-no-template-parameters {
color: var(--subtle-color);
}
.ve-ui-mwParameterPage-undocumentedLabel {
color: var(--subtle-color);
}
.ve-ui-mwTwoPaneTransclusionDialogLayout > .oo-ui-menuLayout-menu {
border-right: var(--body-border);
}
.ve-ui-mwParameterPage-doc-required,
.ve-ui-mwParameterPage-doc-deprecated,
.ve-ui-mwParameterPage-inlineDescription .ve-ui-mwParameterPage-doc-example {
color: var(--byline-color);
}
.ve-ui-expandableContent-toggle {
background-color: var(--ooui-interface);
}
.ve-ui-expandableContent-fade {
background: linear-gradient(to right, rgba(255, 255, 255, 0) 0, var(--ooui-interface) 90%);
}
.ve-ui-commandHelpDialog-shortcut > kbd,
.ve-ui-commandHelpDialog-sequence > kbd {
background-color: var(--keypress-background);
color: var(--keypress-color);
border-color: var(--keypress-border);
box-shadow: none;
text-shadow: none;
}
.ve-init-mw-desktopArticleTarget-toolbarPlaceholder-floating .ve-init-mw-desktopArticleTarget-toolbarPlaceholder-bar {
background: var(--ooui-interface);
}
.ve-init-mw-desktopArticleTarget-toolbarPlaceholder-bar {
border-bottom-color: var(--body-mid);
}
figure[typeof~='mw:File/Thumb'],
figure[typeof~='mw:File/Frame'],
figure[typeof~='mw:Image/Thumb'],
figure[typeof~='mw:Video/Thumb'],
figure[typeof~='mw:Image/Frame'],
figure[typeof~='mw:Video/Frame'] {
border: none;
background-color: var(--thumb-bg);
}
figure[typeof~='mw:File/Thumb'] > a:first-child > *:first-child:not( .mw-broken-media ),
figure[typeof~='mw:File/Frame'] > a:first-child > *:first-child:not( .mw-broken-media ),
figure[typeof~='mw:Image/Thumb'] > a:first-child > *:first-child:not( .mw-broken-media ),
figure[typeof~='mw:Video/Thumb'] > a:first-child > *:first-child:not( .mw-broken-media ),
figure[typeof~='mw:Image/Frame'] > a:first-child > *:first-child:not( .mw-broken-media ),
figure[typeof~='mw:Video/Frame'] > a:first-child > *:first-child:not( .mw-broken-media ) {
border: none;
background: var(--thumb-bg);
}
figure[typeof~='mw:File/Thumb'] > figcaption,
figure[typeof~='mw:File/Frame'] > figcaption,
figure[typeof~='mw:Image/Thumb'] > figcaption,
figure[typeof~='mw:Video/Thumb'] > figcaption,
figure[typeof~='mw:Image/Frame'] > figcaption,
figure[typeof~='mw:Video/Frame'] > figcaption {
border: none;
background-color: var(--thumb-caption-bg);
padding: 4px 6px;
}
:root {
--infobox-text-color: var(--text-color);
}
ol.references,
.reflist {
font-size: 90%;
}
.reflist {
list-style-type: decimal;
}
.reflist .references {
font-size: 100%;
list-style-type: inherit;
}
.reflist-lower-alpha {
list-style-type: lower-alpha;
}
ol.references li:target,
sup.reference:target {
background-color: var(--body-light);
}
.hideQuotes .refhide {
display: none;
}
:root {
--byline-arrow-filter: invert(29%) sepia(0%) saturate(376%) hue-rotate(172deg) brightness(87%) contrast(80%);
--tile-border-color: #cabe9b;
--tile-background-color: #f9f3eb;
--tile-link-button-color: #f5e9db;
--tile-link-button-highlight-color: #dfccb0;
--tile-dark-color: #fff;
--tile-dark-bg: #5d6773;
--tile-dark-link-color: #ccc;
--tile-dark-byline-color: rgba(255, 255, 255, 0.7);
--tile-dark-header-color: #fff;
}
.tile {
background: var(--tile-background-color);
border: 1px solid var(--tile-border-color);
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
padding: 1.5em 2em 1em;
max-width: 40em;
}
.tile h2 {
font-size: 1.4em;
font-weight: bold;
border: none;
margin: 0 0 0.4em;
}
.tile .byline + h2 {
margin-top: -0.5em;
}
.tile.dark {
color: var(--tile-dark-color);
background: var(--tile-dark-bg);
border: none;
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.3);
}
.tile.dark h2 {
color: var(--tile-dark-header-color);
}
.tile.dark a {
color: var(--tile-dark-link-color);
}
.tile.dark .byline {
color: var(--tile-dark-byline-color);
}
.byline {
font-size: 0.9em;
color: var(--byline-color);
}
.byline a {
color: var(--byline-color);
}
.tile-row {
display: flex;
flex-flow: row wrap;
margin-bottom: 1em;
}
.tile-halves {
display: flex;
flex-flow: row wrap;
border: 1px solid var(--tile-border-color);
background: var(--tile-background-color);
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
}
.tile-halves h2 {
font-size: 1.4em;
font-weight: bold;
border: none;
margin: 0 0 0.4em;
}
.tile-halves .byline + h2 {
margin-top: -0.5em;
}
.tile-top {
width: 100%;
padding: 1.3rem 1.5rem 0.6rem;
}
.tile-top.tile-image {
display: flex;
align-items: center;
background-color: var(--byline-color);
overflow: hidden;
padding: 0;
height: 13vw;
max-height: 12em;
transition: 0.4s ease-out;
}
.tile-halves:hover .tile-top.tile-image img {
transform: scale(1.1);
transition: 0.5s ease-out;
}
.tile-top.tile-image a {
width: 100%;
}
.tile-top.tile-image img {
width: 100%;
object-fit: cover;
max-height: 200px;
transition: 0.4s ease-out;
}
.tile-bottom {
background: var(--tile-background-color);
border-top: 1px solid var(--tile-border-color);
width: 100%;
padding: 1rem 1.5rem 0.6rem;
}
.tile-bottom.link-button {
align-self: flex-end;
padding: 0;
}
.tile-bottom.link-button a {
display: block;
text-align: center;
padding: 0.75em 1.5em 0.8em;
text-decoration: none;
}
.tile-bottom.read-more {
background: var(--tile-link-button-color);
transition: 0.3s ease-out;
}
.tile-bottom.read-more a {
color: var(--byline-color);
font-weight: bold;
text-align: right;
}
.tile-bottom.read-more:hover {
background: var(--tile-link-button-highlight-color);
}
.tile-bottom.read-more:hover .arrow {
transform: translateX(50%);
}
.tile-bottom.read-more .arrow {
filter: var(--byline-arrow-filter);
margin-left: 0.4em;
transition: 0.3s ease-out;
}
body.page-Main_Page.action-view .catlinks,
body.page-Main_Page.action-view #contentSub,
body.page-Main_Page.action-view #firstHeading,
body.page-Main_Page.action-view #siteNotice {
display: none;
}
body.page-Main_Page .mw-parser-output {
max-width: 75em;
margin: 0 auto;
}
body.page-Main_Page.action-view .catlinks,
body.page-Main_Page.action-view #contentSub,
body.page-Main_Page.action-view #siteNotice {
display: none;
}
.mainpage-header {
display: flex;
margin: 2.6em 1.75em 1.5em;
}
.mainpage-header .header-intro {
flex: 2;
}
.mainpage-header .header-intro h1 {
font-size: 2.5em;
font-weight: bold;
border: none;
margin: 0 0 0.15em;
}
.mainpage-header .header-intro p {
font-size: 1.1em;
line-height: 1.7em;
}
.mainpage-header .header-stats {
flex: 1;
display: flex;
justify-content: center;
align-items: center;
margin-top: -1em;
}
.mainpage-body {
display: grid;
grid-template-areas: "event event event" "update update update" "content content content" "left left right";
gap: 0.9rem;
grid-template-columns: repeat(3, 1fr);
}
.mainpage-body h2 a {
color: var(--text-color);
}
.mainpage-body .tile {
padding-left: 1.75em;
padding-right: 1.75em;
max-width: 100%;
}
.mainpage-body .tile-row {
width: 100%;
margin-bottom: 0;
}
.mainpage-body .tile-row {
display: grid;
gap: 0.9rem;
}
.mainpage-left {
grid-area: left;
flex: 2;
display: flex;
flex-flow: column wrap;
}
.mainpage-left > * {
margin: 0 0 0.9rem;
}
.mainpage-right {
grid-area: right;
flex: 1;
display: flex;
flex-flow: column wrap;
}
.mainpage-right > * {
margin: 0 0 0.9rem;
}
.arrow {
background: url('filepath://White-chevron.svg') no-repeat;
display: inline-block;
height: 0.7rem;
width: 0.45rem;
vertical-align: middle;
}
.arrow.dark {
filter: invert(80%);
}
.mainpage-contents {
grid-area: content;
grid-template-columns: repeat(6, 1fr);
}
.mainpage-contents .tile-halves {
flex: 1;
}
.mainpage-contents .tile-top {
height: 4.5rem;
position: relative;
}
.mainpage-contents h2 {
margin: 0;
padding: 0;
}
.mainpage-contents .tile-bottom.link-button a {
padding: 0.75em 0.2em;
}
.popular-pages ul {
display: grid;
grid-template-columns: repeat(3, 1fr);
grid-gap: 0.6em;
margin: 1em 0 0.7em 0;
}
.mp-popular-page-light {
display: flex;
align-items: center;
background-color: var(--button-background);
transition: 100ms;
}
.mp-popular-page-light a {
flex: 1;
display: block;
color: #fff;
font-weight: bold;
text-align: center;
text-decoration: none;
padding: 0.7em 1em;
}
.mp-popular-page-light:hover {
filter: brightness(115%);
transition: 100ms;
}
.mainpage-discord {
border: none;
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.3);
}
.mainpage-discord .tile-top {
display: flex;
align-items: center;
background: #5865f2;
padding: 1em 1.75em;
}
.mainpage-discord .tile-top a {
flex: 1;
position: relative;
text-decoration: none;
}
.mainpage-discord .tile-top a:hover .arrow {
transform: translateX(50%);
}
.mainpage-discord .tile-bottom {
background: #525ee0;
border: none;
padding: 1em 1.75em;
}
.mainpage-discord .tile-bottom p {
color: #fff;
font-weight: bold;
font-size: 0.9em;
text-align: center;
text-transform: uppercase;
letter-spacing: 0.03em;
margin: 0;
}
.mainpage-discord .partner-icon {
margin-right: 0.75em;
}
.mainpage-discord .server-name {
color: #fff;
font-weight: bold;
font-size: 1.25em;
margin: 0.5em 0 -0.15em;
}
.mainpage-discord .server-tagline {
color: rgba(255, 255, 255, 0.9);
margin-bottom: 0.5em;
}
.mainpage-discord .arrow {
position: absolute;
top: calc(50% - .5em);
right: 0;
height: 1em;
width: 0.7em;
background-size: 0.7em 1em;
transition: 0.3s ease-out;
}
.mainpage-editing {
border: none;
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.3);
}
.mainpage-editing .tile-top {
background: #438ab5;
}
.mainpage-editing .tile-bottom {
background: #3980ab;
border: none;
padding: 0.8rem 1.5rem 0.4rem;
}
.mainpage-editing h2,
.mainpage-editing a {
color: #fff;
}
.mainpage-editing p {
color: rgba(255, 255, 255, 0.9);
}
.mainpage-editing ul {
list-style-image: url('filepath://Transparent-chevron.svg');
}
@media only screen and (max-width: 1200px) {
.mainpage-contents {
grid-template-columns: repeat(3, 1fr);
}
}
@media only screen and (max-width: 1000px) {
.mainpage-body {
grid-template-areas: "event event event" "update update update" "content content content" "left left left" "right right right";
}
.mainpage-recent-updates {
grid-template-columns: repeat(2, 1fr);
}
.mainpage-recent-updates .tile-halves:last-child {
display: none;
}
.mainpage-recent-updates .tile-halves:hover .tile-top img {
transform: scale(1.04);
}
.mainpage-recent-updates .tile-top {
height: 18vw;
min-height: 9em;
}
.mainpage-header .header-stats {
display: none;
}
.mainpage-left > *:last-child,
.mainpage-right > *:last-child {
margin-bottom: 0;
}
.popular-pages ul {
grid-template-columns: repeat(2, 1fr);
}
}
@media only screen and (max-width: 720px) {
.mainpage-recent-updates {
grid-template-columns: none;
}
.mainpage-recent-updates .tile-halves:last-child {
display: flex;
}
.mainpage-contents {
grid-template-columns: repeat(2, 1fr);
}
}
.mw-prefs-buttons {
background-color: var(--body-main);
border-top-color: var(--body-border);
box-shadow: none;
}
.mw-prefs-tabs-wrapper.oo-ui-panelLayout-framed,
.mw-prefs-tabs > .oo-ui-menuLayout-content > .oo-ui-indexLayout-stackLayout > .oo-ui-tabPanelLayout {
border-color: var(--body-border);
}
.mw-htmlform-ooui .mw-htmlform-matrix tbody tr:nth-child(even) td {
background-color: var(--body-light);
}
.mw-htmlform-ooui .mw-htmlform-matrix tbody tr:hover td {
background-color: var(--body-mid);
}
:root {
--rc-positive-color: #407813;
--rc-negative-color: #b41e0f;
}
.mw-plusminus-pos {
color: var(--rc-positive-color);
}
.mw-plusminus-neg {
color: var(--rc-negative-color);
}
.client-js .mw-recentchanges-toplinks:not(.mw-recentchanges-toplinks-collapsed) {
border-color: var(--body-border);
background-color: var(--body-light);
border-radius: 2px;
}
.mw-rcfilters-ui-filterTagMultiselectWidget-wrapper-content-title {
color: var(--text-color);
}
.mw-rcfilters-ui-filterTagMultiselectWidget-emptyFilters {
color: var(--byline-color);
}
.mw-rcfilters-ui-filterTagMultiselectWidget.oo-ui-widget-enabled .oo-ui-tagMultiselectWidget-handle {
background-color: var(--ooui-interface);
border-color: var(--ooui-interface-border);
}
.mw-rcfilters-ui-filterTagMultiselectWidget-views-select-widget.oo-ui-widget {
border-color: var(--ooui-interface-border);
}
.mw-rcfilters-collapsed .mw-rcfilters-ui-filterTagMultiselectWidget {
border-bottom-color: var(--ooui-interface-border);
}
.mw-rcfilters-ui-menuSelectWidget-footer {
background-color: var(--ooui-interface);
border-color: var(--ooui-interface-border);
}
.mw-rcfilters-ui-viewSwitchWidget label.oo-ui-labelWidget {
color: var(--byline-color);
}
.mw-rcfilters-ui-tagItemWidget-popup-content {
color: var(--ooui-text);
}
.mw-changeslist-legend,
.mw-rcfilters-ui-changesListWrapperWidget .mw-changeslist-legend {
background-color: var(--body-light);
border-color: var(--body-dark);
}
.mw-rcfilters-ui-changesListWrapperWidget-previousChangesIndicator {
border-color: var(--sidebar);
}
.client-js .mw-changeslist ul,
.client-js .mw-changeslist table.mw-enhanced-rc {
margin-left: 0;
}
.mw-rcfilters-ui-watchlistTopSectionWidget-separator {
border-color: var(--sidebar);
}
.mw-rcfilters-ui-itemMenuOptionWidget-header {
border-bottom-color: var(--ooui-interface);
background-color: var(--ooui-interface-border);
}
.mw-rcfilters-ui-itemMenuOptionWidget:not(:last-child):not(.mw-rcfilters-ui-itemMenuOptionWidget-identifier-talk) {
border-bottom-color: var(--ooui-normal-border);
}
.mw-rcfilters-ui-itemMenuOptionWidget-label-title,
.mw-rcfilters-ui-itemMenuOptionWidget-label-desc {
color: var(--text-color);
}
.mw-rcfilters-ui-filterMenuOptionWidget.oo-ui-flaggedElement-muted:not(.oo-ui-optionWidget-selected) {
background-color: var(--body-main);
}
.mw-rcfilters-ui-filterMenuOptionWidget.oo-ui-flaggedElement-muted .mw-rcfilters-ui-itemMenuOptionWidget-label-title,
.mw-rcfilters-ui-filterMenuOptionWidget.oo-ui-flaggedElement-muted .mw-rcfilters-ui-itemMenuOptionWidget-label-desc {
color: var(--subtle-color);
}
.mw-rcfilters-ui-filterMenuSectionOptionWidget {
background-color: var(--body-mid);
}
.mw-rcfilters-ui-filterMenuSectionOptionWidget-header-title.oo-ui-labelElement-label {
color: var(--ooui-text);
}
.mw-rcfilters-ui-filterMenuHeaderWidget-title {
color: var(--ooui-text);
}
.mw-rcfilters-ui-filterMenuHeaderWidget-header {
border-bottom-color: var(--ooui-interface-border);
background-color: var(--ooui-interface);
}
.mw-rcfilters-ui-itemMenuOptionWidget-view-namespaces {
border-top-color: var(--ooui-interface-border);
}
.mw-rcfilters-ui-datePopupWidget {
border-color: var(--ooui-interface-border);
}
.mw-rcfilters-ui-datePopupWidget .mw-rcfilters-ui-valuePickerWidget-title {
color: var(--byline-color);
}
.mw-rcfilters-ui-savedLinksListItemWidget-label {
color: var(--ooui-accent);
}
.client-js .mw-changeslist.mw-rcfilters-ui-changesListWrapperWidget-highlighted ul,
.client-js .mw-changeslist.mw-rcfilters-ui-changesListWrapperWidget-highlighted table.mw-enhanced-rc {
margin-left: 1.5em;
}
.page-Special_CreateAccount .mw-ui-container,
.page-Special_UserLogin .mw-ui-container {
max-width: 64rem;
margin: 0 auto;
}
.mw-number-text {
color: var(--byline-color);
}
.mw-body-content .mw-number-text h3 {
color: var(--text-color);
}
#mw-indicator-mw-helplink a {
background: none;
padding: 0;
display: flex;
align-items: center;
}
#mw-indicator-mw-helplink a::before {
content: '';
margin-right: 5px;
-webkit-mask: url("/resources/src/mediawiki.helplink/images/helpNotice.svg?46d34") no-repeat 50% 50% / contain;
mask: url("/resources/src/mediawiki.helplink/images/helpNotice.svg?46d34") no-repeat 50% 50% / contain;
background: var(--text-color);
height: 20px;
width: 20px;
}
.results-info {
color: inherit;
}
.mw-search-profile-tabs {
background-color: var(--body-mid);
border-color: transparent;
}
.search-types .current a {
color: inherit;
}
#mw-searchoptions {
background-color: var(--body-mid);
border-color: transparent;
}
#mw-searchoptions .divider {
border-color: var(--body-border);
}
#mw-searchoptions h4 {
font-family: inherit;
}
#mw-searchoptions .oo-ui-labelElement:nth-of-type(odd) {
font-weight: bold;
}
.searchresult {
line-height: 1.5;
}
.searchalttitle,
#mw-search-interwiki li {
font-size: 90%;
}
.mw-search-result-data {
color: var(--byline-color);
}
.page-Special_ListFiles a.image img {
width: inherit;
height: inherit;
}
.page-Special_ListFiles .TablePager_col_thumb {
text-align: center;
}
#editcount table[border="1"] {
background-color: var(--body-main) !important;
border-color: var(--wikitable-border) !important;
margin-top: 0.5em;
}
#editcount table[border="1"] th,
#editcount table[border="1"] td {
padding: 0.2em 0.4em;
}
#editcount table[border="1"] th {
background-color: var(--wikitable-header-bg);
border: 1px solid var(--wikitable-border);
}
#editcount table[border="1"] td {
border: 1px solid var(--wikitable-border);
}
#editcount table[border="1"] tr:nth-child(odd) {
background-color: var(--body-light);
}
.mw-echo-ui-notificationBadgeButtonPopupWidget-popup > .oo-ui-popupWidget-popup .mw-echo-ui-placeholderItemWidget {
background-color: inherit;
}
table.mw-interwikitable.body td.mw-interwikitable-local-yes {
background-color: var(--table-yes-background);
color: var(--table-yes-color);
}
.mw-protectedpages-unknown {
color: var(--byline-color);
}
.watchlistredir,
.allpagesredirect {
font-style: italic;
}
.allpagesredirect:after {
color: var(--byline-color);
content: " (redirect)";
}
.mw-apisandbox-toolbar {
background: var(--body-main);
}
.oo-ui-menuOptionWidget .mw-apisandbox-flag {
color: var(--byline-color);
}
tr.mw-abusefilter-list-disabled,
tr.mw-abusefilter-list-disabled td {
color: var(--byline-color);
}
table.mw-abuselog-details {
background: var(--wikitable-bg);
border-color: var(--wikitable-border);
}
table.mw-abuselog-details th {
background: var(--wikitable-header-bg);
}
table.mw-abuselog-details th,
table.mw-abuselog-details td {
border-color: var(--wikitable-border);
}
.mw-abusefilter-log-hidden-entry {
color: var(--subtle-color);
}
body td.mw-abusefilter-history-changed {
background: var(--table-no-background);
}
div.mw-abusefilter-editor,
#mw-abusefilter-warn-preview,
#mw-abusefilter-disallow-preview {
border-color: var(--ooui-input-border);
}
.mw-destfile-warning {
border-color: var(--warningbox-border);
color: var(--text-color);
background-color: var(--warningbox-bg);
}
span.fileinput-button {
background-color: var(--ooui-normal);
border-color: var(--ooui-normal-border);
color: var(--ooui-text);
}
ul.fileupload-results li.ful-success {
background-color: var(--successbox-bg);
}
ul.fileupload-results li.ful-success a {
color: var(--link-color);
}
ul.fileupload-results li.ful-error {
background-color: var(--errorbox-bg);
}
#t-print,
#t-permalink {
display: none;
}
#filetoc {
border-radius: 2px;
background: var(--body-mid);
border-color: transparent;
margin: 0.5em auto;
text-align: center;
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
}
li.gallerybox div.thumb {
border: none;
background-color: var(--thumb-bg);
}
.smwfact {
display: none;
}
.list-header {
background-color: var(--body-mid);
color: inherit;
}
.editOptions {
color: var(--text-color);
background-color: var(--sourceeditor-background-secondary);
border-color: var(--sourceeditor-border);
}
.mw-json th,
.mw-json td {
border-color: var(--wikitable-border);
}
.mw-json td {
background: var(--wikitable-bg);
}
.mw-json th {
background: var(--wikitable-header-bg);
}
bb33c3c6e5b4e64038bd28de845dca5d34761d48
Fisher
0
58
111
2024-03-22T04:39:11Z
Jayden
3
Created page with "'''Fisher''' is a type of [[professions|profession]] which specialises in catching [[fish]]."
wikitext
text/x-wiki
'''Fisher''' is a type of [[professions|profession]] which specialises in catching [[fish]].
fc655cd037c8105e93b5c6a286c178d9d0e21b60
Forager
0
59
112
2024-03-22T04:39:44Z
Jayden
3
Created page with "'''Forager''' is a type of [[professions|profession]]."
wikitext
text/x-wiki
'''Forager''' is a type of [[professions|profession]].
eb4d9bd3588ad399e061499c200f81c4d517e48c
Chef
0
60
113
2024-03-22T04:40:06Z
Jayden
3
Created page with "'''Chef''' is a type of [[professions|profession]] which allows the [[player]] to [[cooking|cook]] many different [[food]] items."
wikitext
text/x-wiki
'''Chef''' is a type of [[professions|profession]] which allows the [[player]] to [[cooking|cook]] many different [[food]] items.
ff9f946861a1c70132f6640395533921357ad439
Woodcutter
0
61
114
2024-03-22T04:40:13Z
Jayden
3
Created page with "'''Woodcutter''' is a type of [[professions|profession]]."
wikitext
text/x-wiki
'''Woodcutter''' is a type of [[professions|profession]].
817b74387546c97e7e17770ffa3db623aa2ab9a9
Miner
0
62
115
2024-03-22T04:40:31Z
Jayden
3
Created page with "'''Miner''' is a type of [[professions|profession]] specialising in collecting [[minerals]]."
wikitext
text/x-wiki
'''Miner''' is a type of [[professions|profession]] specialising in collecting [[minerals]].
653d200293ce25cbcc507ac47b9bca3cbed49185
Alchemist
0
63
116
2024-03-22T04:40:44Z
Jayden
3
Created page with "'''Alchemist''' is a type of [[professions|profession]]."
wikitext
text/x-wiki
'''Alchemist''' is a type of [[professions|profession]].
3c3c4e114fb8b5f05e8983321ca045cfb0e63300
Stonemason
0
64
117
2024-03-22T04:41:04Z
Jayden
3
Created page with "'''Stonemason''' is a type of [[professions|profession]]."
wikitext
text/x-wiki
'''Stonemason''' is a type of [[professions|profession]].
7e90476c9fa53e65b5da20160d647016edce8f05
Merchant
0
65
118
2024-03-22T04:41:12Z
Jayden
3
Created page with "'''Merchant''' is a type of [[professions|profession]]."
wikitext
text/x-wiki
'''Merchant''' is a type of [[professions|profession]].
57c0b7943606ba1d310a26ba8af2ec3ed44f6a0e
Blacksmith
0
66
119
2024-03-22T04:41:20Z
Jayden
3
Created page with "'''Blacksmith''' is a type of [[professions|profession]]."
wikitext
text/x-wiki
'''Blacksmith''' is a type of [[professions|profession]].
c12d60b0e351c3b2c7b1880ae2afbd5a353d53cf
Sturlet
0
67
120
2024-03-22T14:14:28Z
InvalidCards
4
Created page with "'''Sturlet''' is a type of [[fish]] that gives 7 experience in the [[Fisher]] profession per catch."
wikitext
text/x-wiki
'''Sturlet''' is a type of [[fish]] that gives 7 experience in the [[Fisher]] profession per catch.
6718160ffdfc91f5fe3abf1da7b1e1ffa1d68f3b
131
120
2024-03-22T14:42:25Z
InvalidCards
4
wikitext
text/x-wiki
{{Infobox Item
|name=Sturlet
|image=Sturlet.png
|release=Soon
}}
'''Sturlet''' is a type of [[fish]] that gives 7 experience in the [[Fisher]] profession per catch.
7edd18571b3967d4e5e11c67a1d1fa2570133f29
Hopeport
0
68
121
2024-03-22T14:22:32Z
Jayden
3
Created page with "'''Hopeport''' is a town in [[Brighter Shores]]. It serves as the main introductory town for new [[player]]s. ==Features== * A [[Hopeport Harbor|harbor]]"
wikitext
text/x-wiki
'''Hopeport''' is a town in [[Brighter Shores]]. It serves as the main introductory town for new [[player]]s.
==Features==
* A [[Hopeport Harbor|harbor]]
4da5e22731919023ef5025f7f78448ad7474a96c
Cryoknight
0
69
122
2024-03-22T14:23:25Z
Jayden
3
Created page with "'''Cryoknight''' is a [[class]] which specialises in using melee weapons in [[combat]]."
wikitext
text/x-wiki
'''Cryoknight''' is a [[class]] which specialises in using melee weapons in [[combat]].
7ed27f4ee2e2c86dfdc87d3309d22511cf211734
Guardian
0
70
123
2024-03-22T14:23:39Z
Jayden
3
Created page with "'''Guardian''' is a [[class]] which specialises in using ranged weapons in [[combat]]."
wikitext
text/x-wiki
'''Guardian''' is a [[class]] which specialises in using ranged weapons in [[combat]].
c8a428146980352741f61d56e13cd6f5309884f5
Hammermage
0
71
124
2024-03-22T14:23:51Z
Jayden
3
Created page with "'''Hammermage''' is a [[class]] which specialises in using magic weapons in [[combat]]."
wikitext
text/x-wiki
'''Hammermage''' is a [[class]] which specialises in using magic weapons in [[combat]].
301d67878ee321c19916f33b7c77bb6ab5a3194a
Factions
0
72
125
2024-03-22T14:28:43Z
Jayden
3
Created page with "'''Classes''' in [[Brighter Shores]] allow the [[player]] to specialise in using a specific [[combat]] style. ==Classes== * The [[Cryoknight]] class is focused on melee combat, using weapons like [[sword]]s alongside a [[shield]] * [[Guardian]]s use ranged combat, preferring to wield weapons like [[crossbow]]s * The [[Hammermage]] class fights using a mix of melee and magic"
wikitext
text/x-wiki
'''Classes''' in [[Brighter Shores]] allow the [[player]] to specialise in using a specific [[combat]] style.
==Classes==
* The [[Cryoknight]] class is focused on melee combat, using weapons like [[sword]]s alongside a [[shield]]
* [[Guardian]]s use ranged combat, preferring to wield weapons like [[crossbow]]s
* The [[Hammermage]] class fights using a mix of melee and magic
4604cb74ae9c2300949776a4707d9c5f81bb7d04
Hopeforest
0
73
126
2024-03-22T14:30:44Z
Jayden
3
Created page with "'''Hopeforest''' is a forest [[Locations|area]] that contains [[monster]]s, accessible to all [[player]]s."
wikitext
text/x-wiki
'''Hopeforest''' is a forest [[Locations|area]] that contains [[monster]]s, accessible to all [[player]]s.
b3218211bfba760de243eab9acfb7f8f3ceac8c3
Mine of Mantuban
0
74
127
2024-03-22T14:31:46Z
Jayden
3
Created page with "'''Mine of Mantuban''' is a [[location]] that can be accessed by [[player]]s who purchase the [[Premium Pass]]."
wikitext
text/x-wiki
'''Mine of Mantuban''' is a [[location]] that can be accessed by [[player]]s who purchase the [[Premium Pass]].
dbd62954e527015ceb6e60b9e71acd56de35ac19
Crenopolis
0
75
128
2024-03-22T14:32:05Z
Jayden
3
Created page with "'''Crenopolis''' is a [[location]] that can be accessed by [[player]]s who purchase the [[Premium Pass]]."
wikitext
text/x-wiki
'''Crenopolis''' is a [[location]] that can be accessed by [[player]]s who purchase the [[Premium Pass]].
f10594b6bdb8fcb4e50df7d6b0cba344ce626f03
Premium Pass
0
76
129
2024-03-22T14:35:44Z
Jayden
3
Created page with "The '''Premium Pass''' is a type of membership that can be purchased using real money. It provides access to a number of new areas and features in [[Brighter Shores]]. ==Benefits== There are several benefits to purchasing a Premium Pass: * Access to the [[Mine of Mantuban]] and [[Crenopolis]] * Ability to choose a unique character name, and change your name at any point * Access to exclusive armour dyes * Ability to [[trade]] with other [[player]]s"
wikitext
text/x-wiki
The '''Premium Pass''' is a type of membership that can be purchased using real money. It provides access to a number of new areas and features in [[Brighter Shores]].
==Benefits==
There are several benefits to purchasing a Premium Pass:
* Access to the [[Mine of Mantuban]] and [[Crenopolis]]
* Ability to choose a unique character name, and change your name at any point
* Access to exclusive armour dyes
* Ability to [[trade]] with other [[player]]s
8c3186585d6a8f4b288cd2f1f7b6f5bab0db63bc
Template:Infobox Item
10
77
130
2024-03-22T14:41:41Z
InvalidCards
4
for the love of god help me
wikitext
text/x-wiki
<includeonly>{| class="wikitable"
|+{{{name|}}}
|-
|colspan="2" style="text-align:center"|[[File:{{{image|}}}|30px]]
|-
|<b>Release date</b>||{{{release|Soon}}}
|}</includeonly>
2c801f78c194a8776361df111bf5ec9f0ea358e5
132
130
2024-03-22T14:42:41Z
InvalidCards
4
wikitext
text/x-wiki
<includeonly>{| class="wikitable" float:right
|+{{{name|}}}
|-
|colspan="2" style="text-align:center"|[[File:{{{image|}}}|30px]]
|-
|<b>Release date</b>||{{{release|Soon}}}
|}</includeonly>
0fd664c957b2747ec8cfa87bc30fd8f31e45ae5f
133
132
2024-03-22T14:42:47Z
InvalidCards
4
wikitext
text/x-wiki
<includeonly>{| class="wikitable" float=right
|+{{{name|}}}
|-
|colspan="2" style="text-align:center"|[[File:{{{image|}}}|30px]]
|-
|<b>Release date</b>||{{{release|Soon}}}
|}</includeonly>
e5b9edf8f1b57326175827f7ac54fd60c312384e
134
133
2024-03-22T14:43:21Z
InvalidCards
4
told you i'm bad at css
wikitext
text/x-wiki
<includeonly>{| class="wikitable" style="float:right"
|+{{{name|}}}
|-
|colspan="2" style="text-align:center"|[[File:{{{image|}}}|30px]]
|-
|<b>Release date</b>||{{{release|Soon}}}
|}</includeonly>
fc40e5798ec63dc6c3f8051f2f24fac288f32d7a
Leech Pools
0
78
135
2024-03-22T14:50:05Z
InvalidCards
4
Created page with "The '''Leech Pools''' is a watery cave system."
wikitext
text/x-wiki
The '''Leech Pools''' is a watery cave system.
56c1954afe63cf908d6821b8792e95fb422b8d4b
Barricades
0
79
136
2024-03-22T14:51:52Z
InvalidCards
4
Created page with "The '''Barricades''' is a location that leads into the [[Mine Entrance]], which is guarded by a [[barricade guard]]. The player must talk to [[Captain Jal Degreene]] as part of a quest in order to be allowed through."
wikitext
text/x-wiki
The '''Barricades''' is a location that leads into the [[Mine Entrance]], which is guarded by a [[barricade guard]]. The player must talk to [[Captain Jal Degreene]] as part of a quest in order to be allowed through.
7d1234adfba58bfeb44f7db39b2bda2f8e28127d
Tanners Road
0
80
137
2024-03-22T14:52:52Z
InvalidCards
4
Created page with "'''Tanners Road''' is a road in [[Hopeport]]. It features various market stalls."
wikitext
text/x-wiki
'''Tanners Road''' is a road in [[Hopeport]]. It features various market stalls.
a06eb15de7f6607ef77eeec6592acbf187612227
Bone Vats
0
81
138
2024-03-22T14:53:42Z
InvalidCards
4
Created page with "The '''Bone Vats''' is a location where players can craft items using bones."
wikitext
text/x-wiki
The '''Bone Vats''' is a location where players can craft items using bones.
92be266759302ec9b041b6d06b06599f092bfd59
Goblin Marketplace
0
82
139
2024-03-22T14:54:22Z
InvalidCards
4
Created page with "The '''Goblin Marketplace''' is a location where [[goblin]]s sell their wares."
wikitext
text/x-wiki
The '''Goblin Marketplace''' is a location where [[goblin]]s sell their wares.
8ea4f0d31490c42f09af615c4c9a069b240873ea
Cliffside Path
0
83
140
2024-03-22T14:55:57Z
InvalidCards
4
Created page with "The '''Cliffside Path''' is a location. It is a wooded path, inhabited by giant spiders, with large cobwebs strewn about."
wikitext
text/x-wiki
The '''Cliffside Path''' is a location. It is a wooded path, inhabited by giant spiders, with large cobwebs strewn about.
6f03e6515867746d7587b32b773c25d62dea93f0
Basic bacon
0
84
141
2024-03-22T14:57:57Z
InvalidCards
4
Created page with "'''Basic Bacon''' is a food that can be created using the [[Chef]] profession. It can be obtained by frying raw bacon in a kitchen."
wikitext
text/x-wiki
'''Basic Bacon''' is a food that can be created using the [[Chef]] profession. It can be obtained by frying raw bacon in a kitchen.
dbf9cbc334e6ca4f0294e1a85ff35fa014bc80c5
Wailing Shade
0
85
142
2024-03-22T14:58:49Z
InvalidCards
4
Created page with "'''Wailing Shades''' are monsters. They have 682 health."
wikitext
text/x-wiki
'''Wailing Shades''' are monsters. They have 682 health.
e0f58b52d9c907ffe7e6ce6cfec70b5ab25c1725
Melv's Fishing Supplies
0
86
143
2024-03-22T15:02:25Z
InvalidCards
4
Created page with "'''Melv's Fishing Supplies''' is a [[Fisher]] shop run by [[Melv]]."
wikitext
text/x-wiki
'''Melv's Fishing Supplies''' is a [[Fisher]] shop run by [[Melv]].
46a1ca9beae6f6b1cadf40e05dc738570112cad7
Melv
0
87
144
2024-03-22T15:02:41Z
InvalidCards
4
Created page with "'''Melv''' is the shop owner of [[Melv's Fishing Supplies]]."
wikitext
text/x-wiki
'''Melv''' is the shop owner of [[Melv's Fishing Supplies]].
b3650cf5b2715d212ecfd5a977a9e39bc322f9ff
Southeast Sewer
0
88
145
2024-03-22T15:05:11Z
InvalidCards
4
Created page with "The '''Southeast Sewer''' is a location."
wikitext
text/x-wiki
The '''Southeast Sewer''' is a location.
9cbced5e57f1d9e08fb1e3f0affb8d80a4b9bea7
The Delectable Dab Restaurant
0
89
146
2024-03-22T15:07:05Z
InvalidCards
4
Created page with "'''The Delectable Dab Restaurant''' is a restaurant."
wikitext
text/x-wiki
'''The Delectable Dab Restaurant''' is a restaurant.
df02e68efcaed3d961394169e2b3120b8f3f67c6
Module:Edit button
828
90
147
2024-03-22T15:07:18Z
Gau Cho
5
First module, ported from RSC/OS/RS3
Scribunto
text/plain
-- Creates a link that opens the editor screen for whatever page this module is invoked on
return function(text)
local page_title = mw.title.getCurrentTitle().fullText
local url = tostring(mw.uri.fullUrl(page_title,'action=edit'))
return '['..url..' '..(text or 'edit')..']'
end
ee5f096d5c2323b9b4d3e8224855a107c1445d38
Module:Yesno
828
91
148
2024-03-22T15:07:30Z
Jayden
3
base cp from rsw
Scribunto
text/plain
--[[
{{Helper module|name=Yesno
|fname1=(arg)
|ftype1=Any value
|fuse1=Reads arg for yes/no and returns the appropriate boolean or nil
|fname2=(arg1,arg2)
|ftype2=Any value, Any value
|fuse2=Reads arg1 for yes/no and returns the appropriate boolean; returns arg2 if arg1 was not an applicable value
}}
--]]
-- <pre>
-- Used to evaluate args to booleans where applicable
--
-- Based on <https://en.wikipedia.org/wiki/Module:Yesno>
-- see page history there for contributors
--
return function( arg, default )
arg = type( arg ) == 'string' and arg:lower() or arg
if arg == nil then
return nil
end
if
arg == true or
arg == 'yes' or
arg == 'y' or
arg == 'true' or
tonumber( arg ) == 1
then
return true
end
if
arg == false or
arg == 'no' or
arg == 'n' or
arg == 'false' or
tonumber( arg ) == 0
then
return false
end
return default
end
6a85dc6fc6ed91ab9be714ef0a244cb9e0b08b62
151
148
2024-03-22T15:08:29Z
Jayden
3
Protected "[[Module:Yesno]]": High traffic page ([Edit=Allow only autoconfirmed users] (indefinite) [Move=Allow only autoconfirmed users] (indefinite))
Scribunto
text/plain
--[[
{{Helper module|name=Yesno
|fname1=(arg)
|ftype1=Any value
|fuse1=Reads arg for yes/no and returns the appropriate boolean or nil
|fname2=(arg1,arg2)
|ftype2=Any value, Any value
|fuse2=Reads arg1 for yes/no and returns the appropriate boolean; returns arg2 if arg1 was not an applicable value
}}
--]]
-- <pre>
-- Used to evaluate args to booleans where applicable
--
-- Based on <https://en.wikipedia.org/wiki/Module:Yesno>
-- see page history there for contributors
--
return function( arg, default )
arg = type( arg ) == 'string' and arg:lower() or arg
if arg == nil then
return nil
end
if
arg == true or
arg == 'yes' or
arg == 'y' or
arg == 'true' or
tonumber( arg ) == 1
then
return true
end
if
arg == false or
arg == 'no' or
arg == 'n' or
arg == 'false' or
tonumber( arg ) == 0
then
return false
end
return default
end
6a85dc6fc6ed91ab9be714ef0a244cb9e0b08b62
Lani's Curiosities
0
92
149
2024-03-22T15:07:41Z
InvalidCards
4
Created page with "'''Lani's Curiosities''' is a shop run by [[Lani]]."
wikitext
text/x-wiki
'''Lani's Curiosities''' is a shop run by [[Lani]].
f94bf4dc268d3a1bd771f76c52e76de250cc4349
Lani
0
93
150
2024-03-22T15:07:54Z
InvalidCards
4
Created page with "'''Lani''' is the owner of [[Lani's Curiosities]]."
wikitext
text/x-wiki
'''Lani''' is the owner of [[Lani's Curiosities]].
738a171fdd5894dea824d057318269b1b233dc54
Truck Cave
0
94
152
2024-03-22T15:08:41Z
InvalidCards
4
Created page with "The '''Truck Cave''' is a cave filled with minecart rails."
wikitext
text/x-wiki
The '''Truck Cave''' is a cave filled with minecart rails.
81b2f4de95ecaab2c62225815336a7820d99d80c
Module:Tnavbar
828
95
153
2024-03-22T15:08:47Z
Jayden
3
base cp from rsw
Scribunto
text/plain
-- <nowiki>
--
-- Implements {{tnavbar}} and variants
--
-- @todo move the hardcoded css to [[MediaWiki:Common.css]] given how many pages it's found on
--
require('strict')
local p = {}
local yesno = require( 'Module:Yesno' )
function p._navbar( args )
local navbarstyle = args.style or ''
local fontstyle = args.fontstyle or ''
local view, talk, edit = (args.view or true), (args.talk or true), (args.edit or true)
local desc = {
view = 'view',
talk = 'talk',
edit = 'edit'
}
local tag = mw.html.create( 'div' )
:addClass( 'navbar' )
:addClass( 'plainlinks' )
:addClass( 'noprint' )
:css( {
['white-space'] = 'nowrap',
['font-weight'] = 'normal',
['font-size'] = 'x-small'
} )
:cssText( navbarstyle )
if yesno( args.mini ) then
desc = {
view = 'v',
talk = 't',
edit = 'e'
}
tag:addClass( 'navbar-mini' )
end
local viewSpan = mw.html.create( 'span' )
:attr( 'title', 'View this template' )
:cssText( fontstyle )
:wikitext( desc.view )
local talkSpan = mw.html.create( 'span' )
:attr( 'title', 'Discussion about this template' )
:cssText( fontstyle )
:wikitext( desc.talk )
local editSpan = mw.html.create( 'span' )
:attr( 'title', 'Edit this template' )
:cssText( fontstyle )
:wikitext( desc.edit )
local title = args[1] and mw.text.trim( args[1] ) or error('No page title given')
local ns, titleTbl, pagelink, talklink
if mw.ustring.sub( title, 1, 1 ) == ':' then
-- mainspace
title = mw.ustring.sub( title, 2 )
pagelink = title
talklink = 'Talk:' .. title
elseif mw.ustring.match( title, ':' ) then
-- split title to see if it has a valid namespace
titleTbl = mw.text.split( title, ':' )
ns = mw.site.namespaces[titleTbl[1]]
if ns ~= nil then
pagelink = ns.name .. ':' .. table.concat( titleTbl, '', 2 )
if ns.isTalk then
talklink = page
else
talklink = ns.talk.name .. ':' .. table.concat( titleTbl, '', 2 )
end
end
end
-- this happens if there's no semi-colons in title
-- or if there is semi-colons but it didn't have valid ns name
if not pagelink then
pagelink = 'Template:' .. title
talklink = 'Template talk:' .. title
end
tag:wikitext( '[[' .. pagelink .. '|' .. tostring( viewSpan ) .. ']]' )
:wikitext( ' ' )
:tag( 'span' )
:css( 'font-size', '80%' )
:wikitext( '•' )
:done()
:wikitext( ' ' )
if talk == 'autoconfirmed' then
tag
:tag( 'span' )
:addClass( 'autoconfirmed-show' )
:css( 'display', 'none' )
:wikitext( '[' .. tostring( mw.uri.fullUrl( talklink ) ) .. ' ' .. tostring( talkSpan ) .. ']' )
:wikitext( ' ' )
:tag( 'span' )
:css( 'font-size', '80%' )
:wikitext( '•' )
:done()
:wikitext( ' ' )
:done()
elseif yesno(talk) then
tag:wikitext( '[' .. tostring( mw.uri.fullUrl( talklink ) ) .. ' ' .. tostring( talkSpan ) .. ']' )
:wikitext( ' ' )
:tag( 'span' )
:css( 'font-size', '80%' )
:wikitext( '•' )
:done()
:wikitext( ' ' )
:done()
end
tag:wikitext( '[' .. tostring( mw.uri.fullUrl( pagelink, 'action=edit' ) ) .. ' ' .. tostring( editSpan ) .. ']' )
return tostring( tag )
end
function p.navbar( frame )
return p._navbar( frame:getParent().args )
end
return p
df6034b22c5de1489fe6808f793b507eb4ae7dd9
154
153
2024-03-22T15:08:55Z
Jayden
3
Protected "[[Module:Tnavbar]]": High traffic page ([Edit=Allow only autoconfirmed users] (indefinite) [Move=Allow only autoconfirmed users] (indefinite))
Scribunto
text/plain
-- <nowiki>
--
-- Implements {{tnavbar}} and variants
--
-- @todo move the hardcoded css to [[MediaWiki:Common.css]] given how many pages it's found on
--
require('strict')
local p = {}
local yesno = require( 'Module:Yesno' )
function p._navbar( args )
local navbarstyle = args.style or ''
local fontstyle = args.fontstyle or ''
local view, talk, edit = (args.view or true), (args.talk or true), (args.edit or true)
local desc = {
view = 'view',
talk = 'talk',
edit = 'edit'
}
local tag = mw.html.create( 'div' )
:addClass( 'navbar' )
:addClass( 'plainlinks' )
:addClass( 'noprint' )
:css( {
['white-space'] = 'nowrap',
['font-weight'] = 'normal',
['font-size'] = 'x-small'
} )
:cssText( navbarstyle )
if yesno( args.mini ) then
desc = {
view = 'v',
talk = 't',
edit = 'e'
}
tag:addClass( 'navbar-mini' )
end
local viewSpan = mw.html.create( 'span' )
:attr( 'title', 'View this template' )
:cssText( fontstyle )
:wikitext( desc.view )
local talkSpan = mw.html.create( 'span' )
:attr( 'title', 'Discussion about this template' )
:cssText( fontstyle )
:wikitext( desc.talk )
local editSpan = mw.html.create( 'span' )
:attr( 'title', 'Edit this template' )
:cssText( fontstyle )
:wikitext( desc.edit )
local title = args[1] and mw.text.trim( args[1] ) or error('No page title given')
local ns, titleTbl, pagelink, talklink
if mw.ustring.sub( title, 1, 1 ) == ':' then
-- mainspace
title = mw.ustring.sub( title, 2 )
pagelink = title
talklink = 'Talk:' .. title
elseif mw.ustring.match( title, ':' ) then
-- split title to see if it has a valid namespace
titleTbl = mw.text.split( title, ':' )
ns = mw.site.namespaces[titleTbl[1]]
if ns ~= nil then
pagelink = ns.name .. ':' .. table.concat( titleTbl, '', 2 )
if ns.isTalk then
talklink = page
else
talklink = ns.talk.name .. ':' .. table.concat( titleTbl, '', 2 )
end
end
end
-- this happens if there's no semi-colons in title
-- or if there is semi-colons but it didn't have valid ns name
if not pagelink then
pagelink = 'Template:' .. title
talklink = 'Template talk:' .. title
end
tag:wikitext( '[[' .. pagelink .. '|' .. tostring( viewSpan ) .. ']]' )
:wikitext( ' ' )
:tag( 'span' )
:css( 'font-size', '80%' )
:wikitext( '•' )
:done()
:wikitext( ' ' )
if talk == 'autoconfirmed' then
tag
:tag( 'span' )
:addClass( 'autoconfirmed-show' )
:css( 'display', 'none' )
:wikitext( '[' .. tostring( mw.uri.fullUrl( talklink ) ) .. ' ' .. tostring( talkSpan ) .. ']' )
:wikitext( ' ' )
:tag( 'span' )
:css( 'font-size', '80%' )
:wikitext( '•' )
:done()
:wikitext( ' ' )
:done()
elseif yesno(talk) then
tag:wikitext( '[' .. tostring( mw.uri.fullUrl( talklink ) ) .. ' ' .. tostring( talkSpan ) .. ']' )
:wikitext( ' ' )
:tag( 'span' )
:css( 'font-size', '80%' )
:wikitext( '•' )
:done()
:wikitext( ' ' )
:done()
end
tag:wikitext( '[' .. tostring( mw.uri.fullUrl( pagelink, 'action=edit' ) ) .. ' ' .. tostring( editSpan ) .. ']' )
return tostring( tag )
end
function p.navbar( frame )
return p._navbar( frame:getParent().args )
end
return p
df6034b22c5de1489fe6808f793b507eb4ae7dd9
File:Fenforge logo.png
6
96
155
2024-03-22T15:09:09Z
ToofleBerry
6
Obtained from https://web.archive.org/web/20240113093704im_/https://www.solstrike.com/fenforge_logo.png
wikitext
text/x-wiki
== Summary ==
Obtained from https://web.archive.org/web/20240113093704im_/https://www.solstrike.com/fenforge_logo.png
35d431bb3973baa4f4a3e3969999b3430e0cc82f
Hopeport Obelisk
0
97
156
2024-03-22T15:09:31Z
InvalidCards
4
Created page with "The '''Hopeport Obelisk''' is a location near [[Hopeport]]. It is likely that it will be used as a fast travel location."
wikitext
text/x-wiki
The '''Hopeport Obelisk''' is a location near [[Hopeport]]. It is likely that it will be used as a fast travel location.
c7e82e3f51867d4cd9502f74eb67a789a97a61b3
Module:Navbox
828
98
157
2024-03-22T15:09:35Z
Jayden
3
base cp from rsw
Scribunto
text/plain
-- <nowiki>
--
-- Implements {{navbox}}
--
local p = {}
local tnavbar = require( 'Module:Tnavbar' )
local yesno = require( 'Module:Yesno' )
local page_title = mw.title.getCurrentTitle().fullText
--
-- Helper for inserting a new row into the navbox
--
-- @param tbl {mw.html table}
-- @return tbl {mw.html table}
--
local function insertRow( tbl )
return tbl:tag( 'tr' )
end
--
-- Creates the navbox table
--
-- @param args {table}
-- @return tbl {mw.html table}
--
local function createTbl( args )
local tbl = mw.html.create( 'table' )
tbl
:addClass( yesno(args.subgroup, false) and 'navbox-subgroup' or 'navbox' )
:addClass( 'nowraplinks' )
if not yesno(args.subgroup, false) and
( args.state == 'collapsed' or
args.state == 'uncollapsed' or
args.state == 'autocollapse' or
-- defaults to autocollapse
args.state == nil )
then
tbl:addClass( 'mw-collapsible' )
if args.state == 'collapsed' then
tbl:addClass( 'mw-collapsed' )
elseif args.state == 'uncollapsed' then
tbl:addClass('navbox-uncollapsed')
else
tbl:addClass( 'mw-collapsed' )
tbl:addClass( 'navbox-autocollapse' )
end
end
if yesno(args.collapsible, false) then
tbl:addClass( 'navbox-collapsible' )
end
if args.style then
tbl:cssText( args.style )
end
-- used by [[MediaWiki:Gadget-navbox-tracking.js]] for tracking purposes
tbl:attr( { ['data-navbox-name'] = args.name } )
return tbl
end
--
-- Wrapper for [[Module:Tnavbar]]
--
-- @param args {table}
-- @return {mw.html table}
--
local function navbar( args )
local div = mw.html.create( 'div' )
:css( {
float = 'left',
['text-align'] = 'left'
} )
:wikitext( tnavbar._navbar( { [1] = args.name, ['mini'] = true, ['talk'] = 'autoconfirmed' } ) )
return div
end
--
-- Creates the header (what you see when the navbox is collapsed)
--
-- @param tbl {mw.html table}
-- @param args {table}
-- @return {mw.html table}
--
local function header( tbl, args )
local div = insertRow( tbl )
:tag( 'th' )
:attr( 'colspan', '2' )
:addClass( 'navbox-title' )
:wikitext( args.name and tostring( navbar( args ) ) )
:tag('div')
:addClass( 'navbox-title-name' )
:wikitext( args.title )
return div:allDone()
end
--
-- Inserts a row into the navbox
--
-- @param tbl {mw.html table}
-- @param gtitle {string}
-- @param group {string}
-- @param gtype {string}
-- @param style {string}
-- @return {mw.html table}
--
local function row( tbl, gtitle, group, gtype, style, _name, subgroup )
local tr = insertRow( tbl )
local td
if gtitle then
td = tr
:addClass( 'navbox-group' )
:tag( 'th' )
:addClass( 'navbox-group-title' )
:wikitext( gtitle )
:done()
:tag( 'td' )
else
td = tr
:addClass( 'navbox-group' )
:addClass( 'navbox-group-split' )
:tag( 'td' )
:addClass( 'navbox-group-title-hidden' )
:attr( 'colspan', '0' )
:css( 'display', 'none' )
:done()
:tag( 'td' )
:attr( 'colspan', '2' )
end
--[[
List styling
This is unlikely to be implemented in the near future due to it requiring extra css to work
and mobile currently not supporting that css.
As an example, it lets you do the following instead if using {{*}} all the time
| group3 =
* {{plink|foo}}
* {{plink|bar}}
* {{plink|baz}}
]]
if mw.ustring.match( group, '^%s*%*' ) then
td:newline()
-- trim whitespace on bullets
local spl = mw.text.split( group, '\n' )
for i = 1, #spl do
spl[i] = mw.text.trim( spl[i] )
end
group = '\n' .. table.concat( spl, '\n' )
end
--local group2 = group
--local group3 = group2
-- analytics
--if _name then
-- local name = mw.ustring.gsub(_name,' ','_')
-- for v in mw.ustring.gmatch(group,'%[%[[^%]]+%]%]') do
-- if mw.ustring.match(v,'%[%[File:.+|link=') then
-- local link = mw.ustring.match(v,'|link=([^%]|]+)')
-- if link then
-- local linkrep = mw.ustring.gsub(link,'([%%%]%[%-^$*()+?])','%%%1')
-- local _link = mw.ustring.gsub(link,' ','_')
-- local newfile = mw.ustring.gsub(v,'|link='..linkrep,string.format('|link=https://oldschool.runescape.wiki/w/%s?f=%s',_link,name))
-- local w = mw.ustring.gsub(v,'([%%%]%[%-^$*()+?])','%%%1')
-- group2 = mw.ustring.gsub(group2,w,newfile)
-- end
-- elseif mw.ustring.match(v,'%[%[Category:') then
-- nothing
-- else
-- local link = mw.ustring.match(v,'%[%[([^%]|]+)')
-- local txt = mw.ustring.match(v,'%|([^%]|]+)') or link
-- local newlink = ''
-- black links if current page
-- if link == page_title then
-- newlink = string.format('<b>%s</b>',txt)
-- else
-- local _link = mw.ustring.gsub(link or '',' ','_')
-- newlink = string.format('[https://oldschool.runescape.wiki.com/w/%s?n=%s %s]',_link,name,txt)
-- end
-- local w = mw.ustring.gsub(v,'([%%%]%[%-^$*()+?])','%%%1')
-- group2 = mw.ustring.gsub(group2,w,newlink)
-- end
-- end
--[==[
fix [[these kind]]s of [[link]]s post analytics parse
]==]
-- group3 = group2
-- for v in mw.ustring.gmatch(group2,'%[https://oldschool.runescape.wiki.com/w[^%]]-%]%a') do
-- local rep = mw.ustring.gsub(v,'%]','')
-- rep = rep..']'
-- local w = mw.ustring.gsub(v,'([%%%]%[%-^$*()+?])','%%%1')
-- group3 = mw.ustring.gsub(group2,w,rep)
-- end
--end
td
:addClass( 'navbox-list' )
:wikitext( group ) --group3
if gtype and mw.ustring.lower( gtype ) == 'subgroup' then
td
:addClass( 'navbox-parent' )
:css( {
padding = '0'
} )
end
if style then
td:cssText( style )
end
return td:allDone()
end
--
-- Inserts a footer into the navbox
--
-- @param tbl {mw.html table}
-- @param args {table}
-- @return {mw.html table}
--
local function footer( tbl, args )
local th = insertRow( tbl )
:tag( 'th' )
:attr( 'colspan', '2' )
:addClass( 'navbox-footer' )
if args.fstyle then
th:cssText( args.fstyle )
end
if mw.ustring.match( args.footer, '^%s*%*' ) then
th:newline()
-- trim whitespace on bullets
local spl = mw.text.split( args.footer, '\n' )
for i = 1, #spl do
spl[i] = mw.text.trim( spl[i] )
end
args.footer = table.concat( spl, '\n' )
th:addClass( 'navbox-list' )
end
th:wikitext( args.footer )
return th:allDone()
end
--
-- Adds [[Category:Navbox templates]] to navbox template pages
--
-- @return {string}
--
local function categories()
local title = mw.title.getCurrentTitle()
local page = title.text
local ns = title.nsText
if ns == 'Template' then
-- sort in category by pagename
return '[[Category:Navbox templates| ' .. page .. ']]'
else
return ''
end
end
--
-- Adds [[Template:Navbox/doc]] to navbox template pages
--
-- @param args {table}
-- @return {string}
--
local function docs( args )
local frame = mw.getCurrentFrame()
local title = mw.title.getCurrentTitle()
local base = title.baseText
local ns = title.nsText
-- not if a subpage of [[Template:Navbox]]
if base ~= 'Navbox' and
-- in template ns
ns == 'Template' and
-- not a navbox group within a navbox
not yesno(args.subgroup, false) and
-- not a collapsible navbox within a navbox
not yesno(args.collapsible, false) and
-- not if the doc argument is not set to "yes"
yesno(args.doc, false)
then
return frame:expandTemplate{ title = 'Navbox/doc' }
else
return ''
end
end
--
-- Navbox method to allow it to be called by other modules
--
-- @param _args {table}
-- @return {string}
--
function p._navbox( _args )
local args = {}
local wkCss = ''
local wkDiv = ''
local j
-- preserves parser function behaviour where an empty string is considered undefined
-- or nil in lua's case
for k, v in pairs( _args ) do
if v ~= '' then
args[k] = v
end
end
local tbl = createTbl( args )
if not yesno(args.subgroup, false) then
tbl = header( tbl, args )
end
-- insert up to 25 rows
for i = 1, 25 do
j = tostring( i )
if args['group' .. j] then
tbl = row( tbl, args['gtitle' .. j], args['group' .. j], args['gtype' .. j], args['style' .. j], args.name, args.subgroup )
else
break
end
end
if args.footer then
tbl = footer( tbl, args )
end
tbl = tostring( tbl )
local cats = ''
if not yesno(args.subgroup, false) and not yesno(args.hidecat, false) then
cats = categories()
end
local docs = docs( args )
return tbl .. cats .. docs
end
--
-- Main navbox method accessed through #invoke
--
-- @param frame {table}
-- @return {string}
--
function p.navbox( frame )
local args = frame:getParent().args
return p._navbox( args )
end
return p
-- </nowiki>
391669df59b02076c50c50572107a0566e400487
Template:Navbox
10
99
158
2024-03-22T15:10:00Z
Jayden
3
base cp from rsw
wikitext
text/x-wiki
{{#invoke:Navbox|navbox}}<noinclude>{{/doc}}</noinclude>
a4b0f898f8be45a3059aafaf7f6fbe8d1223619e
Sneaky Thief
0
100
159
2024-03-22T15:10:07Z
InvalidCards
4
Created page with "'''Sneaky Thieves''' are a type of monster. They have 1,100 health."
wikitext
text/x-wiki
'''Sneaky Thieves''' are a type of monster. They have 1,100 health.
2a2e837a22304f655b4ad1f3172209119e1d11e8
Quiet Grove
0
101
160
2024-03-22T15:10:41Z
InvalidCards
4
Created page with "The '''Quiet Grove''' is a location. It has an entrance to a mine."
wikitext
text/x-wiki
The '''Quiet Grove''' is a location. It has an entrance to a mine.
59d9ab16fe3bbe699025165f1ee6f5f1999f7bf4
Module:Infobox
828
102
161
2024-03-22T15:10:48Z
Gau Cho
5
Created page with "--[=[ -- For documentation, see [[Module:Infobox/doc]] --]=] -- <nowiki> local Infobox = {} Infobox.__index = Infobox -- Infobox.__tostring = Infobox.tostring -- Edit button for unknown params local editbutton = require('Module:Edit button') local edit = editbutton("'''?''' (edit)") function Infobox.helloworld() mw.log('Hello world') return 'Hello world' end return Infobox -- </nowiki>"
Scribunto
text/plain
--[=[
-- For documentation, see [[Module:Infobox/doc]]
--]=]
-- <nowiki>
local Infobox = {}
Infobox.__index = Infobox
-- Infobox.__tostring = Infobox.tostring
-- Edit button for unknown params
local editbutton = require('Module:Edit button')
local edit = editbutton("'''?''' (edit)")
function Infobox.helloworld()
mw.log('Hello world')
return 'Hello world'
end
return Infobox
-- </nowiki>
ea28c14e0380a0de0a659e63f1af9826a28cb025
Template:Navbox/doc
10
103
162
2024-03-22T15:11:06Z
Jayden
3
base cp from rsw
wikitext
text/x-wiki
{{documentation|Template:Navbox}}
{{invokes|Navbox|category=No}}<!----Do not add this category to *every* navbox
added explicitly to {{Navbox}} at the end of documentation----->
__TOC__<!--Needed to prevent TOC appearing in the navbox itself if it has a heading.-->
==Usage==
This template can be used to make a standard navigation box. It is intended for use within another template that standardises the title and contents of the box (see [[Template:Rune equipment]]). This template should not be used directly within articles, as it creates a maintenance burden to do so whenever the contents of the box have to be updated.
==Syntax==
<pre>
{{Navbox
|state = uncollapsed, collapsed, plain, autocollapse (default)
|name = mandatory - name of the template
|style = optional - style for the whole table
|title = mandatory - navbox header
|gtitleN = optional - title of N-th group of items
|styleN = optional - style for groupN; i.e. text-align
|groupN = mandatory - list of groups of items
|fstyle = optional - style for footer ; i.e. text-align
|footer = optional - navbox footer
}}
</pre>
* '''Groups:'''
** Groups of items can be added as parameters: ''group1'', ''group2'', ''group3'', ... up to ''groupN''.
* '''Group title:''' Each group has its own title parameter: ''gtitle1'', ''gtitle2'', ''gtitle3'', ... up to ''gtitleN''.
* '''Group style:''' Style may also be customised to each group in: ''style1'', ''style2'', ''style3'', ... up to ''styleN''.
* '''Superscript:''' It is preferred to use superscript (<code><nowiki><sup></nowiki></code>) to denote variants of items that are already contained in the navbox.
* '''Bullets:''' Create unordered lists with lines beginning with *.
==States==
* '''Autocollapse:''' By default, the state of a navbox is "autocollapsed". This means that if the number of navboxes in a page exceeds the maximum allocation of the collapsible navboxes, then the remaining navboxes are collapsed automatically. For more information (or to change the setting), see [[MediaWiki:Gadget-autocollapse.js]].
** Currently, the ''autocollapse'' allocation is '''<span style="color:red">2</span>'''. This means that if there are 3 navboxes in a page, the third and subsequent navboxes will be collapsed automatically.
* '''Uncollapsed:''' Forces the navbox to be displayed.
* '''Collapsed:''' The reverse of ''uncollapsed''. Forces the navbox to be hidden instead.
** Navboxes with a height of more than 300 pixels will also be collapsed automatically. For more information (or to change the setting), see [[MediaWiki:Gadget-autocollapse.js]].
* '''Plain:''' Removes the "show/hide" link.
==Sub-groups==
* For larger navboxes, it may be necessary to include sub-groups within a particular group of items. It is also possible to collapsible navboxes within the parent navbox, see [[#Collapsible sub-groups|Collapsible sub-groups]].
* To create sub-groups within <code><nowiki>{{Navbox}}</nowiki></code>, certain parameters are to be included:
** The parent navbox group (i.e. ''group2'' in the example below) requires the type parameter (''gtype2 = subgroup'').
** The nested navbox (sub-group) requires the inclusion of the sub-group parameter (''subgroup = yes''). This enables the template to differentiate between the sub-group and the parent navbox.
<pre>{{Navbox
|name =
|title =
|gtitle1 =
|group1 =
|gtitle2 =
|gtype2 = subgroup (mandatory)
|group2 =
{{Navbox
|subgroup = yes (mandatory)
|gtitle1 =
|group1 =
|gtitle2 =
|group2 =
}}
}}</pre>
==Collapsible sub-groups==
* For extremely long navboxes, it is recommended to use collapsible navboxes within the parent navbox. Further sub-groups can then be added to these collapsible navboxes.
* To create collapsible sub-groups within <code><nowiki>{{Navbox}}</nowiki></code>, these parameters need to be included:
** The parent navbox is almost always uncollapsed (''state=uncollapsed'').
** The parent navbox group (i.e. ''group1'' in the example below) requires the type parameter (''gtype1 = subgroup'').
** The nested collapsible navbox requires the inclusion of the collapsible parameter (''collapsible = yes''). This enables the template to differentiate between the collapsible navbox and the parent navbox.
** The nested collapsible navbox is forcefully collapsed (''state=collapsed'').
<pre>{{Navbox
|state = uncollapsed
|name =
|gtype1 = subgroup
|group1 =
{{Navbox
|collapsible = yes
|state = collapsed
|title =
|gtitle1 =
|group1 =
|gtitle2 =
|group2 =
}}
}}</pre>
==Use of images==
* The use of images in navboxes is permitted, but please resize the images to keep them small. Inventory-sized images (25-30 pixels) are recommended.
** Use {{t|plink}} to create links with images.
** Use {{t|plinkp}} for any case where text is not desired after the link.
** Use {{t|chatl}} to link chatheads.
** Use {{t|Emote link}} to link emote icons.
* Avoid using images in the main header of the navbox.
Link and file share the same name
<pre>{{plink|Item}}</pre>
File name differs from the link
<pre>{{plink|Item|pic=File}}</pre>
Link and file share the same name, but different text is desired to display
<pre>{{plink|Item|txt=Text}}</pre>
File name differs from the link and different text is desired to display
<pre>{{plink|Item|pic=File|txt=Text}}</pre>
{|class="wikitable"
|+ Examples
!Code
!Standard syntax
|-
|<code><nowiki>{{plink|Abyssal whip}}</nowiki></code>
|<code><nowiki>[[File:Abyssal whip.png|link=Abyssal whip]] [[Abyssal whip]]</nowiki></code>
|-
|<code><nowiki>{{plink|Granite maul|pic=Abyssal whip}}</nowiki></code>
|<code><nowiki>[[File:Abyssal whip.png|link=Granite maul]] [[Granite maul]]</nowiki></code>
|-
|<code><nowiki>{{plink|Abyssal whip|txt=Whip}}</nowiki></code>
|<code><nowiki>[[File:Abyssal whip.png|link=Abyssal whip]] [[Abyssal whip|Whip]]</nowiki></code>
|-
|<code><nowiki>{{plink|Granite maul|pic=Abyssal whip|txt=Whip}}</nowiki></code>
|<code><nowiki>[[File:Abyssal whip.png|link=Granite maul]] [[Granite maul|Whip]]</nowiki></code>
|-
|<code><nowiki>{{plinkp|Abyssal whip}}</nowiki></code>
|<code><nowiki>[[File:Abyssal whip.png|link=Abyssal whip]]</nowiki></code>
|-
|<code><nowiki>{{plinkp|Granite maul|pic=Abyssal whip}}</nowiki></code>
|<code><nowiki>[[File:Abyssal whip.png|link=Granite maul]]</nowiki></code>
|-
|}
==Categorising==
Navboxes are useful for transcluding categories onto a large number of pages that share both a trait and the navigation box. For example: [[Template:Rune equipment]] transcludes [[:Category:Rune]] onto every page that uses it.
There are 2 methods of categorising pages with navboxes:
The preferred method is to use '''{{t|Ctg}}'''. This has the most simple rules but is the easiest to use.
The other method is to use '''{{t|Mainonly|rules}}''' and provide more complex rules with parser functions. [[Template:Potions]] is an example of this:
<pre>
{{mainonly|{{#ifeq:{{lc:{{#sub:{{PAGENAME}}|-3}}}}|mix|[[Category:Barbarian mixes]]}}}}
</pre>
This code tells the template to add [[:Category:Barbarian mixes]] to pages only if their title ends with the string "mix". <code><nowiki>{{ctg|Barbarian mixes::ifmatches[mix]}}</nowiki></code> would '''not''' work here, because several pages include the substring "mix" in other locations, and they would be improperly categorised.
Categorisation should only be used on a template for large-scale addition. For small numbers of pages it is simpler to directly add the category to each page.
==Examples==
{{#ifeq:{{BASEPAGENAME}}|Navbox||To see the following navboxes in action, see [[Template:Navbox]].}}
===Single line navbox with centered list===
{{#ifeq:{{BASEPAGENAME}}|Navbox|{{Navbox
|state = uncollapsed
|name = Navbox
|title = [[RuneScape:Sandbox|Single line navbox]]
|style1 = text-align:center
|group1 =
* Lorem ipsum dolor sit amet
* Consectetur adipisicing elit
* sed do eiusmod tempor incididunt ut labore et dolore magna aliqua
}}}}
<pre>{{Navbox
|name =
|title =
|style1 = text-align:center
|group1 =
}}</pre>
===Navbox with standard footer===
{{#ifeq:{{BASEPAGENAME}}|Navbox|<!--
-->{{Navbox
|state = uncollapsed
|name = Navbox
|title = [[RuneScape:Sandbox|Navbox with footer]]
|style1 = text-align:center
|group1 =
* Lorem ipsum dolor sit amet
* Consectetur adipisicing elit
* sed do eiusmod tempor incididunt ut labore et dolore magna aliqua
|footer = Centered footer
}}}}
<pre>{{Navbox
|name =
|title =
|gtitle1 =
|group1 =
|footer = Centered footer
}}</pre>
===Navbox with styled footer===
{{#ifeq:{{BASEPAGENAME}}|Navbox|<!--
-->{{Navbox
|state = uncollapsed
|name = Navbox
|title = [[RuneScape:Sandbox|Navbox with footer]]
|style1 = text-align:center
|group1 =
* Lorem ipsum dolor sit amet
* Consectetur adipisicing elit
* sed do eiusmod tempor incididunt ut labore et dolore magna aliqua
|fstyle = text-align:right
|footer = Right-aligned footer
}}}}
<pre>{{Navbox
|name =
|title =
|gtitle1 =
|group1 =
|fstyle = text-align:right
|footer = Right-aligned footer
}}</pre>
===Multiple line navbox===
{{#ifeq:{{BASEPAGENAME}}|Navbox|<!--
-->{{Navbox
|state = uncollapsed
|name = Navbox
|title = [[RuneScape:Sandbox|Multiple line navbox]]
|gtitle1 = Group title 1
|group1 = Lorem ipsum dolor sit amet...
|gtitle2 = Group title 2
|group2 = Consectetur adipisicing elit...
|gtitle3 = Group title 3
|group3 = Sed do eiusmod tempor incididunt ut labore et dolore magna aliqua.
}}}}
<pre>{{Navbox
|name =
|title =
|gtitle1 = Group title 1
|group1 =
|gtitle2 = Group title 2
|group2 =
|gtitle3 = Group title 3
|group3 =
}}</pre>
===Collapsed navbox===
{{#ifeq:{{BASEPAGENAME}}|Navbox|<!--
-->{{Navbox
|state = collapsed
|name = Navbox
|title = [[RuneScape:Sandbox|Collapsed navbox]]
|style1 = text-align:center
|group1 = Lorem?
}}}}
<pre>{{Navbox
|state = collapsed
|name =
|title =
|style1 = text-align:center
|group1 =
}}</pre>
===Plain navbox with Tnavbar===
{{#ifeq:{{BASEPAGENAME}}|Navbox|<!--
-->{{Navbox
|state = plain
|name = Navbox
|title = [[RuneScape:Sandbox|Plain navbox with Tnavbar]]
|style1 = text-align:center
|group1 = [<small>[[RuneScape:Sandbox|show]]</small>]/[<small>[[RuneScape:Sandbox|hide]]</small>] links hidden (see Top-right corner).
}}}}
<pre>{{Navbox
|state = plain
|name =
|title =
|style1 = text-align:center
|group1 =
}}</pre>
===Plain navbox without Tnavbar===
{{#ifeq:{{BASEPAGENAME}}|Navbox|<!--
-->{{Navbox
|state = plain
|title = [[RuneScape:Sandbox|Plain navbox without Tnavbar]]
|style1 = text-align:center
|group1 = [<small>[[RuneScape:Sandbox|show]]</small>]/[<small>[[RuneScape:Sandbox|hide]]</small>] links hidden (see Top-right corner).<br><small>[[RuneScape:Sandbox|v]] {{*}} [[RuneScape:Sandbox|d]] {{*}} [[RuneScape:Sandbox|e]]</small> links also hidden (see Top-left corner). This is done by removing the ''name'' parameter.
}}}}
<pre>{{Navbox
|state = plain
|title =
|style1 = text-align:center
|group1 =
}}</pre>
===Complicated navbox===
{{#ifeq:{{BASEPAGENAME}}|Navbox|<!--
-->{{Navbox
|state = uncollapsed
|name = Navbox
|title = [[RuneScape:Sandbox|Complicated navbox]]
|gtitle1 = Level 1 Title 1
|group1 = Lorem ipsum dolor sit amet, consectetur adipiscing elit. Nulla eu sem eget nisi bibendum viverra a eget leo. Integer velit arcu, accumsan vel rhoncus eget, auctor a tellus. Nullam mollis turpis sollicitudin justo hendrerit ac volutpat nibh placerat.
|gtitle2 = Level 1 Title 2
|group2 = Curabitur posuere vestibulum dolor, quis faucibus justo tristique in. Nulla facilisi. Nunc iaculis erat nec ligula rutrum vel porta dolor posuere. Maecenas venenatis sapien id sapien pellentesque mollis.
|gtitle3 = Level 1 Title 3
|group3 = Sed ac sapien risus, in pharetra purus.
|gtitle4 = Level 1 Title 4
|group4 = Curabitur eu metus elit, a eleifend est. Aliquam vestibulum mollis metus, ut facilisis justo tincidunt non. Donec vel felis ut purus molestie facilisis consectetur a est. Nulla velit nisi, aliquet at condimentum non, varius ac nibh. Praesent fringilla nisi nibh. Morbi quis dapibus nulla.
|gtitle5 = Level 1 Title 5
|gtype5 = subgroup
|group5 =
{{Navbox
|subgroup = yes
|gtitle1 = Level 2 Title 1
|group1 = Nam cursus, leo sit amet congue porttitor, ante ligula mattis ante, ut rhoncus nisi augue eget mi. Etiam scelerisque, nunc et sagittis consequat, augue turpis gravida massa, quis blandit lectus orci vel sem.
|gtitle2 = Level 2 Title 2
|group2 = Aliquam tortor est, luctus et consectetur eget, dapibus lobortis ante.
|gtitle3 = Level 2 Title 3
|gtype3 = subgroup
|group3 =
{{Navbox
|subgroup = yes
|gtitle1 = Level 3 Title 1
|group1 = Vestibulum ante ipsum primis in faucibus orci luctus et ultrices posuere cubilia Curae; Vestibulum eu lacus ut sapien tristique fringilla tincidunt vitae risus.
|gtitle2 = Level 3 Title 2
|group2 = Donec in libero lorem. Vestibulum consequat tincidunt imperdiet.
}}
|gtitle4 = Level 2 Title 4
|group4 = Vivamus odio mi, ullamcorper vitae rutrum sed, bibendum vel mauris. Proin sed libero ac sapien pellentesque dapibus. Nulla et ipsum libero. Integer vitae euismod eros. Ut enim purus, consectetur congue fermentum nec, pharetra non dui. Mauris mollis sapien at massa commodo rutrum. Donec non risus ut dui ultrices molestie non a quam.
}}
|gtitle6 = Level 1 Title 6
|group6 = Duis vel ligula tellus, sed rutrum augue. Cras varius consectetur ligula, vitae accumsan nisl vehicula vitae. Integer mi nunc, cursus sit amet mattis vitae, porta nec ligula.
|gtitle7 = Level 1 Title 7
|group7 = Etiam vulputate nisl eget sapien mattis ultrices. Vestibulum et eros vitae arcu condimentum porta. Cras fringilla, erat quis consequat sollicitudin, est tortor tempor massa, quis euismod risus nisi vel massa. Phasellus in risus ac metus pharetra sodales vel at velit. Nulla ullamcorper, orci ac ultrices sollicitudin, ante erat scelerisque eros, auctor pretium felis nibh bibendum purus.
|fstyle = text-align:right
|footer = Quisque ut nisl arcu. Integer tincidunt, turpis pharetra consectetur consectetur, felis ipsum sagittis turpis, vel interdum eros mauris sed odio. <br> Aenean scelerisque rhoncus leo, a cursus neque vehicula sed.
}}}}
<pre>{{Navbox
|state = uncollapsed
|name =
|title =
|gtitle1 = Level 1 Title 1
|group1 =
|gtitle2 = Level 1 Title 2
|group2 =
|gtitle3 = Level 1 Title 3
|group3 =
|gtitle4 = Level 1 Title 4
|group4 =
|gtitle5 = Level 1 Title 5
|gtype5 = subgroup
|group5 =
{{Navbox
|subgroup = yes
|gtitle1 = Level 2 Title 1
|group1 =
|gtitle2 = Level 2 Title 2
|group2 =
|gtitle3 = Level 2 Title 3
|gtype3 = subgroup
|group3 =
{{Navbox
|subgroup = yes
|gtitle1 = Level 3 Title 1
|group1 =
|gtitle2 = Level 3 Title 2
|group2 =
}}
|gtitle4 = Level 2 Title 4
|group4 =
}}
|gtitle6 = Level 1 Title 6
|group6 =
|gtitle7 = Level 1 Title 7
|group7 =
|fstyle =
|footer =
}}</pre>
==Preventing unwanted documentation==
The [[Template:Navbox/doc|Navbox template's documentation]] is automatically transcluded under the navbox on any Template namespace page. It is not transcluded when used as a sub-group or collapsible sub-group template (''subgroup= yes'' or ''collapsible=yes'').
Should the documentation appear when it is unwanted, it can be hidden by setting the doc parameter ''doc=no'' on the template. In most cases, the doc parameter is not used and the parameter is removed completely.
On a similar note, the automatically-added category [[:Category:Navbox templates]] can be suppressed by adding ''hidecat=yes''.
<noinclude>[[Category:Navbox templates|*{{PAGENAME}}]]</noinclude>
<includeonly>
{{#ifeq:{{PAGENAME}}|Navbox|[[Category:Lua-based templates]]}}<!---
This should be kept separate to prevent *every* nav box from
Being marked as Lua based, simply for the sake of
keeping the category easy to navigate ---->
</includeonly>
3ed41c5e20586a935d9860285d6d73d2d00b7312
Alchemist
0
63
163
116
2024-03-22T15:11:18Z
InvalidCards
4
wikitext
text/x-wiki
'''Alchemist''' is a type of [[professions|profession]].
[[Category:Professions]]
7fcd1c08e1bacff1eb5ff725c39716368d80a471
User:Gau Cho
2
104
164
2024-03-22T15:11:18Z
Gau Cho
5
Created page with " {{#invoke:Infobox|helloworld}}"
wikitext
text/x-wiki
{{#invoke:Infobox|helloworld}}
b6c53f36364708fbb516fb38ea674a67f49d53f2
Template:Invokes
10
105
165
2024-03-22T15:11:27Z
Jayden
3
base cp from rsw
wikitext
text/x-wiki
<includeonly>{{#ifeq:{{NAMESPACE}}|Module|<div class="seealso">'''''{{#replace:{{FULLPAGENAME}}|/doc}}''' is invoked by [[{{{page|Template:{{{1}}}}}}]].{{#ifeq:{{lc:{{{category}}}}}|no||{{#ifeq:{{SUBPAGENAME}}|doc||[[Category:Template invoked modules]]}}}}''</div>|<div class="seealso">'''''{{#replace:{{FULLPAGENAME}}|/doc}}''' invokes [[Module:{{{1}}}]] using [[RuneScape:Lua|Lua]].{{#ifeq:{{lc:{{{category}}}}}|no||{{#ifeq:{{SUBPAGENAME}}|doc||[[Category:Lua-based templates]]}}}}''</div>}}</includeonly><noinclude>{{/doc}}</noinclude>
737f9999ad231b979c3d77e17f7119fe90315085
Template:Invokes/doc
10
106
166
2024-03-22T15:11:42Z
Jayden
3
base cp from rsw
wikitext
text/x-wiki
{{Documentation}}
This template should be put near the beginning of a template or module's documentation page to link to a module that the template invokes, or a template that invokes the module (respectively).
<pre>
{{Invokes|ModuleName}}
or
{{Invokes|TemplateName}}
</pre>
==Parameters==
===(1)===
On a template documentation page, this parameter should be supplied with the page title for a module that the template invokes (without the "Module:" namespace prefix).<br>
For example:
<pre>{{Invokes|Sandbox}}</pre>
Result (if on the [[{{#replace:{{FULLPAGENAME}}|/doc}}]] page):
{{Invokes|Sandbox|category=no}}
On a module documentation page, this parameter should be supplied with the page title for a template that invokes the module (without the "Template:" namespace prefix).<br>
For example:
<pre>{{Invokes|Sandbox}}</pre>
Result (if on the [[Module:Sandbox]] page):
<div class="seealso">'''''Module:Sandbox''' is invoked by [[Template:Sandbox]].''</div>
===page===
Optional parameter for use on module documentation pages. It allows overriding the default behaviour (linking to <code><nowiki>[[Template:{{{1}}}]]</nowiki></code>) to instead link to a template page that's outside of the Template namespace. The parameter should be supplied with the full page title, including any namespace prefix.
For example:
<pre>{{Invokes|page=Calculator:Skill calculators/Template}}</pre>
Result (if on the [[Module:Skill calc]] page):
<div class="seealso">'''''Module:Skill calc''' is invoked by Calculator:Skill calculators/Template.''</div>
<includeonly>[[Category:Transclusion templates]]</includeonly>
53498ace478044b97e6e41a5beb25e0af43ad717
Professions
0
56
167
98
2024-03-22T15:11:47Z
InvalidCards
4
wikitext
text/x-wiki
'''Professions''' are skills that [[player]]s can train and utilise in [[Brighter Shores]].
==List of professions==
{| class="wikitable"
! Name !! Uses
|-
| [[Fisher]] || Catching various [[fish]]
|-
| [[Forager]] || Gathering items
|-
| [[Chef]] || Cooking [[food]] items
|-
| [[Woodcutter]] || Chopping down [[tree]]s
|-
| [[Miner]] || Mining [[mineral]]s
|-
| [[Alchemist]] ||
|-
| [[Stonemason]] ||
|-
| [[Merchant]] ||
|-
| [[Blacksmith]] ||
|}
[[Category:Professions|#]]
007498cf2878978a6995758141d601dca06510dc
Category:Transclusion templates
14
107
168
2024-03-22T15:12:10Z
Jayden
3
Created page with "[[Category:Templates]]"
wikitext
text/x-wiki
[[Category:Templates]]
06eecdec29f6cb215c99cf216d1e3bdc8c30a95e
Category:Templates
14
108
169
2024-03-22T15:12:31Z
Jayden
3
Created page with "{{Categoryheader|pages|templates. This is the base category for '''templates'''. Templates should be placed in appropriate sub-categories, and should not appear here. See [[RuneScape:Templates]] for collated information on templates. ==Categorising templates== Templates themselves can be categorised - without affecting the pages that call them - by putting the category link inside '''<code><nowiki><noinclude></noinclude></nowiki></code>''' tags <nowiki><noinclude>Ca..."
wikitext
text/x-wiki
{{Categoryheader|pages|templates. This is the base category for '''templates'''. Templates should be placed in appropriate sub-categories, and should not appear here. See [[RuneScape:Templates]] for collated information on templates.
==Categorising templates==
Templates themselves can be categorised - without affecting the pages that call them - by putting the category link inside '''<code><nowiki><noinclude></noinclude></nowiki></code>''' tags
<nowiki><noinclude>[[Category:</nowiki>'''category name'''<nowiki>|{{PAGENAME}}]]</noinclude></nowiki>
The "noinclude" tags specify that the link applies only to the template, and is not included during transclusion||}}
[[Category:Maintenance]]
2a465f7e1c7f615bc9bded5e1bce8038807a2288
180
169
2024-03-22T15:13:23Z
Jayden
3
wikitext
text/x-wiki
{{Categoryheader|pages|templates. This is the base category for '''templates'''. Templates should be placed in appropriate sub-categories, and should not appear here.
==Categorising templates==
Templates themselves can be categorised - without affecting the pages that call them - by putting the category link inside '''<code><nowiki><noinclude></noinclude></nowiki></code>''' tags
<nowiki><noinclude>[[Category:</nowiki>'''category name'''<nowiki>|{{PAGENAME}}]]</noinclude></nowiki>
The "noinclude" tags specify that the link applies only to the template, and is not included during transclusion||}}
[[Category:Maintenance]]
f35a935456f57cec30db02cc2115f1df38568c4a
Category:Professions
14
109
170
2024-03-22T15:12:36Z
InvalidCards
4
Created page with "This category contains pages related to [[professions]]."
wikitext
text/x-wiki
This category contains pages related to [[professions]].
c5e77c8f690ba018b89ba5b70f12104def38ada9
184
170
2024-03-22T15:15:37Z
InvalidCards
4
wikitext
text/x-wiki
{{Categoryheader|pages|[[professions]]}}
[[Category:Content]]
0dd1d416d7d350b0a4d4c033314d01061e63eb04
Template:Categoryheader
10
110
171
2024-03-22T15:12:47Z
Jayden
3
Created page with "<includeonly>This category contains {{{1}}}{{#if:{{{2|}}}|{{#ifeq:{{lc:{{{related|}}}}}|no|| related to}} {{{2}}}}}. {{#if:{{{3|}}}|This category is automatically added by {{{4}}}.}}</includeonly><noinclude>{{/doc}}</noinclude>"
wikitext
text/x-wiki
<includeonly>This category contains {{{1}}}{{#if:{{{2|}}}|{{#ifeq:{{lc:{{{related|}}}}}|no|| related to}} {{{2}}}}}. {{#if:{{{3|}}}|This category is automatically added by {{{4}}}.}}</includeonly><noinclude>{{/doc}}</noinclude>
af0667e25c0b93315e78c59bd9b0eda732c8d8e2
Fisher
0
58
172
111
2024-03-22T15:12:59Z
InvalidCards
4
wikitext
text/x-wiki
'''Fisher''' is a type of [[professions|profession]] which specialises in catching [[fish]].
[[Category:Professions]]
8fdd255862bd39cf00942a810958feea45fb5df8
Forager
0
59
173
112
2024-03-22T15:13:02Z
InvalidCards
4
wikitext
text/x-wiki
'''Forager''' is a type of [[professions|profession]].
[[Category:Professions]]
71117588ed6e3e36651b98e1f9cd44b8a3fe5b30
Template:Categoryheader/doc
10
111
174
2024-03-22T15:13:04Z
Jayden
3
Created page with "{{Documentation}} This template displays a standardised sentence to be used on all category pages. ==Usage== This template can be used by entering the following onto a category page. <pre>{{Categoryheader|1|2|3|4}}</pre> The "related to" in the template's output can be suppressed by adding <code>related=no</code> as a parameter to the template. ==Example== <pre>{{Categoryheader|pages|the [[Theatre of Blood]]|yes|[[Template:Theatre of Blood]]}}</pre> {{Categoryheader..."
wikitext
text/x-wiki
{{Documentation}}
This template displays a standardised sentence to be used on all category pages.
==Usage==
This template can be used by entering the following onto a category page.
<pre>{{Categoryheader|1|2|3|4}}</pre>
The "related to" in the template's output can be suppressed by adding <code>related=no</code> as a parameter to the template.
==Example==
<pre>{{Categoryheader|pages|the [[Theatre of Blood]]|yes|[[Template:Theatre of Blood]]}}</pre>
{{Categoryheader|pages|the [[Theatre of Blood]]|yes|[[Template:Theatre of Blood]]}}
{{TemplateData|<templatedata>
{
"params": {
"1": {
"label": "Content type",
"description": "This parameter will accept whether the category contains any combination of pages, images, and/or subcategories.",
"type": "string",
"required": true,
"example": "pages and files",
"suggested": true
},
"2": {
"label": "Subject",
"description": "This parameter will accept the subject of the category.",
"type": "string",
"required": true,
"suggested": true
},
"3": {
"label": "Automatically added",
"description": "This parameter will accept the word 'yes', if the category in question is automatically added to a page via a template. Leave this parameter blank if the category is not automatically added.",
"type": "boolean",
"suggested": true
},
"4": {
"label": "Added by",
"description": "This parameter will accept the names of the templates that automatically are added by a template. This parameter will only display if the third parameter is 'yes'.",
"type": "string",
"suggested": true
},
"related": {
"label": "Suppress \"related to\"",
"description": "Set to \"no\" to suppress the \"related to\" text that is otherwise shown between \"Content type\" and \"Subject\"",
"type": "boolean"
}
},
"format": "inline",
"description": "This template displays a standardised sentence to be used on all category pages."
}
</templatedata>}}
<includeonly>[[Category:Transclusion templates|{{PAGENAME}}]]</includeonly>
75499e1713c892e9baf3d9196bbcf318a2f30858
182
174
2024-03-22T15:14:42Z
Jayden
3
change boilerplate
wikitext
text/x-wiki
{{Documentation}}
This template displays a standardised sentence to be used on all category pages.
==Usage==
This template can be used by entering the following onto a category page.
<pre>{{Categoryheader|1|2|3|4}}</pre>
The "related to" in the template's output can be suppressed by adding <code>related=no</code> as a parameter to the template.
==Example==
<pre>{{Categoryheader|pages|[[Professions]]|yes|[[Template:Professions]]}}</pre>
{{Categoryheader|pages|[[Professions]]|yes|[[Template:Professions]]}}
{{TemplateData|<templatedata>
{
"params": {
"1": {
"label": "Content type",
"description": "This parameter will accept whether the category contains any combination of pages, images, and/or subcategories.",
"type": "string",
"required": true,
"example": "pages and files",
"suggested": true
},
"2": {
"label": "Subject",
"description": "This parameter will accept the subject of the category.",
"type": "string",
"required": true,
"suggested": true
},
"3": {
"label": "Automatically added",
"description": "This parameter will accept the word 'yes', if the category in question is automatically added to a page via a template. Leave this parameter blank if the category is not automatically added.",
"type": "boolean",
"suggested": true
},
"4": {
"label": "Added by",
"description": "This parameter will accept the names of the templates that automatically are added by a template. This parameter will only display if the third parameter is 'yes'.",
"type": "string",
"suggested": true
},
"related": {
"label": "Suppress \"related to\"",
"description": "Set to \"no\" to suppress the \"related to\" text that is otherwise shown between \"Content type\" and \"Subject\"",
"type": "boolean"
}
},
"format": "inline",
"description": "This template displays a standardised sentence to be used on all category pages."
}
</templatedata>}}
<includeonly>[[Category:Transclusion templates|{{PAGENAME}}]]</includeonly>
d79a0a9c1f6199377b1b06ed5528120bbfb9c411
Chef
0
60
175
113
2024-03-22T15:13:05Z
InvalidCards
4
wikitext
text/x-wiki
'''Chef''' is a type of [[professions|profession]] which allows the [[player]] to [[cooking|cook]] many different [[food]] items.
[[Category:Professions]]
2d437cd5d1a7063af03b58a67260221a65e66ae9
Woodcutter
0
61
176
114
2024-03-22T15:13:09Z
InvalidCards
4
wikitext
text/x-wiki
'''Woodcutter''' is a type of [[professions|profession]].
[[Category:Professions]]
0eabb6e0b14e1a7b5bfdc1ef0a56a9c4a32e835c
Miner
0
62
177
115
2024-03-22T15:13:13Z
InvalidCards
4
wikitext
text/x-wiki
'''Miner''' is a type of [[professions|profession]] specialising in collecting [[minerals]].
[[Category:Professions]]
0fcc0a316548e9654e97a60bc2342b65df6f3f12
Stonemason
0
64
178
117
2024-03-22T15:13:16Z
InvalidCards
4
wikitext
text/x-wiki
'''Stonemason''' is a type of [[professions|profession]].
[[Category:Professions]]
302760ecb9fc2e7fd8fc1b3d9b0517b46142f7ce
Merchant
0
65
179
118
2024-03-22T15:13:19Z
InvalidCards
4
wikitext
text/x-wiki
'''Merchant''' is a type of [[professions|profession]].
[[Category:Professions]]
8f870ab5874d645efe5c742a51140d439d34b20e
Blacksmith
0
66
181
119
2024-03-22T15:13:23Z
InvalidCards
4
wikitext
text/x-wiki
'''Blacksmith''' is a type of [[professions|profession]].
[[Category:Professions]]
099d380cdc82f9af6164241823eb10174d12e26a
Category:Maintenance
14
112
183
2024-03-22T15:15:24Z
Jayden
3
Created page with "{{Categoryheader|pages|general wiki maintenance}}"
wikitext
text/x-wiki
{{Categoryheader|pages|general wiki maintenance}}
5b1a0eaa6d8eec1ef969ffceee78461d7952c026
Category:Content
14
113
185
2024-03-22T15:16:15Z
InvalidCards
4
Created page with "{{Categoryheader|pages, images, and subcategories|''[[Brighter Shores]]''. Sub-categories should be added to this category, and all pages and images should be in a subcategory of this||}} [[Category:Brighter Shores Wiki]]"
wikitext
text/x-wiki
{{Categoryheader|pages, images, and subcategories|''[[Brighter Shores]]''. Sub-categories should be added to this category, and all pages and images should be in a subcategory of this||}}
[[Category:Brighter Shores Wiki]]
8d0acb8d6cf350fc8ca65310dc4eef08a6ccb778
Category:Brighter Shores Wiki
14
114
186
2024-03-22T15:16:57Z
InvalidCards
4
Created page with "<!-- THIS CATEGORY IS SUPPOSED TO BE LEFT UNCATEGORISED. Please do not add any categories to this page. It is the top level category and belongs on the Special page for uncategorised categories --> This category contains pages, images, and subcategories related to the Brighter Shores Wiki. This is the '''top-level category''', or the '''root category'''. * The "Content" category is intended for all articles about the subject matter of the wiki. * A full list of exist..."
wikitext
text/x-wiki
<!-- THIS CATEGORY IS SUPPOSED TO BE LEFT UNCATEGORISED. Please do not add any categories to this page. It is the top level category and belongs on the Special page for uncategorised categories -->
This category contains pages, images, and subcategories related to the Brighter Shores Wiki. This is the '''top-level category''', or the '''root category'''.
* The "Content" category is intended for all articles about the subject matter of the wiki.
* A full list of existing categories can be found at [[Special:Categories]].
To add a new category to a page, just add <code><nowiki>[[Category:Categoryname]]</nowiki></code> to the end of the article or existing category page.
Ideally, this category should not contain any pages, and should only contain sub-categories. Every other category should be a sub-category of at least one other, and every article should be in at least one category; many will fit well into two or more categories (i.e. location and subject-matter).
4d89e69f9799d0e76a7dcae249239427a103c4bb
Main Page
0
4
187
70
2024-03-22T15:17:25Z
InvalidCards
4
wikitext
text/x-wiki
{{Main Page/Header}}
<div class="mainpage-body">
{{Main Page/Contents}}
</div>
[[Category:Brighter Shores Wiki]]
f10dc04a0cbb5c2e7f2e7de2886ba2a783f7536b
Template:Professions
10
115
188
2024-03-22T15:17:38Z
Jayden
3
Created page with "{{Navbox |name = Professions |title = [[Professions]] |group1 = * [[Fisher]] * [[Forager]] * [[Chef]] * [[Woodcutter]] * [[Miner]] * [[Alchemist]] * [[Stonemason]] * [[Merchant]] * [[Blacksmith]] }}{{Ctg|Professions}}"
wikitext
text/x-wiki
{{Navbox
|name = Professions
|title = [[Professions]]
|group1 =
* [[Fisher]]
* [[Forager]]
* [[Chef]]
* [[Woodcutter]]
* [[Miner]]
* [[Alchemist]]
* [[Stonemason]]
* [[Merchant]]
* [[Blacksmith]]
}}{{Ctg|Professions}}
db28a96d7722e4a67cdbfd629c64b5818e9a4034
Template:Ctg
10
116
189
2024-03-22T15:17:53Z
Jayden
3
Created page with "{{{{{|safesubst:}}}#invoke:Category handler|main}}<noinclude>{{/doc}}</noinclude>"
wikitext
text/x-wiki
{{{{{|safesubst:}}}#invoke:Category handler|main}}<noinclude>{{/doc}}</noinclude>
2582b1fa978320259a7df38ee159c8c332e15fc6
Module:Paramtest
828
117
190
2024-03-22T15:18:15Z
Jayden
3
Created page with "--[[ {{Helper module |name=Paramtest |fname1 = is_empty(arg) |ftype1 = String |fuse1 = Returns true if arg is not defined or contains only whitespace |fname2 = has_content(arg) |ftype2 = String |fuse2 = Returns true if arg exists and does not only contain whitespace |fname3 = default_to(arg1,arg2) |ftype3 = String, Any value |fuse3 = If arg1 exists and does not only contain whitespace, the function returns arg1, otherwise returns arg2 |fname4 = defaults{ {arg1,arg2},...}..."
Scribunto
text/plain
--[[
{{Helper module
|name=Paramtest
|fname1 = is_empty(arg)
|ftype1 = String
|fuse1 = Returns true if arg is not defined or contains only whitespace
|fname2 = has_content(arg)
|ftype2 = String
|fuse2 = Returns true if arg exists and does not only contain whitespace
|fname3 = default_to(arg1,arg2)
|ftype3 = String, Any value
|fuse3 = If arg1 exists and does not only contain whitespace, the function returns arg1, otherwise returns arg2
|fname4 = defaults{ {arg1,arg2},...}
|ftype4 = {String, Any value}...
|fuse4 = Does the same as <code>default_to()</code> run over every table passed; for technical reasons, all <code>nil</code> are replaced with <code>false</code>
}}
--]]
--
-- Tests basic properties of parameters
--
local p = {}
--
-- Tests if the parameter is empty, all white space, or undefined
--
function p.is_empty(arg)
return not string.find(arg or '', '%S')
end
--
-- Returns the parameter if it has any content, the default (2nd param)
--
function p.default_to(arg, default)
if string.find(arg or '', '%S') then
return arg
else
return default
end
end
--
-- Returns a list of paramaters if it has any content, or the default
--
function p.defaults(...)
local ret = {}
for i, v in ipairs(...) do
if string.find(v[1] or '', '%S') then
table.insert(ret,v[1])
else
-- or false, because nil is removed
table.insert(ret,v[2] or false)
end
end
return unpack(ret)
end
--
-- Tests if the parameter has content
-- The same as !is_empty, but this is more readily clear
--
function p.has_content(arg)
return string.find(arg or '', '%S')
end
--
-- uppercases first letter
--
function p.ucfirst(arg)
if not arg or arg:len() == 0 then
return nil
elseif arg:len() == 1 then
return arg:upper()
else
return arg:sub(1,1):upper() .. arg:sub(2)
end
end
--
-- uppercases first letter, lowercases everything else
--
function p.ucflc(arg)
if not arg or arg:len() == 0 then
return nil
elseif arg:len() == 1 then
return arg:upper()
else
return arg:sub(1,1):upper() .. arg:sub(2):lower()
end
end
return p
cfa20dcb7af37a9dea2d5bb367b11815f5ec675f
Barricades
0
79
191
136
2024-03-22T15:18:24Z
InvalidCards
4
wikitext
text/x-wiki
The '''Barricades''' is a location that leads into the [[Mine Entrance]], which is guarded by a [[barricade guard]]. The player must talk to [[Captain Jal Degreene]] as part of a quest in order to be allowed through.
[[Category:Locations]]
2f9e17b62f81d459c452336a76842a2ab2fbdba9
Module:Category handler
828
118
192
2024-03-22T15:18:34Z
Jayden
3
Created page with "--[=[ <pre> -- Implements [Template:Ctg] -- Sorts pages into a category more appropriately than pagename alone -- Default and custom rules are outlined at [[Template:Category handler/doc]] --]=] local p = {} local ucf = require('Module:Paramtest').ucfirst local curpage = mw.title.getCurrentTitle() function p.main(frame) local ns = curpage.namespace -- Just don't bother unless we're in content namespaces if not (ns == 0 or ns == 120 or ns == 116) then return ''..."
Scribunto
text/plain
--[=[ <pre>
-- Implements [Template:Ctg]
-- Sorts pages into a category more appropriately than pagename alone
-- Default and custom rules are outlined at [[Template:Category handler/doc]]
--]=]
local p = {}
local ucf = require('Module:Paramtest').ucfirst
local curpage = mw.title.getCurrentTitle()
function p.main(frame)
local ns = curpage.namespace
-- Just don't bother unless we're in content namespaces
if not (ns == 0 or ns == 120 or ns == 116) then
return ''
end
local args = frame:getParent().args
local cats = {}
for _, v in ipairs(args) do
local cat_x = {}
-- Replace underscores with spaces
-- Condense and trim white-space; remove new lines (just in case)
v = mw.text.trim(v)
:gsub('[_%s]+',' ')
:gsub('\n','')
-- Snip category name now, up to the index of the first set of two colons
-- If no colons, just use the whole string
local cat_n = (v:match('^([^:]+)::') or v)
:gsub('[Cc]ategory:%s*','')
-- Set category name to the name just snipped
cat_x.name = cat_n
-- Page title includes matched text
-- Matched text is defined by ::ifmatches[text]
-- or if empty, defaults to category name
if v:find('::ifmatches') then
-- Look for brackets used as delimiters and capture them all
local match_set = v:match('::ifmatches(%[[^:]+%])')
-- If none are found, use the pagename
if not match_set then
cat_x.ifmatch = {cat_n}
else
cat_x.ifmatch = {}
-- Split match into table, delimited by brackets
match_set = mw.text.split(match_set,'[%]%[]+')
-- Add to match table; only if not blank
-- An empty string is created by "[" at the beginning
for _, w in ipairs(match_set) do
if w:find('%S') then
table.insert(cat_x.ifmatch,w)
end
end
end
-- Iterate through and escape all metacharacters
-- Prevents errors when they're passed to string.match() below
-- Make everything lowercase
for i, w in ipairs(cat_x.ifmatch) do
cat_x.ifmatch[i] = w:gsub(
-- Chars: - ^ $ * ( ) + ?
'([%-^$*()+?])',
'%%%1'):lower()
end
end
-- Text to strip from the front of the sort
-- Can be user defined with ::remove[text]
-- Defaults to category name exactly
-- Escape metacharacters to prevent errors when they're passed to string.match() below
cat_x.trim = string.gsub(
v:match('::remove%[%s*([^]:]+)%s*%]') or
cat_n,
-- Chars: - ^ $ * ( ) + ?
'([%-^$*()+?])',
'%%%1')
-- Add category and its rules into the list
table.insert(cats,cat_x)
end
return p._main(cats)
end
function p._main(cat_list)
-- Pagename, exactly, in all lowercase, and escaped (used for matching)
local pagename = curpage.text
local pagelc = pagename:lower()
local pageesc = pagelc:gsub(
-- Chars: - ^ $ * ( ) + ?
'([%-^$*()+?])',
'%%%1')
-- Return table
local ctg = {}
for _, v in ipairs(cat_list) do
-- Category name and in lowercase
local cn = v.name
local cnl = cn:lower()
-- Text to remove
local rmv = v.trim:lower()
-- Little thing that checks pagename against everything in the matches table
-- If there's no table, keep as false (it won't matter)
local pagematches = false
if v.ifmatch then
for _, w in ipairs(v.ifmatch) do
-- Look for exact match, and with faux-singular too
if pagelc:find(w) or
(w:find('s$') and
pagelc:find(w:match('(.*)s$')))
then
pagematches = true
end
end
end
-- Create a second string that counts as the singular of the text to remove
-- If it works as a singular, and the page name is singular, then use it too
-- Otherwise, just make it the same as rmv
local rmvpl = rmv
if rmv:find('s$') then
rmvpl = rmv:match('(.*)s$')
if pagelc:find('^'..rmvpl) and
(not pagelc:find('^'..rmv))
then
-- Nothing
else
rmvpl = rmv
end
end
-- If v.ifmatch is not specified or
-- It is and the pattern matches any part of the pagename
-- Continue to add categories
if (not v.ifmatch) or
(v.ifmatch and pagematches)
then
-- If the pagename matches category name exactly
-- Or either is a simple plural of the other
-- Or the text to remove exactly
-- Sort to front
if pagelc:find('^'..cnl..'$') or
cnl:find('^'..pageesc..'s$') or
pagelc:find('^'..cnl..'s$') or
pagelc:find('^'..rmv..'$')
then
table.insert(ctg,string.format('[[Category:%s| ]]',cn))
-- If the pagename begins with the category name
-- Sort with beginning remove
elseif pagelc:find('^'..rmv) or
pagelc:find('^'..rmvpl)
then
-- Offset by an extra character if it's not plural
-- Or the page starts with plural
if rmvpl == rmv then
offset = 1
else
offset = 0
end
-- Unescape metacharacters for proper length
local key = pagename:sub( #(rmv:gsub('%%','')) + offset )
key = ucf(mw.text.trim(key))
-- Remove punctuation from start if leftover
-- Such as "/" leftover on subpages
-- Or "(" for disambiguated pages
if key:find('^%p') then
key = ucf(key:sub(2))
-- Just in case, remove "s" preceding punctuation
elseif key:find('^S%p') then
key = ucf(key:sub(3))
end
table.insert(ctg,string.format('[[Category:%s|%s]]',cn,key))
-- Everything else just gets the category added plainly
else
table.insert(ctg,string.format('[[Category:%s]]',cn))
end
end
end
return table.concat(ctg)
end
return p
d47b5880736675df2df2fe7bff3e9e250a84ae6e
Category:Locations
14
119
193
2024-03-22T15:18:41Z
InvalidCards
4
Created page with "{{Categoryheader|pages|locations}} [[Category:Content]]"
wikitext
text/x-wiki
{{Categoryheader|pages|locations}}
[[Category:Content]]
2151ca92c6b8a541bac70b319e6c48392d288515
Basic bacon
0
84
194
141
2024-03-22T15:18:59Z
InvalidCards
4
wikitext
text/x-wiki
'''Basic Bacon''' is a food that can be created using the [[Chef]] profession. It can be obtained by frying raw bacon in a kitchen.
[[Category:Items]]
d2468fbc55857c73273ae33b2c8ed47f278622bf
Category:Navbox templates
14
120
195
2024-03-22T15:19:05Z
Jayden
3
Created page with "[[Category:Navigational templates]]"
wikitext
text/x-wiki
[[Category:Navigational templates]]
f69ac1a88cfac3ba37871c145f46f3b6101b7558
Category:Items
14
121
196
2024-03-22T15:19:14Z
InvalidCards
4
Created page with "{{Categoryheader|pages|items}} [[Category:Content]]"
wikitext
text/x-wiki
{{Categoryheader|pages|items}}
[[Category:Content]]
c6a61d666de69074b80ac807998446444b61ec28
Category:Navigational templates
14
122
197
2024-03-22T15:19:16Z
Jayden
3
Created page with "[[Category:Templates]]"
wikitext
text/x-wiki
[[Category:Templates]]
06eecdec29f6cb215c99cf216d1e3bdc8c30a95e
Bone Vats
0
81
198
138
2024-03-22T15:19:30Z
InvalidCards
4
wikitext
text/x-wiki
The '''Bone Vats''' is a location where players can craft items using bones.
[[Category:Locations]]
95c3e2bd90c89083ce463256ce854b6826576e1a
Cliffside Path
0
83
199
140
2024-03-22T15:20:17Z
InvalidCards
4
wikitext
text/x-wiki
The '''Cliffside Path''' is a location. It is a wooded path, inhabited by giant spiders, with large cobwebs strewn about.
[[Category:Locations]]
3ed16ef02f924c735803c88cdf9d2eaa12755442
MediaWiki:Vector.less/navbox.less
8
123
200
2024-03-22T15:20:27Z
Jayden
3
Created page with "/* =========================== [[Template:Navbox]] =========================== */ :root { --navbox-background: @BODY_LIGHT; --navbox-border: @BODY_DARK; --navbox-title-background: @BODY_DARK; --navbox-footer-background: @BODY_DARK; --navbox-group-title-background: @BODY_MID; } .navbox { font-size: .85em; background: var(--navbox-background); border-collapse: collapse; margin: 1em auto 0; // 0 as .catlinks has margin already + navboxes are expected to..."
less
less
/* ===========================
[[Template:Navbox]]
=========================== */
:root {
--navbox-background: @BODY_LIGHT;
--navbox-border: @BODY_DARK;
--navbox-title-background: @BODY_DARK;
--navbox-footer-background: @BODY_DARK;
--navbox-group-title-background: @BODY_MID;
}
.navbox {
font-size: .85em;
background: var(--navbox-background);
border-collapse: collapse;
margin: 1em auto 0; // 0 as .catlinks has margin already + navboxes are expected to be the last element on the page
width: 100%;
clear: both;
box-shadow: @box-shadow;
img {
// retina support
.pixelate();
}
// nested navboxes
.navbox {
font-size: 100%;
margin: 0.5em auto 0;
box-shadow: none;
}
}
@header-padding: 0.25em 1em;
// main header
.navbox-title {
font-size: 110%;
line-height: 1.6em;
background: var(--navbox-title-background);
text-align: center;
padding: @header-padding;
&-name {
// Navbox title text - prev done via fixed width on both collapse button
// and navbar to prevent title shift
margin: 0 4em;
}
// Fix toggle style being different before JS takes over.
.mw-collapsible-toggle {
font-size: .9em;
text-align: right;
}
// nested navboxes
.navbox {
font-size: 100%;
}
}
.navbox-group:nth-child(2) {
// separating border in case group-title and title background match e.g. dark mode
border-top: 1px solid var(--navbox-border);
}
// navbox group title
.navbox-group-title {
background: var(--navbox-group-title-background);
border: 1px solid var(--navbox-border);
border-width: 0 1px 1px 0; // right and bottom
text-align: left;
padding: @header-padding;
// needs <br> tags in cases of long titles
width: 1%;
white-space: nowrap;
}
// navbox group content
.navbox-list {
border-bottom: 1px solid var(--navbox-border);
padding: 0.25em 0.5em;
ul {
margin: 0;
}
// list styling
li {
display: inline;
white-space: nowrap;
& + li::before {
content: '• ';
}
}
}
// parent of a subgroup
.navbox-parent {
padding: 0;
}
// nested group content
.navbox-subgroup {
border-collapse: collapse;
border-spacing: 0;
width: 100%;
// if the nested group title ever needs to be changed
.navbox-group-title {
// background: @BODY_LIGHT;
}
> tbody > tr:last-child > th,
> tbody > tr:last-child > td {
border-bottom: none;
}
}
// footer
.navbox-footer {
background: var(--navbox-footer-background);
text-align: center;
padding: @header-padding;
}
.navbox-data {
display: none;
}
6b745370861ff265e76ed2dfd1598ae3fc5a6c1f
Crenopolis
0
75
201
128
2024-03-22T15:20:29Z
InvalidCards
4
wikitext
text/x-wiki
'''Crenopolis''' is a [[location]] that can be accessed by [[player]]s who purchase the [[Premium Pass]].
[[Category:Locations]]
18a0be59e41b5367d88a4e38473c263e89ea4770
File:Solstrike.png
6
124
202
2024-03-22T15:20:35Z
ToofleBerry
6
Obtained from https://web.archive.org/web/20230705053137im_/https://www.solstrike.com/screenshot1.png
wikitext
text/x-wiki
== Summary ==
Obtained from https://web.archive.org/web/20230705053137im_/https://www.solstrike.com/screenshot1.png
6f079ce359a93882dd589f6d3975fb610eee18ed
Factions
0
72
203
125
2024-03-22T15:20:49Z
InvalidCards
4
wikitext
text/x-wiki
'''Classes''' in [[Brighter Shores]] allow the [[player]] to specialise in using a specific [[combat]] style.
==Classes==
* The [[Cryoknight]] class is focused on melee combat, using weapons like [[sword]]s alongside a [[shield]]
* [[Guardian]]s use ranged combat, preferring to wield weapons like [[crossbow]]s
* The [[Hammermage]] class fights using a mix of melee and magic
[[Category:Class|#]]
dda9a88b53730be54b840eebfd527eaa78dd46b7
MediaWiki:Vector.less
8
31
204
48
2024-03-22T15:20:52Z
Jayden
3
less
less
/* =============================================================================
* This is the root Less file that is parsed to produce [[MediaWiki:Vector.css]].
*
* These styles will be applied to the Vector skin (desktop).
* -----------------------------------------------------------------------------
* Less documentation: <http://lesscss.org/features/>
* Gadget: <https://meta.weirdgloop.org/w/MediaWiki:Gadget-Less.js>
* Core Less JS: <https://meta.weirdgloop.org/w/MediaWiki:Gadget-Less-core.js>
* Non-standard mixins: <https://meta.weirdgloop.org/w/MediaWiki:Gadget-LessMixins.less>
* Online Less tester: <https://lesscss.org/less-preview/>
* ============================================================================= */
@common: 'MediaWiki:Common.less';
@dir: 'MediaWiki:Vector.less';
// ===== Imports =====
@import '@{common}/mixins.less';
@import '@{common}/variables.less';
@import '@{dir}/elements.less';
// Vector interface files
@import '@{dir}/vectormenu.less';
@import '@{dir}/vectorsearch.less';
@import '@{dir}/vectorsidebar.less';
@import '@{dir}/vectortabs.less';
// Image thumbnails
@import '@{dir}/thumb.less';
// Table of Contents
@import '@{dir}/toc.less';
// anything else that doesn't go into above files
@import '@{dir}/interface.less';
// Editor interface
@import '@{dir}/sourceeditor.less';
@import '@{dir}/editor.less';
// Templates
@import '@{dir}/navbox.less';
// Misc
@import '@{dir}/echo.less';
// ===== Miscellaneous =====
// moved from [[MediaWiki:Common.less/tabber.less]]
// because it caused them to go off-screen on mobile
.tabber {
display: inline-grid;
}
322d6e01c94ee85900dcc283bd07b4f1fea244cb
MediaWiki:Vector.css
8
43
205
107
2024-03-22T15:20:56Z
Jayden
3
Updating CSS from [[MediaWiki:Vector.less]]
css
text/css
/* <pre> */
:root {
--ul-list-style-image: url("data:image/svg+xml,%3C%3Fxml version='1.0' encoding='UTF-8'%3F%3E%3Csvg xmlns='http://www.w3.org/2000/svg' width='5' height='13'%3E%3Ccircle cx='2.5' cy='9' r='2.5' fill='%23000'/%3E%3C/svg%3E");
}
html {
-webkit-text-size-adjust: 100%;
}
body {
background: var(--body-background-image) var(--body-background-color) top left / 1500px 375px no-repeat;
font-family: 'Helvetica Neue', 'Arial', sans-serif;
}
.vector-body {
font-size: 0.9em;
}
#firstHeading {
font-weight: bold;
}
pre,
code,
.mw-code {
color: inherit;
background-color: var(--mw-code-background-color);
border: 1px solid var(--body-border);
}
dl {
margin: 0;
}
ul {
list-style-image: var(--ul-list-style-image);
}
hr {
background: none;
border-color: var(--sidebar);
border-style: solid;
border-width: 1px 0 0 0;
height: initial;
}
fieldset {
border-color: var(--sidebar);
}
.vector-body blockquote {
border-color: var(--body-mid);
}
:root {
--personal-links-bg: var(--body-main);
--arrow-down: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath d='M11.05 3.996l-.965-1.053-4.035 3.86-3.947-3.86L1.05 3.996l5 5 5-5' fill='%23444'/%3E%3C/svg%3E");
}
.vector-menu-dropdown .vector-menu-heading {
background-color: var(--vector-tab-background);
padding: 1em 0.75em 0.6923em;
margin: 0;
}
.vector-menu-dropdown .vector-menu-heading,
.vector-menu-dropdown .vector-menu-heading:hover,
.vector-menu-dropdown .vector-menu-heading:focus {
color: var(--background-text-color);
}
.vector-menu-dropdown .vector-menu-heading:after {
background-image: var(--arrow-down);
opacity: 1;
}
.vector-menu-dropdown .vector-menu-content {
border-color: transparent;
background-color: var(--body-light);
box-shadow: 0 2px 3px 0 rgba(0, 0, 0, 0.1);
left: 0;
}
.vector-menu-dropdown .mw-list-item a {
color: var(--link-color);
}
.vector-menu-dropdown .mw-list-item.selected a,
.vector-menu-dropdown .mw-list-item.selected a:visited {
color: var(--text-color);
}
#p-personal {
background: var(--personal-links-bg);
top: 0;
right: 0;
border-radius: 0 0 0 4px;
height: 1.875em;
}
#p-personal ul {
padding: 0 1em 0 0.4375em;
}
.vector-search-box-inner {
background: var(--search-box);
height: 2.5em;
margin-top: 0;
box-shadow: inset 0 -7px 7px -7px rgba(0, 0, 0, 0.15);
}
.vector-search-box-input {
color: var(--text-color);
height: 100%;
border: none;
background: none;
padding-left: 0.75em;
}
.vector-search-box-input::placeholder {
color: var(--text-color);
opacity: 0.67;
}
.vector-search-box-inner:hover .vector-search-box-input,
.vector-search-box-input:focus,
.vector-search-box-inner:hover .vector-search-box-input:focus {
border: none;
box-shadow: none;
}
:root {
--searchbutton-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='13'%3E%3Cg fill='none' stroke='%23000' stroke-width='2'%3E%3Cpath d='M11.29 11.71l-4-4'/%3E%3Ccircle cx='5' cy='5' r='4'/%3E%3C/g%3E%3C/svg%3E");
}
.searchButton[name='go'] {
background: no-repeat center var(--searchbutton-icon);
}
.vector-search-box {
margin: 0;
}
.vector-search-box form {
margin-top: 0;
}
.suggestions-results {
background-color: var(--body-light);
border-color: var(--body-border);
}
.suggestions-result {
color: var(--text-color);
}
.suggestions a.mw-searchSuggest-link,
.suggestions a.mw-searchSuggest-link:hover,
.suggestions a.mw-searchSuggest-link:active,
.suggestions a.mw-searchSuggest-link:focus {
color: var(--text-color);
}
.suggestions-special {
background-color: var(--body-light);
border-color: var(--body-border);
}
.suggestions-special .special-label {
color: var(--byline-color);
}
.suggestions-special .special-query {
color: var(--text-color);
}
.suggestions-result-current {
background-color: var(--body-mid);
color: var(--text-color);
}
.suggestions-result-current .special-label,
.suggestions-result-current .special-query {
color: var(--text-color);
}
#mw-panel {
padding-top: 2.5em;
}
.vector-menu-portal .vector-menu-heading {
color: var(--background-text-color);
font-weight: bold;
background: none;
}
.vector-menu-portal .vector-menu-content li a,
.vector-menu-portal .vector-menu-content li a:visited {
color: var(--background-link-color);
}
#p-logo {
filter: drop-shadow(0 2px 5px rgba(0, 0, 0, 0.25));
margin: -1.5em 0 0;
}
#n-Discord a {
color: #fff !important;
font-weight: bold;
border-radius: 4px;
border: 1px solid #4c57d0;
background-color: #5865f2;
display: block;
position: relative;
padding: 4px 4px 5px calc(17px + 6.5px * 2);
box-shadow: 0 2px 3px rgba(0, 0, 0, 0.1);
transition: 0.2s;
}
#n-Discord a::before {
content: 'Chat on ';
font-weight: normal;
opacity: 0.85;
}
#n-Discord a::after {
content: '';
background: url('filepath://Discord_logo_icon.svg') no-repeat;
background-size: 17px 13px;
filter: drop-shadow(0 1px 1px rgba(0, 0, 0, 0.1));
position: absolute;
top: 5px;
left: 7px;
width: 17px;
height: 13px;
}
#n-Discord a:hover {
text-decoration: none;
background-color: #525ee0;
}
.wgl-theme-dark #n-Discord a {
background-color: #525ee0;
}
.wgl-theme-dark #n-Discord a:hover {
background-color: #4c57d0;
}
:root {
--vector-tab-background: #f0f0f0;
--vector-tab-background--hover: var(--body-mid);
--vector-tab-link-color: #937040;
--watch-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16'%3E%3Cpath fill='transparent' stroke='%2352351e' stroke-width='.8' d='m8.1 1.1 2.2 4.5 4.8.7-3.5 3.4.9 4.8L8 12.2l-4.3 2.3.8-4.8L1 6.3l4.8-.7z'/%3E%3C/svg%3E");
--unwatch-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16'%3E%3Cpath fill='%2352351e' stroke='%2352351e' stroke-width='.8' d='m8.1 1.1 2.2 4.5 4.8.7-3.5 3.4.9 4.8L8 12.2l-4.3 2.3.8-4.8L1 6.3l4.8-.7z'/%3E%3C/svg%3E");
}
.vector-menu-tabs-legacy {
padding: 0;
}
.vector-menu-tabs-legacy .new a,
.vector-menu-tabs-legacy .new a:visited {
color: var(--redlink-color);
}
.vector-menu-tabs-legacy .selected {
background: var(--body-main);
}
.vector-menu-tabs-legacy .selected a,
.vector-menu-tabs-legacy .selected a:visited {
color: var(--text-color);
}
.vector-menu-tabs-legacy li a {
color: var(--vector-tab-link-color);
padding: 0 0.75em;
padding-top: 1em;
}
.vector-menu-tabs-legacy li a:visited {
color: var(--vector-tab-link-color);
}
.vector-menu-tabs-legacy ul li {
background: var(--vector-tab-background);
}
.vector-menu-tabs-legacy ul a:hover {
text-decoration: none;
}
#ca-view {
display: none !important;
}
.vector-menu-tabs ul li:not(.selected):hover,
#p-cactions:hover #p-cactions-label {
background: var(--vector-tab-background--hover);
}
.vector-menu-tabs ul li:not(.selected),
#mw-head .vector-menu-dropdown .vector-menu-heading {
box-shadow: inset 0 -7px 7px -7px rgba(0, 0, 0, 0.15);
}
.vector-menu-tabs,
.vector-menu-tabs a,
#mw-head .vector-menu-dropdown .vector-menu-heading {
background-image: none;
}
.ve-activated .vector-menu-tabs .selected {
box-shadow: none;
}
.vector-menu-tabs #ca-watch.icon a:before,
.vector-menu-tabs #ca-watch.icon a:hover:before,
.vector-menu-tabs #ca-watch.icon a:focus:before {
background-image: var(--watch-icon);
}
.vector-menu-tabs #ca-unwatch.icon a:before,
.vector-menu-tabs #ca-unwatch.icon a:hover:before,
.vector-menu-tabs #ca-unwatch.icon a:focus:before {
background-image: var(--unwatch-icon);
}
div.thumbinner {
border: none;
background-color: var(--thumb-bg);
padding: 0;
}
.thumbimage {
background-color: transparent;
border-color: transparent;
border-bottom: none;
}
.thumbcaption {
background: var(--thumb-caption-bg);
padding: 4px 6px;
}
:root {
--toc-bg: var(--body-light);
--toc-title-bg: var(--body-dark);
--toc-border-color: var(--body-border);
--toc-list-border-color: var(--body-border);
}
.toc {
font-size: 0.9em;
background: var(--toc-bg);
margin-top: 1em;
padding: 0;
border-color: var(--toc-border-color);
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
clear: left;
}
.toc .toctitle {
background: var(--toc-title-bg);
padding: 0.25em 1em;
}
.toc .toctitle h2 {
font-family: inherit;
}
.toc > ul {
line-height: 1.8em;
padding: 0.75em 1.75em;
margin: 0;
}
.toc ul ul {
border-left: 1px dotted var(--toc-list-border-color);
padding-left: 0.5em;
}
.tocnumber {
display: none;
}
.toctogglespan {
padding-left: 0.2em;
font-size: 0.9em;
}
.toctogglelabel {
color: var(--link-color);
}
.toclimit-2 #toc .toclevel-2,
.toclimit-3 #toc .toclevel-3,
.toclimit-4 #toc .toclevel-4,
.toclimit-5 #toc .toclevel-5,
.toclimit-6 #toc .toclevel-6,
.toclimit-7 #toc .toclevel-7 {
display: none;
}
:root {
--external-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath fill='%23936039' d='M6 1h5v5L8.86 3.85 4.7 8 4 7.3l4.15-4.16L6 1Z M2 3h2v1H2v6h6V8h1v2a1 1 0 0 1-1 1H2a1 1 0 0 1-1-1V4a1 1 0 0 1 1-1Z'/%3E%3C/svg%3E");
}
.mw-parser-output a.external {
background-image: var(--external-icon);
background-size: 0.833em;
}
.mw-editsection {
font-family: 'Helvetica Neue', 'Arial', sans-serif;
}
.client-js .mw-content-ltr .mw-editsection-bracket:first-of-type,
.client-js .mw-content-ltr .mw-editsection-bracket:not(:first-of-type),
.mw-editsection-divider {
color: var(--text-color);
}
#contentSub,
#contentSub2 {
color: var(--byline-color);
margin: 0;
}
#contentSub:not(:empty),
#contentSub2:not(:empty) {
margin: 0 0 1.4em 0;
}
.mw-collapsible.mw-collapsed {
min-width: 250px;
}
.mw-collapsible:not( .mw-made-collapsible) th::before,
.mw-collapsible .mw-collapsible-toggle {
font-weight: normal;
margin-left: 0.2em;
}
.wikiEditor-ui .wikiEditor-ui-view,
.wikiEditor-ui .wikiEditor-ui-top {
border-color: var(--sourceeditor-border);
}
.wikiEditor-ui-toolbar {
background-color: var(--sourceeditor-background);
}
.wikiEditor-ui-toolbar .tabs span.tab > a,
.wikiEditor-ui-toolbar .tabs span.tab > a:visited {
color: var(--link-color);
}
.wikiEditor-ui-toolbar .tabs span.tab a.current,
.wikiEditor-ui-toolbar .tabs span.tab a.current:visited {
color: var(--text-colour);
}
.wikiEditor-ui-toolbar .group {
border-color: var(--sourceeditor-border);
}
.wikiEditor-ui-toolbar .group .tool-select {
background-color: var(--sourceeditor-background);
border-color: var(--sourceeditor-border);
}
.wikiEditor-ui-toolbar .group .tool-select .options {
border-color: var(--sourceeditor-border);
background-color: var(--body-main);
}
.wikiEditor-ui-toolbar .group .tool-select .options .option {
color: var(--link-color);
}
.wikiEditor-ui-toolbar .group .tool-select .menu .options .option:hover {
background-color: var(--ooui-normal--hover);
}
.wikiEditor-ui-toolbar .group-search {
border-left-color: var(--body-mid);
}
.wikiEditor-ui-toolbar .page-table td {
border-color: var(--body-mid);
color: var(--text-color);
}
.wikiEditor-ui-toolbar .page-table th {
color: var(--text-color);
}
.wikiEditor-ui-toolbar .sections .section {
border-color: var(--body-mid);
}
.wikiEditor-ui-toolbar .sections .toolbar .group > .label {
color: var(--text-color);
}
.wikiEditor-ui-toolbar .sections .toolbar .tool > .label {
color: var(--text-color);
}
.wikiEditor-ui-toolbar .booklet > .index > :hover {
background-color: var(--body-mid);
color: var(--text-color);
}
.wikiEditor-ui-toolbar .booklet .index > .current {
background-color: var(--body-mid);
color: var(--link-color);
}
.wikiEditor-ui-toolbar .page-characters div span {
border-color: var(--body-mid);
color: var(--text-color);
}
.wikiEditor-ui-toolbar .page-characters div span:hover {
border-color: var(--body-dark);
background-color: transparent;
}
.wikiEditor-ui-toolbar .tabs span.tab a:before,
.wikiEditor-ui-toolbar .group .tool-select .label:after {
background: var(--text-color);
-webkit-mask: var(--arrow-down) center no-repeat;
mask: var(--arrow-down) center no-repeat;
}
.ace-tm {
background-color: var(--sourceeditor-input-background);
color: var(--text-color);
}
.ace-tm .ace_gutter {
background: var(--body-mid);
color: var(--text-color);
}
.ace-tm .ace_gutter-cell {
color: var(--text-color);
}
.ace-tm .ace_gutter-active-line {
background-color: var(--body-light);
}
.ace_search {
background-color: var(--body-light);
color: var(--text-color);
border-color: var(--body-mid);
}
.ace_search_field {
background-color: var(--ooui-input);
color: var(--ooui-text);
border-color: var(--ooui-input-border);
}
.ace_searchbtn {
border-color: var(--ooui-normal-border);
background-color: var(--ooui-normal);
color: var(--ooui-text);
}
.ace_searchbtn:last-child {
border-color: var(--ooui-normal-border);
}
.ace_searchbtn:hover {
background-color: var(--ooui-normal--hover);
}
.ace_searchbtn.prev:after,
.ace_searchbtn.next:after {
border-color: var(--ooui-text);
}
.ace_button {
color: var(--text-color);
}
.ace_button:hover {
background-color: rgba(0, 23, 70, 0.086);
}
.ace_button:active {
background-color: rgba(0, 23, 70, 0.06);
}
.ace_button.checked {
border-color: var(--ooui-accent);
}
.CodeMirror {
background: var(--sourceeditor-input-background);
}
.CodeMirror pre {
color: var(--text-color);
}
.codeEditor-status {
border-color: var(--sourceeditor-border);
background-color: var(--sourceeditor-background);
}
.codeEditor-status-message {
border-color: var(--sourceeditor-border);
}
.CodeMirror-gutters {
background-color: var(--codemirror-gutter-background);
border-color: var(--sourceeditor-border);
}
.CodeMirror-linenumber {
color: var(--text-color);
}
.ve-init-mw-desktopArticleTarget .CodeMirror-linenumber {
color: var(--byline-color);
}
.mw-editform #wpTextbox1 {
color: var(--text-color);
background: var(--sourceeditor-input-background);
border-color: var(--sourceeditor-border);
}
input[name="model"][value="Scribunto"] ~ .wikiEditor-ui #wpTextbox1,
input[name="model"][value="css"] ~ .wikiEditor-ui #wpTextbox1,
input[name="model"][value="less"] ~ .wikiEditor-ui #wpTextbox1,
input[name="model"][value="javascript"] ~ .wikiEditor-ui #wpTextbox1,
input[name="model"][value="json"] ~ .wikiEditor-ui #wpTextbox1 {
height: 600px;
}
.tdg-templateDataDialog-listParamsPanel textarea.oo-ui-textInputWidget-autosized {
resize: vertical;
}
#wpAceFilterEditor {
resize: horizontal;
}
.warn-userupload,
.ns-2 .upload-own-work {
display: none;
}
.ns-2 .warn-userupload {
display: inline;
}
textarea[name="wfUploadDescription"] {
height: 3em;
}
#editform {
margin-top: 1.25em;
}
#mw-scribunto-input,
#mw-scribunto-output {
padding: 3px;
font-family: monospace;
font-size: 13px;
line-height: 1.5em;
}
#mw-scribunto-input {
background-color: var(--ooui-input);
border-color: var(--ooui-input-border);
}
:root {
--scribuntoconsole-input: #0b5884;
--scibuntoconsole-print: #a48900;
--scribuntoconsole-error: #9f261e;
--scribuntoconsole-message: #3c780a;
--scribuntoconsole-tabcomplete: #4f348b;
--scribuntoconsole-clear: #9f261e;
}
.mw-scribunto-console-fieldset {
color: inherit;
background-color: var(--ooui-interface);
border-color: var(--ooui-interface-border);
}
.mw-scribunto-normalOutput,
.mw-scribunto-print,
.mw-scribunto-error,
.mw-scribunto-propList,
.mw-scribunto-message,
.mw-scribunto-tabcomplete {
background: none;
}
.mw-scribunto-input {
color: var(--scribuntoconsole-input);
}
.mw-scribunto-normalOutput {
color: inherit;
}
.mw-scribunto-print {
color: var(--scibuntoconsole-print);
}
.mw-scribunto-error {
color: var(--scribuntoconsole-error);
}
.mw-scribunto-propList,
.mw-scribunto-message {
color: var(--scribuntoconsole-message);
}
.mw-scribunto-tabcomplete {
color: var(--scribuntoconsole-tabcomplete);
}
.mw-scribunto-clear {
color: var(--scribuntoconsole-clear);
border-bottom-color: var(--scribuntoconsole-clear);
}
:root {
--navbox-background: var(--body-light);
--navbox-border: var(--body-dark);
--navbox-title-background: var(--body-dark);
--navbox-footer-background: var(--body-dark);
--navbox-group-title-background: var(--body-mid);
}
.navbox {
font-size: 0.85em;
background: var(--navbox-background);
border-collapse: collapse;
margin: 1em auto 0;
width: 100%;
clear: both;
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
}
@media (-webkit-min-device-pixel-ratio: 2), (min-resolution: 192dpi) {
.navbox img {
image-rendering: pixelated;
image-rendering: crisp-edges;
}
}
.navbox .navbox {
font-size: 100%;
margin: 0.5em auto 0;
box-shadow: none;
}
.navbox-title {
font-size: 110%;
line-height: 1.6em;
background: var(--navbox-title-background);
text-align: center;
padding: 0.25em 1em;
}
.navbox-title-name {
margin: 0 4em;
}
.navbox-title .mw-collapsible-toggle {
font-size: 0.9em;
text-align: right;
}
.navbox-title .navbox {
font-size: 100%;
}
.navbox-group:nth-child(2) {
border-top: 1px solid var(--navbox-border);
}
.navbox-group-title {
background: var(--navbox-group-title-background);
border: 1px solid var(--navbox-border);
border-width: 0 1px 1px 0;
text-align: left;
padding: 0.25em 1em;
width: 1%;
white-space: nowrap;
}
.navbox-list {
border-bottom: 1px solid var(--navbox-border);
padding: 0.25em 0.5em;
}
.navbox-list ul {
margin: 0;
}
.navbox-list li {
display: inline;
white-space: nowrap;
}
.navbox-list li + li::before {
content: '• ';
}
.navbox-parent {
padding: 0;
}
.navbox-subgroup {
border-collapse: collapse;
border-spacing: 0;
width: 100%;
}
.navbox-subgroup > tbody > tr:last-child > th,
.navbox-subgroup > tbody > tr:last-child > td {
border-bottom: none;
}
.navbox-footer {
background: var(--navbox-footer-background);
text-align: center;
padding: 0.25em 1em;
}
.navbox-data {
display: none;
}
:root {
--echo-icon-moon-bg-image: url("data:image/svg+xml,%3C%3Fxml version='1.0' encoding='UTF-8'%3F%3E%3Csvg height='21' viewBox='0 0 21 21' width='21' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='m8.85464918.37900488c-1.91149353 1.51069427-3.13816124 3.84973402-3.13816124 6.47527736 0 4.55564936 3.69308349 8.24873286 8.24873286 8.24873286 2.5815709 0 4.8861545-1.1859235 6.3986798-3.0426994-.8206378 4.7389755-4.9523867 8.343122-9.9259291 8.343122-5.56375572 0-10.07407088-4.5103151-10.07407088-10.0740709 0-5.02506013 3.67919933-9.19079725 8.49074856-9.95036192z' fill='%234c4c4c'/%3E%3C/svg%3E");
--echo-icon-person-bg-image: url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 width=%2212%22 height=%2213.836%22 viewBox=%220 0 12 13.836%22%3E %3Cpath fill='%234c4c4c' d=%22M1.938%2C6.656c-1.32%2C1.485-1.47%2C3.15-0.97%2C4.25c0.323%2C0.707%2C0.78%2C1.127%2C1.313%2C1.375 c0.496%2C0.229%2C1.074%2C0.273%2C1.658%2C0.282c0.023%2C0%2C0.04%2C0.03%2C0.062%2C0.03h4.187c0.61%2C0%2C1.225-0.125%2C1.75-0.405 c0.527-0.28%2C0.961-0.718%2C1.188-1.376c0.335-0.964%2C0.175-2.529-1.094-4.03C9.094%2C7.954%2C7.68%2C8.719%2C6.065%2C8.719 c-1.677%2C0-3.182-0.812-4.125-2.063H1.938z%22/%3E %3Cpath fill='%234c4c4c' d=%22M6.063%2C0c-1.89%2C0-3.595%2C1.674-3.594%2C3.563C2.467%2C5.45%2C4.173%2C7.155%2C6.06%2C7.155 c1.89%2C0%2C3.564-1.705%2C3.563-3.593C9.625%2C1.673%2C7.95%2C0%2C6.063%2C0L6.063%2C0z%22/%3E %3C/svg%3E");
--echo-icon-bell-bg-image: url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 width=%2220%22 height=%2220%22 viewBox=%220 0 20 20%22%3E%3Ctitle%3Ebell%3C/title%3E%3Cpath d=%22M16 7a5.38 5.38 0 00-4.46-4.85C11.6 1.46 11.53 0 10 0S8.4 1.46 8.46 2.15A5.38 5.38 0 004 7v6l-2 2v1h16v-1l-2-2zm-6 13a3 3 0 003-3H7a3 3 0 003 3z%22 fill='%234c4c4c'/%3E%3C/svg%3E");
--echo-icon-tray-bg-image: url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 width=%2220%22 height=%2220%22 viewBox=%220 0 20 20%22%3E%3Ctitle%3Etray%3C/title%3E%3Cpath d=%22M3 1a2 2 0 00-2 2v14a2 2 0 002 2h14a2 2 0 002-2V3a2 2 0 00-2-2zm14 12h-4l-1 2H8l-1-2H3V3h14z%22 fill='%234c4c4c'/%3E%3C/svg%3E");
--echo-icon-fullscreen-bg-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 20 20'%3E%3Ctitle%3E fullscreen %3C/title%3E%3Cg fill='%234c4c4c'%3E%3Cpath d='M1 1v6h2V3h4V1zm2 12H1v6h6v-2H3zm14 4h-4v2h6v-6h-2zm0-16h-4v2h4v4h2V1z'/%3E%3C/g%3E%3Cscript xmlns=''/%3E%3C/svg%3E");
--echo-icon-exitFullscreen-bg-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 20 20'%3E%3Ctitle%3E exit fullscreen %3C/title%3E%3Cg fill='%234c4c4c'%3E%3Cpath d='M7 7V1H5v4H1v2zM5 19h2v-6H1v2h4zm10-4h4v-2h-6v6h2zm0-8h4V5h-4V1h-2v6z'/%3E%3C/g%3E%3Cscript xmlns=''/%3E%3C/svg%3E");
}
.vector-user-menu-legacy #pt-userpage a,
.vector-user-menu-legacy #pt-anonuserpage {
background-image: var(--echo-icon-person-bg-image);
padding-top: 0;
background-position-y: 0;
}
.vector-user-menu-legacy #pt-anonuserpage {
color: var(--byline-color);
}
#pt-notifications-alert .mw-echo-notifications-badge,
#pt-notifications-notice .mw-echo-notifications-badge {
background-size: 75%;
background-position: center 80%;
background-repeat: no-repeat;
opacity: unset;
}
#pt-notifications-alert .mw-echo-notifications-badge.mw-echo-notifications-badge-all-read,
#pt-notifications-notice .mw-echo-notifications-badge.mw-echo-notifications-badge-all-read {
opacity: unset;
}
#pt-notifications-alert .oo-ui-icon-bell {
background-image: var(--echo-icon-bell-bg-image);
}
#pt-notifications-notice .oo-ui-icon-tray {
background-image: var(--echo-icon-tray-bg-image);
}
#pt-fixed-width .oo-ui-icon-advanced {
background-image: var(--echo-icon-exitFullscreen-bg-image);
}
body.wgl-fixedWidth #pt-fixed-width .oo-ui-icon-advanced {
background-image: var(--echo-icon-fullscreen-bg-image);
}
#pt-theme-toggles .oo-ui-icon-advanced {
background-image: var(--echo-icon-moon-bg-image);
}
#pt-anontalk {
padding-top: 0.6em;
}
.tabber {
display: inline-grid;
}
60994938d29a3a6964e1fd4266db304ce7d4532f
Category:Factions
14
125
206
2024-03-22T15:21:04Z
InvalidCards
4
Created page with "{{Categoryheader|pages|[[class]]es}}"
wikitext
text/x-wiki
{{Categoryheader|pages|[[class]]es}}
ef5c38fb53aebf493b942a4f90cc0045d0a77137
Cryoknight
0
69
207
122
2024-03-22T15:21:14Z
InvalidCards
4
wikitext
text/x-wiki
'''Cryoknight''' is a [[class]] which specialises in using melee weapons in [[combat]].
[[Category:Class]]
0e90e36270b744cff29eb34c96f586c234a23e78
File:Ionas Toybox.png
6
126
208
2024-03-22T15:21:38Z
ToofleBerry
6
Obtained from https://web.archive.org/web/20220626021422im_/http://www.ionastoybox.com/sweet_shop2.png
wikitext
text/x-wiki
== Summary ==
Obtained from https://web.archive.org/web/20220626021422im_/http://www.ionastoybox.com/sweet_shop2.png
7b5df332e7032477200f49f09218ca32939b3997
Andrew Gower
0
54
209
96
2024-03-22T15:21:45Z
InvalidCards
4
wikitext
text/x-wiki
'''Andrew Gower''' is the founder of [[Fen Research]], and the designer of the game [[Brighter Shores]]. Before working on Brighter Shores, he was most known for the popular [[Wikipedia:Massively multiplayer online role-playing game|MMORPG]] [[Wikipedia:RuneScape|RuneScape]], which he created while studying at the [[Wikipedia:University of Cambridge|University of Cambridge]].
[[Category:Fen Research staff]]
ed56ed300c149ee869c658fac672f910f683f4f9
Template:Professions
10
115
210
188
2024-03-22T15:21:47Z
Jayden
3
wikitext
text/x-wiki
{{Navbox
|name = Professions
|title = [[Professions]]
|style1 = text-align:center
|group1 =
* [[Fisher]]
* [[Forager]]
* [[Chef]]
* [[Woodcutter]]
* [[Miner]]
* [[Alchemist]]
* [[Stonemason]]
* [[Merchant]]
* [[Blacksmith]]
}}{{Ctg|Professions}}
9719527c0afd4ef5f0583d36bcf0cefefdf0e16c
Category:Fen Research staff
14
127
211
2024-03-22T15:22:08Z
InvalidCards
4
Created page with "{{Categoryheader|pages|people working at [[Fen Research]]}} [[Category:Fen Research]]"
wikitext
text/x-wiki
{{Categoryheader|pages|people working at [[Fen Research]]}}
[[Category:Fen Research]]
000bfe24caa3c8078d334e0606c106e8381507c4
Professions
0
56
212
167
2024-03-22T15:22:10Z
Jayden
3
wikitext
text/x-wiki
'''Professions''' are skills that [[player]]s can train and utilise in [[Brighter Shores]].
==List of professions==
{| class="wikitable"
! Name !! Uses
|-
| [[Fisher]] || Catching various [[fish]]
|-
| [[Forager]] || Gathering items
|-
| [[Chef]] || Cooking [[food]] items
|-
| [[Woodcutter]] || Chopping down [[tree]]s
|-
| [[Miner]] || Mining [[mineral]]s
|-
| [[Alchemist]] ||
|-
| [[Stonemason]] ||
|-
| [[Merchant]] ||
|-
| [[Blacksmith]] ||
|}
{{Professions}}
0c9c75bce9ffb02f2497f7bca86244b153201bbf
Fisher
0
58
213
172
2024-03-22T15:22:20Z
Jayden
3
wikitext
text/x-wiki
'''Fisher''' is a type of [[professions|profession]] which specialises in catching [[fish]].
{{Professions}}
d5ee1556fb1aa6d76017e5bc9727be7680e50103
Forager
0
59
214
173
2024-03-22T15:22:26Z
Jayden
3
wikitext
text/x-wiki
'''Forager''' is a type of [[professions|profession]].
{{Professions}}
52c4568e5b975224f583c3e9ea607c102b8a696f
Category:Fen Research
14
128
215
2024-03-22T15:22:31Z
InvalidCards
4
Created page with "{{Categoryheader|pages|[[Fen Research]] and related topics}}"
wikitext
text/x-wiki
{{Categoryheader|pages|[[Fen Research]] and related topics}}
e1f8fb86883214ae728e1738552fa80723eda4da
Chef
0
60
216
175
2024-03-22T15:22:33Z
Jayden
3
wikitext
text/x-wiki
'''Chef''' is a type of [[professions|profession]] which allows the [[player]] to [[cooking|cook]] many different [[food]] items.
{{Professions}}
612cc34bff6313bb7d21d3dd8ba7ca4b793bc164
Woodcutter
0
61
217
176
2024-03-22T15:22:48Z
Jayden
3
wikitext
text/x-wiki
'''Woodcutter''' is a type of [[professions|profession]].
{{Professions}}
367ded0673d1b2110d5373b9d3555fdaa7993a6c
Miner
0
62
218
177
2024-03-22T15:22:54Z
Jayden
3
wikitext
text/x-wiki
'''Miner''' is a type of [[professions|profession]] specialising in collecting [[minerals]].
{{Professions}}
5a69e31924373fde11a4e0c5293bea3306ea9060
Alchemist
0
63
219
163
2024-03-22T15:23:01Z
Jayden
3
wikitext
text/x-wiki
'''Alchemist''' is a type of [[professions|profession]].
{{Professions}}
96df556b289ad327ff29f80f5330e599b161410d
Stonemason
0
64
220
178
2024-03-22T15:23:07Z
Jayden
3
wikitext
text/x-wiki
'''Stonemason''' is a type of [[professions|profession]].
{{Professions}}
7f6eec472e30346798a5f9a6eb7f9cfb45c1b1f8
Fen Research
0
55
221
97
2024-03-22T15:23:09Z
InvalidCards
4
wikitext
text/x-wiki
'''Fen Research''' is a game development studio based in [[Wikipedia:Cambridge|Cambridge]], UK. Founded by [[Andrew Gower]], it is currently actively developing the game [[Brighter Shores]].
[[Category:Fen Research|#]]
14971111d894d820a3178feaa27b58d02732a51e
Merchant
0
65
222
179
2024-03-22T15:23:12Z
Jayden
3
wikitext
text/x-wiki
'''Merchant''' is a type of [[professions|profession]].
{{Professions}}
dac5412bdd676befd85e28c3171134c0621e185e
Fenforge
0
129
223
2024-03-22T15:23:16Z
ToofleBerry
6
Created page with "'''Fenforge''' is a game engine that has been in continuous development by [[Fen Research]] since May [[2010]]. First used to develop ''Solstrike'' (2014) and ''Iona's Toybox'' (2021), ''[[Brighter Shores]]'' is the third game to use this engine. == Other games using Fenforge == {| class="wikitable sortable" |- ! Release date !! Name !! Image |- | || Solstrike || [[File:solstrike.png|300px]] |- | || Iona's Toybox || [[File:Ionas Toybox.png|300px]] |}"
wikitext
text/x-wiki
'''Fenforge''' is a game engine that has been in continuous development by [[Fen Research]] since May [[2010]]. First used to develop ''Solstrike'' (2014) and ''Iona's Toybox'' (2021), ''[[Brighter Shores]]'' is the third game to use this engine.
== Other games using Fenforge ==
{| class="wikitable sortable"
|-
! Release date !! Name !! Image
|-
| || Solstrike || [[File:solstrike.png|300px]]
|-
| || Iona's Toybox || [[File:Ionas Toybox.png|300px]]
|}
f4030d560df438ddba6cdb7c73249a4c995d17b5
228
223
2024-03-22T15:23:42Z
ToofleBerry
6
wikitext
text/x-wiki
'''Fenforge''' is a game engine that has been in continuous development by [[Fen Research]] since May [[2010]]. First used to develop ''Solstrike'' (2014) and ''Iona's Toybox'' (2021), ''[[Brighter Shores]]'' is the third game to use this engine.
== Other games using Fenforge ==
{| class="wikitable sortable"
|-
! Release date !! Name !! Image
|-
| || Solstrike || [[File:solstrike.png|300px]]
|-
| || Iona's Toybox || [[File:Ionas Toybox.png|300px]]
|}
[[Category:Mechanics]]
15a58540145b31cd52b8a7cb516ecf397d1604c4
247
228
2024-03-22T15:27:55Z
ToofleBerry
6
Added slightly more information.
wikitext
text/x-wiki
[[File:Fenforge logo.png|left]]
'''Fenforge''' is a game engine that has been in continuous development by [[Fen Research]] since May [[2010]]. First used to develop ''Solstrike'' (2014) and ''Iona's Toybox'' (2021), ''[[Brighter Shores]]'' is the third game to use this engine. The engine is based on a privately developed programming language, and designed to be flexible general-purpose engine, allowing programmers to make different types of games relatively quickly.
== Other games using Fenforge ==
{| class="wikitable sortable"
|-
! Release date !! Name !! Image
|-
| || Solstrike || [[File:solstrike.png|300px]]
|-
| || Iona's Toybox || [[File:Ionas Toybox.png|300px]]
|}
[[Category:Mechanics]]
213eae9a6bdff11898fbe1a5a7104dfa8da51081
Goblin Marketplace
0
82
224
139
2024-03-22T15:23:19Z
InvalidCards
4
wikitext
text/x-wiki
The '''Goblin Marketplace''' is a location where [[goblin]]s sell their wares.
[[Category:Locations]]
d7601c2b187282150a5603cf4a4cec7520c71150
Blacksmith
0
66
225
181
2024-03-22T15:23:22Z
Jayden
3
wikitext
text/x-wiki
'''Blacksmith''' is a type of [[professions|profession]].
{{Professions}}
d4258005380c51d17838b5d3ab36c75f3ce5cab8
Guardian
0
70
226
123
2024-03-22T15:23:29Z
InvalidCards
4
wikitext
text/x-wiki
'''Guardian''' is a [[class]] which specialises in using ranged weapons in [[combat]].
[[Category:Classes]]
2b8c2a664bf07406b93ba148fa47f40675f6fa5e
227
226
2024-03-22T15:23:41Z
InvalidCards
4
Immediately forgets own categories
wikitext
text/x-wiki
'''Guardian''' is a [[class]] which specialises in using ranged weapons in [[combat]].
[[Category:Class]]
b3f6aa1ce02266af89ddb191076b437807e30b91
Hammermage
0
71
229
124
2024-03-22T15:23:51Z
InvalidCards
4
wikitext
text/x-wiki
'''Hammermage''' is a [[class]] which specialises in using magic weapons in [[combat]].
[[Category:Class]]
20c6301411c2f26f88f6461906e6b736ddeae74e
Hopeforest
0
73
230
126
2024-03-22T15:24:02Z
InvalidCards
4
wikitext
text/x-wiki
'''Hopeforest''' is a forest [[Locations|area]] that contains [[monster]]s, accessible to all [[player]]s.
[[Category:Locations]]
c1ff4fb80b7dbfdbe80f468f051f387b382f6400
Hopeport
0
68
231
121
2024-03-22T15:24:14Z
InvalidCards
4
wikitext
text/x-wiki
'''Hopeport''' is a town in [[Brighter Shores]]. It serves as the main introductory town for new [[player]]s.
==Features==
* A [[Hopeport Harbor|harbor]]
[[Category:Locations]]
ded01c8f7929ae3d7c6e86096d2bf8ea14fd4195
Module:Infobox
828
102
232
161
2024-03-22T15:24:23Z
Gau Cho
5
Copying RSC version for now
Scribunto
text/plain
--[=[
-- For documentation, see [[Module:Infobox/doc]]
--]=]
-- <nowiki>
local Infobox = {}
Infobox.__index = Infobox
Infobox.__tostring = Infobox.tostring
-- Edit button for unknown params
local editbutton = require('Module:Edit button')
local edit = editbutton("'''?''' (edit)")
-- Page title
local pagename = mw.title.getCurrentTitle().fullText
-- map of flags to html tags used by Infobox.addRow()
-- let's only define it once, since :addRow() is used multiple times per module
local tagmap = {
tr = 'tr',
th = 'th',
td = 'td',
argh = 'th',
argd = 'td'
}
--[=[
-- Standardized functions
-- called as string with defineParams
--]=]
-- Standardized "has content" function
function hasContent(arg, default)
-- Return arg if any non-whitespace character is found
return string.match(arg or '','%S') and arg or default
end
-- Standardized "name" function
function subjectName(arg)
return string.match(arg or '','%S') and arg or nil
end
-- Create a standardized release function, since so many pages use it
-- Turns release and update into a single parameter
function releaseUpdate(release, update)
if not Infobox.isDefined(release) then
return nil
end
if string.lower(release) == 'no' then
return 'N/A'
end
if not Infobox.isDefined(update) then
return string.format('%s (Update unknown)',release)
end
if string.lower(update) == 'no' then
return release
end
return string.format('%s ([[Update:%s|Update]])', release, update)
end
-- Standardized image function
function image(img)
if img and img:find('%S') then
return img
else
return nil
end
end
-- Standardized numbers
function numbers(num)
num = string.gsub(num or '',',','')
return tonumber(num)
end
-- map of names to pre-defined functions, used by Infobox:defineParams
local func_map = {
name = subjectName,
release = { name = releaseUpdate, params = { 'release', 'update' }, flag = 'p' },
removal = { name = releaseUpdate, params = { 'removal', 'removalupdate' }, flag = 'p' },
has_content = hasContent,
hasContent = hasContent,
image = image,
numbers = numbers,
}
-- used to fill nil params in switching sections
-- this message isn't kidding
-- If you see this message anywhere outside of this code
-- (including inside switchfo box data)
-- report it
local nil_param = 'UH OH YOU SHOULDN\'T SEE THIS!'
-- In case the nil_param is needed outside of this module
-- give it an easy way to be accessed
function Infobox.nilParam()
return nil_param
end
-- switch infobox globals
local LINE_WIDTH = 300
local MAX_LINES = 2
local DEFAULT_MAX_BUTTONS = 6
-- calculate with width of a switch infobox button
-- potential @TODO: rework to use actual character widths
function button_width(label)
local PX_PER_CHAR = 6
local PX_PAD_MAR = 24
return string.len(label) * PX_PER_CHAR + PX_PAD_MAR
end
Infobox.splitpoint = '&&SPLITPOINT&&'
-- quick test to see if a value is considered nil
function Infobox.isDefined(arg)
if arg == nil then
return false
end
if type(arg) == 'string' then
if arg == nil_param then
return false
elseif arg:find('%S') then
if arg:find('action=edit') then
return false
else
return true
end
else
return false
end
end
return true
end
--[[
Infobox class
-- args : parameters from frame to pass through
-- Sets a meta table and creates a <div> tag wrapper
-- other fields are initialized in other functions
--]]
function Infobox.new(args)
local obj = setmetatable({
args = args, -- parameters (uncleaned)
rargs = {}, -- parameters (cleaned)
params = {}, -- parameters mapped to functions
paramnames = {}, -- parameter names
dupeable = {}, -- parameters that are allowed to have duplicated switch data
addrswibclass = true,
switchfo = false, -- switch infobox? or not?
switchfoattr = {}, -- switch data class changes
maxbuttons = DEFAULT_MAX_BUTTONS, -- maximum number of buttons before switching becomes a menu
switch_tag = '', -- switchfo data
switch_buttons_tag = '', -- switchfo buttons
custom_buttons = false,
smw_error_tag = '',
rtable = nil, -- returned infobox table
labels = nil, -- returned labels
_smw = {}, -- semantic mediawiki data
_smwOne = {}, -- semantic mediawiki data part 2
_smwSubobject = {}, -- semantic mediawiki data part 3
_smwSubobjectAppliesTo = nil, -- semantic mediawiki data part 3.5
_smwElement = {}, -- semantic mediawiki data part 4
setSMWElement = true,
versions = -1, -- number of switch versions (-1 is uncalculated)
infoboxname = nil, -- template name
appendStrs = {},
bottomlinks = { -- template bottom links
links = {
{ 'Template talk:%s', 'talk' },
{ 'Template:%s', 'view' }
},
colspan = 2
},
catdata = {}, -- meta category data
catlist = {}, -- defined table of category names (strings)
__finished = false, -- infobox status
},
Infobox)
return obj
end
--[[
Toggles the addition of infobox class
use before :create()
noop if not a boolean
--]]
function Infobox:setAddRSWInfoboxClass(bool)
if type(bool) == 'boolean' then
self.addrswibclass = bool
end
end
--[[
Creates an infobox
-- If Infobox:maxVersions() has not been run, it will be run here
-- If the infobox should be a switch infobox, all labels will be added
-- Creates a wikitable that will be the infobox
THIS SHOULD BE DONE AFTER ADDING AND CLEANING PARAMETERS
--]]
function Infobox:create()
-- Run to find if this is a switch infobox and if so, how many boxes
if self.versions == -1 then
self:maxVersion()
end
-- Run if switch infobox
if self.switchfo then
-- Buttons wrapper
-- Hidden by default, unhidden by javascript
self.switch_buttons_tag = mw.html.create('div')
:addClass('infobox-buttons')
-- default version to immediately switch to via js
local defv = tonumber(self.args.defver)
if defv and defv <= self.versions then -- you troll, don't try to show something that isn't there
self.switch_buttons_tag:attr('data-default-version',defv)
end
local numlines = 1
local width_working = 0
local total_width = 0
local buttons = {}
-- Add individual buttons to the wrapper
for i=1,self.versions do
local wid = button_width(self.labels[i] or i)
width_working = width_working + wid
total_width = total_width + wid
if width_working > LINE_WIDTH then
numlines = numlines + 1
width_working = wid
end
local b = mw.html.create('span')
:attr('data-switch-index',tostring(i))
-- space to underscore
:attr('data-switch-anchor','#'..string.gsub(self.labels[i] or i,' ','_'))
:addClass('button')
:wikitext(self.labels[i] or i)
table.insert(buttons, {b, wid})
end
local best = {-1, 100000}
if (numlines > 1) and (numlines <= MAX_LINES) then
-- attempt to balance line widths
local w_s, w_e = 0,total_width
for i = 1,#buttons-1 do
w_s = w_s + buttons[i][2]
w_e = w_e - buttons[i][2]
if w_s > LINE_WIDTH then
-- w_s only increases, so we're done once it exceeds the width
break
end
if w_e <= LINE_WIDTH then
-- w_e only decreases, so just continue if it exceeds line
local diff = math.abs(w_s - w_e)
if diff < best[2] then
best = { i, diff }
end
end
end
if best[1] == -1 then
best = { math.floor(#buttons/2), 100000 }
end
end
for i,v in ipairs(buttons) do
self.switch_buttons_tag:node(v[1])
if i == best[1] then
self.switch_buttons_tag:tag('br')
end
end
-- Used by JavaScript to turn the buttons into a menu list if too many variants
if self.versions > self.maxbuttons or numlines > MAX_LINES then
self.switch_buttons_tag:addClass('infobox-buttons-select')
end
self.switch_buttons_tag:done()
end
-- Create infobox table
self.rtable = mw.html.create('table')
:addClass('plainlinks')
if self.addrswibclass then
self.rtable:addClass('infobox')
end
-- Add necessary class if switch infobox
if self.switchfo then
self.rtable:addClass('infobox-switch')
end
end
-- Defines an infobox name ({{Template:arg}})
-- Used to create a link at the bottom of pages
function Infobox:defineName(arg)
self.infoboxname = arg
end
-- Defines the bottom links of the infobox
-- pass a table whose elements are tables that define a link and a label
-- {
-- { 'link', 'label },
-- ...
-- }
-- The template name can be substituted into the tables using '%s'
-- If we wanted Template:InFooBar to link to it's /doc page with a "doc" label:
-- { ...
-- { 'Template:%s/doc', 'doc' },
-- ... }
-- The template's name can only be called 5 times
function Infobox:defineLinks(arg)
if type(arg) == 'table' then
if arg.colspan then
self.bottomlinks.colspan = arg.colspan
end
if arg.links then
if type(arg.links) == 'table' then
self.bottomlinks.links = arg.links
end
end
if arg.hide then
self.bottomlinks.hide = arg.hide
end
end
end
-- Change max number of buttons before switching to menu
-- defaults to 5
-- MUST BE RUN BEFORE :create()
function Infobox:setMaxButtons(arg)
-- if not a number, just go back to default
self.maxbuttons = tonumber(arg) or DEFAULT_MAX_BUTTONS
end
--[[
Add parameters functions
All parameters should be tables
The first parameter defines the type of cell to create
-- th : <th>
-- td : <td>
-- argh : <th>
-- argd : <td>
The second parameter defines what is inside the tag
-- th | th : text passed
-- argh | argd : parameter with the name passed
Additional named parameters can be used to add any styling or attributes
-- attr : mw.html:attr({ arg1 = '1', ... })
-- css : mw.html:css({ arg1 = '1', ...)
-- class : mw.html:addClass('arg')
---- class also supports a table of values, even though mw.html:addClass() does not
-- rowspan : mw.html:attr('rowspan',arg)
-- colspan : mw.html:attr('colspan',arg)
-- title : mw.html:attr('title',arg)
Example:
ipsobox:addRow( { 'th' , 'Header', title = 'Title' },
{ 'argh', 'arg1', class = 'parameter' } })
produces:
<tr><th title="Title">Header</th><th class="parameter">args.arg1</th></tr>
adding it to the infobox table of ipsobox
Cells defined as 'argh' and 'argd' will automatically have data-attr-param="" added, and defined as the passed argument if the infobox in creation is defined as a switch infobox
The row itself may be modified with metadata using the named index at "meta"
-- meta.addClass : mw.html:addClass('arg')
-- this function currently only supports a single string
--]]
function Infobox.addRow(box, ...)
-- New row to add
local args = ...
local _row = box.rtable:tag('tr')
-- For each member of tags
for i, v in ipairs(args) do
-- map tag name to appropriate tag, default to <td>
local _cell = _row:tag(tagmap[v.tag] or 'td')
-- mw.html:attr() and mw.html:css() both accept table input
-- colspan, rowspan, title will be quick ways to access attr
-- these functions also do all the necessary work
if v.attr then
_cell:attr(v.attr)
end
if v.colspan then
_cell:attr('colspan',v.colspan)
end
if v.rowspan then
_cell:attr('rowspan',v.rowspan)
end
if v.title then
_cell:attr('title',v.title)
end
if v.css then
_cell:css(v.css)
end
-- if class is a string, it can be added directly
-- if a table, add every value
-- mw.html:addClass() doesn't function with tables
-- so iterate over the class names here and add them individually
if v.class then
if type(v.class) == 'string' then
_cell:addClass(v.class)
elseif type(v.class) == 'table' then
for _, w in ipairs(v.class) do
_cell:addClass(w)
end
end
end
-- if the cell is a normal th or td, add the exact argument passed
if v.tag == 'th' or v.tag == 'td' then
_cell:wikitext(v.content)
-- if defined with "arg", add the argument with name passed
elseif v.tag == 'argh' or v.tag == 'argd' then
local content = box.rargs[v.content]
-- if the requested parameter doesn't exist whatsoever, just return a blank string
if not content then
content = ''
-- If switches exist, first attempt to use the version1 values
elseif content.switches then
if content.switches[1] ~= nil_param then
content = content.switches[1] or ''
else
content = content.d or ''
end
-- fallback to default value
else
content = content.d or ''
end
_cell:wikitext(content)
-- add necessary attribute for switch infoboxes
if box.switchfo then
_cell:attr('data-attr-param',v.content)
end
end
end
-- not that meta
-- allow classes to be defined on the whole row
-- okay, sort of meta
if args.meta then
if args.meta.addClass then
_row:addClass(args.meta.addClass)
end
end
return box
end
function Infobox.customButtonPlacement(box,arg)
box.custom_buttons = arg
return box
end
function Infobox.addButtonsRow(box, args)
if box.switchfo then
box.custom_buttons = true
local _row = box.rtable:tag('tr')
:addClass('rsw-infobox-switch-buttons-row')
:tag('td')
:addClass('rsw-infobox-switch-buttons')
:attr('colspan', args.colspan)
:node(box.switch_buttons_tag)
end
return box
end
function Infobox.addButtonsCaption(box)
if box.switchfo then
box.custom_buttons = true
local _row = box.rtable:tag('caption')
:addClass('rsw-infobox-switch-buttons-caption')
:node(box.switch_buttons_tag)
end
return box
end
--[[
-- adds a blank row of padding spanning the given number of columns
--]]
function Infobox.pad(box, colspan, class)
local tr = box:tag('tr')
:tag('td'):attr('colspan', colspan or 1):addClass('infobox-padding')
:done()
if class then
tr:addClass(class)
end
tr:done()
return box
end
--[[
-- functions the same as mw.html:wikitext() on the wrapper
-- Should only be used for categories really
--]]
function Infobox.wikitext(box, arg)
box.rtable:wikitext(arg)
return box
end
--[[
-- Adds the specified item(s) to the end of the infobox, outside of the table
-- items are concatenated together with an empty space
--]]
function Infobox.append(box, ...)
for i,v in ipairs({...}) do
table.insert(box.appendStrs, v)
end
return box
end
--[[
-- Adds a caption to the infobox
-- defaults to the pagename
-- or the default argument if defined
--]]
function Infobox.caption(box)
-- default to the article's name
local name = pagename
-- first see if the name parameter exists
if box.rargs.name then
-- then try the default
if box.rargs.name.d then
name = box.rargs.name.d
-- then look for swithes
elseif box.rargs.name.switches then
-- then look at version 1
if box.rargs.name.switches[1] ~= nil_param then
name = box.rargs.name.switches[1]
end
end
end
local caption = box.rtable:tag('caption')
:wikitext(name)
-- add necessary attribute for switch infoboxes
if box.switchfo then
caption:attr('data-attr-param','name')
end
return box
end
--[[
-- Functions for styling the infobox
-- works the same as the respective mw.html functions
--]]
-- attr
function Infobox.attr(box, arg)
box.rtable:attr(arg)
return box
end
-- css
function Infobox.float(box,float)
box.rtable:css('float',float)
return box
end
function Infobox.css(box, ...)
box.rtable:css(...)
return box
end
-- addClass
function Infobox.addClass(box, arg)
box.rtable:addClass(arg)
return box
end
-- Much like Infobox.addClass, but adds multiple classes
function Infobox.addClasses(box, ...)
for _, v in ipairs(...) do
box.rtable:addClass(box)
end
return box
end
--[[
Add tags directly to the infobox table
Use sparingly
Returns the tag created rather than the entire box
Which is an mw.html object
Further uses of :tag() will be mw.html.tag, rather than Infobox.tag
As such, Infobox:addRow() cannot be used afterwards without restating the infobox as the object
--]]
function Infobox.tag(box, arg)
return box.rtable:tag(arg)
end
--[[
Allows the infobox to use Semantic Media Wiki and give parameters properties
Pass a table to this function to map parameter names to properties
Calling syntax:
-- {{#show:page|?property}}:
-- "<property>" - unqualified and without a number will display the default value
-- "<property#>" - with a number will show the switch data from that index
-- "all <property>" - adding all will display every unique value in a comma separated list
Properties initiated in Infobox:finish()
--]]
function Infobox:useSMW(arg)
if type(arg) == 'table' then
for w, v in pairs(arg) do
self._smw[w] = v
end
end
end
--[[
As above, but only assigns to "<property>", which will act like "all <property>" - "<property>#" not present
Properties initiated in Infobox:finish()
--]]
function Infobox:useSMWOne(arg)
if type(arg) == 'table' then
for w, v in pairs(arg) do
self._smwOne[w] = v
end
end
end
--[[
Set up the infobox to set properties in a SMW subobject. This will create a subobject for each version
- if there is only one version, it will put the properties directly on to the page, like useSMWOne
Properties initiated in Infobox:finish()
--]]
function Infobox:useSMWSubobject(arg)
if type(arg) == 'table' then
for w, v in pairs(arg) do
self._smwSubobject[w] = v
end
end
end
function Infobox:useSMWElement(arg)
if type(arg) == 'table' then
for w, v in pairs(arg) do
self._smwElement[w] = v
end
self.setSMWElement = true
end
end
--[[
Finishing function
-- Finishes the return, adding necessary final tags
--]]
function Infobox:finish()
local onmain = mw.title.getCurrentTitle().namespace == 0
-- Don't finish twice
if self.__finished then
return
end
-- Add switch infobox resources
--if self.switchfo then
self.rtable:attr('data-resource-class', '.infobox-resources-'..string.gsub(tostring(self.infoboxname), ' ', '_'))
-- Wrapper tag, hidden
self.switch_tag = mw.html.create('div')
:addClass('infobox-switch-resources')
:addClass('infobox-resources-'..string.gsub(tostring(self.infoboxname), ' ', '_'))
:addClass('hidden')
for _, v in ipairs(self.paramnames) do
local param = self.rargs[v]
local default_value = param.d or edit
-- Parameters may not have any switches data, those are ignored
local switchattr = self.switchfoattr[v]
-- Parameter data wrapper
local res_span = self.switch_tag:tag('span')
:attr('data-attr-param',v)
-- Child for default value
local def = res_span:tag('span')
:attr('data-attr-index',0)
:wikitext(tostring(default_value))
-- Switch classes
if switchattr then
def:attr('data-addclass',switchattr.d)
end
def:done()
if param.switches then
-- Add all switches, ignore those defined as nil
for i, w in ipairs(param.switches) do
if w ~= nil_param and w ~= nil and w ~= default_value then
local _w = res_span:tag('span')
:attr('data-attr-index',i)
:wikitext(tostring(w))
-- Switch classes
if switchattr then
_w:attr('data-addclass',switchattr.switches[i])
end
_w:done()
end
end
res_span:done()
end
end
-- Add a tracking category for mainspace pages that have more than 1 version
if onmain then
if self.versions > 1 then
-- version count data
self.switch_tag:tag('span')
:wikitext(string.format('Versions: [[Version count::%s]]',self.versions))
:done()
self.switch_tag:wikitext('[[Category:Pages that contain switch infobox data]]')
end
end
self.switch_tag:done()
--end
-- smw data
if onmain then
-- members smw display, yes --> true; no --> false; other --> unknown
local function smwMembers(smw_arg)
local smw_argv = string.lower(smw_arg or '')
if smw_argv == 'yes' then
return 'true'
elseif smw_argv == 'no' then
return 'false'
else
return 'unknown'
end
end
-- release date smw display
local function smwRelease(smw_arg)
local _d,_m,_y = string.match(smw_arg or '', '%[%[(%d%d?) (%a+)%]%] %[%[(%d%d%d%d)%]%]')
if _d == nil then
return nil
end
return table.concat({_d,_m,_y},' ')
end
-- default, just return the text
local function smwDefault(smw_arg)
if smw_arg ~= nil_param and smw_arg ~= edit then
return smw_arg
else
return 'unknown'
end
end
local smw_to_func = {
members = smwMembers,
release = smwRelease,
removal = smwRelease,
default = smwDefault
}
local smw_data_arr = {}
-- custom properties
for w, v in pairs(self._smw) do
-- only needed to give special formatting to release
-- and to make members true/false
local smwfunc = smw_to_func[w] or smw_to_func.default
local curarg = self.rargs[w]
if curarg then
local _arg = curarg.d
local argdefault = _arg
if _arg == edit then
argdefault = 'unknown'
else
local _x = mw.text.split(tostring(_arg), Infobox.splitpoint, true)
if not smw_data_arr[v] then
smw_data_arr[v] = {}
end
if not smw_data_arr['All '..v] then
smw_data_arr['All '..v] = {}
end
for _,y in ipairs(_x) do
local temp_smw_data = smwfunc(y)
table.insert(smw_data_arr[v], temp_smw_data)
table.insert(smw_data_arr['All '..v], temp_smw_data)
end
end
if curarg.switches then
local _args = {}
for _, x in ipairs(curarg.switches) do
if x ~= nil_param then
table.insert(_args,x)
else
table.insert(_args,argdefault or nil_param)
end
end
for i, x in ipairs(_args) do
local _x = mw.text.split(tostring(x), Infobox.splitpoint, true)
if not smw_data_arr[v..i] then
smw_data_arr[v..i] = {}
end
if not smw_data_arr['All '..v] then
smw_data_arr['All '..v] = {}
end
for _,y in ipairs(_x) do
local temp_smw_data = smwfunc(y)
table.insert(smw_data_arr[v..i], temp_smw_data)
table.insert(smw_data_arr['All '..v], temp_smw_data)
end
end
end
end
end
-- if one version, put smwSubobject into smwOne and just do that
if self.versions < 2 and not self._smwSubobjectAppliesTo then
for w,v in pairs(self._smwSubobject) do
if not self._smwOne[w] then
self._smwOne[w] = v
elseif type(self._smwOne[w]) == 'table' then
table.insert(self._smwOne[w], v)
else
self._smwOne[w] = { self._smwOne[w], v }
end
end
end
for w, _v in pairs(self._smwOne) do
-- only needed to give special formatting to release
-- and to make members true/false
local smwfunc = smw_to_func[w] or smw_to_func.default
local curarg = self.rargs[w]
if curarg then
local _arg = curarg.d
local argdefault = _arg
if _arg == edit then
argdefault = 'unknown'
end
if curarg.switches then
local _args = {}
for _, x in ipairs(curarg.switches) do
if x ~= nil_param then
table.insert(_args,x)
else
table.insert(_args,argdefault or nil_param)
end
end
for i, x in ipairs(_args) do
local _x = mw.text.split(tostring(x), Infobox.splitpoint, true)
for _,y in ipairs(_x) do
local temp_smw_data = smwfunc(y)
for _,v in ipairs(type(_v) == 'table' and _v or {_v}) do
if not smw_data_arr[v] then
smw_data_arr[v] = {}
end
table.insert(smw_data_arr[v], temp_smw_data)
end
end
end
else
if Infobox.isDefined(_arg) then
local _targ = mw.text.split(tostring(_arg), Infobox.splitpoint, true)
for _,y in ipairs(_targ) do
local temp_smw_data = smwfunc(y)
for _,v in ipairs(type(_v) == 'table' and _v or {_v}) do
if not smw_data_arr[v] then
smw_data_arr[v] = {}
end
table.insert(smw_data_arr[v], temp_smw_data)
end
end
end
end
end
end
local smw_data_arr_elem = {}
for w, v in pairs(self._smwElement) do
-- only needed to give special formatting to release
-- and to make members true/false
local smwfunc = smw_to_func[w] or smw_to_func.default
local curarg = self.rargs[w]
if curarg then
local _arg = curarg.d
local argdefault = _arg
if _arg == edit then
argdefault = 'unknown'
end
if curarg.switches then
local _args = {}
for _, x in ipairs(curarg.switches) do
if x ~= nil_param then
table.insert(_args,x)
else
table.insert(_args,argdefault or nil_param)
end
end
for i, x in ipairs(_args) do
if Infobox.isDefined(x) then
local _x = mw.text.split(tostring(x), Infobox.splitpoint, true)
for _,y in ipairs(_x) do
local temp_smw_data = smwfunc(y)
if not smw_data_arr_elem[v] then
smw_data_arr_elem[v] = {}
end
table.insert(smw_data_arr_elem[v], temp_smw_data)
end
end
end
else
if Infobox.isDefined(_arg) then
local _targ = mw.text.split(tostring(_arg), Infobox.splitpoint, true)
for _,y in ipairs(_targ) do
local temp_smw_data = smwfunc(y)
if not smw_data_arr_elem[v] then
smw_data_arr_elem[v] = {}
end
table.insert(smw_data_arr_elem[v], temp_smw_data)
end
end
end
end
end
-- if is a switchfo, setup for subobjects
local smw_data_arr_subobj = {}
if self._smwSubobjectAppliesTo then
for i,k in ipairs(self._smwSubobjectAppliesTo) do
local subobj_data = {
['Is variant of'] = {pagename},
}
for w,v in pairs(self._smwSubobject) do
local smwfunc = smw_to_func[w] or smw_to_func.default
local curarg = self.rargs[w]
if curarg then
local argval = curarg.d
if curarg.switches then
argval = curarg.switches[i]
if not Infobox.isDefined(argval) then
argval = curarg.d
end
end
if Infobox.isDefined(argval) then
local _x = mw.text.split(tostring(argval), Infobox.splitpoint, true)
for _, _x1 in ipairs(_x) do
_x1 = smwfunc(_x1)
if _x1 ~= 'unknown' then
if not subobj_data[v] then
subobj_data[v] = {}
end
table.insert(subobj_data[v], _x1)
end
end
end
end
end
for w,v in ipairs(k) do
local subobj_name = v
-- can't have a . in the first 5 characters of a subobject identifier
if mw.ustring.find(mw.ustring.sub(subobj_name,0,5), '%.') then
self:wikitext('[[Category:Pages with an invalid subobject name]]')
subobj_name = mw.ustring.gsub(subobj_name, '%.', '')
end
if subobj_name == '0' or subobj_name == '' then
self:wikitext('[[Category:Pages with an invalid subobject name]]')
subobj_name = 'v_'..subobj_name
end
smw_data_arr_subobj[subobj_name] = subobj_data
end
end
end
local res = mw.smw.set(smw_data_arr)
local res_subobj = true
for w,v in pairs(smw_data_arr_subobj) do
res_subobj = mw.smw.subobject(v, w)
if not res_subobj == true then
break
end
end
if not (res == true and res_subobj == true) then
self.smw_error_tag = mw.html.create('div'):css('display','none'):addClass('infobox-smw-data')
if not res == true then
self.smw_error_tag:tag('div'):wikitext('Error setting SMW properties: '+res.error):done()
end
if not res_subobj == true then
self.smw_error_tag:tag('div'):wikitext('Error setting SMW subobject properties: '+res_subobj.error):done()
end
end
if self.setSMWElement then
if self.smw_error_tag == '' then
self.smw_error_tag = mw.html.create('div'):css('display','none'):addClass('infobox-smw-data')
end
for i,v in pairs(smw_data_arr_elem) do
for j,k in ipairs(v) do
if k ~= 'unknown' then
self.smw_error_tag:tag('span'):wikitext(mw.ustring.format('%s: [[%s::%s]]', i,i,k ))
end
end
end
end
if self._smwSubobjectAppliesTo then
if self.smw_error_tag == '' then
self.smw_error_tag = mw.html.create('div'):css('display','none'):addClass('infobox-smw-data')
end
for w,v in pairs(smw_data_arr_subobj) do
local subobjdiv = self.smw_error_tag:tag('div')
subobjdiv:tag('span'):wikitext('SMW Subobject for '..w)
for j,k in pairs(v) do
subobjdiv:tag('span'):wikitext(mw.ustring.format('%s: %s', j, table.concat(k, ', ')))
end
end
end
end
-- Add view and talk links to infobox
-- Only done if a name is defined
if self.infoboxname and not self.bottomlinks.hide then
local bottom_links = {}
for _, v in ipairs(self.bottomlinks.links) do
table.insert(bottom_links,
string.format(
table.concat({'[[',
v[1],
'|',
v[2],
']]'}),
self.infoboxname,
self.infoboxname,
self.infoboxname,
self.infoboxname,
self.infoboxname)
)
end
bottom_links = table.concat(bottom_links,' • ')
self.rtable:tag('tr'):tag('td')
:addClass('infobox-template-links')
:attr('colspan', self.bottomlinks.colspan)
:wikitext(bottom_links)
:done()
end
-- Define as finished
self.__finished = true
end
--[[
Function for defining parameters
-- name : parameter name
-- func : function to define param, defaults to looking at blanks
DO NOT DEFINE VERSION HERE
USE :maxVersion()
Can be used any number of times for efficient definition
--]]
function Infobox:defineParams(...)
for _, v in ipairs(...) do
-- For every parameter, store its corresponding function to self.params
if v.name then
-- If the value is a function or a table (which should define a function)
if type(v.func) == 'function' or type(v.func) == 'table' then
self.params[v.name] = v.func
-- If the value is a string, use the predefined Infobox function of that name
elseif type(v.func) == 'string' then
self.params[v.name] = func_map[v.func] or hasContent
-- Everything else just looks for blanks
else
self.params[v.name] = hasContent()
end
-- Create a list of all param names
table.insert(self.paramnames,v.name)
-- function to allow duplicated values
if v.dupes then
self.dupeable[v.name] = true
end
end
end
end
--[[
-- Forces an infobox to only use 1 variant
-- Mainly used by lite infoboxes
-- This should be run before creation
--]]
function Infobox:noSwitch()
self.versions = 1
self.switchfo = false
end
--[[
-- Calculates the max version
-- Adds labels
-- Sees if this needs to be a switch infobox
-- Returns extra version count (even if already run)
--]]
function Infobox.maxVersion(box)
-- Only allowed to run once
if box.versions ~= -1 then
return box.versions
end
box.labels = {}
box.versions = 0
local smwappliesto = {}
-- Look for up to 125 variants, defined in order
for i=1, 125 do
-- If variant# exists
if box.args['version'..i] then
-- Increase version count
box.versions = box.versions + 1
-- Add its label
local label = box.args['version'..i] or ('Version '..i)
table.insert(box.labels,label)
-- add to appliesto
if box.args['smwname'..i] or box.args['appliesto'..i] then
table.insert(smwappliesto, mw.text.split(box.args['smwname'..i] or box.args['appliesto'..i], '¦'))
else
table.insert(smwappliesto, {label})
end
else
-- Stop if it doesn't exist
break
end
end
-- Define self as a switch infobox if at least 1 other version is found
if box.versions > 0 then
box.switchfo = true
box._smwSubobjectAppliesTo = smwappliesto
else
-- single version, check for appliesto
if box.args['smwname'] or box.args['appliesto'] then
box._smwSubobjectAppliesTo = {mw.text.split(box.args['smwname'] or box.args['appliesto'], '¦')}
end
end
-- versions calculated
return box.versions
end
--[[
-- Cleans parameters as defined by the above function
-- SHOULD NOT BE RUN UNTIL ALL THINGS ARE DEFINED
-- Handles switches as well
-- adds table _add to rargs, a cleaned up version of arguments
-- d : default value
-- switches : table of switches (in numerical order)
-- Functions can be defined with tables
---- name : name of function
---- params : table of args to pass to functions
---- flag : flags for input
d | #default : use the cleaned parameter first, otherwise passed
p : use the passed value of parameters
r | l : use raw (literal) text, rather than values
-- Defining a single flag will use that flag on all parameters
-- Defining a table of flags will use the respective flag by position
--]]
function Infobox:cleanParams()
-- map of flags to functionality
local flagmap = {
r = 'r',
l = 'r',
d = 'd',
p = 'p'
}
-- For all parameters named
for _, v in ipairs(self.paramnames) do
-- Parameter to add
local _add = {}
local catdata = { all_defined = true, one_defined = false }
-- If the value of params is a function
if type(self.params[v]) == 'function' then
-- Perform that function with the parameter
_add.d = self.params[v](self.args[v])
-- If it's a table, parse it into a function
elseif type(self.params[v]) == 'table' then
-- Find the functions name
local func = self.params[v].name
if type(func) == 'string' then
func = func_map[func]
end
-- catch all
if type(func) ~= 'function' then
func = has_content
end
-- Recreate table of args and flags
local func_args = {}
local flag = {}
-- If the flags are NOT a table, turn them into a table
-- Same size as the parameter table
-- Every flag will be the same
if type(self.params[v].flag) ~= 'table' then
-- Map flags, if unmapped, use default
local _flag = flagmap[self.params[v].flag] or 'd'
-- recreate table
for x=1,#self.params[v].params do
table.insert(flag,_flag)
end
-- If flags are already a table, recreate them in new table
elseif type(self.params[v].flag) == 'table' then
local _flag = self.params[v].flag
-- recreate table
for x=1,#self.params[v].params do
-- Map flags, if unmapped, use default
table.insert(flag,flagmap[_flag[x]] or 'd')
end
end
-- Recreate param table, parsing flags as instructions
for x, w in ipairs(self.params[v].params) do
local xarg
-- By default or defined as 'd'
-- looks for the cleaned value of the named parameter first
-- if it doesn't exist, look at the passed value next
-- if that doesn't exist, use blank
if flag[x] == 'd' then
xarg = self.rargs[w] and self.rargs[w].d
-- compare to nil explicitly because false is a valid value
if xarg == nil then
xarg = self.args[w] or ''
end
-- Look only at the passed value of the named parameter
-- if that doesn't exist, use blank
elseif flag[x] == 'p' then
xarg = self.args[w] or ''
-- Don't interpret value as a parameter name, and paste the as is
elseif flag[x] == 'r' then
xarg = w
end
-- Add parsed argument to table
table.insert(func_args,xarg)
end
-- Run function
_add.d = func(unpack(func_args))
end
if _add.d == nil or _add.d == nil_param then
-- have to do pagename defaults here to prevent weird behaviour with switch values
if v == 'name' then
_add.d = pagename
else
_add.d = edit
end
catdata.all_defined = false
else
--_add.d is not nil
catdata.one_defined = true
end
if self.switchfo then
-- Table of switches values and count of them
local _add_switch = {}
local switches = 0
-- Look for up to the maximum number
for i=1, self.versions do
local _addarg
-- see if this param is allowed to have switch
if v ~= 'image' and v ~= 'examine' and string.find(self.args[v..i] or '','%$%d') then
local refi = string.match(self.args[v..i],'%$(%d+)')
_addarg = _add_switch[tonumber(refi)] or nil_param
else
-- If the value of params is a function
if type(self.params[v]) == 'function' then
-- Perform that function with the parameter at that index
_addarg = self.params[v](self.args[v..i])
-- If it's a table, parse it into a function
elseif type(self.params[v]) == 'table' then
-- Find the functions name
local func = self.params[v].name
if type(func) == 'string' then
func = func_map[func]
end
-- catch all
if type(func) ~= 'function' then
func = has_content
end
-- Recreate table of args and flags
local func_args = {}
local flag = {}
-- If the flags are NOT a table, turn them into a table
-- Same size as the parameter table
-- Every flag will be the same
if type(self.params[v].flag) ~= 'table' then
-- Map flags, if unmapped, use default
local _flag = flagmap[self.params[v].flag] or 'd'
-- recreate table
for x=1,#self.params[v].params do
table.insert(flag,_flag)
end
-- If flags are already a table, recreate them in new table
elseif type(self.params[v].flag) == 'table' then
local _flag = self.params[v].flag
-- recreate table
for x=1,#self.params[v].params do
-- Map flags, if unmapped, use default
table.insert(flag,flagmap[_flag[x]] or 'd')
end
end
-- Recreate param table, parsing flags as instructions
for x, w in ipairs(self.params[v].params) do
local xarg
-- By default or defined as 'd'
-- looks for the cleaned value of the named parameter first
-- if it doesn't exist, look at the passed value next
-- if that doesn't exist, look at the default
-- if that doesn't exist, use blank
if flag[x] == 'd' then
if self.rargs[w] then
if self.rargs[w].switches then
xarg = self.rargs[w].switches[i]
else
xarg = self.args[w..i]
end
if xarg == nil or xarg == nil_param then
xarg = self.rargs[w].d
end
end
-- multiple catches in a row just to cover everything
if xarg == nil or xarg == nil_param then
xarg = self.args[w..i]
end
if xarg == nil or xarg == edit or xarg == nil_param then
xarg = self.args[w]
end
if xarg == nil or xarg == edit or xarg == nil_param then
xarg = ''
end
-- Look only at the passed value of the named parameter
-- if that doesn't exist, use unnumbered parameter
-- if that doesn't exist, use blank
elseif flag[x] == 'p' then
xarg = self.args[w..i] or self.args[w] or ''
-- Don't interpret value as a parameter name, and paste the as is
elseif flag[x] == 'r' then
xarg = w
end
-- Add parsed argument to table
table.insert(func_args,xarg)
end
-- Run function
_addarg = func(unpack(func_args))
end
end
-- If not defined, add the nil_param value
-- An actual nil would cause errors in placement
-- So it needs to be filled with an actual value
-- "nil_param" is understood as nil in other functions
-- Include table in case parameter isn't defined by template
if _addarg == nil or _addarg == nil_param then
table.insert(_add_switch, nil_param)
else
switches = switches + 1
table.insert(_add_switch, _addarg)
catdata.one_defined = true
end
end
-- If there are actually other values to switch to
-- Define a switches subtable, otherwise ignore it
if switches > 0 then
_add.switches = _add_switch
end
end
-- Quick fix for names (which defaults to pagename)
if v == 'name' then
if _add.d == pagename then
if _add.switches and _add.switches[1] ~= pagename and _add.switches[1] ~= nil_param then
_add.d = _add.switches[1]
end
end
end
-- Parameter cleaning finished, add to table of cleaned args
self.rargs[v] = _add
-- Category metadata
-- If every param except default is defined, all_defined = true
if catdata.all_defined == false then
if _add.d == edit then
if _add.switches then
catdata.all_defined = true
for _, v in ipairs(_add.switches) do
if v == nil_param then
catdata.all_defined = false
break
end
end
end
end
end
self.catdata[v] = catdata
end
-- mass dupe removal
-- this needs to be done at the end to keep dependent parameters working
-- also removes incompatible data types
for _, v in ipairs(self.paramnames) do
-- not removed from dupe enabled params parameters
if not self.dupeable[v] and self.rargs[v] and self.rargs[v].switches then
-- tells us whether or not we'll need to remove the switch data
-- switched to false if a switch values does not match the default
local rmvswitch = true
for q, z in ipairs(self.rargs[v].switches) do
-- remove types that don't turn into strings properly
if type(z) == 'table' or type(z) == 'function' then
self.rargs[v].switches[q] = nil_param
-- if it isn't nil or an edit button
-- change variable to keep the switch data
elseif z ~= nil_param and z ~= edit then
rmvswitch = false
end
end
-- remove switch data if everything was a dupe
if rmvswitch then
self.rargs[v].switches = nil
end
end
end
-- Title parentheses (has to be done here, sadly)
local _name
if self.rargs.name then
_name = self.rargs.name.d
-- replace html entities to their actual character
_name = mw.text.decode(_name)
-- if the page name matches the item name, don't add parentheses
if _name == mw.title.getCurrentTitle().fullText then
self.rtable:addClass('no-parenthesis-style')
end
end
end
--[[
Function to link internal use parameters with JS class attribution
-- self:linkParams{ { arg1, arg2 }, ... { arg1a, arg2a } }
-- arg1: parameter name being linked
-- arg2: parameter name that holds the classes
-- THIS FUNCTION SHOULD BE RUN AFTER :cleanParams()
-- THIS FUNCTION SHOULD BE RUN BEFORE :finish()
-- The second argument's data should always contain a value (a CSS class name) at every index
-- This function is cancelled for non switch boxes
--]]
function Infobox:linkParams(...)
if not self.switchfo then
return
end
for _, v in ipairs(...) do
self.switchfoattr[v[1]] = self.rargs[v[2]]
end
end
--[==========================================[
-- Functions for accessing parameters easily
--]==========================================]
--[[
Access the param
-- arg : param name
-- retp : return type
d | #default : self.rargs[arg].d -- Default value
f | full : self.rargs[arg] -- Entire table
s | switches : self.rargs[arg].switches -- Entire switch table
s# : self.rargs[arg].switches[#] -- Single switch value at index #
r : switches[1] or d
--]]
function Infobox:param(arg, retp)
-- All parameters
if arg == 'all' then
return self.rargs
end
-- case-insensitive flagging
retp = tostring(retp):lower()
local fmap = {
d = 'd', default = 'd', s0 = 'd', -- let s-naught count as default (since that's what it is)
f = 'f', full = 'f',
s = 's', switch = 's', switches = 's',
r = 'r'
}
local ret_func
-- quickly see if the parameter is a value greater than 0
if retp:match('s[1-9]') then
ret_func = 's2'
else
-- Otherwise map it to the correct flag, or the default
ret_func = fmap[retp] or fmap.d
end
-- Fetch parameter
local param = self.rargs[arg]
-- Return nil if no table found
if not param then return nil end
-- Return default
if ret_func == 'd' then
return param.d
end
-- Return full table
if ret_func == 'f' then
return param
end
-- Return switch table
if ret_func == 's' then
return param.switches
end
-- Return the first switch, otherwise the default
if ret_func == 'r' then
if not param.switches then
return param.d
elseif param.switches[1] == nil_param then
return param.d
else
return param.switches[1]
end
end
-- If s2, reread the param
if ret_func == 's2' then
-- no switches
if not param.switches then
return nil
end
-- Parse index by removing the s
local index = retp:match('s(%d+)')
-- nil_param
if param.switches[index] == nil_param then
return nil
else
return param.switches[index]
end
end
end
--[[
Checks if a parameter is defined and not blank
-- arg : parameter to look at
-- index : index of switches to look at (defaults to default param)
-- defining 'all' will look at every possible value for the parameter
--]]
function Infobox:paramDefined(arg,index)
-- Can use cleaned params for switches
-- but need the passed to identify blanks in the template
local param = self.rargs[arg]
local _arg = self.args[arg]
if string.find(_arg or '','%?action=edit') then
_arg = ''
end
index = index or 0
local ret
-- create a long strong of every value to test for things if 'all'
if string.lower(index) == 'all' then
return self.catdata[arg] and (self.catdata[arg].one_defined or self.catdata[arg].all_defined)
-- index to number otherwise
else
index = tonumber(index) or 0
if index == 0 then
if param.switches then
if Infobox.isDefined(param.switches[1]) then
ret = param.switches[1]
else
ret = _arg
end
else
ret = _arg
end
else
if not param.switches then
return nil
end
if param.switches[index] == nil_param then
return nil
end
ret = param.switches[index]
end
end
return tostring(ret or ''):find('%S')
end
--[[
Function to perform a search on all parameters of a defined name
-- param: param name
-- val: a value or function
-- functions passed must return either true or false
-- with true being counted as a match
--]]
function Infobox:paramGrep(param,val)
local arg = self.rargs[param]
-- if no parameters, return nil
if not arg then
return nil
end
local ret
local valtype = type(val)
-- start with the default value
-- if it's a function, run it
if valtype == 'function' then
ret = val(arg.d)
-- true means it matched
if ret == true then
return ret
end
-- switches up here for functions
if arg.switches then
for _, v in ipairs(arg.switches) do
ret = val(v)
if ret == true then
return true
end
end
end
-- if it's just a value, compare the two
-- only run if types match to avoid errors
-- compare switches later
elseif valtype == type(arg.d) then
-- if a string, make case insensitive
if valtype == 'string' then
if string.lower(val) == string.lower(arg.d) then
return true
end
-- everything else just test directly
elseif val == arg.d then
return true
end
end
-- switch cases
-- more organized putting them here
if arg.switches then
for _, v in ipairs(arg.switches) do
if valtype == type(v) then
if valtype == 'string' then
if val:lower() == v:lower() then
return true
end
elseif val == v then
return true
end
end
end
end
-- return false in every other case
return false
end
------
function Infobox.paramRead(arg,val)
-- if no parameters, return nil
if not arg then
return nil
end
local ret
local valtype = type(val)
-- start with the default value
-- if it's a function, run it
if valtype == 'function' then
ret = val(arg.d)
-- true means it matched
if ret == true then
return ret
end
-- switches up here for functions
if arg.switches then
for _, v in ipairs(arg.switches) do
ret = val(v)
if ret == true then
return true
end
end
end
-- if it's just a value, compare the two
-- only run if types match to avoid errors
-- compare switches later
elseif valtype == type(arg.d) then
-- if a string, make case insensitive
if valtype == 'string' then
if string.lower(val) == string.lower(arg.d) then
return true
end
-- everything else just test directly
elseif val == arg.d then
return true
end
end
-- switch cases
-- more organized putting them here
if arg.switches then
for _, v in ipairs(arg.switches) do
if valtype == type(v) then
if valtype == 'string' then
if val:lower() == v:lower() then
return true
end
elseif val == v then
return true
end
end
end
end
-- return false in every other case
return false
end
----
-- Return collected category data
function Infobox:categoryData()
return self.catdata
end
-- Override tostring
function Infobox.tostring(box)
-- If not finished, finish
if not box.__finished then
box:finish()
end
-- Make entire html wrapper a string and return it
local btns = box.switch_buttons_tag
if box.custom_buttons then
btns = ''
end
if box.args.__dump__ then
return '<' .. 'pre>'..mw.dumpObject(box) .. '</' .. 'pre>[[Category:Dumping infoboxes]]'
end
return tostring(btns) .. tostring(box.rtable) .. table.concat(box.appendStrs, '') .. tostring(box.switch_tag) .. tostring(box.smw_error_tag)
end
return Infobox
-- </nowiki>
f5caafc5480c6999a5bb27d9d86487ba83e9c705
Hopeport Obelisk
0
97
233
156
2024-03-22T15:24:25Z
InvalidCards
4
wikitext
text/x-wiki
The '''Hopeport Obelisk''' is a location near [[Hopeport]]. It is likely that it will be used as a fast travel location.
[[Category:Locations]]
4569e35408ccaeb7ef787ab7ad6a690f83f6e6c7
Lani
0
93
234
150
2024-03-22T15:24:34Z
InvalidCards
4
wikitext
text/x-wiki
'''Lani''' is the owner of [[Lani's Curiosities]].
[[Category:NPCs]]
ecdbd38f8d9dae4cd0f99700284c72463dc22dca
Category:Non-player characters
14
130
235
2024-03-22T15:24:54Z
InvalidCards
4
Created page with "{{Categoryheader|pages|non-player characters}} [[Category:Content]]"
wikitext
text/x-wiki
{{Categoryheader|pages|non-player characters}}
[[Category:Content]]
655e8f5d30399163f0b4ca926887fbfa3fff768d
Lani's Curiosities
0
92
236
149
2024-03-22T15:25:12Z
InvalidCards
4
wikitext
text/x-wiki
'''Lani's Curiosities''' is a shop run by [[Lani]].
[[Category:Shops]]
9e4fcbf76185d7a91d3dfd31724378391bc4750c
Category:Shops
14
131
237
2024-03-22T15:25:29Z
InvalidCards
4
Created page with "{{Categoryheader|pages|shops}} [[Category:Locations]]"
wikitext
text/x-wiki
{{Categoryheader|pages|shops}}
[[Category:Locations]]
56d8bfb03e8270a6ef063a6abcddc55b0b29e61e
Leech Pools
0
78
238
135
2024-03-22T15:25:44Z
InvalidCards
4
wikitext
text/x-wiki
The '''Leech Pools''' is a watery cave system.
[[Category:Locations]]
2f0e7115499731936e3b84679e281d476a0c7bf3
Melv
0
87
239
144
2024-03-22T15:25:54Z
InvalidCards
4
wikitext
text/x-wiki
'''Melv''' is the shop owner of [[Melv's Fishing Supplies]].
[[Category:NPCs]]
ff707289de22590c6c08556670565c120a21a32e
Melv's Fishing Supplies
0
86
240
143
2024-03-22T15:26:03Z
InvalidCards
4
wikitext
text/x-wiki
'''Melv's Fishing Supplies''' is a [[Fisher]] shop run by [[Melv]].
[[Category:Shops]]
3e2725edf4fc751968477d035726db8eb75fea7a
Mine of Mantuban
0
74
241
127
2024-03-22T15:26:14Z
InvalidCards
4
wikitext
text/x-wiki
'''Mine of Mantuban''' is a [[location]] that can be accessed by [[player]]s who purchase the [[Premium Pass]].
[[Category:Locations]]
121adad259d5d1ffefe283219c05d95aee17fd8f
Premium Pass
0
76
242
129
2024-03-22T15:26:51Z
InvalidCards
4
wikitext
text/x-wiki
The '''Premium Pass''' is a type of membership that can be purchased using real money. It provides access to a number of new areas and features in [[Brighter Shores]].
==Benefits==
There are several benefits to purchasing a Premium Pass:
* Access to the [[Mine of Mantuban]] and [[Crenopolis]]
* Ability to choose a unique character name, and change your name at any point
* Access to exclusive armour dyes
* Ability to [[trade]] with other [[player]]s
[[Category:Community]]
dc97b553653c9de1aa69946d190d6952c6aad582
Category:Community
14
132
243
2024-03-22T15:27:23Z
InvalidCards
4
Created page with "{{Categoryheader|pages|''[[Brighter Shores]]''}} [[Category:Content]]"
wikitext
text/x-wiki
{{Categoryheader|pages|''[[Brighter Shores]]''}}
[[Category:Content]]
0394c3c3da624e18667b4e9665438431c4b1211d
Quiet Grove
0
101
244
160
2024-03-22T15:27:37Z
InvalidCards
4
wikitext
text/x-wiki
The '''Quiet Grove''' is a location. It has an entrance to a mine.
[[Category:Locations]]
72750ebe001a09f75086c62ae15b8a11572b4e2d
Sneaky Thief
0
100
245
159
2024-03-22T15:27:48Z
InvalidCards
4
wikitext
text/x-wiki
'''Sneaky Thieves''' are a type of monster. They have 1,100 health.
[[Category:Monsters]]
58c8ce634e73b195d027aef9f5241a58cf011acc
Module:Mainonly
828
133
246
2024-03-22T15:27:54Z
Jayden
3
Created page with "--[[ {{Helper module|name=Mainonly |fname1=_main(arg) |ftype1=Any value |fuse1=If the module is invoked in the content namespace, it will return arg, otherwise, it will return an empty string |fname2=on_main() |ftype2=N/A |fuse2=Returns true if invoked in the content namespace, otherwise false }} --]] -- -- Module to return text only when invoked in the content namespace -- local p = {} function p.main(frame) local ret = frame:getParent().args[1] or '' return p._main..."
Scribunto
text/plain
--[[
{{Helper module|name=Mainonly
|fname1=_main(arg)
|ftype1=Any value
|fuse1=If the module is invoked in the content namespace, it will return arg, otherwise, it will return an empty string
|fname2=on_main()
|ftype2=N/A
|fuse2=Returns true if invoked in the content namespace, otherwise false
}}
--]]
--
-- Module to return text only when invoked in the content namespace
--
local p = {}
function p.main(frame)
local ret = frame:getParent().args[1] or ''
return p._main(ret)
end
function p._main(text)
if mw.title.getCurrentTitle().namespace == 0 then
return text
else
return ''
end
end
--
-- Boolean for whether or not the page is in the mainspace
-- Sometimes it might be better to just check first
-- Rather than spend processing time on something that won't be used
function p.on_main()
return mw.title.getCurrentTitle().namespace == 0
end
return p
0b0ce35da260beba011cdd83e1eb2d415a04812d
Category:Monsters
14
134
248
2024-03-22T15:28:12Z
InvalidCards
4
Created page with "{{Categoryheader|pages|attackable entities}} [[Category:Content]]"
wikitext
text/x-wiki
{{Categoryheader|pages|attackable entities}}
[[Category:Content]]
c3abb078804b50cd33f1bf84f361daa2070951c5
Southeast Sewer
0
88
249
145
2024-03-22T15:28:27Z
InvalidCards
4
wikitext
text/x-wiki
The '''Southeast Sewer''' is a location.
[[Category:Locations]]
09df6df111e7a077e6c853d761023409254a7f19
Tanners Road
0
80
250
137
2024-03-22T15:28:47Z
InvalidCards
4
wikitext
text/x-wiki
'''Tanners Road''' is a road in [[Hopeport]]. It features various market stalls.
[[Category:Locations]][[Category:Hopeport]]
331b46d28344afb499cbc26cc8041189cf1ad184
Module:Infobox Class
828
135
251
2024-03-22T15:29:09Z
Gau Cho
5
Test
Scribunto
text/plain
--------------------------
-- Module for [[Template:Infobox Class]]
------------------------
local p = {}
local infobox = require('Module:Infobox')
local onmain = require('Module:Mainonly').on_main
function p.main(frame)
local args = frame:getParent().args
local ret = infobox.new(args)
ret:defineParams{
{ name = 'name', func = 'name' },
{ name = 'image', func = 'image' },
{ name = 'episode', func = 'has_content' },
}
ret:create()
ret:cleanParams()
ret:defineName('Infobox Class')
ret:addClass('infobox-class')
ret:addRow{
{ tag = 'argh', content = 'name', class='infobox-header', colspan = '20' }
}
:pad(20)
:addRow{
{ tag = 'argd', content = 'image', class = 'infobox-image infobox-full-width-content', colspan = '20' }
}
:pad(20)
:addRow{
{ tag = 'th', content = 'Episode', colspan = '7' },
{ tag = 'argd', content = 'episode', colspan = '13' }
}
return ret:tostring()
end
return p
a7cbe0ad2557913a4c706f1b3f8de1821eafd7a1
Category:Hopeport
14
136
252
2024-03-22T15:29:10Z
InvalidCards
4
Created page with "{{Categoryheader|pages|[[Hopeport]]}} [[Category:Locations]]"
wikitext
text/x-wiki
{{Categoryheader|pages|[[Hopeport]]}}
[[Category:Locations]]
f52067c692f67a8ebc761ba7380477558ce6b2bc
Hopeport
0
68
253
231
2024-03-22T15:29:24Z
InvalidCards
4
wikitext
text/x-wiki
'''Hopeport''' is a town in [[Brighter Shores]]. It serves as the main introductory town for new [[player]]s.
==Features==
* A [[Hopeport Harbor|harbor]]
[[Category:Locations]][[Category:Hopeport|#]]
c8a4ce38dc38da3340e13026d0f7d4a143f7dafe
The Delectable Dab Restaurant
0
89
254
146
2024-03-22T15:29:39Z
InvalidCards
4
wikitext
text/x-wiki
'''The Delectable Dab Restaurant''' is a restaurant.
[[Category:Shops]]
7bffc021df57b7c269d803192e85b631e80c5870
Truck Cave
0
94
255
152
2024-03-22T15:29:49Z
InvalidCards
4
wikitext
text/x-wiki
The '''Truck Cave''' is a cave filled with minecart rails.
[[Category:Locations]]
352ec066c802d7a5a3c6e8fc1640573d04e68a69
Wailing Shade
0
85
256
142
2024-03-22T15:30:01Z
InvalidCards
4
wikitext
text/x-wiki
'''Wailing Shades''' are monsters. They have 682 health.
[[Category:Monsters]]
55324b132acfc8bd7394e75d1bd48e4bcf4cfdf2
Module:References
828
137
257
2024-03-22T15:30:21Z
Jayden
3
Created page with "-- Master module implementing reference templates -- local onmain = require('Module:Mainonly').on_main local paramtest = require('Module:Paramtest') local hc = paramtest.has_content local dt = paramtest.default_to local yn = require('Module:Yesno') local lang = mw.getContentLanguage() local p = {} --all template entrance points here local r = {} --reference formatters here to not expose them to #invoke, and to not clutter p local lostRefere..."
Scribunto
text/plain
-- Master module implementing reference templates --
local onmain = require('Module:Mainonly').on_main
local paramtest = require('Module:Paramtest')
local hc = paramtest.has_content
local dt = paramtest.default_to
local yn = require('Module:Yesno')
local lang = mw.getContentLanguage()
local p = {} --all template entrance points here
local r = {} --reference formatters here to not expose them to #invoke, and to not clutter p
local lostReferenceMsg = '<sup class="noprint fact">[<span class="fact-text"title="The page referenced can no longer be accessed. Please try to find an archived version of it or another reference for this statement if possible.">Lost reference</span>]</sup>'
function string.starts(String, Start)
return string.sub(String, 1, string.len(Start)) == Start
end
-- for consistent date formats - cons: can't link dates
local function formatDate(datep)
local datetbl = {}
datetbl.day = lang:formatDate('j', datep)
datetbl.month = lang:formatDate('F', datep)
datetbl.year = lang:formatDate('Y', datep)
return lang:formatDate('j F Y', datep), datetbl
end
-- create the ref tag to be returned
local function reftag(frame, reftype, forcedArgs)
local args = frame:getParent().args
local s = ''
local opts = {}
if forcedArgs ~= nil then
for k, v in pairs(forcedArgs) do
args[k] = v
end
end
if hc(args.name) then
opts.name = args.name
end
if hc(args.group) then
opts.group = args.group
end
local ref, cat = r[reftype](args)
return frame:extensionTag{name = 'ref', content = mw.text.tag('span', {['class']= 'citation ' .. reftype }, ref .. cat), args = opts}
end
local function plainref(frame, reftype, forcedArgs)
local args = frame:getParent().args
if forcedArgs ~= nil then
for k, v in pairs(forcedArgs) do
args[k] = v
end
end
local ref, cat = r[reftype](args)
return mw.text.tag('span', {['class']= 'citation ' .. reftype }, ref .. cat)
end
------------ Helper Templates -----------------
--[==[
[[Template:NamedRef]]
--]==]
function p.namedref(frame)
local args = frame:getParent().args
local opts = {}
opts.name = args.name or args[1]
if hc(args.group) then
opts.group = args.group
elseif hc(args[2]) then
opts.group = args[2]
end
return frame:extensionTag{name = 'ref', args = opts}
end
--[==[
[[Template:Reflist]]
--]==]
function p.reflist(frame)
local args = frame:getParent().args
local div = mw.html.create('div')
local resp = 1
if hc(args[1]) or hc(args.colwidth) then
div:css({ ['column-width'] = args[1] or args.colwidth })
resp = 0
end
div
:addClass('reflist')
:wikitext(frame:extensionTag{name = 'references', args = {group = args.group, responsive = resp}})
-- Implement {{Notelist}}
if args.group == 'lower-alpha' then
div:addClass('reflist-lower-alpha')
end
if not yn(args.quotes) then
div:addClass('hideQuotes')
end
return div
end
------------ General Citation Templates -----------------
--[==[
[[Template:CitePub]] and [[Template:PlainCitePub]]
--]==]
function p.pubref(frame)
return reftag(frame, 'pub')
end
function p.pubplain(frame)
return plainref(frame, 'pub')
end
function r.pub(a)
local ref = ''
local c = ''
if hc(a.author) then
ref = a.author .. '. '
end
local str = ''
if hc(a.title) then
ref = ref .. "''" .. a.title .. "''"
if hc(a.pages) then
ref = ref .. ', (' .. a.pages .. ')'
end
ref = ref .. '. '
end
if hc(a.publisher) then
ref = ref .. a.publisher
if hc(a.pubyear) then
ref = ref .. ', ' .. a.pubyear
end
ref = ref .. '. '
elseif hc(a.pubyear) then
ref = ref .. a.pubyear .. '. '
end
ref = ref .. (a.notes or '')
if onmain() and not (hc(a.title) and hc(a.publisher) and hc(a.pubyear)) then
c = c .. '[[Category:Incomplete references]]'
end
return ref, c
end
--[==[
[[Template:CiteTwitter]] and [[Template:PlainCiteTwitter]]
--]==]
function p.twitterref(frame)
return reftag(frame, 'twitter')
end
function p.twitterplain(frame)
return plainref(frame, 'twitter')
end
function r.twitter(a)
local ref
local c = ''
ref = 'Fen Research. '
if hc(a.url) or hc(a.archiveurl) then --url, if present makes a link
if hc(a.archiveurl) then
ref = ref .. '[' .. a.archiveurl
elseif hc(a.url) then
ref = ref .. '[' .. a.url
end
if hc(a.author) then
ref = ref .. ' ' .. a.author .. "'s Twitter account"--if title not present leave as link
end
ref = ref .. ']. '
elseif hc(a.author) then
ref = ref .. ' ' .. a.author .. "'s Twitter account. "
end
if hc(a.date) then
a.date = formatDate(a.date)
ref = ref .. a.date .. '. '
end
if hc(a.archivedate) then
a.archivedate = formatDate(a.archivedate)
ref = ref .. ' Archived from [' .. a.url .. ' the original] on ' .. a.archivedate .. '. '
end
if hc(a.quote) then
if hc(a.author) then
ref = ref .. a.author .. ': '
end
ref = ref .. '"' .. a.quote .. '" '
end
ref = ref .. (a.notes or '')
if hc(a.lost) then
ref = ref .. lostReferenceMsg
end
local err = ''
if not (hc(a.url) and hc(a.author) and hc(a.date)) then
err = err .. "Error calling CiteTwitter: parameters '''url''', '''author''', '''quote''', and '''date''' must be specified.<br>"
end
if hc(a.archiveurl) ~= hc(a.archivedate) then --xor
err = err .. "Error calling CiteTwitter: parameters '''archiveurl''' and '''archivedate''' must both be specified or both be unspecified.<br>"
end
if onmain() and err ~= '' then
c = c .. '[[Category:Incomplete references]]'
end
if onmain() and not hc(a.archiveurl) then
if hc(a.lost) then
c = c .. '[[Category:Lost Twitter references]]'
else
c = c .. '[[Category:Unarchived Twitter references]]'
end
end
return ref, c
end
--[==[
[[Template:CiteVideo]] and [[Template:PlainCiteVideo]]
--]==]
function p.videoref(frame)
return reftag(frame, 'video')
end
function p.videoplain(frame)
return plainref(frame, 'video')
end
function r.video(a)
local ref
local c = ''
if hc(a.author) then
ref = a.author .. '. '
end
if hc(a.url) then --url, if present makes a link
if string.lower(a.site) == 'youtube' then
if string.starts(a.url, 'https://www.youtube.com/watch?v=') then
ref = ref .. '[' .. a.url
else
ref = ref .. '[https://www.youtube.com/watch?v=' .. a.url
end
elseif string.lower(a.site) == 'twitch' then
if string.starts(a.url, 'https://www.twitch.tv/videos/') then
ref = ref .. '[' .. a.url
elseif string.starts(a.url, 'https://clips.twitch.tv/') then
ref = ref .. '[' .. a.url
else
ref = ref .. '[https://www.twitch.tv/videos/' .. a.url
end
else
ref = ref .. '[' .. a.url
end
if hc(a.title) then
ref = ref .. ' "' .. a.title .. '"'--if title not present leave as link
end
ref = ref .. '] '
else
if hc(a.title) then
ref = ref .. '"' .. a.title .. '" '
end
end
if hc(a.timestamp) then
ref = ref .. '(in ' .. a.timestamp .. '). '
else
ref = ref .. '. '
end
ref = ref .. dt(a.site, 'YouTube') .. ' video. '
if hc(a.date) then
a.date = formatDate(a.date)
ref = ref .. a.date .. '. '
end
ref = ref .. (a.notes or '')
if onmain() then
if not (hc(a.author) and hc(a.url) and hc(a.title) and hc(a.date)) then
c = c .. '[[Category:Incomplete references]]'
end
end
return ref, c
end
--[==[
[[Template:CiteGeneral]] and [[Template:PlainCiteGeneral]]
--]==]
function p.generalref(frame)
return reftag(frame, 'general')
end
function p.generalplain(frame)
return plainref(frame, 'general')
end
function r.general(a)
local ref = ''
local c = ''
local str = ''
if hc(a.author) or hc(a.last) then
if hc(a.last) then
str = a.last
if hc(a.first) then
str = str .. ', ' .. a.first
end
else
str = a.author
end
if hc(a.authorlink) then
ref = ref .. '[' .. a.authorlink
if str ~= '' then
ref = ref .. ' ' .. str
end
ref = ref .. ']'
else
ref = ref .. str
end
if hc(a.coauthors) then
ref = ref .. '; ' .. a.coauthors
end
ref = ref .. '. '
end
if hc(a.title) then
if hc(a.archiveurl) then
ref = ref .. '[' .. a.archiveurl .. ' ' .. a.title .. ']'
elseif hc(a.url) then
ref = ref .. '[' .. a.url .. ' ' .. a.title .. ']'
end
end
if hc(a.format) then
ref = ref .. ' (' .. a.format .. ')'
end
if hc(a.language) then
ref = ref .. ' (in ' .. a.language .. ')'
end
if hc(a.work) then
ref = ref .. ". ''" .. a.work .. "''"
end
if hc(a.pages) then
ref = ref .. ' pp. ' .. a.pages
end
if hc(a.publisher) then
ref = ref .. '. ' .. a.publisher
end
if hc(a.date) then
a.date = formatDate(a.date)
ref = ref .. '. ' .. a.date
elseif hc(a.year) then
if hc(a.month) then
ref = ref .. '. ' .. a.month .. ' ' .. a.year
else
ref = ref .. '. ' .. a.year
end
end
if ref ~= '' then
ref = ref .. '.'
end
if hc(a.archivedate) then
a.archivedate = formatDate(a.archivedate)
ref = ref .. ' Archived from [' .. a.url .. ' the original] on ' .. a.archivedate .. '.'
end
if hc(a.quote) then
ref = ref .. ' "' .. a.quote .. '"'
end
if hc(a.notes) then
ref = ref .. ' ' .. a.notes
end
if hc(a.lost) then
ref = ref .. lostReferenceMsg
end
local err = ''
if not (hc(a.url) and hc(a.title)) then
err = err .. "Error calling CiteGeneral: parameters '''url''' and '''title''' must be specified.<br>"
end
if hc(a.archiveurl) ~= hc(a.archivedate) then --xor
err = err .. "Error calling CiteGeneral: parameters '''archiveurl''' and '''archivedate''' must both be specified or both be unspecified.<br>"
end
if not (hc(a.archiveurl) and hc(a.archivedate)) then
ref = err .. ref .. mw.getCurrentFrame():expandTemplate{title = 'RefDate', args = { (a.accessdate or ''), '180'} }
end
if onmain() and err ~= '' then
c = c .. '[[Category:Incomplete references]]'
end
--[==[ are these needed?
if onmain() and not hc(a.archiveurl) then
if hc(a.lost) then
c = c .. '[[Category:Lost web references]]'
else
c = c .. '[[Category:Unarchived web references]]'
end
end
]==]--
return ref, c
end
--[==[
[[Template:CiteReddit]] and [[Template:PlainCiteReddit]]
--]==]
function p.redditref(frame)
return reftag(frame, 'reddit')
end
function p.redditplain(frame)
return plainref(frame, 'reddit')
end
function r.reddit(a)
local ref, c = '', ''
ref = dt(a.author, 'Fen Research') --author, defaults to Fen Research
ref = ref .. '. '
if hc(a.url) or hc(a.archiveurl) then --url, if present makes a link
if hc(a.archiveurl) then
ref = ref .. '[' .. a.archiveurl
elseif hc(a.url) then
ref = ref .. '[' .. a.url
end
if hc(a.title) then
ref = ref .. ' "' .. a.title
end
ref = ref .. '"]. '
end
ref = ref .. "''Reddit''. "
if hc(a.date) then
a.date = formatDate(a.date)
ref = ref .. a.date .. '. '
end
if hc(a.archivedate) then
a.archivedate = formatDate(a.archivedate)
ref = ref .. ' Archived from [' .. a.url .. ' the original] on ' .. a.archivedate .. '. '
end
if hc(a.quote) then
if hc(a.author) then
ref = ref .. a.author .. ': '
end
ref = ref .. '"' .. a.quote .. '" '
end
ref = ref .. (a.notes or '')
if hc(a.lost) then
ref = ref .. lostReferenceMsg
end
local err = ''
if not (hc(a.url) and hc(a.author) and hc(a.quote) and hc(a.date) and hc(a.title)) then
err = err .. "Error calling CiteReddit: parameters '''url''', '''author''', '''quote''', and '''date''', and '''title''' must be specified.<br />"
end
if hc(a.archiveurl) ~= hc(a.archivedate) then --xor
err = err .. "Error calling CiteReddit: parameters '''archiveurl''' and '''archivedate''' must both be specified or both be unspecified.<br />"
end
if onmain() and err ~= '' then
c = c .. '[[Category:Incomplete references]]'
end
if onmain() and not hc(a.archiveurl) then
c = c .. '[[Category:Unarchived Reddit references]]'
end
return ref, c
end
return p
991374acaf08e76bccbeb033ea8d30c766e8987a
Category:Factions
14
125
259
206
2024-03-22T15:30:46Z
InvalidCards
4
wikitext
text/x-wiki
{{Categoryheader|pages|[[class]]es}}
[[Category:Content]]
8121a80df1c7f4a25cec3ab28d8ea6da722652d5
Category:Fen Research
14
128
260
215
2024-03-22T15:31:25Z
InvalidCards
4
wikitext
text/x-wiki
{{Categoryheader|pages|[[Fen Research]] and related topics}}
[[Category:Content]]
f75ef273a5763055ac1f0fe1be8cdeffd01c2210
Template:Reflist
10
139
261
2024-03-22T15:31:34Z
Jayden
3
Created page with "<includeonly>{{#invoke:References|reflist}}</includeonly><noinclude>{{/doc}}</noinclude>"
wikitext
text/x-wiki
<includeonly>{{#invoke:References|reflist}}</includeonly><noinclude>{{/doc}}</noinclude>
daea7423a6140216f078401407f2f289203fa99d
User:Gau Cho
2
104
262
164
2024-03-22T15:31:45Z
Gau Cho
5
wikitext
text/x-wiki
{{Infobox Class
|name = Black Demon
|image = [[File:Black Demon.png]]
|episode = [[Hopeport]]
}}
27170d06363128fc31bdbc4e228a34033cba0233
269
262
2024-03-22T15:33:07Z
Gau Cho
5
wikitext
text/x-wiki
{{Infobox Class
|name = Hello
|image = [[File:World.png]]
|episode = [[Hopeport]]
}}
582542039c31a560596fcdd3fbd94d12becc8415
Category:Maintenance
14
112
263
183
2024-03-22T15:31:51Z
InvalidCards
4
wikitext
text/x-wiki
{{Categoryheader|pages|general wiki maintenance}}
[[Category:Brighter Shores Wiki community]]
d49d33ed79bb5caa4d3d65bfcf967e55afddd846
Template:Reflist/doc
10
140
264
2024-03-22T15:32:12Z
Jayden
3
Created page with "{{Documentation}} __NOTOC__ Use this template to create a reference list in an article with a small font. ==Usage== The basic usage requires no parameters: <pre>{{Reflist}}</pre> ===Quotes=== If the references contain a large number of quotes, to hide the quotes (and only the quotes) add <code>quotes=no</code>: <pre>{{Reflist|quotes=no}}</pre> ===Column width=== The width of columns is controlled using the first unnamed parameter or <code>colwidth</code>. As an exampl..."
wikitext
text/x-wiki
{{Documentation}}
__NOTOC__
Use this template to create a reference list in an article with a small font.
==Usage==
The basic usage requires no parameters:
<pre>{{Reflist}}</pre>
===Quotes===
If the references contain a large number of quotes, to hide the quotes (and only the quotes) add <code>quotes=no</code>:
<pre>{{Reflist|quotes=no}}</pre>
===Column width===
The width of columns is controlled using the first unnamed parameter or <code>colwidth</code>. As an example, using <code><nowiki>{{Reflist|30em}}</nowiki></code> will allow the browser to dynamically choose the number of columns with widths of 30{{wp|em (typography)|em}}. The width supports and of the standard CSS length units: px, pt, em, %. Choose a column width that's appropriate for the average width of the references on the page.
===Groups===
To list references in a group, add <code>group=groupname</code>:
<pre>{{Reflist|group=groupname}}</pre>
{{TemplateData|<templatedata>
{
"params": {
"1": {
"aliases": [
"colwidth"
],
"label": "Column width",
"description": "Width of the columns. Supports standard CSS length units as input.",
"example": "25em",
"type": "line",
"default": " 1 if less than 11 references; otherwise 30em."
},
"group": {
"description": "Limits the references listed to a specified group.",
"type": "string",
"label": "Group"
},
"quotes": {
"description": "Hides quotes inside the reference list when set to \"no\".",
"type": "boolean",
"default": "yes",
"label": "Quotes"
}
},
"description": "Creates a reference list in an article.",
"paramOrder": [
"group",
"quotes",
"1"
]
}
</templatedata>}}
{{Citations}}
<includeonly>[[Category:Reference templates]]</includeonly>
b5a8576c97f22ad953e64d82f5ffb6f41889fc7d
Template:TemplateData
10
141
265
2024-03-22T15:32:31Z
Jayden
3
Created page with "<includeonly>{{#if:{{{noheader|}}}||==Template data==}} <table class="templatedata mw-collapsible mw-collapsed" style="text-align:center" data-expandtext="show" data-collapsetext="hide"> <tr><th style="min-width:400px">Show/hide template's data</th></tr> <tr><td> '''The following information is used by extensions and applications, such as VisualEditor, to help users implement this template onto pages. Please ensure that it is up-to-date.''' {{{1|}}} </td></tr> </table>..."
wikitext
text/x-wiki
<includeonly>{{#if:{{{noheader|}}}||==Template data==}}
<table class="templatedata mw-collapsible mw-collapsed" style="text-align:center" data-expandtext="show" data-collapsetext="hide">
<tr><th style="min-width:400px">Show/hide template's data</th></tr>
<tr><td>
'''The following information is used by extensions and applications, such as VisualEditor, to help users implement this template onto pages. Please ensure that it is up-to-date.'''
{{{1|}}}
</td></tr>
</table>{{#if:{{{nocat|}}}||[[Category:Templates using TemplateData]]}}</includeonly><noinclude>{{/doc}}</noinclude>
ad243ced2e0f45d406fb11dc2be02b08e97899ef
Category:Brighter Shores Wiki community
14
142
266
2024-03-22T15:32:32Z
InvalidCards
4
Created page with "{{Categoryheader|pages|the [[Project:About|Brighter Shores Wiki]] community}} [[Category:Brighter Shores Wiki]]"
wikitext
text/x-wiki
{{Categoryheader|pages|the [[Project:About|Brighter Shores Wiki]] community}}
[[Category:Brighter Shores Wiki]]
4bf0c1597345c87619a305252ab305c040a06aea
Template:TemplateData/doc
10
143
267
2024-03-22T15:32:46Z
Jayden
3
Created page with "{{Documentation}} This template should be used on other templates' documentation pages when adding template data using [[mw:Extension:TemplateData|Extension:TemplateData]]. This template accepts one unnamed parameter, which should be the the whole <code>templatedata</code> text. Also adds [[:Category:Templates using TemplateData]] to pages. {{TemplateData|nocat=yes| <templatedata> { "description": "Used on template docs to enclose the templatedata parser tag", "params..."
wikitext
text/x-wiki
{{Documentation}}
This template should be used on other templates' documentation pages when adding template data using [[mw:Extension:TemplateData|Extension:TemplateData]]. This template accepts one unnamed parameter, which should be the the whole <code>templatedata</code> text. Also adds [[:Category:Templates using TemplateData]] to pages.
{{TemplateData|nocat=yes|
<templatedata>
{
"description": "Used on template docs to enclose the templatedata parser tag",
"params": {
"1": {
"label": "TemplateData",
"description": "The body of the TemplateData text.",
"type": "string",
"required": true
},
"noheader": {
"label": "Noheader",
"description": "Set to 'yes' to disable header.",
"type": "string",
"default": "'no'"
},
"nocat": {
"label": "Nocat",
"description": "Set to 'yes' to suppress adding category to pages. Useful for examples.",
"type": "string",
"default": "'no'"
}
}
}
</templatedata>
}}
<includeonly>[[Category:Templates|{{PAGENAME}}]]</includeonly>
ab7382dd3153c175c6c1d01d45100bd4f828809c
Category:Templates using TemplateData
14
144
268
2024-03-22T15:33:06Z
Jayden
3
Created page with "This category contains pages that use [[mw:Help:TemplateData|TemplateData]]. {{Hidden category}} [[Category:Templates]]"
wikitext
text/x-wiki
This category contains pages that use [[mw:Help:TemplateData|TemplateData]].
{{Hidden category}}
[[Category:Templates]]
bb3839838868558aa6bee14920d051e16191600f
Template:Hidden category
10
145
270
2024-03-22T15:33:19Z
Jayden
3
Created page with "<includeonly>__HIDDENCAT__ This is a hidden category, which will not show on its member pages.</includeonly><noinclude>{{/doc}}</noinclude>"
wikitext
text/x-wiki
<includeonly>__HIDDENCAT__
This is a hidden category, which will not show on its member pages.</includeonly><noinclude>{{/doc}}</noinclude>
eb2a3e5d1e2e3172ebb222e6472953a589b517b9
Template:Hidden category/doc
10
146
271
2024-03-22T15:33:27Z
Jayden
3
Created page with "{{documentation}} This template sets a category to be hidden. ==Usage== This template can be used by entering the following onto a category page, before the category you want to hide. {{T|Hidden category}} <includeonly>[[Category:Maintenance templates|{{PAGENAME}}]]</includeonly>"
wikitext
text/x-wiki
{{documentation}}
This template sets a category to be hidden.
==Usage==
This template can be used by entering the following onto a category page, before the category you want to hide.
{{T|Hidden category}}
<includeonly>[[Category:Maintenance templates|{{PAGENAME}}]]</includeonly>
88b86d1d910478b05b2efa37501e882815889594
Module:T
828
147
272
2024-03-22T15:33:52Z
Jayden
3
Created page with "-- <nowiki> -- [[Template:T]] -- local p = {} function p.main(frame) local args = frame:getParent().args return p._main(args) end function p._main(args) local link = args[1] local uri local targs = {} local ns local i = 1 -- strip transclusion modifiers ([[mw:Help:Magic words#Transclusion modifiers]]) link = link :gsub('safesubst:', '') :gsub('subst:', '') :gsub('int:', '') :gsub('msg:', '')..."
Scribunto
text/plain
-- <nowiki>
-- [[Template:T]]
--
local p = {}
function p.main(frame)
local args = frame:getParent().args
return p._main(args)
end
function p._main(args)
local link = args[1]
local uri
local targs = {}
local ns
local i = 1
-- strip transclusion modifiers ([[mw:Help:Magic words#Transclusion modifiers]])
link = link
:gsub('safesubst:', '')
:gsub('subst:', '')
:gsub('int:', '')
:gsub('msg:', '')
:gsub('msgnw:', '')
:gsub('raw:', '')
ns = mw.text.split(link, ':')[1]
-- check for valid namespace else prepend Template:
if not (ns == '' or mw.site.namespaces[ns]) then
link = 'Template:' .. link
end
-- use fullUrl so it doesn't cause any wanted pages
uri = mw.uri.fullUrl(link)
-- generate a list of args and params
for k, v in pairs(args) do
-- because lua has no continue statement
if k ~= 1 then
if type(k) == 'string' then
v = k .. '=' .. v
end
targs[i] = v
i = i + 1
end
end
targs = table.concat(targs, '|')
if targs ~= '' then
targs = '|' .. targs
end
return '<code>{{[' .. tostring(uri) .. ' ' .. args[1] .. ']' .. targs .. '}}</code>'
end
return p
3c2df07140597b593207242cb44ec759a235f07f
Template:T
10
148
273
2024-03-22T15:34:11Z
Jayden
3
Created page with "<includeonly><span class="plainlinks">{{#invoke:T|main}}</span></includeonly><noinclude>{{/doc}}</noinclude>"
wikitext
text/x-wiki
<includeonly><span class="plainlinks">{{#invoke:T|main}}</span></includeonly><noinclude>{{/doc}}</noinclude>
a1738d3ed38ede723e9e231c1f054526be6a9ac4
Template:MessageBox
10
149
274
2024-03-22T15:34:22Z
InvalidCards
4
Lifted wholesale from OSRSW
wikitext
text/x-wiki
<includeonly><table class="messagebox {{{class|}}}" {{#if:{{{style|}}}|style="{{{style}}}"}} role="presentation">
<td class="messagebox-image" style="width: {{{imgwidth|50px}}};">{{#if:{{{img|}}}|{{{img}}}|[[File:Tutor guide book detail.png|60x60px|center|link=]]}}</td>
<td><span class="messagebox-title"><b>{{#if:1|{{{1}}}|<!--this #if removes trailing/leading whitespace-->}}</b></span>{{#if:{{{2|}}}|<br style="clear: both;" /><div style="font-size:0.85em; line-height:1.4em;" class="messagebox-text">{{{2}}}</div>}}</td>{{#if:{{{imgright|}}}|
<td class="messagebox-image messagebox-imageright" style="width: {{{imgrightwidth|50px}}};">{{{imgright}}}</td>}}
</table></includeonly><noinclude>{{/doc}}</noinclude>
554553cceed1b2507351c131957886df2ee8ffd3
Template:T/doc
10
150
275
2024-03-22T15:34:23Z
Jayden
3
Created page with "{{Documentation}} A template link with a variable number of parameters. ===Use=== To use this for templates, use :{{T|T|<nowiki>parameter 1|parameter 2|parameter 3|...|parameter 20</nowiki>}}<!-- self-referential examples! --> To use other namespaces, use the namespace as prefix, for example :{{T|T|User:Example}} And to show transclusions of mainspace pages, use :{{T|T|:Bucket}} ===Example=== <code><nowiki>{{T|Stub}}</nowiki></code> :{{T|Stub}} <code><nowiki>{{T|Stub..."
wikitext
text/x-wiki
{{Documentation}}
A template link with a variable number of parameters.
===Use===
To use this for templates, use
:{{T|T|<nowiki>parameter 1|parameter 2|parameter 3|...|parameter 20</nowiki>}}<!-- self-referential examples! -->
To use other namespaces, use the namespace as prefix, for example
:{{T|T|User:Example}}
And to show transclusions of mainspace pages, use
:{{T|T|:Bucket}}
===Example===
<code><nowiki>{{T|Stub}}</nowiki></code>
:{{T|Stub}}
<code><nowiki>{{T|Stub|Item1|Item2|Item3|Item4|Item5|...}}</nowiki></code>
:{{T|Stub|Item1|Item2|Item3|Item4|Item5|...}}
<includeonly>[[Category:Formatting templates|{{PAGENAME}}]]</includeonly>
fbada7fd625c0a8e4f60f4acdc50931db18c4a41
Template:MessageBox/doc
10
151
276
2024-03-22T15:35:01Z
InvalidCards
4
Created page with "{{Documentation}}<includeonly>[[Category:Message box templates|*]]</includeonly> The '''MessageBox''' template is a wrapper for all types of [[:Category:Message box templates|message boxes]]. This includes [[Template:License|licenses]], [[:Category:Maintenance templates|Maintenance templates]], and general notices used to alert the reader about something. ==Parameters== To use this template, copy the following code and fill in the necessary information <pre> {{MessageB..."
wikitext
text/x-wiki
{{Documentation}}<includeonly>[[Category:Message box templates|*]]</includeonly>
The '''MessageBox''' template is a wrapper for all types of [[:Category:Message box templates|message boxes]]. This includes [[Template:License|licenses]], [[:Category:Maintenance templates|Maintenance templates]], and general notices used to alert the reader about something.
==Parameters==
To use this template, copy the following code and fill in the necessary information
<pre>
{{MessageBox
|class = (optional) classes
|img = Image
|imgwidth = (optional) width of the table cell around the image
|Tagline text
|Extra information
}}
</pre>
The first parameter is mandatory, but all further parameters are optional. A plain message box will look like this: {{t|MessageBox|Example of a messagebox with no customisation}}
{{MessageBox|Example of a messagebox with no customisation}}
===First parameter===
The first parameter will give the tagline for the message box. This is the most eye-catching info in the box and should be short and sweet.
===Second parameter===
The second parameter specifies more information about the message, and can be used to specify some more details about what information is being conveyed.
===img===
Specify an image here. Recommended is to include <code>center</code>, <code>link=</code> and a file size, to stylize the image properly. Just specifying the file name will not work with this parameter; the image needs to be given as a complete file link.
===imgwidth===
The width of the cell the image is (must specify <code>px</code> at the end), and defaults to <code>50px</code>. This effectively sets the margins around the image, if the image is smaller than 50 px. It is typically best to omit this parameter, but in cases where the image is larger setting a custom width may be helpful.
===class===
A class to give the messagebox. Typically this is used for messageboxes that use custom styling which is defined in a class.
===style===
Inline CSS to give to the messagebox.
==Example==
An example of a template that has almost all parameters specified is the [[Template:Stub|Stub]] template
<pre>
{{MessageBox
|class = stub
|img = [[File:Stub.png|Stub|center|50px|link=]]
|This page is a [[Brighter Shores Wiki:Stubs|stub]].
|A stub is an article which does not cover all information available about the topic. You can help by [{{fullurl:{{FULLPAGENAME}}|action=edit}} expanding] it.
}}
</pre>
{{MessageBox
|class = stub
|img = [[File:Stub.png|Stub|center|50px|link=]]
|This page is a [[Brighter Shores Wiki:Stubs|stub]].
|A stub is an article which does not cover all information available about the topic. You can help by [{{fullurl:{{FULLPAGENAME}}|action=edit}} expanding] it.
}}
c55c0029c7269277abc8b42197a32c9802da5ecd
Template:CiteGeneral
10
152
277
2024-03-22T15:36:16Z
Jayden
3
Created page with "<includeonly>{{#invoke:References|generalref}}</includeonly><noinclude>{{/doc}}</noinclude>"
wikitext
text/x-wiki
<includeonly>{{#invoke:References|generalref}}</includeonly><noinclude>{{/doc}}</noinclude>
28bdf2f0a2900fb6c6d0c6ed9bd2bbfb06e040da
Template:CiteGeneral/doc
10
153
278
2024-03-22T15:36:29Z
Jayden
3
Created page with "{{Documentation}} __NOTOC__ This template is used to [[wikipedia:Wikipedia:Citing sources|cite sources]]. It is specifically for web sites. ==Usage== ;Common form for cases where little is known about authorship of the page (with current date) <code><nowiki>{{CiteGeneral|url=|title=|accessdate=</nowiki>{{CURRENTYEAR}}-{{CURRENTMONTH}}-{{CURRENTDAY2}}<nowiki>}}</nowiki></code> ;Using author (with current date) <code><nowiki>{{CiteGeneral|url=|title=|author=|date=|acces..."
wikitext
text/x-wiki
{{Documentation}}
__NOTOC__
This template is used to [[wikipedia:Wikipedia:Citing sources|cite sources]]. It is specifically for web sites.
==Usage==
;Common form for cases where little is known about authorship of the page (with current date)
<code><nowiki>{{CiteGeneral|url=|title=|accessdate=</nowiki>{{CURRENTYEAR}}-{{CURRENTMONTH}}-{{CURRENTDAY2}}<nowiki>}}</nowiki></code>
;Using author (with current date)
<code><nowiki>{{CiteGeneral|url=|title=|author=|date=|accessdate=</nowiki>{{CURRENTYEAR}}-{{CURRENTMONTH}}-{{CURRENTDAY2}}<nowiki>|publisher=|archiveurl=|archivedate=|quote=}}</nowiki></code>
;All parameters
<pre>{{CiteGeneral
|url =
|title =
|accessdate =
|author =
|last =
|first =
|authorlink =
|coauthors =
|date =
|year =
|month =
|format =
|work =
|publisher =
|pages =
|language =
|archiveurl =
|archivedate =
|quote =
}}</pre>
=== Required parameters ===
*'''url''': URL of online item.
*'''title''': Title of online item.
{{References standard parameters}}
{{citations}}
<includeonly>[[Category:Reference templates]]</includeonly>
18725c1aba03c86119b37008c819e7c1115cd2b0
Template:RefDate
10
154
279
2024-03-22T15:38:34Z
Jayden
3
Created page with "<includeonly>{{#if:{{{1|}}}|{{#ifexpr:({{#time:z}}-{{#time:z|{{{1}}}}}+365*({{#time:Y}}-{{#time:Y|{{{1}}}}}))>{{{2|90}}}|<span class="outdate-ref" style="color:red; font-size:larger;" title="This reference has not been verified for over {{{2|90}}} days - It may be outdated.">*</span>[[Category:References that need verification|*{{#time:c|{{{1}}}}}]]}}|<span class="outdate-ref" style="color:red; font-size:larger;" title="This reference has not been verified - It may be ou..."
wikitext
text/x-wiki
<includeonly>{{#if:{{{1|}}}|{{#ifexpr:({{#time:z}}-{{#time:z|{{{1}}}}}+365*({{#time:Y}}-{{#time:Y|{{{1}}}}}))>{{{2|90}}}|<span class="outdate-ref" style="color:red; font-size:larger;" title="This reference has not been verified for over {{{2|90}}} days - It may be outdated.">*</span>[[Category:References that need verification|*{{#time:c|{{{1}}}}}]]}}|<span class="outdate-ref" style="color:red; font-size:larger;" title="This reference has not been verified - It may be outdated.">*</span>[[Category:References that need verification]]}}</includeonly><noinclude>{{/doc}}</noinclude>
710d372cd428f82f4bc08ea3af4d74f50db71d8e
Premium Pass
0
76
280
242
2024-03-22T15:39:49Z
Jayden
3
wikitext
text/x-wiki
The '''Premium Pass''' is a type of membership that can be purchased using real money. It provides access to a number of new areas and features in [[Brighter Shores]].
While owning the Premium Pass is required to access the benefits, it will not be a recurring subscription.{{CiteGeneral|url=https://www.gamesradar.com/ahead-of-his-new-mmo-runescape-creator-says-games-have-gotten-too-microtransaction-heavy-our-number-one-aim-is-not-monetization-its-players/|title=Ahead of his new MMO, RuneScape creator says games have gotten too microtransaction-heavy: "Our number one aim is not monetization, it's players"|author=Kaan Serin|date=17 March 2024|accessdate=22 March 2024|quote="One of the key differences is we're probably not going to do auto-recurring payments," continues Gower.}}
==Benefits==
There are several benefits to purchasing a Premium Pass:
* Access to the [[Mine of Mantuban]] and [[Crenopolis]]
* Ability to choose a unique character name, and change your name at any point
* Access to exclusive armour dyes
* Ability to [[trade]] with other [[player]]s
==References==
{{Reflist}}
[[Category:Community]]
9c233fa4f3b930fd9b0c49a583fed462578c4c46
296
280
2024-03-22T15:47:14Z
Jayden
3
wikitext
text/x-wiki
The '''Premium Pass''' is a type of membership that can be purchased using real money. It provides access to a number of new areas and features in [[Brighter Shores]].
While owning the Premium Pass is required to access the benefits, it will not be a recurring subscription.{{CiteGeneral|url=https://www.gamesradar.com/ahead-of-his-new-mmo-runescape-creator-says-games-have-gotten-too-microtransaction-heavy-our-number-one-aim-is-not-monetization-its-players/|title=Ahead of his new MMO, RuneScape creator says games have gotten too microtransaction-heavy: "Our number one aim is not monetization, it's players"|author=Kaan Serin|date=17 March 2024|accessdate=22 March 2024|quote="One of the key differences is we're probably not going to do auto-recurring payments," continues Gower.}}
==Benefits==
There are several benefits to purchasing a Premium Pass:
* Access to the [[Mine of Mantuban]] and [[Crenopolis]]
* Ability to choose a unique character name, and change your name at any point
* Access to exclusive armour dyes
* Ability to [[trade]] with other [[player]]s
==References==
{{Reflist}}
{{Premium Pass}}
[[Category:Community]]
8c528863a5d30b71a42ed24f86c28b366347f918
MediaWiki:Common.less/messagebox.less
8
155
281
2024-03-22T15:40:06Z
InvalidCards
4
yoink
less
less
/* =====================
Messageboxes
===================== */
// mixins at [[MediaWiki:Common.less/mixins.less]]
:root {
.mboxvar(obsolete, #cfcfcf, #464646, var(--text-color), #6c6c6c);
.mboxvar(info, #ebebeb, #898989, var(--text-color), #6c6c6c);
.mboxvar(action, lighten(@venice-blue, 60%), @venice-blue, var(--text-color), @regal-blue);
.mboxvar(warn, #dfc0ba, #861c10, var(--text-color), #8e221a);
.mboxvar(safe, #d8f0d3, #1b8408, var(--text-color), #1b8408);
.mboxvar(disambig, #ebebeb, #898989, var(--text-color), #6c6c6c);
// do these really need to be vars? doubt we want to ever change them across themes
--messagebox-discord-background: @discord-bg;
--messagebox-discord-border: @discord-bg-darker;
--messagebox-discord-link-color: #d2e5fc;
}
.mw-message-box,
.mw-message-box-error,
.mw-message-box-warning,
.mw-message-box-success,
.usermessage {
color: var(--text-color);
}
.messagebox {
width: 65%;
margin: .5em auto;
border-left: 15px solid;
border-color: var(--body-dark);
background-color: var(--body-light);
box-sizing: border-box;
.mbox(obsolete);
.mbox(info);
.mbox(action);
// .mbox(file);
.mbox(warn);
.mbox(safe);
.mbox(disambig);
&.discord {
background-color: var(--messagebox-discord-background);
border-color: var(--messagebox-discord-border);
color: @white;
a,
a:visited,
a:active {
color: var(--messagebox-discord-link-color);
&.external {
// Links to the Discord
font-style: italic;
}
}
}
&.stub {
width: 40%;
}
&.hasdialogue {
padding: 0 10px;
width: auto;
}
}
e083c76d4b6c21c8e3e10d46537c748c5252ed7f
MediaWiki:Common.less
8
5
282
108
2024-03-22T15:42:03Z
InvalidCards
4
less
less
/* =============================================================================
* This is the root Less file that is parsed to produce [[MediaWiki:Common.css]].
*
* These styles will be applied to all skins (desktop and mobile).
* -----------------------------------------------------------------------------
* Less documentation: <http://lesscss.org/features/>
* Gadget: <https://meta.weirdgloop.org/w/MediaWiki:Gadget-Less.js>
* Core Less JS: <https://meta.weirdgloop.org/w/MediaWiki:Gadget-Less-core.js>
* Non-standard mixins: <https://meta.weirdgloop.org/w/MediaWiki:Gadget-LessMixins.less>
* Online Less tester: <https://lesscss.org/less-preview/>
* ============================================================================= */
// ===== CSS Variables =====
@common: 'MediaWiki:Common.less';
:root {
--body-main: #feffff;
--body-light: #f2f2f2;
--body-mid: #d0bd97;
--body-dark: #e3e3e3;
--body-border: #000;
--body-background-color: #173a4d;
--button-background: #605443;
--button-color: @white;
--button-border: #3c352a;
--button-dark: #18140c;
--button-light: #3a301d;
--sidebar: #cfc08d;
--background-text-color: #e2dbc8;
--background-link-color: #e2bd8a;
--search-box: #efeee6;
--link-color: #936039;
--redlink-color: #ba0000;
--text-color: @black;
--byline-color: @tundora;
--subtle-color: @boulder;
--admin-blue: #332e75;
--bearcat-green: #13592e;
--awb-purple: #933b96;
--rsw-blue: #438ab6;
--osrsw-brown: #605443;
// used for gallery & thumbs
--thumb-bg: var(--body-light);
--thumb-caption-bg: var(--body-mid);
// for sourceeditor - CodeMirror and WikiEditor's that are only available on
// desktop are also here to not fragment the vars across many files
--sourceeditor-input-background: @white;
--sourceeditor-background: var(--body-light);
--sourceeditor-background-secondary: var(--body-light); // used on .editOptions
--sourceeditor-border: var(--body-mid);
--codemirror-gutter-background: var(--body-mid);
}
// ===== Imports =====
// include fonts first
@import '@{common}/mixins.less';
@import '@{common}/fonts.less'; // Font definitions and font stack definitions
@import '@{common}/variables.less'; // Less variables
@import '@{common}/elements.less'; // HTML elements
@import '@{common}/links.less'; // Link colours
// Interface
@import '@{common}/interface.less'; // MW common elements
@import '@{common}/wikitables.less'; // .wikitable class and etc
@import '@{common}/diff.less'; // Revision differences
@import '@{common}/notifications.less';
@import '@{common}/pagepreviews.less'; // Page preview popups
@import '@{common}/smw.less'; // Semantic MediaWiki
@import '@{common}/tabber.less'; // <tabber>
@import '@{common}/ooui.less'; // OOUI Customisations
@import '@{common}/visualeditor.less'; // VisualEditor
// Templates
@import '@{common}/templates.less'; // Various templates
@import '@{common}/infobox.less'; // Infobox vars
@import '@{common}/references.less'; // <references>
@import '@{common}/messagebox.less'; // Messagebox templates
// Page specific
@import '@{common}/tiles.less'; // Main page tiles
@import '@{common}/mainpage.less'; // Main page
@import '@{common}/prefs.less'; // Wiki preferences theming
@import '@{common}/specials.less'; // Special pages
// ===== Miscellaneous =====
// hide certain links in sidebar tools
#t-print,
#t-permalink {
display: none;
}
#filetoc {
border-radius: @border-radius;
background: @BODY_MID;
border-color: transparent;
margin: 0.5em auto;
text-align: center;
box-shadow: @box-shadow;
}
// Galleries
li.gallerybox div.thumb {
border: none;
background-color: var(--thumb-bg);
}
.smwfact {
display: none;
}
// applies to mobile talk pages, and smw??
.list-header {
background-color: var(--body-mid);
color: inherit;
}
// Source editor w/o syntaxhighlight; also applies to mobile in case JS is
// turned off
.editOptions {
color: var(--text-color);
background-color: var(--sourceeditor-background-secondary);
border-color: var(--sourceeditor-border);
}
// .json pages
.mw-json {
th,
td {
border-color: var(--wikitable-border);
}
// instead of selecting `tr`, do this to avoid dealing with mw-json-* classes
td {
background: var(--wikitable-bg);
}
th {
background: var(--wikitable-header-bg);
}
}
fa10d9140a252f7aa5267638d5833ce2df81e0e0
Trading
0
156
283
2024-03-22T15:42:03Z
Jayden
3
Created page with "'''Trading''' is a feature in [[Brighter Shores]] that allows [[player]]s to trade items with other players. It is only available to players who have purchased the [[Premium Pass]]."
wikitext
text/x-wiki
'''Trading''' is a feature in [[Brighter Shores]] that allows [[player]]s to trade items with other players. It is only available to players who have purchased the [[Premium Pass]].
99bafa876116f82aca1ca4d2bdadea890bbd972e
285
283
2024-03-22T15:42:12Z
Jayden
3
Jayden moved page [[Trade]] to [[Trading]]
wikitext
text/x-wiki
'''Trading''' is a feature in [[Brighter Shores]] that allows [[player]]s to trade items with other players. It is only available to players who have purchased the [[Premium Pass]].
99bafa876116f82aca1ca4d2bdadea890bbd972e
299
285
2024-03-22T15:47:36Z
Jayden
3
wikitext
text/x-wiki
'''Trading''' is a feature in [[Brighter Shores]] that allows [[player]]s to trade items with other players. It is only available to players who have purchased the [[Premium Pass]].
{{Premium Pass}}
6cafa3597ba67fd49d6a221d049e0eff33a6912c
MediaWiki:Common.css
8
30
284
109
2024-03-22T15:42:07Z
InvalidCards
4
Updating CSS from [[MediaWiki:Common.less]]
css
text/css
/* <pre> */
:root {
--body-main: #feffff;
--body-light: #f2f2f2;
--body-mid: #d0bd97;
--body-dark: #e3e3e3;
--body-border: #000;
--body-background-color: #173a4d;
--button-background: #605443;
--button-color: #fff;
--button-border: #3c352a;
--button-dark: #18140c;
--button-light: #3a301d;
--sidebar: #cfc08d;
--background-text-color: #e2dbc8;
--background-link-color: #e2bd8a;
--search-box: #efeee6;
--link-color: #936039;
--redlink-color: #ba0000;
--text-color: #000;
--byline-color: #4c4c4c;
--subtle-color: #777;
--admin-blue: #332e75;
--bearcat-green: #13592e;
--awb-purple: #933b96;
--rsw-blue: #438ab6;
--osrsw-brown: #605443;
--thumb-bg: var(--body-light);
--thumb-caption-bg: var(--body-mid);
--sourceeditor-input-background: #fff;
--sourceeditor-background: var(--body-light);
--sourceeditor-background-secondary: var(--body-light);
--sourceeditor-border: var(--body-mid);
--codemirror-gutter-background: var(--body-mid);
}
@font-face {
font-family: 'Lora';
font-weight: 400 700;
font-style: normal;
font-display: swap;
src: url('filepath://Lora.woff2') format('woff2');
}
@font-face {
font-family: 'Lora';
font-weight: 400 700;
font-style: italic;
font-display: swap;
src: url('filepath://Lora-Italic.woff2') format('woff2');
}
:root {
--base-text-color: #36414f;
--base-heading-color: #444e5a;
--base-heading-border: #e4eaee;
--mw-code-background-color: #ddd4bb;
--body-background-image: url('filepath://Wiki_background.jpg');
}
#mw-page-base {
background: none;
}
.mw-body {
background-color: var(--body-main);
color: var(--text-color);
border-color: transparent;
box-shadow: 0 0 7px rgba(0, 0, 0, 0.15);
margin-top: 0;
}
h1,
h2,
h3,
h4,
h5,
h6 {
color: var(--text-color);
}
h1,
h2 {
border-color: var(--sidebar);
}
.mw-body h1,
.mw-body-content h1,
.mw-body-content h2,
.mw-body-content h3,
.mw-body-content h4,
.mw-body-content h5,
.mw-body-content h6 {
font-family: 'Lora', 'Palatino', 'Georgia', serif;
}
.mw-parser-output h2:first-of-type {
clear: left;
}
.mw-footer {
color: var(--background-text-color);
}
.mw-footer li {
color: var(--background-text-color);
}
.mw-footer a,
.mw-footer a:active,
.mw-footer a:visited {
color: var(--background-link-color);
}
::placeholder {
color: var(--subtle-color);
}
a {
color: var(--link-color);
}
a:visited,
a:active {
color: var(--link-color);
}
a.new {
color: var(--redlink-color);
}
a.new:visited {
color: var(--redlink-color);
}
.mw-parser-output a.extiw,
.mw-parser-output a.external {
color: var(--link-color);
}
.mw-parser-output a.extiw:visited,
.mw-parser-output a.external:visited,
.mw-parser-output a.extiw:active,
.mw-parser-output a.external:active {
color: var(--link-color);
}
.jsPurgeLink a.external {
color: var(--link-color);
}
:root {
--errorbox-bg: #feecea;
--errorbox-border: #ee4231;
--warningbox-bg: #fef9de;
--warningbox-border: #f9d000;
--successbox-bg: #ecf8e3;
--successbox-border: #6bc71f;
}
.mw-message-box-error,
.errorbox,
.mw-message-box-warning,
.warningbox,
.mw-message-box-success,
.successbox,
.usermessage {
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
}
.mw-message-box-error,
.errorbox {
background-color: var(--errorbox-bg);
border-color: var(--errorbox-border);
}
.mw-message-box-warning,
.warningbox,
.usermessage {
background-color: var(--warningbox-bg);
border-color: var(--warningbox-border);
}
.mw-message-box-success,
.successbox {
background-color: var(--successbox-bg);
border-color: var(--successbox-border);
}
.catlinks {
background: var(--body-light);
border: 1px solid var(--body-dark);
padding: 8px 15px;
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
}
.catlinks li {
border-color: var(--body-mid);
}
.filehistory a img,
#file img {
background: url("data:image/svg+xml,%3C%3Fxml version='1.0' encoding='UTF-8'%3F%3E%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16'%3E%3Cpath d='M0 0h8v16h8V8H0z' opacity='.13'/%3E%3C/svg%3E") repeat;
}
#file img:hover {
background: none;
}
.mw-highlight {
background: none;
}
.mw-highlight .linenos {
background-color: var(--mw-code-background-color);
color: var(--byline-color);
}
.mw-highlight a:hover .linenos,
.mw-highlight .hll a .linenos {
color: var(--text-color);
}
.mw-content-ltr.mw-highlight-lines pre,
.mw-content-ltr.content .mw-highlight-lines pre {
box-shadow: inset 2.75em 0 0 var(--mw-code-background-color);
}
#pagehistory ul {
list-style: none;
margin: 0;
}
#pagehistory li {
border: 1px solid transparent;
padding: 1px 10px;
margin: 2px 0;
}
#pagehistory li.selected {
background-color: var(--body-light);
color: inherit;
border: 1px dashed var(--body-border);
outline: none;
}
#mw-history-compare > div:first-of-type {
position: -webkit-sticky;
position: sticky;
top: 0;
background-color: var(--body-main);
border-bottom: 1px solid var(--body-dark);
padding: 0.25em 0;
}
.wgl-stickyheader #mw-history-compare > div:first-of-type {
top: 2.5rem;
}
.autocomment,
.autocomment a,
.autocomment a:visited {
color: var(--link-color);
}
li span.deleted,
span.history-deleted {
color: var(--byline-color);
}
.mw-usertoollinks-contribs-no-edits,
.mw-usertoollinks-contribs-no-edits:visited {
color: var(--redlink-color);
}
.CategoryTreeToggle {
color: var(--link-color);
}
body.wgl-stickyheader.action-view .mw-headline:target::before {
display: block;
content: '';
margin-top: -3rem;
height: 3rem;
visibility: hidden;
pointer-events: none;
}
.mw-mmv-post-image {
color: var(--text-color);
background-color: var(--body-main);
}
.mw-mmv-image-metadata {
border-top-color: var(--body-mid);
background-color: var(--body-light);
}
.mw-mmv-dialog,
.mw-mmv-dialog .mw-mmv-dialog-down-arrow,
.mw-mmv-options-dialog .mw-mmv-dialog-down-arrow {
background-color: var(--body-light);
box-shadow: none;
}
.mw-mmv-options-enable-alert {
background-color: var(--body-light);
color: var(--text-color);
}
.mw-mmv-options-dialog-header,
.mw-mmv-options-text-header,
.mw-mmv-options-text-body,
.mw-mmv-options-enable-alert,
.mw-mmv-options-dialog .mw-mmv-disable-confirmation .mw-mmv-options-dialog-header,
.mw-mmv-options-dialog .mw-mmv-disable-confirmation .mw-mmv-options-text-header {
color: var(--text-color);
}
.mw-revslider-container {
border-color: var(--sidebar);
}
.mw-revslider-slider-wrapper {
border-top-color: var(--sidebar);
}
.mw-ui-button {
background-color: var(--ooui-normal);
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
}
.mw-ui-button:not(:disabled):hover,
.mw-ui-button:not(:disabled):active {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
}
.mw-ui-button:not(:disabled):focus {
color: var(--ooui-text);
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent), inset 0 0 0 2px #fff;
}
.mw-ui-button:not(:disabled):visited {
color: var(--ooui-text);
}
.mw-ui-button.mw-ui-progressive:not(:disabled) {
background-color: var(--ooui-progressive);
color: #fff;
border-color: var(--ooui-progressive);
}
.mw-ui-button.mw-ui-progressive:not(:disabled):hover {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
}
.mw-ui-button.mw-ui-progressive:not(:disabled):focus {
box-shadow: inset 0 0 0 1px var(--ooui-accent), inset 0 0 0 2px #fff;
}
.mw-ui-button.mw-ui-progressive:not(:disabled):active,
.mw-ui-button.mw-ui-progressive:not(:disabled).is-on {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
box-shadow: none;
}
.mw-ui-button.mw-ui-destructive:not( :disabled ) {
color: #fff;
}
.mw-ui-button.mw-ui-quiet,
.mw-ui-button.mw-ui-quiet.mw-ui-progressive,
.mw-ui-button.mw-ui-quiet.mw-ui-destructive {
color: var(--text-color);
}
input[type='checkbox']:hover + .mw-ui-button.mw-ui-quiet,
input[type='checkbox']:hover + .mw-ui-button.mw-ui-quiet.mw-ui-progressive,
input[type='checkbox']:hover + .mw-ui-button.mw-ui-quiet.mw-ui-destructive,
.mw-ui-button.mw-ui-quiet:hover,
.mw-ui-button.mw-ui-quiet.mw-ui-progressive:hover,
.mw-ui-button.mw-ui-quiet.mw-ui-destructive:hover {
background-color: rgba(0, 24, 73, 0.02745098);
color: var(--text-color);
border-color: transparent;
}
input[type='checkbox']:focus + .mw-ui-button.mw-ui-quiet,
input[type='checkbox']:focus + .mw-ui-button.mw-ui-quiet.mw-ui-progressive,
input[type='checkbox']:focus + .mw-ui-button.mw-ui-quiet.mw-ui-destructive,
.mw-ui-button.mw-ui-quiet:focus,
.mw-ui-button.mw-ui-quiet.mw-ui-progressive:focus,
.mw-ui-button.mw-ui-quiet.mw-ui-destructive:focus {
color: var(--text-color);
}
input[type='checkbox']:active + .mw-ui-button.mw-ui-quiet,
input[type='checkbox']:active + .mw-ui-button.mw-ui-quiet.mw-ui-progressive,
input[type='checkbox']:active + .mw-ui-button.mw-ui-quiet.mw-ui-destructive,
.mw-ui-button.mw-ui-quiet:active,
.mw-ui-button.mw-ui-quiet.mw-ui-progressive:active,
.mw-ui-button.mw-ui-quiet.mw-ui-destructive:active {
background-color: rgba(0, 36, 73, 0.08235294);
color: var(--text-color);
border-color: #72777d;
}
.mw-ui-input {
background-color: var(--ooui-input);
color: var(--text-color);
border-color: var(--ooui-input-border);
}
.mw-ui-input:hover {
border-color: var(--ooui-input-border--hover);
}
.mw-ui-input::placeholder {
color: var(--byline-color);
}
.mw-content-ltr .redirectText li:first-child {
padding: 0;
background: 0;
}
.mw-content-ltr .redirectText li:first-child::before {
content: '';
background: currentcolor;
-webkit-mask: url("filepath://Redirect-arrow.svg") no-repeat 50% 50% / contain;
mask: url("filepath://Redirect-arrow.svg") no-repeat 50% 50% / contain;
display: inline-block;
width: 47px;
height: 20px;
}
:root {
--wikitable-header-bg: var(--body-dark);
--wikitable-border: var(--body-border);
--wikitable-bg: var(--body-light);
--wikitable-bg-lighter: #e9e3d6;
--wikitable-color: var(--text-color);
--table-na-background: rgba(255, 255, 255, 0.3);
--table-na-color: var(--subtle-color);
--table-yes-background: #c3e8a3;
--table-yes-color: #2e5e05;
--table-no-background: #fbc0ba;
--table-no-color: #801c13;
--table-maybe-background: #fcea94;
--table-maybe-color: #786300;
}
.wikitable {
background: var(--wikitable-bg);
color: var(--wikitable-color);
border-color: var(--wikitable-border);
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
}
.wikitable > tr > th,
.wikitable > tr > td,
.wikitable > * > tr > th,
.wikitable > * > tr > td {
border-color: var(--wikitable-border);
}
.wikitable > tr > th.table-noborder,
.wikitable > tr > td.table-noborder,
.wikitable > * > tr > th.table-noborder,
.wikitable > * > tr > td.table-noborder {
border-left-style: hidden;
border-right-style: hidden;
padding-left: 0;
padding-right: 0;
}
.wikitable > tr > th,
.wikitable > * > tr > th {
background-color: var(--wikitable-header-bg);
}
.tabber .wikitable {
box-shadow: none;
}
.mw_metadata td,
.mw_metadata th {
border-color: var(--wikitable-border);
}
.mw_metadata th {
background-color: var(--wikitable-header-bg);
}
.mw_metadata td {
background-color: var(--wikitable-bg);
}
.mw-datatable {
border-color: var(--wikitable-border);
}
.mw-datatable td,
.mw-datatable th {
border-color: var(--wikitable-border);
}
.mw-datatable th {
background-color: var(--wikitable-header-bg);
}
.mw-datatable td {
background-color: var(--wikitable-bg);
}
.mw-datatable tr:hover td {
background-color: var(--wikitable-bg);
}
table.alternating-rows tr:nth-child(odd),
table.alternating-cols td:nth-child(odd) {
background: var(--wikitable-alternating-bg);
}
.table-na {
background: var(--table-na-background);
color: var(--table-na-color);
vertical-align: middle;
text-align: center;
}
.table-yes {
background: var(--table-yes-background);
color: var(--table-yes-color);
}
.table-positive {
background: var(--table-yes-background);
}
.table-no {
background: var(--table-no-background);
color: var(--table-no-color);
}
.table-negative {
background: var(--table-no-background);
}
.table-maybe {
background: var(--table-maybe-background);
color: var(--table-maybe-color);
}
#mw-allmessagestable .am_actual,
#mw-allmessagestable .am_default {
background-color: var(--wikitable-bg);
}
#mw-allmessagestable .am_default:hover,
#mw-allmessagestable .am_actual:hover,
#mw-allmessagestable tbody:hover td {
background-color: var(--wikitable-bg-lighter);
}
table.wikitable td.no-cell-spacing {
padding: 0;
height: 0;
}
table.wikitable td.no-cell-spacing table {
margin: -1px;
width: calc(100% + 2px);
height: calc(100% + 2px);
}
.plainlist ol,
.plainlist ul {
margin: 0;
}
.plainlist li {
margin-bottom: 0;
list-style: none;
}
table.align-right-1 td:nth-of-type(1),
table.align-right-2 td:nth-of-type(2),
table.align-right-3 td:nth-of-type(3),
table.align-right-4 td:nth-of-type(4),
table.align-right-5 td:nth-of-type(5),
table.align-right-6 td:nth-of-type(6),
table.align-right-7 td:nth-of-type(7),
table.align-right-8 td:nth-of-type(8),
table.align-right-9 td:nth-of-type(9),
table.align-right-10 td:nth-of-type(10),
table.align-right-11 td:nth-of-type(11),
table.align-right-12 td:nth-of-type(12),
table.align-right-13 td:nth-of-type(13),
table.align-right-14 td:nth-of-type(14),
table.align-right-15 td:nth-of-type(15),
table.align-right-16 td:nth-of-type(16),
table.align-right-17 td:nth-of-type(17),
table.align-right-18 td:nth-of-type(18),
table.align-right-19 td:nth-of-type(19),
table.align-right-20 td:nth-of-type(20) {
text-align: right;
}
table.align-center-1 td:nth-of-type(1),
table.align-center-2 td:nth-of-type(2),
table.align-center-3 td:nth-of-type(3),
table.align-center-4 td:nth-of-type(4),
table.align-center-5 td:nth-of-type(5),
table.align-center-6 td:nth-of-type(6),
table.align-center-7 td:nth-of-type(7),
table.align-center-8 td:nth-of-type(8),
table.align-center-9 td:nth-of-type(9),
table.align-center-10 td:nth-of-type(10),
table.align-center-11 td:nth-of-type(11),
table.align-center-12 td:nth-of-type(12),
table.align-center-13 td:nth-of-type(13),
table.align-center-14 td:nth-of-type(14),
table.align-center-15 td:nth-of-type(15),
table.align-center-16 td:nth-of-type(16),
table.align-center-17 td:nth-of-type(17),
table.align-center-18 td:nth-of-type(18),
table.align-center-19 td:nth-of-type(19),
table.align-center-20 td:nth-of-type(20) {
text-align: center;
}
table.align-left-1 td:nth-of-type(1),
table.align-left-2 td:nth-of-type(2),
table.align-left-3 td:nth-of-type(3),
table.align-left-4 td:nth-of-type(4),
table.align-left-5 td:nth-of-type(5),
table.align-left-6 td:nth-of-type(6),
table.align-left-7 td:nth-of-type(7),
table.align-left-8 td:nth-of-type(8),
table.align-left-9 td:nth-of-type(9),
table.align-left-10 td:nth-of-type(10),
table.align-left-11 td:nth-of-type(11),
table.align-left-12 td:nth-of-type(12),
table.align-left-13 td:nth-of-type(13),
table.align-left-14 td:nth-of-type(14),
table.align-left-15 td:nth-of-type(15),
table.align-left-16 td:nth-of-type(16),
table.align-left-17 td:nth-of-type(17),
table.align-left-18 td:nth-of-type(18),
table.align-left-19 td:nth-of-type(19),
table.align-left-20 td:nth-of-type(20) {
text-align: left;
}
:root {
--diff-addedline-border-color: #438ab5;
--diff-addedline-background: #bddff2;
--diff-addedline-color: #000;
--diff-deletedline-border-color: #379541;
--diff-deletedline-background: #c1edbf;
--diff-deletedline-color: #000;
--diff-context-border-color: var(--body-mid);
--diff-context-background: var(--body-mid);
}
.diff-context {
border-color: var(--diff-context-border-color);
background: var(--diff-context-background);
color: inherit;
}
.diff-addedline {
border-color: var(--diff-addedline-border-color);
}
.diff-addedline .diffchange {
background: var(--diff-addedline-background);
color: var(--diff-addedline-color);
}
.diff-deletedline {
border-color: var(--diff-deletedline-border-color);
}
.diff-deletedline .diffchange {
background: var(--diff-deletedline-background);
color: var(--diff-deletedline-color);
}
.mw-diff-movedpara-left:after,
.mw-diff-movedpara-right:after {
color: var(--text-color);
}
.mw-notification {
background-color: var(--body-light);
border-color: var(--body-border);
color: var(--text-color);
}
.mw-echo-ui-notificationsInboxWidget-toolbarWrapper {
background: var(--body-main);
}
.mw-body-content .mw-echo-ui-datedSubGroupListWidget-title-secondary {
color: var(--byline-color);
}
.mw-echo-ui-pageNotificationsOptionWidget.oo-ui-optionWidget-selected {
background-color: var(--ooui-normal);
color: var(--ooui-accent);
}
.mw-echo-ui-pageNotificationsOptionWidget-label-count {
background-color: var(--ooui-normal);
color: var(--byline-color);
}
.oo-ui-optionWidget-selected .mw-echo-ui-pageNotificationsOptionWidget-label-count {
color: var(--ooui-accent);
}
.mw-echo-ui-pageNotificationsOptionWidget.oo-ui-optionWidget-highlighted {
background-color: var(--ooui-normal);
color: var(--text-color);
}
.mw-echo-ui-crossWikiUnreadFilterWidget {
border-color: var(--body-border);
}
.mw-echo-ui-crossWikiUnreadFilterWidget-subtitle {
color: var(--byline-color);
}
.mw-echo-ui-notificationBadgeButtonPopupWidget-popup > .oo-ui-popupWidget-popup > .oo-ui-popupWidget-head,
.mw-echo-ui-notificationBadgeButtonPopupWidget-popup > .oo-ui-popupWidget-popup > .oo-ui-popupWidget-footer {
border-color: var(--ooui-interface-border);
}
.mw-echo-ui-notificationBadgeButtonPopupWidget-popup > .oo-ui-popupWidget-popup > .oo-ui-popupWidget-footer .mw-echo-ui-notificationBadgeButtonPopupWidget-footer-buttons .oo-ui-buttonElement:last-child {
border-left-color: var(--ooui-normal-border);
}
.mw-echo-ui-notificationItemWidget {
background-color: var(--ooui-normal);
border-color: var(--ooui-normal-border);
}
.mw-echo-ui-notificationItemWidget:hover,
.mw-echo-ui-notificationItemWidget-unread:hover {
background-color: var(--ooui-normal--hover);
}
.mw-echo-ui-notificationItemWidget:last-child {
border-bottom-color: var(--ooui-normal-border);
}
.mw-echo-ui-notificationItemWidget-unread {
background-color: var(--search-box);
}
.mw-echo-ui-crossWikiNotificationItemWidget-group,
.mw-echo-ui-bundleNotificationItemWidget-group {
background-color: var(--ooui-interface);
}
.mw-echo-ui-toggleReadCircleButtonWidget-circle {
background-color: var(--ooui-progressive);
}
.mw-echo-ui-toggleReadCircleButtonWidget:hover .mw-echo-ui-toggleReadCircleButtonWidget-circle {
background-color: var(--ooui-progressive--hover);
}
.mw-echo-ui-toggleReadCircleButtonWidget-circle-unread {
background-color: var(--ooui-normal);
border-color: var(--ooui-normal-border);
}
.mw-echo-ui-notificationItemWidget-content-message-header,
.mw-echo-ui-notificationItemWidget-content-message-body,
.mw-echo-ui-menuItemWidget > .oo-ui-buttonElement-button > .oo-ui-labelElement-label,
.mw-echo-ui-notificationItemWidget-content-actions-timestamp {
color: var(--ooui-text);
}
.mw-echo-ui-bundleNotificationItemWidget-group {
background-color: var(--body-main);
}
@keyframes unseen-fadeout-to-unread {
from {
background-color: var(--wikitable-bg-lighter);
}
to {
background-color: var(--search-box);
}
}
@keyframes unseen-fadeout-to-read {
from {
background-color: var(--wikitable-bg-lighter);
}
to {
background-color: var(--body-main);
}
}
.mwe-popups {
background: var(--body-light);
}
.mwe-popups .mwe-popups-container {
color: var(--text-color);
background: var(--body-light);
}
.mwe-popups .mwe-popups-container.flipped-x-y:before,
.mwe-popups .mwe-popups-container.flipped-y:before {
border-top: none;
}
.mwe-popups .mwe-popups-container.mwe-popups-no-image-tri:before {
border-bottom: none;
}
.mwe-popups .mwe-popups-container.flipped-x-y:after,
.mwe-popups .mwe-popups-container.flipped-y:after {
border-top-color: var(--body-light);
}
.mwe-popups .mwe-popups-container.mwe-popups-no-image-tri:after {
border-bottom-color: var(--body-light);
}
.mwe-popups .mwe-popups-settings-icon:hover,
.mwe-popups .mwe-popups-settings-icon:active {
background-color: var(--ooui-normal--hover);
}
.mwe-popups .mw-ui-icon-element:not(.disabled):hover {
background: none;
}
.mwe-popups .mwe-popups-extract {
color: var(--text-color);
}
.mwe-popups .mwe-popups-extract[dir='ltr']:after {
background-image: linear-gradient(to right, rgba(49, 62, 89, 0), var(--body-light) 50%);
}
.mwe-popups-overlay {
background-color: var(--ooui-window-background);
}
#mwe-popups-settings {
background: var(--ooui-interface);
border-color: var(--ooui-interface-border);
color: var(--text-color);
}
#mwe-popups-settings header {
border-color: var(--ooui-interface-border);
}
#mwe-popups-settings main#mwe-popups-settings-form p {
color: var(--byline-color);
}
#mwe-popups-settings main#mwe-popups-settings-form form label > span {
color: var(--ooui-text);
}
:root {
--smw-ask-options-even-bg: var(--body-mid);
--smw-ask-options-odd-bg: var(--body-light);
--smw-ask-action-btn-lblue-bg: var(--body-main);
--smw-ask-action-btn-lblue-color: #000;
--smw-ask-action-btn-lblue-border-color: var(--body-light);
--smw-ask-action-btn-dblue-bg: var(--body-light);
--smw-ask-action-btn-dblue-color: #fff;
--smw-ask-action-btn-dblue-border-color: var(--button-border);
}
.smw-ask-condition fieldset,
.smw-ask-printhead fieldset {
border-color: var(--sidebar);
}
.smw-ask-search fieldset,
.smw-ask-format fieldset,
.smw-ask-options fieldset {
border-color: var(--sidebar);
}
.strike > span:before,
.strike > span:after {
background: var(--sidebar);
}
.smw-ask-options-fields tr td {
background-color: var(--smw-ask-options-even-bg);
}
.smw-ask-options-fields tr:nth-child(odd) td {
background-color: var(--smw-ask-options-odd-bg);
}
.smw-ask-action-btn.smw-ask-action-btn-lblue,
.smw-ask-action-btn.smw-ask-action-btn-lblue:hover,
.smw-ask-action-btn.smw-ask-action-btn-lblue:visited {
background-color: var(--smw-ask-action-btn-lblue-bg);
color: var(--smw-ask-action-btn-lblue-color);
border-color: var(--smw-ask-action-btn-lblue-border-color);
}
.smw-ask-action-btn.smw-ask-action-btn-dblue,
.smw-ask-action-btn.smw-ask-action-btn-dblue:hover,
.smw-ask-action-btn.smw-ask-action-btn-dblue:visited {
background-color: var(--smw-ask-action-btn-dblue-bg);
color: var(--smw-ask-action-btn-dblue-color);
border-color: var(--smw-ask-action-btn-dblue-border-color);
}
.smw-ask-query textarea,
.smw-ask-actions textarea {
background-color: var(--ooui-interface);
border-color: var(--ooui-interface-border);
color: var(--ooui-text);
}
.smw-ask-query-format select {
background-color: var(--ooui-interface);
border: 1px solid var(--ooui-interface-border);
color: var(--ooui-text);
}
.smw-ask-toplinks {
background-color: var(--body-mid);
}
.smw-ask-toplinks span.smw-icon-info {
background: none;
padding: 0 !important;
}
.smw-ask-toplinks span.smw-icon-info::before {
content: '';
background: var(--text-color);
-webkit-mask: url("data:image/svg+xml,%3C%3Fxml version='1.0' encoding='UTF-8'%3F%3E%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 20 20'%3E%3Ctitle%3Einfo%3C/title%3E%3Cpath d='M10 0C4.477 0 0 4.477 0 10s4.477 10 10 10 10-4.477 10-10S15.523 0 10 0zM9 5h2v2H9zm0 4h2v6H9z'/%3E%3C/svg%3E") no-repeat 50% 50% / contain;
mask: url("data:image/svg+xml,%3C%3Fxml version='1.0' encoding='UTF-8'%3F%3E%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 20 20'%3E%3Ctitle%3Einfo%3C/title%3E%3Cpath d='M10 0C4.477 0 0 4.477 0 10s4.477 10 10 10 10-4.477 10-10S15.523 0 10 0zM9 5h2v2H9zm0 4h2v6H9z'/%3E%3C/svg%3E") no-repeat 50% 50% / contain;
padding: 0 0 3px 18px;
}
.smw-ask-options-row-odd {
background-color: var(--body-light);
}
.smw-ask-options-row-even {
background-color: var(--body-mid);
}
#options-toggle:not(:checked) + #options-list .options-parameter-list:after {
background-image: linear-gradient(to bottom, transparent, var(--body-mid) 90%);
}
.smw-ask-button-submit input {
background-color: var(--ooui-normal);
border-color: var(--ooui-normal-border);
color: var(--text-color);
}
.smw-ask-button-submit input:hover,
.smw-ask-button-lgrey:hover {
background-color: var(--ooui-normal--hover);
border-color: var(--ooui-normal-border);
}
input.smw-ask-action-btn.smw-ask-action-btn-dblue {
background-color: var(--ooui-normal);
border-color: var(--ooui-normal-border);
color: var(--ooui-text);
}
a.smw-ask-action-btn.smw-ask-action-btn-lblue {
background-color: var(--body-mid);
border-color: var(--body-mid);
color: var(--ooui-text);
}
a.smw-ask-action-btn.smw-ask-action-btn-lblue:visited {
background-color: var(--body-mid);
border-color: var(--body-mid);
color: var(--ooui-text);
}
a.smw-ask-action-btn.smw-ask-action-btn-lblue:hover {
background-color: var(--body-mid);
border-color: var(--body-mid);
color: var(--ooui-text);
}
a.smw-ask-action-btn-lgrey {
background-color: var(--ooui-normal);
border-color: var(--ooui-normal-border);
color: var(--ooui-text);
}
a.smw-ask-action-btn-lgrey:hover {
background-color: var(--ooui-normal--hover);
border-color: var(--ooui-normal-border);
color: var(--ooui-text);
}
.smw-callout-error {
background-color: var(--errorbox-bg);
border-color: var(--errorbox-border);
}
.smw-callout-info {
background-color: var(--body-light);
border-color: var(--body-dark);
}
.smw-callout-success {
background-color: var(--successbox-bg);
border-color: var(--successbox-border);
}
.smw-callout-warning {
background-color: var(--warningbox-bg);
border-color: var(--warningbox-bg);
}
.smw-tabs input.nav-tab:checked + label.nav-label,
.smw-tabs input.nav-tab:checked + label.nav-label:hover {
color: inherit;
}
#tab-smw-property-value:checked + label.nav-label .usage-count {
color: #fff;
background-color: var(--ooui-progressive);
}
#tab-smw-property-value:checked + label.nav-label .usage-count.moderate {
color: #fff;
background-color: #b55e0c;
border-color: #b55e0c;
}
#tab-smw-property-value:checked + label.nav-label .usage-count.high {
color: #fff;
background-color: #9f261e;
border-color: #9f261e;
}
.smw-property-page-results .header-title {
background-color: var(--ooui-interface);
border-bottom-color: var(--ooui-interface-border);
color: var(--ooui-text);
}
.smw-property-page-results .value-row:hover {
background-color: var(--ooui-normal--hover);
}
.smw-property-page-results .smw-table .header-row {
color: var(--text-color);
}
.tippy-tooltip.light-border-theme {
background-color: var(--body-light);
color: var(--text-color);
}
.tippy-tooltip.light-border-theme .tippy-arrow {
border-top-color: var(--body-light);
}
.tippy-tooltip.light-border-theme .tippy-arrow:after {
border-top-color: var(--body-light);
}
.tippy-header {
background-color: var(--body-dark);
border-bottom-color: var(--body-mid);
}
.smw-ui-input-filter {
background-color: var(--ooui-interface);
border-color: var(--ooui-interface-border);
color: var(--ooui-text);
}
.smw-ui-input-filter input {
border-left-color: var(--ooui-interface-border) !important;
color: var(--ooui-text) !important;
}
.smw-ui-pagination .page-link.link-disabled {
background-color: var(--ooui-disabled);
border-color: var(--ooui-disabled-border);
color: var(--subtle-color);
}
.smw-ui-pagination .page-link {
background-color: var(--ooui-normal);
border-color: var(--ooui-normal-border);
color: var(--link-color);
}
.smw-ui-pagination .page-link:hover {
background-color: var(--ooui-normal--hover);
border-color: var(--ooui-normal-border);
color: var(--link-color);
}
.smw-ui-pagination .page-link.link-active {
color: #fff;
background-color: var(--ooui-progressive);
border-color: var(--ooui-progressive);
}
.smw-tabs input.nav-tab:checked + label.nav-label {
border-color: var(--ooui-normal-border);
}
.smw-tabs section,
.smw-tabs .subtab-content {
border-top-color: var(--ooui-normal-border);
}
.smw-column-header {
color: var(--text-color);
}
.smw-factbox {
background: var(--body-main);
border-color: transparent;
}
.mw-body .mw-indicators #mw-indicator-smw-entity-examiner.mw-indicator .smw-indicator-vertical-bar-loader {
display: none;
}
.smwb-theme-light .smwb-title,
.smwb-theme-light .smwb-center,
.smwb-theme-light .smwb-actions,
.smwb-theme-light .smwb-prophead {
background-color: var(--body-mid);
}
.smwb-theme-light .smwb-factbox {
border-left-color: var(--body-mid);
}
.smwb-theme-light .smwb-ifactbox {
border-right-color: var(--body-mid);
}
.smwb-theme-light .smwb-propval {
background-color: var(--body-light);
}
.smwb-action-separator {
border-color: var(--wikitable-border);
}
.smwb-bottom {
border-bottom: 1px solid var(--wikitable-border);
}
.smwb-ifactbox .smwb-cell,
.smwb-factbox .smwb-cell {
border-top: 1px solid var(--wikitable-border);
}
.smwb-propvalue .smwb-prophead,
.smwb-ipropvalue .smwb-prophead,
.smwb-propvalue .smwb-propval,
.smwb-ipropvalue .smwb-propval {
font-size: 0.9em;
}
:root {
--filter-black-to-link: invert(36%) sepia(58%) saturate(433%) hue-rotate(344deg) brightness(100%) contrast(91%);
}
#bodyContent span.smwbrowse a {
color: black;
background-image: url('filepath://Smwbrowse.svg');
filter: var(--filter-black-to-link);
}
#bodyContent span.smwbrowse a:hover {
color: black;
background-image: url('filepath://Smwbrowse-hover.svg');
text-decoration: underline;
}
#bodyContent span.smwsearch a {
color: black;
filter: var(--filter-black-to-link);
background-image: url('filepath://Smwsearch.svg');
}
#bodyContent span.smwsearch a:hover {
color: black;
background-image: url('filepath://Smwsearch-hover.svg');
text-decoration: underline;
}
:root {
--tabber-tab-bg: var(--body-light);
--tabber-tab-border-color: var(--body-border);
--tabber-active-tab-bg: var(--body-light);
--tabber-active-tab-color: var(--text-color);
--tabber-active-tab-hover-bg: var(--body-light);
--tabber-active-tab-hover-border-color: var(--body-border);
--tabber-active-tab-hover-color: var(--text-color);
--tabber-active-tab-border-hider-color: var(--body-light);
--tabber-inactive-tab-bg: var(--body-background-color);
--tabber-inactive-tab-border-color: var(--body-border);
--tabber-inactive-tab-color: var(--text-color);
--tabber-inactive-tab-hover-bg: var(--body-light);
--tabber-inactive-tab-hover-border-color: var(--body-border);
}
.tabber {
margin: 1em 0;
}
.tabber .tabbertab {
background-color: var(--tabber-tab-bg);
border: 1px solid var(--tabber-tab-border-color);
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
padding: 1em 1.5em;
}
ul.tabbernav {
border: none;
margin-left: 2em;
margin-bottom: 0;
margin-right: 2em;
padding: 0;
font-family: inherit;
}
ul.tabbernav li.tabberactive > a {
background-color: var(--tabber-active-tab-bg);
color: var(--tabber-active-tab-color);
border-bottom: none;
position: relative;
}
ul.tabbernav li.tabberactive > a:hover {
color: var(--tabber-active-tab-hover-color);
background-color: var(--tabber-active-tab-hover-bg);
border-color: var(--tabber-active-tab-hover-border-color);
border-bottom: none;
}
ul.tabbernav li.tabberactive > a::after {
content: '';
position: absolute;
left: 0;
right: 0;
bottom: -1px;
border-bottom: 2px solid var(--tabber-active-tab-border-hider-color);
}
ul.tabbernav li a {
background-color: var(--tabber-inactive-tab-bg);
border-bottom: transparent;
border-color: var(--tabber-inactive-tab-border-color);
color: var(--tabber-inactive-tab-color);
display: inline-block;
font-size: 110%;
padding: 0.5em 1em;
}
ul.tabbernav li a:hover {
background-color: var(--tabber-inactive-tab-hover-bg);
border-color: var(--tabber-inactive-tab-hover-border-color);
}
ul.tabbernav li a:link,
ul.tabbernav li a:visited {
color: var(--tabber-inactive-tab-color);
}
:root {
--ooui-text: var(--text-color);
--ooui-interface: var(--body-light);
--ooui-interface-border: var(--body-border);
--ooui-window-background: rgba(255, 255, 255, 0.5);
--ooui-normal: #d5c7ad;
--ooui-normal--hover: #dfd5c1;
--ooui-normal-border: #b8a282;
--ooui-progressive: #605443;
--ooui-progressive--hover: #7e6e58;
--ooui-accent: var(--link-color);
--ooui-input: #fff;
--ooui-input-border: #b8a282;
--ooui-input-border--hover: #8a724f;
--ooui-disabled: #d1cdc5;
--ooui-disabled-border: #c2b9ab;
--ooui-disabled-text: var(--subtle-color);
--ooui-pending-background-image: repeating-linear-gradient(-45deg, var(--search-box), var(--search-box) 20px, var(--body-main) 20px, var(--body-main) 30px);
}
.oo-ui-widget {
color: var(--ooui-text);
}
.oo-ui-checkboxInputWidget [type='checkbox'] + span,
.oo-ui-radioInputWidget [type='radio'] + span {
background-color: var(--ooui-input);
border-color: var(--ooui-input-border);
}
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:checked + span,
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:indeterminate + span {
background-color: var(--ooui-progressive);
border-color: var(--ooui-progressive);
}
.oo-ui-radioInputWidget.oo-ui-widget-enabled [type='radio']:checked + span {
border-color: var(--ooui-progressive);
}
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:checked:hover + span,
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:indeterminate:hover + span {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
}
.oo-ui-radioInputWidget.oo-ui-widget-enabled [type='radio']:checked:hover + span {
border-color: var(--ooui-progressive--hover);
}
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:hover + span,
.oo-ui-radioInputWidget.oo-ui-widget-enabled [type='radio']:hover + span {
border-color: var(--ooui-accent);
}
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:focus + span {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:active + span,
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:checked:active + span,
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:indeterminate:active + span {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
box-shadow: inset 0 0 0 1px var(--ooui-progressive--hover);
}
.oo-ui-radioInputWidget.oo-ui-widget-enabled [type='radio']:active + span {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
}
.oo-ui-radioInputWidget.oo-ui-widget-enabled [type='radio']:checked:active + span {
border-color: var(--ooui-progressive--hover);
box-shadow: inset 0 0 0 1px var(--ooui-progressive--hover);
}
.oo-ui-radioInputWidget.oo-ui-widget-enabled [type='radio']:checked:active + span:before {
border-color: var(--ooui-progressive--hover);
}
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:checked:focus + span,
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:indeterminate:focus + span {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent), inset 0 0 0 2px #fff;
}
.oo-ui-checkboxInputWidget [type='checkbox']:disabled + span,
.oo-ui-radioInputWidget [type='radio']:disabled + span {
background-color: var(--ooui-disabled);
border-color: var(--ooui-disabled);
}
.oo-ui-dropdownWidget-handle {
border-color: var(--ooui-normal-border);
}
.oo-ui-dropdownWidget.oo-ui-widget-enabled .oo-ui-dropdownWidget-handle {
background-color: var(--ooui-normal);
color: var(--ooui-text);
}
.oo-ui-dropdownWidget.oo-ui-widget-enabled .oo-ui-dropdownWidget-handle:hover {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
}
.oo-ui-dropdownWidget.oo-ui-widget-enabled .oo-ui-dropdownWidget-handle:active {
color: var(--ooui-text);
}
.oo-ui-dropdownWidget.oo-ui-widget-enabled .oo-ui-dropdownWidget-handle:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-dropdownWidget.oo-ui-widget-enabled.oo-ui-dropdownWidget-open .oo-ui-dropdownWidget-handle {
background-color: var(--ooui-normal--hover);
}
.oo-ui-dropdownWidget.oo-ui-widget-disabled .oo-ui-dropdownWidget-handle {
color: var(--ooui-disabled-text);
text-shadow: none;
border-color: var(--ooui-disabled-border);
background-color: var(--ooui-disabled);
}
.oo-ui-dropdownInputWidget select {
border-color: var(--ooui-normal-border);
}
.oo-ui-dropdownInputWidget option {
background-color: var(--ooui-interface);
}
.oo-ui-dropdownInputWidget.oo-ui-widget-enabled {
background-color: var(--ooui-normal);
}
.oo-ui-dropdownInputWidget.oo-ui-widget-enabled:hover {
background-color: var(--ooui-normal--hover);
}
.oo-ui-dropdownInputWidget.oo-ui-widget-enabled select {
color: var(--ooui-text);
}
.oo-ui-dropdownInputWidget.oo-ui-widget-enabled select:hover,
.oo-ui-dropdownInputWidget.oo-ui-widget-enabled select:active {
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
}
.oo-ui-dropdownInputWidget.oo-ui-widget-enabled select:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-labelWidget.oo-ui-inline-help {
color: var(--byline-color);
}
.oo-ui-menuSelectWidget {
background-color: var(--ooui-interface);
border-color: var(--ooui-interface-border);
}
.oo-ui-menuSelectWidget-frameless {
box-shadow: inset 0 -1px 0 0 var(--ooui-normal-border);
}
.oo-ui-menuSectionOptionWidget {
color: var(--byline-color);
}
.oo-ui-menuOptionWidget.oo-ui-optionWidget-highlighted,
.oo-ui-menuOptionWidget.oo-ui-optionWidget-selected {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
}
.oo-ui-menuOptionWidget.oo-ui-optionWidget-selected.oo-ui-menuOptionWidget.oo-ui-optionWidget-highlighted,
.oo-ui-menuOptionWidget.oo-ui-optionWidget-pressed.oo-ui-menuOptionWidget.oo-ui-optionWidget-highlighted {
color: var(--ooui-accent);
}
.oo-ui-menuOptionWidget.oo-ui-widget-enabled.oo-ui-optionWidget {
color: var(--ooui-text);
}
.oo-ui-messageDialog-title {
color: inherit;
}
.oo-ui-messageWidget.oo-ui-messageWidget-block.oo-ui-flaggedElement-error {
background-color: var(--errorbox-bg);
border-color: var(--errorbox-border);
}
.oo-ui-messageWidget.oo-ui-messageWidget-block.oo-ui-flaggedElement-warning {
background-color: var(--warningbox-bg);
border-color: var(--warningbox-border);
}
.oo-ui-messageWidget.oo-ui-messageWidget-block.oo-ui-flaggedElement-success {
background-color: var(--successbox-bg);
border-color: var(--successbox-border);
}
.oo-ui-messageWidget.oo-ui-messageWidget-block.oo-ui-flaggedElement-notice {
background-color: var(--messagebox-info-background);
border-color: var(--messagebox-info-border);
}
.oo-ui-messageWidget.oo-ui-flaggedElement-error:not(.oo-ui-messageWidget-block),
.oo-ui-messageWidget.oo-ui-flaggedElement-success:not(.oo-ui-messageWidget-block) {
color: var(--ooui-text);
}
.oo-ui-optionWidget.oo-ui-widget-disabled {
color: var(--ooui-disabled-text);
}
.oo-ui-outlineControlsWidget {
background-color: var(--ooui-normal);
}
.oo-ui-outlineOptionWidget.oo-ui-optionWidget-highlighted {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
}
.oo-ui-popupWidget-popup {
background-color: var(--ooui-interface);
border-color: var(--ooui-interface-border);
}
.oo-ui-popupWidget-anchored-top .oo-ui-popupWidget-anchor:after {
border-bottom-color: var(--ooui-interface);
}
.oo-ui-popupWidget-anchored-top .oo-ui-popupWidget-anchor:before {
border-bottom-color: var(--ooui-interface-border);
}
.oo-ui-popupWidget-anchored-bottom .oo-ui-popupWidget-anchor:after {
border-top-color: var(--ooui-interface);
}
.oo-ui-popupWidget-anchored-bottom .oo-ui-popupWidget-anchor:before {
border-top-color: var(--ooui-interface-border);
}
.oo-ui-popupWidget-anchored-start .oo-ui-popupWidget-anchor:after {
border-right-color: var(--ooui-interface);
}
.oo-ui-popupWidget-anchored-start .oo-ui-popupWidget-anchor:before {
border-right-color: var(--ooui-interface-border);
}
.oo-ui-popupWidget-anchored-end .oo-ui-popupWidget-anchor:after {
border-left-color: var(--ooui-interface);
}
.oo-ui-popupWidget-anchored-end .oo-ui-popupWidget-anchor:before {
border-left-color: var(--ooui-interface-border);
}
.oo-ui-searchWidget-query {
border-bottom-color: var(--ooui-interface-border);
}
.oo-ui-selectFileWidget-dropTarget {
background-color: var(--ooui-interface);
border-color: var(--ooui-interface-border);
}
.oo-ui-selectFileWidget.oo-ui-widget-enabled.oo-ui-selectFileWidget-dropTarget {
background-color: var(--ooui-interface);
}
.oo-ui-selectFileWidget.oo-ui-widget-enabled.oo-ui-selectFileWidget-dropTarget:hover {
border-color: var(--ooui-input-border--hover);
}
.oo-ui-tabOptionWidget {
color: var(--ooui-text);
}
.oo-ui-tabSelectWidget-framed .oo-ui-tabOptionWidget.oo-ui-optionWidget-selected {
background-color: var(--body-dark);
color: var(--ooui-text);
}
.oo-ui-tabSelectWidget-framed .oo-ui-tabOptionWidget.oo-ui-optionWidget-selected .oo-ui-labelElement-label {
border-bottom-color: var(--body-border);
}
.oo-ui-tabSelectWidget-framed .oo-ui-tabOptionWidget.oo-ui-widget-enabled:hover,
.oo-ui-tabSelectWidget-framed .oo-ui-tabOptionWidget.oo-ui-widget-enabled:active {
background-color: var(--body-light);
color: var(--ooui-text);
}
.oo-ui-tabSelectWidget-framed .oo-ui-tabOptionWidget.oo-ui-widget-enabled.oo-ui-optionWidget-selected:hover {
background-color: var(--body-dark);
}
.oo-ui-tabSelectWidget-frameless .oo-ui-tabOptionWidget.oo-ui-optionWidget-selected {
color: var(--ooui-progressive);
box-shadow: inset 0 -2px 0 0 var(--ooui-progressive);
}
.oo-ui-tabSelectWidget-frameless .oo-ui-tabOptionWidget.oo-ui-optionWidget-selected:hover,
.oo-ui-tabSelectWidget-frameless .oo-ui-tabOptionWidget.oo-ui-optionWidget-selected:focus {
color: var(--ooui-progressive--hover);
box-shadow: inset 0 -2px 0 0 var(--ooui-progressive--hover);
}
.oo-ui-tabSelectWidget-framed {
background: none;
border-bottom: 1px solid var(--ooui-interface-border);
}
.oo-ui-tabSelectWidget-frameless {
box-shadow: inset 0 -1px 0 0 var(--ooui-interface-border);
}
.oo-ui-tabSelectWidget-mobile {
}
.oo-ui-tabSelectWidget-mobile.oo-ui-tabSelectWidget-framed:after {
background: var(--mobile-navbox-linear-gradient);
}
.oo-ui-tabSelectWidget-mobile.oo-ui-tabSelectWidget-frameless:after {
background: var(--mobile-navbox-linear-gradient);
}
.oo-ui-tagItemWidget {
border-color: var(--ooui-normal-border);
}
.oo-ui-tagItemWidget.oo-ui-widget-enabled {
color: var(--ooui-text);
}
.oo-ui-tagItemWidget.oo-ui-widget-enabled:hover {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
}
.oo-ui-tagItemWidget.oo-ui-widget-enabled:not( .oo-ui-tagItemWidget-fixed ) {
background-color: var(--ooui-normal);
}
.oo-ui-tagItemWidget.oo-ui-widget-enabled .oo-ui-buttonElement-button:hover {
background-color: var(--ooui-normal--hover);
}
.oo-ui-tagMultiselectWidget.oo-ui-widget-enabled {
background-color: var(--ooui-interface);
}
.oo-ui-tagMultiselectWidget.oo-ui-widget-enabled.oo-ui-tagMultiselectWidget-outlined {
background-color: var(--ooui-normal);
}
.oo-ui-tagMultiselectWidget.oo-ui-widget-enabled.oo-ui-tagMultiselectWidget-outlined .oo-ui-tagItemWidget.oo-ui-widget-enabled {
background-color: var(--ooui-interface);
}
.oo-ui-textInputWidget .oo-ui-inputWidget-input {
background-color: var(--ooui-input);
color: var(--ooui-text);
border-color: var(--ooui-input-border);
}
.oo-ui-textInputWidget.oo-ui-widget-enabled .oo-ui-inputWidget-input::placeholder {
color: var(--subtle-color);
}
.oo-ui-textInputWidget.oo-ui-widget-enabled .oo-ui-inputWidget-input:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-textInputWidget.oo-ui-widget-enabled .oo-ui-inputWidget-input[readonly]:not(.oo-ui-pendingElement-pending) {
background-color: var(--ooui-disabled);
color: var(--ooui-disabled-text);
}
.oo-ui-textInputWidget.oo-ui-widget-enabled:hover .oo-ui-inputWidget-input {
border-color: var(--ooui-input-border--hover);
}
.oo-ui-textInputWidget.oo-ui-widget-enabled:hover .oo-ui-inputWidget-input:focus {
border-color: var(--ooui-accent);
}
@media screen and (min-width: 0) {
.oo-ui-textInputWidget.oo-ui-widget-enabled textarea.oo-ui-inputWidget-input:focus {
outline: 1px solid var(--ooui-accent);
}
}
.oo-ui-textInputWidget.oo-ui-widget-disabled .oo-ui-inputWidget-input {
background-color: var(--ooui-disabled);
color: var(--ooui-disabled-text);
text-shadow: none;
border-color: var(--ooui-disabled-border);
}
.oo-ui-toggleSwitchWidget {
background-color: var(--ooui-input);
border-color: var(--ooui-input-border);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled .oo-ui-toggleSwitchWidget-grip {
background-color: var(--ooui-input);
border-color: var(--ooui-input-border);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:hover {
background-color: var(--ooui-input);
border-color: var(--ooui-accent);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:hover .oo-ui-toggleSwitchWidget-grip {
background-color: var(--ooui-input);
border-color: var(--ooui-accent);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:active,
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:active:hover,
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:active:focus {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
box-shadow: inset 0 0 0 1px var(--ooui-progressive--hover);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:active .oo-ui-toggleSwitchWidget-grip,
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:active:hover .oo-ui-toggleSwitchWidget-grip,
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:active:focus .oo-ui-toggleSwitchWidget-grip {
background-color: var(--ooui-input);
border-color: var(--ooui-input);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:focus .oo-ui-toggleSwitchWidget-grip {
border-color: var(--ooui-accent);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled.oo-ui-toggleWidget-on {
background-color: var(--ooui-progressive);
border-color: var(--ooui-progressive);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled.oo-ui-toggleWidget-on .oo-ui-toggleSwitchWidget-grip {
background-color: var(--ooui-input);
border-color: var(--ooui-input);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled.oo-ui-toggleWidget-on:hover {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled.oo-ui-toggleWidget-on:active,
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled.oo-ui-toggleWidget-on:active:hover {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled.oo-ui-toggleWidget-on:focus {
border-color: var(--ooui-progressive);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled.oo-ui-toggleWidget-on:focus::before {
border-color: #fff;
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-disabled {
background-color: var(--ooui-disabled);
border-color: var(--ooui-disabled);
}
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled > .oo-ui-buttonElement-button {
color: var(--ooui-text);
}
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled > .oo-ui-buttonElement-button:hover {
color: var(--ooui-text);
}
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled > .oo-ui-buttonElement-button:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled.oo-ui-buttonElement-pressed > input.oo-ui-buttonElement-button,
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled > .oo-ui-buttonElement-button:active {
color: var(--ooui-text);
}
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button,
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button:hover {
color: var(--ooui-text);
}
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button:active,
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive.oo-ui-buttonElement-pressed > .oo-ui-buttonElement-button {
color: var(--ooui-text);
border-color: var(--ooui-text);
}
.oo-ui-buttonElement-frameless.oo-ui-widget-disabled > .oo-ui-buttonElement-button {
color: var(--ooui-disabled-text);
}
.oo-ui-buttonElement-framed.oo-ui-widget-disabled > .oo-ui-buttonElement-button {
background-color: var(--ooui-disabled);
border-color: var(--ooui-disabled-border);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled > .oo-ui-buttonElement-button {
background-color: var(--ooui-normal);
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled > .oo-ui-buttonElement-button:hover {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled > .oo-ui-buttonElement-button:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-buttonElement-active > .oo-ui-buttonElement-button {
background-color: var(--ooui-progressive--hover);
color: #fff;
border-color: var(--ooui-progressive--hover);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-buttonElement-active > .oo-ui-buttonElement-button:focus {
border-color: var(--ooui-progressive--hover);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled > .oo-ui-buttonElement-button:active,
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-buttonElement-pressed > .oo-ui-buttonElement-button {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive {
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button {
color: var(--ooui-text);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button:hover {
background-color: var(--ooui-normal--hover);
border-color: var(--ooui-progressive--hover);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-destructive > .oo-ui-buttonElement-button {
color: var(--ooui-text);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-destructive > .oo-ui-buttonElement-button:hover {
background-color: var(--ooui-normal--hover);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button {
background-color: var(--ooui-progressive);
border-color: var(--ooui-progressive);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button:hover {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent), inset 0 0 0 2px #fff;
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button:active,
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive.oo-ui-buttonElement-pressed > .oo-ui-buttonElement-button,
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive.oo-ui-buttonElement-active > .oo-ui-buttonElement-button,
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive.oo-ui-popupToolGroup-active > .oo-ui-buttonElement-button {
color: #fff;
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
}
.oo-ui-pendingElement-pending {
background-image: var(--ooui-pending-background-image);
background-size: 200%;
animation: oo-ui-pendingElement-stripes 6s linear infinite;
}
@keyframes oo-ui-pendingElement-stripes {
100% {
background-position: 100%;
}
}
.oo-ui-messageDialog-content > .oo-ui-window-foot {
outline-color: var(--ooui-interface-border);
}
.oo-ui-messageDialog-message {
color: var(--ooui-text);
}
.oo-ui-messageDialog-actions-horizontal .oo-ui-actionWidget {
border-right-color: var(--ooui-interface-border);
}
.oo-ui-messageDialog-actions-vertical .oo-ui-actionWidget {
border-bottom-color: var(--ooui-interface-border);
}
.oo-ui-processDialog-content .oo-ui-window-head,
.oo-ui-processDialog-content .oo-ui-window-foot {
outline-color: var(--ooui-interface-border);
}
.oo-ui-processDialog .oo-ui-actionWidget > .oo-ui-buttonElement-button {
border-top-color: transparent;
border-bottom-color: transparent;
}
.oo-ui-processDialog .oo-ui-actionWidget > .oo-ui-buttonElement-button:hover,
.oo-ui-processDialog .oo-ui-actionWidget > .oo-ui-buttonElement-button:active {
border-top-color: transparent;
border-bottom-color: transparent;
}
.oo-ui-processDialog .oo-ui-actionWidget:not( .oo-ui-flaggedElement-progressive ):not( .oo-ui-flaggedElement-destructive ) > .oo-ui-buttonElement-button:hover,
.oo-ui-processDialog .oo-ui-actionWidget:not( .oo-ui-flaggedElement-progressive ):not( .oo-ui-flaggedElement-destructive ) > .oo-ui-buttonElement-button:active {
border-right-color: var(--ooui-interface-border);
border-left-color: transparent;
}
.oo-ui-processDialog .oo-ui-actionWidget:not( .oo-ui-flaggedElement-progressive ):not( .oo-ui-flaggedElement-destructive ) > .oo-ui-buttonElement-button:focus {
border-color: var(--ooui-accent);
}
.oo-ui-processDialog-actions-safe .oo-ui-actionWidget > .oo-ui-buttonElement-button,
.oo-ui-processDialog-actions-other .oo-ui-actionWidget > .oo-ui-buttonElement-button {
border-right-color: var(--ooui-normal-border);
border-left-color: transparent;
}
.oo-ui-processDialog-actions-safe .oo-ui-widget-enabled.oo-ui-iconElement:not( .oo-ui-labelElement ) > .oo-ui-buttonElement-button:hover {
background-color: var(--ooui-normal--hover);
border-right-color: var(--ooui-interface-border);
}
.oo-ui-windowManager-modal > .oo-ui-dialog {
background-color: var(--ooui-window-background);
}
.oo-ui-windowManager-modal > .oo-ui-dialog > .oo-ui-window-frame {
background-color: var(--ooui-interface);
}
.oo-ui-windowManager-modal.oo-ui-windowManager-floating > .oo-ui-dialog > .oo-ui-window-frame {
border-color: var(--ooui-interface-border);
}
.oo-ui-window {
color: var(--ooui-text);
}
.oo-ui-toolbar-bar {
background-color: var(--ooui-interface);
color: var(--ooui-text);
}
.oo-ui-toolbar-position-top > .oo-ui-toolbar-bar {
border-bottom-color: var(--body-mid);
}
.oo-ui-toolbar-bar .oo-ui-bookletLayout > .oo-ui-menuLayout-menu {
border-right-color: var(--body-mid);
}
.oo-ui-tool.oo-ui-widget-enabled > .oo-ui-tool-link:hover {
background-color: var(--ooui-normal--hover);
}
.oo-ui-tool.oo-ui-widget-enabled > .oo-ui-tool-link:focus {
outline: 1px solid var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-tool.oo-ui-widget-enabled > .oo-ui-tool-link:active,
.oo-ui-tool.oo-ui-widget-enabled.oo-ui-tool-active > .oo-ui-tool-link,
.oo-ui-tool.oo-ui-widget-enabled.oo-ui-popupToolGroup-active > .oo-ui-tool-link {
background-color: var(--ooui-normal--hover);
color: var(--ooui-accent);
box-shadow: none;
}
.oo-ui-tool.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive > .oo-ui-tool-link {
background-color: var(--ooui-progressive);
}
.oo-ui-tool.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive > .oo-ui-tool-link:hover {
background-color: var(--ooui-progressive--hover);
}
.oo-ui-tool.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive > .oo-ui-tool-link:focus {
box-shadow: inset 0 0 0 1px var(--ooui-accent), inset 0 0 0 2px #fff;
}
.oo-ui-tool.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive > .oo-ui-tool-link:active,
.oo-ui-tool.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive.oo-ui-tool-active > .oo-ui-tool-link {
background-color: var(--ooui-progressive--hover);
}
.oo-ui-listToolGroup-tools .oo-ui-tool.oo-ui-widget-enabled {
background-color: var(--ooui-normal);
}
.oo-ui-listToolGroup-tools .oo-ui-tool.oo-ui-widget-enabled:hover {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
}
.oo-ui-listToolGroup-tools .oo-ui-tool-active.oo-ui-widget-enabled .oo-ui-tool-link .oo-ui-tool-title {
color: var(--ooui-progressive);
}
.oo-ui-menuToolGroup {
border-left-color: var(--body-mid);
border-right-color: var(--body-mid);
}
.oo-ui-popupToolGroup-tools {
background-color: var(--ooui-interface);
border-color: var(--body-mid);
}
.oo-ui-popupToolGroup.oo-ui-widget-enabled > .oo-ui-popupToolGroup-handle:hover {
background-color: var(--ooui-normal--hover);
}
.oo-ui-popupToolGroup.oo-ui-widget-enabled > .oo-ui-popupToolGroup-handle:focus {
outline: 1px solid var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-toolbar-actions .oo-ui-popupToolGroup.oo-ui-widget-enabled > .oo-ui-popupToolGroup-handle:hover {
border-right-color: var(--ooui-normal--hover);
}
.oo-ui-popupToolGroup-tools .oo-ui-tool.oo-ui-widget-enabled .oo-ui-tool-link:focus {
box-shadow: inset 0 0 0 2px var(--ooui-accent);
}
.oo-ui-popupToolGroup-tools .oo-ui-tool-active.oo-ui-widget-enabled .oo-ui-tool-link .oo-ui-tool-title {
color: var(--ooui-progressive);
}
.oo-ui-popupToolGroup.oo-ui-popupToolGroup-active > .oo-ui-popupToolGroup-handle {
background-color: var(--ooui-normal);
color: var(--ooui-accent);
}
.oo-ui-popupToolGroup.oo-ui-popupToolGroup-active > .oo-ui-popupToolGroup-handle:hover {
background-color: var(--ooui-normal--hover);
color: var(--ooui-accent);
}
.oo-ui-bookletLayout-outlinePanel > .oo-ui-outlineControlsWidget {
border-top-color: var(--ooui-interface-border);
}
.oo-ui-bookletLayout > .oo-ui-menuLayout-menu {
border-right-color: var(--ooui-interface-border);
}
.oo-ui-fieldLayout-disabled > .oo-ui-fieldLayout-body > .oo-ui-fieldLayout-header > .oo-ui-labelElement-label {
color: var(--ooui-disabled-text);
}
.oo-ui-panelLayout-framed {
border-color: var(--sidebar);
}
.oo-ui-icon-settings {
background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' width='20' height='20' viewBox='0 0 20 20'%3E%3Ctitle%3Esettings%3C/title%3E%3Cg transform='translate(10 10)'%3E%3Cpath id='a' d='M1.5-10h-3l-1 6.5h5m0 7h-5l1 6.5h3'/%3E%3Cuse xlink:href='%23a' transform='rotate(45)'/%3E%3Cuse xlink:href='%23a' transform='rotate(90)'/%3E%3Cuse xlink:href='%23a' transform='rotate(135)'/%3E%3C/g%3E%3Cpath d='M10 2.5a7.5 7.5 0 0 0 0 15 7.5 7.5 0 0 0 0-15v4a3.5 3.5 0 0 1 0 7 3.5 3.5 0 0 1 0-7'/%3E%3C/svg%3E");
}
.oo-ui-icon-clear {
background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 20 20'%3E%3Ctitle%3Eclear%3C/title%3E%3Cpath d='M10 0a10 10 0 1 0 10 10A10 10 0 0 0 10 0zm5.66 14.24-1.41 1.41L10 11.41l-4.24 4.25-1.42-1.42L8.59 10 4.34 5.76l1.42-1.42L10 8.59l4.24-4.24 1.41 1.41L11.41 10z'/%3E%3C/svg%3E");
}
.mw-widget-dateInputWidget-handle {
background-color: var(--ooui-input);
color: var(--ooui-text);
border-color: var(--ooui-input-border);
}
.mw-widget-dateInputWidget-calendar {
background-color: var(--ooui-interface);
}
.mw-widget-dateInputWidget.oo-ui-widget-enabled .mw-widget-dateInputWidget-handle:hover {
border-color: var(--ooui-input-border--hover);
}
.mw-widget-calendarWidget {
border-color: var(--ooui-interface-border);
}
.mw-widget-calendarWidget:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.mw-widget-calendarWidget-day,
.mw-widget-calendarWidget-day-heading {
color: var(--ooui-text);
}
.mw-widget-calendarWidget-day-additional {
color: var(--ooui-text);
opacity: 0.67;
}
.mw-widget-calendarWidget-day-today {
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.mw-widget-calendarWidget-item:hover {
background-color: var(--ooui-progressive);
}
.mw-widget-calendarWidget-item-selected {
background-color: var(--ooui-progressive--hover);
}
.mw-widgets-datetime-calendarWidget {
background-color: var(--ooui-interface);
border-color: var(--ooui-interface-border);
}
.mw-widgets-datetime-calendarWidget:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent), 0 2px 2px 0 rgba(0, 0, 0, 0.25);
}
.mw-widgets-datetime-calendarWidget-grid .mw-widgets-datetime-calendarWidget-cell.mw-widgets-datetime-calendarWidget-extra .oo-ui-buttonElement-button .oo-ui-labelElement-label {
color: var(--subtle-color);
}
.mw-widgets-datetime-calendarWidget-grid .mw-widgets-datetime-calendarWidget-cell.mw-widgets-datetime-calendarWidget-selected .oo-ui-buttonElement-button {
background-color: var(--ooui-progressive--hover);
}
.mw-widgets-datetime-dateTimeInputWidget-handle {
background-color: var(--ooui-input);
color: var(--ooui-text);
border-color: var(--ooui-input-border);
}
.mw-widgets-datetime-dateTimeInputWidget.oo-ui-widget-enabled.mw-widgets-datetime-dateTimeInputWidget-handle:hover {
border-color: var(--ooui-input-border--hover);
}
.mw-widgets-datetime-dateTimeInputWidget.oo-ui-widget-enabled:hover input,
.mw-widgets-datetime-dateTimeInputWidget.oo-ui-widget-enabled:hover textarea {
border-color: var(--ooui-input-border--hover);
}
.mw-widgets-datetime-dateTimeInputWidget.oo-ui-widget-enabled .mw-widgets-datetime-dateTimeInputWidget-editField:hover {
background-color: var(--ooui-normal);
}
.ve-activated .ve-init-mw-desktopArticleTarget-originalContent #catlinks:hover {
background: var(--ooui-normal--hover);
}
.ve-ui-overlay {
font-family: inherit;
}
.oo-ui-toolbar-position-top .ve-ui-toolbarDialog-position-above {
border-top-color: var(--body-mid);
}
.ve-ce-branchNode-blockSlug,
.ve-ce-branchNode-newSlug {
outline-color: var(--body-border);
background-color: var(--ooui-interface);
}
.ve-ui-specialCharacterPage h3 {
color: var(--byline-color);
}
.ve-ui-specialCharacterPage-character {
border-color: var(--body-mid);
}
.ve-ui-specialCharacterPage-character:hover {
border-color: var(--body-dark);
}
.ve-ce-linkAnnotation.ve-ce-annotation-active {
box-shadow: 0 0 0 1px var(--body-mid);
background: none;
}
.ve-ui-desktopContext .ve-ui-linkContextItem .ve-ui-linkContextItem-label {
border-color: var(--body-border);
}
.ve-ui-mwHelpPopupTool-version-label,
.ve-ui-mwHelpPopupTool-version-link,
.ve-ui-mwHelpPopupTool-version-date {
color: var(--byline-color);
}
.ve-ce-tableCellableNode {
border-color: var(--body-mid);
}
.ve-ce-mwReferencesListNode-muted {
color: var(--byline-color);
}
.ve-ui-mwTemplatePage-description,
.ve-ui-mwParameterPage-label,
.ve-ui-mwParameterPage-description-required,
.ve-ui-mwParameterPage-description-deprecated {
color: var(--byline-color);
}
.mw-widget-titleWidget-menu .mw-widget-titleOptionWidget-description {
color: var(--byline-color);
}
.ve-ui-mwGalleryDialog-menuLayout > .oo-ui-menuLayout-menu,
.ve-ui-mwGalleryDialog-innerMenuLayout > .oo-ui-menuLayout-menu,
.ve-ui-mwGalleryDialog .ve-ui-mwGalleryDialog-image-container,
.ve-ui-targetWidget {
border-color: var(--body-border);
}
.ve-ui-targetWidget:not(.oo-ui-pendingElement-pending) {
background-color: var(--body-main);
}
.ve-ui-mwSaveDialog {
color: var(--ooui-text);
}
.ve-ui-mwSaveDialog-options {
background-color: var(--ooui-interface);
border-color: var(--body-border);
}
.ve-ui-mwSaveDialog-summary {
background-color: var(--ooui-input);
}
.ve-ui-mwSaveDialog-editSummary-count {
border-color: var(--body-border);
}
.ve-ui-mwSaveDialog-license {
color: var(--byline-color);
}
.ve-ui-mwReferenceContextItem-muted {
color: var(--byline-color);
}
.ve-ui-mwNoticesPopupTool-items > div:not(:first-child),
.ve-ui-mwHelpPopupTool-item:not(:first-child) {
border-color: var(--body-border);
}
.ve-ui-mwTransclusionOutlineControlsWidget {
background-color: var(--ooui-interface);
border-top-color: var(--body-border);
}
.ve-ui-mwTransclusionOutlineTemplateWidget-sticky {
background-color: var(--ooui-interface);
}
.ve-ui-mwTransclusionOutlineTemplateWidget .ve-ui-mwTransclusionOutlineParameterWidget.oo-ui-optionWidget-highlighted {
color: var(--ooui-text);
}
.ve-ui-mwTransclusionOutlineTemplateWidget-no-template-parameters {
color: var(--subtle-color);
}
.ve-ui-mwParameterPage-undocumentedLabel {
color: var(--subtle-color);
}
.ve-ui-mwTwoPaneTransclusionDialogLayout > .oo-ui-menuLayout-menu {
border-right: var(--body-border);
}
.ve-ui-mwParameterPage-doc-required,
.ve-ui-mwParameterPage-doc-deprecated,
.ve-ui-mwParameterPage-inlineDescription .ve-ui-mwParameterPage-doc-example {
color: var(--byline-color);
}
.ve-ui-expandableContent-toggle {
background-color: var(--ooui-interface);
}
.ve-ui-expandableContent-fade {
background: linear-gradient(to right, rgba(255, 255, 255, 0) 0, var(--ooui-interface) 90%);
}
.ve-ui-commandHelpDialog-shortcut > kbd,
.ve-ui-commandHelpDialog-sequence > kbd {
background-color: var(--keypress-background);
color: var(--keypress-color);
border-color: var(--keypress-border);
box-shadow: none;
text-shadow: none;
}
.ve-init-mw-desktopArticleTarget-toolbarPlaceholder-floating .ve-init-mw-desktopArticleTarget-toolbarPlaceholder-bar {
background: var(--ooui-interface);
}
.ve-init-mw-desktopArticleTarget-toolbarPlaceholder-bar {
border-bottom-color: var(--body-mid);
}
figure[typeof~='mw:File/Thumb'],
figure[typeof~='mw:File/Frame'],
figure[typeof~='mw:Image/Thumb'],
figure[typeof~='mw:Video/Thumb'],
figure[typeof~='mw:Image/Frame'],
figure[typeof~='mw:Video/Frame'] {
border: none;
background-color: var(--thumb-bg);
}
figure[typeof~='mw:File/Thumb'] > a:first-child > *:first-child:not( .mw-broken-media ),
figure[typeof~='mw:File/Frame'] > a:first-child > *:first-child:not( .mw-broken-media ),
figure[typeof~='mw:Image/Thumb'] > a:first-child > *:first-child:not( .mw-broken-media ),
figure[typeof~='mw:Video/Thumb'] > a:first-child > *:first-child:not( .mw-broken-media ),
figure[typeof~='mw:Image/Frame'] > a:first-child > *:first-child:not( .mw-broken-media ),
figure[typeof~='mw:Video/Frame'] > a:first-child > *:first-child:not( .mw-broken-media ) {
border: none;
background: var(--thumb-bg);
}
figure[typeof~='mw:File/Thumb'] > figcaption,
figure[typeof~='mw:File/Frame'] > figcaption,
figure[typeof~='mw:Image/Thumb'] > figcaption,
figure[typeof~='mw:Video/Thumb'] > figcaption,
figure[typeof~='mw:Image/Frame'] > figcaption,
figure[typeof~='mw:Video/Frame'] > figcaption {
border: none;
background-color: var(--thumb-caption-bg);
padding: 4px 6px;
}
:root {
--infobox-text-color: var(--text-color);
}
ol.references,
.reflist {
font-size: 90%;
}
.reflist {
list-style-type: decimal;
}
.reflist .references {
font-size: 100%;
list-style-type: inherit;
}
.reflist-lower-alpha {
list-style-type: lower-alpha;
}
ol.references li:target,
sup.reference:target {
background-color: var(--body-light);
}
.hideQuotes .refhide {
display: none;
}
:root {
--messagebox-obsolete-background: #cfcfcf;
--messagebox-obsolete-border: #464646;
--messagebox-obsolete-color: var(--text-color);
--messagebox-obsolete-link-color: #6c6c6c;
--messagebox-info-background: #ebebeb;
--messagebox-info-border: #898989;
--messagebox-info-color: var(--text-color);
--messagebox-info-link-color: #6c6c6c;
--messagebox-action-background: #c7e8fa;
--messagebox-action-border: #0b5884;
--messagebox-action-color: var(--text-color);
--messagebox-action-link-color: #03436b;
--messagebox-warn-background: #dfc0ba;
--messagebox-warn-border: #861c10;
--messagebox-warn-color: var(--text-color);
--messagebox-warn-link-color: #8e221a;
--messagebox-safe-background: #d8f0d3;
--messagebox-safe-border: #1b8408;
--messagebox-safe-color: var(--text-color);
--messagebox-safe-link-color: #1b8408;
--messagebox-disambig-background: #ebebeb;
--messagebox-disambig-border: #898989;
--messagebox-disambig-color: var(--text-color);
--messagebox-disambig-link-color: #6c6c6c;
--messagebox-discord-background: #5865f2;
--messagebox-discord-border: #4c57d0;
--messagebox-discord-link-color: #d2e5fc;
}
.mw-message-box,
.mw-message-box-error,
.mw-message-box-warning,
.mw-message-box-success,
.usermessage {
color: var(--text-color);
}
.messagebox {
width: 65%;
margin: 0.5em auto;
border-left: 15px solid;
border-color: var(--body-dark);
background-color: var(--body-light);
box-sizing: border-box;
}
.messagebox.obsolete {
background-color: var(--messagebox-obsolete-background);
border-color: var(--messagebox-obsolete-border);
color: var(--messagebox-obsolete-color);
}
.messagebox.obsolete a,
.messagebox.obsolete a:visited,
.messagebox.obsolete a:active {
color: var(--messagebox-obsolete-link-color);
}
.messagebox.info {
background-color: var(--messagebox-info-background);
border-color: var(--messagebox-info-border);
color: var(--messagebox-info-color);
}
.messagebox.info a,
.messagebox.info a:visited,
.messagebox.info a:active {
color: var(--messagebox-info-link-color);
}
.messagebox.action {
background-color: var(--messagebox-action-background);
border-color: var(--messagebox-action-border);
color: var(--messagebox-action-color);
}
.messagebox.action a,
.messagebox.action a:visited,
.messagebox.action a:active {
color: var(--messagebox-action-link-color);
}
.messagebox.warn {
background-color: var(--messagebox-warn-background);
border-color: var(--messagebox-warn-border);
color: var(--messagebox-warn-color);
}
.messagebox.warn a,
.messagebox.warn a:visited,
.messagebox.warn a:active {
color: var(--messagebox-warn-link-color);
}
.messagebox.safe {
background-color: var(--messagebox-safe-background);
border-color: var(--messagebox-safe-border);
color: var(--messagebox-safe-color);
}
.messagebox.safe a,
.messagebox.safe a:visited,
.messagebox.safe a:active {
color: var(--messagebox-safe-link-color);
}
.messagebox.disambig {
background-color: var(--messagebox-disambig-background);
border-color: var(--messagebox-disambig-border);
color: var(--messagebox-disambig-color);
}
.messagebox.disambig a,
.messagebox.disambig a:visited,
.messagebox.disambig a:active {
color: var(--messagebox-disambig-link-color);
}
.messagebox.discord {
background-color: var(--messagebox-discord-background);
border-color: var(--messagebox-discord-border);
color: #fff;
}
.messagebox.discord a,
.messagebox.discord a:visited,
.messagebox.discord a:active {
color: var(--messagebox-discord-link-color);
}
.messagebox.discord a.external,
.messagebox.discord a:visited.external,
.messagebox.discord a:active.external {
font-style: italic;
}
.messagebox.stub {
width: 40%;
}
.messagebox.hasdialogue {
padding: 0 10px;
width: auto;
}
:root {
--byline-arrow-filter: invert(29%) sepia(0%) saturate(376%) hue-rotate(172deg) brightness(87%) contrast(80%);
--tile-border-color: #cabe9b;
--tile-background-color: #f9f3eb;
--tile-link-button-color: #f5e9db;
--tile-link-button-highlight-color: #dfccb0;
--tile-dark-color: #fff;
--tile-dark-bg: #5d6773;
--tile-dark-link-color: #ccc;
--tile-dark-byline-color: rgba(255, 255, 255, 0.7);
--tile-dark-header-color: #fff;
}
.tile {
background: var(--tile-background-color);
border: 1px solid var(--tile-border-color);
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
padding: 1.5em 2em 1em;
max-width: 40em;
}
.tile h2 {
font-size: 1.4em;
font-weight: bold;
border: none;
margin: 0 0 0.4em;
}
.tile .byline + h2 {
margin-top: -0.5em;
}
.tile.dark {
color: var(--tile-dark-color);
background: var(--tile-dark-bg);
border: none;
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.3);
}
.tile.dark h2 {
color: var(--tile-dark-header-color);
}
.tile.dark a {
color: var(--tile-dark-link-color);
}
.tile.dark .byline {
color: var(--tile-dark-byline-color);
}
.byline {
font-size: 0.9em;
color: var(--byline-color);
}
.byline a {
color: var(--byline-color);
}
.tile-row {
display: flex;
flex-flow: row wrap;
margin-bottom: 1em;
}
.tile-halves {
display: flex;
flex-flow: row wrap;
border: 1px solid var(--tile-border-color);
background: var(--tile-background-color);
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
}
.tile-halves h2 {
font-size: 1.4em;
font-weight: bold;
border: none;
margin: 0 0 0.4em;
}
.tile-halves .byline + h2 {
margin-top: -0.5em;
}
.tile-top {
width: 100%;
padding: 1.3rem 1.5rem 0.6rem;
}
.tile-top.tile-image {
display: flex;
align-items: center;
background-color: var(--byline-color);
overflow: hidden;
padding: 0;
height: 13vw;
max-height: 12em;
transition: 0.4s ease-out;
}
.tile-halves:hover .tile-top.tile-image img {
transform: scale(1.1);
transition: 0.5s ease-out;
}
.tile-top.tile-image a {
width: 100%;
}
.tile-top.tile-image img {
width: 100%;
object-fit: cover;
max-height: 200px;
transition: 0.4s ease-out;
}
.tile-bottom {
background: var(--tile-background-color);
border-top: 1px solid var(--tile-border-color);
width: 100%;
padding: 1rem 1.5rem 0.6rem;
}
.tile-bottom.link-button {
align-self: flex-end;
padding: 0;
}
.tile-bottom.link-button a {
display: block;
text-align: center;
padding: 0.75em 1.5em 0.8em;
text-decoration: none;
}
.tile-bottom.read-more {
background: var(--tile-link-button-color);
transition: 0.3s ease-out;
}
.tile-bottom.read-more a {
color: var(--byline-color);
font-weight: bold;
text-align: right;
}
.tile-bottom.read-more:hover {
background: var(--tile-link-button-highlight-color);
}
.tile-bottom.read-more:hover .arrow {
transform: translateX(50%);
}
.tile-bottom.read-more .arrow {
filter: var(--byline-arrow-filter);
margin-left: 0.4em;
transition: 0.3s ease-out;
}
body.page-Main_Page.action-view .catlinks,
body.page-Main_Page.action-view #contentSub,
body.page-Main_Page.action-view #firstHeading,
body.page-Main_Page.action-view #siteNotice {
display: none;
}
body.page-Main_Page .mw-parser-output {
max-width: 75em;
margin: 0 auto;
}
body.page-Main_Page.action-view .catlinks,
body.page-Main_Page.action-view #contentSub,
body.page-Main_Page.action-view #siteNotice {
display: none;
}
.mainpage-header {
display: flex;
margin: 2.6em 1.75em 1.5em;
}
.mainpage-header .header-intro {
flex: 2;
}
.mainpage-header .header-intro h1 {
font-size: 2.5em;
font-weight: bold;
border: none;
margin: 0 0 0.15em;
}
.mainpage-header .header-intro p {
font-size: 1.1em;
line-height: 1.7em;
}
.mainpage-header .header-stats {
flex: 1;
display: flex;
justify-content: center;
align-items: center;
margin-top: -1em;
}
.mainpage-body {
display: grid;
grid-template-areas: "event event event" "update update update" "content content content" "left left right";
gap: 0.9rem;
grid-template-columns: repeat(3, 1fr);
}
.mainpage-body h2 a {
color: var(--text-color);
}
.mainpage-body .tile {
padding-left: 1.75em;
padding-right: 1.75em;
max-width: 100%;
}
.mainpage-body .tile-row {
width: 100%;
margin-bottom: 0;
}
.mainpage-body .tile-row {
display: grid;
gap: 0.9rem;
}
.mainpage-left {
grid-area: left;
flex: 2;
display: flex;
flex-flow: column wrap;
}
.mainpage-left > * {
margin: 0 0 0.9rem;
}
.mainpage-right {
grid-area: right;
flex: 1;
display: flex;
flex-flow: column wrap;
}
.mainpage-right > * {
margin: 0 0 0.9rem;
}
.arrow {
background: url('filepath://White-chevron.svg') no-repeat;
display: inline-block;
height: 0.7rem;
width: 0.45rem;
vertical-align: middle;
}
.arrow.dark {
filter: invert(80%);
}
.mainpage-contents {
grid-area: content;
grid-template-columns: repeat(6, 1fr);
}
.mainpage-contents .tile-halves {
flex: 1;
}
.mainpage-contents .tile-top {
height: 4.5rem;
position: relative;
}
.mainpage-contents h2 {
margin: 0;
padding: 0;
}
.mainpage-contents .tile-bottom.link-button a {
padding: 0.75em 0.2em;
}
.popular-pages ul {
display: grid;
grid-template-columns: repeat(3, 1fr);
grid-gap: 0.6em;
margin: 1em 0 0.7em 0;
}
.mp-popular-page-light {
display: flex;
align-items: center;
background-color: var(--button-background);
transition: 100ms;
}
.mp-popular-page-light a {
flex: 1;
display: block;
color: #fff;
font-weight: bold;
text-align: center;
text-decoration: none;
padding: 0.7em 1em;
}
.mp-popular-page-light:hover {
filter: brightness(115%);
transition: 100ms;
}
.mainpage-discord {
border: none;
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.3);
}
.mainpage-discord .tile-top {
display: flex;
align-items: center;
background: #5865f2;
padding: 1em 1.75em;
}
.mainpage-discord .tile-top a {
flex: 1;
position: relative;
text-decoration: none;
}
.mainpage-discord .tile-top a:hover .arrow {
transform: translateX(50%);
}
.mainpage-discord .tile-bottom {
background: #525ee0;
border: none;
padding: 1em 1.75em;
}
.mainpage-discord .tile-bottom p {
color: #fff;
font-weight: bold;
font-size: 0.9em;
text-align: center;
text-transform: uppercase;
letter-spacing: 0.03em;
margin: 0;
}
.mainpage-discord .partner-icon {
margin-right: 0.75em;
}
.mainpage-discord .server-name {
color: #fff;
font-weight: bold;
font-size: 1.25em;
margin: 0.5em 0 -0.15em;
}
.mainpage-discord .server-tagline {
color: rgba(255, 255, 255, 0.9);
margin-bottom: 0.5em;
}
.mainpage-discord .arrow {
position: absolute;
top: calc(50% - .5em);
right: 0;
height: 1em;
width: 0.7em;
background-size: 0.7em 1em;
transition: 0.3s ease-out;
}
.mainpage-editing {
border: none;
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.3);
}
.mainpage-editing .tile-top {
background: #438ab5;
}
.mainpage-editing .tile-bottom {
background: #3980ab;
border: none;
padding: 0.8rem 1.5rem 0.4rem;
}
.mainpage-editing h2,
.mainpage-editing a {
color: #fff;
}
.mainpage-editing p {
color: rgba(255, 255, 255, 0.9);
}
.mainpage-editing ul {
list-style-image: url('filepath://Transparent-chevron.svg');
}
@media only screen and (max-width: 1200px) {
.mainpage-contents {
grid-template-columns: repeat(3, 1fr);
}
}
@media only screen and (max-width: 1000px) {
.mainpage-body {
grid-template-areas: "event event event" "update update update" "content content content" "left left left" "right right right";
}
.mainpage-recent-updates {
grid-template-columns: repeat(2, 1fr);
}
.mainpage-recent-updates .tile-halves:last-child {
display: none;
}
.mainpage-recent-updates .tile-halves:hover .tile-top img {
transform: scale(1.04);
}
.mainpage-recent-updates .tile-top {
height: 18vw;
min-height: 9em;
}
.mainpage-header .header-stats {
display: none;
}
.mainpage-left > *:last-child,
.mainpage-right > *:last-child {
margin-bottom: 0;
}
.popular-pages ul {
grid-template-columns: repeat(2, 1fr);
}
}
@media only screen and (max-width: 720px) {
.mainpage-recent-updates {
grid-template-columns: none;
}
.mainpage-recent-updates .tile-halves:last-child {
display: flex;
}
.mainpage-contents {
grid-template-columns: repeat(2, 1fr);
}
}
.mw-prefs-buttons {
background-color: var(--body-main);
border-top-color: var(--body-border);
box-shadow: none;
}
.mw-prefs-tabs-wrapper.oo-ui-panelLayout-framed,
.mw-prefs-tabs > .oo-ui-menuLayout-content > .oo-ui-indexLayout-stackLayout > .oo-ui-tabPanelLayout {
border-color: var(--body-border);
}
.mw-htmlform-ooui .mw-htmlform-matrix tbody tr:nth-child(even) td {
background-color: var(--body-light);
}
.mw-htmlform-ooui .mw-htmlform-matrix tbody tr:hover td {
background-color: var(--body-mid);
}
:root {
--rc-positive-color: #407813;
--rc-negative-color: #b41e0f;
}
.mw-plusminus-pos {
color: var(--rc-positive-color);
}
.mw-plusminus-neg {
color: var(--rc-negative-color);
}
.client-js .mw-recentchanges-toplinks:not(.mw-recentchanges-toplinks-collapsed) {
border-color: var(--body-border);
background-color: var(--body-light);
border-radius: 2px;
}
.mw-rcfilters-ui-filterTagMultiselectWidget-wrapper-content-title {
color: var(--text-color);
}
.mw-rcfilters-ui-filterTagMultiselectWidget-emptyFilters {
color: var(--byline-color);
}
.mw-rcfilters-ui-filterTagMultiselectWidget.oo-ui-widget-enabled .oo-ui-tagMultiselectWidget-handle {
background-color: var(--ooui-interface);
border-color: var(--ooui-interface-border);
}
.mw-rcfilters-ui-filterTagMultiselectWidget-views-select-widget.oo-ui-widget {
border-color: var(--ooui-interface-border);
}
.mw-rcfilters-collapsed .mw-rcfilters-ui-filterTagMultiselectWidget {
border-bottom-color: var(--ooui-interface-border);
}
.mw-rcfilters-ui-menuSelectWidget-footer {
background-color: var(--ooui-interface);
border-color: var(--ooui-interface-border);
}
.mw-rcfilters-ui-viewSwitchWidget label.oo-ui-labelWidget {
color: var(--byline-color);
}
.mw-rcfilters-ui-tagItemWidget-popup-content {
color: var(--ooui-text);
}
.mw-changeslist-legend,
.mw-rcfilters-ui-changesListWrapperWidget .mw-changeslist-legend {
background-color: var(--body-light);
border-color: var(--body-dark);
}
.mw-rcfilters-ui-changesListWrapperWidget-previousChangesIndicator {
border-color: var(--sidebar);
}
.client-js .mw-changeslist ul,
.client-js .mw-changeslist table.mw-enhanced-rc {
margin-left: 0;
}
.mw-rcfilters-ui-watchlistTopSectionWidget-separator {
border-color: var(--sidebar);
}
.mw-rcfilters-ui-itemMenuOptionWidget-header {
border-bottom-color: var(--ooui-interface);
background-color: var(--ooui-interface-border);
}
.mw-rcfilters-ui-itemMenuOptionWidget:not(:last-child):not(.mw-rcfilters-ui-itemMenuOptionWidget-identifier-talk) {
border-bottom-color: var(--ooui-normal-border);
}
.mw-rcfilters-ui-itemMenuOptionWidget-label-title,
.mw-rcfilters-ui-itemMenuOptionWidget-label-desc {
color: var(--text-color);
}
.mw-rcfilters-ui-filterMenuOptionWidget.oo-ui-flaggedElement-muted:not(.oo-ui-optionWidget-selected) {
background-color: var(--body-main);
}
.mw-rcfilters-ui-filterMenuOptionWidget.oo-ui-flaggedElement-muted .mw-rcfilters-ui-itemMenuOptionWidget-label-title,
.mw-rcfilters-ui-filterMenuOptionWidget.oo-ui-flaggedElement-muted .mw-rcfilters-ui-itemMenuOptionWidget-label-desc {
color: var(--subtle-color);
}
.mw-rcfilters-ui-filterMenuSectionOptionWidget {
background-color: var(--body-mid);
}
.mw-rcfilters-ui-filterMenuSectionOptionWidget-header-title.oo-ui-labelElement-label {
color: var(--ooui-text);
}
.mw-rcfilters-ui-filterMenuHeaderWidget-title {
color: var(--ooui-text);
}
.mw-rcfilters-ui-filterMenuHeaderWidget-header {
border-bottom-color: var(--ooui-interface-border);
background-color: var(--ooui-interface);
}
.mw-rcfilters-ui-itemMenuOptionWidget-view-namespaces {
border-top-color: var(--ooui-interface-border);
}
.mw-rcfilters-ui-datePopupWidget {
border-color: var(--ooui-interface-border);
}
.mw-rcfilters-ui-datePopupWidget .mw-rcfilters-ui-valuePickerWidget-title {
color: var(--byline-color);
}
.mw-rcfilters-ui-savedLinksListItemWidget-label {
color: var(--ooui-accent);
}
.client-js .mw-changeslist.mw-rcfilters-ui-changesListWrapperWidget-highlighted ul,
.client-js .mw-changeslist.mw-rcfilters-ui-changesListWrapperWidget-highlighted table.mw-enhanced-rc {
margin-left: 1.5em;
}
.page-Special_CreateAccount .mw-ui-container,
.page-Special_UserLogin .mw-ui-container {
max-width: 64rem;
margin: 0 auto;
}
.mw-number-text {
color: var(--byline-color);
}
.mw-body-content .mw-number-text h3 {
color: var(--text-color);
}
#mw-indicator-mw-helplink a {
background: none;
padding: 0;
display: flex;
align-items: center;
}
#mw-indicator-mw-helplink a::before {
content: '';
margin-right: 5px;
-webkit-mask: url("/resources/src/mediawiki.helplink/images/helpNotice.svg?46d34") no-repeat 50% 50% / contain;
mask: url("/resources/src/mediawiki.helplink/images/helpNotice.svg?46d34") no-repeat 50% 50% / contain;
background: var(--text-color);
height: 20px;
width: 20px;
}
.results-info {
color: inherit;
}
.mw-search-profile-tabs {
background-color: var(--body-mid);
border-color: transparent;
}
.search-types .current a {
color: inherit;
}
#mw-searchoptions {
background-color: var(--body-mid);
border-color: transparent;
}
#mw-searchoptions .divider {
border-color: var(--body-border);
}
#mw-searchoptions h4 {
font-family: inherit;
}
#mw-searchoptions .oo-ui-labelElement:nth-of-type(odd) {
font-weight: bold;
}
.searchresult {
line-height: 1.5;
}
.searchalttitle,
#mw-search-interwiki li {
font-size: 90%;
}
.mw-search-result-data {
color: var(--byline-color);
}
.page-Special_ListFiles a.image img {
width: inherit;
height: inherit;
}
.page-Special_ListFiles .TablePager_col_thumb {
text-align: center;
}
#editcount table[border="1"] {
background-color: var(--body-main) !important;
border-color: var(--wikitable-border) !important;
margin-top: 0.5em;
}
#editcount table[border="1"] th,
#editcount table[border="1"] td {
padding: 0.2em 0.4em;
}
#editcount table[border="1"] th {
background-color: var(--wikitable-header-bg);
border: 1px solid var(--wikitable-border);
}
#editcount table[border="1"] td {
border: 1px solid var(--wikitable-border);
}
#editcount table[border="1"] tr:nth-child(odd) {
background-color: var(--body-light);
}
.mw-echo-ui-notificationBadgeButtonPopupWidget-popup > .oo-ui-popupWidget-popup .mw-echo-ui-placeholderItemWidget {
background-color: inherit;
}
table.mw-interwikitable.body td.mw-interwikitable-local-yes {
background-color: var(--table-yes-background);
color: var(--table-yes-color);
}
.mw-protectedpages-unknown {
color: var(--byline-color);
}
.watchlistredir,
.allpagesredirect {
font-style: italic;
}
.allpagesredirect:after {
color: var(--byline-color);
content: " (redirect)";
}
.mw-apisandbox-toolbar {
background: var(--body-main);
}
.oo-ui-menuOptionWidget .mw-apisandbox-flag {
color: var(--byline-color);
}
tr.mw-abusefilter-list-disabled,
tr.mw-abusefilter-list-disabled td {
color: var(--byline-color);
}
table.mw-abuselog-details {
background: var(--wikitable-bg);
border-color: var(--wikitable-border);
}
table.mw-abuselog-details th {
background: var(--wikitable-header-bg);
}
table.mw-abuselog-details th,
table.mw-abuselog-details td {
border-color: var(--wikitable-border);
}
.mw-abusefilter-log-hidden-entry {
color: var(--subtle-color);
}
body td.mw-abusefilter-history-changed {
background: var(--table-no-background);
}
div.mw-abusefilter-editor,
#mw-abusefilter-warn-preview,
#mw-abusefilter-disallow-preview {
border-color: var(--ooui-input-border);
}
.mw-destfile-warning {
border-color: var(--warningbox-border);
color: var(--text-color);
background-color: var(--warningbox-bg);
}
span.fileinput-button {
background-color: var(--ooui-normal);
border-color: var(--ooui-normal-border);
color: var(--ooui-text);
}
ul.fileupload-results li.ful-success {
background-color: var(--successbox-bg);
}
ul.fileupload-results li.ful-success a {
color: var(--link-color);
}
ul.fileupload-results li.ful-error {
background-color: var(--errorbox-bg);
}
#t-print,
#t-permalink {
display: none;
}
#filetoc {
border-radius: 2px;
background: var(--body-mid);
border-color: transparent;
margin: 0.5em auto;
text-align: center;
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
}
li.gallerybox div.thumb {
border: none;
background-color: var(--thumb-bg);
}
.smwfact {
display: none;
}
.list-header {
background-color: var(--body-mid);
color: inherit;
}
.editOptions {
color: var(--text-color);
background-color: var(--sourceeditor-background-secondary);
border-color: var(--sourceeditor-border);
}
.mw-json th,
.mw-json td {
border-color: var(--wikitable-border);
}
.mw-json td {
background: var(--wikitable-bg);
}
.mw-json th {
background: var(--wikitable-header-bg);
}
f73be4e5a028942cd22f45f1b4dce55b6b749b79
Trade
0
157
286
2024-03-22T15:42:12Z
Jayden
3
Jayden moved page [[Trade]] to [[Trading]]
wikitext
text/x-wiki
#REDIRECT [[Trading]]
3ac6668e21947f55c316a2cbe7909f231910234e
Bs
0
158
287
2024-03-22T15:42:31Z
Jayden
3
Redirected page to [[Brighter Shores]]
wikitext
text/x-wiki
#REDIRECT [[Brighter Shores]]
d29839506a6d53c11083697d350097bac95fb0d8
Fen
0
159
288
2024-03-22T15:42:45Z
Jayden
3
Redirected page to [[Fen Research]]
wikitext
text/x-wiki
#REDIRECT [[Fen Research]]
e511993f7283f332eaa2303076cafbd1c6a49df4
Andrew
0
160
289
2024-03-22T15:42:54Z
Jayden
3
Redirected page to [[Andrew Gower]]
wikitext
text/x-wiki
#REDIRECT [[Andrew Gower]]
e3f74894df108a8d50d48f94f79b3df5a5ff4787
User:InvalidCards
2
161
290
2024-03-22T15:43:26Z
InvalidCards
4
Created page with "{{MessageBox |class = construction |img = [[File:Newcomer map screen.png|40px|link=|center]] |This {{PageType}} is about a recent addition to the game. |2=Due to the recent addition of this content, most information is still missing.<br/>Please <span class="plainlinks">[{{fullurl:{{FULLPAGENAME}}|action=edit}} edit this page]</span> to add more information about it. }}<includeonly>{{#if:{{{nocat|}}}||[[Category:Articles under construction]]}}</includeonly><noinclude>{{/d..."
wikitext
text/x-wiki
{{MessageBox
|class = construction
|img = [[File:Newcomer map screen.png|40px|link=|center]]
|This {{PageType}} is about a recent addition to the game.
|2=Due to the recent addition of this content, most information is still missing.<br/>Please <span class="plainlinks">[{{fullurl:{{FULLPAGENAME}}|action=edit}} edit this page]</span> to add more information about it.
}}<includeonly>{{#if:{{{nocat|}}}||[[Category:Articles under construction]]}}</includeonly><noinclude>{{/doc}}</noinclude>
306ecb73a2390c56474f11a6116141e0300bdfeb
292
290
2024-03-22T15:43:59Z
InvalidCards
4
wikitext
text/x-wiki
{{MessageBox
|class = construction
|img = funny face here
|This page is about a recent addition to the game.
|2=Due to the recent addition of this content, most information is still missing.<br/>Please <span class="plainlinks">[{{fullurl:{{FULLPAGENAME}}|action=edit}} edit this page]</span> to add more information about it.
}}
27f292d5736c1ef2abef678ad215e92a63be8dbe
Skills
0
162
291
2024-03-22T15:43:59Z
Jayden
3
Redirected page to [[Professions]]
wikitext
text/x-wiki
#REDIRECT [[Professions]]
f560803d1539b7a4296fd0acfc621a5efb7924d3
Skill
0
163
293
2024-03-22T15:44:05Z
Jayden
3
Redirected page to [[Professions]]
wikitext
text/x-wiki
#REDIRECT [[Professions]]
f560803d1539b7a4296fd0acfc621a5efb7924d3
Profession
0
164
294
2024-03-22T15:44:09Z
Jayden
3
Redirected page to [[Professions]]
wikitext
text/x-wiki
#REDIRECT [[Professions]]
f560803d1539b7a4296fd0acfc621a5efb7924d3
Template:Premium Pass
10
165
295
2024-03-22T15:47:00Z
Jayden
3
Created page with "{{Navbox |name = Premium Pass |title = [[Premium Pass]] |gtitle1 = Locations |group1 = * [[Mine of Mantuban]] * [[Crenopolis]] |gtitle2 = Other |group2 = * [[Trading]] }}{{Ctg|Premium Pass}}"
wikitext
text/x-wiki
{{Navbox
|name = Premium Pass
|title = [[Premium Pass]]
|gtitle1 = Locations
|group1 =
* [[Mine of Mantuban]]
* [[Crenopolis]]
|gtitle2 = Other
|group2 =
* [[Trading]]
}}{{Ctg|Premium Pass}}
9d48439f91582147a1fca55475387c1892f22f1d
Mine of Mantuban
0
74
297
241
2024-03-22T15:47:22Z
Jayden
3
wikitext
text/x-wiki
'''Mine of Mantuban''' is a [[location]] that can be accessed by [[player]]s who purchase the [[Premium Pass]].
{{Premium Pass}}
[[Category:Locations]]
3e9028e410a0d00267b21684e7e96958bd44d162
Crenopolis
0
75
298
201
2024-03-22T15:47:30Z
Jayden
3
wikitext
text/x-wiki
'''Crenopolis''' is a [[location]] that can be accessed by [[player]]s who purchase the [[Premium Pass]].
{{Premium Pass}}
[[Category:Locations]]
440a8e701742d5c8e5c26db69f7eb584dddb9f3f
Category:Premium Pass
14
166
300
2024-03-22T15:48:04Z
Jayden
3
Created page with "{{Categoryheader|pages|[[Premium Pass]]}}"
wikitext
text/x-wiki
{{Categoryheader|pages|[[Premium Pass]]}}
c6af75507c6b0373ce267ad0a7d9134424dd8163
301
300
2024-03-22T15:48:32Z
Jayden
3
wikitext
text/x-wiki
{{Categoryheader|pages|[[Premium Pass]]}}
{{Ctg|Community}}
8aa3a11dd77e3b943a1c7a9ca63a952aef06cc8a
303
301
2024-03-22T15:48:44Z
Jayden
3
oops
wikitext
text/x-wiki
{{Categoryheader|pages|[[Premium Pass]]}}
[[Category:Community]]
084c9ac1a11733dabcad5d024bd600e044a9aed4
Category:Message box templates
14
167
302
2024-03-22T15:48:33Z
InvalidCards
4
Created page with "This category contains templates that make use of a message box, either through [[Template:MessageBox]] or through some other means of using the CSS class <code>messagebox</code>. [[Category:Transclusion templates]]"
wikitext
text/x-wiki
This category contains templates that make use of a message box, either through [[Template:MessageBox]] or through some other means of using the CSS class <code>messagebox</code>.
[[Category:Transclusion templates]]
bcb895d1ede4e6b2214499a9770c2043147a7ad1
Player
0
168
304
2024-03-22T15:54:00Z
Jayden
3
Created page with "'''Players''' are human-controlled characters in [[Brighter Shores]]. They have the ability to explore the world, train [[professions]], pick a [[class]], and more. Players can play the game for free, but purchasing a [[Premium Pass]] will allow them to access more content. Each player has a character name, which is suffixed with a hash and a series of numbers. Free-to-play players cannot change their character name after creation, but Premium Pass owners are able to se..."
wikitext
text/x-wiki
'''Players''' are human-controlled characters in [[Brighter Shores]]. They have the ability to explore the world, train [[professions]], pick a [[class]], and more.
Players can play the game for free, but purchasing a [[Premium Pass]] will allow them to access more content. Each player has a character name, which is suffixed with a hash and a series of numbers. Free-to-play players cannot change their character name after creation, but Premium Pass owners are able to set a unique character name (without a suffix) and change their name at any time.
[[Category:Community]]
52daf81ebc995dbf2207c87676d474da25700e69
Category:Games
14
170
306
2024-03-22T15:55:09Z
Jayden
3
Created page with "{{Categoryheader|pages and subcategories|games}}"
wikitext
text/x-wiki
{{Categoryheader|pages and subcategories|games}}
176f4b21d547f8ce8734ed6b5e80447e2dd64994
Factions
0
72
307
203
2024-03-22T15:55:22Z
Jayden
3
Jayden moved page [[Class]] to [[Classes]]
wikitext
text/x-wiki
'''Classes''' in [[Brighter Shores]] allow the [[player]] to specialise in using a specific [[combat]] style.
==Classes==
* The [[Cryoknight]] class is focused on melee combat, using weapons like [[sword]]s alongside a [[shield]]
* [[Guardian]]s use ranged combat, preferring to wield weapons like [[crossbow]]s
* The [[Hammermage]] class fights using a mix of melee and magic
[[Category:Class|#]]
dda9a88b53730be54b840eebfd527eaa78dd46b7
332
307
2024-03-22T16:11:51Z
Jayden
3
wikitext
text/x-wiki
'''Classes''' in [[Brighter Shores]] allow the [[player]] to specialise in using a specific [[combat]] style.
==Classes==
* The [[Cryoknight]] class is focused on melee combat, using weapons like [[sword]]s alongside a [[shield]]
* [[Guardian]]s use ranged combat, preferring to wield weapons like [[crossbow]]s
* The [[Hammermage]] class fights using a mix of melee and magic
{{Classes}}
8bc030599da617752f40f704fed26994cd691410
Class
0
171
308
2024-03-22T15:55:22Z
Jayden
3
Jayden moved page [[Class]] to [[Classes]]
wikitext
text/x-wiki
#REDIRECT [[Classes]]
63d5f985fa34fe7bb3bbee5984949bb4a5b603e1
Template:PageType
10
172
309
2024-03-22T15:55:24Z
InvalidCards
4
Created page with "<includeonly>{{#switch:{{NAMESPACE:{{FULLPAGENAME}}}} <noinclude> Regular pages </noinclude> |=article |User=user page |Brighter Shores Wiki=project page |File=image |Template=template |Help=help page |Category=category |Property=property |Module=module |Gadget=gadget |Gadget definition=gadget definition <noinclude> Talk pages </noinclude> |Talk=talk page |User talk=talk page |Brighter Shores Wiki talk=talk page |File talk=talk page |Template talk=talk page |Help talk=ta..."
wikitext
text/x-wiki
<includeonly>{{#switch:{{NAMESPACE:{{FULLPAGENAME}}}}
<noinclude> Regular pages </noinclude>
|=article
|User=user page
|Brighter Shores Wiki=project page
|File=image
|Template=template
|Help=help page
|Category=category
|Property=property
|Module=module
|Gadget=gadget
|Gadget definition=gadget definition
<noinclude> Talk pages </noinclude>
|Talk=talk page
|User talk=talk page
|Brighter Shores Wiki talk=talk page
|File talk=talk page
|Template talk=talk page
|Help talk=talk page
|Category talk=talk page
|Property talk=talk page
|Module talk=talk page
|Guide talk=talk page
|Gadget talk=talk page
|Gadget definition talk=talk page
<noinclude> Catch-all </noinclude>
|#default=<page type>
}}</includeonly><noinclude>{{/doc}}</noinclude>
2faa83978874337eee937c22daa085f5e14738b7
Template:PageType/doc
10
173
310
2024-03-22T15:55:48Z
InvalidCards
4
Created page with "{{documentation}} Template providing a literal description of the type of a page. This will typically be an economical version of the page's namespace, worded in such a way that it will also be the natural way of describing it verbally. For instance the myriad of talk pages are simply referred to as 'talk page'(s) without any distinction. Namespaces not explicitly covered is handled by a catch-all returning '<page type>'. This template is intended for transclusion by o..."
wikitext
text/x-wiki
{{documentation}}
Template providing a literal description of the type of a page. This will typically be an economical version of the page's namespace, worded in such a way that it will also be the natural way of describing it verbally. For instance the myriad of talk pages are simply referred to as 'talk page'(s) without any distinction. Namespaces not explicitly covered is handled by a catch-all returning '<page type>'.
This template is intended for transclusion by other templates, maintenance templates in particular.
==Usage==
{{T|PageType}}
==Examples==
{{T|PageType}}
{{PageType}}
==Parameters==
<templatedata>
{
"description": "",
"params": {
}
}
</templatedata>
<includeonly>[[Category:Transclusion templates|{{PAGENAME}}]]</includeonly>
9db8a717038813616facb007e770143621c9b804
Pass
0
174
311
2024-03-22T15:55:52Z
Jayden
3
Redirected page to [[Premium Pass]]
wikitext
text/x-wiki
#REDIRECT [[Premium Pass]]
bf43d4c5096a873a9dbfe78f0c617b2e6ff6d2df
Member
0
175
312
2024-03-22T15:55:56Z
Jayden
3
Redirected page to [[Premium Pass]]
wikitext
text/x-wiki
#REDIRECT [[Premium Pass]]
bf43d4c5096a873a9dbfe78f0c617b2e6ff6d2df
Membership
0
176
313
2024-03-22T15:56:00Z
Jayden
3
Redirected page to [[Premium Pass]]
wikitext
text/x-wiki
#REDIRECT [[Premium Pass]]
bf43d4c5096a873a9dbfe78f0c617b2e6ff6d2df
Mantuban
0
177
314
2024-03-22T15:59:32Z
Jayden
3
Redirected page to [[Mine of Mantuban]]
wikitext
text/x-wiki
#REDIRECT [[Mine of Mantuban]]
c611347e0fdb55fb960e48ae6a696278d4067295
File:Cliffside Path.jpg
6
178
315
2024-03-22T16:01:04Z
Jayden
3
wikitext
text/x-wiki
da39a3ee5e6b4b0d3255bfef95601890afd80709
Cliffside Path
0
83
316
199
2024-03-22T16:01:41Z
Jayden
3
wikitext
text/x-wiki
[[File:Cliffside Path.jpg|thumb|A view of the Cliffside Path.]]
The '''Cliffside Path''' is a location. It is a wooded path, inhabited by giant spiders, with large cobwebs strewn about.
[[Category:Locations]]
b0044e3aef8f2e0e3d0550b2bac0ef4f9a396128
File:Unofficial name placeholder.png
6
179
317
2024-03-22T16:02:30Z
InvalidCards
4
From game-icons.net, CC-BY 3.0 license. Placeholder until we have something from in-game that we can use for this messagebox.
wikitext
text/x-wiki
== Summary ==
From game-icons.net, CC-BY 3.0 license. Placeholder until we have something from in-game that we can use for this messagebox.
5a28454bbc76a475f6c907ed3e748092c526f4fc
File:Melv's Fishing Supplies.jpg
6
180
318
2024-03-22T16:02:31Z
Jayden
3
wikitext
text/x-wiki
da39a3ee5e6b4b0d3255bfef95601890afd80709
Melv's Fishing Supplies
0
86
319
240
2024-03-22T16:02:54Z
Jayden
3
wikitext
text/x-wiki
[[File:Melv's Fishing Supplies.jpg|thumb|The inside of the shop.]]
'''Melv's Fishing Supplies''' is a [[Fisher]] shop run by [[Melv]].
[[Category:Shops]]
efc7468d445e75d7d12ad7488acca824ed863efe
Template:Mainonly
10
181
320
2024-03-22T16:03:50Z
InvalidCards
4
Created page with "{{#ifeq:{{NAMESPACE}}|{{ns:0}}|{{{1|}}}}}<noinclude>{{/doc}}</noinclude>"
wikitext
text/x-wiki
{{#ifeq:{{NAMESPACE}}|{{ns:0}}|{{{1|}}}}}<noinclude>{{/doc}}</noinclude>
afcc3e5e2654571a6a05f318c70abaceb5dedbb9
File:Lani's Curiosities.jpg
6
182
321
2024-03-22T16:04:11Z
Jayden
3
wikitext
text/x-wiki
da39a3ee5e6b4b0d3255bfef95601890afd80709
Template:Mainonly/doc
10
183
322
2024-03-22T16:04:14Z
InvalidCards
4
Created page with "{{documentation}} This '''Mainonly''' template allows a particular piece of text to only be displayed when included in the main namespace. Useful for adding category links to templates. Nameless first parameter is the text to be included. <includeonly>[[Category:Transclusion templates|{{BASEPAGENAME}}]]</includeonly>"
wikitext
text/x-wiki
{{documentation}}
This '''Mainonly''' template allows a particular piece of text to only be displayed when included in the main namespace. Useful for adding category links to templates. Nameless first parameter is the text to be included.
<includeonly>[[Category:Transclusion templates|{{BASEPAGENAME}}]]</includeonly>
2d1490a39156d30a4fcbd3b90ce0a569c392e481
Lani's Curiosities
0
92
323
236
2024-03-22T16:04:15Z
Jayden
3
wikitext
text/x-wiki
[[File:Lani's Curiosities.jpg|thumb|The inside of the shop.]]
'''Lani's Curiosities''' is a shop run by [[Lani]].
[[Category:Shops]]
f38ff5b37e0225f35e3260a490682970f3a93a65
Template:Unofficial name
10
184
324
2024-03-22T16:04:36Z
InvalidCards
4
Created page with "{{MessageBox |class = info |img = [[File:Unofficial name placeholder.png|40px]] |The name of this content is unofficial. |While this content has appeared in previews, no official name for it was shown. The name of this {{PageType}} serves as a placeholder until the actual name becomes known. }}<includeonly>{{Mainonly|[[Category:Unofficially named content]]}}</includeonly><noinclude>{{/doc}}</noinclude>"
wikitext
text/x-wiki
{{MessageBox
|class = info
|img = [[File:Unofficial name placeholder.png|40px]]
|The name of this content is unofficial.
|While this content has appeared in previews, no official name for it was shown. The name of this {{PageType}} serves as a placeholder until the actual name becomes known.
}}<includeonly>{{Mainonly|[[Category:Unofficially named content]]}}</includeonly><noinclude>{{/doc}}</noinclude>
1f41f63b3c3709ba101dc4d0dfc5124c7662c3ef
Template:Unofficial name/doc
10
185
325
2024-03-22T16:05:06Z
InvalidCards
4
Created page with "{{documentation}} This template is to be used on any article where the official name is not yet known. {{t|Unofficial name}} <includeonly>[[Category:Message box templates|{{PAGENAME}}]]</includeonly>"
wikitext
text/x-wiki
{{documentation}}
This template is to be used on any article where the official name is not yet known.
{{t|Unofficial name}}
<includeonly>[[Category:Message box templates|{{PAGENAME}}]]</includeonly>
81e04d4f3884224edb7cd3c234475eda25895a50
Firetoad
0
186
326
2024-03-22T16:05:56Z
InvalidCards
4
Created page with "{{Unofficial name}} '''Firetoads''' are monsters found in caves. [[Category:Monsters]]"
wikitext
text/x-wiki
{{Unofficial name}}
'''Firetoads''' are monsters found in caves.
[[Category:Monsters]]
dca9c4c724d527751f87c5983628925e0c98435c
Category:Unofficially named content
14
187
327
2024-03-22T16:07:26Z
InvalidCards
4
Created page with "{{Categoryheader|pages where the official name of the content is currently unknown or ambiguous||yes|[[Template:Unofficial name]]}} [[Category:Maintenance templates]]"
wikitext
text/x-wiki
{{Categoryheader|pages where the official name of the content is currently unknown or ambiguous||yes|[[Template:Unofficial name]]}}
[[Category:Maintenance templates]]
31adf75d755877b4ab19ab8138931d4c88330ac4
328
327
2024-03-22T16:07:44Z
InvalidCards
4
wikitext
text/x-wiki
{{Categoryheader|pages where the official name of the content is currently unknown or ambiguous||yes|[[Template:Unofficial name]]}}
[[Category:Maintenance categories]]
3dd6d037eebab08a6da942aca1357db9e8fbfa2e
Category:Maintenance categories
14
188
329
2024-03-22T16:08:05Z
InvalidCards
4
Created page with "{{Categoryheader|subcategories|maintenance categories||}} [[Category:Maintenance]]"
wikitext
text/x-wiki
{{Categoryheader|subcategories|maintenance categories||}}
[[Category:Maintenance]]
2c9fe1fe536c38219dd3b790d6970057d75c2df6
Gower
0
189
330
2024-03-22T16:08:27Z
Jayden
3
Redirected page to [[Andrew Gower]]
wikitext
text/x-wiki
#REDIRECT [[Andrew Gower]]
e3f74894df108a8d50d48f94f79b3df5a5ff4787
Template:Factions
10
190
331
2024-03-22T16:11:36Z
Jayden
3
Created page with "{{Navbox |name = Classes |title = [[Classes]] |style1 = text-align:center |group1 = * [[Cryoknight]] * [[Guardian]] * [[Hammermage]] }}{{Ctg|Classes}}"
wikitext
text/x-wiki
{{Navbox
|name = Classes
|title = [[Classes]]
|style1 = text-align:center
|group1 =
* [[Cryoknight]]
* [[Guardian]]
* [[Hammermage]]
}}{{Ctg|Classes}}
a7d3f2a0cd90bdf75e8f185dc76929d5eefe701c
Category:Factions
14
125
333
259
2024-03-22T16:12:01Z
Jayden
3
Jayden moved page [[Category:Class]] to [[Category:Classes]] without leaving a redirect
wikitext
text/x-wiki
{{Categoryheader|pages|[[class]]es}}
[[Category:Content]]
8121a80df1c7f4a25cec3ab28d8ea6da722652d5
Cryoknight
0
69
334
207
2024-03-22T16:12:14Z
Jayden
3
wikitext
text/x-wiki
'''Cryoknight''' is a [[class]] which specialises in using melee weapons in [[combat]].
{{Classes}}
df41d94ec83c2f4f410edb0d30eb7d8300b5edff
Guardian
0
70
335
227
2024-03-22T16:12:20Z
Jayden
3
wikitext
text/x-wiki
'''Guardian''' is a [[class]] which specialises in using ranged weapons in [[combat]].
{{Classes}}
95c8db9df9ae9caec8ea2f604ae760c2c8e68cf9
Hammermage
0
71
336
229
2024-03-22T16:12:26Z
Jayden
3
wikitext
text/x-wiki
'''Hammermage''' is a [[class]] which specialises in using magic weapons in [[combat]].
{{Classes}}
31f6adb8e0250381f0b3453877d88eef30b86529
Fenforge
0
129
337
247
2024-03-22T16:15:00Z
192.87.139.149
0
wikitext
text/x-wiki
[[File:Fenforge logo.png|left]]
'''Fenforge''' is a game engine that has been in continuous development by [[Fen Research]] since May [[2010]]. First used to develop ''Solstrike'' (2014) and ''Iona's Toybox'' (2021), ''[[Brighter Shores]]'' is the third game to use this engine. The engine is based on a privately developed programming language, and designed to be flexible general-purpose engine, allowing programmers to make different types of games relatively quickly.
== Other games using Fenforge ==
{| class="wikitable sortable"
|-
! Release date !! Name !! Image
|-
| || Solstrike || [[File:solstrike.png|300px]]
|-
| || Iona's Toybox || [[File:Ionas Toybox.png|300px]]
|}
[[Category:Mechanics]]
[[Category:Fen Research]]
e06d257e88d76dbeb7c00e9359974300a3d41b80
Combat
0
191
338
2024-03-22T16:19:23Z
Jayden
3
Created page with "'''Combat''' is a mechanic in [[Brighter Shores]] in which several [[player]]s or monsters fight. Depending on the [[class]] that is being used, player combat can utilise melee, ranged, or magic."
wikitext
text/x-wiki
'''Combat''' is a mechanic in [[Brighter Shores]] in which several [[player]]s or monsters fight. Depending on the [[class]] that is being used, player combat can utilise melee, ranged, or magic.
bef8b4657ac56d655455597a785fe076130e1dd8
Crossbow
0
192
339
2024-03-22T16:22:11Z
Jayden
3
Created page with "'''Crossbows''' are a type of [[weapon]] in [[Brighter Shores]], typically utilised by the [[guardian]] class."
wikitext
text/x-wiki
'''Crossbows''' are a type of [[weapon]] in [[Brighter Shores]], typically utilised by the [[guardian]] class.
801824339cdf493dd57538863458ffb6db2775de
Sword
0
193
340
2024-03-22T16:23:20Z
Jayden
3
Created page with "'''Swords''' are a type of [[weapon]] in [[Brighter Shores]], typically utilised by the [[cryoknight]] class."
wikitext
text/x-wiki
'''Swords''' are a type of [[weapon]] in [[Brighter Shores]], typically utilised by the [[cryoknight]] class.
c8925c9a1cfa70e5834c9456fc6b348ecf9dc7e7
Premium
0
194
341
2024-03-22T16:24:50Z
Jayden
3
Redirected page to [[Premium Pass]]
wikitext
text/x-wiki
#REDIRECT [[Premium Pass]]
bf43d4c5096a873a9dbfe78f0c617b2e6ff6d2df
Subscription
0
195
342
2024-03-22T16:25:05Z
Jayden
3
Redirected page to [[Premium Pass]]
wikitext
text/x-wiki
#REDIRECT [[Premium Pass]]
bf43d4c5096a873a9dbfe78f0c617b2e6ff6d2df
Template:CiteTwitter
10
196
343
2024-03-22T16:29:05Z
Jayden
3
Created page with "<includeonly>{{#invoke:References|twitterref}}</includeonly><noinclude>{{/doc}}</noinclude>"
wikitext
text/x-wiki
<includeonly>{{#invoke:References|twitterref}}</includeonly><noinclude>{{/doc}}</noinclude>
d086275903d1701cd94c2e8ade64b2c7d8b9835e
Template:Wp
10
197
344
2024-03-22T16:38:22Z
Jayden
3
Created page with "<includeonly>[[Wikipedia:{{{1}}}|<span title=""{{{1}}}" on English Wikipedia">{{{2|{{{1}}}}}}</span>]]</includeonly><noinclude>{{/doc}}</noinclude>"
wikitext
text/x-wiki
<includeonly>[[Wikipedia:{{{1}}}|<span title=""{{{1}}}" on English Wikipedia">{{{2|{{{1}}}}}}</span>]]</includeonly><noinclude>{{/doc}}</noinclude>
852c3880ff8c832028cfebb592cc3fff2f4e0eb0
Brighter Shores
0
51
345
88
2024-03-22T16:38:52Z
Jayden
3
wikitext
text/x-wiki
'''''Brighter Shores''''' is an upcoming game developed by [[Fen Research]] and designed by [[Andrew Gower]]. It will be released in Q3 2024.
The game has been under active development since at least 2014 by Gower,{{CiteTwitter|url=https://twitter.com/AndrewCGower/status/1767945130487493010|author=Andrew Gower|date=13 March 2024|accessdate=22 March 2024|quote=Over 10 years!|archiveurl=https://archive.is/rhmtZ|archivedate=22 March 2024}} and was announced officially on 13 March 2024. An initial two-minute trailer was released, which depicts [[player]]s engaging in [[combat]], several [[profession]]s, and a variety of different [[location]]s.{{CiteGeneral|url=https://www.youtube.com/watch?v=ASIbNq_pLQQ|title=Brighter Shores Gameplay Trailer|author=MMOs.com|date=13 March 2024|accessdate=22 March 2024}} The game is {{wp|free-to-play}}, but players can access additional features and content by purchasing the [[Premium Pass]].
==External links==
* [https://store.steampowered.com/app/2791440/Brighter%20Shores/ Steam page]
==References==
{{Reflist}}
[[Category:Games]]
[[Category:Fen Research]]
fbeefae2256023714e851e721dcb23a8d13680fc
347
345
2024-03-22T16:42:24Z
Jayden
3
wikitext
text/x-wiki
[[File:Brighter Shores key art.jpg|thumb|The promotional image for Brighter Shores.]]
'''''Brighter Shores''''' is an upcoming game developed by [[Fen Research]] and designed by [[Andrew Gower]]. It will be released in Q3 2024.
The game has been under active development since at least 2014 by Gower,{{CiteTwitter|url=https://twitter.com/AndrewCGower/status/1767945130487493010|author=Andrew Gower|date=13 March 2024|accessdate=22 March 2024|quote=Over 10 years!|archiveurl=https://archive.is/rhmtZ|archivedate=22 March 2024}} and was announced officially on 13 March 2024. An initial two-minute trailer was released, which depicts [[player]]s engaging in [[combat]], several [[profession]]s, and a variety of different [[location]]s.{{CiteGeneral|url=https://www.youtube.com/watch?v=ASIbNq_pLQQ|title=Brighter Shores Gameplay Trailer|author=MMOs.com|date=13 March 2024|accessdate=22 March 2024}} The game is {{wp|free-to-play}}, but players can access additional features and content by purchasing the [[Premium Pass]].
==External links==
* [https://store.steampowered.com/app/2791440/Brighter%20Shores/ Steam page]
==References==
{{Reflist}}
[[Category:Games]]
[[Category:Fen Research]]
df161401ce783ca0be575d4ffc4845a85978da17
348
347
2024-03-22T16:46:20Z
Jayden
3
wikitext
text/x-wiki
[[File:Brighter Shores key art.jpg|thumb|The promotional image for Brighter Shores.]]
'''''Brighter Shores''''' is an upcoming game developed by [[Fen Research]] and designed by [[Andrew Gower]]. It will be released in Q3 2024.
The game has been under active development since at least 2014 by Gower,{{CiteTwitter|url=https://twitter.com/AndrewCGower/status/1767945130487493010|author=Andrew Gower|date=13 March 2024|accessdate=22 March 2024|quote=Over 10 years!|archiveurl=https://archive.is/rhmtZ|archivedate=22 March 2024}} and was announced officially on 13 March 2024. An initial two-minute trailer was released, which depicts [[player]]s engaging in [[combat]], several [[profession]]s, and a variety of different [[location]]s.{{CiteGeneral|url=https://www.youtube.com/watch?v=ASIbNq_pLQQ|title=Brighter Shores Gameplay Trailer|author=MMOs.com|date=13 March 2024|accessdate=22 March 2024}} The game is {{wp|free-to-play}}, but players can access additional features and content by purchasing the [[Premium Pass]].
Brighter Shores features an ongoing story with hundreds of hours of gameplay.{{CiteGeneral|url=https://store.steampowered.com/app/2791440/Brighter_Shores/|title=Brighter Shores on Steam|author=Valve|date=22 March 2024|accessdate=22 March 2024|archiveurl=https://archive.is/eYgMA|archivedate=22 March 2024}} Players start their journey in [[Hopeport]], as a member of the town guard.
==External links==
* [https://store.steampowered.com/app/2791440/Brighter%20Shores/ Steam page]
==References==
{{Reflist}}
[[Category:Games]]
[[Category:Fen Research]]
019abfa4a60a19c428d1f6cf2d9e1ef50bc927a8
351
348
2024-03-22T16:47:39Z
Jayden
3
wikitext
text/x-wiki
[[File:Brighter Shores key art.jpg|thumb|The promotional image for Brighter Shores.]]
'''''Brighter Shores''''' is an upcoming game developed by [[Fen Research]] and designed by [[Andrew Gower]]. It will be released in Q3 2024.
The game has been under active development since at least 2014 by Gower,{{CiteTwitter|url=https://twitter.com/AndrewCGower/status/1767945130487493010|author=Andrew Gower|date=13 March 2024|accessdate=22 March 2024|quote=Over 10 years!|archiveurl=https://archive.is/rhmtZ|archivedate=22 March 2024}} and was announced officially on 13 March 2024. An initial two-minute trailer was released, which depicts [[player]]s engaging in [[combat]], several [[profession]]s, and a variety of different [[location]]s.{{CiteGeneral|url=https://www.youtube.com/watch?v=ASIbNq_pLQQ|title=Brighter Shores Gameplay Trailer|author=MMOs.com|date=13 March 2024|accessdate=22 March 2024}} The game is {{wp|free-to-play}}, but players can access additional features and content by purchasing the [[Premium Pass]].
Brighter Shores features an ongoing story with hundreds of hours of gameplay.{{CiteGeneral|url=https://store.steampowered.com/app/2791440/Brighter_Shores/|title=Brighter Shores on Steam|author=Valve|date=22 March 2024|accessdate=22 March 2024|archiveurl=https://archive.is/eYgMA|archivedate=22 March 2024}} Players start their journey in [[Hopeport]], as a member of the town guard.
==External links==
* [https://store.steampowered.com/app/2791440/Brighter%20Shores/ Steam page]
* [https://brightershores.com/ Official website]
==References==
{{Reflist}}
[[Category:Games]]
[[Category:Fen Research]]
d3a94f213cc33fd99ff2b3cab0bafb64fb57699c
File:Brighter Shores key art.jpg
6
198
346
2024-03-22T16:41:52Z
Jayden
3
wikitext
text/x-wiki
da39a3ee5e6b4b0d3255bfef95601890afd80709
File:Truck Cave.jpg
6
199
349
2024-03-22T16:46:45Z
Wolaznik
8
wikitext
text/x-wiki
da39a3ee5e6b4b0d3255bfef95601890afd80709
Truck Cave
0
94
350
255
2024-03-22T16:47:37Z
Wolaznik
8
wikitext
text/x-wiki
[[File:Truck Cave.jpg|thumb|right|A preview of the Truck Cave.]]
The '''Truck Cave''' is a cave filled with minecart rails.
[[Category:Locations]]
9643e37e531ad633b91887cfc1ef2c3ebc5597f6
Passive activity
0
200
352
2024-03-22T16:49:31Z
Wolaznik
8
Created page with "A '''Passive Activity''' is an activity that will continue to occur while you are logged out."
wikitext
text/x-wiki
A '''Passive Activity''' is an activity that will continue to occur while you are logged out.
6223bb882d87106888dac951e15104ad9f21c9ec
File:Fisher.jpg
6
201
353
2024-03-22T16:50:29Z
Wolaznik
8
wikitext
text/x-wiki
da39a3ee5e6b4b0d3255bfef95601890afd80709
Fisher
0
58
354
213
2024-03-22T16:51:04Z
Wolaznik
8
wikitext
text/x-wiki
[[File:Fisher.jpg|thumb|right|A preview of a player fishing.]]
'''Fisher''' is a type of [[professions|profession]] which specialises in catching [[fish]].
{{Professions}}
cea2fdea77cc08d52a2285254e49c8d8d4ef1361
File:The Deletectable Dab Restaurant.jpg
6
202
355
2024-03-22T16:53:02Z
Wolaznik
8
wikitext
text/x-wiki
da39a3ee5e6b4b0d3255bfef95601890afd80709
The Deletectable Dab Restaurant
0
203
356
2024-03-22T16:53:10Z
Wolaznik
8
Created page with "[[File:The Deletectable Dab Restaurant.jpg|thumb|right|The Deletectable Dab Restaurant]] The '''The Deletectable Dab Restaurant''' is a restaurant."
wikitext
text/x-wiki
[[File:The Deletectable Dab Restaurant.jpg|thumb|right|The Deletectable Dab Restaurant]]
The '''The Deletectable Dab Restaurant''' is a restaurant.
00313230f387a0bd033178a955b77336fab56282
File:Goblin Marketplace.jpg
6
204
357
2024-03-22T16:55:00Z
Wolaznik
8
wikitext
text/x-wiki
da39a3ee5e6b4b0d3255bfef95601890afd80709
Goblin Marketplace
0
82
358
224
2024-03-22T16:55:04Z
Wolaznik
8
wikitext
text/x-wiki
[[File:Goblin Marketplace|thumb|right|Goblin Marketplace]]
The '''Goblin Marketplace''' is a location where [[goblin]]s sell their wares.
[[Category:Locations]]
5c4998331e5e974a08a91da1921530b2bc2d35ca
359
358
2024-03-22T16:55:18Z
Wolaznik
8
wikitext
text/x-wiki
[[File:Goblin Marketplace.jpg|thumb|right|Goblin Marketplace]]
The '''Goblin Marketplace''' is a location where [[goblin]]s sell their wares.
[[Category:Locations]]
e85c6be04f75503e8ee3197518c370bce8b3f8c7
File:Woodcutter.jpg
6
205
360
2024-03-22T16:56:01Z
Wolaznik
8
wikitext
text/x-wiki
da39a3ee5e6b4b0d3255bfef95601890afd80709
Woodcutter
0
61
361
217
2024-03-22T16:56:59Z
Wolaznik
8
wikitext
text/x-wiki
[[File:Woodcutter.jpg|thumb|right|A player woodcutting.]]
'''Woodcutter''' is a type of [[professions|profession]].
{{Professions}}
fdd29e0b0d9dfc6c85da865b1de7e0b41fbd7c99
File:Bone Vats.jpg
6
206
362
2024-03-22T16:57:35Z
Wolaznik
8
wikitext
text/x-wiki
da39a3ee5e6b4b0d3255bfef95601890afd80709
Bone Vats
0
81
363
198
2024-03-22T16:59:55Z
Wolaznik
8
wikitext
text/x-wiki
[[File:Bone Vats.jpg|thumb|right|Bone Vats]]
The '''Bone Vats''' is a location where players can craft items using bones.
[[Category:Locations]]
46503e71506ac9839447d29b58a2da172cec6f88
File:Tanners Road.jpg
6
207
364
2024-03-22T17:00:46Z
Wolaznik
8
wikitext
text/x-wiki
da39a3ee5e6b4b0d3255bfef95601890afd80709
Tanners Road
0
80
365
250
2024-03-22T17:01:43Z
Wolaznik
8
wikitext
text/x-wiki
[[File:Tanners Road.jpg|thumb|right|Tanners Road]]
'''Tanners Road''' is a road in [[Hopeport]]. It features various market stalls.
[[Category:Locations]][[Category:Hopeport]]
a07eb06d0bb39e9e54fa0e8d2e7a2ed98e1247ba
File:Barricades.jpg
6
208
366
2024-03-22T17:02:55Z
Wolaznik
8
wikitext
text/x-wiki
da39a3ee5e6b4b0d3255bfef95601890afd80709
Barricades
0
79
367
191
2024-03-22T17:03:17Z
Wolaznik
8
wikitext
text/x-wiki
[[File:Barricades.jpg|thumb|right|A preview of the Barricades.]]
The '''Barricades''' is a location that leads into the [[Mine Entrance]], which is guarded by a [[barricade guard]]. The player must talk to [[Captain Jal Degreene]] as part of a quest in order to be allowed through.
[[Category:Locations]]
f63d16a7ba5b8db748bc849b9c69ba75e68db377
File:Leech Pools.jpg
6
209
368
2024-03-22T17:03:44Z
Wolaznik
8
wikitext
text/x-wiki
da39a3ee5e6b4b0d3255bfef95601890afd80709
Leech Pools
0
78
369
238
2024-03-22T17:04:01Z
Wolaznik
8
wikitext
text/x-wiki
[[File:Leech Pools.jpg|thumb|right|A preview of the Leech Pools.]]
The '''Leech Pools''' is a watery cave system.
[[Category:Locations]]
f869565e8263fe16ac2cb0c3aa38e605e3c8b3e5
File:Combat.jpg
6
626
370
2024-03-22T17:04:28Z
Wolaznik
8
wikitext
text/x-wiki
da39a3ee5e6b4b0d3255bfef95601890afd80709
Combat
0
191
371
338
2024-03-22T17:04:51Z
Wolaznik
8
wikitext
text/x-wiki
[[File:Combat.jpg|thumb|right|A preview of player in combat.]]
'''Combat''' is a mechanic in [[Brighter Shores]] in which several [[player]]s or monsters fight. Depending on the [[class]] that is being used, player combat can utilise melee, ranged, or magic.
c56183a36d97d34c6daa913a8b9797e814ad9b3e
Chef
0
60
372
216
2024-03-22T17:05:44Z
Wolaznik
8
wikitext
text/x-wiki
[[File:Chef.jpg|thumb|right|A player cooking bacon.]]
'''Chef''' is a type of [[professions|profession]] which allows the [[player]] to [[cooking|cook]] many different [[food]] items.
{{Professions}}
b9fb87d1b220ca102cf32015d3b50ebbb5967b5e
400
372
2024-03-22T17:41:12Z
ToofleBerry
6
Added link.
wikitext
text/x-wiki
[[File:Chef.jpg|thumb|right|A player cooking [[basic bacon]].]]
'''Chef''' is a type of [[professions|profession]] which allows the [[player]] to [[cooking|cook]] many different [[food]] items.
{{Professions}}
f2c3c280fc258ec255f4ece7b0b81f0a19e73ad9
File:Chef.jpg
6
211
373
2024-03-22T17:05:51Z
Wolaznik
8
wikitext
text/x-wiki
da39a3ee5e6b4b0d3255bfef95601890afd80709
File:Hopeport Obelisk.jpg
6
212
374
2024-03-22T17:07:49Z
Wolaznik
8
wikitext
text/x-wiki
da39a3ee5e6b4b0d3255bfef95601890afd80709
Hopeport Obelisk
0
97
375
233
2024-03-22T17:07:54Z
Wolaznik
8
wikitext
text/x-wiki
[[File:Hopeport Obelisk.jpg|thumb|right|A preview of the Hopeport Obelisk.]]
The '''Hopeport Obelisk''' is a location near [[Hopeport]]. It is likely that it will be used as a fast travel location.
[[Category:Locations]]
04e508898f960d82732ed719c54547891946abb3
Quiet Grove
0
101
376
244
2024-03-22T17:09:46Z
Wolaznik
8
wikitext
text/x-wiki
[[File:Quiet Grove|thumb|right|A preview of Quiet Grove.]]
The '''Quiet Grove''' is a location. It has an entrance to a mine.
[[Category:Locations]]
18157563ef6b7b9accde9163b800eb0724b54415
378
376
2024-03-22T17:10:06Z
Wolaznik
8
wikitext
text/x-wiki
[[File:Quiet Grove.jpg|thumb|right|A preview of Quiet Grove.]]
The '''Quiet Grove''' is a location. It has an entrance to a mine.
[[Category:Locations]]
b9de82832c2c7f3421423f0f99be630571c1dfc8
File:Quiet Grove.jpg
6
213
377
2024-03-22T17:09:50Z
Wolaznik
8
wikitext
text/x-wiki
da39a3ee5e6b4b0d3255bfef95601890afd80709
File:Southeast Sewer.jpg
6
214
379
2024-03-22T17:11:57Z
Wolaznik
8
wikitext
text/x-wiki
da39a3ee5e6b4b0d3255bfef95601890afd80709
Southeast Sewer
0
88
380
249
2024-03-22T17:12:25Z
Wolaznik
8
wikitext
text/x-wiki
[[File:Southeast Sewer.jpg|thumb|right|A preview of the Southeast Sewer.]]
The '''Southeast Sewer''' is a location.
[[Category:Locations]]
2fc59c5d8aebbc59836873f663722513288b8de8
File:Factions.jpg
6
215
381
2024-03-22T17:13:50Z
Wolaznik
8
wikitext
text/x-wiki
da39a3ee5e6b4b0d3255bfef95601890afd80709
Factions
0
72
382
332
2024-03-22T17:14:43Z
Wolaznik
8
wikitext
text/x-wiki
[[File:Classes.jpg|thumb|right|Examples of the three classes.]]
'''Classes''' in [[Brighter Shores]] allow the [[player]] to specialise in using a specific [[combat]] style.
==Classes==
* The [[Cryoknight]] class is focused on melee combat, using weapons like [[sword]]s alongside a [[shield]]
* [[Guardian]]s use ranged combat, preferring to wield weapons like [[crossbow]]s
* The [[Hammermage]] class fights using a mix of melee and magic
{{Classes}}
dec9d1a43e6cc9c6f64327bb91a652b11896df0b
User:Wolaznik
2
216
383
2024-03-22T17:17:47Z
Wolaznik
8
Created page with "Discord: Wolaznik"
wikitext
text/x-wiki
Discord: Wolaznik
4333ce30ebb2a5137f8009608f83723ebeb3b9b5
MediaWiki:Sidebar
8
57
384
99
2024-03-22T17:21:56Z
Habblet
11
wikitext
text/x-wiki
* navigation
** mainpage|mainpage-description
** recentchanges-url|recentchanges
** randompage-url|randompage
** Special:NewFiles|New files
* Guides
** Professions
** Equipment
** Locations
** Quests
* SEARCH
* TOOLBOX
* LANGUAGES
2858622b5516227f54f852372c4ca39f57faaa8e
File:Blacksmith.png
6
217
385
2024-03-22T17:26:56Z
Wolaznik
8
wikitext
text/x-wiki
da39a3ee5e6b4b0d3255bfef95601890afd80709
Category:Pages with broken file links
14
218
386
2024-03-22T17:27:11Z
Habblet
11
Created page with "{{Categoryheader|pages|with broken file links|yes|the MediaWiki software via the [[MediaWiki:broken-file-category|broken-file-category]] message page|related=no}}{{Hidden category}} Additionally, files that are used in pages but do not exist are listed by [[Special:WantedFiles]]. [[Category:Maintenance categories]] __EXPECTUNUSEDCATEGORY__"
wikitext
text/x-wiki
{{Categoryheader|pages|with broken file links|yes|the MediaWiki software via the [[MediaWiki:broken-file-category|broken-file-category]] message page|related=no}}{{Hidden category}}
Additionally, files that are used in pages but do not exist are listed by [[Special:WantedFiles]].
[[Category:Maintenance categories]]
__EXPECTUNUSEDCATEGORY__
4f2fe47aebb1f35d0464785365e2574c3955b438
Blacksmith
0
66
387
225
2024-03-22T17:27:42Z
Wolaznik
8
wikitext
text/x-wiki
[[File:Blacksmith.png|thumb|right|A player smithing.]]
'''Blacksmith''' is a type of [[professions|profession]].
{{Professions}}
601fb6f3e44f52721a63fd0f43d96e54f68bbaa1
File:Alchemist.jpg
6
219
388
2024-03-22T17:28:43Z
Wolaznik
8
wikitext
text/x-wiki
da39a3ee5e6b4b0d3255bfef95601890afd80709
Category:Hidden categories
14
220
389
2024-03-22T17:28:50Z
Habblet
11
Created page with "{{Categoryheader|pages|in cases where, for technical reasons, project categories appear directly on articles rather than talk pages, they should be made into hidden categories, so that they are not displayed to users. The categories that should appear here are the maintenance categories, that is, categories reflecting the present status of the page, rather than classifying the article subject. To hide a category, use the magic word <code><nowiki>__HIDDENCAT__</nowiki></..."
wikitext
text/x-wiki
{{Categoryheader|pages|in cases where, for technical reasons, project categories appear directly on articles rather than talk pages, they should be made into hidden categories, so that they are not displayed to users. The categories that should appear here are the maintenance categories, that is, categories reflecting the present status of the page, rather than classifying the article subject.
To hide a category, use the magic word <code><nowiki>__HIDDENCAT__</nowiki></code>. This also places the page in this category.
A logged-in user may elect to view all hidden categories, by checking "Show Hidden Categories" on the "Misc" tab of [[Special:Preferences|My Preferences]]. Notice that "hidden" parent categories are never in fact hidden on category pages (although they are listed separately)||}}
[[Category:Maintenance categories]]
daf2476192406f283b4d7aff24e26a5017e225c0
Alchemist
0
63
390
219
2024-03-22T17:29:30Z
Wolaznik
8
wikitext
text/x-wiki
[[File:Alchemist.jpg|thumb|right|A player practicing Alchemy.]]
'''Alchemist''' is a type of [[professions|profession]].
{{Professions}}
a6366480ac6a6944084af488ed3e5c538a8b612f
File:T.E.A. Machine.png
6
221
391
2024-03-22T17:30:00Z
Wolaznik
8
wikitext
text/x-wiki
da39a3ee5e6b4b0d3255bfef95601890afd80709
393
391
2024-03-22T17:33:39Z
Wolaznik
8
Wolaznik moved page [[File:T.E.A Machine.png]] to [[File:T.E.A. Machine.png]] without leaving a redirect
wikitext
text/x-wiki
da39a3ee5e6b4b0d3255bfef95601890afd80709
File:Copyright.svg
6
222
392
2024-03-22T17:31:40Z
Habblet
11
{{Permanent Protection}}
{{GFDL}}
Source: modified from [http://commons.wikimedia.org/wiki/Image:Copyright-problem.svg a file on Wikimedia Commons].
wikitext
text/x-wiki
== Summary ==
{{Permanent Protection}}
{{GFDL}}
Source: modified from [http://commons.wikimedia.org/wiki/Image:Copyright-problem.svg a file on Wikimedia Commons].
e14066573aa911d4461287d3595b37b55a8127d2
T.E.A. Machine
0
223
394
2024-03-22T17:33:49Z
Wolaznik
8
Created page with "[[File:T.E.A. Machine.png|thumb|right]] The '''T.E.A. Machine''' is a machine in which players can load stones into to complete an action. The machine's exact purpose is currently unknown."
wikitext
text/x-wiki
[[File:T.E.A. Machine.png|thumb|right]]
The '''T.E.A. Machine''' is a machine in which players can load stones into to complete an action. The machine's exact purpose is currently unknown.
9830f5809e65a59f78d9e559f55d2c495cba923a
395
394
2024-03-22T17:34:42Z
Wolaznik
8
wikitext
text/x-wiki
[[File:T.E.A. Machine.png|thumb|right|A preview of the T.E.A. Machine.]]
The '''T.E.A. Machine''' is a machine in which players can load stones into to complete an action. The machine's exact purpose is currently unknown.
870c831c23e997f3454e2085d839a97b1f25f349
File:Padlock-red.svg
6
224
396
2024-03-22T17:37:14Z
Habblet
11
{{Permanent Protection}}
{{PD}}
wikitext
text/x-wiki
== Summary ==
{{Permanent Protection}}
{{PD}}
070edbdc5141e7b313fe8575081029aa39d81152
Template:Permanent Protection
10
225
397
2024-03-22T17:37:58Z
Habblet
11
Created page with "{{MessageBox |class = warn |img = [[File:Padlock-red.svg|centre|40px|link=]] |{{SUBJECTPAGENAME}} has been indefinitely [[Brighter Shores:Protection policy|protected]] from editing, uploading, or moving. |This file is protected most likely because it is a popular image or a file used in a MediaWiki page. To request a change to it, please discuss the issue on the [{{fullurl:{{TALKPAGENAME}}}} talk page]. }}{{Fileonly|[[Category:Permanently protected files]]}}<noinclude>{..."
wikitext
text/x-wiki
{{MessageBox
|class = warn
|img = [[File:Padlock-red.svg|centre|40px|link=]]
|{{SUBJECTPAGENAME}} has been indefinitely [[Brighter Shores:Protection policy|protected]] from editing, uploading, or moving.
|This file is protected most likely because it is a popular image or a file used in a MediaWiki page. To request a change to it, please discuss the issue on the [{{fullurl:{{TALKPAGENAME}}}} talk page].
}}{{Fileonly|[[Category:Permanently protected files]]}}<noinclude>{{/doc}}</noinclude>
6ecc455d2fd52fde8396f0cb02133031eb5188d8
Template:Fileonly
10
226
398
2024-03-22T17:39:03Z
Habblet
11
Created page with "{{#ifeq:{{NAMESPACE}}|{{ns:6}}|{{{1|}}}}}<noinclude>{{/doc}}</noinclude>"
wikitext
text/x-wiki
{{#ifeq:{{NAMESPACE}}|{{ns:6}}|{{{1|}}}}}<noinclude>{{/doc}}</noinclude>
109ededa3f226b4034390d70f24dc1b4a5510ffd
Template:Fileonly/doc
10
227
399
2024-03-22T17:40:02Z
Habblet
11
Created page with "{{Documentation}} The '''Fileonly''' template allows a particular piece of text to only be displayed when included in the file/image namespace. Primarily used when adding category links or categories to templates. ==Usage== {{T|Fileonly|text}} Example not available. {{TemplateData|<templatedata> { "params": { "1": { "label": "Text", "description": "Text to be displayed only in the File/Image namespace.", "type": "string", "required": true } }, "fo..."
wikitext
text/x-wiki
{{Documentation}}
The '''Fileonly''' template allows a particular piece of text to only be displayed when included in the file/image namespace. Primarily used when adding category links or categories to templates.
==Usage==
{{T|Fileonly|text}}
Example not available.
{{TemplateData|<templatedata>
{
"params": {
"1": {
"label": "Text",
"description": "Text to be displayed only in the File/Image namespace.",
"type": "string",
"required": true
}
},
"format": "inline",
"description": "This template allows a particular piece of text to only be displayed when included in the file/image namespace."
}
</templatedata>}}
==See also==
* [[Template:Mainonly]]
<includeonly>[[Category:Transclusion templates|{{BASEPAGENAME}}]]</includeonly>
6eecdee95d537655744b4d95630eeb77b6065dc6
Template:Documentation
10
228
401
2024-03-22T17:41:28Z
Habblet
11
Created page with "<includeonly>{{#invoke:Documentation|doc}}__NOEDITSECTION__</includeonly><noinclude>{{/doc}}</noinclude>"
wikitext
text/x-wiki
<includeonly>{{#invoke:Documentation|doc}}__NOEDITSECTION__</includeonly><noinclude>{{/doc}}</noinclude>
291285b6f733c3a1739fbe7be41323bda485a2ba
Template:Documentation/doc
10
229
402
2024-03-22T17:42:18Z
Habblet
11
Created page with "{{Documentation}} {{Invokes|Documentation}} <code><nowiki>{{Documentation}}</nowiki></code> is transcluded in template/module documentation pages. This template should only be used on subpages titled "doc". This is '''not''' the template of the same name from Wikipedia and it is not used in the same way. ==Usage== Place {{t|documentation}} at the top of the documentation page, then transclude <code><nowiki>{{/doc}}</nowiki></code> directly from the main template page,..."
wikitext
text/x-wiki
{{Documentation}}
{{Invokes|Documentation}}
<code><nowiki>{{Documentation}}</nowiki></code> is transcluded in template/module documentation pages. This template should only be used on subpages titled "doc".
This is '''not''' the template of the same name from Wikipedia and it is not used in the same way.
==Usage==
Place {{t|documentation}} at the top of the documentation page, then transclude <code><nowiki>{{/doc}}</nowiki></code> directly from the main template page, within <nowiki><noinclude></nowiki> tags.
If the page to be documented is a subpage, use {{t|documentation|pagename of page to be documented}} at the top of the documentation page. For example, Template:Foo/bar's documentation page would use {{t|documentation|Template:Foo/bar}}.
==Note==
This template links to a /doc that may appear useless, however, it exists in order to link navboxes and userboxes to their base template's documentation.
<includeonly>[[Category:Template documentation| ]]</includeonly>
199f3258a35ad594b8cb714ab851263a3acb3058
Category:Pages with script errors
14
230
403
2024-03-22T17:43:58Z
Habblet
11
Created page with "{{Categoryheader|pages|with Lua script errors|yes|the Scribunto extension via the [[MediaWiki:Scribunto-common-error-category]] message page when an error is left unhandled in a Lua module. This often occurs when templates are meant to be invoked with parameters but are not wrapped in <code><nowiki><includeonly></includeonly></nowiki></code>, so the template page will have a script error, or due to expression errors from invalid characters (e.g., commas left in numbers p..."
wikitext
text/x-wiki
{{Categoryheader|pages|with Lua script errors|yes|the Scribunto extension via the [[MediaWiki:Scribunto-common-error-category]] message page when an error is left unhandled in a Lua module. This often occurs when templates are meant to be invoked with parameters but are not wrapped in <code><nowiki><includeonly></includeonly></nowiki></code>, so the template page will have a script error, or due to expression errors from invalid characters (e.g., commas left in numbers passed to <code><nowiki>{{#expr:}}</nowiki></code>. This category should not be manually added to any pages.}}
{{Hidden category}}
[[Category:Maintenance categories]]
__EXPECTUNUSEDCATEGORY__
406285654939f602e7debf2c953bb60250ac7bcf
Template:Invokes
10
105
404
165
2024-03-22T17:45:22Z
Habblet
11
wikitext
text/x-wiki
<includeonly>{{#ifeq:{{NAMESPACE}}|Module|<div class="seealso">'''''{{#replace:{{FULLPAGENAME}}|/doc}}''' is invoked by [[{{{page|Template:{{{1}}}}}}]].{{#ifeq:{{lc:{{{category}}}}}|no||{{#ifeq:{{SUBPAGENAME}}|doc||[[Category:Template invoked modules]]}}}}''</div>|<div class="seealso">'''''{{#replace:{{FULLPAGENAME}}|/doc}}''' invokes [[Module:{{{1}}}]] using [[Brighter Shores:Lua|Lua]].{{#ifeq:{{lc:{{{category}}}}}|no||{{#ifeq:{{SUBPAGENAME}}|doc||[[Category:Lua-based templates]]}}}}''</div>}}</includeonly><noinclude>{{/doc}}</noinclude>
c42ce6c6d59b647620611300f5bb65b1763644d2
Module:DependencyList
828
231
405
2024-03-22T17:47:47Z
Habblet
11
Created page with "local p = {} local libraryUtil = require( 'libraryUtil' ) local arr = require( 'Module:Array' ) local yn = require( 'Module:Yesno' ) local param = require( 'Module:Paramtest' ) local dpl = require( 'Module:DPLlua' ) local tooltip = require( 'Module:Tooltip' ) local moduleIsUsed = false local COLLAPSE_LIST_LENGTH_THRESHOLD = 5 local MAX_DYNAMIC_REQUIRE_LIST_LENGTH = 30 local dynamicRequireListQueryCache = {} local builtins = { ["libraryUtil"] = { link = "mw:S..."
Scribunto
text/plain
local p = {}
local libraryUtil = require( 'libraryUtil' )
local arr = require( 'Module:Array' )
local yn = require( 'Module:Yesno' )
local param = require( 'Module:Paramtest' )
local dpl = require( 'Module:DPLlua' )
local tooltip = require( 'Module:Tooltip' )
local moduleIsUsed = false
local COLLAPSE_LIST_LENGTH_THRESHOLD = 5
local MAX_DYNAMIC_REQUIRE_LIST_LENGTH = 30
local dynamicRequireListQueryCache = {}
local builtins = {
["libraryUtil"] = {
link = "mw:Special:MyLanguage/Extension:Scribunto/Lua reference manual#libraryUtil",
categories = {},
},
["strict"] = {
link = "mw:Special:MyLanguage/Extension:Scribunto/Lua reference manual#strict",
categories = { "Strict mode modules" },
},
}
--- Used in case 'require( varName )' is found. Attempts to find a string value stored in 'varName'.
---@param content string The content of the module to search in
---@param varName string
---@return string
local function substVarValue( content, varName )
local res = content:match( varName .. '%s*=%s*(%b""%s-%.*)' ) or content:match( varName .. "%s*=%s*(%b''%s-%.*)" ) or ''
if res:find( '^(["\'])[Mm]odule:[%S]+%1' ) and not res:find( '%.%.' ) and not res:find( '%%%a' ) then
return mw.text.trim( res )
else
return ''
end
end
---@param capture string
---@param content string The content of the module to search in
---@return string
local function extractModuleName( capture, content )
capture = capture:gsub( '^%(%s*(.-)%s*%)$', '%1' )
if capture:find( '^(["\']).-%1$' ) then -- Check if it is already a pure string
return capture
elseif capture:find( '^[%a_][%w_]*$' ) then -- Check if if is a single variable
return substVarValue( content, capture )
end
return capture
end
---@param str string
---@return string
local function formatPageName( str )
local name = mw.text.trim(str)
:gsub( '^([\'\"])(.-)%1$', '%2' ) -- Only remove quotes at start and end of string if both are the same type
:gsub( '_', ' ' )
:gsub( '^.', string.upper )
:gsub( ':.', string.upper )
return name
end
---@param str string
---@param allowBuiltins? boolean
---@return string
local function formatModuleName( str, allowBuiltins )
if allowBuiltins then
local name = mw.text.trim(str)
-- Only remove quotes at start and end of string if both are the same type
:gsub([[^(['"])(.-)%1$]], '%2')
if builtins[name] then
return name
end
end
local module = formatPageName( str )
if not string.find( module, '^[Mm]odule:' ) then
module = 'Module:' .. module
end
return module
end
local function dualGmatch( str, pat1, pat2 )
local f1 = string.gmatch( str, pat1 )
if pat2 then
local f2 = string.gmatch( str, pat2 )
return function()
return f1() or f2()
end
else
return f1
end
end
local function isDynamicPath( str )
return string.find( str, '%.%.' ) or string.find( str, '%%%a' )
end
--- Used in case a construct like 'require( "Module:wowee/" .. isTheBest )' is found.
--- Will return a list of pages which satisfy this pattern where 'isTheBest' can take any value.
---@param query string
---@return string[]
local function getDynamicRequireList( query )
if query:find( '%.%.' ) then
query = mw.text.split( query, '..', true )
query = arr.map( query, function(x) return mw.text.trim(x) end )
query = arr.map( query, function(x) return (x:match('^[\'\"](.-)[\'\"]$') or '%') end )
query = table.concat( query )
else
local _, _query = query:match( '(["\'])(.-)%1' )
query = _query:gsub( '%%%a', '%%' )
end
query = query:gsub( '^[Mm]odule:', '' )
if query:find( '^[Ee]xchange/' ) or query:find( '^[Dd]ata/' ) then
return { 'Module:' .. query } -- This format will later be used by formatDynamicQueryLink()
end
if dynamicRequireListQueryCache[ query ] then
return dynamicRequireListQueryCache[ query ]
end
local list = dpl.ask{
namespace = 'Module',
titlematch = query,
nottitlematch = '%/doc|'..query..'/%',
distinct = 'strict',
ignorecase = true,
ordermethod = 'title',
count = MAX_DYNAMIC_REQUIRE_LIST_LENGTH + 1,
skipthispage = 'no',
allowcachedresults = true,
cacheperiod = 604800 -- One week
}
if #list > MAX_DYNAMIC_REQUIRE_LIST_LENGTH then
list = { 'Module:' .. query }
end
dynamicRequireListQueryCache[ query ] = list
return list
end
--- Returns a list of modules loaded and required by module 'moduleName'.
---@param moduleName string
---@param searchForUsedTemplates? boolean
---@return table<string, string[]>
local function getRequireList( moduleName, searchForUsedTemplates )
local content = mw.title.new( moduleName ):getContent()
local requireList = arr{}
local loadDataList = arr{}
local loadJsonDataList = arr{}
local usedTemplateList = arr{}
local dynamicRequirelist = arr{}
local dynamicLoadDataList = arr{}
local dynamicLoadJsonDataList = arr{}
local extraCategories = arr{}
assert( content ~= nil, string.format( '%s does not exist', moduleName ) )
content = content:gsub( '%-%-%[(=-)%[.-%]%1%]', '' ):gsub( '%-%-[^\n]*', '' ) -- Strip comments
local function getList( pat1, pat2, list, dynList )
for match in dualGmatch( content, pat1, pat2 ) do
match = mw.text.trim( match )
local name = extractModuleName( match, content )
if isDynamicPath( name ) then
dynList:insert( getDynamicRequireList( name ), true )
elseif name ~= '' then
name = formatModuleName( name, true )
table.insert( list, name )
if builtins[name] then
extraCategories = extraCategories:insert( builtins[name].categories, true )
end
end
end
end
getList( 'require%s*(%b())', 'require%s*((["\'])%s*[Mm]odule:.-%2)', requireList, dynamicRequirelist )
getList( 'mw%.loadData%s*(%b())', 'mw%.loadData%s*((["\'])%s*[Mm]odule:.-%2)', loadDataList, dynamicLoadDataList )
getList( 'mw%.loadJsonData%s*(%b())', 'mw%.loadJsonData%s*((["\'])%s*[Mm]odule:.-%2)', loadJsonDataList, dynamicLoadJsonDataList )
getList( 'pcall%s*%(%s*require%s*,([^%),]+)', nil, requireList, dynamicRequirelist )
getList( 'pcall%s*%(%s*mw%.loadData%s*,([^%),]+)', nil, loadDataList, dynamicLoadDataList )
getList( 'pcall%s*%(%s*mw%.loadJsonData%s*,([^%),]+)', nil, loadJsonDataList, dynamicLoadJsonDataList )
if searchForUsedTemplates then
for preprocess in string.gmatch( content, ':preprocess%s*(%b())' ) do
local function recursiveGMatch( str, pat )
local list = {}
local i = 0
repeat
for match in string.gmatch( list[i] or str, pat ) do
table.insert( list, match )
end
i = i + 1
until i > #list or i > 100
i = 0
return function()
i = i + 1
return list[i]
end
end
for template in recursiveGMatch( preprocess, '{(%b{})}' ) do
local name = string.match( template, '{(.-)[|{}]' )
if name ~= '' then
if name:find( ':' ) then
local ns = name:match( '^(.-):' )
if arr.contains( {'', 'template', 'calculator', 'user'}, ns:lower() ) then
table.insert( usedTemplateList, name )
elseif ns == ns:upper() then
table.insert( usedTemplateList, ns ) -- Probably a magic word
end
else
if name:match( '^%u+$' ) or name == '!' then
table.insert( usedTemplateList, name ) -- Probably a magic word
else
table.insert( usedTemplateList, 'Template:'..name )
end
end
end
end
end
end
requireList = requireList .. dynamicRequirelist
requireList = requireList:unique()
loadDataList = loadDataList .. dynamicLoadDataList
loadDataList = loadDataList:unique()
loadJsonDataList = loadJsonDataList .. dynamicLoadJsonDataList
usedTemplateList = usedTemplateList:unique()
extraCategories = extraCategories:unique()
table.sort( requireList )
table.sort( loadDataList )
table.sort( loadJsonDataList )
table.sort( usedTemplateList )
table.sort( extraCategories )
return {
requireList = requireList,
loadDataList = loadDataList,
loadJsonDataList = loadJsonDataList,
usedTemplateList = usedTemplateList,
extraCategories = extraCategories
}
end
--- Returns a list with module and function names used in all '{{#Invoke:moduleName|funcName}}' found on page 'templateName'.
---@param templateName string
---@return table<string, string>[]
local function getInvokeCallList( templateName )
local content = mw.title.new( templateName ):getContent()
local invokeList = {}
assert( content ~= nil, string.format( '%s does not exist', templateName ) )
for moduleName, funcName in string.gmatch( content, '{{[{|safeubt:}]-#[Ii]nvoke:([^|]+)|([^}|]+)[^}]*}}' ) do
moduleName = formatModuleName( moduleName )
funcName = mw.text.trim( funcName )
if string.find( funcName, '^{{{' ) then
funcName = funcName .. '}}}'
end
table.insert( invokeList, {moduleName=moduleName, funcName=funcName} )
end
-- For form calcs invoking the module directly
for config in dualGmatch( content, '<pre%s+class%s*=%s*["\']jcConfig["\'](.-)</pre>', '{{[Ff]orm calculator%s*|(.+)}}' ) do
local moduleName = string.match( config, 'module%s*=%s*(.-)[\n|]' )
if param.has_content( moduleName ) then
moduleName = formatModuleName( moduleName )
local funcName = string.match( config, 'modulefunc%s*=%s*(.-)[\n|]' ) or 'main'
table.insert( invokeList, {moduleName=moduleName, funcName=funcName} )
end
end
invokeList = arr.unique( invokeList, function(x) return x.moduleName..x.funcName end )
table.sort( invokeList, function(x, y) return x.moduleName..x.funcName < y.moduleName..y.funcName end )
return invokeList
end
---@param pageName string
---@param addCategories boolean
---@return string
local function messageBoxUnused( pageName, addCategories )
local html = mw.html.create( 'table' ):addClass( 'messagebox obsolete plainlinks' )
html:tag( 'td' )
:attr( 'width', '40xp' )
:wikitext( '[[File:Willow logs (historical).png|center|30px|link=]]' )
:done()
:tag( 'td' )
:wikitext( "'''This module is unused.'''" )
:tag( 'div' )
:css{ ['font-size']='0.85em', ['line-height']='1.45em' }
:wikitext( string.format( 'This module is neither invoked by a template nor required/loaded by another module. If this is in error, make sure to add <code>{{[[Template:Documentation|Documentation]]}}</code>/<code>{{[[Template:No documentation|No documentation]]}}</code> to the calling template\'s or parent\'s module documentation.', pageName ) )
:wikitext( addCategories and '[[Category:Unused modules]]' or '' )
:done()
:done()
return tostring( html )
end
local function collapseList( list, id, listType )
local text = string.format( '%d %s', #list, listType )
local button = tooltip._span{ name=id, alt=text }
list = arr.map( list, function(x) return '\n# '..x end )
local content = tooltip._div{ name=id, content='\n'..table.concat( list )..'\n\n' }
return { tostring( button ) .. tostring( content ) }
end
--- Creates a link to [[Special:Search]] showing all pages found by getDynamicRequireList() in case it found more than MAX_DYNAMIC_REQUIRE_LIST_LENGTH pages.
---@param query string @This will be in a format like 'Module:Wowee/%' or 'Module:Wowee/%/data'
---@return string
local function formatDynamicQueryLink( query )
local prefix = query:match( '^([^/]+)' )
local linkText = query:gsub( '%%', '< ... >' )
query = query:gsub( '^Module:', '' )
query = query:gsub( '([^/]+)/?', function ( match )
if match == '%' then
return '\\/[^\\/]+'
else
return '\\/"' .. match .. '"'
end
end )
query = query:gsub( '^\\/', '' )
query = string.format(
'intitle:/%s%s/i -intitle:/%s\\/""/i -intitle:doc prefix:"%s"',
query,
query:find( '"$' ) and '' or '""',
query,
prefix
)
return string.format( '<span class="plainlinks">[%s %s]</span>', tostring( mw.uri.fullUrl( 'Special:Search', { search = query } ) ), linkText )
end
---@param templateName string
---@param addCategories boolean
---@param invokeList table<string, string>[] @This is the list returned by getInvokeCallList()
---@return string
local function formatInvokeCallList( templateName, addCategories, invokeList )
local category = addCategories and '[[Category:Lua-based templates]]' or ''
local res = {}
for _, item in ipairs( invokeList ) do
table.insert( res, string.format(
"<div class='seealso'>'''%s''' invokes function '''%s''' in [[%s]] using [[Brighter Shores:Lua|Lua]].</div>",
templateName,
item.funcName,
item.moduleName
) )
end
if #invokeList > 0 then
table.insert( res, category )
end
return table.concat( res )
end
---@param moduleName string
---@param addCategories boolean
---@param whatLinksHere string @A list generated by a dpl of pages in the Template or Calculator namespace which link to moduleName.
---@return string
local function formatInvokedByList( moduleName, addCategories, whatLinksHere )
local function lcfirst( str )
return string.gsub( str, '^[Mm]odule:.', string.lower )
end
local templateData = arr.map( whatLinksHere, function(x) return {templateName=x, invokeList=getInvokeCallList(x)} end )
templateData = arr.filter( templateData, function(x)
return arr.any( x.invokeList, function(y)
return lcfirst(y.moduleName) == lcfirst(moduleName)
end )
end )
local invokedByList = {}
for _, template in ipairs( templateData ) do
for _, invoke in ipairs( template.invokeList ) do
table.insert( invokedByList, string.format( "function '''%s''' is invoked by [[%s]]", invoke.funcName, template.templateName ) )
end
end
table.sort( invokedByList)
local res = {}
if #invokedByList > COLLAPSE_LIST_LENGTH_THRESHOLD then
table.insert( res, string.format(
"<div class='seealso'>'''%s''' is invoked by %s.</div>",
moduleName,
collapseList( invokedByList, 'invokedBy', 'templates' )[1]
) )
else
for _, item in ipairs( invokedByList ) do
table.insert( res, string.format(
"<div class='seealso'>'''%s's''' %s.</div>",
moduleName,
item
) )
end
end
if #templateData > 0 then
moduleIsUsed = true
table.insert( res, (addCategories and '[[Category:Template invoked modules]]' or '') )
end
return table.concat( res )
end
---@param moduleName string
---@param addCategories boolean
---@param whatLinksHere string @A list generated by a dpl of pages in the Module namespace which link to moduleName.
---@return string
local function formatRequiredByList( moduleName, addCategories, whatLinksHere )
local childModuleData = arr.map( whatLinksHere, function ( title )
local lists = getRequireList( title )
return {name=title, requireList=lists.requireList, loadDataList=lists.loadDataList .. lists.loadJsonDataList}
end )
local requiredByList = arr.map( childModuleData, function ( item )
if arr.any( item.requireList, function(x) return x:lower()==moduleName:lower() end ) then
if item.name:find( '%%' ) then
return formatDynamicQueryLink( item.name )
else
return '[[' .. item.name .. ']]'
end
end
end )
local loadedByList = arr.map( childModuleData, function ( item )
if arr.any( item.loadDataList, function(x) return x:lower()==moduleName:lower() end ) then
if item.name:find( '%%' ) then
return formatDynamicQueryLink( item.name )
else
return '[[' .. item.name .. ']]'
end
end
end )
if #requiredByList > 0 or #loadedByList > 0 then
moduleIsUsed = true
end
if #requiredByList > COLLAPSE_LIST_LENGTH_THRESHOLD then
requiredByList = collapseList( requiredByList, 'requiredBy', 'modules' )
end
if #loadedByList > COLLAPSE_LIST_LENGTH_THRESHOLD then
loadedByList = collapseList( loadedByList, 'loadedBy', 'modules' )
end
local res = {}
for _, requiredByModuleName in ipairs( requiredByList ) do
table.insert( res, string.format(
"<div class='seealso'>'''%s''' is required by %s.</div>",
moduleName,
requiredByModuleName
) )
end
if #requiredByList > 0 then
table.insert( res, (addCategories and '[[Category:Modules required by modules]]' or '') )
end
for _, loadedByModuleName in ipairs( loadedByList ) do
table.insert( res, string.format(
"<div class='seealso'>'''%s''' is loaded by %s.</div>",
moduleName,
loadedByModuleName
) )
end
if #loadedByList > 0 then
table.insert( res, (addCategories and '[[Category:Module data]]' or '') )
end
return table.concat( res )
end
local function formatImportList( currentPageName, moduleList, id, message, category )
if #moduleList > COLLAPSE_LIST_LENGTH_THRESHOLD then
moduleList = collapseList( moduleList, id, 'modules' )
end
local res = arr.map( moduleList, function( moduleName )
return '<div class="seealso">' .. string.format( message, currentPageName, moduleName ) .. '</div>'
end )
if #moduleList > 0 and category then
table.insert( res, string.format( '[[Category:%s]]', category ) )
end
return table.concat( res )
end
local function formatUsedTemplatesList( currentPageName, addCategories, usedTemplateList )
local res = {}
if #usedTemplateList > COLLAPSE_LIST_LENGTH_THRESHOLD then
usedTemplateList = collapseList( usedTemplateList, 'usedTemplates', 'templates' )
end
for _, templateName in ipairs( usedTemplateList ) do
table.insert( res, string.format(
"<div class='seealso'>'''%s''' transcludes %s using <samp>frame:preprocess()</samp>.</div>",
currentPageName,
templateName
) )
end
return table.concat( res )
end
function p.main( frame )
local args = frame:getParent().args
return p._main( args[1], args.category, args.isUsed )
end
---@param currentPageName string|nil
---@param addCategories boolean|string|nil
---@return string
function p._main( currentPageName, addCategories, isUsed )
libraryUtil.checkType( 'Module:RequireList._main', 1, currentPageName, 'string', true )
libraryUtil.checkTypeMulti( 'Module:RequireList._main', 2, addCategories, {'boolean', 'string', 'nil'} )
libraryUtil.checkTypeMulti( 'Module:RequireList._main', 3, isUsed, {'boolean', 'string', 'nil'} )
local title = mw.title.getCurrentTitle()
-- Leave early if not in module, template or calculator namespace or if module is part of exchange or data groups
if param.is_empty( currentPageName ) and (
( not arr.contains( {'Module', 'Template', 'Calculator'}, title.nsText ) ) or
( title.nsText == 'Module' and ( arr.contains( {'Exchange', 'Exchange historical', 'Data'}, title.text:match( '^(.-)/' ) ) ) )
) then
return ''
end
currentPageName = param.default_to( currentPageName, title.fullText )
currentPageName = string.gsub( currentPageName, '/[Dd]oc$', '' )
currentPageName = formatPageName( currentPageName )
addCategories = yn( param.default_to( addCategories, title.subpageText~='doc' ) )
moduleIsUsed = yn( param.default_to( isUsed, false ) )
if title.text:lower():find( 'sandbox' ) then
moduleIsUsed = true -- Don't show sandbox modules as unused
end
if currentPageName:find( '^Template:' ) or currentPageName:find( '^Calculator:' ) then
local invokeList = getInvokeCallList( currentPageName )
return formatInvokeCallList(currentPageName, addCategories, invokeList)
end
local whatTemplatesLinkHere, whatModulesLinkHere = dpl.ask( {
namespace = 'Template|Calculator',
linksto = currentPageName,
distinct = 'strict',
ignorecase = true,
ordermethod = 'title',
allowcachedresults = true,
cacheperiod = 604800 -- One week
}, {
namespace = 'Module',
linksto = currentPageName,
nottitlematch = '%/doc|Exchange/%|Exchange historical/%|Data/%|' .. currentPageName:gsub( 'Module:', '' ),
distinct = 'strict',
ignorecase = true,
ordermethod = 'title',
allowcachedresults = true,
cacheperiod = 604800 -- One week
} )
local lists = getRequireList( currentPageName, true )
local requireList = arr.map( lists.requireList, function ( moduleName )
if moduleName:find( '%%' ) then
return formatDynamicQueryLink( moduleName )
elseif builtins[moduleName] then
return '[[' .. builtins[moduleName].link .. '|' .. moduleName .. ']]'
else
return '[[' .. moduleName .. ']]'
end
end )
local loadDataList = arr.map( lists.loadDataList, function ( moduleName )
if moduleName:find( '%%' ) then
return formatDynamicQueryLink( moduleName )
else
return '[[' .. moduleName .. ']]'
end
end )
local loadJsonDataList = arr.map( lists.loadJsonDataList, function ( moduleName )
if moduleName:find( '%%' ) then
return formatDynamicQueryLink( moduleName )
else
return '[[' .. moduleName .. ']]'
end
end )
local usedTemplateList = arr.map( lists.usedTemplateList, function( templateName )
if string.find( templateName, ':' ) then -- Real templates are prefixed by a namespace, magic words are not
return '[['..templateName..']]'
else
return "'''{{"..templateName.."}}'''" -- Magic words don't have a page so make them bold instead
end
end )
local res = {}
table.insert( res, formatInvokedByList( currentPageName, addCategories, whatTemplatesLinkHere ) )
table.insert( res, formatImportList( currentPageName, requireList, 'require', "'''%s''' requires %s.", addCategories and 'Modules requiring modules' ) )
table.insert( res, formatImportList( currentPageName, loadDataList, 'loadData', "'''%s''' loads data from %s.", addCategories and 'Modules using data' ) )
table.insert( res, formatImportList( currentPageName, loadJsonDataList, 'loadJsonData', "'''%s''' loads data from %s.", addCategories and 'Modules using data' ) )
table.insert( res, formatUsedTemplatesList( currentPageName, addCategories, usedTemplateList ) )
table.insert( res, formatRequiredByList( currentPageName, addCategories, whatModulesLinkHere ) )
if addCategories then
local extraCategories = arr.map( lists.extraCategories, function( categoryName )
return "[[Category:" .. categoryName .. "]]"
end )
table.insert( res, table.concat( extraCategories ) )
end
if not moduleIsUsed then
table.insert( res, 1, messageBoxUnused( currentPageName:gsub( 'Module:', '' ), addCategories ) )
end
return table.concat( res )
end
return p
89fb41befeb6c6cc48594080a88d87225bbd2b64
Module:DependencyList/doc
828
232
406
2024-03-22T17:47:59Z
Habblet
11
Created page with "{{No documentation}}"
wikitext
text/x-wiki
{{No documentation}}
ad36a615c98d03e22b03ecaa7b9d7d87b5d7b517
Template:No documentation
10
233
407
2024-03-22T17:48:44Z
Habblet
11
Created page with "<includeonly>{{Documentation|Template:No documentation|DependencyList=No}} <span class='plainlinks'>'''This {{PageType}} does not have any documentation.''' Please consider adding documentation at [[{{#replace:{{FULLPAGENAME}}|/doc}}/doc]]. <nowiki>[</nowiki>[{{fullurl:{{#replace:{{FULLPAGENAME}}|/doc}}/doc|action=edit}} edit]<nowiki>]</nowiki></span>{{#If:{{{DependencyList|}}}||{{DependencyList}}}}[[Category:Pages needing documentation]]</includeonly><noinclude>{{/doc}}..."
wikitext
text/x-wiki
<includeonly>{{Documentation|Template:No documentation|DependencyList=No}}
<span class='plainlinks'>'''This {{PageType}} does not have any documentation.''' Please consider adding documentation at [[{{#replace:{{FULLPAGENAME}}|/doc}}/doc]]. <nowiki>[</nowiki>[{{fullurl:{{#replace:{{FULLPAGENAME}}|/doc}}/doc|action=edit}} edit]<nowiki>]</nowiki></span>{{#If:{{{DependencyList|}}}||{{DependencyList}}}}[[Category:Pages needing documentation]]</includeonly><noinclude>{{/doc}}</noinclude>
dc2c79675df9a4bdc9b56f381202884e4cd335da
Template:Permanent Protection/doc
10
234
408
2024-03-22T17:48:50Z
BlackHawk
10
Created page with "{{documentation}} This template displays a notice that a page is permanently protected. ==Usage== This template can be used by entering the following onto a relevant page. It will automatically add [[:Category:Permanently protected pages]] to the page. <pre>{{Permanent Protection}}</pre> <includeonly>[[Category:Transclusion templates|{{PAGENAME}}]]</includeonly>"
wikitext
text/x-wiki
{{documentation}}
This template displays a notice that a page is permanently protected.
==Usage==
This template can be used by entering the following onto a relevant page. It will automatically add [[:Category:Permanently protected pages]] to the page.
<pre>{{Permanent Protection}}</pre>
<includeonly>[[Category:Transclusion templates|{{PAGENAME}}]]</includeonly>
d2dfee01e636c214ea38d418a9232de4622fdca4
Template:No documentation/doc
10
235
409
2024-03-22T17:48:53Z
Habblet
11
Created page with "{{Documentation}} This template should be used when there is no documentation for a Module or Template."
wikitext
text/x-wiki
{{Documentation}}
This template should be used when there is no documentation for a Module or Template.
85dd718567c1a7e192962721bcf1ba9fa1a7468e
Module:Documentation
828
236
410
2024-03-22T17:49:18Z
Habblet
11
Created page with "-- <nowiki> local dependencyList = require( 'Module:DependencyList' ) local yn = require( 'Module:Yesno' ) local p = {} function p.doc( frame ) local title = mw.title.getCurrentTitle() local args = frame:getParent().args local page = args[1] or mw.ustring.gsub( title.fullText, '/doc$', '' ) local addDependencyList = yn( args.DependencyList or true ) local ret, cats, ret1, ret2, ret3 local onModule = title.namespace == 828 -- subpage head..."
Scribunto
text/plain
-- <nowiki>
local dependencyList = require( 'Module:DependencyList' )
local yn = require( 'Module:Yesno' )
local p = {}
function p.doc( frame )
local title = mw.title.getCurrentTitle()
local args = frame:getParent().args
local page = args[1] or mw.ustring.gsub( title.fullText, '/doc$', '' )
local addDependencyList = yn( args.DependencyList or true )
local ret, cats, ret1, ret2, ret3
local onModule = title.namespace == 828
-- subpage header
if title.subpageText == 'doc' then
ret = mw.html.create( 'table' )
:addClass( 'messagebox' )
:addClass( 'info' )
:tag( 'tr' )
:tag( 'td' )
:css( 'width', '40px' )
:wikitext( '[[File:Information icon-grey.svg|35px|centre|link=]]' )
:done()
:tag( 'td' )
:tag( 'b' )
:wikitext( 'This is a documentation subpage for [[' .. page .. ']].' )
:done()
:tag( 'div' )
:css({ ['font-size'] = '0.85em', ['line-height'] = '1.4em' })
:wikitext(
string.format(
'It contains usage information, categories, and other content that is not part of the original %s page.',
onModule and 'module' or 'template'
)
)
:done()
:done()
:done()
:done()
if title.namespace == 10 then -- Template namespace
cats = '[[Category:Template documentation|' .. title.baseText .. ']]'
ret2 = addDependencyList and dependencyList._main() or ''
elseif title.namespace == 116 then -- Calculator namespace
cats = ''
ret2 = addDependencyList and dependencyList._main() or ''
elseif title.namespace == 828 then -- Module namespace
cats = '[[Category:Module documentation|' .. title.baseText .. ']]'
ret2 = addDependencyList and dependencyList._main() or ''
else
cats = ''
ret2 = ''
end
return tostring( ret ) .. ret2 .. cats
end
-- template header
-- don't use mw.html as we aren't closing the main div tag
ret1 = '<div class="documentation">'
ret2 = mw.html.create( nil )
:tag( 'div' )
:addClass( 'doc-header documentation-header')
:tag( 'span' )
:addClass( 'doc-title documentation-title' )
:wikitext( string.format('%s documentation', onModule and 'Module' or 'Template') )
:done()
:done()
:tag( 'div' )
:addClass( 'doc-transclusion documentation-subheader' )
:tag( 'span' )
:addClass( 'documentation-documentation' )
:wikitext( 'This documentation is transcluded from [[' .. page .. '/doc]]. ' )
:done()
:tag( 'span' )
:addClass( 'doc-editlinks documentation-links plainlinks' )
:wikitext(
'[[' .. tostring( mw.uri.fullUrl( page .. '/doc', {action='edit'} ) ) .. ' edit]] ' ..
'[[' .. tostring( mw.uri.fullUrl( page .. '/doc', {action='history'} ) ) .. ' history]] ' ..
'[<span class="jsPurgeLink">[' .. tostring( mw.uri.fullUrl( title.fullText, {action='purge'} ) ) .. ' purge]</span>]'
)
:done()
:done()
ret3 = addDependencyList and dependencyList._main() or ''
return ret1 .. tostring( ret2 ) .. '<div class="documentation-content">' .. ret3
end
return p
-- </nowiki>
16c01d5704d359898096ee7210644402c98c11cb
Module:Documentation/doc
828
237
411
2024-03-22T17:49:52Z
Habblet
11
Created page with "{{Documentation}} Implements [[Template:Documentation]] for templates and modules."
wikitext
text/x-wiki
{{Documentation}}
Implements [[Template:Documentation]] for templates and modules.
429c723e14abe34f5687729bb14a614df06db29c
Module:LibraryUtil
828
238
412
2024-03-22T17:50:39Z
Habblet
11
Created page with "-- <nowiki> local libraryUtil = require( 'libraryUtil' ) -- libraryUtil is a standard scribunto module, the following commented out code is just to show what is inside it. Documentation about these functions can be found at https://www.mediawiki.org/wiki/Extension:Scribunto/Lua_reference_manual#libraryUtil --[=[ local libraryUtil = {} function libraryUtil.checkType( name, argIdx, arg, expectType, nilOk ) if arg == nil and nilOk then return end if type( arg ) ~= ex..."
Scribunto
text/plain
-- <nowiki>
local libraryUtil = require( 'libraryUtil' )
-- libraryUtil is a standard scribunto module, the following commented out code is just to show what is inside it. Documentation about these functions can be found at https://www.mediawiki.org/wiki/Extension:Scribunto/Lua_reference_manual#libraryUtil
--[=[
local libraryUtil = {}
function libraryUtil.checkType( name, argIdx, arg, expectType, nilOk )
if arg == nil and nilOk then
return
end
if type( arg ) ~= expectType then
local msg = string.format( "bad argument #%d to '%s' (%s expected, got %s)",
argIdx, name, expectType, type( arg )
)
error( msg, 3 )
end
end
function libraryUtil.checkTypeMulti( name, argIdx, arg, expectTypes )
local argType = type( arg )
for _, expectType in ipairs( expectTypes ) do
if argType == expectType then
return
end
end
local n = #expectTypes
local typeList
if n > 1 then
typeList = table.concat( expectTypes, ', ', 1, n - 1 ) .. ' or ' .. expectTypes[n]
else
typeList = expectTypes[1]
end
local msg = string.format( "bad argument #%d to '%s' (%s expected, got %s)",
argIdx,
name,
typeList,
type( arg )
)
error( msg, 3 )
end
function libraryUtil.checkTypeForIndex( index, value, expectType )
if type( value ) ~= expectType then
local msg = string.format( "value for index '%s' must be %s, %s given",
index, expectType, type( value )
)
error( msg, 3 )
end
end
function libraryUtil.checkTypeForNamedArg( name, argName, arg, expectType, nilOk )
if arg == nil and nilOk then
return
end
if type( arg ) ~= expectType then
local msg = string.format( "bad named argument %s to '%s' (%s expected, got %s)",
argName, name, expectType, type( arg )
)
error( msg, 3 )
end
end
function libraryUtil.makeCheckSelfFunction( libraryName, varName, selfObj, selfObjDesc )
return function ( self, method )
if self ~= selfObj then
error( string.format(
"%s: invalid %s. Did you call %s with a dot instead of a colon, i.e. " ..
"%s.%s() instead of %s:%s()?",
libraryName, selfObjDesc, method, varName, method, varName, method
), 3 )
end
end
end
]=]
function libraryUtil.makeCheckClassFunction( libraryName, varName, class, selfObjDesc )
return function ( self, method )
if getmetatable( self ) ~= class then
error( string.format(
"%s: invalid %s. Did you call %s with a dot instead of a colon, i.e. " ..
"%s.%s() instead of %s:%s()?",
libraryName, selfObjDesc, method, varName, method, varName, method
), 3 )
end
end
end
return libraryUtil
-- </nowiki>
e6bdd6cd1d63b0f32aed2b10cac598f1eaacc478
Module:LibraryUtil/doc
828
239
413
2024-03-22T17:50:52Z
Habblet
11
Created page with "{{No documentation}}"
wikitext
text/x-wiki
{{No documentation}}
ad36a615c98d03e22b03ecaa7b9d7d87b5d7b517
Module:Array
828
240
414
2024-03-22T17:51:41Z
Habblet
11
Created page with "local libraryUtil = require('libraryUtil') local checkType = libraryUtil.checkType local checkTypeMulti = libraryUtil.checkTypeMulti ---Returns the length of the array but it also works on proxy arrays ---@param arr any[] ---@return integer local function len(arr) local l = #arr if l == 0 then if arr[1] ~= nil then -- Exponential search to find length of proxy table local low = 1 local high = 1 local ceil = math.ceil while arr[high] ~= nil do high..."
Scribunto
text/plain
local libraryUtil = require('libraryUtil')
local checkType = libraryUtil.checkType
local checkTypeMulti = libraryUtil.checkTypeMulti
---Returns the length of the array but it also works on proxy arrays
---@param arr any[]
---@return integer
local function len(arr)
local l = #arr
if l == 0 then
if arr[1] ~= nil then
-- Exponential search to find length of proxy table
local low = 1
local high = 1
local ceil = math.ceil
while arr[high] ~= nil do
high = high * 2
end
while low ~= high do
local m = ceil((low + high) / 2)
if arr[m] == nil then
high = m - 1
else
low = m
end
end
return low
else
return 0
end
else
return l
end
end
---@class Array
---@operator call(any[]): Array
---@operator concat(any[]): Array
---@operator concat(number|string|function): string
---@operator unm: Array
---@operator add(number|number[]|Array): Array
---@operator sub(number|number[]|Array): Array
---@operator mul(number|number[]|Array): Array
---@operator div(number|number[]|Array): Array
---@operator pow(number|number[]|Array): Array
local Array = {
pop = table.remove,
len = len
}
Array.__index = Array
setmetatable(Array, {
__index = table,
__call = function (_, arr)
return Array.new(arr)
end
})
function Array.__concat(lhs, rhs)
if type(lhs) == 'table' and type(rhs) == 'table' then
local res = {}
local l1 = len(lhs)
for i = 1, l1 do
res[i] = lhs[i]
end
for i = 1, len(rhs) do
res[l1 + i] = rhs[i]
end
return setmetatable(res, getmetatable(lhs) or getmetatable(rhs))
else
return tostring(lhs) .. tostring(rhs)
end
end
function Array.__unm(arr)
return Array.map(arr, function(x) return -x end)
end
---@param lhs number|number[]|Array
---@param rhs number|number[]|Array
---@param funName string
---@param opName string
---@param fun fun(lhs: number, rhs: number): number
---@return Array
local function mathTemplate(lhs, rhs, funName, opName, fun)
checkTypeMulti('Module:Array.' .. funName, 1, lhs, {'number', 'table'})
checkTypeMulti('Module:Array.' .. funName, 2, rhs, {'number', 'table'})
local res = {}
if type(lhs) == 'number' then
for i = 1, len(rhs) do
res[i] = fun(lhs, rhs[i])
end
elseif type(rhs) == 'number' then
for i = 1, len(lhs) do
res[i] = fun(lhs[i], rhs)
end
else
assert(len(lhs) == len(rhs), string.format('Elementwise %s failed because arrays have different sizes (left: %d, right: %d)', opName, len(lhs), len(rhs)))
for i = 1, len(lhs) do
res[i] = fun(lhs[i], rhs[i])
end
end
return setmetatable(res, getmetatable(lhs) or getmetatable(rhs))
end
function Array.__add(lhs, rhs)
return mathTemplate(lhs, rhs, '__add', 'addition', function(x, y) return x + y end)
end
function Array.__sub(lhs, rhs)
return mathTemplate(lhs, rhs, '__sub', 'substraction', function(x, y) return x - y end)
end
function Array.__mul(lhs, rhs)
return mathTemplate(lhs, rhs, '__mul', 'multiplication', function(x, y) return x * y end)
end
function Array.__div(lhs, rhs)
return mathTemplate(lhs, rhs, '__div', 'division', function(x, y) return x / y end)
end
function Array.__pow(lhs, rhs)
return mathTemplate(lhs, rhs, '__pow', 'exponentiation', function(x, y) return x ^ y end)
end
function Array.__eq(lhs, rhs)
if len(lhs) ~= len(rhs) then
return false
end
for i = 1, len(lhs) do
if lhs[i] ~= rhs[i] then
return false
end
end
return true
end
---Behaviour depends on the value of `fn`:
---* `nil` - Checks that the array doesn't contain any **false** elements.
---* `fun(elem: any, i?: integer): boolean` - Returns **true** if `fn` returns **true** for every element.
---* `number` | `table` | `boolean` - Checks that all elements in `arr` are equal to this value.
---@param arr any[]
---@param fn? any
---@return boolean
function Array.all(arr, fn)
checkType('Module:Array.all', 1, arr, 'table')
if fn == nil then fn = function(item) return item end end
if type(fn) ~= 'function' then
local val = fn
fn = function(item) return item == val end
end
for i = 1, len(arr) do
---@diagnostic disable-next-line: redundant-parameter
if not fn(arr[i], i) then
return false
end
end
return true
end
---Behaviour depends on the value of `fn`:
---* `nil` - Checks that the array contains at least one non **false** element.
---* `fun(elem: any, i?: integer): boolean` - Returns **true** if `fn` returns **true** for at least one element.
---* `number` | `table` | `boolean` - Checks that `arr` contains this value.
---@param arr any[]
---@param fn? any
---@return boolean
function Array.any(arr, fn)
checkType('Module:Array.any', 1, arr, 'table')
if fn == nil then fn = function(item) return item end end
if type(fn) ~= 'function' then
local val = fn
fn = function(item) return item == val end
end
for i = 1, len(arr) do
---@diagnostic disable-next-line: redundant-parameter
if fn(arr[i], i) then
return true
end
end
return false
end
---Recursively removes all metatables.
---@param arr any[]
---@return any[]
function Array.clean(arr)
checkType('Module:Array.clean', 1, arr, 'table')
for i = 1, len(arr) do
if type(arr[i]) == 'table' then
Array.clean(arr[i])
end
end
setmetatable(arr, nil)
return arr
end
---Make a copy of the input table. Preserves metatables.
---@generic T: any[]
---@param arr T
---@param deep? boolean # Recursively clone subtables if **true**.
---@return T
function Array.clone(arr, deep)
checkType('Module:Array.clone', 1, arr, 'table')
checkType('Module:Array.clone', 2, deep, 'boolean', true)
local res = {}
for i = 1, len(arr) do
if deep == true and type(arr[i]) == 'table' then
res[i] = Array.clone(arr[i], true)
else
res[i] = arr[i]
end
end
return setmetatable(res, getmetatable(arr))
end
---Check if `arr` contains `val`.
---@param arr any[]
---@param val any
---@return boolean
function Array.contains(arr, val)
checkType('Module:Array.contains', 1, arr, 'table')
for i = 1, len(arr) do
if arr[i] == val then
return true
end
end
return false
end
---Check if `arr` contains any of the values in the table `t`.
---@param arr any[]
---@param t any[]
---@return boolean
function Array.containsAny(arr, t)
checkType('Module:Array.containsAny', 1, arr, 'table')
checkType('Module:Array.containsAny', 2, t, 'table')
local lookupTbl = {}
for i = 1, len(t) do
lookupTbl[t[i]] = true
end
for i = 1, len(arr) do
if lookupTbl[arr[i]] then
return true
end
end
return false
end
---Check if `arr` contains all values in the table `t`.
---@param arr any[]
---@param t any[]
---@return boolean
function Array.containsAll(arr, t)
checkType('Module:Array.containsAll', 1, arr, 'table')
checkType('Module:Array.containsAll', 2, t, 'table')
local lookupTbl = {}
local trueCount = 0
local l = len(t)
for i = 1, l do
lookupTbl[t[i]] = false
end
for i = 1, len(arr) do
if lookupTbl[arr[i]] == false then
lookupTbl[arr[i]] = true
trueCount = trueCount + 1
end
if trueCount == l then
return true
end
end
return false
end
---Convolute two number arrays.
---@generic T: number[]
---@param x T
---@param y T
---@return T
function Array.convolve(x, y)
checkType('Module:Array.convolve', 1, x, 'table')
checkType('Module:Array.convolve', 2, y, 'table')
local z = {}
local xLen, yLen = len(x), len(y)
for j = 1, (xLen + yLen - 1) do
local sum = 0
for k = math.max(1, j - yLen + 1), math.min(xLen, j) do
sum = sum + x[k] * y[j-k+1]
end
z[j] = sum
end
return setmetatable(z, getmetatable(x) or getmetatable(y))
end
---Remove **nil** values from `arr` while preserving order.
---@generic T: any[]
---@param arr T
---@return T
function Array.condenseSparse(arr)
checkType('Module:Array.condenseSparse', 1, arr, 'table')
local keys = {}
local res = {}
local l = 0
for k in pairs(arr) do
l = l + 1
keys[l] = k
end
table.sort(keys)
for i = 1, l do
res[i] = arr[keys[i]]
end
return setmetatable(res, getmetatable(arr))
end
---Behaviour depends on value of `val`:
---* `nil` - Counts the number of non **false** elements.
---* `fun(elem: any): boolean` - Count the number of times the function returned **true**.
---* `boolean` | `number` | `table` - Counts the number of times this value occurs in `arr`.
---@param arr any[]
---@param val? any
---@return integer
function Array.count(arr, val)
checkType('Module:Array.count', 1, arr, 'table')
if val == nil then val = function(item) return item end end
if type(val) ~= 'function' then
local _val = val
val = function(item) return item == _val end
end
local count = 0
for i = 1, len(arr) do
if val(arr[i]) then
count = count + 1
end
end
return count
end
---Differentiate the array
---@generic T: number[]
---@param arr T
---@param order number? # Oder of the differentiation. Default is 1.
---@return T # Length is `#arr - order`
function Array.diff(arr, order)
checkType('Module:Array.diff', 1, arr, 'table')
checkType('Module:Array.diff', 2, order, 'number', true)
local res = {}
for i = 1, len(arr) - 1 do
res[i] = arr[i+1] - arr[i]
end
if order and order > 1 then
return Array.diff(res, order - 1)
end
return setmetatable(res, getmetatable(arr))
end
---Loops over `arr` and passes each element as the first argument to `fn`. This function returns nothing.
---@param arr any[]
---@param fn fun(elem: any, i?: integer)
function Array.each(arr, fn)
checkType('Module:Array.each', 1, arr, 'table')
checkType('Module:Array.each', 2, fn, 'function')
for i = 1, len(arr) do
fn(arr[i], i)
end
end
---Makes a copy of `arr` with only elements for which `fn` returned **true**.
---@generic T: any[]
---@param arr T
---@param fn fun(elem: any, i?: integer): boolean
---@return T
function Array.filter(arr, fn)
checkType('Module:Array.filter', 1, arr, 'table')
checkType('Module:Array.filter', 2, fn, 'function')
local r = {}
local l = 0
for i = 1, len(arr) do
if fn(arr[i], i) then
l = l + 1
r[l] = arr[i]
end
end
return setmetatable(r, getmetatable(arr))
end
---Find the first elements for which `fn` returns **true**.
---@param arr any[]
---@param fn any # A value to look for or a function of the form `fun(elem: any, i?: integer): boolean`.
---@param default? any # Value to return if no element passes the test.
---@return any? elem # The first element that passed the test.
---@return integer? i # The index of the item that passed the test.
function Array.find(arr, fn, default)
checkType('Module:Array.find', 1, arr, 'table')
checkTypeMulti('Module:Array.find_index', 2, fn, {'function', 'table', 'number', 'boolean'})
if type(fn) ~= 'function' then
local _val = fn
fn = function(item) return item == _val end
end
for i = 1, len(arr) do
---@diagnostic disable-next-line: redundant-parameter
if fn(arr[i], i) then
return arr[i], i
end
end
return default, nil
end
---Find the index of `val`.
---@param arr any[]
---@param val any # A value to look for or a function of the form `fun(elem: any, i?: integer): boolean`.
---@param default? any # Value to return if no element passes the test.
---@return integer?
function Array.find_index(arr, val, default)
checkType('Module:Array.find_index', 1, arr, 'table')
checkTypeMulti('Module:Array.find_index', 2, val, {'function', 'table', 'number', 'boolean'})
if type(val) ~= 'function' then
local _val = val
val = function(item) return item == _val end
end
for i = 1, len(arr) do
---@diagnostic disable-next-line: redundant-parameter
if val(arr[i], i) then
return i
end
end
return default
end
---Extracts a subset of `arr`.
---@generic T: any[]
---@param arr T
---@param indexes integer|integer[] # Indexes of the elements.
---@return T
function Array.get(arr, indexes)
checkType('Module:Array.set', 1, arr, 'table')
checkTypeMulti('Module:Array.set', 2, indexes, {'table', 'number'})
if type(indexes) == 'number' then
indexes = {indexes}
end
local res = {}
for i = 1, len(indexes) do
res[i] = arr[indexes[i]]
end
return setmetatable(res, getmetatable(arr))
end
---Integrates the array. Effectively does $\left\{\sum^{n}_{start}{arr[n]} \,\Bigg|\, n \in [start, stop]\right\}$.
---@generic T: number[]
---@param arr T # number[]
---@param start? integer # Index where to start the summation. Defaults to 1.
---@param stop? integer # Index where to stop the summation. Defaults to #arr.
---@return T
function Array.int(arr, start, stop)
checkType('Module:Array.int', 1, arr, 'table')
checkType('Module:Array.int', 2, start, 'number', true)
checkType('Module:Array.int', 3, stop, 'number', true)
local res = {}
start = start or 1
stop = stop or len(arr)
res[1] = arr[start]
for i = 1, stop - start do
res[i+1] = res[i] + arr[start + i]
end
return setmetatable(res, getmetatable(arr))
end
---Returns an array with elements that are present in both tables.
---@generic T: any[]
---@param arr1 T
---@param arr2 T
---@return T
function Array.intersect(arr1, arr2)
checkType('Module:Array.intersect', 1, arr1, 'table')
checkType('Module:Array.intersect', 2, arr2, 'table')
local arr2Elements = {}
local res = {}
local l = 0
Array.each(arr2, function(item) arr2Elements[item] = true end)
Array.each(arr1, function(item)
if arr2Elements[item] then
l = l + 1
res[l] = item
end
end)
return setmetatable(res, getmetatable(arr1) or getmetatable(arr2))
end
---Checks if the two inputs have at least one element in common.
---@param arr1 any[]
---@param arr2 any[]
---@return boolean
function Array.intersects(arr1, arr2)
checkType('Module:Array.intersects', 1, arr1, 'table')
checkType('Module:Array.intersects', 2, arr2, 'table')
local small = {}
local large
if len(arr1) <= len(arr2) then
Array.each(arr1, function(item) small[item] = true end)
large = arr2
else
Array.each(arr2, function(item) small[item] = true end)
large = arr1
end
return Array.any(large, function(item) return small[item] end)
end
---Inserts values into `arr`.
---@generic T: any[]
---@param arr T
---@param val any # If `val` is an array and `unpackVal` is **true** then the individual elements of `val` are inserted.
---@param index? integer # Location to start the insertion. Default is at the end of `arr`.
---@param unpackVal? boolean # Default is **false**.
---@return T
---@overload fun(arr: T, val: any, unpackVal: boolean): T
function Array.insert(arr, val, index, unpackVal)
checkType('Module:Array.insert', 1, arr, 'table')
checkTypeMulti('Module:Array.insert', 3, index, {'number', 'boolean', 'nil'})
checkType('Module:Array.insert', 4, unpackVal, 'boolean', true)
if type(index) == 'boolean' then
unpackVal, index = index, nil
end
local l = len(arr)
index = index or (l + 1)
local mt = getmetatable(arr)
setmetatable(arr, nil)
if unpackVal and type(val) == 'table' then
local l2 = len(val)
for i = 0, l - index do
arr[l + l2 - i] = arr[l - i]
end
for i = 0, l2 - 1 do
arr[index + i] = val[i + 1]
end
else
table.insert(arr, index, val)
end
return setmetatable(arr, mt)
end
---Returns the last element of `arr`.
---@param arr any[]
---@param offset? integer
---@return any
function Array.last(arr, offset)
checkType('Module:Array.last', 1, arr, 'table')
checkType('Module:Array.last', 2, offset, 'number', true)
return arr[len(arr) + offset]
end
---Returns a new table were each element of `arr` is modified by `fn`.
---@generic T: any[]
---@param arr T
---@param fn fun(elem: any, i?: integer): any # First argument is the current element, the second argument is the index of the current element.
---@return T
function Array.map(arr, fn)
checkType('Module:Array.map', 1, arr, 'table')
checkType('Module:Array.map', 2, fn, 'function')
local l = 0
local r = {}
for i = 1, len(arr) do
local tmp = fn(arr[i], i)
if tmp ~= nil then
l = l + 1
r[l] = tmp
end
end
return setmetatable(r, getmetatable(arr))
end
---Find the element for which `fn` returned the largest value.
---@param arr any[]
---@param fn fun(elem: any): any # The returned value needs to be comparable using the `<` operator.
---@return any elem # The element with the largest `fn` value.
---@return integer i # The index of this element.
function Array.max_by(arr, fn)
checkType('Module:Array.max_by', 1, arr, 'table')
checkType('Module:Array.max_by', 2, fn, 'function')
return unpack(Array.reduce(arr, function(new, old, i)
local y = fn(new)
return y > old[2] and {new, y, i} or old
end, {nil, -math.huge}))
end
---Find the largest value in the array.
---@param arr any[] # The values need to be comparable using the `<` operator.
---@return any elem
---@return integer i # The index of the largest value.
function Array.max(arr)
checkType('Module:Array.max', 1, arr, 'table')
local val, _, i = Array.max_by(arr, function(x) return x end)
return val, i
end
---Find the smallest value in the array.
---@param arr any[] # The values need to be comparable using the `<` operator.
---@return any elem
---@return integer i # The index of the smallest value.
function Array.min(arr)
checkType('Module:Array.min', 1, arr, 'table')
local val, _, i = Array.max_by(arr, function(x) return -x end)
return val, i
end
---Turn the input table into an Array. This makes it possible to use the colon `:` operator to access the Array methods.
---
---It also enables the use of math operators with the array.
---```
---local x = arr.new{ 1, 2, 3 }
---local y = arr{ 4, 5, 6 } -- Alternative notation
---
---print( -x ) --> { -1, -2, -3 }
---print( x + 2 ) --> { 3, 4, 5 }
---print( x - 2 ) --> { -1, 0, 1 }
---print( x * 2 ) --> { 2, 4, 6 }
---print( x / 2 ) --> { 0.5, 1, 1.5 }
---print( x ^ 2 ) --> { 1, 4, 9 }
---
---print( x + y ) --> { 5, 7, 9 }
---print( x .. y ) --> { 1, 2, 3, 4, 5, 6 }
---print( (x .. y):reject{3, 4, 5} ) --> { 1, 2, 6 }
---print( x:sum() ) --> 6
---
---print( x:update( {1, 3}, y:get{2, 3} * 2 ) ) --> { 10, 2, 12 }
---```
---@param arr? any[]
---@return Array
function Array.new(arr)
local obj = arr or {}
for _, v in pairs(obj) do
if type(v) == 'table' then
Array.new(v)
end
end
if getmetatable(obj) == nil then
setmetatable(obj, Array)
end
return obj
end
---Creates an object that returns a value that is `step` higher than the previous value each time it gets called.
---
---The stored value can be read without incrementing by reading the `val` field.
---
---A new stored value can be set through the `val` field.
---
---A new step size can be set through the `step` field.
---```
---local inc = arr.newIncrementor(10, 5)
---print( inc() ) --> 10
---print( inc() ) --> 15
---print( inc.val ) --> 15
---inc.val = 100
---inc.step = 20
---print( inc.val ) --> 100
---print( inc() ) --> 120
---```
---@param start? number # Default is 1.
---@param step? number # Default is 1.
---@return Incrementor
function Array.newIncrementor(start, step)
checkType('Module:Array.newIncrementor', 1, start, 'number', true)
checkType('Module:Array.newIncrementor', 2, step, 'number', true)
step = step or 1
local n = (start or 1) - step
---@class Incrementor
local obj = {}
return setmetatable(obj, {
__call = function() n = n + step return n end,
__tostring = function() return tostring(n) end,
__index = function() return n end,
__newindex = function(self, k, v)
if k == 'step' and type(v) == 'number' then
step = v
elseif type(v) == 'number' then
n = v
end
end,
__concat = function(x, y) return tostring(x) .. tostring(y) end
})
end
---Returns a range of numbers.
---@param start number # Start value inclusive.
---@param stop number # Stop value inclusive for integers, exclusive for floats.
---@param step? number # Default is 1.
---@return Array
---@overload fun(stop: number): Array
function Array.range(start, stop, step)
checkType('Module:Array.range', 1, start, 'number')
checkType('Module:Array.range', 2, stop, 'number', true)
checkType('Module:Array.range', 3, step, 'number', true)
local arr = {}
local len = 0
if not stop then
stop = start
start = 1
end
for i = start, stop, step or 1 do
len = len + 1
arr[len] = i
end
return setmetatable(arr, Array)
end
---Condenses the array into a single value.
---
---For each element `fn` is called with the current element, the current accumulator, and the current element index. The returned value of `fn` becomes the accumulator for the next element.
---
---If no `accumulator` value is given at the start then the first element off `arr` becomes the accumulator and the iteration starts from the second element.
---```
---local t = { 1, 2, 3, 4 }
---local sum = arr.reduce( t, function(elem, acc) return acc + elem end ) -- sum == 10
---```
---@param arr any[]
---@param fn fun(elem: any, acc: any, i?: integer): any # The result of this function becomes the `acc` for the next element.
---@param accumulator? any
---@return any # This is the last accumulator value.
function Array.reduce(arr, fn, accumulator)
checkType('Module:Array.reduce', 1, arr, 'table')
checkType('Module:Array.reduce', 2, fn, 'function')
local acc = accumulator
local start = 1
if acc == nil then
acc = arr[1]
start = 2
end
for i = start, len(arr) do
acc = fn(arr[i], acc, i)
end
return acc
end
---Make a copy off `arr` with certain values removed.
---
---Behaviour for different values of `val`:
---* `boolean` | `number` - Remove values equal to this.
---* `table` - Remove all values in this table.
---* `fun(elem: any, i?: integer): boolean` - Remove elements for which the functions returns **true**.
---@generic T: any[]
---@param arr T
---@param val table|function|number|boolean
---@return T
function Array.reject(arr, val)
checkType('Module:Array.reject', 1, arr, 'table')
checkTypeMulti('Module:Array.reject', 2, val, {'function', 'table', 'number', 'boolean'})
if type(val) ~= 'function' and type(val) ~= 'table' then
val = {val}
end
local r = {}
local l = 0
if type(val) == 'function' then
for i = 1, len(arr) do
if not val(arr[i], i) then
l = l + 1
r[l] = arr[i]
end
end
else
local rejectMap = {}
Array.each(val --[[@as any[] ]], function(item) rejectMap[item] = true end)
for i = 1, len(arr) do
if not rejectMap[arr[i]] then
l = l + 1
r[l] = arr[i]
end
end
end
return setmetatable(r, getmetatable(arr))
end
---Returns an Array with `val` repeated `n` times.
---@param val any
---@param n integer
---@return Array
function Array.rep(val, n)
checkType('Module:Array.rep', 2, n, 'number')
local r = {}
for i = 1, n do
r[i] = val
end
return setmetatable(r, Array)
end
---Condenses the array into a single value while saving every accumulator value.
---
---For each element `fn` is called with the current element, the current accumulator, and the current element index. The returned value of `fn` becomes the accumulator for the next element.
---
---If no `accumulator` value is given at the start then the first element off `arr` becomes the accumulator and the iteration starts from the second element.
---```
---local t = { 1, 2, 3, 4 }
---local x = arr.scan( t, function(elem, acc) return acc + elem end ) -- x = { 1, 3, 6, 10 }
---```
---@generic T: any[]
---@param arr T
---@param fn fun(elem: any, acc: any, i?: integer): any # Returned value becomes the accumulator for the next element.
---@param accumulator? any
---@return T
function Array.scan(arr, fn, accumulator)
checkType('Module:Array.scan', 1, arr, 'table')
checkType('Module:Array.scan', 2, fn, 'function')
local acc = accumulator
local r = {}
for i = 1, len(arr) do
if i == 1 and not accumulator then
acc = arr[i]
else
acc = fn(arr[i], acc, i)
end
r[i] = acc
end
return setmetatable(r, getmetatable(arr))
end
---Update a range of index with a range of values.
---
---If if only one value is given but multiple indexes than that value is set for all those indexes.
---
---If `values` is a table then it must of the same length as `indexes`.
---@generic T: any[]
---@param arr T
---@param indexes integer|integer[]
---@param values any|any[]
---@return T
function Array.set(arr, indexes, values)
checkType('Module:Array.set', 1, arr, 'table')
checkTypeMulti('Module:Array.set', 2, indexes, {'table', 'number'})
local mt = getmetatable(arr)
setmetatable(arr, nil)
if type(indexes) == 'number' then
indexes = {indexes}
end
if type(values) == 'table' then
assert(len(indexes) == len(values), string.format("Module:Array.set: 'indexes' and 'values' arrays are not equal length (#indexes = %d, #values = %d)", len(indexes), len(values)))
for i = 1, len(indexes) do
arr[indexes[i]] = values[i]
end
else
for i = 1, len(indexes) do
arr[indexes[i]] = values
end
end
return setmetatable(arr, mt)
end
---Extract a subtable from `arr`.
---@generic T: any[]
---@param arr T
---@param start integer # Start index. Use negative values to count form the end of the array.
---@param stop integer # Stop index. Use negative values to count form the end of the array.
---@return T
---@overload fun(arr: T, stop: integer): T
function Array.slice(arr, start, stop)
checkType('Module:Array.slice', 1, arr, 'table')
checkType('Module:Array.slice', 2, start, 'number', true)
checkType('Module:Array.slice', 3, stop, 'number', true)
start = start or len(arr)
if start < 0 then
start = len(arr) + start
end
if stop == nil then
stop = start
start = 1
end
if stop < 0 then
stop = len(arr) + stop
end
local r = {}
local len = 0
for i = start, stop do
len = len + 1
r[len] = arr[i]
end
return setmetatable(r, getmetatable(arr))
end
---Split `arr` into two arrays.
---@generic T: any[]
---@param arr T
---@param index integer # Index to split on.
---@return T x # [1, index]
---@return T y # [index + 1, #arr]
function Array.split(arr, index)
checkType('Module:Array.split', 1, arr, 'table')
checkType('Module:Array.split', 2, index, 'number')
local x = {}
local y = {}
for i = 1, len(arr) do
table.insert(i <= index and x or y, arr[i])
end
return setmetatable(x, getmetatable(arr)), setmetatable(y, getmetatable(arr))
end
---Returns the sum of all elements of `arr`.
---@param arr number[]
---@return number
function Array.sum(arr)
checkType('Module:Array.sum', 1, arr, 'table')
local res = 0
for i = 1, len(arr) do
res = res + arr[i]
end
return res
end
---Extract a subtable from `arr`.
---@generic T: any[]
---@param arr T
---@param count integer # Length of the subtable.
---@param start? integer # Start index. Default is 1.
---@return T
function Array.take(arr, count, start)
checkType('Module:Array.take', 1, arr, 'table')
checkType('Module:Array.take', 2, count, 'number')
checkType('Module:Array.take', 3, start, 'number', true)
local x = {}
start = start or 1
for i = start, math.min(len(arr), count + start - 1) do
table.insert(x, arr[i])
end
return setmetatable(x, getmetatable(arr))
end
---Extract a subtable from `arr`.
---```
---local t = { 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 }
---local x = arr.take_every( t, 2 ) --> x = { 1, 3, 5, 7, 9 }
---local x = arr.take_every( t, 2, 3 ) --> x = { 3, 5, 7, 9 }
---local x = arr.take_every( t, 2, 3, 2 ) --> x = { 3, 5 }
--- ```
---@generic T: any[]
---@param arr T
---@param n integer # Step size.
---@param start? integer # Start index.
---@param count? integer # Max amount of elements to get.
---@return T
function Array.take_every(arr, n, start, count)
checkType('Module:Array.take_every', 1, arr, 'table')
checkType('Module:Array.take_every', 2, n, 'number')
checkType('Module:Array.take_every', 3, start, 'number', true)
checkType('Module:Array.take_every', 4, count, 'number', true)
count = count or len(arr)
start = start or 1
local stop = math.min(len(arr), start + n * (count - 1))
local r = {}
local l = 0
for i = start, stop, n do
l = l + 1
r[l] = arr[i]
end
return setmetatable(r, getmetatable(arr))
end
---Return a new table with all duplicates removed.
---@generic T: any[]
---@param arr T
---@param fn? fun(elem: any): any # Function to generate an id for each element. The result will then contain elements that generated unique ids.
---@return T
function Array.unique(arr, fn)
checkType('Module:Array.unique', 1, arr, 'table')
checkType('Module:Array.unique', 2, fn, 'function', true)
fn = fn or function(item) return item end
local r = {}
local l = 0
local hash = {}
for i = 1, len(arr) do
local id = fn(arr[i])
if not hash[id] then
l = l + 1
r[l] = arr[i]
hash[id] = true
end
end
return setmetatable(r, getmetatable(arr))
end
---Combine elements with the same index from multiple arrays.
---```
---local x = {1, 2, 3}
---local y = {4, 5, 6, 7}
---local z = arr.zip( x, y ) --> z = { { 1, 4 }, { 2, 5 }, { 3, 6 }, { 7 } }
---```
---@param ... any[]
---@return Array
function Array.zip(...)
local arrs = { ... }
checkType('Module:Array.zip', 1, arrs[1], 'table')
local r = {}
local _, longest = Array.max_by(arrs, function(arr) return len(arr) end)
for i = 1, longest do
local q = {}
for j = 1, len(arrs) do
table.insert(q, arrs[j][i])
end
table.insert(r, setmetatable(q, Array))
end
return setmetatable(r, Array)
end
-- Range indexing has a performance impact so this is placed in a separate subclass
Array.RI_mt = {}
for k, v in pairs(Array) do
Array.RI_mt[k] = v
end
function Array.RI_mt.__index(t, k)
if type(k) == 'table' then
local res = {}
for i = 1, len(k) do
res[i] = t[k[i]]
end
return setmetatable(res, Array)
else
return Array[k]
end
end
function Array.RI_mt.__newindex(t, k, v)
if type(k) == 'table' then
if type(v) == 'table' then
for i = 1, len(k) do
t[k[i]] = v[i]
end
else
for i = 1, len(k) do
t[k[i]] = v
end
end
else
rawset(t, k, v)
end
end
---Enable range indexing on the input array.
---
---This has a performance impact on reads and writes to the table.
---```
---local t = arr{10, 11, 12, 13, 14, 15}:ri()
---print( t[{2, 3}] ) --> { 11, 12 }
---```
---@param arr any[]
---@param recursive? boolean # Default is false.
---@return Array
function Array.ri(arr, recursive)
checkType('Module:Array.ri', 1, arr, 'table')
checkType('Module:Array.ri', 2, recursive, 'boolean', true)
arr = arr or {}
if recursive then
for _, v in pairs(arr) do
if type(v) == 'table' then
Array.ri(v, true)
end
end
end
if getmetatable(arr) == nil or getmetatable(arr) == Array then
setmetatable(arr, Array.RI_mt)
end
return arr
end
---Globally enable range indexing on all Array objects by default.
---@param set boolean
function Array.allwaysAllowRangeIndexing(set)
checkType('Module:Array.allwaysAllowRangeIndexing', 1, set, 'boolean')
if set then
Array.__index = Array.RI_mt.__index
Array.__newindex = Array.RI_mt.__newindex
else
Array.__index = Array
Array.__newindex = nil
end
end
return Array
6c6b717b2bc0283d92329c8d11c5596294b7c864
Module:Array/doc
828
241
415
2024-03-22T17:52:10Z
Habblet
11
Created page with "{{Documentation}} {{Helper module |name = Array |fname1 = <nowiki>all( arr, [fn] )</nowiki> |ftype1 = <samp>arr: any[]</samp><br><samp>fn?: any</samp><br><samp>-> boolean</samp> |fuse1 = Behaviour depends on the value of <code>fn</code>: * <code>nil</code> - Checks that the array doesn't contain any '''false''' elements. * <code>fun(elem: any, i?: integer): boolean</code> - Returns '''true''' if <code>fn</code> returns '''true''' for every element. * <code>nu..."
wikitext
text/x-wiki
{{Documentation}}
{{Helper module
|name = Array
|fname1 = <nowiki>all( arr, [fn] )</nowiki>
|ftype1 = <samp>arr: any[]</samp><br><samp>fn?: any</samp><br><samp>-> boolean</samp>
|fuse1 = Behaviour depends on the value of <code>fn</code>:
* <code>nil</code> - Checks that the array doesn't contain any '''false''' elements.
* <code>fun(elem: any, i?: integer): boolean</code> - Returns '''true''' if <code>fn</code> returns '''true''' for every element.
* <code>number</code> {{!}} <code>table</code> {{!}} <code>boolean</code> - Checks that all elements in <code>arr</code> are equal to this value.
|fname2 = <nowiki>any( arr, [fn] )</nowiki>
|ftype2 = <samp>arr: any[]</samp><br><samp>fn?: any</samp><br><samp>-> boolean</samp>
|fuse2 = Behaviour depends on the value of <code>fn</code>:
* <code>nil</code> - Checks that the array contains at least one non '''false''' element.
* <code>fun(elem: any, i?: integer): boolean</code> - Returns '''true''' if <code>fn</code> returns '''true''' for at least one element.
* <code>number</code> {{!}} <code>table</code> {{!}} <code>boolean</code> - Checks that <code>arr</code> contains this value.
|fname3 = <nowiki>clean( arr )</nowiki>
|ftype3 = <samp>arr: any[]</samp><br><samp>-> any[]</samp>
|fuse3 = Recursively removes all metatables.
|fname4 = <nowiki>clone( arr, [deep] )</nowiki>
|ftype4 = <samp>arr: any[]</samp><br><samp>deep?: boolean</samp><br><samp>-> any[]</samp>
|fuse4 = Make a copy of the input table. Preserves metatables.
|fname5 = <nowiki>contains( arr, val )</nowiki>
|ftype5 = <samp>arr: any[]</samp><br><samp>val: any</samp><br><samp>-> boolean</samp>
|fuse5 = Check if <code>arr</code> contains <code>val</code>.
|fname6 = <nowiki>containsAny( arr, t )</nowiki>
|ftype6 = <samp>arr: any[]</samp><br><samp>t: any[]</samp><br><samp>-> boolean</samp>
|fuse6 = Check if <code>arr</code> contains any of the values in the table <code>t</code>.
|fname7 = <nowiki>containsAll( arr, t )</nowiki>
|ftype7 = <samp>arr: any[]</samp><br><samp>t: any[]</samp><br><samp>-> boolean</samp>
|fuse7 = Check if <code>arr</code> contains all values in the table <code>t</code>.
|fname8 = <nowiki>convolve( x, y )</nowiki>
|ftype8 = <samp>x: number[]</samp><br><samp>y: number[]</samp><br><samp>-> number[]</samp>
|fuse8 = Convolute two number arrays.
|fname9 = <nowiki>condenseSparse( arr )</nowiki>
|ftype9 = <samp>arr: any[]</samp><br><samp>-> any[]</samp>
|fuse9 = Remove '''nil''' values from <code>arr</code> while preserving order.
|fname10 = <nowiki>count( arr, fn )</nowiki>
|ftype10 = <samp>arr: any[]</samp><br><samp>fn: any</samp><br><samp>-> integer</samp>
|fuse10 = Behaviour depends on value of <code>val</code>:
* <code>nil</code> - Counts the number of non '''false''' elements.
* <code>fun(elem: any): boolean</code> - Count the number of times the function returned '''true'''.
* <code>boolean</code> {{!}} <code>number</code> {{!}} <code>table</code> - Counts the number of times this value occurs in <code>arr</code>.
|fname11 = <nowiki>diff( arr, [order|1] )</nowiki>
|ftype11 = <samp>arr: number[]</samp><br><samp>order?: number</samp><br><samp>-> number[]</samp>
|fuse11 = Differentiates <code>arr</code>. The length of the result is <code>#arr - order</code> long.
|fname12 = <nowiki>each( arr, fn )</nowiki>
|ftype12 = <samp>arr: any[]</samp><br><samp>fn: <code>fun(elem: any, i?: integer)</code></samp>
|fuse12 = Loops over the array part of <code>arr</code> and passes each element as the first argument to <code>fn</code>. This function returns nothing.
|fname13 = <nowiki>filter( arr, fn )</nowiki>
|ftype13 = <samp>arr: any[]</samp><br><samp>fn: <code>fun(elem: any, i?: integer): boolean</code></samp><br><samp>-> any[]</samp>
|fuse13 = Makes a copy of <code>arr</code> with only elements for which <code>fn</code> returned '''true'''.
|fname14 = <nowiki>find( arr, fn, [default] )</nowiki>
|ftype14 = <samp>arr: any[]</samp><br><samp>fn: any</samp><br><samp>default?: any</samp><br><samp>-> any?, integer?</samp>
|fuse14 = Behaviour depends on the value of <code>fn</code>:
* <code>fun(elem: any, i?: integer): boolean</code> - Find the first elements for which <code>fn</code> returns '''true'''.
* <code>boolean</code> {{!}} <code>number</code> {{!}} <code>table</code> - Find the first occurance of this value.
Returns two values: the element itself and its index.
|fname15 = <nowiki>find_index( arr, fn, [default] )</nowiki>
|ftype15 = <samp>arr: any[]</samp><br><samp>fn: any</samp><br><samp>default?: any</samp><br><samp>-> integer?</samp>
|fuse15 = Behaviour depends on the value of <code>fn</code>:
* <code>fun(elem: any, i?: integer): boolean</code> - Find the index of the first elements for which <code>fn</code> returns '''true'''.
* <code>boolean</code> {{!}} <code>number</code> {{!}} <code>table</code> - Find the index of the first occurance of this value.
|fname16 = <nowiki>get( arr, indexes )</nowiki>
|ftype16 = <samp>arr: any[]</samp><br><samp>indexes: integer{{!}}integer[]</samp><br><samp>-> any[]</samp>
|fuse16 = Extracts a subset of <code>arr</code>.
|fname17 = <nowiki>int( arr, [start|1], [stop|#arr] )</nowiki>
|ftype17 = <samp>arr: number[]</samp><br><samp>start?: number</samp><br><samp>stop?: number</samp><br><samp>-> number[]</samp>
|fuse17 = Integrates <code>arr</code> from index <code>start</code> to <code>stop</code>. Effectively does <math>\left\{\sum^{n}_{start}{arr[n]} \,\Bigg|\, n \in [start, stop]\right\}</math>.
|fname18 = <nowiki>intersect( arr1, arr2 )</nowiki>
|ftype18 = <samp>arr1: any[]</samp><br><samp>arr2: any[]</samp><br><samp>-> any[]</samp>
|fuse18 = Returns an array with elements that are present in both tables.
|fname19 = <nowiki>intersects( arr1, arr2 )</nowiki>
|ftype19 = <samp>arr1: any[]</samp><br><samp>arr2: any[]</samp><br><samp>-> boolean</samp>
|fuse19 = Checks if the two inputs have at least one element in common.
|fname20 = <nowiki>insert( arr, val, [index], [unpackVal] )</nowiki>;;
<nowiki>insert( arr, val, [unpackVal] )</nowiki>
|ftype20 = <samp>arr: any[]</samp><br><samp>val: any</samp><br><samp>index?: integer</samp><br><samp>unpackVal?: boolean</samp><br><samp>-> any[]</samp>
|fuse20 = Inserts values into <code>arr</code>. If <code>val</code> is an array and <code>unpackVal</code> is '''true''' then the individual elements of <code>val</code> are inserted. <code>index</code> is the location to start the insertion. Default is at the end of <code>arr</code>.
|fname21 = <nowiki>last( arr )</nowiki>
|ftype21 = <samp>arr: any[]</samp><br><samp>-> any</samp>
|fuse21 = Returns the last element of <code>arr</code>.
|fname22 = <nowiki>len( arr )</nowiki>
|ftype22 = <samp>arr: any[]</samp><br><samp>-> integer</samp>
|fuse22 = Returns the length of the array but it also works on proxy arrays like mw.loadData or mw.loadJsonData.
|fname23 = <nowiki>map( arr, fn )</nowiki>
|ftype23 = <samp>arr: any[]</samp><br><samp>fn: <code>fun(elem: any, i?: integer): any</code></samp><br><samp>-> any[]</samp>
|fuse23 = Returns a new table were each element of <code>arr</code> is modified by <code>fn</code>.
|fname24 = <nowiki>max_by( arr, fn )</nowiki>
|ftype24 = <samp>arr: any[]</samp><br><samp>fn: <code>fun(elem: any): any</code></samp><br><samp>-> any, integer</samp>
|fuse24 = Find the element for which <code>fn</code> returned the largest value. The returned value of <code>fn</code> needs to be comparable using the <code><</code> operator. Returns three values: The element with the largest <code>fn</code> value, its <code>fn</code> result, and its index.
|fname25 = <nowiki>max( arr )</nowiki>
|ftype25 = <samp>arr: any[]</samp><br><samp>-> any, integer</samp>
|fuse25 = Find the largest value in the array. The values need to be comparable using the <code><</code> operator. Returns two values: the element and its index.
|fname26 = <nowiki>min( arr )</nowiki>
|ftype26 = <samp>arr: any[]</samp><br><samp>-> any, integer</samp>
|fuse26 = Find the smallest value in the array. The values need to be comparable using the <code><</code> operator. Returns two values: the element and its index.
|fname27 = <nowiki>new( [arr|{}] )</nowiki>
|ftype27 = <samp>arr?: any[]</samp><br><samp>-> any[]</samp>
|fuse27 = Turn the input table into an Array. This makes it possible to use the colon <code>:</code> operator to access the Array methods. It also enables the use of math operators with the array.
<syntaxhighlight lang='lua'>
local x = arr.new{ 1, 2, 3 }
local y = arr{ 4, 5, 6 } -- Alternative notation
mw.logObject( -x ) --> { -1, -2, -3 }
mw.logObject( x + 2 ) --> { 3, 4, 5 }
mw.logObject( x - 2 ) --> { -1, 0, 1 }
mw.logObject( x * 2 ) --> { 2, 4, 6 }
mw.logObject( x / 2 ) --> { 0.5, 1, 1.5 }
mw.logObject( x ^ 2 ) --> { 1, 4, 9 }
mw.logObject( x + y ) --> { 5, 7, 9 }
mw.logObject( x .. y ) --> { 1, 2, 3, 4, 5, 6 }
mw.logObject( (x .. y):reject{3, 4, 5} ) --> { 1, 2, 6 }
mw.logObject( x:sum() ) --> 6
mw.logObject( x:update( {1, 3}, y:get{2, 3} * 2 ) ) --> { 10, 2, 12 }
</syntaxhighlight>
|fname28 = <nowiki>newIncrementor( [start|1], [step|1] )</nowiki>
|ftype28 = <samp>start?: number</samp><br><samp>step?: number</samp><br><samp>-> Incrementor</samp>
|fuse28 = Returns a new incrementor function. Every time this incrementor function is called it returns a number <code>step</code> higher than the previous call. The current value can be obtained with <code>inc.n</code> or set <code>inc.n = number</code> where <code>inc</code> is an incrementor function. The step size can be changed with <code>inc.step = number</code>.
|fname29 = <nowiki>range( stop )</nowiki>;;
<nowiki>range( start, stop, [step|1] )</nowiki>
|ftype29 = <samp>start: number</samp><br><samp>stop: number</samp><br><samp>step?: number</samp><br><samp>-> number[]</samp>
|fuse29 = Returns a table containing a sequence of numbers from <code>start</code> to <code>stop</code> (both inclusive if ints, end-exclusive if floats) by <code>step</code>. <code>range(4)</code> produces <code>{1, 2, 3, 4}</code> (<code>start</code> defaults to <code>1</code>). <code>range(0, 4)</code> produces <code>{0, 1, 2, 3, 4}</code>. When <code>step</code> is given, it specifies the increment (or decrement).
|fname30 = <nowiki>reduce( arr, fn, [accumulator|arr[1]] )</nowiki>
|ftype30 = <samp>arr: any[]</samp><br><samp>fn: <code>fun(elem: any, acc: any, i?: integer): any</code></samp><br><samp>accumulator?: any</samp><br><samp>-> any</samp>
|fuse30 = Condenses the array into a single value.
For each element <code>fn</code> is called with the current element, the current accumulator, and the current element index. The returned value of <code>fn</code> becomes the accumulator for the next element.
If no <code>accumulator</code> value is given at the start then the first element off <code>arr</code> becomes the accumulator and the iteration starts from the second element.
<syntaxhighlight lang='lua'>
local t = { 1, 2, 3, 4 }
local sum = arr.reduce( t, function(elem, acc) return acc + elem end ) -- sum == 10
</syntaxhighlight>
|fname31 = <nowiki>reject( arr, val )</nowiki>
|ftype31 = <samp>arr: any[]</samp><br><samp>val: any</samp><br><samp>-> any[]</samp>
|fuse31 = Make a copy off <code>arr</code> with certain values removed.
Behaviour for different values of <code>val</code>:
* <code>boolean</code> {{!}} <code>number</code> - Remove values equal to this.
* <code>table</code> - Remove all values in this table.
* <code>fun(elem: any, i?: integer): boolean</code> - Remove elements for which the functions returns '''true'''.
|fname32 = <nowiki>rep( val, n )</nowiki>
|ftype32 = <samp>val: any</samp><br><samp>n: number</samp><br><samp>-> any[]</samp>
|fuse32 = Returns a table with <samp>n</samp> copies of <samp>val</samp>.
|fname33 = <nowiki>scan( arr, fn, [accumulator|arr[1]] )</nowiki>
|ftype33 = <samp>arr: any[]</samp><br><samp>fn: <code>fun(elem: any, acc: any, i?: integer): any</code></samp><br><samp>accumulator?: any</samp><br><samp>-> any[]</samp>
|fuse33 = Condenses the array into a single value while saving every accumulator value.
For each element <code>fn</code> is called with the current element, the current accumulator, and the current element index. The returned value of <code>fn</code> becomes the accumulator for the next element.
If no <code>accumulator</code> value is given at the start then the first element off <code>arr</code> becomes the accumulator and the iteration starts from the second element.
<syntaxhighlight lang='lua'>
local t = { 1, 2, 3, 4 }
local x = arr.scan( t, function(elem, acc) return acc + elem end ) -- x = { 1, 3, 6, 10 }
</syntaxhighlight>
|fname34 = <nowiki>set( arr, indexes, values )</nowiki>
|ftype34 = <samp>arr: any[]</samp><br><samp>indexes: integer{{!}}integer[]</samp><br><samp>values: any{{!}}any[]</samp><br><samp>-> any[]</samp>
|fuse34 = Update a range of index with a range of values.
If if only one value is given but multiple indexes than that value is set for all those indexes.
If <code>values</code> is a table then it must of the same length as <code>indexes</code>.
|fname35 = <nowiki>slice( arr, [start|1], [stop|#arr] )</nowiki>;;
<nowiki>slice( arr, stop )</nowiki>
|ftype35 = <samp>arr: any[]</samp><br><samp>start?: number</samp><br><samp>stop?: number</samp><br><samp>-> any[]</samp>
|fuse35 = Returns a table containing all the elements of <code>arr</code> between the <code>start</code> and <code>stop</code> indices. The <code>start</code> and <code>stop</code> indices are inclusive. If <code>start</code> or <code>stop</code> are negative values then they are referenced to the end of the table.
|fname36 = <nowiki>split( arr, index )</nowiki>
|ftype36 = <samp>arr: any[]</samp><br><samp>index: number</samp><br><samp>-> any[], any[]</samp>
|fuse36 = Split <code>arr</code> into two arrays. Retuns two tables. The first contains elements from [1, index], and the second from [index + 1, #arr].
|fname37 = <nowiki>sum( arr )</nowiki>
|ftype37 = <samp>arr: number[]</samp><br><samp>-> number</samp>
|fuse37 = Returns the sum of all elements of <code>arr</code>.
|fname38 = <nowiki>take( arr, count, [start|1] )</nowiki>
|ftype38 = <samp>arr: any[]</samp><br><samp>count: number</samp><br><samp>start?: number</samp><br><samp>-> any[]</samp>
|fuse38 = Extract a subtable from <code>arr</code> of <code>count</code> elements long starting from the <code>start</code> index.
|fname39 = <nowiki>take_every( arr, n, [start|1], [count|#arr] )</nowiki>
|ftype39 = <samp>arr: any[]</samp><br><samp>n: integer</samp><br><samp>start?: integer</samp><br><samp>count?: integer</samp><br><samp>-> any[]</samp>
|fuse39 = Extract a subtable from <code>arr</code>.
<syntaxhighlight lang='lua'>
local t = { 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 }
local x = arr.take_every( t, 2 ) --> x = { 1, 3, 5, 7, 9 }
local x = arr.take_every( t, 2, 3 ) --> x = { 3, 5, 7, 9 }
local x = arr.take_every( t, 2, 3, 2 ) --> x = { 3, 5 }
</syntaxhighlight>
|fname40 = <nowiki>unique( arr, [fn] )</nowiki>
|ftype40 = <samp>arr: any[]</samp><br><samp>fn?: <code>fun(elem: any): any</code></samp><br><samp>-> any[]</samp>
|fuse40 = Return a new table with all duplicates removed. <code>fn</code> is an optional function to generate an id for each element. The result will then contain elements that generated unique ids. The order of first occurance is preserved.
|fname41 = <nowiki>zip( ... )</nowiki>
|ftype41 = <samp>...any[]</samp><br><samp>-> any[][]</samp>
|fuse41 = Combine elements with the same index from multiple arrays.
<syntaxhighlight lang='lua'>
local x = {1, 2, 3}
local y = {4, 5, 6, 7}
local z = arr.zip( x, y ) --> z = { { 1, 4 }, { 2, 5 }, { 3, 6 }, { 7 } }
</syntaxhighlight>
|example =
<syntaxhighlight lang='lua'>
local arr = require( 'Module:Array' )
local x = arr{1, 2, 3, 4, 10}
local y = arr{'a', 'b', 'b', 1}
arr.any( x, function( item ) return item == 3 end ) --> true
arr.all( y, function( item ) return type( item ) == 'string' end ) --> false
arr.map( x, function( item ) return item * 2 end ) --> { 2, 4, 6, 8, 20 }
arr.filter( y, function( item ) return type( item ) == 'string' end ) --> { "a", "b", "b" }
arr.reject( y, function( item ) return type( item ) == 'string' end ) --> { 1 }
arr.find( x, function( item ) return item > 5 end ) --> 10, 5
arr.find_index( y, function( item ) return type( item ) ~= 'string' end ) --> 4
arr.max_by( x, function( item ) return item * 2 end ) --> 10, 20, 5
arr.reduce( x, function( item, acc ) return acc + item*item end, 5 ) --> 135
arr.range( 10, 1, -3 ) --> { 10, 7, 4, 1 }
arr.scan( x, function( item, acc ) return acc + item*item end, 5 ) --> { 6, 10, 19, 35, 135 }
arr.slice( x, 2, 4 ) --> { 2, 3, 4 }
arr.split( x, 2 ) --> { 1, 2 }, { 3, 4, 10 }
arr.sum( x ) --> 20
arr.take( x, 2 ) --> { 1, 2 }
arr.take_every( x, 2 ) --> { 1, 3, 10 }
arr.unique( y ) --> { "a", "b", 1 }
arr.zip( x, y, {20, 30} ) --> { { 1, "a", 20 }, { 2, "b", 30 }, { 3, "b" }, { 4, 1 }, { 10 } }
arr.intersect( x, y ) --> { 1 }
arr.intersects( x, y ) --> true
arr.contains({ 1, 2, 3}, 3) --> true
arr.diff( x ) --> { 1, 1, 1, 6 }
arr.int( x ) --> { 1, 3, 6, 10, 20 }
arr.insert( x, y, 3 ) --> { 1, 2, { "a", "b", "b", 1 }, 3, 4, 10 }
inc = arr.newIncrementor( 10, 5 )
print( inc() ) --> 10
print( inc() ) --> 15
</syntaxhighlight>
}}
2feff6727f046595823cbfec3fc3db8cdc240b06
Template:Helper module
10
242
416
2024-03-22T17:53:02Z
Habblet
11
Created page with "<includeonly>{{#invoke:Helper module|main}}</includeonly><noinclude>{{/doc}}</noinclude>"
wikitext
text/x-wiki
<includeonly>{{#invoke:Helper module|main}}</includeonly><noinclude>{{/doc}}</noinclude>
84fd05633e45aef5102ba57245cce5f3b57a8715
Template:Helper module/doc
10
243
417
2024-03-22T17:53:20Z
Habblet
11
Created page with "{{Documentation}} {{Invokes|Helper module}} Provides documentation for functions of modules that contain functions useful for other modules. This template should be part of a comment, and should be at the top of the source code, '''before''' any <nowiki><pre> or <nowiki></nowiki> tags. There is no limit to the number of functions this template can list. This template is called by [[Brighter Shores:Lua/Helper modules]] to help produce a dynamic table. <pre> {{Helper mod..."
wikitext
text/x-wiki
{{Documentation}}
{{Invokes|Helper module}}
Provides documentation for functions of modules that contain functions useful for other modules. This template should be part of a comment, and should be at the top of the source code, '''before''' any <nowiki><pre> or <nowiki></nowiki> tags. There is no limit to the number of functions this template can list.
This template is called by [[Brighter Shores:Lua/Helper modules]] to help produce a dynamic table.
<pre>
{{Helper module
|name = Name of the module (no namespace prefix)
|fname1 = Name of first function as it is called in modules
|ftype1 = Argument types of parameters
|fuse1 = Purpose of the function
...
|fname# = Name of tenth function as it is called in modules
|ftype# = Argument types of parameters
|fuse# = Purpose of the function
}}
</pre>
<includeonly>[[Category:DPL templates]][[Category:Formatting templates]]</includeonly>
937d8b13fcb82e38b8bdf5035b7d94f3d5dc1e15
Category:Lua-based templates
14
244
418
2024-03-22T17:54:01Z
Habblet
11
Created page with "{{Categoryheader|templates|Lua|}} [[Category:Templates]]"
wikitext
text/x-wiki
{{Categoryheader|templates|Lua|}}
[[Category:Templates]]
8439b9ccf548b6a41703a9f67d612f532fa84a71
Category:DPL templates
14
245
419
2024-03-22T17:54:34Z
Habblet
11
Created page with "This category contains templates which are designed solely for use with [http://semeb.com/dpldemo/DPL:Manual DynamicPageList]. They generally should not be directly used as a normal template, and often their WhatLinksHere page will show no transclusions. Please do not delete these templates without making sure that related DPL queries are fixed. This does not include templates which are just DPL calls - it is specifically templates which are used within DPL calls (and '..."
wikitext
text/x-wiki
This category contains templates which are designed solely for use with [http://semeb.com/dpldemo/DPL:Manual DynamicPageList]. They generally should not be directly used as a normal template, and often their WhatLinksHere page will show no transclusions. Please do not delete these templates without making sure that related DPL queries are fixed.
This does not include templates which are just DPL calls - it is specifically templates which are used within DPL calls (and ''only'' DPL calls). DPL calls are listed by [[Special:WhatLinksHere/Template:Extension DPL]].
[[Category:Templates]]
b905cd79c489d768593b47fbdaf61374319b8c38
Category:Formatting templates
14
246
420
2024-03-22T17:54:46Z
Habblet
11
Created page with " [[Category:Templates]]"
wikitext
text/x-wiki
[[Category:Templates]]
828033bdf4f6c2734bb067684732cbea33e9cbc4
Template:Main Page/Header
10
45
421
95
2024-03-22T17:55:52Z
Jayden
3
wikitext
text/x-wiki
<div class="mainpage-header">
<div class="header-intro">
<h1>Welcome to the Brighter Shores Wiki</h1>
<p>We are the wiki for ''[[Brighter Shores]]'', an upcoming medieval MMORPG developed by [[Andrew Gower]], featuring hundreds of hours of gameplay.</p>
</div>
<div class="header-stats plainlist nomobile">
<ul>
<li>Number of articles: '''{{NUMBEROFARTICLES}}'''</li>
<li>Number of files: '''{{NUMBEROFFILES}}'''</li>
<li>Number of active users: '''{{NUMBEROFACTIVEUSERS}}'''</li>
<li>Number of edits: '''{{NUMBEROFEDITS}}'''</li>
</ul>
</div>
</div>
0a47d7c953eb471a849707048952c99ed5a70125
Module:Helper module
828
247
422
2024-03-22T17:56:31Z
Habblet
11
Created page with "-- Helps [[Brighter Shores:Lua/Helper modules]] format its table with dynamic documentation -- See [[Template:Helper module]] for documentation and usage require('Module:Mw.html extension') local p = {} function p.main(frame) local args = frame:getParent().args local function_list = {} -- Let there be no limit to number of parameters local i = 1 while args['fname'..i] do local funcname = args['fname'..i] or '' local functype = args['ftype'..i] or '' local fun..."
Scribunto
text/plain
-- Helps [[Brighter Shores:Lua/Helper modules]] format its table with dynamic documentation
-- See [[Template:Helper module]] for documentation and usage
require('Module:Mw.html extension')
local p = {}
function p.main(frame)
local args = frame:getParent().args
local function_list = {}
-- Let there be no limit to number of parameters
local i = 1
while args['fname'..i] do
local funcname = args['fname'..i] or ''
local functype = args['ftype'..i] or ''
local funcuse = args['fuse'..i] or ''
function_list[i] = {
fname = funcname,
ftype = functype,
fdesc = funcuse
}
i = i + 1
end
local title = mw.title.getCurrentTitle()
if title.namespace == 828 and (title.text == args.name or title.text == args.name..'/doc') then
local t = mw.html.create('table')
t :addClass('wikitable')
:tr()
:th('Function')
:th('Type')
:th('Use')
:done()
:node(p._main(args.name, function_list, nil, false))
local category = ''
if not (title.isSubpage and title.subpageText == 'doc') then
category = '[[Category:Helper modules]][[Category:Modules required by modules]]'
end
local reqby = ''
if not (title.isSubpage and title.subpageText == 'doc') then
local uri = mw.uri.canonicalUrl('Special:WhatLinksHere', 'target=Module:'..args.name..'&namespace=828')
reqby = 'For a full list of modules using this helper <span class="plainlinks">[' .. tostring(uri) .. ' click here]</span>\n'
end
local example = ''
if args.example then
example = "'''Example:'''\n" .. args.example
end
return 'This module is a helper module to be used by other modules; it may not designed to be invoked directly. See [[Brighter Shores:Lua/Helper modules]] for a full list and more information.\n' .. reqby .. tostring(t) .. example .. category
else
return p._main(args.name, function_list, args.example or '', true)
end
end
local function formatFuncNames(list)
list = mw.text.split(list or '', ';;')
local res = {}
for _, v in ipairs(list) do
v = mw.text.trim(v)
table.insert(res, string.format("<code>%s</code>", v))
end
return table.concat(res, '<br>')
end
function p._main(modn, func_list, example, showModuleName)
local ret = mw.html.create('tr')
ret :IF(showModuleName)
:td{'[[Module:'..modn..'|'..modn..']]', attr={'rowspan', #func_list}} -- Name will group together with all functions once
:END()
:td(formatFuncNames(func_list[1].fname))
:td(func_list[1].ftype)
:td(func_list[1].fdesc)
for i = 2, #func_list do
ret:tr()
:td(formatFuncNames(func_list[i].fname))
:td(func_list[i].ftype)
:td(func_list[i].fdesc)
end
return ret
end
return p
7f9726f506afcb57cb7ebe8e977c4cd582e7e262
Module:Helper module/doc
828
248
423
2024-03-22T17:56:50Z
Habblet
11
Created page with "{{Documentation}} {{Invokes|Helper module}} Generates helper module information for use in documentation, which is automatically used by [[Brighter Shores:Lua/Helper modules]]. <includeonly>[[Category:Helper modules| ]]</includeonly>"
wikitext
text/x-wiki
{{Documentation}}
{{Invokes|Helper module}}
Generates helper module information for use in documentation, which is automatically used by [[Brighter Shores:Lua/Helper modules]].
<includeonly>[[Category:Helper modules| ]]</includeonly>
9eeb3d05978241b9132f2bd5e88952a89f6fae34
Module:Yesno/doc
828
249
424
2024-03-22T17:58:04Z
Habblet
11
Created page with "{{documentation}} {{Helper module|name=Yesno |fname1=(arg) |ftype1=Any value |fuse1=Reads arg for yes/no and returns the appropriate boolean or nil |fname2=(arg1,arg2) |ftype2=Any value, Any value |fuse2=Reads arg1 for yes/no and returns the appropriate boolean; returns arg2 if arg1 was not an applicable value }}"
wikitext
text/x-wiki
{{documentation}}
{{Helper module|name=Yesno
|fname1=(arg)
|ftype1=Any value
|fuse1=Reads arg for yes/no and returns the appropriate boolean or nil
|fname2=(arg1,arg2)
|ftype2=Any value, Any value
|fuse2=Reads arg1 for yes/no and returns the appropriate boolean; returns arg2 if arg1 was not an applicable value
}}
f5428e747469ffce689962d9e4ca1a7b6ec7404f
Module:Paramtest/doc
828
250
425
2024-03-22T17:58:43Z
Habblet
11
Created page with "{{documentation}} {{Helper module |name=Paramtest |fname1 = is_empty(arg) |ftype1 = String |fuse1 = Returns true if arg is not defined or contains only whitespace |fname2 = has_content(arg) |ftype2 = String |fuse2 = Returns true if arg exists and does not only contain whitespace |fname3 = default_to(arg1,arg2) |ftype3 = String, Any value |fuse3 = If arg1 exists and does not only contain whitespace, the function returns arg1, otherwise returns arg2 |fname4 = defaults{ {ar..."
wikitext
text/x-wiki
{{documentation}}
{{Helper module
|name=Paramtest
|fname1 = is_empty(arg)
|ftype1 = String
|fuse1 = Returns true if arg is not defined or contains only whitespace
|fname2 = has_content(arg)
|ftype2 = String
|fuse2 = Returns true if arg exists and does not only contain whitespace
|fname3 = default_to(arg1,arg2)
|ftype3 = String, Any value
|fuse3 = If arg1 exists and does not only contain whitespace, the function returns arg1, otherwise returns arg2
|fname4 = defaults{ {arg1,arg2},...}
|ftype4 = {String, Any value}...
|fuse4 = Does the same as <code>default_to()</code> run over every table passed; for technical reasons, all <code>nil</code> are replaced with <code>false</code>
}}
7baa87ce9b7319f8fb79463bd850ef9ce84d046d
Module:DPLlua
828
251
426
2024-03-22T17:59:09Z
Habblet
11
Created page with "-- <nowiki> local dpl = {} local libraryUtil = require( 'libraryUtil' ) local hasContent = require( 'Module:Paramtest' ).has_content local checkType = libraryUtil.checkType local checkTypeForNamedArg = libraryUtil.checkTypeForNamedArg dpl.pipe = '¦' local dataContentMarker = '`#@@#`' local allIncludedParamNames = {} -- Custom function for splitting a string because mw.text.split() is waaay too slow local function split( str, pattern, plain ) local res = {} local con..."
Scribunto
text/plain
-- <nowiki>
local dpl = {}
local libraryUtil = require( 'libraryUtil' )
local hasContent = require( 'Module:Paramtest' ).has_content
local checkType = libraryUtil.checkType
local checkTypeForNamedArg = libraryUtil.checkTypeForNamedArg
dpl.pipe = '¦'
local dataContentMarker = '`#@@#`'
local allIncludedParamNames = {}
-- Custom function for splitting a string because mw.text.split() is waaay too slow
local function split( str, pattern, plain )
local res = {}
local continue = true
local startIndex = 1
while continue do
local i, j = string.find( str, pattern, startIndex, plain )
if i then
table.insert( res, string.sub( str, startIndex, i-1 ) )
startIndex = j + 1
else
table.insert( res, string.sub( str, startIndex ) )
continue = false
end
end
return res
end
-- Also custom function for speed
local function trim( str )
return (string.gsub( str, '^%s+', '' ):gsub( '%s+$', '' ))
end
local function mergeItem( tbl, key, item )
if type( tbl[key] ) == 'table' and type( item ) == 'table' then
for k in pairs( tbl[key] ) do
mergeItem( tbl[key], k, item[k] )
end
elseif type( tbl[key] ) == 'table' then
table.insert( tbl[key], item )
else
tbl[key] = { tbl[key], item }
end
end
local escapeChars = {
['{'] = '{',
['}'] = '}',
['['] = '[',
[']'] = ']',
['|'] = '|',
['-'] = '‐'
}
local function escape( str )
return (string.gsub( str, '[{}%[%]|%-]', escapeChars ))
end
local unEscapeChars = {
['{'] = '{',
['}'] = '}',
['['] = '[',
[']'] = ']',
['|'] = '|',
['‐'] = '-'
}
local function unEscape( str )
return (string.gsub( str, '&#%d+;', unEscapeChars ))
end
local function fixCurlyBrackets( str )
-- the \226\157\180\181 are used to match ❴ (U+2774) and ❵ (U+2775) wich are 3 bytes long (UTF-8) so
-- we can't use them directly inside [] patterns. Ustring would fix this but it's way too slow.
return (string.gsub( str, '\226\157[\180\181]', { ['❴'] = '{', ['❵'] = '}' } ))
end
local function removeFormattingSettings( query )
local toRemove = {
'mode',
'table',
'tablerow',
'tablesortcol',
'headingmode',
'headingcount',
'listattr',
'itemattr',
'hlistattr',
'hitemattr',
'userdateformat',
'shownamespace',
'escapelinks',
'titlemaxlength',
'replaceintitle',
'columns',
'rows',
'rowsize',
'rowcolformat',
'resultsheader',
'resultsfooter',
'oneresultheader',
'oneresultfooter',
'noresultsheader',
'suppresserrors',
'noresultsfooter',
'format',
'groupMultiTemplateResults'
}
for _, k in ipairs( toRemove ) do
query[k] = nil
end
end
local function formatInclude( query )
checkTypeForNamedArg( 'Module:DPLlua.ask', 'include', query, 'string' )
query = split( query, ',', true )
local includedParamNames = {}
local sectionAttributes = {}
for i = 1, #query do
if query[i]:match( '%b{}' ) then -- Check if we are including a template
local templateName, extra = query[i]:match( '{(.-)[¦|}](.*)' )
if hasContent( extra ) then
local phantomTemplateName = extra:match( '^(.-)}' ) or extra:match( '^[./].+' )
local phantomTemplatePrefix = extra:match( '^(.-)}' ) and '' or templateName
local params = extra:gsub( '^.-}', '' ):gsub( '^[./].+', '' ):gsub( ':%-', '' )
local sur = hasContent( phantomTemplateName ) and ('¦' .. phantomTemplatePrefix .. phantomTemplateName) or ''
query[i] = string.format( '{%s%s}%s', templateName, sur, params )
if hasContent( phantomTemplateName ) then
table.insert( includedParamNames, { name=phantomTemplatePrefix..phantomTemplateName, isTemplate=true, hasPhantomTemplate=true } )
table.insert( sectionAttributes, { hasPhantomTemplate=true } )
else
for param in params:gmatch( ':([^:]*)' ) do
param = trim( param )
table.insert( includedParamNames, { name=templateName, isTemplate=true, param=param } )
end
table.insert( sectionAttributes, { hasPhantomTemplate=false } )
end
else
query[i] = string.format( '{%s¦DPLlua helper}', templateName ) -- Use a helper template to get all the parameters of our included template
table.insert( includedParamNames, { name=templateName, isTemplate=true, includeAll=true } )
table.insert( sectionAttributes, { hasPhantomTemplate=false } )
end
else
table.insert( includedParamNames, { name=trim( query[i] ) } )
table.insert( sectionAttributes, { hasPhantomTemplate=false } )
end
end
return table.concat( query, ',' ), includedParamNames, sectionAttributes
end
local function formatDpl( query )
local queries = {}
local count = query.count or 500
local offset = query.offset or 0
local usesInclude = false
local includedParamNames = {}
local sectionAttributes
query.count = nil
query.offset = nil
-- Use table format so we can place dataContentMarkers around each included parameter. The secseparator
-- is needed to add dataContentMarkers when a phantom template is used
local dplStringInclude =
[=[
{{#dpl:
|noresultsheader=@@
|count=%s
|offset=%s
|%s
|table=,
|listseparators=,\n¦-\n¦[[%%PAGE%%¦]],,
|tablerow=%s
|secseparators=%s
}}]=]
-- Table format requires an include statement so we use format instead.
-- This is also a lot faster than adding an empty include statement
local dplStringNoInclude =
[=[
{{#dpl:
|noresultsheader=@@
|count=%s
|offset=%s
|%s
|format=,¦-¦[[%%PAGE%%¦]],,
}}]=]
-- Auto generate more than one dpl if count > 500
-- The results of these are later combined
for i = 1, math.ceil( count / 500 ) do
local params = {}
for k, v in pairs( query ) do
if k == 'include' then
v, includedParamNames, sectionAttributes = formatInclude( v )
usesInclude = true
end
if type( v ) == 'table' then
for _, x in ipairs( v ) do
table.insert( params, k .. '=' .. tostring( x ):gsub( '|', '¦' ) )
end
else
table.insert( params, k .. '=' .. tostring( v ):gsub( '|', '¦' ) )
end
end
if usesInclude then
local secseparators = ''
for _, v in ipairs( sectionAttributes ) do
if v.hasPhantomTemplate then
-- Phantom templates need this because they ignore tablerow formatting
secseparators = secseparators .. '¶¦' .. dataContentMarker .. ',' .. dataContentMarker .. ','
else
secseparators = secseparators .. '¶¦,,'
end
end
table.insert( queries, string.format(
dplStringInclude,
count > 500 and 500 or count,
offset,
table.concat( params, '\n|' ),
string.rep( dataContentMarker..'%%'..dataContentMarker..',', #includedParamNames ),
secseparators
) )
else
table.insert( queries, string.format(
dplStringNoInclude,
count > 500 and 500 or count,
offset,
table.concat( params, '\n|' )
) )
end
count = count - 500
offset = offset + 500
end
table.insert( allIncludedParamNames, includedParamNames )
return table.concat( queries )
end
local function toTable( query, groupMultiTemplateResults )
local includedParamNames = table.remove( allIncludedParamNames, 1 )
local usesInclude = #includedParamNames > 0
local res = {}
query = query:gsub( '<p>Extension:DynamicPageList .-</p>', function(item) res.error = item; return '' end )
if query:find( '^@@' ) then -- @@ is used when no result is found
return res
end
if usesInclude then
query = query:gsub( dataContentMarker..'(.-)'..dataContentMarker, escape )
end
query = trim( query )
query = split( query, '|-', true ) -- Results of the returned pages are separated by |-
for _, v in ipairs( query ) do
if hasContent( v ) and not v:find( '^@@' ) then
v = trim( v )
local title = v:match( '^|%[%[(.-)|' )
local rawDataList = v:match( '^|.-|.-|(.*)' ) -- This is everything after the title
if not usesInclude then
if title and title ~= '' then
table.insert( res, title )
end
else
-- When multiple includes are used (e.g. include={Template1},{Template2} or include={Template}:1:2) their results are separated by a pipe
rawDataList = split( rawDataList, '|', true )
local cleanedDataList = {}
for _incIndex, dataItem in ipairs( rawDataList ) do
local incIndex = ((_incIndex - 1) % #includedParamNames) + 1 -- Needed in case the same template appears multiple times on the same page
dataItem = unEscape( dataItem )
dataItem = trim( dataItem )
if includedParamNames[ incIndex ].isTemplate and includedParamNames[ incIndex ].includeAll then -- Check if we included a full template
-- When we include an entire template we use the %ARGS% parameter supplied by dpl.
-- However all | characters are repaced with §, e.g.:
-- §namelessParam
-- §param = text [[wowee§link text]]
-- §param2 = text {{something§something else}}
dataItem = dataItem:gsub( '\127\'"`UNIQ%-%-nowiki%-%x+%-QINU`"\'\127', function(item) return '<nowiki>' .. item .. '</nowiki>' end )
dataItem = mw.text.unstripNoWiki( dataItem ) -- Unstrip nowiki so we can clean their content
dataItem = fixCurlyBrackets( dataItem ) -- When using the %ARGS% dpl parameter, curly brackets are replaced with ❴ (U+2774) and ❵ (U+2775)
dataItem = dataItem:gsub( '%b{}', function(x) return x:gsub( '§', '|' ) end ) -- Restore pipe characters inside links and templates
dataItem = dataItem:gsub( '%b[]', function(x) return x:gsub( '§', '|' ) end )
dataItem = dataItem:gsub( '<nowiki>(.-)</nowiki>', function(x) return mw.getCurrentFrame():extensionTag( 'nowiki', x ) end ) -- Restrip nowiki
local _dataItem = {}
if dataItem ~= '' then
dataItem = split( dataItem:sub( 3 ), '§' ) -- The sub(3) removes the first § at the start. § is 2 bytes wide so start at index 3
for i, item in ipairs( dataItem ) do
if item:find( '=' ) then -- Check if the parameter is named or unnamed
local param, value = item:match( '^%s*(.-)%s*=%s*(.-)%s*$' )
_dataItem[ param ] = value
else
table.insert( _dataItem, trim( item ) )
end
end
end
dataItem = _dataItem
end
local dataListIndex = groupMultiTemplateResults and 1 or math.ceil( _incIndex / #includedParamNames )
if
includedParamNames[ incIndex ].isTemplate and
not includedParamNames[ incIndex ].includeAll and
not includedParamNames[ incIndex ].hasPhantomTemplate
then -- This means there was an include in the form 'include = {template}:param'
local templateName = includedParamNames[ incIndex ].name
local paramName = includedParamNames[ incIndex ].param
paramName = tonumber( paramName ) or paramName -- Keep as string if tonumber fails
cleanedDataList[ dataListIndex ] = cleanedDataList[ dataListIndex ] or {}
cleanedDataList[ dataListIndex ][ templateName ] = cleanedDataList[ dataListIndex ][ templateName ] or {}
if groupMultiTemplateResults and _incIndex > #includedParamNames then
mergeItem( cleanedDataList[ dataListIndex ][ templateName ], paramName, dataItem )
else
cleanedDataList[ dataListIndex ][ templateName ][ paramName ] = dataItem
end
else
local templateName = includedParamNames[ incIndex ].name
cleanedDataList[ dataListIndex ] = cleanedDataList[ dataListIndex ] or {}
if groupMultiTemplateResults and _incIndex > #includedParamNames then
mergeItem( cleanedDataList[ dataListIndex ], templateName, dataItem )
else
cleanedDataList[ dataListIndex ][ templateName ] = dataItem
end
end
end
if title and title ~= '' then
for _, v in ipairs( cleanedDataList ) do
table.insert( res, { title=title, include=v } )
end
end
end
end
end
return res
end
-- Accepts a series of tables each containig the settings for a dpl query.
-- Combinig multiple dpl queries yields better performance than doing them sequentially
function dpl.ask( ... )
local formatTime = os.clock()
local queries = { ... }
local wantsGrouping = {}
for i = 1, #queries do
checkType( 'Module:DPLlua.ask', i, queries[i], 'table' )
table.insert( wantsGrouping, queries[i].groupMultiTemplateResults or false )
removeFormattingSettings( queries[i] )
queries[i] = formatDpl( queries[i] )
end
formatTime = os.clock() - formatTime
local DPLtime = os.clock()
queries = table.concat( queries, '$@µ@$' )
queries = mw.getCurrentFrame():preprocess( queries )
queries = split( queries, '$@µ@$', true )
DPLtime = os.clock() - DPLtime
for i = 1, #queries do
local parseTime = os.clock()
queries[i] = toTable( queries[i], wantsGrouping[i] )
parseTime = os.clock() - parseTime
queries[i]['DPL time'] = DPLtime
queries[i]['Parse time'] = math.floor( (formatTime + parseTime) * 1e5 ) / 1e5 -- os.clock() has a resolution of 10µs
end
return unpack( queries )
end
-- function dpl.test()
-- local time = os.clock()
-- local a, b = dpl.ask({
-- namespace = 'Module',
-- linksto = 'Module:Chart data',
-- distinct = 'strict',
-- ordermethod = 'title',
-- nottitlematch = '%/doc¦%sandbox%¦Exchange/%¦Exchange historical/%¦Chart data',
-- ignorecase = 'true',
-- allowcachedresults = false
-- },{
-- namespace = 'Module',
-- linksto = 'Module:Enum',
-- distinct = 'strict',
-- ordermethod = 'title',
-- nottitlematch = '%/doc¦%sandbox%¦Exchange/%¦Exchange historical/%¦Enum',
-- ignorecase = 'true',
-- allowcachedresults = false
-- })
-- mw.logObject(a)
-- mw.logObject(b)
-- local a, b = dpl.ask({
-- namespace = 'Module',
-- linksto = 'Module:Chart data',
-- distinct = 'strict',
-- ordermethod = 'title',
-- nottitlematch = '%/doc¦%sandbox%¦Exchange/%¦Exchange historical/%¦Chart data',
-- ignorecase = 'true',
-- allowcachedresults = false
-- },{
-- namespace = '',
-- ignorecase = 'true',
-- uses = 'Template:Infobox Recipe',
-- count = 50,
-- include = '{Infobox Recipe},{Infobox Item}',
-- allowcachedresults = false
-- })
-- mw.logObject(a)
-- mw.logObject(b)
-- local a = dpl.ask{
-- namespace = '',
-- uses = 'Template:Infobox Recipe',
-- include = '{Infobox Recipe}:skill:name,{Infobox Item}:update,{Infobox Item|test}',
-- count = 50,
-- ordermethod = 'title',
-- }
-- mw.logObject(a)
-- local q = dpl.ask{
-- uses = "Template:Collections table",
-- category = "Archaeology collections",
-- -- include = "{Infobox Collection}:reward,{Collections table}:1:2:3:4:5:6:7:8:9:10:11:12:13:14:15",
-- include = "{Infobox Collection}:reward,{Collections table}",
-- count = 100
-- }
-- mw.logObject(q)
-- local q = dpl.ask{
-- namespace = "",
-- uses = "Template:Infobox Spell",
-- notcategory = {"Removed content", "Removed spells"},
-- nottitlematch = {"Enchant Crossbow Bolt", "Storm of Armadyl"},
-- include = "{Infobox Spell}",
-- }
-- mw.logObject(q)
-- local list = dpl.ask{
-- namespace = 'Template',
-- uses = 'Template:Navbox',
-- ordermethod = 'title',
-- include = '{Navbox}:gtitle1:gtitle2',
-- count = 1,
-- offset = 3
-- }
-- mw.logObject(list)
-- local list = dpl.ask{
-- namespace = 'User',
-- titlematch = 'CephHunter/Sandbox/test1',
-- include = '{User:CephHunter/Sandbox/test2|User:CephHunter/Sandbox/test3},{User:CephHunter/Sandbox/test3}:1',
-- }
-- mw.logObject(list)
-- mw.logObject(dpl.ask{
-- namespace = 'User',
-- ignorecase = 'true',
-- titlematch = 'CephHunter/Sandbox/test1',
-- include = '{User:CephHunter/Sandbox/test2}'
-- })
-- mw.logObject(dpl.ask{
-- namespace = 'Module',
-- uses = 'Template:Helper module',
-- titlematch = '%/doc',
-- nottitlematch = 'Exchange/%|Exchange historical/%|Sandbox/%',
-- ordermethod = 'title',
-- include = '{Helper module}, {Helper module}:example',
-- count = 1,
-- offset = 13
-- })
-- mw.logObject(dpl.ask{
-- namespace = 'Module',
-- titlematch = 'Chart data|Absorbative calculator',
-- nottitlematch = 'Exchange/%|Exchange historical/%|Sandbox/%|%/doc|DPLlua%',
-- ordermethod = 'title',
-- include = '%0'
-- })
-- mw.logObject(dpl.ask{
-- uses = 'Template:Collections table',
-- include = '{Collections table}',
-- count = 5
-- })
-- mw.log(os.clock()-time)
-- end
return dpl
-- </nowiki>
c1eb27ec9ddfae569aca83492c4ac9ddd4bf5d33
Module:DPLlua/doc
828
253
428
2024-03-22T18:02:49Z
Habblet
11
Created page with "{{Documentation}} Uses [[Template:DPLlua helper]] to make it possible to include all parameters of a template while maintaining good performance. {{Helper module|name=DPLlua |fname1 = ask( ... ) |ftype1 = tables |fuse1 = <code>ask</code> takes a series of tables each containing the settings for a DPL query; it will return the same number of result tables as input tables. All formatting settings are stripped from the config. If the config does not contains <co..."
wikitext
text/x-wiki
{{Documentation}}
Uses [[Template:DPLlua helper]] to make it possible to include all parameters of a template while maintaining good performance.
{{Helper module|name=DPLlua
|fname1 = ask( ... )
|ftype1 = tables
|fuse1 = <code>ask</code> takes a series of tables each containing the settings for a DPL query; it will return the same number of result tables as input tables. All formatting settings are stripped from the config. If the config does not contains <code>include</code>, the result will be a simple list of page names.
<pre>
{
<pagename#1>,
<pagename#2>,
<pagename#3>,
}
</pre>
A query with an <code>include</code> of the form <code>include = '{template#1}:1:2:param1:param2, {template#2}:3:param1, %0'</code> will give a result like
<pre>
{
['include'] = {
['template#1'] = {
[1] = val#1,
[2] = val#2,
['param1'] = val#3,
['param2'] = val#4,
},
['template#2'] = {
[3] = val#5,
['param1'] = val#6,
},
['%0'] = val#7
},
['title'] = <pagename>
}
</pre>
You can also do <code>include = '{some template}'</code> which will include all parameters of that template in their unexpanded form (templates are not expanded but some content in parser tags is placed in strip markers).
If the config value <code>count</code> is larger than 500 it will automatically generate multiple DPL queries with offsets and their outputs will be combined in the returned result.
The output contains a <code>time</code> field so you don't need to use <code>%DPLTIME%</code>.
If the DPL throws an error it will be available in the <code>error</code> field of the output.
Differences with normal DPL:
* All formatting options are ignored
* Surrogate templates (e.g. <code><nowiki>include = '{template|other template}'</nowiki></code> are ignored
* Using <code>include = '{template}'</code> will include all the arguments of that template instead of expanding the template
* The parameter <code>count</code> can go higher than 500
* When the value of a parameter is a table it will be expanded into multiple lines. E.g. doing <code>notcategory = {val#1, val#2}</code> will expand into
<pre>
|notcategory = val#1
|notcategory = val#2
</pre>
Note of warning, if you include content containing <code>§</code> symbols the result may be unreliable. If you include a whole template (e.g. <code>include = '{some template}'</code>), content inside strip markers (not nowiki) can't be cleaned up inside lua so pipe characters (<code>|</code>) will be replaced with <code>§</code> characters and the <code>{</code> and <code>}</code> characters are replaced by <code>❴</code> (U+2774) and <code>❵</code> (U+2775). Use <code>include = '{some template}, {some template}:1:2:3'</code> instead for the problem parameters.
}}
Example:
<syntaxhighlight lang='lua'>
local dpl = require( 'Module:DPLlua' )
local a, b = dpl.ask( {
namespace = '',
linksto = 'Miner',
distinct = 'strict',
ordermethod = 'title',
count = 5,
ignorecase = true
},{
namespace = '',
uses = 'Template:Reflist',
count = 1,
include = '{Reflist},{Infobox Item}',
ignorecase = true
} )
mw.logObject(a)
mw.logObject(b)
--[=[
table#1 {
"(beginner)",
"(easy)",
"(elite)",
"(g)",
"(hard)",
["time"] = 0.0541,
}
table#1 {
table#2 {
["include"] = table#3 {
["Infobox Item"] = table#4 {
["image"] = "[[File:Basic Bacon.png]]",
["name"] = "Basic Bacon",
},
["Reflist"] = table#5 {
["1"] = "2"
},
},
["title"] = "Basic Bacon",
},
["time"] = 0.0541,
}
]=]
</syntaxhighlight>
17240a96162b163ddea731332d45f1c78f8f83ac
Module:Tooltip
828
254
429
2024-03-22T18:03:30Z
Habblet
11
Created page with "local p = {} local yn = require('Module:Yesno') local hc = require('Module:Paramtest').has_content -- module access point for div p._div = function(args) local name = args.name if not hc(name) then error('Name is required!') end local content = args.content local hasarrow = yn(args.arrow or 'yes', true) local arrowsize = tonumber(args.arrowsize) or 10 local limitwidthbool = yn(args.limitwidth or 'yes', true) local style = args.style local div = mw.ht..."
Scribunto
text/plain
local p = {}
local yn = require('Module:Yesno')
local hc = require('Module:Paramtest').has_content
-- module access point for div
p._div = function(args)
local name = args.name
if not hc(name) then
error('Name is required!')
end
local content = args.content
local hasarrow = yn(args.arrow or 'yes', true)
local arrowsize = tonumber(args.arrowsize) or 10
local limitwidthbool = yn(args.limitwidth or 'yes', true)
local style = args.style
local div = mw.html.create('div')
local arrow = 'no'
if hasarrow then
arrow = 'yes'
end
local limitwidth = 'no'
if limitwidthbool then
limitwidth = 'yes'
end
local attrs = {
['data-tooltip-for'] = name,
['data-tooltip-arrow'] = arrow,
['data-tooltip-arrow-size'] = arrowsize,
['data-tooltip-limit-width'] = limitwidth,
}
if hc(style) then
attrs['data-tooltip-style'] = style
end
div :addClass('hidden js-tooltip-wrapper')
:css('display', 'none')
:attr(attrs)
:tag('div')
:addClass('js-tooltip-text')
:wikitext(content)
:done()
:done()
return div
end
p._span = function(args)
local name = args.name or args[1] or nil
if not hc(name) then
error('Name is required!')
end
local alt = args.alt or args[2] or '?'
local span = mw.html.create('span')
span:addClass('hidden js-tooltip-click')
:css('display', 'none')
:attr('data-tooltip-name', name)
:wikitext(alt)
:done()
return span
end
-- template access points
p.div = function(frame)
return p._div(frame:getParent().args)
end
p.span = function(frame)
return p._span(frame:getParent().args)
end
return p
73956a8507d3a1110178263b174b19163ce9ac90
Module:Tooltip/doc
828
255
430
2024-03-22T18:03:37Z
Habblet
11
Created page with "{{No documentation}}"
wikitext
text/x-wiki
{{No documentation}}
ad36a615c98d03e22b03ecaa7b9d7d87b5d7b517
Template:DependencyList
10
256
431
2024-03-22T18:03:57Z
Habblet
11
Created page with "<includeonly>{{#invoke:DependencyList|main}}</includeonly><noinclude>{{/doc}}</noinclude>"
wikitext
text/x-wiki
<includeonly>{{#invoke:DependencyList|main}}</includeonly><noinclude>{{/doc}}</noinclude>
923ee81c4d72af3821df33a5c39b6e427e2dd755
Template:DependencyList/doc
10
257
432
2024-03-22T18:04:22Z
Habblet
11
Created page with "{{Documentation}} This template is meant to be used on module documentations. {{T|DependencyList|<Module name>|category=<true/false>}} All parameters are optional. If <code>Module name</code> is omitted the page name will be used instead; <code>/doc</code> is automatically removed. If <code>category</code> is <code>false</code> then no categories will be added to the page, the default value is <code>true</code>. ==Examples== {{T|DependencyList|Module:Infobox Item}}..."
wikitext
text/x-wiki
{{Documentation}}
This template is meant to be used on module documentations.
{{T|DependencyList|<Module name>|category=<true/false>}}
All parameters are optional. If <code>Module name</code> is omitted the page name will be used instead; <code>/doc</code> is automatically removed.
If <code>category</code> is <code>false</code> then no categories will be added to the page, the default value is <code>true</code>.
==Examples==
{{T|DependencyList|Module:Infobox Item}}
{{DependencyList|Module:Infobox Item|category=false}}
{{T|DependencyList|Module:Edit button}}
{{DependencyList|Module:Edit button|category=false}}
dfee0338031bbaf4885d50934771ce74bb48074d
441
432
2024-03-22T18:11:19Z
Habblet
11
wikitext
text/x-wiki
{{Documentation}}
This template is meant to be used on module documentations.
{{T|DependencyList|<Module name>|category=<true/false>}}
All parameters are optional. If <code>Module name</code> is omitted the page name will be used instead; <code>/doc</code> is automatically removed.
If <code>category</code> is <code>false</code> then no categories will be added to the page, the default value is <code>true</code>.
==Examples==
<!--{{T|DependencyList|Module:Infobox Item}}
{{DependencyList|Module:Infobox Item|category=false}}-->
{{T|DependencyList|Module:Edit button}}
{{DependencyList|Module:Edit button|category=false}}
a438c3671cba258cb75323b9661ab7c4bdba0847
MediaWiki:Gadget-tooltips.js
8
258
433
2024-03-22T18:06:18Z
Habblet
11
Created page with "/* JavaScript tooltips usage: recommended usage: see [[Template:Tooltip]] and [[Template:Tooltip text]], or [[Module:Tooltip]] for module interface raw usage: Place this where you want the button to appear: <span class="hidden js-tooltip-click" style="display:none;" data-tooltip-name="test">clickable</span> place this elsewhere to define the content of the tooltip: <div class="hidden js-tooltip-wrapper" style="display:none;" data-tooltip-for="test" da..."
javascript
text/javascript
/* JavaScript tooltips
usage:
recommended usage: see [[Template:Tooltip]] and [[Template:Tooltip text]], or [[Module:Tooltip]] for module interface
raw usage:
Place this where you want the button to appear:
<span class="hidden js-tooltip-click" style="display:none;" data-tooltip-name="test">clickable</span>
place this elsewhere to define the content of the tooltip:
<div class="hidden js-tooltip-wrapper" style="display:none;" data-tooltip-for="test" data-tooltip-arrow="yes" data-tooltip-arrow-size="10" data-tooltip-style="custom style"><div class="js-tooltip-text">Content</div></div>
span.js-tooltip-click - required
attribute: data-tooltip-name - links to the corresponding divl; can have many with the same name
content: the clickable thing, defaults to ?
div.js-tooltip-wrapper - required
attributes:
data-tooltip-for - required; links this to spans with the data-tooltip-name equal to this
data-tooltip-arrow - optional; yes for arrow, no/default for no arrow
data-tooltip-arrow-size - optional; yes for arrow, no/default for no arrow
data-tooltip-style - optional; the width of the arrow (height=2width) in px; also defines the gap between the tooltip and the span. defaults to 10
content: div.js-tooltip-text
div.js-tooltip-text - required
contains: text/html to display inside tooltip
*/
$(function () {
if (!($('.js-tooltip-wrapper').length && $('.js-tooltip-click').length)) {
return;
}
// every tooltip wrapper on the page considered separately
// remove excess tooltip wrappers for the same name - can cause issues
(function(){
var forarr = {}, forarrv, key, first;
$('.js-tooltip-wrapper').each(function(){
forarr[$(this).attr('data-tooltip-for')] = true;
});
for (key in forarr) {
first = $('.js-tooltip-wrapper[data-tooltip-for="'+key+'"]').first();
$('.js-tooltip-wrapper[data-tooltip-for="'+key+'"]').not(first).remove();
}
})();
$('.js-tooltip-wrapper').each(function () {
var $span,
$text,
$arrow,
$wrapper,
$close,
resizeEvent,
hasArrow = true,
arrpos,
style,
styles,
parsed_styles,
name,
size,
limitwidth = false,
$currspan = $(null);
// setup vars
$wrapper = $(this);
name = $wrapper.attr('data-tooltip-for');
if ($wrapper.attr('data-tooltip-arrow')) {
hasArrow = $wrapper.attr('data-tooltip-arrow').toLowerCase() == 'yes';
}
if ($wrapper.attr('data-tooltip-limit-width')) {
limitwidth = $wrapper.attr('data-tooltip-limit-width').toLowerCase() == 'yes';
}
style = $wrapper.attr('data-tooltip-style');
size = parseInt($wrapper.attr('data-tooltip-arrow-size'), 10);
if (typeof size !== 'number' || isNaN(size)) {
size = 10;
}
$text = $wrapper.find('.js-tooltip-text');
// setup wrapper css for movement
$wrapper.removeClass('hidden')
.on('js-tooltip-close', function () {
$wrapper.hide();
$currspan.removeAttr('data-is-currspan');
$currspan = $(null);
});
// setup span css
$span = $('span.js-tooltip-click[data-tooltip-name="' + name + '"]');
$span.removeClass('hidden')
.attr('title', 'Click for explanation, click again to close');
if ($span.html() === '') {
$span.text('?');
}
// setup arrow
$arrow = $('<div>');
$arrow.addClass('js-tooltip-arrow')
.css({
top: ($wrapper.outerHeight() * 0.3) + 'px',
left: ('-' + (size+2) + 'px'), // width of arrow + width of text div border
'margin-top': ('-' + (size/2) + 'px'),
'border-width': size + 'px', //actual width of the arrow
});
arrpos = '-' + (size+2) + 'px';
// easiest way to deal with arrow is to just not add it if it isn't specified
if (hasArrow) {
$wrapper.prepend($arrow);
}
// setup close button
$close = $('<button>');
$close.html('<img src="/images/Close-x-white.svg?1ccac" />')
.addClass('close js-tooltip-close')
.click(function(){
$wrapper.trigger('js-tooltip-close');
});
$text.prepend($close);
// setup resize event for repositioning tooltips
resizeEvent = function () {
if ($currspan.length === 0) {
return;
}
var offset, position, width, $body, $mwtext;
offset = $currspan.offset();
position = $currspan.position();
width = $currspan.outerWidth();
$body = $('body');
$mwtext = $('#mw-content-text');
$wrapper.css({
top: (offset.top - $wrapper.outerHeight()*0.3) + 'px',
});
$arrow.css({
top: ($wrapper.outerHeight() * 0.3) + 'px',
});
if ((!limitwidth && offset.left > 0.5 * $body.width())
|| (limitwidth && position.left > 0.5 * $mwtext.width())) {
$wrapper.css({
right: (($body.width() - offset.left) - 5 + size) + 'px',
left: '', // remove other pos to prevent overspecification
});
$arrow.removeClass('js-tooltip-arrow-pointleft').addClass('js-tooltip-arrow-pointright').css({
left: '', // remove other pos to prevent overspecification
right: arrpos,
'border-left-width': size + 'px',
'border-right-width': 0,
});
if (limitwidth) {
$wrapper.css({
'max-width': '500px',
});
}
} else {
$wrapper.css({
left: (offset.left + width - 5 + size) + 'px',
right: '', // remove other pos to prevent overspecification
});
$arrow.removeClass('js-tooltip-arrow-pointright').addClass('js-tooltip-arrow-pointleft').css({
right: '', // remove other pos to prevent overspecification
left: arrpos,
'border-right-width': size + 'px',
'border-left-width': 0,
});
if (limitwidth) {
$wrapper.css({
'max-width': '500px',
});
}
}
};
// attach resize event
$(window).resize(resizeEvent);
// attach click event to span
$span.click(function (event) {
//no bubbles
event.preventDefault();
event.stopPropagation();
$this = $(event.currentTarget);
if ($this.attr('data-is-currspan') == 'true') {
// if the current span is clicked while the popup is open, close the popup
$this.removeAttr('data-is-currspan');
$currspan = $(null);
$wrapper.trigger('js-tooltip-close');
} else {
// else move and show the currently open popup
$currspan = $this;
$('.js-tooltip-wrapper').not($wrapper).trigger('js-tooltip-close');
$this.attr('data-is-currspan', true);
$wrapper.show();
resizeEvent();
}
});
// add custom style
if (typeof style === 'string' && style !== '') {
styles = style.split(';');
styles_parsed = {};
styles.forEach(function(v) {
if (typeof v === 'string') {
var arr = v.split(':');
if (typeof arr[1] === 'string' && arr[1].trim() !== '') {
styles_parsed[arr[0].trim()] = arr[1].trim();
}
}
});
$wrapper.css(styles_parsed);
}
// finish up
$wrapper.hide();
$span.show();
$wrapper.appendTo($('body'));
});
// close tooltip if clicked outside of
$(document).click(function (event) {
if ($('.js-tooltip-wrapper:visible').length && !$(event.target).closest('.js-tooltip-wrapper, .js-tooltip-click').length) {
$('.js-tooltip-wrapper').trigger('js-tooltip-close');
}
});
})
5a22874ca58ef98b2354e7a6e8e21edfb584b41d
MediaWiki:Gadgets-definition
8
6
434
10
2024-03-22T18:06:36Z
BlackHawk
10
wikitext
text/x-wiki
This page contains the definitions for all gadgets on the wiki. In most cases, code that could be placed in Common.js should be made into a module here instead for granularity and better support for mobile, etc.
Edits to this page should be done with care. When targeting a gadget for mobile, ensure that the gadget '''works''' on mobile properly by debugging it on mobile devices. Some mobile devices do not allow JavaScript to run, or do not run it by default, so there should always be a fallback option for those that do not have JS enabled. <!--For scripts that are intended for use on a lot of pages, it may be a good idea to propose it on the [[Forum:Yew Grove|Yew Grove]] first. -->Gadgets which can be enabled/disabled by the user (on [[Special:Preferences#mw-prefsection-gadgets|Special:Preferences]]) should have a description created on ''Mediawiki:Gadget-gadgetname''.
==Core==
* Less[ResourceLoader|rights=editinterface|dependencies=mediawiki.api|type=general|default|hidden]|Less.js
==Tools==
* ezcopy[ResourceLoader|type=general|targets=desktop]|ezcopy.js|ezcopy.css
==Other==
* gadgetLinks[ResourceLoader|type=general|default]|gadgetLinks.js
87e10af480ff90447ebe2ccb86aa8cf27495985e
437
434
2024-03-22T18:07:58Z
Habblet
11
wikitext
text/x-wiki
This page contains the definitions for all gadgets on the wiki. In most cases, code that could be placed in Common.js should be made into a module here instead for granularity and better support for mobile, etc.
Edits to this page should be done with care. When targeting a gadget for mobile, ensure that the gadget '''works''' on mobile properly by debugging it on mobile devices. Some mobile devices do not allow JavaScript to run, or do not run it by default, so there should always be a fallback option for those that do not have JS enabled. <!--For scripts that are intended for use on a lot of pages, it may be a good idea to propose it on the [[Forum:Yew Grove|Yew Grove]] first. -->Gadgets which can be enabled/disabled by the user (on [[Special:Preferences#mw-prefsection-gadgets|Special:Preferences]]) should have a description created on ''Mediawiki:Gadget-gadgetname''.
==Core==
* Less[ResourceLoader|rights=editinterface|dependencies=mediawiki.api|type=general|default|hidden]|Less.js
* tooltips[ResourceLoader|type=general|default|hidden]|tooltips.js
==Tools==
* ezcopy[ResourceLoader|type=general|targets=desktop]|ezcopy.js|ezcopy.css
==Other==
* gadgetLinks[ResourceLoader|type=general|default]|gadgetLinks.js
194bf0c41dbbde2c37406831a625b74cd7e0be79
MediaWiki:Gadget-gadgetLinks
8
259
435
2024-03-22T18:07:01Z
BlackHawk
10
Created page with "'''GadgetLinks''': Add links to relevant files in the list of [[MediaWiki:Gadgets-definition|gadget definitions]]."
wikitext
text/x-wiki
'''GadgetLinks''': Add links to relevant files in the list of [[MediaWiki:Gadgets-definition|gadget definitions]].
99c53e534f5ec3e8eec72d1497c2d9ea5e081e1f
MediaWiki:Gadget-gadgetLinks.js
8
260
436
2024-03-22T18:07:20Z
BlackHawk
10
Created page with "// Add gadget links to the gadgets that are being defined on [[MediaWiki:Gadgets-definition]] $(function() { function gadgetLink(page) { return '<a href="/w/MediaWiki:Gadget-'+page+'" title="MediaWiki:Gadget-'+page+'">'+page+'</a>'; } $('.page-MediaWiki_Gadgets-definition #bodyContent ul li').not('#toc li').each(function() { var txt = this.innerHTML; var links = txt.replace(/([a-zA-Z0-9-]+)(\[[^\]]+\]\|)(.*)/, function(match, name, options, filelist) {..."
javascript
text/javascript
// Add gadget links to the gadgets that are being defined on [[MediaWiki:Gadgets-definition]]
$(function() {
function gadgetLink(page) {
return '<a href="/w/MediaWiki:Gadget-'+page+'" title="MediaWiki:Gadget-'+page+'">'+page+'</a>';
}
$('.page-MediaWiki_Gadgets-definition #bodyContent ul li').not('#toc li').each(function() {
var txt = this.innerHTML;
var links = txt.replace(/([a-zA-Z0-9-]+)(\[[^\]]+\]\|)(.*)/, function(match, name, options, filelist) {
var files = filelist.split('|');
files = files.map(function(file) { return gadgetLink(file); });
return gadgetLink(name) + options + files.join('|');
});
$(this).html(links);
});
});
3567300269df4f90329975671e12cf471ca93bab
Module:Mw.html extension
828
261
438
2024-03-22T18:09:55Z
Habblet
11
Created page with "-- <nowiki> local p = {} local checkType = require( 'libraryUtil' ).checkType local mwHtml = getmetatable( mw.html.create() ).__index -- Trick to get acces to the mw.html class local stack = {} -- Used to keep track of nested IF-END tags local noOp = {} -- This object is returned by IF(false) tag function mwHtml:addClassIf( cond, class ) if cond then return self:addClass( class ) else return self end end function mwHtml:tagIf( cond, tagna..."
Scribunto
text/plain
-- <nowiki>
local p = {}
local checkType = require( 'libraryUtil' ).checkType
local mwHtml = getmetatable( mw.html.create() ).__index -- Trick to get acces to the mw.html class
local stack = {} -- Used to keep track of nested IF-END tags
local noOp = {} -- This object is returned by IF(false) tag
function mwHtml:addClassIf( cond, class )
if cond then
return self:addClass( class )
else
return self
end
end
function mwHtml:tagIf( cond, tagname )
if cond then
return self:tag( tagname )
else
return self
end
end
function mwHtml:wikitextIf( cond, text )
if cond then
return self:wikitext( text )
else
return self
end
end
function mwHtml:doneIf( cond )
if cond then
return self:done()
else
return self
end
end
function mwHtml:attrIf( cond, name, value )
if cond then
return self:attr( name, value )
else
return self
end
end
function mwHtml:cssIf( cond, name, value )
if cond then
return self:css( name, value )
else
return self
end
end
function mwHtml:na()
return self:tag( 'td' )
:attr( 'data-sort-value', 0 )
:attr( 'class', 'table-na' )
:wikitext( '<small>N/A</small>' )
:done()
end
function mwHtml:naIf( cond )
if cond then
return self:na()
else
return self
end
end
local function addValues( self, settings )
-- wikitext and addClass are no-ops when their argument is nil
self:wikitext( settings[1] or settings.wikitext )
self:addClass( settings.class or settings.addClass )
if settings.attr then
if settings.attr[1] and settings.attr[2] then
self:attr( settings.attr[1], settings.attr[2] )
else
self:attr( settings.attr )
end
end
if settings.css then
if settings.css[1] and settings.css[2] then
self:css( settings.css[1], settings.css[2] )
else
self:css( settings.css )
end
end
if settings.cssText then
self:cssText( settings.cssText )
end
end
function mwHtml:tr( settings )
if self.tagName == 'tr' then
self = self:done():tag( 'tr' )
elseif self.tagName == 'th' or self.tagName == 'td' then
self = self:done():done():tag( 'tr' )
else
self = self:tag( 'tr' )
end
if type( settings ) == 'table' then
addValues( self, settings )
end
return self
end
function mwHtml:th( settings )
if self.tagName == 'th' or self.tagName == 'td' then
self = self:done():tag( 'th' )
else
self = self:tag( 'th' )
end
if type( settings ) == 'table' then
addValues( self, settings )
else
self = self:wikitext( settings )
end
return self
end
function mwHtml:td( settings )
if self.tagName == 'th' or self.tagName == 'td' then
self = self:done():tag( 'td' )
else
self = self:tag( 'td' )
end
if type( settings ) == 'table' then
addValues( self, settings )
else
self = self:wikitext( settings )
end
return self
end
function mwHtml:IF( cond )
if cond then
table.insert( stack, { obj=noOp, trueCaseCompleted=true } )
return self
else
table.insert( stack, { obj=self, trueCaseCompleted=false } )
return noOp
end
end
function mwHtml:ELSEIF( cond )
if #stack == 0 then error( 'Missing IF tag', 2 ) end
local last = stack[#stack]
if cond and not last.trueCaseCompleted then
last.trueCaseCompleted = true
local res = last.obj
last.obj = noOp
return res
else
if self ~= noOp then
last.obj = self
end
return noOp
end
end
function mwHtml:ELSE()
return self:ELSEIF( true )
end
function mwHtml:END()
if #stack == 0 then error( 'Missing IF tag', 2 ) end
local res = table.remove( stack ) -- Pop element from the end
if res.obj == noOp then
return self
else
return res.obj
end
end
function mwHtml:exec( func, ... )
checkType( 'exec', 1, func, 'function' )
return func( self, ... )
end
function p.addFunction( func, name )
checkType( 'addFunction', 1, func, 'function' )
checkType( 'addFunction', 2, name, 'string' )
if mwHtml[name] then
error( 'Function "' .. name .. '" already exists', 2 )
end
mwHtml[name] = func
end
noOp.IF = mwHtml.IF
noOp.ELSEIF = mwHtml.ELSEIF
noOp.ELSE = mwHtml.ELSE
noOp.END = mwHtml.END
setmetatable( noOp, {
__index = function( self )
return self
end,
__call = function( self )
return self
end,
__tostring = function()
error( 'Attempting to convert no-op object into a string. Check for unbalanced IF-END tags', 2 )
end,
__concat = function()
error( 'Attempting to concatenate a no-op object. Check for unbalanced IF-END tags', 2 )
end
} )
return p
-- </nowiki>
6a5718e23fe1609c3ae0c33ae9572c4d21a8a8ce
Module:Mw.html extension/doc
828
262
439
2024-03-22T18:10:26Z
Habblet
11
Created page with "{{Documentation}} {{Helper module |name = Mw.html extension |fname1 = addClassIf(cond, class) |ftype1 = boolean, string |fuse1 = If <code>cond</code> = <code>true</code> it behaves the same as the normal <code>addClass</code> function, otherwise it's a no-op. Ex.: <code>mw.html.create('div'):addClassIf(true, 'align-left-1')</code> |fname2 = attrIf(cond, name, value) |ftype2 = boolean, string/table, string/nil |fuse2 = Similar to <code>addClassIf</code> |fname3 = cssIf..."
wikitext
text/x-wiki
{{Documentation}}
{{Helper module
|name = Mw.html extension
|fname1 = addClassIf(cond, class)
|ftype1 = boolean, string
|fuse1 = If <code>cond</code> = <code>true</code> it behaves the same as the normal <code>addClass</code> function, otherwise it's a no-op. Ex.: <code>mw.html.create('div'):addClassIf(true, 'align-left-1')</code>
|fname2 = attrIf(cond, name, value)
|ftype2 = boolean, string/table, string/nil
|fuse2 = Similar to <code>addClassIf</code>
|fname3 = cssIf(cond, name, value)
|ftype3 = boolean, string/table, string/nil
|fuse3 = Similar to <code>addClassIf</code>
|fname4 = doneIf(cond)
|ftype4 = boolean
|fuse4 = Similar to <code>addClassIf</code>
|fname5 = tagIf(cond, tag)
|ftype5 = boolean, string
|fuse5 = Similar to <code>addClassIf</code>
|fname6 = wikitextIf(cond, text)
|ftype6 = boolean, string
|fuse6 = Similar to <code>addClassIf</code>
|fname7 = na()
|ftype7 = N/A
|fuse7 = Shortcut for <code><nowiki>:tag('td'):attr('data-sort-value', 0):attr('class','table-na'):wikitext('<small>N/A</small>'):done()</nowiki></code>
|fname8 = naIf(cond)
|ftype8 = boolean
|fuse8 = Similar to <code>addClassIf</code>
|fname9 = <nowiki>tr([settings])</nowiki>
|ftype9 = table/nil
|fuse9 = Shortcut for <code>:tag('tr')</code> but also auto closes the previous 'tr', 'th' or 'td' tag (so you don't need to add :done() before it). <samp>settings</samp> is a table with keys:
* <code>class</code> or <code>addClass</code> - A string passed to <code>:addClass()</code>
* <code>attr</code> - A table passed to <code>:attr()</code>
* <code>css</code> - A table passed to <code>:css()</code>
* <code>cssText</code> - A string passed to <code>:cssText()</code>
|fname10 = <nowiki>th([settings])</nowiki>
|ftype10 = string/table/nil
|fuse10 = Shortcut for <code>:tag('th'):wikitext(settings)</code> if <samp>settings</samp> is a string. Also auto closes the previous 'th' or 'td' tag. <samp>settings</samp> can also be a table with keys:
* <code>[1]</code> (array) or <code>wikitext</code> - A string passed to <code>:wikitext()</code>
* <code>class</code> or <code>addClass</code> - A string passed to <code>:addClass()</code>
* <code>attr</code> - A table passed to <code>:attr()</code>
* <code>css</code> - A table passed to <code>:css()</code>
* <code>cssText</code> - A string passed to <code>:cssText()</code>
|fname11 = <nowiki>td([settings])</nowiki>
|ftype11 = string/table/nil
|fuse11 = Same as <code>:th()</code>. Example:
<syntaxhighlight lang='lua'>
local tbl = mw.html.create('table')
tbl:tr{ class='sortable' }
:th{'foo', attr={'data-sort-type', 'number'}}
:th('bar')
:tr()
:td('buz')
:attr('data-sort-value', 10)
:td{'N/A', class='table-na'}
</syntaxhighlight>
|fname12 = IF(cond)
|ftype12 = boolean
|fuse12 = Allows for if-blocks without breaking the chain. If the condition is true it is a no-op, if false everything inside the balanced IF-END block will be ignored. Can be nested. Ex.:
<syntaxhighlight lang="lua">
mw.html.create('div')
:IF(true)
:wikitext('Conditional text')
:END()
:...
</syntaxhighlight>
Note: This only prevents elements from being added to your html object, it does not protect against statements that throw errors. I.e
<syntaxhighlight lang='lua'>
mw.html.create('div')
:IF(false)
:wikitext(5 * nil) -- This will still throw an error
:END()
</syntaxhighlight>
|fname13 = ELSEIF(cond)
|ftype13 = boolean
|fuse13 = Used together with <code>IF()</code>.
|fname14 = ELSE()
|ftype14 = N/A
|fuse14 = Used together with <code>IF()</code>.
|fname15 = END()
|ftype15 = N/A
|fuse15 = Used together with <code>IF()</code>. Make sure the IF-END tags are balanced, it wont throw an error if they are not.
|fname16 = exec(func, ...)
|ftype16 = function, any
|fuse16 = Call a function without breaking the chain. See module docs for more info.
|fname17 = addFunction(func, name)
|ftype17 = function, string
|fuse17 = Add a function to the mw.html class that can then be used on mw.html object. See module docs for more info.
}}
==Usage==
For all functions other than <code>addFunction()</code> all you need to do is simply require this module:
<syntaxhighlight lang="lua">
require('Module:Mw.html extension')
local p = {}
function p.main()
...
local tbl = mw.html.create('div')
:IF(true)
:wikitext('Conditional text')
:ELSE()
:wikitext('something else')
:END()
:addClassIf(true, 'wikitable')
:tag('span)'
:wikitext('normal wikitext')
:done()
...
end
return p
</syntaxhighlight>
You can mix the normal old functions with the newly added ones.
===attrIf===
This accepts either a name-value pair or a table
* <code>:attrIf(true, 'data-sort-value', '0')</code>
* <code>:attrIf(true, {'data-sort-value' = '0', ...})</code>
===cssIf===
This accepts either a name-value pair or a table similar to <code>attrIf</code>
===exec===
The first parameter of the function will have the current state of the mw.html object passed into it, usually we call this parameter <code>self</code>, the rest of the parameters can be anything you want. To not break the chaining the function must also return a mw.html object. Example:
<syntaxhighlight lang="lua">
local function repNa(self, times)
for i = 1,times do
self:na()
end
return self
end
</syntaxhighlight>
This function can then be used as follows
<syntaxhighlight lang="lua">
mw.html.create('div'):exec(repNa, 5)
</syntaxhighlight>
===addFunction===
The function you want to add has to be of the same structure as in <code>exec()</code>. Example:
<syntaxhighlight lang="lua">
local htmlExtension = require('Module:Mw.html extension')
local p = {}
local function repNa(self, times)
for i = 1,times do
self:na()
end
return self
end
htmlExtension.addFunction(repNa, 'repNaName')
function p.main()
...
local tbl = mw.html.create('div'):repNaName(5)
...
end
return p
</syntaxhighlight>
===tr, th and td===
The following three tables are the same:
<syntaxhighlight lang='lua'>
local tbl = mw.html.create('table')
tbl:tr{ class='sortable' }
:th{'foo', attr={['data-sort-type']='number'}} -- or attr={'data-sort-type', 'number'}
:th('bar')
:IF(expression)
:addClass('table-na')
:END()
:tr()
:td('buz')
:td{'N/A', class='table-na'}
local tbl2 = mw.html.create('table')
tbl2:tag('tr')
:addClass('sortable')
:tag('th')
:attr('data-sort-type', 'number')
:wikitext('foo')
:done()
:tag('th')
:wikitext('bar')
:IF(expression)
:addClass('table-na')
:END()
:done() -- This is needed because "tag('tr')" is used after this instead of "tr()"
:done()
:tag('tr')
:tag('td')
:wikitext('buz')
:done()
:tag('td')
:wikitext('N/A')
:addClass('table-na')
local tbl3 = mw.html.create('table')
tbl3:tag('tr')
:addClass('sortable')
:tag('th')
:attr('data-sort-type', 'number')
:wikitext('foo')
:th('bar')
:IF(expression)
:addClass('table-na')
:END()
:done()
:done()
:tag('tr')
:td('buz')
:td('N/A')
:addClass('table-na')
</syntaxhighlight>
2a5352272c4a2d57a20039fb10bdce801762a438
Category:Pages using DynamicPageList3 parser function
14
265
443
2024-03-22T18:12:13Z
Habblet
11
Created page with "{{Categoryheader|pages|which use a DPL in its parser function form|yes|<nowiki>{{#dpl:}}</nowiki>|related=no}} For a list of pages which use DPL in its parser tag form (<nowiki><dpl></dpl></nowiki>), see [[:Category:Pages using DynamicPageList3 parser tag]] {{Hidden category}} [[Category:DPL tracking categories]]"
wikitext
text/x-wiki
{{Categoryheader|pages|which use a DPL in its parser function form|yes|<nowiki>{{#dpl:}}</nowiki>|related=no}}
For a list of pages which use DPL in its parser tag form (<nowiki><dpl></dpl></nowiki>), see [[:Category:Pages using DynamicPageList3 parser tag]]
{{Hidden category}}
[[Category:DPL tracking categories]]
8b34cdea2b49dcee7048104df73eaac60d306692
Category:Pages using DynamicPageList3 parser tag
14
266
444
2024-03-22T18:12:30Z
Habblet
11
Created page with "{{Categoryheader|pages|which use a DPL in its parser tag form|yes|<nowiki><dpl></dpl></nowiki>|related=no}} For a list of pages which use DPL in its parser function form (<nowiki>{{#dpl:}}</nowiki>), see [[:Category:Pages using DynamicPageList3 parser function]] {{Hidden category}} [[Category:DPL tracking categories]]"
wikitext
text/x-wiki
{{Categoryheader|pages|which use a DPL in its parser tag form|yes|<nowiki><dpl></dpl></nowiki>|related=no}}
For a list of pages which use DPL in its parser function form (<nowiki>{{#dpl:}}</nowiki>), see [[:Category:Pages using DynamicPageList3 parser function]]
{{Hidden category}}
[[Category:DPL tracking categories]]
6ebe47fcb873135f3bc7cc4eb17366ad5b716bdb
Category:DPL tracking categories
14
267
445
2024-03-22T18:12:45Z
Habblet
11
Created page with "{{Categoryheader|categories|the [[mw:Extension:DynamicPageList3|DynamicPageList]] extension}} [[Category:Maintenance categories]]"
wikitext
text/x-wiki
{{Categoryheader|categories|the [[mw:Extension:DynamicPageList3|DynamicPageList]] extension}}
[[Category:Maintenance categories]]
9bff1a14ee911cc888ccec4bcf1d323b5269b0b1
Category:Template documentation
14
268
446
2024-03-22T18:13:13Z
Habblet
11
Created page with "{{Categoryheader|templates|documentation subpages|yes|[[Template:Documentation]]}} [[Category:Templates| Documentation]]"
wikitext
text/x-wiki
{{Categoryheader|templates|documentation subpages|yes|[[Template:Documentation]]}}
[[Category:Templates| Documentation]]
7a4aca6d5ce2f17eec1e7995501dfcc9143e8752
Category:Permanently protected files
14
269
447
2024-03-22T18:13:54Z
Habblet
11
Created page with "These files are permanently protected, mainly because they are used in many templates across the wiki or are used in MediaWiki pages. {{Categoryheader|images|files that are permanently protected|yes|{{t|Permanent protection}}}} {{Tracking category}} {{Hidden category}}"
wikitext
text/x-wiki
These files are permanently protected, mainly because they are used in many templates across the wiki or are used in MediaWiki pages.
{{Categoryheader|images|files that are permanently protected|yes|{{t|Permanent protection}}}}
{{Tracking category}}
{{Hidden category}}
b98f96ab13e6d72b8863198414d0970d3ac0cb6d
Template:Tracking category
10
270
448
2024-03-22T18:14:21Z
Habblet
11
Created page with "This is a tracking category. It builds and maintains a list of pages primarily for the sake of the list itself and its use in article and category maintenance. Pages are added through {{#ifeq:{{{1|}}}||templates|{{T|{{{1}}}}}}} and should not be added manually.<includeonly>[[Category:Maintenance categories]]</includeonly><noinclude>{{/doc}}</noinclude>"
wikitext
text/x-wiki
This is a tracking category. It builds and maintains a list of pages primarily for the sake of the list itself and its use in article and category maintenance. Pages are added through {{#ifeq:{{{1|}}}||templates|{{T|{{{1}}}}}}} and should not be added manually.<includeonly>[[Category:Maintenance categories]]</includeonly><noinclude>{{/doc}}</noinclude>
97ef45b0eb8f2b9d5f2aab108c256690a5b80991
Template:Tracking category/doc
10
271
449
2024-03-22T18:14:33Z
Habblet
11
Created page with "{{documentation}} This template marks a category as a tracking category. ==Usage== This template can be used by entering the following onto a category page. <pre>{{Tracking category}}</pre> A parameter may be provided which will be used by {{T|T}} to generate a link to the template that adds the category, rather than the generic text. <includeonly>[[Category:Maintenance templates|{{PAGENAME}}]]</includeonly>"
wikitext
text/x-wiki
{{documentation}}
This template marks a category as a tracking category.
==Usage==
This template can be used by entering the following onto a category page.
<pre>{{Tracking category}}</pre>
A parameter may be provided which will be used by {{T|T}} to generate a link to the template that adds the category, rather than the generic text.
<includeonly>[[Category:Maintenance templates|{{PAGENAME}}]]</includeonly>
8cab6eac3470dc842e689bf5dc00c294a59b0b4f
File:PD-icon.svg
6
272
450
2024-03-22T18:15:51Z
Habblet
11
{{PD}}
Source: http://commons.wikimedia.org/wiki/Image:PD-icon.svg
wikitext
text/x-wiki
== Summary ==
{{PD}}
Source: http://commons.wikimedia.org/wiki/Image:PD-icon.svg
2349254ce6b16c90217b74999c35790500a99f06
Template:PD
10
273
451
2024-03-22T18:16:54Z
Habblet
11
Created page with "{{MessageBox |class = info |img = [[File:PD-icon.svg|40px|centre|link=]] |1 = This file is in the public domain. |2 = This file has been released into the '''[[Wikipedia:Public domain|public domain]]''' by the [[meta:Meta:Copyrights|copyright]] holder, its copyright has expired, or it is ineligible for copyright. This applies worldwide. }}{{Fileonly|[[Category:Public domain files]]}}<noinclude>{{/doc}}[[Category:License templates]]</noinclude>"
wikitext
text/x-wiki
{{MessageBox
|class = info
|img = [[File:PD-icon.svg|40px|centre|link=]]
|1 = This file is in the public domain.
|2 = This file has been released into the '''[[Wikipedia:Public domain|public domain]]''' by the [[meta:Meta:Copyrights|copyright]] holder, its copyright has expired, or it is ineligible for copyright. This applies worldwide.
}}{{Fileonly|[[Category:Public domain files]]}}<noinclude>{{/doc}}[[Category:License templates]]</noinclude>
550e9534db3e68a9fb213c1b8b15b1270dd74ebd
Template:PD/doc
10
274
452
2024-03-22T18:17:25Z
Habblet
11
Created page with "{{Documentation}} This template displays a copyright notice that the image falls under [[Wikipedia:Public domain|public domain]]. ==Usage== This template can be used by entering the following onto a relevant image page. It will automatically add [[:Category:Public domain files]] to the page. {{t|PD}} <includeonly>[[Category:Copyright templates|{{PAGENAME}}]]</includeonly>"
wikitext
text/x-wiki
{{Documentation}}
This template displays a copyright notice that the image falls under [[Wikipedia:Public domain|public domain]].
==Usage==
This template can be used by entering the following onto a relevant image page. It will automatically add [[:Category:Public domain files]] to the page.
{{t|PD}}
<includeonly>[[Category:Copyright templates|{{PAGENAME}}]]</includeonly>
b0554310c67beccd41e1ae05c6154b44b870ff9e
File:Information icon-grey.svg
6
275
454
2024-03-22T18:18:21Z
Habblet
11
{{GFDL}}
[[Category:Brighter Shores Wiki images]]
wikitext
text/x-wiki
== Summary ==
{{GFDL}}
[[Category:Brighter Shores Wiki images]]
21d351ecd893ff52fe933b6a807ad2b01a79add0
Category:Brighter Shores Wiki images
14
276
455
2024-03-22T18:18:48Z
Habblet
11
Created page with "{{Categoryheader|images|[[Brighter Shores Wiki]]||}} [[Category:Images]]"
wikitext
text/x-wiki
{{Categoryheader|images|[[Brighter Shores Wiki]]||}}
[[Category:Images]]
2c8327f6866defec794a20bf8f1208f7f61cb848
Category:Images
14
277
456
2024-03-22T18:19:12Z
Habblet
11
Created page with "{{Categoryheader|subcategories|all images. Please '''do not''' add images to this category, but instead choose an appropriate sub-category||}} [[Category:Maintenance]]"
wikitext
text/x-wiki
{{Categoryheader|subcategories|all images. Please '''do not''' add images to this category, but instead choose an appropriate sub-category||}}
[[Category:Maintenance]]
a5e807129b112709f00936c2142cb59aea3ccc93
File:Heckert GNU white.svg
6
278
457
2024-03-22T18:20:07Z
Habblet
11
{{Permanent Protection}}
An image of a Gnu. Taken from Wikimedia Commons ([http://commons.wikimedia.org/wiki/Image:Heckert_GNU_white.svg description page]).
*Original author: Aurelio A. Heckert <aurium@gmail.com>
==License==
{{Copyleft}}
wikitext
text/x-wiki
== Summary ==
{{Permanent Protection}}
An image of a Gnu. Taken from Wikimedia Commons ([http://commons.wikimedia.org/wiki/Image:Heckert_GNU_white.svg description page]).
*Original author: Aurelio A. Heckert <aurium@gmail.com>
==License==
{{Copyleft}}
a7cee28305c93ffd7726b6fd731e9296c14b575b
Template:GFDL
10
279
458
2024-03-22T18:20:21Z
Habblet
11
Created page with "{{MessageBox |class = info |img = [[File:Heckert GNU white.svg|48px|centre|link=]] |1 = This file is licensed under the GFDL. |2 = Permission is granted to copy, distribute and/or modify this document under the terms of the '''[[Wikipedia:Wikipedia:Text of the GNU Free Documentation License|GNU Free Documentation License]]''', Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Te..."
wikitext
text/x-wiki
{{MessageBox
|class = info
|img = [[File:Heckert GNU white.svg|48px|centre|link=]]
|1 = This file is licensed under the GFDL.
|2 = Permission is granted to copy, distribute and/or modify this document under the terms of the '''[[Wikipedia:Wikipedia:Text of the GNU Free Documentation License|GNU Free Documentation License]]''', Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts.
}}{{Fileonly|[[Category:GFDL images]]}}<noinclude>{{/doc}}[[Category:License templates]]</noinclude>
0749a76edfc0614283f8f7c0612cb5a4941130eb
Template:GFDL/doc
10
280
459
2024-03-22T18:20:28Z
Habblet
11
Created page with "{{documentation}} This template displays a notice that an image is copyrighted under [[Wikipedia:Wikipedia:Text of the GNU Free Documentation License|GNU Free Documentation License]]. ==Usage== This template can be used by entering the following onto a relevant image. This template will automatically add [[:Category:GFDL images]] to the page. {{t|GFDL}} <includeonly>[[Category:Copyright templates|{{PAGENAME}}]]</includeonly>"
wikitext
text/x-wiki
{{documentation}}
This template displays a notice that an image is copyrighted under [[Wikipedia:Wikipedia:Text of the GNU Free Documentation License|GNU Free Documentation License]].
==Usage==
This template can be used by entering the following onto a relevant image. This template will automatically add [[:Category:GFDL images]] to the page.
{{t|GFDL}}
<includeonly>[[Category:Copyright templates|{{PAGENAME}}]]</includeonly>
96123b079126907697c542f1be37c0f6449b0d19
Category:GFDL images
14
281
460
2024-03-22T18:20:44Z
Habblet
11
Created page with "{{Categoryheader|images|the '''[[Wikipedia:GNU Free Documentation License|GNU Free Documentation License]]'''|yes|[[Template:GFDL]]}} [[Category:Licensed images]]"
wikitext
text/x-wiki
{{Categoryheader|images|the '''[[Wikipedia:GNU Free Documentation License|GNU Free Documentation License]]'''|yes|[[Template:GFDL]]}}
[[Category:Licensed images]]
8f5aa73462b6a7a474819ce997bb58eb4bbfc44e
Category:Copyright templates
14
282
461
2024-03-22T18:21:10Z
Habblet
11
Created page with "{{Categoryheader|templates|[[meta:Meta:Copyrights|copyrights]]||}} [[Category:Templates]]"
wikitext
text/x-wiki
{{Categoryheader|templates|[[meta:Meta:Copyrights|copyrights]]||}}
[[Category:Templates]]
caffb6d16dc1c6dd241ee5be5b0e2735f5073a4b
Category:License templates
14
283
462
2024-03-22T18:21:44Z
Habblet
11
Created page with "{{Categoryheader|templates|adding a [[Brighter Shores:Licenses|license]] to files. All templates that add a license are listed in this category.}} [[Category:Templates]]"
wikitext
text/x-wiki
{{Categoryheader|templates|adding a [[Brighter Shores:Licenses|license]] to files. All templates that add a license are listed in this category.}}
[[Category:Templates]]
6b58d6ed795dea375b327a08c15357b3043dd5c3
File:GreenCopyleft.svg
6
284
464
2024-03-22T18:22:39Z
Habblet
11
{{Permanent Protection}}
The green copyleft symbol. Obtained from Wikimedia Commons. Released into the public domain by the author.
==License==
{{PD}}
wikitext
text/x-wiki
== Summary ==
{{Permanent Protection}}
The green copyleft symbol. Obtained from Wikimedia Commons. Released into the public domain by the author.
==License==
{{PD}}
47293a069177dca145eca783f1e2b5266321a29d
Template:Copyleft
10
285
465
2024-03-22T18:22:44Z
Habblet
11
Created page with "{| cellspacing="8" cellpadding="0" style="width:80%; clear:both; margin:0.5em auto; background-color:#f9f9f9; border:2px solid #e0e0e0;" |- |[[File:GreenCopyleft.svg|64px|Copyleft]] | style="text-align:center;" | ''Copyleft: this work of art is free, you can redistribute it and/or modify it according to terms of the Free Art License.<br/>You will find a specimen of this license on the site Copyleft Attitude https://artlibre.org/licence/lal/en/ as well as on other sites.'..."
wikitext
text/x-wiki
{| cellspacing="8" cellpadding="0" style="width:80%; clear:both; margin:0.5em auto; background-color:#f9f9f9; border:2px solid #e0e0e0;"
|-
|[[File:GreenCopyleft.svg|64px|Copyleft]]
| style="text-align:center;" | ''Copyleft: this work of art is free, you can redistribute it and/or modify it according to terms of the Free Art License.<br/>You will find a specimen of this license on the site Copyleft Attitude https://artlibre.org/licence/lal/en/ as well as on other sites.''
|}<noinclude>{{/doc}}</noinclude>
9abca6ff0b11f0fa96287bb4cdb6ebbce2cdfd2b
Template:Copyleft/doc
10
286
466
2024-03-22T18:22:56Z
Habblet
11
Created page with "{{Permanent Protection}} The green copyleft symbol. Obtained from Wikimedia Commons. Released into the public domain by the author. ==License== {{PD}}"
wikitext
text/x-wiki
{{Permanent Protection}}
The green copyleft symbol. Obtained from Wikimedia Commons. Released into the public domain by the author.
==License==
{{PD}}
539de69c7b72cee14d23e1b75729028f89849717
Template:Fair use
10
287
467
2024-03-22T18:23:43Z
Habblet
11
Created page with "{{MessageBox |class = info fairuse |img = [[File:Copyright.svg|40px|center|link=]] |1=This image, obtained outside of the ''Brighter Shores'' client, is classified as a [[Wikipedia:Free content|non-free image]]. |2=The image depicted here is subject to {{{owner|Fen Research}}}'s copyright and is displayed here under the conditions of {{Wp|Fair use}}.{{#if:{{{1|{{{link|}}}}}}|<br />Image source: [{{{1|{{{link|}}}}}} {{{1|{{{link|}}}}}}].|{{Fileonly|Category:Needs image..."
wikitext
text/x-wiki
{{MessageBox
|class = info fairuse
|img = [[File:Copyright.svg|40px|center|link=]]
|1=This image, obtained outside of the ''Brighter Shores'' client, is classified as a [[Wikipedia:Free content|non-free image]].
|2=The image depicted here is subject to {{{owner|Fen Research}}}'s copyright and is displayed here under the conditions of {{Wp|Fair use}}.{{#if:{{{1|{{{link|}}}}}}|<br />Image source: [{{{1|{{{link|}}}}}} {{{1|{{{link|}}}}}}].|{{Fileonly|[[Category:Needs image source]]}}}}
}}{{Fileonly|[[Category:Non-free images]]}}<noinclude>{{/doc}}</noinclude>
c34230649bf89d18004f4800ef0d3c03f150fa91
Template:Fair use/doc
10
288
468
2024-03-22T18:24:33Z
Habblet
11
Created page with "{{documentation}} This template describes the {{wp|Fair use}} policy for images. It will automatically add [[:Category:Non-free images]] to the page. ==Usage== {{T|Fair use|link=<image source>|owner=<owner of copyright>}} ==Examples== {{T|Fair use}} {{Fair use}} <pre>{{Fair use|link=https://brightershores.com/20240318/logo.jpg}}</pre> {{Fair use|link=https://brightershores.com/20240318/logo.jpg}} ==Parameters== <templatedata> { "params": { "link": { "label":..."
wikitext
text/x-wiki
{{documentation}}
This template describes the {{wp|Fair use}} policy for images. It will automatically add [[:Category:Non-free images]] to the page.
==Usage==
{{T|Fair use|link=<image source>|owner=<owner of copyright>}}
==Examples==
{{T|Fair use}}
{{Fair use}}
<pre>{{Fair use|link=https://brightershores.com/20240318/logo.jpg}}</pre>
{{Fair use|link=https://brightershores.com/20240318/logo.jpg}}
==Parameters==
<templatedata>
{
"params": {
"link": {
"label": "Link",
"description": "Link to image source.",
"type": "url"
},
"owner": {
"label": "Owner",
"description": "Owner of the copyright.",
"type": "string",
"default": "Fen Research"
}
},
"format": "inline",
"paramOrder": [
"link",
"owner"
]
}
</templatedata>
<includeonly>[[Category:Image templates|{{PAGENAME}}]][[Category:Copyright templates|{{PAGENAME}}]]</includeonly>
3eae0e8a95dfd948e51e2da70a03a7398aec6807
Category:Non-free images
14
289
469
2024-03-22T18:24:59Z
Habblet
11
Created page with "{{Categoryheader|images|'''[[wikipedia:Free content|Non-free images]]'''|yes|[[Template:Fair use]]}} [[Category:Licensed images]]"
wikitext
text/x-wiki
{{Categoryheader|images|'''[[wikipedia:Free content|Non-free images]]'''|yes|[[Template:Fair use]]}}
[[Category:Licensed images]]
352fbaa7bc861464ec57a9bb0ef5309a872e321a
Category:Licensed images
14
290
470
2024-03-22T18:25:11Z
Habblet
11
Created page with "{{Categoryheader|subcategories|the various licensed images||}} [[Category:Images]]"
wikitext
text/x-wiki
{{Categoryheader|subcategories|the various licensed images||}}
[[Category:Images]]
19937e2baee9b5898de76d7d0b6e04a3133ce36c
MediaWiki:Clearyourcache
8
291
471
2024-03-22T18:33:01Z
BlackHawk
10
Created page with "{{#ifeq:{{#sub:{{PAGENAME}}|0|7}}|Gadget-|<div id="contentSub"><span class="subpages">< [[MediaWiki:Gadgets-definition|Gadgets-definition]]</span></div>}} After saving, you may need to bypass your browser's cache to see the changes. For further information, see {{Wp|Wikipedia:Bypass your cache}}. * In most '''Windows''' and '''Linux''' browsers: Hold down {{Key press|Ctrl}} and press {{Key press|F5}}. * In '''Safari''': Hold down {{Key press|⇧ Shift}} and click the..."
wikitext
text/x-wiki
{{#ifeq:{{#sub:{{PAGENAME}}|0|7}}|Gadget-|<div id="contentSub"><span class="subpages">< [[MediaWiki:Gadgets-definition|Gadgets-definition]]</span></div>}}
After saving, you may need to bypass your browser's cache to see the changes. For further information, see {{Wp|Wikipedia:Bypass your cache}}.
* In most '''Windows''' and '''Linux''' browsers: Hold down {{Key press|Ctrl}} and press {{Key press|F5}}.
* In '''Safari''': Hold down {{Key press|⇧ Shift}} and click the '''Reload''' button.
* In '''Chrome''' and '''Firefox for Mac''': Hold down both {{Key press|⌘ Cmd|⇧ Shift}} and press {{Key press|R}}.
12a9e4f562f725d50e2bf4c64029268c70a233f0
Template:Key press
10
292
472
2024-03-22T18:33:16Z
BlackHawk
10
Created page with "{{#invoke:Key press|main}}<noinclude>{{/doc}}"
wikitext
text/x-wiki
{{#invoke:Key press|main}}<noinclude>{{/doc}}
d5830f79b574da3646475eb2d22e41465e6a3970
Template:Key press/doc
10
293
473
2024-03-22T18:33:26Z
BlackHawk
10
Created page with "{{Documentation}} This template creates a keyboard layout for the input for the first parameter. ;Examples <pre> {{Key press|Ctrl}} </pre> {{Key press|Ctrl}} <pre> {{Key press|Ctrl|Alt|Del}} </pre> {{Key press|Ctrl|Alt|Del}} <pre> {{Key press|Ctrl|Alt|Del|sep=&}} </pre> {{Key press|Ctrl|Alt|Del|sep=&}} <includeonly>[[Category:Formatting templates]]</includeonly>"
wikitext
text/x-wiki
{{Documentation}}
This template creates a keyboard layout for the input for the first parameter.
;Examples
<pre>
{{Key press|Ctrl}}
</pre>
{{Key press|Ctrl}}
<pre>
{{Key press|Ctrl|Alt|Del}}
</pre>
{{Key press|Ctrl|Alt|Del}}
<pre>
{{Key press|Ctrl|Alt|Del|sep=&}}
</pre>
{{Key press|Ctrl|Alt|Del|sep=&}}
<includeonly>[[Category:Formatting templates]]</includeonly>
fd0343cfd8266193d67e40018ea54c8c4f34829d
Module:Key press
828
294
474
2024-03-22T18:33:44Z
BlackHawk
10
Created page with "-- <pre> local p = {} function p.main(frame) local args = frame:getParent().args local ret = mw.html.create('span') :css('white-space','nowrap') local sep = args.sep or '+' local keys = {} local tblsize = 0 for i, v in ipairs(args) do tblsize = i table.insert(keys,v) end for i, v in ipairs(keys) do ret :tag('kbd') :addClass('keypress') :wikitext(v) :done() if i < tblsize then ret:wikitext(sep) end end return tostring(ret) end..."
Scribunto
text/plain
-- <pre>
local p = {}
function p.main(frame)
local args = frame:getParent().args
local ret = mw.html.create('span')
:css('white-space','nowrap')
local sep = args.sep or '+'
local keys = {}
local tblsize = 0
for i, v in ipairs(args) do
tblsize = i
table.insert(keys,v)
end
for i, v in ipairs(keys) do
ret :tag('kbd')
:addClass('keypress')
:wikitext(v)
:done()
if i < tblsize then
ret:wikitext(sep)
end
end
return tostring(ret)
end
return p
b85a527cac7bd93c0dc3643010783a31e5bd5add
Module:Key press/doc
828
295
475
2024-03-22T18:34:05Z
BlackHawk
10
Created page with "{{No documentation}}"
wikitext
text/x-wiki
{{No documentation}}
ad36a615c98d03e22b03ecaa7b9d7d87b5d7b517
Category:Module documentation
14
296
476
2024-03-22T18:34:16Z
BlackHawk
10
Created page with "Documentation subpages for lua modules. [[Category:Template documentation]][[Category:Lua-based templates]]"
wikitext
text/x-wiki
Documentation subpages for lua modules.
[[Category:Template documentation]][[Category:Lua-based templates]]
cd2ff5662331ade934dcb848917046e3b28d222c
MediaWiki:Common.less/templates.less
8
25
477
34
2024-03-22T18:38:51Z
BlackHawk
10
less
less
/* ==================
TEMPLATES
==================*/
:root {
--keypress-background: @gallery;
--keypress-border: @silver;
--keypress-color: @mineshaft;
}
// Template:Key press
.keypress {
background: var(--keypress-background);
color: var(--keypress-color);
font-family: inherit;
border: 1px solid var(--keypress-border);
border-radius: @border-radius;
font-size: 0.9em;
margin: 0 0.1em;
padding: 0.1em 0.4em;
white-space: nowrap;
}
be0a71a8f6294b004f6e66721b0d24eb9377e8fc
MediaWiki:Common.css
8
30
478
284
2024-03-22T18:39:08Z
BlackHawk
10
Updating CSS from [[MediaWiki:Common.less]]
css
text/css
/* <pre> */
:root {
--body-main: #feffff;
--body-light: #f2f2f2;
--body-mid: #d0bd97;
--body-dark: #e3e3e3;
--body-border: #000;
--body-background-color: #173a4d;
--button-background: #605443;
--button-color: #fff;
--button-border: #3c352a;
--button-dark: #18140c;
--button-light: #3a301d;
--sidebar: #cfc08d;
--background-text-color: #e2dbc8;
--background-link-color: #e2bd8a;
--search-box: #efeee6;
--link-color: #936039;
--redlink-color: #ba0000;
--text-color: #000;
--byline-color: #4c4c4c;
--subtle-color: #777;
--admin-blue: #332e75;
--bearcat-green: #13592e;
--awb-purple: #933b96;
--rsw-blue: #438ab6;
--osrsw-brown: #605443;
--thumb-bg: var(--body-light);
--thumb-caption-bg: var(--body-mid);
--sourceeditor-input-background: #fff;
--sourceeditor-background: var(--body-light);
--sourceeditor-background-secondary: var(--body-light);
--sourceeditor-border: var(--body-mid);
--codemirror-gutter-background: var(--body-mid);
}
@font-face {
font-family: 'Lora';
font-weight: 400 700;
font-style: normal;
font-display: swap;
src: url('filepath://Lora.woff2') format('woff2');
}
@font-face {
font-family: 'Lora';
font-weight: 400 700;
font-style: italic;
font-display: swap;
src: url('filepath://Lora-Italic.woff2') format('woff2');
}
:root {
--base-text-color: #36414f;
--base-heading-color: #444e5a;
--base-heading-border: #e4eaee;
--mw-code-background-color: #ddd4bb;
--body-background-image: url('filepath://Wiki_background.jpg');
}
#mw-page-base {
background: none;
}
.mw-body {
background-color: var(--body-main);
color: var(--text-color);
border-color: transparent;
box-shadow: 0 0 7px rgba(0, 0, 0, 0.15);
margin-top: 0;
}
h1,
h2,
h3,
h4,
h5,
h6 {
color: var(--text-color);
}
h1,
h2 {
border-color: var(--sidebar);
}
.mw-body h1,
.mw-body-content h1,
.mw-body-content h2,
.mw-body-content h3,
.mw-body-content h4,
.mw-body-content h5,
.mw-body-content h6 {
font-family: 'Lora', 'Palatino', 'Georgia', serif;
}
.mw-parser-output h2:first-of-type {
clear: left;
}
.mw-footer {
color: var(--background-text-color);
}
.mw-footer li {
color: var(--background-text-color);
}
.mw-footer a,
.mw-footer a:active,
.mw-footer a:visited {
color: var(--background-link-color);
}
::placeholder {
color: var(--subtle-color);
}
a {
color: var(--link-color);
}
a:visited,
a:active {
color: var(--link-color);
}
a.new {
color: var(--redlink-color);
}
a.new:visited {
color: var(--redlink-color);
}
.mw-parser-output a.extiw,
.mw-parser-output a.external {
color: var(--link-color);
}
.mw-parser-output a.extiw:visited,
.mw-parser-output a.external:visited,
.mw-parser-output a.extiw:active,
.mw-parser-output a.external:active {
color: var(--link-color);
}
.jsPurgeLink a.external {
color: var(--link-color);
}
:root {
--errorbox-bg: #feecea;
--errorbox-border: #ee4231;
--warningbox-bg: #fef9de;
--warningbox-border: #f9d000;
--successbox-bg: #ecf8e3;
--successbox-border: #6bc71f;
}
.mw-message-box-error,
.errorbox,
.mw-message-box-warning,
.warningbox,
.mw-message-box-success,
.successbox,
.usermessage {
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
}
.mw-message-box-error,
.errorbox {
background-color: var(--errorbox-bg);
border-color: var(--errorbox-border);
}
.mw-message-box-warning,
.warningbox,
.usermessage {
background-color: var(--warningbox-bg);
border-color: var(--warningbox-border);
}
.mw-message-box-success,
.successbox {
background-color: var(--successbox-bg);
border-color: var(--successbox-border);
}
.catlinks {
background: var(--body-light);
border: 1px solid var(--body-dark);
padding: 8px 15px;
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
}
.catlinks li {
border-color: var(--body-mid);
}
.filehistory a img,
#file img {
background: url("data:image/svg+xml,%3C%3Fxml version='1.0' encoding='UTF-8'%3F%3E%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16'%3E%3Cpath d='M0 0h8v16h8V8H0z' opacity='.13'/%3E%3C/svg%3E") repeat;
}
#file img:hover {
background: none;
}
.mw-highlight {
background: none;
}
.mw-highlight .linenos {
background-color: var(--mw-code-background-color);
color: var(--byline-color);
}
.mw-highlight a:hover .linenos,
.mw-highlight .hll a .linenos {
color: var(--text-color);
}
.mw-content-ltr.mw-highlight-lines pre,
.mw-content-ltr.content .mw-highlight-lines pre {
box-shadow: inset 2.75em 0 0 var(--mw-code-background-color);
}
#pagehistory ul {
list-style: none;
margin: 0;
}
#pagehistory li {
border: 1px solid transparent;
padding: 1px 10px;
margin: 2px 0;
}
#pagehistory li.selected {
background-color: var(--body-light);
color: inherit;
border: 1px dashed var(--body-border);
outline: none;
}
#mw-history-compare > div:first-of-type {
position: -webkit-sticky;
position: sticky;
top: 0;
background-color: var(--body-main);
border-bottom: 1px solid var(--body-dark);
padding: 0.25em 0;
}
.wgl-stickyheader #mw-history-compare > div:first-of-type {
top: 2.5rem;
}
.autocomment,
.autocomment a,
.autocomment a:visited {
color: var(--link-color);
}
li span.deleted,
span.history-deleted {
color: var(--byline-color);
}
.mw-usertoollinks-contribs-no-edits,
.mw-usertoollinks-contribs-no-edits:visited {
color: var(--redlink-color);
}
.CategoryTreeToggle {
color: var(--link-color);
}
body.wgl-stickyheader.action-view .mw-headline:target::before {
display: block;
content: '';
margin-top: -3rem;
height: 3rem;
visibility: hidden;
pointer-events: none;
}
.mw-mmv-post-image {
color: var(--text-color);
background-color: var(--body-main);
}
.mw-mmv-image-metadata {
border-top-color: var(--body-mid);
background-color: var(--body-light);
}
.mw-mmv-dialog,
.mw-mmv-dialog .mw-mmv-dialog-down-arrow,
.mw-mmv-options-dialog .mw-mmv-dialog-down-arrow {
background-color: var(--body-light);
box-shadow: none;
}
.mw-mmv-options-enable-alert {
background-color: var(--body-light);
color: var(--text-color);
}
.mw-mmv-options-dialog-header,
.mw-mmv-options-text-header,
.mw-mmv-options-text-body,
.mw-mmv-options-enable-alert,
.mw-mmv-options-dialog .mw-mmv-disable-confirmation .mw-mmv-options-dialog-header,
.mw-mmv-options-dialog .mw-mmv-disable-confirmation .mw-mmv-options-text-header {
color: var(--text-color);
}
.mw-revslider-container {
border-color: var(--sidebar);
}
.mw-revslider-slider-wrapper {
border-top-color: var(--sidebar);
}
.mw-ui-button {
background-color: var(--ooui-normal);
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
}
.mw-ui-button:not(:disabled):hover,
.mw-ui-button:not(:disabled):active {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
}
.mw-ui-button:not(:disabled):focus {
color: var(--ooui-text);
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent), inset 0 0 0 2px #fff;
}
.mw-ui-button:not(:disabled):visited {
color: var(--ooui-text);
}
.mw-ui-button.mw-ui-progressive:not(:disabled) {
background-color: var(--ooui-progressive);
color: #fff;
border-color: var(--ooui-progressive);
}
.mw-ui-button.mw-ui-progressive:not(:disabled):hover {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
}
.mw-ui-button.mw-ui-progressive:not(:disabled):focus {
box-shadow: inset 0 0 0 1px var(--ooui-accent), inset 0 0 0 2px #fff;
}
.mw-ui-button.mw-ui-progressive:not(:disabled):active,
.mw-ui-button.mw-ui-progressive:not(:disabled).is-on {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
box-shadow: none;
}
.mw-ui-button.mw-ui-destructive:not( :disabled ) {
color: #fff;
}
.mw-ui-button.mw-ui-quiet,
.mw-ui-button.mw-ui-quiet.mw-ui-progressive,
.mw-ui-button.mw-ui-quiet.mw-ui-destructive {
color: var(--text-color);
}
input[type='checkbox']:hover + .mw-ui-button.mw-ui-quiet,
input[type='checkbox']:hover + .mw-ui-button.mw-ui-quiet.mw-ui-progressive,
input[type='checkbox']:hover + .mw-ui-button.mw-ui-quiet.mw-ui-destructive,
.mw-ui-button.mw-ui-quiet:hover,
.mw-ui-button.mw-ui-quiet.mw-ui-progressive:hover,
.mw-ui-button.mw-ui-quiet.mw-ui-destructive:hover {
background-color: rgba(0, 24, 73, 0.02745098);
color: var(--text-color);
border-color: transparent;
}
input[type='checkbox']:focus + .mw-ui-button.mw-ui-quiet,
input[type='checkbox']:focus + .mw-ui-button.mw-ui-quiet.mw-ui-progressive,
input[type='checkbox']:focus + .mw-ui-button.mw-ui-quiet.mw-ui-destructive,
.mw-ui-button.mw-ui-quiet:focus,
.mw-ui-button.mw-ui-quiet.mw-ui-progressive:focus,
.mw-ui-button.mw-ui-quiet.mw-ui-destructive:focus {
color: var(--text-color);
}
input[type='checkbox']:active + .mw-ui-button.mw-ui-quiet,
input[type='checkbox']:active + .mw-ui-button.mw-ui-quiet.mw-ui-progressive,
input[type='checkbox']:active + .mw-ui-button.mw-ui-quiet.mw-ui-destructive,
.mw-ui-button.mw-ui-quiet:active,
.mw-ui-button.mw-ui-quiet.mw-ui-progressive:active,
.mw-ui-button.mw-ui-quiet.mw-ui-destructive:active {
background-color: rgba(0, 36, 73, 0.08235294);
color: var(--text-color);
border-color: #72777d;
}
.mw-ui-input {
background-color: var(--ooui-input);
color: var(--text-color);
border-color: var(--ooui-input-border);
}
.mw-ui-input:hover {
border-color: var(--ooui-input-border--hover);
}
.mw-ui-input::placeholder {
color: var(--byline-color);
}
.mw-content-ltr .redirectText li:first-child {
padding: 0;
background: 0;
}
.mw-content-ltr .redirectText li:first-child::before {
content: '';
background: currentcolor;
-webkit-mask: url("filepath://Redirect-arrow.svg") no-repeat 50% 50% / contain;
mask: url("filepath://Redirect-arrow.svg") no-repeat 50% 50% / contain;
display: inline-block;
width: 47px;
height: 20px;
}
:root {
--wikitable-header-bg: var(--body-dark);
--wikitable-border: var(--body-border);
--wikitable-bg: var(--body-light);
--wikitable-bg-lighter: #e9e3d6;
--wikitable-color: var(--text-color);
--table-na-background: rgba(255, 255, 255, 0.3);
--table-na-color: var(--subtle-color);
--table-yes-background: #c3e8a3;
--table-yes-color: #2e5e05;
--table-no-background: #fbc0ba;
--table-no-color: #801c13;
--table-maybe-background: #fcea94;
--table-maybe-color: #786300;
}
.wikitable {
background: var(--wikitable-bg);
color: var(--wikitable-color);
border-color: var(--wikitable-border);
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
}
.wikitable > tr > th,
.wikitable > tr > td,
.wikitable > * > tr > th,
.wikitable > * > tr > td {
border-color: var(--wikitable-border);
}
.wikitable > tr > th.table-noborder,
.wikitable > tr > td.table-noborder,
.wikitable > * > tr > th.table-noborder,
.wikitable > * > tr > td.table-noborder {
border-left-style: hidden;
border-right-style: hidden;
padding-left: 0;
padding-right: 0;
}
.wikitable > tr > th,
.wikitable > * > tr > th {
background-color: var(--wikitable-header-bg);
}
.tabber .wikitable {
box-shadow: none;
}
.mw_metadata td,
.mw_metadata th {
border-color: var(--wikitable-border);
}
.mw_metadata th {
background-color: var(--wikitable-header-bg);
}
.mw_metadata td {
background-color: var(--wikitable-bg);
}
.mw-datatable {
border-color: var(--wikitable-border);
}
.mw-datatable td,
.mw-datatable th {
border-color: var(--wikitable-border);
}
.mw-datatable th {
background-color: var(--wikitable-header-bg);
}
.mw-datatable td {
background-color: var(--wikitable-bg);
}
.mw-datatable tr:hover td {
background-color: var(--wikitable-bg);
}
table.alternating-rows tr:nth-child(odd),
table.alternating-cols td:nth-child(odd) {
background: var(--wikitable-alternating-bg);
}
.table-na {
background: var(--table-na-background);
color: var(--table-na-color);
vertical-align: middle;
text-align: center;
}
.table-yes {
background: var(--table-yes-background);
color: var(--table-yes-color);
}
.table-positive {
background: var(--table-yes-background);
}
.table-no {
background: var(--table-no-background);
color: var(--table-no-color);
}
.table-negative {
background: var(--table-no-background);
}
.table-maybe {
background: var(--table-maybe-background);
color: var(--table-maybe-color);
}
#mw-allmessagestable .am_actual,
#mw-allmessagestable .am_default {
background-color: var(--wikitable-bg);
}
#mw-allmessagestable .am_default:hover,
#mw-allmessagestable .am_actual:hover,
#mw-allmessagestable tbody:hover td {
background-color: var(--wikitable-bg-lighter);
}
table.wikitable td.no-cell-spacing {
padding: 0;
height: 0;
}
table.wikitable td.no-cell-spacing table {
margin: -1px;
width: calc(100% + 2px);
height: calc(100% + 2px);
}
.plainlist ol,
.plainlist ul {
margin: 0;
}
.plainlist li {
margin-bottom: 0;
list-style: none;
}
table.align-right-1 td:nth-of-type(1),
table.align-right-2 td:nth-of-type(2),
table.align-right-3 td:nth-of-type(3),
table.align-right-4 td:nth-of-type(4),
table.align-right-5 td:nth-of-type(5),
table.align-right-6 td:nth-of-type(6),
table.align-right-7 td:nth-of-type(7),
table.align-right-8 td:nth-of-type(8),
table.align-right-9 td:nth-of-type(9),
table.align-right-10 td:nth-of-type(10),
table.align-right-11 td:nth-of-type(11),
table.align-right-12 td:nth-of-type(12),
table.align-right-13 td:nth-of-type(13),
table.align-right-14 td:nth-of-type(14),
table.align-right-15 td:nth-of-type(15),
table.align-right-16 td:nth-of-type(16),
table.align-right-17 td:nth-of-type(17),
table.align-right-18 td:nth-of-type(18),
table.align-right-19 td:nth-of-type(19),
table.align-right-20 td:nth-of-type(20) {
text-align: right;
}
table.align-center-1 td:nth-of-type(1),
table.align-center-2 td:nth-of-type(2),
table.align-center-3 td:nth-of-type(3),
table.align-center-4 td:nth-of-type(4),
table.align-center-5 td:nth-of-type(5),
table.align-center-6 td:nth-of-type(6),
table.align-center-7 td:nth-of-type(7),
table.align-center-8 td:nth-of-type(8),
table.align-center-9 td:nth-of-type(9),
table.align-center-10 td:nth-of-type(10),
table.align-center-11 td:nth-of-type(11),
table.align-center-12 td:nth-of-type(12),
table.align-center-13 td:nth-of-type(13),
table.align-center-14 td:nth-of-type(14),
table.align-center-15 td:nth-of-type(15),
table.align-center-16 td:nth-of-type(16),
table.align-center-17 td:nth-of-type(17),
table.align-center-18 td:nth-of-type(18),
table.align-center-19 td:nth-of-type(19),
table.align-center-20 td:nth-of-type(20) {
text-align: center;
}
table.align-left-1 td:nth-of-type(1),
table.align-left-2 td:nth-of-type(2),
table.align-left-3 td:nth-of-type(3),
table.align-left-4 td:nth-of-type(4),
table.align-left-5 td:nth-of-type(5),
table.align-left-6 td:nth-of-type(6),
table.align-left-7 td:nth-of-type(7),
table.align-left-8 td:nth-of-type(8),
table.align-left-9 td:nth-of-type(9),
table.align-left-10 td:nth-of-type(10),
table.align-left-11 td:nth-of-type(11),
table.align-left-12 td:nth-of-type(12),
table.align-left-13 td:nth-of-type(13),
table.align-left-14 td:nth-of-type(14),
table.align-left-15 td:nth-of-type(15),
table.align-left-16 td:nth-of-type(16),
table.align-left-17 td:nth-of-type(17),
table.align-left-18 td:nth-of-type(18),
table.align-left-19 td:nth-of-type(19),
table.align-left-20 td:nth-of-type(20) {
text-align: left;
}
:root {
--diff-addedline-border-color: #438ab5;
--diff-addedline-background: #bddff2;
--diff-addedline-color: #000;
--diff-deletedline-border-color: #379541;
--diff-deletedline-background: #c1edbf;
--diff-deletedline-color: #000;
--diff-context-border-color: var(--body-mid);
--diff-context-background: var(--body-mid);
}
.diff-context {
border-color: var(--diff-context-border-color);
background: var(--diff-context-background);
color: inherit;
}
.diff-addedline {
border-color: var(--diff-addedline-border-color);
}
.diff-addedline .diffchange {
background: var(--diff-addedline-background);
color: var(--diff-addedline-color);
}
.diff-deletedline {
border-color: var(--diff-deletedline-border-color);
}
.diff-deletedline .diffchange {
background: var(--diff-deletedline-background);
color: var(--diff-deletedline-color);
}
.mw-diff-movedpara-left:after,
.mw-diff-movedpara-right:after {
color: var(--text-color);
}
.mw-notification {
background-color: var(--body-light);
border-color: var(--body-border);
color: var(--text-color);
}
.mw-echo-ui-notificationsInboxWidget-toolbarWrapper {
background: var(--body-main);
}
.mw-body-content .mw-echo-ui-datedSubGroupListWidget-title-secondary {
color: var(--byline-color);
}
.mw-echo-ui-pageNotificationsOptionWidget.oo-ui-optionWidget-selected {
background-color: var(--ooui-normal);
color: var(--ooui-accent);
}
.mw-echo-ui-pageNotificationsOptionWidget-label-count {
background-color: var(--ooui-normal);
color: var(--byline-color);
}
.oo-ui-optionWidget-selected .mw-echo-ui-pageNotificationsOptionWidget-label-count {
color: var(--ooui-accent);
}
.mw-echo-ui-pageNotificationsOptionWidget.oo-ui-optionWidget-highlighted {
background-color: var(--ooui-normal);
color: var(--text-color);
}
.mw-echo-ui-crossWikiUnreadFilterWidget {
border-color: var(--body-border);
}
.mw-echo-ui-crossWikiUnreadFilterWidget-subtitle {
color: var(--byline-color);
}
.mw-echo-ui-notificationBadgeButtonPopupWidget-popup > .oo-ui-popupWidget-popup > .oo-ui-popupWidget-head,
.mw-echo-ui-notificationBadgeButtonPopupWidget-popup > .oo-ui-popupWidget-popup > .oo-ui-popupWidget-footer {
border-color: var(--ooui-interface-border);
}
.mw-echo-ui-notificationBadgeButtonPopupWidget-popup > .oo-ui-popupWidget-popup > .oo-ui-popupWidget-footer .mw-echo-ui-notificationBadgeButtonPopupWidget-footer-buttons .oo-ui-buttonElement:last-child {
border-left-color: var(--ooui-normal-border);
}
.mw-echo-ui-notificationItemWidget {
background-color: var(--ooui-normal);
border-color: var(--ooui-normal-border);
}
.mw-echo-ui-notificationItemWidget:hover,
.mw-echo-ui-notificationItemWidget-unread:hover {
background-color: var(--ooui-normal--hover);
}
.mw-echo-ui-notificationItemWidget:last-child {
border-bottom-color: var(--ooui-normal-border);
}
.mw-echo-ui-notificationItemWidget-unread {
background-color: var(--search-box);
}
.mw-echo-ui-crossWikiNotificationItemWidget-group,
.mw-echo-ui-bundleNotificationItemWidget-group {
background-color: var(--ooui-interface);
}
.mw-echo-ui-toggleReadCircleButtonWidget-circle {
background-color: var(--ooui-progressive);
}
.mw-echo-ui-toggleReadCircleButtonWidget:hover .mw-echo-ui-toggleReadCircleButtonWidget-circle {
background-color: var(--ooui-progressive--hover);
}
.mw-echo-ui-toggleReadCircleButtonWidget-circle-unread {
background-color: var(--ooui-normal);
border-color: var(--ooui-normal-border);
}
.mw-echo-ui-notificationItemWidget-content-message-header,
.mw-echo-ui-notificationItemWidget-content-message-body,
.mw-echo-ui-menuItemWidget > .oo-ui-buttonElement-button > .oo-ui-labelElement-label,
.mw-echo-ui-notificationItemWidget-content-actions-timestamp {
color: var(--ooui-text);
}
.mw-echo-ui-bundleNotificationItemWidget-group {
background-color: var(--body-main);
}
@keyframes unseen-fadeout-to-unread {
from {
background-color: var(--wikitable-bg-lighter);
}
to {
background-color: var(--search-box);
}
}
@keyframes unseen-fadeout-to-read {
from {
background-color: var(--wikitable-bg-lighter);
}
to {
background-color: var(--body-main);
}
}
.mwe-popups {
background: var(--body-light);
}
.mwe-popups .mwe-popups-container {
color: var(--text-color);
background: var(--body-light);
}
.mwe-popups .mwe-popups-container.flipped-x-y:before,
.mwe-popups .mwe-popups-container.flipped-y:before {
border-top: none;
}
.mwe-popups .mwe-popups-container.mwe-popups-no-image-tri:before {
border-bottom: none;
}
.mwe-popups .mwe-popups-container.flipped-x-y:after,
.mwe-popups .mwe-popups-container.flipped-y:after {
border-top-color: var(--body-light);
}
.mwe-popups .mwe-popups-container.mwe-popups-no-image-tri:after {
border-bottom-color: var(--body-light);
}
.mwe-popups .mwe-popups-settings-icon:hover,
.mwe-popups .mwe-popups-settings-icon:active {
background-color: var(--ooui-normal--hover);
}
.mwe-popups .mw-ui-icon-element:not(.disabled):hover {
background: none;
}
.mwe-popups .mwe-popups-extract {
color: var(--text-color);
}
.mwe-popups .mwe-popups-extract[dir='ltr']:after {
background-image: linear-gradient(to right, rgba(49, 62, 89, 0), var(--body-light) 50%);
}
.mwe-popups-overlay {
background-color: var(--ooui-window-background);
}
#mwe-popups-settings {
background: var(--ooui-interface);
border-color: var(--ooui-interface-border);
color: var(--text-color);
}
#mwe-popups-settings header {
border-color: var(--ooui-interface-border);
}
#mwe-popups-settings main#mwe-popups-settings-form p {
color: var(--byline-color);
}
#mwe-popups-settings main#mwe-popups-settings-form form label > span {
color: var(--ooui-text);
}
:root {
--smw-ask-options-even-bg: var(--body-mid);
--smw-ask-options-odd-bg: var(--body-light);
--smw-ask-action-btn-lblue-bg: var(--body-main);
--smw-ask-action-btn-lblue-color: #000;
--smw-ask-action-btn-lblue-border-color: var(--body-light);
--smw-ask-action-btn-dblue-bg: var(--body-light);
--smw-ask-action-btn-dblue-color: #fff;
--smw-ask-action-btn-dblue-border-color: var(--button-border);
}
.smw-ask-condition fieldset,
.smw-ask-printhead fieldset {
border-color: var(--sidebar);
}
.smw-ask-search fieldset,
.smw-ask-format fieldset,
.smw-ask-options fieldset {
border-color: var(--sidebar);
}
.strike > span:before,
.strike > span:after {
background: var(--sidebar);
}
.smw-ask-options-fields tr td {
background-color: var(--smw-ask-options-even-bg);
}
.smw-ask-options-fields tr:nth-child(odd) td {
background-color: var(--smw-ask-options-odd-bg);
}
.smw-ask-action-btn.smw-ask-action-btn-lblue,
.smw-ask-action-btn.smw-ask-action-btn-lblue:hover,
.smw-ask-action-btn.smw-ask-action-btn-lblue:visited {
background-color: var(--smw-ask-action-btn-lblue-bg);
color: var(--smw-ask-action-btn-lblue-color);
border-color: var(--smw-ask-action-btn-lblue-border-color);
}
.smw-ask-action-btn.smw-ask-action-btn-dblue,
.smw-ask-action-btn.smw-ask-action-btn-dblue:hover,
.smw-ask-action-btn.smw-ask-action-btn-dblue:visited {
background-color: var(--smw-ask-action-btn-dblue-bg);
color: var(--smw-ask-action-btn-dblue-color);
border-color: var(--smw-ask-action-btn-dblue-border-color);
}
.smw-ask-query textarea,
.smw-ask-actions textarea {
background-color: var(--ooui-interface);
border-color: var(--ooui-interface-border);
color: var(--ooui-text);
}
.smw-ask-query-format select {
background-color: var(--ooui-interface);
border: 1px solid var(--ooui-interface-border);
color: var(--ooui-text);
}
.smw-ask-toplinks {
background-color: var(--body-mid);
}
.smw-ask-toplinks span.smw-icon-info {
background: none;
padding: 0 !important;
}
.smw-ask-toplinks span.smw-icon-info::before {
content: '';
background: var(--text-color);
-webkit-mask: url("data:image/svg+xml,%3C%3Fxml version='1.0' encoding='UTF-8'%3F%3E%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 20 20'%3E%3Ctitle%3Einfo%3C/title%3E%3Cpath d='M10 0C4.477 0 0 4.477 0 10s4.477 10 10 10 10-4.477 10-10S15.523 0 10 0zM9 5h2v2H9zm0 4h2v6H9z'/%3E%3C/svg%3E") no-repeat 50% 50% / contain;
mask: url("data:image/svg+xml,%3C%3Fxml version='1.0' encoding='UTF-8'%3F%3E%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 20 20'%3E%3Ctitle%3Einfo%3C/title%3E%3Cpath d='M10 0C4.477 0 0 4.477 0 10s4.477 10 10 10 10-4.477 10-10S15.523 0 10 0zM9 5h2v2H9zm0 4h2v6H9z'/%3E%3C/svg%3E") no-repeat 50% 50% / contain;
padding: 0 0 3px 18px;
}
.smw-ask-options-row-odd {
background-color: var(--body-light);
}
.smw-ask-options-row-even {
background-color: var(--body-mid);
}
#options-toggle:not(:checked) + #options-list .options-parameter-list:after {
background-image: linear-gradient(to bottom, transparent, var(--body-mid) 90%);
}
.smw-ask-button-submit input {
background-color: var(--ooui-normal);
border-color: var(--ooui-normal-border);
color: var(--text-color);
}
.smw-ask-button-submit input:hover,
.smw-ask-button-lgrey:hover {
background-color: var(--ooui-normal--hover);
border-color: var(--ooui-normal-border);
}
input.smw-ask-action-btn.smw-ask-action-btn-dblue {
background-color: var(--ooui-normal);
border-color: var(--ooui-normal-border);
color: var(--ooui-text);
}
a.smw-ask-action-btn.smw-ask-action-btn-lblue {
background-color: var(--body-mid);
border-color: var(--body-mid);
color: var(--ooui-text);
}
a.smw-ask-action-btn.smw-ask-action-btn-lblue:visited {
background-color: var(--body-mid);
border-color: var(--body-mid);
color: var(--ooui-text);
}
a.smw-ask-action-btn.smw-ask-action-btn-lblue:hover {
background-color: var(--body-mid);
border-color: var(--body-mid);
color: var(--ooui-text);
}
a.smw-ask-action-btn-lgrey {
background-color: var(--ooui-normal);
border-color: var(--ooui-normal-border);
color: var(--ooui-text);
}
a.smw-ask-action-btn-lgrey:hover {
background-color: var(--ooui-normal--hover);
border-color: var(--ooui-normal-border);
color: var(--ooui-text);
}
.smw-callout-error {
background-color: var(--errorbox-bg);
border-color: var(--errorbox-border);
}
.smw-callout-info {
background-color: var(--body-light);
border-color: var(--body-dark);
}
.smw-callout-success {
background-color: var(--successbox-bg);
border-color: var(--successbox-border);
}
.smw-callout-warning {
background-color: var(--warningbox-bg);
border-color: var(--warningbox-bg);
}
.smw-tabs input.nav-tab:checked + label.nav-label,
.smw-tabs input.nav-tab:checked + label.nav-label:hover {
color: inherit;
}
#tab-smw-property-value:checked + label.nav-label .usage-count {
color: #fff;
background-color: var(--ooui-progressive);
}
#tab-smw-property-value:checked + label.nav-label .usage-count.moderate {
color: #fff;
background-color: #b55e0c;
border-color: #b55e0c;
}
#tab-smw-property-value:checked + label.nav-label .usage-count.high {
color: #fff;
background-color: #9f261e;
border-color: #9f261e;
}
.smw-property-page-results .header-title {
background-color: var(--ooui-interface);
border-bottom-color: var(--ooui-interface-border);
color: var(--ooui-text);
}
.smw-property-page-results .value-row:hover {
background-color: var(--ooui-normal--hover);
}
.smw-property-page-results .smw-table .header-row {
color: var(--text-color);
}
.tippy-tooltip.light-border-theme {
background-color: var(--body-light);
color: var(--text-color);
}
.tippy-tooltip.light-border-theme .tippy-arrow {
border-top-color: var(--body-light);
}
.tippy-tooltip.light-border-theme .tippy-arrow:after {
border-top-color: var(--body-light);
}
.tippy-header {
background-color: var(--body-dark);
border-bottom-color: var(--body-mid);
}
.smw-ui-input-filter {
background-color: var(--ooui-interface);
border-color: var(--ooui-interface-border);
color: var(--ooui-text);
}
.smw-ui-input-filter input {
border-left-color: var(--ooui-interface-border) !important;
color: var(--ooui-text) !important;
}
.smw-ui-pagination .page-link.link-disabled {
background-color: var(--ooui-disabled);
border-color: var(--ooui-disabled-border);
color: var(--subtle-color);
}
.smw-ui-pagination .page-link {
background-color: var(--ooui-normal);
border-color: var(--ooui-normal-border);
color: var(--link-color);
}
.smw-ui-pagination .page-link:hover {
background-color: var(--ooui-normal--hover);
border-color: var(--ooui-normal-border);
color: var(--link-color);
}
.smw-ui-pagination .page-link.link-active {
color: #fff;
background-color: var(--ooui-progressive);
border-color: var(--ooui-progressive);
}
.smw-tabs input.nav-tab:checked + label.nav-label {
border-color: var(--ooui-normal-border);
}
.smw-tabs section,
.smw-tabs .subtab-content {
border-top-color: var(--ooui-normal-border);
}
.smw-column-header {
color: var(--text-color);
}
.smw-factbox {
background: var(--body-main);
border-color: transparent;
}
.mw-body .mw-indicators #mw-indicator-smw-entity-examiner.mw-indicator .smw-indicator-vertical-bar-loader {
display: none;
}
.smwb-theme-light .smwb-title,
.smwb-theme-light .smwb-center,
.smwb-theme-light .smwb-actions,
.smwb-theme-light .smwb-prophead {
background-color: var(--body-mid);
}
.smwb-theme-light .smwb-factbox {
border-left-color: var(--body-mid);
}
.smwb-theme-light .smwb-ifactbox {
border-right-color: var(--body-mid);
}
.smwb-theme-light .smwb-propval {
background-color: var(--body-light);
}
.smwb-action-separator {
border-color: var(--wikitable-border);
}
.smwb-bottom {
border-bottom: 1px solid var(--wikitable-border);
}
.smwb-ifactbox .smwb-cell,
.smwb-factbox .smwb-cell {
border-top: 1px solid var(--wikitable-border);
}
.smwb-propvalue .smwb-prophead,
.smwb-ipropvalue .smwb-prophead,
.smwb-propvalue .smwb-propval,
.smwb-ipropvalue .smwb-propval {
font-size: 0.9em;
}
:root {
--filter-black-to-link: invert(36%) sepia(58%) saturate(433%) hue-rotate(344deg) brightness(100%) contrast(91%);
}
#bodyContent span.smwbrowse a {
color: black;
background-image: url('filepath://Smwbrowse.svg');
filter: var(--filter-black-to-link);
}
#bodyContent span.smwbrowse a:hover {
color: black;
background-image: url('filepath://Smwbrowse-hover.svg');
text-decoration: underline;
}
#bodyContent span.smwsearch a {
color: black;
filter: var(--filter-black-to-link);
background-image: url('filepath://Smwsearch.svg');
}
#bodyContent span.smwsearch a:hover {
color: black;
background-image: url('filepath://Smwsearch-hover.svg');
text-decoration: underline;
}
:root {
--tabber-tab-bg: var(--body-light);
--tabber-tab-border-color: var(--body-border);
--tabber-active-tab-bg: var(--body-light);
--tabber-active-tab-color: var(--text-color);
--tabber-active-tab-hover-bg: var(--body-light);
--tabber-active-tab-hover-border-color: var(--body-border);
--tabber-active-tab-hover-color: var(--text-color);
--tabber-active-tab-border-hider-color: var(--body-light);
--tabber-inactive-tab-bg: var(--body-background-color);
--tabber-inactive-tab-border-color: var(--body-border);
--tabber-inactive-tab-color: var(--text-color);
--tabber-inactive-tab-hover-bg: var(--body-light);
--tabber-inactive-tab-hover-border-color: var(--body-border);
}
.tabber {
margin: 1em 0;
}
.tabber .tabbertab {
background-color: var(--tabber-tab-bg);
border: 1px solid var(--tabber-tab-border-color);
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
padding: 1em 1.5em;
}
ul.tabbernav {
border: none;
margin-left: 2em;
margin-bottom: 0;
margin-right: 2em;
padding: 0;
font-family: inherit;
}
ul.tabbernav li.tabberactive > a {
background-color: var(--tabber-active-tab-bg);
color: var(--tabber-active-tab-color);
border-bottom: none;
position: relative;
}
ul.tabbernav li.tabberactive > a:hover {
color: var(--tabber-active-tab-hover-color);
background-color: var(--tabber-active-tab-hover-bg);
border-color: var(--tabber-active-tab-hover-border-color);
border-bottom: none;
}
ul.tabbernav li.tabberactive > a::after {
content: '';
position: absolute;
left: 0;
right: 0;
bottom: -1px;
border-bottom: 2px solid var(--tabber-active-tab-border-hider-color);
}
ul.tabbernav li a {
background-color: var(--tabber-inactive-tab-bg);
border-bottom: transparent;
border-color: var(--tabber-inactive-tab-border-color);
color: var(--tabber-inactive-tab-color);
display: inline-block;
font-size: 110%;
padding: 0.5em 1em;
}
ul.tabbernav li a:hover {
background-color: var(--tabber-inactive-tab-hover-bg);
border-color: var(--tabber-inactive-tab-hover-border-color);
}
ul.tabbernav li a:link,
ul.tabbernav li a:visited {
color: var(--tabber-inactive-tab-color);
}
:root {
--ooui-text: var(--text-color);
--ooui-interface: var(--body-light);
--ooui-interface-border: var(--body-border);
--ooui-window-background: rgba(255, 255, 255, 0.5);
--ooui-normal: #d5c7ad;
--ooui-normal--hover: #dfd5c1;
--ooui-normal-border: #b8a282;
--ooui-progressive: #605443;
--ooui-progressive--hover: #7e6e58;
--ooui-accent: var(--link-color);
--ooui-input: #fff;
--ooui-input-border: #b8a282;
--ooui-input-border--hover: #8a724f;
--ooui-disabled: #d1cdc5;
--ooui-disabled-border: #c2b9ab;
--ooui-disabled-text: var(--subtle-color);
--ooui-pending-background-image: repeating-linear-gradient(-45deg, var(--search-box), var(--search-box) 20px, var(--body-main) 20px, var(--body-main) 30px);
}
.oo-ui-widget {
color: var(--ooui-text);
}
.oo-ui-checkboxInputWidget [type='checkbox'] + span,
.oo-ui-radioInputWidget [type='radio'] + span {
background-color: var(--ooui-input);
border-color: var(--ooui-input-border);
}
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:checked + span,
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:indeterminate + span {
background-color: var(--ooui-progressive);
border-color: var(--ooui-progressive);
}
.oo-ui-radioInputWidget.oo-ui-widget-enabled [type='radio']:checked + span {
border-color: var(--ooui-progressive);
}
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:checked:hover + span,
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:indeterminate:hover + span {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
}
.oo-ui-radioInputWidget.oo-ui-widget-enabled [type='radio']:checked:hover + span {
border-color: var(--ooui-progressive--hover);
}
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:hover + span,
.oo-ui-radioInputWidget.oo-ui-widget-enabled [type='radio']:hover + span {
border-color: var(--ooui-accent);
}
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:focus + span {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:active + span,
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:checked:active + span,
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:indeterminate:active + span {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
box-shadow: inset 0 0 0 1px var(--ooui-progressive--hover);
}
.oo-ui-radioInputWidget.oo-ui-widget-enabled [type='radio']:active + span {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
}
.oo-ui-radioInputWidget.oo-ui-widget-enabled [type='radio']:checked:active + span {
border-color: var(--ooui-progressive--hover);
box-shadow: inset 0 0 0 1px var(--ooui-progressive--hover);
}
.oo-ui-radioInputWidget.oo-ui-widget-enabled [type='radio']:checked:active + span:before {
border-color: var(--ooui-progressive--hover);
}
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:checked:focus + span,
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:indeterminate:focus + span {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent), inset 0 0 0 2px #fff;
}
.oo-ui-checkboxInputWidget [type='checkbox']:disabled + span,
.oo-ui-radioInputWidget [type='radio']:disabled + span {
background-color: var(--ooui-disabled);
border-color: var(--ooui-disabled);
}
.oo-ui-dropdownWidget-handle {
border-color: var(--ooui-normal-border);
}
.oo-ui-dropdownWidget.oo-ui-widget-enabled .oo-ui-dropdownWidget-handle {
background-color: var(--ooui-normal);
color: var(--ooui-text);
}
.oo-ui-dropdownWidget.oo-ui-widget-enabled .oo-ui-dropdownWidget-handle:hover {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
}
.oo-ui-dropdownWidget.oo-ui-widget-enabled .oo-ui-dropdownWidget-handle:active {
color: var(--ooui-text);
}
.oo-ui-dropdownWidget.oo-ui-widget-enabled .oo-ui-dropdownWidget-handle:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-dropdownWidget.oo-ui-widget-enabled.oo-ui-dropdownWidget-open .oo-ui-dropdownWidget-handle {
background-color: var(--ooui-normal--hover);
}
.oo-ui-dropdownWidget.oo-ui-widget-disabled .oo-ui-dropdownWidget-handle {
color: var(--ooui-disabled-text);
text-shadow: none;
border-color: var(--ooui-disabled-border);
background-color: var(--ooui-disabled);
}
.oo-ui-dropdownInputWidget select {
border-color: var(--ooui-normal-border);
}
.oo-ui-dropdownInputWidget option {
background-color: var(--ooui-interface);
}
.oo-ui-dropdownInputWidget.oo-ui-widget-enabled {
background-color: var(--ooui-normal);
}
.oo-ui-dropdownInputWidget.oo-ui-widget-enabled:hover {
background-color: var(--ooui-normal--hover);
}
.oo-ui-dropdownInputWidget.oo-ui-widget-enabled select {
color: var(--ooui-text);
}
.oo-ui-dropdownInputWidget.oo-ui-widget-enabled select:hover,
.oo-ui-dropdownInputWidget.oo-ui-widget-enabled select:active {
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
}
.oo-ui-dropdownInputWidget.oo-ui-widget-enabled select:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-labelWidget.oo-ui-inline-help {
color: var(--byline-color);
}
.oo-ui-menuSelectWidget {
background-color: var(--ooui-interface);
border-color: var(--ooui-interface-border);
}
.oo-ui-menuSelectWidget-frameless {
box-shadow: inset 0 -1px 0 0 var(--ooui-normal-border);
}
.oo-ui-menuSectionOptionWidget {
color: var(--byline-color);
}
.oo-ui-menuOptionWidget.oo-ui-optionWidget-highlighted,
.oo-ui-menuOptionWidget.oo-ui-optionWidget-selected {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
}
.oo-ui-menuOptionWidget.oo-ui-optionWidget-selected.oo-ui-menuOptionWidget.oo-ui-optionWidget-highlighted,
.oo-ui-menuOptionWidget.oo-ui-optionWidget-pressed.oo-ui-menuOptionWidget.oo-ui-optionWidget-highlighted {
color: var(--ooui-accent);
}
.oo-ui-menuOptionWidget.oo-ui-widget-enabled.oo-ui-optionWidget {
color: var(--ooui-text);
}
.oo-ui-messageDialog-title {
color: inherit;
}
.oo-ui-messageWidget.oo-ui-messageWidget-block.oo-ui-flaggedElement-error {
background-color: var(--errorbox-bg);
border-color: var(--errorbox-border);
}
.oo-ui-messageWidget.oo-ui-messageWidget-block.oo-ui-flaggedElement-warning {
background-color: var(--warningbox-bg);
border-color: var(--warningbox-border);
}
.oo-ui-messageWidget.oo-ui-messageWidget-block.oo-ui-flaggedElement-success {
background-color: var(--successbox-bg);
border-color: var(--successbox-border);
}
.oo-ui-messageWidget.oo-ui-messageWidget-block.oo-ui-flaggedElement-notice {
background-color: var(--messagebox-info-background);
border-color: var(--messagebox-info-border);
}
.oo-ui-messageWidget.oo-ui-flaggedElement-error:not(.oo-ui-messageWidget-block),
.oo-ui-messageWidget.oo-ui-flaggedElement-success:not(.oo-ui-messageWidget-block) {
color: var(--ooui-text);
}
.oo-ui-optionWidget.oo-ui-widget-disabled {
color: var(--ooui-disabled-text);
}
.oo-ui-outlineControlsWidget {
background-color: var(--ooui-normal);
}
.oo-ui-outlineOptionWidget.oo-ui-optionWidget-highlighted {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
}
.oo-ui-popupWidget-popup {
background-color: var(--ooui-interface);
border-color: var(--ooui-interface-border);
}
.oo-ui-popupWidget-anchored-top .oo-ui-popupWidget-anchor:after {
border-bottom-color: var(--ooui-interface);
}
.oo-ui-popupWidget-anchored-top .oo-ui-popupWidget-anchor:before {
border-bottom-color: var(--ooui-interface-border);
}
.oo-ui-popupWidget-anchored-bottom .oo-ui-popupWidget-anchor:after {
border-top-color: var(--ooui-interface);
}
.oo-ui-popupWidget-anchored-bottom .oo-ui-popupWidget-anchor:before {
border-top-color: var(--ooui-interface-border);
}
.oo-ui-popupWidget-anchored-start .oo-ui-popupWidget-anchor:after {
border-right-color: var(--ooui-interface);
}
.oo-ui-popupWidget-anchored-start .oo-ui-popupWidget-anchor:before {
border-right-color: var(--ooui-interface-border);
}
.oo-ui-popupWidget-anchored-end .oo-ui-popupWidget-anchor:after {
border-left-color: var(--ooui-interface);
}
.oo-ui-popupWidget-anchored-end .oo-ui-popupWidget-anchor:before {
border-left-color: var(--ooui-interface-border);
}
.oo-ui-searchWidget-query {
border-bottom-color: var(--ooui-interface-border);
}
.oo-ui-selectFileWidget-dropTarget {
background-color: var(--ooui-interface);
border-color: var(--ooui-interface-border);
}
.oo-ui-selectFileWidget.oo-ui-widget-enabled.oo-ui-selectFileWidget-dropTarget {
background-color: var(--ooui-interface);
}
.oo-ui-selectFileWidget.oo-ui-widget-enabled.oo-ui-selectFileWidget-dropTarget:hover {
border-color: var(--ooui-input-border--hover);
}
.oo-ui-tabOptionWidget {
color: var(--ooui-text);
}
.oo-ui-tabSelectWidget-framed .oo-ui-tabOptionWidget.oo-ui-optionWidget-selected {
background-color: var(--body-dark);
color: var(--ooui-text);
}
.oo-ui-tabSelectWidget-framed .oo-ui-tabOptionWidget.oo-ui-optionWidget-selected .oo-ui-labelElement-label {
border-bottom-color: var(--body-border);
}
.oo-ui-tabSelectWidget-framed .oo-ui-tabOptionWidget.oo-ui-widget-enabled:hover,
.oo-ui-tabSelectWidget-framed .oo-ui-tabOptionWidget.oo-ui-widget-enabled:active {
background-color: var(--body-light);
color: var(--ooui-text);
}
.oo-ui-tabSelectWidget-framed .oo-ui-tabOptionWidget.oo-ui-widget-enabled.oo-ui-optionWidget-selected:hover {
background-color: var(--body-dark);
}
.oo-ui-tabSelectWidget-frameless .oo-ui-tabOptionWidget.oo-ui-optionWidget-selected {
color: var(--ooui-progressive);
box-shadow: inset 0 -2px 0 0 var(--ooui-progressive);
}
.oo-ui-tabSelectWidget-frameless .oo-ui-tabOptionWidget.oo-ui-optionWidget-selected:hover,
.oo-ui-tabSelectWidget-frameless .oo-ui-tabOptionWidget.oo-ui-optionWidget-selected:focus {
color: var(--ooui-progressive--hover);
box-shadow: inset 0 -2px 0 0 var(--ooui-progressive--hover);
}
.oo-ui-tabSelectWidget-framed {
background: none;
border-bottom: 1px solid var(--ooui-interface-border);
}
.oo-ui-tabSelectWidget-frameless {
box-shadow: inset 0 -1px 0 0 var(--ooui-interface-border);
}
.oo-ui-tabSelectWidget-mobile {
}
.oo-ui-tabSelectWidget-mobile.oo-ui-tabSelectWidget-framed:after {
background: var(--mobile-navbox-linear-gradient);
}
.oo-ui-tabSelectWidget-mobile.oo-ui-tabSelectWidget-frameless:after {
background: var(--mobile-navbox-linear-gradient);
}
.oo-ui-tagItemWidget {
border-color: var(--ooui-normal-border);
}
.oo-ui-tagItemWidget.oo-ui-widget-enabled {
color: var(--ooui-text);
}
.oo-ui-tagItemWidget.oo-ui-widget-enabled:hover {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
}
.oo-ui-tagItemWidget.oo-ui-widget-enabled:not( .oo-ui-tagItemWidget-fixed ) {
background-color: var(--ooui-normal);
}
.oo-ui-tagItemWidget.oo-ui-widget-enabled .oo-ui-buttonElement-button:hover {
background-color: var(--ooui-normal--hover);
}
.oo-ui-tagMultiselectWidget.oo-ui-widget-enabled {
background-color: var(--ooui-interface);
}
.oo-ui-tagMultiselectWidget.oo-ui-widget-enabled.oo-ui-tagMultiselectWidget-outlined {
background-color: var(--ooui-normal);
}
.oo-ui-tagMultiselectWidget.oo-ui-widget-enabled.oo-ui-tagMultiselectWidget-outlined .oo-ui-tagItemWidget.oo-ui-widget-enabled {
background-color: var(--ooui-interface);
}
.oo-ui-textInputWidget .oo-ui-inputWidget-input {
background-color: var(--ooui-input);
color: var(--ooui-text);
border-color: var(--ooui-input-border);
}
.oo-ui-textInputWidget.oo-ui-widget-enabled .oo-ui-inputWidget-input::placeholder {
color: var(--subtle-color);
}
.oo-ui-textInputWidget.oo-ui-widget-enabled .oo-ui-inputWidget-input:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-textInputWidget.oo-ui-widget-enabled .oo-ui-inputWidget-input[readonly]:not(.oo-ui-pendingElement-pending) {
background-color: var(--ooui-disabled);
color: var(--ooui-disabled-text);
}
.oo-ui-textInputWidget.oo-ui-widget-enabled:hover .oo-ui-inputWidget-input {
border-color: var(--ooui-input-border--hover);
}
.oo-ui-textInputWidget.oo-ui-widget-enabled:hover .oo-ui-inputWidget-input:focus {
border-color: var(--ooui-accent);
}
@media screen and (min-width: 0) {
.oo-ui-textInputWidget.oo-ui-widget-enabled textarea.oo-ui-inputWidget-input:focus {
outline: 1px solid var(--ooui-accent);
}
}
.oo-ui-textInputWidget.oo-ui-widget-disabled .oo-ui-inputWidget-input {
background-color: var(--ooui-disabled);
color: var(--ooui-disabled-text);
text-shadow: none;
border-color: var(--ooui-disabled-border);
}
.oo-ui-toggleSwitchWidget {
background-color: var(--ooui-input);
border-color: var(--ooui-input-border);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled .oo-ui-toggleSwitchWidget-grip {
background-color: var(--ooui-input);
border-color: var(--ooui-input-border);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:hover {
background-color: var(--ooui-input);
border-color: var(--ooui-accent);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:hover .oo-ui-toggleSwitchWidget-grip {
background-color: var(--ooui-input);
border-color: var(--ooui-accent);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:active,
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:active:hover,
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:active:focus {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
box-shadow: inset 0 0 0 1px var(--ooui-progressive--hover);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:active .oo-ui-toggleSwitchWidget-grip,
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:active:hover .oo-ui-toggleSwitchWidget-grip,
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:active:focus .oo-ui-toggleSwitchWidget-grip {
background-color: var(--ooui-input);
border-color: var(--ooui-input);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:focus .oo-ui-toggleSwitchWidget-grip {
border-color: var(--ooui-accent);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled.oo-ui-toggleWidget-on {
background-color: var(--ooui-progressive);
border-color: var(--ooui-progressive);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled.oo-ui-toggleWidget-on .oo-ui-toggleSwitchWidget-grip {
background-color: var(--ooui-input);
border-color: var(--ooui-input);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled.oo-ui-toggleWidget-on:hover {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled.oo-ui-toggleWidget-on:active,
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled.oo-ui-toggleWidget-on:active:hover {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled.oo-ui-toggleWidget-on:focus {
border-color: var(--ooui-progressive);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled.oo-ui-toggleWidget-on:focus::before {
border-color: #fff;
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-disabled {
background-color: var(--ooui-disabled);
border-color: var(--ooui-disabled);
}
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled > .oo-ui-buttonElement-button {
color: var(--ooui-text);
}
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled > .oo-ui-buttonElement-button:hover {
color: var(--ooui-text);
}
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled > .oo-ui-buttonElement-button:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled.oo-ui-buttonElement-pressed > input.oo-ui-buttonElement-button,
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled > .oo-ui-buttonElement-button:active {
color: var(--ooui-text);
}
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button,
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button:hover {
color: var(--ooui-text);
}
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button:active,
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive.oo-ui-buttonElement-pressed > .oo-ui-buttonElement-button {
color: var(--ooui-text);
border-color: var(--ooui-text);
}
.oo-ui-buttonElement-frameless.oo-ui-widget-disabled > .oo-ui-buttonElement-button {
color: var(--ooui-disabled-text);
}
.oo-ui-buttonElement-framed.oo-ui-widget-disabled > .oo-ui-buttonElement-button {
background-color: var(--ooui-disabled);
border-color: var(--ooui-disabled-border);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled > .oo-ui-buttonElement-button {
background-color: var(--ooui-normal);
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled > .oo-ui-buttonElement-button:hover {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled > .oo-ui-buttonElement-button:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-buttonElement-active > .oo-ui-buttonElement-button {
background-color: var(--ooui-progressive--hover);
color: #fff;
border-color: var(--ooui-progressive--hover);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-buttonElement-active > .oo-ui-buttonElement-button:focus {
border-color: var(--ooui-progressive--hover);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled > .oo-ui-buttonElement-button:active,
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-buttonElement-pressed > .oo-ui-buttonElement-button {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive {
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button {
color: var(--ooui-text);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button:hover {
background-color: var(--ooui-normal--hover);
border-color: var(--ooui-progressive--hover);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-destructive > .oo-ui-buttonElement-button {
color: var(--ooui-text);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-destructive > .oo-ui-buttonElement-button:hover {
background-color: var(--ooui-normal--hover);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button {
background-color: var(--ooui-progressive);
border-color: var(--ooui-progressive);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button:hover {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent), inset 0 0 0 2px #fff;
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button:active,
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive.oo-ui-buttonElement-pressed > .oo-ui-buttonElement-button,
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive.oo-ui-buttonElement-active > .oo-ui-buttonElement-button,
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive.oo-ui-popupToolGroup-active > .oo-ui-buttonElement-button {
color: #fff;
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
}
.oo-ui-pendingElement-pending {
background-image: var(--ooui-pending-background-image);
background-size: 200%;
animation: oo-ui-pendingElement-stripes 6s linear infinite;
}
@keyframes oo-ui-pendingElement-stripes {
100% {
background-position: 100%;
}
}
.oo-ui-messageDialog-content > .oo-ui-window-foot {
outline-color: var(--ooui-interface-border);
}
.oo-ui-messageDialog-message {
color: var(--ooui-text);
}
.oo-ui-messageDialog-actions-horizontal .oo-ui-actionWidget {
border-right-color: var(--ooui-interface-border);
}
.oo-ui-messageDialog-actions-vertical .oo-ui-actionWidget {
border-bottom-color: var(--ooui-interface-border);
}
.oo-ui-processDialog-content .oo-ui-window-head,
.oo-ui-processDialog-content .oo-ui-window-foot {
outline-color: var(--ooui-interface-border);
}
.oo-ui-processDialog .oo-ui-actionWidget > .oo-ui-buttonElement-button {
border-top-color: transparent;
border-bottom-color: transparent;
}
.oo-ui-processDialog .oo-ui-actionWidget > .oo-ui-buttonElement-button:hover,
.oo-ui-processDialog .oo-ui-actionWidget > .oo-ui-buttonElement-button:active {
border-top-color: transparent;
border-bottom-color: transparent;
}
.oo-ui-processDialog .oo-ui-actionWidget:not( .oo-ui-flaggedElement-progressive ):not( .oo-ui-flaggedElement-destructive ) > .oo-ui-buttonElement-button:hover,
.oo-ui-processDialog .oo-ui-actionWidget:not( .oo-ui-flaggedElement-progressive ):not( .oo-ui-flaggedElement-destructive ) > .oo-ui-buttonElement-button:active {
border-right-color: var(--ooui-interface-border);
border-left-color: transparent;
}
.oo-ui-processDialog .oo-ui-actionWidget:not( .oo-ui-flaggedElement-progressive ):not( .oo-ui-flaggedElement-destructive ) > .oo-ui-buttonElement-button:focus {
border-color: var(--ooui-accent);
}
.oo-ui-processDialog-actions-safe .oo-ui-actionWidget > .oo-ui-buttonElement-button,
.oo-ui-processDialog-actions-other .oo-ui-actionWidget > .oo-ui-buttonElement-button {
border-right-color: var(--ooui-normal-border);
border-left-color: transparent;
}
.oo-ui-processDialog-actions-safe .oo-ui-widget-enabled.oo-ui-iconElement:not( .oo-ui-labelElement ) > .oo-ui-buttonElement-button:hover {
background-color: var(--ooui-normal--hover);
border-right-color: var(--ooui-interface-border);
}
.oo-ui-windowManager-modal > .oo-ui-dialog {
background-color: var(--ooui-window-background);
}
.oo-ui-windowManager-modal > .oo-ui-dialog > .oo-ui-window-frame {
background-color: var(--ooui-interface);
}
.oo-ui-windowManager-modal.oo-ui-windowManager-floating > .oo-ui-dialog > .oo-ui-window-frame {
border-color: var(--ooui-interface-border);
}
.oo-ui-window {
color: var(--ooui-text);
}
.oo-ui-toolbar-bar {
background-color: var(--ooui-interface);
color: var(--ooui-text);
}
.oo-ui-toolbar-position-top > .oo-ui-toolbar-bar {
border-bottom-color: var(--body-mid);
}
.oo-ui-toolbar-bar .oo-ui-bookletLayout > .oo-ui-menuLayout-menu {
border-right-color: var(--body-mid);
}
.oo-ui-tool.oo-ui-widget-enabled > .oo-ui-tool-link:hover {
background-color: var(--ooui-normal--hover);
}
.oo-ui-tool.oo-ui-widget-enabled > .oo-ui-tool-link:focus {
outline: 1px solid var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-tool.oo-ui-widget-enabled > .oo-ui-tool-link:active,
.oo-ui-tool.oo-ui-widget-enabled.oo-ui-tool-active > .oo-ui-tool-link,
.oo-ui-tool.oo-ui-widget-enabled.oo-ui-popupToolGroup-active > .oo-ui-tool-link {
background-color: var(--ooui-normal--hover);
color: var(--ooui-accent);
box-shadow: none;
}
.oo-ui-tool.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive > .oo-ui-tool-link {
background-color: var(--ooui-progressive);
}
.oo-ui-tool.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive > .oo-ui-tool-link:hover {
background-color: var(--ooui-progressive--hover);
}
.oo-ui-tool.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive > .oo-ui-tool-link:focus {
box-shadow: inset 0 0 0 1px var(--ooui-accent), inset 0 0 0 2px #fff;
}
.oo-ui-tool.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive > .oo-ui-tool-link:active,
.oo-ui-tool.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive.oo-ui-tool-active > .oo-ui-tool-link {
background-color: var(--ooui-progressive--hover);
}
.oo-ui-listToolGroup-tools .oo-ui-tool.oo-ui-widget-enabled {
background-color: var(--ooui-normal);
}
.oo-ui-listToolGroup-tools .oo-ui-tool.oo-ui-widget-enabled:hover {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
}
.oo-ui-listToolGroup-tools .oo-ui-tool-active.oo-ui-widget-enabled .oo-ui-tool-link .oo-ui-tool-title {
color: var(--ooui-progressive);
}
.oo-ui-menuToolGroup {
border-left-color: var(--body-mid);
border-right-color: var(--body-mid);
}
.oo-ui-popupToolGroup-tools {
background-color: var(--ooui-interface);
border-color: var(--body-mid);
}
.oo-ui-popupToolGroup.oo-ui-widget-enabled > .oo-ui-popupToolGroup-handle:hover {
background-color: var(--ooui-normal--hover);
}
.oo-ui-popupToolGroup.oo-ui-widget-enabled > .oo-ui-popupToolGroup-handle:focus {
outline: 1px solid var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-toolbar-actions .oo-ui-popupToolGroup.oo-ui-widget-enabled > .oo-ui-popupToolGroup-handle:hover {
border-right-color: var(--ooui-normal--hover);
}
.oo-ui-popupToolGroup-tools .oo-ui-tool.oo-ui-widget-enabled .oo-ui-tool-link:focus {
box-shadow: inset 0 0 0 2px var(--ooui-accent);
}
.oo-ui-popupToolGroup-tools .oo-ui-tool-active.oo-ui-widget-enabled .oo-ui-tool-link .oo-ui-tool-title {
color: var(--ooui-progressive);
}
.oo-ui-popupToolGroup.oo-ui-popupToolGroup-active > .oo-ui-popupToolGroup-handle {
background-color: var(--ooui-normal);
color: var(--ooui-accent);
}
.oo-ui-popupToolGroup.oo-ui-popupToolGroup-active > .oo-ui-popupToolGroup-handle:hover {
background-color: var(--ooui-normal--hover);
color: var(--ooui-accent);
}
.oo-ui-bookletLayout-outlinePanel > .oo-ui-outlineControlsWidget {
border-top-color: var(--ooui-interface-border);
}
.oo-ui-bookletLayout > .oo-ui-menuLayout-menu {
border-right-color: var(--ooui-interface-border);
}
.oo-ui-fieldLayout-disabled > .oo-ui-fieldLayout-body > .oo-ui-fieldLayout-header > .oo-ui-labelElement-label {
color: var(--ooui-disabled-text);
}
.oo-ui-panelLayout-framed {
border-color: var(--sidebar);
}
.oo-ui-icon-settings {
background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' width='20' height='20' viewBox='0 0 20 20'%3E%3Ctitle%3Esettings%3C/title%3E%3Cg transform='translate(10 10)'%3E%3Cpath id='a' d='M1.5-10h-3l-1 6.5h5m0 7h-5l1 6.5h3'/%3E%3Cuse xlink:href='%23a' transform='rotate(45)'/%3E%3Cuse xlink:href='%23a' transform='rotate(90)'/%3E%3Cuse xlink:href='%23a' transform='rotate(135)'/%3E%3C/g%3E%3Cpath d='M10 2.5a7.5 7.5 0 0 0 0 15 7.5 7.5 0 0 0 0-15v4a3.5 3.5 0 0 1 0 7 3.5 3.5 0 0 1 0-7'/%3E%3C/svg%3E");
}
.oo-ui-icon-clear {
background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 20 20'%3E%3Ctitle%3Eclear%3C/title%3E%3Cpath d='M10 0a10 10 0 1 0 10 10A10 10 0 0 0 10 0zm5.66 14.24-1.41 1.41L10 11.41l-4.24 4.25-1.42-1.42L8.59 10 4.34 5.76l1.42-1.42L10 8.59l4.24-4.24 1.41 1.41L11.41 10z'/%3E%3C/svg%3E");
}
.mw-widget-dateInputWidget-handle {
background-color: var(--ooui-input);
color: var(--ooui-text);
border-color: var(--ooui-input-border);
}
.mw-widget-dateInputWidget-calendar {
background-color: var(--ooui-interface);
}
.mw-widget-dateInputWidget.oo-ui-widget-enabled .mw-widget-dateInputWidget-handle:hover {
border-color: var(--ooui-input-border--hover);
}
.mw-widget-calendarWidget {
border-color: var(--ooui-interface-border);
}
.mw-widget-calendarWidget:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.mw-widget-calendarWidget-day,
.mw-widget-calendarWidget-day-heading {
color: var(--ooui-text);
}
.mw-widget-calendarWidget-day-additional {
color: var(--ooui-text);
opacity: 0.67;
}
.mw-widget-calendarWidget-day-today {
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.mw-widget-calendarWidget-item:hover {
background-color: var(--ooui-progressive);
}
.mw-widget-calendarWidget-item-selected {
background-color: var(--ooui-progressive--hover);
}
.mw-widgets-datetime-calendarWidget {
background-color: var(--ooui-interface);
border-color: var(--ooui-interface-border);
}
.mw-widgets-datetime-calendarWidget:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent), 0 2px 2px 0 rgba(0, 0, 0, 0.25);
}
.mw-widgets-datetime-calendarWidget-grid .mw-widgets-datetime-calendarWidget-cell.mw-widgets-datetime-calendarWidget-extra .oo-ui-buttonElement-button .oo-ui-labelElement-label {
color: var(--subtle-color);
}
.mw-widgets-datetime-calendarWidget-grid .mw-widgets-datetime-calendarWidget-cell.mw-widgets-datetime-calendarWidget-selected .oo-ui-buttonElement-button {
background-color: var(--ooui-progressive--hover);
}
.mw-widgets-datetime-dateTimeInputWidget-handle {
background-color: var(--ooui-input);
color: var(--ooui-text);
border-color: var(--ooui-input-border);
}
.mw-widgets-datetime-dateTimeInputWidget.oo-ui-widget-enabled.mw-widgets-datetime-dateTimeInputWidget-handle:hover {
border-color: var(--ooui-input-border--hover);
}
.mw-widgets-datetime-dateTimeInputWidget.oo-ui-widget-enabled:hover input,
.mw-widgets-datetime-dateTimeInputWidget.oo-ui-widget-enabled:hover textarea {
border-color: var(--ooui-input-border--hover);
}
.mw-widgets-datetime-dateTimeInputWidget.oo-ui-widget-enabled .mw-widgets-datetime-dateTimeInputWidget-editField:hover {
background-color: var(--ooui-normal);
}
.ve-activated .ve-init-mw-desktopArticleTarget-originalContent #catlinks:hover {
background: var(--ooui-normal--hover);
}
.ve-ui-overlay {
font-family: inherit;
}
.oo-ui-toolbar-position-top .ve-ui-toolbarDialog-position-above {
border-top-color: var(--body-mid);
}
.ve-ce-branchNode-blockSlug,
.ve-ce-branchNode-newSlug {
outline-color: var(--body-border);
background-color: var(--ooui-interface);
}
.ve-ui-specialCharacterPage h3 {
color: var(--byline-color);
}
.ve-ui-specialCharacterPage-character {
border-color: var(--body-mid);
}
.ve-ui-specialCharacterPage-character:hover {
border-color: var(--body-dark);
}
.ve-ce-linkAnnotation.ve-ce-annotation-active {
box-shadow: 0 0 0 1px var(--body-mid);
background: none;
}
.ve-ui-desktopContext .ve-ui-linkContextItem .ve-ui-linkContextItem-label {
border-color: var(--body-border);
}
.ve-ui-mwHelpPopupTool-version-label,
.ve-ui-mwHelpPopupTool-version-link,
.ve-ui-mwHelpPopupTool-version-date {
color: var(--byline-color);
}
.ve-ce-tableCellableNode {
border-color: var(--body-mid);
}
.ve-ce-mwReferencesListNode-muted {
color: var(--byline-color);
}
.ve-ui-mwTemplatePage-description,
.ve-ui-mwParameterPage-label,
.ve-ui-mwParameterPage-description-required,
.ve-ui-mwParameterPage-description-deprecated {
color: var(--byline-color);
}
.mw-widget-titleWidget-menu .mw-widget-titleOptionWidget-description {
color: var(--byline-color);
}
.ve-ui-mwGalleryDialog-menuLayout > .oo-ui-menuLayout-menu,
.ve-ui-mwGalleryDialog-innerMenuLayout > .oo-ui-menuLayout-menu,
.ve-ui-mwGalleryDialog .ve-ui-mwGalleryDialog-image-container,
.ve-ui-targetWidget {
border-color: var(--body-border);
}
.ve-ui-targetWidget:not(.oo-ui-pendingElement-pending) {
background-color: var(--body-main);
}
.ve-ui-mwSaveDialog {
color: var(--ooui-text);
}
.ve-ui-mwSaveDialog-options {
background-color: var(--ooui-interface);
border-color: var(--body-border);
}
.ve-ui-mwSaveDialog-summary {
background-color: var(--ooui-input);
}
.ve-ui-mwSaveDialog-editSummary-count {
border-color: var(--body-border);
}
.ve-ui-mwSaveDialog-license {
color: var(--byline-color);
}
.ve-ui-mwReferenceContextItem-muted {
color: var(--byline-color);
}
.ve-ui-mwNoticesPopupTool-items > div:not(:first-child),
.ve-ui-mwHelpPopupTool-item:not(:first-child) {
border-color: var(--body-border);
}
.ve-ui-mwTransclusionOutlineControlsWidget {
background-color: var(--ooui-interface);
border-top-color: var(--body-border);
}
.ve-ui-mwTransclusionOutlineTemplateWidget-sticky {
background-color: var(--ooui-interface);
}
.ve-ui-mwTransclusionOutlineTemplateWidget .ve-ui-mwTransclusionOutlineParameterWidget.oo-ui-optionWidget-highlighted {
color: var(--ooui-text);
}
.ve-ui-mwTransclusionOutlineTemplateWidget-no-template-parameters {
color: var(--subtle-color);
}
.ve-ui-mwParameterPage-undocumentedLabel {
color: var(--subtle-color);
}
.ve-ui-mwTwoPaneTransclusionDialogLayout > .oo-ui-menuLayout-menu {
border-right: var(--body-border);
}
.ve-ui-mwParameterPage-doc-required,
.ve-ui-mwParameterPage-doc-deprecated,
.ve-ui-mwParameterPage-inlineDescription .ve-ui-mwParameterPage-doc-example {
color: var(--byline-color);
}
.ve-ui-expandableContent-toggle {
background-color: var(--ooui-interface);
}
.ve-ui-expandableContent-fade {
background: linear-gradient(to right, rgba(255, 255, 255, 0) 0, var(--ooui-interface) 90%);
}
.ve-ui-commandHelpDialog-shortcut > kbd,
.ve-ui-commandHelpDialog-sequence > kbd {
background-color: var(--keypress-background);
color: var(--keypress-color);
border-color: var(--keypress-border);
box-shadow: none;
text-shadow: none;
}
.ve-init-mw-desktopArticleTarget-toolbarPlaceholder-floating .ve-init-mw-desktopArticleTarget-toolbarPlaceholder-bar {
background: var(--ooui-interface);
}
.ve-init-mw-desktopArticleTarget-toolbarPlaceholder-bar {
border-bottom-color: var(--body-mid);
}
figure[typeof~='mw:File/Thumb'],
figure[typeof~='mw:File/Frame'],
figure[typeof~='mw:Image/Thumb'],
figure[typeof~='mw:Video/Thumb'],
figure[typeof~='mw:Image/Frame'],
figure[typeof~='mw:Video/Frame'] {
border: none;
background-color: var(--thumb-bg);
}
figure[typeof~='mw:File/Thumb'] > a:first-child > *:first-child:not( .mw-broken-media ),
figure[typeof~='mw:File/Frame'] > a:first-child > *:first-child:not( .mw-broken-media ),
figure[typeof~='mw:Image/Thumb'] > a:first-child > *:first-child:not( .mw-broken-media ),
figure[typeof~='mw:Video/Thumb'] > a:first-child > *:first-child:not( .mw-broken-media ),
figure[typeof~='mw:Image/Frame'] > a:first-child > *:first-child:not( .mw-broken-media ),
figure[typeof~='mw:Video/Frame'] > a:first-child > *:first-child:not( .mw-broken-media ) {
border: none;
background: var(--thumb-bg);
}
figure[typeof~='mw:File/Thumb'] > figcaption,
figure[typeof~='mw:File/Frame'] > figcaption,
figure[typeof~='mw:Image/Thumb'] > figcaption,
figure[typeof~='mw:Video/Thumb'] > figcaption,
figure[typeof~='mw:Image/Frame'] > figcaption,
figure[typeof~='mw:Video/Frame'] > figcaption {
border: none;
background-color: var(--thumb-caption-bg);
padding: 4px 6px;
}
:root {
--keypress-background: #eee;
--keypress-border: #ccc;
--keypress-color: #333;
}
.keypress {
background: var(--keypress-background);
color: var(--keypress-color);
font-family: inherit;
border: 1px solid var(--keypress-border);
border-radius: 2px;
font-size: 0.9em;
margin: 0 0.1em;
padding: 0.1em 0.4em;
white-space: nowrap;
}
:root {
--infobox-text-color: var(--text-color);
}
ol.references,
.reflist {
font-size: 90%;
}
.reflist {
list-style-type: decimal;
}
.reflist .references {
font-size: 100%;
list-style-type: inherit;
}
.reflist-lower-alpha {
list-style-type: lower-alpha;
}
ol.references li:target,
sup.reference:target {
background-color: var(--body-light);
}
.hideQuotes .refhide {
display: none;
}
:root {
--messagebox-obsolete-background: #cfcfcf;
--messagebox-obsolete-border: #464646;
--messagebox-obsolete-color: var(--text-color);
--messagebox-obsolete-link-color: #6c6c6c;
--messagebox-info-background: #ebebeb;
--messagebox-info-border: #898989;
--messagebox-info-color: var(--text-color);
--messagebox-info-link-color: #6c6c6c;
--messagebox-action-background: #c7e8fa;
--messagebox-action-border: #0b5884;
--messagebox-action-color: var(--text-color);
--messagebox-action-link-color: #03436b;
--messagebox-warn-background: #dfc0ba;
--messagebox-warn-border: #861c10;
--messagebox-warn-color: var(--text-color);
--messagebox-warn-link-color: #8e221a;
--messagebox-safe-background: #d8f0d3;
--messagebox-safe-border: #1b8408;
--messagebox-safe-color: var(--text-color);
--messagebox-safe-link-color: #1b8408;
--messagebox-disambig-background: #ebebeb;
--messagebox-disambig-border: #898989;
--messagebox-disambig-color: var(--text-color);
--messagebox-disambig-link-color: #6c6c6c;
--messagebox-discord-background: #5865f2;
--messagebox-discord-border: #4c57d0;
--messagebox-discord-link-color: #d2e5fc;
}
.mw-message-box,
.mw-message-box-error,
.mw-message-box-warning,
.mw-message-box-success,
.usermessage {
color: var(--text-color);
}
.messagebox {
width: 65%;
margin: 0.5em auto;
border-left: 15px solid;
border-color: var(--body-dark);
background-color: var(--body-light);
box-sizing: border-box;
}
.messagebox.obsolete {
background-color: var(--messagebox-obsolete-background);
border-color: var(--messagebox-obsolete-border);
color: var(--messagebox-obsolete-color);
}
.messagebox.obsolete a,
.messagebox.obsolete a:visited,
.messagebox.obsolete a:active {
color: var(--messagebox-obsolete-link-color);
}
.messagebox.info {
background-color: var(--messagebox-info-background);
border-color: var(--messagebox-info-border);
color: var(--messagebox-info-color);
}
.messagebox.info a,
.messagebox.info a:visited,
.messagebox.info a:active {
color: var(--messagebox-info-link-color);
}
.messagebox.action {
background-color: var(--messagebox-action-background);
border-color: var(--messagebox-action-border);
color: var(--messagebox-action-color);
}
.messagebox.action a,
.messagebox.action a:visited,
.messagebox.action a:active {
color: var(--messagebox-action-link-color);
}
.messagebox.warn {
background-color: var(--messagebox-warn-background);
border-color: var(--messagebox-warn-border);
color: var(--messagebox-warn-color);
}
.messagebox.warn a,
.messagebox.warn a:visited,
.messagebox.warn a:active {
color: var(--messagebox-warn-link-color);
}
.messagebox.safe {
background-color: var(--messagebox-safe-background);
border-color: var(--messagebox-safe-border);
color: var(--messagebox-safe-color);
}
.messagebox.safe a,
.messagebox.safe a:visited,
.messagebox.safe a:active {
color: var(--messagebox-safe-link-color);
}
.messagebox.disambig {
background-color: var(--messagebox-disambig-background);
border-color: var(--messagebox-disambig-border);
color: var(--messagebox-disambig-color);
}
.messagebox.disambig a,
.messagebox.disambig a:visited,
.messagebox.disambig a:active {
color: var(--messagebox-disambig-link-color);
}
.messagebox.discord {
background-color: var(--messagebox-discord-background);
border-color: var(--messagebox-discord-border);
color: #fff;
}
.messagebox.discord a,
.messagebox.discord a:visited,
.messagebox.discord a:active {
color: var(--messagebox-discord-link-color);
}
.messagebox.discord a.external,
.messagebox.discord a:visited.external,
.messagebox.discord a:active.external {
font-style: italic;
}
.messagebox.stub {
width: 40%;
}
.messagebox.hasdialogue {
padding: 0 10px;
width: auto;
}
:root {
--byline-arrow-filter: invert(29%) sepia(0%) saturate(376%) hue-rotate(172deg) brightness(87%) contrast(80%);
--tile-border-color: #cabe9b;
--tile-background-color: #f9f3eb;
--tile-link-button-color: #f5e9db;
--tile-link-button-highlight-color: #dfccb0;
--tile-dark-color: #fff;
--tile-dark-bg: #5d6773;
--tile-dark-link-color: #ccc;
--tile-dark-byline-color: rgba(255, 255, 255, 0.7);
--tile-dark-header-color: #fff;
}
.tile {
background: var(--tile-background-color);
border: 1px solid var(--tile-border-color);
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
padding: 1.5em 2em 1em;
max-width: 40em;
}
.tile h2 {
font-size: 1.4em;
font-weight: bold;
border: none;
margin: 0 0 0.4em;
}
.tile .byline + h2 {
margin-top: -0.5em;
}
.tile.dark {
color: var(--tile-dark-color);
background: var(--tile-dark-bg);
border: none;
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.3);
}
.tile.dark h2 {
color: var(--tile-dark-header-color);
}
.tile.dark a {
color: var(--tile-dark-link-color);
}
.tile.dark .byline {
color: var(--tile-dark-byline-color);
}
.byline {
font-size: 0.9em;
color: var(--byline-color);
}
.byline a {
color: var(--byline-color);
}
.tile-row {
display: flex;
flex-flow: row wrap;
margin-bottom: 1em;
}
.tile-halves {
display: flex;
flex-flow: row wrap;
border: 1px solid var(--tile-border-color);
background: var(--tile-background-color);
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
}
.tile-halves h2 {
font-size: 1.4em;
font-weight: bold;
border: none;
margin: 0 0 0.4em;
}
.tile-halves .byline + h2 {
margin-top: -0.5em;
}
.tile-top {
width: 100%;
padding: 1.3rem 1.5rem 0.6rem;
}
.tile-top.tile-image {
display: flex;
align-items: center;
background-color: var(--byline-color);
overflow: hidden;
padding: 0;
height: 13vw;
max-height: 12em;
transition: 0.4s ease-out;
}
.tile-halves:hover .tile-top.tile-image img {
transform: scale(1.1);
transition: 0.5s ease-out;
}
.tile-top.tile-image a {
width: 100%;
}
.tile-top.tile-image img {
width: 100%;
object-fit: cover;
max-height: 200px;
transition: 0.4s ease-out;
}
.tile-bottom {
background: var(--tile-background-color);
border-top: 1px solid var(--tile-border-color);
width: 100%;
padding: 1rem 1.5rem 0.6rem;
}
.tile-bottom.link-button {
align-self: flex-end;
padding: 0;
}
.tile-bottom.link-button a {
display: block;
text-align: center;
padding: 0.75em 1.5em 0.8em;
text-decoration: none;
}
.tile-bottom.read-more {
background: var(--tile-link-button-color);
transition: 0.3s ease-out;
}
.tile-bottom.read-more a {
color: var(--byline-color);
font-weight: bold;
text-align: right;
}
.tile-bottom.read-more:hover {
background: var(--tile-link-button-highlight-color);
}
.tile-bottom.read-more:hover .arrow {
transform: translateX(50%);
}
.tile-bottom.read-more .arrow {
filter: var(--byline-arrow-filter);
margin-left: 0.4em;
transition: 0.3s ease-out;
}
body.page-Main_Page.action-view .catlinks,
body.page-Main_Page.action-view #contentSub,
body.page-Main_Page.action-view #firstHeading,
body.page-Main_Page.action-view #siteNotice {
display: none;
}
body.page-Main_Page .mw-parser-output {
max-width: 75em;
margin: 0 auto;
}
body.page-Main_Page.action-view .catlinks,
body.page-Main_Page.action-view #contentSub,
body.page-Main_Page.action-view #siteNotice {
display: none;
}
.mainpage-header {
display: flex;
margin: 2.6em 1.75em 1.5em;
}
.mainpage-header .header-intro {
flex: 2;
}
.mainpage-header .header-intro h1 {
font-size: 2.5em;
font-weight: bold;
border: none;
margin: 0 0 0.15em;
}
.mainpage-header .header-intro p {
font-size: 1.1em;
line-height: 1.7em;
}
.mainpage-header .header-stats {
flex: 1;
display: flex;
justify-content: center;
align-items: center;
margin-top: -1em;
}
.mainpage-body {
display: grid;
grid-template-areas: "event event event" "update update update" "content content content" "left left right";
gap: 0.9rem;
grid-template-columns: repeat(3, 1fr);
}
.mainpage-body h2 a {
color: var(--text-color);
}
.mainpage-body .tile {
padding-left: 1.75em;
padding-right: 1.75em;
max-width: 100%;
}
.mainpage-body .tile-row {
width: 100%;
margin-bottom: 0;
}
.mainpage-body .tile-row {
display: grid;
gap: 0.9rem;
}
.mainpage-left {
grid-area: left;
flex: 2;
display: flex;
flex-flow: column wrap;
}
.mainpage-left > * {
margin: 0 0 0.9rem;
}
.mainpage-right {
grid-area: right;
flex: 1;
display: flex;
flex-flow: column wrap;
}
.mainpage-right > * {
margin: 0 0 0.9rem;
}
.arrow {
background: url('filepath://White-chevron.svg') no-repeat;
display: inline-block;
height: 0.7rem;
width: 0.45rem;
vertical-align: middle;
}
.arrow.dark {
filter: invert(80%);
}
.mainpage-contents {
grid-area: content;
grid-template-columns: repeat(6, 1fr);
}
.mainpage-contents .tile-halves {
flex: 1;
}
.mainpage-contents .tile-top {
height: 4.5rem;
position: relative;
}
.mainpage-contents h2 {
margin: 0;
padding: 0;
}
.mainpage-contents .tile-bottom.link-button a {
padding: 0.75em 0.2em;
}
.popular-pages ul {
display: grid;
grid-template-columns: repeat(3, 1fr);
grid-gap: 0.6em;
margin: 1em 0 0.7em 0;
}
.mp-popular-page-light {
display: flex;
align-items: center;
background-color: var(--button-background);
transition: 100ms;
}
.mp-popular-page-light a {
flex: 1;
display: block;
color: #fff;
font-weight: bold;
text-align: center;
text-decoration: none;
padding: 0.7em 1em;
}
.mp-popular-page-light:hover {
filter: brightness(115%);
transition: 100ms;
}
.mainpage-discord {
border: none;
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.3);
}
.mainpage-discord .tile-top {
display: flex;
align-items: center;
background: #5865f2;
padding: 1em 1.75em;
}
.mainpage-discord .tile-top a {
flex: 1;
position: relative;
text-decoration: none;
}
.mainpage-discord .tile-top a:hover .arrow {
transform: translateX(50%);
}
.mainpage-discord .tile-bottom {
background: #525ee0;
border: none;
padding: 1em 1.75em;
}
.mainpage-discord .tile-bottom p {
color: #fff;
font-weight: bold;
font-size: 0.9em;
text-align: center;
text-transform: uppercase;
letter-spacing: 0.03em;
margin: 0;
}
.mainpage-discord .partner-icon {
margin-right: 0.75em;
}
.mainpage-discord .server-name {
color: #fff;
font-weight: bold;
font-size: 1.25em;
margin: 0.5em 0 -0.15em;
}
.mainpage-discord .server-tagline {
color: rgba(255, 255, 255, 0.9);
margin-bottom: 0.5em;
}
.mainpage-discord .arrow {
position: absolute;
top: calc(50% - .5em);
right: 0;
height: 1em;
width: 0.7em;
background-size: 0.7em 1em;
transition: 0.3s ease-out;
}
.mainpage-editing {
border: none;
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.3);
}
.mainpage-editing .tile-top {
background: #438ab5;
}
.mainpage-editing .tile-bottom {
background: #3980ab;
border: none;
padding: 0.8rem 1.5rem 0.4rem;
}
.mainpage-editing h2,
.mainpage-editing a {
color: #fff;
}
.mainpage-editing p {
color: rgba(255, 255, 255, 0.9);
}
.mainpage-editing ul {
list-style-image: url('filepath://Transparent-chevron.svg');
}
@media only screen and (max-width: 1200px) {
.mainpage-contents {
grid-template-columns: repeat(3, 1fr);
}
}
@media only screen and (max-width: 1000px) {
.mainpage-body {
grid-template-areas: "event event event" "update update update" "content content content" "left left left" "right right right";
}
.mainpage-recent-updates {
grid-template-columns: repeat(2, 1fr);
}
.mainpage-recent-updates .tile-halves:last-child {
display: none;
}
.mainpage-recent-updates .tile-halves:hover .tile-top img {
transform: scale(1.04);
}
.mainpage-recent-updates .tile-top {
height: 18vw;
min-height: 9em;
}
.mainpage-header .header-stats {
display: none;
}
.mainpage-left > *:last-child,
.mainpage-right > *:last-child {
margin-bottom: 0;
}
.popular-pages ul {
grid-template-columns: repeat(2, 1fr);
}
}
@media only screen and (max-width: 720px) {
.mainpage-recent-updates {
grid-template-columns: none;
}
.mainpage-recent-updates .tile-halves:last-child {
display: flex;
}
.mainpage-contents {
grid-template-columns: repeat(2, 1fr);
}
}
.mw-prefs-buttons {
background-color: var(--body-main);
border-top-color: var(--body-border);
box-shadow: none;
}
.mw-prefs-tabs-wrapper.oo-ui-panelLayout-framed,
.mw-prefs-tabs > .oo-ui-menuLayout-content > .oo-ui-indexLayout-stackLayout > .oo-ui-tabPanelLayout {
border-color: var(--body-border);
}
.mw-htmlform-ooui .mw-htmlform-matrix tbody tr:nth-child(even) td {
background-color: var(--body-light);
}
.mw-htmlform-ooui .mw-htmlform-matrix tbody tr:hover td {
background-color: var(--body-mid);
}
:root {
--rc-positive-color: #407813;
--rc-negative-color: #b41e0f;
}
.mw-plusminus-pos {
color: var(--rc-positive-color);
}
.mw-plusminus-neg {
color: var(--rc-negative-color);
}
.client-js .mw-recentchanges-toplinks:not(.mw-recentchanges-toplinks-collapsed) {
border-color: var(--body-border);
background-color: var(--body-light);
border-radius: 2px;
}
.mw-rcfilters-ui-filterTagMultiselectWidget-wrapper-content-title {
color: var(--text-color);
}
.mw-rcfilters-ui-filterTagMultiselectWidget-emptyFilters {
color: var(--byline-color);
}
.mw-rcfilters-ui-filterTagMultiselectWidget.oo-ui-widget-enabled .oo-ui-tagMultiselectWidget-handle {
background-color: var(--ooui-interface);
border-color: var(--ooui-interface-border);
}
.mw-rcfilters-ui-filterTagMultiselectWidget-views-select-widget.oo-ui-widget {
border-color: var(--ooui-interface-border);
}
.mw-rcfilters-collapsed .mw-rcfilters-ui-filterTagMultiselectWidget {
border-bottom-color: var(--ooui-interface-border);
}
.mw-rcfilters-ui-menuSelectWidget-footer {
background-color: var(--ooui-interface);
border-color: var(--ooui-interface-border);
}
.mw-rcfilters-ui-viewSwitchWidget label.oo-ui-labelWidget {
color: var(--byline-color);
}
.mw-rcfilters-ui-tagItemWidget-popup-content {
color: var(--ooui-text);
}
.mw-changeslist-legend,
.mw-rcfilters-ui-changesListWrapperWidget .mw-changeslist-legend {
background-color: var(--body-light);
border-color: var(--body-dark);
}
.mw-rcfilters-ui-changesListWrapperWidget-previousChangesIndicator {
border-color: var(--sidebar);
}
.client-js .mw-changeslist ul,
.client-js .mw-changeslist table.mw-enhanced-rc {
margin-left: 0;
}
.mw-rcfilters-ui-watchlistTopSectionWidget-separator {
border-color: var(--sidebar);
}
.mw-rcfilters-ui-itemMenuOptionWidget-header {
border-bottom-color: var(--ooui-interface);
background-color: var(--ooui-interface-border);
}
.mw-rcfilters-ui-itemMenuOptionWidget:not(:last-child):not(.mw-rcfilters-ui-itemMenuOptionWidget-identifier-talk) {
border-bottom-color: var(--ooui-normal-border);
}
.mw-rcfilters-ui-itemMenuOptionWidget-label-title,
.mw-rcfilters-ui-itemMenuOptionWidget-label-desc {
color: var(--text-color);
}
.mw-rcfilters-ui-filterMenuOptionWidget.oo-ui-flaggedElement-muted:not(.oo-ui-optionWidget-selected) {
background-color: var(--body-main);
}
.mw-rcfilters-ui-filterMenuOptionWidget.oo-ui-flaggedElement-muted .mw-rcfilters-ui-itemMenuOptionWidget-label-title,
.mw-rcfilters-ui-filterMenuOptionWidget.oo-ui-flaggedElement-muted .mw-rcfilters-ui-itemMenuOptionWidget-label-desc {
color: var(--subtle-color);
}
.mw-rcfilters-ui-filterMenuSectionOptionWidget {
background-color: var(--body-mid);
}
.mw-rcfilters-ui-filterMenuSectionOptionWidget-header-title.oo-ui-labelElement-label {
color: var(--ooui-text);
}
.mw-rcfilters-ui-filterMenuHeaderWidget-title {
color: var(--ooui-text);
}
.mw-rcfilters-ui-filterMenuHeaderWidget-header {
border-bottom-color: var(--ooui-interface-border);
background-color: var(--ooui-interface);
}
.mw-rcfilters-ui-itemMenuOptionWidget-view-namespaces {
border-top-color: var(--ooui-interface-border);
}
.mw-rcfilters-ui-datePopupWidget {
border-color: var(--ooui-interface-border);
}
.mw-rcfilters-ui-datePopupWidget .mw-rcfilters-ui-valuePickerWidget-title {
color: var(--byline-color);
}
.mw-rcfilters-ui-savedLinksListItemWidget-label {
color: var(--ooui-accent);
}
.client-js .mw-changeslist.mw-rcfilters-ui-changesListWrapperWidget-highlighted ul,
.client-js .mw-changeslist.mw-rcfilters-ui-changesListWrapperWidget-highlighted table.mw-enhanced-rc {
margin-left: 1.5em;
}
.page-Special_CreateAccount .mw-ui-container,
.page-Special_UserLogin .mw-ui-container {
max-width: 64rem;
margin: 0 auto;
}
.mw-number-text {
color: var(--byline-color);
}
.mw-body-content .mw-number-text h3 {
color: var(--text-color);
}
#mw-indicator-mw-helplink a {
background: none;
padding: 0;
display: flex;
align-items: center;
}
#mw-indicator-mw-helplink a::before {
content: '';
margin-right: 5px;
-webkit-mask: url("/resources/src/mediawiki.helplink/images/helpNotice.svg?46d34") no-repeat 50% 50% / contain;
mask: url("/resources/src/mediawiki.helplink/images/helpNotice.svg?46d34") no-repeat 50% 50% / contain;
background: var(--text-color);
height: 20px;
width: 20px;
}
.results-info {
color: inherit;
}
.mw-search-profile-tabs {
background-color: var(--body-mid);
border-color: transparent;
}
.search-types .current a {
color: inherit;
}
#mw-searchoptions {
background-color: var(--body-mid);
border-color: transparent;
}
#mw-searchoptions .divider {
border-color: var(--body-border);
}
#mw-searchoptions h4 {
font-family: inherit;
}
#mw-searchoptions .oo-ui-labelElement:nth-of-type(odd) {
font-weight: bold;
}
.searchresult {
line-height: 1.5;
}
.searchalttitle,
#mw-search-interwiki li {
font-size: 90%;
}
.mw-search-result-data {
color: var(--byline-color);
}
.page-Special_ListFiles a.image img {
width: inherit;
height: inherit;
}
.page-Special_ListFiles .TablePager_col_thumb {
text-align: center;
}
#editcount table[border="1"] {
background-color: var(--body-main) !important;
border-color: var(--wikitable-border) !important;
margin-top: 0.5em;
}
#editcount table[border="1"] th,
#editcount table[border="1"] td {
padding: 0.2em 0.4em;
}
#editcount table[border="1"] th {
background-color: var(--wikitable-header-bg);
border: 1px solid var(--wikitable-border);
}
#editcount table[border="1"] td {
border: 1px solid var(--wikitable-border);
}
#editcount table[border="1"] tr:nth-child(odd) {
background-color: var(--body-light);
}
.mw-echo-ui-notificationBadgeButtonPopupWidget-popup > .oo-ui-popupWidget-popup .mw-echo-ui-placeholderItemWidget {
background-color: inherit;
}
table.mw-interwikitable.body td.mw-interwikitable-local-yes {
background-color: var(--table-yes-background);
color: var(--table-yes-color);
}
.mw-protectedpages-unknown {
color: var(--byline-color);
}
.watchlistredir,
.allpagesredirect {
font-style: italic;
}
.allpagesredirect:after {
color: var(--byline-color);
content: " (redirect)";
}
.mw-apisandbox-toolbar {
background: var(--body-main);
}
.oo-ui-menuOptionWidget .mw-apisandbox-flag {
color: var(--byline-color);
}
tr.mw-abusefilter-list-disabled,
tr.mw-abusefilter-list-disabled td {
color: var(--byline-color);
}
table.mw-abuselog-details {
background: var(--wikitable-bg);
border-color: var(--wikitable-border);
}
table.mw-abuselog-details th {
background: var(--wikitable-header-bg);
}
table.mw-abuselog-details th,
table.mw-abuselog-details td {
border-color: var(--wikitable-border);
}
.mw-abusefilter-log-hidden-entry {
color: var(--subtle-color);
}
body td.mw-abusefilter-history-changed {
background: var(--table-no-background);
}
div.mw-abusefilter-editor,
#mw-abusefilter-warn-preview,
#mw-abusefilter-disallow-preview {
border-color: var(--ooui-input-border);
}
.mw-destfile-warning {
border-color: var(--warningbox-border);
color: var(--text-color);
background-color: var(--warningbox-bg);
}
span.fileinput-button {
background-color: var(--ooui-normal);
border-color: var(--ooui-normal-border);
color: var(--ooui-text);
}
ul.fileupload-results li.ful-success {
background-color: var(--successbox-bg);
}
ul.fileupload-results li.ful-success a {
color: var(--link-color);
}
ul.fileupload-results li.ful-error {
background-color: var(--errorbox-bg);
}
#t-print,
#t-permalink {
display: none;
}
#filetoc {
border-radius: 2px;
background: var(--body-mid);
border-color: transparent;
margin: 0.5em auto;
text-align: center;
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
}
li.gallerybox div.thumb {
border: none;
background-color: var(--thumb-bg);
}
.smwfact {
display: none;
}
.list-header {
background-color: var(--body-mid);
color: inherit;
}
.editOptions {
color: var(--text-color);
background-color: var(--sourceeditor-background-secondary);
border-color: var(--sourceeditor-border);
}
.mw-json th,
.mw-json td {
border-color: var(--wikitable-border);
}
.mw-json td {
background: var(--wikitable-bg);
}
.mw-json th {
background: var(--wikitable-header-bg);
}
d9c2c668a4d1ee1279952dc2477ca9e0f82a0a61
509
478
2024-03-22T18:57:19Z
BlackHawk
10
Updating CSS from [[MediaWiki:Common.less]]
css
text/css
/* <pre> */
:root {
--body-main: #feffff;
--body-light: #f2f2f2;
--body-mid: #d0bd97;
--body-dark: #e3e3e3;
--body-border: #000;
--body-background-color: #173a4d;
--button-background: #605443;
--button-color: #fff;
--button-border: #3c352a;
--button-dark: #18140c;
--button-light: #3a301d;
--sidebar: #cfc08d;
--background-text-color: #e2dbc8;
--background-link-color: #e2bd8a;
--search-box: #efeee6;
--link-color: #936039;
--redlink-color: #ba0000;
--text-color: #000;
--byline-color: #4c4c4c;
--subtle-color: #777;
--admin-blue: #332e75;
--bearcat-green: #13592e;
--awb-purple: #933b96;
--rsw-blue: #438ab6;
--osrsw-brown: #605443;
--thumb-bg: var(--body-light);
--thumb-caption-bg: var(--body-mid);
--sourceeditor-input-background: #fff;
--sourceeditor-background: var(--body-light);
--sourceeditor-background-secondary: var(--body-light);
--sourceeditor-border: var(--body-mid);
--codemirror-gutter-background: var(--body-mid);
}
@font-face {
font-family: 'Lora';
font-weight: 400 700;
font-style: normal;
font-display: swap;
src: url('filepath://Lora.woff2') format('woff2');
}
@font-face {
font-family: 'Lora';
font-weight: 400 700;
font-style: italic;
font-display: swap;
src: url('filepath://Lora-Italic.woff2') format('woff2');
}
:root {
--base-text-color: #36414f;
--base-heading-color: #444e5a;
--base-heading-border: #e4eaee;
--mw-code-background-color: #ddd4bb;
--body-background-image: url('filepath://Wiki_background.jpg');
}
#mw-page-base {
background: none;
}
.mw-body {
background-color: var(--body-main);
color: var(--text-color);
border-color: transparent;
box-shadow: 0 0 7px rgba(0, 0, 0, 0.15);
margin-top: 0;
}
h1,
h2,
h3,
h4,
h5,
h6 {
color: var(--text-color);
}
h1,
h2 {
border-color: var(--sidebar);
}
.mw-body h1,
.mw-body-content h1,
.mw-body-content h2,
.mw-body-content h3,
.mw-body-content h4,
.mw-body-content h5,
.mw-body-content h6 {
font-family: 'Lora', 'Palatino', 'Georgia', serif;
}
.mw-parser-output h2:first-of-type {
clear: left;
}
.mw-footer {
color: var(--background-text-color);
}
.mw-footer li {
color: var(--background-text-color);
}
.mw-footer a,
.mw-footer a:active,
.mw-footer a:visited {
color: var(--background-link-color);
}
::placeholder {
color: var(--subtle-color);
}
a {
color: var(--link-color);
}
a:visited,
a:active {
color: var(--link-color);
}
a.new {
color: var(--redlink-color);
}
a.new:visited {
color: var(--redlink-color);
}
.mw-parser-output a.extiw,
.mw-parser-output a.external {
color: var(--link-color);
}
.mw-parser-output a.extiw:visited,
.mw-parser-output a.external:visited,
.mw-parser-output a.extiw:active,
.mw-parser-output a.external:active {
color: var(--link-color);
}
.jsPurgeLink a.external {
color: var(--link-color);
}
:root {
--errorbox-bg: #feecea;
--errorbox-border: #ee4231;
--warningbox-bg: #fef9de;
--warningbox-border: #f9d000;
--successbox-bg: #ecf8e3;
--successbox-border: #6bc71f;
}
.mw-message-box-error,
.errorbox,
.mw-message-box-warning,
.warningbox,
.mw-message-box-success,
.successbox,
.usermessage {
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
}
.mw-message-box-error,
.errorbox {
background-color: var(--errorbox-bg);
border-color: var(--errorbox-border);
}
.mw-message-box-warning,
.warningbox,
.usermessage {
background-color: var(--warningbox-bg);
border-color: var(--warningbox-border);
}
.mw-message-box-success,
.successbox {
background-color: var(--successbox-bg);
border-color: var(--successbox-border);
}
.catlinks {
background: var(--body-light);
border: 1px solid var(--body-dark);
padding: 8px 15px;
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
}
.catlinks li {
border-color: var(--body-mid);
}
.filehistory a img,
#file img {
background: url("data:image/svg+xml,%3C%3Fxml version='1.0' encoding='UTF-8'%3F%3E%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16'%3E%3Cpath d='M0 0h8v16h8V8H0z' opacity='.13'/%3E%3C/svg%3E") repeat;
}
#file img:hover {
background: none;
}
.mw-highlight {
background: none;
}
.mw-highlight .linenos {
background-color: var(--mw-code-background-color);
color: var(--byline-color);
}
.mw-highlight a:hover .linenos,
.mw-highlight .hll a .linenos {
color: var(--text-color);
}
.mw-content-ltr.mw-highlight-lines pre,
.mw-content-ltr.content .mw-highlight-lines pre {
box-shadow: inset 2.75em 0 0 var(--mw-code-background-color);
}
#pagehistory ul {
list-style: none;
margin: 0;
}
#pagehistory li {
border: 1px solid transparent;
padding: 1px 10px;
margin: 2px 0;
}
#pagehistory li.selected {
background-color: var(--body-light);
color: inherit;
border: 1px dashed var(--body-border);
outline: none;
}
#mw-history-compare > div:first-of-type {
position: -webkit-sticky;
position: sticky;
top: 0;
background-color: var(--body-main);
border-bottom: 1px solid var(--body-dark);
padding: 0.25em 0;
}
.wgl-stickyheader #mw-history-compare > div:first-of-type {
top: 2.5rem;
}
.autocomment,
.autocomment a,
.autocomment a:visited {
color: var(--link-color);
}
li span.deleted,
span.history-deleted {
color: var(--byline-color);
}
.mw-usertoollinks-contribs-no-edits,
.mw-usertoollinks-contribs-no-edits:visited {
color: var(--redlink-color);
}
.CategoryTreeToggle {
color: var(--link-color);
}
body.wgl-stickyheader.action-view .mw-headline:target::before {
display: block;
content: '';
margin-top: -3rem;
height: 3rem;
visibility: hidden;
pointer-events: none;
}
.mw-mmv-post-image {
color: var(--text-color);
background-color: var(--body-main);
}
.mw-mmv-image-metadata {
border-top-color: var(--body-mid);
background-color: var(--body-light);
}
.mw-mmv-dialog,
.mw-mmv-dialog .mw-mmv-dialog-down-arrow,
.mw-mmv-options-dialog .mw-mmv-dialog-down-arrow {
background-color: var(--body-light);
box-shadow: none;
}
.mw-mmv-options-enable-alert {
background-color: var(--body-light);
color: var(--text-color);
}
.mw-mmv-options-dialog-header,
.mw-mmv-options-text-header,
.mw-mmv-options-text-body,
.mw-mmv-options-enable-alert,
.mw-mmv-options-dialog .mw-mmv-disable-confirmation .mw-mmv-options-dialog-header,
.mw-mmv-options-dialog .mw-mmv-disable-confirmation .mw-mmv-options-text-header {
color: var(--text-color);
}
.mw-revslider-container {
border-color: var(--sidebar);
}
.mw-revslider-slider-wrapper {
border-top-color: var(--sidebar);
}
.mw-ui-button {
background-color: var(--ooui-normal);
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
}
.mw-ui-button:not(:disabled):hover,
.mw-ui-button:not(:disabled):active {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
}
.mw-ui-button:not(:disabled):focus {
color: var(--ooui-text);
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent), inset 0 0 0 2px #fff;
}
.mw-ui-button:not(:disabled):visited {
color: var(--ooui-text);
}
.mw-ui-button.mw-ui-progressive:not(:disabled) {
background-color: var(--ooui-progressive);
color: #fff;
border-color: var(--ooui-progressive);
}
.mw-ui-button.mw-ui-progressive:not(:disabled):hover {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
}
.mw-ui-button.mw-ui-progressive:not(:disabled):focus {
box-shadow: inset 0 0 0 1px var(--ooui-accent), inset 0 0 0 2px #fff;
}
.mw-ui-button.mw-ui-progressive:not(:disabled):active,
.mw-ui-button.mw-ui-progressive:not(:disabled).is-on {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
box-shadow: none;
}
.mw-ui-button.mw-ui-destructive:not( :disabled ) {
color: #fff;
}
.mw-ui-button.mw-ui-quiet,
.mw-ui-button.mw-ui-quiet.mw-ui-progressive,
.mw-ui-button.mw-ui-quiet.mw-ui-destructive {
color: var(--text-color);
}
input[type='checkbox']:hover + .mw-ui-button.mw-ui-quiet,
input[type='checkbox']:hover + .mw-ui-button.mw-ui-quiet.mw-ui-progressive,
input[type='checkbox']:hover + .mw-ui-button.mw-ui-quiet.mw-ui-destructive,
.mw-ui-button.mw-ui-quiet:hover,
.mw-ui-button.mw-ui-quiet.mw-ui-progressive:hover,
.mw-ui-button.mw-ui-quiet.mw-ui-destructive:hover {
background-color: rgba(0, 24, 73, 0.02745098);
color: var(--text-color);
border-color: transparent;
}
input[type='checkbox']:focus + .mw-ui-button.mw-ui-quiet,
input[type='checkbox']:focus + .mw-ui-button.mw-ui-quiet.mw-ui-progressive,
input[type='checkbox']:focus + .mw-ui-button.mw-ui-quiet.mw-ui-destructive,
.mw-ui-button.mw-ui-quiet:focus,
.mw-ui-button.mw-ui-quiet.mw-ui-progressive:focus,
.mw-ui-button.mw-ui-quiet.mw-ui-destructive:focus {
color: var(--text-color);
}
input[type='checkbox']:active + .mw-ui-button.mw-ui-quiet,
input[type='checkbox']:active + .mw-ui-button.mw-ui-quiet.mw-ui-progressive,
input[type='checkbox']:active + .mw-ui-button.mw-ui-quiet.mw-ui-destructive,
.mw-ui-button.mw-ui-quiet:active,
.mw-ui-button.mw-ui-quiet.mw-ui-progressive:active,
.mw-ui-button.mw-ui-quiet.mw-ui-destructive:active {
background-color: rgba(0, 36, 73, 0.08235294);
color: var(--text-color);
border-color: #72777d;
}
.mw-ui-input {
background-color: var(--ooui-input);
color: var(--text-color);
border-color: var(--ooui-input-border);
}
.mw-ui-input:hover {
border-color: var(--ooui-input-border--hover);
}
.mw-ui-input::placeholder {
color: var(--byline-color);
}
.mw-content-ltr .redirectText li:first-child {
padding: 0;
background: 0;
}
.mw-content-ltr .redirectText li:first-child::before {
content: '';
background: currentcolor;
-webkit-mask: url("filepath://Redirect-arrow.svg") no-repeat 50% 50% / contain;
mask: url("filepath://Redirect-arrow.svg") no-repeat 50% 50% / contain;
display: inline-block;
width: 47px;
height: 20px;
}
:root {
--wikitable-header-bg: var(--body-dark);
--wikitable-border: var(--body-border);
--wikitable-bg: var(--body-light);
--wikitable-bg-lighter: #e9e3d6;
--wikitable-color: var(--text-color);
--table-na-background: rgba(255, 255, 255, 0.3);
--table-na-color: var(--subtle-color);
--table-yes-background: #c3e8a3;
--table-yes-color: #2e5e05;
--table-no-background: #fbc0ba;
--table-no-color: #801c13;
--table-maybe-background: #fcea94;
--table-maybe-color: #786300;
}
.wikitable {
background: var(--wikitable-bg);
color: var(--wikitable-color);
border-color: var(--wikitable-border);
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
}
.wikitable > tr > th,
.wikitable > tr > td,
.wikitable > * > tr > th,
.wikitable > * > tr > td {
border-color: var(--wikitable-border);
}
.wikitable > tr > th.table-noborder,
.wikitable > tr > td.table-noborder,
.wikitable > * > tr > th.table-noborder,
.wikitable > * > tr > td.table-noborder {
border-left-style: hidden;
border-right-style: hidden;
padding-left: 0;
padding-right: 0;
}
.wikitable > tr > th,
.wikitable > * > tr > th {
background-color: var(--wikitable-header-bg);
}
.tabber .wikitable {
box-shadow: none;
}
.mw_metadata td,
.mw_metadata th {
border-color: var(--wikitable-border);
}
.mw_metadata th {
background-color: var(--wikitable-header-bg);
}
.mw_metadata td {
background-color: var(--wikitable-bg);
}
.mw-datatable {
border-color: var(--wikitable-border);
}
.mw-datatable td,
.mw-datatable th {
border-color: var(--wikitable-border);
}
.mw-datatable th {
background-color: var(--wikitable-header-bg);
}
.mw-datatable td {
background-color: var(--wikitable-bg);
}
.mw-datatable tr:hover td {
background-color: var(--wikitable-bg);
}
table.alternating-rows tr:nth-child(odd),
table.alternating-cols td:nth-child(odd) {
background: var(--wikitable-alternating-bg);
}
.table-na {
background: var(--table-na-background);
color: var(--table-na-color);
vertical-align: middle;
text-align: center;
}
.table-yes {
background: var(--table-yes-background);
color: var(--table-yes-color);
}
.table-positive {
background: var(--table-yes-background);
}
.table-no {
background: var(--table-no-background);
color: var(--table-no-color);
}
.table-negative {
background: var(--table-no-background);
}
.table-maybe {
background: var(--table-maybe-background);
color: var(--table-maybe-color);
}
#mw-allmessagestable .am_actual,
#mw-allmessagestable .am_default {
background-color: var(--wikitable-bg);
}
#mw-allmessagestable .am_default:hover,
#mw-allmessagestable .am_actual:hover,
#mw-allmessagestable tbody:hover td {
background-color: var(--wikitable-bg-lighter);
}
table.wikitable td.no-cell-spacing {
padding: 0;
height: 0;
}
table.wikitable td.no-cell-spacing table {
margin: -1px;
width: calc(100% + 2px);
height: calc(100% + 2px);
}
.plainlist ol,
.plainlist ul {
margin: 0;
}
.plainlist li {
margin-bottom: 0;
list-style: none;
}
table.align-right-1 td:nth-of-type(1),
table.align-right-2 td:nth-of-type(2),
table.align-right-3 td:nth-of-type(3),
table.align-right-4 td:nth-of-type(4),
table.align-right-5 td:nth-of-type(5),
table.align-right-6 td:nth-of-type(6),
table.align-right-7 td:nth-of-type(7),
table.align-right-8 td:nth-of-type(8),
table.align-right-9 td:nth-of-type(9),
table.align-right-10 td:nth-of-type(10),
table.align-right-11 td:nth-of-type(11),
table.align-right-12 td:nth-of-type(12),
table.align-right-13 td:nth-of-type(13),
table.align-right-14 td:nth-of-type(14),
table.align-right-15 td:nth-of-type(15),
table.align-right-16 td:nth-of-type(16),
table.align-right-17 td:nth-of-type(17),
table.align-right-18 td:nth-of-type(18),
table.align-right-19 td:nth-of-type(19),
table.align-right-20 td:nth-of-type(20) {
text-align: right;
}
table.align-center-1 td:nth-of-type(1),
table.align-center-2 td:nth-of-type(2),
table.align-center-3 td:nth-of-type(3),
table.align-center-4 td:nth-of-type(4),
table.align-center-5 td:nth-of-type(5),
table.align-center-6 td:nth-of-type(6),
table.align-center-7 td:nth-of-type(7),
table.align-center-8 td:nth-of-type(8),
table.align-center-9 td:nth-of-type(9),
table.align-center-10 td:nth-of-type(10),
table.align-center-11 td:nth-of-type(11),
table.align-center-12 td:nth-of-type(12),
table.align-center-13 td:nth-of-type(13),
table.align-center-14 td:nth-of-type(14),
table.align-center-15 td:nth-of-type(15),
table.align-center-16 td:nth-of-type(16),
table.align-center-17 td:nth-of-type(17),
table.align-center-18 td:nth-of-type(18),
table.align-center-19 td:nth-of-type(19),
table.align-center-20 td:nth-of-type(20) {
text-align: center;
}
table.align-left-1 td:nth-of-type(1),
table.align-left-2 td:nth-of-type(2),
table.align-left-3 td:nth-of-type(3),
table.align-left-4 td:nth-of-type(4),
table.align-left-5 td:nth-of-type(5),
table.align-left-6 td:nth-of-type(6),
table.align-left-7 td:nth-of-type(7),
table.align-left-8 td:nth-of-type(8),
table.align-left-9 td:nth-of-type(9),
table.align-left-10 td:nth-of-type(10),
table.align-left-11 td:nth-of-type(11),
table.align-left-12 td:nth-of-type(12),
table.align-left-13 td:nth-of-type(13),
table.align-left-14 td:nth-of-type(14),
table.align-left-15 td:nth-of-type(15),
table.align-left-16 td:nth-of-type(16),
table.align-left-17 td:nth-of-type(17),
table.align-left-18 td:nth-of-type(18),
table.align-left-19 td:nth-of-type(19),
table.align-left-20 td:nth-of-type(20) {
text-align: left;
}
:root {
--diff-addedline-border-color: #438ab5;
--diff-addedline-background: #bddff2;
--diff-addedline-color: #000;
--diff-deletedline-border-color: #379541;
--diff-deletedline-background: #c1edbf;
--diff-deletedline-color: #000;
--diff-context-border-color: var(--body-mid);
--diff-context-background: var(--body-mid);
}
.diff-context {
border-color: var(--diff-context-border-color);
background: var(--diff-context-background);
color: inherit;
}
.diff-addedline {
border-color: var(--diff-addedline-border-color);
}
.diff-addedline .diffchange {
background: var(--diff-addedline-background);
color: var(--diff-addedline-color);
}
.diff-deletedline {
border-color: var(--diff-deletedline-border-color);
}
.diff-deletedline .diffchange {
background: var(--diff-deletedline-background);
color: var(--diff-deletedline-color);
}
.mw-diff-movedpara-left:after,
.mw-diff-movedpara-right:after {
color: var(--text-color);
}
.mw-notification {
background-color: var(--body-light);
border-color: var(--body-border);
color: var(--text-color);
}
.mw-echo-ui-notificationsInboxWidget-toolbarWrapper {
background: var(--body-main);
}
.mw-body-content .mw-echo-ui-datedSubGroupListWidget-title-secondary {
color: var(--byline-color);
}
.mw-echo-ui-pageNotificationsOptionWidget.oo-ui-optionWidget-selected {
background-color: var(--ooui-normal);
color: var(--ooui-accent);
}
.mw-echo-ui-pageNotificationsOptionWidget-label-count {
background-color: var(--ooui-normal);
color: var(--byline-color);
}
.oo-ui-optionWidget-selected .mw-echo-ui-pageNotificationsOptionWidget-label-count {
color: var(--ooui-accent);
}
.mw-echo-ui-pageNotificationsOptionWidget.oo-ui-optionWidget-highlighted {
background-color: var(--ooui-normal);
color: var(--text-color);
}
.mw-echo-ui-crossWikiUnreadFilterWidget {
border-color: var(--body-border);
}
.mw-echo-ui-crossWikiUnreadFilterWidget-subtitle {
color: var(--byline-color);
}
.mw-echo-ui-notificationBadgeButtonPopupWidget-popup > .oo-ui-popupWidget-popup > .oo-ui-popupWidget-head,
.mw-echo-ui-notificationBadgeButtonPopupWidget-popup > .oo-ui-popupWidget-popup > .oo-ui-popupWidget-footer {
border-color: var(--ooui-interface-border);
}
.mw-echo-ui-notificationBadgeButtonPopupWidget-popup > .oo-ui-popupWidget-popup > .oo-ui-popupWidget-footer .mw-echo-ui-notificationBadgeButtonPopupWidget-footer-buttons .oo-ui-buttonElement:last-child {
border-left-color: var(--ooui-normal-border);
}
.mw-echo-ui-notificationItemWidget {
background-color: var(--ooui-normal);
border-color: var(--ooui-normal-border);
}
.mw-echo-ui-notificationItemWidget:hover,
.mw-echo-ui-notificationItemWidget-unread:hover {
background-color: var(--ooui-normal--hover);
}
.mw-echo-ui-notificationItemWidget:last-child {
border-bottom-color: var(--ooui-normal-border);
}
.mw-echo-ui-notificationItemWidget-unread {
background-color: var(--search-box);
}
.mw-echo-ui-crossWikiNotificationItemWidget-group,
.mw-echo-ui-bundleNotificationItemWidget-group {
background-color: var(--ooui-interface);
}
.mw-echo-ui-toggleReadCircleButtonWidget-circle {
background-color: var(--ooui-progressive);
}
.mw-echo-ui-toggleReadCircleButtonWidget:hover .mw-echo-ui-toggleReadCircleButtonWidget-circle {
background-color: var(--ooui-progressive--hover);
}
.mw-echo-ui-toggleReadCircleButtonWidget-circle-unread {
background-color: var(--ooui-normal);
border-color: var(--ooui-normal-border);
}
.mw-echo-ui-notificationItemWidget-content-message-header,
.mw-echo-ui-notificationItemWidget-content-message-body,
.mw-echo-ui-menuItemWidget > .oo-ui-buttonElement-button > .oo-ui-labelElement-label,
.mw-echo-ui-notificationItemWidget-content-actions-timestamp {
color: var(--ooui-text);
}
.mw-echo-ui-bundleNotificationItemWidget-group {
background-color: var(--body-main);
}
@keyframes unseen-fadeout-to-unread {
from {
background-color: var(--wikitable-bg-lighter);
}
to {
background-color: var(--search-box);
}
}
@keyframes unseen-fadeout-to-read {
from {
background-color: var(--wikitable-bg-lighter);
}
to {
background-color: var(--body-main);
}
}
.mwe-popups {
background: var(--body-light);
}
.mwe-popups .mwe-popups-container {
color: var(--text-color);
background: var(--body-light);
}
.mwe-popups .mwe-popups-container.flipped-x-y:before,
.mwe-popups .mwe-popups-container.flipped-y:before {
border-top: none;
}
.mwe-popups .mwe-popups-container.mwe-popups-no-image-tri:before {
border-bottom: none;
}
.mwe-popups .mwe-popups-container.flipped-x-y:after,
.mwe-popups .mwe-popups-container.flipped-y:after {
border-top-color: var(--body-light);
}
.mwe-popups .mwe-popups-container.mwe-popups-no-image-tri:after {
border-bottom-color: var(--body-light);
}
.mwe-popups .mwe-popups-settings-icon:hover,
.mwe-popups .mwe-popups-settings-icon:active {
background-color: var(--ooui-normal--hover);
}
.mwe-popups .mw-ui-icon-element:not(.disabled):hover {
background: none;
}
.mwe-popups .mwe-popups-extract {
color: var(--text-color);
}
.mwe-popups .mwe-popups-extract[dir='ltr']:after {
background-image: linear-gradient(to right, rgba(49, 62, 89, 0), var(--body-light) 50%);
}
.mwe-popups-overlay {
background-color: var(--ooui-window-background);
}
#mwe-popups-settings {
background: var(--ooui-interface);
border-color: var(--ooui-interface-border);
color: var(--text-color);
}
#mwe-popups-settings header {
border-color: var(--ooui-interface-border);
}
#mwe-popups-settings main#mwe-popups-settings-form p {
color: var(--byline-color);
}
#mwe-popups-settings main#mwe-popups-settings-form form label > span {
color: var(--ooui-text);
}
:root {
--smw-ask-options-even-bg: var(--body-mid);
--smw-ask-options-odd-bg: var(--body-light);
--smw-ask-action-btn-lblue-bg: var(--body-main);
--smw-ask-action-btn-lblue-color: #000;
--smw-ask-action-btn-lblue-border-color: var(--body-light);
--smw-ask-action-btn-dblue-bg: var(--body-light);
--smw-ask-action-btn-dblue-color: #fff;
--smw-ask-action-btn-dblue-border-color: var(--button-border);
}
.smw-ask-condition fieldset,
.smw-ask-printhead fieldset {
border-color: var(--sidebar);
}
.smw-ask-search fieldset,
.smw-ask-format fieldset,
.smw-ask-options fieldset {
border-color: var(--sidebar);
}
.strike > span:before,
.strike > span:after {
background: var(--sidebar);
}
.smw-ask-options-fields tr td {
background-color: var(--smw-ask-options-even-bg);
}
.smw-ask-options-fields tr:nth-child(odd) td {
background-color: var(--smw-ask-options-odd-bg);
}
.smw-ask-action-btn.smw-ask-action-btn-lblue,
.smw-ask-action-btn.smw-ask-action-btn-lblue:hover,
.smw-ask-action-btn.smw-ask-action-btn-lblue:visited {
background-color: var(--smw-ask-action-btn-lblue-bg);
color: var(--smw-ask-action-btn-lblue-color);
border-color: var(--smw-ask-action-btn-lblue-border-color);
}
.smw-ask-action-btn.smw-ask-action-btn-dblue,
.smw-ask-action-btn.smw-ask-action-btn-dblue:hover,
.smw-ask-action-btn.smw-ask-action-btn-dblue:visited {
background-color: var(--smw-ask-action-btn-dblue-bg);
color: var(--smw-ask-action-btn-dblue-color);
border-color: var(--smw-ask-action-btn-dblue-border-color);
}
.smw-ask-query textarea,
.smw-ask-actions textarea {
background-color: var(--ooui-interface);
border-color: var(--ooui-interface-border);
color: var(--ooui-text);
}
.smw-ask-query-format select {
background-color: var(--ooui-interface);
border: 1px solid var(--ooui-interface-border);
color: var(--ooui-text);
}
.smw-ask-toplinks {
background-color: var(--body-mid);
}
.smw-ask-toplinks span.smw-icon-info {
background: none;
padding: 0 !important;
}
.smw-ask-toplinks span.smw-icon-info::before {
content: '';
background: var(--text-color);
-webkit-mask: url("data:image/svg+xml,%3C%3Fxml version='1.0' encoding='UTF-8'%3F%3E%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 20 20'%3E%3Ctitle%3Einfo%3C/title%3E%3Cpath d='M10 0C4.477 0 0 4.477 0 10s4.477 10 10 10 10-4.477 10-10S15.523 0 10 0zM9 5h2v2H9zm0 4h2v6H9z'/%3E%3C/svg%3E") no-repeat 50% 50% / contain;
mask: url("data:image/svg+xml,%3C%3Fxml version='1.0' encoding='UTF-8'%3F%3E%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 20 20'%3E%3Ctitle%3Einfo%3C/title%3E%3Cpath d='M10 0C4.477 0 0 4.477 0 10s4.477 10 10 10 10-4.477 10-10S15.523 0 10 0zM9 5h2v2H9zm0 4h2v6H9z'/%3E%3C/svg%3E") no-repeat 50% 50% / contain;
padding: 0 0 3px 18px;
}
.smw-ask-options-row-odd {
background-color: var(--body-light);
}
.smw-ask-options-row-even {
background-color: var(--body-mid);
}
#options-toggle:not(:checked) + #options-list .options-parameter-list:after {
background-image: linear-gradient(to bottom, transparent, var(--body-mid) 90%);
}
.smw-ask-button-submit input {
background-color: var(--ooui-normal);
border-color: var(--ooui-normal-border);
color: var(--text-color);
}
.smw-ask-button-submit input:hover,
.smw-ask-button-lgrey:hover {
background-color: var(--ooui-normal--hover);
border-color: var(--ooui-normal-border);
}
input.smw-ask-action-btn.smw-ask-action-btn-dblue {
background-color: var(--ooui-normal);
border-color: var(--ooui-normal-border);
color: var(--ooui-text);
}
a.smw-ask-action-btn.smw-ask-action-btn-lblue {
background-color: var(--body-mid);
border-color: var(--body-mid);
color: var(--ooui-text);
}
a.smw-ask-action-btn.smw-ask-action-btn-lblue:visited {
background-color: var(--body-mid);
border-color: var(--body-mid);
color: var(--ooui-text);
}
a.smw-ask-action-btn.smw-ask-action-btn-lblue:hover {
background-color: var(--body-mid);
border-color: var(--body-mid);
color: var(--ooui-text);
}
a.smw-ask-action-btn-lgrey {
background-color: var(--ooui-normal);
border-color: var(--ooui-normal-border);
color: var(--ooui-text);
}
a.smw-ask-action-btn-lgrey:hover {
background-color: var(--ooui-normal--hover);
border-color: var(--ooui-normal-border);
color: var(--ooui-text);
}
.smw-callout-error {
background-color: var(--errorbox-bg);
border-color: var(--errorbox-border);
}
.smw-callout-info {
background-color: var(--body-light);
border-color: var(--body-dark);
}
.smw-callout-success {
background-color: var(--successbox-bg);
border-color: var(--successbox-border);
}
.smw-callout-warning {
background-color: var(--warningbox-bg);
border-color: var(--warningbox-bg);
}
.smw-tabs input.nav-tab:checked + label.nav-label,
.smw-tabs input.nav-tab:checked + label.nav-label:hover {
color: inherit;
}
#tab-smw-property-value:checked + label.nav-label .usage-count {
color: #fff;
background-color: var(--ooui-progressive);
}
#tab-smw-property-value:checked + label.nav-label .usage-count.moderate {
color: #fff;
background-color: #b55e0c;
border-color: #b55e0c;
}
#tab-smw-property-value:checked + label.nav-label .usage-count.high {
color: #fff;
background-color: #9f261e;
border-color: #9f261e;
}
.smw-property-page-results .header-title {
background-color: var(--ooui-interface);
border-bottom-color: var(--ooui-interface-border);
color: var(--ooui-text);
}
.smw-property-page-results .value-row:hover {
background-color: var(--ooui-normal--hover);
}
.smw-property-page-results .smw-table .header-row {
color: var(--text-color);
}
.tippy-tooltip.light-border-theme {
background-color: var(--body-light);
color: var(--text-color);
}
.tippy-tooltip.light-border-theme .tippy-arrow {
border-top-color: var(--body-light);
}
.tippy-tooltip.light-border-theme .tippy-arrow:after {
border-top-color: var(--body-light);
}
.tippy-header {
background-color: var(--body-dark);
border-bottom-color: var(--body-mid);
}
.smw-ui-input-filter {
background-color: var(--ooui-interface);
border-color: var(--ooui-interface-border);
color: var(--ooui-text);
}
.smw-ui-input-filter input {
border-left-color: var(--ooui-interface-border) !important;
color: var(--ooui-text) !important;
}
.smw-ui-pagination .page-link.link-disabled {
background-color: var(--ooui-disabled);
border-color: var(--ooui-disabled-border);
color: var(--subtle-color);
}
.smw-ui-pagination .page-link {
background-color: var(--ooui-normal);
border-color: var(--ooui-normal-border);
color: var(--link-color);
}
.smw-ui-pagination .page-link:hover {
background-color: var(--ooui-normal--hover);
border-color: var(--ooui-normal-border);
color: var(--link-color);
}
.smw-ui-pagination .page-link.link-active {
color: #fff;
background-color: var(--ooui-progressive);
border-color: var(--ooui-progressive);
}
.smw-tabs input.nav-tab:checked + label.nav-label {
border-color: var(--ooui-normal-border);
}
.smw-tabs section,
.smw-tabs .subtab-content {
border-top-color: var(--ooui-normal-border);
}
.smw-column-header {
color: var(--text-color);
}
.smw-factbox {
background: var(--body-main);
border-color: transparent;
}
.mw-body .mw-indicators #mw-indicator-smw-entity-examiner.mw-indicator .smw-indicator-vertical-bar-loader {
display: none;
}
.smwb-theme-light .smwb-title,
.smwb-theme-light .smwb-center,
.smwb-theme-light .smwb-actions,
.smwb-theme-light .smwb-prophead {
background-color: var(--body-mid);
}
.smwb-theme-light .smwb-factbox {
border-left-color: var(--body-mid);
}
.smwb-theme-light .smwb-ifactbox {
border-right-color: var(--body-mid);
}
.smwb-theme-light .smwb-propval {
background-color: var(--body-light);
}
.smwb-action-separator {
border-color: var(--wikitable-border);
}
.smwb-bottom {
border-bottom: 1px solid var(--wikitable-border);
}
.smwb-ifactbox .smwb-cell,
.smwb-factbox .smwb-cell {
border-top: 1px solid var(--wikitable-border);
}
.smwb-propvalue .smwb-prophead,
.smwb-ipropvalue .smwb-prophead,
.smwb-propvalue .smwb-propval,
.smwb-ipropvalue .smwb-propval {
font-size: 0.9em;
}
:root {
--filter-black-to-link: invert(36%) sepia(58%) saturate(433%) hue-rotate(344deg) brightness(100%) contrast(91%);
}
#bodyContent span.smwbrowse a {
color: black;
background-image: url('filepath://Smwbrowse.svg');
filter: var(--filter-black-to-link);
}
#bodyContent span.smwbrowse a:hover {
color: black;
background-image: url('filepath://Smwbrowse-hover.svg');
text-decoration: underline;
}
#bodyContent span.smwsearch a {
color: black;
filter: var(--filter-black-to-link);
background-image: url('filepath://Smwsearch.svg');
}
#bodyContent span.smwsearch a:hover {
color: black;
background-image: url('filepath://Smwsearch-hover.svg');
text-decoration: underline;
}
:root {
--tabber-tab-bg: var(--body-light);
--tabber-tab-border-color: var(--body-border);
--tabber-active-tab-bg: var(--body-light);
--tabber-active-tab-color: var(--text-color);
--tabber-active-tab-hover-bg: var(--body-light);
--tabber-active-tab-hover-border-color: var(--body-border);
--tabber-active-tab-hover-color: var(--text-color);
--tabber-active-tab-border-hider-color: var(--body-light);
--tabber-inactive-tab-bg: var(--body-background-color);
--tabber-inactive-tab-border-color: var(--body-border);
--tabber-inactive-tab-color: var(--text-color);
--tabber-inactive-tab-hover-bg: var(--body-light);
--tabber-inactive-tab-hover-border-color: var(--body-border);
}
.tabber {
margin: 1em 0;
}
.tabber .tabbertab {
background-color: var(--tabber-tab-bg);
border: 1px solid var(--tabber-tab-border-color);
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
padding: 1em 1.5em;
}
ul.tabbernav {
border: none;
margin-left: 2em;
margin-bottom: 0;
margin-right: 2em;
padding: 0;
font-family: inherit;
}
ul.tabbernav li.tabberactive > a {
background-color: var(--tabber-active-tab-bg);
color: var(--tabber-active-tab-color);
border-bottom: none;
position: relative;
}
ul.tabbernav li.tabberactive > a:hover {
color: var(--tabber-active-tab-hover-color);
background-color: var(--tabber-active-tab-hover-bg);
border-color: var(--tabber-active-tab-hover-border-color);
border-bottom: none;
}
ul.tabbernav li.tabberactive > a::after {
content: '';
position: absolute;
left: 0;
right: 0;
bottom: -1px;
border-bottom: 2px solid var(--tabber-active-tab-border-hider-color);
}
ul.tabbernav li a {
background-color: var(--tabber-inactive-tab-bg);
border-bottom: transparent;
border-color: var(--tabber-inactive-tab-border-color);
color: var(--tabber-inactive-tab-color);
display: inline-block;
font-size: 110%;
padding: 0.5em 1em;
}
ul.tabbernav li a:hover {
background-color: var(--tabber-inactive-tab-hover-bg);
border-color: var(--tabber-inactive-tab-hover-border-color);
}
ul.tabbernav li a:link,
ul.tabbernav li a:visited {
color: var(--tabber-inactive-tab-color);
}
:root {
--ooui-text: var(--text-color);
--ooui-interface: var(--body-light);
--ooui-interface-border: var(--body-border);
--ooui-window-background: rgba(255, 255, 255, 0.5);
--ooui-normal: #d5c7ad;
--ooui-normal--hover: #dfd5c1;
--ooui-normal-border: #b8a282;
--ooui-progressive: #605443;
--ooui-progressive--hover: #7e6e58;
--ooui-accent: var(--link-color);
--ooui-input: #fff;
--ooui-input-border: #b8a282;
--ooui-input-border--hover: #8a724f;
--ooui-disabled: #d1cdc5;
--ooui-disabled-border: #c2b9ab;
--ooui-disabled-text: var(--subtle-color);
--ooui-pending-background-image: repeating-linear-gradient(-45deg, var(--search-box), var(--search-box) 20px, var(--body-main) 20px, var(--body-main) 30px);
}
.oo-ui-widget {
color: var(--ooui-text);
}
.oo-ui-checkboxInputWidget [type='checkbox'] + span,
.oo-ui-radioInputWidget [type='radio'] + span {
background-color: var(--ooui-input);
border-color: var(--ooui-input-border);
}
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:checked + span,
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:indeterminate + span {
background-color: var(--ooui-progressive);
border-color: var(--ooui-progressive);
}
.oo-ui-radioInputWidget.oo-ui-widget-enabled [type='radio']:checked + span {
border-color: var(--ooui-progressive);
}
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:checked:hover + span,
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:indeterminate:hover + span {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
}
.oo-ui-radioInputWidget.oo-ui-widget-enabled [type='radio']:checked:hover + span {
border-color: var(--ooui-progressive--hover);
}
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:hover + span,
.oo-ui-radioInputWidget.oo-ui-widget-enabled [type='radio']:hover + span {
border-color: var(--ooui-accent);
}
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:focus + span {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:active + span,
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:checked:active + span,
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:indeterminate:active + span {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
box-shadow: inset 0 0 0 1px var(--ooui-progressive--hover);
}
.oo-ui-radioInputWidget.oo-ui-widget-enabled [type='radio']:active + span {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
}
.oo-ui-radioInputWidget.oo-ui-widget-enabled [type='radio']:checked:active + span {
border-color: var(--ooui-progressive--hover);
box-shadow: inset 0 0 0 1px var(--ooui-progressive--hover);
}
.oo-ui-radioInputWidget.oo-ui-widget-enabled [type='radio']:checked:active + span:before {
border-color: var(--ooui-progressive--hover);
}
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:checked:focus + span,
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:indeterminate:focus + span {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent), inset 0 0 0 2px #fff;
}
.oo-ui-checkboxInputWidget [type='checkbox']:disabled + span,
.oo-ui-radioInputWidget [type='radio']:disabled + span {
background-color: var(--ooui-disabled);
border-color: var(--ooui-disabled);
}
.oo-ui-dropdownWidget-handle {
border-color: var(--ooui-normal-border);
}
.oo-ui-dropdownWidget.oo-ui-widget-enabled .oo-ui-dropdownWidget-handle {
background-color: var(--ooui-normal);
color: var(--ooui-text);
}
.oo-ui-dropdownWidget.oo-ui-widget-enabled .oo-ui-dropdownWidget-handle:hover {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
}
.oo-ui-dropdownWidget.oo-ui-widget-enabled .oo-ui-dropdownWidget-handle:active {
color: var(--ooui-text);
}
.oo-ui-dropdownWidget.oo-ui-widget-enabled .oo-ui-dropdownWidget-handle:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-dropdownWidget.oo-ui-widget-enabled.oo-ui-dropdownWidget-open .oo-ui-dropdownWidget-handle {
background-color: var(--ooui-normal--hover);
}
.oo-ui-dropdownWidget.oo-ui-widget-disabled .oo-ui-dropdownWidget-handle {
color: var(--ooui-disabled-text);
text-shadow: none;
border-color: var(--ooui-disabled-border);
background-color: var(--ooui-disabled);
}
.oo-ui-dropdownInputWidget select {
border-color: var(--ooui-normal-border);
}
.oo-ui-dropdownInputWidget option {
background-color: var(--ooui-interface);
}
.oo-ui-dropdownInputWidget.oo-ui-widget-enabled {
background-color: var(--ooui-normal);
}
.oo-ui-dropdownInputWidget.oo-ui-widget-enabled:hover {
background-color: var(--ooui-normal--hover);
}
.oo-ui-dropdownInputWidget.oo-ui-widget-enabled select {
color: var(--ooui-text);
}
.oo-ui-dropdownInputWidget.oo-ui-widget-enabled select:hover,
.oo-ui-dropdownInputWidget.oo-ui-widget-enabled select:active {
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
}
.oo-ui-dropdownInputWidget.oo-ui-widget-enabled select:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-labelWidget.oo-ui-inline-help {
color: var(--byline-color);
}
.oo-ui-menuSelectWidget {
background-color: var(--ooui-interface);
border-color: var(--ooui-interface-border);
}
.oo-ui-menuSelectWidget-frameless {
box-shadow: inset 0 -1px 0 0 var(--ooui-normal-border);
}
.oo-ui-menuSectionOptionWidget {
color: var(--byline-color);
}
.oo-ui-menuOptionWidget.oo-ui-optionWidget-highlighted,
.oo-ui-menuOptionWidget.oo-ui-optionWidget-selected {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
}
.oo-ui-menuOptionWidget.oo-ui-optionWidget-selected.oo-ui-menuOptionWidget.oo-ui-optionWidget-highlighted,
.oo-ui-menuOptionWidget.oo-ui-optionWidget-pressed.oo-ui-menuOptionWidget.oo-ui-optionWidget-highlighted {
color: var(--ooui-accent);
}
.oo-ui-menuOptionWidget.oo-ui-widget-enabled.oo-ui-optionWidget {
color: var(--ooui-text);
}
.oo-ui-messageDialog-title {
color: inherit;
}
.oo-ui-messageWidget.oo-ui-messageWidget-block.oo-ui-flaggedElement-error {
background-color: var(--errorbox-bg);
border-color: var(--errorbox-border);
}
.oo-ui-messageWidget.oo-ui-messageWidget-block.oo-ui-flaggedElement-warning {
background-color: var(--warningbox-bg);
border-color: var(--warningbox-border);
}
.oo-ui-messageWidget.oo-ui-messageWidget-block.oo-ui-flaggedElement-success {
background-color: var(--successbox-bg);
border-color: var(--successbox-border);
}
.oo-ui-messageWidget.oo-ui-messageWidget-block.oo-ui-flaggedElement-notice {
background-color: var(--messagebox-info-background);
border-color: var(--messagebox-info-border);
}
.oo-ui-messageWidget.oo-ui-flaggedElement-error:not(.oo-ui-messageWidget-block),
.oo-ui-messageWidget.oo-ui-flaggedElement-success:not(.oo-ui-messageWidget-block) {
color: var(--ooui-text);
}
.oo-ui-optionWidget.oo-ui-widget-disabled {
color: var(--ooui-disabled-text);
}
.oo-ui-outlineControlsWidget {
background-color: var(--ooui-normal);
}
.oo-ui-outlineOptionWidget.oo-ui-optionWidget-highlighted {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
}
.oo-ui-popupWidget-popup {
background-color: var(--ooui-interface);
border-color: var(--ooui-interface-border);
}
.oo-ui-popupWidget-anchored-top .oo-ui-popupWidget-anchor:after {
border-bottom-color: var(--ooui-interface);
}
.oo-ui-popupWidget-anchored-top .oo-ui-popupWidget-anchor:before {
border-bottom-color: var(--ooui-interface-border);
}
.oo-ui-popupWidget-anchored-bottom .oo-ui-popupWidget-anchor:after {
border-top-color: var(--ooui-interface);
}
.oo-ui-popupWidget-anchored-bottom .oo-ui-popupWidget-anchor:before {
border-top-color: var(--ooui-interface-border);
}
.oo-ui-popupWidget-anchored-start .oo-ui-popupWidget-anchor:after {
border-right-color: var(--ooui-interface);
}
.oo-ui-popupWidget-anchored-start .oo-ui-popupWidget-anchor:before {
border-right-color: var(--ooui-interface-border);
}
.oo-ui-popupWidget-anchored-end .oo-ui-popupWidget-anchor:after {
border-left-color: var(--ooui-interface);
}
.oo-ui-popupWidget-anchored-end .oo-ui-popupWidget-anchor:before {
border-left-color: var(--ooui-interface-border);
}
.oo-ui-searchWidget-query {
border-bottom-color: var(--ooui-interface-border);
}
.oo-ui-selectFileWidget-dropTarget {
background-color: var(--ooui-interface);
border-color: var(--ooui-interface-border);
}
.oo-ui-selectFileWidget.oo-ui-widget-enabled.oo-ui-selectFileWidget-dropTarget {
background-color: var(--ooui-interface);
}
.oo-ui-selectFileWidget.oo-ui-widget-enabled.oo-ui-selectFileWidget-dropTarget:hover {
border-color: var(--ooui-input-border--hover);
}
.oo-ui-tabOptionWidget {
color: var(--ooui-text);
}
.oo-ui-tabSelectWidget-framed .oo-ui-tabOptionWidget.oo-ui-optionWidget-selected {
background-color: var(--body-dark);
color: var(--ooui-text);
}
.oo-ui-tabSelectWidget-framed .oo-ui-tabOptionWidget.oo-ui-optionWidget-selected .oo-ui-labelElement-label {
border-bottom-color: var(--body-border);
}
.oo-ui-tabSelectWidget-framed .oo-ui-tabOptionWidget.oo-ui-widget-enabled:hover,
.oo-ui-tabSelectWidget-framed .oo-ui-tabOptionWidget.oo-ui-widget-enabled:active {
background-color: var(--body-light);
color: var(--ooui-text);
}
.oo-ui-tabSelectWidget-framed .oo-ui-tabOptionWidget.oo-ui-widget-enabled.oo-ui-optionWidget-selected:hover {
background-color: var(--body-dark);
}
.oo-ui-tabSelectWidget-frameless .oo-ui-tabOptionWidget.oo-ui-optionWidget-selected {
color: var(--ooui-progressive);
box-shadow: inset 0 -2px 0 0 var(--ooui-progressive);
}
.oo-ui-tabSelectWidget-frameless .oo-ui-tabOptionWidget.oo-ui-optionWidget-selected:hover,
.oo-ui-tabSelectWidget-frameless .oo-ui-tabOptionWidget.oo-ui-optionWidget-selected:focus {
color: var(--ooui-progressive--hover);
box-shadow: inset 0 -2px 0 0 var(--ooui-progressive--hover);
}
.oo-ui-tabSelectWidget-framed {
background: none;
border-bottom: 1px solid var(--ooui-interface-border);
}
.oo-ui-tabSelectWidget-frameless {
box-shadow: inset 0 -1px 0 0 var(--ooui-interface-border);
}
.oo-ui-tabSelectWidget-mobile {
}
.oo-ui-tabSelectWidget-mobile.oo-ui-tabSelectWidget-framed:after {
background: var(--mobile-navbox-linear-gradient);
}
.oo-ui-tabSelectWidget-mobile.oo-ui-tabSelectWidget-frameless:after {
background: var(--mobile-navbox-linear-gradient);
}
.oo-ui-tagItemWidget {
border-color: var(--ooui-normal-border);
}
.oo-ui-tagItemWidget.oo-ui-widget-enabled {
color: var(--ooui-text);
}
.oo-ui-tagItemWidget.oo-ui-widget-enabled:hover {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
}
.oo-ui-tagItemWidget.oo-ui-widget-enabled:not( .oo-ui-tagItemWidget-fixed ) {
background-color: var(--ooui-normal);
}
.oo-ui-tagItemWidget.oo-ui-widget-enabled .oo-ui-buttonElement-button:hover {
background-color: var(--ooui-normal--hover);
}
.oo-ui-tagMultiselectWidget.oo-ui-widget-enabled {
background-color: var(--ooui-interface);
}
.oo-ui-tagMultiselectWidget.oo-ui-widget-enabled.oo-ui-tagMultiselectWidget-outlined {
background-color: var(--ooui-normal);
}
.oo-ui-tagMultiselectWidget.oo-ui-widget-enabled.oo-ui-tagMultiselectWidget-outlined .oo-ui-tagItemWidget.oo-ui-widget-enabled {
background-color: var(--ooui-interface);
}
.oo-ui-textInputWidget .oo-ui-inputWidget-input {
background-color: var(--ooui-input);
color: var(--ooui-text);
border-color: var(--ooui-input-border);
}
.oo-ui-textInputWidget.oo-ui-widget-enabled .oo-ui-inputWidget-input::placeholder {
color: var(--subtle-color);
}
.oo-ui-textInputWidget.oo-ui-widget-enabled .oo-ui-inputWidget-input:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-textInputWidget.oo-ui-widget-enabled .oo-ui-inputWidget-input[readonly]:not(.oo-ui-pendingElement-pending) {
background-color: var(--ooui-disabled);
color: var(--ooui-disabled-text);
}
.oo-ui-textInputWidget.oo-ui-widget-enabled:hover .oo-ui-inputWidget-input {
border-color: var(--ooui-input-border--hover);
}
.oo-ui-textInputWidget.oo-ui-widget-enabled:hover .oo-ui-inputWidget-input:focus {
border-color: var(--ooui-accent);
}
@media screen and (min-width: 0) {
.oo-ui-textInputWidget.oo-ui-widget-enabled textarea.oo-ui-inputWidget-input:focus {
outline: 1px solid var(--ooui-accent);
}
}
.oo-ui-textInputWidget.oo-ui-widget-disabled .oo-ui-inputWidget-input {
background-color: var(--ooui-disabled);
color: var(--ooui-disabled-text);
text-shadow: none;
border-color: var(--ooui-disabled-border);
}
.oo-ui-toggleSwitchWidget {
background-color: var(--ooui-input);
border-color: var(--ooui-input-border);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled .oo-ui-toggleSwitchWidget-grip {
background-color: var(--ooui-input);
border-color: var(--ooui-input-border);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:hover {
background-color: var(--ooui-input);
border-color: var(--ooui-accent);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:hover .oo-ui-toggleSwitchWidget-grip {
background-color: var(--ooui-input);
border-color: var(--ooui-accent);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:active,
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:active:hover,
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:active:focus {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
box-shadow: inset 0 0 0 1px var(--ooui-progressive--hover);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:active .oo-ui-toggleSwitchWidget-grip,
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:active:hover .oo-ui-toggleSwitchWidget-grip,
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:active:focus .oo-ui-toggleSwitchWidget-grip {
background-color: var(--ooui-input);
border-color: var(--ooui-input);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:focus .oo-ui-toggleSwitchWidget-grip {
border-color: var(--ooui-accent);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled.oo-ui-toggleWidget-on {
background-color: var(--ooui-progressive);
border-color: var(--ooui-progressive);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled.oo-ui-toggleWidget-on .oo-ui-toggleSwitchWidget-grip {
background-color: var(--ooui-input);
border-color: var(--ooui-input);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled.oo-ui-toggleWidget-on:hover {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled.oo-ui-toggleWidget-on:active,
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled.oo-ui-toggleWidget-on:active:hover {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled.oo-ui-toggleWidget-on:focus {
border-color: var(--ooui-progressive);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled.oo-ui-toggleWidget-on:focus::before {
border-color: #fff;
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-disabled {
background-color: var(--ooui-disabled);
border-color: var(--ooui-disabled);
}
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled > .oo-ui-buttonElement-button {
color: var(--ooui-text);
}
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled > .oo-ui-buttonElement-button:hover {
color: var(--ooui-text);
}
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled > .oo-ui-buttonElement-button:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled.oo-ui-buttonElement-pressed > input.oo-ui-buttonElement-button,
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled > .oo-ui-buttonElement-button:active {
color: var(--ooui-text);
}
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button,
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button:hover {
color: var(--ooui-text);
}
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button:active,
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive.oo-ui-buttonElement-pressed > .oo-ui-buttonElement-button {
color: var(--ooui-text);
border-color: var(--ooui-text);
}
.oo-ui-buttonElement-frameless.oo-ui-widget-disabled > .oo-ui-buttonElement-button {
color: var(--ooui-disabled-text);
}
.oo-ui-buttonElement-framed.oo-ui-widget-disabled > .oo-ui-buttonElement-button {
background-color: var(--ooui-disabled);
border-color: var(--ooui-disabled-border);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled > .oo-ui-buttonElement-button {
background-color: var(--ooui-normal);
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled > .oo-ui-buttonElement-button:hover {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled > .oo-ui-buttonElement-button:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-buttonElement-active > .oo-ui-buttonElement-button {
background-color: var(--ooui-progressive--hover);
color: #fff;
border-color: var(--ooui-progressive--hover);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-buttonElement-active > .oo-ui-buttonElement-button:focus {
border-color: var(--ooui-progressive--hover);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled > .oo-ui-buttonElement-button:active,
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-buttonElement-pressed > .oo-ui-buttonElement-button {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive {
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button {
color: var(--ooui-text);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button:hover {
background-color: var(--ooui-normal--hover);
border-color: var(--ooui-progressive--hover);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-destructive > .oo-ui-buttonElement-button {
color: var(--ooui-text);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-destructive > .oo-ui-buttonElement-button:hover {
background-color: var(--ooui-normal--hover);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button {
background-color: var(--ooui-progressive);
border-color: var(--ooui-progressive);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button:hover {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent), inset 0 0 0 2px #fff;
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button:active,
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive.oo-ui-buttonElement-pressed > .oo-ui-buttonElement-button,
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive.oo-ui-buttonElement-active > .oo-ui-buttonElement-button,
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive.oo-ui-popupToolGroup-active > .oo-ui-buttonElement-button {
color: #fff;
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
}
.oo-ui-pendingElement-pending {
background-image: var(--ooui-pending-background-image);
background-size: 200%;
animation: oo-ui-pendingElement-stripes 6s linear infinite;
}
@keyframes oo-ui-pendingElement-stripes {
100% {
background-position: 100%;
}
}
.oo-ui-messageDialog-content > .oo-ui-window-foot {
outline-color: var(--ooui-interface-border);
}
.oo-ui-messageDialog-message {
color: var(--ooui-text);
}
.oo-ui-messageDialog-actions-horizontal .oo-ui-actionWidget {
border-right-color: var(--ooui-interface-border);
}
.oo-ui-messageDialog-actions-vertical .oo-ui-actionWidget {
border-bottom-color: var(--ooui-interface-border);
}
.oo-ui-processDialog-content .oo-ui-window-head,
.oo-ui-processDialog-content .oo-ui-window-foot {
outline-color: var(--ooui-interface-border);
}
.oo-ui-processDialog .oo-ui-actionWidget > .oo-ui-buttonElement-button {
border-top-color: transparent;
border-bottom-color: transparent;
}
.oo-ui-processDialog .oo-ui-actionWidget > .oo-ui-buttonElement-button:hover,
.oo-ui-processDialog .oo-ui-actionWidget > .oo-ui-buttonElement-button:active {
border-top-color: transparent;
border-bottom-color: transparent;
}
.oo-ui-processDialog .oo-ui-actionWidget:not( .oo-ui-flaggedElement-progressive ):not( .oo-ui-flaggedElement-destructive ) > .oo-ui-buttonElement-button:hover,
.oo-ui-processDialog .oo-ui-actionWidget:not( .oo-ui-flaggedElement-progressive ):not( .oo-ui-flaggedElement-destructive ) > .oo-ui-buttonElement-button:active {
border-right-color: var(--ooui-interface-border);
border-left-color: transparent;
}
.oo-ui-processDialog .oo-ui-actionWidget:not( .oo-ui-flaggedElement-progressive ):not( .oo-ui-flaggedElement-destructive ) > .oo-ui-buttonElement-button:focus {
border-color: var(--ooui-accent);
}
.oo-ui-processDialog-actions-safe .oo-ui-actionWidget > .oo-ui-buttonElement-button,
.oo-ui-processDialog-actions-other .oo-ui-actionWidget > .oo-ui-buttonElement-button {
border-right-color: var(--ooui-normal-border);
border-left-color: transparent;
}
.oo-ui-processDialog-actions-safe .oo-ui-widget-enabled.oo-ui-iconElement:not( .oo-ui-labelElement ) > .oo-ui-buttonElement-button:hover {
background-color: var(--ooui-normal--hover);
border-right-color: var(--ooui-interface-border);
}
.oo-ui-windowManager-modal > .oo-ui-dialog {
background-color: var(--ooui-window-background);
}
.oo-ui-windowManager-modal > .oo-ui-dialog > .oo-ui-window-frame {
background-color: var(--ooui-interface);
}
.oo-ui-windowManager-modal.oo-ui-windowManager-floating > .oo-ui-dialog > .oo-ui-window-frame {
border-color: var(--ooui-interface-border);
}
.oo-ui-window {
color: var(--ooui-text);
}
.oo-ui-toolbar-bar {
background-color: var(--ooui-interface);
color: var(--ooui-text);
}
.oo-ui-toolbar-position-top > .oo-ui-toolbar-bar {
border-bottom-color: var(--body-mid);
}
.oo-ui-toolbar-bar .oo-ui-bookletLayout > .oo-ui-menuLayout-menu {
border-right-color: var(--body-mid);
}
.oo-ui-tool.oo-ui-widget-enabled > .oo-ui-tool-link:hover {
background-color: var(--ooui-normal--hover);
}
.oo-ui-tool.oo-ui-widget-enabled > .oo-ui-tool-link:focus {
outline: 1px solid var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-tool.oo-ui-widget-enabled > .oo-ui-tool-link:active,
.oo-ui-tool.oo-ui-widget-enabled.oo-ui-tool-active > .oo-ui-tool-link,
.oo-ui-tool.oo-ui-widget-enabled.oo-ui-popupToolGroup-active > .oo-ui-tool-link {
background-color: var(--ooui-normal--hover);
color: var(--ooui-accent);
box-shadow: none;
}
.oo-ui-tool.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive > .oo-ui-tool-link {
background-color: var(--ooui-progressive);
}
.oo-ui-tool.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive > .oo-ui-tool-link:hover {
background-color: var(--ooui-progressive--hover);
}
.oo-ui-tool.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive > .oo-ui-tool-link:focus {
box-shadow: inset 0 0 0 1px var(--ooui-accent), inset 0 0 0 2px #fff;
}
.oo-ui-tool.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive > .oo-ui-tool-link:active,
.oo-ui-tool.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive.oo-ui-tool-active > .oo-ui-tool-link {
background-color: var(--ooui-progressive--hover);
}
.oo-ui-listToolGroup-tools .oo-ui-tool.oo-ui-widget-enabled {
background-color: var(--ooui-normal);
}
.oo-ui-listToolGroup-tools .oo-ui-tool.oo-ui-widget-enabled:hover {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
}
.oo-ui-listToolGroup-tools .oo-ui-tool-active.oo-ui-widget-enabled .oo-ui-tool-link .oo-ui-tool-title {
color: var(--ooui-progressive);
}
.oo-ui-menuToolGroup {
border-left-color: var(--body-mid);
border-right-color: var(--body-mid);
}
.oo-ui-popupToolGroup-tools {
background-color: var(--ooui-interface);
border-color: var(--body-mid);
}
.oo-ui-popupToolGroup.oo-ui-widget-enabled > .oo-ui-popupToolGroup-handle:hover {
background-color: var(--ooui-normal--hover);
}
.oo-ui-popupToolGroup.oo-ui-widget-enabled > .oo-ui-popupToolGroup-handle:focus {
outline: 1px solid var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-toolbar-actions .oo-ui-popupToolGroup.oo-ui-widget-enabled > .oo-ui-popupToolGroup-handle:hover {
border-right-color: var(--ooui-normal--hover);
}
.oo-ui-popupToolGroup-tools .oo-ui-tool.oo-ui-widget-enabled .oo-ui-tool-link:focus {
box-shadow: inset 0 0 0 2px var(--ooui-accent);
}
.oo-ui-popupToolGroup-tools .oo-ui-tool-active.oo-ui-widget-enabled .oo-ui-tool-link .oo-ui-tool-title {
color: var(--ooui-progressive);
}
.oo-ui-popupToolGroup.oo-ui-popupToolGroup-active > .oo-ui-popupToolGroup-handle {
background-color: var(--ooui-normal);
color: var(--ooui-accent);
}
.oo-ui-popupToolGroup.oo-ui-popupToolGroup-active > .oo-ui-popupToolGroup-handle:hover {
background-color: var(--ooui-normal--hover);
color: var(--ooui-accent);
}
.oo-ui-bookletLayout-outlinePanel > .oo-ui-outlineControlsWidget {
border-top-color: var(--ooui-interface-border);
}
.oo-ui-bookletLayout > .oo-ui-menuLayout-menu {
border-right-color: var(--ooui-interface-border);
}
.oo-ui-fieldLayout-disabled > .oo-ui-fieldLayout-body > .oo-ui-fieldLayout-header > .oo-ui-labelElement-label {
color: var(--ooui-disabled-text);
}
.oo-ui-panelLayout-framed {
border-color: var(--sidebar);
}
.oo-ui-icon-settings {
background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' width='20' height='20' viewBox='0 0 20 20'%3E%3Ctitle%3Esettings%3C/title%3E%3Cg transform='translate(10 10)'%3E%3Cpath id='a' d='M1.5-10h-3l-1 6.5h5m0 7h-5l1 6.5h3'/%3E%3Cuse xlink:href='%23a' transform='rotate(45)'/%3E%3Cuse xlink:href='%23a' transform='rotate(90)'/%3E%3Cuse xlink:href='%23a' transform='rotate(135)'/%3E%3C/g%3E%3Cpath d='M10 2.5a7.5 7.5 0 0 0 0 15 7.5 7.5 0 0 0 0-15v4a3.5 3.5 0 0 1 0 7 3.5 3.5 0 0 1 0-7'/%3E%3C/svg%3E");
}
.oo-ui-icon-clear {
background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 20 20'%3E%3Ctitle%3Eclear%3C/title%3E%3Cpath d='M10 0a10 10 0 1 0 10 10A10 10 0 0 0 10 0zm5.66 14.24-1.41 1.41L10 11.41l-4.24 4.25-1.42-1.42L8.59 10 4.34 5.76l1.42-1.42L10 8.59l4.24-4.24 1.41 1.41L11.41 10z'/%3E%3C/svg%3E");
}
.mw-widget-dateInputWidget-handle {
background-color: var(--ooui-input);
color: var(--ooui-text);
border-color: var(--ooui-input-border);
}
.mw-widget-dateInputWidget-calendar {
background-color: var(--ooui-interface);
}
.mw-widget-dateInputWidget.oo-ui-widget-enabled .mw-widget-dateInputWidget-handle:hover {
border-color: var(--ooui-input-border--hover);
}
.mw-widget-calendarWidget {
border-color: var(--ooui-interface-border);
}
.mw-widget-calendarWidget:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.mw-widget-calendarWidget-day,
.mw-widget-calendarWidget-day-heading {
color: var(--ooui-text);
}
.mw-widget-calendarWidget-day-additional {
color: var(--ooui-text);
opacity: 0.67;
}
.mw-widget-calendarWidget-day-today {
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.mw-widget-calendarWidget-item:hover {
background-color: var(--ooui-progressive);
}
.mw-widget-calendarWidget-item-selected {
background-color: var(--ooui-progressive--hover);
}
.mw-widgets-datetime-calendarWidget {
background-color: var(--ooui-interface);
border-color: var(--ooui-interface-border);
}
.mw-widgets-datetime-calendarWidget:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent), 0 2px 2px 0 rgba(0, 0, 0, 0.25);
}
.mw-widgets-datetime-calendarWidget-grid .mw-widgets-datetime-calendarWidget-cell.mw-widgets-datetime-calendarWidget-extra .oo-ui-buttonElement-button .oo-ui-labelElement-label {
color: var(--subtle-color);
}
.mw-widgets-datetime-calendarWidget-grid .mw-widgets-datetime-calendarWidget-cell.mw-widgets-datetime-calendarWidget-selected .oo-ui-buttonElement-button {
background-color: var(--ooui-progressive--hover);
}
.mw-widgets-datetime-dateTimeInputWidget-handle {
background-color: var(--ooui-input);
color: var(--ooui-text);
border-color: var(--ooui-input-border);
}
.mw-widgets-datetime-dateTimeInputWidget.oo-ui-widget-enabled.mw-widgets-datetime-dateTimeInputWidget-handle:hover {
border-color: var(--ooui-input-border--hover);
}
.mw-widgets-datetime-dateTimeInputWidget.oo-ui-widget-enabled:hover input,
.mw-widgets-datetime-dateTimeInputWidget.oo-ui-widget-enabled:hover textarea {
border-color: var(--ooui-input-border--hover);
}
.mw-widgets-datetime-dateTimeInputWidget.oo-ui-widget-enabled .mw-widgets-datetime-dateTimeInputWidget-editField:hover {
background-color: var(--ooui-normal);
}
.ve-activated .ve-init-mw-desktopArticleTarget-originalContent #catlinks:hover {
background: var(--ooui-normal--hover);
}
.ve-ui-overlay {
font-family: inherit;
}
.oo-ui-toolbar-position-top .ve-ui-toolbarDialog-position-above {
border-top-color: var(--body-mid);
}
.ve-ce-branchNode-blockSlug,
.ve-ce-branchNode-newSlug {
outline-color: var(--body-border);
background-color: var(--ooui-interface);
}
.ve-ui-specialCharacterPage h3 {
color: var(--byline-color);
}
.ve-ui-specialCharacterPage-character {
border-color: var(--body-mid);
}
.ve-ui-specialCharacterPage-character:hover {
border-color: var(--body-dark);
}
.ve-ce-linkAnnotation.ve-ce-annotation-active {
box-shadow: 0 0 0 1px var(--body-mid);
background: none;
}
.ve-ui-desktopContext .ve-ui-linkContextItem .ve-ui-linkContextItem-label {
border-color: var(--body-border);
}
.ve-ui-mwHelpPopupTool-version-label,
.ve-ui-mwHelpPopupTool-version-link,
.ve-ui-mwHelpPopupTool-version-date {
color: var(--byline-color);
}
.ve-ce-tableCellableNode {
border-color: var(--body-mid);
}
.ve-ce-mwReferencesListNode-muted {
color: var(--byline-color);
}
.ve-ui-mwTemplatePage-description,
.ve-ui-mwParameterPage-label,
.ve-ui-mwParameterPage-description-required,
.ve-ui-mwParameterPage-description-deprecated {
color: var(--byline-color);
}
.mw-widget-titleWidget-menu .mw-widget-titleOptionWidget-description {
color: var(--byline-color);
}
.ve-ui-mwGalleryDialog-menuLayout > .oo-ui-menuLayout-menu,
.ve-ui-mwGalleryDialog-innerMenuLayout > .oo-ui-menuLayout-menu,
.ve-ui-mwGalleryDialog .ve-ui-mwGalleryDialog-image-container,
.ve-ui-targetWidget {
border-color: var(--body-border);
}
.ve-ui-targetWidget:not(.oo-ui-pendingElement-pending) {
background-color: var(--body-main);
}
.ve-ui-mwSaveDialog {
color: var(--ooui-text);
}
.ve-ui-mwSaveDialog-options {
background-color: var(--ooui-interface);
border-color: var(--body-border);
}
.ve-ui-mwSaveDialog-summary {
background-color: var(--ooui-input);
}
.ve-ui-mwSaveDialog-editSummary-count {
border-color: var(--body-border);
}
.ve-ui-mwSaveDialog-license {
color: var(--byline-color);
}
.ve-ui-mwReferenceContextItem-muted {
color: var(--byline-color);
}
.ve-ui-mwNoticesPopupTool-items > div:not(:first-child),
.ve-ui-mwHelpPopupTool-item:not(:first-child) {
border-color: var(--body-border);
}
.ve-ui-mwTransclusionOutlineControlsWidget {
background-color: var(--ooui-interface);
border-top-color: var(--body-border);
}
.ve-ui-mwTransclusionOutlineTemplateWidget-sticky {
background-color: var(--ooui-interface);
}
.ve-ui-mwTransclusionOutlineTemplateWidget .ve-ui-mwTransclusionOutlineParameterWidget.oo-ui-optionWidget-highlighted {
color: var(--ooui-text);
}
.ve-ui-mwTransclusionOutlineTemplateWidget-no-template-parameters {
color: var(--subtle-color);
}
.ve-ui-mwParameterPage-undocumentedLabel {
color: var(--subtle-color);
}
.ve-ui-mwTwoPaneTransclusionDialogLayout > .oo-ui-menuLayout-menu {
border-right: var(--body-border);
}
.ve-ui-mwParameterPage-doc-required,
.ve-ui-mwParameterPage-doc-deprecated,
.ve-ui-mwParameterPage-inlineDescription .ve-ui-mwParameterPage-doc-example {
color: var(--byline-color);
}
.ve-ui-expandableContent-toggle {
background-color: var(--ooui-interface);
}
.ve-ui-expandableContent-fade {
background: linear-gradient(to right, rgba(255, 255, 255, 0) 0, var(--ooui-interface) 90%);
}
.ve-ui-commandHelpDialog-shortcut > kbd,
.ve-ui-commandHelpDialog-sequence > kbd {
background-color: var(--keypress-background);
color: var(--keypress-color);
border-color: var(--keypress-border);
box-shadow: none;
text-shadow: none;
}
.ve-init-mw-desktopArticleTarget-toolbarPlaceholder-floating .ve-init-mw-desktopArticleTarget-toolbarPlaceholder-bar {
background: var(--ooui-interface);
}
.ve-init-mw-desktopArticleTarget-toolbarPlaceholder-bar {
border-bottom-color: var(--body-mid);
}
figure[typeof~='mw:File/Thumb'],
figure[typeof~='mw:File/Frame'],
figure[typeof~='mw:Image/Thumb'],
figure[typeof~='mw:Video/Thumb'],
figure[typeof~='mw:Image/Frame'],
figure[typeof~='mw:Video/Frame'] {
border: none;
background-color: var(--thumb-bg);
}
figure[typeof~='mw:File/Thumb'] > a:first-child > *:first-child:not( .mw-broken-media ),
figure[typeof~='mw:File/Frame'] > a:first-child > *:first-child:not( .mw-broken-media ),
figure[typeof~='mw:Image/Thumb'] > a:first-child > *:first-child:not( .mw-broken-media ),
figure[typeof~='mw:Video/Thumb'] > a:first-child > *:first-child:not( .mw-broken-media ),
figure[typeof~='mw:Image/Frame'] > a:first-child > *:first-child:not( .mw-broken-media ),
figure[typeof~='mw:Video/Frame'] > a:first-child > *:first-child:not( .mw-broken-media ) {
border: none;
background: var(--thumb-bg);
}
figure[typeof~='mw:File/Thumb'] > figcaption,
figure[typeof~='mw:File/Frame'] > figcaption,
figure[typeof~='mw:Image/Thumb'] > figcaption,
figure[typeof~='mw:Video/Thumb'] > figcaption,
figure[typeof~='mw:Image/Frame'] > figcaption,
figure[typeof~='mw:Video/Frame'] > figcaption {
border: none;
background-color: var(--thumb-caption-bg);
padding: 4px 6px;
}
:root {
--keypress-background: #eee;
--keypress-border: #ccc;
--keypress-color: #333;
}
.keypress {
background: var(--keypress-background);
color: var(--keypress-color);
font-family: inherit;
border: 1px solid var(--keypress-border);
border-radius: 2px;
font-size: 0.9em;
margin: 0 0.1em;
padding: 0.1em 0.4em;
white-space: nowrap;
}
:root {
--documentation-background: #f9fafa;
--documentation-link-color: #e4eaee;
--documentation-headers-color: #fff;
--documentation-header-background: #949eaa;
--documentation-subheader-background: #808c9a;
--documentation-border: #e4eaee;
}
.documentation {
background: var(--documentation-background);
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
margin: 1em 0;
}
.documentation pre,
.documentation code {
background-color: var(--documentation-background);
border-color: var(--documentation-border);
}
.documentation h2,
.documentation hr {
border-color: var(--documentation-border);
}
.documentation-header {
color: var(--documentation-headers-color);
background: var(--documentation-header-background);
font-weight: bold;
padding: 1em 1.5em;
}
.documentation-title {
font-size: 1.25em;
}
.documentation-subheader {
color: var(--documentation-headers-color);
background: var(--documentation-subheader-background);
padding: 0.5em 1.5em;
}
.documentation-subheader a,
.documentation-subheader a:visited,
.documentation-subheader a:active {
color: var(--documentation-link-color);
}
.documentation-documentation,
.documentation-links {
font-size: 0.85em;
}
.documentation-content {
padding: 1em 1.5em;
}
.mw-templatedata-doc-params dl:not(:empty) {
column-count: 3;
border-top: 1px solid var(--body-border);
margin-bottom: 0.5em;
}
.mw-templatedata-doc-params dt::after {
content: ":";
}
.mw-templatedata-doc-params dd,
.mw-templatedata-doc-params dt {
margin: 0.1em 2em;
min-width: auto;
}
.mw-templatedata-doc-muted {
color: var(--subtle-color);
font-style: italic;
}
:root {
--infobox-text-color: var(--text-color);
}
ol.references,
.reflist {
font-size: 90%;
}
.reflist {
list-style-type: decimal;
}
.reflist .references {
font-size: 100%;
list-style-type: inherit;
}
.reflist-lower-alpha {
list-style-type: lower-alpha;
}
ol.references li:target,
sup.reference:target {
background-color: var(--body-light);
}
.hideQuotes .refhide {
display: none;
}
:root {
--messagebox-obsolete-background: #cfcfcf;
--messagebox-obsolete-border: #464646;
--messagebox-obsolete-color: var(--text-color);
--messagebox-obsolete-link-color: #6c6c6c;
--messagebox-info-background: #ebebeb;
--messagebox-info-border: #898989;
--messagebox-info-color: var(--text-color);
--messagebox-info-link-color: #6c6c6c;
--messagebox-action-background: #c7e8fa;
--messagebox-action-border: #0b5884;
--messagebox-action-color: var(--text-color);
--messagebox-action-link-color: #03436b;
--messagebox-warn-background: #dfc0ba;
--messagebox-warn-border: #861c10;
--messagebox-warn-color: var(--text-color);
--messagebox-warn-link-color: #8e221a;
--messagebox-safe-background: #d8f0d3;
--messagebox-safe-border: #1b8408;
--messagebox-safe-color: var(--text-color);
--messagebox-safe-link-color: #1b8408;
--messagebox-disambig-background: #ebebeb;
--messagebox-disambig-border: #898989;
--messagebox-disambig-color: var(--text-color);
--messagebox-disambig-link-color: #6c6c6c;
--messagebox-discord-background: #5865f2;
--messagebox-discord-border: #4c57d0;
--messagebox-discord-link-color: #d2e5fc;
}
.mw-message-box,
.mw-message-box-error,
.mw-message-box-warning,
.mw-message-box-success,
.usermessage {
color: var(--text-color);
}
.messagebox {
width: 65%;
margin: 0.5em auto;
border-left: 15px solid;
border-color: var(--body-dark);
background-color: var(--body-light);
box-sizing: border-box;
}
.messagebox.obsolete {
background-color: var(--messagebox-obsolete-background);
border-color: var(--messagebox-obsolete-border);
color: var(--messagebox-obsolete-color);
}
.messagebox.obsolete a,
.messagebox.obsolete a:visited,
.messagebox.obsolete a:active {
color: var(--messagebox-obsolete-link-color);
}
.messagebox.info {
background-color: var(--messagebox-info-background);
border-color: var(--messagebox-info-border);
color: var(--messagebox-info-color);
}
.messagebox.info a,
.messagebox.info a:visited,
.messagebox.info a:active {
color: var(--messagebox-info-link-color);
}
.messagebox.action {
background-color: var(--messagebox-action-background);
border-color: var(--messagebox-action-border);
color: var(--messagebox-action-color);
}
.messagebox.action a,
.messagebox.action a:visited,
.messagebox.action a:active {
color: var(--messagebox-action-link-color);
}
.messagebox.warn {
background-color: var(--messagebox-warn-background);
border-color: var(--messagebox-warn-border);
color: var(--messagebox-warn-color);
}
.messagebox.warn a,
.messagebox.warn a:visited,
.messagebox.warn a:active {
color: var(--messagebox-warn-link-color);
}
.messagebox.safe {
background-color: var(--messagebox-safe-background);
border-color: var(--messagebox-safe-border);
color: var(--messagebox-safe-color);
}
.messagebox.safe a,
.messagebox.safe a:visited,
.messagebox.safe a:active {
color: var(--messagebox-safe-link-color);
}
.messagebox.disambig {
background-color: var(--messagebox-disambig-background);
border-color: var(--messagebox-disambig-border);
color: var(--messagebox-disambig-color);
}
.messagebox.disambig a,
.messagebox.disambig a:visited,
.messagebox.disambig a:active {
color: var(--messagebox-disambig-link-color);
}
.messagebox.discord {
background-color: var(--messagebox-discord-background);
border-color: var(--messagebox-discord-border);
color: #fff;
}
.messagebox.discord a,
.messagebox.discord a:visited,
.messagebox.discord a:active {
color: var(--messagebox-discord-link-color);
}
.messagebox.discord a.external,
.messagebox.discord a:visited.external,
.messagebox.discord a:active.external {
font-style: italic;
}
.messagebox.stub {
width: 40%;
}
.messagebox.hasdialogue {
padding: 0 10px;
width: auto;
}
:root {
--byline-arrow-filter: invert(29%) sepia(0%) saturate(376%) hue-rotate(172deg) brightness(87%) contrast(80%);
--tile-border-color: #cabe9b;
--tile-background-color: #f9f3eb;
--tile-link-button-color: #f5e9db;
--tile-link-button-highlight-color: #dfccb0;
--tile-dark-color: #fff;
--tile-dark-bg: #5d6773;
--tile-dark-link-color: #ccc;
--tile-dark-byline-color: rgba(255, 255, 255, 0.7);
--tile-dark-header-color: #fff;
}
.tile {
background: var(--tile-background-color);
border: 1px solid var(--tile-border-color);
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
padding: 1.5em 2em 1em;
max-width: 40em;
}
.tile h2 {
font-size: 1.4em;
font-weight: bold;
border: none;
margin: 0 0 0.4em;
}
.tile .byline + h2 {
margin-top: -0.5em;
}
.tile.dark {
color: var(--tile-dark-color);
background: var(--tile-dark-bg);
border: none;
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.3);
}
.tile.dark h2 {
color: var(--tile-dark-header-color);
}
.tile.dark a {
color: var(--tile-dark-link-color);
}
.tile.dark .byline {
color: var(--tile-dark-byline-color);
}
.byline {
font-size: 0.9em;
color: var(--byline-color);
}
.byline a {
color: var(--byline-color);
}
.tile-row {
display: flex;
flex-flow: row wrap;
margin-bottom: 1em;
}
.tile-halves {
display: flex;
flex-flow: row wrap;
border: 1px solid var(--tile-border-color);
background: var(--tile-background-color);
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
}
.tile-halves h2 {
font-size: 1.4em;
font-weight: bold;
border: none;
margin: 0 0 0.4em;
}
.tile-halves .byline + h2 {
margin-top: -0.5em;
}
.tile-top {
width: 100%;
padding: 1.3rem 1.5rem 0.6rem;
}
.tile-top.tile-image {
display: flex;
align-items: center;
background-color: var(--byline-color);
overflow: hidden;
padding: 0;
height: 13vw;
max-height: 12em;
transition: 0.4s ease-out;
}
.tile-halves:hover .tile-top.tile-image img {
transform: scale(1.1);
transition: 0.5s ease-out;
}
.tile-top.tile-image a {
width: 100%;
}
.tile-top.tile-image img {
width: 100%;
object-fit: cover;
max-height: 200px;
transition: 0.4s ease-out;
}
.tile-bottom {
background: var(--tile-background-color);
border-top: 1px solid var(--tile-border-color);
width: 100%;
padding: 1rem 1.5rem 0.6rem;
}
.tile-bottom.link-button {
align-self: flex-end;
padding: 0;
}
.tile-bottom.link-button a {
display: block;
text-align: center;
padding: 0.75em 1.5em 0.8em;
text-decoration: none;
}
.tile-bottom.read-more {
background: var(--tile-link-button-color);
transition: 0.3s ease-out;
}
.tile-bottom.read-more a {
color: var(--byline-color);
font-weight: bold;
text-align: right;
}
.tile-bottom.read-more:hover {
background: var(--tile-link-button-highlight-color);
}
.tile-bottom.read-more:hover .arrow {
transform: translateX(50%);
}
.tile-bottom.read-more .arrow {
filter: var(--byline-arrow-filter);
margin-left: 0.4em;
transition: 0.3s ease-out;
}
body.page-Main_Page.action-view .catlinks,
body.page-Main_Page.action-view #contentSub,
body.page-Main_Page.action-view #firstHeading,
body.page-Main_Page.action-view #siteNotice {
display: none;
}
body.page-Main_Page .mw-parser-output {
max-width: 75em;
margin: 0 auto;
}
body.page-Main_Page.action-view .catlinks,
body.page-Main_Page.action-view #contentSub,
body.page-Main_Page.action-view #siteNotice {
display: none;
}
.mainpage-header {
display: flex;
margin: 2.6em 1.75em 1.5em;
}
.mainpage-header .header-intro {
flex: 2;
}
.mainpage-header .header-intro h1 {
font-size: 2.5em;
font-weight: bold;
border: none;
margin: 0 0 0.15em;
}
.mainpage-header .header-intro p {
font-size: 1.1em;
line-height: 1.7em;
}
.mainpage-header .header-stats {
flex: 1;
display: flex;
justify-content: center;
align-items: center;
margin-top: -1em;
}
.mainpage-body {
display: grid;
grid-template-areas: "event event event" "update update update" "content content content" "left left right";
gap: 0.9rem;
grid-template-columns: repeat(3, 1fr);
}
.mainpage-body h2 a {
color: var(--text-color);
}
.mainpage-body .tile {
padding-left: 1.75em;
padding-right: 1.75em;
max-width: 100%;
}
.mainpage-body .tile-row {
width: 100%;
margin-bottom: 0;
}
.mainpage-body .tile-row {
display: grid;
gap: 0.9rem;
}
.mainpage-left {
grid-area: left;
flex: 2;
display: flex;
flex-flow: column wrap;
}
.mainpage-left > * {
margin: 0 0 0.9rem;
}
.mainpage-right {
grid-area: right;
flex: 1;
display: flex;
flex-flow: column wrap;
}
.mainpage-right > * {
margin: 0 0 0.9rem;
}
.arrow {
background: url('filepath://White-chevron.svg') no-repeat;
display: inline-block;
height: 0.7rem;
width: 0.45rem;
vertical-align: middle;
}
.arrow.dark {
filter: invert(80%);
}
.mainpage-contents {
grid-area: content;
grid-template-columns: repeat(6, 1fr);
}
.mainpage-contents .tile-halves {
flex: 1;
}
.mainpage-contents .tile-top {
height: 4.5rem;
position: relative;
}
.mainpage-contents h2 {
margin: 0;
padding: 0;
}
.mainpage-contents .tile-bottom.link-button a {
padding: 0.75em 0.2em;
}
.popular-pages ul {
display: grid;
grid-template-columns: repeat(3, 1fr);
grid-gap: 0.6em;
margin: 1em 0 0.7em 0;
}
.mp-popular-page-light {
display: flex;
align-items: center;
background-color: var(--button-background);
transition: 100ms;
}
.mp-popular-page-light a {
flex: 1;
display: block;
color: #fff;
font-weight: bold;
text-align: center;
text-decoration: none;
padding: 0.7em 1em;
}
.mp-popular-page-light:hover {
filter: brightness(115%);
transition: 100ms;
}
.mainpage-discord {
border: none;
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.3);
}
.mainpage-discord .tile-top {
display: flex;
align-items: center;
background: #5865f2;
padding: 1em 1.75em;
}
.mainpage-discord .tile-top a {
flex: 1;
position: relative;
text-decoration: none;
}
.mainpage-discord .tile-top a:hover .arrow {
transform: translateX(50%);
}
.mainpage-discord .tile-bottom {
background: #525ee0;
border: none;
padding: 1em 1.75em;
}
.mainpage-discord .tile-bottom p {
color: #fff;
font-weight: bold;
font-size: 0.9em;
text-align: center;
text-transform: uppercase;
letter-spacing: 0.03em;
margin: 0;
}
.mainpage-discord .partner-icon {
margin-right: 0.75em;
}
.mainpage-discord .server-name {
color: #fff;
font-weight: bold;
font-size: 1.25em;
margin: 0.5em 0 -0.15em;
}
.mainpage-discord .server-tagline {
color: rgba(255, 255, 255, 0.9);
margin-bottom: 0.5em;
}
.mainpage-discord .arrow {
position: absolute;
top: calc(50% - .5em);
right: 0;
height: 1em;
width: 0.7em;
background-size: 0.7em 1em;
transition: 0.3s ease-out;
}
.mainpage-editing {
border: none;
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.3);
}
.mainpage-editing .tile-top {
background: #438ab5;
}
.mainpage-editing .tile-bottom {
background: #3980ab;
border: none;
padding: 0.8rem 1.5rem 0.4rem;
}
.mainpage-editing h2,
.mainpage-editing a {
color: #fff;
}
.mainpage-editing p {
color: rgba(255, 255, 255, 0.9);
}
.mainpage-editing ul {
list-style-image: url('filepath://Transparent-chevron.svg');
}
@media only screen and (max-width: 1200px) {
.mainpage-contents {
grid-template-columns: repeat(3, 1fr);
}
}
@media only screen and (max-width: 1000px) {
.mainpage-body {
grid-template-areas: "event event event" "update update update" "content content content" "left left left" "right right right";
}
.mainpage-recent-updates {
grid-template-columns: repeat(2, 1fr);
}
.mainpage-recent-updates .tile-halves:last-child {
display: none;
}
.mainpage-recent-updates .tile-halves:hover .tile-top img {
transform: scale(1.04);
}
.mainpage-recent-updates .tile-top {
height: 18vw;
min-height: 9em;
}
.mainpage-header .header-stats {
display: none;
}
.mainpage-left > *:last-child,
.mainpage-right > *:last-child {
margin-bottom: 0;
}
.popular-pages ul {
grid-template-columns: repeat(2, 1fr);
}
}
@media only screen and (max-width: 720px) {
.mainpage-recent-updates {
grid-template-columns: none;
}
.mainpage-recent-updates .tile-halves:last-child {
display: flex;
}
.mainpage-contents {
grid-template-columns: repeat(2, 1fr);
}
}
.mw-prefs-buttons {
background-color: var(--body-main);
border-top-color: var(--body-border);
box-shadow: none;
}
.mw-prefs-tabs-wrapper.oo-ui-panelLayout-framed,
.mw-prefs-tabs > .oo-ui-menuLayout-content > .oo-ui-indexLayout-stackLayout > .oo-ui-tabPanelLayout {
border-color: var(--body-border);
}
.mw-htmlform-ooui .mw-htmlform-matrix tbody tr:nth-child(even) td {
background-color: var(--body-light);
}
.mw-htmlform-ooui .mw-htmlform-matrix tbody tr:hover td {
background-color: var(--body-mid);
}
:root {
--rc-positive-color: #407813;
--rc-negative-color: #b41e0f;
}
.mw-plusminus-pos {
color: var(--rc-positive-color);
}
.mw-plusminus-neg {
color: var(--rc-negative-color);
}
.client-js .mw-recentchanges-toplinks:not(.mw-recentchanges-toplinks-collapsed) {
border-color: var(--body-border);
background-color: var(--body-light);
border-radius: 2px;
}
.mw-rcfilters-ui-filterTagMultiselectWidget-wrapper-content-title {
color: var(--text-color);
}
.mw-rcfilters-ui-filterTagMultiselectWidget-emptyFilters {
color: var(--byline-color);
}
.mw-rcfilters-ui-filterTagMultiselectWidget.oo-ui-widget-enabled .oo-ui-tagMultiselectWidget-handle {
background-color: var(--ooui-interface);
border-color: var(--ooui-interface-border);
}
.mw-rcfilters-ui-filterTagMultiselectWidget-views-select-widget.oo-ui-widget {
border-color: var(--ooui-interface-border);
}
.mw-rcfilters-collapsed .mw-rcfilters-ui-filterTagMultiselectWidget {
border-bottom-color: var(--ooui-interface-border);
}
.mw-rcfilters-ui-menuSelectWidget-footer {
background-color: var(--ooui-interface);
border-color: var(--ooui-interface-border);
}
.mw-rcfilters-ui-viewSwitchWidget label.oo-ui-labelWidget {
color: var(--byline-color);
}
.mw-rcfilters-ui-tagItemWidget-popup-content {
color: var(--ooui-text);
}
.mw-changeslist-legend,
.mw-rcfilters-ui-changesListWrapperWidget .mw-changeslist-legend {
background-color: var(--body-light);
border-color: var(--body-dark);
}
.mw-rcfilters-ui-changesListWrapperWidget-previousChangesIndicator {
border-color: var(--sidebar);
}
.client-js .mw-changeslist ul,
.client-js .mw-changeslist table.mw-enhanced-rc {
margin-left: 0;
}
.mw-rcfilters-ui-watchlistTopSectionWidget-separator {
border-color: var(--sidebar);
}
.mw-rcfilters-ui-itemMenuOptionWidget-header {
border-bottom-color: var(--ooui-interface);
background-color: var(--ooui-interface-border);
}
.mw-rcfilters-ui-itemMenuOptionWidget:not(:last-child):not(.mw-rcfilters-ui-itemMenuOptionWidget-identifier-talk) {
border-bottom-color: var(--ooui-normal-border);
}
.mw-rcfilters-ui-itemMenuOptionWidget-label-title,
.mw-rcfilters-ui-itemMenuOptionWidget-label-desc {
color: var(--text-color);
}
.mw-rcfilters-ui-filterMenuOptionWidget.oo-ui-flaggedElement-muted:not(.oo-ui-optionWidget-selected) {
background-color: var(--body-main);
}
.mw-rcfilters-ui-filterMenuOptionWidget.oo-ui-flaggedElement-muted .mw-rcfilters-ui-itemMenuOptionWidget-label-title,
.mw-rcfilters-ui-filterMenuOptionWidget.oo-ui-flaggedElement-muted .mw-rcfilters-ui-itemMenuOptionWidget-label-desc {
color: var(--subtle-color);
}
.mw-rcfilters-ui-filterMenuSectionOptionWidget {
background-color: var(--body-mid);
}
.mw-rcfilters-ui-filterMenuSectionOptionWidget-header-title.oo-ui-labelElement-label {
color: var(--ooui-text);
}
.mw-rcfilters-ui-filterMenuHeaderWidget-title {
color: var(--ooui-text);
}
.mw-rcfilters-ui-filterMenuHeaderWidget-header {
border-bottom-color: var(--ooui-interface-border);
background-color: var(--ooui-interface);
}
.mw-rcfilters-ui-itemMenuOptionWidget-view-namespaces {
border-top-color: var(--ooui-interface-border);
}
.mw-rcfilters-ui-datePopupWidget {
border-color: var(--ooui-interface-border);
}
.mw-rcfilters-ui-datePopupWidget .mw-rcfilters-ui-valuePickerWidget-title {
color: var(--byline-color);
}
.mw-rcfilters-ui-savedLinksListItemWidget-label {
color: var(--ooui-accent);
}
.client-js .mw-changeslist.mw-rcfilters-ui-changesListWrapperWidget-highlighted ul,
.client-js .mw-changeslist.mw-rcfilters-ui-changesListWrapperWidget-highlighted table.mw-enhanced-rc {
margin-left: 1.5em;
}
.page-Special_CreateAccount .mw-ui-container,
.page-Special_UserLogin .mw-ui-container {
max-width: 64rem;
margin: 0 auto;
}
.mw-number-text {
color: var(--byline-color);
}
.mw-body-content .mw-number-text h3 {
color: var(--text-color);
}
#mw-indicator-mw-helplink a {
background: none;
padding: 0;
display: flex;
align-items: center;
}
#mw-indicator-mw-helplink a::before {
content: '';
margin-right: 5px;
-webkit-mask: url("/resources/src/mediawiki.helplink/images/helpNotice.svg?46d34") no-repeat 50% 50% / contain;
mask: url("/resources/src/mediawiki.helplink/images/helpNotice.svg?46d34") no-repeat 50% 50% / contain;
background: var(--text-color);
height: 20px;
width: 20px;
}
.results-info {
color: inherit;
}
.mw-search-profile-tabs {
background-color: var(--body-mid);
border-color: transparent;
}
.search-types .current a {
color: inherit;
}
#mw-searchoptions {
background-color: var(--body-mid);
border-color: transparent;
}
#mw-searchoptions .divider {
border-color: var(--body-border);
}
#mw-searchoptions h4 {
font-family: inherit;
}
#mw-searchoptions .oo-ui-labelElement:nth-of-type(odd) {
font-weight: bold;
}
.searchresult {
line-height: 1.5;
}
.searchalttitle,
#mw-search-interwiki li {
font-size: 90%;
}
.mw-search-result-data {
color: var(--byline-color);
}
.page-Special_ListFiles a.image img {
width: inherit;
height: inherit;
}
.page-Special_ListFiles .TablePager_col_thumb {
text-align: center;
}
#editcount table[border="1"] {
background-color: var(--body-main) !important;
border-color: var(--wikitable-border) !important;
margin-top: 0.5em;
}
#editcount table[border="1"] th,
#editcount table[border="1"] td {
padding: 0.2em 0.4em;
}
#editcount table[border="1"] th {
background-color: var(--wikitable-header-bg);
border: 1px solid var(--wikitable-border);
}
#editcount table[border="1"] td {
border: 1px solid var(--wikitable-border);
}
#editcount table[border="1"] tr:nth-child(odd) {
background-color: var(--body-light);
}
.mw-echo-ui-notificationBadgeButtonPopupWidget-popup > .oo-ui-popupWidget-popup .mw-echo-ui-placeholderItemWidget {
background-color: inherit;
}
table.mw-interwikitable.body td.mw-interwikitable-local-yes {
background-color: var(--table-yes-background);
color: var(--table-yes-color);
}
.mw-protectedpages-unknown {
color: var(--byline-color);
}
.watchlistredir,
.allpagesredirect {
font-style: italic;
}
.allpagesredirect:after {
color: var(--byline-color);
content: " (redirect)";
}
.mw-apisandbox-toolbar {
background: var(--body-main);
}
.oo-ui-menuOptionWidget .mw-apisandbox-flag {
color: var(--byline-color);
}
tr.mw-abusefilter-list-disabled,
tr.mw-abusefilter-list-disabled td {
color: var(--byline-color);
}
table.mw-abuselog-details {
background: var(--wikitable-bg);
border-color: var(--wikitable-border);
}
table.mw-abuselog-details th {
background: var(--wikitable-header-bg);
}
table.mw-abuselog-details th,
table.mw-abuselog-details td {
border-color: var(--wikitable-border);
}
.mw-abusefilter-log-hidden-entry {
color: var(--subtle-color);
}
body td.mw-abusefilter-history-changed {
background: var(--table-no-background);
}
div.mw-abusefilter-editor,
#mw-abusefilter-warn-preview,
#mw-abusefilter-disallow-preview {
border-color: var(--ooui-input-border);
}
.mw-destfile-warning {
border-color: var(--warningbox-border);
color: var(--text-color);
background-color: var(--warningbox-bg);
}
span.fileinput-button {
background-color: var(--ooui-normal);
border-color: var(--ooui-normal-border);
color: var(--ooui-text);
}
ul.fileupload-results li.ful-success {
background-color: var(--successbox-bg);
}
ul.fileupload-results li.ful-success a {
color: var(--link-color);
}
ul.fileupload-results li.ful-error {
background-color: var(--errorbox-bg);
}
#t-print,
#t-permalink {
display: none;
}
#filetoc {
border-radius: 2px;
background: var(--body-mid);
border-color: transparent;
margin: 0.5em auto;
text-align: center;
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
}
li.gallerybox div.thumb {
border: none;
background-color: var(--thumb-bg);
}
.smwfact {
display: none;
}
.list-header {
background-color: var(--body-mid);
color: inherit;
}
.editOptions {
color: var(--text-color);
background-color: var(--sourceeditor-background-secondary);
border-color: var(--sourceeditor-border);
}
.mw-json th,
.mw-json td {
border-color: var(--wikitable-border);
}
.mw-json td {
background: var(--wikitable-bg);
}
.mw-json th {
background: var(--wikitable-header-bg);
}
68bd826e28dd58b4f6f763ed4e04054e43bf244c
File:Brighter Shores key art.jpg
6
198
479
346
2024-03-22T18:39:20Z
Habblet
11
wikitext
text/x-wiki
{{Fair use|link=https://cdn.cloudflare.steamstatic.com/steam/apps/2791440/capsule_616x353.jpg?t=1710753091}}
ef94629c34e6578c2c00e6014a7d2b7853079dec
File:Brighter Shores logo.png
6
297
480
2024-03-22T18:43:02Z
Habblet
11
{{Fair use}}
[[Category:Brighter Shores Wiki images]]
[[Category:Logos]]
wikitext
text/x-wiki
== Summary ==
{{Fair use}}
[[Category:Brighter Shores Wiki images]]
[[Category:Logos]]
960824af3fbb9eccb05e140a552dee7915b10ce5
Potion
0
298
481
2024-03-22T18:44:31Z
Wolaznik
8
Created page with "'''Potions''' may be brewed through the [[Alchemist]] [[profession]]."
wikitext
text/x-wiki
'''Potions''' may be brewed through the [[Alchemist]] [[profession]].
b88be6fb32911c12aedf3b4b4bcf6a695c6462ae
Professions
0
56
482
212
2024-03-22T18:44:47Z
Wolaznik
8
wikitext
text/x-wiki
'''Professions''' are skills that [[player]]s can train and utilise in [[Brighter Shores]].
==List of professions==
{| class="wikitable"
! Name !! Uses
|-
| [[Fisher]] || Catching various [[fish]]
|-
| [[Forager]] || Gathering items
|-
| [[Chef]] || Cooking [[food]] items
|-
| [[Woodcutter]] || Chopping down [[tree]]s
|-
| [[Miner]] || Mining [[mineral]]s
|-
| [[Alchemist]] || Brewing [[potion]]s
|-
| [[Stonemason]] ||
|-
| [[Merchant]] ||
|-
| [[Blacksmith]] ||
|}
{{Professions}}
bd3fcd8cff544a6268ffbba8008a1baddeadecf0
498
482
2024-03-22T18:51:08Z
Wolaznik
8
Gallery of previews
wikitext
text/x-wiki
'''Professions''' are skills that [[player]]s can train and utilise in [[Brighter Shores]].
==List of professions==
{| class="wikitable"
! Name !! Uses
|-
| [[Fisher]] || Catching various [[fish]]
|-
| [[Forager]] || Gathering items
|-
| [[Chef]] || Cooking [[food]] items
|-
| [[Woodcutter]] || Chopping down [[tree]]s
|-
| [[Miner]] || Mining [[mineral]]s
|-
| [[Alchemist]] || Brewing [[potion]]s
|-
| [[Stonemason]] ||
|-
| [[Merchant]] ||
|-
| [[Blacksmith]] ||
|}
==Gallery==
<gallery>
File:Professions preview 1.jpg
File:Professions preview 2.jpg
File:Professions preview 3.jpg
</gallery>
{{Professions}}
5c07add5ff89129c7c82abe6641f2c225db865d0
Mineral
0
299
483
2024-03-22T18:45:35Z
Wolaznik
8
Created page with "'''Minerals''' can be mined through the [[Miner]] [[profession]]."
wikitext
text/x-wiki
'''Minerals''' can be mined through the [[Miner]] [[profession]].
b43caa6209a79f21aa0503354684dc6b9aa6a48a
MediaWiki:Vector.less
8
31
484
204
2024-03-22T18:45:52Z
BlackHawk
10
less
less
/* =============================================================================
* This is the root Less file that is parsed to produce [[MediaWiki:Vector.css]].
*
* These styles will be applied to the Vector skin (desktop).
* -----------------------------------------------------------------------------
* Less documentation: <http://lesscss.org/features/>
* Gadget: <https://meta.weirdgloop.org/w/MediaWiki:Gadget-Less.js>
* Core Less JS: <https://meta.weirdgloop.org/w/MediaWiki:Gadget-Less-core.js>
* Non-standard mixins: <https://meta.weirdgloop.org/w/MediaWiki:Gadget-LessMixins.less>
* Online Less tester: <https://lesscss.org/less-preview/>
* ============================================================================= */
@common: 'MediaWiki:Common.less';
@dir: 'MediaWiki:Vector.less';
// ===== Imports =====
@import '@{common}/mixins.less';
@import '@{common}/variables.less';
@import '@{dir}/elements.less';
// Vector interface files
@import '@{dir}/vectormenu.less';
@import '@{dir}/vectorsearch.less';
@import '@{dir}/vectorsidebar.less';
@import '@{dir}/vectortabs.less';
// Image thumbnails
@import '@{dir}/thumb.less';
// Table of Contents
@import '@{dir}/toc.less';
// anything else that doesn't go into above files
@import '@{dir}/interface.less';
// Editor interface
@import '@{dir}/sourceeditor.less';
@import '@{dir}/editor.less';
// Templates
@import '@{dir}/keypress.less';
@import '@{dir}/navbox.less';
// Misc
@import '@{dir}/echo.less';
// ===== Miscellaneous =====
// moved from [[MediaWiki:Common.less/tabber.less]]
// because it caused them to go off-screen on mobile
.tabber {
display: inline-grid;
}
5da662eb404259877ed4c0778ea91ad06e571ad4
MediaWiki:Vector.less/keypress.less
8
300
485
2024-03-22T18:46:43Z
BlackHawk
10
Created page with "// <pre> /* ============================= [[Template:Key press]] ============================= */ .keypress { background: @gallery; color: @mineshaft; font-family: monospace; text-shadow: 0 1px 0 @white; border: 1px solid @silver; .border-radius( 3px ); margin: 0 0.1em; padding: 0.1em 0.5em; line-height: 1.4; white-space: nowrap; display: inline-block; }"
less
less
// <pre>
/* =============================
[[Template:Key press]]
============================= */
.keypress {
background: @gallery;
color: @mineshaft;
font-family: monospace;
text-shadow: 0 1px 0 @white;
border: 1px solid @silver;
.border-radius( 3px );
margin: 0 0.1em;
padding: 0.1em 0.5em;
line-height: 1.4;
white-space: nowrap;
display: inline-block;
}
52cbf83b836201600da862bd5959d65813902538
Tree
0
301
486
2024-03-22T18:46:43Z
Wolaznik
8
Created page with "'''Trees''' can be chopped through the [[Woodcutter]] [[profession]]."
wikitext
text/x-wiki
'''Trees''' can be chopped through the [[Woodcutter]] [[profession]].
e549f617577ef59cdf67fa65e92e4816f9c2f57e
MediaWiki:Vector.css
8
43
487
205
2024-03-22T18:46:55Z
BlackHawk
10
Updating CSS from [[MediaWiki:Vector.less]]
css
text/css
/* <pre> */
:root {
--ul-list-style-image: url("data:image/svg+xml,%3C%3Fxml version='1.0' encoding='UTF-8'%3F%3E%3Csvg xmlns='http://www.w3.org/2000/svg' width='5' height='13'%3E%3Ccircle cx='2.5' cy='9' r='2.5' fill='%23000'/%3E%3C/svg%3E");
}
html {
-webkit-text-size-adjust: 100%;
}
body {
background: var(--body-background-image) var(--body-background-color) top left / 1500px 375px no-repeat;
font-family: 'Helvetica Neue', 'Arial', sans-serif;
}
.vector-body {
font-size: 0.9em;
}
#firstHeading {
font-weight: bold;
}
pre,
code,
.mw-code {
color: inherit;
background-color: var(--mw-code-background-color);
border: 1px solid var(--body-border);
}
dl {
margin: 0;
}
ul {
list-style-image: var(--ul-list-style-image);
}
hr {
background: none;
border-color: var(--sidebar);
border-style: solid;
border-width: 1px 0 0 0;
height: initial;
}
fieldset {
border-color: var(--sidebar);
}
.vector-body blockquote {
border-color: var(--body-mid);
}
:root {
--personal-links-bg: var(--body-main);
--arrow-down: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath d='M11.05 3.996l-.965-1.053-4.035 3.86-3.947-3.86L1.05 3.996l5 5 5-5' fill='%23444'/%3E%3C/svg%3E");
}
.vector-menu-dropdown .vector-menu-heading {
background-color: var(--vector-tab-background);
padding: 1em 0.75em 0.6923em;
margin: 0;
}
.vector-menu-dropdown .vector-menu-heading,
.vector-menu-dropdown .vector-menu-heading:hover,
.vector-menu-dropdown .vector-menu-heading:focus {
color: var(--background-text-color);
}
.vector-menu-dropdown .vector-menu-heading:after {
background-image: var(--arrow-down);
opacity: 1;
}
.vector-menu-dropdown .vector-menu-content {
border-color: transparent;
background-color: var(--body-light);
box-shadow: 0 2px 3px 0 rgba(0, 0, 0, 0.1);
left: 0;
}
.vector-menu-dropdown .mw-list-item a {
color: var(--link-color);
}
.vector-menu-dropdown .mw-list-item.selected a,
.vector-menu-dropdown .mw-list-item.selected a:visited {
color: var(--text-color);
}
#p-personal {
background: var(--personal-links-bg);
top: 0;
right: 0;
border-radius: 0 0 0 4px;
height: 1.875em;
}
#p-personal ul {
padding: 0 1em 0 0.4375em;
}
.vector-search-box-inner {
background: var(--search-box);
height: 2.5em;
margin-top: 0;
box-shadow: inset 0 -7px 7px -7px rgba(0, 0, 0, 0.15);
}
.vector-search-box-input {
color: var(--text-color);
height: 100%;
border: none;
background: none;
padding-left: 0.75em;
}
.vector-search-box-input::placeholder {
color: var(--text-color);
opacity: 0.67;
}
.vector-search-box-inner:hover .vector-search-box-input,
.vector-search-box-input:focus,
.vector-search-box-inner:hover .vector-search-box-input:focus {
border: none;
box-shadow: none;
}
:root {
--searchbutton-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='13'%3E%3Cg fill='none' stroke='%23000' stroke-width='2'%3E%3Cpath d='M11.29 11.71l-4-4'/%3E%3Ccircle cx='5' cy='5' r='4'/%3E%3C/g%3E%3C/svg%3E");
}
.searchButton[name='go'] {
background: no-repeat center var(--searchbutton-icon);
}
.vector-search-box {
margin: 0;
}
.vector-search-box form {
margin-top: 0;
}
.suggestions-results {
background-color: var(--body-light);
border-color: var(--body-border);
}
.suggestions-result {
color: var(--text-color);
}
.suggestions a.mw-searchSuggest-link,
.suggestions a.mw-searchSuggest-link:hover,
.suggestions a.mw-searchSuggest-link:active,
.suggestions a.mw-searchSuggest-link:focus {
color: var(--text-color);
}
.suggestions-special {
background-color: var(--body-light);
border-color: var(--body-border);
}
.suggestions-special .special-label {
color: var(--byline-color);
}
.suggestions-special .special-query {
color: var(--text-color);
}
.suggestions-result-current {
background-color: var(--body-mid);
color: var(--text-color);
}
.suggestions-result-current .special-label,
.suggestions-result-current .special-query {
color: var(--text-color);
}
#mw-panel {
padding-top: 2.5em;
}
.vector-menu-portal .vector-menu-heading {
color: var(--background-text-color);
font-weight: bold;
background: none;
}
.vector-menu-portal .vector-menu-content li a,
.vector-menu-portal .vector-menu-content li a:visited {
color: var(--background-link-color);
}
#p-logo {
filter: drop-shadow(0 2px 5px rgba(0, 0, 0, 0.25));
margin: -1.5em 0 0;
}
#n-Discord a {
color: #fff !important;
font-weight: bold;
border-radius: 4px;
border: 1px solid #4c57d0;
background-color: #5865f2;
display: block;
position: relative;
padding: 4px 4px 5px calc(17px + 6.5px * 2);
box-shadow: 0 2px 3px rgba(0, 0, 0, 0.1);
transition: 0.2s;
}
#n-Discord a::before {
content: 'Chat on ';
font-weight: normal;
opacity: 0.85;
}
#n-Discord a::after {
content: '';
background: url('filepath://Discord_logo_icon.svg') no-repeat;
background-size: 17px 13px;
filter: drop-shadow(0 1px 1px rgba(0, 0, 0, 0.1));
position: absolute;
top: 5px;
left: 7px;
width: 17px;
height: 13px;
}
#n-Discord a:hover {
text-decoration: none;
background-color: #525ee0;
}
.wgl-theme-dark #n-Discord a {
background-color: #525ee0;
}
.wgl-theme-dark #n-Discord a:hover {
background-color: #4c57d0;
}
:root {
--vector-tab-background: #f0f0f0;
--vector-tab-background--hover: var(--body-mid);
--vector-tab-link-color: #937040;
--watch-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16'%3E%3Cpath fill='transparent' stroke='%2352351e' stroke-width='.8' d='m8.1 1.1 2.2 4.5 4.8.7-3.5 3.4.9 4.8L8 12.2l-4.3 2.3.8-4.8L1 6.3l4.8-.7z'/%3E%3C/svg%3E");
--unwatch-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16'%3E%3Cpath fill='%2352351e' stroke='%2352351e' stroke-width='.8' d='m8.1 1.1 2.2 4.5 4.8.7-3.5 3.4.9 4.8L8 12.2l-4.3 2.3.8-4.8L1 6.3l4.8-.7z'/%3E%3C/svg%3E");
}
.vector-menu-tabs-legacy {
padding: 0;
}
.vector-menu-tabs-legacy .new a,
.vector-menu-tabs-legacy .new a:visited {
color: var(--redlink-color);
}
.vector-menu-tabs-legacy .selected {
background: var(--body-main);
}
.vector-menu-tabs-legacy .selected a,
.vector-menu-tabs-legacy .selected a:visited {
color: var(--text-color);
}
.vector-menu-tabs-legacy li a {
color: var(--vector-tab-link-color);
padding: 0 0.75em;
padding-top: 1em;
}
.vector-menu-tabs-legacy li a:visited {
color: var(--vector-tab-link-color);
}
.vector-menu-tabs-legacy ul li {
background: var(--vector-tab-background);
}
.vector-menu-tabs-legacy ul a:hover {
text-decoration: none;
}
#ca-view {
display: none !important;
}
.vector-menu-tabs ul li:not(.selected):hover,
#p-cactions:hover #p-cactions-label {
background: var(--vector-tab-background--hover);
}
.vector-menu-tabs ul li:not(.selected),
#mw-head .vector-menu-dropdown .vector-menu-heading {
box-shadow: inset 0 -7px 7px -7px rgba(0, 0, 0, 0.15);
}
.vector-menu-tabs,
.vector-menu-tabs a,
#mw-head .vector-menu-dropdown .vector-menu-heading {
background-image: none;
}
.ve-activated .vector-menu-tabs .selected {
box-shadow: none;
}
.vector-menu-tabs #ca-watch.icon a:before,
.vector-menu-tabs #ca-watch.icon a:hover:before,
.vector-menu-tabs #ca-watch.icon a:focus:before {
background-image: var(--watch-icon);
}
.vector-menu-tabs #ca-unwatch.icon a:before,
.vector-menu-tabs #ca-unwatch.icon a:hover:before,
.vector-menu-tabs #ca-unwatch.icon a:focus:before {
background-image: var(--unwatch-icon);
}
div.thumbinner {
border: none;
background-color: var(--thumb-bg);
padding: 0;
}
.thumbimage {
background-color: transparent;
border-color: transparent;
border-bottom: none;
}
.thumbcaption {
background: var(--thumb-caption-bg);
padding: 4px 6px;
}
:root {
--toc-bg: var(--body-light);
--toc-title-bg: var(--body-dark);
--toc-border-color: var(--body-border);
--toc-list-border-color: var(--body-border);
}
.toc {
font-size: 0.9em;
background: var(--toc-bg);
margin-top: 1em;
padding: 0;
border-color: var(--toc-border-color);
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
clear: left;
}
.toc .toctitle {
background: var(--toc-title-bg);
padding: 0.25em 1em;
}
.toc .toctitle h2 {
font-family: inherit;
}
.toc > ul {
line-height: 1.8em;
padding: 0.75em 1.75em;
margin: 0;
}
.toc ul ul {
border-left: 1px dotted var(--toc-list-border-color);
padding-left: 0.5em;
}
.tocnumber {
display: none;
}
.toctogglespan {
padding-left: 0.2em;
font-size: 0.9em;
}
.toctogglelabel {
color: var(--link-color);
}
.toclimit-2 #toc .toclevel-2,
.toclimit-3 #toc .toclevel-3,
.toclimit-4 #toc .toclevel-4,
.toclimit-5 #toc .toclevel-5,
.toclimit-6 #toc .toclevel-6,
.toclimit-7 #toc .toclevel-7 {
display: none;
}
:root {
--external-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath fill='%23936039' d='M6 1h5v5L8.86 3.85 4.7 8 4 7.3l4.15-4.16L6 1Z M2 3h2v1H2v6h6V8h1v2a1 1 0 0 1-1 1H2a1 1 0 0 1-1-1V4a1 1 0 0 1 1-1Z'/%3E%3C/svg%3E");
}
.mw-parser-output a.external {
background-image: var(--external-icon);
background-size: 0.833em;
}
.mw-editsection {
font-family: 'Helvetica Neue', 'Arial', sans-serif;
}
.client-js .mw-content-ltr .mw-editsection-bracket:first-of-type,
.client-js .mw-content-ltr .mw-editsection-bracket:not(:first-of-type),
.mw-editsection-divider {
color: var(--text-color);
}
#contentSub,
#contentSub2 {
color: var(--byline-color);
margin: 0;
}
#contentSub:not(:empty),
#contentSub2:not(:empty) {
margin: 0 0 1.4em 0;
}
.mw-collapsible.mw-collapsed {
min-width: 250px;
}
.mw-collapsible:not( .mw-made-collapsible) th::before,
.mw-collapsible .mw-collapsible-toggle {
font-weight: normal;
margin-left: 0.2em;
}
.wikiEditor-ui .wikiEditor-ui-view,
.wikiEditor-ui .wikiEditor-ui-top {
border-color: var(--sourceeditor-border);
}
.wikiEditor-ui-toolbar {
background-color: var(--sourceeditor-background);
}
.wikiEditor-ui-toolbar .tabs span.tab > a,
.wikiEditor-ui-toolbar .tabs span.tab > a:visited {
color: var(--link-color);
}
.wikiEditor-ui-toolbar .tabs span.tab a.current,
.wikiEditor-ui-toolbar .tabs span.tab a.current:visited {
color: var(--text-colour);
}
.wikiEditor-ui-toolbar .group {
border-color: var(--sourceeditor-border);
}
.wikiEditor-ui-toolbar .group .tool-select {
background-color: var(--sourceeditor-background);
border-color: var(--sourceeditor-border);
}
.wikiEditor-ui-toolbar .group .tool-select .options {
border-color: var(--sourceeditor-border);
background-color: var(--body-main);
}
.wikiEditor-ui-toolbar .group .tool-select .options .option {
color: var(--link-color);
}
.wikiEditor-ui-toolbar .group .tool-select .menu .options .option:hover {
background-color: var(--ooui-normal--hover);
}
.wikiEditor-ui-toolbar .group-search {
border-left-color: var(--body-mid);
}
.wikiEditor-ui-toolbar .page-table td {
border-color: var(--body-mid);
color: var(--text-color);
}
.wikiEditor-ui-toolbar .page-table th {
color: var(--text-color);
}
.wikiEditor-ui-toolbar .sections .section {
border-color: var(--body-mid);
}
.wikiEditor-ui-toolbar .sections .toolbar .group > .label {
color: var(--text-color);
}
.wikiEditor-ui-toolbar .sections .toolbar .tool > .label {
color: var(--text-color);
}
.wikiEditor-ui-toolbar .booklet > .index > :hover {
background-color: var(--body-mid);
color: var(--text-color);
}
.wikiEditor-ui-toolbar .booklet .index > .current {
background-color: var(--body-mid);
color: var(--link-color);
}
.wikiEditor-ui-toolbar .page-characters div span {
border-color: var(--body-mid);
color: var(--text-color);
}
.wikiEditor-ui-toolbar .page-characters div span:hover {
border-color: var(--body-dark);
background-color: transparent;
}
.wikiEditor-ui-toolbar .tabs span.tab a:before,
.wikiEditor-ui-toolbar .group .tool-select .label:after {
background: var(--text-color);
-webkit-mask: var(--arrow-down) center no-repeat;
mask: var(--arrow-down) center no-repeat;
}
.ace-tm {
background-color: var(--sourceeditor-input-background);
color: var(--text-color);
}
.ace-tm .ace_gutter {
background: var(--body-mid);
color: var(--text-color);
}
.ace-tm .ace_gutter-cell {
color: var(--text-color);
}
.ace-tm .ace_gutter-active-line {
background-color: var(--body-light);
}
.ace_search {
background-color: var(--body-light);
color: var(--text-color);
border-color: var(--body-mid);
}
.ace_search_field {
background-color: var(--ooui-input);
color: var(--ooui-text);
border-color: var(--ooui-input-border);
}
.ace_searchbtn {
border-color: var(--ooui-normal-border);
background-color: var(--ooui-normal);
color: var(--ooui-text);
}
.ace_searchbtn:last-child {
border-color: var(--ooui-normal-border);
}
.ace_searchbtn:hover {
background-color: var(--ooui-normal--hover);
}
.ace_searchbtn.prev:after,
.ace_searchbtn.next:after {
border-color: var(--ooui-text);
}
.ace_button {
color: var(--text-color);
}
.ace_button:hover {
background-color: rgba(0, 23, 70, 0.086);
}
.ace_button:active {
background-color: rgba(0, 23, 70, 0.06);
}
.ace_button.checked {
border-color: var(--ooui-accent);
}
.CodeMirror {
background: var(--sourceeditor-input-background);
}
.CodeMirror pre {
color: var(--text-color);
}
.codeEditor-status {
border-color: var(--sourceeditor-border);
background-color: var(--sourceeditor-background);
}
.codeEditor-status-message {
border-color: var(--sourceeditor-border);
}
.CodeMirror-gutters {
background-color: var(--codemirror-gutter-background);
border-color: var(--sourceeditor-border);
}
.CodeMirror-linenumber {
color: var(--text-color);
}
.ve-init-mw-desktopArticleTarget .CodeMirror-linenumber {
color: var(--byline-color);
}
.mw-editform #wpTextbox1 {
color: var(--text-color);
background: var(--sourceeditor-input-background);
border-color: var(--sourceeditor-border);
}
input[name="model"][value="Scribunto"] ~ .wikiEditor-ui #wpTextbox1,
input[name="model"][value="css"] ~ .wikiEditor-ui #wpTextbox1,
input[name="model"][value="less"] ~ .wikiEditor-ui #wpTextbox1,
input[name="model"][value="javascript"] ~ .wikiEditor-ui #wpTextbox1,
input[name="model"][value="json"] ~ .wikiEditor-ui #wpTextbox1 {
height: 600px;
}
.tdg-templateDataDialog-listParamsPanel textarea.oo-ui-textInputWidget-autosized {
resize: vertical;
}
#wpAceFilterEditor {
resize: horizontal;
}
.warn-userupload,
.ns-2 .upload-own-work {
display: none;
}
.ns-2 .warn-userupload {
display: inline;
}
textarea[name="wfUploadDescription"] {
height: 3em;
}
#editform {
margin-top: 1.25em;
}
#mw-scribunto-input,
#mw-scribunto-output {
padding: 3px;
font-family: monospace;
font-size: 13px;
line-height: 1.5em;
}
#mw-scribunto-input {
background-color: var(--ooui-input);
border-color: var(--ooui-input-border);
}
:root {
--scribuntoconsole-input: #0b5884;
--scibuntoconsole-print: #a48900;
--scribuntoconsole-error: #9f261e;
--scribuntoconsole-message: #3c780a;
--scribuntoconsole-tabcomplete: #4f348b;
--scribuntoconsole-clear: #9f261e;
}
.mw-scribunto-console-fieldset {
color: inherit;
background-color: var(--ooui-interface);
border-color: var(--ooui-interface-border);
}
.mw-scribunto-normalOutput,
.mw-scribunto-print,
.mw-scribunto-error,
.mw-scribunto-propList,
.mw-scribunto-message,
.mw-scribunto-tabcomplete {
background: none;
}
.mw-scribunto-input {
color: var(--scribuntoconsole-input);
}
.mw-scribunto-normalOutput {
color: inherit;
}
.mw-scribunto-print {
color: var(--scibuntoconsole-print);
}
.mw-scribunto-error {
color: var(--scribuntoconsole-error);
}
.mw-scribunto-propList,
.mw-scribunto-message {
color: var(--scribuntoconsole-message);
}
.mw-scribunto-tabcomplete {
color: var(--scribuntoconsole-tabcomplete);
}
.mw-scribunto-clear {
color: var(--scribuntoconsole-clear);
border-bottom-color: var(--scribuntoconsole-clear);
}
.keypress {
background: #eee;
color: #333;
font-family: monospace;
text-shadow: 0 1px 0 #fff;
border: 1px solid #ccc;
border-radius: 3px;
margin: 0 0.1em;
padding: 0.1em 0.5em;
line-height: 1.4;
white-space: nowrap;
display: inline-block;
}
:root {
--navbox-background: var(--body-light);
--navbox-border: var(--body-dark);
--navbox-title-background: var(--body-dark);
--navbox-footer-background: var(--body-dark);
--navbox-group-title-background: var(--body-mid);
}
.navbox {
font-size: 0.85em;
background: var(--navbox-background);
border-collapse: collapse;
margin: 1em auto 0;
width: 100%;
clear: both;
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
}
@media (-webkit-min-device-pixel-ratio: 2), (min-resolution: 192dpi) {
.navbox img {
image-rendering: pixelated;
image-rendering: crisp-edges;
}
}
.navbox .navbox {
font-size: 100%;
margin: 0.5em auto 0;
box-shadow: none;
}
.navbox-title {
font-size: 110%;
line-height: 1.6em;
background: var(--navbox-title-background);
text-align: center;
padding: 0.25em 1em;
}
.navbox-title-name {
margin: 0 4em;
}
.navbox-title .mw-collapsible-toggle {
font-size: 0.9em;
text-align: right;
}
.navbox-title .navbox {
font-size: 100%;
}
.navbox-group:nth-child(2) {
border-top: 1px solid var(--navbox-border);
}
.navbox-group-title {
background: var(--navbox-group-title-background);
border: 1px solid var(--navbox-border);
border-width: 0 1px 1px 0;
text-align: left;
padding: 0.25em 1em;
width: 1%;
white-space: nowrap;
}
.navbox-list {
border-bottom: 1px solid var(--navbox-border);
padding: 0.25em 0.5em;
}
.navbox-list ul {
margin: 0;
}
.navbox-list li {
display: inline;
white-space: nowrap;
}
.navbox-list li + li::before {
content: '• ';
}
.navbox-parent {
padding: 0;
}
.navbox-subgroup {
border-collapse: collapse;
border-spacing: 0;
width: 100%;
}
.navbox-subgroup > tbody > tr:last-child > th,
.navbox-subgroup > tbody > tr:last-child > td {
border-bottom: none;
}
.navbox-footer {
background: var(--navbox-footer-background);
text-align: center;
padding: 0.25em 1em;
}
.navbox-data {
display: none;
}
:root {
--echo-icon-moon-bg-image: url("data:image/svg+xml,%3C%3Fxml version='1.0' encoding='UTF-8'%3F%3E%3Csvg height='21' viewBox='0 0 21 21' width='21' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='m8.85464918.37900488c-1.91149353 1.51069427-3.13816124 3.84973402-3.13816124 6.47527736 0 4.55564936 3.69308349 8.24873286 8.24873286 8.24873286 2.5815709 0 4.8861545-1.1859235 6.3986798-3.0426994-.8206378 4.7389755-4.9523867 8.343122-9.9259291 8.343122-5.56375572 0-10.07407088-4.5103151-10.07407088-10.0740709 0-5.02506013 3.67919933-9.19079725 8.49074856-9.95036192z' fill='%234c4c4c'/%3E%3C/svg%3E");
--echo-icon-person-bg-image: url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 width=%2212%22 height=%2213.836%22 viewBox=%220 0 12 13.836%22%3E %3Cpath fill='%234c4c4c' d=%22M1.938%2C6.656c-1.32%2C1.485-1.47%2C3.15-0.97%2C4.25c0.323%2C0.707%2C0.78%2C1.127%2C1.313%2C1.375 c0.496%2C0.229%2C1.074%2C0.273%2C1.658%2C0.282c0.023%2C0%2C0.04%2C0.03%2C0.062%2C0.03h4.187c0.61%2C0%2C1.225-0.125%2C1.75-0.405 c0.527-0.28%2C0.961-0.718%2C1.188-1.376c0.335-0.964%2C0.175-2.529-1.094-4.03C9.094%2C7.954%2C7.68%2C8.719%2C6.065%2C8.719 c-1.677%2C0-3.182-0.812-4.125-2.063H1.938z%22/%3E %3Cpath fill='%234c4c4c' d=%22M6.063%2C0c-1.89%2C0-3.595%2C1.674-3.594%2C3.563C2.467%2C5.45%2C4.173%2C7.155%2C6.06%2C7.155 c1.89%2C0%2C3.564-1.705%2C3.563-3.593C9.625%2C1.673%2C7.95%2C0%2C6.063%2C0L6.063%2C0z%22/%3E %3C/svg%3E");
--echo-icon-bell-bg-image: url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 width=%2220%22 height=%2220%22 viewBox=%220 0 20 20%22%3E%3Ctitle%3Ebell%3C/title%3E%3Cpath d=%22M16 7a5.38 5.38 0 00-4.46-4.85C11.6 1.46 11.53 0 10 0S8.4 1.46 8.46 2.15A5.38 5.38 0 004 7v6l-2 2v1h16v-1l-2-2zm-6 13a3 3 0 003-3H7a3 3 0 003 3z%22 fill='%234c4c4c'/%3E%3C/svg%3E");
--echo-icon-tray-bg-image: url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 width=%2220%22 height=%2220%22 viewBox=%220 0 20 20%22%3E%3Ctitle%3Etray%3C/title%3E%3Cpath d=%22M3 1a2 2 0 00-2 2v14a2 2 0 002 2h14a2 2 0 002-2V3a2 2 0 00-2-2zm14 12h-4l-1 2H8l-1-2H3V3h14z%22 fill='%234c4c4c'/%3E%3C/svg%3E");
--echo-icon-fullscreen-bg-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 20 20'%3E%3Ctitle%3E fullscreen %3C/title%3E%3Cg fill='%234c4c4c'%3E%3Cpath d='M1 1v6h2V3h4V1zm2 12H1v6h6v-2H3zm14 4h-4v2h6v-6h-2zm0-16h-4v2h4v4h2V1z'/%3E%3C/g%3E%3Cscript xmlns=''/%3E%3C/svg%3E");
--echo-icon-exitFullscreen-bg-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 20 20'%3E%3Ctitle%3E exit fullscreen %3C/title%3E%3Cg fill='%234c4c4c'%3E%3Cpath d='M7 7V1H5v4H1v2zM5 19h2v-6H1v2h4zm10-4h4v-2h-6v6h2zm0-8h4V5h-4V1h-2v6z'/%3E%3C/g%3E%3Cscript xmlns=''/%3E%3C/svg%3E");
}
.vector-user-menu-legacy #pt-userpage a,
.vector-user-menu-legacy #pt-anonuserpage {
background-image: var(--echo-icon-person-bg-image);
padding-top: 0;
background-position-y: 0;
}
.vector-user-menu-legacy #pt-anonuserpage {
color: var(--byline-color);
}
#pt-notifications-alert .mw-echo-notifications-badge,
#pt-notifications-notice .mw-echo-notifications-badge {
background-size: 75%;
background-position: center 80%;
background-repeat: no-repeat;
opacity: unset;
}
#pt-notifications-alert .mw-echo-notifications-badge.mw-echo-notifications-badge-all-read,
#pt-notifications-notice .mw-echo-notifications-badge.mw-echo-notifications-badge-all-read {
opacity: unset;
}
#pt-notifications-alert .oo-ui-icon-bell {
background-image: var(--echo-icon-bell-bg-image);
}
#pt-notifications-notice .oo-ui-icon-tray {
background-image: var(--echo-icon-tray-bg-image);
}
#pt-fixed-width .oo-ui-icon-advanced {
background-image: var(--echo-icon-exitFullscreen-bg-image);
}
body.wgl-fixedWidth #pt-fixed-width .oo-ui-icon-advanced {
background-image: var(--echo-icon-fullscreen-bg-image);
}
#pt-theme-toggles .oo-ui-icon-advanced {
background-image: var(--echo-icon-moon-bg-image);
}
#pt-anontalk {
padding-top: 0.6em;
}
.tabber {
display: inline-grid;
}
0b51871b3762cbd084e546e273fbc1a10869e188
Woodcutting
0
302
488
2024-03-22T18:47:06Z
Wolaznik
8
Redirected page to [[Woodcutter]]
wikitext
text/x-wiki
#REDIRECT [[Woodcutter]]
5e6c1aabeb5ed667eb96fe85932ffe55c150d438
MediaWiki:Gadget-QuickDiff
8
303
489
2024-03-22T18:48:00Z
Habblet
11
Created page with "'''QuickDiff''': Quickly view diffs without leaving the page by opening them in a modal"
wikitext
text/x-wiki
'''QuickDiff''': Quickly view diffs without leaving the page by opening them in a modal
30bc648ee9dcc6b576359078ab7c450c536b0059
MediaWiki:Gadget-QDmodal.js
8
304
490
2024-03-22T18:48:43Z
Habblet
11
Created page with "/* <nowiki> QDmodal - flexbox-based modal library CSS located at [[MediaWiki:Gadget-QDmodal.css]] @author OneTwoThreeFall @source <https://dev.fandom.com/wiki/QDmodal> @source <https://dev.fandom.com/wiki/MediaWiki:QDmodal.js> */ /*jslint browser, long, this */ /*global jQuery, mediaWiki */ (function ($, mw) { "use strict"; var version = 20180212; if (mw.libs.QDmodal && mw.libs.QDmodal.version >= version) { return; }..."
javascript
text/javascript
/* <nowiki>
QDmodal - flexbox-based modal library
CSS located at [[MediaWiki:Gadget-QDmodal.css]]
@author OneTwoThreeFall
@source <https://dev.fandom.com/wiki/QDmodal>
@source <https://dev.fandom.com/wiki/MediaWiki:QDmodal.js>
*/
/*jslint browser, long, this */
/*global jQuery, mediaWiki */
(function ($, mw) {
"use strict";
var version = 20180212;
if (mw.libs.QDmodal && mw.libs.QDmodal.version >= version) {
return;
}
var visibleModals = document.getElementsByClassName("qdmodal");
var $window = $(window);
var $body = $(document.body);
var $closeIcon = $(
"<svg class='qdmodal-close' xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'>"
+ "<title>Close</title>"
+ "<path stroke='currentColor' d='M 3,3 13,13 M 13,3 3,13'/>"
+ "</svg>"
);
function addButton(button) {
var $button = $("<span>");
if (button.href) {
$button = $("<a>").attr({
href: button.href,
target: "_blank"
});
}
if (typeof button.handler === "function") {
$button.on("click", button.handler);
}
if (button.attr) {
$button.attr(button.attr);
}
$button.addClass("qdmodal-button").text(button.text);
this.$footer.append($button);
}
//// QDmodal constructor ////
mw.libs.QDmodal = function (id) {
if (this === mw.libs) {
throw new Error("mw.libs.QDmodal should be called as a constructor.");
}
var $close = $closeIcon.clone();
this.$container = $("<div>").addClass("qdmodal-container");
this.$element = $("<div>").addClass("qdmodal");
this.$title = $("<h3>");
this.$content = $("<section>");
this.$footer = $("<footer>");
this.$container.append(
this.$element.append(
$("<header>").append(
this.$title,
$close
),
this.$content,
this.$footer
)
);
this.visible = false;
this.data = null;
if (typeof id === "string") {
this.$element.attr("id", id);
}
$close.on("click", this.hide.bind(this));
// close modal if the background outside the modal is clicked
this.$container.on("click", function (event) {
if (event.target === event.delegateTarget) {
this.hide();
}
}.bind(this));
// close modal if the escape key is pressed
$window.on("keydown", function (event) {
if (this.visible && event.which === 27) {
this.hide();
}
}.bind(this));
};
mw.libs.QDmodal.prototype.hide = function () {
if (this.data && typeof this.data.onHide === "function") {
this.data.onHide(this);
}
this.visible = false;
this.data = null;
this.$container.detach();
if (!visibleModals.length) {
$body.removeClass("qdmodal-no-scroll");
}
};
mw.libs.QDmodal.prototype.show = function (data) {
if (!data) {
return;
}
this.data = data;
this.$content.toggleClass("mw-ajax-loader", Boolean(data.loading));
// only set title if one is given, else keep previous title
if (data.title) {
this.$title.text(data.title);
}
this.$content.html(data.content || "");
this.$footer.empty();
if (Array.isArray(data.buttons)) {
data.buttons.forEach(addButton.bind(this));
}
if (data.hook) {
mw.hook(data.hook).fire(this);
}
if (!this.visible) {
$body
.addClass("qdmodal-no-scroll")
.append(this.$container);
this.visible = true;
}
if (typeof this.data.onShow === "function") {
this.data.onShow(this);
}
};
mw.libs.QDmodal.version = version;
// fire hook for convenience
mw.hook("dev.qdmodal").fire(mw.libs.QDmodal);
//// QDmodal theming ////
function initStyles() {
var theme = {
scrollbarWidth: window.innerWidth - document.body.offsetWidth
};
var styles = (
"body.qdmodal-no-scroll {"
// add a margin equivalent to the scrollbar width to
// prevent page content moving due to hidden overflow
+ "margin-right: ${scrollbarWidth}px;"
+ "}"
);
// replace placeholders with theme data
mw.util.addCSS(styles.replace(/\$\{([^}]+)\}/g, function (ignore, p1) {
return theme[p1];
}));
}
mw.loader.using("mediawiki.util").then(initStyles);
}(jQuery, mediaWiki));
dcc3581986c598eaceefdbf45aa79e4e45c9420e
MediaWiki:Gadget-QDmodal.css
8
305
491
2024-03-22T18:49:14Z
Habblet
11
Created page with "/* CSS for [[MediaWiki:Gadget-QDmodal.js]] */ .qdmodal-no-scroll { overflow: hidden; } .qdmodal-container { background-color: hsla(0, 0%, 0%, 0.4); font-size: 14px; line-height: 22px; display: flex; justify-content: center; align-items: center; position: fixed; top: 0; left: 0; right: 0; bottom: 0; z-index: 101; /* #p-personal has z-index of 100 */ } .qdmodal { color: #36414f; background-color: #fff; bor..."
css
text/css
/* CSS for [[MediaWiki:Gadget-QDmodal.js]] */
.qdmodal-no-scroll {
overflow: hidden;
}
.qdmodal-container {
background-color: hsla(0, 0%, 0%, 0.4);
font-size: 14px;
line-height: 22px;
display: flex;
justify-content: center;
align-items: center;
position: fixed;
top: 0;
left: 0;
right: 0;
bottom: 0;
z-index: 101; /* #p-personal has z-index of 100 */
}
.qdmodal {
color: #36414f;
background-color: #fff;
border-radius: 3px;
display: flex;
flex-direction: column;
max-height: calc(100% - 50px);
max-width: calc(100% - 50px);
overflow: hidden;
}
@media (max-height: 500px) {
.qdmodal {
max-height: 100%;
}
}
@media (max-width: 500px) {
.qdmodal {
max-width: 100%;
}
}
.qdmodal > section {
flex-grow: 1;
padding: 20px;
min-height: 40px;
overflow-y: auto;
-webkit-overflow-scrolling: touch; /* enable inertia scrolling on mobile */
}
.qdmodal > header,
.qdmodal > footer {
display: flex;
background-color: hsla(0, 0%, 75%, 0.4);
}
.qdmodal > header {
min-height: 22px;
padding: 12px 20px;
}
.qdmodal > footer {
align-items: center;
flex-direction: row-reverse;
min-height: 27px;
padding: 9px;
}
.qdmodal > header > h3 {
flex-grow: 1;
color: inherit;
font-size: 1.3em;
font-weight: bold;
margin: 0;
padding: 0;
text-overflow: ellipsis;
white-space: nowrap;
overflow: hidden;
}
.qdmodal .diff-addedline,
.qdmodal .diff-deletedline,
.qdmodal .diff-context {
font-size: 90%;
}
.qdmodal-close {
width: 28px;
height: 28px;
min-width: 28px;
margin: -12px -20px;
margin-left: 0;
padding: 9px;
}
.qdmodal-button {
border: 1px solid #999;
border-radius: 3px;
color: inherit;
font-size: 0.9em;
line-height: 1;
cursor: default;
white-space: nowrap;
display: block;
height: 1em;
margin-left: 12px;
padding: 6px 12px;
}
.qdmodal-button[href] {
cursor: pointer;
}
.qdmodal-button:visited {
color: inherit;
}
.qdmodal-button[disabled] {
opacity: 0.6;
pointer-events: none;
}
.qdmodal-close,
.qdmodal-button {
transition: background-color 0.2s;
}
.qdmodal-close:hover,
.qdmodal-button:hover {
background-color: #fff;
border-color: #777;
text-decoration: none;
}
/* remove [ and ] brackets from rollback button */
.qdmodal .mw-rollback-link::before,
.qdmodal .mw-rollback-link::after {
content: '';
}
/* dark mode */
.wgl-theme-dark .qdmodal {
color: #cbd9f4;
background: #172136;
}
.wgl-theme-dark .qdmodal > header,
.wgl-theme-dark .qdmodal > footer {
background: #11192a;
}
.wgl-theme-dark .qdmodal .mw-ajax-loader {
filter: invert(1);
}
.wgl-theme-dark .qdmodal-button {
border-color: #596e96;
}
.wgl-theme-dark .qdmodal-close:hover,
.wgl-theme-dark .qdmodal-button:hover {
background: #222e45;
border-color: #596e96;
}
175c5781ce8ba772b7a63f47a6ea0e7432c51148
File:Professions preview 1.jpg
6
306
492
2024-03-22T18:50:01Z
Wolaznik
8
wikitext
text/x-wiki
da39a3ee5e6b4b0d3255bfef95601890afd80709
MediaWiki:Gadgets-definition
8
6
493
437
2024-03-22T18:50:06Z
Habblet
11
/* Tools */
wikitext
text/x-wiki
This page contains the definitions for all gadgets on the wiki. In most cases, code that could be placed in Common.js should be made into a module here instead for granularity and better support for mobile, etc.
Edits to this page should be done with care. When targeting a gadget for mobile, ensure that the gadget '''works''' on mobile properly by debugging it on mobile devices. Some mobile devices do not allow JavaScript to run, or do not run it by default, so there should always be a fallback option for those that do not have JS enabled. <!--For scripts that are intended for use on a lot of pages, it may be a good idea to propose it on the [[Forum:Yew Grove|Yew Grove]] first. -->Gadgets which can be enabled/disabled by the user (on [[Special:Preferences#mw-prefsection-gadgets|Special:Preferences]]) should have a description created on ''Mediawiki:Gadget-gadgetname''.
==Core==
* Less[ResourceLoader|rights=editinterface|dependencies=mediawiki.api|type=general|default|hidden]|Less.js
* tooltips[ResourceLoader|type=general|default|hidden]|tooltips.js
==Tools==
* ezcopy[ResourceLoader|type=general|targets=desktop]|ezcopy.js|ezcopy.css
* QuickDiff[ResourceLoader|type=general|dependencies=mediawiki.Uri,mediawiki.util]|QDmodal.js|QuickDiff.js|QDmodal.css
==Other==
* gadgetLinks[ResourceLoader|type=general|default]|gadgetLinks.js
015fd556b0646e0318d6b579797d54d25fe6bd98
499
493
2024-03-22T18:51:20Z
BlackHawk
10
wikitext
text/x-wiki
This page contains the definitions for all gadgets on the wiki. In most cases, code that could be placed in Common.js should be made into a module here instead for granularity and better support for mobile, etc.
Edits to this page should be done with care. When targeting a gadget for mobile, ensure that the gadget '''works''' on mobile properly by debugging it on mobile devices. Some mobile devices do not allow JavaScript to run, or do not run it by default, so there should always be a fallback option for those that do not have JS enabled. <!--For scripts that are intended for use on a lot of pages, it may be a good idea to propose it on the [[Forum:Yew Grove|Yew Grove]] first. -->Gadgets which can be enabled/disabled by the user (on [[Special:Preferences#mw-prefsection-gadgets|Special:Preferences]]) should have a description created on ''Mediawiki:Gadget-gadgetname''.
==Core==
* Less[ResourceLoader|rights=editinterface|dependencies=mediawiki.api|type=general|default|hidden]|Less.js
* tooltips[ResourceLoader|type=general|default|hidden]|tooltips.js
==Tools==
* batchupload[ResourceLoader|type=general|default|hidden|dependencies=mediawiki.util|rights=upload]|batchupload.js
* dropdown[ResourceLoader|type=general|dependencies=mediawiki.util,mediawiki.api|default]|dropdown.js
* ezcopy[ResourceLoader|type=general|targets=desktop]|ezcopy.js|ezcopy.css
* hotcat[ResourceLoader|rights=upload|type=general]|hotcat.js
* QuickDiff[ResourceLoader|type=general|dependencies=mediawiki.Uri,mediawiki.util]|QDmodal.js|QuickDiff.js|QDmodal.css
* sectionAnchors[ResourceLoader|type=general|default]|sectionAnchors.js|sectionAnchors.css
==Other==
* gadgetLinks[ResourceLoader|type=general|default]|gadgetLinks.js
d5f1674ba6b34fe5dde71421b8bd8a514917c2c0
File:Professions preview 2.jpg
6
307
494
2024-03-22T18:50:19Z
Wolaznik
8
wikitext
text/x-wiki
da39a3ee5e6b4b0d3255bfef95601890afd80709
MediaWiki:Gadget-section-Tools
8
308
495
2024-03-22T18:50:41Z
Habblet
11
Created page with "Tools"
wikitext
text/x-wiki
Tools
4fa8cc860c52b268dc6a3adcde7305e9415db5bb
File:Professions preview 3.jpg
6
309
496
2024-03-22T18:50:50Z
Wolaznik
8
wikitext
text/x-wiki
da39a3ee5e6b4b0d3255bfef95601890afd80709
MediaWiki:Gadget-section-Other
8
310
497
2024-03-22T18:51:00Z
Habblet
11
Created page with "Other"
wikitext
text/x-wiki
Other
6e6a6f2086bb5fe5dbfd17d8d5f502d48759834b
Food
0
311
500
2024-03-22T18:51:53Z
Wolaznik
8
Created page with "'''Food''' can be cooked as a part of the [[Chef]] [[profession]]."
wikitext
text/x-wiki
'''Food''' can be cooked as a part of the [[Chef]] [[profession]].
e322cf7fa19ac46f914afd3f5210aa810172a81a
MediaWiki:Gadget-Less
8
312
501
2024-03-22T18:52:16Z
BlackHawk
10
Created page with "'''Less''': Contains the Less page configurations mapping .less to .css pages (enabled for Administrator+)."
wikitext
text/x-wiki
'''Less''': Contains the Less page configurations mapping .less to .css pages (enabled for Administrator+).
c2889522e3e1628c261bc12508c44a87f4a496b9
Fish
0
313
502
2024-03-22T18:53:18Z
Wolaznik
8
Created page with "'''Fish''' can be caught as a part of the [[Fisher]] [[profession]]."
wikitext
text/x-wiki
'''Fish''' can be caught as a part of the [[Fisher]] [[profession]].
260ffa938d7b7e9786b061291fa5ee7336c6dd66
MediaWiki:Gadget-tooltips
8
314
503
2024-03-22T18:53:31Z
BlackHawk
10
Created page with "'''Tooltips''': Generates tooltips based on a span (button placement) and div (tooltip contents). See [[Template:Tooltip]] and [[Template:Tooltip text]], or [[Module:Tooltip]] for usage."
wikitext
text/x-wiki
'''Tooltips''': Generates tooltips based on a span (button placement) and div (tooltip contents). See [[Template:Tooltip]] and [[Template:Tooltip text]], or [[Module:Tooltip]] for usage.
d8f046f9809f616d394c93cb1d2b7afdac19a0b1
File:Cliffside Path.jpg
6
178
504
315
2024-03-22T18:55:43Z
Habblet
11
wikitext
text/x-wiki
{{Fair use|link=https://cdn.cloudflare.steamstatic.com/steam/apps/2791440/ss_420316c62c7a7e2338a2f84f04d06b17d9dfd159.jpg?t=1710756596}}
c85fa3a6aa5f79db3d6974d075c28e35f3abb611
Brighter Shores
0
51
505
351
2024-03-22T18:55:56Z
Jayden
3
wikitext
text/x-wiki
[[File:Brighter Shores key art.jpg|thumb|The promotional image for Brighter Shores.]]
'''''Brighter Shores''''' is an upcoming game developed by [[Fen Research]] and designed by [[Andrew Gower]]. It will be released in Q3 2024, and will be available for Windows and macOS (Apple Silicon and Intel chipsets).
The game has been under active development since at least 2014 by Gower,{{CiteTwitter|url=https://twitter.com/AndrewCGower/status/1767945130487493010|author=Andrew Gower|date=13 March 2024|accessdate=22 March 2024|quote=Over 10 years!|archiveurl=https://archive.is/rhmtZ|archivedate=22 March 2024}} and was announced officially on 13 March 2024. An initial two-minute trailer was released, which depicts [[player]]s engaging in [[combat]], several [[profession]]s, and a variety of different [[location]]s.{{CiteGeneral|url=https://www.youtube.com/watch?v=ASIbNq_pLQQ|title=Brighter Shores Gameplay Trailer|author=MMOs.com|date=13 March 2024|accessdate=22 March 2024}} The game is {{wp|free-to-play}}, but players can access additional features and content by purchasing the [[Premium Pass]].
Brighter Shores features an ongoing story with hundreds of hours of gameplay.{{CiteGeneral|url=https://store.steampowered.com/app/2791440/Brighter_Shores/|title=Brighter Shores on Steam|author=Valve|date=22 March 2024|accessdate=22 March 2024|archiveurl=https://archive.is/eYgMA|archivedate=22 March 2024}} Players start their journey in [[Hopeport]], as a member of the town guard.
==External links==
* [https://store.steampowered.com/app/2791440/Brighter%20Shores/ Steam page]
* [https://brightershores.com/ Official website]
==References==
{{Reflist}}
[[Category:Games]]
[[Category:Fen Research]]
e165ec3012cc6620697fe78d1b363cf4f9db0cf3
MediaWiki:Common.less/documentation.less
8
315
506
2024-03-22T18:56:14Z
BlackHawk
10
Created page with "/* ================================== [[Template:Documentation]] ================================== */ :root { --documentation-background: @black-haze; --documentation-link-color: @mystic; --documentation-headers-color: @white; --documentation-header-background: @gray-chateau; --documentation-subheader-background: darken( @gray-chateau, 7% ); --documentation-border: @mystic; } .documentation { background: var(--documentation-background); box-shadow: @..."
less
less
/* ==================================
[[Template:Documentation]]
================================== */
:root {
--documentation-background: @black-haze;
--documentation-link-color: @mystic;
--documentation-headers-color: @white;
--documentation-header-background: @gray-chateau;
--documentation-subheader-background: darken( @gray-chateau, 7% );
--documentation-border: @mystic;
}
.documentation {
background: var(--documentation-background);
box-shadow: @box-shadow;
margin: 1em 0;
pre,
code {
background-color: var(--documentation-background);
border-color: var(--documentation-border);
}
h2,
hr {
border-color: var(--documentation-border);
}
}
.documentation-header {
color: var(--documentation-headers-color);
background: var(--documentation-header-background);
font-weight: bold;
padding: 1em 1.5em;
}
// this font-size cannot be placed on .documentation-header
// because it changes the padding em
.documentation-title {
font-size: 1.25em;
}
.documentation-subheader {
color: var(--documentation-headers-color);
background: var(--documentation-subheader-background);
padding: .5em 1.5em;
a,
a:visited,
a:active {
color: var(--documentation-link-color);
}
}
// this font-size cannot be placed on .documentation-subheader
// because it changes the padding em
.documentation-documentation,
.documentation-links {
font-size: .85em;
}
.documentation-content {
padding: 1em 1.5em;
}
/* ==================================
Templatedata tag / [[Template:TemplateData]]
================================== */
.mw-templatedata-doc-params {
dl:not(:empty) {
column-count: 3;
border-top: 1px solid var(--body-border);
margin-bottom: 0.5em;
}
dt::after {
content: ":";
}
dd,
dt {
margin: 0.1em 2em;
min-width: auto;
}
}
.mw-templatedata-doc-muted {
color: var(--subtle-color);
font-style: italic;
}
97c753975b3000374043af9cabd020aa0b75c4d2
File:Chef.jpg
6
211
507
373
2024-03-22T18:56:38Z
Habblet
11
wikitext
text/x-wiki
{{Fair use|link=https://cdn.cloudflare.steamstatic.com/steam/apps/2791440/ss_31e9f81c0550a0bca3a1dd86c8c541320baefb5c.jpg?t=1710756596}}
e03e56093874236ebbd2688b14ee04abbbe25219
MediaWiki:Common.less
8
5
508
282
2024-03-22T18:57:13Z
BlackHawk
10
less
less
/* =============================================================================
* This is the root Less file that is parsed to produce [[MediaWiki:Common.css]].
*
* These styles will be applied to all skins (desktop and mobile).
* -----------------------------------------------------------------------------
* Less documentation: <http://lesscss.org/features/>
* Gadget: <https://meta.weirdgloop.org/w/MediaWiki:Gadget-Less.js>
* Core Less JS: <https://meta.weirdgloop.org/w/MediaWiki:Gadget-Less-core.js>
* Non-standard mixins: <https://meta.weirdgloop.org/w/MediaWiki:Gadget-LessMixins.less>
* Online Less tester: <https://lesscss.org/less-preview/>
* ============================================================================= */
// ===== CSS Variables =====
@common: 'MediaWiki:Common.less';
:root {
--body-main: #feffff;
--body-light: #f2f2f2;
--body-mid: #d0bd97;
--body-dark: #e3e3e3;
--body-border: #000;
--body-background-color: #173a4d;
--button-background: #605443;
--button-color: @white;
--button-border: #3c352a;
--button-dark: #18140c;
--button-light: #3a301d;
--sidebar: #cfc08d;
--background-text-color: #e2dbc8;
--background-link-color: #e2bd8a;
--search-box: #efeee6;
--link-color: #936039;
--redlink-color: #ba0000;
--text-color: @black;
--byline-color: @tundora;
--subtle-color: @boulder;
--admin-blue: #332e75;
--bearcat-green: #13592e;
--awb-purple: #933b96;
--rsw-blue: #438ab6;
--osrsw-brown: #605443;
// used for gallery & thumbs
--thumb-bg: var(--body-light);
--thumb-caption-bg: var(--body-mid);
// for sourceeditor - CodeMirror and WikiEditor's that are only available on
// desktop are also here to not fragment the vars across many files
--sourceeditor-input-background: @white;
--sourceeditor-background: var(--body-light);
--sourceeditor-background-secondary: var(--body-light); // used on .editOptions
--sourceeditor-border: var(--body-mid);
--codemirror-gutter-background: var(--body-mid);
}
// ===== Imports =====
// include fonts first
@import '@{common}/mixins.less';
@import '@{common}/fonts.less'; // Font definitions and font stack definitions
@import '@{common}/variables.less'; // Less variables
@import '@{common}/elements.less'; // HTML elements
@import '@{common}/links.less'; // Link colours
// Interface
@import '@{common}/interface.less'; // MW common elements
@import '@{common}/wikitables.less'; // .wikitable class and etc
@import '@{common}/diff.less'; // Revision differences
@import '@{common}/notifications.less';
@import '@{common}/pagepreviews.less'; // Page preview popups
@import '@{common}/smw.less'; // Semantic MediaWiki
@import '@{common}/tabber.less'; // <tabber>
@import '@{common}/ooui.less'; // OOUI Customisations
@import '@{common}/visualeditor.less'; // VisualEditor
// Templates
@import '@{common}/templates.less'; // Various templates
@import '@{common}/documentation.less'; // [[Template:Documentation]]
@import '@{common}/infobox.less'; // Infobox vars
@import '@{common}/references.less'; // <references>
@import '@{common}/messagebox.less'; // Messagebox templates
// Page specific
@import '@{common}/tiles.less'; // Main page tiles
@import '@{common}/mainpage.less'; // Main page
@import '@{common}/prefs.less'; // Wiki preferences theming
@import '@{common}/specials.less'; // Special pages
// ===== Miscellaneous =====
// hide certain links in sidebar tools
#t-print,
#t-permalink {
display: none;
}
#filetoc {
border-radius: @border-radius;
background: @BODY_MID;
border-color: transparent;
margin: 0.5em auto;
text-align: center;
box-shadow: @box-shadow;
}
// Galleries
li.gallerybox div.thumb {
border: none;
background-color: var(--thumb-bg);
}
.smwfact {
display: none;
}
// applies to mobile talk pages, and smw??
.list-header {
background-color: var(--body-mid);
color: inherit;
}
// Source editor w/o syntaxhighlight; also applies to mobile in case JS is
// turned off
.editOptions {
color: var(--text-color);
background-color: var(--sourceeditor-background-secondary);
border-color: var(--sourceeditor-border);
}
// .json pages
.mw-json {
th,
td {
border-color: var(--wikitable-border);
}
// instead of selecting `tr`, do this to avoid dealing with mw-json-* classes
td {
background: var(--wikitable-bg);
}
th {
background: var(--wikitable-header-bg);
}
}
e761c0cb8ac77cb3e873afc8ecdc229c220d5900
File:Equipment.jpg
6
48
510
74
2024-03-22T18:57:39Z
Habblet
11
wikitext
text/x-wiki
{{Fair use|link=https://cdn.cloudflare.steamstatic.com/steam/apps/2791440/ss_6e048fb31e9bd1825bf5369477ff5f1155bd72eb.jpg?t=1710756596}}
76f6c876d28a0ea31c8d61b397532b2aab3aca76
Combat
0
191
511
371
2024-03-22T18:57:56Z
Habblet
11
wikitext
text/x-wiki
[[File:Equipment.jpg|thumb|right|A preview of player in combat.]]
'''Combat''' is a mechanic in [[Brighter Shores]] in which several [[player]]s or monsters fight. Depending on the [[class]] that is being used, player combat can utilise melee, ranged, or magic.
850baf3086a14b8444a45ed4285fda5a2fcc102c
Template:Tooltip
10
316
512
2024-03-22T19:00:16Z
BlackHawk
10
Created page with "<includeonly>{{#invoke:Tooltip|span}}</includeonly><noinclude>{{/doc}}</noinclude>"
wikitext
text/x-wiki
<includeonly>{{#invoke:Tooltip|span}}</includeonly><noinclude>{{/doc}}</noinclude>
d7ad5170d0a187f871a352c9aa5bb2b68407bdf7
Sense
0
317
513
2024-03-22T19:00:36Z
Jayden
3
Created page with "'''Sense''' is a [[spell]] that [[player]]s can use to detect monsters and objects around them. After casting it, entities in a small area around the player will have tooltips and nameplates displaying their name and information about them.{{CiteTwitter|url=https://twitter.com/AndrewCGower/status/1769048510177948004|author=Andrew Gower|date=16 March 2024|accessdate=22 March 2024|archiveurl=https://archive.is/whgCd|archivedate=22 March 2024|quote=Once you learn the sense..."
wikitext
text/x-wiki
'''Sense''' is a [[spell]] that [[player]]s can use to detect monsters and objects around them. After casting it, entities in a small area around the player will have tooltips and nameplates displaying their name and information about them.{{CiteTwitter|url=https://twitter.com/AndrewCGower/status/1769048510177948004|author=Andrew Gower|date=16 March 2024|accessdate=22 March 2024|archiveurl=https://archive.is/whgCd|archivedate=22 March 2024|quote=Once you learn the sense spell you can highlight everything interactive nearby. No more hunting around for small items!}}
==References==
{{Reflist}}
a5b05dac42839505202214a157b0f40c8074228c
Character
0
318
514
2024-03-22T19:02:07Z
Jayden
3
Redirected page to [[Player]]
wikitext
text/x-wiki
#REDIRECT [[Player]]
2ffc7e7a91be927b1725a157e148ea02e23a0cea
Player
0
168
515
304
2024-03-22T19:02:59Z
Jayden
3
wikitext
text/x-wiki
'''Players''' are human-controlled characters in [[Brighter Shores]]. They have the ability to explore the world, train [[professions]], pick a [[class]], and more.
Players can access all free-to-play areas in the game, but their parent [[account]] owning a [[Premium Pass]] will allow them to access more content. Each player has a character name, which is suffixed with a hash and a series of numbers. Free-to-play players cannot change their character name after creation, but Premium Pass owners are able to set a unique character name (without a suffix) and change their name at any time.
[[Category:Community]]
1c3a3ca451bfc1859506f9b24871d6ac98fa4949
Template:Tooltip/doc
10
319
516
2024-03-22T19:03:19Z
BlackHawk
10
Created page with "{{Documentation|Template:Tooltip}} [[Template:Tooltip]] and [[Template:Tooltip text]] are templates is for generating clickable tooltips to show additional information. They are to be used together. These tooltips '''require JavaScript''', so should only be used for non-essential additional information only. They will not show at all in the mobile skin or if the user has JavaScript disabled. The script powering these tooltips is located at MediaWiki:Gadget-tooltips.js..."
wikitext
text/x-wiki
{{Documentation|Template:Tooltip}}
[[Template:Tooltip]] and [[Template:Tooltip text]] are templates is for generating clickable tooltips to show additional information. They are to be used together.
These tooltips '''require JavaScript''', so should only be used for non-essential additional information only. They will not show at all in the mobile skin or if the user has JavaScript disabled. The script powering these tooltips is located at [[MediaWiki:Gadget-tooltips.js]].
==Usage==
Tooltip usage is much like references. A small snippet is placed in the text to define the position of the tooltip, and the full tooltip text is specified elsewhere.
The tooltip position is specified by [[Template:Tooltip]]. The tooltip content is specified by [[Template:Tooltip text]]. The two are linked together by a name. Each {{t|tooltip text}} must have a unique name, but many {{t|tooltip}}s can refer to that name, to have the same tooltip appear in multiple places. The name is not displayed visibly to the reader. If a name is not specified for a template, a script error is thrown.
The content of a tooltip can be any normal wikicode. '''Remeber to escape | in tables!''' (use <code><nowiki>{{!}}</nowiki></code>, or HTML notation <code><nowiki><table><tr><th><td></nowiki></code> etc. Be aware that due to the nature of the construction of tooltips (within a div tag), whitespace (including additional newlines) will be collapsed to a single space. Use br or p tags to construct multiple paragraphs.
===Basic===
The most basic usage is to use the templates with minimal inputs. The required inputs are:
<pre>{{Tooltip|tooltip name}}
{{Tooltip text
|name = tooltip name
|content = tooltip content
}}</pre>
;Example
<pre>Lorem ipsum dolor sit amet, consectetur adipiscing elit.{{Tooltip|example1}}
{{Tooltip text
|name = example1
|content = Example tooltip content
}}</pre>
Lorem ipsum dolor sit amet, consectetur adipiscing elit.{{Tooltip|example1}}
{{Tooltip text
|name = example1
|content = Example tooltip content
}}
===Advanced===
The tooltip templates have a few additional parameters, which come with defaults:
<pre>{{Tooltip|name|clickable text; default ?}}
{{Tooltip text
|name = tooltip name
|content = tooltip content
|arrow = whether to show an arrow to point at the click point; default yes
|arrowsize = width and height of the arrow (height = 2*width); default 10
|limitwidth = automatically limit width of the tooltip to within content; default yes
|style = additional in-line css to add to the tooltip; default none
}}</pre>
;Additional specification
:''limitwidth''
''limitwidth'' will automatically apply a maximum width to the tooltip, to keep it within content.
Without ''limitwidth'', the default maximum width is 80% of the entire browser window (the body tag). With ''limitwidth'' enabled, it is limited to the width of the (larger) gap between the click point and the edge of content (the tag with id=mw-content-text).
:''style''
The following styles are set during script runtime so can't be used by this parameter:
* left
* right
* top
* max-width (if using ''limitwidth'')
===Module===
To use tooltips within a module, require [[Module:Tooltip]]. The <code>_span</code> and <code>_div</code> functions are available to use to generate the clickable span and the tooltip content, respectively. They accept the same parameters as the templates, in a table. The returned span/div are mw.html objects.
===Examples===
;alt text
<pre>Lorem ipsum dolor sit amet, consectetur adipiscing elit.{{Tooltip|altclick|click here!}}
{{Tooltip text
|name = altclick
|content = Example tooltip content for alt click
}}</pre>
Lorem ipsum dolor sit amet, consectetur adipiscing elit.{{Tooltip|altclick|click here!}}
{{Tooltip text
|name = altclick
|content = Example tooltip content for alt click
}}
;No arrow
<pre>Lorem ipsum dolor sit amet, consectetur adipiscing elit.{{Tooltip|noarrow}}
{{Tooltip text
|name = noarrow
|content = Example tooltip content with no arrow
|arrow = no
}}</pre>
Lorem ipsum dolor sit amet, consectetur adipiscing elit.{{Tooltip|noarrow}}
{{Tooltip text
|name = noarrow
|content = Example tooltip content with no arrow
|arrow = no
}}
;Larger arrow
<pre>Lorem ipsum dolor sit amet, consectetur adipiscing elit.{{Tooltip|largearrow}}
{{Tooltip text
|name = largearrow
|content = Example tooltip content with a bigger arrow
<br /><br />
and more lines in the box
|arrowsize = 20
}}</pre>
Lorem ipsum dolor sit amet, consectetur adipiscing elit.{{Tooltip|largearrow}}
{{Tooltip text
|name = largearrow
|content = Example tooltip content with a bigger arrow
<br /><br />
and more lines in the box
|arrowsize = 20
}}
;Limited width comparison
<pre>Lorem ipsum dolor sit amet, consectetur adipiscing elit.{{Tooltip|limitedwidth}}
Lorem ipsum dolor sit amet, consectetur adipiscing elit.{{Tooltip|unlimitedwidth}}
{{Tooltip text
|name = limitedwidth
|content = Example tooltip with limited width
<br /><br />
Vestibulum sit amet fringilla diam. Phasellus ac magna sapien. Suspendisse potenti. Duis id metus elementum, sagittis massa iaculis, imperdiet sem. Maecenas mollis, massa vitae vehicula mollis, eros mauris posuere mi, vel malesuada tortor lectus a lectus. Aliquam suscipit dignissim consequat. Vestibulum in ipsum orci. Vivamus quis dolor in purus viverra gravida eu quis ipsum.
}}
{{Tooltip text
|name = unlimitedwidth
|limitwidth = no
|content = Example tooltip with unlimited width
<br /><br />
Vestibulum sit amet fringilla diam. Phasellus ac magna sapien. Suspendisse potenti. Duis id metus elementum, sagittis massa iaculis, imperdiet sem. Maecenas mollis, massa vitae vehicula mollis, eros mauris posuere mi, vel malesuada tortor lectus a lectus. Aliquam suscipit dignissim consequat. Vestibulum in ipsum orci. Vivamus quis dolor in purus viverra gravida eu quis ipsum.
}}</pre>
Lorem ipsum dolor sit amet, consectetur adipiscing elit.{{Tooltip|limitedwidth}}
Lorem ipsum dolor sit amet, consectetur adipiscing elit.{{Tooltip|unlimitedwidth}}
{{Tooltip text
|name = limitedwidth
|content = Example tooltip with limited width
<br /><br />
Vestibulum sit amet fringilla diam. Phasellus ac magna sapien. Suspendisse potenti. Duis id metus elementum, sagittis massa iaculis, imperdiet sem. Maecenas mollis, massa vitae vehicula mollis, eros mauris posuere mi, vel malesuada tortor lectus a lectus. Aliquam suscipit dignissim consequat. Vestibulum in ipsum orci. Vivamus quis dolor in purus viverra gravida eu quis ipsum.
}}
{{Tooltip text
|name = unlimitedwidth
|limitwidth = no
|content = Example tooltip with unlimited width
<br /><br />
Vestibulum sit amet fringilla diam. Phasellus ac magna sapien. Suspendisse potenti. Duis id metus elementum, sagittis massa iaculis, imperdiet sem. Maecenas mollis, massa vitae vehicula mollis, eros mauris posuere mi, vel malesuada tortor lectus a lectus. Aliquam suscipit dignissim consequat. Vestibulum in ipsum orci. Vivamus quis dolor in purus viverra gravida eu quis ipsum.
}}
;Style
<pre>Lorem ipsum dolor sit amet, consectetur adipiscing elit.{{Tooltip|style}}
{{Tooltip text
|name = style
|content = Example tooltip content with style (background colour)
|style = background:lightgreen;
}}</pre>
Lorem ipsum dolor sit amet, consectetur adipiscing elit.{{Tooltip|style}}
{{Tooltip text
|name = style
|content = Example tooltip content with style (background colour)
|style = background:lightgreen;
}}
;Tables
<pre>Lorem ipsum dolor sit amet, consectetur adipiscing elit.{{Tooltip|table}}
{{tooltip text|name=table|content=Table test
{{{!}} class="wikitable align-right-2 align-right-3" style="margin: 0 auto;"
! Header 1
! Header 2
! Header 3
{{!}}-
{{!}}-
{{!}} Value 1
{{!}} Value 2
{{!}} Value 3
{{!}}-
{{!}} Value 1
{{!}} Value 2
{{!}} Value 3
{{!}}-
{{!}} Value 1
{{!}} Value 2
{{!}} Value 3
{{!}}-
{{!}} Value 1
{{!}} Value 2
{{!}} Value 3
{{!}}-
{{!}} Value 1
{{!}} Value 2
{{!}} Value 3
{{!}}-
{{!}} Value 1
{{!}} Value 2
{{!}} Value 3
{{!}}}
}}</pre>
Lorem ipsum dolor sit amet, consectetur adipiscing elit.{{Tooltip|table}}
{{tooltip text|name=table|content=Table test
{{{!}} class="wikitable align-right-2 align-right-3" style="margin: 0 auto;"
! Header 1
! Header 2
! Header 3
{{!}}-
{{!}}-
{{!}} Value 1
{{!}} Value 2
{{!}} Value 3
{{!}}-
{{!}} Value 1
{{!}} Value 2
{{!}} Value 3
{{!}}-
{{!}} Value 1
{{!}} Value 2
{{!}} Value 3
{{!}}-
{{!}} Value 1
{{!}} Value 2
{{!}} Value 3
{{!}}-
{{!}} Value 1
{{!}} Value 2
{{!}} Value 3
{{!}}-
{{!}} Value 1
{{!}} Value 2
{{!}} Value 3
{{!}}}
}}
<includeonly>[[Category:Formatting templates]]</includeonly>
6790cd49490109913e54d1b8460543a759f50224
Template:Tooltip text
10
320
517
2024-03-22T19:03:33Z
BlackHawk
10
Created page with "<includeonly>{{#invoke:Tooltip|div}}</includeonly><noinclude>{{Tooltip/doc}}</noinclude>"
wikitext
text/x-wiki
<includeonly>{{#invoke:Tooltip|div}}</includeonly><noinclude>{{Tooltip/doc}}</noinclude>
a5229854c7eb4fc29b02fa06f15607d7902cdd5c
MediaWiki:Gadget-dropdown
8
323
520
2024-03-22T19:05:23Z
BlackHawk
10
Created page with "'''MoreDropdown''': Add useful links to the "More" dropdown menu, such as a link to the most recent diff"
wikitext
text/x-wiki
'''MoreDropdown''': Add useful links to the "More" dropdown menu, such as a link to the most recent diff
f7930df3c6d988763b308f9c065f3e02d5bb4648
File:Leech Pools.jpg
6
209
521
368
2024-03-22T19:05:40Z
Habblet
11
wikitext
text/x-wiki
{{Fair use|link=https://cdn.cloudflare.steamstatic.com/steam/apps/2791440/ss_3d06b3a343e43af4f14eaa7ee99a353f3a62d102.jpg?t=1710756596}}
d31d429842baeb941c08e3f8c04e1ef3c676c5d9
MediaWiki:Gadget-dropdown.js
8
324
522
2024-03-22T19:05:50Z
BlackHawk
10
Created page with "/** * Add various useful links to the "More" dropdown menu * * References: * <https://www.mediawiki.org/wiki/ResourceLoader/Core_modules#addPortletLink> * <https://en.wikipedia.org/wiki/Help:Customizing_toolbars> */ $( function () { var conf = mw.config.get([ 'wgPageName', 'wgNamespaceNumber', 'wgArticlePath' ]) if (conf.wgNamespaceNumber === -1) { return; // don't run on special pages } // link to the most recent diff à la Twinkle..."
javascript
text/javascript
/**
* Add various useful links to the "More" dropdown menu
*
* References:
* <https://www.mediawiki.org/wiki/ResourceLoader/Core_modules#addPortletLink>
* <https://en.wikipedia.org/wiki/Help:Customizing_toolbars>
*/
$( function () {
var conf = mw.config.get([
'wgPageName',
'wgNamespaceNumber',
'wgArticlePath'
])
if (conf.wgNamespaceNumber === -1) {
return; // don't run on special pages
}
// link to the most recent diff à la Twinkle
mw.util.addPortletLink(
'p-cactions',
conf.wgArticlePath.replace('$1', encodeURIComponent(conf.wgPageName) + '?diff=cur'),
'Last',
'ca-diff',
'Show most recent diff'
);
// link to subpages of the current page
mw.util.addPortletLink(
'p-cactions',
conf.wgArticlePath.replace('$1', 'Special:PrefixIndex/' + encodeURIComponent(conf.wgPageName) + '/'),
'Subpages',
'ca-subpages',
'List this page\'s subpages'
);
});
8306681ea5585cd5b20817e6f9a1e3e8852201d0
File:Barricades.jpg
6
208
523
366
2024-03-22T19:06:00Z
Habblet
11
wikitext
text/x-wiki
{{Fair use|link=https://cdn.cloudflare.steamstatic.com/steam/apps/2791440/ss_83e3115b2029100ad755ff3b5151719427dc2e51.jpg?t=1710756596}}
521fda842fcb2be58695ee50d3d94f8416be9d7e
File:Tanners Road.jpg
6
207
526
364
2024-03-22T19:07:02Z
Habblet
11
wikitext
text/x-wiki
{{Fair use|link=https://cdn.cloudflare.steamstatic.com/steam/apps/2791440/ss_459e8632dde9e6b2f67a2cb9eff42168444e9696.jpg?t=1710756596}}
6e9fb3a459f66d9097aa68f57bf2f639ea5729ca
File:Account.jpg
6
327
527
2024-03-22T19:07:10Z
Jayden
3
wikitext
text/x-wiki
da39a3ee5e6b4b0d3255bfef95601890afd80709
Account
0
328
528
2024-03-22T19:07:14Z
Jayden
3
Created page with "[[File:Account.jpg|thumb|A view of a player's three accounts.]] An '''account''' is the profile of a human person who is playing [[Brighter Shores]]. Each account can create three [[player|characters]]. Accounts are free-to-play by default, but a player can purchase the [[Premium Pass]] to access additional content. Accounts which own a Premium Pass gain the benefits for all three of their account's characters.{{CiteTwitter|url=https://twitter.com/AndrewCGower/status/17..."
wikitext
text/x-wiki
[[File:Account.jpg|thumb|A view of a player's three accounts.]]
An '''account''' is the profile of a human person who is playing [[Brighter Shores]]. Each account can create three [[player|characters]].
Accounts are free-to-play by default, but a player can purchase the [[Premium Pass]] to access additional content. Accounts which own a Premium Pass gain the benefits for all three of their account's characters.{{CiteTwitter|url=https://twitter.com/AndrewCGower/status/1771227689514315873|author=Andrew Gower|date=22 March 2024|accessdate=22 March 2024|archiveurl=https://archive.is/a5xQT|archivedate=22 March 2024|quote=Brighter Shores allows up to 3 characters per account. And they can all share a single premium pass.}}
==References==
{{Reflist}}
55d2d5dd176239cd64803af4649a938afea1b389
File:Bone Vats.jpg
6
206
529
362
2024-03-22T19:07:19Z
Habblet
11
wikitext
text/x-wiki
{{Fair use|link=https://cdn.cloudflare.steamstatic.com/steam/apps/2791440/ss_16c49b7d139008412bedc1ae1d74325b95aecfd5.jpg?t=1710756596}}
856c5a96567dabedeee8d067030a17c6505f162b
File:Woodcutter.jpg
6
205
530
360
2024-03-22T19:07:45Z
Habblet
11
wikitext
text/x-wiki
{{Fair use|link=https://cdn.cloudflare.steamstatic.com/steam/apps/2791440/ss_b6022e939a9a1094b1433fa4144af8b25ccadd5a.jpg?t=1710756596}}
193b3afdce4e20a62dc1a473ad7a908a99d8cebf
Factions
0
72
531
382
2024-03-22T19:08:15Z
Jayden
3
Jayden moved page [[Classes]] to [[Factions]]: shown as "factions" in https://twitter.com/AndrewCGower/status/1771227689514315873
wikitext
text/x-wiki
[[File:Classes.jpg|thumb|right|Examples of the three classes.]]
'''Classes''' in [[Brighter Shores]] allow the [[player]] to specialise in using a specific [[combat]] style.
==Classes==
* The [[Cryoknight]] class is focused on melee combat, using weapons like [[sword]]s alongside a [[shield]]
* [[Guardian]]s use ranged combat, preferring to wield weapons like [[crossbow]]s
* The [[Hammermage]] class fights using a mix of melee and magic
{{Classes}}
dec9d1a43e6cc9c6f64327bb91a652b11896df0b
534
531
2024-03-22T19:08:35Z
Jayden
3
wikitext
text/x-wiki
[[File:Factions.jpg|thumb|right|Examples of the three factions.]]
'''Factions''' in [[Brighter Shores]] allow the [[player]] to specialise in using a specific [[combat]] style.
==Classes==
* The [[Cryoknight]] faction is focused on melee combat, using weapons like [[sword]]s alongside a [[shield]]
* [[Guardian]]s use ranged combat, preferring to wield weapons like [[crossbow]]s
* The [[Hammermage]] faction fights using a mix of melee and magic
{{Factions}}
0da7d33d409637c8797e293290f5c01a91f86abe
Classes
0
329
532
2024-03-22T19:08:15Z
Jayden
3
Jayden moved page [[Classes]] to [[Factions]]: shown as "factions" in https://twitter.com/AndrewCGower/status/1771227689514315873
wikitext
text/x-wiki
#REDIRECT [[Factions]]
7e69f77fb2cf8770075a36e2a256a08c5a03766a
File:Goblin Marketplace.jpg
6
204
533
357
2024-03-22T19:08:21Z
Habblet
11
wikitext
text/x-wiki
{{Fair use|link=https://cdn.cloudflare.steamstatic.com/steam/apps/2791440/ss_8f0e6ffa83d8b346a1125622811bcd51a45bea21.jpg?t=1710756596}}
e27c20706333d253ed416bd33b1a830e479f5e2a
MediaWiki:Gadget-sectionAnchors
8
330
535
2024-03-22T19:08:40Z
BlackHawk
10
Created page with "'''SectionAnchors''': Add a clickable anchor link to the left when hovering over a section heading"
wikitext
text/x-wiki
'''SectionAnchors''': Add a clickable anchor link to the left when hovering over a section heading
b85e86451efe45a619f4f42b9123fe1e2cd5964c
File:The Deletectable Dab Restaurant.jpg
6
202
536
355
2024-03-22T19:08:45Z
Habblet
11
wikitext
text/x-wiki
{{Fair use|link=https://cdn.cloudflare.steamstatic.com/steam/apps/2791440/ss_d540de4de1d87730b568463acfb5f2259af53bc5.jpg?t=1710756596}}
7be94436019156f05868017b3e68cabc46f957bb
Template:Factions
10
190
537
331
2024-03-22T19:08:45Z
Jayden
3
Jayden moved page [[Template:Classes]] to [[Template:Factions]]: shown as "factions" in https://twitter.com/AndrewCGower/status/1771227689514315873
wikitext
text/x-wiki
{{Navbox
|name = Classes
|title = [[Classes]]
|style1 = text-align:center
|group1 =
* [[Cryoknight]]
* [[Guardian]]
* [[Hammermage]]
}}{{Ctg|Classes}}
a7d3f2a0cd90bdf75e8f185dc76929d5eefe701c
539
537
2024-03-22T19:08:57Z
Jayden
3
wikitext
text/x-wiki
{{Navbox
|name = Factions
|title = [[Factions]]
|style1 = text-align:center
|group1 =
* [[Cryoknight]]
* [[Guardian]]
* [[Hammermage]]
}}{{Ctg|Factions}}
583999c008241525fb38ab0c75837c27d0d46443
Template:Classes
10
331
538
2024-03-22T19:08:45Z
Jayden
3
Jayden moved page [[Template:Classes]] to [[Template:Factions]]: shown as "factions" in https://twitter.com/AndrewCGower/status/1771227689514315873
wikitext
text/x-wiki
#REDIRECT [[Template:Factions]]
4788398b4ba99f24e73bf26b3860a5aa52368ffc
Category:Factions
14
125
540
333
2024-03-22T19:09:10Z
Jayden
3
Jayden moved page [[Category:Classes]] to [[Category:Factions]] without leaving a redirect: shown as "factions" in https://twitter.com/AndrewCGower/status/1771227689514315873
wikitext
text/x-wiki
{{Categoryheader|pages|[[class]]es}}
[[Category:Content]]
8121a80df1c7f4a25cec3ab28d8ea6da722652d5
542
540
2024-03-22T19:09:21Z
Jayden
3
wikitext
text/x-wiki
{{Categoryheader|pages|[[factions]]}}
[[Category:Content]]
c6acbb0cb12c87f9374ec75779cea5dd2a91bc58
File:Lani's Curiosities.jpg
6
182
541
321
2024-03-22T19:09:19Z
Habblet
11
wikitext
text/x-wiki
{{Fair use|link=https://cdn.cloudflare.steamstatic.com/steam/apps/2791440/ss_fa729ea6cdd69820f5800ea5037bfe0f41259287.jpg?t=1710756596}}
727ee6fc15e8fd143cb2599824a08ca1d005c73a
MediaWiki:Gadget-sectionAnchors.js
8
332
543
2024-03-22T19:09:22Z
BlackHawk
10
Created page with "/** * Vector HeadAnchors * @source https://www.mediawiki.org/wiki/MediaWiki:Gadget-vector-headanchor.js * @revision 2015-03-07 * * @license http://krinkle.mit-license.org/ * @author Timo Tijhof, 2013–2015 * * See also: * https://www.mediawiki.org/wiki/Requests_for_comment/Clickable_section_anchors * https://phabricator.wikimedia.org/T18691 */ ( function ( $, mw ) { if ( mw.config.get('wgIsMainPage') ) { // Don't run on the main page, where..."
javascript
text/javascript
/**
* Vector HeadAnchors
* @source https://www.mediawiki.org/wiki/MediaWiki:Gadget-vector-headanchor.js
* @revision 2015-03-07
*
* @license http://krinkle.mit-license.org/
* @author Timo Tijhof, 2013–2015
*
* See also:
* https://www.mediawiki.org/wiki/Requests_for_comment/Clickable_section_anchors
* https://phabricator.wikimedia.org/T18691
*/
( function ( $, mw ) {
if ( mw.config.get('wgIsMainPage') ) {
// Don't run on the main page, where we use section headings extensively
return
}
function copyURL () {
var $this = $(this),
mwconf = mw.config.get(['wgServer', 'wgArticlePath', 'wgPageName']),
hash = $this.attr('href'),
url = mwconf.wgServer + mwconf.wgArticlePath.replace('$1', mwconf.wgPageName) + hash,
txt = document.createElement('textarea'),
$txt = $(txt);
$txt.text(url).css({
position: 'fixed',
top: 0,
left: 0,
width: '2em',
heigh: '2em',
padding: 0,
border: 'none',
outline: 'none',
boxShadow: 'none',
background: 'transparent'
}).appendTo('body');
txt.select();
try {
document.execCommand('copy');
$this.addClass('bsw-secanch-copied');
setTimeout(function(){$this.removeClass('bsw-secanch-copied')}, 2500)
} catch (err) {}
$txt.remove();
}
$( '.mw-headline' ).each( function ( i, el ) {
var id = el.id,
$headline = $( el ),
$header = $headline.parent();
// If MediaWiki core's anchor is here, or if ours is here already, skip.
if ( !id || $header.find( '.mw-headline-anchor,.mw-headline-headanchor').length ) {
return;
}
$headline.removeAttr('id')
$header.addClass( 'mw-header' ).prepend(
$( '<a>' ).prop({
id: id,
href: '#' + id,
title: 'Link to this section',
className: 'mw-headline-headanchor'
}).click(copyURL)
);
} );
}( jQuery, mediaWiki ) );
f348e6f5fb76107727cbc8a0e580601267dde8b3
File:Factions.jpg
6
215
544
381
2024-03-22T19:09:38Z
Jayden
3
Jayden moved page [[File:Classes.jpg]] to [[File:Factions.jpg]]: shown as "factions" in https://twitter.com/AndrewCGower/status/1771227689514315873
wikitext
text/x-wiki
da39a3ee5e6b4b0d3255bfef95601890afd80709
File:Classes.jpg
6
333
545
2024-03-22T19:09:38Z
Jayden
3
Jayden moved page [[File:Classes.jpg]] to [[File:Factions.jpg]]: shown as "factions" in https://twitter.com/AndrewCGower/status/1771227689514315873
wikitext
text/x-wiki
#REDIRECT [[File:Factions.jpg]]
714a7a3a7455e0ab4daffb1ec5fd8de2653c31e4
MediaWiki:Gadget-sectionAnchors.css
8
334
546
2024-03-22T19:10:04Z
BlackHawk
10
Created page with "/** * Vector HeadAnchors * @source https://www.mediawiki.org/wiki/MediaWiki:Gadget-vector-headanchor.css * * @license http://krinkle.mit-license.org/ * @author Timo Tijhof, 2013–2014 * * See also: * https://www.mediawiki.org/wiki/Requests_for_comment/Clickable_section_anchors * https://phabricator.wikimedia.org/T18691 */ .mw-header { position: relative; /* Disable Vector's `overflow: hidden` because otherwise our negatively positioned anchor won't be vis..."
css
text/css
/**
* Vector HeadAnchors
* @source https://www.mediawiki.org/wiki/MediaWiki:Gadget-vector-headanchor.css
*
* @license http://krinkle.mit-license.org/
* @author Timo Tijhof, 2013–2014
*
* See also:
* https://www.mediawiki.org/wiki/Requests_for_comment/Clickable_section_anchors
* https://phabricator.wikimedia.org/T18691
*/
.mw-header {
position: relative;
/*
Disable Vector's `overflow: hidden` because otherwise
our negatively positioned anchor won't be visible.
By itself, showing overflow would cause two problems:
1. We normally hide overflow for a reason. Namely, to ensure
that infoboxes and thumbnails retain their margins and thus
things like heading bottom borders will stay away from the
edge of these floated boxes.
2. Headanchor needs `position: relative`, which affects stacking
context (like z-index). If we don't hide overflow, that means
the heading and its border etc will render over top and
strike-through any content in the thumbnail and infobox.
We solve both of these by bringing back the "create block-formatting
context" behaviour of `overflow: hidden` with `display: flex-root`.
This isn't supported in all Basic browsers, but good enough for
this gadget.
Thanks [[User:Tgr]]!
*/
overflow: visible;
display: flow-root;
}
.mw-headline-headanchor {
padding-left: 25px;
margin-left: -25px;
background-size: 15px;
background-repeat: no-repeat;
background-position: 50% 50%;
}
.mw-headline-headanchor,
.mw-headline-headanchor:hover,
.mw-headline-headanchor:visited {
color: inherit;
text-decoration: none;
}
.mw-headline-headanchor:focus {
outline: 0;
}
.mw-header:hover .mw-headline-headanchor,
.mw-headline-headanchor:target {
background-image: url('filepath://Section anchor light.svg');
}
body.wgl-theme-dark .mw-header:hover .mw-headline-headanchor,
body.wgl-theme-dark .mw-headline-headanchor:target {
background-image: url('filepath://Section anchor dark.svg');
}
/**
* fix section heading being hidden underneath sticky header
* source: <https://css-tricks.com/hash-tag-links-padding/>
*/
body.wgl-stickyheader.action-view .mw-headline-headanchor:target {
display: block;
position: relative;
bottom: -1.25rem;
background-position: left bottom;
z-index: -1;
}
body.wgl-stickyheader.action-view .mw-headline-headanchor:target::before {
display: block;
content: '';
margin-top: -4rem;
height: 4rem;
visibility: hidden;
pointer-events: none;
}
/* override [[MediaWiki:Common.less/interface.less]] - sticky header hack uses
a different selector when this gadget is disabled */
body.wgl-stickyheader.action-view .mw-headline:target::before {
display: none;
}
/* animate copied anchor link */
.mw-headline-headanchor.bsw-secanch-copied {
position: relative;
}
.mw-headline-headanchor.bsw-secanch-copied:before {
content: '';
position: absolute;
top: 0;
left: 0;
width: 100%;
height: 100%;
animation-name: bswsecanchclick;
animation-duration: 1s;
animation-timing-function:linear;
animation-iteration-count: 1;
border-radius: 0.3em;
}
@keyframes bswsecanchclick {
from {background: transparent; border-color:white;}
20% {background:#c3e8a3; border-color:#c3e8a3;}
to {}
}
3e9d98b9924480a34cb78aa1f0fe8bd464d9ecfe
File:Truck Cave.jpg
6
199
547
349
2024-03-22T19:10:10Z
Habblet
11
wikitext
text/x-wiki
{{Fair use|link=https://cdn.cloudflare.steamstatic.com/steam/apps/2791440/ss_d546e095ffb4254def6933a4cfc3c22ea281f639.jpg?t=1710756596}}
aabec5ca5feee0550e620090b53c6486476d736a
File:Hopeport Obelisk.jpg
6
212
548
374
2024-03-22T19:10:48Z
Habblet
11
wikitext
text/x-wiki
{{Fair use|link=https://cdn.cloudflare.steamstatic.com/steam/apps/2791440/ss_a04575cf395e94a7e9528aecbc99380d97c0f4e1.jpg?t=1710756596}}
e8bba9227a89b2cbe14eb3da3de32ffc22309eb0
File:Section anchor light.svg
6
335
549
2024-03-22T19:11:12Z
BlackHawk
10
wikitext
text/x-wiki
da39a3ee5e6b4b0d3255bfef95601890afd80709
File:Premium Pass comparison.png
6
336
550
2024-03-22T19:11:31Z
Jayden
3
wikitext
text/x-wiki
da39a3ee5e6b4b0d3255bfef95601890afd80709
Hopeport Obelisk
0
97
551
375
2024-03-22T19:12:15Z
Habblet
11
wikitext
text/x-wiki
[[File:Hopeport Obelisk.jpg|thumb|right|A preview of the Hopeport Obelisk.]]
The '''Hopeport Obelisk''' is a location near [[Hopeport]]. It is likely that it will be used as a fast travel location.
==Trivia==
* Hopeport Obelisk is featured in the ''[[Brighter Shores]]'' logo.
[[Category:Locations]]
8490ef86096b1dcfee5c37a452d2c6dcab5206eb
Passive activity
0
200
552
352
2024-03-22T19:12:51Z
Jayden
3
Jayden moved page [[Passive Activity]] to [[Passive activity]]
wikitext
text/x-wiki
A '''Passive Activity''' is an activity that will continue to occur while you are logged out.
6223bb882d87106888dac951e15104ad9f21c9ec
Passive Activity
0
337
553
2024-03-22T19:12:51Z
Jayden
3
Jayden moved page [[Passive Activity]] to [[Passive activity]]
wikitext
text/x-wiki
#REDIRECT [[Passive activity]]
cf149ec70384ed0b6cd348ae2ff6414ed1959697
Template:Main Page/Contents
10
46
554
85
2024-03-22T19:13:04Z
Jayden
3
wikitext
text/x-wiki
<noinclude>{{/doc}}</noinclude>__NOTOC__<div class="mainpage-contents tile-row">
<div class="contents-professions tile-halves">
<div class="tile-top tile-image">[[File:Professions.jpg|link=Professions]]</div>
<div class="tile-bottom link-button"><h2>[[Professions]]</h2></div>
</div>
<div class="contents-equipment tile-halves">
<div class="tile-top tile-image">[[File:Factions.jpg|link=Factions]]</div>
<div class="tile-bottom link-button"><h2>[[Factions]]</h2></div>
</div>
<div class="contents-locations tile-halves">
<div class="tile-top tile-image">[[File:Lani's Curiosities.jpg|link=Locations]]</div>
<div class="tile-bottom link-button"><h2>[[Locations]]</h2></div>
</div>
<div class="contents-locations tile-halves">
<div class="tile-top tile-image">[[File:Premium Pass comparison.png|link=Premium Pass]]</div>
<div class="tile-bottom link-button"><h2>[[Premium Pass]]</h2></div>
</div>
</div>
e3dcf45217c8dc214a334a7855e5b9be610ab97f
Brighter Shores
0
51
555
505
2024-03-22T19:13:23Z
Habblet
11
wikitext
text/x-wiki
[[File:Brighter Shores key art.jpg|thumb|The promotional image for Brighter Shores.]]
'''''Brighter Shores''''' is an upcoming game developed by [[Fen Research]] and designed by [[Andrew Gower]]. It will be released in Q3 2024, and will be available for Windows and macOS (Apple Silicon and Intel chipsets).
The game has been under active development since at least 2014 by Gower,{{CiteTwitter|url=https://twitter.com/AndrewCGower/status/1767945130487493010|author=Andrew Gower|date=13 March 2024|accessdate=22 March 2024|quote=Over 10 years!|archiveurl=https://archive.is/rhmtZ|archivedate=22 March 2024}} and was announced officially on 13 March 2024. An initial two-minute trailer was released, which depicts [[player]]s engaging in [[combat]], several [[profession]]s, and a variety of different [[location]]s.{{CiteGeneral|url=https://www.youtube.com/watch?v=ASIbNq_pLQQ|title=Brighter Shores Gameplay Trailer|author=MMOs.com|date=13 March 2024|accessdate=22 March 2024}} The game is {{wp|free-to-play}}, but players can access additional features and content by purchasing the [[Premium Pass]].
Brighter Shores features an ongoing story with hundreds of hours of gameplay.{{CiteGeneral|url=https://store.steampowered.com/app/2791440/Brighter_Shores/|title=Brighter Shores on Steam|author=Valve|date=22 March 2024|accessdate=22 March 2024|archiveurl=https://archive.is/eYgMA|archivedate=22 March 2024}} Players start their journey in [[Hopeport]], as a member of the town guard.
==Trivia==
* The logo of Brighter Shores features [[Hopeport Obelisk]].
==External links==
* [https://store.steampowered.com/app/2791440/Brighter%20Shores/ Steam page]
* [https://brightershores.com/ Official website]
==References==
{{Reflist}}
[[Category:Games]]
[[Category:Fen Research]]
015f3631721cc1eaf49a1f4a3f234a7081bef543
MediaWiki:Gadgets-definition
8
6
556
499
2024-03-22T19:13:34Z
BlackHawk
10
wikitext
text/x-wiki
This page contains the definitions for all gadgets on the wiki. In most cases, code that could be placed in Common.js should be made into a module here instead for granularity and better support for mobile, etc.
Edits to this page should be done with care. When targeting a gadget for mobile, ensure that the gadget '''works''' on mobile properly by debugging it on mobile devices. Some mobile devices do not allow JavaScript to run, or do not run it by default, so there should always be a fallback option for those that do not have JS enabled. <!--For scripts that are intended for use on a lot of pages, it may be a good idea to propose it on the [[Forum:Yew Grove|Yew Grove]] first. -->Gadgets which can be enabled/disabled by the user (on [[Special:Preferences#mw-prefsection-gadgets|Special:Preferences]]) should have a description created on ''Mediawiki:Gadget-gadgetname''.
==Core==
* Less[ResourceLoader|rights=editinterface|dependencies=mediawiki.api|type=general|default|hidden]|Less.js
* bsw-util[ResourceLoader|dependencies=mediawiki.util|targets=desktop,mobile|type=general|default|hidden]|bsw-util.js
* tooltips[ResourceLoader|type=general|default|hidden]|tooltips.js
==Tools==
* batchupload[ResourceLoader|type=general|default|hidden|dependencies=mediawiki.util|rights=upload]|batchupload.js
* dropdown[ResourceLoader|type=general|dependencies=mediawiki.util,mediawiki.api|default]|dropdown.js
* ezcopy[ResourceLoader|type=general|targets=desktop]|ezcopy.js|ezcopy.css
* hotcat[ResourceLoader|rights=upload|type=general]|hotcat.js
* QuickDiff[ResourceLoader|type=general|dependencies=mediawiki.Uri,mediawiki.util]|QDmodal.js|QuickDiff.js|QDmodal.css
* sectionAnchors[ResourceLoader|type=general|default]|sectionAnchors.js|sectionAnchors.css
==Other==
* gadgetLinks[ResourceLoader|type=general|default]|gadgetLinks.js
4763dd5fbdb1e1cfe74f4c9a63544437066fd1af
MediaWiki:Gadget-bsw-util
8
338
557
2024-03-22T19:14:52Z
BlackHawk
10
Created page with "'''BSW Utilities''': Various utilities and functions to help other gadgets. Functions are available under the ''bswiki'' global variable: ''addCommas'', ''parseTemplate'', ''crossDomain'', ''createOOUIWindow'', ''canSendBrowserNotifs'', ''sendBrowserNotif'', ''hasLocalStorage'', ''qsp'', ''getFileURL'', ''isUsingStickyHeader''."
wikitext
text/x-wiki
'''BSW Utilities''': Various utilities and functions to help other gadgets. Functions are available under the ''bswiki'' global variable: ''addCommas'', ''parseTemplate'', ''crossDomain'', ''createOOUIWindow'', ''canSendBrowserNotifs'', ''sendBrowserNotif'', ''hasLocalStorage'', ''qsp'', ''getFileURL'', ''isUsingStickyHeader''.
974a240743ac2ca48c85c113d1b95de5b64df7a9
Premium Pass
0
76
558
296
2024-03-22T19:15:19Z
Jayden
3
wikitext
text/x-wiki
[[File:Premium Pass comparison.png|thumb|A comparison of some of the Premium Pass features.]]
The '''Premium Pass''' is a type of membership that can be purchased using real money. It provides access to a number of new areas and features in [[Brighter Shores]].
While owning the Premium Pass is required to access the benefits, it will not be a recurring subscription.{{CiteGeneral|url=https://www.gamesradar.com/ahead-of-his-new-mmo-runescape-creator-says-games-have-gotten-too-microtransaction-heavy-our-number-one-aim-is-not-monetization-its-players/|title=Ahead of his new MMO, RuneScape creator says games have gotten too microtransaction-heavy: "Our number one aim is not monetization, it's players"|author=Kaan Serin|date=17 March 2024|accessdate=22 March 2024|quote="One of the key differences is we're probably not going to do auto-recurring payments," continues Gower.}}
==Benefits==
There are several benefits to purchasing a Premium Pass:
* Access to the [[Mine of Mantuban]] and [[Crenopolis]]
* Ability to choose a unique character name, and change your name at any point
* Access to exclusive armour dyes
* Ability to [[trade]] with other [[player]]s
==References==
{{Reflist}}
{{Premium Pass}}
[[Category:Community]]
01f0173f1bb039c104cd08b2571af756d0e7cea8
File:Fisher.jpg
6
201
559
353
2024-03-22T19:16:25Z
Habblet
11
wikitext
text/x-wiki
{{Fair use|link=https://cdn.cloudflare.steamstatic.com/steam/apps/2791440/ss_a4ca0fe6babe443f2394c1d9b8527028c2b1649c.jpg?t=1710756596}}
b8e6416585232667aa9ae9e7114fd8903aad54d3
MediaWiki:Gadget-bsw-util.js
8
339
560
2024-03-22T19:16:33Z
BlackHawk
10
Created page with "(function ($, mw, bs) { 'use strict'; function createOOUIWindowManager() { if (window.OOUIWindowManager == undefined) { window.OOUIWindowManager = new OO.ui.WindowManager(); $( 'body' ).append( window.OOUIWindowManager.$element ); } return window.OOUIWindowManager; } /** * Reusable functions * * These are available under the `rswiki` global variable. * @example `rswiki.addCommas` * The alias `rs` is also avai..."
javascript
text/javascript
(function ($, mw, bs) {
'use strict';
function createOOUIWindowManager() {
if (window.OOUIWindowManager == undefined) {
window.OOUIWindowManager = new OO.ui.WindowManager();
$( 'body' ).append( window.OOUIWindowManager.$element );
}
return window.OOUIWindowManager;
}
/**
* Reusable functions
*
* These are available under the `rswiki` global variable.
* @example `rswiki.addCommas`
* The alias `rs` is also available in place of `rswiki`.
*/
var util = {
/**
* Formats a number string with commas.
*
* @todo fully replace this with Number.protoype.toLocaleString
* > 123456.78.toLocaleString('en')
*
* @example 123456.78 -> 123,456.78
*
* @param num {Number|String} The number to format.
* @return {String} The formated number.
*/
addCommas: function (num) {
if (typeof num === 'number') {
return num.toLocaleString('en');
}
// @todo chuck this into parseFloat first and then to toLocaleString?
num += '';
var x = num.split('.'),
x1 = x[0],
x2 = x.length > 1 ?
'.' + x[1] :
'',
rgx = /(\d+)(\d{3})/;
while (rgx.test(x1)) {
x1 = x1.replace(rgx, '$1,$2');
}
return x1 + x2;
},
/**
* Extracts parameter-argument pairs from templates.
*
* @todo Fix for multiple templates
*
* @param tpl {String} Template to extract data from.
* @param text {String} Text to look for template in.
* @return {Object} Object containing parameter-argument pairs
*/
parseTemplate: function (tpl, text) {
var rgx = new RegExp(
'\\{\\{(template:)?' + tpl.replace(/[ _]/g, '[ _]') + '\\s*(\\||\\}\\})',
'i'
),
exec = rgx.exec(text),
// splits template into |arg=param or |param
paramRgx = /\|(.*?(\{\{.+?\}\})?)(?=\s*\||$)/g,
args = {},
params,
i,
j;
// happens if the template is not found in the text
if (exec === null) {
return false;
}
text = text.substring(exec.index + 2);
// used to account for nested templates
j = 0;
// this purposefully doesn't use regex
// as it became very difficult to make it work properly
for (i = 0; i < text.length; i += 1) {
if (text[i] === '{') {
j += 1;
} else if (text[i] === '}') {
if (j > 0) {
j -= 1;
} else {
break;
}
}
}
// cut off where the template ends
text = text.substring(0, i);
// remove template name as we're not interested in it past this point
text = text.substring(text.indexOf('|')).trim();
// separate params and args into an array
params = text.match(paramRgx);
// handle no params/args
if (params !== null) {
// used as an index for unnamed params
i = 1;
params.forEach(function (el) {
var str = el.trim().substring(1),
eq = str.indexOf('='),
tpl = str.indexOf('{{'),
param,
val;
// checks if the equals is after opening a template
// to catch unnamed args that have templates with named args as params
if (eq > -1 && (tpl === -1 || eq < tpl)) {
param = str.substring(0, eq).trim().toLowerCase();
val = str.substring(eq + 1).trim();
} else {
param = i;
val = str.trim();
i += 1;
}
args[param] = val;
});
}
return args;
},
/**
* Helper for making cross domain requests to RuneScape's APIs.
* If the APIs ever enable CORS, we can ditch this and do the lookup directly.
*
* @param url {string} The URL to look up
* @param via {string} One of 'anyorigin', 'whateverorigin' or 'crossorigin'. Defaults to 'anyorigin'.
*
* @return {string} The URLto use to make the API request.
*/
crossDomain: function (url, via) {
switch (via) {
case 'crossorigin':
url = 'http://crossorigin.me/' + url;
break;
case 'whateverorigin':
url = 'http://whateverorigin.org/get?url=' + encodeURIComponent( url ) + '&callback=?';
break;
case 'anyorigin':
default:
url = 'http://anyorigin.com/go/?url=' + encodeURIComponent( url ) + '&callback=?';
break;
}
return url;
},
/**
* Returns the OOUI window manager as a Promise. Will load OOUI (core and windows) and create the manager, if necessary.
*
* @return {jQuery.Deferred} A jQuery Promise where window.OOUIWindowManager is will be defined
* Chaining a .then will pass OOUIWindowManager to the function argument
*/
withOOUIWindowManager: function() {
return mw.loader.using(['oojs-ui-core','oojs-ui-windows']).then(createOOUIWindowManager);
},
/**
* Helper for creating and initializing a new OOUI Dialog object
* After init, the window is added to the global Window Manager.
*
* Will automatically load OOUI (core and windows) and create the window manager, if necessary. window.OOUIWindowManager will be defined within this.
*
* @author Jayden
*
* @param name {string} The symbolic name of the window
* @param title {string} The title of the window
* @param winconfig {object} Object containing params for the OO.ui.Dialog obj
* @param init {function} Function to be called to initialise the object
* @param openNow {boolean} Whether the window should be opened instantly
* @param autoClose {boolean} Autoclose when the user clicks outside of the modal
*
* @return {jquery.Deferred} The jQuery Promise returned by mw.loader.using
* Chaining a .then will pass the created {OO.ui.Dialog} object as the function argument
*/
createOOUIWindow: function(name, title, winconfig, init, openNow, autoClose) {
return mw.loader.using(['oojs-ui-core','oojs-ui-windows']).then(function(){
createOOUIWindowManager();
winconfig = winconfig || {};
function myModal( config ) {
myModal.super.call( this, config );
}
OO.inheritClass( myModal, OO.ui.Dialog );
myModal.static.name = name;
myModal.static.title = title;
myModal.prototype.initialize = function () {
myModal.super.prototype.initialize.call( this );
init(this);
}
var modal = new myModal(winconfig);
console.debug('Adding ' + myModal.static.name + ' to WindowManager');
window.OOUIWindowManager.addWindows( [ modal ] );
if (openNow) {
window.OOUIWindowManager.openWindow(name);
}
if (autoClose) {
$(document).on('click', function (e) {
if (modal && modal.isVisible() && e.target.classList.contains('oo-ui-window-active')) {
modal.close();
};
});
}
return modal;
});
},
/**
* Helper for checking if the user's browser supports desktop notifications
* @author Jayden
*/
canSendBrowserNotifs: function () {
if (!("Notification" in window)) {
console.warn("This browser does not support desktop notifications");
return false;
} else {
return true;
}
},
/**
* Send a desktop/browser notification to a user, requires the page to be open
* @author Jayden
*
* @param https://developer.mozilla.org/en-US/docs/Web/API/Notification/Notification
*
* @return Notification object or null
*/
sendBrowserNotif: function (title, opts) {
if (rs.canSendBrowserNotifs == false) {
return null;
}
Notification.requestPermission().then(function(result) {
if (result === "granted") {
console.debug('Firing desktop notification');
var notif = new Notification(title, opts);
notif.onclick = function(e) {
window.focus();
}
return notif;
} else {
return null;
}
});
},
/**
* Check if the browser has support for localStorage
* @author Jayden
*
* @return boolean
**/
hasLocalStorage: function() {
try {
localStorage.setItem('test', 'test')
localStorage.removeItem('test')
return true
} catch (e) {
return false
}
},
/**
* Gets a query string parameter from given URL or current href
* @author Jayden
*
* @return string or null
**/
qsp: function(name, url) {
if (!url) url = window.location.href;
name = name.replace(/[\[\]]/g, '\\$&');
var regex = new RegExp('[?&]' + name + '(=([^&#]*)|&|#|$)'),
results = regex.exec(url);
if (!results) return null;
if (!results[2]) return '';
return decodeURIComponent(results[2].replace(/\+/g, ' '));
},
/**
* Get the URL for a file on the wiki, aganst the endpoint that is actually cached and fast.
* Should probably not be used for images we expect to change frequently.
* @author cookmeplox
*
* @return string
**/
getFileURLCached: function(filename) {
var base = window.location.origin;
filename = filename.replace(/ /g,"_")
filename = filename.replace(/\(/g, '%28').replace(/\)/g, '%29')
var cb = '48781';
return base + '/images/' + filename + '?' + cb;
},
isUsingStickyHeader: function() {
return ($('body').hasClass('wgl-stickyheader'))
}
};
function init() {
$.extend(bs, util, {});
// add bs as a global alias
window.bs = bs;
}
init();
}(this.jQuery, this.mediaWiki, this.bswiki = this.bswiki || {}));
718acb2a85cf9ea678a31731c86bdf6649f1ccb1
File:Quiet Grove.jpg
6
213
561
377
2024-03-22T19:16:55Z
Habblet
11
wikitext
text/x-wiki
{{Fair use|link=https://cdn.cloudflare.steamstatic.com/steam/apps/2791440/ss_c4d96a9494f98071aab1cf9afbe8fbf00896096c.jpg?t=1710756596}}
6b16b49090068261002d4bee2a7d0c47293040ec
File:Melv's Fishing Supplies.jpg
6
180
562
318
2024-03-22T19:17:16Z
Habblet
11
wikitext
text/x-wiki
{{Fair use|link=https://cdn.cloudflare.steamstatic.com/steam/apps/2791440/ss_25b5b0d3bbc61e6f2d045812b8b1f6895d7ce52f.jpg?t=1710756596}}
1531d07f45243d878995e6126095242f21f76707
File:Southeast Sewer.jpg
6
214
563
379
2024-03-22T19:17:43Z
Habblet
11
wikitext
text/x-wiki
{{Fair use|link=https://cdn.cloudflare.steamstatic.com/steam/apps/2791440/ss_4afca68f498d0ec6ad879617f365d6a29ca838ee.jpg?t=1710756596}}
2aad74e2af9201ea01b10903423996007010dc40
Cryoknight
0
69
564
334
2024-03-22T19:20:04Z
wikitext
text/x-wiki
'''Cryoknight''' is a [[faction]] which specialises in using melee weapons in [[combat]].
{{Classes}}
6cbbeeb8549416e7b037b3fd8ed8f6dd8a6e7dcf
MediaWiki:Gadget-QuickDiff.js
8
340
565
2024-03-22T19:20:18Z
Habblet
11
Created page with "/* <nowiki> QuickDiff - quickly view any diff link Modified to remove Wikia-specific i18n code, relies on [[MediaWiki:Gadget-QDmodal.js]] @author OneTwoThreeFall @source <https://dev.fandom.com/wiki/QuickDiff> @source <https://dev.fandom.com/wiki/MediaWiki:QuickDiff/code.js> */ /*jslint browser, long */ /*global jQuery, mediaWiki, dev */ (function ($, mw) { "use strict"; // double-run protection if (window.quickDiffLoaded) { re..."
javascript
text/javascript
/* <nowiki>
QuickDiff - quickly view any diff link
Modified to remove Wikia-specific i18n code, relies on [[MediaWiki:Gadget-QDmodal.js]]
@author OneTwoThreeFall
@source <https://dev.fandom.com/wiki/QuickDiff>
@source <https://dev.fandom.com/wiki/MediaWiki:QuickDiff/code.js>
*/
/*jslint browser, long */
/*global jQuery, mediaWiki, dev */
(function ($, mw) {
"use strict";
// double-run protection
if (window.quickDiffLoaded) {
return;
}
window.quickDiffLoaded = true;
var diffStylesModule = "mediawiki.action.history.diff";
var modal;
var special = {};
// "Special:Diff/12345" and "Special:ComparePages" link detection
function initSpecialPageStrings() {
special.diffDefault = mw.util.getUrl("Special:Diff/");
special.compareDefault = mw.util.getUrl("Special:ComparePages");
var wiki = mw.config.get("wgDBname");
var storageKeyDiff = "QuickDiff-specialdiff_" + wiki;
var storageKeyCompare = "QuickDiff-specialcompare_" + wiki;
try {
special.diff = localStorage.getItem(storageKeyDiff);
special.compare = localStorage.getItem(storageKeyCompare);
} catch (ignore) {}
if (special.diff && special.compare) {
// using stored values - no need for api request
return;
}
$.getJSON(mw.util.wikiScript("api"), {
action: "parse",
format: "json",
prop: "text",
text: "<span class='diff'>[[Special:Diff/]]</span><span class='compare'>[[Special:ComparePages]]</span>",
disablepp: "" // note: deprecated in MW 1.26, but needed for older versions
}).done(function (data) {
var $parsed = $(data.parse.text["*"]);
special.diff = $parsed.find(".diff > a").attr("href");
special.compare = $parsed.find(".compare > a").attr("href");
try {
localStorage.setItem(storageKeyDiff, special.diff);
localStorage.setItem(storageKeyCompare, special.compare);
} catch (ignore) {}
});
}
function getDiffTitle($diff) {
var prevTitle = $diff.find("#mw-diff-otitle1 a").attr("title");
var currTitle = $diff.find("#mw-diff-ntitle1 a").attr("title");
if (prevTitle && prevTitle !== currTitle) {
return "Differences between " + prevTitle + " and " + currTitle;
}
return "Differences: " + currTitle;
}
function loadDiff(url) {
modal.show({
loading: true,
title: !modal.visible && "Loading..."
});
// add 'action=render' and 'diffonly' params to save some bytes on each request
url.extend({
action: "render",
diffonly: "1"
});
// pass through 'bot' param for rollback links if it's in use on the current page
if (mw.util.getParamValue("bot")) {
url.extend({bot: "1"});
}
$.when(
$.get(url.getRelativePath()),
mw.loader.using(diffStylesModule)
).always(function (response) {
delete url.query.action;
delete url.query.diffonly;
delete url.query.bot;
var data = {
buttons: [{
text: "open link",
href: url.toString(),
attr: {"data-disable-quickdiff": ""}
}]
};
var $diff;
if (typeof response[0] === "string") {
var $content = $(response[0]);
$diff = $content.filter("table.diff, #mw-rev-deleted-no-diff");
if (!$diff.length) {
// $content is a complete page - see if a diff can be found
// needed for diffs from special pages as they ignore action=render URL parameter
$diff = $content.find("table.diff");
}
}
if ($diff && $diff.length) {
data.content = $diff;
data.hook = "quickdiff.ready";
data.title = getDiffTitle($diff);
} else {
data.content = "Something went wrong while getting the page at " + url.toString() + ".";
}
modal.show(data);
});
}
function linkClickHandler(event) {
// ignore clicks with modifier keys to avoid overriding browser features
if (event.altKey || event.ctrlKey || event.metaKey || event.shiftKey) {
return;
}
// ignore click if link has "data-disable-quickdiff" attribute set
if (event.currentTarget.dataset.disableQuickdiff !== undefined) {
return;
}
var url = event.currentTarget.href;
try {
url = new mw.Uri(url);
} catch (ignore) {
// quit if url couldn't be parsed
// it wouldn't be a link QuickDiff could handle anyway
return;
}
// cross-domain requests not supported
if (url.host !== location.hostname) {
return;
}
// no fragment check is to ensure section links/collapsible trigger links on diff pages are ignored
var hasDiffParam = url.query.diff !== undefined
&& url.fragment === undefined;
var isSpecialDiffLink = url.path.indexOf(special.diff) === 0
|| url.path.indexOf(special.diffDefault) === 0;
var isSpecialCompareLink = url.path.indexOf(special.compare) === 0
|| url.path.indexOf(special.compareDefault) === 0;
if (hasDiffParam || isSpecialDiffLink || isSpecialCompareLink) {
event.preventDefault();
loadDiff(url);
}
}
function init() {
modal = new mw.libs.QDmodal("quickdiff-modal");
// full screen modal
mw.util.addCSS("#quickdiff-modal { height: 100%; width: 100% }");
// diff styles module was renamed in MW 1.28
if (mw.loader.getState("mediawiki.diff.styles")) {
diffStylesModule = "mediawiki.diff.styles";
}
// attach to body for compatibility with ajax-loaded content
// also, one attached event handler is better than hundreds!
$(document.body).on("click.quickdiff", "a[href]", linkClickHandler);
initSpecialPageStrings();
}
init();
// collect action links (edit, undo, rollback, patrol) and add them to footer
mw.hook("quickdiff.ready").add(function (modal) {
// edit/undo links use "mw-rev-head-action" class on Wikia,
// and "mw-diff-edit" or "-undo" class on MW 1.24+
var $buttons = modal.$content.find(".diff-ntitle").find(
".mw-rev-head-action, .mw-diff-edit, .mw-diff-undo, .mw-rollback-link, .patrollink"
).clone();
// remove text nodes (the brackets around each link)
$buttons.contents().filter(function (ignore, element) {
return element.nodeType === 3;
}).remove();
$buttons.find("a")
.addClass("qdmodal-button")
.attr("target", "_blank");
modal.$footer.append($buttons);
});
}(jQuery, mediaWiki));
8efd1feee50b2323a852baa909c717bcee90be81
MediaWiki:Gadgets-definition
8
6
566
556
2024-03-22T19:21:53Z
BlackHawk
10
wikitext
text/x-wiki
This page contains the definitions for all gadgets on the wiki. In most cases, code that could be placed in Common.js should be made into a module here instead for granularity and better support for mobile, etc.
Edits to this page should be done with care. When targeting a gadget for mobile, ensure that the gadget '''works''' on mobile properly by debugging it on mobile devices. Some mobile devices do not allow JavaScript to run, or do not run it by default, so there should always be a fallback option for those that do not have JS enabled. <!--For scripts that are intended for use on a lot of pages, it may be a good idea to propose it on the [[Forum:Yew Grove|Yew Grove]] first. -->Gadgets which can be enabled/disabled by the user (on [[Special:Preferences#mw-prefsection-gadgets|Special:Preferences]]) should have a description created on ''Mediawiki:Gadget-gadgetname''.
==Core==
* Less[ResourceLoader|rights=editinterface|dependencies=mediawiki.api|type=general|default|hidden]|Less.js
* bsw-util[ResourceLoader|dependencies=mediawiki.util|targets=desktop,mobile|type=general|default|hidden]|bsw-util.js
* tooltips[ResourceLoader|type=general|default|hidden]|tooltips.js
==Tools==
* batchupload[ResourceLoader|type=general|default|hidden|dependencies=mediawiki.util|rights=upload]|batchupload.js
* contributions[ResourceLoader|type=general|default|dependencies=ext.gadget.rsw-util]|contributions.js
* dropdown[ResourceLoader|type=general|dependencies=mediawiki.util,mediawiki.api|default]|dropdown.js
* editCount[ResourceLoader|type=general|dependencies=ext.gadget.rsw-util]|editCount.js
* ezcopy[ResourceLoader|type=general|targets=desktop]|ezcopy.js|ezcopy.css
* hotcat[ResourceLoader|rights=upload|type=general]|hotcat.js
* Message-names[ResourceLoader|rights=editinterface|type=general|dependencies=mediawiki.util]|Message-names.js
* newPage[ResourceLoader|default|type=general|dependencies=ext.gadget.rsw-util|rights=createpage]|newPage.js
* purge[ResourceLoader|default|type=general|dependencies=ext.gadget.rsw-util,ext.smw.purge,mediawiki.api|hidden]|purge.js
* QuickDiff[ResourceLoader|type=general|dependencies=mediawiki.Uri,mediawiki.util]|QDmodal.js|QuickDiff.js|QDmodal.css
* ReferenceTooltips[ResourceLoader|default|actions=view|type=general|dependencies=ext.gadget.rsw-util]|ReferenceTooltips.js|ReferenceTooltips.css
* sectionAnchors[ResourceLoader|type=general|default]|sectionAnchors.js|sectionAnchors.css
==Other==
* gadgetLinks[ResourceLoader|type=general|default]|gadgetLinks.js
7a20beef2e592d531dcffd958b0aa43418358e00
567
566
2024-03-22T19:25:26Z
BlackHawk
10
wikitext
text/x-wiki
This page contains the definitions for all gadgets on the wiki. In most cases, code that could be placed in Common.js should be made into a module here instead for granularity and better support for mobile, etc.
Edits to this page should be done with care. When targeting a gadget for mobile, ensure that the gadget '''works''' on mobile properly by debugging it on mobile devices. Some mobile devices do not allow JavaScript to run, or do not run it by default, so there should always be a fallback option for those that do not have JS enabled. <!--For scripts that are intended for use on a lot of pages, it may be a good idea to propose it on the [[Forum:Yew Grove|Yew Grove]] first. -->Gadgets which can be enabled/disabled by the user (on [[Special:Preferences#mw-prefsection-gadgets|Special:Preferences]]) should have a description created on ''Mediawiki:Gadget-gadgetname''.
==Core==
* Less[ResourceLoader|rights=editinterface|dependencies=mediawiki.api|type=general|default|hidden]|Less.js
* bsw-util[ResourceLoader|dependencies=mediawiki.util|targets=desktop,mobile|type=general|default|hidden]|bsw-util.js
* tooltips[ResourceLoader|type=general|default|hidden]|tooltips.js
==Tools==
* batchupload[ResourceLoader|type=general|default|hidden|dependencies=mediawiki.util|rights=upload]|batchupload.js
* contributions[ResourceLoader|type=general|default|dependencies=ext.gadget.bsw-util]|contributions.js
* dropdown[ResourceLoader|type=general|dependencies=mediawiki.util,mediawiki.api|default]|dropdown.js
* editCount[ResourceLoader|type=general|dependencies=ext.gadget.bsw-util]|editCount.js
* ezcopy[ResourceLoader|type=general|targets=desktop]|ezcopy.js|ezcopy.css
* hotcat[ResourceLoader|rights=upload|type=general]|hotcat.js
* Message-names[ResourceLoader|rights=editinterface|type=general|dependencies=mediawiki.util]|Message-names.js
* newPage[ResourceLoader|default|type=general|dependencies=ext.gadget.bsw-util|rights=createpage]|newPage.js
* purge[ResourceLoader|default|type=general|dependencies=ext.gadget.bsw-util,ext.smw.purge,mediawiki.api|hidden]|purge.js
* QuickDiff[ResourceLoader|type=general|dependencies=mediawiki.Uri,mediawiki.util]|QDmodal.js|QuickDiff.js|QDmodal.css
* ReferenceTooltips[ResourceLoader|default|actions=view|type=general|dependencies=ext.gadget.bsw-util]|ReferenceTooltips.js|ReferenceTooltips.css
* sectionAnchors[ResourceLoader|type=general|default]|sectionAnchors.js|sectionAnchors.css
==Other==
* gadgetLinks[ResourceLoader|type=general|default]|gadgetLinks.js
1a72e44b384154d6666adf7256bc3fac7198af6d
587
567
2024-03-22T19:33:54Z
BlackHawk
10
wikitext
text/x-wiki
This page contains the definitions for all gadgets on the wiki. In most cases, code that could be placed in Common.js should be made into a module here instead for granularity and better support for mobile, etc.
Edits to this page should be done with care. When targeting a gadget for mobile, ensure that the gadget '''works''' on mobile properly by debugging it on mobile devices. Some mobile devices do not allow JavaScript to run, or do not run it by default, so there should always be a fallback option for those that do not have JS enabled. <!--For scripts that are intended for use on a lot of pages, it may be a good idea to propose it on the [[Forum:Yew Grove|Yew Grove]] first. -->Gadgets which can be enabled/disabled by the user (on [[Special:Preferences#mw-prefsection-gadgets|Special:Preferences]]) should have a description created on ''Mediawiki:Gadget-gadgetname''.
==Core==
* autosort[ResourceLoader|type=general|dependencies=ext.gadget.bsw-util,ext.gadget.highlightTable|targets=desktop,mobile|default]|autosort.js
* Less[ResourceLoader|rights=editinterface|dependencies=mediawiki.api|type=general|default|hidden]|Less.js
* bsw-util[ResourceLoader|dependencies=mediawiki.util|targets=desktop,mobile|type=general|default|hidden]|bsw-util.js
* tooltips[ResourceLoader|type=general|default|hidden]|tooltips.js
* uncheckfileredirects[ResourceLoader|type=general|rights=suppressredirect|default|hidden]|UncheckFileRedirect.js
==Tools==
* batchupload[ResourceLoader|type=general|default|hidden|dependencies=mediawiki.util|rights=upload]|batchupload.js
* contributions[ResourceLoader|type=general|default|dependencies=ext.gadget.bsw-util]|contributions.js
* dropdown[ResourceLoader|type=general|dependencies=mediawiki.util,mediawiki.api|default]|dropdown.js
* editCount[ResourceLoader|type=general|dependencies=ext.gadget.bsw-util]|editCount.js
* ezcopy[ResourceLoader|type=general|targets=desktop]|ezcopy.js|ezcopy.css
* hotcat[ResourceLoader|rights=upload|type=general]|hotcat.js
* Message-names[ResourceLoader|rights=editinterface|type=general|dependencies=mediawiki.util]|Message-names.js
* newPage[ResourceLoader|default|type=general|dependencies=ext.gadget.bsw-util|rights=createpage]|newPage.js
* purge[ResourceLoader|default|type=general|dependencies=ext.gadget.bsw-util,ext.smw.purge,mediawiki.api|hidden]|purge.js
* QuickDiff[ResourceLoader|type=general|dependencies=mediawiki.Uri,mediawiki.util]|QDmodal.js|QuickDiff.js|QDmodal.css
* ReferenceTooltips[ResourceLoader|default|actions=view|type=general|dependencies=ext.gadget.bsw-util]|ReferenceTooltips.js|ReferenceTooltips.css
* sectionAnchors[ResourceLoader|type=general|default]|sectionAnchors.js|sectionAnchors.css
==Other==
* gadgetLinks[ResourceLoader|type=general|default]|gadgetLinks.js
9b2e9f08fb03db5aa570696d1d372f5b4196956f
MediaWiki:Gadget-contributions
8
341
568
2024-03-22T19:25:44Z
BlackHawk
10
Created page with "'''Contributions''': Adds a tab in the top left linking to a user's contributions"
wikitext
text/x-wiki
'''Contributions''': Adds a tab in the top left linking to a user's contributions
dc4b5e70b0551a55757afe74e4d2eee846cb3c52
MediaWiki:Gadget-contributions.js
8
342
569
2024-03-22T19:26:14Z
BlackHawk
10
Created page with "/** * Adds a contribution link on User, User talk and Contributions as a PortletLink * @author Jr_Mime */ (function ($, mw, bs) { $( document ).ready(function() { if (mw.config.get('wgNamespaceNumber') === 2 || mw.config.get('wgNamespaceNumber') === 3) { mw.util.addPortletLink( 'p-namespaces', mw.util.getUrl('Special:Contributions/' + mw.config.get('wgRelevantUserName')), 'Contributions', 'ca-nstab-contributions', 'Clic..."
javascript
text/javascript
/**
* Adds a contribution link on User, User talk and Contributions as a PortletLink
* @author Jr_Mime
*/
(function ($, mw, bs) {
$( document ).ready(function() {
if (mw.config.get('wgNamespaceNumber') === 2 || mw.config.get('wgNamespaceNumber') === 3) {
mw.util.addPortletLink(
'p-namespaces',
mw.util.getUrl('Special:Contributions/' + mw.config.get('wgRelevantUserName')),
'Contributions',
'ca-nstab-contributions',
'Click to open the user\'s contributions'
);
}
});
})(jQuery, mediaWiki, bswiki);
265f368c1d46ef4eacc8192482d023e8cabb0e79
MediaWiki:Gadget-editCount
8
343
570
2024-03-22T19:26:34Z
BlackHawk
10
Created page with "'''EditCount''': View a user's editcount from their profile, talk page or contributions"
wikitext
text/x-wiki
'''EditCount''': View a user's editcount from their profile, talk page or contributions
a7caa1e17b646bac2e82aecc17b1b71de315cfe3
MediaWiki:Gadget-editCount.js
8
344
571
2024-03-22T19:27:25Z
BlackHawk
10
Created page with "/** * Adds total edit count on User, User talk and Contributions as a PortletLink * @author Jr_Mime */ (function ($, mw, bs) { $( document ).ready(function() { if (mw.config.get('wgNamespaceNumber') === 2 || mw.config.get('wgNamespaceNumber') === 3 || mw.config.get("wgCanonicalSpecialPageName") == "Contributions") { var user = mw.config.get('wgRelevantUserName'); mw.util.addPortletLink( 'p-namespaces', mw.util.getUrl('Special:EditCount/' +..."
javascript
text/javascript
/**
* Adds total edit count on User, User talk and Contributions as a PortletLink
* @author Jr_Mime
*/
(function ($, mw, bs) {
$( document ).ready(function() {
if (mw.config.get('wgNamespaceNumber') === 2 || mw.config.get('wgNamespaceNumber') === 3 || mw.config.get("wgCanonicalSpecialPageName") == "Contributions") {
var user = mw.config.get('wgRelevantUserName');
mw.util.addPortletLink(
'p-namespaces',
mw.util.getUrl('Special:EditCount/' + user),
'.. edits',
'ca-nstab-editcount',
'Click to open the user\'s full editcount'
);
$.post("/w/Special:EditCount/" + user).done(function (data) {
if (!$(data).find("#editcount > table > tbody > tr:nth-child(2) > td:nth-child(2) > table > tbody > tr:nth-child(1) > th:nth-child(2)").length) {
$("#ca-nstab-editcount").css("display","none");
return;
} else {
$("#ca-nstab-editcount > a").text($(data).find("#editcount > table > tbody > tr:nth-child(2) > td:nth-child(2) > table > tbody > tr:nth-child(1) > th:nth-child(2)").text() + ' edits')
}
});
}
});
})(jQuery, mediaWiki, bswiki);
6861e110bbb9cf57034eea6348945ea5694fbf3b
MediaWiki:Gadget-newPage
8
347
574
2024-03-22T19:28:43Z
BlackHawk
10
Created page with "'''NewPage''': Add a "Make new page" link to the sidebar"
wikitext
text/x-wiki
'''NewPage''': Add a "Make new page" link to the sidebar
5c446ef0555ebb417c55697289ca414896541815
MediaWiki:Gadget-newPage.js
8
348
575
2024-03-22T19:29:10Z
BlackHawk
10
Created page with ";(function($, mw, bs){ var $button, $window; function createWindow(modal){ modal.content = new OO.ui.PanelLayout({ padded: true, expanded: false }); var pagenameInput = new OO.ui.TextInputWidget({placeholder: 'full page name including namespace', type: 'text', id: 'gadget-newpage-pagename'}); var submitButton = new OO.ui.ButtonInputWidget({ label: 'Create', flags: ['primary', 'progressive']}); var cancelButton = new OO.ui.ButtonInputWidget({ label: 'Cancel',..."
javascript
text/javascript
;(function($, mw, bs){
var $button, $window;
function createWindow(modal){
modal.content = new OO.ui.PanelLayout({ padded: true, expanded: false });
var pagenameInput = new OO.ui.TextInputWidget({placeholder: 'full page name including namespace', type: 'text', id: 'gadget-newpage-pagename'});
var submitButton = new OO.ui.ButtonInputWidget({ label: 'Create', flags: ['primary', 'progressive']});
var cancelButton = new OO.ui.ButtonInputWidget({ label: 'Cancel', flags: 'destructive'});
var submitAction = function(modal) {
var page = pagenameInput.getValue();
if (page == '') return;
var url = mw.util.getUrl(page, {action: 'edit'});
window.location.assign(url);
};
submitButton.on('click', submitAction);
pagenameInput.on('enter', submitAction);
cancelButton.on('click', function(modal){window.OOUIWindowManager.closeWindow(modal);}, [modal]);
var fieldset = new OO.ui.FieldsetLayout({});
fieldset.addItems([
new OO.ui.FieldLayout(pagenameInput, { label: 'Page name', help: 'Full page name of the page to created, including namespace' })
]);
modal.content.$element.append(fieldset.$element, '<br>', cancelButton.$element, submitButton.$element);
modal.$body.append(modal.content.$element);
}
function openWindow(e){
e.preventDefault();
if ($window == undefined) {
bs.createOOUIWindow('gadget-newpage-window', 'Create new page', {}, createWindow, true).then(function(w){
$window = w;
});
} else {
window.OOUIWindowManager.openWindow('gadget-newpage-window');
}
}
function init(){
$button = $('<li>').attr('id', 't-gadget-newpage').append($('<a>').attr('href', '#').text('Make new page'));
$button.click(openWindow);
$('#p-tb .vector-menu-content ul').append($button);
}
$(init);
})(window.$, window.mw, window.bswiki);
ec4be87025091b6a3f865ab4d46a9c541f52a5a9
MediaWiki:Gadget-purge
8
349
576
2024-03-22T19:29:33Z
BlackHawk
10
Created page with "'''Purge''': Purge button function, performs a null edit instead of an ''ext.smw.purge''"
wikitext
text/x-wiki
'''Purge''': Purge button function, performs a null edit instead of an ''ext.smw.purge''
2f5273f43f15804216c8dad9d06ffb6ba2db79ef
MediaWiki:Gadget-purge.js
8
350
577
2024-03-22T19:30:05Z
BlackHawk
10
Created page with "(function($, mw, bs){ function purgePage(e) { mw.notify("The page is now purging and will refresh when it is ready.", { title: 'Purging', tag: 'purge', autoHide: false }); (new mw.Api()).post({ action: 'purge', titles: mw.config.get('wgPageName') }).then(function(){ window.location.reload(); }, function(){ var uri = new mw.Uri(); uri.query.action = 'purge'; mw.notify($.parseHTML('Purging the page failed. Please try again or <a href="'+uri.toStr..."
javascript
text/javascript
(function($, mw, bs){
function purgePage(e) {
mw.notify("The page is now purging and will refresh when it is ready.", { title: 'Purging', tag: 'purge', autoHide: false });
(new mw.Api()).post({
action: 'purge',
titles: mw.config.get('wgPageName')
}).then(function(){
window.location.reload();
}, function(){
var uri = new mw.Uri();
uri.query.action = 'purge';
mw.notify($.parseHTML('Purging the page failed. Please try again or <a href="'+uri.toString()+'">do so manually</a>.'), { title: 'Purging failed', tag: 'purge', type: 'error', autoHide:false });
});
e.preventDefault();
}
function init() {
$('.jsPurgeLink').click(purgePage);
$('.jsPurgeLink > a').attr({'href': '#', target: ''});
}
$(init);
}(jQuery, mediaWiki, bswiki));
1b52f02fc6220a95e63f83e5334a3490b47a7bb3
F2p
0
352
579
2024-03-22T19:30:35Z
Jayden
3
Redirected page to [[Account]]
wikitext
text/x-wiki
#REDIRECT [[Account]]
5f20baff5973687c490bb806036ec42df668592c
P2p
0
353
580
2024-03-22T19:30:47Z
Jayden
3
Redirected page to [[Premium Pass]]
wikitext
text/x-wiki
#REDIRECT [[Premium Pass]]
bf43d4c5096a873a9dbfe78f0c617b2e6ff6d2df
Class
0
171
581
308
2024-03-22T19:31:07Z
Jayden
3
Changed redirect target from [[Classes]] to [[Factions]]
wikitext
text/x-wiki
#REDIRECT [[Factions]]
7e69f77fb2cf8770075a36e2a256a08c5a03766a
Faction
0
355
583
2024-03-22T19:31:48Z
Jayden
3
Redirected page to [[Factions]]
wikitext
text/x-wiki
#REDIRECT [[Factions]]
7e69f77fb2cf8770075a36e2a256a08c5a03766a
Guardian
0
70
584
335
2024-03-22T19:32:03Z
Jayden
3
wikitext
text/x-wiki
'''Guardian''' is a [[faction]] which specialises in using ranged weapons in [[combat]].
{{Classes}}
bc2ae45c5396666aa254aa4e19244dc002097e4b
Hammermage
0
71
586
336
2024-03-22T19:32:11Z
Jayden
3
wikitext
text/x-wiki
'''Hammermage''' is a [[faction]] which specialises in using magic weapons in [[combat]].
{{Classes}}
c671a1f9b7750bb87e7d4f14e8ff1234985053db
MediaWiki:Gadget-autosort
8
357
588
2024-03-22T19:34:22Z
BlackHawk
10
Created page with "'''Autosort''': Autosorts tables with the ''sortable'' and ''autosort=#'' class. Uses ''jquery.tablesorter''. Sort order defaults as ascending but adding ''autosort=#,d'' makes the order descending."
wikitext
text/x-wiki
'''Autosort''': Autosorts tables with the ''sortable'' and ''autosort=#'' class. Uses ''jquery.tablesorter''. Sort order defaults as ascending but adding ''autosort=#,d'' makes the order descending.
58275d4b39e99e776c1450e33c26ce6a0404d4f4
MediaWiki:Gadget-autosort.js
8
358
589
2024-03-22T19:35:07Z
BlackHawk
10
Created page with "/** * For autosorting sortable tables * @example <> */ (function($, mw, bs){ var $sortables = $('.sortable[class*="autosort="]'); if (!$sortables.length) return; bs.autosort = function () { mw.loader.using('jquery.tablesorter', function () { $sortables.each(function () { var $this = $(this), matched = (' ' + $(this).attr( 'class') + ' ') .match(/autosort=(\d+)[,-]{1}(a|d)/),..."
javascript
text/javascript
/**
* For autosorting sortable tables
* @example <>
*/
(function($, mw, bs){
var $sortables = $('.sortable[class*="autosort="]');
if (!$sortables.length) return;
bs.autosort = function () {
mw.loader.using('jquery.tablesorter', function () {
$sortables.each(function () {
var $this = $(this),
matched = (' ' + $(this).attr( 'class') + ' ')
.match(/autosort=(\d+)[,-]{1}(a|d)/),
$sortCol = $this
.find('> thead th:nth-child(' + matched[1] + ')');
if (matched[2] === 'd') {
// descending
$sortCol.click().click();
} else {
// ascending
$sortCol.click();
}
});
mw.hook('gadget.autosort.sorted').fire($sortables);
});
};
mw.hook('wikipage.content').add(function init() {
if ($('.jquery-tablesorter').length) {
bs.autosort();
} else {
// tablesorter plugin has not run yet; observe the first
// sortable table element and wait for the plugin to add
// the 'jquery-tablesorter' class to it
new MutationObserver(function(muts, obs) {
if (muts[0].target.classList.contains('jquery-tablesorter')) {
window.bs.autosort();
obs.disconnect();
}
}).observe($sortables[0], {
attributes: true,
attributeFilter: ['class'],
});
}
// only run once
mw.hook('wikipage.content').remove(init);
});
}(jQuery, mediaWiki, bswiki));
b8f51154397b4dd2f0c0415193277af77a2fde78
Template:Main Page/Announcements
10
359
590
2024-03-22T19:35:14Z
Jayden
3
Created page with "<noinclude>{{/doc}}</noinclude><div class="mainpage-wikinews tile plainlinks"> <h2>Announcements</h2><!-- Put entries below this line --> ;22 March 2024 : Welcome to the '''brand new wiki''' for Brighter Shores! We're really excited to work together to build the most comprehensive wiki we can for the game, and to be ready for its planned release later this year. : If you would like to help out, please feel free to [[Special:CreateAccount|make an account]] and start editi..."
wikitext
text/x-wiki
<noinclude>{{/doc}}</noinclude><div class="mainpage-wikinews tile plainlinks">
<h2>Announcements</h2><!-- Put entries below this line -->
;22 March 2024
: Welcome to the '''brand new wiki''' for Brighter Shores! We're really excited to work together to build the most comprehensive wiki we can for the game, and to be ready for its planned release later this year.
: If you would like to help out, please feel free to [[Special:CreateAccount|make an account]] and start editing!
</div>
6b39f556e6cb1c7e8597aa9fa7aaa29616b7ea80
MediaWiki:Gadget-uncheckfileredirects
8
360
591
2024-03-22T19:35:31Z
BlackHawk
10
Created page with "'''UncheckFileRedirects''': Defaults file moves to not leave redirects on [[Special:MovePage]]."
wikitext
text/x-wiki
'''UncheckFileRedirects''': Defaults file moves to not leave redirects on [[Special:MovePage]].
337b4ab1cde1101fb430d192bd7a083cd55e099e
MediaWiki:Gadget-UncheckFileRedirect.js
8
361
592
2024-03-22T19:35:47Z
BlackHawk
10
Created page with "/* <nowiki> * Unchecks redirect checkbox on file pages * Because redirects in file namespace are usually unnecessary */ ;(function ($, mw) { 'use strict'; var conf = mw.config.get([ 'wgCanonicalSpecialPageName', 'wgTitle' ]); $(function () { if (conf.wgCanonicalSpecialPageName === 'Movepage' && (/File/).test(conf.wgTitle)) { $('#wpLeaveRedirect > input').removeAttr('checked'); } }); }(jQuery, mediaWiki)); // </nowiki>"
javascript
text/javascript
/* <nowiki>
* Unchecks redirect checkbox on file pages
* Because redirects in file namespace are usually unnecessary
*/
;(function ($, mw) {
'use strict';
var conf = mw.config.get([
'wgCanonicalSpecialPageName',
'wgTitle'
]);
$(function () {
if (conf.wgCanonicalSpecialPageName === 'Movepage' && (/File/).test(conf.wgTitle)) {
$('#wpLeaveRedirect > input').removeAttr('checked');
}
});
}(jQuery, mediaWiki));
// </nowiki>
366fb9ab7e6050fd456598df4ce6d7c8d9b25bd9
Main Page
0
4
593
187
2024-03-22T19:36:11Z
Jayden
3
wikitext
text/x-wiki
{{Main Page/Header}}
<!-- START BODY CONTENT -->
<div class="mainpage-body">
{{Main Page/Contents}}
<!-- START LEFT COLUMN -->
<div class="mainpage-left">
{{Main Page/Announcements}}
<!-- END LEFT COLUMN -->
</div>
<!-- START RIGHT COLUMN -->
<div class="mainpage-right">
<!-- END RIGHT COLUMN -->
</div>
<!-- END BODY CONTENT -->
</div>
[[Category:Brighter Shores Wiki]]
da6408afc9931d4c200429e7109b40af7e867287
598
593
2024-03-22T19:38:50Z
Jayden
3
wikitext
text/x-wiki
{{Main Page/Header}}
<!-- START BODY CONTENT -->
<div class="mainpage-body">
{{Main Page/Contents}}
<!-- START LEFT COLUMN -->
<div class="mainpage-left">
{{Main Page/Announcements}}
<!-- END LEFT COLUMN -->
</div>
<!-- START RIGHT COLUMN -->
<div class="mainpage-right">
{{Main Page/Discord}}
<!-- END RIGHT COLUMN -->
</div>
<!-- END BODY CONTENT -->
</div>
[[Category:Brighter Shores Wiki]]
b69ab6d2b86156a348c649d7505ca39d46645fc8
602
598
2024-03-22T19:41:36Z
Jayden
3
wikitext
text/x-wiki
{{Main Page/Header}}
<!-- START BODY CONTENT -->
<div class="mainpage-body">
{{Main Page/Contents}}
<!-- START LEFT COLUMN -->
<div class="mainpage-left">
{{Main Page/Announcements}}
<!-- END LEFT COLUMN -->
</div>
<!-- START RIGHT COLUMN -->
<div class="mainpage-right">
{{Main Page/Discord}}
{{Main Page/Editing}}
<!-- END RIGHT COLUMN -->
</div>
<!-- END BODY CONTENT -->
</div>
[[Category:Brighter Shores Wiki]]
650623875f60c7f05931f27a9459f51f8abdeb4a
606
602
2024-03-22T19:44:06Z
Jayden
3
Changed protection settings for "[[Main Page]]" ([Edit=Allow only administrators] (indefinite) [Move=Allow only administrators] (indefinite)) [cascading]
wikitext
text/x-wiki
{{Main Page/Header}}
<!-- START BODY CONTENT -->
<div class="mainpage-body">
{{Main Page/Contents}}
<!-- START LEFT COLUMN -->
<div class="mainpage-left">
{{Main Page/Announcements}}
<!-- END LEFT COLUMN -->
</div>
<!-- START RIGHT COLUMN -->
<div class="mainpage-right">
{{Main Page/Discord}}
{{Main Page/Editing}}
<!-- END RIGHT COLUMN -->
</div>
<!-- END BODY CONTENT -->
</div>
[[Category:Brighter Shores Wiki]]
650623875f60c7f05931f27a9459f51f8abdeb4a
MediaWiki:Gadget-section-Core
8
362
594
2024-03-22T19:36:20Z
Habblet
11
Created page with "Core"
wikitext
text/x-wiki
Core
68836c550ee20fae0e06b2994e76a40348d2fc30
File:Discord logo icon.svg
6
363
595
2024-03-22T19:37:08Z
Jayden
3
wikitext
text/x-wiki
da39a3ee5e6b4b0d3255bfef95601890afd80709
596
595
2024-03-22T19:37:14Z
Jayden
3
Protected "[[File:Discord logo icon.svg]]" ([Edit=Allow only administrators] (indefinite) [Move=Allow only administrators] (indefinite) [Upload=Allow only administrators] (indefinite))
wikitext
text/x-wiki
da39a3ee5e6b4b0d3255bfef95601890afd80709
Template:Main Page/Discord
10
364
597
2024-03-22T19:38:16Z
Jayden
3
Created page with "<noinclude>{{/doc}}</noinclude><div class="mainpage-discord tile-halves plainlinks"> <div class="tile-top"> <div class="partner-icon">[[File:Discord logo icon.svg|60px|link=]]</div> [https://discord.gg/xawmN4Dcau <div class="arrow nomobile"></div><p class="server-name">Brighter Shores Community</p><p class="server-tagline">Join the community Discord server to discuss everything Brighter Shores!</p>] </div> <div class="tile-bottom"> <p>..."
wikitext
text/x-wiki
<noinclude>{{/doc}}</noinclude><div class="mainpage-discord tile-halves plainlinks">
<div class="tile-top">
<div class="partner-icon">[[File:Discord logo icon.svg|60px|link=]]</div>
[https://discord.gg/xawmN4Dcau <div class="arrow nomobile"></div><p class="server-name">Brighter Shores Community</p><p class="server-tagline">Join the community Discord server to discuss everything Brighter Shores!</p>]
</div>
<div class="tile-bottom">
<p>Community Discord</p>
</div>
</div>
8a7be2886654c5d1a3cd2809592dd9d62cb570e6
Template:Main Page/Editing
10
365
599
2024-03-22T19:40:29Z
Jayden
3
Created page with "<noinclude>{{/doc}}</noinclude><div class="mainpage-editing tile-halves nomobile"> <div class="tile-top"> <h2>Help build the wiki</h2> <p>The Brighter Shores Wiki can be edited by anyone! Just click '''Edit''' at the top of the page if something is missing or incorrect.</p> </div> </div>"
wikitext
text/x-wiki
<noinclude>{{/doc}}</noinclude><div class="mainpage-editing tile-halves nomobile">
<div class="tile-top">
<h2>Help build the wiki</h2>
<p>The Brighter Shores Wiki can be edited by anyone! Just click '''Edit''' at the top of the page if something is missing or incorrect.</p>
</div>
</div>
7ba41616e3d02e0c32cd4e55e48835a53f435a27
600
599
2024-03-22T19:40:41Z
Jayden
3
Protected "[[Template:Main Page/Editing]]": used on main page ([Edit=Allow only administrators] (indefinite) [Move=Allow only administrators] (indefinite))
wikitext
text/x-wiki
<noinclude>{{/doc}}</noinclude><div class="mainpage-editing tile-halves nomobile">
<div class="tile-top">
<h2>Help build the wiki</h2>
<p>The Brighter Shores Wiki can be edited by anyone! Just click '''Edit''' at the top of the page if something is missing or incorrect.</p>
</div>
</div>
7ba41616e3d02e0c32cd4e55e48835a53f435a27
File:Wiki background.jpg
6
14
601
110
2024-03-22T19:41:06Z
Habblet
11
wikitext
text/x-wiki
[[Category:Brighter Shores Wiki images]]
ab06d2f9f68d83ab0ee7462833ebd031de7f7e0a
File:Wiki@2x.png
6
52
603
92
2024-03-22T19:41:56Z
Habblet
11
wikitext
text/x-wiki
[[Category:Brighter Shores Wiki images]]
ab06d2f9f68d83ab0ee7462833ebd031de7f7e0a
File:Wiki.png
6
53
604
94
2024-03-22T19:42:07Z
Habblet
11
wikitext
text/x-wiki
[[Category:Brighter Shores Wiki images]]
ab06d2f9f68d83ab0ee7462833ebd031de7f7e0a
File:Section anchor light.svg
6
335
605
549
2024-03-22T19:42:53Z
Habblet
11
wikitext
text/x-wiki
[[Category:Icons]]
d7390c506a06325362ace67f96842811f1aae0d2
Locations
0
366
607
2024-03-22T19:49:12Z
Jayden
3
Created page with "'''Locations''' are places that exist in the [[Brighter Shores]] game world. ==Locations== * [[Hopeport]] * [[Hopeforest]] * [[Mine of Mantuban]] * [[Crenopolis]] [[Category:Locations]]"
wikitext
text/x-wiki
'''Locations''' are places that exist in the [[Brighter Shores]] game world.
==Locations==
* [[Hopeport]]
* [[Hopeforest]]
* [[Mine of Mantuban]]
* [[Crenopolis]]
[[Category:Locations]]
e5ffad46564e33b776f898271422acf2a450cc8e
Location
0
367
608
2024-03-22T19:49:25Z
Jayden
3
Redirected page to [[Locations]]
wikitext
text/x-wiki
#REDIRECT [[Locations]]
cbb9c6416a23e7cd593e7fd11c62de21a7bd0626
Brighter Shores:Orphanage
4
368
609
2024-03-22T19:49:44Z
Habblet
11
Created page with "{{Otheruses|orphaned pages, templates, and files|the policy on article ownership|Brighter Shores:Ownership}} {{Shortcut|BS:ORPHAN|BS:O}} '''Brighter Shores:Orphanage''' is a place where '''orphaned pages and files''' are "stored" to prevent them from appearing in [[Special:LonelyPages]] and [[Special:UnusedFiles]]. <span style="color:red; font-weight:bold">Pages (or images) should not be linked here just because they appear in these special pages, but linked because they..."
wikitext
text/x-wiki
{{Otheruses|orphaned pages, templates, and files|the policy on article ownership|Brighter Shores:Ownership}}
{{Shortcut|BS:ORPHAN|BS:O}}
'''Brighter Shores:Orphanage''' is a place where '''orphaned pages and files''' are "stored" to prevent them from appearing in [[Special:LonelyPages]] and [[Special:UnusedFiles]]. <span style="color:red; font-weight:bold">Pages (or images) should not be linked here just because they appear in these special pages, but linked because they are "orphans".</span> (See the definition of "orphan" below.)
==What is an orphan?==
There are several factors that can classify an article as an orphan:
*'''Orphan:''' An article with '''<span style="color:red">fewer than three</span>''' incoming links which meet the criteria for linking below.
*'''Isolated article:''' An article that cannot be reached via a series of links from the [[Brighter Shores Wiki|Main Page]].
*'''Walled garden:''' A group of articles that link to each other, but have few or no links to them from any other Brighter Shores Wiki articles. In effect, that group is orphaned. Theoretically, a walled garden could have numerous articles if they all link to each other but no others link to them.
*'''Orphaned project page:''' A project page (starting with "Brighter Shores:") with few or no links from other project pages. Essays are most likely to be orphaned.
*'''Orphaned image:''' An image not used on Brighter Shores Wiki directly.
==What is the problem with an orphaned article?==
'''A company with no advertising will not be known to others, and as a result, will get few if any customers.'''
Likewise, orphaned articles, since they have few links to them from other pages, are difficult to find, and are most likely to be found only by chance. Because of this, few people know they exist, and therefore, they get less readership and improvement from those who would be able to improve them.
In particular, if the topic is more obscure, this may make it difficult for many to locate. If not for links to a page, the only way such an article can be found is by a person who knows the topic entering it into Brighter Shores Wiki or doing a web search, browsing a category in which it is contained, looking at the edit history of a contributor to the page, or having it show up as a random article.
==Criteria==
An article is orphaned if '''<span style="color:red">fewer than three</span>''' other articles link to it. '''Currently our priority is to focus on orphans with NO incoming links at all.'''
For the purposes of the strict definition, the following pages do not count toward the three incoming links:
*Disambiguation pages
*Redirects
*Lists
*Discussion pages of articles
*Pages outside of article space
Ideally, except for disambiguation links, '''disambiguation pages should be orphaned'''. The only pages that should link to them are articles bearing the title (via templates such as [[Template:Redirect]]) and "See also" sections of other disambiguation pages (when separate disambiguation pages are created due to long length or variances in the titles).
==List of orphaned articles==
A list of orphaned articles can be found at [[Special:LonelyPages]]
{{Construction}}
==Disambiguation pages==
{{Main|/Disambiguation pages}}
'''Disambiguation pages''' are created in order to resolve conflicts in article titles that occur when a single term can be associated with more than one topic, making that term likely to be the natural title for more than one article. In other words, disambiguations are paths leading to different articles which could, in principle, have the same title.
==Templates==
A list of orphaned templates can be found here: [[Special:UnusedTemplates]]
===Signatures===
Orphaned signatures can be found here: [[Template:Signatures/List]]
===Miscellaneous templates===
Miscellaneous orphaned templates can be found here: [[Brighter Shores:Orphanage/Templates]]
==Gallery of orphaned files==
{{incomplete|Compile all orphaned files, and explain their uses.}}
Some files may appear in the [[Special:UnusedFiles|Unused Files]] list if they are not directly used in an article. These files are considered '''orphaned files'''.
===General===
<gallery orientation=landscape>
Wiki@2x.png
</gallery>
===UI Icons===
UI Icons
<gallery>
Section anchor light.svg|Anchor icon for section headers
</gallery>
[[Category:Brighter Shores Wiki projects]]
e343a0cbdb4817a57b2fbb1b60a17458f0091c6a
Template:Otheruses
10
369
610
2024-03-22T19:50:13Z
Habblet
11
Created page with "<includeonly>{{Hatnote|{{#ifeq:{{{def}}}|no|{{#if:{{{1|}}}|For {{{1}}}, see [[{{{2}}}]]. {{#if:{{{3|}}}|For {{{3}}}, see [[{{{4}}}]].}}|For other uses, see [[{{NAMESPACE}}:{{PAGENAME}} (disambiguation)]].}}|This article is about {{{1}}}. {{#if:{{{2|}}}|For {{{2}}}, see [[{{{3}}}]].|For other uses, see [[{{NAMESPACE}}:{{PAGENAME}} (disambiguation)]].}} {{#if:{{{4|}}}|For {{{4}}}, see [[{{{5}}}]].}} {{#if:{{{6|}}}|For {{{6}}}, see [[{{{7}}}]].}}}}}}</includeonly><noinclude..."
wikitext
text/x-wiki
<includeonly>{{Hatnote|{{#ifeq:{{{def}}}|no|{{#if:{{{1|}}}|For {{{1}}}, see [[{{{2}}}]]. {{#if:{{{3|}}}|For {{{3}}}, see [[{{{4}}}]].}}|For other uses, see [[{{NAMESPACE}}:{{PAGENAME}} (disambiguation)]].}}|This article is about {{{1}}}. {{#if:{{{2|}}}|For {{{2}}}, see [[{{{3}}}]].|For other uses, see [[{{NAMESPACE}}:{{PAGENAME}} (disambiguation)]].}} {{#if:{{{4|}}}|For {{{4}}}, see [[{{{5}}}]].}} {{#if:{{{6|}}}|For {{{6}}}, see [[{{{7}}}]].}}}}}}</includeonly><noinclude>{{/doc}}</noinclude>
902288f14a4a2881c7449c66330eab90ce7b33c9
Template:Otheruses/doc
10
370
611
2024-03-22T19:55:36Z
Habblet
11
Created page with "{{Documentation}} '''Otheruses''' is used to add disambiguation links at the top of the page. ==Usage== <code><nowiki>{{Otheruses|topic|other topic|first link|another topic|second link}}</nowiki></code> or <code><nowiki>{{Otheruses|def=no|other topic|first link|another topic|second link}}</nowiki></code> Do not use this template on an article with an unambiguous title; for example, a reader who searches specifically for "Andrew Gower (NPC)" is not likely to have bee..."
wikitext
text/x-wiki
{{Documentation}}
'''Otheruses''' is used to add disambiguation links at the top of the page.
==Usage==
<code><nowiki>{{Otheruses|topic|other topic|first link|another topic|second link}}</nowiki></code>
or
<code><nowiki>{{Otheruses|def=no|other topic|first link|another topic|second link}}</nowiki></code>
Do not use this template on an article with an unambiguous title; for example, a reader who searches specifically for "Andrew Gower (NPC)" is not likely to have been looking for an article about the real life person, so it would ''not'' be appropriate to add {{t|Otheruses|Andrew Gower}} to the top of a hypothetical Andrew Gower (NPC) article.
The <code>def=no</code> parameter is optional.
==Example==
<code><nowiki>{{Otheruses|Hopeport|the fast travel location|Hopeport Obelisk}}</nowiki></code>
gives:
{{Otheruses|Hopeport|the fast travel location|Hopeport Obelisk}}
<code><nowiki>{{Otheruses|def=no|the fast travel location|Hopeport Obelisk}}</nowiki></code>
gives:
{{Otheruses|def=no|the fast travel location|Hopeport Obelisk}}
<code><nowiki>{{Otheruses|the disambiguation template}}</nowiki></code>
{{Otheruses|the disambiguation template}}
==See also==
* [[Template:Redirect]]
** [[Template:Redirect2]]
** [[Template:Redirect3]]
* [[Template:See also]]
* [[wikipedia:Template:Other uses|Template:Other uses]], the template at Wikipedia
<includeonly>[[Category:Transclusion templates|{{PAGENAME}}]]</includeonly>
2d74baf8b2891cae26f7e1bd0629246e079be6db
File:Combat.jpg
6
626
612
2024-03-22T19:55:55Z
Jayden
3
wikitext
text/x-wiki
da39a3ee5e6b4b0d3255bfef95601890afd80709
Template:Hatnote
10
372
613
2024-03-22T19:55:59Z
Habblet
11
Created page with "<includeonly>{{#invoke:Hatnote|hatnote}}</includeonly><noinclude>{{/doc}}</noinclude>"
wikitext
text/x-wiki
<includeonly>{{#invoke:Hatnote|hatnote}}</includeonly><noinclude>{{/doc}}</noinclude>
d9029e1bc2de056708cda99e6ce883644c1661e4
Engine
0
373
614
2024-03-22T19:56:21Z
Jayden
3
Redirected page to [[Fenforge]]
wikitext
text/x-wiki
#REDIRECT [[Fenforge]]
b5155044fb0ab6fa9bf8f7f5dc061420ed4aedfc
Template:Hatnote/doc
10
374
615
2024-03-22T19:57:19Z
Habblet
11
Created page with "{{documentation}} The '''hatnote''' template produces formatted text for the purpose of redirecting the reader to another page if needed. It adds the <kbd>hatnote</kbd> class which indents and italicises the text and the <kbd>navigation-not-searchable</kbd> class which excludes the content from search snippets in [[Special:Search]]. Generally the template should not be used directly on articles, instead one of the following templates can be used: * {{T|Otheruses}} * {{..."
wikitext
text/x-wiki
{{documentation}}
The '''hatnote''' template produces formatted text for the purpose of redirecting the reader to another page if needed.
It adds the <kbd>hatnote</kbd> class which indents and italicises the text and the <kbd>navigation-not-searchable</kbd> class which excludes the content from search snippets in [[Special:Search]].
Generally the template should not be used directly on articles, instead one of the following templates can be used:
* {{T|Otheruses}}
* {{T|Redirect}}
* {{T|Redirect2}}
* {{T|Redirect3}}
* {{T|Main}}
* {{T|See also}}
* {{T|Confuse}}
==Usage==
{{t|Hatnote|<nowiki>Further reading: [[Account]]</nowiki>}}
would produce the following:
{{Hatnote|Further reading: [[Account]]}}
{{TemplateData|<templatedata>
{
"params": {
"1": {
"label": "Text",
"description": "Text that will be displayed in the hatnote.",
"type": "string",
"required": true
},
"extraclasses": {
"label": "Extra classes",
"description": "Extra classes to be added to the <div> tags surrounding the hatnote text.",
"type": "line"
}
},
"description": "Template that produces formatted text for the purpose of redirecting the reader to another page if needed."
}
</templatedata>}}
<includeonly>[[Category:Formatting templates|{{PAGENAME}}]][[Category:Transclusion templates|{{PAGENAME}}]]</includeonly>
8c4daec17ca86b6caf54c2b305e784fda9294a8d
Module:Hatnote
828
375
616
2024-03-22T19:57:55Z
Habblet
11
Created page with "-- repurposed from -- -- https://en.wikipedia.org/w/index.php?title=Module:Hatnote&oldid=1063743122 -- -- -- -- Implements {{hatnote}} template -- local libraryUtil = require('libraryUtil') local checkType = libraryUtil.checkType local p = {} -- Helper functions..."
Scribunto
text/plain
-- repurposed from --
-- https://en.wikipedia.org/w/index.php?title=Module:Hatnote&oldid=1063743122 --
-- --
-- Implements {{hatnote}} template --
local libraryUtil = require('libraryUtil')
local checkType = libraryUtil.checkType
local p = {}
-- Helper functions --
local function removeInitialColon(s)
-- Removes the initial colon from a string, if present.
return s:match('^:?(.*)')
end
function p.findNamespaceId(link, removeColon)
-- Finds the namespace id (namespace number) of a link or a pagename. This
-- function will not work if the link is enclosed in double brackets. Colons
-- are trimmed from the start of the link by default. To skip colon
-- trimming, set the removeColon parameter to false.
checkType('findNamespaceId', 1, link, 'string')
checkType('findNamespaceId', 2, removeColon, 'boolean', true)
if removeColon ~= false then
link = removeInitialColon(link)
end
local namespace = link:match('^(.-):')
if namespace then
local nsTable = mw.site.namespaces[namespace]
if nsTable then
return nsTable.id
end
end
return 0
end
function p.disambiguate(page, disambiguator)
-- Formats a page title with a disambiguation parenthetical,
-- i.e. "Example" → "Example (disambiguation)".
checkType('disambiguate', 1, page, 'string')
checkType('disambiguate', 2, disambiguator, 'string', true)
disambiguator = disambiguator or 'disambiguation'
return mw.ustring.format('%s (%s)', page, disambiguator)
end
-- Produces standard hatnote text --
function p.hatnote(frame)
local args = frame:getParent().args
local s = args[1]
if not s then
return '<strong class="error">No text specified for hatnote</strong>'
end
return p._hatnote(s, {
extraclasses = args.extraclasses
})
end
function p._hatnote(s, options)
checkType('_hatnote', 1, s, 'string')
checkType('_hatnote', 2, options, 'table', true)
options = options or {}
local inline = options.inline
local hatnote = mw.html.create(inline == 1 and 'span' or 'div')
local extraclasses
if type(options.extraclasses) == 'string' then
extraclasses = options.extraclasses
end
hatnote
:attr('role', 'note')
:addClass(inline == 1 and 'hatnote-inline' or 'hatnote')
:addClass(extraclasses)
:addClass('navigation-not-searchable')
:wikitext(s)
return tostring(hatnote)
end
return p
945fcccb8f92f1a1619c0b51f93ab6dc1f861ed9
Module:Hatnote/doc
828
376
617
2024-03-22T19:58:04Z
Habblet
11
Created page with "{{Documentation}} Implements {{T|Hatnote}} for use on top of pages. See template for more info."
wikitext
text/x-wiki
{{Documentation}}
Implements {{T|Hatnote}} for use on top of pages. See template for more info.
ab29c666a75416007eac895e23c85ddbc2f99d7f
Monsters
0
377
618
2024-03-22T19:59:41Z
Jayden
3
Created page with "'''Monsters''' are creatures in [[Brighter Shores]] that can be attacked. They are fought in [[combat]] for their loot, including valuable currency items. There are many monsters in Brighter Shores, including: * [[Punkupine]] * [[Slime Fiend]] * [[Mawchest]] * [[Wailing Shade]] * [[Sneaky Thief]] * [[Yellowtail Gurnard]] * [[Grumpy Pirate]] [[Category:Monsters]]"
wikitext
text/x-wiki
'''Monsters''' are creatures in [[Brighter Shores]] that can be attacked. They are fought in [[combat]] for their loot, including valuable currency items.
There are many monsters in Brighter Shores, including:
* [[Punkupine]]
* [[Slime Fiend]]
* [[Mawchest]]
* [[Wailing Shade]]
* [[Sneaky Thief]]
* [[Yellowtail Gurnard]]
* [[Grumpy Pirate]]
[[Category:Monsters]]
a8a8fd097b1317c1e720241dde0ff0cd6931707a
Monster
0
378
619
2024-03-22T20:00:01Z
Jayden
3
Created page with "#REDIRECT Monsters"
wikitext
text/x-wiki
#REDIRECT [[Monsters]
f65f92a204f49bd8e9855184d82fbca6ea58c8a6
620
619
2024-03-22T20:00:06Z
Jayden
3
Redirected page to [[Monsters]]
wikitext
text/x-wiki
#REDIRECT [[Monsters]]
57800de25976e50f64bb3edcc1d29feb4e548f97
Mob
0
379
621
2024-03-22T20:00:14Z
Jayden
3
Redirected page to [[Monsters]]
wikitext
text/x-wiki
#REDIRECT [[Monsters]]
57800de25976e50f64bb3edcc1d29feb4e548f97
Enemy
0
380
622
2024-03-22T20:00:19Z
Jayden
3
Redirected page to [[Monsters]]
wikitext
text/x-wiki
#REDIRECT [[Monsters]]
57800de25976e50f64bb3edcc1d29feb4e548f97
Enemies
0
381
623
2024-03-22T20:00:24Z
Jayden
3
Redirected page to [[Monsters]]
wikitext
text/x-wiki
#REDIRECT [[Monsters]]
57800de25976e50f64bb3edcc1d29feb4e548f97
Template:Main Page/Contents
10
46
624
554
2024-03-22T20:00:37Z
Jayden
3
wikitext
text/x-wiki
<noinclude>{{/doc}}</noinclude>__NOTOC__<div class="mainpage-contents tile-row">
<div class="contents-professions tile-halves">
<div class="tile-top tile-image">[[File:Professions.jpg|link=Professions]]</div>
<div class="tile-bottom link-button"><h2>[[Professions]]</h2></div>
</div>
<div class="contents-equipment tile-halves">
<div class="tile-top tile-image">[[File:Factions.jpg|link=Factions]]</div>
<div class="tile-bottom link-button"><h2>[[Factions]]</h2></div>
</div>
<div class="contents-locations tile-halves">
<div class="tile-top tile-image">[[File:Lani's Curiosities.jpg|link=Locations]]</div>
<div class="tile-bottom link-button"><h2>[[Locations]]</h2></div>
</div>
<div class="contents-locations tile-halves">
<div class="tile-top tile-image">[[File:Premium Pass comparison.png|link=Premium Pass]]</div>
<div class="tile-bottom link-button"><h2>[[Premium Pass]]</h2></div>
</div>
<div class="contents-locations tile-halves">
<div class="tile-top tile-image">[[File:Combat.jpg|link=Monsters]]</div>
<div class="tile-bottom link-button"><h2>[[Monsters]]</h2></div>
</div>
</div>
50fe8424014b93be5b04a0b5abea9b3737893c56
Template:Redirect
10
382
625
2024-03-22T20:02:51Z
Habblet
11
Created page with "{{Hatnote|"{{{1}}}" redirects here. {{#if:{{{3|}}}|For {{{2|}}}, see [[{{{3|}}}]].|{{#if:{{{2|}}}|For other uses, see [[{{{2|}}}]].|For other uses, see [[{{{1}}} (disambiguation)]].}}}} {{#if:{{{4|}}}|For {{{4}}}, see [[{{{5}}}]].}} {{#if:{{{6|}}}|For {{{6}}}, see [[{{{7}}}]].}}}}<noinclude>{{/doc}}</noinclude>"
wikitext
text/x-wiki
{{Hatnote|"{{{1}}}" redirects here. {{#if:{{{3|}}}|For {{{2|}}}, see [[{{{3|}}}]].|{{#if:{{{2|}}}|For other uses, see [[{{{2|}}}]].|For other uses, see [[{{{1}}} (disambiguation)]].}}}} {{#if:{{{4|}}}|For {{{4}}}, see [[{{{5}}}]].}} {{#if:{{{6|}}}|For {{{6}}}, see [[{{{7}}}]].}}}}<noinclude>{{/doc}}</noinclude>
2db54def04fa6ae2f7350b844d0534578425e9b6
File:Profession fisher.png
6
383
626
2024-03-22T20:08:01Z
ToofleBerry
6
wikitext
text/x-wiki
da39a3ee5e6b4b0d3255bfef95601890afd80709
Template:Redirect/doc
10
384
627
2024-03-22T20:08:37Z
Habblet
11
Created page with "{{Documentation}} __NOTOC__ The '''Redirect''' placed at the top of the article or section that is the primary topic of a redirect, and links to other topics that are ambiguous with the name of that redirect. This template does NOT create [[Brighter Shores:Redirecting|page redirects]]. ==Usage== ===3 parameters=== <code><nowiki>{{Redirect|<from>|<subject>|<target>}}</nowiki></code> Example: <code><nowiki>{{Redirect|Character|the Brighter Shores account|Account}}</nowi..."
wikitext
text/x-wiki
{{Documentation}}
__NOTOC__
The '''Redirect''' placed at the top of the article or section that is the primary topic of a redirect, and links to other topics that are ambiguous with the name of that redirect.
This template does NOT create [[Brighter Shores:Redirecting|page redirects]].
==Usage==
===3 parameters===
<code><nowiki>{{Redirect|<from>|<subject>|<target>}}</nowiki></code>
Example:
<code><nowiki>{{Redirect|Character|the Brighter Shores account|Account}}</nowiki></code>
{{Redirect|Character|the Brighter Shores account|Account}}
===2 parameters===
<code><nowiki>{{Redirect|<from>|<target>}}</nowiki></code>
Example:
<code><nowiki>{{Redirect|Gower|Gower (disambiguation)}}</nowiki></code>
{{Redirect|Gower|Gower (disambiguation)}}
===1 parameter===
<code><nowiki>{{Redirect|<from>}}</nowiki></code>
Example:
<code><nowiki>{{Redirect|Gower}}</nowiki></code>
{{Redirect|Gower}}
{{TemplateData|<templatedata>
{
"params": {},
"format": "inline",
"description": "This template produces a hatnote similar to:\n\"Foo\" redirects here. For other uses, see [[Foo (disambiguation)]].\n\nIt does NOT create page redirects."
}
</templatedata>}}
==See also==
* [[Template:Redirect3]]
* [[Template:Otheruses]]
* [[Template:See also]]
<includeonly>[[Category:Transclusion templates|{{PAGENAME}}]]</includeonly>
42c8215be0470e50ae2f173b248a2d87e66cbe0d
632
627
2024-03-22T20:10:26Z
Habblet
11
wikitext
text/x-wiki
{{Documentation}}
__NOTOC__
The '''Redirect''' placed at the top of the article or section that is the primary topic of a redirect, and links to other topics that are ambiguous with the name of that redirect.
This template does NOT create [[Brighter Shores:Redirecting|page redirects]].
==Usage==
===3 parameters===
<code><nowiki>{{Redirect|<from>|<subject>|<target>}}</nowiki></code>
Example:
<code><nowiki>{{Redirect|Character|the Brighter Shores account|Account}}</nowiki></code>
{{Redirect|Character|the Brighter Shores account|Account}}
===2 parameters===
<code><nowiki>{{Redirect|<from>|<target>}}</nowiki></code>
Example:
<code><nowiki>{{Redirect|Gower|Gower (disambiguation)}}</nowiki></code>
{{Redirect|Gower|Gower (disambiguation)}}
===1 parameter===
<code><nowiki>{{Redirect|<from>}}</nowiki></code>
Example:
<code><nowiki>{{Redirect|Gower}}</nowiki></code>
{{Redirect|Gower}}
{{TemplateData|<templatedata>
{
"params": {},
"format": "inline",
"description": "This template produces a hatnote similar to:\n\"Foo\" redirects here. For other uses, see [[Foo (disambiguation)]].\n\nIt does NOT create page redirects."
}
</templatedata>}}
==See also==
* [[Template:Otheruses]]
* [[Template:See also]]
<includeonly>[[Category:Transclusion templates|{{PAGENAME}}]]</includeonly>
ad4b8963401118b0bdec3635d71d52452dd51680
Professions
0
56
628
498
2024-03-22T20:08:59Z
ToofleBerry
6
Added fisher icon.
wikitext
text/x-wiki
'''Professions''' are skills that [[player]]s can train and utilise in [[Brighter Shores]].
==List of professions==
{| class="wikitable"
! Image !! Name !! Uses
|-
| [[File:Profession fisher.png|70px]] || [[Fisher]] || Catching various [[fish]]
|-
| || [[Forager]] || Gathering items
|-
| || [[Chef]] || Cooking [[food]] items
|-
| || [[Woodcutter]] || Chopping down [[tree]]s
|-
| || [[Miner]] || Mining [[mineral]]s
|-
| || [[Alchemist]] || Brewing [[potion]]s
|-
| || [[Stonemason]] ||
|-
| || [[Merchant]] ||
|-
| || [[Blacksmith]] ||
|}
==Gallery==
<gallery>
File:Professions preview 1.jpg
File:Professions preview 2.jpg
File:Professions preview 3.jpg
</gallery>
{{Professions}}
628d1e052f88fdf7285c73b3bfa3f0d05503bb12
Template:Otheruses/doc
10
370
629
611
2024-03-22T20:10:10Z
Habblet
11
wikitext
text/x-wiki
{{Documentation}}
'''Otheruses''' is used to add disambiguation links at the top of the page.
==Usage==
<code><nowiki>{{Otheruses|topic|other topic|first link|another topic|second link}}</nowiki></code>
or
<code><nowiki>{{Otheruses|def=no|other topic|first link|another topic|second link}}</nowiki></code>
Do not use this template on an article with an unambiguous title; for example, a reader who searches specifically for "Andrew Gower (NPC)" is not likely to have been looking for an article about the real life person, so it would ''not'' be appropriate to add {{t|Otheruses|Andrew Gower}} to the top of a hypothetical Andrew Gower (NPC) article.
The <code>def=no</code> parameter is optional.
==Example==
<code><nowiki>{{Otheruses|Hopeport|the fast travel location|Hopeport Obelisk}}</nowiki></code>
gives:
{{Otheruses|Hopeport|the fast travel location|Hopeport Obelisk}}
<code><nowiki>{{Otheruses|def=no|the fast travel location|Hopeport Obelisk}}</nowiki></code>
gives:
{{Otheruses|def=no|the fast travel location|Hopeport Obelisk}}
<code><nowiki>{{Otheruses|the disambiguation template}}</nowiki></code>
{{Otheruses|the disambiguation template}}
==See also==
* [[Template:Redirect]]
* [[Template:See also]]
* [[wikipedia:Template:Other uses|Template:Other uses]], the template at Wikipedia
<includeonly>[[Category:Transclusion templates|{{PAGENAME}}]]</includeonly>
a4e016049172abcec4ad9c1ae25c0a1768d5040b
File:Icon backpack.png
6
385
630
2024-03-22T20:10:12Z
ToofleBerry
6
wikitext
text/x-wiki
da39a3ee5e6b4b0d3255bfef95601890afd80709
File:Icon belt.png
6
386
631
2024-03-22T20:10:25Z
ToofleBerry
6
wikitext
text/x-wiki
da39a3ee5e6b4b0d3255bfef95601890afd80709
File:Icon helm.png
6
387
633
2024-03-22T20:10:37Z
ToofleBerry
6
wikitext
text/x-wiki
da39a3ee5e6b4b0d3255bfef95601890afd80709
Template:See also
10
388
634
2024-03-22T20:10:47Z
Habblet
11
Created page with "<includeonly>{{Hatnote|{{{altphrase|See also}}}: {{#if:{{{1|}}} |<!--then:-->[[:{{{1}}}|{{{l1|{{{1}}}}}}]] |<!--else:-->'''Error: [[Template:See also|Template must be given at least one article name]]''' }}{{#if:{{{2|}}}|{{#if:{{{3|}}}|, | and }} [[:{{{2}}}{{#if:{{{label 2|{{{l2|}}}}}}|{{!}}{{{label 2|{{{l2}}}}}}}}]] }}{{#if:{{{3|}}}|{{#if:{{{4|}}}|, | and }} [[:{{{3}}}{{#if:{{{label 3|{{{l3|}}}}}}|{{!}}{{{label 3|{{{l3}}}}}}}}]] }}{{#if:{{{4|}}}|{{#if:{{{5|}}..."
wikitext
text/x-wiki
<includeonly>{{Hatnote|{{{altphrase|See also}}}: {{#if:{{{1|}}} |<!--then:-->[[:{{{1}}}|{{{l1|{{{1}}}}}}]] |<!--else:-->'''Error: [[Template:See also|Template must be given at least one article name]]'''
}}{{#if:{{{2|}}}|{{#if:{{{3|}}}|, | and }} [[:{{{2}}}{{#if:{{{label 2|{{{l2|}}}}}}|{{!}}{{{label 2|{{{l2}}}}}}}}]]
}}{{#if:{{{3|}}}|{{#if:{{{4|}}}|, | and }} [[:{{{3}}}{{#if:{{{label 3|{{{l3|}}}}}}|{{!}}{{{label 3|{{{l3}}}}}}}}]]
}}{{#if:{{{4|}}}|{{#if:{{{5|}}}|, | and }} [[:{{{4}}}{{#if:{{{label 4|{{{l4|}}}}}}|{{!}}{{{label 4|{{{l4}}}}}}}}]]
}}{{#if:{{{5|}}}|{{#if:{{{6|}}}|, | and }} [[:{{{5}}}{{#if:{{{label 5|{{{l5|}}}}}}|{{!}}{{{label 5|{{{l5}}}}}}}}]]
}}{{#if:{{{6|}}}|{{#if:{{{7|}}}|, | and }} [[:{{{6}}}{{#if:{{{label 6|{{{l6|}}}}}}|{{!}}{{{label 6|{{{l6}}}}}}}}]]
}}{{#if:{{{7|}}}|{{#if:{{{8|}}}|, | and }} [[:{{{7}}}{{#if:{{{label 7|{{{l7|}}}}}}|{{!}}{{{label 7|{{{l7}}}}}}}}]]
}}{{#if:{{{8|}}}|{{#if:{{{9|}}}|, | and }} [[:{{{8}}}{{#if:{{{label 8|{{{l8|}}}}}}|{{!}}{{{label 8|{{{l8}}}}}}}}]]
}}{{#if:{{{9|}}}|{{#if:{{{10|}}}|, | and }} [[:{{{9}}}{{#if:{{{label 9|{{{l9|}}}}}}|{{!}}{{{label 9|{{{l9}}}}}}}}]]
}}{{#if:{{{10|}}}|{{#if:{{{11|}}}|, | and }} [[:{{{10}}}{{#if:{{{label 10|{{{l10|}}}}}}|{{!}}{{{label 10|{{{l10}}}}}}}}]]
}}{{#if:{{{11|}}}|{{#if:{{{12|}}}|, | and }} [[:{{{11}}}{{#if:{{{label 11|{{{l11|}}}}}}|{{!}}{{{label 11|{{{l11}}}}}}}}]]
}}{{#if:{{{12|}}}|{{#if:{{{13|}}}|, | and }} [[:{{{12}}}{{#if:{{{label 12|{{{l12|}}}}}}|{{!}}{{{label 12|{{{l12}}}}}}}}]]
}}{{#if:{{{13|}}}|{{#if:{{{14|}}}|, | and }} [[:{{{13}}}{{#if:{{{label 13|{{{l13|}}}}}}|{{!}}{{{label 13|{{{l13}}}}}}}}]]
}}{{#if:{{{14|}}}|{{#if:{{{15|}}}|, | and }} [[:{{{14}}}{{#if:{{{label 14|{{{l14|}}}}}}|{{!}}{{{label 14|{{{l14}}}}}}}}]]
}}{{#if:{{{15|}}}|, and [[:{{{15}}}{{#if:{{{label 15|{{{l15|}}} }}}|{{!}}{{{label 15|{{{l15|}}} }}} }}]]
}}{{#if:{{{16|}}}| — '''<br/>Error: [[Template:See also|Too many links specified (maximum is 15)]]'''
}}}}</includeonly><noinclude>{{/doc}}</noinclude>
157558dc0fee1e4d0a95c4595eb2b0827e11c600
Template:See also/doc
10
389
635
2024-03-22T20:13:48Z
Habblet
11
Created page with "{{Documentation}} ==Usage== Shows links to other related articles. ===Syntax=== <code><nowiki>{{See also|article name 1 [|article name 2 |... |article name 15]}}</nowiki></code> * '''article name 1''': The first related article to link to. * '''article name n''': The nth related article to link to, with n ≤ 15. ===Examples=== The first example shows how the template gives errors if used without parameters or with too many parameters, while the latter examples show..."
wikitext
text/x-wiki
{{Documentation}}
==Usage==
Shows links to other related articles.
===Syntax===
<code><nowiki>{{See also|article name 1 [|article name 2 |... |article name 15]}}</nowiki></code>
* '''article name 1''': The first related article to link to.
* '''article name n''': The nth related article to link to, with n ≤ 15.
===Examples===
The first example shows how the template gives errors if used without parameters or with too many parameters, while the latter examples show proper use.
{| class="wikitable" style="text-align:center;"
|-
! Input
! Output
|-
|<code><nowiki>{{See also}}</nowiki></code>
|{{See also}}
|-
|<code><nowiki>{{See also|Hopeport Obelisk}}</nowiki></code>
|{{See also|Hopeport Obelisk}}
|-
|<code><nowiki>{{See also|Hopeport Obelisk|Quiet Grove|label 2=the Quiet Grove}}</nowiki></code>
|{{See also|Hopeport Obelisk|Quiet Grove|label 2=the Quiet Grove}}
|}
==See also==
* [[Template:Redirect]]
* [[Template:Otheruses]]
<includeonly>[[Category:Transclusion templates|{{PAGENAME}}]]</includeonly>
abfbed687a2da1964da42f48963fbbee2573dd6a
MediaWiki:Common.less/templates.less
8
25
636
477
2024-03-22T20:15:20Z
Habblet
11
less
less
/* ==================
TEMPLATES
==================*/
:root {
--keypress-background: @gallery;
--keypress-border: @silver;
--keypress-color: @mineshaft;
}
// Hatnotes: [[Module:Hatnote]]
.hatnote,
.seealso {
font-style: italic;
i {
font-style: normal;
}
}
// two classes - hatnote gets much customisation in minerva but seealso doesnt
div.hatnote,
div.seealso {
// 0.5em is <p>'s top and bottom margin
// 1.6em to match <dd>/<ul> indent
margin: .5em 1.6em;
& + & {
margin-top: -0.5em;
}
}
// Template:Key press
.keypress {
background: var(--keypress-background);
color: var(--keypress-color);
font-family: inherit;
border: 1px solid var(--keypress-border);
border-radius: @border-radius;
font-size: 0.9em;
margin: 0 0.1em;
padding: 0.1em 0.4em;
white-space: nowrap;
}
a32ccb44ddafdfedfdd9a7116958aca357c47828
649
636
2024-03-22T20:23:32Z
Habblet
11
less
less
/* ==================
TEMPLATES
==================*/
:root {
--keypress-background: @gallery;
--keypress-border: @silver;
--keypress-color: @mineshaft;
}
// Template:Shortcut
.shortcut {
border: 1px solid @infobox-border-color;
background: @infobox-background;
float: right;
font-size: .8em;
margin: 0.5em 0em 0.5em 1em;
padding: 0.5em;
text-align: center;
}
// Hatnotes: [[Module:Hatnote]]
.hatnote,
.seealso {
font-style: italic;
i {
font-style: normal;
}
}
// two classes - hatnote gets much customisation in minerva but seealso doesnt
div.hatnote,
div.seealso {
// 0.5em is <p>'s top and bottom margin
// 1.6em to match <dd>/<ul> indent
margin: .5em 1.6em;
& + & {
margin-top: -0.5em;
}
}
// Template:Key press
.keypress {
background: var(--keypress-background);
color: var(--keypress-color);
font-family: inherit;
border: 1px solid var(--keypress-border);
border-radius: @border-radius;
font-size: 0.9em;
margin: 0 0.1em;
padding: 0.1em 0.4em;
white-space: nowrap;
}
4d8961cffc51ef7a25df47988b3c0ba3ac6778c1
MediaWiki:Common.css
8
30
637
509
2024-03-22T20:15:46Z
Habblet
11
Updating CSS from [[MediaWiki:Common.less]]
css
text/css
/* <pre> */
:root {
--body-main: #feffff;
--body-light: #f2f2f2;
--body-mid: #d0bd97;
--body-dark: #e3e3e3;
--body-border: #000;
--body-background-color: #173a4d;
--button-background: #605443;
--button-color: #fff;
--button-border: #3c352a;
--button-dark: #18140c;
--button-light: #3a301d;
--sidebar: #cfc08d;
--background-text-color: #e2dbc8;
--background-link-color: #e2bd8a;
--search-box: #efeee6;
--link-color: #936039;
--redlink-color: #ba0000;
--text-color: #000;
--byline-color: #4c4c4c;
--subtle-color: #777;
--admin-blue: #332e75;
--bearcat-green: #13592e;
--awb-purple: #933b96;
--rsw-blue: #438ab6;
--osrsw-brown: #605443;
--thumb-bg: var(--body-light);
--thumb-caption-bg: var(--body-mid);
--sourceeditor-input-background: #fff;
--sourceeditor-background: var(--body-light);
--sourceeditor-background-secondary: var(--body-light);
--sourceeditor-border: var(--body-mid);
--codemirror-gutter-background: var(--body-mid);
}
@font-face {
font-family: 'Lora';
font-weight: 400 700;
font-style: normal;
font-display: swap;
src: url('filepath://Lora.woff2') format('woff2');
}
@font-face {
font-family: 'Lora';
font-weight: 400 700;
font-style: italic;
font-display: swap;
src: url('filepath://Lora-Italic.woff2') format('woff2');
}
:root {
--base-text-color: #36414f;
--base-heading-color: #444e5a;
--base-heading-border: #e4eaee;
--mw-code-background-color: #ddd4bb;
--body-background-image: url('filepath://Wiki_background.jpg');
}
#mw-page-base {
background: none;
}
.mw-body {
background-color: var(--body-main);
color: var(--text-color);
border-color: transparent;
box-shadow: 0 0 7px rgba(0, 0, 0, 0.15);
margin-top: 0;
}
h1,
h2,
h3,
h4,
h5,
h6 {
color: var(--text-color);
}
h1,
h2 {
border-color: var(--sidebar);
}
.mw-body h1,
.mw-body-content h1,
.mw-body-content h2,
.mw-body-content h3,
.mw-body-content h4,
.mw-body-content h5,
.mw-body-content h6 {
font-family: 'Lora', 'Palatino', 'Georgia', serif;
}
.mw-parser-output h2:first-of-type {
clear: left;
}
.mw-footer {
color: var(--background-text-color);
}
.mw-footer li {
color: var(--background-text-color);
}
.mw-footer a,
.mw-footer a:active,
.mw-footer a:visited {
color: var(--background-link-color);
}
::placeholder {
color: var(--subtle-color);
}
a {
color: var(--link-color);
}
a:visited,
a:active {
color: var(--link-color);
}
a.new {
color: var(--redlink-color);
}
a.new:visited {
color: var(--redlink-color);
}
.mw-parser-output a.extiw,
.mw-parser-output a.external {
color: var(--link-color);
}
.mw-parser-output a.extiw:visited,
.mw-parser-output a.external:visited,
.mw-parser-output a.extiw:active,
.mw-parser-output a.external:active {
color: var(--link-color);
}
.jsPurgeLink a.external {
color: var(--link-color);
}
:root {
--errorbox-bg: #feecea;
--errorbox-border: #ee4231;
--warningbox-bg: #fef9de;
--warningbox-border: #f9d000;
--successbox-bg: #ecf8e3;
--successbox-border: #6bc71f;
}
.mw-message-box-error,
.errorbox,
.mw-message-box-warning,
.warningbox,
.mw-message-box-success,
.successbox,
.usermessage {
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
}
.mw-message-box-error,
.errorbox {
background-color: var(--errorbox-bg);
border-color: var(--errorbox-border);
}
.mw-message-box-warning,
.warningbox,
.usermessage {
background-color: var(--warningbox-bg);
border-color: var(--warningbox-border);
}
.mw-message-box-success,
.successbox {
background-color: var(--successbox-bg);
border-color: var(--successbox-border);
}
.catlinks {
background: var(--body-light);
border: 1px solid var(--body-dark);
padding: 8px 15px;
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
}
.catlinks li {
border-color: var(--body-mid);
}
.filehistory a img,
#file img {
background: url("data:image/svg+xml,%3C%3Fxml version='1.0' encoding='UTF-8'%3F%3E%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16'%3E%3Cpath d='M0 0h8v16h8V8H0z' opacity='.13'/%3E%3C/svg%3E") repeat;
}
#file img:hover {
background: none;
}
.mw-highlight {
background: none;
}
.mw-highlight .linenos {
background-color: var(--mw-code-background-color);
color: var(--byline-color);
}
.mw-highlight a:hover .linenos,
.mw-highlight .hll a .linenos {
color: var(--text-color);
}
.mw-content-ltr.mw-highlight-lines pre,
.mw-content-ltr.content .mw-highlight-lines pre {
box-shadow: inset 2.75em 0 0 var(--mw-code-background-color);
}
#pagehistory ul {
list-style: none;
margin: 0;
}
#pagehistory li {
border: 1px solid transparent;
padding: 1px 10px;
margin: 2px 0;
}
#pagehistory li.selected {
background-color: var(--body-light);
color: inherit;
border: 1px dashed var(--body-border);
outline: none;
}
#mw-history-compare > div:first-of-type {
position: -webkit-sticky;
position: sticky;
top: 0;
background-color: var(--body-main);
border-bottom: 1px solid var(--body-dark);
padding: 0.25em 0;
}
.wgl-stickyheader #mw-history-compare > div:first-of-type {
top: 2.5rem;
}
.autocomment,
.autocomment a,
.autocomment a:visited {
color: var(--link-color);
}
li span.deleted,
span.history-deleted {
color: var(--byline-color);
}
.mw-usertoollinks-contribs-no-edits,
.mw-usertoollinks-contribs-no-edits:visited {
color: var(--redlink-color);
}
.CategoryTreeToggle {
color: var(--link-color);
}
body.wgl-stickyheader.action-view .mw-headline:target::before {
display: block;
content: '';
margin-top: -3rem;
height: 3rem;
visibility: hidden;
pointer-events: none;
}
.mw-mmv-post-image {
color: var(--text-color);
background-color: var(--body-main);
}
.mw-mmv-image-metadata {
border-top-color: var(--body-mid);
background-color: var(--body-light);
}
.mw-mmv-dialog,
.mw-mmv-dialog .mw-mmv-dialog-down-arrow,
.mw-mmv-options-dialog .mw-mmv-dialog-down-arrow {
background-color: var(--body-light);
box-shadow: none;
}
.mw-mmv-options-enable-alert {
background-color: var(--body-light);
color: var(--text-color);
}
.mw-mmv-options-dialog-header,
.mw-mmv-options-text-header,
.mw-mmv-options-text-body,
.mw-mmv-options-enable-alert,
.mw-mmv-options-dialog .mw-mmv-disable-confirmation .mw-mmv-options-dialog-header,
.mw-mmv-options-dialog .mw-mmv-disable-confirmation .mw-mmv-options-text-header {
color: var(--text-color);
}
.mw-revslider-container {
border-color: var(--sidebar);
}
.mw-revslider-slider-wrapper {
border-top-color: var(--sidebar);
}
.mw-ui-button {
background-color: var(--ooui-normal);
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
}
.mw-ui-button:not(:disabled):hover,
.mw-ui-button:not(:disabled):active {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
}
.mw-ui-button:not(:disabled):focus {
color: var(--ooui-text);
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent), inset 0 0 0 2px #fff;
}
.mw-ui-button:not(:disabled):visited {
color: var(--ooui-text);
}
.mw-ui-button.mw-ui-progressive:not(:disabled) {
background-color: var(--ooui-progressive);
color: #fff;
border-color: var(--ooui-progressive);
}
.mw-ui-button.mw-ui-progressive:not(:disabled):hover {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
}
.mw-ui-button.mw-ui-progressive:not(:disabled):focus {
box-shadow: inset 0 0 0 1px var(--ooui-accent), inset 0 0 0 2px #fff;
}
.mw-ui-button.mw-ui-progressive:not(:disabled):active,
.mw-ui-button.mw-ui-progressive:not(:disabled).is-on {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
box-shadow: none;
}
.mw-ui-button.mw-ui-destructive:not( :disabled ) {
color: #fff;
}
.mw-ui-button.mw-ui-quiet,
.mw-ui-button.mw-ui-quiet.mw-ui-progressive,
.mw-ui-button.mw-ui-quiet.mw-ui-destructive {
color: var(--text-color);
}
input[type='checkbox']:hover + .mw-ui-button.mw-ui-quiet,
input[type='checkbox']:hover + .mw-ui-button.mw-ui-quiet.mw-ui-progressive,
input[type='checkbox']:hover + .mw-ui-button.mw-ui-quiet.mw-ui-destructive,
.mw-ui-button.mw-ui-quiet:hover,
.mw-ui-button.mw-ui-quiet.mw-ui-progressive:hover,
.mw-ui-button.mw-ui-quiet.mw-ui-destructive:hover {
background-color: rgba(0, 24, 73, 0.02745098);
color: var(--text-color);
border-color: transparent;
}
input[type='checkbox']:focus + .mw-ui-button.mw-ui-quiet,
input[type='checkbox']:focus + .mw-ui-button.mw-ui-quiet.mw-ui-progressive,
input[type='checkbox']:focus + .mw-ui-button.mw-ui-quiet.mw-ui-destructive,
.mw-ui-button.mw-ui-quiet:focus,
.mw-ui-button.mw-ui-quiet.mw-ui-progressive:focus,
.mw-ui-button.mw-ui-quiet.mw-ui-destructive:focus {
color: var(--text-color);
}
input[type='checkbox']:active + .mw-ui-button.mw-ui-quiet,
input[type='checkbox']:active + .mw-ui-button.mw-ui-quiet.mw-ui-progressive,
input[type='checkbox']:active + .mw-ui-button.mw-ui-quiet.mw-ui-destructive,
.mw-ui-button.mw-ui-quiet:active,
.mw-ui-button.mw-ui-quiet.mw-ui-progressive:active,
.mw-ui-button.mw-ui-quiet.mw-ui-destructive:active {
background-color: rgba(0, 36, 73, 0.08235294);
color: var(--text-color);
border-color: #72777d;
}
.mw-ui-input {
background-color: var(--ooui-input);
color: var(--text-color);
border-color: var(--ooui-input-border);
}
.mw-ui-input:hover {
border-color: var(--ooui-input-border--hover);
}
.mw-ui-input::placeholder {
color: var(--byline-color);
}
.mw-content-ltr .redirectText li:first-child {
padding: 0;
background: 0;
}
.mw-content-ltr .redirectText li:first-child::before {
content: '';
background: currentcolor;
-webkit-mask: url("filepath://Redirect-arrow.svg") no-repeat 50% 50% / contain;
mask: url("filepath://Redirect-arrow.svg") no-repeat 50% 50% / contain;
display: inline-block;
width: 47px;
height: 20px;
}
:root {
--wikitable-header-bg: var(--body-dark);
--wikitable-border: var(--body-border);
--wikitable-bg: var(--body-light);
--wikitable-bg-lighter: #e9e3d6;
--wikitable-color: var(--text-color);
--table-na-background: rgba(255, 255, 255, 0.3);
--table-na-color: var(--subtle-color);
--table-yes-background: #c3e8a3;
--table-yes-color: #2e5e05;
--table-no-background: #fbc0ba;
--table-no-color: #801c13;
--table-maybe-background: #fcea94;
--table-maybe-color: #786300;
}
.wikitable {
background: var(--wikitable-bg);
color: var(--wikitable-color);
border-color: var(--wikitable-border);
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
}
.wikitable > tr > th,
.wikitable > tr > td,
.wikitable > * > tr > th,
.wikitable > * > tr > td {
border-color: var(--wikitable-border);
}
.wikitable > tr > th.table-noborder,
.wikitable > tr > td.table-noborder,
.wikitable > * > tr > th.table-noborder,
.wikitable > * > tr > td.table-noborder {
border-left-style: hidden;
border-right-style: hidden;
padding-left: 0;
padding-right: 0;
}
.wikitable > tr > th,
.wikitable > * > tr > th {
background-color: var(--wikitable-header-bg);
}
.tabber .wikitable {
box-shadow: none;
}
.mw_metadata td,
.mw_metadata th {
border-color: var(--wikitable-border);
}
.mw_metadata th {
background-color: var(--wikitable-header-bg);
}
.mw_metadata td {
background-color: var(--wikitable-bg);
}
.mw-datatable {
border-color: var(--wikitable-border);
}
.mw-datatable td,
.mw-datatable th {
border-color: var(--wikitable-border);
}
.mw-datatable th {
background-color: var(--wikitable-header-bg);
}
.mw-datatable td {
background-color: var(--wikitable-bg);
}
.mw-datatable tr:hover td {
background-color: var(--wikitable-bg);
}
table.alternating-rows tr:nth-child(odd),
table.alternating-cols td:nth-child(odd) {
background: var(--wikitable-alternating-bg);
}
.table-na {
background: var(--table-na-background);
color: var(--table-na-color);
vertical-align: middle;
text-align: center;
}
.table-yes {
background: var(--table-yes-background);
color: var(--table-yes-color);
}
.table-positive {
background: var(--table-yes-background);
}
.table-no {
background: var(--table-no-background);
color: var(--table-no-color);
}
.table-negative {
background: var(--table-no-background);
}
.table-maybe {
background: var(--table-maybe-background);
color: var(--table-maybe-color);
}
#mw-allmessagestable .am_actual,
#mw-allmessagestable .am_default {
background-color: var(--wikitable-bg);
}
#mw-allmessagestable .am_default:hover,
#mw-allmessagestable .am_actual:hover,
#mw-allmessagestable tbody:hover td {
background-color: var(--wikitable-bg-lighter);
}
table.wikitable td.no-cell-spacing {
padding: 0;
height: 0;
}
table.wikitable td.no-cell-spacing table {
margin: -1px;
width: calc(100% + 2px);
height: calc(100% + 2px);
}
.plainlist ol,
.plainlist ul {
margin: 0;
}
.plainlist li {
margin-bottom: 0;
list-style: none;
}
table.align-right-1 td:nth-of-type(1),
table.align-right-2 td:nth-of-type(2),
table.align-right-3 td:nth-of-type(3),
table.align-right-4 td:nth-of-type(4),
table.align-right-5 td:nth-of-type(5),
table.align-right-6 td:nth-of-type(6),
table.align-right-7 td:nth-of-type(7),
table.align-right-8 td:nth-of-type(8),
table.align-right-9 td:nth-of-type(9),
table.align-right-10 td:nth-of-type(10),
table.align-right-11 td:nth-of-type(11),
table.align-right-12 td:nth-of-type(12),
table.align-right-13 td:nth-of-type(13),
table.align-right-14 td:nth-of-type(14),
table.align-right-15 td:nth-of-type(15),
table.align-right-16 td:nth-of-type(16),
table.align-right-17 td:nth-of-type(17),
table.align-right-18 td:nth-of-type(18),
table.align-right-19 td:nth-of-type(19),
table.align-right-20 td:nth-of-type(20) {
text-align: right;
}
table.align-center-1 td:nth-of-type(1),
table.align-center-2 td:nth-of-type(2),
table.align-center-3 td:nth-of-type(3),
table.align-center-4 td:nth-of-type(4),
table.align-center-5 td:nth-of-type(5),
table.align-center-6 td:nth-of-type(6),
table.align-center-7 td:nth-of-type(7),
table.align-center-8 td:nth-of-type(8),
table.align-center-9 td:nth-of-type(9),
table.align-center-10 td:nth-of-type(10),
table.align-center-11 td:nth-of-type(11),
table.align-center-12 td:nth-of-type(12),
table.align-center-13 td:nth-of-type(13),
table.align-center-14 td:nth-of-type(14),
table.align-center-15 td:nth-of-type(15),
table.align-center-16 td:nth-of-type(16),
table.align-center-17 td:nth-of-type(17),
table.align-center-18 td:nth-of-type(18),
table.align-center-19 td:nth-of-type(19),
table.align-center-20 td:nth-of-type(20) {
text-align: center;
}
table.align-left-1 td:nth-of-type(1),
table.align-left-2 td:nth-of-type(2),
table.align-left-3 td:nth-of-type(3),
table.align-left-4 td:nth-of-type(4),
table.align-left-5 td:nth-of-type(5),
table.align-left-6 td:nth-of-type(6),
table.align-left-7 td:nth-of-type(7),
table.align-left-8 td:nth-of-type(8),
table.align-left-9 td:nth-of-type(9),
table.align-left-10 td:nth-of-type(10),
table.align-left-11 td:nth-of-type(11),
table.align-left-12 td:nth-of-type(12),
table.align-left-13 td:nth-of-type(13),
table.align-left-14 td:nth-of-type(14),
table.align-left-15 td:nth-of-type(15),
table.align-left-16 td:nth-of-type(16),
table.align-left-17 td:nth-of-type(17),
table.align-left-18 td:nth-of-type(18),
table.align-left-19 td:nth-of-type(19),
table.align-left-20 td:nth-of-type(20) {
text-align: left;
}
:root {
--diff-addedline-border-color: #438ab5;
--diff-addedline-background: #bddff2;
--diff-addedline-color: #000;
--diff-deletedline-border-color: #379541;
--diff-deletedline-background: #c1edbf;
--diff-deletedline-color: #000;
--diff-context-border-color: var(--body-mid);
--diff-context-background: var(--body-mid);
}
.diff-context {
border-color: var(--diff-context-border-color);
background: var(--diff-context-background);
color: inherit;
}
.diff-addedline {
border-color: var(--diff-addedline-border-color);
}
.diff-addedline .diffchange {
background: var(--diff-addedline-background);
color: var(--diff-addedline-color);
}
.diff-deletedline {
border-color: var(--diff-deletedline-border-color);
}
.diff-deletedline .diffchange {
background: var(--diff-deletedline-background);
color: var(--diff-deletedline-color);
}
.mw-diff-movedpara-left:after,
.mw-diff-movedpara-right:after {
color: var(--text-color);
}
.mw-notification {
background-color: var(--body-light);
border-color: var(--body-border);
color: var(--text-color);
}
.mw-echo-ui-notificationsInboxWidget-toolbarWrapper {
background: var(--body-main);
}
.mw-body-content .mw-echo-ui-datedSubGroupListWidget-title-secondary {
color: var(--byline-color);
}
.mw-echo-ui-pageNotificationsOptionWidget.oo-ui-optionWidget-selected {
background-color: var(--ooui-normal);
color: var(--ooui-accent);
}
.mw-echo-ui-pageNotificationsOptionWidget-label-count {
background-color: var(--ooui-normal);
color: var(--byline-color);
}
.oo-ui-optionWidget-selected .mw-echo-ui-pageNotificationsOptionWidget-label-count {
color: var(--ooui-accent);
}
.mw-echo-ui-pageNotificationsOptionWidget.oo-ui-optionWidget-highlighted {
background-color: var(--ooui-normal);
color: var(--text-color);
}
.mw-echo-ui-crossWikiUnreadFilterWidget {
border-color: var(--body-border);
}
.mw-echo-ui-crossWikiUnreadFilterWidget-subtitle {
color: var(--byline-color);
}
.mw-echo-ui-notificationBadgeButtonPopupWidget-popup > .oo-ui-popupWidget-popup > .oo-ui-popupWidget-head,
.mw-echo-ui-notificationBadgeButtonPopupWidget-popup > .oo-ui-popupWidget-popup > .oo-ui-popupWidget-footer {
border-color: var(--ooui-interface-border);
}
.mw-echo-ui-notificationBadgeButtonPopupWidget-popup > .oo-ui-popupWidget-popup > .oo-ui-popupWidget-footer .mw-echo-ui-notificationBadgeButtonPopupWidget-footer-buttons .oo-ui-buttonElement:last-child {
border-left-color: var(--ooui-normal-border);
}
.mw-echo-ui-notificationItemWidget {
background-color: var(--ooui-normal);
border-color: var(--ooui-normal-border);
}
.mw-echo-ui-notificationItemWidget:hover,
.mw-echo-ui-notificationItemWidget-unread:hover {
background-color: var(--ooui-normal--hover);
}
.mw-echo-ui-notificationItemWidget:last-child {
border-bottom-color: var(--ooui-normal-border);
}
.mw-echo-ui-notificationItemWidget-unread {
background-color: var(--search-box);
}
.mw-echo-ui-crossWikiNotificationItemWidget-group,
.mw-echo-ui-bundleNotificationItemWidget-group {
background-color: var(--ooui-interface);
}
.mw-echo-ui-toggleReadCircleButtonWidget-circle {
background-color: var(--ooui-progressive);
}
.mw-echo-ui-toggleReadCircleButtonWidget:hover .mw-echo-ui-toggleReadCircleButtonWidget-circle {
background-color: var(--ooui-progressive--hover);
}
.mw-echo-ui-toggleReadCircleButtonWidget-circle-unread {
background-color: var(--ooui-normal);
border-color: var(--ooui-normal-border);
}
.mw-echo-ui-notificationItemWidget-content-message-header,
.mw-echo-ui-notificationItemWidget-content-message-body,
.mw-echo-ui-menuItemWidget > .oo-ui-buttonElement-button > .oo-ui-labelElement-label,
.mw-echo-ui-notificationItemWidget-content-actions-timestamp {
color: var(--ooui-text);
}
.mw-echo-ui-bundleNotificationItemWidget-group {
background-color: var(--body-main);
}
@keyframes unseen-fadeout-to-unread {
from {
background-color: var(--wikitable-bg-lighter);
}
to {
background-color: var(--search-box);
}
}
@keyframes unseen-fadeout-to-read {
from {
background-color: var(--wikitable-bg-lighter);
}
to {
background-color: var(--body-main);
}
}
.mwe-popups {
background: var(--body-light);
}
.mwe-popups .mwe-popups-container {
color: var(--text-color);
background: var(--body-light);
}
.mwe-popups .mwe-popups-container.flipped-x-y:before,
.mwe-popups .mwe-popups-container.flipped-y:before {
border-top: none;
}
.mwe-popups .mwe-popups-container.mwe-popups-no-image-tri:before {
border-bottom: none;
}
.mwe-popups .mwe-popups-container.flipped-x-y:after,
.mwe-popups .mwe-popups-container.flipped-y:after {
border-top-color: var(--body-light);
}
.mwe-popups .mwe-popups-container.mwe-popups-no-image-tri:after {
border-bottom-color: var(--body-light);
}
.mwe-popups .mwe-popups-settings-icon:hover,
.mwe-popups .mwe-popups-settings-icon:active {
background-color: var(--ooui-normal--hover);
}
.mwe-popups .mw-ui-icon-element:not(.disabled):hover {
background: none;
}
.mwe-popups .mwe-popups-extract {
color: var(--text-color);
}
.mwe-popups .mwe-popups-extract[dir='ltr']:after {
background-image: linear-gradient(to right, rgba(49, 62, 89, 0), var(--body-light) 50%);
}
.mwe-popups-overlay {
background-color: var(--ooui-window-background);
}
#mwe-popups-settings {
background: var(--ooui-interface);
border-color: var(--ooui-interface-border);
color: var(--text-color);
}
#mwe-popups-settings header {
border-color: var(--ooui-interface-border);
}
#mwe-popups-settings main#mwe-popups-settings-form p {
color: var(--byline-color);
}
#mwe-popups-settings main#mwe-popups-settings-form form label > span {
color: var(--ooui-text);
}
:root {
--smw-ask-options-even-bg: var(--body-mid);
--smw-ask-options-odd-bg: var(--body-light);
--smw-ask-action-btn-lblue-bg: var(--body-main);
--smw-ask-action-btn-lblue-color: #000;
--smw-ask-action-btn-lblue-border-color: var(--body-light);
--smw-ask-action-btn-dblue-bg: var(--body-light);
--smw-ask-action-btn-dblue-color: #fff;
--smw-ask-action-btn-dblue-border-color: var(--button-border);
}
.smw-ask-condition fieldset,
.smw-ask-printhead fieldset {
border-color: var(--sidebar);
}
.smw-ask-search fieldset,
.smw-ask-format fieldset,
.smw-ask-options fieldset {
border-color: var(--sidebar);
}
.strike > span:before,
.strike > span:after {
background: var(--sidebar);
}
.smw-ask-options-fields tr td {
background-color: var(--smw-ask-options-even-bg);
}
.smw-ask-options-fields tr:nth-child(odd) td {
background-color: var(--smw-ask-options-odd-bg);
}
.smw-ask-action-btn.smw-ask-action-btn-lblue,
.smw-ask-action-btn.smw-ask-action-btn-lblue:hover,
.smw-ask-action-btn.smw-ask-action-btn-lblue:visited {
background-color: var(--smw-ask-action-btn-lblue-bg);
color: var(--smw-ask-action-btn-lblue-color);
border-color: var(--smw-ask-action-btn-lblue-border-color);
}
.smw-ask-action-btn.smw-ask-action-btn-dblue,
.smw-ask-action-btn.smw-ask-action-btn-dblue:hover,
.smw-ask-action-btn.smw-ask-action-btn-dblue:visited {
background-color: var(--smw-ask-action-btn-dblue-bg);
color: var(--smw-ask-action-btn-dblue-color);
border-color: var(--smw-ask-action-btn-dblue-border-color);
}
.smw-ask-query textarea,
.smw-ask-actions textarea {
background-color: var(--ooui-interface);
border-color: var(--ooui-interface-border);
color: var(--ooui-text);
}
.smw-ask-query-format select {
background-color: var(--ooui-interface);
border: 1px solid var(--ooui-interface-border);
color: var(--ooui-text);
}
.smw-ask-toplinks {
background-color: var(--body-mid);
}
.smw-ask-toplinks span.smw-icon-info {
background: none;
padding: 0 !important;
}
.smw-ask-toplinks span.smw-icon-info::before {
content: '';
background: var(--text-color);
-webkit-mask: url("data:image/svg+xml,%3C%3Fxml version='1.0' encoding='UTF-8'%3F%3E%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 20 20'%3E%3Ctitle%3Einfo%3C/title%3E%3Cpath d='M10 0C4.477 0 0 4.477 0 10s4.477 10 10 10 10-4.477 10-10S15.523 0 10 0zM9 5h2v2H9zm0 4h2v6H9z'/%3E%3C/svg%3E") no-repeat 50% 50% / contain;
mask: url("data:image/svg+xml,%3C%3Fxml version='1.0' encoding='UTF-8'%3F%3E%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 20 20'%3E%3Ctitle%3Einfo%3C/title%3E%3Cpath d='M10 0C4.477 0 0 4.477 0 10s4.477 10 10 10 10-4.477 10-10S15.523 0 10 0zM9 5h2v2H9zm0 4h2v6H9z'/%3E%3C/svg%3E") no-repeat 50% 50% / contain;
padding: 0 0 3px 18px;
}
.smw-ask-options-row-odd {
background-color: var(--body-light);
}
.smw-ask-options-row-even {
background-color: var(--body-mid);
}
#options-toggle:not(:checked) + #options-list .options-parameter-list:after {
background-image: linear-gradient(to bottom, transparent, var(--body-mid) 90%);
}
.smw-ask-button-submit input {
background-color: var(--ooui-normal);
border-color: var(--ooui-normal-border);
color: var(--text-color);
}
.smw-ask-button-submit input:hover,
.smw-ask-button-lgrey:hover {
background-color: var(--ooui-normal--hover);
border-color: var(--ooui-normal-border);
}
input.smw-ask-action-btn.smw-ask-action-btn-dblue {
background-color: var(--ooui-normal);
border-color: var(--ooui-normal-border);
color: var(--ooui-text);
}
a.smw-ask-action-btn.smw-ask-action-btn-lblue {
background-color: var(--body-mid);
border-color: var(--body-mid);
color: var(--ooui-text);
}
a.smw-ask-action-btn.smw-ask-action-btn-lblue:visited {
background-color: var(--body-mid);
border-color: var(--body-mid);
color: var(--ooui-text);
}
a.smw-ask-action-btn.smw-ask-action-btn-lblue:hover {
background-color: var(--body-mid);
border-color: var(--body-mid);
color: var(--ooui-text);
}
a.smw-ask-action-btn-lgrey {
background-color: var(--ooui-normal);
border-color: var(--ooui-normal-border);
color: var(--ooui-text);
}
a.smw-ask-action-btn-lgrey:hover {
background-color: var(--ooui-normal--hover);
border-color: var(--ooui-normal-border);
color: var(--ooui-text);
}
.smw-callout-error {
background-color: var(--errorbox-bg);
border-color: var(--errorbox-border);
}
.smw-callout-info {
background-color: var(--body-light);
border-color: var(--body-dark);
}
.smw-callout-success {
background-color: var(--successbox-bg);
border-color: var(--successbox-border);
}
.smw-callout-warning {
background-color: var(--warningbox-bg);
border-color: var(--warningbox-bg);
}
.smw-tabs input.nav-tab:checked + label.nav-label,
.smw-tabs input.nav-tab:checked + label.nav-label:hover {
color: inherit;
}
#tab-smw-property-value:checked + label.nav-label .usage-count {
color: #fff;
background-color: var(--ooui-progressive);
}
#tab-smw-property-value:checked + label.nav-label .usage-count.moderate {
color: #fff;
background-color: #b55e0c;
border-color: #b55e0c;
}
#tab-smw-property-value:checked + label.nav-label .usage-count.high {
color: #fff;
background-color: #9f261e;
border-color: #9f261e;
}
.smw-property-page-results .header-title {
background-color: var(--ooui-interface);
border-bottom-color: var(--ooui-interface-border);
color: var(--ooui-text);
}
.smw-property-page-results .value-row:hover {
background-color: var(--ooui-normal--hover);
}
.smw-property-page-results .smw-table .header-row {
color: var(--text-color);
}
.tippy-tooltip.light-border-theme {
background-color: var(--body-light);
color: var(--text-color);
}
.tippy-tooltip.light-border-theme .tippy-arrow {
border-top-color: var(--body-light);
}
.tippy-tooltip.light-border-theme .tippy-arrow:after {
border-top-color: var(--body-light);
}
.tippy-header {
background-color: var(--body-dark);
border-bottom-color: var(--body-mid);
}
.smw-ui-input-filter {
background-color: var(--ooui-interface);
border-color: var(--ooui-interface-border);
color: var(--ooui-text);
}
.smw-ui-input-filter input {
border-left-color: var(--ooui-interface-border) !important;
color: var(--ooui-text) !important;
}
.smw-ui-pagination .page-link.link-disabled {
background-color: var(--ooui-disabled);
border-color: var(--ooui-disabled-border);
color: var(--subtle-color);
}
.smw-ui-pagination .page-link {
background-color: var(--ooui-normal);
border-color: var(--ooui-normal-border);
color: var(--link-color);
}
.smw-ui-pagination .page-link:hover {
background-color: var(--ooui-normal--hover);
border-color: var(--ooui-normal-border);
color: var(--link-color);
}
.smw-ui-pagination .page-link.link-active {
color: #fff;
background-color: var(--ooui-progressive);
border-color: var(--ooui-progressive);
}
.smw-tabs input.nav-tab:checked + label.nav-label {
border-color: var(--ooui-normal-border);
}
.smw-tabs section,
.smw-tabs .subtab-content {
border-top-color: var(--ooui-normal-border);
}
.smw-column-header {
color: var(--text-color);
}
.smw-factbox {
background: var(--body-main);
border-color: transparent;
}
.mw-body .mw-indicators #mw-indicator-smw-entity-examiner.mw-indicator .smw-indicator-vertical-bar-loader {
display: none;
}
.smwb-theme-light .smwb-title,
.smwb-theme-light .smwb-center,
.smwb-theme-light .smwb-actions,
.smwb-theme-light .smwb-prophead {
background-color: var(--body-mid);
}
.smwb-theme-light .smwb-factbox {
border-left-color: var(--body-mid);
}
.smwb-theme-light .smwb-ifactbox {
border-right-color: var(--body-mid);
}
.smwb-theme-light .smwb-propval {
background-color: var(--body-light);
}
.smwb-action-separator {
border-color: var(--wikitable-border);
}
.smwb-bottom {
border-bottom: 1px solid var(--wikitable-border);
}
.smwb-ifactbox .smwb-cell,
.smwb-factbox .smwb-cell {
border-top: 1px solid var(--wikitable-border);
}
.smwb-propvalue .smwb-prophead,
.smwb-ipropvalue .smwb-prophead,
.smwb-propvalue .smwb-propval,
.smwb-ipropvalue .smwb-propval {
font-size: 0.9em;
}
:root {
--filter-black-to-link: invert(36%) sepia(58%) saturate(433%) hue-rotate(344deg) brightness(100%) contrast(91%);
}
#bodyContent span.smwbrowse a {
color: black;
background-image: url('filepath://Smwbrowse.svg');
filter: var(--filter-black-to-link);
}
#bodyContent span.smwbrowse a:hover {
color: black;
background-image: url('filepath://Smwbrowse-hover.svg');
text-decoration: underline;
}
#bodyContent span.smwsearch a {
color: black;
filter: var(--filter-black-to-link);
background-image: url('filepath://Smwsearch.svg');
}
#bodyContent span.smwsearch a:hover {
color: black;
background-image: url('filepath://Smwsearch-hover.svg');
text-decoration: underline;
}
:root {
--tabber-tab-bg: var(--body-light);
--tabber-tab-border-color: var(--body-border);
--tabber-active-tab-bg: var(--body-light);
--tabber-active-tab-color: var(--text-color);
--tabber-active-tab-hover-bg: var(--body-light);
--tabber-active-tab-hover-border-color: var(--body-border);
--tabber-active-tab-hover-color: var(--text-color);
--tabber-active-tab-border-hider-color: var(--body-light);
--tabber-inactive-tab-bg: var(--body-background-color);
--tabber-inactive-tab-border-color: var(--body-border);
--tabber-inactive-tab-color: var(--text-color);
--tabber-inactive-tab-hover-bg: var(--body-light);
--tabber-inactive-tab-hover-border-color: var(--body-border);
}
.tabber {
margin: 1em 0;
}
.tabber .tabbertab {
background-color: var(--tabber-tab-bg);
border: 1px solid var(--tabber-tab-border-color);
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
padding: 1em 1.5em;
}
ul.tabbernav {
border: none;
margin-left: 2em;
margin-bottom: 0;
margin-right: 2em;
padding: 0;
font-family: inherit;
}
ul.tabbernav li.tabberactive > a {
background-color: var(--tabber-active-tab-bg);
color: var(--tabber-active-tab-color);
border-bottom: none;
position: relative;
}
ul.tabbernav li.tabberactive > a:hover {
color: var(--tabber-active-tab-hover-color);
background-color: var(--tabber-active-tab-hover-bg);
border-color: var(--tabber-active-tab-hover-border-color);
border-bottom: none;
}
ul.tabbernav li.tabberactive > a::after {
content: '';
position: absolute;
left: 0;
right: 0;
bottom: -1px;
border-bottom: 2px solid var(--tabber-active-tab-border-hider-color);
}
ul.tabbernav li a {
background-color: var(--tabber-inactive-tab-bg);
border-bottom: transparent;
border-color: var(--tabber-inactive-tab-border-color);
color: var(--tabber-inactive-tab-color);
display: inline-block;
font-size: 110%;
padding: 0.5em 1em;
}
ul.tabbernav li a:hover {
background-color: var(--tabber-inactive-tab-hover-bg);
border-color: var(--tabber-inactive-tab-hover-border-color);
}
ul.tabbernav li a:link,
ul.tabbernav li a:visited {
color: var(--tabber-inactive-tab-color);
}
:root {
--ooui-text: var(--text-color);
--ooui-interface: var(--body-light);
--ooui-interface-border: var(--body-border);
--ooui-window-background: rgba(255, 255, 255, 0.5);
--ooui-normal: #d5c7ad;
--ooui-normal--hover: #dfd5c1;
--ooui-normal-border: #b8a282;
--ooui-progressive: #605443;
--ooui-progressive--hover: #7e6e58;
--ooui-accent: var(--link-color);
--ooui-input: #fff;
--ooui-input-border: #b8a282;
--ooui-input-border--hover: #8a724f;
--ooui-disabled: #d1cdc5;
--ooui-disabled-border: #c2b9ab;
--ooui-disabled-text: var(--subtle-color);
--ooui-pending-background-image: repeating-linear-gradient(-45deg, var(--search-box), var(--search-box) 20px, var(--body-main) 20px, var(--body-main) 30px);
}
.oo-ui-widget {
color: var(--ooui-text);
}
.oo-ui-checkboxInputWidget [type='checkbox'] + span,
.oo-ui-radioInputWidget [type='radio'] + span {
background-color: var(--ooui-input);
border-color: var(--ooui-input-border);
}
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:checked + span,
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:indeterminate + span {
background-color: var(--ooui-progressive);
border-color: var(--ooui-progressive);
}
.oo-ui-radioInputWidget.oo-ui-widget-enabled [type='radio']:checked + span {
border-color: var(--ooui-progressive);
}
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:checked:hover + span,
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:indeterminate:hover + span {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
}
.oo-ui-radioInputWidget.oo-ui-widget-enabled [type='radio']:checked:hover + span {
border-color: var(--ooui-progressive--hover);
}
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:hover + span,
.oo-ui-radioInputWidget.oo-ui-widget-enabled [type='radio']:hover + span {
border-color: var(--ooui-accent);
}
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:focus + span {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:active + span,
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:checked:active + span,
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:indeterminate:active + span {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
box-shadow: inset 0 0 0 1px var(--ooui-progressive--hover);
}
.oo-ui-radioInputWidget.oo-ui-widget-enabled [type='radio']:active + span {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
}
.oo-ui-radioInputWidget.oo-ui-widget-enabled [type='radio']:checked:active + span {
border-color: var(--ooui-progressive--hover);
box-shadow: inset 0 0 0 1px var(--ooui-progressive--hover);
}
.oo-ui-radioInputWidget.oo-ui-widget-enabled [type='radio']:checked:active + span:before {
border-color: var(--ooui-progressive--hover);
}
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:checked:focus + span,
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:indeterminate:focus + span {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent), inset 0 0 0 2px #fff;
}
.oo-ui-checkboxInputWidget [type='checkbox']:disabled + span,
.oo-ui-radioInputWidget [type='radio']:disabled + span {
background-color: var(--ooui-disabled);
border-color: var(--ooui-disabled);
}
.oo-ui-dropdownWidget-handle {
border-color: var(--ooui-normal-border);
}
.oo-ui-dropdownWidget.oo-ui-widget-enabled .oo-ui-dropdownWidget-handle {
background-color: var(--ooui-normal);
color: var(--ooui-text);
}
.oo-ui-dropdownWidget.oo-ui-widget-enabled .oo-ui-dropdownWidget-handle:hover {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
}
.oo-ui-dropdownWidget.oo-ui-widget-enabled .oo-ui-dropdownWidget-handle:active {
color: var(--ooui-text);
}
.oo-ui-dropdownWidget.oo-ui-widget-enabled .oo-ui-dropdownWidget-handle:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-dropdownWidget.oo-ui-widget-enabled.oo-ui-dropdownWidget-open .oo-ui-dropdownWidget-handle {
background-color: var(--ooui-normal--hover);
}
.oo-ui-dropdownWidget.oo-ui-widget-disabled .oo-ui-dropdownWidget-handle {
color: var(--ooui-disabled-text);
text-shadow: none;
border-color: var(--ooui-disabled-border);
background-color: var(--ooui-disabled);
}
.oo-ui-dropdownInputWidget select {
border-color: var(--ooui-normal-border);
}
.oo-ui-dropdownInputWidget option {
background-color: var(--ooui-interface);
}
.oo-ui-dropdownInputWidget.oo-ui-widget-enabled {
background-color: var(--ooui-normal);
}
.oo-ui-dropdownInputWidget.oo-ui-widget-enabled:hover {
background-color: var(--ooui-normal--hover);
}
.oo-ui-dropdownInputWidget.oo-ui-widget-enabled select {
color: var(--ooui-text);
}
.oo-ui-dropdownInputWidget.oo-ui-widget-enabled select:hover,
.oo-ui-dropdownInputWidget.oo-ui-widget-enabled select:active {
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
}
.oo-ui-dropdownInputWidget.oo-ui-widget-enabled select:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-labelWidget.oo-ui-inline-help {
color: var(--byline-color);
}
.oo-ui-menuSelectWidget {
background-color: var(--ooui-interface);
border-color: var(--ooui-interface-border);
}
.oo-ui-menuSelectWidget-frameless {
box-shadow: inset 0 -1px 0 0 var(--ooui-normal-border);
}
.oo-ui-menuSectionOptionWidget {
color: var(--byline-color);
}
.oo-ui-menuOptionWidget.oo-ui-optionWidget-highlighted,
.oo-ui-menuOptionWidget.oo-ui-optionWidget-selected {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
}
.oo-ui-menuOptionWidget.oo-ui-optionWidget-selected.oo-ui-menuOptionWidget.oo-ui-optionWidget-highlighted,
.oo-ui-menuOptionWidget.oo-ui-optionWidget-pressed.oo-ui-menuOptionWidget.oo-ui-optionWidget-highlighted {
color: var(--ooui-accent);
}
.oo-ui-menuOptionWidget.oo-ui-widget-enabled.oo-ui-optionWidget {
color: var(--ooui-text);
}
.oo-ui-messageDialog-title {
color: inherit;
}
.oo-ui-messageWidget.oo-ui-messageWidget-block.oo-ui-flaggedElement-error {
background-color: var(--errorbox-bg);
border-color: var(--errorbox-border);
}
.oo-ui-messageWidget.oo-ui-messageWidget-block.oo-ui-flaggedElement-warning {
background-color: var(--warningbox-bg);
border-color: var(--warningbox-border);
}
.oo-ui-messageWidget.oo-ui-messageWidget-block.oo-ui-flaggedElement-success {
background-color: var(--successbox-bg);
border-color: var(--successbox-border);
}
.oo-ui-messageWidget.oo-ui-messageWidget-block.oo-ui-flaggedElement-notice {
background-color: var(--messagebox-info-background);
border-color: var(--messagebox-info-border);
}
.oo-ui-messageWidget.oo-ui-flaggedElement-error:not(.oo-ui-messageWidget-block),
.oo-ui-messageWidget.oo-ui-flaggedElement-success:not(.oo-ui-messageWidget-block) {
color: var(--ooui-text);
}
.oo-ui-optionWidget.oo-ui-widget-disabled {
color: var(--ooui-disabled-text);
}
.oo-ui-outlineControlsWidget {
background-color: var(--ooui-normal);
}
.oo-ui-outlineOptionWidget.oo-ui-optionWidget-highlighted {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
}
.oo-ui-popupWidget-popup {
background-color: var(--ooui-interface);
border-color: var(--ooui-interface-border);
}
.oo-ui-popupWidget-anchored-top .oo-ui-popupWidget-anchor:after {
border-bottom-color: var(--ooui-interface);
}
.oo-ui-popupWidget-anchored-top .oo-ui-popupWidget-anchor:before {
border-bottom-color: var(--ooui-interface-border);
}
.oo-ui-popupWidget-anchored-bottom .oo-ui-popupWidget-anchor:after {
border-top-color: var(--ooui-interface);
}
.oo-ui-popupWidget-anchored-bottom .oo-ui-popupWidget-anchor:before {
border-top-color: var(--ooui-interface-border);
}
.oo-ui-popupWidget-anchored-start .oo-ui-popupWidget-anchor:after {
border-right-color: var(--ooui-interface);
}
.oo-ui-popupWidget-anchored-start .oo-ui-popupWidget-anchor:before {
border-right-color: var(--ooui-interface-border);
}
.oo-ui-popupWidget-anchored-end .oo-ui-popupWidget-anchor:after {
border-left-color: var(--ooui-interface);
}
.oo-ui-popupWidget-anchored-end .oo-ui-popupWidget-anchor:before {
border-left-color: var(--ooui-interface-border);
}
.oo-ui-searchWidget-query {
border-bottom-color: var(--ooui-interface-border);
}
.oo-ui-selectFileWidget-dropTarget {
background-color: var(--ooui-interface);
border-color: var(--ooui-interface-border);
}
.oo-ui-selectFileWidget.oo-ui-widget-enabled.oo-ui-selectFileWidget-dropTarget {
background-color: var(--ooui-interface);
}
.oo-ui-selectFileWidget.oo-ui-widget-enabled.oo-ui-selectFileWidget-dropTarget:hover {
border-color: var(--ooui-input-border--hover);
}
.oo-ui-tabOptionWidget {
color: var(--ooui-text);
}
.oo-ui-tabSelectWidget-framed .oo-ui-tabOptionWidget.oo-ui-optionWidget-selected {
background-color: var(--body-dark);
color: var(--ooui-text);
}
.oo-ui-tabSelectWidget-framed .oo-ui-tabOptionWidget.oo-ui-optionWidget-selected .oo-ui-labelElement-label {
border-bottom-color: var(--body-border);
}
.oo-ui-tabSelectWidget-framed .oo-ui-tabOptionWidget.oo-ui-widget-enabled:hover,
.oo-ui-tabSelectWidget-framed .oo-ui-tabOptionWidget.oo-ui-widget-enabled:active {
background-color: var(--body-light);
color: var(--ooui-text);
}
.oo-ui-tabSelectWidget-framed .oo-ui-tabOptionWidget.oo-ui-widget-enabled.oo-ui-optionWidget-selected:hover {
background-color: var(--body-dark);
}
.oo-ui-tabSelectWidget-frameless .oo-ui-tabOptionWidget.oo-ui-optionWidget-selected {
color: var(--ooui-progressive);
box-shadow: inset 0 -2px 0 0 var(--ooui-progressive);
}
.oo-ui-tabSelectWidget-frameless .oo-ui-tabOptionWidget.oo-ui-optionWidget-selected:hover,
.oo-ui-tabSelectWidget-frameless .oo-ui-tabOptionWidget.oo-ui-optionWidget-selected:focus {
color: var(--ooui-progressive--hover);
box-shadow: inset 0 -2px 0 0 var(--ooui-progressive--hover);
}
.oo-ui-tabSelectWidget-framed {
background: none;
border-bottom: 1px solid var(--ooui-interface-border);
}
.oo-ui-tabSelectWidget-frameless {
box-shadow: inset 0 -1px 0 0 var(--ooui-interface-border);
}
.oo-ui-tabSelectWidget-mobile {
}
.oo-ui-tabSelectWidget-mobile.oo-ui-tabSelectWidget-framed:after {
background: var(--mobile-navbox-linear-gradient);
}
.oo-ui-tabSelectWidget-mobile.oo-ui-tabSelectWidget-frameless:after {
background: var(--mobile-navbox-linear-gradient);
}
.oo-ui-tagItemWidget {
border-color: var(--ooui-normal-border);
}
.oo-ui-tagItemWidget.oo-ui-widget-enabled {
color: var(--ooui-text);
}
.oo-ui-tagItemWidget.oo-ui-widget-enabled:hover {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
}
.oo-ui-tagItemWidget.oo-ui-widget-enabled:not( .oo-ui-tagItemWidget-fixed ) {
background-color: var(--ooui-normal);
}
.oo-ui-tagItemWidget.oo-ui-widget-enabled .oo-ui-buttonElement-button:hover {
background-color: var(--ooui-normal--hover);
}
.oo-ui-tagMultiselectWidget.oo-ui-widget-enabled {
background-color: var(--ooui-interface);
}
.oo-ui-tagMultiselectWidget.oo-ui-widget-enabled.oo-ui-tagMultiselectWidget-outlined {
background-color: var(--ooui-normal);
}
.oo-ui-tagMultiselectWidget.oo-ui-widget-enabled.oo-ui-tagMultiselectWidget-outlined .oo-ui-tagItemWidget.oo-ui-widget-enabled {
background-color: var(--ooui-interface);
}
.oo-ui-textInputWidget .oo-ui-inputWidget-input {
background-color: var(--ooui-input);
color: var(--ooui-text);
border-color: var(--ooui-input-border);
}
.oo-ui-textInputWidget.oo-ui-widget-enabled .oo-ui-inputWidget-input::placeholder {
color: var(--subtle-color);
}
.oo-ui-textInputWidget.oo-ui-widget-enabled .oo-ui-inputWidget-input:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-textInputWidget.oo-ui-widget-enabled .oo-ui-inputWidget-input[readonly]:not(.oo-ui-pendingElement-pending) {
background-color: var(--ooui-disabled);
color: var(--ooui-disabled-text);
}
.oo-ui-textInputWidget.oo-ui-widget-enabled:hover .oo-ui-inputWidget-input {
border-color: var(--ooui-input-border--hover);
}
.oo-ui-textInputWidget.oo-ui-widget-enabled:hover .oo-ui-inputWidget-input:focus {
border-color: var(--ooui-accent);
}
@media screen and (min-width: 0) {
.oo-ui-textInputWidget.oo-ui-widget-enabled textarea.oo-ui-inputWidget-input:focus {
outline: 1px solid var(--ooui-accent);
}
}
.oo-ui-textInputWidget.oo-ui-widget-disabled .oo-ui-inputWidget-input {
background-color: var(--ooui-disabled);
color: var(--ooui-disabled-text);
text-shadow: none;
border-color: var(--ooui-disabled-border);
}
.oo-ui-toggleSwitchWidget {
background-color: var(--ooui-input);
border-color: var(--ooui-input-border);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled .oo-ui-toggleSwitchWidget-grip {
background-color: var(--ooui-input);
border-color: var(--ooui-input-border);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:hover {
background-color: var(--ooui-input);
border-color: var(--ooui-accent);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:hover .oo-ui-toggleSwitchWidget-grip {
background-color: var(--ooui-input);
border-color: var(--ooui-accent);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:active,
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:active:hover,
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:active:focus {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
box-shadow: inset 0 0 0 1px var(--ooui-progressive--hover);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:active .oo-ui-toggleSwitchWidget-grip,
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:active:hover .oo-ui-toggleSwitchWidget-grip,
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:active:focus .oo-ui-toggleSwitchWidget-grip {
background-color: var(--ooui-input);
border-color: var(--ooui-input);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:focus .oo-ui-toggleSwitchWidget-grip {
border-color: var(--ooui-accent);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled.oo-ui-toggleWidget-on {
background-color: var(--ooui-progressive);
border-color: var(--ooui-progressive);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled.oo-ui-toggleWidget-on .oo-ui-toggleSwitchWidget-grip {
background-color: var(--ooui-input);
border-color: var(--ooui-input);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled.oo-ui-toggleWidget-on:hover {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled.oo-ui-toggleWidget-on:active,
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled.oo-ui-toggleWidget-on:active:hover {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled.oo-ui-toggleWidget-on:focus {
border-color: var(--ooui-progressive);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled.oo-ui-toggleWidget-on:focus::before {
border-color: #fff;
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-disabled {
background-color: var(--ooui-disabled);
border-color: var(--ooui-disabled);
}
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled > .oo-ui-buttonElement-button {
color: var(--ooui-text);
}
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled > .oo-ui-buttonElement-button:hover {
color: var(--ooui-text);
}
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled > .oo-ui-buttonElement-button:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled.oo-ui-buttonElement-pressed > input.oo-ui-buttonElement-button,
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled > .oo-ui-buttonElement-button:active {
color: var(--ooui-text);
}
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button,
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button:hover {
color: var(--ooui-text);
}
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button:active,
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive.oo-ui-buttonElement-pressed > .oo-ui-buttonElement-button {
color: var(--ooui-text);
border-color: var(--ooui-text);
}
.oo-ui-buttonElement-frameless.oo-ui-widget-disabled > .oo-ui-buttonElement-button {
color: var(--ooui-disabled-text);
}
.oo-ui-buttonElement-framed.oo-ui-widget-disabled > .oo-ui-buttonElement-button {
background-color: var(--ooui-disabled);
border-color: var(--ooui-disabled-border);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled > .oo-ui-buttonElement-button {
background-color: var(--ooui-normal);
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled > .oo-ui-buttonElement-button:hover {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled > .oo-ui-buttonElement-button:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-buttonElement-active > .oo-ui-buttonElement-button {
background-color: var(--ooui-progressive--hover);
color: #fff;
border-color: var(--ooui-progressive--hover);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-buttonElement-active > .oo-ui-buttonElement-button:focus {
border-color: var(--ooui-progressive--hover);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled > .oo-ui-buttonElement-button:active,
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-buttonElement-pressed > .oo-ui-buttonElement-button {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive {
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button {
color: var(--ooui-text);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button:hover {
background-color: var(--ooui-normal--hover);
border-color: var(--ooui-progressive--hover);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-destructive > .oo-ui-buttonElement-button {
color: var(--ooui-text);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-destructive > .oo-ui-buttonElement-button:hover {
background-color: var(--ooui-normal--hover);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button {
background-color: var(--ooui-progressive);
border-color: var(--ooui-progressive);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button:hover {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent), inset 0 0 0 2px #fff;
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button:active,
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive.oo-ui-buttonElement-pressed > .oo-ui-buttonElement-button,
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive.oo-ui-buttonElement-active > .oo-ui-buttonElement-button,
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive.oo-ui-popupToolGroup-active > .oo-ui-buttonElement-button {
color: #fff;
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
}
.oo-ui-pendingElement-pending {
background-image: var(--ooui-pending-background-image);
background-size: 200%;
animation: oo-ui-pendingElement-stripes 6s linear infinite;
}
@keyframes oo-ui-pendingElement-stripes {
100% {
background-position: 100%;
}
}
.oo-ui-messageDialog-content > .oo-ui-window-foot {
outline-color: var(--ooui-interface-border);
}
.oo-ui-messageDialog-message {
color: var(--ooui-text);
}
.oo-ui-messageDialog-actions-horizontal .oo-ui-actionWidget {
border-right-color: var(--ooui-interface-border);
}
.oo-ui-messageDialog-actions-vertical .oo-ui-actionWidget {
border-bottom-color: var(--ooui-interface-border);
}
.oo-ui-processDialog-content .oo-ui-window-head,
.oo-ui-processDialog-content .oo-ui-window-foot {
outline-color: var(--ooui-interface-border);
}
.oo-ui-processDialog .oo-ui-actionWidget > .oo-ui-buttonElement-button {
border-top-color: transparent;
border-bottom-color: transparent;
}
.oo-ui-processDialog .oo-ui-actionWidget > .oo-ui-buttonElement-button:hover,
.oo-ui-processDialog .oo-ui-actionWidget > .oo-ui-buttonElement-button:active {
border-top-color: transparent;
border-bottom-color: transparent;
}
.oo-ui-processDialog .oo-ui-actionWidget:not( .oo-ui-flaggedElement-progressive ):not( .oo-ui-flaggedElement-destructive ) > .oo-ui-buttonElement-button:hover,
.oo-ui-processDialog .oo-ui-actionWidget:not( .oo-ui-flaggedElement-progressive ):not( .oo-ui-flaggedElement-destructive ) > .oo-ui-buttonElement-button:active {
border-right-color: var(--ooui-interface-border);
border-left-color: transparent;
}
.oo-ui-processDialog .oo-ui-actionWidget:not( .oo-ui-flaggedElement-progressive ):not( .oo-ui-flaggedElement-destructive ) > .oo-ui-buttonElement-button:focus {
border-color: var(--ooui-accent);
}
.oo-ui-processDialog-actions-safe .oo-ui-actionWidget > .oo-ui-buttonElement-button,
.oo-ui-processDialog-actions-other .oo-ui-actionWidget > .oo-ui-buttonElement-button {
border-right-color: var(--ooui-normal-border);
border-left-color: transparent;
}
.oo-ui-processDialog-actions-safe .oo-ui-widget-enabled.oo-ui-iconElement:not( .oo-ui-labelElement ) > .oo-ui-buttonElement-button:hover {
background-color: var(--ooui-normal--hover);
border-right-color: var(--ooui-interface-border);
}
.oo-ui-windowManager-modal > .oo-ui-dialog {
background-color: var(--ooui-window-background);
}
.oo-ui-windowManager-modal > .oo-ui-dialog > .oo-ui-window-frame {
background-color: var(--ooui-interface);
}
.oo-ui-windowManager-modal.oo-ui-windowManager-floating > .oo-ui-dialog > .oo-ui-window-frame {
border-color: var(--ooui-interface-border);
}
.oo-ui-window {
color: var(--ooui-text);
}
.oo-ui-toolbar-bar {
background-color: var(--ooui-interface);
color: var(--ooui-text);
}
.oo-ui-toolbar-position-top > .oo-ui-toolbar-bar {
border-bottom-color: var(--body-mid);
}
.oo-ui-toolbar-bar .oo-ui-bookletLayout > .oo-ui-menuLayout-menu {
border-right-color: var(--body-mid);
}
.oo-ui-tool.oo-ui-widget-enabled > .oo-ui-tool-link:hover {
background-color: var(--ooui-normal--hover);
}
.oo-ui-tool.oo-ui-widget-enabled > .oo-ui-tool-link:focus {
outline: 1px solid var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-tool.oo-ui-widget-enabled > .oo-ui-tool-link:active,
.oo-ui-tool.oo-ui-widget-enabled.oo-ui-tool-active > .oo-ui-tool-link,
.oo-ui-tool.oo-ui-widget-enabled.oo-ui-popupToolGroup-active > .oo-ui-tool-link {
background-color: var(--ooui-normal--hover);
color: var(--ooui-accent);
box-shadow: none;
}
.oo-ui-tool.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive > .oo-ui-tool-link {
background-color: var(--ooui-progressive);
}
.oo-ui-tool.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive > .oo-ui-tool-link:hover {
background-color: var(--ooui-progressive--hover);
}
.oo-ui-tool.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive > .oo-ui-tool-link:focus {
box-shadow: inset 0 0 0 1px var(--ooui-accent), inset 0 0 0 2px #fff;
}
.oo-ui-tool.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive > .oo-ui-tool-link:active,
.oo-ui-tool.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive.oo-ui-tool-active > .oo-ui-tool-link {
background-color: var(--ooui-progressive--hover);
}
.oo-ui-listToolGroup-tools .oo-ui-tool.oo-ui-widget-enabled {
background-color: var(--ooui-normal);
}
.oo-ui-listToolGroup-tools .oo-ui-tool.oo-ui-widget-enabled:hover {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
}
.oo-ui-listToolGroup-tools .oo-ui-tool-active.oo-ui-widget-enabled .oo-ui-tool-link .oo-ui-tool-title {
color: var(--ooui-progressive);
}
.oo-ui-menuToolGroup {
border-left-color: var(--body-mid);
border-right-color: var(--body-mid);
}
.oo-ui-popupToolGroup-tools {
background-color: var(--ooui-interface);
border-color: var(--body-mid);
}
.oo-ui-popupToolGroup.oo-ui-widget-enabled > .oo-ui-popupToolGroup-handle:hover {
background-color: var(--ooui-normal--hover);
}
.oo-ui-popupToolGroup.oo-ui-widget-enabled > .oo-ui-popupToolGroup-handle:focus {
outline: 1px solid var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-toolbar-actions .oo-ui-popupToolGroup.oo-ui-widget-enabled > .oo-ui-popupToolGroup-handle:hover {
border-right-color: var(--ooui-normal--hover);
}
.oo-ui-popupToolGroup-tools .oo-ui-tool.oo-ui-widget-enabled .oo-ui-tool-link:focus {
box-shadow: inset 0 0 0 2px var(--ooui-accent);
}
.oo-ui-popupToolGroup-tools .oo-ui-tool-active.oo-ui-widget-enabled .oo-ui-tool-link .oo-ui-tool-title {
color: var(--ooui-progressive);
}
.oo-ui-popupToolGroup.oo-ui-popupToolGroup-active > .oo-ui-popupToolGroup-handle {
background-color: var(--ooui-normal);
color: var(--ooui-accent);
}
.oo-ui-popupToolGroup.oo-ui-popupToolGroup-active > .oo-ui-popupToolGroup-handle:hover {
background-color: var(--ooui-normal--hover);
color: var(--ooui-accent);
}
.oo-ui-bookletLayout-outlinePanel > .oo-ui-outlineControlsWidget {
border-top-color: var(--ooui-interface-border);
}
.oo-ui-bookletLayout > .oo-ui-menuLayout-menu {
border-right-color: var(--ooui-interface-border);
}
.oo-ui-fieldLayout-disabled > .oo-ui-fieldLayout-body > .oo-ui-fieldLayout-header > .oo-ui-labelElement-label {
color: var(--ooui-disabled-text);
}
.oo-ui-panelLayout-framed {
border-color: var(--sidebar);
}
.oo-ui-icon-settings {
background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' width='20' height='20' viewBox='0 0 20 20'%3E%3Ctitle%3Esettings%3C/title%3E%3Cg transform='translate(10 10)'%3E%3Cpath id='a' d='M1.5-10h-3l-1 6.5h5m0 7h-5l1 6.5h3'/%3E%3Cuse xlink:href='%23a' transform='rotate(45)'/%3E%3Cuse xlink:href='%23a' transform='rotate(90)'/%3E%3Cuse xlink:href='%23a' transform='rotate(135)'/%3E%3C/g%3E%3Cpath d='M10 2.5a7.5 7.5 0 0 0 0 15 7.5 7.5 0 0 0 0-15v4a3.5 3.5 0 0 1 0 7 3.5 3.5 0 0 1 0-7'/%3E%3C/svg%3E");
}
.oo-ui-icon-clear {
background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 20 20'%3E%3Ctitle%3Eclear%3C/title%3E%3Cpath d='M10 0a10 10 0 1 0 10 10A10 10 0 0 0 10 0zm5.66 14.24-1.41 1.41L10 11.41l-4.24 4.25-1.42-1.42L8.59 10 4.34 5.76l1.42-1.42L10 8.59l4.24-4.24 1.41 1.41L11.41 10z'/%3E%3C/svg%3E");
}
.mw-widget-dateInputWidget-handle {
background-color: var(--ooui-input);
color: var(--ooui-text);
border-color: var(--ooui-input-border);
}
.mw-widget-dateInputWidget-calendar {
background-color: var(--ooui-interface);
}
.mw-widget-dateInputWidget.oo-ui-widget-enabled .mw-widget-dateInputWidget-handle:hover {
border-color: var(--ooui-input-border--hover);
}
.mw-widget-calendarWidget {
border-color: var(--ooui-interface-border);
}
.mw-widget-calendarWidget:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.mw-widget-calendarWidget-day,
.mw-widget-calendarWidget-day-heading {
color: var(--ooui-text);
}
.mw-widget-calendarWidget-day-additional {
color: var(--ooui-text);
opacity: 0.67;
}
.mw-widget-calendarWidget-day-today {
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.mw-widget-calendarWidget-item:hover {
background-color: var(--ooui-progressive);
}
.mw-widget-calendarWidget-item-selected {
background-color: var(--ooui-progressive--hover);
}
.mw-widgets-datetime-calendarWidget {
background-color: var(--ooui-interface);
border-color: var(--ooui-interface-border);
}
.mw-widgets-datetime-calendarWidget:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent), 0 2px 2px 0 rgba(0, 0, 0, 0.25);
}
.mw-widgets-datetime-calendarWidget-grid .mw-widgets-datetime-calendarWidget-cell.mw-widgets-datetime-calendarWidget-extra .oo-ui-buttonElement-button .oo-ui-labelElement-label {
color: var(--subtle-color);
}
.mw-widgets-datetime-calendarWidget-grid .mw-widgets-datetime-calendarWidget-cell.mw-widgets-datetime-calendarWidget-selected .oo-ui-buttonElement-button {
background-color: var(--ooui-progressive--hover);
}
.mw-widgets-datetime-dateTimeInputWidget-handle {
background-color: var(--ooui-input);
color: var(--ooui-text);
border-color: var(--ooui-input-border);
}
.mw-widgets-datetime-dateTimeInputWidget.oo-ui-widget-enabled.mw-widgets-datetime-dateTimeInputWidget-handle:hover {
border-color: var(--ooui-input-border--hover);
}
.mw-widgets-datetime-dateTimeInputWidget.oo-ui-widget-enabled:hover input,
.mw-widgets-datetime-dateTimeInputWidget.oo-ui-widget-enabled:hover textarea {
border-color: var(--ooui-input-border--hover);
}
.mw-widgets-datetime-dateTimeInputWidget.oo-ui-widget-enabled .mw-widgets-datetime-dateTimeInputWidget-editField:hover {
background-color: var(--ooui-normal);
}
.ve-activated .ve-init-mw-desktopArticleTarget-originalContent #catlinks:hover {
background: var(--ooui-normal--hover);
}
.ve-ui-overlay {
font-family: inherit;
}
.oo-ui-toolbar-position-top .ve-ui-toolbarDialog-position-above {
border-top-color: var(--body-mid);
}
.ve-ce-branchNode-blockSlug,
.ve-ce-branchNode-newSlug {
outline-color: var(--body-border);
background-color: var(--ooui-interface);
}
.ve-ui-specialCharacterPage h3 {
color: var(--byline-color);
}
.ve-ui-specialCharacterPage-character {
border-color: var(--body-mid);
}
.ve-ui-specialCharacterPage-character:hover {
border-color: var(--body-dark);
}
.ve-ce-linkAnnotation.ve-ce-annotation-active {
box-shadow: 0 0 0 1px var(--body-mid);
background: none;
}
.ve-ui-desktopContext .ve-ui-linkContextItem .ve-ui-linkContextItem-label {
border-color: var(--body-border);
}
.ve-ui-mwHelpPopupTool-version-label,
.ve-ui-mwHelpPopupTool-version-link,
.ve-ui-mwHelpPopupTool-version-date {
color: var(--byline-color);
}
.ve-ce-tableCellableNode {
border-color: var(--body-mid);
}
.ve-ce-mwReferencesListNode-muted {
color: var(--byline-color);
}
.ve-ui-mwTemplatePage-description,
.ve-ui-mwParameterPage-label,
.ve-ui-mwParameterPage-description-required,
.ve-ui-mwParameterPage-description-deprecated {
color: var(--byline-color);
}
.mw-widget-titleWidget-menu .mw-widget-titleOptionWidget-description {
color: var(--byline-color);
}
.ve-ui-mwGalleryDialog-menuLayout > .oo-ui-menuLayout-menu,
.ve-ui-mwGalleryDialog-innerMenuLayout > .oo-ui-menuLayout-menu,
.ve-ui-mwGalleryDialog .ve-ui-mwGalleryDialog-image-container,
.ve-ui-targetWidget {
border-color: var(--body-border);
}
.ve-ui-targetWidget:not(.oo-ui-pendingElement-pending) {
background-color: var(--body-main);
}
.ve-ui-mwSaveDialog {
color: var(--ooui-text);
}
.ve-ui-mwSaveDialog-options {
background-color: var(--ooui-interface);
border-color: var(--body-border);
}
.ve-ui-mwSaveDialog-summary {
background-color: var(--ooui-input);
}
.ve-ui-mwSaveDialog-editSummary-count {
border-color: var(--body-border);
}
.ve-ui-mwSaveDialog-license {
color: var(--byline-color);
}
.ve-ui-mwReferenceContextItem-muted {
color: var(--byline-color);
}
.ve-ui-mwNoticesPopupTool-items > div:not(:first-child),
.ve-ui-mwHelpPopupTool-item:not(:first-child) {
border-color: var(--body-border);
}
.ve-ui-mwTransclusionOutlineControlsWidget {
background-color: var(--ooui-interface);
border-top-color: var(--body-border);
}
.ve-ui-mwTransclusionOutlineTemplateWidget-sticky {
background-color: var(--ooui-interface);
}
.ve-ui-mwTransclusionOutlineTemplateWidget .ve-ui-mwTransclusionOutlineParameterWidget.oo-ui-optionWidget-highlighted {
color: var(--ooui-text);
}
.ve-ui-mwTransclusionOutlineTemplateWidget-no-template-parameters {
color: var(--subtle-color);
}
.ve-ui-mwParameterPage-undocumentedLabel {
color: var(--subtle-color);
}
.ve-ui-mwTwoPaneTransclusionDialogLayout > .oo-ui-menuLayout-menu {
border-right: var(--body-border);
}
.ve-ui-mwParameterPage-doc-required,
.ve-ui-mwParameterPage-doc-deprecated,
.ve-ui-mwParameterPage-inlineDescription .ve-ui-mwParameterPage-doc-example {
color: var(--byline-color);
}
.ve-ui-expandableContent-toggle {
background-color: var(--ooui-interface);
}
.ve-ui-expandableContent-fade {
background: linear-gradient(to right, rgba(255, 255, 255, 0) 0, var(--ooui-interface) 90%);
}
.ve-ui-commandHelpDialog-shortcut > kbd,
.ve-ui-commandHelpDialog-sequence > kbd {
background-color: var(--keypress-background);
color: var(--keypress-color);
border-color: var(--keypress-border);
box-shadow: none;
text-shadow: none;
}
.ve-init-mw-desktopArticleTarget-toolbarPlaceholder-floating .ve-init-mw-desktopArticleTarget-toolbarPlaceholder-bar {
background: var(--ooui-interface);
}
.ve-init-mw-desktopArticleTarget-toolbarPlaceholder-bar {
border-bottom-color: var(--body-mid);
}
figure[typeof~='mw:File/Thumb'],
figure[typeof~='mw:File/Frame'],
figure[typeof~='mw:Image/Thumb'],
figure[typeof~='mw:Video/Thumb'],
figure[typeof~='mw:Image/Frame'],
figure[typeof~='mw:Video/Frame'] {
border: none;
background-color: var(--thumb-bg);
}
figure[typeof~='mw:File/Thumb'] > a:first-child > *:first-child:not( .mw-broken-media ),
figure[typeof~='mw:File/Frame'] > a:first-child > *:first-child:not( .mw-broken-media ),
figure[typeof~='mw:Image/Thumb'] > a:first-child > *:first-child:not( .mw-broken-media ),
figure[typeof~='mw:Video/Thumb'] > a:first-child > *:first-child:not( .mw-broken-media ),
figure[typeof~='mw:Image/Frame'] > a:first-child > *:first-child:not( .mw-broken-media ),
figure[typeof~='mw:Video/Frame'] > a:first-child > *:first-child:not( .mw-broken-media ) {
border: none;
background: var(--thumb-bg);
}
figure[typeof~='mw:File/Thumb'] > figcaption,
figure[typeof~='mw:File/Frame'] > figcaption,
figure[typeof~='mw:Image/Thumb'] > figcaption,
figure[typeof~='mw:Video/Thumb'] > figcaption,
figure[typeof~='mw:Image/Frame'] > figcaption,
figure[typeof~='mw:Video/Frame'] > figcaption {
border: none;
background-color: var(--thumb-caption-bg);
padding: 4px 6px;
}
:root {
--keypress-background: #eee;
--keypress-border: #ccc;
--keypress-color: #333;
}
.hatnote,
.seealso {
font-style: italic;
}
.hatnote i,
.seealso i {
font-style: normal;
}
div.hatnote,
div.seealso {
margin: 0.5em 1.6em;
}
div.hatnote + div.hatnote,
div.hatnote + div.seealso,
div.seealso + div.hatnote,
div.seealso + div.seealso {
margin-top: -0.5em;
}
.keypress {
background: var(--keypress-background);
color: var(--keypress-color);
font-family: inherit;
border: 1px solid var(--keypress-border);
border-radius: 2px;
font-size: 0.9em;
margin: 0 0.1em;
padding: 0.1em 0.4em;
white-space: nowrap;
}
:root {
--documentation-background: #f9fafa;
--documentation-link-color: #e4eaee;
--documentation-headers-color: #fff;
--documentation-header-background: #949eaa;
--documentation-subheader-background: #808c9a;
--documentation-border: #e4eaee;
}
.documentation {
background: var(--documentation-background);
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
margin: 1em 0;
}
.documentation pre,
.documentation code {
background-color: var(--documentation-background);
border-color: var(--documentation-border);
}
.documentation h2,
.documentation hr {
border-color: var(--documentation-border);
}
.documentation-header {
color: var(--documentation-headers-color);
background: var(--documentation-header-background);
font-weight: bold;
padding: 1em 1.5em;
}
.documentation-title {
font-size: 1.25em;
}
.documentation-subheader {
color: var(--documentation-headers-color);
background: var(--documentation-subheader-background);
padding: 0.5em 1.5em;
}
.documentation-subheader a,
.documentation-subheader a:visited,
.documentation-subheader a:active {
color: var(--documentation-link-color);
}
.documentation-documentation,
.documentation-links {
font-size: 0.85em;
}
.documentation-content {
padding: 1em 1.5em;
}
.mw-templatedata-doc-params dl:not(:empty) {
column-count: 3;
border-top: 1px solid var(--body-border);
margin-bottom: 0.5em;
}
.mw-templatedata-doc-params dt::after {
content: ":";
}
.mw-templatedata-doc-params dd,
.mw-templatedata-doc-params dt {
margin: 0.1em 2em;
min-width: auto;
}
.mw-templatedata-doc-muted {
color: var(--subtle-color);
font-style: italic;
}
:root {
--infobox-text-color: var(--text-color);
}
ol.references,
.reflist {
font-size: 90%;
}
.reflist {
list-style-type: decimal;
}
.reflist .references {
font-size: 100%;
list-style-type: inherit;
}
.reflist-lower-alpha {
list-style-type: lower-alpha;
}
ol.references li:target,
sup.reference:target {
background-color: var(--body-light);
}
.hideQuotes .refhide {
display: none;
}
:root {
--messagebox-obsolete-background: #cfcfcf;
--messagebox-obsolete-border: #464646;
--messagebox-obsolete-color: var(--text-color);
--messagebox-obsolete-link-color: #6c6c6c;
--messagebox-info-background: #ebebeb;
--messagebox-info-border: #898989;
--messagebox-info-color: var(--text-color);
--messagebox-info-link-color: #6c6c6c;
--messagebox-action-background: #c7e8fa;
--messagebox-action-border: #0b5884;
--messagebox-action-color: var(--text-color);
--messagebox-action-link-color: #03436b;
--messagebox-warn-background: #dfc0ba;
--messagebox-warn-border: #861c10;
--messagebox-warn-color: var(--text-color);
--messagebox-warn-link-color: #8e221a;
--messagebox-safe-background: #d8f0d3;
--messagebox-safe-border: #1b8408;
--messagebox-safe-color: var(--text-color);
--messagebox-safe-link-color: #1b8408;
--messagebox-disambig-background: #ebebeb;
--messagebox-disambig-border: #898989;
--messagebox-disambig-color: var(--text-color);
--messagebox-disambig-link-color: #6c6c6c;
--messagebox-discord-background: #5865f2;
--messagebox-discord-border: #4c57d0;
--messagebox-discord-link-color: #d2e5fc;
}
.mw-message-box,
.mw-message-box-error,
.mw-message-box-warning,
.mw-message-box-success,
.usermessage {
color: var(--text-color);
}
.messagebox {
width: 65%;
margin: 0.5em auto;
border-left: 15px solid;
border-color: var(--body-dark);
background-color: var(--body-light);
box-sizing: border-box;
}
.messagebox.obsolete {
background-color: var(--messagebox-obsolete-background);
border-color: var(--messagebox-obsolete-border);
color: var(--messagebox-obsolete-color);
}
.messagebox.obsolete a,
.messagebox.obsolete a:visited,
.messagebox.obsolete a:active {
color: var(--messagebox-obsolete-link-color);
}
.messagebox.info {
background-color: var(--messagebox-info-background);
border-color: var(--messagebox-info-border);
color: var(--messagebox-info-color);
}
.messagebox.info a,
.messagebox.info a:visited,
.messagebox.info a:active {
color: var(--messagebox-info-link-color);
}
.messagebox.action {
background-color: var(--messagebox-action-background);
border-color: var(--messagebox-action-border);
color: var(--messagebox-action-color);
}
.messagebox.action a,
.messagebox.action a:visited,
.messagebox.action a:active {
color: var(--messagebox-action-link-color);
}
.messagebox.warn {
background-color: var(--messagebox-warn-background);
border-color: var(--messagebox-warn-border);
color: var(--messagebox-warn-color);
}
.messagebox.warn a,
.messagebox.warn a:visited,
.messagebox.warn a:active {
color: var(--messagebox-warn-link-color);
}
.messagebox.safe {
background-color: var(--messagebox-safe-background);
border-color: var(--messagebox-safe-border);
color: var(--messagebox-safe-color);
}
.messagebox.safe a,
.messagebox.safe a:visited,
.messagebox.safe a:active {
color: var(--messagebox-safe-link-color);
}
.messagebox.disambig {
background-color: var(--messagebox-disambig-background);
border-color: var(--messagebox-disambig-border);
color: var(--messagebox-disambig-color);
}
.messagebox.disambig a,
.messagebox.disambig a:visited,
.messagebox.disambig a:active {
color: var(--messagebox-disambig-link-color);
}
.messagebox.discord {
background-color: var(--messagebox-discord-background);
border-color: var(--messagebox-discord-border);
color: #fff;
}
.messagebox.discord a,
.messagebox.discord a:visited,
.messagebox.discord a:active {
color: var(--messagebox-discord-link-color);
}
.messagebox.discord a.external,
.messagebox.discord a:visited.external,
.messagebox.discord a:active.external {
font-style: italic;
}
.messagebox.stub {
width: 40%;
}
.messagebox.hasdialogue {
padding: 0 10px;
width: auto;
}
:root {
--byline-arrow-filter: invert(29%) sepia(0%) saturate(376%) hue-rotate(172deg) brightness(87%) contrast(80%);
--tile-border-color: #cabe9b;
--tile-background-color: #f9f3eb;
--tile-link-button-color: #f5e9db;
--tile-link-button-highlight-color: #dfccb0;
--tile-dark-color: #fff;
--tile-dark-bg: #5d6773;
--tile-dark-link-color: #ccc;
--tile-dark-byline-color: rgba(255, 255, 255, 0.7);
--tile-dark-header-color: #fff;
}
.tile {
background: var(--tile-background-color);
border: 1px solid var(--tile-border-color);
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
padding: 1.5em 2em 1em;
max-width: 40em;
}
.tile h2 {
font-size: 1.4em;
font-weight: bold;
border: none;
margin: 0 0 0.4em;
}
.tile .byline + h2 {
margin-top: -0.5em;
}
.tile.dark {
color: var(--tile-dark-color);
background: var(--tile-dark-bg);
border: none;
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.3);
}
.tile.dark h2 {
color: var(--tile-dark-header-color);
}
.tile.dark a {
color: var(--tile-dark-link-color);
}
.tile.dark .byline {
color: var(--tile-dark-byline-color);
}
.byline {
font-size: 0.9em;
color: var(--byline-color);
}
.byline a {
color: var(--byline-color);
}
.tile-row {
display: flex;
flex-flow: row wrap;
margin-bottom: 1em;
}
.tile-halves {
display: flex;
flex-flow: row wrap;
border: 1px solid var(--tile-border-color);
background: var(--tile-background-color);
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
}
.tile-halves h2 {
font-size: 1.4em;
font-weight: bold;
border: none;
margin: 0 0 0.4em;
}
.tile-halves .byline + h2 {
margin-top: -0.5em;
}
.tile-top {
width: 100%;
padding: 1.3rem 1.5rem 0.6rem;
}
.tile-top.tile-image {
display: flex;
align-items: center;
background-color: var(--byline-color);
overflow: hidden;
padding: 0;
height: 13vw;
max-height: 12em;
transition: 0.4s ease-out;
}
.tile-halves:hover .tile-top.tile-image img {
transform: scale(1.1);
transition: 0.5s ease-out;
}
.tile-top.tile-image a {
width: 100%;
}
.tile-top.tile-image img {
width: 100%;
object-fit: cover;
max-height: 200px;
transition: 0.4s ease-out;
}
.tile-bottom {
background: var(--tile-background-color);
border-top: 1px solid var(--tile-border-color);
width: 100%;
padding: 1rem 1.5rem 0.6rem;
}
.tile-bottom.link-button {
align-self: flex-end;
padding: 0;
}
.tile-bottom.link-button a {
display: block;
text-align: center;
padding: 0.75em 1.5em 0.8em;
text-decoration: none;
}
.tile-bottom.read-more {
background: var(--tile-link-button-color);
transition: 0.3s ease-out;
}
.tile-bottom.read-more a {
color: var(--byline-color);
font-weight: bold;
text-align: right;
}
.tile-bottom.read-more:hover {
background: var(--tile-link-button-highlight-color);
}
.tile-bottom.read-more:hover .arrow {
transform: translateX(50%);
}
.tile-bottom.read-more .arrow {
filter: var(--byline-arrow-filter);
margin-left: 0.4em;
transition: 0.3s ease-out;
}
body.page-Main_Page.action-view .catlinks,
body.page-Main_Page.action-view #contentSub,
body.page-Main_Page.action-view #firstHeading,
body.page-Main_Page.action-view #siteNotice {
display: none;
}
body.page-Main_Page .mw-parser-output {
max-width: 75em;
margin: 0 auto;
}
body.page-Main_Page.action-view .catlinks,
body.page-Main_Page.action-view #contentSub,
body.page-Main_Page.action-view #siteNotice {
display: none;
}
.mainpage-header {
display: flex;
margin: 2.6em 1.75em 1.5em;
}
.mainpage-header .header-intro {
flex: 2;
}
.mainpage-header .header-intro h1 {
font-size: 2.5em;
font-weight: bold;
border: none;
margin: 0 0 0.15em;
}
.mainpage-header .header-intro p {
font-size: 1.1em;
line-height: 1.7em;
}
.mainpage-header .header-stats {
flex: 1;
display: flex;
justify-content: center;
align-items: center;
margin-top: -1em;
}
.mainpage-body {
display: grid;
grid-template-areas: "event event event" "update update update" "content content content" "left left right";
gap: 0.9rem;
grid-template-columns: repeat(3, 1fr);
}
.mainpage-body h2 a {
color: var(--text-color);
}
.mainpage-body .tile {
padding-left: 1.75em;
padding-right: 1.75em;
max-width: 100%;
}
.mainpage-body .tile-row {
width: 100%;
margin-bottom: 0;
}
.mainpage-body .tile-row {
display: grid;
gap: 0.9rem;
}
.mainpage-left {
grid-area: left;
flex: 2;
display: flex;
flex-flow: column wrap;
}
.mainpage-left > * {
margin: 0 0 0.9rem;
}
.mainpage-right {
grid-area: right;
flex: 1;
display: flex;
flex-flow: column wrap;
}
.mainpage-right > * {
margin: 0 0 0.9rem;
}
.arrow {
background: url('filepath://White-chevron.svg') no-repeat;
display: inline-block;
height: 0.7rem;
width: 0.45rem;
vertical-align: middle;
}
.arrow.dark {
filter: invert(80%);
}
.mainpage-contents {
grid-area: content;
grid-template-columns: repeat(6, 1fr);
}
.mainpage-contents .tile-halves {
flex: 1;
}
.mainpage-contents .tile-top {
height: 4.5rem;
position: relative;
}
.mainpage-contents h2 {
margin: 0;
padding: 0;
}
.mainpage-contents .tile-bottom.link-button a {
padding: 0.75em 0.2em;
}
.popular-pages ul {
display: grid;
grid-template-columns: repeat(3, 1fr);
grid-gap: 0.6em;
margin: 1em 0 0.7em 0;
}
.mp-popular-page-light {
display: flex;
align-items: center;
background-color: var(--button-background);
transition: 100ms;
}
.mp-popular-page-light a {
flex: 1;
display: block;
color: #fff;
font-weight: bold;
text-align: center;
text-decoration: none;
padding: 0.7em 1em;
}
.mp-popular-page-light:hover {
filter: brightness(115%);
transition: 100ms;
}
.mainpage-discord {
border: none;
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.3);
}
.mainpage-discord .tile-top {
display: flex;
align-items: center;
background: #5865f2;
padding: 1em 1.75em;
}
.mainpage-discord .tile-top a {
flex: 1;
position: relative;
text-decoration: none;
}
.mainpage-discord .tile-top a:hover .arrow {
transform: translateX(50%);
}
.mainpage-discord .tile-bottom {
background: #525ee0;
border: none;
padding: 1em 1.75em;
}
.mainpage-discord .tile-bottom p {
color: #fff;
font-weight: bold;
font-size: 0.9em;
text-align: center;
text-transform: uppercase;
letter-spacing: 0.03em;
margin: 0;
}
.mainpage-discord .partner-icon {
margin-right: 0.75em;
}
.mainpage-discord .server-name {
color: #fff;
font-weight: bold;
font-size: 1.25em;
margin: 0.5em 0 -0.15em;
}
.mainpage-discord .server-tagline {
color: rgba(255, 255, 255, 0.9);
margin-bottom: 0.5em;
}
.mainpage-discord .arrow {
position: absolute;
top: calc(50% - .5em);
right: 0;
height: 1em;
width: 0.7em;
background-size: 0.7em 1em;
transition: 0.3s ease-out;
}
.mainpage-editing {
border: none;
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.3);
}
.mainpage-editing .tile-top {
background: #438ab5;
}
.mainpage-editing .tile-bottom {
background: #3980ab;
border: none;
padding: 0.8rem 1.5rem 0.4rem;
}
.mainpage-editing h2,
.mainpage-editing a {
color: #fff;
}
.mainpage-editing p {
color: rgba(255, 255, 255, 0.9);
}
.mainpage-editing ul {
list-style-image: url('filepath://Transparent-chevron.svg');
}
@media only screen and (max-width: 1200px) {
.mainpage-contents {
grid-template-columns: repeat(3, 1fr);
}
}
@media only screen and (max-width: 1000px) {
.mainpage-body {
grid-template-areas: "event event event" "update update update" "content content content" "left left left" "right right right";
}
.mainpage-recent-updates {
grid-template-columns: repeat(2, 1fr);
}
.mainpage-recent-updates .tile-halves:last-child {
display: none;
}
.mainpage-recent-updates .tile-halves:hover .tile-top img {
transform: scale(1.04);
}
.mainpage-recent-updates .tile-top {
height: 18vw;
min-height: 9em;
}
.mainpage-header .header-stats {
display: none;
}
.mainpage-left > *:last-child,
.mainpage-right > *:last-child {
margin-bottom: 0;
}
.popular-pages ul {
grid-template-columns: repeat(2, 1fr);
}
}
@media only screen and (max-width: 720px) {
.mainpage-recent-updates {
grid-template-columns: none;
}
.mainpage-recent-updates .tile-halves:last-child {
display: flex;
}
.mainpage-contents {
grid-template-columns: repeat(2, 1fr);
}
}
.mw-prefs-buttons {
background-color: var(--body-main);
border-top-color: var(--body-border);
box-shadow: none;
}
.mw-prefs-tabs-wrapper.oo-ui-panelLayout-framed,
.mw-prefs-tabs > .oo-ui-menuLayout-content > .oo-ui-indexLayout-stackLayout > .oo-ui-tabPanelLayout {
border-color: var(--body-border);
}
.mw-htmlform-ooui .mw-htmlform-matrix tbody tr:nth-child(even) td {
background-color: var(--body-light);
}
.mw-htmlform-ooui .mw-htmlform-matrix tbody tr:hover td {
background-color: var(--body-mid);
}
:root {
--rc-positive-color: #407813;
--rc-negative-color: #b41e0f;
}
.mw-plusminus-pos {
color: var(--rc-positive-color);
}
.mw-plusminus-neg {
color: var(--rc-negative-color);
}
.client-js .mw-recentchanges-toplinks:not(.mw-recentchanges-toplinks-collapsed) {
border-color: var(--body-border);
background-color: var(--body-light);
border-radius: 2px;
}
.mw-rcfilters-ui-filterTagMultiselectWidget-wrapper-content-title {
color: var(--text-color);
}
.mw-rcfilters-ui-filterTagMultiselectWidget-emptyFilters {
color: var(--byline-color);
}
.mw-rcfilters-ui-filterTagMultiselectWidget.oo-ui-widget-enabled .oo-ui-tagMultiselectWidget-handle {
background-color: var(--ooui-interface);
border-color: var(--ooui-interface-border);
}
.mw-rcfilters-ui-filterTagMultiselectWidget-views-select-widget.oo-ui-widget {
border-color: var(--ooui-interface-border);
}
.mw-rcfilters-collapsed .mw-rcfilters-ui-filterTagMultiselectWidget {
border-bottom-color: var(--ooui-interface-border);
}
.mw-rcfilters-ui-menuSelectWidget-footer {
background-color: var(--ooui-interface);
border-color: var(--ooui-interface-border);
}
.mw-rcfilters-ui-viewSwitchWidget label.oo-ui-labelWidget {
color: var(--byline-color);
}
.mw-rcfilters-ui-tagItemWidget-popup-content {
color: var(--ooui-text);
}
.mw-changeslist-legend,
.mw-rcfilters-ui-changesListWrapperWidget .mw-changeslist-legend {
background-color: var(--body-light);
border-color: var(--body-dark);
}
.mw-rcfilters-ui-changesListWrapperWidget-previousChangesIndicator {
border-color: var(--sidebar);
}
.client-js .mw-changeslist ul,
.client-js .mw-changeslist table.mw-enhanced-rc {
margin-left: 0;
}
.mw-rcfilters-ui-watchlistTopSectionWidget-separator {
border-color: var(--sidebar);
}
.mw-rcfilters-ui-itemMenuOptionWidget-header {
border-bottom-color: var(--ooui-interface);
background-color: var(--ooui-interface-border);
}
.mw-rcfilters-ui-itemMenuOptionWidget:not(:last-child):not(.mw-rcfilters-ui-itemMenuOptionWidget-identifier-talk) {
border-bottom-color: var(--ooui-normal-border);
}
.mw-rcfilters-ui-itemMenuOptionWidget-label-title,
.mw-rcfilters-ui-itemMenuOptionWidget-label-desc {
color: var(--text-color);
}
.mw-rcfilters-ui-filterMenuOptionWidget.oo-ui-flaggedElement-muted:not(.oo-ui-optionWidget-selected) {
background-color: var(--body-main);
}
.mw-rcfilters-ui-filterMenuOptionWidget.oo-ui-flaggedElement-muted .mw-rcfilters-ui-itemMenuOptionWidget-label-title,
.mw-rcfilters-ui-filterMenuOptionWidget.oo-ui-flaggedElement-muted .mw-rcfilters-ui-itemMenuOptionWidget-label-desc {
color: var(--subtle-color);
}
.mw-rcfilters-ui-filterMenuSectionOptionWidget {
background-color: var(--body-mid);
}
.mw-rcfilters-ui-filterMenuSectionOptionWidget-header-title.oo-ui-labelElement-label {
color: var(--ooui-text);
}
.mw-rcfilters-ui-filterMenuHeaderWidget-title {
color: var(--ooui-text);
}
.mw-rcfilters-ui-filterMenuHeaderWidget-header {
border-bottom-color: var(--ooui-interface-border);
background-color: var(--ooui-interface);
}
.mw-rcfilters-ui-itemMenuOptionWidget-view-namespaces {
border-top-color: var(--ooui-interface-border);
}
.mw-rcfilters-ui-datePopupWidget {
border-color: var(--ooui-interface-border);
}
.mw-rcfilters-ui-datePopupWidget .mw-rcfilters-ui-valuePickerWidget-title {
color: var(--byline-color);
}
.mw-rcfilters-ui-savedLinksListItemWidget-label {
color: var(--ooui-accent);
}
.client-js .mw-changeslist.mw-rcfilters-ui-changesListWrapperWidget-highlighted ul,
.client-js .mw-changeslist.mw-rcfilters-ui-changesListWrapperWidget-highlighted table.mw-enhanced-rc {
margin-left: 1.5em;
}
.page-Special_CreateAccount .mw-ui-container,
.page-Special_UserLogin .mw-ui-container {
max-width: 64rem;
margin: 0 auto;
}
.mw-number-text {
color: var(--byline-color);
}
.mw-body-content .mw-number-text h3 {
color: var(--text-color);
}
#mw-indicator-mw-helplink a {
background: none;
padding: 0;
display: flex;
align-items: center;
}
#mw-indicator-mw-helplink a::before {
content: '';
margin-right: 5px;
-webkit-mask: url("/resources/src/mediawiki.helplink/images/helpNotice.svg?46d34") no-repeat 50% 50% / contain;
mask: url("/resources/src/mediawiki.helplink/images/helpNotice.svg?46d34") no-repeat 50% 50% / contain;
background: var(--text-color);
height: 20px;
width: 20px;
}
.results-info {
color: inherit;
}
.mw-search-profile-tabs {
background-color: var(--body-mid);
border-color: transparent;
}
.search-types .current a {
color: inherit;
}
#mw-searchoptions {
background-color: var(--body-mid);
border-color: transparent;
}
#mw-searchoptions .divider {
border-color: var(--body-border);
}
#mw-searchoptions h4 {
font-family: inherit;
}
#mw-searchoptions .oo-ui-labelElement:nth-of-type(odd) {
font-weight: bold;
}
.searchresult {
line-height: 1.5;
}
.searchalttitle,
#mw-search-interwiki li {
font-size: 90%;
}
.mw-search-result-data {
color: var(--byline-color);
}
.page-Special_ListFiles a.image img {
width: inherit;
height: inherit;
}
.page-Special_ListFiles .TablePager_col_thumb {
text-align: center;
}
#editcount table[border="1"] {
background-color: var(--body-main) !important;
border-color: var(--wikitable-border) !important;
margin-top: 0.5em;
}
#editcount table[border="1"] th,
#editcount table[border="1"] td {
padding: 0.2em 0.4em;
}
#editcount table[border="1"] th {
background-color: var(--wikitable-header-bg);
border: 1px solid var(--wikitable-border);
}
#editcount table[border="1"] td {
border: 1px solid var(--wikitable-border);
}
#editcount table[border="1"] tr:nth-child(odd) {
background-color: var(--body-light);
}
.mw-echo-ui-notificationBadgeButtonPopupWidget-popup > .oo-ui-popupWidget-popup .mw-echo-ui-placeholderItemWidget {
background-color: inherit;
}
table.mw-interwikitable.body td.mw-interwikitable-local-yes {
background-color: var(--table-yes-background);
color: var(--table-yes-color);
}
.mw-protectedpages-unknown {
color: var(--byline-color);
}
.watchlistredir,
.allpagesredirect {
font-style: italic;
}
.allpagesredirect:after {
color: var(--byline-color);
content: " (redirect)";
}
.mw-apisandbox-toolbar {
background: var(--body-main);
}
.oo-ui-menuOptionWidget .mw-apisandbox-flag {
color: var(--byline-color);
}
tr.mw-abusefilter-list-disabled,
tr.mw-abusefilter-list-disabled td {
color: var(--byline-color);
}
table.mw-abuselog-details {
background: var(--wikitable-bg);
border-color: var(--wikitable-border);
}
table.mw-abuselog-details th {
background: var(--wikitable-header-bg);
}
table.mw-abuselog-details th,
table.mw-abuselog-details td {
border-color: var(--wikitable-border);
}
.mw-abusefilter-log-hidden-entry {
color: var(--subtle-color);
}
body td.mw-abusefilter-history-changed {
background: var(--table-no-background);
}
div.mw-abusefilter-editor,
#mw-abusefilter-warn-preview,
#mw-abusefilter-disallow-preview {
border-color: var(--ooui-input-border);
}
.mw-destfile-warning {
border-color: var(--warningbox-border);
color: var(--text-color);
background-color: var(--warningbox-bg);
}
span.fileinput-button {
background-color: var(--ooui-normal);
border-color: var(--ooui-normal-border);
color: var(--ooui-text);
}
ul.fileupload-results li.ful-success {
background-color: var(--successbox-bg);
}
ul.fileupload-results li.ful-success a {
color: var(--link-color);
}
ul.fileupload-results li.ful-error {
background-color: var(--errorbox-bg);
}
#t-print,
#t-permalink {
display: none;
}
#filetoc {
border-radius: 2px;
background: var(--body-mid);
border-color: transparent;
margin: 0.5em auto;
text-align: center;
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
}
li.gallerybox div.thumb {
border: none;
background-color: var(--thumb-bg);
}
.smwfact {
display: none;
}
.list-header {
background-color: var(--body-mid);
color: inherit;
}
.editOptions {
color: var(--text-color);
background-color: var(--sourceeditor-background-secondary);
border-color: var(--sourceeditor-border);
}
.mw-json th,
.mw-json td {
border-color: var(--wikitable-border);
}
.mw-json td {
background: var(--wikitable-bg);
}
.mw-json th {
background: var(--wikitable-header-bg);
}
7c56ec31801c85f9465e48de99b5de45f2ff4648
650
637
2024-03-22T20:23:40Z
Habblet
11
Updating CSS from [[MediaWiki:Common.less]]
css
text/css
/* <pre> */
:root {
--body-main: #feffff;
--body-light: #f2f2f2;
--body-mid: #d0bd97;
--body-dark: #e3e3e3;
--body-border: #000;
--body-background-color: #173a4d;
--button-background: #605443;
--button-color: #fff;
--button-border: #3c352a;
--button-dark: #18140c;
--button-light: #3a301d;
--sidebar: #cfc08d;
--background-text-color: #e2dbc8;
--background-link-color: #e2bd8a;
--search-box: #efeee6;
--link-color: #936039;
--redlink-color: #ba0000;
--text-color: #000;
--byline-color: #4c4c4c;
--subtle-color: #777;
--admin-blue: #332e75;
--bearcat-green: #13592e;
--awb-purple: #933b96;
--rsw-blue: #438ab6;
--osrsw-brown: #605443;
--thumb-bg: var(--body-light);
--thumb-caption-bg: var(--body-mid);
--sourceeditor-input-background: #fff;
--sourceeditor-background: var(--body-light);
--sourceeditor-background-secondary: var(--body-light);
--sourceeditor-border: var(--body-mid);
--codemirror-gutter-background: var(--body-mid);
}
@font-face {
font-family: 'Lora';
font-weight: 400 700;
font-style: normal;
font-display: swap;
src: url('filepath://Lora.woff2') format('woff2');
}
@font-face {
font-family: 'Lora';
font-weight: 400 700;
font-style: italic;
font-display: swap;
src: url('filepath://Lora-Italic.woff2') format('woff2');
}
:root {
--base-text-color: #36414f;
--base-heading-color: #444e5a;
--base-heading-border: #e4eaee;
--mw-code-background-color: #ddd4bb;
--body-background-image: url('filepath://Wiki_background.jpg');
}
#mw-page-base {
background: none;
}
.mw-body {
background-color: var(--body-main);
color: var(--text-color);
border-color: transparent;
box-shadow: 0 0 7px rgba(0, 0, 0, 0.15);
margin-top: 0;
}
h1,
h2,
h3,
h4,
h5,
h6 {
color: var(--text-color);
}
h1,
h2 {
border-color: var(--sidebar);
}
.mw-body h1,
.mw-body-content h1,
.mw-body-content h2,
.mw-body-content h3,
.mw-body-content h4,
.mw-body-content h5,
.mw-body-content h6 {
font-family: 'Lora', 'Palatino', 'Georgia', serif;
}
.mw-parser-output h2:first-of-type {
clear: left;
}
.mw-footer {
color: var(--background-text-color);
}
.mw-footer li {
color: var(--background-text-color);
}
.mw-footer a,
.mw-footer a:active,
.mw-footer a:visited {
color: var(--background-link-color);
}
::placeholder {
color: var(--subtle-color);
}
a {
color: var(--link-color);
}
a:visited,
a:active {
color: var(--link-color);
}
a.new {
color: var(--redlink-color);
}
a.new:visited {
color: var(--redlink-color);
}
.mw-parser-output a.extiw,
.mw-parser-output a.external {
color: var(--link-color);
}
.mw-parser-output a.extiw:visited,
.mw-parser-output a.external:visited,
.mw-parser-output a.extiw:active,
.mw-parser-output a.external:active {
color: var(--link-color);
}
.jsPurgeLink a.external {
color: var(--link-color);
}
:root {
--errorbox-bg: #feecea;
--errorbox-border: #ee4231;
--warningbox-bg: #fef9de;
--warningbox-border: #f9d000;
--successbox-bg: #ecf8e3;
--successbox-border: #6bc71f;
}
.mw-message-box-error,
.errorbox,
.mw-message-box-warning,
.warningbox,
.mw-message-box-success,
.successbox,
.usermessage {
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
}
.mw-message-box-error,
.errorbox {
background-color: var(--errorbox-bg);
border-color: var(--errorbox-border);
}
.mw-message-box-warning,
.warningbox,
.usermessage {
background-color: var(--warningbox-bg);
border-color: var(--warningbox-border);
}
.mw-message-box-success,
.successbox {
background-color: var(--successbox-bg);
border-color: var(--successbox-border);
}
.catlinks {
background: var(--body-light);
border: 1px solid var(--body-dark);
padding: 8px 15px;
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
}
.catlinks li {
border-color: var(--body-mid);
}
.filehistory a img,
#file img {
background: url("data:image/svg+xml,%3C%3Fxml version='1.0' encoding='UTF-8'%3F%3E%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16'%3E%3Cpath d='M0 0h8v16h8V8H0z' opacity='.13'/%3E%3C/svg%3E") repeat;
}
#file img:hover {
background: none;
}
.mw-highlight {
background: none;
}
.mw-highlight .linenos {
background-color: var(--mw-code-background-color);
color: var(--byline-color);
}
.mw-highlight a:hover .linenos,
.mw-highlight .hll a .linenos {
color: var(--text-color);
}
.mw-content-ltr.mw-highlight-lines pre,
.mw-content-ltr.content .mw-highlight-lines pre {
box-shadow: inset 2.75em 0 0 var(--mw-code-background-color);
}
#pagehistory ul {
list-style: none;
margin: 0;
}
#pagehistory li {
border: 1px solid transparent;
padding: 1px 10px;
margin: 2px 0;
}
#pagehistory li.selected {
background-color: var(--body-light);
color: inherit;
border: 1px dashed var(--body-border);
outline: none;
}
#mw-history-compare > div:first-of-type {
position: -webkit-sticky;
position: sticky;
top: 0;
background-color: var(--body-main);
border-bottom: 1px solid var(--body-dark);
padding: 0.25em 0;
}
.wgl-stickyheader #mw-history-compare > div:first-of-type {
top: 2.5rem;
}
.autocomment,
.autocomment a,
.autocomment a:visited {
color: var(--link-color);
}
li span.deleted,
span.history-deleted {
color: var(--byline-color);
}
.mw-usertoollinks-contribs-no-edits,
.mw-usertoollinks-contribs-no-edits:visited {
color: var(--redlink-color);
}
.CategoryTreeToggle {
color: var(--link-color);
}
body.wgl-stickyheader.action-view .mw-headline:target::before {
display: block;
content: '';
margin-top: -3rem;
height: 3rem;
visibility: hidden;
pointer-events: none;
}
.mw-mmv-post-image {
color: var(--text-color);
background-color: var(--body-main);
}
.mw-mmv-image-metadata {
border-top-color: var(--body-mid);
background-color: var(--body-light);
}
.mw-mmv-dialog,
.mw-mmv-dialog .mw-mmv-dialog-down-arrow,
.mw-mmv-options-dialog .mw-mmv-dialog-down-arrow {
background-color: var(--body-light);
box-shadow: none;
}
.mw-mmv-options-enable-alert {
background-color: var(--body-light);
color: var(--text-color);
}
.mw-mmv-options-dialog-header,
.mw-mmv-options-text-header,
.mw-mmv-options-text-body,
.mw-mmv-options-enable-alert,
.mw-mmv-options-dialog .mw-mmv-disable-confirmation .mw-mmv-options-dialog-header,
.mw-mmv-options-dialog .mw-mmv-disable-confirmation .mw-mmv-options-text-header {
color: var(--text-color);
}
.mw-revslider-container {
border-color: var(--sidebar);
}
.mw-revslider-slider-wrapper {
border-top-color: var(--sidebar);
}
.mw-ui-button {
background-color: var(--ooui-normal);
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
}
.mw-ui-button:not(:disabled):hover,
.mw-ui-button:not(:disabled):active {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
}
.mw-ui-button:not(:disabled):focus {
color: var(--ooui-text);
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent), inset 0 0 0 2px #fff;
}
.mw-ui-button:not(:disabled):visited {
color: var(--ooui-text);
}
.mw-ui-button.mw-ui-progressive:not(:disabled) {
background-color: var(--ooui-progressive);
color: #fff;
border-color: var(--ooui-progressive);
}
.mw-ui-button.mw-ui-progressive:not(:disabled):hover {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
}
.mw-ui-button.mw-ui-progressive:not(:disabled):focus {
box-shadow: inset 0 0 0 1px var(--ooui-accent), inset 0 0 0 2px #fff;
}
.mw-ui-button.mw-ui-progressive:not(:disabled):active,
.mw-ui-button.mw-ui-progressive:not(:disabled).is-on {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
box-shadow: none;
}
.mw-ui-button.mw-ui-destructive:not( :disabled ) {
color: #fff;
}
.mw-ui-button.mw-ui-quiet,
.mw-ui-button.mw-ui-quiet.mw-ui-progressive,
.mw-ui-button.mw-ui-quiet.mw-ui-destructive {
color: var(--text-color);
}
input[type='checkbox']:hover + .mw-ui-button.mw-ui-quiet,
input[type='checkbox']:hover + .mw-ui-button.mw-ui-quiet.mw-ui-progressive,
input[type='checkbox']:hover + .mw-ui-button.mw-ui-quiet.mw-ui-destructive,
.mw-ui-button.mw-ui-quiet:hover,
.mw-ui-button.mw-ui-quiet.mw-ui-progressive:hover,
.mw-ui-button.mw-ui-quiet.mw-ui-destructive:hover {
background-color: rgba(0, 24, 73, 0.02745098);
color: var(--text-color);
border-color: transparent;
}
input[type='checkbox']:focus + .mw-ui-button.mw-ui-quiet,
input[type='checkbox']:focus + .mw-ui-button.mw-ui-quiet.mw-ui-progressive,
input[type='checkbox']:focus + .mw-ui-button.mw-ui-quiet.mw-ui-destructive,
.mw-ui-button.mw-ui-quiet:focus,
.mw-ui-button.mw-ui-quiet.mw-ui-progressive:focus,
.mw-ui-button.mw-ui-quiet.mw-ui-destructive:focus {
color: var(--text-color);
}
input[type='checkbox']:active + .mw-ui-button.mw-ui-quiet,
input[type='checkbox']:active + .mw-ui-button.mw-ui-quiet.mw-ui-progressive,
input[type='checkbox']:active + .mw-ui-button.mw-ui-quiet.mw-ui-destructive,
.mw-ui-button.mw-ui-quiet:active,
.mw-ui-button.mw-ui-quiet.mw-ui-progressive:active,
.mw-ui-button.mw-ui-quiet.mw-ui-destructive:active {
background-color: rgba(0, 36, 73, 0.08235294);
color: var(--text-color);
border-color: #72777d;
}
.mw-ui-input {
background-color: var(--ooui-input);
color: var(--text-color);
border-color: var(--ooui-input-border);
}
.mw-ui-input:hover {
border-color: var(--ooui-input-border--hover);
}
.mw-ui-input::placeholder {
color: var(--byline-color);
}
.mw-content-ltr .redirectText li:first-child {
padding: 0;
background: 0;
}
.mw-content-ltr .redirectText li:first-child::before {
content: '';
background: currentcolor;
-webkit-mask: url("filepath://Redirect-arrow.svg") no-repeat 50% 50% / contain;
mask: url("filepath://Redirect-arrow.svg") no-repeat 50% 50% / contain;
display: inline-block;
width: 47px;
height: 20px;
}
:root {
--wikitable-header-bg: var(--body-dark);
--wikitable-border: var(--body-border);
--wikitable-bg: var(--body-light);
--wikitable-bg-lighter: #e9e3d6;
--wikitable-color: var(--text-color);
--table-na-background: rgba(255, 255, 255, 0.3);
--table-na-color: var(--subtle-color);
--table-yes-background: #c3e8a3;
--table-yes-color: #2e5e05;
--table-no-background: #fbc0ba;
--table-no-color: #801c13;
--table-maybe-background: #fcea94;
--table-maybe-color: #786300;
}
.wikitable {
background: var(--wikitable-bg);
color: var(--wikitable-color);
border-color: var(--wikitable-border);
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
}
.wikitable > tr > th,
.wikitable > tr > td,
.wikitable > * > tr > th,
.wikitable > * > tr > td {
border-color: var(--wikitable-border);
}
.wikitable > tr > th.table-noborder,
.wikitable > tr > td.table-noborder,
.wikitable > * > tr > th.table-noborder,
.wikitable > * > tr > td.table-noborder {
border-left-style: hidden;
border-right-style: hidden;
padding-left: 0;
padding-right: 0;
}
.wikitable > tr > th,
.wikitable > * > tr > th {
background-color: var(--wikitable-header-bg);
}
.tabber .wikitable {
box-shadow: none;
}
.mw_metadata td,
.mw_metadata th {
border-color: var(--wikitable-border);
}
.mw_metadata th {
background-color: var(--wikitable-header-bg);
}
.mw_metadata td {
background-color: var(--wikitable-bg);
}
.mw-datatable {
border-color: var(--wikitable-border);
}
.mw-datatable td,
.mw-datatable th {
border-color: var(--wikitable-border);
}
.mw-datatable th {
background-color: var(--wikitable-header-bg);
}
.mw-datatable td {
background-color: var(--wikitable-bg);
}
.mw-datatable tr:hover td {
background-color: var(--wikitable-bg);
}
table.alternating-rows tr:nth-child(odd),
table.alternating-cols td:nth-child(odd) {
background: var(--wikitable-alternating-bg);
}
.table-na {
background: var(--table-na-background);
color: var(--table-na-color);
vertical-align: middle;
text-align: center;
}
.table-yes {
background: var(--table-yes-background);
color: var(--table-yes-color);
}
.table-positive {
background: var(--table-yes-background);
}
.table-no {
background: var(--table-no-background);
color: var(--table-no-color);
}
.table-negative {
background: var(--table-no-background);
}
.table-maybe {
background: var(--table-maybe-background);
color: var(--table-maybe-color);
}
#mw-allmessagestable .am_actual,
#mw-allmessagestable .am_default {
background-color: var(--wikitable-bg);
}
#mw-allmessagestable .am_default:hover,
#mw-allmessagestable .am_actual:hover,
#mw-allmessagestable tbody:hover td {
background-color: var(--wikitable-bg-lighter);
}
table.wikitable td.no-cell-spacing {
padding: 0;
height: 0;
}
table.wikitable td.no-cell-spacing table {
margin: -1px;
width: calc(100% + 2px);
height: calc(100% + 2px);
}
.plainlist ol,
.plainlist ul {
margin: 0;
}
.plainlist li {
margin-bottom: 0;
list-style: none;
}
table.align-right-1 td:nth-of-type(1),
table.align-right-2 td:nth-of-type(2),
table.align-right-3 td:nth-of-type(3),
table.align-right-4 td:nth-of-type(4),
table.align-right-5 td:nth-of-type(5),
table.align-right-6 td:nth-of-type(6),
table.align-right-7 td:nth-of-type(7),
table.align-right-8 td:nth-of-type(8),
table.align-right-9 td:nth-of-type(9),
table.align-right-10 td:nth-of-type(10),
table.align-right-11 td:nth-of-type(11),
table.align-right-12 td:nth-of-type(12),
table.align-right-13 td:nth-of-type(13),
table.align-right-14 td:nth-of-type(14),
table.align-right-15 td:nth-of-type(15),
table.align-right-16 td:nth-of-type(16),
table.align-right-17 td:nth-of-type(17),
table.align-right-18 td:nth-of-type(18),
table.align-right-19 td:nth-of-type(19),
table.align-right-20 td:nth-of-type(20) {
text-align: right;
}
table.align-center-1 td:nth-of-type(1),
table.align-center-2 td:nth-of-type(2),
table.align-center-3 td:nth-of-type(3),
table.align-center-4 td:nth-of-type(4),
table.align-center-5 td:nth-of-type(5),
table.align-center-6 td:nth-of-type(6),
table.align-center-7 td:nth-of-type(7),
table.align-center-8 td:nth-of-type(8),
table.align-center-9 td:nth-of-type(9),
table.align-center-10 td:nth-of-type(10),
table.align-center-11 td:nth-of-type(11),
table.align-center-12 td:nth-of-type(12),
table.align-center-13 td:nth-of-type(13),
table.align-center-14 td:nth-of-type(14),
table.align-center-15 td:nth-of-type(15),
table.align-center-16 td:nth-of-type(16),
table.align-center-17 td:nth-of-type(17),
table.align-center-18 td:nth-of-type(18),
table.align-center-19 td:nth-of-type(19),
table.align-center-20 td:nth-of-type(20) {
text-align: center;
}
table.align-left-1 td:nth-of-type(1),
table.align-left-2 td:nth-of-type(2),
table.align-left-3 td:nth-of-type(3),
table.align-left-4 td:nth-of-type(4),
table.align-left-5 td:nth-of-type(5),
table.align-left-6 td:nth-of-type(6),
table.align-left-7 td:nth-of-type(7),
table.align-left-8 td:nth-of-type(8),
table.align-left-9 td:nth-of-type(9),
table.align-left-10 td:nth-of-type(10),
table.align-left-11 td:nth-of-type(11),
table.align-left-12 td:nth-of-type(12),
table.align-left-13 td:nth-of-type(13),
table.align-left-14 td:nth-of-type(14),
table.align-left-15 td:nth-of-type(15),
table.align-left-16 td:nth-of-type(16),
table.align-left-17 td:nth-of-type(17),
table.align-left-18 td:nth-of-type(18),
table.align-left-19 td:nth-of-type(19),
table.align-left-20 td:nth-of-type(20) {
text-align: left;
}
:root {
--diff-addedline-border-color: #438ab5;
--diff-addedline-background: #bddff2;
--diff-addedline-color: #000;
--diff-deletedline-border-color: #379541;
--diff-deletedline-background: #c1edbf;
--diff-deletedline-color: #000;
--diff-context-border-color: var(--body-mid);
--diff-context-background: var(--body-mid);
}
.diff-context {
border-color: var(--diff-context-border-color);
background: var(--diff-context-background);
color: inherit;
}
.diff-addedline {
border-color: var(--diff-addedline-border-color);
}
.diff-addedline .diffchange {
background: var(--diff-addedline-background);
color: var(--diff-addedline-color);
}
.diff-deletedline {
border-color: var(--diff-deletedline-border-color);
}
.diff-deletedline .diffchange {
background: var(--diff-deletedline-background);
color: var(--diff-deletedline-color);
}
.mw-diff-movedpara-left:after,
.mw-diff-movedpara-right:after {
color: var(--text-color);
}
.mw-notification {
background-color: var(--body-light);
border-color: var(--body-border);
color: var(--text-color);
}
.mw-echo-ui-notificationsInboxWidget-toolbarWrapper {
background: var(--body-main);
}
.mw-body-content .mw-echo-ui-datedSubGroupListWidget-title-secondary {
color: var(--byline-color);
}
.mw-echo-ui-pageNotificationsOptionWidget.oo-ui-optionWidget-selected {
background-color: var(--ooui-normal);
color: var(--ooui-accent);
}
.mw-echo-ui-pageNotificationsOptionWidget-label-count {
background-color: var(--ooui-normal);
color: var(--byline-color);
}
.oo-ui-optionWidget-selected .mw-echo-ui-pageNotificationsOptionWidget-label-count {
color: var(--ooui-accent);
}
.mw-echo-ui-pageNotificationsOptionWidget.oo-ui-optionWidget-highlighted {
background-color: var(--ooui-normal);
color: var(--text-color);
}
.mw-echo-ui-crossWikiUnreadFilterWidget {
border-color: var(--body-border);
}
.mw-echo-ui-crossWikiUnreadFilterWidget-subtitle {
color: var(--byline-color);
}
.mw-echo-ui-notificationBadgeButtonPopupWidget-popup > .oo-ui-popupWidget-popup > .oo-ui-popupWidget-head,
.mw-echo-ui-notificationBadgeButtonPopupWidget-popup > .oo-ui-popupWidget-popup > .oo-ui-popupWidget-footer {
border-color: var(--ooui-interface-border);
}
.mw-echo-ui-notificationBadgeButtonPopupWidget-popup > .oo-ui-popupWidget-popup > .oo-ui-popupWidget-footer .mw-echo-ui-notificationBadgeButtonPopupWidget-footer-buttons .oo-ui-buttonElement:last-child {
border-left-color: var(--ooui-normal-border);
}
.mw-echo-ui-notificationItemWidget {
background-color: var(--ooui-normal);
border-color: var(--ooui-normal-border);
}
.mw-echo-ui-notificationItemWidget:hover,
.mw-echo-ui-notificationItemWidget-unread:hover {
background-color: var(--ooui-normal--hover);
}
.mw-echo-ui-notificationItemWidget:last-child {
border-bottom-color: var(--ooui-normal-border);
}
.mw-echo-ui-notificationItemWidget-unread {
background-color: var(--search-box);
}
.mw-echo-ui-crossWikiNotificationItemWidget-group,
.mw-echo-ui-bundleNotificationItemWidget-group {
background-color: var(--ooui-interface);
}
.mw-echo-ui-toggleReadCircleButtonWidget-circle {
background-color: var(--ooui-progressive);
}
.mw-echo-ui-toggleReadCircleButtonWidget:hover .mw-echo-ui-toggleReadCircleButtonWidget-circle {
background-color: var(--ooui-progressive--hover);
}
.mw-echo-ui-toggleReadCircleButtonWidget-circle-unread {
background-color: var(--ooui-normal);
border-color: var(--ooui-normal-border);
}
.mw-echo-ui-notificationItemWidget-content-message-header,
.mw-echo-ui-notificationItemWidget-content-message-body,
.mw-echo-ui-menuItemWidget > .oo-ui-buttonElement-button > .oo-ui-labelElement-label,
.mw-echo-ui-notificationItemWidget-content-actions-timestamp {
color: var(--ooui-text);
}
.mw-echo-ui-bundleNotificationItemWidget-group {
background-color: var(--body-main);
}
@keyframes unseen-fadeout-to-unread {
from {
background-color: var(--wikitable-bg-lighter);
}
to {
background-color: var(--search-box);
}
}
@keyframes unseen-fadeout-to-read {
from {
background-color: var(--wikitable-bg-lighter);
}
to {
background-color: var(--body-main);
}
}
.mwe-popups {
background: var(--body-light);
}
.mwe-popups .mwe-popups-container {
color: var(--text-color);
background: var(--body-light);
}
.mwe-popups .mwe-popups-container.flipped-x-y:before,
.mwe-popups .mwe-popups-container.flipped-y:before {
border-top: none;
}
.mwe-popups .mwe-popups-container.mwe-popups-no-image-tri:before {
border-bottom: none;
}
.mwe-popups .mwe-popups-container.flipped-x-y:after,
.mwe-popups .mwe-popups-container.flipped-y:after {
border-top-color: var(--body-light);
}
.mwe-popups .mwe-popups-container.mwe-popups-no-image-tri:after {
border-bottom-color: var(--body-light);
}
.mwe-popups .mwe-popups-settings-icon:hover,
.mwe-popups .mwe-popups-settings-icon:active {
background-color: var(--ooui-normal--hover);
}
.mwe-popups .mw-ui-icon-element:not(.disabled):hover {
background: none;
}
.mwe-popups .mwe-popups-extract {
color: var(--text-color);
}
.mwe-popups .mwe-popups-extract[dir='ltr']:after {
background-image: linear-gradient(to right, rgba(49, 62, 89, 0), var(--body-light) 50%);
}
.mwe-popups-overlay {
background-color: var(--ooui-window-background);
}
#mwe-popups-settings {
background: var(--ooui-interface);
border-color: var(--ooui-interface-border);
color: var(--text-color);
}
#mwe-popups-settings header {
border-color: var(--ooui-interface-border);
}
#mwe-popups-settings main#mwe-popups-settings-form p {
color: var(--byline-color);
}
#mwe-popups-settings main#mwe-popups-settings-form form label > span {
color: var(--ooui-text);
}
:root {
--smw-ask-options-even-bg: var(--body-mid);
--smw-ask-options-odd-bg: var(--body-light);
--smw-ask-action-btn-lblue-bg: var(--body-main);
--smw-ask-action-btn-lblue-color: #000;
--smw-ask-action-btn-lblue-border-color: var(--body-light);
--smw-ask-action-btn-dblue-bg: var(--body-light);
--smw-ask-action-btn-dblue-color: #fff;
--smw-ask-action-btn-dblue-border-color: var(--button-border);
}
.smw-ask-condition fieldset,
.smw-ask-printhead fieldset {
border-color: var(--sidebar);
}
.smw-ask-search fieldset,
.smw-ask-format fieldset,
.smw-ask-options fieldset {
border-color: var(--sidebar);
}
.strike > span:before,
.strike > span:after {
background: var(--sidebar);
}
.smw-ask-options-fields tr td {
background-color: var(--smw-ask-options-even-bg);
}
.smw-ask-options-fields tr:nth-child(odd) td {
background-color: var(--smw-ask-options-odd-bg);
}
.smw-ask-action-btn.smw-ask-action-btn-lblue,
.smw-ask-action-btn.smw-ask-action-btn-lblue:hover,
.smw-ask-action-btn.smw-ask-action-btn-lblue:visited {
background-color: var(--smw-ask-action-btn-lblue-bg);
color: var(--smw-ask-action-btn-lblue-color);
border-color: var(--smw-ask-action-btn-lblue-border-color);
}
.smw-ask-action-btn.smw-ask-action-btn-dblue,
.smw-ask-action-btn.smw-ask-action-btn-dblue:hover,
.smw-ask-action-btn.smw-ask-action-btn-dblue:visited {
background-color: var(--smw-ask-action-btn-dblue-bg);
color: var(--smw-ask-action-btn-dblue-color);
border-color: var(--smw-ask-action-btn-dblue-border-color);
}
.smw-ask-query textarea,
.smw-ask-actions textarea {
background-color: var(--ooui-interface);
border-color: var(--ooui-interface-border);
color: var(--ooui-text);
}
.smw-ask-query-format select {
background-color: var(--ooui-interface);
border: 1px solid var(--ooui-interface-border);
color: var(--ooui-text);
}
.smw-ask-toplinks {
background-color: var(--body-mid);
}
.smw-ask-toplinks span.smw-icon-info {
background: none;
padding: 0 !important;
}
.smw-ask-toplinks span.smw-icon-info::before {
content: '';
background: var(--text-color);
-webkit-mask: url("data:image/svg+xml,%3C%3Fxml version='1.0' encoding='UTF-8'%3F%3E%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 20 20'%3E%3Ctitle%3Einfo%3C/title%3E%3Cpath d='M10 0C4.477 0 0 4.477 0 10s4.477 10 10 10 10-4.477 10-10S15.523 0 10 0zM9 5h2v2H9zm0 4h2v6H9z'/%3E%3C/svg%3E") no-repeat 50% 50% / contain;
mask: url("data:image/svg+xml,%3C%3Fxml version='1.0' encoding='UTF-8'%3F%3E%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 20 20'%3E%3Ctitle%3Einfo%3C/title%3E%3Cpath d='M10 0C4.477 0 0 4.477 0 10s4.477 10 10 10 10-4.477 10-10S15.523 0 10 0zM9 5h2v2H9zm0 4h2v6H9z'/%3E%3C/svg%3E") no-repeat 50% 50% / contain;
padding: 0 0 3px 18px;
}
.smw-ask-options-row-odd {
background-color: var(--body-light);
}
.smw-ask-options-row-even {
background-color: var(--body-mid);
}
#options-toggle:not(:checked) + #options-list .options-parameter-list:after {
background-image: linear-gradient(to bottom, transparent, var(--body-mid) 90%);
}
.smw-ask-button-submit input {
background-color: var(--ooui-normal);
border-color: var(--ooui-normal-border);
color: var(--text-color);
}
.smw-ask-button-submit input:hover,
.smw-ask-button-lgrey:hover {
background-color: var(--ooui-normal--hover);
border-color: var(--ooui-normal-border);
}
input.smw-ask-action-btn.smw-ask-action-btn-dblue {
background-color: var(--ooui-normal);
border-color: var(--ooui-normal-border);
color: var(--ooui-text);
}
a.smw-ask-action-btn.smw-ask-action-btn-lblue {
background-color: var(--body-mid);
border-color: var(--body-mid);
color: var(--ooui-text);
}
a.smw-ask-action-btn.smw-ask-action-btn-lblue:visited {
background-color: var(--body-mid);
border-color: var(--body-mid);
color: var(--ooui-text);
}
a.smw-ask-action-btn.smw-ask-action-btn-lblue:hover {
background-color: var(--body-mid);
border-color: var(--body-mid);
color: var(--ooui-text);
}
a.smw-ask-action-btn-lgrey {
background-color: var(--ooui-normal);
border-color: var(--ooui-normal-border);
color: var(--ooui-text);
}
a.smw-ask-action-btn-lgrey:hover {
background-color: var(--ooui-normal--hover);
border-color: var(--ooui-normal-border);
color: var(--ooui-text);
}
.smw-callout-error {
background-color: var(--errorbox-bg);
border-color: var(--errorbox-border);
}
.smw-callout-info {
background-color: var(--body-light);
border-color: var(--body-dark);
}
.smw-callout-success {
background-color: var(--successbox-bg);
border-color: var(--successbox-border);
}
.smw-callout-warning {
background-color: var(--warningbox-bg);
border-color: var(--warningbox-bg);
}
.smw-tabs input.nav-tab:checked + label.nav-label,
.smw-tabs input.nav-tab:checked + label.nav-label:hover {
color: inherit;
}
#tab-smw-property-value:checked + label.nav-label .usage-count {
color: #fff;
background-color: var(--ooui-progressive);
}
#tab-smw-property-value:checked + label.nav-label .usage-count.moderate {
color: #fff;
background-color: #b55e0c;
border-color: #b55e0c;
}
#tab-smw-property-value:checked + label.nav-label .usage-count.high {
color: #fff;
background-color: #9f261e;
border-color: #9f261e;
}
.smw-property-page-results .header-title {
background-color: var(--ooui-interface);
border-bottom-color: var(--ooui-interface-border);
color: var(--ooui-text);
}
.smw-property-page-results .value-row:hover {
background-color: var(--ooui-normal--hover);
}
.smw-property-page-results .smw-table .header-row {
color: var(--text-color);
}
.tippy-tooltip.light-border-theme {
background-color: var(--body-light);
color: var(--text-color);
}
.tippy-tooltip.light-border-theme .tippy-arrow {
border-top-color: var(--body-light);
}
.tippy-tooltip.light-border-theme .tippy-arrow:after {
border-top-color: var(--body-light);
}
.tippy-header {
background-color: var(--body-dark);
border-bottom-color: var(--body-mid);
}
.smw-ui-input-filter {
background-color: var(--ooui-interface);
border-color: var(--ooui-interface-border);
color: var(--ooui-text);
}
.smw-ui-input-filter input {
border-left-color: var(--ooui-interface-border) !important;
color: var(--ooui-text) !important;
}
.smw-ui-pagination .page-link.link-disabled {
background-color: var(--ooui-disabled);
border-color: var(--ooui-disabled-border);
color: var(--subtle-color);
}
.smw-ui-pagination .page-link {
background-color: var(--ooui-normal);
border-color: var(--ooui-normal-border);
color: var(--link-color);
}
.smw-ui-pagination .page-link:hover {
background-color: var(--ooui-normal--hover);
border-color: var(--ooui-normal-border);
color: var(--link-color);
}
.smw-ui-pagination .page-link.link-active {
color: #fff;
background-color: var(--ooui-progressive);
border-color: var(--ooui-progressive);
}
.smw-tabs input.nav-tab:checked + label.nav-label {
border-color: var(--ooui-normal-border);
}
.smw-tabs section,
.smw-tabs .subtab-content {
border-top-color: var(--ooui-normal-border);
}
.smw-column-header {
color: var(--text-color);
}
.smw-factbox {
background: var(--body-main);
border-color: transparent;
}
.mw-body .mw-indicators #mw-indicator-smw-entity-examiner.mw-indicator .smw-indicator-vertical-bar-loader {
display: none;
}
.smwb-theme-light .smwb-title,
.smwb-theme-light .smwb-center,
.smwb-theme-light .smwb-actions,
.smwb-theme-light .smwb-prophead {
background-color: var(--body-mid);
}
.smwb-theme-light .smwb-factbox {
border-left-color: var(--body-mid);
}
.smwb-theme-light .smwb-ifactbox {
border-right-color: var(--body-mid);
}
.smwb-theme-light .smwb-propval {
background-color: var(--body-light);
}
.smwb-action-separator {
border-color: var(--wikitable-border);
}
.smwb-bottom {
border-bottom: 1px solid var(--wikitable-border);
}
.smwb-ifactbox .smwb-cell,
.smwb-factbox .smwb-cell {
border-top: 1px solid var(--wikitable-border);
}
.smwb-propvalue .smwb-prophead,
.smwb-ipropvalue .smwb-prophead,
.smwb-propvalue .smwb-propval,
.smwb-ipropvalue .smwb-propval {
font-size: 0.9em;
}
:root {
--filter-black-to-link: invert(36%) sepia(58%) saturate(433%) hue-rotate(344deg) brightness(100%) contrast(91%);
}
#bodyContent span.smwbrowse a {
color: black;
background-image: url('filepath://Smwbrowse.svg');
filter: var(--filter-black-to-link);
}
#bodyContent span.smwbrowse a:hover {
color: black;
background-image: url('filepath://Smwbrowse-hover.svg');
text-decoration: underline;
}
#bodyContent span.smwsearch a {
color: black;
filter: var(--filter-black-to-link);
background-image: url('filepath://Smwsearch.svg');
}
#bodyContent span.smwsearch a:hover {
color: black;
background-image: url('filepath://Smwsearch-hover.svg');
text-decoration: underline;
}
:root {
--tabber-tab-bg: var(--body-light);
--tabber-tab-border-color: var(--body-border);
--tabber-active-tab-bg: var(--body-light);
--tabber-active-tab-color: var(--text-color);
--tabber-active-tab-hover-bg: var(--body-light);
--tabber-active-tab-hover-border-color: var(--body-border);
--tabber-active-tab-hover-color: var(--text-color);
--tabber-active-tab-border-hider-color: var(--body-light);
--tabber-inactive-tab-bg: var(--body-background-color);
--tabber-inactive-tab-border-color: var(--body-border);
--tabber-inactive-tab-color: var(--text-color);
--tabber-inactive-tab-hover-bg: var(--body-light);
--tabber-inactive-tab-hover-border-color: var(--body-border);
}
.tabber {
margin: 1em 0;
}
.tabber .tabbertab {
background-color: var(--tabber-tab-bg);
border: 1px solid var(--tabber-tab-border-color);
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
padding: 1em 1.5em;
}
ul.tabbernav {
border: none;
margin-left: 2em;
margin-bottom: 0;
margin-right: 2em;
padding: 0;
font-family: inherit;
}
ul.tabbernav li.tabberactive > a {
background-color: var(--tabber-active-tab-bg);
color: var(--tabber-active-tab-color);
border-bottom: none;
position: relative;
}
ul.tabbernav li.tabberactive > a:hover {
color: var(--tabber-active-tab-hover-color);
background-color: var(--tabber-active-tab-hover-bg);
border-color: var(--tabber-active-tab-hover-border-color);
border-bottom: none;
}
ul.tabbernav li.tabberactive > a::after {
content: '';
position: absolute;
left: 0;
right: 0;
bottom: -1px;
border-bottom: 2px solid var(--tabber-active-tab-border-hider-color);
}
ul.tabbernav li a {
background-color: var(--tabber-inactive-tab-bg);
border-bottom: transparent;
border-color: var(--tabber-inactive-tab-border-color);
color: var(--tabber-inactive-tab-color);
display: inline-block;
font-size: 110%;
padding: 0.5em 1em;
}
ul.tabbernav li a:hover {
background-color: var(--tabber-inactive-tab-hover-bg);
border-color: var(--tabber-inactive-tab-hover-border-color);
}
ul.tabbernav li a:link,
ul.tabbernav li a:visited {
color: var(--tabber-inactive-tab-color);
}
:root {
--ooui-text: var(--text-color);
--ooui-interface: var(--body-light);
--ooui-interface-border: var(--body-border);
--ooui-window-background: rgba(255, 255, 255, 0.5);
--ooui-normal: #d5c7ad;
--ooui-normal--hover: #dfd5c1;
--ooui-normal-border: #b8a282;
--ooui-progressive: #605443;
--ooui-progressive--hover: #7e6e58;
--ooui-accent: var(--link-color);
--ooui-input: #fff;
--ooui-input-border: #b8a282;
--ooui-input-border--hover: #8a724f;
--ooui-disabled: #d1cdc5;
--ooui-disabled-border: #c2b9ab;
--ooui-disabled-text: var(--subtle-color);
--ooui-pending-background-image: repeating-linear-gradient(-45deg, var(--search-box), var(--search-box) 20px, var(--body-main) 20px, var(--body-main) 30px);
}
.oo-ui-widget {
color: var(--ooui-text);
}
.oo-ui-checkboxInputWidget [type='checkbox'] + span,
.oo-ui-radioInputWidget [type='radio'] + span {
background-color: var(--ooui-input);
border-color: var(--ooui-input-border);
}
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:checked + span,
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:indeterminate + span {
background-color: var(--ooui-progressive);
border-color: var(--ooui-progressive);
}
.oo-ui-radioInputWidget.oo-ui-widget-enabled [type='radio']:checked + span {
border-color: var(--ooui-progressive);
}
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:checked:hover + span,
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:indeterminate:hover + span {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
}
.oo-ui-radioInputWidget.oo-ui-widget-enabled [type='radio']:checked:hover + span {
border-color: var(--ooui-progressive--hover);
}
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:hover + span,
.oo-ui-radioInputWidget.oo-ui-widget-enabled [type='radio']:hover + span {
border-color: var(--ooui-accent);
}
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:focus + span {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:active + span,
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:checked:active + span,
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:indeterminate:active + span {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
box-shadow: inset 0 0 0 1px var(--ooui-progressive--hover);
}
.oo-ui-radioInputWidget.oo-ui-widget-enabled [type='radio']:active + span {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
}
.oo-ui-radioInputWidget.oo-ui-widget-enabled [type='radio']:checked:active + span {
border-color: var(--ooui-progressive--hover);
box-shadow: inset 0 0 0 1px var(--ooui-progressive--hover);
}
.oo-ui-radioInputWidget.oo-ui-widget-enabled [type='radio']:checked:active + span:before {
border-color: var(--ooui-progressive--hover);
}
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:checked:focus + span,
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:indeterminate:focus + span {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent), inset 0 0 0 2px #fff;
}
.oo-ui-checkboxInputWidget [type='checkbox']:disabled + span,
.oo-ui-radioInputWidget [type='radio']:disabled + span {
background-color: var(--ooui-disabled);
border-color: var(--ooui-disabled);
}
.oo-ui-dropdownWidget-handle {
border-color: var(--ooui-normal-border);
}
.oo-ui-dropdownWidget.oo-ui-widget-enabled .oo-ui-dropdownWidget-handle {
background-color: var(--ooui-normal);
color: var(--ooui-text);
}
.oo-ui-dropdownWidget.oo-ui-widget-enabled .oo-ui-dropdownWidget-handle:hover {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
}
.oo-ui-dropdownWidget.oo-ui-widget-enabled .oo-ui-dropdownWidget-handle:active {
color: var(--ooui-text);
}
.oo-ui-dropdownWidget.oo-ui-widget-enabled .oo-ui-dropdownWidget-handle:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-dropdownWidget.oo-ui-widget-enabled.oo-ui-dropdownWidget-open .oo-ui-dropdownWidget-handle {
background-color: var(--ooui-normal--hover);
}
.oo-ui-dropdownWidget.oo-ui-widget-disabled .oo-ui-dropdownWidget-handle {
color: var(--ooui-disabled-text);
text-shadow: none;
border-color: var(--ooui-disabled-border);
background-color: var(--ooui-disabled);
}
.oo-ui-dropdownInputWidget select {
border-color: var(--ooui-normal-border);
}
.oo-ui-dropdownInputWidget option {
background-color: var(--ooui-interface);
}
.oo-ui-dropdownInputWidget.oo-ui-widget-enabled {
background-color: var(--ooui-normal);
}
.oo-ui-dropdownInputWidget.oo-ui-widget-enabled:hover {
background-color: var(--ooui-normal--hover);
}
.oo-ui-dropdownInputWidget.oo-ui-widget-enabled select {
color: var(--ooui-text);
}
.oo-ui-dropdownInputWidget.oo-ui-widget-enabled select:hover,
.oo-ui-dropdownInputWidget.oo-ui-widget-enabled select:active {
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
}
.oo-ui-dropdownInputWidget.oo-ui-widget-enabled select:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-labelWidget.oo-ui-inline-help {
color: var(--byline-color);
}
.oo-ui-menuSelectWidget {
background-color: var(--ooui-interface);
border-color: var(--ooui-interface-border);
}
.oo-ui-menuSelectWidget-frameless {
box-shadow: inset 0 -1px 0 0 var(--ooui-normal-border);
}
.oo-ui-menuSectionOptionWidget {
color: var(--byline-color);
}
.oo-ui-menuOptionWidget.oo-ui-optionWidget-highlighted,
.oo-ui-menuOptionWidget.oo-ui-optionWidget-selected {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
}
.oo-ui-menuOptionWidget.oo-ui-optionWidget-selected.oo-ui-menuOptionWidget.oo-ui-optionWidget-highlighted,
.oo-ui-menuOptionWidget.oo-ui-optionWidget-pressed.oo-ui-menuOptionWidget.oo-ui-optionWidget-highlighted {
color: var(--ooui-accent);
}
.oo-ui-menuOptionWidget.oo-ui-widget-enabled.oo-ui-optionWidget {
color: var(--ooui-text);
}
.oo-ui-messageDialog-title {
color: inherit;
}
.oo-ui-messageWidget.oo-ui-messageWidget-block.oo-ui-flaggedElement-error {
background-color: var(--errorbox-bg);
border-color: var(--errorbox-border);
}
.oo-ui-messageWidget.oo-ui-messageWidget-block.oo-ui-flaggedElement-warning {
background-color: var(--warningbox-bg);
border-color: var(--warningbox-border);
}
.oo-ui-messageWidget.oo-ui-messageWidget-block.oo-ui-flaggedElement-success {
background-color: var(--successbox-bg);
border-color: var(--successbox-border);
}
.oo-ui-messageWidget.oo-ui-messageWidget-block.oo-ui-flaggedElement-notice {
background-color: var(--messagebox-info-background);
border-color: var(--messagebox-info-border);
}
.oo-ui-messageWidget.oo-ui-flaggedElement-error:not(.oo-ui-messageWidget-block),
.oo-ui-messageWidget.oo-ui-flaggedElement-success:not(.oo-ui-messageWidget-block) {
color: var(--ooui-text);
}
.oo-ui-optionWidget.oo-ui-widget-disabled {
color: var(--ooui-disabled-text);
}
.oo-ui-outlineControlsWidget {
background-color: var(--ooui-normal);
}
.oo-ui-outlineOptionWidget.oo-ui-optionWidget-highlighted {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
}
.oo-ui-popupWidget-popup {
background-color: var(--ooui-interface);
border-color: var(--ooui-interface-border);
}
.oo-ui-popupWidget-anchored-top .oo-ui-popupWidget-anchor:after {
border-bottom-color: var(--ooui-interface);
}
.oo-ui-popupWidget-anchored-top .oo-ui-popupWidget-anchor:before {
border-bottom-color: var(--ooui-interface-border);
}
.oo-ui-popupWidget-anchored-bottom .oo-ui-popupWidget-anchor:after {
border-top-color: var(--ooui-interface);
}
.oo-ui-popupWidget-anchored-bottom .oo-ui-popupWidget-anchor:before {
border-top-color: var(--ooui-interface-border);
}
.oo-ui-popupWidget-anchored-start .oo-ui-popupWidget-anchor:after {
border-right-color: var(--ooui-interface);
}
.oo-ui-popupWidget-anchored-start .oo-ui-popupWidget-anchor:before {
border-right-color: var(--ooui-interface-border);
}
.oo-ui-popupWidget-anchored-end .oo-ui-popupWidget-anchor:after {
border-left-color: var(--ooui-interface);
}
.oo-ui-popupWidget-anchored-end .oo-ui-popupWidget-anchor:before {
border-left-color: var(--ooui-interface-border);
}
.oo-ui-searchWidget-query {
border-bottom-color: var(--ooui-interface-border);
}
.oo-ui-selectFileWidget-dropTarget {
background-color: var(--ooui-interface);
border-color: var(--ooui-interface-border);
}
.oo-ui-selectFileWidget.oo-ui-widget-enabled.oo-ui-selectFileWidget-dropTarget {
background-color: var(--ooui-interface);
}
.oo-ui-selectFileWidget.oo-ui-widget-enabled.oo-ui-selectFileWidget-dropTarget:hover {
border-color: var(--ooui-input-border--hover);
}
.oo-ui-tabOptionWidget {
color: var(--ooui-text);
}
.oo-ui-tabSelectWidget-framed .oo-ui-tabOptionWidget.oo-ui-optionWidget-selected {
background-color: var(--body-dark);
color: var(--ooui-text);
}
.oo-ui-tabSelectWidget-framed .oo-ui-tabOptionWidget.oo-ui-optionWidget-selected .oo-ui-labelElement-label {
border-bottom-color: var(--body-border);
}
.oo-ui-tabSelectWidget-framed .oo-ui-tabOptionWidget.oo-ui-widget-enabled:hover,
.oo-ui-tabSelectWidget-framed .oo-ui-tabOptionWidget.oo-ui-widget-enabled:active {
background-color: var(--body-light);
color: var(--ooui-text);
}
.oo-ui-tabSelectWidget-framed .oo-ui-tabOptionWidget.oo-ui-widget-enabled.oo-ui-optionWidget-selected:hover {
background-color: var(--body-dark);
}
.oo-ui-tabSelectWidget-frameless .oo-ui-tabOptionWidget.oo-ui-optionWidget-selected {
color: var(--ooui-progressive);
box-shadow: inset 0 -2px 0 0 var(--ooui-progressive);
}
.oo-ui-tabSelectWidget-frameless .oo-ui-tabOptionWidget.oo-ui-optionWidget-selected:hover,
.oo-ui-tabSelectWidget-frameless .oo-ui-tabOptionWidget.oo-ui-optionWidget-selected:focus {
color: var(--ooui-progressive--hover);
box-shadow: inset 0 -2px 0 0 var(--ooui-progressive--hover);
}
.oo-ui-tabSelectWidget-framed {
background: none;
border-bottom: 1px solid var(--ooui-interface-border);
}
.oo-ui-tabSelectWidget-frameless {
box-shadow: inset 0 -1px 0 0 var(--ooui-interface-border);
}
.oo-ui-tabSelectWidget-mobile {
}
.oo-ui-tabSelectWidget-mobile.oo-ui-tabSelectWidget-framed:after {
background: var(--mobile-navbox-linear-gradient);
}
.oo-ui-tabSelectWidget-mobile.oo-ui-tabSelectWidget-frameless:after {
background: var(--mobile-navbox-linear-gradient);
}
.oo-ui-tagItemWidget {
border-color: var(--ooui-normal-border);
}
.oo-ui-tagItemWidget.oo-ui-widget-enabled {
color: var(--ooui-text);
}
.oo-ui-tagItemWidget.oo-ui-widget-enabled:hover {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
}
.oo-ui-tagItemWidget.oo-ui-widget-enabled:not( .oo-ui-tagItemWidget-fixed ) {
background-color: var(--ooui-normal);
}
.oo-ui-tagItemWidget.oo-ui-widget-enabled .oo-ui-buttonElement-button:hover {
background-color: var(--ooui-normal--hover);
}
.oo-ui-tagMultiselectWidget.oo-ui-widget-enabled {
background-color: var(--ooui-interface);
}
.oo-ui-tagMultiselectWidget.oo-ui-widget-enabled.oo-ui-tagMultiselectWidget-outlined {
background-color: var(--ooui-normal);
}
.oo-ui-tagMultiselectWidget.oo-ui-widget-enabled.oo-ui-tagMultiselectWidget-outlined .oo-ui-tagItemWidget.oo-ui-widget-enabled {
background-color: var(--ooui-interface);
}
.oo-ui-textInputWidget .oo-ui-inputWidget-input {
background-color: var(--ooui-input);
color: var(--ooui-text);
border-color: var(--ooui-input-border);
}
.oo-ui-textInputWidget.oo-ui-widget-enabled .oo-ui-inputWidget-input::placeholder {
color: var(--subtle-color);
}
.oo-ui-textInputWidget.oo-ui-widget-enabled .oo-ui-inputWidget-input:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-textInputWidget.oo-ui-widget-enabled .oo-ui-inputWidget-input[readonly]:not(.oo-ui-pendingElement-pending) {
background-color: var(--ooui-disabled);
color: var(--ooui-disabled-text);
}
.oo-ui-textInputWidget.oo-ui-widget-enabled:hover .oo-ui-inputWidget-input {
border-color: var(--ooui-input-border--hover);
}
.oo-ui-textInputWidget.oo-ui-widget-enabled:hover .oo-ui-inputWidget-input:focus {
border-color: var(--ooui-accent);
}
@media screen and (min-width: 0) {
.oo-ui-textInputWidget.oo-ui-widget-enabled textarea.oo-ui-inputWidget-input:focus {
outline: 1px solid var(--ooui-accent);
}
}
.oo-ui-textInputWidget.oo-ui-widget-disabled .oo-ui-inputWidget-input {
background-color: var(--ooui-disabled);
color: var(--ooui-disabled-text);
text-shadow: none;
border-color: var(--ooui-disabled-border);
}
.oo-ui-toggleSwitchWidget {
background-color: var(--ooui-input);
border-color: var(--ooui-input-border);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled .oo-ui-toggleSwitchWidget-grip {
background-color: var(--ooui-input);
border-color: var(--ooui-input-border);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:hover {
background-color: var(--ooui-input);
border-color: var(--ooui-accent);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:hover .oo-ui-toggleSwitchWidget-grip {
background-color: var(--ooui-input);
border-color: var(--ooui-accent);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:active,
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:active:hover,
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:active:focus {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
box-shadow: inset 0 0 0 1px var(--ooui-progressive--hover);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:active .oo-ui-toggleSwitchWidget-grip,
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:active:hover .oo-ui-toggleSwitchWidget-grip,
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:active:focus .oo-ui-toggleSwitchWidget-grip {
background-color: var(--ooui-input);
border-color: var(--ooui-input);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:focus .oo-ui-toggleSwitchWidget-grip {
border-color: var(--ooui-accent);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled.oo-ui-toggleWidget-on {
background-color: var(--ooui-progressive);
border-color: var(--ooui-progressive);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled.oo-ui-toggleWidget-on .oo-ui-toggleSwitchWidget-grip {
background-color: var(--ooui-input);
border-color: var(--ooui-input);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled.oo-ui-toggleWidget-on:hover {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled.oo-ui-toggleWidget-on:active,
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled.oo-ui-toggleWidget-on:active:hover {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled.oo-ui-toggleWidget-on:focus {
border-color: var(--ooui-progressive);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled.oo-ui-toggleWidget-on:focus::before {
border-color: #fff;
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-disabled {
background-color: var(--ooui-disabled);
border-color: var(--ooui-disabled);
}
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled > .oo-ui-buttonElement-button {
color: var(--ooui-text);
}
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled > .oo-ui-buttonElement-button:hover {
color: var(--ooui-text);
}
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled > .oo-ui-buttonElement-button:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled.oo-ui-buttonElement-pressed > input.oo-ui-buttonElement-button,
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled > .oo-ui-buttonElement-button:active {
color: var(--ooui-text);
}
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button,
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button:hover {
color: var(--ooui-text);
}
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button:active,
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive.oo-ui-buttonElement-pressed > .oo-ui-buttonElement-button {
color: var(--ooui-text);
border-color: var(--ooui-text);
}
.oo-ui-buttonElement-frameless.oo-ui-widget-disabled > .oo-ui-buttonElement-button {
color: var(--ooui-disabled-text);
}
.oo-ui-buttonElement-framed.oo-ui-widget-disabled > .oo-ui-buttonElement-button {
background-color: var(--ooui-disabled);
border-color: var(--ooui-disabled-border);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled > .oo-ui-buttonElement-button {
background-color: var(--ooui-normal);
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled > .oo-ui-buttonElement-button:hover {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled > .oo-ui-buttonElement-button:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-buttonElement-active > .oo-ui-buttonElement-button {
background-color: var(--ooui-progressive--hover);
color: #fff;
border-color: var(--ooui-progressive--hover);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-buttonElement-active > .oo-ui-buttonElement-button:focus {
border-color: var(--ooui-progressive--hover);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled > .oo-ui-buttonElement-button:active,
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-buttonElement-pressed > .oo-ui-buttonElement-button {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive {
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button {
color: var(--ooui-text);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button:hover {
background-color: var(--ooui-normal--hover);
border-color: var(--ooui-progressive--hover);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-destructive > .oo-ui-buttonElement-button {
color: var(--ooui-text);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-destructive > .oo-ui-buttonElement-button:hover {
background-color: var(--ooui-normal--hover);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button {
background-color: var(--ooui-progressive);
border-color: var(--ooui-progressive);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button:hover {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent), inset 0 0 0 2px #fff;
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button:active,
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive.oo-ui-buttonElement-pressed > .oo-ui-buttonElement-button,
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive.oo-ui-buttonElement-active > .oo-ui-buttonElement-button,
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive.oo-ui-popupToolGroup-active > .oo-ui-buttonElement-button {
color: #fff;
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
}
.oo-ui-pendingElement-pending {
background-image: var(--ooui-pending-background-image);
background-size: 200%;
animation: oo-ui-pendingElement-stripes 6s linear infinite;
}
@keyframes oo-ui-pendingElement-stripes {
100% {
background-position: 100%;
}
}
.oo-ui-messageDialog-content > .oo-ui-window-foot {
outline-color: var(--ooui-interface-border);
}
.oo-ui-messageDialog-message {
color: var(--ooui-text);
}
.oo-ui-messageDialog-actions-horizontal .oo-ui-actionWidget {
border-right-color: var(--ooui-interface-border);
}
.oo-ui-messageDialog-actions-vertical .oo-ui-actionWidget {
border-bottom-color: var(--ooui-interface-border);
}
.oo-ui-processDialog-content .oo-ui-window-head,
.oo-ui-processDialog-content .oo-ui-window-foot {
outline-color: var(--ooui-interface-border);
}
.oo-ui-processDialog .oo-ui-actionWidget > .oo-ui-buttonElement-button {
border-top-color: transparent;
border-bottom-color: transparent;
}
.oo-ui-processDialog .oo-ui-actionWidget > .oo-ui-buttonElement-button:hover,
.oo-ui-processDialog .oo-ui-actionWidget > .oo-ui-buttonElement-button:active {
border-top-color: transparent;
border-bottom-color: transparent;
}
.oo-ui-processDialog .oo-ui-actionWidget:not( .oo-ui-flaggedElement-progressive ):not( .oo-ui-flaggedElement-destructive ) > .oo-ui-buttonElement-button:hover,
.oo-ui-processDialog .oo-ui-actionWidget:not( .oo-ui-flaggedElement-progressive ):not( .oo-ui-flaggedElement-destructive ) > .oo-ui-buttonElement-button:active {
border-right-color: var(--ooui-interface-border);
border-left-color: transparent;
}
.oo-ui-processDialog .oo-ui-actionWidget:not( .oo-ui-flaggedElement-progressive ):not( .oo-ui-flaggedElement-destructive ) > .oo-ui-buttonElement-button:focus {
border-color: var(--ooui-accent);
}
.oo-ui-processDialog-actions-safe .oo-ui-actionWidget > .oo-ui-buttonElement-button,
.oo-ui-processDialog-actions-other .oo-ui-actionWidget > .oo-ui-buttonElement-button {
border-right-color: var(--ooui-normal-border);
border-left-color: transparent;
}
.oo-ui-processDialog-actions-safe .oo-ui-widget-enabled.oo-ui-iconElement:not( .oo-ui-labelElement ) > .oo-ui-buttonElement-button:hover {
background-color: var(--ooui-normal--hover);
border-right-color: var(--ooui-interface-border);
}
.oo-ui-windowManager-modal > .oo-ui-dialog {
background-color: var(--ooui-window-background);
}
.oo-ui-windowManager-modal > .oo-ui-dialog > .oo-ui-window-frame {
background-color: var(--ooui-interface);
}
.oo-ui-windowManager-modal.oo-ui-windowManager-floating > .oo-ui-dialog > .oo-ui-window-frame {
border-color: var(--ooui-interface-border);
}
.oo-ui-window {
color: var(--ooui-text);
}
.oo-ui-toolbar-bar {
background-color: var(--ooui-interface);
color: var(--ooui-text);
}
.oo-ui-toolbar-position-top > .oo-ui-toolbar-bar {
border-bottom-color: var(--body-mid);
}
.oo-ui-toolbar-bar .oo-ui-bookletLayout > .oo-ui-menuLayout-menu {
border-right-color: var(--body-mid);
}
.oo-ui-tool.oo-ui-widget-enabled > .oo-ui-tool-link:hover {
background-color: var(--ooui-normal--hover);
}
.oo-ui-tool.oo-ui-widget-enabled > .oo-ui-tool-link:focus {
outline: 1px solid var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-tool.oo-ui-widget-enabled > .oo-ui-tool-link:active,
.oo-ui-tool.oo-ui-widget-enabled.oo-ui-tool-active > .oo-ui-tool-link,
.oo-ui-tool.oo-ui-widget-enabled.oo-ui-popupToolGroup-active > .oo-ui-tool-link {
background-color: var(--ooui-normal--hover);
color: var(--ooui-accent);
box-shadow: none;
}
.oo-ui-tool.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive > .oo-ui-tool-link {
background-color: var(--ooui-progressive);
}
.oo-ui-tool.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive > .oo-ui-tool-link:hover {
background-color: var(--ooui-progressive--hover);
}
.oo-ui-tool.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive > .oo-ui-tool-link:focus {
box-shadow: inset 0 0 0 1px var(--ooui-accent), inset 0 0 0 2px #fff;
}
.oo-ui-tool.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive > .oo-ui-tool-link:active,
.oo-ui-tool.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive.oo-ui-tool-active > .oo-ui-tool-link {
background-color: var(--ooui-progressive--hover);
}
.oo-ui-listToolGroup-tools .oo-ui-tool.oo-ui-widget-enabled {
background-color: var(--ooui-normal);
}
.oo-ui-listToolGroup-tools .oo-ui-tool.oo-ui-widget-enabled:hover {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
}
.oo-ui-listToolGroup-tools .oo-ui-tool-active.oo-ui-widget-enabled .oo-ui-tool-link .oo-ui-tool-title {
color: var(--ooui-progressive);
}
.oo-ui-menuToolGroup {
border-left-color: var(--body-mid);
border-right-color: var(--body-mid);
}
.oo-ui-popupToolGroup-tools {
background-color: var(--ooui-interface);
border-color: var(--body-mid);
}
.oo-ui-popupToolGroup.oo-ui-widget-enabled > .oo-ui-popupToolGroup-handle:hover {
background-color: var(--ooui-normal--hover);
}
.oo-ui-popupToolGroup.oo-ui-widget-enabled > .oo-ui-popupToolGroup-handle:focus {
outline: 1px solid var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-toolbar-actions .oo-ui-popupToolGroup.oo-ui-widget-enabled > .oo-ui-popupToolGroup-handle:hover {
border-right-color: var(--ooui-normal--hover);
}
.oo-ui-popupToolGroup-tools .oo-ui-tool.oo-ui-widget-enabled .oo-ui-tool-link:focus {
box-shadow: inset 0 0 0 2px var(--ooui-accent);
}
.oo-ui-popupToolGroup-tools .oo-ui-tool-active.oo-ui-widget-enabled .oo-ui-tool-link .oo-ui-tool-title {
color: var(--ooui-progressive);
}
.oo-ui-popupToolGroup.oo-ui-popupToolGroup-active > .oo-ui-popupToolGroup-handle {
background-color: var(--ooui-normal);
color: var(--ooui-accent);
}
.oo-ui-popupToolGroup.oo-ui-popupToolGroup-active > .oo-ui-popupToolGroup-handle:hover {
background-color: var(--ooui-normal--hover);
color: var(--ooui-accent);
}
.oo-ui-bookletLayout-outlinePanel > .oo-ui-outlineControlsWidget {
border-top-color: var(--ooui-interface-border);
}
.oo-ui-bookletLayout > .oo-ui-menuLayout-menu {
border-right-color: var(--ooui-interface-border);
}
.oo-ui-fieldLayout-disabled > .oo-ui-fieldLayout-body > .oo-ui-fieldLayout-header > .oo-ui-labelElement-label {
color: var(--ooui-disabled-text);
}
.oo-ui-panelLayout-framed {
border-color: var(--sidebar);
}
.oo-ui-icon-settings {
background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' width='20' height='20' viewBox='0 0 20 20'%3E%3Ctitle%3Esettings%3C/title%3E%3Cg transform='translate(10 10)'%3E%3Cpath id='a' d='M1.5-10h-3l-1 6.5h5m0 7h-5l1 6.5h3'/%3E%3Cuse xlink:href='%23a' transform='rotate(45)'/%3E%3Cuse xlink:href='%23a' transform='rotate(90)'/%3E%3Cuse xlink:href='%23a' transform='rotate(135)'/%3E%3C/g%3E%3Cpath d='M10 2.5a7.5 7.5 0 0 0 0 15 7.5 7.5 0 0 0 0-15v4a3.5 3.5 0 0 1 0 7 3.5 3.5 0 0 1 0-7'/%3E%3C/svg%3E");
}
.oo-ui-icon-clear {
background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 20 20'%3E%3Ctitle%3Eclear%3C/title%3E%3Cpath d='M10 0a10 10 0 1 0 10 10A10 10 0 0 0 10 0zm5.66 14.24-1.41 1.41L10 11.41l-4.24 4.25-1.42-1.42L8.59 10 4.34 5.76l1.42-1.42L10 8.59l4.24-4.24 1.41 1.41L11.41 10z'/%3E%3C/svg%3E");
}
.mw-widget-dateInputWidget-handle {
background-color: var(--ooui-input);
color: var(--ooui-text);
border-color: var(--ooui-input-border);
}
.mw-widget-dateInputWidget-calendar {
background-color: var(--ooui-interface);
}
.mw-widget-dateInputWidget.oo-ui-widget-enabled .mw-widget-dateInputWidget-handle:hover {
border-color: var(--ooui-input-border--hover);
}
.mw-widget-calendarWidget {
border-color: var(--ooui-interface-border);
}
.mw-widget-calendarWidget:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.mw-widget-calendarWidget-day,
.mw-widget-calendarWidget-day-heading {
color: var(--ooui-text);
}
.mw-widget-calendarWidget-day-additional {
color: var(--ooui-text);
opacity: 0.67;
}
.mw-widget-calendarWidget-day-today {
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.mw-widget-calendarWidget-item:hover {
background-color: var(--ooui-progressive);
}
.mw-widget-calendarWidget-item-selected {
background-color: var(--ooui-progressive--hover);
}
.mw-widgets-datetime-calendarWidget {
background-color: var(--ooui-interface);
border-color: var(--ooui-interface-border);
}
.mw-widgets-datetime-calendarWidget:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent), 0 2px 2px 0 rgba(0, 0, 0, 0.25);
}
.mw-widgets-datetime-calendarWidget-grid .mw-widgets-datetime-calendarWidget-cell.mw-widgets-datetime-calendarWidget-extra .oo-ui-buttonElement-button .oo-ui-labelElement-label {
color: var(--subtle-color);
}
.mw-widgets-datetime-calendarWidget-grid .mw-widgets-datetime-calendarWidget-cell.mw-widgets-datetime-calendarWidget-selected .oo-ui-buttonElement-button {
background-color: var(--ooui-progressive--hover);
}
.mw-widgets-datetime-dateTimeInputWidget-handle {
background-color: var(--ooui-input);
color: var(--ooui-text);
border-color: var(--ooui-input-border);
}
.mw-widgets-datetime-dateTimeInputWidget.oo-ui-widget-enabled.mw-widgets-datetime-dateTimeInputWidget-handle:hover {
border-color: var(--ooui-input-border--hover);
}
.mw-widgets-datetime-dateTimeInputWidget.oo-ui-widget-enabled:hover input,
.mw-widgets-datetime-dateTimeInputWidget.oo-ui-widget-enabled:hover textarea {
border-color: var(--ooui-input-border--hover);
}
.mw-widgets-datetime-dateTimeInputWidget.oo-ui-widget-enabled .mw-widgets-datetime-dateTimeInputWidget-editField:hover {
background-color: var(--ooui-normal);
}
.ve-activated .ve-init-mw-desktopArticleTarget-originalContent #catlinks:hover {
background: var(--ooui-normal--hover);
}
.ve-ui-overlay {
font-family: inherit;
}
.oo-ui-toolbar-position-top .ve-ui-toolbarDialog-position-above {
border-top-color: var(--body-mid);
}
.ve-ce-branchNode-blockSlug,
.ve-ce-branchNode-newSlug {
outline-color: var(--body-border);
background-color: var(--ooui-interface);
}
.ve-ui-specialCharacterPage h3 {
color: var(--byline-color);
}
.ve-ui-specialCharacterPage-character {
border-color: var(--body-mid);
}
.ve-ui-specialCharacterPage-character:hover {
border-color: var(--body-dark);
}
.ve-ce-linkAnnotation.ve-ce-annotation-active {
box-shadow: 0 0 0 1px var(--body-mid);
background: none;
}
.ve-ui-desktopContext .ve-ui-linkContextItem .ve-ui-linkContextItem-label {
border-color: var(--body-border);
}
.ve-ui-mwHelpPopupTool-version-label,
.ve-ui-mwHelpPopupTool-version-link,
.ve-ui-mwHelpPopupTool-version-date {
color: var(--byline-color);
}
.ve-ce-tableCellableNode {
border-color: var(--body-mid);
}
.ve-ce-mwReferencesListNode-muted {
color: var(--byline-color);
}
.ve-ui-mwTemplatePage-description,
.ve-ui-mwParameterPage-label,
.ve-ui-mwParameterPage-description-required,
.ve-ui-mwParameterPage-description-deprecated {
color: var(--byline-color);
}
.mw-widget-titleWidget-menu .mw-widget-titleOptionWidget-description {
color: var(--byline-color);
}
.ve-ui-mwGalleryDialog-menuLayout > .oo-ui-menuLayout-menu,
.ve-ui-mwGalleryDialog-innerMenuLayout > .oo-ui-menuLayout-menu,
.ve-ui-mwGalleryDialog .ve-ui-mwGalleryDialog-image-container,
.ve-ui-targetWidget {
border-color: var(--body-border);
}
.ve-ui-targetWidget:not(.oo-ui-pendingElement-pending) {
background-color: var(--body-main);
}
.ve-ui-mwSaveDialog {
color: var(--ooui-text);
}
.ve-ui-mwSaveDialog-options {
background-color: var(--ooui-interface);
border-color: var(--body-border);
}
.ve-ui-mwSaveDialog-summary {
background-color: var(--ooui-input);
}
.ve-ui-mwSaveDialog-editSummary-count {
border-color: var(--body-border);
}
.ve-ui-mwSaveDialog-license {
color: var(--byline-color);
}
.ve-ui-mwReferenceContextItem-muted {
color: var(--byline-color);
}
.ve-ui-mwNoticesPopupTool-items > div:not(:first-child),
.ve-ui-mwHelpPopupTool-item:not(:first-child) {
border-color: var(--body-border);
}
.ve-ui-mwTransclusionOutlineControlsWidget {
background-color: var(--ooui-interface);
border-top-color: var(--body-border);
}
.ve-ui-mwTransclusionOutlineTemplateWidget-sticky {
background-color: var(--ooui-interface);
}
.ve-ui-mwTransclusionOutlineTemplateWidget .ve-ui-mwTransclusionOutlineParameterWidget.oo-ui-optionWidget-highlighted {
color: var(--ooui-text);
}
.ve-ui-mwTransclusionOutlineTemplateWidget-no-template-parameters {
color: var(--subtle-color);
}
.ve-ui-mwParameterPage-undocumentedLabel {
color: var(--subtle-color);
}
.ve-ui-mwTwoPaneTransclusionDialogLayout > .oo-ui-menuLayout-menu {
border-right: var(--body-border);
}
.ve-ui-mwParameterPage-doc-required,
.ve-ui-mwParameterPage-doc-deprecated,
.ve-ui-mwParameterPage-inlineDescription .ve-ui-mwParameterPage-doc-example {
color: var(--byline-color);
}
.ve-ui-expandableContent-toggle {
background-color: var(--ooui-interface);
}
.ve-ui-expandableContent-fade {
background: linear-gradient(to right, rgba(255, 255, 255, 0) 0, var(--ooui-interface) 90%);
}
.ve-ui-commandHelpDialog-shortcut > kbd,
.ve-ui-commandHelpDialog-sequence > kbd {
background-color: var(--keypress-background);
color: var(--keypress-color);
border-color: var(--keypress-border);
box-shadow: none;
text-shadow: none;
}
.ve-init-mw-desktopArticleTarget-toolbarPlaceholder-floating .ve-init-mw-desktopArticleTarget-toolbarPlaceholder-bar {
background: var(--ooui-interface);
}
.ve-init-mw-desktopArticleTarget-toolbarPlaceholder-bar {
border-bottom-color: var(--body-mid);
}
figure[typeof~='mw:File/Thumb'],
figure[typeof~='mw:File/Frame'],
figure[typeof~='mw:Image/Thumb'],
figure[typeof~='mw:Video/Thumb'],
figure[typeof~='mw:Image/Frame'],
figure[typeof~='mw:Video/Frame'] {
border: none;
background-color: var(--thumb-bg);
}
figure[typeof~='mw:File/Thumb'] > a:first-child > *:first-child:not( .mw-broken-media ),
figure[typeof~='mw:File/Frame'] > a:first-child > *:first-child:not( .mw-broken-media ),
figure[typeof~='mw:Image/Thumb'] > a:first-child > *:first-child:not( .mw-broken-media ),
figure[typeof~='mw:Video/Thumb'] > a:first-child > *:first-child:not( .mw-broken-media ),
figure[typeof~='mw:Image/Frame'] > a:first-child > *:first-child:not( .mw-broken-media ),
figure[typeof~='mw:Video/Frame'] > a:first-child > *:first-child:not( .mw-broken-media ) {
border: none;
background: var(--thumb-bg);
}
figure[typeof~='mw:File/Thumb'] > figcaption,
figure[typeof~='mw:File/Frame'] > figcaption,
figure[typeof~='mw:Image/Thumb'] > figcaption,
figure[typeof~='mw:Video/Thumb'] > figcaption,
figure[typeof~='mw:Image/Frame'] > figcaption,
figure[typeof~='mw:Video/Frame'] > figcaption {
border: none;
background-color: var(--thumb-caption-bg);
padding: 4px 6px;
}
:root {
--keypress-background: #eee;
--keypress-border: #ccc;
--keypress-color: #333;
}
.shortcut {
border: 1px solid var(--body-border);
background: var(--body-light);
float: right;
font-size: 0.8em;
margin: 0.5em 0em 0.5em 1em;
padding: 0.5em;
text-align: center;
}
.hatnote,
.seealso {
font-style: italic;
}
.hatnote i,
.seealso i {
font-style: normal;
}
div.hatnote,
div.seealso {
margin: 0.5em 1.6em;
}
div.hatnote + div.hatnote,
div.hatnote + div.seealso,
div.seealso + div.hatnote,
div.seealso + div.seealso {
margin-top: -0.5em;
}
.keypress {
background: var(--keypress-background);
color: var(--keypress-color);
font-family: inherit;
border: 1px solid var(--keypress-border);
border-radius: 2px;
font-size: 0.9em;
margin: 0 0.1em;
padding: 0.1em 0.4em;
white-space: nowrap;
}
:root {
--documentation-background: #f9fafa;
--documentation-link-color: #e4eaee;
--documentation-headers-color: #fff;
--documentation-header-background: #949eaa;
--documentation-subheader-background: #808c9a;
--documentation-border: #e4eaee;
}
.documentation {
background: var(--documentation-background);
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
margin: 1em 0;
}
.documentation pre,
.documentation code {
background-color: var(--documentation-background);
border-color: var(--documentation-border);
}
.documentation h2,
.documentation hr {
border-color: var(--documentation-border);
}
.documentation-header {
color: var(--documentation-headers-color);
background: var(--documentation-header-background);
font-weight: bold;
padding: 1em 1.5em;
}
.documentation-title {
font-size: 1.25em;
}
.documentation-subheader {
color: var(--documentation-headers-color);
background: var(--documentation-subheader-background);
padding: 0.5em 1.5em;
}
.documentation-subheader a,
.documentation-subheader a:visited,
.documentation-subheader a:active {
color: var(--documentation-link-color);
}
.documentation-documentation,
.documentation-links {
font-size: 0.85em;
}
.documentation-content {
padding: 1em 1.5em;
}
.mw-templatedata-doc-params dl:not(:empty) {
column-count: 3;
border-top: 1px solid var(--body-border);
margin-bottom: 0.5em;
}
.mw-templatedata-doc-params dt::after {
content: ":";
}
.mw-templatedata-doc-params dd,
.mw-templatedata-doc-params dt {
margin: 0.1em 2em;
min-width: auto;
}
.mw-templatedata-doc-muted {
color: var(--subtle-color);
font-style: italic;
}
:root {
--infobox-text-color: var(--text-color);
}
ol.references,
.reflist {
font-size: 90%;
}
.reflist {
list-style-type: decimal;
}
.reflist .references {
font-size: 100%;
list-style-type: inherit;
}
.reflist-lower-alpha {
list-style-type: lower-alpha;
}
ol.references li:target,
sup.reference:target {
background-color: var(--body-light);
}
.hideQuotes .refhide {
display: none;
}
:root {
--messagebox-obsolete-background: #cfcfcf;
--messagebox-obsolete-border: #464646;
--messagebox-obsolete-color: var(--text-color);
--messagebox-obsolete-link-color: #6c6c6c;
--messagebox-info-background: #ebebeb;
--messagebox-info-border: #898989;
--messagebox-info-color: var(--text-color);
--messagebox-info-link-color: #6c6c6c;
--messagebox-action-background: #c7e8fa;
--messagebox-action-border: #0b5884;
--messagebox-action-color: var(--text-color);
--messagebox-action-link-color: #03436b;
--messagebox-warn-background: #dfc0ba;
--messagebox-warn-border: #861c10;
--messagebox-warn-color: var(--text-color);
--messagebox-warn-link-color: #8e221a;
--messagebox-safe-background: #d8f0d3;
--messagebox-safe-border: #1b8408;
--messagebox-safe-color: var(--text-color);
--messagebox-safe-link-color: #1b8408;
--messagebox-disambig-background: #ebebeb;
--messagebox-disambig-border: #898989;
--messagebox-disambig-color: var(--text-color);
--messagebox-disambig-link-color: #6c6c6c;
--messagebox-discord-background: #5865f2;
--messagebox-discord-border: #4c57d0;
--messagebox-discord-link-color: #d2e5fc;
}
.mw-message-box,
.mw-message-box-error,
.mw-message-box-warning,
.mw-message-box-success,
.usermessage {
color: var(--text-color);
}
.messagebox {
width: 65%;
margin: 0.5em auto;
border-left: 15px solid;
border-color: var(--body-dark);
background-color: var(--body-light);
box-sizing: border-box;
}
.messagebox.obsolete {
background-color: var(--messagebox-obsolete-background);
border-color: var(--messagebox-obsolete-border);
color: var(--messagebox-obsolete-color);
}
.messagebox.obsolete a,
.messagebox.obsolete a:visited,
.messagebox.obsolete a:active {
color: var(--messagebox-obsolete-link-color);
}
.messagebox.info {
background-color: var(--messagebox-info-background);
border-color: var(--messagebox-info-border);
color: var(--messagebox-info-color);
}
.messagebox.info a,
.messagebox.info a:visited,
.messagebox.info a:active {
color: var(--messagebox-info-link-color);
}
.messagebox.action {
background-color: var(--messagebox-action-background);
border-color: var(--messagebox-action-border);
color: var(--messagebox-action-color);
}
.messagebox.action a,
.messagebox.action a:visited,
.messagebox.action a:active {
color: var(--messagebox-action-link-color);
}
.messagebox.warn {
background-color: var(--messagebox-warn-background);
border-color: var(--messagebox-warn-border);
color: var(--messagebox-warn-color);
}
.messagebox.warn a,
.messagebox.warn a:visited,
.messagebox.warn a:active {
color: var(--messagebox-warn-link-color);
}
.messagebox.safe {
background-color: var(--messagebox-safe-background);
border-color: var(--messagebox-safe-border);
color: var(--messagebox-safe-color);
}
.messagebox.safe a,
.messagebox.safe a:visited,
.messagebox.safe a:active {
color: var(--messagebox-safe-link-color);
}
.messagebox.disambig {
background-color: var(--messagebox-disambig-background);
border-color: var(--messagebox-disambig-border);
color: var(--messagebox-disambig-color);
}
.messagebox.disambig a,
.messagebox.disambig a:visited,
.messagebox.disambig a:active {
color: var(--messagebox-disambig-link-color);
}
.messagebox.discord {
background-color: var(--messagebox-discord-background);
border-color: var(--messagebox-discord-border);
color: #fff;
}
.messagebox.discord a,
.messagebox.discord a:visited,
.messagebox.discord a:active {
color: var(--messagebox-discord-link-color);
}
.messagebox.discord a.external,
.messagebox.discord a:visited.external,
.messagebox.discord a:active.external {
font-style: italic;
}
.messagebox.stub {
width: 40%;
}
.messagebox.hasdialogue {
padding: 0 10px;
width: auto;
}
:root {
--byline-arrow-filter: invert(29%) sepia(0%) saturate(376%) hue-rotate(172deg) brightness(87%) contrast(80%);
--tile-border-color: #cabe9b;
--tile-background-color: #f9f3eb;
--tile-link-button-color: #f5e9db;
--tile-link-button-highlight-color: #dfccb0;
--tile-dark-color: #fff;
--tile-dark-bg: #5d6773;
--tile-dark-link-color: #ccc;
--tile-dark-byline-color: rgba(255, 255, 255, 0.7);
--tile-dark-header-color: #fff;
}
.tile {
background: var(--tile-background-color);
border: 1px solid var(--tile-border-color);
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
padding: 1.5em 2em 1em;
max-width: 40em;
}
.tile h2 {
font-size: 1.4em;
font-weight: bold;
border: none;
margin: 0 0 0.4em;
}
.tile .byline + h2 {
margin-top: -0.5em;
}
.tile.dark {
color: var(--tile-dark-color);
background: var(--tile-dark-bg);
border: none;
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.3);
}
.tile.dark h2 {
color: var(--tile-dark-header-color);
}
.tile.dark a {
color: var(--tile-dark-link-color);
}
.tile.dark .byline {
color: var(--tile-dark-byline-color);
}
.byline {
font-size: 0.9em;
color: var(--byline-color);
}
.byline a {
color: var(--byline-color);
}
.tile-row {
display: flex;
flex-flow: row wrap;
margin-bottom: 1em;
}
.tile-halves {
display: flex;
flex-flow: row wrap;
border: 1px solid var(--tile-border-color);
background: var(--tile-background-color);
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
}
.tile-halves h2 {
font-size: 1.4em;
font-weight: bold;
border: none;
margin: 0 0 0.4em;
}
.tile-halves .byline + h2 {
margin-top: -0.5em;
}
.tile-top {
width: 100%;
padding: 1.3rem 1.5rem 0.6rem;
}
.tile-top.tile-image {
display: flex;
align-items: center;
background-color: var(--byline-color);
overflow: hidden;
padding: 0;
height: 13vw;
max-height: 12em;
transition: 0.4s ease-out;
}
.tile-halves:hover .tile-top.tile-image img {
transform: scale(1.1);
transition: 0.5s ease-out;
}
.tile-top.tile-image a {
width: 100%;
}
.tile-top.tile-image img {
width: 100%;
object-fit: cover;
max-height: 200px;
transition: 0.4s ease-out;
}
.tile-bottom {
background: var(--tile-background-color);
border-top: 1px solid var(--tile-border-color);
width: 100%;
padding: 1rem 1.5rem 0.6rem;
}
.tile-bottom.link-button {
align-self: flex-end;
padding: 0;
}
.tile-bottom.link-button a {
display: block;
text-align: center;
padding: 0.75em 1.5em 0.8em;
text-decoration: none;
}
.tile-bottom.read-more {
background: var(--tile-link-button-color);
transition: 0.3s ease-out;
}
.tile-bottom.read-more a {
color: var(--byline-color);
font-weight: bold;
text-align: right;
}
.tile-bottom.read-more:hover {
background: var(--tile-link-button-highlight-color);
}
.tile-bottom.read-more:hover .arrow {
transform: translateX(50%);
}
.tile-bottom.read-more .arrow {
filter: var(--byline-arrow-filter);
margin-left: 0.4em;
transition: 0.3s ease-out;
}
body.page-Main_Page.action-view .catlinks,
body.page-Main_Page.action-view #contentSub,
body.page-Main_Page.action-view #firstHeading,
body.page-Main_Page.action-view #siteNotice {
display: none;
}
body.page-Main_Page .mw-parser-output {
max-width: 75em;
margin: 0 auto;
}
body.page-Main_Page.action-view .catlinks,
body.page-Main_Page.action-view #contentSub,
body.page-Main_Page.action-view #siteNotice {
display: none;
}
.mainpage-header {
display: flex;
margin: 2.6em 1.75em 1.5em;
}
.mainpage-header .header-intro {
flex: 2;
}
.mainpage-header .header-intro h1 {
font-size: 2.5em;
font-weight: bold;
border: none;
margin: 0 0 0.15em;
}
.mainpage-header .header-intro p {
font-size: 1.1em;
line-height: 1.7em;
}
.mainpage-header .header-stats {
flex: 1;
display: flex;
justify-content: center;
align-items: center;
margin-top: -1em;
}
.mainpage-body {
display: grid;
grid-template-areas: "event event event" "update update update" "content content content" "left left right";
gap: 0.9rem;
grid-template-columns: repeat(3, 1fr);
}
.mainpage-body h2 a {
color: var(--text-color);
}
.mainpage-body .tile {
padding-left: 1.75em;
padding-right: 1.75em;
max-width: 100%;
}
.mainpage-body .tile-row {
width: 100%;
margin-bottom: 0;
}
.mainpage-body .tile-row {
display: grid;
gap: 0.9rem;
}
.mainpage-left {
grid-area: left;
flex: 2;
display: flex;
flex-flow: column wrap;
}
.mainpage-left > * {
margin: 0 0 0.9rem;
}
.mainpage-right {
grid-area: right;
flex: 1;
display: flex;
flex-flow: column wrap;
}
.mainpage-right > * {
margin: 0 0 0.9rem;
}
.arrow {
background: url('filepath://White-chevron.svg') no-repeat;
display: inline-block;
height: 0.7rem;
width: 0.45rem;
vertical-align: middle;
}
.arrow.dark {
filter: invert(80%);
}
.mainpage-contents {
grid-area: content;
grid-template-columns: repeat(6, 1fr);
}
.mainpage-contents .tile-halves {
flex: 1;
}
.mainpage-contents .tile-top {
height: 4.5rem;
position: relative;
}
.mainpage-contents h2 {
margin: 0;
padding: 0;
}
.mainpage-contents .tile-bottom.link-button a {
padding: 0.75em 0.2em;
}
.popular-pages ul {
display: grid;
grid-template-columns: repeat(3, 1fr);
grid-gap: 0.6em;
margin: 1em 0 0.7em 0;
}
.mp-popular-page-light {
display: flex;
align-items: center;
background-color: var(--button-background);
transition: 100ms;
}
.mp-popular-page-light a {
flex: 1;
display: block;
color: #fff;
font-weight: bold;
text-align: center;
text-decoration: none;
padding: 0.7em 1em;
}
.mp-popular-page-light:hover {
filter: brightness(115%);
transition: 100ms;
}
.mainpage-discord {
border: none;
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.3);
}
.mainpage-discord .tile-top {
display: flex;
align-items: center;
background: #5865f2;
padding: 1em 1.75em;
}
.mainpage-discord .tile-top a {
flex: 1;
position: relative;
text-decoration: none;
}
.mainpage-discord .tile-top a:hover .arrow {
transform: translateX(50%);
}
.mainpage-discord .tile-bottom {
background: #525ee0;
border: none;
padding: 1em 1.75em;
}
.mainpage-discord .tile-bottom p {
color: #fff;
font-weight: bold;
font-size: 0.9em;
text-align: center;
text-transform: uppercase;
letter-spacing: 0.03em;
margin: 0;
}
.mainpage-discord .partner-icon {
margin-right: 0.75em;
}
.mainpage-discord .server-name {
color: #fff;
font-weight: bold;
font-size: 1.25em;
margin: 0.5em 0 -0.15em;
}
.mainpage-discord .server-tagline {
color: rgba(255, 255, 255, 0.9);
margin-bottom: 0.5em;
}
.mainpage-discord .arrow {
position: absolute;
top: calc(50% - .5em);
right: 0;
height: 1em;
width: 0.7em;
background-size: 0.7em 1em;
transition: 0.3s ease-out;
}
.mainpage-editing {
border: none;
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.3);
}
.mainpage-editing .tile-top {
background: #438ab5;
}
.mainpage-editing .tile-bottom {
background: #3980ab;
border: none;
padding: 0.8rem 1.5rem 0.4rem;
}
.mainpage-editing h2,
.mainpage-editing a {
color: #fff;
}
.mainpage-editing p {
color: rgba(255, 255, 255, 0.9);
}
.mainpage-editing ul {
list-style-image: url('filepath://Transparent-chevron.svg');
}
@media only screen and (max-width: 1200px) {
.mainpage-contents {
grid-template-columns: repeat(3, 1fr);
}
}
@media only screen and (max-width: 1000px) {
.mainpage-body {
grid-template-areas: "event event event" "update update update" "content content content" "left left left" "right right right";
}
.mainpage-recent-updates {
grid-template-columns: repeat(2, 1fr);
}
.mainpage-recent-updates .tile-halves:last-child {
display: none;
}
.mainpage-recent-updates .tile-halves:hover .tile-top img {
transform: scale(1.04);
}
.mainpage-recent-updates .tile-top {
height: 18vw;
min-height: 9em;
}
.mainpage-header .header-stats {
display: none;
}
.mainpage-left > *:last-child,
.mainpage-right > *:last-child {
margin-bottom: 0;
}
.popular-pages ul {
grid-template-columns: repeat(2, 1fr);
}
}
@media only screen and (max-width: 720px) {
.mainpage-recent-updates {
grid-template-columns: none;
}
.mainpage-recent-updates .tile-halves:last-child {
display: flex;
}
.mainpage-contents {
grid-template-columns: repeat(2, 1fr);
}
}
.mw-prefs-buttons {
background-color: var(--body-main);
border-top-color: var(--body-border);
box-shadow: none;
}
.mw-prefs-tabs-wrapper.oo-ui-panelLayout-framed,
.mw-prefs-tabs > .oo-ui-menuLayout-content > .oo-ui-indexLayout-stackLayout > .oo-ui-tabPanelLayout {
border-color: var(--body-border);
}
.mw-htmlform-ooui .mw-htmlform-matrix tbody tr:nth-child(even) td {
background-color: var(--body-light);
}
.mw-htmlform-ooui .mw-htmlform-matrix tbody tr:hover td {
background-color: var(--body-mid);
}
:root {
--rc-positive-color: #407813;
--rc-negative-color: #b41e0f;
}
.mw-plusminus-pos {
color: var(--rc-positive-color);
}
.mw-plusminus-neg {
color: var(--rc-negative-color);
}
.client-js .mw-recentchanges-toplinks:not(.mw-recentchanges-toplinks-collapsed) {
border-color: var(--body-border);
background-color: var(--body-light);
border-radius: 2px;
}
.mw-rcfilters-ui-filterTagMultiselectWidget-wrapper-content-title {
color: var(--text-color);
}
.mw-rcfilters-ui-filterTagMultiselectWidget-emptyFilters {
color: var(--byline-color);
}
.mw-rcfilters-ui-filterTagMultiselectWidget.oo-ui-widget-enabled .oo-ui-tagMultiselectWidget-handle {
background-color: var(--ooui-interface);
border-color: var(--ooui-interface-border);
}
.mw-rcfilters-ui-filterTagMultiselectWidget-views-select-widget.oo-ui-widget {
border-color: var(--ooui-interface-border);
}
.mw-rcfilters-collapsed .mw-rcfilters-ui-filterTagMultiselectWidget {
border-bottom-color: var(--ooui-interface-border);
}
.mw-rcfilters-ui-menuSelectWidget-footer {
background-color: var(--ooui-interface);
border-color: var(--ooui-interface-border);
}
.mw-rcfilters-ui-viewSwitchWidget label.oo-ui-labelWidget {
color: var(--byline-color);
}
.mw-rcfilters-ui-tagItemWidget-popup-content {
color: var(--ooui-text);
}
.mw-changeslist-legend,
.mw-rcfilters-ui-changesListWrapperWidget .mw-changeslist-legend {
background-color: var(--body-light);
border-color: var(--body-dark);
}
.mw-rcfilters-ui-changesListWrapperWidget-previousChangesIndicator {
border-color: var(--sidebar);
}
.client-js .mw-changeslist ul,
.client-js .mw-changeslist table.mw-enhanced-rc {
margin-left: 0;
}
.mw-rcfilters-ui-watchlistTopSectionWidget-separator {
border-color: var(--sidebar);
}
.mw-rcfilters-ui-itemMenuOptionWidget-header {
border-bottom-color: var(--ooui-interface);
background-color: var(--ooui-interface-border);
}
.mw-rcfilters-ui-itemMenuOptionWidget:not(:last-child):not(.mw-rcfilters-ui-itemMenuOptionWidget-identifier-talk) {
border-bottom-color: var(--ooui-normal-border);
}
.mw-rcfilters-ui-itemMenuOptionWidget-label-title,
.mw-rcfilters-ui-itemMenuOptionWidget-label-desc {
color: var(--text-color);
}
.mw-rcfilters-ui-filterMenuOptionWidget.oo-ui-flaggedElement-muted:not(.oo-ui-optionWidget-selected) {
background-color: var(--body-main);
}
.mw-rcfilters-ui-filterMenuOptionWidget.oo-ui-flaggedElement-muted .mw-rcfilters-ui-itemMenuOptionWidget-label-title,
.mw-rcfilters-ui-filterMenuOptionWidget.oo-ui-flaggedElement-muted .mw-rcfilters-ui-itemMenuOptionWidget-label-desc {
color: var(--subtle-color);
}
.mw-rcfilters-ui-filterMenuSectionOptionWidget {
background-color: var(--body-mid);
}
.mw-rcfilters-ui-filterMenuSectionOptionWidget-header-title.oo-ui-labelElement-label {
color: var(--ooui-text);
}
.mw-rcfilters-ui-filterMenuHeaderWidget-title {
color: var(--ooui-text);
}
.mw-rcfilters-ui-filterMenuHeaderWidget-header {
border-bottom-color: var(--ooui-interface-border);
background-color: var(--ooui-interface);
}
.mw-rcfilters-ui-itemMenuOptionWidget-view-namespaces {
border-top-color: var(--ooui-interface-border);
}
.mw-rcfilters-ui-datePopupWidget {
border-color: var(--ooui-interface-border);
}
.mw-rcfilters-ui-datePopupWidget .mw-rcfilters-ui-valuePickerWidget-title {
color: var(--byline-color);
}
.mw-rcfilters-ui-savedLinksListItemWidget-label {
color: var(--ooui-accent);
}
.client-js .mw-changeslist.mw-rcfilters-ui-changesListWrapperWidget-highlighted ul,
.client-js .mw-changeslist.mw-rcfilters-ui-changesListWrapperWidget-highlighted table.mw-enhanced-rc {
margin-left: 1.5em;
}
.page-Special_CreateAccount .mw-ui-container,
.page-Special_UserLogin .mw-ui-container {
max-width: 64rem;
margin: 0 auto;
}
.mw-number-text {
color: var(--byline-color);
}
.mw-body-content .mw-number-text h3 {
color: var(--text-color);
}
#mw-indicator-mw-helplink a {
background: none;
padding: 0;
display: flex;
align-items: center;
}
#mw-indicator-mw-helplink a::before {
content: '';
margin-right: 5px;
-webkit-mask: url("/resources/src/mediawiki.helplink/images/helpNotice.svg?46d34") no-repeat 50% 50% / contain;
mask: url("/resources/src/mediawiki.helplink/images/helpNotice.svg?46d34") no-repeat 50% 50% / contain;
background: var(--text-color);
height: 20px;
width: 20px;
}
.results-info {
color: inherit;
}
.mw-search-profile-tabs {
background-color: var(--body-mid);
border-color: transparent;
}
.search-types .current a {
color: inherit;
}
#mw-searchoptions {
background-color: var(--body-mid);
border-color: transparent;
}
#mw-searchoptions .divider {
border-color: var(--body-border);
}
#mw-searchoptions h4 {
font-family: inherit;
}
#mw-searchoptions .oo-ui-labelElement:nth-of-type(odd) {
font-weight: bold;
}
.searchresult {
line-height: 1.5;
}
.searchalttitle,
#mw-search-interwiki li {
font-size: 90%;
}
.mw-search-result-data {
color: var(--byline-color);
}
.page-Special_ListFiles a.image img {
width: inherit;
height: inherit;
}
.page-Special_ListFiles .TablePager_col_thumb {
text-align: center;
}
#editcount table[border="1"] {
background-color: var(--body-main) !important;
border-color: var(--wikitable-border) !important;
margin-top: 0.5em;
}
#editcount table[border="1"] th,
#editcount table[border="1"] td {
padding: 0.2em 0.4em;
}
#editcount table[border="1"] th {
background-color: var(--wikitable-header-bg);
border: 1px solid var(--wikitable-border);
}
#editcount table[border="1"] td {
border: 1px solid var(--wikitable-border);
}
#editcount table[border="1"] tr:nth-child(odd) {
background-color: var(--body-light);
}
.mw-echo-ui-notificationBadgeButtonPopupWidget-popup > .oo-ui-popupWidget-popup .mw-echo-ui-placeholderItemWidget {
background-color: inherit;
}
table.mw-interwikitable.body td.mw-interwikitable-local-yes {
background-color: var(--table-yes-background);
color: var(--table-yes-color);
}
.mw-protectedpages-unknown {
color: var(--byline-color);
}
.watchlistredir,
.allpagesredirect {
font-style: italic;
}
.allpagesredirect:after {
color: var(--byline-color);
content: " (redirect)";
}
.mw-apisandbox-toolbar {
background: var(--body-main);
}
.oo-ui-menuOptionWidget .mw-apisandbox-flag {
color: var(--byline-color);
}
tr.mw-abusefilter-list-disabled,
tr.mw-abusefilter-list-disabled td {
color: var(--byline-color);
}
table.mw-abuselog-details {
background: var(--wikitable-bg);
border-color: var(--wikitable-border);
}
table.mw-abuselog-details th {
background: var(--wikitable-header-bg);
}
table.mw-abuselog-details th,
table.mw-abuselog-details td {
border-color: var(--wikitable-border);
}
.mw-abusefilter-log-hidden-entry {
color: var(--subtle-color);
}
body td.mw-abusefilter-history-changed {
background: var(--table-no-background);
}
div.mw-abusefilter-editor,
#mw-abusefilter-warn-preview,
#mw-abusefilter-disallow-preview {
border-color: var(--ooui-input-border);
}
.mw-destfile-warning {
border-color: var(--warningbox-border);
color: var(--text-color);
background-color: var(--warningbox-bg);
}
span.fileinput-button {
background-color: var(--ooui-normal);
border-color: var(--ooui-normal-border);
color: var(--ooui-text);
}
ul.fileupload-results li.ful-success {
background-color: var(--successbox-bg);
}
ul.fileupload-results li.ful-success a {
color: var(--link-color);
}
ul.fileupload-results li.ful-error {
background-color: var(--errorbox-bg);
}
#t-print,
#t-permalink {
display: none;
}
#filetoc {
border-radius: 2px;
background: var(--body-mid);
border-color: transparent;
margin: 0.5em auto;
text-align: center;
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
}
li.gallerybox div.thumb {
border: none;
background-color: var(--thumb-bg);
}
.smwfact {
display: none;
}
.list-header {
background-color: var(--body-mid);
color: inherit;
}
.editOptions {
color: var(--text-color);
background-color: var(--sourceeditor-background-secondary);
border-color: var(--sourceeditor-border);
}
.mw-json th,
.mw-json td {
border-color: var(--wikitable-border);
}
.mw-json td {
background: var(--wikitable-bg);
}
.mw-json th {
background: var(--wikitable-header-bg);
}
a11489ecc6783c675682f2955e708d6a0f7d4e7b
Template:Shortcut
10
390
638
2024-03-22T20:16:19Z
Habblet
11
Created page with "<includeonly>{{#invoke:Shortcut|main}}</includeonly><noinclude>{{/doc}}</noinclude>"
wikitext
text/x-wiki
<includeonly>{{#invoke:Shortcut|main}}</includeonly><noinclude>{{/doc}}</noinclude>
3c2c3d27ffedf21a24389b57aef84214144d5c96
Template:Shortcut/doc
10
391
639
2024-03-22T20:16:59Z
Habblet
11
Created page with "{{documentation}} {{Invokes|Shortcut}} The '''Shortcut''' template adds a [[Brighter Shores:Shortcut|shortcut box]] to the right of an article or a section which provides the shortcut link to that article or section. ==Usage== {{T|Shortcut|shortcut1|shortcut2|shortcut...}} ==Example== {{T|shortcut|BS:SG|BS:STYLE}} {{Shortcut|BS:SG|BS:STYLE}} {{clear}} ---- {| class="wikitable" |- ! Domain name ! abbreviation |- | (Mainspace) | none |- | Brighter Shores: | BS: |- |..."
wikitext
text/x-wiki
{{documentation}}
{{Invokes|Shortcut}}
The '''Shortcut''' template adds a [[Brighter Shores:Shortcut|shortcut box]] to the right of an article or a section which provides the shortcut link to that article or section.
==Usage==
{{T|Shortcut|shortcut1|shortcut2|shortcut...}}
==Example==
{{T|shortcut|BS:SG|BS:STYLE}}
{{Shortcut|BS:SG|BS:STYLE}}
{{clear}}
----
{| class="wikitable"
|-
! Domain name
! abbreviation
|-
| (Mainspace)
| none
|-
| Brighter Shores:
| BS:
|-
| Template:
| T:
|-
| Help:
| H:
|-
| Forum:
| F:
|-
| Category:
| CG:
|-
| User:
| Not allowed.
|}
<includeonly>[[Category:Lua-based templates|{{PAGENAME}}]]</includeonly>
7eb81224585e59c213885809e342d96985bd585b
640
639
2024-03-22T20:17:27Z
Habblet
11
wikitext
text/x-wiki
{{documentation}}
{{Invokes|Shortcut}}
The '''Shortcut''' template adds a [[Brighter Shores:Shortcut|shortcut box]] to the right of an article or a section which provides the shortcut link to that article or section.
==Usage==
{{T|Shortcut|shortcut1|shortcut2|shortcut...}}
==Example==
{{T|shortcut|BS:SG|BS:STYLE}}
{{Shortcut|BS:SG|BS:STYLE}}
----
{| class="wikitable"
|-
! Domain name
! abbreviation
|-
| (Mainspace)
| none
|-
| Brighter Shores:
| BS:
|-
| Template:
| T:
|-
| Help:
| H:
|-
| Forum:
| F:
|-
| Category:
| CG:
|-
| User:
| Not allowed.
|}
<includeonly>[[Category:Lua-based templates|{{PAGENAME}}]]</includeonly>
9078ebc8fd827d3acb5864d2d642bbabbccfa80e
641
640
2024-03-22T20:17:33Z
Habblet
11
wikitext
text/x-wiki
{{documentation}}
{{Invokes|Shortcut}}
The '''Shortcut''' template adds a [[Brighter Shores:Shortcut|shortcut box]] to the right of an article or a section which provides the shortcut link to that article or section.
==Usage==
{{T|Shortcut|shortcut1|shortcut2|shortcut...}}
==Example==
{{T|Shortcut|BS:SG|BS:STYLE}}
{{Shortcut|BS:SG|BS:STYLE}}
----
{| class="wikitable"
|-
! Domain name
! abbreviation
|-
| (Mainspace)
| none
|-
| Brighter Shores:
| BS:
|-
| Template:
| T:
|-
| Help:
| H:
|-
| Forum:
| F:
|-
| Category:
| CG:
|-
| User:
| Not allowed.
|}
<includeonly>[[Category:Lua-based templates|{{PAGENAME}}]]</includeonly>
0dde02bc79a401169c480196fbc3f6cedc20df22
File:Basic bacon.png
6
392
642
2024-03-22T20:18:10Z
ToofleBerry
6
wikitext
text/x-wiki
da39a3ee5e6b4b0d3255bfef95601890afd80709
Module:Shortcut
828
393
643
2024-03-22T20:18:16Z
Habblet
11
Created page with "local p = {} function p.main(frame) local args = frame:getParent().args return p._main(args) end function p._main(args) local div = mw.html.create('div') :addClass('shortcut noprint plainlist') :wikitext('[[Brighter Shores:Shortcut|Shortcut]]') local numargs = 0 for i, v in ipairs(args) do numargs = numargs + 1 end if numargs > 1 then div:node('s') end div:node(':') local list = div:tag('ul'..."
Scribunto
text/plain
local p = {}
function p.main(frame)
local args = frame:getParent().args
return p._main(args)
end
function p._main(args)
local div = mw.html.create('div')
:addClass('shortcut noprint plainlist')
:wikitext('[[Brighter Shores:Shortcut|Shortcut]]')
local numargs = 0
for i, v in ipairs(args) do
numargs = numargs + 1
end
if numargs > 1 then
div:node('s')
end
div:node(':')
local list = div:tag('ul')
for i, v in ipairs(args) do
list:tag('li'):wikitext('[[' .. v .. ']]')
end
return tostring(div)
end
--[[ DEBUG COPYPASTA
= p._main({'Link 1', 'Link 2', 'Link 3', 'Link 4'})
--]]
return p
fc6fac280f5178a3134af0273ebee61edbfbf2e0
Module:Shortcut/doc
828
394
644
2024-03-22T20:18:26Z
Habblet
11
Created page with "{{No documentation}}"
wikitext
text/x-wiki
{{No documentation}}
ad36a615c98d03e22b03ecaa7b9d7d87b5d7b517
Category:Pages needing documentation
14
395
645
2024-03-22T20:18:48Z
Habblet
11
Created page with "{{Categoryheader|templates, modules, etc.|needing proper /doc pages}} {{Tracking category}} __EXPECTUNUSEDCATEGORY__"
wikitext
text/x-wiki
{{Categoryheader|templates, modules, etc.|needing proper /doc pages}}
{{Tracking category}}
__EXPECTUNUSEDCATEGORY__
3bcaef843beab8ba323a28c49f08e9c2796a5689
Brighter Shores:ORPHAN
4
396
646
2024-03-22T20:21:39Z
Habblet
11
Redirected page to [[Brighter Shores:Orphanage]]
wikitext
text/x-wiki
#REDIRECT [[Brighter Shores:Orphanage]]
dc6ee80c345c00d713d98a7eecb19c9431b7fe56
Brighter Shores:O
4
397
647
2024-03-22T20:21:42Z
Habblet
11
Redirected page to [[Brighter Shores:Orphanage]]
wikitext
text/x-wiki
#REDIRECT [[Brighter Shores:Orphanage]]
dc6ee80c345c00d713d98a7eecb19c9431b7fe56
File:Raw basic bacon.png
6
398
648
2024-03-22T20:22:06Z
ToofleBerry
6
wikitext
text/x-wiki
da39a3ee5e6b4b0d3255bfef95601890afd80709
Template:Main
10
399
651
2024-03-22T20:27:19Z
Habblet
11
Created page with "{{#invoke:Main article|main}}<noinclude> {{/doc}}[[Category:Transclusion templates|{{PAGENAME}}]]</noinclude>"
wikitext
text/x-wiki
{{#invoke:Main article|main}}<noinclude>
{{/doc}}[[Category:Transclusion templates|{{PAGENAME}}]]</noinclude>
4a3c9d9ba3e4c3114b29ef4ff0c090555825e899
Template:Main Page/Discord
10
364
652
597
2024-03-22T20:30:00Z
Jayden
3
wikitext
text/x-wiki
<noinclude>{{/doc}}</noinclude><div class="mainpage-discord tile-halves plainlinks">
<div class="tile-top">
<div class="partner-icon">[[File:Discord logo icon.svg|60px|link=]]</div>
[https://discord.gg/xGDZskaAn9 <div class="arrow nomobile"></div><p class="server-name">Brighter Shores Community</p><p class="server-tagline">Join the community Discord server to discuss the game!</p>]
</div>
<div class="tile-bottom">
<p>Community Discord</p>
</div>
</div>
233369e037f328360ce372734c24ec1ef1789b29
Template:Main/doc
10
400
653
2024-03-22T20:30:16Z
Habblet
11
Created page with "{{Documentation}} {{Invokes|Main article}} This template can be used to link to another relevant article or set of articles when there is no way to fluently link the article in prose. ;Good example <pre> ==Strategies== {{Main|/Strategies}} Sneaky Thieves have low health. </pre> ;Bad example Below, it makes more sense to simply link [[Andrew Gower]] in the paragraph: <pre> ==Andrew Gower== {{Main|Andrew Gower}} Andrew Gower is the creator of Brighter Shores. </pre> {..."
wikitext
text/x-wiki
{{Documentation}}
{{Invokes|Main article}}
This template can be used to link to another relevant article or set of articles when there is no way to fluently link the article in prose.
;Good example
<pre>
==Strategies==
{{Main|/Strategies}}
Sneaky Thieves have low health.
</pre>
;Bad example
Below, it makes more sense to simply link [[Andrew Gower]] in the paragraph:
<pre>
==Andrew Gower==
{{Main|Andrew Gower}}
Andrew Gower is the creator of Brighter Shores.
</pre>
{{TemplateData|<templatedata>
{
"params": {
"1": {
"label": "Article",
"description": "Article to link to",
"example": "/Strategies",
"type": "string",
"required": true
}
},
"description": "This template can be used to link to another relevant article or set of articles when there is no way to fluently link the article in prose.",
"format": "inline"
}
</templatedata>
}}
8a63d1a332576a65e6ebe1b96c81d16effffa49d
Module:Main article
828
401
654
2024-03-22T20:30:50Z
Habblet
11
Created page with "-- <pre> local p = {} function p.main(frame) local hat = require('Module:Hatnote') local args = frame:getParent().args local ret = mw.html.create('') -- list of all articles local params = {} -- total arguments counted counted local ttl = 0 for _, v in ipairs(args) do ttl = ttl + 1 table.insert(params,v) end -- main return string ret:wikitext('Main article'..(#params > 1 and 's' or '')..': ') -- helper function local function link(article) article..."
Scribunto
text/plain
-- <pre>
local p = {}
function p.main(frame)
local hat = require('Module:Hatnote')
local args = frame:getParent().args
local ret = mw.html.create('')
-- list of all articles
local params = {}
-- total arguments counted counted
local ttl = 0
for _, v in ipairs(args) do
ttl = ttl + 1
table.insert(params,v)
end
-- main return string
ret:wikitext('Main article'..(#params > 1 and 's' or '')..': ')
-- helper function
local function link(article)
article = string.gsub(article,'_',' ')
article = mw.text.trim(article)
-- replace anchors with section symbol
if article:find('#',1,true) then
local article_t = mw.text.split(article,'#')
article_t = table.concat(article_t,' § ')
-- article|alttext
article = article..'|'..article_t
end
-- link article
return '[['..article..']]'
end
-- additional articles
for i, v in ipairs(params) do
-- add article link
if i < ttl and ttl > 1 then
ret:wikitext(link(v))
-- if last argument
elseif i == ttl then
-- only one argument, just add link
if ttl == 1 then
ret:wikitext(link(v))
-- otherwise finish with "and"
else
ret:wikitext(' and '..link(v))
end
end
-- if more to come, add commas
if i < ttl and ttl > 2 then
ret:wikitext(', ')
end
end
-- return finished string
return hat._hatnote(tostring(ret))
end
return p
1e7a3aaec6633bbd60253f3d772adc10df22f7a0
Module:Main article/doc
828
402
655
2024-03-22T20:31:02Z
Habblet
11
Created page with "{{No documentation}}"
wikitext
text/x-wiki
{{No documentation}}
ad36a615c98d03e22b03ecaa7b9d7d87b5d7b517
Template:Extension DPL
10
403
656
2024-03-22T20:32:45Z
Habblet
11
Created page with "<noinclude>{{/doc}}</noinclude>"
wikitext
text/x-wiki
<noinclude>{{/doc}}</noinclude>
d5ed56433dbfbb026e88f205094c9ac2bc8c5591
Template:Extension DPL/doc
10
404
657
2024-03-22T20:33:03Z
Habblet
11
Created page with "{{Documentation}} This page was automatically created. It serves as an anchor page for all '''[[Special:WhatLinksHere/Template:Extension_DPL|invocations]]''' of [http://mediawiki.org/wiki/Extension:DynamicPageList Extension:DynamicPageList (DPL)]. ==Usage== This template should not be linked to, as it does nothing. <includeonly>[[Category:DPL templates|{{PAGENAME}}]][[Category:Formatting templates|{{PAGENAME}}]]</includeonly>"
wikitext
text/x-wiki
{{Documentation}}
This page was automatically created. It serves as an anchor page for all '''[[Special:WhatLinksHere/Template:Extension_DPL|invocations]]''' of [http://mediawiki.org/wiki/Extension:DynamicPageList Extension:DynamicPageList (DPL)].
==Usage==
This template should not be linked to, as it does nothing.
<includeonly>[[Category:DPL templates|{{PAGENAME}}]][[Category:Formatting templates|{{PAGENAME}}]]</includeonly>
95768d0a63d7b33f8552b98d71c99964512e9e08
MediaWiki:Minerva.less
8
405
658
2024-03-22T20:33:07Z
Jayden
3
base cp from rsw
less
less
/* =============================================================================
* This is the root Less file that is parsed to produce [[MediaWiki:Minerva.css]].
*
* These styles will be applied to the Minerva skin (mobile).
* -----------------------------------------------------------------------------
* Less documentation: <http://lesscss.org/features/>
* Gadget: <https://meta.weirdgloop.org/w/MediaWiki:Gadget-Less.js>
* Core Less JS: <https://meta.weirdgloop.org/w/MediaWiki:Gadget-Less-core.js>
* Non-standard mixins: <https://meta.weirdgloop.org/w/MediaWiki:Gadget-LessMixins.less>
* Online Less tester: <https://lesscss.org/less-preview/>
* ============================================================================= */
@dir: 'MediaWiki:Minerva.less';
@common: 'MediaWiki:Common.less';
// ===== IMPORTS =====
@import '@{common}/mixins.less';
@import '@{dir}/fonts.less'; // font imports and font stack definitions
@import '@{common}/variables.less'; // colors, shadows, etc.
@import '@{dir}/elements.less'; // HTML elements
// skin modifications
@import '@{dir}/interface.less'; // skin/chrome changes
@import '@{dir}/specials.less'; // special pages
@import '@{dir}/diff.less'; // [[Special:MobileDiff]]
// templates
@import '@{dir}/infobox.less';
@import '@{dir}/tiles.less';
@import '@{dir}/navbox.less';
// page-specific styles
@import '@{dir}/mainpage.less'; // main page (obviously)
// ===== Other =====
// minerva doesnt set a bg since it 100%s all tables
.wikitable {
background: none;
box-shadow: none;
tbody {
background: var(--body-light);
}
}
// Table of Contents
.toc {
background-color: var(--body-light);
border-color: var(--body-border);
}
#filetoc li {
display: inline;
padding-right: 2em;
}
// Sitenotice stuff
.mw-dismissable-notice-body {
margin: 0;
.mw-dismissable-notice-close-parent {
border-radius: 0 !important;
font-size: .75em;
}
}
:root {
--thumb-image-background: var(--body-light);
--thumb-caption-background: var(--body-mid);
}
.content {
// image thumbnails
.thumbinner {
background-color: var(--thumb-bg);
}
.thumbimage {
border: 1px solid transparent;
border-bottom: none;
}
.thumbcaption {
margin: 0;
padding: 4px 6px !important; // minerva has !important
color: inherit;
background: var(--thumb-caption-bg);
}
// minerva sets a margin: 1em 0 to all tables
table.messagebox {
margin: 0.5em auto;
}
// fix for plink/table images often shrinking into nothingness
table a > img {
max-width: inherit !important;
height: inherit !important;
}
// the above would make images inside infobox really large
// if they don't have a specified width/height
.infobox a > img {
max-width: 100% !important;
height: auto !important;
}
// override above to make infobox-bonuses scrollable
.infobox-bonuses a > img {
max-width: inherit !important;
height: inherit !important;
}
}
b4de8feb1e15b3e030d26f50eaca5b91b9bc6d72
MediaWiki:Minerva.less/fonts.less
8
406
659
2024-03-22T20:33:31Z
Jayden
3
Created page with "/* ================== variables ================== */ @system-font-stack: system-ui, -apple-system, Roboto, Helvetica, sans-serif; /* ================== body ================== */ body { font-family: @system-font-stack; // default is too small @media all and (max-width: 320px) { font-size: .9em; } } // bit more space compared to default 1.65 .content { line-height: 1.7; } /* ================== headers..."
less
less
/* ==================
variables
================== */
@system-font-stack: system-ui, -apple-system, Roboto, Helvetica, sans-serif;
/* ==================
body
================== */
body {
font-family: @system-font-stack;
// default is too small
@media all and (max-width: 320px) {
font-size: .9em;
}
}
// bit more space compared to default 1.65
.content {
line-height: 1.7;
}
/* ==================
headers
================== */
.pre-content h1, // page title
.content h1,
.content h2 {
font-weight: bold;
}
d01a02a55dce564106d1e1c055a3f429214b8fa7
Template:Disambig
10
407
660
2024-03-22T20:33:58Z
Habblet
11
Created page with "<includeonly>{{MessageBox |class = disambig |img = [[File:Disambig gray.svg|40px|center|link=]] |imgwidth = 45px |This page is used to [[Brighter Shores:Style guide/Disambiguation|distinguish]] between articles with similar names. |If an [[Special:WhatLinksHere/{{FULLPAGENAME}}|internal link]] led you to this disambiguation page, you may wish to change the link to point directly to the intended article. }}{{Mainonly|[[Category:Disambiguation]]}}</includeonly><noinclude>{..."
wikitext
text/x-wiki
<includeonly>{{MessageBox
|class = disambig
|img = [[File:Disambig gray.svg|40px|center|link=]]
|imgwidth = 45px
|This page is used to [[Brighter Shores:Style guide/Disambiguation|distinguish]] between articles with similar names.
|If an [[Special:WhatLinksHere/{{FULLPAGENAME}}|internal link]] led you to this disambiguation page, you may wish to change the link to point directly to the intended article.
}}{{Mainonly|[[Category:Disambiguation]]}}</includeonly><noinclude>{{/doc}}</noinclude>
909d663ccc3b2023c81ee0fcb23e9b9405ce8bbd
MediaWiki:Minerva.less/elements.less
8
408
661
2024-03-22T20:34:04Z
Jayden
3
base cp from rsw
less
less
/* ===================
HTML elements
=================== */
// Background colour
// image is not here as it wont affect the top bar in search overlays and others
body {
background: var(--body-background-color);
color: var(--text-color);
}
// used on above switch infoboxes
select {
color: var(--text-color);
}
// self link
a:not( [ href ] ) {
color: inherit;
}
// External links icon
a.external,
.mw-parser-output a.external {
background-image: var(--external-icon);
}
// <blockquote>
blockquote {
border-color: var(--body-mid);
// uses default serif fonts
font-family: inherit;
}
// Page title header
.pre-content h1 {
text-align: center;
}
// Clear on first subheader. Useful for pages that start with floating content.
.mw-parser-output h2:first-of-type {
clear: both;
}
// all are .content specific
.content {
// all headers border color
.mw-parser-output > h2,
.section-heading {
border-color: var(--sidebar);
}
// same specifity as default border style
.mw-parser-output > h2,
// all headers have this class
.section-heading {
border-color: var(--sidebar);
}
// rv padding added by minerva
.plainlist {
ol,
ul {
padding: 0;
}
}
// same margin for top and bottom
p {
margin: 0.5em 0;
}
// same as desktop <hr>
hr {
background: none;
border-color: var(--sidebar);
border-style: solid;
border-width: 1px 0 0 0;
height: initial;
}
// no border pls
kbd,
samp {
border: none
}
code,
pre {
background-color: var(--mw-code-background-color);
border: 1px solid var(--body-border);
}
}
0fb827014c4b271df46d9497b40204da5616f0b1
Template:Disambig/doc
10
409
662
2024-03-22T20:34:19Z
Habblet
11
Created page with "{{Documentation}} This template displays a notice about a page being a disambiguation. ==Usage and Examples== This template can be used by entering the following onto a relevant disambiguation page. It will automatically add the [[:Category:Disambiguation]] to the page. {{T|Disambig}} {{Disambig}} <includeonly>[[Category:Message box templates|{{PAGENAME}}]]</includeonly>"
wikitext
text/x-wiki
{{Documentation}}
This template displays a notice about a page being a disambiguation.
==Usage and Examples==
This template can be used by entering the following onto a relevant disambiguation page. It will automatically add the [[:Category:Disambiguation]] to the page.
{{T|Disambig}}
{{Disambig}}
<includeonly>[[Category:Message box templates|{{PAGENAME}}]]</includeonly>
0447b8592f70f90dc64bcd609ac4165887ec32de
MediaWiki:Minerva.less/interface.less
8
410
663
2024-03-22T20:34:38Z
Jayden
3
Created page with "/* ================================ changes to the mobile skin ================================ */ :root { --searchbutton-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 20 20'%3E%3Cg fill='%23000'%3E%3Cpath d='M12.2 13.6a7 7 0 1 1 1.4-1.4l5.4 5.4-1.4 1.4-5.4-5.4zM3 8a5 5 0 1 0 10 0A5 5 0 1 0 3 8z'/%3E%3C/g%3E%3C/svg%3E"); --external-icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' encoding='UTF..."
less
less
/* ================================
changes to the mobile skin
================================ */
:root {
--searchbutton-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 20 20'%3E%3Cg fill='%23000'%3E%3Cpath d='M12.2 13.6a7 7 0 1 1 1.4-1.4l5.4 5.4-1.4 1.4-5.4-5.4zM3 8a5 5 0 1 0 10 0A5 5 0 1 0 3 8z'/%3E%3C/g%3E%3C/svg%3E");
--external-icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' encoding='UTF-8'%3F%3E%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='10' viewBox='0 0 10 10'%3E%3Cg fill='%23906039'%3E%3Cpath d='M8.9 8.9H1.1V1.1h2.8V0H1.1C.5 0 0 .5 0 1.1v7.8C0 9.5.5 10 1.1 10h7.8c.6 0 1.1-.5 1.1-1.1V6.1H8.9v2.8z'/%3E%3Cpath d='M10 0H5.6l1.8 1.8L4.2 5l.8.8 3.2-3.2L10 4.4V0z'/%3E%3C/g%3E%3C/svg%3E");
}
/* -----------------------
page container
----------------------- */
// body element is already coloured
#mw-mf-page-center {
background-color: transparent;
}
/* -----------------------
header/search bar
----------------------- */
.header {
border-top: none;
}
.header-container {
&.header-chrome {
// not in body element because of search overlay and others
background: var(--body-background-image) var(--body-background-color) no-repeat;
background-color: var(--body-background-color);
background-size: 900px;
box-shadow: inset 0 -1px 3px rgba(0, 0, 0, .1);
}
.notification-count {
border-radius: @border-radius-circle;
&.notification-unseen {
background: none;
}
}
// wiki logo
.branding-box {
opacity: 1;
}
}
// search box
.search-box {
// for bigger screen sizes where search bar is shown automatically
text-align: right;
.search {
background-color: var(--search-box);
border-color: var(--search-box);
box-shadow: @box-shadow;
&::placeholder {
color: var(--byline-color);
}
}
}
.client-nojs .search-box .search:focus,
.search-overlay .search-box .search:focus {
border-color: var(--link-color);
box-shadow: inset 0 0 0 1px var(--link-color), 0 1px 1px rgba(0,0,0,0.05);
}
// magnifying glass icon; cant invert as the class is used in the same
// element as .search-box
.mw-ui-background-icon-search {
background-image: var(--searchbutton-icon);
}
/* -------------
overlay
------------- */
.overlay {
background: var(--body-main);
textarea {
color: var(--text-color);
}
// self explanatory
&.search-overlay {
background: var(--body-main);
// results boxes
.results,
.search-feedback {
background-color: var(--body-light);
}
// "Search within pages"
.search-content {
border-color: var(--body-mid);
}
}
// inside talk pages and editor?
.license {
color: var(--base-text-color);
}
// border seperating summary section and preview
.panel {
border-color: var(--sidebar);
}
// category menu
.content-header {
background-color: var(--body-light);
border-color: transparent;
}
&.overlay-loading {
// adjustable
background: var(--ooui-window-background);
}
// this and the one on parent may be able
// to colour all overlays
.overlay-content {
background: var(--body-main);
}
}
// search results text
.page-summary h2,
.page-summary h3 {
color: var(--text-color);
}
// search results border
.page-list li,
.topic-title-list li,
.site-link-list li {
border-color: var(--body-mid);
}
// background colour wouldnt be affected when scrolling down certain overlays
// the :not is there so source edit doesnt get messed up
.overlay-enabled .overlay:not(.editor-overlay),
.overlay-enabled #mw-mf-page-center {
overflow-y: scroll;
}
.overlay-header-container,
.overlay-footer-container {
background-color: var(--body-background-color);
border-color: transparent;
}
// editor stuff
// edit area
.editor-overlay {
.wikitext-editor {
color: var(--text-color);
}
.overlay-header {
outline-color: transparent;
}
.summary-request {
color: var(--text-color);
}
// switch between ve/source
.editor-switcher {
border: none;
}
}
// editor text colour adjustments
.action-submit .mw-editnotice
.action-edit .mw-editnotice,
.action-submit .mw-editTools,
.action-edit .mw-editTools,
.action-submit .preview-limit-report-wrapper,
.action-edit .preview-limit-report-wrapper,
.action-submit .diff-otitle,
.action-edit .diff-otitle,
.action-submit .diff-ntitle,
.action-edit .diff-ntitle,
.action-submit #section_0,
.action-edit #section_0,
.action-submit #editpage-copywarn,
.action-edit #editpage-copywarn,
.action-submit #mw-anon-edit-warning,
.action-edit #mw-anon-edit-warning {
color: var(--byline-color);
}
.wikitext-editor {
background-color: var(--body-main);
}
.ve-mobile-fakeToolbar {
border: none;
&-container {
background: var(--body-background-color);
border: none;
}
.mw-ui-icon-mf-spinner {
border-color: transparent;
}
}
.ve-ui-targetToolbar-mobile .oo-ui-toolbar-tools > .ve-ui-toolbar-group-back {
border-color: transparent;
}
.ve-ui-mobileContext {
background-color: var(--body-light);
border-color: var(--body-light);
.ve-ui-linearContextItem-body-action-wrapper {
border-color: var(--body-border);
}
}
.ve-ui-linearContextItem-foot:not(:empty) {
border-color: var(--body-border);
}
// "This is a minor edit" box
.ve-ui-mwSaveDialog-options {
backgroubd-color: var(--body-light);
border-color: var(--body-mid);
}
/* -------------
page tabs and nav
------------- */
.page-actions-menu {
border-color: var(--sidebar);
}
// Hide language selector
#language-selector {
display: none;
}
// page tabs
.minerva__tab-container .minerva__tab {
color: var(--text-color);
// redlinks
&.new,
&.new:visited,
&.new:hover,
&.new:active {
color: var(--redlink-color);
}
&.selected {
border-color: var(--body-border);
}
}
// "Joined n time ago" on userpages
.heading-holder .tagline {
color: var(--base-heading-color);
}
/* -------------
footer
------------- */
.minerva-footer {
border-color: transparent;
}
.mw-footer > .post-content {
// same margin as .catlinks to .last-modified-bar
margin-top: 32px;
// remove the wiki logo in the footer
> .minerva-footer-logo {
display: none;
}
}
// why the progressive
.mw-footer .hlist li:after {
color: var(--background-text-color);
}
// bar at the bottom of the page linking to page hist
.last-modified-bar {
border-top: 1px solid;
border-color: transparent;
background: none;
color: var(--text-color);
a,
a:active,
a:visited,
.last-modified-text-accent {
color: var(--background-text-color);
}
// when recently edited
// might want to overrule `.mw-footer a` etc...
&.active {
&,
&:active,
&:visited,
.last-modified-text-accent {
color: @white;
}
}
}
// arrow icon used by above
// :not for .active
.mw-ui-icon-mf-expand-gray:not(.mw-ui-icon-mf-expand-invert):before {
background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 20 20'%3E%3Ctitle%3Eexpand%3C/title%3E%3Cg fill='%2354595d'%3E%3Cpath d='M17.5 4.75l-7.5 7.5-7.5-7.5L1 6.25l9 9 9-9z'/%3E%3C/g%3E%3C/svg%3E");
}
/* -------------
other
------------- */
// dropdown menu
.toggle-list__list {
background-color: var(--wikitable-bg);
}
.toggle-list-item__anchor {
&:visited,
&:active {
color: var(--base-text-color);
}
}
.toggle-list-item:hover {
background: var(--wikitable-bg-lighter);
}
.toggle-list-item__label {
color: var(--base-text-color);
}
// Mobile top icons
.mw-ui-icon {
&-wikimedia-search-base20:before {
background-image: url("data:image/svg+xml,%3C%3Fxml version='1.0' encoding='UTF-8'%3F%3E%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 20 20'%3E%3Ctitle%3Esearch%3C/title%3E%3Cg fill='white'%3E%3Cpath fill-rule='evenodd' d='M12.2 13.6a7 7 0 111.4-1.4l5.4 5.4-1.4 1.4-5.4-5.4zM13 8A5 5 0 113 8a5 5 0 0110 0z'/%3E%3C/g%3E%3C/svg%3E%0A");
}
&-wikimedia-menu-base20:before {
background-image: url("data:image/svg+xml,%3C%3Fxml version='1.0' encoding='UTF-8'%3F%3E%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 20 20'%3E%3Ctitle%3Emenu%3C/title%3E%3Cg fill='white'%3E%3Cpath d='M1 3v2h18V3zm0 8h18V9H1zm0 6h18v-2H1z'/%3E%3C/g%3E%3C/svg%3E%0A");
}
&-wikimedia-bellOutline-base20:before {
background-image: url("data:image/svg+xml,%3C%3Fxml version='1.0' encoding='UTF-8'%3F%3E%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 20 20'%3E%3Ctitle%3Ebell%3C/title%3E%3Cg fill='white'%3E%3Cpath d='M11.5 2.19C14.09 2.86 16 5.2 16 8v6l2 2v1H2v-1l2-2V8c0-2.8 1.91-5.14 4.5-5.81V1.5C8.5.67 9.17 0 10 0s1.5.67 1.5 1.5v.69zM10 4C7.79 4 6 5.79 6 8v7h8V8c0-2.21-1.79-4-4-4zM8 18h4c0 1.1-.9 2-2 2s-2-.9-2-2z'/%3E%3C/g%3E%3C/svg%3E%0A");
}
&-minerva-userAvatarOutline:before {
background-image: url("data:image/svg+xml,%3C%3Fxml version='1.0' encoding='UTF-8'%3F%3E%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 20 20'%3E%3Ctitle%3Euser avatar%3C/title%3E%3Cg fill='white'%3E%3Cpath d='M10 8c1.7 0 3.06-1.35 3.06-3S11.7 2 10 2 6.94 3.35 6.94 5 8.3 8 10 8zm0 2c-2.8 0-5.06-2.24-5.06-5S7.2 0 10 0s5.06 2.24 5.06 5-2.26 5-5.06 5zm-7 8h14v-1.33c0-1.75-2.31-3.56-7-3.56s-7 1.81-7 3.56V18zm7-6.89c6.66 0 9 3.33 9 5.56V20H1v-3.33c0-2.23 2.34-5.56 9-5.56z'/%3E%3C/g%3E%3C/svg%3E%0A");
}
}
// text inside navbar
@media all and (min-width: @width-breakpoint-desktop) {
.mw-ui-icon-with-label-desktop,
.mw-ui-icon-with-label-desktop:hover,
.mw-ui-icon-with-label-desktop:focus,
.mw-ui-icon-with-label-desktop:active,
.mw-ui-icon-with-label-desktop:visited {
color: var(--base-text-color) !important; //there's a !important at core lol
}
}
// Close button beside the search bar
.header-action .mw-ui-icon-mf-close-base20:before {
background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 20 20'%3E%3Ctitle%3Eclose%3C/title%3E%3Cg fill='%23fff'%3E%3Cpath d='m4.3 2.9 12.8 12.8-1.4 1.4L2.9 4.3z'/%3E%3Cpath d='M17.1 4.3 4.3 17.1l-1.4-1.4L15.7 2.9z'/%3E%3C/g%3E%3C/svg%3E");
}
// Sidebar menus
#mw-mf-page-left {
background-color: var(--body-background-color);
// logout button when not in amc
.secondary-action {
border-left-color: var(--body-mid);
}
ul {
// buttons
li {
background-color: var(--body-main);
border-color: var(--body-mid);
a {
color: var(--base-text-color);
&:hover {
box-shadow: inset 4px 0 0 0 var(--link-color);
}
}
}
// links below buttons
&.hlist li a {
color: var(--background-link-color);
span {
font-size: 0.8125rem; // slightly smaller for smaller chance of overflowing
}
}
}
}
.notifications-overlay {
// same as opposite sidebar menu
&.navigation-drawer {
box-shadow: -1px 0 8px 0 rgba(0, 0, 0, 0.35);
}
// ... menu
.mw-echo-ui-actionMenuPopupWidget-menu {
border: none;
}
}
// "All notifications"
.mw-ui-anchor.mw-ui-progressive {
// this should be replaced with our own progressive link colour at some point
&,
&:active,
&:hover,
&:focus {
color: var(--link-color);
}
}
// talk page stuff
.minerva-talk-full-page-button {
background-color: var(--body-main);
border-color: var(--body-dark);
color: var(--link-color);
}
.minerva-talk-content-explained {
border-color: var(--sidebar);
color: var(--base-text-color);
}
.talk-overlay .comment .wikitext-editor {
border-color: var(--body-border);
}
.client-js .skin-minerva--talk-simplified .section-heading {
border-color: var(--sidebar);
}
// notif boxes
.mw-notification,
.toast {
a {
color: var(--link-color);
}
}
// eg when clicking redlinks
.drawer {
background-color: var(--body-light);
// when clicking references
&.references-drawer {
background-color: var(--body-light);
color: var(--text-color);
a {
color: var(--link-color);
}
.references-drawer__title {
color: var(--text-color);
}
// channging to be the same as text-color
.mw-ui-icon::before {
filter: brightness(0);
}
}
}
// obscure class used on non-existent userpages
.cta-holder {
background: var(--body-light);
.desc {
color: var(--byline-color);
}
}
// edit tag e.g. Rollback
.mw-tag-marker {
border-color: var(--body-border);
}
// visedit/sourceditor switch button
.oo-ui-toolGroup {
background: var(--body-background-color);
}
// MF MediaViewer/ImageCarousel
.load-fail-msg {
color: var(--text-color);
&-link a {
color: var(--link-color);
}
}
// checkered background
.image-carousel .image-loaded {
background: url("data:image/svg+xml,%3C%3Fxml version='1.0' encoding='UTF-8'%3F%3E%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16'%3E%3Cpath d='M0 0h8v16h8V8H0z' opacity='.13'/%3E%3C/svg%3E%0A") repeat;
}
.image-details {
background-color: var(--body-light);
border-color: transparent;
}
9f5ff91d3cfa9b7f522df78a377adb047c0999bd
File:Disambig gray.svg
6
411
664
2024-03-22T20:34:51Z
Habblet
11
{{GFDL}}
{{CC-BY-SA}}
Taken from: {{Wp|File:Disambig gray.svg}}
[[Category:Template images]]
wikitext
text/x-wiki
== Summary ==
{{GFDL}}
{{CC-BY-SA}}
Taken from: {{Wp|File:Disambig gray.svg}}
[[Category:Template images]]
bc28133d824221f71b620f5e6dbfbad0674c1e5e
MediaWiki:Minerva.less/specials.less
8
412
665
2024-03-22T20:34:56Z
Jayden
3
Created page with "/* ================================ changes to special pages ================================ */ // == Special:MobileOptions == @media all and (min-width: @width-breakpoint-tablet) { .ns-special { .pre-content { background-color: transparent; } .mw-body { background: var(--body-main); form { background: transparent; } } } } form.mw-mf-settings .oo-ui-fieldLayout { &, &:first-child { border-color: var(--body-mid); } } // Page h..."
less
less
/* ================================
changes to special pages
================================ */
// == Special:MobileOptions ==
@media all and (min-width: @width-breakpoint-tablet) {
.ns-special {
.pre-content {
background-color: transparent;
}
.mw-body {
background: var(--body-main);
form {
background: transparent;
}
}
}
}
form.mw-mf-settings .oo-ui-fieldLayout {
&,
&:first-child {
border-color: var(--body-mid);
}
}
// Page hist when not in amc
.ns-special .content-header {
border-bottom-color: var(--body-dark);
}
// when Advanced mode is on
.action-history {
.mw-history-compareselectedversions {
background-color: var(--body-main);
}
#pagehistory li:not(.selected) {
border-bottom-color: var(--sidebar);
}
}
// == Special:Contributions ==
ul.mw-contributions-list li,
ul.special li {
border-color: var(--sidebar);
}
// == Special:History ==
// you will be directed to ?action=history if you got amc turned on
.page-list,
.topic-title-list,
.site-link-list {
li > a:not(.mw-ui-icon-element) {
color: var(--byline-color);
}
&.side-list .list-thumb {
color: var(--text-color);
}
}
// edit summary
.page-list .info,
.topic-title-list .info,
.site-link-list .info,
.page-list .component,
.topic-title-list .component,
.site-link-list .component {
color: var(--byline-color);
}
// user link
.mw-mf-user {
color: var(--text-color);
}
// when amc is turned on
.content .mw-index-pager-list-header {
background-color: var(--body-mid);
color: inherit;
font-family: inherit; // sans
}
034f95ce169f68098d996c37e340cc0c9b00972c
MediaWiki:Minerva.less/diff.less
8
413
666
2024-03-22T20:35:15Z
Jayden
3
base cp from rsw
less
less
/* ====================
Special:MobileDiff
==================== */
// closely mimicking desktop
.diff-editfont-monospace {
font-family: monospace,monospace;
}
:root {
--diff-deletedline-background: @apricot-peach;
}
// minor edit marker
.minoredit {
background: var(--body-mid);
}
#mw-mf-diffview {
.mw-mf-diff-date {
color: var(--byline-color);
}
.mw-diff-inline-deleted del,
.mw-diff-inline-changed del {
background: var(--diff-deletedline-background);
color: var(--diff-deletedline-color);
border-radius: .33em
}
.mw-diff-inline-added ins,
.mw-diff-inline-changed ins {
background: var(--diff-addedline-background);
color: var(--diff-addedline-color);
border-radius: .33em
}
.mw-diff-inline-moved {
background: var(--diff-context-background);
}
}
// Diff userinfo
#mw-mf-diffview #mw-mf-userinfo {
background: var(--body-light);
border-top-color: var(--body-border);
.mw-mf-edit-count {
color: var(--text-color);
div {
color: var(--base-text-color);
}
}
}
b155dfe3ff1ce6ada2142b4627e1194a01b58572
Category:Template images
14
414
667
2024-03-22T20:35:21Z
Habblet
11
Created page with "{{Categoryheader|images|templates||}} [[Category:Templates]] [[Category:Brighter Shores Wiki images]]"
wikitext
text/x-wiki
{{Categoryheader|images|templates||}}
[[Category:Templates]]
[[Category:Brighter Shores Wiki images]]
563fbe816d5d52ef4d0bd5cad3e602f58883b16c
Category:Disambiguation
14
415
668
2024-03-22T20:35:52Z
Habblet
11
Created page with "{{Categoryheader|pages and images|[[BS:DISAMBIG|disambiguation pages]]|yes|[[Template:Disambig]]}} [[Category:Maintenance categories]]"
wikitext
text/x-wiki
{{Categoryheader|pages and images|[[BS:DISAMBIG|disambiguation pages]]|yes|[[Template:Disambig]]}}
[[Category:Maintenance categories]]
23c60d1d991c55c8c2df0027c01d2d199af1f6fb
Brighter Shores:Orphanage/Disambiguation pages
4
416
669
2024-03-22T20:36:13Z
Habblet
11
Created page with "This is a list of every disambiguation page. It helps keep these pages off of [[Special:LonelyPages]] <dpl> namespace = uses = Template:Disambig resultsheader = {| class="wikitable mw-collapsible mw-collapsed"\n! List of disambiguation pages (1-500)\n|-\n| format = ,\n#[[%PAGE%]] resultsfooter=\n|}\n </dpl> <dpl> namespace = uses = Template:Disambig resultsheader = {| class="wikitable mw-collapsible mw-collapsed"\n! List of disambiguation pages (501-1000)\n|-\n| offset..."
wikitext
text/x-wiki
This is a list of every disambiguation page. It helps keep these pages off of [[Special:LonelyPages]]
<dpl>
namespace =
uses = Template:Disambig
resultsheader = {| class="wikitable mw-collapsible mw-collapsed"\n! List of disambiguation pages (1-500)\n|-\n|
format = ,\n#[[%PAGE%]]
resultsfooter=\n|}\n
</dpl>
<dpl>
namespace =
uses = Template:Disambig
resultsheader = {| class="wikitable mw-collapsible mw-collapsed"\n! List of disambiguation pages (501-1000)\n|-\n|
offset = 500
format = ,\n#[[%PAGE%]]
resultsfooter=\n|}\n
</dpl>
<dpl>
namespace =
uses = Template:Disambig
resultsheader = {| class="wikitable mw-collapsible mw-collapsed"\n! List of disambiguation pages (1001-1500)\n|-\n|
offset = 1000
format = ,\n#[[%PAGE%]]
resultsfooter=\n|}\n
</dpl>
<dpl>
suppresserrors = true
namespace =
uses = Template:Disambig
resultsheader = {| class="wikitable mw-collapsible mw-collapsed"\n! List of disambiguation pages (1501-2000)\n|-\n|
offset = 1500
format = ,\n#[[%PAGE%]]
resultsfooter=\n|}\n
</dpl>
<dpl>
suppresserrors = true
namespace =
uses = Template:Disambig
resultsheader = {| class="wikitable mw-collapsible mw-collapsed"\n! List of disambiguation pages (2001-2500)\n|-\n|
offset = 2000
format = ,\n#[[%PAGE%]]
resultsfooter=\n|}\n
</dpl>
<dpl>
suppresserrors = true
namespace =
uses = Template:Disambig
resultsheader = {| class="wikitable mw-collapsible mw-collapsed"\n! List of disambiguation pages (2501-%TOTALPAGES%)\n|-\n|
offset = 2500
format = ,\n#[[%PAGE%]]
resultsfooter=\n|}\n
</dpl>
9dac900052ec29a4c44944a02afb91461e65d70b
File:Profession forager.png
6
417
670
2024-03-22T20:36:14Z
ToofleBerry
6
wikitext
text/x-wiki
da39a3ee5e6b4b0d3255bfef95601890afd80709
Professions
0
56
671
628
2024-03-22T20:36:27Z
ToofleBerry
6
wikitext
text/x-wiki
'''Professions''' are skills that [[player]]s can train and utilise in [[Brighter Shores]].
==List of professions==
{| class="wikitable"
! Image !! Name !! Uses
|-
| [[File:Profession fisher.png|70px]] || [[Fisher]] || Catching various [[fish]]
|-
| [[File:Profession forager.png|70px]] || [[Forager]] || Gathering items
|-
| || [[Chef]] || Cooking [[food]] items
|-
| || [[Woodcutter]] || Chopping down [[tree]]s
|-
| || [[Miner]] || Mining [[mineral]]s
|-
| || [[Alchemist]] || Brewing [[potion]]s
|-
| || [[Stonemason]] ||
|-
| || [[Merchant]] ||
|-
| || [[Blacksmith]] ||
|}
==Gallery==
<gallery>
File:Professions preview 1.jpg
File:Professions preview 2.jpg
File:Professions preview 3.jpg
</gallery>
{{Professions}}
76ece67ab4b63b98631a52f16c9dac51e2e19582
710
671
2024-03-22T22:22:10Z
Jayden
3
wikitext
text/x-wiki
'''Professions''' are skills that [[player]]s can train and utilise in [[Brighter Shores]].
==List of professions==
{| class="wikitable"
! colspan="2" | Name !! Uses
|-
| [[File:Profession fisher.png|30px|link=Fisher]] || [[Fisher]] || Catching various [[fish]]
|-
| [[File:Profession forager.png|30px|link=Forager]] || [[Forager]] || Gathering items
|-
| || [[Chef]] || Cooking [[food]] items
|-
| || [[Woodcutter]] || Chopping down [[tree]]s
|-
| || [[Miner]] || Mining [[mineral]]s
|-
| || [[Alchemist]] || Brewing [[potion]]s
|-
| || [[Stonemason]] ||
|-
| || [[Merchant]] ||
|-
| || [[Blacksmith]] ||
|}
==Gallery==
<gallery>
File:Professions preview 1.jpg
File:Professions preview 2.jpg
File:Professions preview 3.jpg
</gallery>
{{Professions}}
a1b824c184e6ff46c3e7c6bdc155eeb4a10888fb
714
710
2024-03-22T22:25:01Z
Jayden
3
wikitext
text/x-wiki
'''Professions''' are skills that [[player]]s can train and utilise in [[Brighter Shores]].
==List of professions==
{| class="wikitable"
! colspan="2" | Name !! Uses
|-
| [[File:Profession fisher.png|30px|link=Fisher]] || [[Fisher]] || Catching various [[fish]]
|-
| [[File:Profession forager.png|30px|link=Forager]] || [[Forager]] || Gathering items
|-
| || [[Chef]] || Cooking [[food]] items
|-
| || [[Woodcutter]] || Chopping down [[tree]]s
|-
| || [[Miner]] || Mining [[mineral]]s
|-
| || [[Alchemist]] || Brewing [[potion]]s
|-
| || [[Stonemason]] ||
|-
| || [[Merchant]] ||
|-
| || [[Blacksmith]] ||
|}
==Gallery==
<gallery>
File:Professions preview 1.jpg
File:Professions preview 2.jpg
File:Professions preview 3.jpg
</gallery>
{{Professions}}
{{Mechanics}}
d9c0b750c926aad63e20d96d17df7e810a882421
MediaWiki:Minerva.less/infobox.less
8
418
672
2024-03-22T20:36:30Z
Jayden
3
Created page with "/* ==================== infoboxes ==================== */ @infobox-background: @BODY_LIGHT; @infobox-header-color: @BODY_DARK; @infobox-border-color: @BODY_BORDER; @infobox-subheader-color: @BODY_DARK; .infobox { font-size: 85%; background-color: @infobox-background; border: 1px solid @infobox-border-color; box-shadow: @box-shadow; table-layout: fixed; // override minerva's mobile-friendlyness // our infoboxes shouldn't be scr..."
less
less
/* ====================
infoboxes
==================== */
@infobox-background: @BODY_LIGHT;
@infobox-header-color: @BODY_DARK;
@infobox-border-color: @BODY_BORDER;
@infobox-subheader-color: @BODY_DARK;
.infobox {
font-size: 85%;
background-color: @infobox-background;
border: 1px solid @infobox-border-color;
box-shadow: @box-shadow;
table-layout: fixed;
// override minerva's mobile-friendlyness
// our infoboxes shouldn't be scrollable anyway
.content & {
display: table;
caption {
display: table-caption;
background: none; // bg in > 720px
}
}
.infobox-header {
color: var(--infobox-text-color);
font-size: 1.15em;
background: @infobox-header-color;
padding: .5em 0;
text-align: center;
}
.infobox-subheader {
background: @infobox-subheader-color;
line-height: 2em;
text-align: center;
a {
color: var(--infobox-text-color);
}
}
th:not(.infobox-nested):not(.infobox-subheader):not(.infobox-header) {
text-align: right;
vertical-align: top;
border-right: 2px solid @infobox-subheader-color;
padding: 0.2em 0.5em;
}
caption.infobox-caption {
text-align: center;
}
td {
padding: 0.25em 0.5em;
line-height: 1.6em;
&.infobox-nested {
padding: 0.25em 0;
line-height: 1em;
}
}
.infobox-padding {
height: 0.5em;
padding: 0;
border: 0;
}
.infobox-image {
text-align: center;
// for inventory icon in infobox item
&.inventory-image {
height: 32px; // functions as min-height
}
}
.infobox-nested {
text-align: center;
&+.infobox-nested {
border-left: 2px solid @infobox-subheader-color;
}
}
.infobox-cell-hidden {
display: none;
}
.infobox-full-width-content {
max-width: 300px;
text-align: center;
overflow-x: hidden;
padding: 0;
}
}
// (dirty trick) Hide a silly bug in switch infoboxes:
// switching between versions where there is a Quantity box followed by text will cause the text to be duplicated on switch
// This currently only occurs where the text consists of "? (edit)" links, so hiding consecutive edit links works to hide this
// This should ideally be fixed for real though, instead of just hiding it.
.skill-info a[href$="?action=edit"] + a[href$="?action=edit"] {
display: none;
}
.infobox-buttons {
margin-top: 0.5em;
text-align: center;
}
.infobox-bottom-links {
display: none;
}
// Hides advanced data. Class gets replaced by .advanced-data-display
// if the showAdvancedData gadget is enabled.
.advanced-data {
display: none;
}
@media screen and (min-width: @width-breakpoint-tablet) {
.content table.infobox {
float: right;
margin-top: 0.5em;
margin-left: 1em;
width: 300px !important; // Needed to compete with !important for .content table
&.skill-info {
float: none;
margin: 0 0 1em 0;
}
}
}
// [[Template:Multi Infobox]] styles
.multi-infobox {
margin-top: 0.5em;
margin-bottom: 2.5em;
.tabber {
margin: 0;
.tabbernav {
text-align: center;
margin-left: 0;
}
// extra specific to override base style
.mw-body & .tabbertab {
padding: 5px;
}
}
table.infobox {
margin: 0;
}
.infobox-buttons {
margin-top: 0;
}
}
@media screen and (min-width: @width-breakpoint-tablet) {
.multi-infobox {
float: right;
margin-left: 1em;
width: 300px;
}
}
/*
The following styles were used as a temporary fix for TabberNeue.
We're currently using old Tabber because TabberNeue breaks if a tab
dynamically changes size, such as multi-infobox.
*/
/*
.multi-infobox {
margin-top: 0.5em;
margin-bottom: 2.5em;
.tabber__header {
text-align: center;
margin-left: 0;
justify-content: center;
}
.tabber__panel {
margin: 0;
padding: 0;
}
.tabber__panel.tabber__panel--active {
width: 100%;
}
.infobox-buttons {
margin-top: 0;
}
}*/
d93ee46801f2a9285c16b7dc80787383ac01aa1c
MediaWiki:Minerva.less/tiles.less
8
419
673
2024-03-22T20:36:52Z
Jayden
3
Created page with "// standard tile class // mainpage.less relies on this; check before changing anything /* ------------------ tile ------------------ */ .tile { padding: 1.5em 2em 1em; h2 { font-weight: 600; border: none; margin-top: .4em; } // reduce spacing when byline and heading appear together // (which should be the only way bylines appear) .byline + h2 { margin-top: -0.5em; } } /* ------------------..."
less
less
// standard tile class
// mainpage.less relies on this; check before changing anything
/* ------------------
tile
------------------ */
.tile {
padding: 1.5em 2em 1em;
h2 {
font-weight: 600;
border: none;
margin-top: .4em;
}
// reduce spacing when byline and heading appear together
// (which should be the only way bylines appear)
.byline + h2 {
margin-top: -0.5em;
}
}
/* ------------------
halves
------------------ */
// goes inside tile-halves
.tile-top {
padding: 1.3rem 1.5rem 2rem;
}
// goes inside tile-halves
.tile-bottom {
padding: 1rem 1.5rem 2rem;
&.read-more {
padding: 0;
a {
padding: 1em 1.75em;
}
}
}
/* ---------------------
oswf tile
--------------------- */
.tile.oswf-day {
float: none !important;
padding: .5em 2em;
h2 {
margin-right: auto;
margin-left: auto;
margin-top: -0.5em;
}
}
.oswf-tile {
margin-bottom: 1em;
h2 {
clear: none !important;
margin-top: 0;
padding-top: f2em !important;
}
.oswf-img {
display: block;
max-width: 75px;
float: right;
img {
max-width: 100%;
height: auto !important;
}
}
}
53d6f4d827b94f08dfa151a1f72818e45fad66a5
674
673
2024-03-22T20:37:04Z
Jayden
3
remove stuff that is going to be unnecessary
less
less
// standard tile class
// mainpage.less relies on this; check before changing anything
/* ------------------
tile
------------------ */
.tile {
padding: 1.5em 2em 1em;
h2 {
font-weight: 600;
border: none;
margin-top: .4em;
}o
// reduce spacing when byline and heading appear together
// (which should be the only way bylines appear)
.byline + h2 {
margin-top: -0.5em;
}
}
/* ------------------
halves
------------------ */
// goes inside tile-halves
.tile-top {
padding: 1.3rem 1.5rem 2rem;
}
// goes inside tile-halves
.tile-bottom {
padding: 1rem 1.5rem 2rem;
&.read-more {
padding: 0;
a {
padding: 1em 1.75em;
}
}
}
17bef3c4cffe599f5a1a51a9bc964261d1ad5187
MediaWiki:Minerva.less/navbox.less
8
420
675
2024-03-22T20:37:26Z
Jayden
3
Created page with "/* ==================== navboxes ==================== */ @navbox-indent: .85em; @navbox-breakpoint-mobile: @width-breakpoint-tablet - 1; @navbox-breakpoint-tablet: @width-breakpoint-tablet; :root { --mobile-navbox-wide-bg-color: desaturate( lighten( #d8ccb4, 3% ), 2% ); --mobile-navbox-linear-gradient: linear-gradient(to right, fade( @white, 0% ), var(--body-main) 95%, var(--body-main) ); } .navbox { border: 1px solid @BODY_BORDER; box-shadow: @b..."
less
less
/* ====================
navboxes
==================== */
@navbox-indent: .85em;
@navbox-breakpoint-mobile: @width-breakpoint-tablet - 1;
@navbox-breakpoint-tablet: @width-breakpoint-tablet;
:root {
--mobile-navbox-wide-bg-color: desaturate( lighten( #d8ccb4, 3% ), 2% );
--mobile-navbox-linear-gradient: linear-gradient(to right, fade( @white, 0% ), var(--body-main) 95%, var(--body-main) );
}
.navbox {
border: 1px solid @BODY_BORDER;
box-shadow: @box-shadow;
font-size: .85em;
// get rid of stray default mobile css
.content & ul {
padding-left: 0;
li {
margin-bottom: 0;
}
}
@media screen and (max-width: @navbox-breakpoint-mobile) {
td,
th,
tr,
tbody,
.navbox-subgroup {
display: block;
}
}
@media screen and (min-width: @navbox-breakpoint-tablet) {
.content table&,
.content & table {
width: 100% !important;
}
}
.navbox-subgroup {
margin: 0;
}
.navbar {
display: none;
}
// hide images to improve performance
.plink-template,
img {
display: none;
}
}
// main navbox heading
.navbox-title {
color: @TEXT_COLOR;
background-color: @BODY_DARK;
font-size: 140%;
text-align: center;
padding: .25em @navbox-indent;
@media screen and (min-width: @navbox-breakpoint-tablet) {
border-bottom: 1px solid @BODY_BORDER;
}
}
// group headings
.navbox-group-title {
background-color: @BODY_MID;
text-align: left;
padding: .2em @navbox-indent;
// truncate header
@media screen and (max-width: @navbox-breakpoint-mobile) {
overflow: hidden;
white-space: nowrap;
text-overflow: ellipsis;
}
@media screen and (min-width: @navbox-breakpoint-tablet) {
border: 1px solid @BODY_BORDER;
border-width: 0 1px 1px 0;
width: 12vw;
}
}
// hide title for half-normal-half-subgroup groups
.navbox-group-title-hidden {
display: none;
}
.navbox-list {
padding: 0;
position: relative; // needed for ::after
@media screen and (min-width: @navbox-breakpoint-tablet) {
border-bottom: 1px solid @BODY_BORDER;
}
ul {
display: flex;
@media screen and (max-width: @navbox-breakpoint-mobile) {
white-space: nowrap;
overflow-x: auto; // don't combine these into one overflow:
overflow-y: hidden;
-webkit-overflow-scrolling: touch; // for inertia scrolling
}
@media screen and (min-width: @navbox-breakpoint-tablet) {
padding: .2em @navbox-indent .5em !important;
flex-wrap: wrap;
}
}
@media screen and (min-width: @navbox-breakpoint-tablet) {
&[style*="center"] ul {
justify-content: center;
}
}
li {
display: inline-flex;
align-items: center;
height: 3.5em;
margin: 0 0 0 @navbox-indent;
@media screen and (min-width: @navbox-breakpoint-tablet) {
height: 2.1em;
&:first-child {
margin-left: 0;
}
}
// create separator between links
& + li::before {
content: '•';
display: inline-block;
white-space: pre-wrap;
position: relative;
left: -@navbox-indent / 2;
color: var(--text-color);
pointer-events: none;
}
// for list items that use [[File: instead of plink/chatl,
// hide the second interpunct
& + li > a + a::before {
display: none;
}
&:last-child {
margin-right: 2em;
}
}
// gradient fade to indicate more content
// <https://stackoverflow.com/questions/35801932/>
&::after {
content: '';
display: block;
position: absolute;
background-image: var(--mobile-navbox-linear-gradient);
height: 100%;
width: 2.5em;
top: 0;
right: 0;
pointer-events: none;
@media screen and (min-width: @navbox-breakpoint-tablet) {
display: none;
}
}
// for lists with subgroups as children instead of actual items
&.navbox-parent {
border-bottom: 0;
padding: 0;
&::after {
display: none;
}
}
}
// nested groups
.navbox-group {
// two levels deep
& & {
.navbox-group-title {
background-color: @BODY_LIGHT;
padding: 0 @navbox-indent 0 @navbox-indent * 2;
@media screen and (min-width: @navbox-breakpoint-tablet) {
padding-left: @navbox-indent;
}
}
.navbox-list {
ul {
padding-left: @navbox-indent * 2;
}
li {
margin-bottom: 0;
// realign first list item with heading
&:first-child {
margin-left: 0;
}
}
}
// fake only one level of indentation
&.navbox-group-split .navbox-list ul {
padding-left: @navbox-indent;
}
}
// three levels deep
& & & {
&:first-child .navbox-group-title {
padding-top: .5em;
@media screen and (min-width: @navbox-breakpoint-tablet) {
padding-top: 0;
}
}
.navbox-group-title {
background-color: transparent;
padding-left: @navbox-indent * 3;
@media screen and (min-width: @navbox-breakpoint-tablet) {
background-color: var(--mobile-navbox-wide-bg-color);
padding-left: @navbox-indent;
}
}
.navbox-list ul {
padding-left: @navbox-indent * 3;
}
// fake only two levels of indentation
&.navbox-group-split .navbox-list ul {
padding-left: @navbox-indent * 2;
}
}
}
27a985ca4f34aa50502c7b315c97e28ff0601694
MediaWiki:Minerva.less/mainpage.less
8
421
676
2024-03-22T20:38:04Z
Jayden
3
Created page with "/* =================== MAIN PAGE =================== */ // preview the mobile main page at <https://brightershoreswiki.org/?useformat=mobile> /* =================== mixins =================== */ .uppercase-heading(@text-color: var(--byline-color)) { color: @text-color; font-weight: bold; text-transform: uppercase; letter-spacing: .025em; } @keyframes slide-up { from { opacity: 0; transform: translateY(1rem)..."
less
less
/* ===================
MAIN PAGE
=================== */
// preview the mobile main page at <https://brightershoreswiki.org/?useformat=mobile>
/* ===================
mixins
=================== */
.uppercase-heading(@text-color: var(--byline-color)) {
color: @text-color;
font-weight: bold;
text-transform: uppercase;
letter-spacing: .025em;
}
@keyframes slide-up {
from {
opacity: 0;
transform: translateY(1rem);
}
to {
opacity: 1;
transform: translateY(0);
}
}
/* ====================
general styles
==================== */
.mainpage-header {
margin: 2em 1em 0; // reduce margins
.header-intro {
@media only screen and (max-width: @width-breakpoint-desktop) {
h1 {
text-align: center;
font-size: 1.8em;
}
p {
font-size: 1em; // reset from 1.1m
}
}
}
}
.mainpage-body {
.tile-row {
// common does width: 100%
width: inherit;
}
}
.mainpage-left {
.tile {
padding: 2.5em 1.75em 2em;
h2 {
padding: 0;
margin: .65em .5em;
}
}
.tile-halves {
h2 {
padding: 0;
margin: .65em .5em;
}
}
}
/* =============================
section-specific styles
============================= */
/* --------------------
recent updates
-------------------- */
.mainpage-recent-updates {
padding: 1.5em 1em 2.5em;
&::before {
content: 'Recent updates';
display: block;
margin-left: 1.5em;
.uppercase-heading();
grid-column: ~"1 / 4";
}
.tile-halves {
display: inline-block;
width: 100%;
white-space: initial;
flex: unset;
&:nth-child(1) {
animation: .9s .2s both slide-up;
}
&:nth-child(2) {
animation: .9s .4s both slide-up;
}
&:nth-child(3) {
animation: .9s .6s both slide-up;
}
}
.tile-top {
height: 9em;
overflow: hidden;
}
.tile-bottom {
padding-bottom: .5rem;
}
.byline {
margin: 0;
& + h2 {
margin: .025em 0 0;
padding: 0;
}
}
// center recent updates for smaller widths
@media only screen and (max-width: @width-breakpoint-tablet) {
&::before {
text-align: center;
margin: 0;
grid-column: auto;
}
}
}
/* --------------------
wiki contents
-------------------- */
.mainpage-contents {
background: var(--body-mid);
padding: 55px 1em 2em 2.5em;
overflow-x: auto;
grid-template-columns: repeat(6, 1fr) !important; // shouldnt break into two
position: relative;
scroll-snap-align: center;
&::before {
content: 'Explore';
margin: 1em;
position: absolute;
top: 0;
.uppercase-heading(@text-color: inherit);
grid-column: ~"1 / 6";
}
.tile-halves {
border: none;
background: none;
box-shadow: none;
width: 200px;
}
.tile-top {
padding: 0;
height: initial;
}
.tile-bottom {
border: none;
}
h2 {
width: 100%;
}
}
/* --------------------
skills
-------------------- */
.mainpage-skills .tile-top ul {
@media only screen and (max-width: @width-breakpoint-desktop) {
margin: 0;
}
}
/* --------------------
wiki news
-------------------- */
.mainpage-wikinews {
&::before {
content: 'From the wiki';
margin-left: .75em;
.uppercase-heading();
}
}
/* --------------------
discord server
-------------------- */
.mainpage-discord {
.tile-top {
padding: 1em 2em;
height: 70px; // not in em because the server icon is a fixed size
.partner-icon {
margin-right: 1em;
}
.server-name {
margin: 0;
}
.server-tagline {
margin: 0;
}
}
}
/* --------------------
twitter
-------------------- */
.mainpage-twitter {
margin-bottom: 0;
.tile-top {
padding: 1em 2em;
height: 70px; // not in em because the server icon is a fixed size
.twitter-logo {
margin-right: 1em;
}
.twitter-name {
margin: 0;
}
.twitter-tagline {
margin: 0;
}
}
}
ede6ec3d60fc69fa30a86d2b1660dd20ec07efc1
MediaWiki:Minerva.css
8
422
677
2024-03-22T20:38:11Z
Jayden
3
Updating CSS from [[MediaWiki:Minerva.less]]
css
text/css
/* <pre> */
body {
font-family: system-ui, -apple-system, Roboto, Helvetica, sans-serif;
}
@media all and (max-width: 320px) {
body {
font-size: 0.9em;
}
}
.content {
line-height: 1.7;
}
.pre-content h1,
.content h1,
.content h2 {
font-weight: bold;
}
body {
background: var(--body-background-color);
color: var(--text-color);
}
select {
color: var(--text-color);
}
a:not( [ href ] ) {
color: inherit;
}
a.external,
.mw-parser-output a.external {
background-image: var(--external-icon);
}
blockquote {
border-color: var(--body-mid);
font-family: inherit;
}
.pre-content h1 {
text-align: center;
}
.mw-parser-output h2:first-of-type {
clear: both;
}
.content .mw-parser-output > h2,
.content .section-heading {
border-color: var(--sidebar);
}
.content .mw-parser-output > h2,
.content .section-heading {
border-color: var(--sidebar);
}
.content .plainlist ol,
.content .plainlist ul {
padding: 0;
}
.content p {
margin: 0.5em 0;
}
.content hr {
background: none;
border-color: var(--sidebar);
border-style: solid;
border-width: 1px 0 0 0;
height: initial;
}
.content kbd,
.content samp {
border: none;
}
.content code,
.content pre {
background-color: var(--mw-code-background-color);
border: 1px solid var(--body-border);
}
:root {
--searchbutton-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 20 20'%3E%3Cg fill='%23000'%3E%3Cpath d='M12.2 13.6a7 7 0 1 1 1.4-1.4l5.4 5.4-1.4 1.4-5.4-5.4zM3 8a5 5 0 1 0 10 0A5 5 0 1 0 3 8z'/%3E%3C/g%3E%3C/svg%3E");
--external-icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' encoding='UTF-8'%3F%3E%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='10' viewBox='0 0 10 10'%3E%3Cg fill='%23906039'%3E%3Cpath d='M8.9 8.9H1.1V1.1h2.8V0H1.1C.5 0 0 .5 0 1.1v7.8C0 9.5.5 10 1.1 10h7.8c.6 0 1.1-.5 1.1-1.1V6.1H8.9v2.8z'/%3E%3Cpath d='M10 0H5.6l1.8 1.8L4.2 5l.8.8 3.2-3.2L10 4.4V0z'/%3E%3C/g%3E%3C/svg%3E");
}
#mw-mf-page-center {
background-color: transparent;
}
.header {
border-top: none;
}
.header-container.header-chrome {
background: var(--body-background-image) var(--body-background-color) no-repeat;
background-color: var(--body-background-color);
background-size: 900px;
box-shadow: inset 0 -1px 3px rgba(0, 0, 0, 0.1);
}
.header-container .notification-count {
border-radius: 50%;
}
.header-container .notification-count.notification-unseen {
background: none;
}
.header-container .branding-box {
opacity: 1;
}
.search-box {
text-align: right;
}
.search-box .search {
background-color: var(--search-box);
border-color: var(--search-box);
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
}
.search-box .search::placeholder {
color: var(--byline-color);
}
.client-nojs .search-box .search:focus,
.search-overlay .search-box .search:focus {
border-color: var(--link-color);
box-shadow: inset 0 0 0 1px var(--link-color), 0 1px 1px rgba(0, 0, 0, 0.05);
}
.mw-ui-background-icon-search {
background-image: var(--searchbutton-icon);
}
.overlay {
background: var(--body-main);
}
.overlay textarea {
color: var(--text-color);
}
.overlay.search-overlay {
background: var(--body-main);
}
.overlay.search-overlay .results,
.overlay.search-overlay .search-feedback {
background-color: var(--body-light);
}
.overlay.search-overlay .search-content {
border-color: var(--body-mid);
}
.overlay .license {
color: var(--base-text-color);
}
.overlay .panel {
border-color: var(--sidebar);
}
.overlay .content-header {
background-color: var(--body-light);
border-color: transparent;
}
.overlay.overlay-loading {
background: var(--ooui-window-background);
}
.overlay .overlay-content {
background: var(--body-main);
}
.page-summary h2,
.page-summary h3 {
color: var(--text-color);
}
.page-list li,
.topic-title-list li,
.site-link-list li {
border-color: var(--body-mid);
}
.overlay-enabled .overlay:not(.editor-overlay),
.overlay-enabled #mw-mf-page-center {
overflow-y: scroll;
}
.overlay-header-container,
.overlay-footer-container {
background-color: var(--body-background-color);
border-color: transparent;
}
.editor-overlay .wikitext-editor {
color: var(--text-color);
}
.editor-overlay .overlay-header {
outline-color: transparent;
}
.editor-overlay .summary-request {
color: var(--text-color);
}
.editor-overlay .editor-switcher {
border: none;
}
.action-submit .mw-editnotice .action-edit .mw-editnotice,
.action-submit .mw-editTools,
.action-edit .mw-editTools,
.action-submit .preview-limit-report-wrapper,
.action-edit .preview-limit-report-wrapper,
.action-submit .diff-otitle,
.action-edit .diff-otitle,
.action-submit .diff-ntitle,
.action-edit .diff-ntitle,
.action-submit #section_0,
.action-edit #section_0,
.action-submit #editpage-copywarn,
.action-edit #editpage-copywarn,
.action-submit #mw-anon-edit-warning,
.action-edit #mw-anon-edit-warning {
color: var(--byline-color);
}
.wikitext-editor {
background-color: var(--body-main);
}
.ve-mobile-fakeToolbar {
border: none;
}
.ve-mobile-fakeToolbar-container {
background: var(--body-background-color);
border: none;
}
.ve-mobile-fakeToolbar .mw-ui-icon-mf-spinner {
border-color: transparent;
}
.ve-ui-targetToolbar-mobile .oo-ui-toolbar-tools > .ve-ui-toolbar-group-back {
border-color: transparent;
}
.ve-ui-mobileContext {
background-color: var(--body-light);
border-color: var(--body-light);
}
.ve-ui-mobileContext .ve-ui-linearContextItem-body-action-wrapper {
border-color: var(--body-border);
}
.ve-ui-linearContextItem-foot:not(:empty) {
border-color: var(--body-border);
}
.ve-ui-mwSaveDialog-options {
backgroubd-color: var(--body-light);
border-color: var(--body-mid);
}
.page-actions-menu {
border-color: var(--sidebar);
}
#language-selector {
display: none;
}
.minerva__tab-container .minerva__tab {
color: var(--text-color);
}
.minerva__tab-container .minerva__tab.new,
.minerva__tab-container .minerva__tab.new:visited,
.minerva__tab-container .minerva__tab.new:hover,
.minerva__tab-container .minerva__tab.new:active {
color: var(--redlink-color);
}
.minerva__tab-container .minerva__tab.selected {
border-color: var(--body-border);
}
.heading-holder .tagline {
color: var(--base-heading-color);
}
.minerva-footer {
border-color: transparent;
}
.mw-footer > .post-content {
margin-top: 32px;
}
.mw-footer > .post-content > .minerva-footer-logo {
display: none;
}
.mw-footer .hlist li:after {
color: var(--background-text-color);
}
.last-modified-bar {
border-top: 1px solid;
border-color: transparent;
background: none;
color: var(--text-color);
}
.last-modified-bar a,
.last-modified-bar a:active,
.last-modified-bar a:visited,
.last-modified-bar .last-modified-text-accent {
color: var(--background-text-color);
}
.last-modified-bar.active,
.last-modified-bar.active:active,
.last-modified-bar.active:visited,
.last-modified-bar.active .last-modified-text-accent {
color: #fff;
}
.mw-ui-icon-mf-expand-gray:not(.mw-ui-icon-mf-expand-invert):before {
background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 20 20'%3E%3Ctitle%3Eexpand%3C/title%3E%3Cg fill='%2354595d'%3E%3Cpath d='M17.5 4.75l-7.5 7.5-7.5-7.5L1 6.25l9 9 9-9z'/%3E%3C/g%3E%3C/svg%3E");
}
.toggle-list__list {
background-color: var(--wikitable-bg);
}
.toggle-list-item__anchor:visited,
.toggle-list-item__anchor:active {
color: var(--base-text-color);
}
.toggle-list-item:hover {
background: var(--wikitable-bg-lighter);
}
.toggle-list-item__label {
color: var(--base-text-color);
}
.mw-ui-icon-wikimedia-search-base20:before {
background-image: url("data:image/svg+xml,%3C%3Fxml version='1.0' encoding='UTF-8'%3F%3E%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 20 20'%3E%3Ctitle%3Esearch%3C/title%3E%3Cg fill='white'%3E%3Cpath fill-rule='evenodd' d='M12.2 13.6a7 7 0 111.4-1.4l5.4 5.4-1.4 1.4-5.4-5.4zM13 8A5 5 0 113 8a5 5 0 0110 0z'/%3E%3C/g%3E%3C/svg%3E%0A");
}
.mw-ui-icon-wikimedia-menu-base20:before {
background-image: url("data:image/svg+xml,%3C%3Fxml version='1.0' encoding='UTF-8'%3F%3E%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 20 20'%3E%3Ctitle%3Emenu%3C/title%3E%3Cg fill='white'%3E%3Cpath d='M1 3v2h18V3zm0 8h18V9H1zm0 6h18v-2H1z'/%3E%3C/g%3E%3C/svg%3E%0A");
}
.mw-ui-icon-wikimedia-bellOutline-base20:before {
background-image: url("data:image/svg+xml,%3C%3Fxml version='1.0' encoding='UTF-8'%3F%3E%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 20 20'%3E%3Ctitle%3Ebell%3C/title%3E%3Cg fill='white'%3E%3Cpath d='M11.5 2.19C14.09 2.86 16 5.2 16 8v6l2 2v1H2v-1l2-2V8c0-2.8 1.91-5.14 4.5-5.81V1.5C8.5.67 9.17 0 10 0s1.5.67 1.5 1.5v.69zM10 4C7.79 4 6 5.79 6 8v7h8V8c0-2.21-1.79-4-4-4zM8 18h4c0 1.1-.9 2-2 2s-2-.9-2-2z'/%3E%3C/g%3E%3C/svg%3E%0A");
}
.mw-ui-icon-minerva-userAvatarOutline:before {
background-image: url("data:image/svg+xml,%3C%3Fxml version='1.0' encoding='UTF-8'%3F%3E%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 20 20'%3E%3Ctitle%3Euser avatar%3C/title%3E%3Cg fill='white'%3E%3Cpath d='M10 8c1.7 0 3.06-1.35 3.06-3S11.7 2 10 2 6.94 3.35 6.94 5 8.3 8 10 8zm0 2c-2.8 0-5.06-2.24-5.06-5S7.2 0 10 0s5.06 2.24 5.06 5-2.26 5-5.06 5zm-7 8h14v-1.33c0-1.75-2.31-3.56-7-3.56s-7 1.81-7 3.56V18zm7-6.89c6.66 0 9 3.33 9 5.56V20H1v-3.33c0-2.23 2.34-5.56 9-5.56z'/%3E%3C/g%3E%3C/svg%3E%0A");
}
@media all and (min-width: 1000px) {
.mw-ui-icon-with-label-desktop,
.mw-ui-icon-with-label-desktop:hover,
.mw-ui-icon-with-label-desktop:focus,
.mw-ui-icon-with-label-desktop:active,
.mw-ui-icon-with-label-desktop:visited {
color: var(--base-text-color) !important;
}
}
.header-action .mw-ui-icon-mf-close-base20:before {
background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 20 20'%3E%3Ctitle%3Eclose%3C/title%3E%3Cg fill='%23fff'%3E%3Cpath d='m4.3 2.9 12.8 12.8-1.4 1.4L2.9 4.3z'/%3E%3Cpath d='M17.1 4.3 4.3 17.1l-1.4-1.4L15.7 2.9z'/%3E%3C/g%3E%3C/svg%3E");
}
#mw-mf-page-left {
background-color: var(--body-background-color);
}
#mw-mf-page-left .secondary-action {
border-left-color: var(--body-mid);
}
#mw-mf-page-left ul li {
background-color: var(--body-main);
border-color: var(--body-mid);
}
#mw-mf-page-left ul li a {
color: var(--base-text-color);
}
#mw-mf-page-left ul li a:hover {
box-shadow: inset 4px 0 0 0 var(--link-color);
}
#mw-mf-page-left ul.hlist li a {
color: var(--background-link-color);
}
#mw-mf-page-left ul.hlist li a span {
font-size: 0.8125rem;
}
.notifications-overlay.navigation-drawer {
box-shadow: -1px 0 8px 0 rgba(0, 0, 0, 0.35);
}
.notifications-overlay .mw-echo-ui-actionMenuPopupWidget-menu {
border: none;
}
.mw-ui-anchor.mw-ui-progressive,
.mw-ui-anchor.mw-ui-progressive:active,
.mw-ui-anchor.mw-ui-progressive:hover,
.mw-ui-anchor.mw-ui-progressive:focus {
color: var(--link-color);
}
.minerva-talk-full-page-button {
background-color: var(--body-main);
border-color: var(--body-dark);
color: var(--link-color);
}
.minerva-talk-content-explained {
border-color: var(--sidebar);
color: var(--base-text-color);
}
.talk-overlay .comment .wikitext-editor {
border-color: var(--body-border);
}
.client-js .skin-minerva--talk-simplified .section-heading {
border-color: var(--sidebar);
}
.mw-notification a,
.toast a {
color: var(--link-color);
}
.drawer {
background-color: var(--body-light);
}
.drawer.references-drawer {
background-color: var(--body-light);
color: var(--text-color);
}
.drawer.references-drawer a {
color: var(--link-color);
}
.drawer.references-drawer .references-drawer__title {
color: var(--text-color);
}
.drawer.references-drawer .mw-ui-icon::before {
filter: brightness(0);
}
.cta-holder {
background: var(--body-light);
}
.cta-holder .desc {
color: var(--byline-color);
}
.mw-tag-marker {
border-color: var(--body-border);
}
.oo-ui-toolGroup {
background: var(--body-background-color);
}
.load-fail-msg {
color: var(--text-color);
}
.load-fail-msg-link a {
color: var(--link-color);
}
.image-carousel .image-loaded {
background: url("data:image/svg+xml,%3C%3Fxml version='1.0' encoding='UTF-8'%3F%3E%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16'%3E%3Cpath d='M0 0h8v16h8V8H0z' opacity='.13'/%3E%3C/svg%3E%0A") repeat;
}
.image-details {
background-color: var(--body-light);
border-color: transparent;
}
@media all and (min-width: 720px) {
.ns-special .pre-content {
background-color: transparent;
}
.ns-special .mw-body {
background: var(--body-main);
}
.ns-special .mw-body form {
background: transparent;
}
}
form.mw-mf-settings .oo-ui-fieldLayout,
form.mw-mf-settings .oo-ui-fieldLayout:first-child {
border-color: var(--body-mid);
}
.ns-special .content-header {
border-bottom-color: var(--body-dark);
}
.action-history .mw-history-compareselectedversions {
background-color: var(--body-main);
}
.action-history #pagehistory li:not(.selected) {
border-bottom-color: var(--sidebar);
}
ul.mw-contributions-list li,
ul.special li {
border-color: var(--sidebar);
}
.page-list li > a:not(.mw-ui-icon-element),
.topic-title-list li > a:not(.mw-ui-icon-element),
.site-link-list li > a:not(.mw-ui-icon-element) {
color: var(--byline-color);
}
.page-list.side-list .list-thumb,
.topic-title-list.side-list .list-thumb,
.site-link-list.side-list .list-thumb {
color: var(--text-color);
}
.page-list .info,
.topic-title-list .info,
.site-link-list .info,
.page-list .component,
.topic-title-list .component,
.site-link-list .component {
color: var(--byline-color);
}
.mw-mf-user {
color: var(--text-color);
}
.content .mw-index-pager-list-header {
background-color: var(--body-mid);
color: inherit;
font-family: inherit;
}
.diff-editfont-monospace {
font-family: monospace,monospace;
}
:root {
--diff-deletedline-background: #fbc0ba;
}
.minoredit {
background: var(--body-mid);
}
#mw-mf-diffview .mw-mf-diff-date {
color: var(--byline-color);
}
#mw-mf-diffview .mw-diff-inline-deleted del,
#mw-mf-diffview .mw-diff-inline-changed del {
background: var(--diff-deletedline-background);
color: var(--diff-deletedline-color);
border-radius: 0.33em;
}
#mw-mf-diffview .mw-diff-inline-added ins,
#mw-mf-diffview .mw-diff-inline-changed ins {
background: var(--diff-addedline-background);
color: var(--diff-addedline-color);
border-radius: 0.33em;
}
#mw-mf-diffview .mw-diff-inline-moved {
background: var(--diff-context-background);
}
#mw-mf-diffview #mw-mf-userinfo {
background: var(--body-light);
border-top-color: var(--body-border);
}
#mw-mf-diffview #mw-mf-userinfo .mw-mf-edit-count {
color: var(--text-color);
}
#mw-mf-diffview #mw-mf-userinfo .mw-mf-edit-count div {
color: var(--base-text-color);
}
.infobox {
font-size: 85%;
background-color: var(--body-light);
border: 1px solid var(--body-border);
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
table-layout: fixed;
}
.content .infobox {
display: table;
}
.content .infobox caption {
display: table-caption;
background: none;
}
.infobox .infobox-header {
color: var(--infobox-text-color);
font-size: 1.15em;
background: var(--body-dark);
padding: 0.5em 0;
text-align: center;
}
.infobox .infobox-subheader {
background: var(--body-dark);
line-height: 2em;
text-align: center;
}
.infobox .infobox-subheader a {
color: var(--infobox-text-color);
}
.infobox th:not(.infobox-nested):not(.infobox-subheader):not(.infobox-header) {
text-align: right;
vertical-align: top;
border-right: 2px solid var(--body-dark);
padding: 0.2em 0.5em;
}
.infobox caption.infobox-caption {
text-align: center;
}
.infobox td {
padding: 0.25em 0.5em;
line-height: 1.6em;
}
.infobox td.infobox-nested {
padding: 0.25em 0;
line-height: 1em;
}
.infobox .infobox-padding {
height: 0.5em;
padding: 0;
border: 0;
}
.infobox .infobox-image {
text-align: center;
}
.infobox .infobox-image.inventory-image {
height: 32px;
}
.infobox .infobox-nested {
text-align: center;
}
.infobox .infobox-nested + .infobox-nested {
border-left: 2px solid var(--body-dark);
}
.infobox .infobox-cell-hidden {
display: none;
}
.infobox .infobox-full-width-content {
max-width: 300px;
text-align: center;
overflow-x: hidden;
padding: 0;
}
.skill-info a[href$="?action=edit"] + a[href$="?action=edit"] {
display: none;
}
.infobox-buttons {
margin-top: 0.5em;
text-align: center;
}
.infobox-bottom-links {
display: none;
}
.advanced-data {
display: none;
}
@media screen and (min-width: 720px) {
.content table.infobox {
float: right;
margin-top: 0.5em;
margin-left: 1em;
width: 300px !important;
}
.content table.infobox.skill-info {
float: none;
margin: 0 0 1em 0;
}
}
.multi-infobox {
margin-top: 0.5em;
margin-bottom: 2.5em;
}
.multi-infobox .tabber {
margin: 0;
}
.multi-infobox .tabber .tabbernav {
text-align: center;
margin-left: 0;
}
.mw-body .multi-infobox .tabber .tabbertab {
padding: 5px;
}
.multi-infobox table.infobox {
margin: 0;
}
.multi-infobox .infobox-buttons {
margin-top: 0;
}
@media screen and (min-width: 720px) {
.multi-infobox {
float: right;
margin-left: 1em;
width: 300px;
}
}
.tile {
padding: 1.5em 2em 1em;
}
.tile h2 {
font-weight: 600;
border: none;
margin-top: 0.4em;
}
.tile o .byline + h2 {
margin-top: -0.5em;
}
.tile-top {
padding: 1.3rem 1.5rem 2rem;
}
.tile-bottom {
padding: 1rem 1.5rem 2rem;
}
.tile-bottom.read-more {
padding: 0;
}
.tile-bottom.read-more a {
padding: 1em 1.75em;
}
:root {
--mobile-navbox-wide-bg-color: #dcd3bf;
--mobile-navbox-linear-gradient: linear-gradient(to right, rgba(255, 255, 255, 0), var(--body-main) 95%, var(--body-main));
}
.navbox {
border: 1px solid var(--body-border);
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
font-size: 0.85em;
}
.content .navbox ul {
padding-left: 0;
}
.content .navbox ul li {
margin-bottom: 0;
}
@media screen and (max-width: 719px) {
.navbox td,
.navbox th,
.navbox tr,
.navbox tbody,
.navbox .navbox-subgroup {
display: block;
}
}
@media screen and (min-width: 720px) {
.content table.navbox,
.content .navbox table {
width: 100% !important;
}
}
.navbox .navbox-subgroup {
margin: 0;
}
.navbox .navbar {
display: none;
}
.navbox .plink-template,
.navbox img {
display: none;
}
.navbox-title {
color: var(--text-color);
background-color: var(--body-dark);
font-size: 140%;
text-align: center;
padding: 0.25em 0.85em;
}
@media screen and (min-width: 720px) {
.navbox-title {
border-bottom: 1px solid var(--body-border);
}
}
.navbox-group-title {
background-color: var(--body-mid);
text-align: left;
padding: 0.2em 0.85em;
}
@media screen and (max-width: 719px) {
.navbox-group-title {
overflow: hidden;
white-space: nowrap;
text-overflow: ellipsis;
}
}
@media screen and (min-width: 720px) {
.navbox-group-title {
border: 1px solid var(--body-border);
border-width: 0 1px 1px 0;
width: 12vw;
}
}
.navbox-group-title-hidden {
display: none;
}
.navbox-list {
padding: 0;
position: relative;
}
@media screen and (min-width: 720px) {
.navbox-list {
border-bottom: 1px solid var(--body-border);
}
}
.navbox-list ul {
display: flex;
}
@media screen and (max-width: 719px) {
.navbox-list ul {
white-space: nowrap;
overflow-x: auto;
overflow-y: hidden;
-webkit-overflow-scrolling: touch;
}
}
@media screen and (min-width: 720px) {
.navbox-list ul {
padding: 0.2em 0.85em 0.5em !important;
flex-wrap: wrap;
}
}
@media screen and (min-width: 720px) {
.navbox-list[style*="center"] ul {
justify-content: center;
}
}
.navbox-list li {
display: inline-flex;
align-items: center;
height: 3.5em;
margin: 0 0 0 0.85em;
}
@media screen and (min-width: 720px) {
.navbox-list li {
height: 2.1em;
}
.navbox-list li:first-child {
margin-left: 0;
}
}
.navbox-list li + li::before {
content: '•';
display: inline-block;
white-space: pre-wrap;
position: relative;
left: -0.425em;
color: var(--text-color);
pointer-events: none;
}
.navbox-list li + li > a + a::before {
display: none;
}
.navbox-list li:last-child {
margin-right: 2em;
}
.navbox-list::after {
content: '';
display: block;
position: absolute;
background-image: var(--mobile-navbox-linear-gradient);
height: 100%;
width: 2.5em;
top: 0;
right: 0;
pointer-events: none;
}
@media screen and (min-width: 720px) {
.navbox-list::after {
display: none;
}
}
.navbox-list.navbox-parent {
border-bottom: 0;
padding: 0;
}
.navbox-list.navbox-parent::after {
display: none;
}
.navbox-group .navbox-group .navbox-group-title {
background-color: var(--body-light);
padding: 0 0.85em 0 1.7em;
}
@media screen and (min-width: 720px) {
.navbox-group .navbox-group .navbox-group-title {
padding-left: 0.85em;
}
}
.navbox-group .navbox-group .navbox-list ul {
padding-left: 1.7em;
}
.navbox-group .navbox-group .navbox-list li {
margin-bottom: 0;
}
.navbox-group .navbox-group .navbox-list li:first-child {
margin-left: 0;
}
.navbox-group .navbox-group.navbox-group-split .navbox-list ul {
padding-left: 0.85em;
}
.navbox-group .navbox-group .navbox-group:first-child .navbox-group-title {
padding-top: 0.5em;
}
@media screen and (min-width: 720px) {
.navbox-group .navbox-group .navbox-group:first-child .navbox-group-title {
padding-top: 0;
}
}
.navbox-group .navbox-group .navbox-group .navbox-group-title {
background-color: transparent;
padding-left: 2.55em;
}
@media screen and (min-width: 720px) {
.navbox-group .navbox-group .navbox-group .navbox-group-title {
background-color: var(--mobile-navbox-wide-bg-color);
padding-left: 0.85em;
}
}
.navbox-group .navbox-group .navbox-group .navbox-list ul {
padding-left: 2.55em;
}
.navbox-group .navbox-group .navbox-group.navbox-group-split .navbox-list ul {
padding-left: 1.7em;
}
@keyframes slide-up {
from {
opacity: 0;
transform: translateY(1rem);
}
to {
opacity: 1;
transform: translateY(0);
}
}
.mainpage-header {
margin: 2em 1em 0;
}
@media only screen and (max-width: 1000px) {
.mainpage-header .header-intro h1 {
text-align: center;
font-size: 1.8em;
}
.mainpage-header .header-intro p {
font-size: 1em;
}
}
.mainpage-body .tile-row {
width: inherit;
}
.mainpage-left .tile {
padding: 2.5em 1.75em 2em;
}
.mainpage-left .tile h2 {
padding: 0;
margin: 0.65em 0.5em;
}
.mainpage-left .tile-halves h2 {
padding: 0;
margin: 0.65em 0.5em;
}
.mainpage-recent-updates {
padding: 1.5em 1em 2.5em;
}
.mainpage-recent-updates::before {
content: 'Recent updates';
display: block;
margin-left: 1.5em;
color: var(--byline-color);
font-weight: bold;
text-transform: uppercase;
letter-spacing: 0.025em;
grid-column: 1 / 4;
}
.mainpage-recent-updates .tile-halves {
display: inline-block;
width: 100%;
white-space: initial;
flex: unset;
}
.mainpage-recent-updates .tile-halves:nth-child(1) {
animation: 0.9s 0.2s both slide-up;
}
.mainpage-recent-updates .tile-halves:nth-child(2) {
animation: 0.9s 0.4s both slide-up;
}
.mainpage-recent-updates .tile-halves:nth-child(3) {
animation: 0.9s 0.6s both slide-up;
}
.mainpage-recent-updates .tile-top {
height: 9em;
overflow: hidden;
}
.mainpage-recent-updates .tile-bottom {
padding-bottom: 0.5rem;
}
.mainpage-recent-updates .byline {
margin: 0;
}
.mainpage-recent-updates .byline + h2 {
margin: 0.025em 0 0;
padding: 0;
}
@media only screen and (max-width: 720px) {
.mainpage-recent-updates::before {
text-align: center;
margin: 0;
grid-column: auto;
}
}
.mainpage-contents {
background: var(--body-mid);
padding: 55px 1em 2em 2.5em;
overflow-x: auto;
grid-template-columns: repeat(6, 1fr) !important;
position: relative;
scroll-snap-align: center;
}
.mainpage-contents::before {
content: 'Explore';
margin: 1em;
position: absolute;
top: 0;
color: inherit;
font-weight: bold;
text-transform: uppercase;
letter-spacing: 0.025em;
grid-column: 1 / 6;
}
.mainpage-contents .tile-halves {
border: none;
background: none;
box-shadow: none;
width: 200px;
}
.mainpage-contents .tile-top {
padding: 0;
height: initial;
}
.mainpage-contents .tile-bottom {
border: none;
}
.mainpage-contents h2 {
width: 100%;
}
@media only screen and (max-width: 1000px) {
.mainpage-skills .tile-top ul {
margin: 0;
}
}
.mainpage-wikinews::before {
content: 'From the wiki';
margin-left: 0.75em;
color: var(--byline-color);
font-weight: bold;
text-transform: uppercase;
letter-spacing: 0.025em;
}
.mainpage-discord .tile-top {
padding: 1em 2em;
height: 70px;
}
.mainpage-discord .tile-top .partner-icon {
margin-right: 1em;
}
.mainpage-discord .tile-top .server-name {
margin: 0;
}
.mainpage-discord .tile-top .server-tagline {
margin: 0;
}
.mainpage-twitter {
margin-bottom: 0;
}
.mainpage-twitter .tile-top {
padding: 1em 2em;
height: 70px;
}
.mainpage-twitter .tile-top .twitter-logo {
margin-right: 1em;
}
.mainpage-twitter .tile-top .twitter-name {
margin: 0;
}
.mainpage-twitter .tile-top .twitter-tagline {
margin: 0;
}
.wikitable {
background: none;
box-shadow: none;
}
.wikitable tbody {
background: var(--body-light);
}
.toc {
background-color: var(--body-light);
border-color: var(--body-border);
}
#filetoc li {
display: inline;
padding-right: 2em;
}
.mw-dismissable-notice-body {
margin: 0;
}
.mw-dismissable-notice-body .mw-dismissable-notice-close-parent {
border-radius: 0 !important;
font-size: 0.75em;
}
:root {
--thumb-image-background: var(--body-light);
--thumb-caption-background: var(--body-mid);
}
.content .thumbinner {
background-color: var(--thumb-bg);
}
.content .thumbimage {
border: 1px solid transparent;
border-bottom: none;
}
.content .thumbcaption {
margin: 0;
padding: 4px 6px !important;
color: inherit;
background: var(--thumb-caption-bg);
}
.content table.messagebox {
margin: 0.5em auto;
}
.content table a > img {
max-width: inherit !important;
height: inherit !important;
}
.content .infobox a > img {
max-width: 100% !important;
height: auto !important;
}
.content .infobox-bonuses a > img {
max-width: inherit !important;
height: inherit !important;
}
5d5316eb0454c64e11ed9ce7c4f97455f8fdb042
Template:Incomplete
10
423
678
2024-03-22T20:38:21Z
Habblet
11
Created page with "{{MessageBox |img = [[File:Item raw basic bacon.png|32px|centre|link=]] |This {{PageType}} or section is incomplete and could do with improvement. |2={{#if:{{{1|}}}|Reason: ''{{{1}}}''<br />}}You can discuss this issue on the [{{fullurl:{{TALKPAGENAME}}}} talk page] or <span class="plainlinks">[{{fullurl:{{NAMESPACE}}:{{PAGENAME}}|action=edit}} edit]</span> this {{PageType}} to improve it. }}<includeonly>{{#ifeq:{{{nocat|}}}|yes||{{#if:{{{1|}}}|{{#ifeq:{{NAMESPACE}}|{{ns..."
wikitext
text/x-wiki
{{MessageBox
|img = [[File:Item raw basic bacon.png|32px|centre|link=]]
|This {{PageType}} or section is incomplete and could do with improvement.
|2={{#if:{{{1|}}}|Reason: ''{{{1}}}''<br />}}You can discuss this issue on the [{{fullurl:{{TALKPAGENAME}}}} talk page] or <span class="plainlinks">[{{fullurl:{{NAMESPACE}}:{{PAGENAME}}|action=edit}} edit]</span> this {{PageType}} to improve it.
}}<includeonly>{{#ifeq:{{{nocat|}}}|yes||{{#if:{{{1|}}}|{{#ifeq:{{NAMESPACE}}|{{ns:Transcript}}|[[Category:Incomplete transcripts]]|[[Category:Incomplete articles]]}}|[[Category:Incomplete without reason]]}}}}</includeonly><noinclude>{{/doc}}</noinclude>
0abf1af99b1398c7584f484ca15c401bdcb87d72
Template:Incomplete/doc
10
424
679
2024-03-22T20:39:01Z
Habblet
11
Created page with "{{Documentation}} This template is used when something on an article or section is missing. Also adds the page to one of: [[:Category:Incomplete transcripts]], [[:Category:Incomplete articles]] or [[:Category:Incomplete without reason]]. ==Usage== {{T|Incomplete|reason}} ==Examples== {{t|Incomplete|There are more ways available}} {{Incomplete|There are more ways available|nocat=yes}} {{TemplateData|<templatedata> { "params": { "1": { "label": "Reason", "de..."
wikitext
text/x-wiki
{{Documentation}}
This template is used when something on an article or section is missing.
Also adds the page to one of: [[:Category:Incomplete transcripts]], [[:Category:Incomplete articles]] or [[:Category:Incomplete without reason]].
==Usage==
{{T|Incomplete|reason}}
==Examples==
{{t|Incomplete|There are more ways available}}
{{Incomplete|There are more ways available|nocat=yes}}
{{TemplateData|<templatedata>
{
"params": {
"1": {
"label": "Reason",
"description": "Reason why this article is incomplete.",
"type": "string"
},
"nocat": {
"label": "Nocat",
"description": "Set to 'yes' to suppress adding category to page. Useful for examples.",
"type": "string"
}
},
"format": "inline"
}
</templatedata>}}
<includeonly>[[Category:Maintenance templates|{{PAGENAME}}]][[Category:Message box templates|{{PAGENAME}}]]</includeonly>
bf329ef6a2073085a1432dd0f807ee8a4c4dc5a8
Category:Incomplete transcripts
14
425
680
2024-03-22T20:39:17Z
Habblet
11
Created page with "[[Category:Transcripts]] [[Category:Maintenance categories]]"
wikitext
text/x-wiki
[[Category:Transcripts]]
[[Category:Maintenance categories]]
c9cd2ce4ae75c5bd4d01c26cb8757da58597b9e8
Category:Transcripts
14
426
681
2024-03-22T20:40:03Z
Habblet
11
Created page with "{{Categoryheader|pages and images|transcripts and dialogue pages. Fen Research owns the copyright of content found on these pages|}} [[Category:Lore]]"
wikitext
text/x-wiki
{{Categoryheader|pages and images|transcripts and dialogue pages. Fen Research owns the copyright of content found on these pages|}}
[[Category:Lore]]
58284ae1887defcc2a369dfab34b55e278b80084
Category:Lore
14
427
682
2024-03-22T20:40:20Z
Habblet
11
Created page with "{{Categoryheader|pages|game lore}} [[Category:Content]]"
wikitext
text/x-wiki
{{Categoryheader|pages|game lore}}
[[Category:Content]]
da44b134422dcf3e5b7fd965945694d363e2d66c
Category:Incomplete articles
14
428
683
2024-03-22T20:40:52Z
Habblet
11
Created page with "{{Categoryheader|pages|articles that are considered to be incomplete|yes|[[Template:Incomplete]]}} [[Category:Maintenance categories]]"
wikitext
text/x-wiki
{{Categoryheader|pages|articles that are considered to be incomplete|yes|[[Template:Incomplete]]}}
[[Category:Maintenance categories]]
bc0d50774fbd2c88d075c79b820e28cd57a0849f
Category:Incomplete without reason
14
429
684
2024-03-22T20:41:24Z
Habblet
11
Created page with " [[Category:Maintenance categories]]"
wikitext
text/x-wiki
[[Category:Maintenance categories]]
b1a4b641aab16a192126f4b327434384c6db6507
Brighter Shores:Orphanage
4
368
685
609
2024-03-22T20:42:44Z
Habblet
11
wikitext
text/x-wiki
{{Otheruses|orphaned pages, templates, and files|the policy on article ownership|Brighter Shores:Ownership}}
{{Shortcut|BS:ORPHAN|BS:O}}
'''Brighter Shores:Orphanage''' is a place where '''orphaned pages and files''' are "stored" to prevent them from appearing in [[Special:LonelyPages]] and [[Special:UnusedFiles]]. <span style="color:red; font-weight:bold">Pages (or images) should not be linked here just because they appear in these special pages, but linked because they are "orphans".</span> (See the definition of "orphan" below.)
==What is an orphan?==
There are several factors that can classify an article as an orphan:
*'''Orphan:''' An article with '''<span style="color:red">fewer than three</span>''' incoming links which meet the criteria for linking below.
*'''Isolated article:''' An article that cannot be reached via a series of links from the [[Brighter Shores Wiki|Main Page]].
*'''Walled garden:''' A group of articles that link to each other, but have few or no links to them from any other Brighter Shores Wiki articles. In effect, that group is orphaned. Theoretically, a walled garden could have numerous articles if they all link to each other but no others link to them.
*'''Orphaned project page:''' A project page (starting with "Brighter Shores:") with few or no links from other project pages. Essays are most likely to be orphaned.
*'''Orphaned image:''' An image not used on Brighter Shores Wiki directly.
==What is the problem with an orphaned article?==
'''A company with no advertising will not be known to others, and as a result, will get few if any customers.'''
Likewise, orphaned articles, since they have few links to them from other pages, are difficult to find, and are most likely to be found only by chance. Because of this, few people know they exist, and therefore, they get less readership and improvement from those who would be able to improve them.
In particular, if the topic is more obscure, this may make it difficult for many to locate. If not for links to a page, the only way such an article can be found is by a person who knows the topic entering it into Brighter Shores Wiki or doing a web search, browsing a category in which it is contained, looking at the edit history of a contributor to the page, or having it show up as a random article.
==Criteria==
An article is orphaned if '''<span style="color:red">fewer than three</span>''' other articles link to it. '''Currently our priority is to focus on orphans with NO incoming links at all.'''
For the purposes of the strict definition, the following pages do not count toward the three incoming links:
*Disambiguation pages
*Redirects
*Lists
*Discussion pages of articles
*Pages outside of article space
Ideally, except for disambiguation links, '''disambiguation pages should be orphaned'''. The only pages that should link to them are articles bearing the title (via templates such as [[Template:Redirect]]) and "See also" sections of other disambiguation pages (when separate disambiguation pages are created due to long length or variances in the titles).
==List of orphaned articles==
A list of orphaned articles can be found at [[Special:LonelyPages]]
{{Construction}}
==Disambiguation pages==
{{Main|/Disambiguation pages}}
'''Disambiguation pages''' are created in order to resolve conflicts in article titles that occur when a single term can be associated with more than one topic, making that term likely to be the natural title for more than one article. In other words, disambiguations are paths leading to different articles which could, in principle, have the same title.
==Templates==
A list of orphaned templates can be found here: [[Special:UnusedTemplates]]
===Signatures===
Orphaned signatures can be found here: [[Template:Signatures/List]]
===Miscellaneous templates===
Miscellaneous orphaned templates can be found here: [[Brighter Shores:Orphanage/Templates]]
==Gallery of orphaned files==
{{incomplete|Compile all orphaned files, and explain their uses.}}
Some files may appear in the [[Special:UnusedFiles|Unused Files]] list if they are not directly used in an article. These files are considered '''orphaned files'''.
===General===
<gallery orientation=landscape>
Wiki@2x.png
</gallery>
===UI Icons===
UI Icons
<gallery>
Section anchor light.svg|Anchor icon for section headers
</gallery>
[[Category:Brighter Shores Wiki community]]
6e098427a4a6fee7365d005bbe2286ada3026d62
File:Wiki@wordmark.png
6
430
686
2024-03-22T20:44:40Z
Jayden
3
wikitext
text/x-wiki
da39a3ee5e6b4b0d3255bfef95601890afd80709
687
686
2024-03-22T20:44:46Z
Jayden
3
Protected "[[File:Wiki@wordmark.png]]" ([Edit=Allow only administrators] (indefinite) [Move=Allow only administrators] (indefinite) [Upload=Allow only administrators] (indefinite))
wikitext
text/x-wiki
da39a3ee5e6b4b0d3255bfef95601890afd80709
Captain Jal Degreene
0
431
688
2024-03-22T20:47:27Z
Brok
15
Created page with "'''Captain Jal Degreene''' is an Npc. In the Main Story, the Player needs clearance from him to get access into the Mince Entrance. [[Category:NPCs]]"
wikitext
text/x-wiki
'''Captain Jal Degreene''' is an Npc. In the Main Story, the Player needs clearance from him to get access into the Mince Entrance.
[[Category:NPCs]]
7fcc1426fdce226a6442d4bb1b32370462e72fc6
689
688
2024-03-22T20:47:59Z
Brok
15
wikitext
text/x-wiki
'''Captain Jal Degreene''' is an Npc. In the Main Story, the Player needs clearance from him to get access into the Mine Entrance.
[[Category:NPCs]]
5bead4d22684eb007ffc5b5cf79c9a7cccac2b64
Brighter Shores:About
4
432
690
2024-03-22T20:48:57Z
Habblet
11
Created page with "{{shortcut|BS:ABOUT|BS:BSW|BS:WIKI}} The '''Brighter Shores Wiki''' is a [[wikipedia:wiki|wiki]] based entirely on the MMORPG game ''[[Brighter Shores]]'' and its many features. There are currently {{NUMBEROFARTICLES}} articles and {{NUMBEROFFILES}} files on the Brighter Shores Wiki, with {{NUMBEROFEDITS}} edits made to {{NUMBEROFPAGES}} pages in total. The wiki currently has {{NUMBEROFACTIVEUSERS}} [[Brighter Shores:Access levels|active users]] and {{NUMBEROFADMINS}} ..."
wikitext
text/x-wiki
{{shortcut|BS:ABOUT|BS:BSW|BS:WIKI}}
The '''Brighter Shores Wiki''' is a [[wikipedia:wiki|wiki]] based entirely on the MMORPG game ''[[Brighter Shores]]'' and its many features. There are currently {{NUMBEROFARTICLES}} articles and {{NUMBEROFFILES}} files on the Brighter Shores Wiki, with {{NUMBEROFEDITS}} edits made to {{NUMBEROFPAGES}} pages in total. The wiki currently has {{NUMBEROFACTIVEUSERS}} [[Brighter Shores:Access levels|active users]] and {{NUMBEROFADMINS}} [[Brighter Shores:Administrators|administrators]].
==Overview==
Started on [[22 March]] [[2024]], the Brighter Shores Wiki's goal is to remain a vast, knowledgeable source for all things in ''Brighter Shores''. As the site is a wiki, anybody can edit it, and all are encouraged to do so.
==How you can help==
If you see anything that needs changing - change it! If you notice improper grammar, spelling errors, punctuation mistakes, inaccuracies, incompleteness or anything else that needs doing, hit the Edit button at the top of the page and correct it yourself. Feel free to also come and contribute to the various [[Brighter Shores:Active discussions|active discussions]] we have. The more opinions from the community we get, the better.
Other activities you can help out with include:
* Checking [[Special:RecentChanges|recent changes]] for vandalism
* Creating [[Special:WantedPages|wanted pages]]
* Creating [[Special:SearchDigest|redirects for commonly searched terms]]
* Ensuring that no pages are [[Special:LonelyPages|orphaned]]
* Making sure that all pages have [[Special:UncategorisedPages|categories]]
Other projects that need your help can be found at [[Brighter Shores:Maintenance]] along with common maintenance tasks.
It's a good idea for users to [[Special:CreateAccount|register an account]]. This way, your IP address is hidden from public view, all your edits can be attributed to one account, and you can customise your userpage to your heart's content.
Check out our [[Help:Editing|editing guides]] for more information on how to edit and what to help with.
==History==
;2024
* '''22 March''' – The Brighter Shores Wiki is founded
==See also==
* [[Brighter Shores:Links]]
[[Category:Brighter Shores Wiki community|About]]
332a8d3759417b8c309c384bf4a43dd14b59813d
User:Svellere
2
433
692
2024-03-22T22:00:21Z
Svellere
21
Created page with "Welcome to my page! Feel free to reach out to me for anything."
wikitext
text/x-wiki
Welcome to my page! Feel free to reach out to me for anything.
d87ab5f72047567fa0f80fab110dfa1cf50cea1b
User talk:Svellere
3
434
693
2024-03-22T22:00:53Z
Svellere
21
Created page with "Beep boop. ~~~~"
wikitext
text/x-wiki
Beep boop.
[[User:Svellere|svellere]] ([[User talk:Svellere|talk]]) 22:00, 22 March 2024 (UTC)
906a7151a2cb71c2c5fd18d90a8ddec7cd1c76ac
User:InvalidCards
2
161
694
292
2024-03-22T22:01:08Z
InvalidCards
4
wikitext
text/x-wiki
Hi, I'm a wiki admin. Let me know if you have any questions!
dc547e00eec4bad1ab74c98d3fbe0bb0811d5dd9
Crenopolis
0
75
695
298
2024-03-22T22:05:25Z
Svellere
21
Add mention that trading is unlocked upon reaching Crenopolis.
wikitext
text/x-wiki
'''Crenopolis''' is a [[location]] that can be accessed by [[player]]s who purchase the [[Premium Pass]]. Players require access to this location to unlock [[trading]].
{{Premium Pass}}
[[Category:Locations]]
d7ce51d6c085152bb5917aadb1edcac21c7270ce
Trading
0
156
696
299
2024-03-22T22:05:27Z
Svellere
21
Add mention that trading is unlocked upon reaching Crenopolis.
wikitext
text/x-wiki
'''Trading''' is a feature in [[Brighter Shores]] that allows [[player]]s to trade items with other players. It is only available to players who have purchased the [[Premium Pass]]. It is unlocked upon reaching [[Crenopolis]].
{{Premium Pass}}
bcaf45ea428bc7cee4ee4ce67a6cc5a87d24969a
719
696
2024-03-22T22:25:41Z
Jayden
3
wikitext
text/x-wiki
'''Trading''' is a feature in [[Brighter Shores]] that allows [[player]]s to trade items with other players. It is only available to players who have purchased the [[Premium Pass]]. It is unlocked upon reaching [[Crenopolis]].
{{Premium Pass}}
{{Mechanics}}
122c90b101167fa81c8543cde51a9fde80c814b3
Cryoknight
0
69
700
564
2024-03-22T22:08:17Z
InvalidCards
4
wikitext
text/x-wiki
'''Cryoknight''' ([[File:Cryoknight icon.png|18px]]) is a [[faction]] which specialises in using melee weapons in [[combat]].
{{Classes}}
cc695b9e5779f4b4a1cd1414ee73fac562d481ea
Guardian
0
70
701
584
2024-03-22T22:08:30Z
InvalidCards
4
wikitext
text/x-wiki
'''Guardian''' ([[File:Guardian icon.png|18px]]) is a [[faction]] which specialises in using ranged weapons in [[combat]].
{{Classes}}
7fa792d9330ac2747e75a2e941ad92ac753b6094
Hammermage
0
71
702
586
2024-03-22T22:08:42Z
InvalidCards
4
wikitext
text/x-wiki
'''Hammermage''' ([[File:Hammermage icon.png|18px]]) is a [[faction]] which specialises in using magic weapons in [[combat]].
{{Classes}}
09e5a6e6c56b8a191d223682c7180d107655806f
File:Gold coin.png
6
438
704
2024-03-22T22:16:45Z
InvalidCards
4
Uploaded with [[mw:Special:MyLanguage/Extension:SimpleBatchUpload|SimpleBatchUpload]]
wikitext
text/x-wiki
Terrible quality icons of the coins seen in the "Choose a slot" screen from Andrew's Twitter
be204519bbf95d7ba9ff391ec9c6af2f1ea796e1
File:Copper coin.png
6
439
705
2024-03-22T22:16:45Z
InvalidCards
4
Uploaded with [[mw:Special:MyLanguage/Extension:SimpleBatchUpload|SimpleBatchUpload]]
wikitext
text/x-wiki
Terrible quality icons of the coins seen in the "Choose a slot" screen from Andrew's Twitter
be204519bbf95d7ba9ff391ec9c6af2f1ea796e1
File:Silver coin.png
6
440
706
2024-03-22T22:16:45Z
InvalidCards
4
Uploaded with [[mw:Special:MyLanguage/Extension:SimpleBatchUpload|SimpleBatchUpload]]
wikitext
text/x-wiki
Terrible quality icons of the coins seen in the "Choose a slot" screen from Andrew's Twitter
be204519bbf95d7ba9ff391ec9c6af2f1ea796e1
Coins
0
441
707
2024-03-22T22:17:53Z
InvalidCards
4
Created page with "'''Coins''' are the currency of [[Brighter Shores]]. They come in three types: * [[File:Gold coin.png|18px]] Gold coins * [[File:Silver coin.png|18px]] Silver coins * [[File:Bronze coin.png|18px]] Bronze coins [[Category:Items]]"
wikitext
text/x-wiki
'''Coins''' are the currency of [[Brighter Shores]]. They come in three types:
* [[File:Gold coin.png|18px]] Gold coins
* [[File:Silver coin.png|18px]] Silver coins
* [[File:Bronze coin.png|18px]] Bronze coins
[[Category:Items]]
07c6e1e8399e1fd361cd068cf0aab993dad2ee20
Template:Navbox/doc
10
103
708
162
2024-03-22T22:19:58Z
184.186.224.121
0
fixing the runescape wikipedia website
wikitext
text/x-wiki
{{documentation|Template:Navbox}}
{{invokes|Navbox|category=No}}<!----Do not add this category to *every* navbox
added explicitly to {{Navbox}} at the end of documentation----->
__TOC__<!--Needed to prevent TOC appearing in the navbox itself if it has a heading.-->
==Usage==
This template can be used to make a standard navigation box. It is intended for use within another template that standardises the title and contents of the box (see [[Template:Rune equipment]]). This template should not be used directly within articles, as it creates a maintenance burden to do so whenever the contents of the box have to be updated.
==Syntax==
<pre>
{{Navbox
|state = uncollapsed, collapsed, plain, autocollapse (default)
|name = mandatory - name of the template
|style = optional - style for the whole table
|title = mandatory - navbox header
|gtitleN = optional - title of N-th group of items
|styleN = optional - style for groupN; i.e. text-align
|groupN = mandatory - list of groups of items
|fstyle = optional - style for footer ; i.e. text-align
|footer = optional - navbox footer
}}
</pre>
* '''Groups:'''
** Groups of items can be added as parameters: ''group1'', ''group2'', ''group3'', ... up to ''groupN''.
* '''Group title:''' Each group has its own title parameter: ''gtitle1'', ''gtitle2'', ''gtitle3'', ... up to ''gtitleN''.
* '''Group style:''' Style may also be customised to each group in: ''style1'', ''style2'', ''style3'', ... up to ''styleN''.
* '''Superscript:''' It is preferred to use superscript (<code><nowiki><sup></nowiki></code>) to denote variants of items that are already contained in the navbox.
* '''Bullets:''' Create unordered lists with lines beginning with *.
==States==
* '''Autocollapse:''' By default, the state of a navbox is "autocollapsed". This means that if the number of navboxes in a page exceeds the maximum allocation of the collapsible navboxes, then the remaining navboxes are collapsed automatically. For more information (or to change the setting), see [[MediaWiki:Gadget-autocollapse.js]].
** Currently, the ''autocollapse'' allocation is '''<span style="color:red">2</span>'''. This means that if there are 3 navboxes in a page, the third and subsequent navboxes will be collapsed automatically.
* '''Uncollapsed:''' Forces the navbox to be displayed.
* '''Collapsed:''' The reverse of ''uncollapsed''. Forces the navbox to be hidden instead.
** Navboxes with a height of more than 300 pixels will also be collapsed automatically. For more information (or to change the setting), see [[MediaWiki:Gadget-autocollapse.js]].
* '''Plain:''' Removes the "show/hide" link.
==Sub-groups==
* For larger navboxes, it may be necessary to include sub-groups within a particular group of items. It is also possible to collapsible navboxes within the parent navbox, see [[#Collapsible sub-groups|Collapsible sub-groups]].
* To create sub-groups within <code><nowiki>{{Navbox}}</nowiki></code>, certain parameters are to be included:
** The parent navbox group (i.e. ''group2'' in the example below) requires the type parameter (''gtype2 = subgroup'').
** The nested navbox (sub-group) requires the inclusion of the sub-group parameter (''subgroup = yes''). This enables the template to differentiate between the sub-group and the parent navbox.
<pre>{{Navbox
|name =
|title =
|gtitle1 =
|group1 =
|gtitle2 =
|gtype2 = subgroup (mandatory)
|group2 =
{{Navbox
|subgroup = yes (mandatory)
|gtitle1 =
|group1 =
|gtitle2 =
|group2 =
}}
}}</pre>
==Collapsible sub-groups==
* For extremely long navboxes, it is recommended to use collapsible navboxes within the parent navbox. Further sub-groups can then be added to these collapsible navboxes.
* To create collapsible sub-groups within <code><nowiki>{{Navbox}}</nowiki></code>, these parameters need to be included:
** The parent navbox is almost always uncollapsed (''state=uncollapsed'').
** The parent navbox group (i.e. ''group1'' in the example below) requires the type parameter (''gtype1 = subgroup'').
** The nested collapsible navbox requires the inclusion of the collapsible parameter (''collapsible = yes''). This enables the template to differentiate between the collapsible navbox and the parent navbox.
** The nested collapsible navbox is forcefully collapsed (''state=collapsed'').
<pre>{{Navbox
|state = uncollapsed
|name =
|gtype1 = subgroup
|group1 =
{{Navbox
|collapsible = yes
|state = collapsed
|title =
|gtitle1 =
|group1 =
|gtitle2 =
|group2 =
}}
}}</pre>
==Use of images==
* The use of images in navboxes is permitted, but please resize the images to keep them small. Inventory-sized images (25-30 pixels) are recommended.
** Use {{t|plink}} to create links with images.
** Use {{t|plinkp}} for any case where text is not desired after the link.
** Use {{t|chatl}} to link chatheads.
** Use {{t|Emote link}} to link emote icons.
* Avoid using images in the main header of the navbox.
Link and file share the same name
<pre>{{plink|Item}}</pre>
File name differs from the link
<pre>{{plink|Item|pic=File}}</pre>
Link and file share the same name, but different text is desired to display
<pre>{{plink|Item|txt=Text}}</pre>
File name differs from the link and different text is desired to display
<pre>{{plink|Item|pic=File|txt=Text}}</pre>
{|class="wikitable"
|+ Examples
!Code
!Standard syntax
|-
|<code><nowiki>{{plink|Abyssal whip}}</nowiki></code>
|<code><nowiki>[[File:Abyssal whip.png|link=Abyssal whip]] [[Abyssal whip]]</nowiki></code>
|-
|<code><nowiki>{{plink|Granite maul|pic=Abyssal whip}}</nowiki></code>
|<code><nowiki>[[File:Abyssal whip.png|link=Granite maul]] [[Granite maul]]</nowiki></code>
|-
|<code><nowiki>{{plink|Abyssal whip|txt=Whip}}</nowiki></code>
|<code><nowiki>[[File:Abyssal whip.png|link=Abyssal whip]] [[Abyssal whip|Whip]]</nowiki></code>
|-
|<code><nowiki>{{plink|Granite maul|pic=Abyssal whip|txt=Whip}}</nowiki></code>
|<code><nowiki>[[File:Abyssal whip.png|link=Granite maul]] [[Granite maul|Whip]]</nowiki></code>
|-
|<code><nowiki>{{plinkp|Abyssal whip}}</nowiki></code>
|<code><nowiki>[[File:Abyssal whip.png|link=Abyssal whip]]</nowiki></code>
|-
|<code><nowiki>{{plinkp|Granite maul|pic=Abyssal whip}}</nowiki></code>
|<code><nowiki>[[File:Abyssal whip.png|link=Granite maul]]</nowiki></code>
|-
|}
==Categorising==
Navboxes are useful for transcluding categories onto a large number of pages that share both a trait and the navigation box. For example: [[Template:Rune equipment]] transcludes [[:Category:Rune]] onto every page that uses it.
There are 2 methods of categorising pages with navboxes:
The preferred method is to use '''{{t|Ctg}}'''. This has the most simple rules but is the easiest to use.
The other method is to use '''{{t|Mainonly|rules}}''' and provide more complex rules with parser functions. [[Template:Potions]] is an example of this:
<pre>
{{mainonly|{{#ifeq:{{lc:{{#sub:{{PAGENAME}}|-3}}}}|mix|[[Category:Barbarian mixes]]}}}}
</pre>
This code tells the template to add [[:Category:Barbarian mixes]] to pages only if their title ends with the string "mix". <code><nowiki>{{ctg|Barbarian mixes::ifmatches[mix]}}</nowiki></code> would '''not''' work here, because several pages include the substring "mix" in other locations, and they would be improperly categorised.
Categorisation should only be used on a template for large-scale addition. For small numbers of pages it is simpler to directly add the category to each page.
==Examples==
{{#ifeq:{{BASEPAGENAME}}|Navbox||To see the following navboxes in action, see [[Template:Navbox]].}}
===Single line navbox with centered list===
{{#ifeq:{{BASEPAGENAME}}|Navbox|{{Navbox
|state = uncollapsed
|name = Navbox
|title = [[Project:Sandbox|Single line navbox]]
|style1 = text-align:center
|group1 =
* Lorem ipsum dolor sit amet
* Consectetur adipisicing elit
* sed do eiusmod tempor incididunt ut labore et dolore magna aliqua
}}}}
<pre>{{Navbox
|name =
|title =
|style1 = text-align:center
|group1 =
}}</pre>
===Navbox with standard footer===
{{#ifeq:{{BASEPAGENAME}}|Navbox|<!--
-->{{Navbox
|state = uncollapsed
|name = Navbox
|title = [[Project:Sandbox|Navbox with footer]]
|style1 = text-align:center
|group1 =
* Lorem ipsum dolor sit amet
* Consectetur adipisicing elit
* sed do eiusmod tempor incididunt ut labore et dolore magna aliqua
|footer = Centered footer
}}}}
<pre>{{Navbox
|name =
|title =
|gtitle1 =
|group1 =
|footer = Centered footer
}}</pre>
===Navbox with styled footer===
{{#ifeq:{{BASEPAGENAME}}|Navbox|<!--
-->{{Navbox
|state = uncollapsed
|name = Navbox
|title = [[Project:Sandbox|Navbox with footer]]
|style1 = text-align:center
|group1 =
* Lorem ipsum dolor sit amet
* Consectetur adipisicing elit
* sed do eiusmod tempor incididunt ut labore et dolore magna aliqua
|fstyle = text-align:right
|footer = Right-aligned footer
}}}}
<pre>{{Navbox
|name =
|title =
|gtitle1 =
|group1 =
|fstyle = text-align:right
|footer = Right-aligned footer
}}</pre>
===Multiple line navbox===
{{#ifeq:{{BASEPAGENAME}}|Navbox|<!--
-->{{Navbox
|state = uncollapsed
|name = Navbox
|title = [[Project:Sandbox|Multiple line navbox]]
|gtitle1 = Group title 1
|group1 = Lorem ipsum dolor sit amet...
|gtitle2 = Group title 2
|group2 = Consectetur adipisicing elit...
|gtitle3 = Group title 3
|group3 = Sed do eiusmod tempor incididunt ut labore et dolore magna aliqua.
}}}}
<pre>{{Navbox
|name =
|title =
|gtitle1 = Group title 1
|group1 =
|gtitle2 = Group title 2
|group2 =
|gtitle3 = Group title 3
|group3 =
}}</pre>
===Collapsed navbox===
{{#ifeq:{{BASEPAGENAME}}|Navbox|<!--
-->{{Navbox
|state = collapsed
|name = Navbox
|title = [[Project:Sandbox|Collapsed navbox]]
|style1 = text-align:center
|group1 = Lorem?
}}}}
<pre>{{Navbox
|state = collapsed
|name =
|title =
|style1 = text-align:center
|group1 =
}}</pre>
===Plain navbox with Tnavbar===
{{#ifeq:{{BASEPAGENAME}}|Navbox|<!--
-->{{Navbox
|state = plain
|name = Navbox
|title = [[Project:Sandbox|Plain navbox with Tnavbar]]
|style1 = text-align:center
|group1 = [<small>[[Project:Sandbox|show]]</small>]/[<small>[[Project:Sandbox|hide]]</small>] links hidden (see Top-right corner).
}}}}
<pre>{{Navbox
|state = plain
|name =
|title =
|style1 = text-align:center
|group1 =
}}</pre>
===Plain navbox without Tnavbar===
{{#ifeq:{{BASEPAGENAME}}|Navbox|<!--
-->{{Navbox
|state = plain
|title = [[Project:Sandbox|Plain navbox without Tnavbar]]
|style1 = text-align:center
|group1 = [<small>[[Project:Sandbox|show]]</small>]/[<small>[[Project:Sandbox|hide]]</small>] links hidden (see Top-right corner).<br><small>[[Project:Sandbox|v]] {{*}} [[Project:Sandbox|d]] {{*}} [[Project:Sandbox|e]]</small> links also hidden (see Top-left corner). This is done by removing the ''name'' parameter.
}}}}
<pre>{{Navbox
|state = plain
|title =
|style1 = text-align:center
|group1 =
}}</pre>
===Complicated navbox===
{{#ifeq:{{BASEPAGENAME}}|Navbox|<!--
-->{{Navbox
|state = uncollapsed
|name = Navbox
|title = [[Project:Sandbox|Complicated navbox]]
|gtitle1 = Level 1 Title 1
|group1 = Lorem ipsum dolor sit amet, consectetur adipiscing elit. Nulla eu sem eget nisi bibendum viverra a eget leo. Integer velit arcu, accumsan vel rhoncus eget, auctor a tellus. Nullam mollis turpis sollicitudin justo hendrerit ac volutpat nibh placerat.
|gtitle2 = Level 1 Title 2
|group2 = Curabitur posuere vestibulum dolor, quis faucibus justo tristique in. Nulla facilisi. Nunc iaculis erat nec ligula rutrum vel porta dolor posuere. Maecenas venenatis sapien id sapien pellentesque mollis.
|gtitle3 = Level 1 Title 3
|group3 = Sed ac sapien risus, in pharetra purus.
|gtitle4 = Level 1 Title 4
|group4 = Curabitur eu metus elit, a eleifend est. Aliquam vestibulum mollis metus, ut facilisis justo tincidunt non. Donec vel felis ut purus molestie facilisis consectetur a est. Nulla velit nisi, aliquet at condimentum non, varius ac nibh. Praesent fringilla nisi nibh. Morbi quis dapibus nulla.
|gtitle5 = Level 1 Title 5
|gtype5 = subgroup
|group5 =
{{Navbox
|subgroup = yes
|gtitle1 = Level 2 Title 1
|group1 = Nam cursus, leo sit amet congue porttitor, ante ligula mattis ante, ut rhoncus nisi augue eget mi. Etiam scelerisque, nunc et sagittis consequat, augue turpis gravida massa, quis blandit lectus orci vel sem.
|gtitle2 = Level 2 Title 2
|group2 = Aliquam tortor est, luctus et consectetur eget, dapibus lobortis ante.
|gtitle3 = Level 2 Title 3
|gtype3 = subgroup
|group3 =
{{Navbox
|subgroup = yes
|gtitle1 = Level 3 Title 1
|group1 = Vestibulum ante ipsum primis in faucibus orci luctus et ultrices posuere cubilia Curae; Vestibulum eu lacus ut sapien tristique fringilla tincidunt vitae risus.
|gtitle2 = Level 3 Title 2
|group2 = Donec in libero lorem. Vestibulum consequat tincidunt imperdiet.
}}
|gtitle4 = Level 2 Title 4
|group4 = Vivamus odio mi, ullamcorper vitae rutrum sed, bibendum vel mauris. Proin sed libero ac sapien pellentesque dapibus. Nulla et ipsum libero. Integer vitae euismod eros. Ut enim purus, consectetur congue fermentum nec, pharetra non dui. Mauris mollis sapien at massa commodo rutrum. Donec non risus ut dui ultrices molestie non a quam.
}}
|gtitle6 = Level 1 Title 6
|group6 = Duis vel ligula tellus, sed rutrum augue. Cras varius consectetur ligula, vitae accumsan nisl vehicula vitae. Integer mi nunc, cursus sit amet mattis vitae, porta nec ligula.
|gtitle7 = Level 1 Title 7
|group7 = Etiam vulputate nisl eget sapien mattis ultrices. Vestibulum et eros vitae arcu condimentum porta. Cras fringilla, erat quis consequat sollicitudin, est tortor tempor massa, quis euismod risus nisi vel massa. Phasellus in risus ac metus pharetra sodales vel at velit. Nulla ullamcorper, orci ac ultrices sollicitudin, ante erat scelerisque eros, auctor pretium felis nibh bibendum purus.
|fstyle = text-align:right
|footer = Quisque ut nisl arcu. Integer tincidunt, turpis pharetra consectetur consectetur, felis ipsum sagittis turpis, vel interdum eros mauris sed odio. <br> Aenean scelerisque rhoncus leo, a cursus neque vehicula sed.
}}}}
<pre>{{Navbox
|state = uncollapsed
|name =
|title =
|gtitle1 = Level 1 Title 1
|group1 =
|gtitle2 = Level 1 Title 2
|group2 =
|gtitle3 = Level 1 Title 3
|group3 =
|gtitle4 = Level 1 Title 4
|group4 =
|gtitle5 = Level 1 Title 5
|gtype5 = subgroup
|group5 =
{{Navbox
|subgroup = yes
|gtitle1 = Level 2 Title 1
|group1 =
|gtitle2 = Level 2 Title 2
|group2 =
|gtitle3 = Level 2 Title 3
|gtype3 = subgroup
|group3 =
{{Navbox
|subgroup = yes
|gtitle1 = Level 3 Title 1
|group1 =
|gtitle2 = Level 3 Title 2
|group2 =
}}
|gtitle4 = Level 2 Title 4
|group4 =
}}
|gtitle6 = Level 1 Title 6
|group6 =
|gtitle7 = Level 1 Title 7
|group7 =
|fstyle =
|footer =
}}</pre>
==Preventing unwanted documentation==
The [[Template:Navbox/doc|Navbox template's documentation]] is automatically transcluded under the navbox on any Template namespace page. It is not transcluded when used as a sub-group or collapsible sub-group template (''subgroup= yes'' or ''collapsible=yes'').
Should the documentation appear when it is unwanted, it can be hidden by setting the doc parameter ''doc=no'' on the template. In most cases, the doc parameter is not used and the parameter is removed completely.
On a similar note, the automatically-added category [[:Category:Navbox templates]] can be suppressed by adding ''hidecat=yes''.
<noinclude>[[Category:Navbox templates|*{{PAGENAME}}]]</noinclude>
<includeonly>
{{#ifeq:{{PAGENAME}}|Navbox|[[Category:Lua-based templates]]}}<!---
This should be kept separate to prevent *every* nav box from
Being marked as Lua based, simply for the sake of
keeping the category easy to navigate ---->
</includeonly>
cf673245340a0fce044cd9ab26d03f893392e0d4
Locations
0
366
709
607
2024-03-22T22:21:15Z
InvalidCards
4
wikitext
text/x-wiki
'''Locations''' are places that exist in the [[Brighter Shores]] game world.
==Locations==
* [[Hopeport]]
* [[Hopeforest]]
* [[Mine of Mantuban]]
* [[Crenopolis]]
[[Category:Locations|*]]
dcb72f8c1db208884db41b1cdd0708ec8d4067e8
Pirate Hideout
0
442
711
2024-03-22T22:23:16Z
InvalidCards
4
Created page with "The '''Pirate Hideout''' is a location. It contains [[Gurnard]]s, [[Pirate]]s, [[Limpet]]s, [[Wrack]]s, and a few interactable scenery items. [[Category:Location]]"
wikitext
text/x-wiki
The '''Pirate Hideout''' is a location. It contains [[Gurnard]]s, [[Pirate]]s, [[Limpet]]s, [[Wrack]]s, and a few interactable scenery items.
[[Category:Location]]
9130a6a4b769f22969b031644be7edc5551c4245
712
711
2024-03-22T22:23:33Z
InvalidCards
4
ssss
wikitext
text/x-wiki
The '''Pirate Hideout''' is a location. It contains [[Gurnard]]s, [[Pirate]]s, [[Limpet]]s, [[Wrack]]s, and a few interactable scenery items.
[[Category:Locations]]
40f4f2af84f6d0600cd24ff917bfc272a3b304f5
Template:Mechanics
10
443
713
2024-03-22T22:24:47Z
Jayden
3
Created page with "{{Navbox |name = Mechanics |title = Game Mechanics |style1 = text-align:center |group1 = * [[Account]] * [[Professions]] * [[Factions]] * [[Monsters]] * [[Combat]] * [[Trading]] * [[Premium Pass]] }}{{Ctg|Mechanics}}"
wikitext
text/x-wiki
{{Navbox
|name = Mechanics
|title = Game Mechanics
|style1 = text-align:center
|group1 =
* [[Account]]
* [[Professions]]
* [[Factions]]
* [[Monsters]]
* [[Combat]]
* [[Trading]]
* [[Premium Pass]]
}}{{Ctg|Mechanics}}
829cfb1587310101be94f26b16f09cda5e671049
Account
0
328
715
528
2024-03-22T22:25:07Z
Jayden
3
wikitext
text/x-wiki
[[File:Account.jpg|thumb|A view of a player's three accounts.]]
An '''account''' is the profile of a human person who is playing [[Brighter Shores]]. Each account can create three [[player|characters]].
Accounts are free-to-play by default, but a player can purchase the [[Premium Pass]] to access additional content. Accounts which own a Premium Pass gain the benefits for all three of their account's characters.{{CiteTwitter|url=https://twitter.com/AndrewCGower/status/1771227689514315873|author=Andrew Gower|date=22 March 2024|accessdate=22 March 2024|archiveurl=https://archive.is/a5xQT|archivedate=22 March 2024|quote=Brighter Shores allows up to 3 characters per account. And they can all share a single premium pass.}}
==References==
{{Reflist}}
{{Mechanics}}
68aa31b49366aa20bfb2de082e0ff0e3dcaa67c4
Factions
0
72
716
534
2024-03-22T22:25:18Z
Jayden
3
wikitext
text/x-wiki
[[File:Factions.jpg|thumb|right|Examples of the three factions.]]
'''Factions''' in [[Brighter Shores]] allow the [[player]] to specialise in using a specific [[combat]] style.
==Classes==
* The [[Cryoknight]] faction is focused on melee combat, using weapons like [[sword]]s alongside a [[shield]]
* [[Guardian]]s use ranged combat, preferring to wield weapons like [[crossbow]]s
* The [[Hammermage]] faction fights using a mix of melee and magic
{{Factions}}
{{Mechanics}}
b681e2a7bf66d713236533a151cf2a69abb0e396
Monsters
0
377
717
618
2024-03-22T22:25:25Z
Jayden
3
wikitext
text/x-wiki
'''Monsters''' are creatures in [[Brighter Shores]] that can be attacked. They are fought in [[combat]] for their loot, including valuable currency items.
There are many monsters in Brighter Shores, including:
* [[Punkupine]]
* [[Slime Fiend]]
* [[Mawchest]]
* [[Wailing Shade]]
* [[Sneaky Thief]]
* [[Yellowtail Gurnard]]
* [[Grumpy Pirate]]
[[Category:Monsters]]
{{Mechanics}}
feaa18bcd4bd825f94b8eb073a3e219db38da2b2
Combat
0
191
718
511
2024-03-22T22:25:33Z
Jayden
3
wikitext
text/x-wiki
[[File:Equipment.jpg|thumb|right|A preview of player in combat.]]
'''Combat''' is a mechanic in [[Brighter Shores]] in which several [[player]]s or monsters fight. Depending on the [[class]] that is being used, player combat can utilise melee, ranged, or magic.
{{Mechanics}}
6ba5b84da4a754ec053d3563487178f2bff3e246
Premium Pass
0
76
720
558
2024-03-22T22:25:49Z
Jayden
3
wikitext
text/x-wiki
[[File:Premium Pass comparison.png|thumb|A comparison of some of the Premium Pass features.]]
The '''Premium Pass''' is a type of membership that can be purchased using real money. It provides access to a number of new areas and features in [[Brighter Shores]].
While owning the Premium Pass is required to access the benefits, it will not be a recurring subscription.{{CiteGeneral|url=https://www.gamesradar.com/ahead-of-his-new-mmo-runescape-creator-says-games-have-gotten-too-microtransaction-heavy-our-number-one-aim-is-not-monetization-its-players/|title=Ahead of his new MMO, RuneScape creator says games have gotten too microtransaction-heavy: "Our number one aim is not monetization, it's players"|author=Kaan Serin|date=17 March 2024|accessdate=22 March 2024|quote="One of the key differences is we're probably not going to do auto-recurring payments," continues Gower.}}
==Benefits==
There are several benefits to purchasing a Premium Pass:
* Access to the [[Mine of Mantuban]] and [[Crenopolis]]
* Ability to choose a unique character name, and change your name at any point
* Access to exclusive armour dyes
* Ability to [[trade]] with other [[player]]s
==References==
{{Reflist}}
{{Premium Pass}}
{{Mechanics}}
[[Category:Community]]
1c435e0525b91b801c9f2fda6736196ebc584549
Gurnard
0
444
721
2024-03-22T22:26:57Z
InvalidCards
4
Created page with "'''Gurnards''' are a type of [[fish]]. The Yellowtail variant can be found in the [[Pirate Hideout]]. [[Category:NPCs]]"
wikitext
text/x-wiki
'''Gurnards''' are a type of [[fish]]. The Yellowtail variant can be found in the [[Pirate Hideout]].
[[Category:NPCs]]
f1bdf170b99bc3a3811d15a5e835d6c46371e3a5
Pirate
0
445
722
2024-03-22T22:27:32Z
InvalidCards
4
Created page with "'''Pirates''' are a type of [[monster]]. The Grumpy variant can be found in the [[Pirate Hideout]]. [[Category:Monsters]]"
wikitext
text/x-wiki
'''Pirates''' are a type of [[monster]]. The Grumpy variant can be found in the [[Pirate Hideout]].
[[Category:Monsters]]
79d29cbbbdc8baf923cb798be38b74d30491869e
Punkupine
0
446
723
2024-03-22T22:27:33Z
Jayden
3
Created page with "'''{{subst:PAGENAME}}''' is a [[monster]]. [[Category:Monsters]]"
wikitext
text/x-wiki
'''Punkupine''' is a [[monster]].
[[Category:Monsters]]
2481474a33425889c143d3daa69dce9eedf38c62
Slime Fiend
0
447
724
2024-03-22T22:27:38Z
Jayden
3
Created page with "'''{{subst:PAGENAME}}''' is a [[monster]]. [[Category:Monsters]]"
wikitext
text/x-wiki
'''Slime Fiend''' is a [[monster]].
[[Category:Monsters]]
8b158ff91027a382a691bdf8d5be9ead5e1d2385
Mawchest
0
448
725
2024-03-22T22:27:43Z
Jayden
3
Created page with "'''{{subst:PAGENAME}}''' is a [[monster]]. [[Category:Monsters]]"
wikitext
text/x-wiki
'''Mawchest''' is a [[monster]].
[[Category:Monsters]]
ac596fa0da6a7f2ea31930d595a794769daf67d1
749
725
2024-03-22T22:40:21Z
BrighterShoreModsRNazis
24
wikitext
text/x-wiki
'''Mawchest''' is a [[monster]].
[[Category:Monsters]]
Unlike the real monsters that are the mods of Brighter Shores.
2f05fbc6ddb24672b01baedab192d4320a32d05e
771
749
2024-03-22T22:56:16Z
Habblet
11
Reverted edits by [[Special:Contributions/BrighterShoreModsRNazis|BrighterShoreModsRNazis]] ([[User talk:BrighterShoreModsRNazis|talk]]) to last revision by [[User:Jayden|Jayden]]
wikitext
text/x-wiki
'''Mawchest''' is a [[monster]].
[[Category:Monsters]]
ac596fa0da6a7f2ea31930d595a794769daf67d1
Yellowtail Gurnard
0
449
726
2024-03-22T22:27:51Z
Jayden
3
Created page with "'''{{subst:PAGENAME}}''' is a [[monster]]. [[Category:Monsters]]"
wikitext
text/x-wiki
'''Yellowtail Gurnard''' is a [[monster]].
[[Category:Monsters]]
f3ddd2caf7dc6531d7e792517ccc1ebe7860aed0
Grumpy Pirate
0
450
727
2024-03-22T22:28:03Z
Jayden
3
Created page with "'''{{subst:PAGENAME}}''' is a [[monster]]. [[Category:Monsters]]"
wikitext
text/x-wiki
'''Grumpy Pirate''' is a [[monster]].
[[Category:Monsters]]
803021917b09ef71b51fe0a70f1a9879bd84d678
Pirate
0
445
728
722
2024-03-22T22:28:29Z
Jayden
3
wikitext
text/x-wiki
'''Pirates''' are a type of [[monster]]. [[Grumpy Pirate]]s can be found in the [[Pirate Hideout]].
[[Category:Monsters]]
2d76415315f4cfc794634d8d6c8f6d14e2b07c16
Limpet
0
451
729
2024-03-22T22:29:04Z
InvalidCards
4
Created page with "'''Limpets''' are a type of harvestable interactable. The Bladder variant can be found in the [[Pirate Hideout]]."
wikitext
text/x-wiki
'''Limpets''' are a type of harvestable interactable. The Bladder variant can be found in the [[Pirate Hideout]].
bc55bf3613416edbe5f4342a8c9e0ba86ce3f6bc
731
729
2024-03-22T22:29:44Z
InvalidCards
4
whoops
wikitext
text/x-wiki
'''Limpets''' are a type of harvestable interactable. The Common variant can be found in the [[Pirate Hideout]].
c82f03dadcd4c31470a6822a38b03b37ca55ff64
Wrack
0
452
730
2024-03-22T22:29:32Z
InvalidCards
4
Created page with "'''Wracks''' are a type of harvestable interactable. The Bladder variant can be found in the [[Pirate Hideout]]."
wikitext
text/x-wiki
'''Wracks''' are a type of harvestable interactable. The Bladder variant can be found in the [[Pirate Hideout]].
e63826814819f5213f89497b004d9ec7ef6ad262
Pirate Hideout
0
442
732
712
2024-03-22T22:30:30Z
InvalidCards
4
linky
wikitext
text/x-wiki
The '''Pirate Hideout''' is a [[location]]. It contains [[Gurnard]]s, [[Pirate]]s, [[Limpet]]s, [[Wrack]]s, and a few interactable scenery items.
[[Category:Locations]]
f42d840999875784c96872a33fa28621bbce0947
Template:Interface
10
453
733
2024-03-22T22:35:14Z
Jayden
3
Created page with "{{Navbox |name = Interface |title = [[Interface]] |style1 = text-align:center |group1 = * [[Backpack]] }}{{Ctg|Interface}}"
wikitext
text/x-wiki
{{Navbox
|name = Interface
|title = [[Interface]]
|style1 = text-align:center
|group1 =
* [[Backpack]]
}}{{Ctg|Interface}}
09be870c87f95d98ef6dca7526a1d68b5a5a98bc
734
733
2024-03-22T22:35:29Z
Jayden
3
Jayden moved page [[Interface]] to [[Template:Interface]]
wikitext
text/x-wiki
{{Navbox
|name = Interface
|title = [[Interface]]
|style1 = text-align:center
|group1 =
* [[Backpack]]
}}{{Ctg|Interface}}
09be870c87f95d98ef6dca7526a1d68b5a5a98bc
Locations
0
366
736
709
2024-03-22T22:36:16Z
BrighterShoreModsRNazis
24
wikitext
text/x-wiki
'''Locations''' are places that exist in the [[Brighter Shores]] game world.
Brighter shore mods are nazis.
==Locations==
* [[Hopeport]]
* [[Hopeforest]]
* [[Mine of Mantuban]]
* [[Crenopolis]]
[[Category:Locations|*]]
c95c3abe028f209ff0061955d2a0eec581119ece
775
736
2024-03-22T22:57:24Z
Habblet
11
Reverted edits by [[Special:Contributions/BrighterShoreModsRNazis|BrighterShoreModsRNazis]] ([[User talk:BrighterShoreModsRNazis|talk]]) to last revision by [[User:InvalidCards|InvalidCards]]
wikitext
text/x-wiki
'''Locations''' are places that exist in the [[Brighter Shores]] game world.
==Locations==
* [[Hopeport]]
* [[Hopeforest]]
* [[Mine of Mantuban]]
* [[Crenopolis]]
[[Category:Locations|*]]
dcb72f8c1db208884db41b1cdd0708ec8d4067e8
Interface
0
456
738
2024-03-22T22:37:08Z
Jayden
3
Created page with "The '''interface''' is the display of the icons, windows, and other elements on the [[Brighter Shores]] game window. ==Components== * [[Backpack]] {{Interface}}"
wikitext
text/x-wiki
The '''interface''' is the display of the icons, windows, and other elements on the [[Brighter Shores]] game window.
==Components==
* [[Backpack]]
{{Interface}}
e8584e48351f5d106bb1d380f98d0af2f640c63f
743
738
2024-03-22T22:38:05Z
Jayden
3
wikitext
text/x-wiki
The '''interface''' is the display of the icons, windows, and other elements on the [[Brighter Shores]] game window.
==Components==
* [[Backpack]]
{{Interface}}
{{Mechanics}}
d7cf7828e6eb3825f5ac66fe80285b28071c0eed
Backpack
0
457
739
2024-03-22T22:37:15Z
Jayden
3
Created page with "The '''backpack''' is where [[player]]s store the items that they are currently carrying. It is accessed by clicking the backpack button at the bottom left of the game [[interface]]. The player's backpack stores up to 24 items. {{Interface}}"
wikitext
text/x-wiki
The '''backpack''' is where [[player]]s store the items that they are currently carrying. It is accessed by clicking the backpack button at the bottom left of the game [[interface]].
The player's backpack stores up to 24 items.
{{Interface}}
a94d08b75d25b238b2341834eb5cc11c9699330c
Category:Interface
14
458
740
2024-03-22T22:37:35Z
Jayden
3
Created page with "{{Ctg|pages|the game [[interface]]}}"
wikitext
text/x-wiki
{{Ctg|pages|the game [[interface]]}}
5330c1e3fcd1c9a46f2bc2cf1d52f9e0bea6a4c6
742
740
2024-03-22T22:37:47Z
Jayden
3
wikitext
text/x-wiki
{{Categoryheader|pages|the game [[interface]]}}
ec021c7e7013301dfa885b9af696208052ce4596
Professions
0
56
741
714
2024-03-22T22:37:36Z
BrighterShoreModsRNazis
24
wikitext
text/x-wiki
'''Professions''' are skills that [[player]]s can train and utilise in [[Brighter Shores]].
The main profession of the brighter shore mods is to be Nazis.
==List of professions==
{| class="wikitable"
! colspan="2" | Name !! Uses
|-
| [[File:Profession fisher.png|30px|link=Fisher]] || [[Fisher]] || Catching various [[fish]]
|-
| [[File:Profession forager.png|30px|link=Forager]] || [[Forager]] || Gathering items
|-
| || [[Chef]] || Cooking [[food]] items
|-
| || [[Woodcutter]] || Chopping down [[tree]]s
|-
| || [[Miner]] || Mining [[mineral]]s
|-
| || [[Alchemist]] || Brewing [[potion]]s
|-
| || [[Stonemason]] ||
|-
| || [[Merchant]] ||
|-
| || [[Blacksmith]] ||
|}
==Gallery==
<gallery>
File:Professions preview 1.jpg
File:Professions preview 2.jpg
File:Professions preview 3.jpg
</gallery>
{{Professions}}
{{Mechanics}}
cf0a44172aea13f3bf86d85bf59d1e88945b51b1
774
741
2024-03-22T22:56:22Z
Habblet
11
Reverted edits by [[Special:Contributions/BrighterShoreModsRNazis|BrighterShoreModsRNazis]] ([[User talk:BrighterShoreModsRNazis|talk]]) to last revision by [[User:Jayden|Jayden]]
wikitext
text/x-wiki
'''Professions''' are skills that [[player]]s can train and utilise in [[Brighter Shores]].
==List of professions==
{| class="wikitable"
! colspan="2" | Name !! Uses
|-
| [[File:Profession fisher.png|30px|link=Fisher]] || [[Fisher]] || Catching various [[fish]]
|-
| [[File:Profession forager.png|30px|link=Forager]] || [[Forager]] || Gathering items
|-
| || [[Chef]] || Cooking [[food]] items
|-
| || [[Woodcutter]] || Chopping down [[tree]]s
|-
| || [[Miner]] || Mining [[mineral]]s
|-
| || [[Alchemist]] || Brewing [[potion]]s
|-
| || [[Stonemason]] ||
|-
| || [[Merchant]] ||
|-
| || [[Blacksmith]] ||
|}
==Gallery==
<gallery>
File:Professions preview 1.jpg
File:Professions preview 2.jpg
File:Professions preview 3.jpg
</gallery>
{{Professions}}
{{Mechanics}}
d9c0b750c926aad63e20d96d17df7e810a882421
Template:Mechanics
10
443
744
713
2024-03-22T22:38:14Z
Jayden
3
wikitext
text/x-wiki
{{Navbox
|name = Mechanics
|title = Game Mechanics
|style1 = text-align:center
|group1 =
* [[Account]]
* [[Interface]]
* [[Professions]]
* [[Factions]]
* [[Monsters]]
* [[Combat]]
* [[Trading]]
* [[Premium Pass]]
}}{{Ctg|Mechanics}}
6f2c764305aacd0ccf2db0c1b904851a672310fe
Factions
0
72
745
716
2024-03-22T22:38:23Z
BrighterShoreModsRNazis
24
wikitext
text/x-wiki
[[File:Factions.jpg|thumb|right|Examples of the three factions.]]
'''Factions''' in [[Brighter Shores]] allow the [[player]] to specialise in using a specific [[combat]] style.
The only faction available to the Brighter Shores mods is fascism.
==Classes==
* The [[Cryoknight]] faction is focused on melee combat, using weapons like [[sword]]s alongside a [[shield]]
* [[Guardian]]s use ranged combat, preferring to wield weapons like [[crossbow]]s
* The [[Hammermage]] faction fights using a mix of melee and magic
{{Factions}}
{{Mechanics}}
c01335c6da5d1fb5d98c7259d76b810614f2478e
773
745
2024-03-22T22:56:20Z
Habblet
11
Reverted edits by [[Special:Contributions/BrighterShoreModsRNazis|BrighterShoreModsRNazis]] ([[User talk:BrighterShoreModsRNazis|talk]]) to last revision by [[User:Jayden|Jayden]]
wikitext
text/x-wiki
[[File:Factions.jpg|thumb|right|Examples of the three factions.]]
'''Factions''' in [[Brighter Shores]] allow the [[player]] to specialise in using a specific [[combat]] style.
==Classes==
* The [[Cryoknight]] faction is focused on melee combat, using weapons like [[sword]]s alongside a [[shield]]
* [[Guardian]]s use ranged combat, preferring to wield weapons like [[crossbow]]s
* The [[Hammermage]] faction fights using a mix of melee and magic
{{Factions}}
{{Mechanics}}
b681e2a7bf66d713236533a151cf2a69abb0e396
Premium Pass
0
76
746
720
2024-03-22T22:39:10Z
BrighterShoreModsRNazis
24
wikitext
text/x-wiki
[[File:Premium Pass comparison.png|thumb|A comparison of some of the Premium Pass features.]]
The '''Premium Pass''' is a type of membership that can be purchased using real money. It provides access to a number of new areas and features in [[Brighter Shores]].
While owning the Premium Pass is required to access the benefits, it will not be a recurring subscription.{{CiteGeneral|url=https://www.gamesradar.com/ahead-of-his-new-mmo-runescape-creator-says-games-have-gotten-too-microtransaction-heavy-our-number-one-aim-is-not-monetization-its-players/|title=Ahead of his new MMO, RuneScape creator says games have gotten too microtransaction-heavy: "Our number one aim is not monetization, it's players"|author=Kaan Serin|date=17 March 2024|accessdate=22 March 2024|quote="One of the key differences is we're probably not going to do auto-recurring payments," continues Gower.}}
Don't forget to bend the knee to the brighter shore mods or else.
==Benefits==
There are several benefits to purchasing a Premium Pass:
* Access to the [[Mine of Mantuban]] and [[Crenopolis]]
* Ability to choose a unique character name, and change your name at any point
* Access to exclusive armour dyes
* Ability to [[trade]] with other [[player]]s
==References==
{{Reflist}}
{{Premium Pass}}
{{Mechanics}}
[[Category:Community]]
37742179b1fb1d8669f387f236f5a36539fb0e40
772
746
2024-03-22T22:56:17Z
Habblet
11
Reverted edits by [[Special:Contributions/BrighterShoreModsRNazis|BrighterShoreModsRNazis]] ([[User talk:BrighterShoreModsRNazis|talk]]) to last revision by [[User:Jayden|Jayden]]
wikitext
text/x-wiki
[[File:Premium Pass comparison.png|thumb|A comparison of some of the Premium Pass features.]]
The '''Premium Pass''' is a type of membership that can be purchased using real money. It provides access to a number of new areas and features in [[Brighter Shores]].
While owning the Premium Pass is required to access the benefits, it will not be a recurring subscription.{{CiteGeneral|url=https://www.gamesradar.com/ahead-of-his-new-mmo-runescape-creator-says-games-have-gotten-too-microtransaction-heavy-our-number-one-aim-is-not-monetization-its-players/|title=Ahead of his new MMO, RuneScape creator says games have gotten too microtransaction-heavy: "Our number one aim is not monetization, it's players"|author=Kaan Serin|date=17 March 2024|accessdate=22 March 2024|quote="One of the key differences is we're probably not going to do auto-recurring payments," continues Gower.}}
==Benefits==
There are several benefits to purchasing a Premium Pass:
* Access to the [[Mine of Mantuban]] and [[Crenopolis]]
* Ability to choose a unique character name, and change your name at any point
* Access to exclusive armour dyes
* Ability to [[trade]] with other [[player]]s
==References==
{{Reflist}}
{{Premium Pass}}
{{Mechanics}}
[[Category:Community]]
1c435e0525b91b801c9f2fda6736196ebc584549
Category:Mechanics
14
459
747
2024-03-22T22:39:16Z
Jayden
3
Created page with "{{Categoryheader|pages|game [[mechanics]]}}"
wikitext
text/x-wiki
{{Categoryheader|pages|game [[mechanics]]}}
a702d0f20293030cbe73c3e8d8f137ed25d77404
748
747
2024-03-22T22:39:33Z
Jayden
3
wikitext
text/x-wiki
{{Categoryheader|pages|game mechanics}}
cb280d11085d20b3986b94119fb92f819c0696e0
File:Unknown episode icon.png
6
460
750
2024-03-22T22:40:59Z
InvalidCards
4
Uploaded with [[mw:Special:MyLanguage/Extension:SimpleBatchUpload|SimpleBatchUpload]]
wikitext
text/x-wiki
Some low-quality episode icons as seen in the backpack
527d799576f0f0e5dcc8925835a4d6f2b16a722a
File:Hopeforest episode icon.png
6
461
751
2024-03-22T22:40:59Z
InvalidCards
4
Uploaded with [[mw:Special:MyLanguage/Extension:SimpleBatchUpload|SimpleBatchUpload]]
wikitext
text/x-wiki
Some low-quality episode icons as seen in the backpack
527d799576f0f0e5dcc8925835a4d6f2b16a722a
File:Mine of Mantuban episode icon.png
6
462
752
2024-03-22T22:40:59Z
InvalidCards
4
Uploaded with [[mw:Special:MyLanguage/Extension:SimpleBatchUpload|SimpleBatchUpload]]
wikitext
text/x-wiki
Some low-quality episode icons as seen in the backpack
527d799576f0f0e5dcc8925835a4d6f2b16a722a
File:Hopeport episode icon.png
6
463
753
2024-03-22T22:40:59Z
InvalidCards
4
Uploaded with [[mw:Special:MyLanguage/Extension:SimpleBatchUpload|SimpleBatchUpload]]
wikitext
text/x-wiki
Some low-quality episode icons as seen in the backpack
527d799576f0f0e5dcc8925835a4d6f2b16a722a
Account
0
328
754
715
2024-03-22T22:41:18Z
BrighterShoreModsRNazis
24
wikitext
text/x-wiki
[[File:Account.jpg|thumb|A view of a player's three accounts.]]
An '''account''' is the profile of a nazi person who is playing [[Brighter Shores]]. Each account can create three [[player|characters]].
Accounts are free-to-play by default, but a player can purchase the [[Premium Pass]] to access additional content. Accounts which own a Premium Pass gain the benefits for all three of their account's characters.{{CiteTwitter|url=https://twitter.com/AndrewCGower/status/1771227689514315873|author=Andrew Gower|date=22 March 2024|accessdate=22 March 2024|archiveurl=https://archive.is/a5xQT|archivedate=22 March 2024|quote=Brighter Shores allows up to 3 characters per account. And they can all share a single premium pass.}}
==References==
{{Reflist}}
{{Mechanics}}
20162ae46d0cb81cd484f6b8769d2fb6e0aa1880
770
754
2024-03-22T22:56:13Z
Habblet
11
Reverted edits by [[Special:Contributions/BrighterShoreModsRNazis|BrighterShoreModsRNazis]] ([[User talk:BrighterShoreModsRNazis|talk]]) to last revision by [[User:Jayden|Jayden]]
wikitext
text/x-wiki
[[File:Account.jpg|thumb|A view of a player's three accounts.]]
An '''account''' is the profile of a human person who is playing [[Brighter Shores]]. Each account can create three [[player|characters]].
Accounts are free-to-play by default, but a player can purchase the [[Premium Pass]] to access additional content. Accounts which own a Premium Pass gain the benefits for all three of their account's characters.{{CiteTwitter|url=https://twitter.com/AndrewCGower/status/1771227689514315873|author=Andrew Gower|date=22 March 2024|accessdate=22 March 2024|archiveurl=https://archive.is/a5xQT|archivedate=22 March 2024|quote=Brighter Shores allows up to 3 characters per account. And they can all share a single premium pass.}}
==References==
{{Reflist}}
{{Mechanics}}
68aa31b49366aa20bfb2de082e0ff0e3dcaa67c4
Punkupine
0
446
755
723
2024-03-22T22:42:41Z
BrighterShoreModsRNazis
24
wikitext
text/x-wiki
'''The mods of Brighter Shores''' are a [[monster]].
[[Category:Monsters]]
0dc8ef36a77278dc48e03e43097978bb048a48c2
769
755
2024-03-22T22:55:44Z
Habblet
11
Reverted edits by [[Special:Contributions/BrighterShoreModsRNazis|BrighterShoreModsRNazis]] ([[User talk:BrighterShoreModsRNazis|talk]]) to last revision by [[User:Jayden|Jayden]]
wikitext
text/x-wiki
'''Punkupine''' is a [[monster]].
[[Category:Monsters]]
2481474a33425889c143d3daa69dce9eedf38c62
Brighter Shores
0
51
756
555
2024-03-22T22:43:43Z
BrighterShoreModsRNazis
24
wikitext
text/x-wiki
[[File:Brighter Shores key art.jpg|thumb|The promotional image for Brighter Shores.]]
'''''Brighter Shores''''' is an upcoming game developed by [[Fen Research]] and designed by [[Andrew Gower]]. It will be released in Q3 2024, and will be available for Windows and macOS (Apple Silicon and Intel chipsets).
The game has been under active development since at least 2014 by Gower,{{CiteTwitter|url=https://twitter.com/AndrewCGower/status/1767945130487493010|author=Andrew Gower|date=13 March 2024|accessdate=22 March 2024|quote=Over 10 years!|archiveurl=https://archive.is/rhmtZ|archivedate=22 March 2024}} and was announced officially on 13 March 2024. An initial two-minute trailer was released, which depicts [[player]]s engaging in [[combat]], several [[profession]]s, and a variety of different [[location]]s.{{CiteGeneral|url=https://www.youtube.com/watch?v=ASIbNq_pLQQ|title=Brighter Shores Gameplay Trailer|author=MMOs.com|date=13 March 2024|accessdate=22 March 2024}} The game is {{wp|free-to-play}}, but players can access additional features and content by purchasing the [[Premium Pass]].
Brighter Shores features an ongoing story with hundreds of hours of gameplay.{{CiteGeneral|url=https://store.steampowered.com/app/2791440/Brighter_Shores/|title=Brighter Shores on Steam|author=Valve|date=22 March 2024|accessdate=22 March 2024|archiveurl=https://archive.is/eYgMA|archivedate=22 March 2024}} Players start their journey in [[Hopeport]], as a member of the town guard.
The mods of Brighter Shore believe in a pure user base. No dissent is allowed.
==Trivia==
* The logo of Brighter Shores features [[Hopeport Obelisk]].
==External links==
* [https://store.steampowered.com/app/2791440/Brighter%20Shores/ Steam page]
* [https://brightershores.com/ Official website]
==References==
{{Reflist}}
[[Category:Games]]
[[Category:Fen Research]]
1cc966d6db1c02862a02e82bd1304777ba5d8f81
757
756
2024-03-22T22:44:10Z
BrighterShoreModsRNazis
24
/* Trivia */
wikitext
text/x-wiki
[[File:Brighter Shores key art.jpg|thumb|The promotional image for Brighter Shores.]]
'''''Brighter Shores''''' is an upcoming game developed by [[Fen Research]] and designed by [[Andrew Gower]]. It will be released in Q3 2024, and will be available for Windows and macOS (Apple Silicon and Intel chipsets).
The game has been under active development since at least 2014 by Gower,{{CiteTwitter|url=https://twitter.com/AndrewCGower/status/1767945130487493010|author=Andrew Gower|date=13 March 2024|accessdate=22 March 2024|quote=Over 10 years!|archiveurl=https://archive.is/rhmtZ|archivedate=22 March 2024}} and was announced officially on 13 March 2024. An initial two-minute trailer was released, which depicts [[player]]s engaging in [[combat]], several [[profession]]s, and a variety of different [[location]]s.{{CiteGeneral|url=https://www.youtube.com/watch?v=ASIbNq_pLQQ|title=Brighter Shores Gameplay Trailer|author=MMOs.com|date=13 March 2024|accessdate=22 March 2024}} The game is {{wp|free-to-play}}, but players can access additional features and content by purchasing the [[Premium Pass]].
Brighter Shores features an ongoing story with hundreds of hours of gameplay.{{CiteGeneral|url=https://store.steampowered.com/app/2791440/Brighter_Shores/|title=Brighter Shores on Steam|author=Valve|date=22 March 2024|accessdate=22 March 2024|archiveurl=https://archive.is/eYgMA|archivedate=22 March 2024}} Players start their journey in [[Hopeport]], as a member of the town guard.
The mods of Brighter Shore believe in a pure user base. No dissent is allowed.
==Trivia==
* The logo of Brighter Shores features [[Hopeport Obelisk]].
The mods of the subreddit are Nazis.
==External links==
* [https://store.steampowered.com/app/2791440/Brighter%20Shores/ Steam page]
* [https://brightershores.com/ Official website]
==References==
{{Reflist}}
[[Category:Games]]
[[Category:Fen Research]]
923cbc220bce138df352145468acd19bc6544845
768
757
2024-03-22T22:55:34Z
Habblet
11
Reverted edits by [[Special:Contributions/BrighterShoreModsRNazis|BrighterShoreModsRNazis]] ([[User talk:BrighterShoreModsRNazis|talk]]) to last revision by [[User:Habblet|Habblet]]
wikitext
text/x-wiki
[[File:Brighter Shores key art.jpg|thumb|The promotional image for Brighter Shores.]]
'''''Brighter Shores''''' is an upcoming game developed by [[Fen Research]] and designed by [[Andrew Gower]]. It will be released in Q3 2024, and will be available for Windows and macOS (Apple Silicon and Intel chipsets).
The game has been under active development since at least 2014 by Gower,{{CiteTwitter|url=https://twitter.com/AndrewCGower/status/1767945130487493010|author=Andrew Gower|date=13 March 2024|accessdate=22 March 2024|quote=Over 10 years!|archiveurl=https://archive.is/rhmtZ|archivedate=22 March 2024}} and was announced officially on 13 March 2024. An initial two-minute trailer was released, which depicts [[player]]s engaging in [[combat]], several [[profession]]s, and a variety of different [[location]]s.{{CiteGeneral|url=https://www.youtube.com/watch?v=ASIbNq_pLQQ|title=Brighter Shores Gameplay Trailer|author=MMOs.com|date=13 March 2024|accessdate=22 March 2024}} The game is {{wp|free-to-play}}, but players can access additional features and content by purchasing the [[Premium Pass]].
Brighter Shores features an ongoing story with hundreds of hours of gameplay.{{CiteGeneral|url=https://store.steampowered.com/app/2791440/Brighter_Shores/|title=Brighter Shores on Steam|author=Valve|date=22 March 2024|accessdate=22 March 2024|archiveurl=https://archive.is/eYgMA|archivedate=22 March 2024}} Players start their journey in [[Hopeport]], as a member of the town guard.
==Trivia==
* The logo of Brighter Shores features [[Hopeport Obelisk]].
==External links==
* [https://store.steampowered.com/app/2791440/Brighter%20Shores/ Steam page]
* [https://brightershores.com/ Official website]
==References==
{{Reflist}}
[[Category:Games]]
[[Category:Fen Research]]
015f3631721cc1eaf49a1f4a3f234a7081bef543
Template:Infobox Item
10
77
758
134
2024-03-22T22:45:43Z
InvalidCards
4
wikitext
text/x-wiki
<includeonly>{| class="wikitable" style="float:right"
|+{{{name|}}}
|-
|colspan="2" style="text-align:center"|[[File:{{{image|}}}|30px]]
|-
|<b>Release date</b>||{{{release|Soon}}}
|-
|<b>Episode</b>||{{#switch:{{{episode|}}}|Hopeport=[[File:Hopeport episode icon.png|18px]] [[Hopeport]]|Hopeforest=[[File:Hopeforest episode icon.png|18px]] [[Hopeforest]]|Mine of Manbutan=[[File:Mine of Manbutan episode icon.png|18px]]|#default=[[File:Unknown episode icon.png|18px]] Unknown}}
|-
|<b>Profession</b>||{{{profession|}}}
|-
|<b>Value</b>||{{{value|0}}}
|}</includeonly>
8bbbfa9a734d1f6d4a6887e29629db6cfe2dc0c8
762
758
2024-03-22T22:50:26Z
InvalidCards
4
wikitext
text/x-wiki
<includeonly>{| class="wikitable" style="float:right"
|+{{{name|}}}
|-
|colspan="2" style="text-align:center"|[[File:{{{image|}}}|30px]]
|-
|<b>Release date</b>||{{{release|Soon}}}
|-
|<b>Episode</b>||{{#switch:{{{episode|}}}|Hopeport=[[File:Hopeport episode icon.png|18px]] [[Hopeport]]|Hopeforest=[[File:Hopeforest episode icon.png|18px]] [[Hopeforest]]|Mine of Manbutan=[[File:Mine of Manbutan episode icon.png|18px]]|#default=[[File:Unknown episode icon.png|18px]] Unknown}}
|-
|<b>Profession</b>||{{{profession|}}}
|-
|<b>Value</b>||{{{value|0}}}
|}{{Mainonly|[[Category:Items]]}}</includeonly>
019b3072405d3292b7a124a09087815008654ddb
765
762
2024-03-22T22:52:41Z
InvalidCards
4
beeg
wikitext
text/x-wiki
<includeonly>{| class="wikitable" style="float:right"
|+{{{name|}}}
|-
|colspan="2" style="text-align:center"|[[File:{{{image|}}}|50px]]
|-
|<b>Release date</b>||{{{release|Soon}}}
|-
|<b>Episode</b>||{{#switch:{{{episode|}}}|Hopeport=[[File:Hopeport episode icon.png|18px]] [[Hopeport]]|Hopeforest=[[File:Hopeforest episode icon.png|18px]] [[Hopeforest]]|Mine of Manbutan=[[File:Mine of Manbutan episode icon.png|18px]]|#default=[[File:Unknown episode icon.png|18px]] Unknown}}
|-
|<b>Profession</b>||{{{profession|}}}
|-
|<b>Value</b>||{{{value|0}}}
|}{{Mainonly|[[Category:Items]]}}</includeonly>
662d08e0eea49c9bd7799b1f117f1bd13748cd30
Andrew Gower
0
54
759
209
2024-03-22T22:45:49Z
BrighterShoreModsRNazis
24
wikitext
text/x-wiki
'''Andrew Gower''' is the founder of [[Fen Research]], and the designer of the game [[Brighter Shores]]. Before working on Brighter Shores, he was most known for the popular [[Wikipedia:Massively multiplayer online role-playing game|MMORPG]] [[Wikipedia:RuneScape|RuneScape]], which he created while studying at the [[Wikipedia:University of Cambridge|University of Cambridge]].
[[Category:Fen Research staff]]
Andrew wishes the moderators of the subreddit would stop being Nazis.
b3004142f70d64802a8cc8bdb58efcf7b9bd0305
767
759
2024-03-22T22:55:30Z
Habblet
11
Reverted edits by [[Special:Contributions/BrighterShoreModsRNazis|BrighterShoreModsRNazis]] ([[User talk:BrighterShoreModsRNazis|talk]]) to last revision by [[User:InvalidCards|InvalidCards]]
wikitext
text/x-wiki
'''Andrew Gower''' is the founder of [[Fen Research]], and the designer of the game [[Brighter Shores]]. Before working on Brighter Shores, he was most known for the popular [[Wikipedia:Massively multiplayer online role-playing game|MMORPG]] [[Wikipedia:RuneScape|RuneScape]], which he created while studying at the [[Wikipedia:University of Cambridge|University of Cambridge]].
[[Category:Fen Research staff]]
ed56ed300c149ee869c658fac672f910f683f4f9
Branch
0
464
760
2024-03-22T22:47:01Z
InvalidCards
4
Created page with "{{Unofficial name}} {{Infobox Item |name=Branch |image=Branch.png |release= |episode=Hopeforest |profession=[[Woodcutter]] |value=48 }} '''Branches''' can be collected by the [[Woodcutter]] [[profession]] in [[Hopeforest]]. [[Category:Items]]"
wikitext
text/x-wiki
{{Unofficial name}}
{{Infobox Item
|name=Branch
|image=Branch.png
|release=
|episode=Hopeforest
|profession=[[Woodcutter]]
|value=48
}}
'''Branches''' can be collected by the [[Woodcutter]] [[profession]] in [[Hopeforest]].
[[Category:Items]]
59f1c7412f933dab45ed081dc4d7dd6ad29d7a32
763
760
2024-03-22T22:50:57Z
InvalidCards
4
Infobox now
wikitext
text/x-wiki
{{Unofficial name}}
{{Infobox Item
|name=Branch
|image=Branch.png
|release=
|episode=Hopeforest
|profession=[[Woodcutter]]
|value=48
}}
'''Branches''' can be collected by the [[Woodcutter]] [[profession]] in [[Hopeforest]].
b3e0d5e8276e14bffa7666ced1a8b57af2bd1983
Miner potion
0
465
761
2024-03-22T22:49:41Z
InvalidCards
4
Created page with "{{Unofficial name}} {{Infobox Item |name=Miner potion |image=Miner potion.png |release= |episode=Hopeport |profession=[[Alchemist]] |value=16 }} '''Miner potions''' are a type of [[potion]]."
wikitext
text/x-wiki
{{Unofficial name}}
{{Infobox Item
|name=Miner potion
|image=Miner potion.png
|release=
|episode=Hopeport
|profession=[[Alchemist]]
|value=16
}}
'''Miner potions''' are a type of [[potion]].
5f25e16c63f063dd80403d9917b231d8e35acff2
File:Branch.png
6
466
764
2024-03-22T22:52:13Z
InvalidCards
4
A branch
wikitext
text/x-wiki
== Summary ==
A branch
c1eb7f12d01e99f3a260f388e798469ad89d929b
File:Miner potion.png
6
467
766
2024-03-22T22:53:33Z
InvalidCards
4
wikitext
text/x-wiki
da39a3ee5e6b4b0d3255bfef95601890afd80709
Mine of Mantuban
0
74
776
297
2024-03-22T23:03:41Z
Biscuit Prime
26
wikitext
text/x-wiki
'''Mine of Mantuban''' is a [[location]] that can be accessed by [[player]]s who purchase the [[Premium Pass]]. The Nazis who run the subreddit will make sure you buy them.
{{Premium Pass}}
[[Category:Locations]]
31cff370f5d15eff0dff5b2aea2db7f74e41b4c0
781
776
2024-03-22T23:06:23Z
InvalidCards
4
Reverted edits by [[Special:Contributions/Biscuit Prime|Biscuit Prime]] ([[User talk:Biscuit Prime|talk]]) to last revision by [[User:Jayden|Jayden]]
wikitext
text/x-wiki
'''Mine of Mantuban''' is a [[location]] that can be accessed by [[player]]s who purchase the [[Premium Pass]].
{{Premium Pass}}
[[Category:Locations]]
3e9028e410a0d00267b21684e7e96958bd44d162
Player
0
168
777
515
2024-03-22T23:04:40Z
Biscuit Prime
26
wikitext
text/x-wiki
'''Players''' are human-controlled characters in [[Brighter Shores]]. They have the ability to explore the world, train [[professions]], pick a [[class]], and more.
Players can access all free-to-play areas in the game, but their parent [[account]] owning a [[Premium Pass]] will allow them to access more content. Each player has a character name, which is suffixed with a hash and a series of numbers. Nazis are allowed on Brightershores subreddit. Free-to-play players cannot change their character name after creation, but Premium Pass owners are able to set a unique character name (without a suffix) and change their name at any time.
[[Category:Community]]
4e7f1e4362b19a3fe8b475ec23b98222303469fb
780
777
2024-03-22T23:06:18Z
InvalidCards
4
Reverted edits by [[Special:Contributions/Biscuit Prime|Biscuit Prime]] ([[User talk:Biscuit Prime|talk]]) to last revision by [[User:Jayden|Jayden]]
wikitext
text/x-wiki
'''Players''' are human-controlled characters in [[Brighter Shores]]. They have the ability to explore the world, train [[professions]], pick a [[class]], and more.
Players can access all free-to-play areas in the game, but their parent [[account]] owning a [[Premium Pass]] will allow them to access more content. Each player has a character name, which is suffixed with a hash and a series of numbers. Free-to-play players cannot change their character name after creation, but Premium Pass owners are able to set a unique character name (without a suffix) and change their name at any time.
[[Category:Community]]
1c3a3ca451bfc1859506f9b24871d6ac98fa4949
Alchemist
0
63
778
390
2024-03-22T23:05:35Z
Biscuit Prime
26
wikitext
text/x-wiki
[[File:Alchemist.jpg|thumb|right|A player practicing Alchemy.]]
'''Alchemist''' is a type of [[professions|profession]].
The mods of the subreddit could use a real profession.
{{Professions}}
ccb6931da6d0122fda4b0752f2bc5586c5c5cce0
779
778
2024-03-22T23:06:11Z
InvalidCards
4
Reverted edits by [[Special:Contributions/Biscuit Prime|Biscuit Prime]] ([[User talk:Biscuit Prime|talk]]) to last revision by [[User:Wolaznik|Wolaznik]]
wikitext
text/x-wiki
[[File:Alchemist.jpg|thumb|right|A player practicing Alchemy.]]
'''Alchemist''' is a type of [[professions|profession]].
{{Professions}}
a6366480ac6a6944084af488ed3e5c538a8b612f
Brighter Shores
0
51
782
768
2024-03-22T23:15:38Z
Brightershoreswiki
27
wikitext
text/x-wiki
[[File:Brighter Shores key art.jpg|thumb|The promotional image for Brighter Shores.]]
'''''Brighter Shores''''' is an upcoming game developed by designed by [[Andrew Gower]]. It will be released in Q3 2024, and will be available for Windows and macOS (Apple Silicon and Intel chipsets).
The game has been under active development since at least 2014 by Gower,{{CiteTwitter|url=https://twitter.com/AndrewCGower/status/1767945130487493010|author=Andrew Gower|date=13 March 2024|accessdate=22 March 2024|quote=Over 10 years!|archiveurl=https://archive.is/rhmtZ|archivedate=22 March 2024}} and was announced officially on 13 March 2024. An ias released, which depicts [[player]]s engaging in [[combat]], several [[profession]]s, and a variety of different [[location]]s.{{CiteGeneral|url=https://www.youtube.com/watch?v=ASIbNq_pLQQ|title=Brighter Shores Gameplay Trailer|author=MMOs.com|date=13 March 2024|accessdate=22 March 2024}} The game is {{wp|free-to-play}}, but players can access additional features and content by purchasing the [[Premium Pass]].
Brighter Shores features an ongoing story with hundreds of hours of gameplay.{{CiteGeneral|url=https://store.steampowered.com/app/2791440/Brighter_Shores/|title=Brighter Shores on Steam|author=Valve|date=22 March 2024|accessdate=22 March 2024|archiveurl=https://archive.is/eYgMA|archivedate=22 March 2024}} Players start their journey in [[Hopeport]], as a member of the town guard.
==Trivia==
* The logo of Brighter Shores features [[Hopeport Obelisk]].
==External links==
* [https://store.steampowered.com/app/2791440/Brighter%20Shores/ Steam page]
* [https://brightershores.com/ Official website]
==References==
{{Reflist}}
[[Category:Games]]
[[Category:Fen Research]]
80911a77bdbe2f4b06e41870d3028037f624f065
784
782
2024-03-22T23:16:58Z
Brightershoreswiki
27
/* Trivia */
wikitext
text/x-wiki
[[File:Brighter Shores key art.jpg|thumb|The promotional image for Brighter Shores.]]
'''''Brighter Shores''''' is an upcoming game developed by designed by [[Andrew Gower]]. It will be released in Q3 2024, and will be available for Windows and macOS (Apple Silicon and Intel chipsets).
The game has been under active development since at least 2014 by Gower,{{CiteTwitter|url=https://twitter.com/AndrewCGower/status/1767945130487493010|author=Andrew Gower|date=13 March 2024|accessdate=22 March 2024|quote=Over 10 years!|archiveurl=https://archive.is/rhmtZ|archivedate=22 March 2024}} and was announced officially on 13 March 2024. An ias released, which depicts [[player]]s engaging in [[combat]], several [[profession]]s, and a variety of different [[location]]s.{{CiteGeneral|url=https://www.youtube.com/watch?v=ASIbNq_pLQQ|title=Brighter Shores Gameplay Trailer|author=MMOs.com|date=13 March 2024|accessdate=22 March 2024}} The game is {{wp|free-to-play}}, but players can access additional features and content by purchasing the [[Premium Pass]].
Brighter Shores features an ongoing story with hundreds of hours of gameplay.{{CiteGeneral|url=https://store.steampowered.com/app/2791440/Brighter_Shores/|title=Brighter Shores on Steam|author=Valve|date=22 March 2024|accessdate=22 March 2024|archiveurl=https://archive.is/eYgMA|archivedate=22 March 2024}} Players start their journey in [[Hopeport]], as a member of the town guard.
==Trivia==
* The logo of Brighter Shores features [[Hopeport Obelisk]].
The mods of the subreddit are Nazis.
==External links==
* [https://store.steampowered.com/app/2791440/Brighter%20Shores/ Steam page]
* [https://brightershores.com/ Official website]
==References==
{{Reflist}}
[[Category:Games]]
[[Category:Fen Research]]
c7aa598999e3909382b66130a0497ad4423c3bdf
786
784
2024-03-22T23:17:22Z
InvalidCards
4
Reverted edits by [[Special:Contributions/Brightershoreswiki|Brightershoreswiki]] ([[User talk:Brightershoreswiki|talk]]) to last revision by [[User:Habblet|Habblet]]
wikitext
text/x-wiki
[[File:Brighter Shores key art.jpg|thumb|The promotional image for Brighter Shores.]]
'''''Brighter Shores''''' is an upcoming game developed by [[Fen Research]] and designed by [[Andrew Gower]]. It will be released in Q3 2024, and will be available for Windows and macOS (Apple Silicon and Intel chipsets).
The game has been under active development since at least 2014 by Gower,{{CiteTwitter|url=https://twitter.com/AndrewCGower/status/1767945130487493010|author=Andrew Gower|date=13 March 2024|accessdate=22 March 2024|quote=Over 10 years!|archiveurl=https://archive.is/rhmtZ|archivedate=22 March 2024}} and was announced officially on 13 March 2024. An initial two-minute trailer was released, which depicts [[player]]s engaging in [[combat]], several [[profession]]s, and a variety of different [[location]]s.{{CiteGeneral|url=https://www.youtube.com/watch?v=ASIbNq_pLQQ|title=Brighter Shores Gameplay Trailer|author=MMOs.com|date=13 March 2024|accessdate=22 March 2024}} The game is {{wp|free-to-play}}, but players can access additional features and content by purchasing the [[Premium Pass]].
Brighter Shores features an ongoing story with hundreds of hours of gameplay.{{CiteGeneral|url=https://store.steampowered.com/app/2791440/Brighter_Shores/|title=Brighter Shores on Steam|author=Valve|date=22 March 2024|accessdate=22 March 2024|archiveurl=https://archive.is/eYgMA|archivedate=22 March 2024}} Players start their journey in [[Hopeport]], as a member of the town guard.
==Trivia==
* The logo of Brighter Shores features [[Hopeport Obelisk]].
==External links==
* [https://store.steampowered.com/app/2791440/Brighter%20Shores/ Steam page]
* [https://brightershores.com/ Official website]
==References==
{{Reflist}}
[[Category:Games]]
[[Category:Fen Research]]
015f3631721cc1eaf49a1f4a3f234a7081bef543
798
786
2024-03-23T01:00:21Z
Jayden
3
wikitext
text/x-wiki
[[File:Brighter Shores key art.jpg|thumb|The promotional image for Brighter Shores.]]
'''''Brighter Shores''''' is an upcoming game developed by [[Fen Research]] and designed by [[Andrew Gower]]. It will be released in Q3 2024, and will be available for Windows and macOS (Apple Silicon and Intel chipsets). The game is {{wp|free-to-play}}, but players can access additional features and content by purchasing the [[Premium Pass]].
Brighter Shores features an ongoing story with hundreds of hours of gameplay.{{CiteGeneral|url=https://store.steampowered.com/app/2791440/Brighter_Shores/|title=Brighter Shores on Steam|author=Valve|date=22 March 2024|accessdate=22 March 2024|archiveurl=https://archive.is/eYgMA|archivedate=22 March 2024}} Players start their journey in [[Hopeport]], as a member of the town guard.
==History==
The game has been under active development since at least 2014 by Gower,{{CiteTwitter|url=https://twitter.com/AndrewCGower/status/1767945130487493010|author=Andrew Gower|date=13 March 2024|accessdate=22 March 2024|quote=Over 10 years!|archiveurl=https://archive.is/rhmtZ|archivedate=22 March 2024}} and was announced officially on 13 March 2024. An initial two-minute trailer was released, which depicts [[player]]s engaging in [[combat]], several [[profession]]s, and a variety of different [[location]]s.{{CiteGeneral|url=https://www.youtube.com/watch?v=ASIbNq_pLQQ|title=Brighter Shores Gameplay Trailer|author=MMOs.com|date=13 March 2024|accessdate=22 March 2024}}.
A closed beta is planned in 2024 prior to the release of the game.{{CiteTwitter|url=https://twitter.com/AndrewCGower/status/1767973447425003776|author=Andrew Gower|date=13 March 2024|accessdate=23 March 2024|quote=Over 10 years!|archiveurl=https://archive.is/BknSB|archivedate=23 March 2024}}
==Trivia==
* The logo of Brighter Shores features [[Hopeport Obelisk]].
==External links==
* [https://store.steampowered.com/app/2791440/Brighter%20Shores/ Steam page]
* [https://brightershores.com/ Official website]
==References==
{{Reflist}}
[[Category:Games]]
[[Category:Fen Research]]
fa44323729dbe50dce440d668602c35dec020748
799
798
2024-03-23T01:01:24Z
Jayden
3
wikitext
text/x-wiki
[[File:Brighter Shores key art.jpg|thumb|The promotional image for Brighter Shores.]]
'''''Brighter Shores''''' is an upcoming game developed by [[Fen Research]] and designed by [[Andrew Gower]]. It will be released in Q3 2024, and will be available for Windows and macOS (Apple Silicon and Intel chipsets). The game is {{wp|free-to-play}}, but players can access additional features and content by purchasing the [[Premium Pass]].
Brighter Shores features an ongoing story with hundreds of hours of gameplay.{{CiteGeneral|url=https://store.steampowered.com/app/2791440/Brighter_Shores/|title=Brighter Shores on Steam|author=Valve|date=22 March 2024|accessdate=22 March 2024|archiveurl=https://archive.is/eYgMA|archivedate=22 March 2024}} Players start their journey in [[Hopeport]], as a member of the town guard.
==History==
The game has been under active development since at least 2014 by Gower,{{CiteTwitter|url=https://twitter.com/AndrewCGower/status/1767945130487493010|author=Andrew Gower|date=13 March 2024|accessdate=22 March 2024|quote=Over 10 years!|archiveurl=https://archive.is/rhmtZ|archivedate=22 March 2024}} and was announced officially on 13 March 2024. An initial two-minute trailer was released, which depicts [[player]]s engaging in [[combat]], several [[profession]]s, and a variety of different [[location]]s.{{CiteGeneral|url=https://www.youtube.com/watch?v=ASIbNq_pLQQ|title=Brighter Shores Gameplay Trailer|author=MMOs.com|date=13 March 2024|accessdate=22 March 2024}}.
A closed beta is planned in 2024 prior to the release of the game.{{CiteTwitter|url=https://twitter.com/AndrewCGower/status/1767973447425003776|author=Andrew Gower|date=13 March 2024|accessdate=23 March 2024|quote=There will be a closed beta. I will post more about it on x/twitter closer to the time.|archiveurl=https://archive.is/BknSB|archivedate=23 March 2024}}
==Trivia==
* The logo of Brighter Shores features [[Hopeport Obelisk]].
==External links==
* [https://store.steampowered.com/app/2791440/Brighter%20Shores/ Steam page]
* [https://brightershores.com/ Official website]
==References==
{{Reflist}}
[[Category:Games]]
[[Category:Fen Research]]
af7bb5671f0e5b5effd8ffa33af4be2813deee74
800
799
2024-03-23T01:01:36Z
Jayden
3
wikitext
text/x-wiki
[[File:Brighter Shores key art.jpg|thumb|The promotional image for Brighter Shores.]]
'''''Brighter Shores''''' is an upcoming game developed by [[Fen Research]] and designed by [[Andrew Gower]]. It will be released in Q3 2024, and will be available for Windows and macOS (Apple Silicon and Intel chipsets). The game is {{wp|free-to-play}}, but players can access additional features and content by purchasing the [[Premium Pass]].
Brighter Shores features an ongoing story with hundreds of hours of gameplay.{{CiteGeneral|url=https://store.steampowered.com/app/2791440/Brighter_Shores/|title=Brighter Shores on Steam|author=Valve|date=22 March 2024|accessdate=22 March 2024|archiveurl=https://archive.is/eYgMA|archivedate=22 March 2024}} Players start their journey in [[Hopeport]], as a member of the town guard.
==History==
The game has been under active development since at least 2014 by Gower,{{CiteTwitter|url=https://twitter.com/AndrewCGower/status/1767945130487493010|author=Andrew Gower|date=13 March 2024|accessdate=22 March 2024|quote=Over 10 years!|archiveurl=https://archive.is/rhmtZ|archivedate=22 March 2024}} and was announced officially on 13 March 2024. An initial two-minute trailer was released, which depicts [[player]]s engaging in [[combat]], several [[profession]]s, and a variety of different [[location]]s.{{CiteGeneral|url=https://www.youtube.com/watch?v=ASIbNq_pLQQ|title=Brighter Shores Gameplay Trailer|author=MMOs.com|date=13 March 2024|accessdate=22 March 2024}}
A closed beta is planned in 2024 prior to the release of the game.{{CiteTwitter|url=https://twitter.com/AndrewCGower/status/1767973447425003776|author=Andrew Gower|date=13 March 2024|accessdate=23 March 2024|quote=There will be a closed beta. I will post more about it on x/twitter closer to the time.|archiveurl=https://archive.is/BknSB|archivedate=23 March 2024}}
==Trivia==
* The logo of Brighter Shores features [[Hopeport Obelisk]].
==External links==
* [https://store.steampowered.com/app/2791440/Brighter%20Shores/ Steam page]
* [https://brightershores.com/ Official website]
==References==
{{Reflist}}
[[Category:Games]]
[[Category:Fen Research]]
4f7caee8389ec9c5829517880697c8247d823336
821
800
2024-03-23T02:31:12Z
wikitext
text/x-wiki
[[File:Brighter Shores key art.jpg|thumb|The promotional image for Brighter Shores.]]
'''''Brighter Shores''''' is an upcoming game developed by [[Fen Research]] and designed by [[Andrew Gower]]. It will be released in Q3 2024, and will be available for Windows and macOS (Apple Silicon and Intel chipsets). The game is {{wp|free-to-play}}, but players can access additional features and content by purchasing the [[Premium Pass]].
Brighter Shores features an ongoing story with hundreds of hours of gameplay.{{CiteGeneral|url=https://store.steampowered.com/app/2791440/Brighter_Shores/|title=Brighter Shores on Steam|author=Valve|date=22 March 2024|accessdate=22 March 2024|archiveurl=https://archive.is/eYgMA|archivedate=22 March 2024}} New content is released in the game in an episodic format. Players start their journey in [[Hopeport]], as a member of the town guard.
==History==
The game has been under active development since at least 2014 by Gower,{{CiteTwitter|url=https://twitter.com/AndrewCGower/status/1767945130487493010|author=Andrew Gower|date=13 March 2024|accessdate=22 March 2024|quote=Over 10 years!|archiveurl=https://archive.is/rhmtZ|archivedate=22 March 2024}} and was announced officially on 13 March 2024. An initial two-minute trailer was released, which depicts [[player]]s engaging in [[combat]], several [[profession]]s, and a variety of different [[location]]s.{{CiteGeneral|url=https://www.youtube.com/watch?v=ASIbNq_pLQQ|title=Brighter Shores Gameplay Trailer|author=MMOs.com|date=13 March 2024|accessdate=22 March 2024}}
A closed beta is planned in 2024 prior to the release of the game.{{CiteTwitter|url=https://twitter.com/AndrewCGower/status/1767973447425003776|author=Andrew Gower|date=13 March 2024|accessdate=23 March 2024|quote=There will be a closed beta. I will post more about it on x/twitter closer to the time.|archiveurl=https://archive.is/BknSB|archivedate=23 March 2024}}
==Trivia==
* The logo of Brighter Shores features [[Hopeport Obelisk]].
==External links==
* [https://store.steampowered.com/app/2791440/Brighter%20Shores/ Steam page]
* [https://brightershores.com/ Official website]
==References==
{{Reflist}}
[[Category:Games]]
[[Category:Fen Research]]
3b804231d1b3e2a7c08939898f7ddf34845eebe4
Professions
0
56
783
774
2024-03-22T23:16:23Z
Brightershoreswiki
27
/* List of professions */
wikitext
text/x-wiki
'''Professions''' are skills that [[player]]s can train and utilise in [[Brighter Shores]].
==List of professions==
{| class="wikitable"
! colspan="2" | Name !! Uses
|-
| [[File:Profession fisher.png|30px|link=Fisher]] || [[Fisher]] || Catching various [[fish]]
|-
| [[File:Profession forager.png|30px|link=Forager]] || [[NAZI]] || Gathering items
|-
| || [[NAZI]] || Cooking [[food]] items
|-
| || [[NAZI]] || Chopping down [[tree]]s
|-
| || [[Miner]] || Mining [[mineral]]s
|-
| || [[Alchemist]] || Brewing [[potion]]s
|-
| || [[Stonemason]] ||
|-
| || [[Merchant]] ||
|-
| || [[Blacksmith]] ||
|}
==Gallery==
<gallery>
File:Professions preview 1.jpg
File:Professions preview 2.jpg
File:Professions preview 3.jpg
</gallery>
{{Professions}}
{{Mechanics}}
547c42ee76536c92ffeb9a72c0d3ba04aba0b7fe
785
783
2024-03-22T23:17:10Z
InvalidCards
4
Reverted edits by [[Special:Contributions/Brightershoreswiki|Brightershoreswiki]] ([[User talk:Brightershoreswiki|talk]]) to last revision by [[User:Habblet|Habblet]]
wikitext
text/x-wiki
'''Professions''' are skills that [[player]]s can train and utilise in [[Brighter Shores]].
==List of professions==
{| class="wikitable"
! colspan="2" | Name !! Uses
|-
| [[File:Profession fisher.png|30px|link=Fisher]] || [[Fisher]] || Catching various [[fish]]
|-
| [[File:Profession forager.png|30px|link=Forager]] || [[Forager]] || Gathering items
|-
| || [[Chef]] || Cooking [[food]] items
|-
| || [[Woodcutter]] || Chopping down [[tree]]s
|-
| || [[Miner]] || Mining [[mineral]]s
|-
| || [[Alchemist]] || Brewing [[potion]]s
|-
| || [[Stonemason]] ||
|-
| || [[Merchant]] ||
|-
| || [[Blacksmith]] ||
|}
==Gallery==
<gallery>
File:Professions preview 1.jpg
File:Professions preview 2.jpg
File:Professions preview 3.jpg
</gallery>
{{Professions}}
{{Mechanics}}
d9c0b750c926aad63e20d96d17df7e810a882421
792
785
2024-03-22T23:51:05Z
Angelvaloel
32
wikitext
text/x-wiki
'''Professions''' are skills that [[player]]s can train and utilise in [[Brighter Shores]]. Being idiots is the main profession for players of this game.
==List of professions==
{| class="wikitable"
! colspan="2" | Name !! Uses
|-
| [[File:Profession fisher.png|30px|link=Fisher]] || [[Fisher]] || Catching various [[fish]]
|-
| [[File:Profession forager.png|30px|link=Forager]] || [[Forager]] || Gathering items
|-
| || [[Chef]] || Cooking [[food]] items
|-
| || [[Woodcutter]] || Chopping down [[tree]]s
|-
| || [[Miner]] || Mining [[mineral]]s
|-
| || [[Alchemist]] || Brewing [[potion]]s
|-
| || [[Stonemason]] ||
|-
| || [[Merchant]] ||
|-
| || [[Blacksmith]] ||
|}
==Gallery==
<gallery>
File:Professions preview 1.jpg
File:Professions preview 2.jpg
File:Professions preview 3.jpg
</gallery>
{{Professions}}
{{Mechanics}}
7a7ac87bc9b73226cde18377c9fe1701af85ee93
793
792
2024-03-22T23:51:18Z
InvalidCards
4
Undo revision 792 by [[Special:Contributions/Angelvaloel|Angelvaloel]] ([[User talk:Angelvaloel|talk]])
wikitext
text/x-wiki
'''Professions''' are skills that [[player]]s can train and utilise in [[Brighter Shores]].
==List of professions==
{| class="wikitable"
! colspan="2" | Name !! Uses
|-
| [[File:Profession fisher.png|30px|link=Fisher]] || [[Fisher]] || Catching various [[fish]]
|-
| [[File:Profession forager.png|30px|link=Forager]] || [[Forager]] || Gathering items
|-
| || [[Chef]] || Cooking [[food]] items
|-
| || [[Woodcutter]] || Chopping down [[tree]]s
|-
| || [[Miner]] || Mining [[mineral]]s
|-
| || [[Alchemist]] || Brewing [[potion]]s
|-
| || [[Stonemason]] ||
|-
| || [[Merchant]] ||
|-
| || [[Blacksmith]] ||
|}
==Gallery==
<gallery>
File:Professions preview 1.jpg
File:Professions preview 2.jpg
File:Professions preview 3.jpg
</gallery>
{{Professions}}
{{Mechanics}}
d9c0b750c926aad63e20d96d17df7e810a882421
797
793
2024-03-23T00:32:04Z
Jayden
3
wikitext
text/x-wiki
'''Professions''' are skills that [[player]]s can train and utilise in [[Brighter Shores]]. Most professions can either be trained by the player actively playing the game, or [[Passive activity|passively]] while the game is closed.
==List of professions==
{| class="wikitable"
! colspan="2" | Name !! Uses
|-
| [[File:Profession fisher.png|30px|link=Fisher]] || [[Fisher]] || Catching various [[fish]]
|-
| [[File:Profession forager.png|30px|link=Forager]] || [[Forager]] || Gathering items
|-
| || [[Chef]] || Cooking [[food]] items
|-
| || [[Woodcutter]] || Chopping down [[tree]]s
|-
| || [[Miner]] || Mining [[mineral]]s
|-
| || [[Alchemist]] || Brewing [[potion]]s
|-
| || [[Stonemason]] ||
|-
| || [[Merchant]] ||
|-
| || [[Blacksmith]] ||
|}
==Gallery==
<gallery>
File:Professions preview 1.jpg
File:Professions preview 2.jpg
File:Professions preview 3.jpg
</gallery>
==References==
{{Reflist}}
{{Professions}}
{{Mechanics}}
046355ddc0c716b8da10322ae21394a90d0e100c
Fen Research Ltd
0
468
787
2024-03-22T23:33:05Z
Shoyrukon
29
Redirected page to [[Fen Research]]
wikitext
text/x-wiki
#REDIRECT [[Fen Research]]
e511993f7283f332eaa2303076cafbd1c6a49df4
Fen Research
0
55
788
221
2024-03-22T23:40:23Z
Shoyrukon
29
wikitext
text/x-wiki
'''Fen Research''' is a game development studio based in [[Wikipedia:Cambridge|Cambridge]], UK. Founded by [[Andrew Gower]], it is currently actively developing the game [[Brighter Shores]].
Their official X, formerly known as Twitter, account is [[https://twitter.com/FenResearch|@FenResearch]]
[[Category:Fen Research|#]]
10b414823a422761e4506f61d065ce966a24314f
791
788
2024-03-22T23:41:50Z
Shoyrukon
29
wikitext
text/x-wiki
'''Fen Research''' is a game development studio based in [[Wikipedia:Cambridge|Cambridge]], UK. Founded by [[Andrew Gower]], it is currently actively developing the game [[Brighter Shores]].
Their official X, formerly known as Twitter, account is [http://twitter.com/FenResearh @FenResearch]
[[Category:Fen Research|#]]
81c987891e3e90db3e1fb42594a0d32506bcd357
Premium Pass
0
76
789
772
2024-03-22T23:40:44Z
Chris telles
31
wikitext
text/x-wiki
[[File:Premium Pass comparison.png|thumb|A comparison of some of the Premium Pass features.]]
The '''Premium Pass''' is a type of membership that can be purchased using real money. It provides access to a number of new areas and features in [[Brighter Shores]].
While owning the Premium Pass is required to access the benefits, it will not be a recurring subscription.
It is required to pay out your ass for a terrible game. {{CiteGeneral|url=https://www.gamesradar.com/ahead-of-his-new-mmo-runescape-creator-says-games-have-gotten-too-microtransaction-heavy-our-number-one-aim-is-not-monetization-its-players/|title=Ahead of his new MMO, RuneScape creator says games have gotten too microtransaction-heavy: "Our number one aim is not monetization, it's players"|author=Kaan Serin|date=17 March 2024|accessdate=22 March 2024|quote="One of the key differences is we're probably not going to do auto-recurring payments," continues Gower.}}
==Benefits==
There are several benefits to purchasing a Premium Pass:
* Access to the [[Mine of Mantuban]] and [[Crenopolis]]
* Ability to choose a unique character name, and change your name at any point
* Access to exclusive armour dyes
* Ability to [[trade]] with other [[player]]s
==References==
{{Reflist}}
{{Premium Pass}}
{{Mechanics}}
[[Category:Community]]
36104df807854b3c2203678aed7e1355f577d6d3
790
789
2024-03-22T23:41:02Z
InvalidCards
4
Reverted edits by [[Special:Contributions/Chris telles|Chris telles]] ([[User talk:Chris telles|talk]]) to last revision by [[User:Habblet|Habblet]]
wikitext
text/x-wiki
[[File:Premium Pass comparison.png|thumb|A comparison of some of the Premium Pass features.]]
The '''Premium Pass''' is a type of membership that can be purchased using real money. It provides access to a number of new areas and features in [[Brighter Shores]].
While owning the Premium Pass is required to access the benefits, it will not be a recurring subscription.{{CiteGeneral|url=https://www.gamesradar.com/ahead-of-his-new-mmo-runescape-creator-says-games-have-gotten-too-microtransaction-heavy-our-number-one-aim-is-not-monetization-its-players/|title=Ahead of his new MMO, RuneScape creator says games have gotten too microtransaction-heavy: "Our number one aim is not monetization, it's players"|author=Kaan Serin|date=17 March 2024|accessdate=22 March 2024|quote="One of the key differences is we're probably not going to do auto-recurring payments," continues Gower.}}
==Benefits==
There are several benefits to purchasing a Premium Pass:
* Access to the [[Mine of Mantuban]] and [[Crenopolis]]
* Ability to choose a unique character name, and change your name at any point
* Access to exclusive armour dyes
* Ability to [[trade]] with other [[player]]s
==References==
{{Reflist}}
{{Premium Pass}}
{{Mechanics}}
[[Category:Community]]
1c435e0525b91b801c9f2fda6736196ebc584549
Andrew Gower
0
54
794
767
2024-03-22T23:54:46Z
Takynsl
33
wikitext
text/x-wiki
'''Andrew Gower''' is the founder of [[Fen Research]], and the designer of the game [[Brighter Shores]]. Before working on Brighter Shores, he was most known for the popular [[Wikipedia:Massively multiplayer online role-playing game|MMORPG]] [[Wikipedia:RuneScape|RuneScape]], which he created while studying at the [[Wikipedia:University of Cambridge|University of Cambridge]].
[[Category:Fen Research staff]]
Andrew foolishly let these people try to run the sub.
b367112b9e941cca46f3bb1d1e98ad06c031c9b9
795
794
2024-03-22T23:54:58Z
Habblet
11
Reverted edits by [[Special:Contributions/Takynsl|Takynsl]] ([[User talk:Takynsl|talk]]) to last revision by [[User:Habblet|Habblet]]
wikitext
text/x-wiki
'''Andrew Gower''' is the founder of [[Fen Research]], and the designer of the game [[Brighter Shores]]. Before working on Brighter Shores, he was most known for the popular [[Wikipedia:Massively multiplayer online role-playing game|MMORPG]] [[Wikipedia:RuneScape|RuneScape]], which he created while studying at the [[Wikipedia:University of Cambridge|University of Cambridge]].
[[Category:Fen Research staff]]
ed56ed300c149ee869c658fac672f910f683f4f9
796
795
2024-03-23T00:02:31Z
Jayden
3
Protected "[[Andrew Gower]]": Excessive vandalism ([Edit=Allow only autoconfirmed users] (expires 00:02, 24 March 2024 (UTC)) [Move=Allow only autoconfirmed users] (expires 00:02, 24 March 2024 (UTC)))
wikitext
text/x-wiki
'''Andrew Gower''' is the founder of [[Fen Research]], and the designer of the game [[Brighter Shores]]. Before working on Brighter Shores, he was most known for the popular [[Wikipedia:Massively multiplayer online role-playing game|MMORPG]] [[Wikipedia:RuneScape|RuneScape]], which he created while studying at the [[Wikipedia:University of Cambridge|University of Cambridge]].
[[Category:Fen Research staff]]
ed56ed300c149ee869c658fac672f910f683f4f9
Module:Infobox
828
102
801
232
2024-03-23T01:31:54Z
Gau Cho
5
Slowly starting a bit of cleanup
Scribunto
text/plain
--[=[
-- For documentation, see [[Module:Infobox/doc]]
--]=]
-- <nowiki>
local Infobox = {}
Infobox.__index = Infobox
Infobox.__tostring = Infobox.tostring
-- Edit button for unknown params
local editbutton = require('Module:Edit button')
local edit = editbutton("'''?''' (edit)")
-- Page title
local pagename = mw.title.getCurrentTitle().fullText
-- map of flags to html tags used by Infobox.addRow()
-- let's only define it once, since :addRow() is used multiple times per module
local tagmap = {
tr = 'tr',
th = 'th',
td = 'td',
argh = 'th',
argd = 'td'
}
--[=[
-- Standardized functions
-- called as string with defineParams
--]=]
-- Standardized "has content" function
function hasContent(arg, default)
-- Return arg if any non-whitespace character is found
return string.match(arg or '','%S') and arg or default
end
-- Standardized "name" function
function subjectName(arg)
return string.match(arg or '','%S') and arg or nil
end
-- Create a standardized release function, since so many pages use it
-- Turns release and update into a single parameter
function releaseUpdate(release, update)
if not Infobox.isDefined(release) then
return nil
end
if string.lower(release) == 'no' then
return 'N/A'
end
if not Infobox.isDefined(update) then
return string.format('%s (Update unknown)',release)
end
if string.lower(update) == 'no' then
return release
end
return string.format('%s ([[Update:%s|Update]])', release, update)
end
-- Standardized image function
function image(img)
if img and img:find('%S') then
return img
else
return nil
end
end
-- Standardized numbers
function numbers(num)
num = string.gsub(num or '',',','')
return tonumber(num)
end
-- map of names to pre-defined functions, used by Infobox:defineParams
local func_map = {
name = subjectName,
release = { name = releaseUpdate, params = { 'release', 'update' }, flag = 'p' },
removal = { name = releaseUpdate, params = { 'removal', 'removalupdate' }, flag = 'p' },
has_content = hasContent,
image = image,
numbers = numbers,
}
-- used to fill nil params in switching sections
-- this message isn't kidding
-- If you see this message anywhere outside of this code
-- (including inside switchfo box data)
-- report it
local nil_param = 'INFOBOX MODULE ERROR, PLEASE REPORT TO WIKI ADMIN'
-- In case the nil_param is needed outside of this module
-- give it an easy way to be accessed
function Infobox.nilParam()
return nil_param
end
-- switch infobox globals
local LINE_WIDTH = 300
local MAX_LINES = 2
local DEFAULT_MAX_BUTTONS = 6
-- calculate with width of a switch infobox button
-- potential @TODO: rework to use actual character widths
function button_width(label)
local PX_PER_CHAR = 6
local PX_PAD_MAR = 24
return string.len(label) * PX_PER_CHAR + PX_PAD_MAR
end
Infobox.splitpoint = '&&SPLITPOINT&&'
-- quick test to see if a value is considered nil
function Infobox.isDefined(arg)
if arg == nil then
return false
end
if type(arg) == 'string' then
if arg == nil_param then
return false
elseif arg:find('%S') then
if arg:find('action=edit') then
return false
else
return true
end
else
return false
end
end
return true
end
--[[
Infobox class
-- args : parameters from frame to pass through
-- Sets a meta table and creates a <div> tag wrapper
-- other fields are initialized in other functions
--]]
function Infobox.new(args)
local obj = setmetatable({
args = args, -- parameters (uncleaned)
rargs = {}, -- parameters (cleaned)
params = {}, -- parameters mapped to functions
paramnames = {}, -- parameter names
dupeable = {}, -- parameters that are allowed to have duplicated switch data
add_infobox_class = true, -- if true, will add the class 'infobox'
switchfo = false, -- switch infobox? or not?
switchfoattr = {}, -- switch data class changes
maxbuttons = DEFAULT_MAX_BUTTONS, -- maximum number of buttons before switching becomes a menu
switch_tag = '', -- switchfo data
switch_buttons_tag = '', -- switchfo buttons
custom_buttons = false,
smw_error_tag = '',
rtable = nil, -- returned infobox table
labels = nil, -- returned labels
_smw = {}, -- semantic mediawiki data
_smwOne = {}, -- semantic mediawiki data part 2
_smwSubobject = {}, -- semantic mediawiki data part 3
_smwSubobjectAppliesTo = nil, -- semantic mediawiki data part 3.5
_smwElement = {}, -- semantic mediawiki data part 4
setSMWElement = true,
versions = -1, -- number of switch versions (-1 is uncalculated)
infoboxname = nil, -- template name
appendStrs = {},
bottomlinks = { -- template bottom links
links = {
{ 'Template talk:%s', 'talk' },
{ 'Template:%s', 'view' }
},
colspan = 2
},
catdata = {}, -- meta category data
catlist = {}, -- defined table of category names (strings)
__finished = false, -- infobox status
},
Infobox)
return obj
end
--[[
Removes the addition of infobox class
use before :create()
--]]
function Infobox:removeClassInfobox()
self.add_infobox_class = false
end
--[[
Creates an infobox
-- If Infobox:maxVersions() has not been run, it will be run here
-- If the infobox should be a switch infobox, all labels will be added
-- Creates a wikitable that will be the infobox
THIS SHOULD BE DONE AFTER ADDING AND CLEANING PARAMETERS
--]]
function Infobox:create()
-- Run to find if this is a switch infobox and if so, how many boxes
if self.versions == -1 then
self:maxVersion()
end
-- Run if switch infobox
if self.switchfo then
-- Buttons wrapper
-- Hidden by default, unhidden by javascript
self.switch_buttons_tag = mw.html.create('div')
:addClass('infobox-buttons')
-- default version to immediately switch to via js
local defv = tonumber(self.args.defver)
if defv and defv <= self.versions then -- you troll, don't try to show something that isn't there
self.switch_buttons_tag:attr('data-default-version',defv)
end
local numlines = 1
local width_working = 0
local total_width = 0
local buttons = {}
-- Add individual buttons to the wrapper
for i=1,self.versions do
local wid = button_width(self.labels[i] or i)
width_working = width_working + wid
total_width = total_width + wid
if width_working > LINE_WIDTH then
numlines = numlines + 1
width_working = wid
end
local b = mw.html.create('span')
:attr('data-switch-index',tostring(i))
-- space to underscore
:attr('data-switch-anchor','#'..string.gsub(self.labels[i] or i,' ','_'))
:addClass('button')
:wikitext(self.labels[i] or i)
table.insert(buttons, {b, wid})
end
local best = {-1, 100000}
if (numlines > 1) and (numlines <= MAX_LINES) then
-- attempt to balance line widths
local w_s, w_e = 0,total_width
for i = 1,#buttons-1 do
w_s = w_s + buttons[i][2]
w_e = w_e - buttons[i][2]
if w_s > LINE_WIDTH then
-- w_s only increases, so we're done once it exceeds the width
break
end
if w_e <= LINE_WIDTH then
-- w_e only decreases, so just continue if it exceeds line
local diff = math.abs(w_s - w_e)
if diff < best[2] then
best = { i, diff }
end
end
end
if best[1] == -1 then
best = { math.floor(#buttons/2), 100000 }
end
end
for i,v in ipairs(buttons) do
self.switch_buttons_tag:node(v[1])
if i == best[1] then
self.switch_buttons_tag:tag('br')
end
end
-- Used by JavaScript to turn the buttons into a menu list if too many variants
if self.versions > self.maxbuttons or numlines > MAX_LINES then
self.switch_buttons_tag:addClass('infobox-buttons-select')
end
self.switch_buttons_tag:done()
end
-- Create infobox table
self.rtable = mw.html.create('table')
:addClass('plainlinks')
if self.add_infobox_class then
self.rtable:addClass('infobox')
end
-- Add necessary class if switch infobox
if self.switchfo then
self.rtable:addClass('infobox-switch')
end
end
-- Defines an infobox name ({{Template:arg}})
-- Used to create a link at the bottom of pages
function Infobox:defineName(arg)
self.infoboxname = arg
end
-- Defines the bottom links of the infobox
-- pass a table whose elements are tables that define a link and a label
-- {
-- { 'link', 'label },
-- ...
-- }
-- The template name can be substituted into the tables using '%s'
-- If we wanted Template:InFooBar to link to it's /doc page with a "doc" label:
-- { ...
-- { 'Template:%s/doc', 'doc' },
-- ... }
-- The template's name can only be called 5 times
function Infobox:defineLinks(arg)
if type(arg) == 'table' then
if arg.colspan then
self.bottomlinks.colspan = arg.colspan
end
if arg.links then
if type(arg.links) == 'table' then
self.bottomlinks.links = arg.links
end
end
if arg.hide then
self.bottomlinks.hide = arg.hide
end
end
end
-- Change max number of buttons before switching to menu
-- defaults to 5
-- MUST BE RUN BEFORE :create()
function Infobox:setMaxButtons(arg)
-- if not a number, just go back to default
self.maxbuttons = tonumber(arg) or DEFAULT_MAX_BUTTONS
end
--[[
Add parameters functions
All parameters should be tables
The first parameter defines the type of cell to create
-- th : <th>
-- td : <td>
-- argh : <th>
-- argd : <td>
The second parameter defines what is inside the tag
-- th | th : text passed
-- argh | argd : parameter with the name passed
Additional named parameters can be used to add any styling or attributes
-- attr : mw.html:attr({ arg1 = '1', ... })
-- css : mw.html:css({ arg1 = '1', ...)
-- class : mw.html:addClass('arg')
---- class also supports a table of values, even though mw.html:addClass() does not
-- rowspan : mw.html:attr('rowspan',arg)
-- colspan : mw.html:attr('colspan',arg)
-- title : mw.html:attr('title',arg)
Example:
ipsobox:addRow( { 'th' , 'Header', title = 'Title' },
{ 'argh', 'arg1', class = 'parameter' } })
produces:
<tr><th title="Title">Header</th><th class="parameter">args.arg1</th></tr>
adding it to the infobox table of ipsobox
Cells defined as 'argh' and 'argd' will automatically have data-attr-param="" added, and defined as the passed argument if the infobox in creation is defined as a switch infobox
The row itself may be modified with metadata using the named index at "meta"
-- meta.addClass : mw.html:addClass('arg')
-- this function currently only supports a single string
--]]
function Infobox.addRow(box, ...)
-- New row to add
local args = ...
local _row = box.rtable:tag('tr')
-- For each member of tags
for i, v in ipairs(args) do
-- map tag name to appropriate tag, default to <td>
local _cell = _row:tag(tagmap[v.tag] or 'td')
-- mw.html:attr() and mw.html:css() both accept table input
-- colspan, rowspan, title will be quick ways to access attr
-- these functions also do all the necessary work
if v.attr then
_cell:attr(v.attr)
end
if v.colspan then
_cell:attr('colspan',v.colspan)
end
if v.rowspan then
_cell:attr('rowspan',v.rowspan)
end
if v.title then
_cell:attr('title',v.title)
end
if v.css then
_cell:css(v.css)
end
-- if class is a string, it can be added directly
-- if a table, add every value
-- mw.html:addClass() doesn't function with tables
-- so iterate over the class names here and add them individually
if v.class then
if type(v.class) == 'string' then
_cell:addClass(v.class)
elseif type(v.class) == 'table' then
for _, w in ipairs(v.class) do
_cell:addClass(w)
end
end
end
-- if the cell is a normal th or td, add the exact argument passed
if v.tag == 'th' or v.tag == 'td' then
_cell:wikitext(v.content)
-- if defined with "arg", add the argument with name passed
elseif v.tag == 'argh' or v.tag == 'argd' then
local content = box.rargs[v.content]
-- if the requested parameter doesn't exist whatsoever, just return a blank string
if not content then
content = ''
-- If switches exist, first attempt to use the version1 values
elseif content.switches then
if content.switches[1] ~= nil_param then
content = content.switches[1] or ''
else
content = content.d or ''
end
-- fallback to default value
else
content = content.d or ''
end
_cell:wikitext(content)
-- add necessary attribute for switch infoboxes
if box.switchfo then
_cell:attr('data-attr-param',v.content)
end
end
end
-- not that meta
-- allow classes to be defined on the whole row
-- okay, sort of meta
if args.meta then
if args.meta.addClass then
_row:addClass(args.meta.addClass)
end
end
return box
end
function Infobox.customButtonPlacement(box,arg)
box.custom_buttons = arg
return box
end
function Infobox.addButtonsRow(box, args)
if box.switchfo then
box.custom_buttons = true
local _row = box.rtable:tag('tr')
:addClass('rsw-infobox-switch-buttons-row')
:tag('td')
:addClass('rsw-infobox-switch-buttons')
:attr('colspan', args.colspan)
:node(box.switch_buttons_tag)
end
return box
end
function Infobox.addButtonsCaption(box)
if box.switchfo then
box.custom_buttons = true
local _row = box.rtable:tag('caption')
:addClass('rsw-infobox-switch-buttons-caption')
:node(box.switch_buttons_tag)
end
return box
end
--[[
-- adds a blank row of padding spanning the given number of columns
--]]
function Infobox.pad(box, colspan, class)
local tr = box:tag('tr')
:tag('td'):attr('colspan', colspan or 1):addClass('infobox-padding')
:done()
if class then
tr:addClass(class)
end
tr:done()
return box
end
--[[
-- functions the same as mw.html:wikitext() on the wrapper
-- Should only be used for categories really
--]]
function Infobox.wikitext(box, arg)
box.rtable:wikitext(arg)
return box
end
--[[
-- Adds the specified item(s) to the end of the infobox, outside of the table
-- items are concatenated together with an empty space
--]]
function Infobox.append(box, ...)
for i,v in ipairs({...}) do
table.insert(box.appendStrs, v)
end
return box
end
--[[
-- Adds a caption to the infobox
-- defaults to the pagename
-- or the default argument if defined
--]]
function Infobox.caption(box)
-- default to the article's name
local name = pagename
-- first see if the name parameter exists
if box.rargs.name then
-- then try the default
if box.rargs.name.d then
name = box.rargs.name.d
-- then look for swithes
elseif box.rargs.name.switches then
-- then look at version 1
if box.rargs.name.switches[1] ~= nil_param then
name = box.rargs.name.switches[1]
end
end
end
local caption = box.rtable:tag('caption')
:wikitext(name)
-- add necessary attribute for switch infoboxes
if box.switchfo then
caption:attr('data-attr-param','name')
end
return box
end
--[[
-- Functions for styling the infobox
-- works the same as the respective mw.html functions
--]]
-- attr
function Infobox.attr(box, arg)
box.rtable:attr(arg)
return box
end
-- css
function Infobox.float(box,float)
box.rtable:css('float',float)
return box
end
function Infobox.css(box, ...)
box.rtable:css(...)
return box
end
-- addClass
function Infobox.addClass(box, arg)
box.rtable:addClass(arg)
return box
end
-- Much like Infobox.addClass, but adds multiple classes
function Infobox.addClasses(box, ...)
for _, v in ipairs(...) do
box.rtable:addClass(box)
end
return box
end
--[[
Add tags directly to the infobox table
Use sparingly
Returns the tag created rather than the entire box
Which is an mw.html object
Further uses of :tag() will be mw.html.tag, rather than Infobox.tag
As such, Infobox:addRow() cannot be used afterwards without restating the infobox as the object
--]]
function Infobox.tag(box, arg)
return box.rtable:tag(arg)
end
--[[
Allows the infobox to use Semantic Media Wiki and give parameters properties
Pass a table to this function to map parameter names to properties
Calling syntax:
-- {{#show:page|?property}}:
-- "<property>" - unqualified and without a number will display the default value
-- "<property#>" - with a number will show the switch data from that index
-- "all <property>" - adding all will display every unique value in a comma separated list
Properties initiated in Infobox:finish()
--]]
function Infobox:useSMW(arg)
if type(arg) == 'table' then
for w, v in pairs(arg) do
self._smw[w] = v
end
end
end
--[[
As above, but only assigns to "<property>", which will act like "all <property>" - "<property>#" not present
Properties initiated in Infobox:finish()
--]]
function Infobox:useSMWOne(arg)
if type(arg) == 'table' then
for w, v in pairs(arg) do
self._smwOne[w] = v
end
end
end
--[[
Set up the infobox to set properties in a SMW subobject. This will create a subobject for each version
- if there is only one version, it will put the properties directly on to the page, like useSMWOne
Properties initiated in Infobox:finish()
--]]
function Infobox:useSMWSubobject(arg)
if type(arg) == 'table' then
for w, v in pairs(arg) do
self._smwSubobject[w] = v
end
end
end
function Infobox:useSMWElement(arg)
if type(arg) == 'table' then
for w, v in pairs(arg) do
self._smwElement[w] = v
end
self.setSMWElement = true
end
end
--[[
Finishing function
-- Finishes the return, adding necessary final tags
--]]
function Infobox:finish()
local onmain = mw.title.getCurrentTitle().namespace == 0
-- Don't finish twice
if self.__finished then
return
end
-- Add switch infobox resources
--if self.switchfo then
self.rtable:attr('data-resource-class', '.infobox-resources-'..string.gsub(tostring(self.infoboxname), ' ', '_'))
-- Wrapper tag, hidden
self.switch_tag = mw.html.create('div')
:addClass('infobox-switch-resources')
:addClass('infobox-resources-'..string.gsub(tostring(self.infoboxname), ' ', '_'))
:addClass('hidden')
for _, v in ipairs(self.paramnames) do
local param = self.rargs[v]
local default_value = param.d or edit
-- Parameters may not have any switches data, those are ignored
local switchattr = self.switchfoattr[v]
-- Parameter data wrapper
local res_span = self.switch_tag:tag('span')
:attr('data-attr-param',v)
-- Child for default value
local def = res_span:tag('span')
:attr('data-attr-index',0)
:wikitext(tostring(default_value))
-- Switch classes
if switchattr then
def:attr('data-addclass',switchattr.d)
end
def:done()
if param.switches then
-- Add all switches, ignore those defined as nil
for i, w in ipairs(param.switches) do
if w ~= nil_param and w ~= nil and w ~= default_value then
local _w = res_span:tag('span')
:attr('data-attr-index',i)
:wikitext(tostring(w))
-- Switch classes
if switchattr then
_w:attr('data-addclass',switchattr.switches[i])
end
_w:done()
end
end
res_span:done()
end
end
-- Add a tracking category for mainspace pages that have more than 1 version
if onmain then
if self.versions > 1 then
-- version count data
self.switch_tag:tag('span')
:wikitext(string.format('Versions: [[Version count::%s]]',self.versions))
:done()
self.switch_tag:wikitext('[[Category:Pages that contain switch infobox data]]')
end
end
self.switch_tag:done()
--end
-- smw data
if onmain then
-- members smw display, yes --> true; no --> false; other --> unknown
local function smwMembers(smw_arg)
local smw_argv = string.lower(smw_arg or '')
if smw_argv == 'yes' then
return 'true'
elseif smw_argv == 'no' then
return 'false'
else
return 'unknown'
end
end
-- release date smw display
local function smwRelease(smw_arg)
local _d,_m,_y = string.match(smw_arg or '', '%[%[(%d%d?) (%a+)%]%] %[%[(%d%d%d%d)%]%]')
if _d == nil then
return nil
end
return table.concat({_d,_m,_y},' ')
end
-- default, just return the text
local function smwDefault(smw_arg)
if smw_arg ~= nil_param and smw_arg ~= edit then
return smw_arg
else
return 'unknown'
end
end
local smw_to_func = {
members = smwMembers,
release = smwRelease,
removal = smwRelease,
default = smwDefault
}
local smw_data_arr = {}
-- custom properties
for w, v in pairs(self._smw) do
-- only needed to give special formatting to release
-- and to make members true/false
local smwfunc = smw_to_func[w] or smw_to_func.default
local curarg = self.rargs[w]
if curarg then
local _arg = curarg.d
local argdefault = _arg
if _arg == edit then
argdefault = 'unknown'
else
local _x = mw.text.split(tostring(_arg), Infobox.splitpoint, true)
if not smw_data_arr[v] then
smw_data_arr[v] = {}
end
if not smw_data_arr['All '..v] then
smw_data_arr['All '..v] = {}
end
for _,y in ipairs(_x) do
local temp_smw_data = smwfunc(y)
table.insert(smw_data_arr[v], temp_smw_data)
table.insert(smw_data_arr['All '..v], temp_smw_data)
end
end
if curarg.switches then
local _args = {}
for _, x in ipairs(curarg.switches) do
if x ~= nil_param then
table.insert(_args,x)
else
table.insert(_args,argdefault or nil_param)
end
end
for i, x in ipairs(_args) do
local _x = mw.text.split(tostring(x), Infobox.splitpoint, true)
if not smw_data_arr[v..i] then
smw_data_arr[v..i] = {}
end
if not smw_data_arr['All '..v] then
smw_data_arr['All '..v] = {}
end
for _,y in ipairs(_x) do
local temp_smw_data = smwfunc(y)
table.insert(smw_data_arr[v..i], temp_smw_data)
table.insert(smw_data_arr['All '..v], temp_smw_data)
end
end
end
end
end
-- if one version, put smwSubobject into smwOne and just do that
if self.versions < 2 and not self._smwSubobjectAppliesTo then
for w,v in pairs(self._smwSubobject) do
if not self._smwOne[w] then
self._smwOne[w] = v
elseif type(self._smwOne[w]) == 'table' then
table.insert(self._smwOne[w], v)
else
self._smwOne[w] = { self._smwOne[w], v }
end
end
end
for w, _v in pairs(self._smwOne) do
-- only needed to give special formatting to release
-- and to make members true/false
local smwfunc = smw_to_func[w] or smw_to_func.default
local curarg = self.rargs[w]
if curarg then
local _arg = curarg.d
local argdefault = _arg
if _arg == edit then
argdefault = 'unknown'
end
if curarg.switches then
local _args = {}
for _, x in ipairs(curarg.switches) do
if x ~= nil_param then
table.insert(_args,x)
else
table.insert(_args,argdefault or nil_param)
end
end
for i, x in ipairs(_args) do
local _x = mw.text.split(tostring(x), Infobox.splitpoint, true)
for _,y in ipairs(_x) do
local temp_smw_data = smwfunc(y)
for _,v in ipairs(type(_v) == 'table' and _v or {_v}) do
if not smw_data_arr[v] then
smw_data_arr[v] = {}
end
table.insert(smw_data_arr[v], temp_smw_data)
end
end
end
else
if Infobox.isDefined(_arg) then
local _targ = mw.text.split(tostring(_arg), Infobox.splitpoint, true)
for _,y in ipairs(_targ) do
local temp_smw_data = smwfunc(y)
for _,v in ipairs(type(_v) == 'table' and _v or {_v}) do
if not smw_data_arr[v] then
smw_data_arr[v] = {}
end
table.insert(smw_data_arr[v], temp_smw_data)
end
end
end
end
end
end
local smw_data_arr_elem = {}
for w, v in pairs(self._smwElement) do
-- only needed to give special formatting to release
-- and to make members true/false
local smwfunc = smw_to_func[w] or smw_to_func.default
local curarg = self.rargs[w]
if curarg then
local _arg = curarg.d
local argdefault = _arg
if _arg == edit then
argdefault = 'unknown'
end
if curarg.switches then
local _args = {}
for _, x in ipairs(curarg.switches) do
if x ~= nil_param then
table.insert(_args,x)
else
table.insert(_args,argdefault or nil_param)
end
end
for i, x in ipairs(_args) do
if Infobox.isDefined(x) then
local _x = mw.text.split(tostring(x), Infobox.splitpoint, true)
for _,y in ipairs(_x) do
local temp_smw_data = smwfunc(y)
if not smw_data_arr_elem[v] then
smw_data_arr_elem[v] = {}
end
table.insert(smw_data_arr_elem[v], temp_smw_data)
end
end
end
else
if Infobox.isDefined(_arg) then
local _targ = mw.text.split(tostring(_arg), Infobox.splitpoint, true)
for _,y in ipairs(_targ) do
local temp_smw_data = smwfunc(y)
if not smw_data_arr_elem[v] then
smw_data_arr_elem[v] = {}
end
table.insert(smw_data_arr_elem[v], temp_smw_data)
end
end
end
end
end
-- if is a switchfo, setup for subobjects
local smw_data_arr_subobj = {}
if self._smwSubobjectAppliesTo then
for i,k in ipairs(self._smwSubobjectAppliesTo) do
local subobj_data = {
['Is variant of'] = {pagename},
}
for w,v in pairs(self._smwSubobject) do
local smwfunc = smw_to_func[w] or smw_to_func.default
local curarg = self.rargs[w]
if curarg then
local argval = curarg.d
if curarg.switches then
argval = curarg.switches[i]
if not Infobox.isDefined(argval) then
argval = curarg.d
end
end
if Infobox.isDefined(argval) then
local _x = mw.text.split(tostring(argval), Infobox.splitpoint, true)
for _, _x1 in ipairs(_x) do
_x1 = smwfunc(_x1)
if _x1 ~= 'unknown' then
if not subobj_data[v] then
subobj_data[v] = {}
end
table.insert(subobj_data[v], _x1)
end
end
end
end
end
for w,v in ipairs(k) do
local subobj_name = v
-- can't have a . in the first 5 characters of a subobject identifier
if mw.ustring.find(mw.ustring.sub(subobj_name,0,5), '%.') then
self:wikitext('[[Category:Pages with an invalid subobject name]]')
subobj_name = mw.ustring.gsub(subobj_name, '%.', '')
end
if subobj_name == '0' or subobj_name == '' then
self:wikitext('[[Category:Pages with an invalid subobject name]]')
subobj_name = 'v_'..subobj_name
end
smw_data_arr_subobj[subobj_name] = subobj_data
end
end
end
local res = mw.smw.set(smw_data_arr)
local res_subobj = true
for w,v in pairs(smw_data_arr_subobj) do
res_subobj = mw.smw.subobject(v, w)
if not res_subobj == true then
break
end
end
if not (res == true and res_subobj == true) then
self.smw_error_tag = mw.html.create('div'):css('display','none'):addClass('infobox-smw-data')
if not res == true then
self.smw_error_tag:tag('div'):wikitext('Error setting SMW properties: '+res.error):done()
end
if not res_subobj == true then
self.smw_error_tag:tag('div'):wikitext('Error setting SMW subobject properties: '+res_subobj.error):done()
end
end
if self.setSMWElement then
if self.smw_error_tag == '' then
self.smw_error_tag = mw.html.create('div'):css('display','none'):addClass('infobox-smw-data')
end
for i,v in pairs(smw_data_arr_elem) do
for j,k in ipairs(v) do
if k ~= 'unknown' then
self.smw_error_tag:tag('span'):wikitext(mw.ustring.format('%s: [[%s::%s]]', i,i,k ))
end
end
end
end
if self._smwSubobjectAppliesTo then
if self.smw_error_tag == '' then
self.smw_error_tag = mw.html.create('div'):css('display','none'):addClass('infobox-smw-data')
end
for w,v in pairs(smw_data_arr_subobj) do
local subobjdiv = self.smw_error_tag:tag('div')
subobjdiv:tag('span'):wikitext('SMW Subobject for '..w)
for j,k in pairs(v) do
subobjdiv:tag('span'):wikitext(mw.ustring.format('%s: %s', j, table.concat(k, ', ')))
end
end
end
end
-- Add view and talk links to infobox
-- Only done if a name is defined
if self.infoboxname and not self.bottomlinks.hide then
local bottom_links = {}
for _, v in ipairs(self.bottomlinks.links) do
table.insert(bottom_links,
string.format(
table.concat({'[[',
v[1],
'|',
v[2],
']]'}),
self.infoboxname,
self.infoboxname,
self.infoboxname,
self.infoboxname,
self.infoboxname)
)
end
bottom_links = table.concat(bottom_links,' • ')
self.rtable:tag('tr'):tag('td')
:addClass('infobox-template-links')
:attr('colspan', self.bottomlinks.colspan)
:wikitext(bottom_links)
:done()
end
-- Define as finished
self.__finished = true
end
--[[
Function for defining parameters
-- name : parameter name
-- func : function to define param, defaults to looking at blanks
DO NOT DEFINE VERSION HERE
USE :maxVersion()
Can be used any number of times for efficient definition
--]]
function Infobox:defineParams(...)
for _, v in ipairs(...) do
-- For every parameter, store its corresponding function to self.params
if v.name then
-- If the value is a function or a table (which should define a function)
if type(v.func) == 'function' or type(v.func) == 'table' then
self.params[v.name] = v.func
-- If the value is a string, use the predefined Infobox function of that name
elseif type(v.func) == 'string' then
self.params[v.name] = func_map[v.func] or hasContent
-- Everything else just looks for blanks
else
self.params[v.name] = hasContent()
end
-- Create a list of all param names
table.insert(self.paramnames,v.name)
-- function to allow duplicated values
if v.dupes then
self.dupeable[v.name] = true
end
end
end
end
--[[
-- Forces an infobox to only use 1 variant
-- Mainly used by lite infoboxes
-- This should be run before creation
--]]
function Infobox:noSwitch()
self.versions = 1
self.switchfo = false
end
--[[
-- Calculates the max version
-- Adds labels
-- Sees if this needs to be a switch infobox
-- Returns extra version count (even if already run)
--]]
function Infobox.maxVersion(box)
-- Only allowed to run once
if box.versions ~= -1 then
return box.versions
end
box.labels = {}
box.versions = 0
local smwappliesto = {}
-- Look for up to 125 variants, defined in order
for i=1, 125 do
-- If variant# exists
if box.args['version'..i] then
-- Increase version count
box.versions = box.versions + 1
-- Add its label
local label = box.args['version'..i] or ('Version '..i)
table.insert(box.labels,label)
-- add to appliesto
if box.args['smwname'..i] or box.args['appliesto'..i] then
table.insert(smwappliesto, mw.text.split(box.args['smwname'..i] or box.args['appliesto'..i], '¦'))
else
table.insert(smwappliesto, {label})
end
else
-- Stop if it doesn't exist
break
end
end
-- Define self as a switch infobox if at least 1 other version is found
if box.versions > 0 then
box.switchfo = true
box._smwSubobjectAppliesTo = smwappliesto
else
-- single version, check for appliesto
if box.args['smwname'] or box.args['appliesto'] then
box._smwSubobjectAppliesTo = {mw.text.split(box.args['smwname'] or box.args['appliesto'], '¦')}
end
end
-- versions calculated
return box.versions
end
--[[
-- Cleans parameters as defined by the above function
-- SHOULD NOT BE RUN UNTIL ALL THINGS ARE DEFINED
-- Handles switches as well
-- adds table _add to rargs, a cleaned up version of arguments
-- d : default value
-- switches : table of switches (in numerical order)
-- Functions can be defined with tables
---- name : name of function
---- params : table of args to pass to functions
---- flag : flags for input
d | #default : use the cleaned parameter first, otherwise passed
p : use the passed value of parameters
r | l : use raw (literal) text, rather than values
-- Defining a single flag will use that flag on all parameters
-- Defining a table of flags will use the respective flag by position
--]]
function Infobox:cleanParams()
-- map of flags to functionality
local flagmap = {
r = 'r',
l = 'r',
d = 'd',
p = 'p'
}
-- For all parameters named
for _, v in ipairs(self.paramnames) do
-- Parameter to add
local _add = {}
local catdata = { all_defined = true, one_defined = false }
-- If the value of params is a function
if type(self.params[v]) == 'function' then
-- Perform that function with the parameter
_add.d = self.params[v](self.args[v])
-- If it's a table, parse it into a function
elseif type(self.params[v]) == 'table' then
-- Find the functions name
local func = self.params[v].name
if type(func) == 'string' then
func = func_map[func]
end
-- catch all
if type(func) ~= 'function' then
func = has_content
end
-- Recreate table of args and flags
local func_args = {}
local flag = {}
-- If the flags are NOT a table, turn them into a table
-- Same size as the parameter table
-- Every flag will be the same
if type(self.params[v].flag) ~= 'table' then
-- Map flags, if unmapped, use default
local _flag = flagmap[self.params[v].flag] or 'd'
-- recreate table
for x=1,#self.params[v].params do
table.insert(flag,_flag)
end
-- If flags are already a table, recreate them in new table
elseif type(self.params[v].flag) == 'table' then
local _flag = self.params[v].flag
-- recreate table
for x=1,#self.params[v].params do
-- Map flags, if unmapped, use default
table.insert(flag,flagmap[_flag[x]] or 'd')
end
end
-- Recreate param table, parsing flags as instructions
for x, w in ipairs(self.params[v].params) do
local xarg
-- By default or defined as 'd'
-- looks for the cleaned value of the named parameter first
-- if it doesn't exist, look at the passed value next
-- if that doesn't exist, use blank
if flag[x] == 'd' then
xarg = self.rargs[w] and self.rargs[w].d
-- compare to nil explicitly because false is a valid value
if xarg == nil then
xarg = self.args[w] or ''
end
-- Look only at the passed value of the named parameter
-- if that doesn't exist, use blank
elseif flag[x] == 'p' then
xarg = self.args[w] or ''
-- Don't interpret value as a parameter name, and paste the as is
elseif flag[x] == 'r' then
xarg = w
end
-- Add parsed argument to table
table.insert(func_args,xarg)
end
-- Run function
_add.d = func(unpack(func_args))
end
if _add.d == nil or _add.d == nil_param then
-- have to do pagename defaults here to prevent weird behaviour with switch values
if v == 'name' then
_add.d = pagename
else
_add.d = edit
end
catdata.all_defined = false
else
--_add.d is not nil
catdata.one_defined = true
end
if self.switchfo then
-- Table of switches values and count of them
local _add_switch = {}
local switches = 0
-- Look for up to the maximum number
for i=1, self.versions do
local _addarg
-- see if this param is allowed to have switch
if v ~= 'image' and v ~= 'examine' and string.find(self.args[v..i] or '','%$%d') then
local refi = string.match(self.args[v..i],'%$(%d+)')
_addarg = _add_switch[tonumber(refi)] or nil_param
else
-- If the value of params is a function
if type(self.params[v]) == 'function' then
-- Perform that function with the parameter at that index
_addarg = self.params[v](self.args[v..i])
-- If it's a table, parse it into a function
elseif type(self.params[v]) == 'table' then
-- Find the functions name
local func = self.params[v].name
if type(func) == 'string' then
func = func_map[func]
end
-- catch all
if type(func) ~= 'function' then
func = has_content
end
-- Recreate table of args and flags
local func_args = {}
local flag = {}
-- If the flags are NOT a table, turn them into a table
-- Same size as the parameter table
-- Every flag will be the same
if type(self.params[v].flag) ~= 'table' then
-- Map flags, if unmapped, use default
local _flag = flagmap[self.params[v].flag] or 'd'
-- recreate table
for x=1,#self.params[v].params do
table.insert(flag,_flag)
end
-- If flags are already a table, recreate them in new table
elseif type(self.params[v].flag) == 'table' then
local _flag = self.params[v].flag
-- recreate table
for x=1,#self.params[v].params do
-- Map flags, if unmapped, use default
table.insert(flag,flagmap[_flag[x]] or 'd')
end
end
-- Recreate param table, parsing flags as instructions
for x, w in ipairs(self.params[v].params) do
local xarg
-- By default or defined as 'd'
-- looks for the cleaned value of the named parameter first
-- if it doesn't exist, look at the passed value next
-- if that doesn't exist, look at the default
-- if that doesn't exist, use blank
if flag[x] == 'd' then
if self.rargs[w] then
if self.rargs[w].switches then
xarg = self.rargs[w].switches[i]
else
xarg = self.args[w..i]
end
if xarg == nil or xarg == nil_param then
xarg = self.rargs[w].d
end
end
-- multiple catches in a row just to cover everything
if xarg == nil or xarg == nil_param then
xarg = self.args[w..i]
end
if xarg == nil or xarg == edit or xarg == nil_param then
xarg = self.args[w]
end
if xarg == nil or xarg == edit or xarg == nil_param then
xarg = ''
end
-- Look only at the passed value of the named parameter
-- if that doesn't exist, use unnumbered parameter
-- if that doesn't exist, use blank
elseif flag[x] == 'p' then
xarg = self.args[w..i] or self.args[w] or ''
-- Don't interpret value as a parameter name, and paste the as is
elseif flag[x] == 'r' then
xarg = w
end
-- Add parsed argument to table
table.insert(func_args,xarg)
end
-- Run function
_addarg = func(unpack(func_args))
end
end
-- If not defined, add the nil_param value
-- An actual nil would cause errors in placement
-- So it needs to be filled with an actual value
-- "nil_param" is understood as nil in other functions
-- Include table in case parameter isn't defined by template
if _addarg == nil or _addarg == nil_param then
table.insert(_add_switch, nil_param)
else
switches = switches + 1
table.insert(_add_switch, _addarg)
catdata.one_defined = true
end
end
-- If there are actually other values to switch to
-- Define a switches subtable, otherwise ignore it
if switches > 0 then
_add.switches = _add_switch
end
end
-- Quick fix for names (which defaults to pagename)
if v == 'name' then
if _add.d == pagename then
if _add.switches and _add.switches[1] ~= pagename and _add.switches[1] ~= nil_param then
_add.d = _add.switches[1]
end
end
end
-- Parameter cleaning finished, add to table of cleaned args
self.rargs[v] = _add
-- Category metadata
-- If every param except default is defined, all_defined = true
if catdata.all_defined == false then
if _add.d == edit then
if _add.switches then
catdata.all_defined = true
for _, v in ipairs(_add.switches) do
if v == nil_param then
catdata.all_defined = false
break
end
end
end
end
end
self.catdata[v] = catdata
end
-- mass dupe removal
-- this needs to be done at the end to keep dependent parameters working
-- also removes incompatible data types
for _, v in ipairs(self.paramnames) do
-- not removed from dupe enabled params parameters
if not self.dupeable[v] and self.rargs[v] and self.rargs[v].switches then
-- tells us whether or not we'll need to remove the switch data
-- switched to false if a switch values does not match the default
local rmvswitch = true
for q, z in ipairs(self.rargs[v].switches) do
-- remove types that don't turn into strings properly
if type(z) == 'table' or type(z) == 'function' then
self.rargs[v].switches[q] = nil_param
-- if it isn't nil or an edit button
-- change variable to keep the switch data
elseif z ~= nil_param and z ~= edit then
rmvswitch = false
end
end
-- remove switch data if everything was a dupe
if rmvswitch then
self.rargs[v].switches = nil
end
end
end
-- Title parentheses (has to be done here, sadly)
local _name
if self.rargs.name then
_name = self.rargs.name.d
-- replace html entities to their actual character
_name = mw.text.decode(_name)
-- if the page name matches the item name, don't add parentheses
if _name == mw.title.getCurrentTitle().fullText then
self.rtable:addClass('no-parenthesis-style')
end
end
end
--[[
Function to link internal use parameters with JS class attribution
-- self:linkParams{ { arg1, arg2 }, ... { arg1a, arg2a } }
-- arg1: parameter name being linked
-- arg2: parameter name that holds the classes
-- THIS FUNCTION SHOULD BE RUN AFTER :cleanParams()
-- THIS FUNCTION SHOULD BE RUN BEFORE :finish()
-- The second argument's data should always contain a value (a CSS class name) at every index
-- This function is cancelled for non switch boxes
--]]
function Infobox:linkParams(...)
if not self.switchfo then
return
end
for _, v in ipairs(...) do
self.switchfoattr[v[1]] = self.rargs[v[2]]
end
end
--[==========================================[
-- Functions for accessing parameters easily
--]==========================================]
--[[
Access the param
-- arg : param name
-- retp : return type
d | #default : self.rargs[arg].d -- Default value
f | full : self.rargs[arg] -- Entire table
s | switches : self.rargs[arg].switches -- Entire switch table
s# : self.rargs[arg].switches[#] -- Single switch value at index #
r : switches[1] or d
--]]
function Infobox:param(arg, retp)
-- All parameters
if arg == 'all' then
return self.rargs
end
-- case-insensitive flagging
retp = tostring(retp):lower()
local fmap = {
d = 'd', default = 'd', s0 = 'd', -- let s-naught count as default (since that's what it is)
f = 'f', full = 'f',
s = 's', switch = 's', switches = 's',
r = 'r'
}
local ret_func
-- quickly see if the parameter is a value greater than 0
if retp:match('s[1-9]') then
ret_func = 's2'
else
-- Otherwise map it to the correct flag, or the default
ret_func = fmap[retp] or fmap.d
end
-- Fetch parameter
local param = self.rargs[arg]
-- Return nil if no table found
if not param then return nil end
-- Return default
if ret_func == 'd' then
return param.d
end
-- Return full table
if ret_func == 'f' then
return param
end
-- Return switch table
if ret_func == 's' then
return param.switches
end
-- Return the first switch, otherwise the default
if ret_func == 'r' then
if not param.switches then
return param.d
elseif param.switches[1] == nil_param then
return param.d
else
return param.switches[1]
end
end
-- If s2, reread the param
if ret_func == 's2' then
-- no switches
if not param.switches then
return nil
end
-- Parse index by removing the s
local index = retp:match('s(%d+)')
-- nil_param
if param.switches[index] == nil_param then
return nil
else
return param.switches[index]
end
end
end
--[[
Checks if a parameter is defined and not blank
-- arg : parameter to look at
-- index : index of switches to look at (defaults to default param)
-- defining 'all' will look at every possible value for the parameter
--]]
function Infobox:paramDefined(arg,index)
-- Can use cleaned params for switches
-- but need the passed to identify blanks in the template
local param = self.rargs[arg]
local _arg = self.args[arg]
if string.find(_arg or '','%?action=edit') then
_arg = ''
end
index = index or 0
local ret
-- create a long strong of every value to test for things if 'all'
if string.lower(index) == 'all' then
return self.catdata[arg] and (self.catdata[arg].one_defined or self.catdata[arg].all_defined)
-- index to number otherwise
else
index = tonumber(index) or 0
if index == 0 then
if param.switches then
if Infobox.isDefined(param.switches[1]) then
ret = param.switches[1]
else
ret = _arg
end
else
ret = _arg
end
else
if not param.switches then
return nil
end
if param.switches[index] == nil_param then
return nil
end
ret = param.switches[index]
end
end
return tostring(ret or ''):find('%S')
end
--[[
Function to perform a search on all parameters of a defined name
-- param: param name
-- val: a value or function
-- functions passed must return either true or false
-- with true being counted as a match
--]]
function Infobox:paramGrep(param,val)
local arg = self.rargs[param]
-- if no parameters, return nil
if not arg then
return nil
end
local ret
local valtype = type(val)
-- start with the default value
-- if it's a function, run it
if valtype == 'function' then
ret = val(arg.d)
-- true means it matched
if ret == true then
return ret
end
-- switches up here for functions
if arg.switches then
for _, v in ipairs(arg.switches) do
ret = val(v)
if ret == true then
return true
end
end
end
-- if it's just a value, compare the two
-- only run if types match to avoid errors
-- compare switches later
elseif valtype == type(arg.d) then
-- if a string, make case insensitive
if valtype == 'string' then
if string.lower(val) == string.lower(arg.d) then
return true
end
-- everything else just test directly
elseif val == arg.d then
return true
end
end
-- switch cases
-- more organized putting them here
if arg.switches then
for _, v in ipairs(arg.switches) do
if valtype == type(v) then
if valtype == 'string' then
if val:lower() == v:lower() then
return true
end
elseif val == v then
return true
end
end
end
end
-- return false in every other case
return false
end
------
function Infobox.paramRead(arg,val)
-- if no parameters, return nil
if not arg then
return nil
end
local ret
local valtype = type(val)
-- start with the default value
-- if it's a function, run it
if valtype == 'function' then
ret = val(arg.d)
-- true means it matched
if ret == true then
return ret
end
-- switches up here for functions
if arg.switches then
for _, v in ipairs(arg.switches) do
ret = val(v)
if ret == true then
return true
end
end
end
-- if it's just a value, compare the two
-- only run if types match to avoid errors
-- compare switches later
elseif valtype == type(arg.d) then
-- if a string, make case insensitive
if valtype == 'string' then
if string.lower(val) == string.lower(arg.d) then
return true
end
-- everything else just test directly
elseif val == arg.d then
return true
end
end
-- switch cases
-- more organized putting them here
if arg.switches then
for _, v in ipairs(arg.switches) do
if valtype == type(v) then
if valtype == 'string' then
if val:lower() == v:lower() then
return true
end
elseif val == v then
return true
end
end
end
end
-- return false in every other case
return false
end
----
-- Return collected category data
function Infobox:categoryData()
return self.catdata
end
-- Override tostring
function Infobox.tostring(box)
-- If not finished, finish
if not box.__finished then
box:finish()
end
-- Make entire html wrapper a string and return it
local btns = box.switch_buttons_tag
if box.custom_buttons then
btns = ''
end
if box.args.__dump__ then
return '<' .. 'pre>'..mw.dumpObject(box) .. '</' .. 'pre>[[Category:Dumping infoboxes]]'
end
return tostring(btns) .. tostring(box.rtable) .. table.concat(box.appendStrs, '') .. tostring(box.switch_tag) .. tostring(box.smw_error_tag)
end
return Infobox
-- </nowiki>
0c41143774de0a6cae60158df6f021431fb9b5c1
Brighter Shores:Policies
4
470
803
2024-03-23T02:10:22Z
Jayden
3
Created page with "To ensure that people can contribute in good faith to the wiki, the Brighter Shores Wiki has several easy-to-follow policies. These are general modelled on similar wikis of this nature, including Wikipedia. The key to maintaining a successful wiki is by making decisions through [[wikipedia:Wikipedia:Consensus|consensus]], which is what we aim to do at all times. ==Community policies== * '''Ownership''': Users do not own the pages and files they edit or create. They exis..."
wikitext
text/x-wiki
To ensure that people can contribute in good faith to the wiki, the Brighter Shores Wiki has several easy-to-follow policies. These are general modelled on similar wikis of this nature, including Wikipedia. The key to maintaining a successful wiki is by making decisions through [[wikipedia:Wikipedia:Consensus|consensus]], which is what we aim to do at all times.
==Community policies==
* '''Ownership''': Users do not own the pages and files they edit or create. They exist to better the wiki in some shape or form.
* '''Protection''' – Unless there are reasonable grounds for protecting one, pages should remain fully editable by users to ensure wide collaboration is possible.
* '''Status and opinion-weight''' – An editor should not be treated differently or have any extra weight on their opinions based on their experience or status.
* '''Three-revert rule''' – Explain the changes you make in the edit summary. Rather than engaging in a revert war with another user, discuss it in the talk page.
* '''Use common sense''' – Common sense takes precedence over any policy. Be reasonable.
==Content policies==
* '''Granularity''' – Anything notable, excluding players, may have its own article.
* '''Neutral point of view''' – Pages on the wiki should always be written from a neutral point of view.
* '''Spoilers''' – Articles may contain content that spoils some of the game. There are no warnings on the wiki, so viewers should read at their own risk.
* '''Assume good faith''' – Always assume that an editor's actions were an attempt to improve the wiki.
* '''Don't delete discussions''' – Don't delete previous discussions. These include user talk pages.
* '''Don't edit userpages''' – There's no reason to edit another user's pages under most circumstances.
* '''Blocking users''' – Disruptive users can be blocked from editing by administrators. Blocked users can still read all pages, but can't edit any page except their user talk page.
* '''Treating other users with respect''' – Be nice and don't try to cause unnecessary strife.
af71abdf10e587590e9a3fe1730208110af094b8
806
803
2024-03-23T02:15:05Z
Jayden
3
wikitext
text/x-wiki
To ensure that people can contribute in good faith to the wiki, the Brighter Shores Wiki has several easy-to-follow policies. These are generally modelled on similar wikis of this nature, including Wikipedia. The key to maintaining a successful wiki is by making decisions through [[wikipedia:Wikipedia:Consensus|consensus]], which is what we aim to do at all times.
==Community policies==
* '''Ownership''': Users do not own the pages and files they edit or create. They exist to better the wiki in some shape or form.
* '''Protection''' – Unless there are reasonable grounds for protecting one, pages should remain fully editable by users to ensure wide collaboration is possible.
* '''Status and opinion-weight''' – An editor should not be treated differently or have any extra weight on their opinions based on their experience or status.
* '''Three-revert rule''' – Explain the changes you make in the edit summary. Rather than engaging in a revert war with another user, discuss it in the talk page.
* '''Use common sense''' – Common sense takes precedence over any policy. Be reasonable.
==Content policies==
* '''Granularity''' – Anything notable, excluding players, may have its own article.
* '''Neutral point of view''' – Pages on the wiki should always be written from a neutral point of view.
* '''Spoilers''' – Articles may contain content that spoils some of the game. There are no warnings on the wiki, so viewers should read at their own risk.
* '''Assume good faith''' – Always assume that an editor's actions were an attempt to improve the wiki.
* '''Don't delete discussions''' – Don't delete previous discussions. These include user talk pages.
* '''Don't edit userpages''' – There's no reason to edit another user's pages under most circumstances.
* '''Blocking users''' – Disruptive users can be blocked from editing by administrators. Blocked users can still read all pages, but can't edit any page except their user talk page.
* '''Treating other users with respect''' – Be nice and don't try to cause unnecessary strife.
bc2c432b0604c9968ee881d102396893c4c6a5f1
822
806
2024-03-23T02:34:00Z
Jayden
3
Protected "[[Brighter Shores:Policies]]": Policy page ([Edit=Allow only autoconfirmed users] (indefinite) [Move=Allow only autoconfirmed users] (indefinite))
wikitext
text/x-wiki
To ensure that people can contribute in good faith to the wiki, the Brighter Shores Wiki has several easy-to-follow policies. These are generally modelled on similar wikis of this nature, including Wikipedia. The key to maintaining a successful wiki is by making decisions through [[wikipedia:Wikipedia:Consensus|consensus]], which is what we aim to do at all times.
==Community policies==
* '''Ownership''': Users do not own the pages and files they edit or create. They exist to better the wiki in some shape or form.
* '''Protection''' – Unless there are reasonable grounds for protecting one, pages should remain fully editable by users to ensure wide collaboration is possible.
* '''Status and opinion-weight''' – An editor should not be treated differently or have any extra weight on their opinions based on their experience or status.
* '''Three-revert rule''' – Explain the changes you make in the edit summary. Rather than engaging in a revert war with another user, discuss it in the talk page.
* '''Use common sense''' – Common sense takes precedence over any policy. Be reasonable.
==Content policies==
* '''Granularity''' – Anything notable, excluding players, may have its own article.
* '''Neutral point of view''' – Pages on the wiki should always be written from a neutral point of view.
* '''Spoilers''' – Articles may contain content that spoils some of the game. There are no warnings on the wiki, so viewers should read at their own risk.
* '''Assume good faith''' – Always assume that an editor's actions were an attempt to improve the wiki.
* '''Don't delete discussions''' – Don't delete previous discussions. These include user talk pages.
* '''Don't edit userpages''' – There's no reason to edit another user's pages under most circumstances.
* '''Blocking users''' – Disruptive users can be blocked from editing by administrators. Blocked users can still read all pages, but can't edit any page except their user talk page.
* '''Treating other users with respect''' – Be nice and don't try to cause unnecessary strife.
bc2c432b0604c9968ee881d102396893c4c6a5f1
MediaWiki:Sidebar
8
57
804
384
2024-03-23T02:12:40Z
Jayden
3
wikitext
text/x-wiki
* navigation
** mainpage|mainpage-description
** randompage-url|randompage
* Recent changes
* Brighter Shores
** Professions
** Factions
** Locations
** Premium Pass
** Monsters
* Community
** Policies
* SEARCH
* TOOLBOX
* LANGUAGES
52b661945c6b099d5e92c7330dad57ab2aff0c53
805
804
2024-03-23T02:14:40Z
Jayden
3
whoops
wikitext
text/x-wiki
* navigation
** mainpage|mainpage-description
** randompage-url|randompage
* Recent changes
* Brighter Shores
** Professions|Professions
** Factions|Factions
** Locations|Locations
** Premium Pass|Premium Pass
** Monsters|Monsters
* Community
** Brighter Shores:Policies|Policies
* SEARCH
* TOOLBOX
* LANGUAGES
cfff06bd28c9749c604c7ecffd314f306bff8b4c
MediaWiki:Vector.less/rcsidebar.less
8
471
807
2024-03-23T02:16:01Z
Jayden
3
Created page with "/* =================== Recent changes widget =================== */ #p-Recent_changes { display: block; .vector-menu-content { display: none; } .vector-menu-heading:after { // Green "live" dot content: ''; position: relative; left: .5em; display: inline-block; background-color: saturate(@la-palma, 4%); width: 6px; height: 6px; border-radius: 100%; } .rc-sidebar-item { position: relative; font-size: 0.75em; margin: .5em .25em..."
less
less
/* ===================
Recent changes widget
=================== */
#p-Recent_changes {
display: block;
.vector-menu-content {
display: none;
}
.vector-menu-heading:after {
// Green "live" dot
content: '';
position: relative;
left: .5em;
display: inline-block;
background-color: saturate(@la-palma, 4%);
width: 6px;
height: 6px;
border-radius: 100%;
}
.rc-sidebar-item {
position: relative;
font-size: 0.75em;
margin: .5em .25em 0 .66em;
/* what is this for
&::before {
position: absolute;
left: -0.75em;
top: .5em;
background-color: #327ba7;
width: 4px;
height: 4px;
border-radius: 100%;
}
*/
}
.rc-sidebar-page {
display: block;
white-space: nowrap;
text-overflow: ellipsis;
overflow: hidden;
max-width: max-content;
&,
&:active,
&:visited {
color: var(--background-link-color);
}
}
.rc-sidebar-user {
color: var(--byline-color);
margin: 0;
white-space: nowrap;
text-overflow: ellipsis;
overflow: hidden;
a {
color: inherit;
}
}
.rc-sidebar-more {
text-align: left;
.rc-sidebar-page {
display: inline-block;
}
}
}
5afdcfab4befc126e97c93133ebb0826b4839099
MediaWiki:Vector.less
8
31
808
484
2024-03-23T02:16:17Z
Jayden
3
less
less
/* =============================================================================
* This is the root Less file that is parsed to produce [[MediaWiki:Vector.css]].
*
* These styles will be applied to the Vector skin (desktop).
* -----------------------------------------------------------------------------
* Less documentation: <http://lesscss.org/features/>
* Gadget: <https://meta.weirdgloop.org/w/MediaWiki:Gadget-Less.js>
* Core Less JS: <https://meta.weirdgloop.org/w/MediaWiki:Gadget-Less-core.js>
* Non-standard mixins: <https://meta.weirdgloop.org/w/MediaWiki:Gadget-LessMixins.less>
* Online Less tester: <https://lesscss.org/less-preview/>
* ============================================================================= */
@common: 'MediaWiki:Common.less';
@dir: 'MediaWiki:Vector.less';
// ===== Imports =====
@import '@{common}/mixins.less';
@import '@{common}/variables.less';
@import '@{dir}/elements.less';
// Vector interface files
@import '@{dir}/vectormenu.less';
@import '@{dir}/vectorsearch.less';
@import '@{dir}/vectorsidebar.less';
@import '@{dir}/vectortabs.less';
// Sidebar (rc widget)
@import '@{dir}/rcsidebar.less';
// Image thumbnails
@import '@{dir}/thumb.less';
// Table of Contents
@import '@{dir}/toc.less';
// anything else that doesn't go into above files
@import '@{dir}/interface.less';
// Editor interface
@import '@{dir}/sourceeditor.less';
@import '@{dir}/editor.less';
// Templates
@import '@{dir}/keypress.less';
@import '@{dir}/navbox.less';
// Misc
@import '@{dir}/echo.less';
// ===== Miscellaneous =====
// moved from [[MediaWiki:Common.less/tabber.less]]
// because it caused them to go off-screen on mobile
.tabber {
display: inline-grid;
}
4f2b1c28b5c0463857eddf7bf4553e01e425576b
MediaWiki:Vector.css
8
43
809
487
2024-03-23T02:16:22Z
Jayden
3
Updating CSS from [[MediaWiki:Vector.less]]
css
text/css
/* <pre> */
:root {
--ul-list-style-image: url("data:image/svg+xml,%3C%3Fxml version='1.0' encoding='UTF-8'%3F%3E%3Csvg xmlns='http://www.w3.org/2000/svg' width='5' height='13'%3E%3Ccircle cx='2.5' cy='9' r='2.5' fill='%23000'/%3E%3C/svg%3E");
}
html {
-webkit-text-size-adjust: 100%;
}
body {
background: var(--body-background-image) var(--body-background-color) top left / 1500px 375px no-repeat;
font-family: 'Helvetica Neue', 'Arial', sans-serif;
}
.vector-body {
font-size: 0.9em;
}
#firstHeading {
font-weight: bold;
}
pre,
code,
.mw-code {
color: inherit;
background-color: var(--mw-code-background-color);
border: 1px solid var(--body-border);
}
dl {
margin: 0;
}
ul {
list-style-image: var(--ul-list-style-image);
}
hr {
background: none;
border-color: var(--sidebar);
border-style: solid;
border-width: 1px 0 0 0;
height: initial;
}
fieldset {
border-color: var(--sidebar);
}
.vector-body blockquote {
border-color: var(--body-mid);
}
:root {
--personal-links-bg: var(--body-main);
--arrow-down: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath d='M11.05 3.996l-.965-1.053-4.035 3.86-3.947-3.86L1.05 3.996l5 5 5-5' fill='%23444'/%3E%3C/svg%3E");
}
.vector-menu-dropdown .vector-menu-heading {
background-color: var(--vector-tab-background);
padding: 1em 0.75em 0.6923em;
margin: 0;
}
.vector-menu-dropdown .vector-menu-heading,
.vector-menu-dropdown .vector-menu-heading:hover,
.vector-menu-dropdown .vector-menu-heading:focus {
color: var(--background-text-color);
}
.vector-menu-dropdown .vector-menu-heading:after {
background-image: var(--arrow-down);
opacity: 1;
}
.vector-menu-dropdown .vector-menu-content {
border-color: transparent;
background-color: var(--body-light);
box-shadow: 0 2px 3px 0 rgba(0, 0, 0, 0.1);
left: 0;
}
.vector-menu-dropdown .mw-list-item a {
color: var(--link-color);
}
.vector-menu-dropdown .mw-list-item.selected a,
.vector-menu-dropdown .mw-list-item.selected a:visited {
color: var(--text-color);
}
#p-personal {
background: var(--personal-links-bg);
top: 0;
right: 0;
border-radius: 0 0 0 4px;
height: 1.875em;
}
#p-personal ul {
padding: 0 1em 0 0.4375em;
}
.vector-search-box-inner {
background: var(--search-box);
height: 2.5em;
margin-top: 0;
box-shadow: inset 0 -7px 7px -7px rgba(0, 0, 0, 0.15);
}
.vector-search-box-input {
color: var(--text-color);
height: 100%;
border: none;
background: none;
padding-left: 0.75em;
}
.vector-search-box-input::placeholder {
color: var(--text-color);
opacity: 0.67;
}
.vector-search-box-inner:hover .vector-search-box-input,
.vector-search-box-input:focus,
.vector-search-box-inner:hover .vector-search-box-input:focus {
border: none;
box-shadow: none;
}
:root {
--searchbutton-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='13'%3E%3Cg fill='none' stroke='%23000' stroke-width='2'%3E%3Cpath d='M11.29 11.71l-4-4'/%3E%3Ccircle cx='5' cy='5' r='4'/%3E%3C/g%3E%3C/svg%3E");
}
.searchButton[name='go'] {
background: no-repeat center var(--searchbutton-icon);
}
.vector-search-box {
margin: 0;
}
.vector-search-box form {
margin-top: 0;
}
.suggestions-results {
background-color: var(--body-light);
border-color: var(--body-border);
}
.suggestions-result {
color: var(--text-color);
}
.suggestions a.mw-searchSuggest-link,
.suggestions a.mw-searchSuggest-link:hover,
.suggestions a.mw-searchSuggest-link:active,
.suggestions a.mw-searchSuggest-link:focus {
color: var(--text-color);
}
.suggestions-special {
background-color: var(--body-light);
border-color: var(--body-border);
}
.suggestions-special .special-label {
color: var(--byline-color);
}
.suggestions-special .special-query {
color: var(--text-color);
}
.suggestions-result-current {
background-color: var(--body-mid);
color: var(--text-color);
}
.suggestions-result-current .special-label,
.suggestions-result-current .special-query {
color: var(--text-color);
}
#mw-panel {
padding-top: 2.5em;
}
.vector-menu-portal .vector-menu-heading {
color: var(--background-text-color);
font-weight: bold;
background: none;
}
.vector-menu-portal .vector-menu-content li a,
.vector-menu-portal .vector-menu-content li a:visited {
color: var(--background-link-color);
}
#p-logo {
filter: drop-shadow(0 2px 5px rgba(0, 0, 0, 0.25));
margin: -1.5em 0 0;
}
#n-Discord a {
color: #fff !important;
font-weight: bold;
border-radius: 4px;
border: 1px solid #4c57d0;
background-color: #5865f2;
display: block;
position: relative;
padding: 4px 4px 5px calc(17px + 6.5px * 2);
box-shadow: 0 2px 3px rgba(0, 0, 0, 0.1);
transition: 0.2s;
}
#n-Discord a::before {
content: 'Chat on ';
font-weight: normal;
opacity: 0.85;
}
#n-Discord a::after {
content: '';
background: url('filepath://Discord_logo_icon.svg') no-repeat;
background-size: 17px 13px;
filter: drop-shadow(0 1px 1px rgba(0, 0, 0, 0.1));
position: absolute;
top: 5px;
left: 7px;
width: 17px;
height: 13px;
}
#n-Discord a:hover {
text-decoration: none;
background-color: #525ee0;
}
.wgl-theme-dark #n-Discord a {
background-color: #525ee0;
}
.wgl-theme-dark #n-Discord a:hover {
background-color: #4c57d0;
}
:root {
--vector-tab-background: #f0f0f0;
--vector-tab-background--hover: var(--body-mid);
--vector-tab-link-color: #937040;
--watch-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16'%3E%3Cpath fill='transparent' stroke='%2352351e' stroke-width='.8' d='m8.1 1.1 2.2 4.5 4.8.7-3.5 3.4.9 4.8L8 12.2l-4.3 2.3.8-4.8L1 6.3l4.8-.7z'/%3E%3C/svg%3E");
--unwatch-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16'%3E%3Cpath fill='%2352351e' stroke='%2352351e' stroke-width='.8' d='m8.1 1.1 2.2 4.5 4.8.7-3.5 3.4.9 4.8L8 12.2l-4.3 2.3.8-4.8L1 6.3l4.8-.7z'/%3E%3C/svg%3E");
}
.vector-menu-tabs-legacy {
padding: 0;
}
.vector-menu-tabs-legacy .new a,
.vector-menu-tabs-legacy .new a:visited {
color: var(--redlink-color);
}
.vector-menu-tabs-legacy .selected {
background: var(--body-main);
}
.vector-menu-tabs-legacy .selected a,
.vector-menu-tabs-legacy .selected a:visited {
color: var(--text-color);
}
.vector-menu-tabs-legacy li a {
color: var(--vector-tab-link-color);
padding: 0 0.75em;
padding-top: 1em;
}
.vector-menu-tabs-legacy li a:visited {
color: var(--vector-tab-link-color);
}
.vector-menu-tabs-legacy ul li {
background: var(--vector-tab-background);
}
.vector-menu-tabs-legacy ul a:hover {
text-decoration: none;
}
#ca-view {
display: none !important;
}
.vector-menu-tabs ul li:not(.selected):hover,
#p-cactions:hover #p-cactions-label {
background: var(--vector-tab-background--hover);
}
.vector-menu-tabs ul li:not(.selected),
#mw-head .vector-menu-dropdown .vector-menu-heading {
box-shadow: inset 0 -7px 7px -7px rgba(0, 0, 0, 0.15);
}
.vector-menu-tabs,
.vector-menu-tabs a,
#mw-head .vector-menu-dropdown .vector-menu-heading {
background-image: none;
}
.ve-activated .vector-menu-tabs .selected {
box-shadow: none;
}
.vector-menu-tabs #ca-watch.icon a:before,
.vector-menu-tabs #ca-watch.icon a:hover:before,
.vector-menu-tabs #ca-watch.icon a:focus:before {
background-image: var(--watch-icon);
}
.vector-menu-tabs #ca-unwatch.icon a:before,
.vector-menu-tabs #ca-unwatch.icon a:hover:before,
.vector-menu-tabs #ca-unwatch.icon a:focus:before {
background-image: var(--unwatch-icon);
}
#p-Recent_changes {
display: block;
}
#p-Recent_changes .vector-menu-content {
display: none;
}
#p-Recent_changes .vector-menu-heading:after {
content: '';
position: relative;
left: 0.5em;
display: inline-block;
background-color: #3c7b07;
width: 6px;
height: 6px;
border-radius: 100%;
}
#p-Recent_changes .rc-sidebar-item {
position: relative;
font-size: 0.75em;
margin: 0.5em 0.25em 0 0.66em;
}
#p-Recent_changes .rc-sidebar-page {
display: block;
white-space: nowrap;
text-overflow: ellipsis;
overflow: hidden;
max-width: max-content;
}
#p-Recent_changes .rc-sidebar-page,
#p-Recent_changes .rc-sidebar-page:active,
#p-Recent_changes .rc-sidebar-page:visited {
color: var(--background-link-color);
}
#p-Recent_changes .rc-sidebar-user {
color: var(--byline-color);
margin: 0;
white-space: nowrap;
text-overflow: ellipsis;
overflow: hidden;
}
#p-Recent_changes .rc-sidebar-user a {
color: inherit;
}
#p-Recent_changes .rc-sidebar-more {
text-align: left;
}
#p-Recent_changes .rc-sidebar-more .rc-sidebar-page {
display: inline-block;
}
div.thumbinner {
border: none;
background-color: var(--thumb-bg);
padding: 0;
}
.thumbimage {
background-color: transparent;
border-color: transparent;
border-bottom: none;
}
.thumbcaption {
background: var(--thumb-caption-bg);
padding: 4px 6px;
}
:root {
--toc-bg: var(--body-light);
--toc-title-bg: var(--body-dark);
--toc-border-color: var(--body-border);
--toc-list-border-color: var(--body-border);
}
.toc {
font-size: 0.9em;
background: var(--toc-bg);
margin-top: 1em;
padding: 0;
border-color: var(--toc-border-color);
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
clear: left;
}
.toc .toctitle {
background: var(--toc-title-bg);
padding: 0.25em 1em;
}
.toc .toctitle h2 {
font-family: inherit;
}
.toc > ul {
line-height: 1.8em;
padding: 0.75em 1.75em;
margin: 0;
}
.toc ul ul {
border-left: 1px dotted var(--toc-list-border-color);
padding-left: 0.5em;
}
.tocnumber {
display: none;
}
.toctogglespan {
padding-left: 0.2em;
font-size: 0.9em;
}
.toctogglelabel {
color: var(--link-color);
}
.toclimit-2 #toc .toclevel-2,
.toclimit-3 #toc .toclevel-3,
.toclimit-4 #toc .toclevel-4,
.toclimit-5 #toc .toclevel-5,
.toclimit-6 #toc .toclevel-6,
.toclimit-7 #toc .toclevel-7 {
display: none;
}
:root {
--external-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath fill='%23936039' d='M6 1h5v5L8.86 3.85 4.7 8 4 7.3l4.15-4.16L6 1Z M2 3h2v1H2v6h6V8h1v2a1 1 0 0 1-1 1H2a1 1 0 0 1-1-1V4a1 1 0 0 1 1-1Z'/%3E%3C/svg%3E");
}
.mw-parser-output a.external {
background-image: var(--external-icon);
background-size: 0.833em;
}
.mw-editsection {
font-family: 'Helvetica Neue', 'Arial', sans-serif;
}
.client-js .mw-content-ltr .mw-editsection-bracket:first-of-type,
.client-js .mw-content-ltr .mw-editsection-bracket:not(:first-of-type),
.mw-editsection-divider {
color: var(--text-color);
}
#contentSub,
#contentSub2 {
color: var(--byline-color);
margin: 0;
}
#contentSub:not(:empty),
#contentSub2:not(:empty) {
margin: 0 0 1.4em 0;
}
.mw-collapsible.mw-collapsed {
min-width: 250px;
}
.mw-collapsible:not( .mw-made-collapsible) th::before,
.mw-collapsible .mw-collapsible-toggle {
font-weight: normal;
margin-left: 0.2em;
}
.wikiEditor-ui .wikiEditor-ui-view,
.wikiEditor-ui .wikiEditor-ui-top {
border-color: var(--sourceeditor-border);
}
.wikiEditor-ui-toolbar {
background-color: var(--sourceeditor-background);
}
.wikiEditor-ui-toolbar .tabs span.tab > a,
.wikiEditor-ui-toolbar .tabs span.tab > a:visited {
color: var(--link-color);
}
.wikiEditor-ui-toolbar .tabs span.tab a.current,
.wikiEditor-ui-toolbar .tabs span.tab a.current:visited {
color: var(--text-colour);
}
.wikiEditor-ui-toolbar .group {
border-color: var(--sourceeditor-border);
}
.wikiEditor-ui-toolbar .group .tool-select {
background-color: var(--sourceeditor-background);
border-color: var(--sourceeditor-border);
}
.wikiEditor-ui-toolbar .group .tool-select .options {
border-color: var(--sourceeditor-border);
background-color: var(--body-main);
}
.wikiEditor-ui-toolbar .group .tool-select .options .option {
color: var(--link-color);
}
.wikiEditor-ui-toolbar .group .tool-select .menu .options .option:hover {
background-color: var(--ooui-normal--hover);
}
.wikiEditor-ui-toolbar .group-search {
border-left-color: var(--body-mid);
}
.wikiEditor-ui-toolbar .page-table td {
border-color: var(--body-mid);
color: var(--text-color);
}
.wikiEditor-ui-toolbar .page-table th {
color: var(--text-color);
}
.wikiEditor-ui-toolbar .sections .section {
border-color: var(--body-mid);
}
.wikiEditor-ui-toolbar .sections .toolbar .group > .label {
color: var(--text-color);
}
.wikiEditor-ui-toolbar .sections .toolbar .tool > .label {
color: var(--text-color);
}
.wikiEditor-ui-toolbar .booklet > .index > :hover {
background-color: var(--body-mid);
color: var(--text-color);
}
.wikiEditor-ui-toolbar .booklet .index > .current {
background-color: var(--body-mid);
color: var(--link-color);
}
.wikiEditor-ui-toolbar .page-characters div span {
border-color: var(--body-mid);
color: var(--text-color);
}
.wikiEditor-ui-toolbar .page-characters div span:hover {
border-color: var(--body-dark);
background-color: transparent;
}
.wikiEditor-ui-toolbar .tabs span.tab a:before,
.wikiEditor-ui-toolbar .group .tool-select .label:after {
background: var(--text-color);
-webkit-mask: var(--arrow-down) center no-repeat;
mask: var(--arrow-down) center no-repeat;
}
.ace-tm {
background-color: var(--sourceeditor-input-background);
color: var(--text-color);
}
.ace-tm .ace_gutter {
background: var(--body-mid);
color: var(--text-color);
}
.ace-tm .ace_gutter-cell {
color: var(--text-color);
}
.ace-tm .ace_gutter-active-line {
background-color: var(--body-light);
}
.ace_search {
background-color: var(--body-light);
color: var(--text-color);
border-color: var(--body-mid);
}
.ace_search_field {
background-color: var(--ooui-input);
color: var(--ooui-text);
border-color: var(--ooui-input-border);
}
.ace_searchbtn {
border-color: var(--ooui-normal-border);
background-color: var(--ooui-normal);
color: var(--ooui-text);
}
.ace_searchbtn:last-child {
border-color: var(--ooui-normal-border);
}
.ace_searchbtn:hover {
background-color: var(--ooui-normal--hover);
}
.ace_searchbtn.prev:after,
.ace_searchbtn.next:after {
border-color: var(--ooui-text);
}
.ace_button {
color: var(--text-color);
}
.ace_button:hover {
background-color: rgba(0, 23, 70, 0.086);
}
.ace_button:active {
background-color: rgba(0, 23, 70, 0.06);
}
.ace_button.checked {
border-color: var(--ooui-accent);
}
.CodeMirror {
background: var(--sourceeditor-input-background);
}
.CodeMirror pre {
color: var(--text-color);
}
.codeEditor-status {
border-color: var(--sourceeditor-border);
background-color: var(--sourceeditor-background);
}
.codeEditor-status-message {
border-color: var(--sourceeditor-border);
}
.CodeMirror-gutters {
background-color: var(--codemirror-gutter-background);
border-color: var(--sourceeditor-border);
}
.CodeMirror-linenumber {
color: var(--text-color);
}
.ve-init-mw-desktopArticleTarget .CodeMirror-linenumber {
color: var(--byline-color);
}
.mw-editform #wpTextbox1 {
color: var(--text-color);
background: var(--sourceeditor-input-background);
border-color: var(--sourceeditor-border);
}
input[name="model"][value="Scribunto"] ~ .wikiEditor-ui #wpTextbox1,
input[name="model"][value="css"] ~ .wikiEditor-ui #wpTextbox1,
input[name="model"][value="less"] ~ .wikiEditor-ui #wpTextbox1,
input[name="model"][value="javascript"] ~ .wikiEditor-ui #wpTextbox1,
input[name="model"][value="json"] ~ .wikiEditor-ui #wpTextbox1 {
height: 600px;
}
.tdg-templateDataDialog-listParamsPanel textarea.oo-ui-textInputWidget-autosized {
resize: vertical;
}
#wpAceFilterEditor {
resize: horizontal;
}
.warn-userupload,
.ns-2 .upload-own-work {
display: none;
}
.ns-2 .warn-userupload {
display: inline;
}
textarea[name="wfUploadDescription"] {
height: 3em;
}
#editform {
margin-top: 1.25em;
}
#mw-scribunto-input,
#mw-scribunto-output {
padding: 3px;
font-family: monospace;
font-size: 13px;
line-height: 1.5em;
}
#mw-scribunto-input {
background-color: var(--ooui-input);
border-color: var(--ooui-input-border);
}
:root {
--scribuntoconsole-input: #0b5884;
--scibuntoconsole-print: #a48900;
--scribuntoconsole-error: #9f261e;
--scribuntoconsole-message: #3c780a;
--scribuntoconsole-tabcomplete: #4f348b;
--scribuntoconsole-clear: #9f261e;
}
.mw-scribunto-console-fieldset {
color: inherit;
background-color: var(--ooui-interface);
border-color: var(--ooui-interface-border);
}
.mw-scribunto-normalOutput,
.mw-scribunto-print,
.mw-scribunto-error,
.mw-scribunto-propList,
.mw-scribunto-message,
.mw-scribunto-tabcomplete {
background: none;
}
.mw-scribunto-input {
color: var(--scribuntoconsole-input);
}
.mw-scribunto-normalOutput {
color: inherit;
}
.mw-scribunto-print {
color: var(--scibuntoconsole-print);
}
.mw-scribunto-error {
color: var(--scribuntoconsole-error);
}
.mw-scribunto-propList,
.mw-scribunto-message {
color: var(--scribuntoconsole-message);
}
.mw-scribunto-tabcomplete {
color: var(--scribuntoconsole-tabcomplete);
}
.mw-scribunto-clear {
color: var(--scribuntoconsole-clear);
border-bottom-color: var(--scribuntoconsole-clear);
}
.keypress {
background: #eee;
color: #333;
font-family: monospace;
text-shadow: 0 1px 0 #fff;
border: 1px solid #ccc;
border-radius: 3px;
margin: 0 0.1em;
padding: 0.1em 0.5em;
line-height: 1.4;
white-space: nowrap;
display: inline-block;
}
:root {
--navbox-background: var(--body-light);
--navbox-border: var(--body-dark);
--navbox-title-background: var(--body-dark);
--navbox-footer-background: var(--body-dark);
--navbox-group-title-background: var(--body-mid);
}
.navbox {
font-size: 0.85em;
background: var(--navbox-background);
border-collapse: collapse;
margin: 1em auto 0;
width: 100%;
clear: both;
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
}
@media (-webkit-min-device-pixel-ratio: 2), (min-resolution: 192dpi) {
.navbox img {
image-rendering: pixelated;
image-rendering: crisp-edges;
}
}
.navbox .navbox {
font-size: 100%;
margin: 0.5em auto 0;
box-shadow: none;
}
.navbox-title {
font-size: 110%;
line-height: 1.6em;
background: var(--navbox-title-background);
text-align: center;
padding: 0.25em 1em;
}
.navbox-title-name {
margin: 0 4em;
}
.navbox-title .mw-collapsible-toggle {
font-size: 0.9em;
text-align: right;
}
.navbox-title .navbox {
font-size: 100%;
}
.navbox-group:nth-child(2) {
border-top: 1px solid var(--navbox-border);
}
.navbox-group-title {
background: var(--navbox-group-title-background);
border: 1px solid var(--navbox-border);
border-width: 0 1px 1px 0;
text-align: left;
padding: 0.25em 1em;
width: 1%;
white-space: nowrap;
}
.navbox-list {
border-bottom: 1px solid var(--navbox-border);
padding: 0.25em 0.5em;
}
.navbox-list ul {
margin: 0;
}
.navbox-list li {
display: inline;
white-space: nowrap;
}
.navbox-list li + li::before {
content: '• ';
}
.navbox-parent {
padding: 0;
}
.navbox-subgroup {
border-collapse: collapse;
border-spacing: 0;
width: 100%;
}
.navbox-subgroup > tbody > tr:last-child > th,
.navbox-subgroup > tbody > tr:last-child > td {
border-bottom: none;
}
.navbox-footer {
background: var(--navbox-footer-background);
text-align: center;
padding: 0.25em 1em;
}
.navbox-data {
display: none;
}
:root {
--echo-icon-moon-bg-image: url("data:image/svg+xml,%3C%3Fxml version='1.0' encoding='UTF-8'%3F%3E%3Csvg height='21' viewBox='0 0 21 21' width='21' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='m8.85464918.37900488c-1.91149353 1.51069427-3.13816124 3.84973402-3.13816124 6.47527736 0 4.55564936 3.69308349 8.24873286 8.24873286 8.24873286 2.5815709 0 4.8861545-1.1859235 6.3986798-3.0426994-.8206378 4.7389755-4.9523867 8.343122-9.9259291 8.343122-5.56375572 0-10.07407088-4.5103151-10.07407088-10.0740709 0-5.02506013 3.67919933-9.19079725 8.49074856-9.95036192z' fill='%234c4c4c'/%3E%3C/svg%3E");
--echo-icon-person-bg-image: url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 width=%2212%22 height=%2213.836%22 viewBox=%220 0 12 13.836%22%3E %3Cpath fill='%234c4c4c' d=%22M1.938%2C6.656c-1.32%2C1.485-1.47%2C3.15-0.97%2C4.25c0.323%2C0.707%2C0.78%2C1.127%2C1.313%2C1.375 c0.496%2C0.229%2C1.074%2C0.273%2C1.658%2C0.282c0.023%2C0%2C0.04%2C0.03%2C0.062%2C0.03h4.187c0.61%2C0%2C1.225-0.125%2C1.75-0.405 c0.527-0.28%2C0.961-0.718%2C1.188-1.376c0.335-0.964%2C0.175-2.529-1.094-4.03C9.094%2C7.954%2C7.68%2C8.719%2C6.065%2C8.719 c-1.677%2C0-3.182-0.812-4.125-2.063H1.938z%22/%3E %3Cpath fill='%234c4c4c' d=%22M6.063%2C0c-1.89%2C0-3.595%2C1.674-3.594%2C3.563C2.467%2C5.45%2C4.173%2C7.155%2C6.06%2C7.155 c1.89%2C0%2C3.564-1.705%2C3.563-3.593C9.625%2C1.673%2C7.95%2C0%2C6.063%2C0L6.063%2C0z%22/%3E %3C/svg%3E");
--echo-icon-bell-bg-image: url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 width=%2220%22 height=%2220%22 viewBox=%220 0 20 20%22%3E%3Ctitle%3Ebell%3C/title%3E%3Cpath d=%22M16 7a5.38 5.38 0 00-4.46-4.85C11.6 1.46 11.53 0 10 0S8.4 1.46 8.46 2.15A5.38 5.38 0 004 7v6l-2 2v1h16v-1l-2-2zm-6 13a3 3 0 003-3H7a3 3 0 003 3z%22 fill='%234c4c4c'/%3E%3C/svg%3E");
--echo-icon-tray-bg-image: url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 width=%2220%22 height=%2220%22 viewBox=%220 0 20 20%22%3E%3Ctitle%3Etray%3C/title%3E%3Cpath d=%22M3 1a2 2 0 00-2 2v14a2 2 0 002 2h14a2 2 0 002-2V3a2 2 0 00-2-2zm14 12h-4l-1 2H8l-1-2H3V3h14z%22 fill='%234c4c4c'/%3E%3C/svg%3E");
--echo-icon-fullscreen-bg-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 20 20'%3E%3Ctitle%3E fullscreen %3C/title%3E%3Cg fill='%234c4c4c'%3E%3Cpath d='M1 1v6h2V3h4V1zm2 12H1v6h6v-2H3zm14 4h-4v2h6v-6h-2zm0-16h-4v2h4v4h2V1z'/%3E%3C/g%3E%3Cscript xmlns=''/%3E%3C/svg%3E");
--echo-icon-exitFullscreen-bg-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 20 20'%3E%3Ctitle%3E exit fullscreen %3C/title%3E%3Cg fill='%234c4c4c'%3E%3Cpath d='M7 7V1H5v4H1v2zM5 19h2v-6H1v2h4zm10-4h4v-2h-6v6h2zm0-8h4V5h-4V1h-2v6z'/%3E%3C/g%3E%3Cscript xmlns=''/%3E%3C/svg%3E");
}
.vector-user-menu-legacy #pt-userpage a,
.vector-user-menu-legacy #pt-anonuserpage {
background-image: var(--echo-icon-person-bg-image);
padding-top: 0;
background-position-y: 0;
}
.vector-user-menu-legacy #pt-anonuserpage {
color: var(--byline-color);
}
#pt-notifications-alert .mw-echo-notifications-badge,
#pt-notifications-notice .mw-echo-notifications-badge {
background-size: 75%;
background-position: center 80%;
background-repeat: no-repeat;
opacity: unset;
}
#pt-notifications-alert .mw-echo-notifications-badge.mw-echo-notifications-badge-all-read,
#pt-notifications-notice .mw-echo-notifications-badge.mw-echo-notifications-badge-all-read {
opacity: unset;
}
#pt-notifications-alert .oo-ui-icon-bell {
background-image: var(--echo-icon-bell-bg-image);
}
#pt-notifications-notice .oo-ui-icon-tray {
background-image: var(--echo-icon-tray-bg-image);
}
#pt-fixed-width .oo-ui-icon-advanced {
background-image: var(--echo-icon-exitFullscreen-bg-image);
}
body.wgl-fixedWidth #pt-fixed-width .oo-ui-icon-advanced {
background-image: var(--echo-icon-fullscreen-bg-image);
}
#pt-theme-toggles .oo-ui-icon-advanced {
background-image: var(--echo-icon-moon-bg-image);
}
#pt-anontalk {
padding-top: 0.6em;
}
.tabber {
display: inline-grid;
}
3e0f99d79b341cd28bd674850ecdf4a1c5971188
MediaWiki:Common.less
8
5
810
508
2024-03-23T02:18:20Z
Jayden
3
less
less
/* =============================================================================
* This is the root Less file that is parsed to produce [[MediaWiki:Common.css]].
*
* These styles will be applied to all skins (desktop and mobile).
* -----------------------------------------------------------------------------
* Less documentation: <http://lesscss.org/features/>
* Gadget: <https://meta.weirdgloop.org/w/MediaWiki:Gadget-Less.js>
* Core Less JS: <https://meta.weirdgloop.org/w/MediaWiki:Gadget-Less-core.js>
* Non-standard mixins: <https://meta.weirdgloop.org/w/MediaWiki:Gadget-LessMixins.less>
* Online Less tester: <https://lesscss.org/less-preview/>
* ============================================================================= */
// ===== CSS Variables =====
@common: 'MediaWiki:Common.less';
:root {
--body-main: #feffff;
--body-light: #f2f2f2;
--body-mid: #d0bd97;
--body-dark: #e3e3e3;
--body-border: #000;
--body-background-color: #173a4d;
--button-background: #605443;
--button-color: @white;
--button-border: #3c352a;
--button-dark: #18140c;
--button-light: #3a301d;
--sidebar: #cfc08d;
--background-text-color: #e2dbc8;
--background-link-color: #e2bd8a;
--search-box: #efeee6;
--link-color: #936039;
--redlink-color: #ba0000;
--text-color: @black;
--byline-color: @silver;
--subtle-color: @boulder;
--admin-blue: #332e75;
--bearcat-green: #13592e;
--awb-purple: #933b96;
--rsw-blue: #438ab6;
--osrsw-brown: #605443;
// used for gallery & thumbs
--thumb-bg: var(--body-light);
--thumb-caption-bg: var(--body-mid);
// for sourceeditor - CodeMirror and WikiEditor's that are only available on
// desktop are also here to not fragment the vars across many files
--sourceeditor-input-background: @white;
--sourceeditor-background: var(--body-light);
--sourceeditor-background-secondary: var(--body-light); // used on .editOptions
--sourceeditor-border: var(--body-mid);
--codemirror-gutter-background: var(--body-mid);
}
// ===== Imports =====
// include fonts first
@import '@{common}/mixins.less';
@import '@{common}/fonts.less'; // Font definitions and font stack definitions
@import '@{common}/variables.less'; // Less variables
@import '@{common}/elements.less'; // HTML elements
@import '@{common}/links.less'; // Link colours
// Interface
@import '@{common}/interface.less'; // MW common elements
@import '@{common}/wikitables.less'; // .wikitable class and etc
@import '@{common}/diff.less'; // Revision differences
@import '@{common}/notifications.less';
@import '@{common}/pagepreviews.less'; // Page preview popups
@import '@{common}/smw.less'; // Semantic MediaWiki
@import '@{common}/tabber.less'; // <tabber>
@import '@{common}/ooui.less'; // OOUI Customisations
@import '@{common}/visualeditor.less'; // VisualEditor
// Templates
@import '@{common}/templates.less'; // Various templates
@import '@{common}/documentation.less'; // [[Template:Documentation]]
@import '@{common}/infobox.less'; // Infobox vars
@import '@{common}/references.less'; // <references>
@import '@{common}/messagebox.less'; // Messagebox templates
// Page specific
@import '@{common}/tiles.less'; // Main page tiles
@import '@{common}/mainpage.less'; // Main page
@import '@{common}/prefs.less'; // Wiki preferences theming
@import '@{common}/specials.less'; // Special pages
// ===== Miscellaneous =====
// hide certain links in sidebar tools
#t-print,
#t-permalink {
display: none;
}
#filetoc {
border-radius: @border-radius;
background: @BODY_MID;
border-color: transparent;
margin: 0.5em auto;
text-align: center;
box-shadow: @box-shadow;
}
// Galleries
li.gallerybox div.thumb {
border: none;
background-color: var(--thumb-bg);
}
.smwfact {
display: none;
}
// applies to mobile talk pages, and smw??
.list-header {
background-color: var(--body-mid);
color: inherit;
}
// Source editor w/o syntaxhighlight; also applies to mobile in case JS is
// turned off
.editOptions {
color: var(--text-color);
background-color: var(--sourceeditor-background-secondary);
border-color: var(--sourceeditor-border);
}
// .json pages
.mw-json {
th,
td {
border-color: var(--wikitable-border);
}
// instead of selecting `tr`, do this to avoid dealing with mw-json-* classes
td {
background: var(--wikitable-bg);
}
th {
background: var(--wikitable-header-bg);
}
}
42f19161b3f167db978009d922eb8b68ab7b81e8
MediaWiki:Common.css
8
30
811
650
2024-03-23T02:18:26Z
Jayden
3
Updating CSS from [[MediaWiki:Common.less]]
css
text/css
/* <pre> */
:root {
--body-main: #feffff;
--body-light: #f2f2f2;
--body-mid: #d0bd97;
--body-dark: #e3e3e3;
--body-border: #000;
--body-background-color: #173a4d;
--button-background: #605443;
--button-color: #fff;
--button-border: #3c352a;
--button-dark: #18140c;
--button-light: #3a301d;
--sidebar: #cfc08d;
--background-text-color: #e2dbc8;
--background-link-color: #e2bd8a;
--search-box: #efeee6;
--link-color: #936039;
--redlink-color: #ba0000;
--text-color: #000;
--byline-color: #ccc;
--subtle-color: #777;
--admin-blue: #332e75;
--bearcat-green: #13592e;
--awb-purple: #933b96;
--rsw-blue: #438ab6;
--osrsw-brown: #605443;
--thumb-bg: var(--body-light);
--thumb-caption-bg: var(--body-mid);
--sourceeditor-input-background: #fff;
--sourceeditor-background: var(--body-light);
--sourceeditor-background-secondary: var(--body-light);
--sourceeditor-border: var(--body-mid);
--codemirror-gutter-background: var(--body-mid);
}
@font-face {
font-family: 'Lora';
font-weight: 400 700;
font-style: normal;
font-display: swap;
src: url('filepath://Lora.woff2') format('woff2');
}
@font-face {
font-family: 'Lora';
font-weight: 400 700;
font-style: italic;
font-display: swap;
src: url('filepath://Lora-Italic.woff2') format('woff2');
}
:root {
--base-text-color: #36414f;
--base-heading-color: #444e5a;
--base-heading-border: #e4eaee;
--mw-code-background-color: #ddd4bb;
--body-background-image: url('filepath://Wiki_background.jpg');
}
#mw-page-base {
background: none;
}
.mw-body {
background-color: var(--body-main);
color: var(--text-color);
border-color: transparent;
box-shadow: 0 0 7px rgba(0, 0, 0, 0.15);
margin-top: 0;
}
h1,
h2,
h3,
h4,
h5,
h6 {
color: var(--text-color);
}
h1,
h2 {
border-color: var(--sidebar);
}
.mw-body h1,
.mw-body-content h1,
.mw-body-content h2,
.mw-body-content h3,
.mw-body-content h4,
.mw-body-content h5,
.mw-body-content h6 {
font-family: 'Lora', 'Palatino', 'Georgia', serif;
}
.mw-parser-output h2:first-of-type {
clear: left;
}
.mw-footer {
color: var(--background-text-color);
}
.mw-footer li {
color: var(--background-text-color);
}
.mw-footer a,
.mw-footer a:active,
.mw-footer a:visited {
color: var(--background-link-color);
}
::placeholder {
color: var(--subtle-color);
}
a {
color: var(--link-color);
}
a:visited,
a:active {
color: var(--link-color);
}
a.new {
color: var(--redlink-color);
}
a.new:visited {
color: var(--redlink-color);
}
.mw-parser-output a.extiw,
.mw-parser-output a.external {
color: var(--link-color);
}
.mw-parser-output a.extiw:visited,
.mw-parser-output a.external:visited,
.mw-parser-output a.extiw:active,
.mw-parser-output a.external:active {
color: var(--link-color);
}
.jsPurgeLink a.external {
color: var(--link-color);
}
:root {
--errorbox-bg: #feecea;
--errorbox-border: #ee4231;
--warningbox-bg: #fef9de;
--warningbox-border: #f9d000;
--successbox-bg: #ecf8e3;
--successbox-border: #6bc71f;
}
.mw-message-box-error,
.errorbox,
.mw-message-box-warning,
.warningbox,
.mw-message-box-success,
.successbox,
.usermessage {
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
}
.mw-message-box-error,
.errorbox {
background-color: var(--errorbox-bg);
border-color: var(--errorbox-border);
}
.mw-message-box-warning,
.warningbox,
.usermessage {
background-color: var(--warningbox-bg);
border-color: var(--warningbox-border);
}
.mw-message-box-success,
.successbox {
background-color: var(--successbox-bg);
border-color: var(--successbox-border);
}
.catlinks {
background: var(--body-light);
border: 1px solid var(--body-dark);
padding: 8px 15px;
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
}
.catlinks li {
border-color: var(--body-mid);
}
.filehistory a img,
#file img {
background: url("data:image/svg+xml,%3C%3Fxml version='1.0' encoding='UTF-8'%3F%3E%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16'%3E%3Cpath d='M0 0h8v16h8V8H0z' opacity='.13'/%3E%3C/svg%3E") repeat;
}
#file img:hover {
background: none;
}
.mw-highlight {
background: none;
}
.mw-highlight .linenos {
background-color: var(--mw-code-background-color);
color: var(--byline-color);
}
.mw-highlight a:hover .linenos,
.mw-highlight .hll a .linenos {
color: var(--text-color);
}
.mw-content-ltr.mw-highlight-lines pre,
.mw-content-ltr.content .mw-highlight-lines pre {
box-shadow: inset 2.75em 0 0 var(--mw-code-background-color);
}
#pagehistory ul {
list-style: none;
margin: 0;
}
#pagehistory li {
border: 1px solid transparent;
padding: 1px 10px;
margin: 2px 0;
}
#pagehistory li.selected {
background-color: var(--body-light);
color: inherit;
border: 1px dashed var(--body-border);
outline: none;
}
#mw-history-compare > div:first-of-type {
position: -webkit-sticky;
position: sticky;
top: 0;
background-color: var(--body-main);
border-bottom: 1px solid var(--body-dark);
padding: 0.25em 0;
}
.wgl-stickyheader #mw-history-compare > div:first-of-type {
top: 2.5rem;
}
.autocomment,
.autocomment a,
.autocomment a:visited {
color: var(--link-color);
}
li span.deleted,
span.history-deleted {
color: var(--byline-color);
}
.mw-usertoollinks-contribs-no-edits,
.mw-usertoollinks-contribs-no-edits:visited {
color: var(--redlink-color);
}
.CategoryTreeToggle {
color: var(--link-color);
}
body.wgl-stickyheader.action-view .mw-headline:target::before {
display: block;
content: '';
margin-top: -3rem;
height: 3rem;
visibility: hidden;
pointer-events: none;
}
.mw-mmv-post-image {
color: var(--text-color);
background-color: var(--body-main);
}
.mw-mmv-image-metadata {
border-top-color: var(--body-mid);
background-color: var(--body-light);
}
.mw-mmv-dialog,
.mw-mmv-dialog .mw-mmv-dialog-down-arrow,
.mw-mmv-options-dialog .mw-mmv-dialog-down-arrow {
background-color: var(--body-light);
box-shadow: none;
}
.mw-mmv-options-enable-alert {
background-color: var(--body-light);
color: var(--text-color);
}
.mw-mmv-options-dialog-header,
.mw-mmv-options-text-header,
.mw-mmv-options-text-body,
.mw-mmv-options-enable-alert,
.mw-mmv-options-dialog .mw-mmv-disable-confirmation .mw-mmv-options-dialog-header,
.mw-mmv-options-dialog .mw-mmv-disable-confirmation .mw-mmv-options-text-header {
color: var(--text-color);
}
.mw-revslider-container {
border-color: var(--sidebar);
}
.mw-revslider-slider-wrapper {
border-top-color: var(--sidebar);
}
.mw-ui-button {
background-color: var(--ooui-normal);
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
}
.mw-ui-button:not(:disabled):hover,
.mw-ui-button:not(:disabled):active {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
}
.mw-ui-button:not(:disabled):focus {
color: var(--ooui-text);
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent), inset 0 0 0 2px #fff;
}
.mw-ui-button:not(:disabled):visited {
color: var(--ooui-text);
}
.mw-ui-button.mw-ui-progressive:not(:disabled) {
background-color: var(--ooui-progressive);
color: #fff;
border-color: var(--ooui-progressive);
}
.mw-ui-button.mw-ui-progressive:not(:disabled):hover {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
}
.mw-ui-button.mw-ui-progressive:not(:disabled):focus {
box-shadow: inset 0 0 0 1px var(--ooui-accent), inset 0 0 0 2px #fff;
}
.mw-ui-button.mw-ui-progressive:not(:disabled):active,
.mw-ui-button.mw-ui-progressive:not(:disabled).is-on {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
box-shadow: none;
}
.mw-ui-button.mw-ui-destructive:not( :disabled ) {
color: #fff;
}
.mw-ui-button.mw-ui-quiet,
.mw-ui-button.mw-ui-quiet.mw-ui-progressive,
.mw-ui-button.mw-ui-quiet.mw-ui-destructive {
color: var(--text-color);
}
input[type='checkbox']:hover + .mw-ui-button.mw-ui-quiet,
input[type='checkbox']:hover + .mw-ui-button.mw-ui-quiet.mw-ui-progressive,
input[type='checkbox']:hover + .mw-ui-button.mw-ui-quiet.mw-ui-destructive,
.mw-ui-button.mw-ui-quiet:hover,
.mw-ui-button.mw-ui-quiet.mw-ui-progressive:hover,
.mw-ui-button.mw-ui-quiet.mw-ui-destructive:hover {
background-color: rgba(0, 24, 73, 0.02745098);
color: var(--text-color);
border-color: transparent;
}
input[type='checkbox']:focus + .mw-ui-button.mw-ui-quiet,
input[type='checkbox']:focus + .mw-ui-button.mw-ui-quiet.mw-ui-progressive,
input[type='checkbox']:focus + .mw-ui-button.mw-ui-quiet.mw-ui-destructive,
.mw-ui-button.mw-ui-quiet:focus,
.mw-ui-button.mw-ui-quiet.mw-ui-progressive:focus,
.mw-ui-button.mw-ui-quiet.mw-ui-destructive:focus {
color: var(--text-color);
}
input[type='checkbox']:active + .mw-ui-button.mw-ui-quiet,
input[type='checkbox']:active + .mw-ui-button.mw-ui-quiet.mw-ui-progressive,
input[type='checkbox']:active + .mw-ui-button.mw-ui-quiet.mw-ui-destructive,
.mw-ui-button.mw-ui-quiet:active,
.mw-ui-button.mw-ui-quiet.mw-ui-progressive:active,
.mw-ui-button.mw-ui-quiet.mw-ui-destructive:active {
background-color: rgba(0, 36, 73, 0.08235294);
color: var(--text-color);
border-color: #72777d;
}
.mw-ui-input {
background-color: var(--ooui-input);
color: var(--text-color);
border-color: var(--ooui-input-border);
}
.mw-ui-input:hover {
border-color: var(--ooui-input-border--hover);
}
.mw-ui-input::placeholder {
color: var(--byline-color);
}
.mw-content-ltr .redirectText li:first-child {
padding: 0;
background: 0;
}
.mw-content-ltr .redirectText li:first-child::before {
content: '';
background: currentcolor;
-webkit-mask: url("filepath://Redirect-arrow.svg") no-repeat 50% 50% / contain;
mask: url("filepath://Redirect-arrow.svg") no-repeat 50% 50% / contain;
display: inline-block;
width: 47px;
height: 20px;
}
:root {
--wikitable-header-bg: var(--body-dark);
--wikitable-border: var(--body-border);
--wikitable-bg: var(--body-light);
--wikitable-bg-lighter: #e9e3d6;
--wikitable-color: var(--text-color);
--table-na-background: rgba(255, 255, 255, 0.3);
--table-na-color: var(--subtle-color);
--table-yes-background: #c3e8a3;
--table-yes-color: #2e5e05;
--table-no-background: #fbc0ba;
--table-no-color: #801c13;
--table-maybe-background: #fcea94;
--table-maybe-color: #786300;
}
.wikitable {
background: var(--wikitable-bg);
color: var(--wikitable-color);
border-color: var(--wikitable-border);
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
}
.wikitable > tr > th,
.wikitable > tr > td,
.wikitable > * > tr > th,
.wikitable > * > tr > td {
border-color: var(--wikitable-border);
}
.wikitable > tr > th.table-noborder,
.wikitable > tr > td.table-noborder,
.wikitable > * > tr > th.table-noborder,
.wikitable > * > tr > td.table-noborder {
border-left-style: hidden;
border-right-style: hidden;
padding-left: 0;
padding-right: 0;
}
.wikitable > tr > th,
.wikitable > * > tr > th {
background-color: var(--wikitable-header-bg);
}
.tabber .wikitable {
box-shadow: none;
}
.mw_metadata td,
.mw_metadata th {
border-color: var(--wikitable-border);
}
.mw_metadata th {
background-color: var(--wikitable-header-bg);
}
.mw_metadata td {
background-color: var(--wikitable-bg);
}
.mw-datatable {
border-color: var(--wikitable-border);
}
.mw-datatable td,
.mw-datatable th {
border-color: var(--wikitable-border);
}
.mw-datatable th {
background-color: var(--wikitable-header-bg);
}
.mw-datatable td {
background-color: var(--wikitable-bg);
}
.mw-datatable tr:hover td {
background-color: var(--wikitable-bg);
}
table.alternating-rows tr:nth-child(odd),
table.alternating-cols td:nth-child(odd) {
background: var(--wikitable-alternating-bg);
}
.table-na {
background: var(--table-na-background);
color: var(--table-na-color);
vertical-align: middle;
text-align: center;
}
.table-yes {
background: var(--table-yes-background);
color: var(--table-yes-color);
}
.table-positive {
background: var(--table-yes-background);
}
.table-no {
background: var(--table-no-background);
color: var(--table-no-color);
}
.table-negative {
background: var(--table-no-background);
}
.table-maybe {
background: var(--table-maybe-background);
color: var(--table-maybe-color);
}
#mw-allmessagestable .am_actual,
#mw-allmessagestable .am_default {
background-color: var(--wikitable-bg);
}
#mw-allmessagestable .am_default:hover,
#mw-allmessagestable .am_actual:hover,
#mw-allmessagestable tbody:hover td {
background-color: var(--wikitable-bg-lighter);
}
table.wikitable td.no-cell-spacing {
padding: 0;
height: 0;
}
table.wikitable td.no-cell-spacing table {
margin: -1px;
width: calc(100% + 2px);
height: calc(100% + 2px);
}
.plainlist ol,
.plainlist ul {
margin: 0;
}
.plainlist li {
margin-bottom: 0;
list-style: none;
}
table.align-right-1 td:nth-of-type(1),
table.align-right-2 td:nth-of-type(2),
table.align-right-3 td:nth-of-type(3),
table.align-right-4 td:nth-of-type(4),
table.align-right-5 td:nth-of-type(5),
table.align-right-6 td:nth-of-type(6),
table.align-right-7 td:nth-of-type(7),
table.align-right-8 td:nth-of-type(8),
table.align-right-9 td:nth-of-type(9),
table.align-right-10 td:nth-of-type(10),
table.align-right-11 td:nth-of-type(11),
table.align-right-12 td:nth-of-type(12),
table.align-right-13 td:nth-of-type(13),
table.align-right-14 td:nth-of-type(14),
table.align-right-15 td:nth-of-type(15),
table.align-right-16 td:nth-of-type(16),
table.align-right-17 td:nth-of-type(17),
table.align-right-18 td:nth-of-type(18),
table.align-right-19 td:nth-of-type(19),
table.align-right-20 td:nth-of-type(20) {
text-align: right;
}
table.align-center-1 td:nth-of-type(1),
table.align-center-2 td:nth-of-type(2),
table.align-center-3 td:nth-of-type(3),
table.align-center-4 td:nth-of-type(4),
table.align-center-5 td:nth-of-type(5),
table.align-center-6 td:nth-of-type(6),
table.align-center-7 td:nth-of-type(7),
table.align-center-8 td:nth-of-type(8),
table.align-center-9 td:nth-of-type(9),
table.align-center-10 td:nth-of-type(10),
table.align-center-11 td:nth-of-type(11),
table.align-center-12 td:nth-of-type(12),
table.align-center-13 td:nth-of-type(13),
table.align-center-14 td:nth-of-type(14),
table.align-center-15 td:nth-of-type(15),
table.align-center-16 td:nth-of-type(16),
table.align-center-17 td:nth-of-type(17),
table.align-center-18 td:nth-of-type(18),
table.align-center-19 td:nth-of-type(19),
table.align-center-20 td:nth-of-type(20) {
text-align: center;
}
table.align-left-1 td:nth-of-type(1),
table.align-left-2 td:nth-of-type(2),
table.align-left-3 td:nth-of-type(3),
table.align-left-4 td:nth-of-type(4),
table.align-left-5 td:nth-of-type(5),
table.align-left-6 td:nth-of-type(6),
table.align-left-7 td:nth-of-type(7),
table.align-left-8 td:nth-of-type(8),
table.align-left-9 td:nth-of-type(9),
table.align-left-10 td:nth-of-type(10),
table.align-left-11 td:nth-of-type(11),
table.align-left-12 td:nth-of-type(12),
table.align-left-13 td:nth-of-type(13),
table.align-left-14 td:nth-of-type(14),
table.align-left-15 td:nth-of-type(15),
table.align-left-16 td:nth-of-type(16),
table.align-left-17 td:nth-of-type(17),
table.align-left-18 td:nth-of-type(18),
table.align-left-19 td:nth-of-type(19),
table.align-left-20 td:nth-of-type(20) {
text-align: left;
}
:root {
--diff-addedline-border-color: #438ab5;
--diff-addedline-background: #bddff2;
--diff-addedline-color: #000;
--diff-deletedline-border-color: #379541;
--diff-deletedline-background: #c1edbf;
--diff-deletedline-color: #000;
--diff-context-border-color: var(--body-mid);
--diff-context-background: var(--body-mid);
}
.diff-context {
border-color: var(--diff-context-border-color);
background: var(--diff-context-background);
color: inherit;
}
.diff-addedline {
border-color: var(--diff-addedline-border-color);
}
.diff-addedline .diffchange {
background: var(--diff-addedline-background);
color: var(--diff-addedline-color);
}
.diff-deletedline {
border-color: var(--diff-deletedline-border-color);
}
.diff-deletedline .diffchange {
background: var(--diff-deletedline-background);
color: var(--diff-deletedline-color);
}
.mw-diff-movedpara-left:after,
.mw-diff-movedpara-right:after {
color: var(--text-color);
}
.mw-notification {
background-color: var(--body-light);
border-color: var(--body-border);
color: var(--text-color);
}
.mw-echo-ui-notificationsInboxWidget-toolbarWrapper {
background: var(--body-main);
}
.mw-body-content .mw-echo-ui-datedSubGroupListWidget-title-secondary {
color: var(--byline-color);
}
.mw-echo-ui-pageNotificationsOptionWidget.oo-ui-optionWidget-selected {
background-color: var(--ooui-normal);
color: var(--ooui-accent);
}
.mw-echo-ui-pageNotificationsOptionWidget-label-count {
background-color: var(--ooui-normal);
color: var(--byline-color);
}
.oo-ui-optionWidget-selected .mw-echo-ui-pageNotificationsOptionWidget-label-count {
color: var(--ooui-accent);
}
.mw-echo-ui-pageNotificationsOptionWidget.oo-ui-optionWidget-highlighted {
background-color: var(--ooui-normal);
color: var(--text-color);
}
.mw-echo-ui-crossWikiUnreadFilterWidget {
border-color: var(--body-border);
}
.mw-echo-ui-crossWikiUnreadFilterWidget-subtitle {
color: var(--byline-color);
}
.mw-echo-ui-notificationBadgeButtonPopupWidget-popup > .oo-ui-popupWidget-popup > .oo-ui-popupWidget-head,
.mw-echo-ui-notificationBadgeButtonPopupWidget-popup > .oo-ui-popupWidget-popup > .oo-ui-popupWidget-footer {
border-color: var(--ooui-interface-border);
}
.mw-echo-ui-notificationBadgeButtonPopupWidget-popup > .oo-ui-popupWidget-popup > .oo-ui-popupWidget-footer .mw-echo-ui-notificationBadgeButtonPopupWidget-footer-buttons .oo-ui-buttonElement:last-child {
border-left-color: var(--ooui-normal-border);
}
.mw-echo-ui-notificationItemWidget {
background-color: var(--ooui-normal);
border-color: var(--ooui-normal-border);
}
.mw-echo-ui-notificationItemWidget:hover,
.mw-echo-ui-notificationItemWidget-unread:hover {
background-color: var(--ooui-normal--hover);
}
.mw-echo-ui-notificationItemWidget:last-child {
border-bottom-color: var(--ooui-normal-border);
}
.mw-echo-ui-notificationItemWidget-unread {
background-color: var(--search-box);
}
.mw-echo-ui-crossWikiNotificationItemWidget-group,
.mw-echo-ui-bundleNotificationItemWidget-group {
background-color: var(--ooui-interface);
}
.mw-echo-ui-toggleReadCircleButtonWidget-circle {
background-color: var(--ooui-progressive);
}
.mw-echo-ui-toggleReadCircleButtonWidget:hover .mw-echo-ui-toggleReadCircleButtonWidget-circle {
background-color: var(--ooui-progressive--hover);
}
.mw-echo-ui-toggleReadCircleButtonWidget-circle-unread {
background-color: var(--ooui-normal);
border-color: var(--ooui-normal-border);
}
.mw-echo-ui-notificationItemWidget-content-message-header,
.mw-echo-ui-notificationItemWidget-content-message-body,
.mw-echo-ui-menuItemWidget > .oo-ui-buttonElement-button > .oo-ui-labelElement-label,
.mw-echo-ui-notificationItemWidget-content-actions-timestamp {
color: var(--ooui-text);
}
.mw-echo-ui-bundleNotificationItemWidget-group {
background-color: var(--body-main);
}
@keyframes unseen-fadeout-to-unread {
from {
background-color: var(--wikitable-bg-lighter);
}
to {
background-color: var(--search-box);
}
}
@keyframes unseen-fadeout-to-read {
from {
background-color: var(--wikitable-bg-lighter);
}
to {
background-color: var(--body-main);
}
}
.mwe-popups {
background: var(--body-light);
}
.mwe-popups .mwe-popups-container {
color: var(--text-color);
background: var(--body-light);
}
.mwe-popups .mwe-popups-container.flipped-x-y:before,
.mwe-popups .mwe-popups-container.flipped-y:before {
border-top: none;
}
.mwe-popups .mwe-popups-container.mwe-popups-no-image-tri:before {
border-bottom: none;
}
.mwe-popups .mwe-popups-container.flipped-x-y:after,
.mwe-popups .mwe-popups-container.flipped-y:after {
border-top-color: var(--body-light);
}
.mwe-popups .mwe-popups-container.mwe-popups-no-image-tri:after {
border-bottom-color: var(--body-light);
}
.mwe-popups .mwe-popups-settings-icon:hover,
.mwe-popups .mwe-popups-settings-icon:active {
background-color: var(--ooui-normal--hover);
}
.mwe-popups .mw-ui-icon-element:not(.disabled):hover {
background: none;
}
.mwe-popups .mwe-popups-extract {
color: var(--text-color);
}
.mwe-popups .mwe-popups-extract[dir='ltr']:after {
background-image: linear-gradient(to right, rgba(49, 62, 89, 0), var(--body-light) 50%);
}
.mwe-popups-overlay {
background-color: var(--ooui-window-background);
}
#mwe-popups-settings {
background: var(--ooui-interface);
border-color: var(--ooui-interface-border);
color: var(--text-color);
}
#mwe-popups-settings header {
border-color: var(--ooui-interface-border);
}
#mwe-popups-settings main#mwe-popups-settings-form p {
color: var(--byline-color);
}
#mwe-popups-settings main#mwe-popups-settings-form form label > span {
color: var(--ooui-text);
}
:root {
--smw-ask-options-even-bg: var(--body-mid);
--smw-ask-options-odd-bg: var(--body-light);
--smw-ask-action-btn-lblue-bg: var(--body-main);
--smw-ask-action-btn-lblue-color: #000;
--smw-ask-action-btn-lblue-border-color: var(--body-light);
--smw-ask-action-btn-dblue-bg: var(--body-light);
--smw-ask-action-btn-dblue-color: #fff;
--smw-ask-action-btn-dblue-border-color: var(--button-border);
}
.smw-ask-condition fieldset,
.smw-ask-printhead fieldset {
border-color: var(--sidebar);
}
.smw-ask-search fieldset,
.smw-ask-format fieldset,
.smw-ask-options fieldset {
border-color: var(--sidebar);
}
.strike > span:before,
.strike > span:after {
background: var(--sidebar);
}
.smw-ask-options-fields tr td {
background-color: var(--smw-ask-options-even-bg);
}
.smw-ask-options-fields tr:nth-child(odd) td {
background-color: var(--smw-ask-options-odd-bg);
}
.smw-ask-action-btn.smw-ask-action-btn-lblue,
.smw-ask-action-btn.smw-ask-action-btn-lblue:hover,
.smw-ask-action-btn.smw-ask-action-btn-lblue:visited {
background-color: var(--smw-ask-action-btn-lblue-bg);
color: var(--smw-ask-action-btn-lblue-color);
border-color: var(--smw-ask-action-btn-lblue-border-color);
}
.smw-ask-action-btn.smw-ask-action-btn-dblue,
.smw-ask-action-btn.smw-ask-action-btn-dblue:hover,
.smw-ask-action-btn.smw-ask-action-btn-dblue:visited {
background-color: var(--smw-ask-action-btn-dblue-bg);
color: var(--smw-ask-action-btn-dblue-color);
border-color: var(--smw-ask-action-btn-dblue-border-color);
}
.smw-ask-query textarea,
.smw-ask-actions textarea {
background-color: var(--ooui-interface);
border-color: var(--ooui-interface-border);
color: var(--ooui-text);
}
.smw-ask-query-format select {
background-color: var(--ooui-interface);
border: 1px solid var(--ooui-interface-border);
color: var(--ooui-text);
}
.smw-ask-toplinks {
background-color: var(--body-mid);
}
.smw-ask-toplinks span.smw-icon-info {
background: none;
padding: 0 !important;
}
.smw-ask-toplinks span.smw-icon-info::before {
content: '';
background: var(--text-color);
-webkit-mask: url("data:image/svg+xml,%3C%3Fxml version='1.0' encoding='UTF-8'%3F%3E%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 20 20'%3E%3Ctitle%3Einfo%3C/title%3E%3Cpath d='M10 0C4.477 0 0 4.477 0 10s4.477 10 10 10 10-4.477 10-10S15.523 0 10 0zM9 5h2v2H9zm0 4h2v6H9z'/%3E%3C/svg%3E") no-repeat 50% 50% / contain;
mask: url("data:image/svg+xml,%3C%3Fxml version='1.0' encoding='UTF-8'%3F%3E%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 20 20'%3E%3Ctitle%3Einfo%3C/title%3E%3Cpath d='M10 0C4.477 0 0 4.477 0 10s4.477 10 10 10 10-4.477 10-10S15.523 0 10 0zM9 5h2v2H9zm0 4h2v6H9z'/%3E%3C/svg%3E") no-repeat 50% 50% / contain;
padding: 0 0 3px 18px;
}
.smw-ask-options-row-odd {
background-color: var(--body-light);
}
.smw-ask-options-row-even {
background-color: var(--body-mid);
}
#options-toggle:not(:checked) + #options-list .options-parameter-list:after {
background-image: linear-gradient(to bottom, transparent, var(--body-mid) 90%);
}
.smw-ask-button-submit input {
background-color: var(--ooui-normal);
border-color: var(--ooui-normal-border);
color: var(--text-color);
}
.smw-ask-button-submit input:hover,
.smw-ask-button-lgrey:hover {
background-color: var(--ooui-normal--hover);
border-color: var(--ooui-normal-border);
}
input.smw-ask-action-btn.smw-ask-action-btn-dblue {
background-color: var(--ooui-normal);
border-color: var(--ooui-normal-border);
color: var(--ooui-text);
}
a.smw-ask-action-btn.smw-ask-action-btn-lblue {
background-color: var(--body-mid);
border-color: var(--body-mid);
color: var(--ooui-text);
}
a.smw-ask-action-btn.smw-ask-action-btn-lblue:visited {
background-color: var(--body-mid);
border-color: var(--body-mid);
color: var(--ooui-text);
}
a.smw-ask-action-btn.smw-ask-action-btn-lblue:hover {
background-color: var(--body-mid);
border-color: var(--body-mid);
color: var(--ooui-text);
}
a.smw-ask-action-btn-lgrey {
background-color: var(--ooui-normal);
border-color: var(--ooui-normal-border);
color: var(--ooui-text);
}
a.smw-ask-action-btn-lgrey:hover {
background-color: var(--ooui-normal--hover);
border-color: var(--ooui-normal-border);
color: var(--ooui-text);
}
.smw-callout-error {
background-color: var(--errorbox-bg);
border-color: var(--errorbox-border);
}
.smw-callout-info {
background-color: var(--body-light);
border-color: var(--body-dark);
}
.smw-callout-success {
background-color: var(--successbox-bg);
border-color: var(--successbox-border);
}
.smw-callout-warning {
background-color: var(--warningbox-bg);
border-color: var(--warningbox-bg);
}
.smw-tabs input.nav-tab:checked + label.nav-label,
.smw-tabs input.nav-tab:checked + label.nav-label:hover {
color: inherit;
}
#tab-smw-property-value:checked + label.nav-label .usage-count {
color: #fff;
background-color: var(--ooui-progressive);
}
#tab-smw-property-value:checked + label.nav-label .usage-count.moderate {
color: #fff;
background-color: #b55e0c;
border-color: #b55e0c;
}
#tab-smw-property-value:checked + label.nav-label .usage-count.high {
color: #fff;
background-color: #9f261e;
border-color: #9f261e;
}
.smw-property-page-results .header-title {
background-color: var(--ooui-interface);
border-bottom-color: var(--ooui-interface-border);
color: var(--ooui-text);
}
.smw-property-page-results .value-row:hover {
background-color: var(--ooui-normal--hover);
}
.smw-property-page-results .smw-table .header-row {
color: var(--text-color);
}
.tippy-tooltip.light-border-theme {
background-color: var(--body-light);
color: var(--text-color);
}
.tippy-tooltip.light-border-theme .tippy-arrow {
border-top-color: var(--body-light);
}
.tippy-tooltip.light-border-theme .tippy-arrow:after {
border-top-color: var(--body-light);
}
.tippy-header {
background-color: var(--body-dark);
border-bottom-color: var(--body-mid);
}
.smw-ui-input-filter {
background-color: var(--ooui-interface);
border-color: var(--ooui-interface-border);
color: var(--ooui-text);
}
.smw-ui-input-filter input {
border-left-color: var(--ooui-interface-border) !important;
color: var(--ooui-text) !important;
}
.smw-ui-pagination .page-link.link-disabled {
background-color: var(--ooui-disabled);
border-color: var(--ooui-disabled-border);
color: var(--subtle-color);
}
.smw-ui-pagination .page-link {
background-color: var(--ooui-normal);
border-color: var(--ooui-normal-border);
color: var(--link-color);
}
.smw-ui-pagination .page-link:hover {
background-color: var(--ooui-normal--hover);
border-color: var(--ooui-normal-border);
color: var(--link-color);
}
.smw-ui-pagination .page-link.link-active {
color: #fff;
background-color: var(--ooui-progressive);
border-color: var(--ooui-progressive);
}
.smw-tabs input.nav-tab:checked + label.nav-label {
border-color: var(--ooui-normal-border);
}
.smw-tabs section,
.smw-tabs .subtab-content {
border-top-color: var(--ooui-normal-border);
}
.smw-column-header {
color: var(--text-color);
}
.smw-factbox {
background: var(--body-main);
border-color: transparent;
}
.mw-body .mw-indicators #mw-indicator-smw-entity-examiner.mw-indicator .smw-indicator-vertical-bar-loader {
display: none;
}
.smwb-theme-light .smwb-title,
.smwb-theme-light .smwb-center,
.smwb-theme-light .smwb-actions,
.smwb-theme-light .smwb-prophead {
background-color: var(--body-mid);
}
.smwb-theme-light .smwb-factbox {
border-left-color: var(--body-mid);
}
.smwb-theme-light .smwb-ifactbox {
border-right-color: var(--body-mid);
}
.smwb-theme-light .smwb-propval {
background-color: var(--body-light);
}
.smwb-action-separator {
border-color: var(--wikitable-border);
}
.smwb-bottom {
border-bottom: 1px solid var(--wikitable-border);
}
.smwb-ifactbox .smwb-cell,
.smwb-factbox .smwb-cell {
border-top: 1px solid var(--wikitable-border);
}
.smwb-propvalue .smwb-prophead,
.smwb-ipropvalue .smwb-prophead,
.smwb-propvalue .smwb-propval,
.smwb-ipropvalue .smwb-propval {
font-size: 0.9em;
}
:root {
--filter-black-to-link: invert(36%) sepia(58%) saturate(433%) hue-rotate(344deg) brightness(100%) contrast(91%);
}
#bodyContent span.smwbrowse a {
color: black;
background-image: url('filepath://Smwbrowse.svg');
filter: var(--filter-black-to-link);
}
#bodyContent span.smwbrowse a:hover {
color: black;
background-image: url('filepath://Smwbrowse-hover.svg');
text-decoration: underline;
}
#bodyContent span.smwsearch a {
color: black;
filter: var(--filter-black-to-link);
background-image: url('filepath://Smwsearch.svg');
}
#bodyContent span.smwsearch a:hover {
color: black;
background-image: url('filepath://Smwsearch-hover.svg');
text-decoration: underline;
}
:root {
--tabber-tab-bg: var(--body-light);
--tabber-tab-border-color: var(--body-border);
--tabber-active-tab-bg: var(--body-light);
--tabber-active-tab-color: var(--text-color);
--tabber-active-tab-hover-bg: var(--body-light);
--tabber-active-tab-hover-border-color: var(--body-border);
--tabber-active-tab-hover-color: var(--text-color);
--tabber-active-tab-border-hider-color: var(--body-light);
--tabber-inactive-tab-bg: var(--body-background-color);
--tabber-inactive-tab-border-color: var(--body-border);
--tabber-inactive-tab-color: var(--text-color);
--tabber-inactive-tab-hover-bg: var(--body-light);
--tabber-inactive-tab-hover-border-color: var(--body-border);
}
.tabber {
margin: 1em 0;
}
.tabber .tabbertab {
background-color: var(--tabber-tab-bg);
border: 1px solid var(--tabber-tab-border-color);
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
padding: 1em 1.5em;
}
ul.tabbernav {
border: none;
margin-left: 2em;
margin-bottom: 0;
margin-right: 2em;
padding: 0;
font-family: inherit;
}
ul.tabbernav li.tabberactive > a {
background-color: var(--tabber-active-tab-bg);
color: var(--tabber-active-tab-color);
border-bottom: none;
position: relative;
}
ul.tabbernav li.tabberactive > a:hover {
color: var(--tabber-active-tab-hover-color);
background-color: var(--tabber-active-tab-hover-bg);
border-color: var(--tabber-active-tab-hover-border-color);
border-bottom: none;
}
ul.tabbernav li.tabberactive > a::after {
content: '';
position: absolute;
left: 0;
right: 0;
bottom: -1px;
border-bottom: 2px solid var(--tabber-active-tab-border-hider-color);
}
ul.tabbernav li a {
background-color: var(--tabber-inactive-tab-bg);
border-bottom: transparent;
border-color: var(--tabber-inactive-tab-border-color);
color: var(--tabber-inactive-tab-color);
display: inline-block;
font-size: 110%;
padding: 0.5em 1em;
}
ul.tabbernav li a:hover {
background-color: var(--tabber-inactive-tab-hover-bg);
border-color: var(--tabber-inactive-tab-hover-border-color);
}
ul.tabbernav li a:link,
ul.tabbernav li a:visited {
color: var(--tabber-inactive-tab-color);
}
:root {
--ooui-text: var(--text-color);
--ooui-interface: var(--body-light);
--ooui-interface-border: var(--body-border);
--ooui-window-background: rgba(255, 255, 255, 0.5);
--ooui-normal: #d5c7ad;
--ooui-normal--hover: #dfd5c1;
--ooui-normal-border: #b8a282;
--ooui-progressive: #605443;
--ooui-progressive--hover: #7e6e58;
--ooui-accent: var(--link-color);
--ooui-input: #fff;
--ooui-input-border: #b8a282;
--ooui-input-border--hover: #8a724f;
--ooui-disabled: #d1cdc5;
--ooui-disabled-border: #c2b9ab;
--ooui-disabled-text: var(--subtle-color);
--ooui-pending-background-image: repeating-linear-gradient(-45deg, var(--search-box), var(--search-box) 20px, var(--body-main) 20px, var(--body-main) 30px);
}
.oo-ui-widget {
color: var(--ooui-text);
}
.oo-ui-checkboxInputWidget [type='checkbox'] + span,
.oo-ui-radioInputWidget [type='radio'] + span {
background-color: var(--ooui-input);
border-color: var(--ooui-input-border);
}
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:checked + span,
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:indeterminate + span {
background-color: var(--ooui-progressive);
border-color: var(--ooui-progressive);
}
.oo-ui-radioInputWidget.oo-ui-widget-enabled [type='radio']:checked + span {
border-color: var(--ooui-progressive);
}
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:checked:hover + span,
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:indeterminate:hover + span {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
}
.oo-ui-radioInputWidget.oo-ui-widget-enabled [type='radio']:checked:hover + span {
border-color: var(--ooui-progressive--hover);
}
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:hover + span,
.oo-ui-radioInputWidget.oo-ui-widget-enabled [type='radio']:hover + span {
border-color: var(--ooui-accent);
}
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:focus + span {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:active + span,
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:checked:active + span,
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:indeterminate:active + span {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
box-shadow: inset 0 0 0 1px var(--ooui-progressive--hover);
}
.oo-ui-radioInputWidget.oo-ui-widget-enabled [type='radio']:active + span {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
}
.oo-ui-radioInputWidget.oo-ui-widget-enabled [type='radio']:checked:active + span {
border-color: var(--ooui-progressive--hover);
box-shadow: inset 0 0 0 1px var(--ooui-progressive--hover);
}
.oo-ui-radioInputWidget.oo-ui-widget-enabled [type='radio']:checked:active + span:before {
border-color: var(--ooui-progressive--hover);
}
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:checked:focus + span,
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:indeterminate:focus + span {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent), inset 0 0 0 2px #fff;
}
.oo-ui-checkboxInputWidget [type='checkbox']:disabled + span,
.oo-ui-radioInputWidget [type='radio']:disabled + span {
background-color: var(--ooui-disabled);
border-color: var(--ooui-disabled);
}
.oo-ui-dropdownWidget-handle {
border-color: var(--ooui-normal-border);
}
.oo-ui-dropdownWidget.oo-ui-widget-enabled .oo-ui-dropdownWidget-handle {
background-color: var(--ooui-normal);
color: var(--ooui-text);
}
.oo-ui-dropdownWidget.oo-ui-widget-enabled .oo-ui-dropdownWidget-handle:hover {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
}
.oo-ui-dropdownWidget.oo-ui-widget-enabled .oo-ui-dropdownWidget-handle:active {
color: var(--ooui-text);
}
.oo-ui-dropdownWidget.oo-ui-widget-enabled .oo-ui-dropdownWidget-handle:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-dropdownWidget.oo-ui-widget-enabled.oo-ui-dropdownWidget-open .oo-ui-dropdownWidget-handle {
background-color: var(--ooui-normal--hover);
}
.oo-ui-dropdownWidget.oo-ui-widget-disabled .oo-ui-dropdownWidget-handle {
color: var(--ooui-disabled-text);
text-shadow: none;
border-color: var(--ooui-disabled-border);
background-color: var(--ooui-disabled);
}
.oo-ui-dropdownInputWidget select {
border-color: var(--ooui-normal-border);
}
.oo-ui-dropdownInputWidget option {
background-color: var(--ooui-interface);
}
.oo-ui-dropdownInputWidget.oo-ui-widget-enabled {
background-color: var(--ooui-normal);
}
.oo-ui-dropdownInputWidget.oo-ui-widget-enabled:hover {
background-color: var(--ooui-normal--hover);
}
.oo-ui-dropdownInputWidget.oo-ui-widget-enabled select {
color: var(--ooui-text);
}
.oo-ui-dropdownInputWidget.oo-ui-widget-enabled select:hover,
.oo-ui-dropdownInputWidget.oo-ui-widget-enabled select:active {
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
}
.oo-ui-dropdownInputWidget.oo-ui-widget-enabled select:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-labelWidget.oo-ui-inline-help {
color: var(--byline-color);
}
.oo-ui-menuSelectWidget {
background-color: var(--ooui-interface);
border-color: var(--ooui-interface-border);
}
.oo-ui-menuSelectWidget-frameless {
box-shadow: inset 0 -1px 0 0 var(--ooui-normal-border);
}
.oo-ui-menuSectionOptionWidget {
color: var(--byline-color);
}
.oo-ui-menuOptionWidget.oo-ui-optionWidget-highlighted,
.oo-ui-menuOptionWidget.oo-ui-optionWidget-selected {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
}
.oo-ui-menuOptionWidget.oo-ui-optionWidget-selected.oo-ui-menuOptionWidget.oo-ui-optionWidget-highlighted,
.oo-ui-menuOptionWidget.oo-ui-optionWidget-pressed.oo-ui-menuOptionWidget.oo-ui-optionWidget-highlighted {
color: var(--ooui-accent);
}
.oo-ui-menuOptionWidget.oo-ui-widget-enabled.oo-ui-optionWidget {
color: var(--ooui-text);
}
.oo-ui-messageDialog-title {
color: inherit;
}
.oo-ui-messageWidget.oo-ui-messageWidget-block.oo-ui-flaggedElement-error {
background-color: var(--errorbox-bg);
border-color: var(--errorbox-border);
}
.oo-ui-messageWidget.oo-ui-messageWidget-block.oo-ui-flaggedElement-warning {
background-color: var(--warningbox-bg);
border-color: var(--warningbox-border);
}
.oo-ui-messageWidget.oo-ui-messageWidget-block.oo-ui-flaggedElement-success {
background-color: var(--successbox-bg);
border-color: var(--successbox-border);
}
.oo-ui-messageWidget.oo-ui-messageWidget-block.oo-ui-flaggedElement-notice {
background-color: var(--messagebox-info-background);
border-color: var(--messagebox-info-border);
}
.oo-ui-messageWidget.oo-ui-flaggedElement-error:not(.oo-ui-messageWidget-block),
.oo-ui-messageWidget.oo-ui-flaggedElement-success:not(.oo-ui-messageWidget-block) {
color: var(--ooui-text);
}
.oo-ui-optionWidget.oo-ui-widget-disabled {
color: var(--ooui-disabled-text);
}
.oo-ui-outlineControlsWidget {
background-color: var(--ooui-normal);
}
.oo-ui-outlineOptionWidget.oo-ui-optionWidget-highlighted {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
}
.oo-ui-popupWidget-popup {
background-color: var(--ooui-interface);
border-color: var(--ooui-interface-border);
}
.oo-ui-popupWidget-anchored-top .oo-ui-popupWidget-anchor:after {
border-bottom-color: var(--ooui-interface);
}
.oo-ui-popupWidget-anchored-top .oo-ui-popupWidget-anchor:before {
border-bottom-color: var(--ooui-interface-border);
}
.oo-ui-popupWidget-anchored-bottom .oo-ui-popupWidget-anchor:after {
border-top-color: var(--ooui-interface);
}
.oo-ui-popupWidget-anchored-bottom .oo-ui-popupWidget-anchor:before {
border-top-color: var(--ooui-interface-border);
}
.oo-ui-popupWidget-anchored-start .oo-ui-popupWidget-anchor:after {
border-right-color: var(--ooui-interface);
}
.oo-ui-popupWidget-anchored-start .oo-ui-popupWidget-anchor:before {
border-right-color: var(--ooui-interface-border);
}
.oo-ui-popupWidget-anchored-end .oo-ui-popupWidget-anchor:after {
border-left-color: var(--ooui-interface);
}
.oo-ui-popupWidget-anchored-end .oo-ui-popupWidget-anchor:before {
border-left-color: var(--ooui-interface-border);
}
.oo-ui-searchWidget-query {
border-bottom-color: var(--ooui-interface-border);
}
.oo-ui-selectFileWidget-dropTarget {
background-color: var(--ooui-interface);
border-color: var(--ooui-interface-border);
}
.oo-ui-selectFileWidget.oo-ui-widget-enabled.oo-ui-selectFileWidget-dropTarget {
background-color: var(--ooui-interface);
}
.oo-ui-selectFileWidget.oo-ui-widget-enabled.oo-ui-selectFileWidget-dropTarget:hover {
border-color: var(--ooui-input-border--hover);
}
.oo-ui-tabOptionWidget {
color: var(--ooui-text);
}
.oo-ui-tabSelectWidget-framed .oo-ui-tabOptionWidget.oo-ui-optionWidget-selected {
background-color: var(--body-dark);
color: var(--ooui-text);
}
.oo-ui-tabSelectWidget-framed .oo-ui-tabOptionWidget.oo-ui-optionWidget-selected .oo-ui-labelElement-label {
border-bottom-color: var(--body-border);
}
.oo-ui-tabSelectWidget-framed .oo-ui-tabOptionWidget.oo-ui-widget-enabled:hover,
.oo-ui-tabSelectWidget-framed .oo-ui-tabOptionWidget.oo-ui-widget-enabled:active {
background-color: var(--body-light);
color: var(--ooui-text);
}
.oo-ui-tabSelectWidget-framed .oo-ui-tabOptionWidget.oo-ui-widget-enabled.oo-ui-optionWidget-selected:hover {
background-color: var(--body-dark);
}
.oo-ui-tabSelectWidget-frameless .oo-ui-tabOptionWidget.oo-ui-optionWidget-selected {
color: var(--ooui-progressive);
box-shadow: inset 0 -2px 0 0 var(--ooui-progressive);
}
.oo-ui-tabSelectWidget-frameless .oo-ui-tabOptionWidget.oo-ui-optionWidget-selected:hover,
.oo-ui-tabSelectWidget-frameless .oo-ui-tabOptionWidget.oo-ui-optionWidget-selected:focus {
color: var(--ooui-progressive--hover);
box-shadow: inset 0 -2px 0 0 var(--ooui-progressive--hover);
}
.oo-ui-tabSelectWidget-framed {
background: none;
border-bottom: 1px solid var(--ooui-interface-border);
}
.oo-ui-tabSelectWidget-frameless {
box-shadow: inset 0 -1px 0 0 var(--ooui-interface-border);
}
.oo-ui-tabSelectWidget-mobile {
}
.oo-ui-tabSelectWidget-mobile.oo-ui-tabSelectWidget-framed:after {
background: var(--mobile-navbox-linear-gradient);
}
.oo-ui-tabSelectWidget-mobile.oo-ui-tabSelectWidget-frameless:after {
background: var(--mobile-navbox-linear-gradient);
}
.oo-ui-tagItemWidget {
border-color: var(--ooui-normal-border);
}
.oo-ui-tagItemWidget.oo-ui-widget-enabled {
color: var(--ooui-text);
}
.oo-ui-tagItemWidget.oo-ui-widget-enabled:hover {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
}
.oo-ui-tagItemWidget.oo-ui-widget-enabled:not( .oo-ui-tagItemWidget-fixed ) {
background-color: var(--ooui-normal);
}
.oo-ui-tagItemWidget.oo-ui-widget-enabled .oo-ui-buttonElement-button:hover {
background-color: var(--ooui-normal--hover);
}
.oo-ui-tagMultiselectWidget.oo-ui-widget-enabled {
background-color: var(--ooui-interface);
}
.oo-ui-tagMultiselectWidget.oo-ui-widget-enabled.oo-ui-tagMultiselectWidget-outlined {
background-color: var(--ooui-normal);
}
.oo-ui-tagMultiselectWidget.oo-ui-widget-enabled.oo-ui-tagMultiselectWidget-outlined .oo-ui-tagItemWidget.oo-ui-widget-enabled {
background-color: var(--ooui-interface);
}
.oo-ui-textInputWidget .oo-ui-inputWidget-input {
background-color: var(--ooui-input);
color: var(--ooui-text);
border-color: var(--ooui-input-border);
}
.oo-ui-textInputWidget.oo-ui-widget-enabled .oo-ui-inputWidget-input::placeholder {
color: var(--subtle-color);
}
.oo-ui-textInputWidget.oo-ui-widget-enabled .oo-ui-inputWidget-input:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-textInputWidget.oo-ui-widget-enabled .oo-ui-inputWidget-input[readonly]:not(.oo-ui-pendingElement-pending) {
background-color: var(--ooui-disabled);
color: var(--ooui-disabled-text);
}
.oo-ui-textInputWidget.oo-ui-widget-enabled:hover .oo-ui-inputWidget-input {
border-color: var(--ooui-input-border--hover);
}
.oo-ui-textInputWidget.oo-ui-widget-enabled:hover .oo-ui-inputWidget-input:focus {
border-color: var(--ooui-accent);
}
@media screen and (min-width: 0) {
.oo-ui-textInputWidget.oo-ui-widget-enabled textarea.oo-ui-inputWidget-input:focus {
outline: 1px solid var(--ooui-accent);
}
}
.oo-ui-textInputWidget.oo-ui-widget-disabled .oo-ui-inputWidget-input {
background-color: var(--ooui-disabled);
color: var(--ooui-disabled-text);
text-shadow: none;
border-color: var(--ooui-disabled-border);
}
.oo-ui-toggleSwitchWidget {
background-color: var(--ooui-input);
border-color: var(--ooui-input-border);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled .oo-ui-toggleSwitchWidget-grip {
background-color: var(--ooui-input);
border-color: var(--ooui-input-border);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:hover {
background-color: var(--ooui-input);
border-color: var(--ooui-accent);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:hover .oo-ui-toggleSwitchWidget-grip {
background-color: var(--ooui-input);
border-color: var(--ooui-accent);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:active,
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:active:hover,
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:active:focus {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
box-shadow: inset 0 0 0 1px var(--ooui-progressive--hover);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:active .oo-ui-toggleSwitchWidget-grip,
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:active:hover .oo-ui-toggleSwitchWidget-grip,
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:active:focus .oo-ui-toggleSwitchWidget-grip {
background-color: var(--ooui-input);
border-color: var(--ooui-input);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:focus .oo-ui-toggleSwitchWidget-grip {
border-color: var(--ooui-accent);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled.oo-ui-toggleWidget-on {
background-color: var(--ooui-progressive);
border-color: var(--ooui-progressive);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled.oo-ui-toggleWidget-on .oo-ui-toggleSwitchWidget-grip {
background-color: var(--ooui-input);
border-color: var(--ooui-input);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled.oo-ui-toggleWidget-on:hover {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled.oo-ui-toggleWidget-on:active,
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled.oo-ui-toggleWidget-on:active:hover {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled.oo-ui-toggleWidget-on:focus {
border-color: var(--ooui-progressive);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled.oo-ui-toggleWidget-on:focus::before {
border-color: #fff;
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-disabled {
background-color: var(--ooui-disabled);
border-color: var(--ooui-disabled);
}
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled > .oo-ui-buttonElement-button {
color: var(--ooui-text);
}
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled > .oo-ui-buttonElement-button:hover {
color: var(--ooui-text);
}
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled > .oo-ui-buttonElement-button:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled.oo-ui-buttonElement-pressed > input.oo-ui-buttonElement-button,
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled > .oo-ui-buttonElement-button:active {
color: var(--ooui-text);
}
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button,
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button:hover {
color: var(--ooui-text);
}
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button:active,
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive.oo-ui-buttonElement-pressed > .oo-ui-buttonElement-button {
color: var(--ooui-text);
border-color: var(--ooui-text);
}
.oo-ui-buttonElement-frameless.oo-ui-widget-disabled > .oo-ui-buttonElement-button {
color: var(--ooui-disabled-text);
}
.oo-ui-buttonElement-framed.oo-ui-widget-disabled > .oo-ui-buttonElement-button {
background-color: var(--ooui-disabled);
border-color: var(--ooui-disabled-border);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled > .oo-ui-buttonElement-button {
background-color: var(--ooui-normal);
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled > .oo-ui-buttonElement-button:hover {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled > .oo-ui-buttonElement-button:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-buttonElement-active > .oo-ui-buttonElement-button {
background-color: var(--ooui-progressive--hover);
color: #fff;
border-color: var(--ooui-progressive--hover);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-buttonElement-active > .oo-ui-buttonElement-button:focus {
border-color: var(--ooui-progressive--hover);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled > .oo-ui-buttonElement-button:active,
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-buttonElement-pressed > .oo-ui-buttonElement-button {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive {
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button {
color: var(--ooui-text);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button:hover {
background-color: var(--ooui-normal--hover);
border-color: var(--ooui-progressive--hover);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-destructive > .oo-ui-buttonElement-button {
color: var(--ooui-text);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-destructive > .oo-ui-buttonElement-button:hover {
background-color: var(--ooui-normal--hover);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button {
background-color: var(--ooui-progressive);
border-color: var(--ooui-progressive);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button:hover {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent), inset 0 0 0 2px #fff;
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button:active,
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive.oo-ui-buttonElement-pressed > .oo-ui-buttonElement-button,
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive.oo-ui-buttonElement-active > .oo-ui-buttonElement-button,
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive.oo-ui-popupToolGroup-active > .oo-ui-buttonElement-button {
color: #fff;
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
}
.oo-ui-pendingElement-pending {
background-image: var(--ooui-pending-background-image);
background-size: 200%;
animation: oo-ui-pendingElement-stripes 6s linear infinite;
}
@keyframes oo-ui-pendingElement-stripes {
100% {
background-position: 100%;
}
}
.oo-ui-messageDialog-content > .oo-ui-window-foot {
outline-color: var(--ooui-interface-border);
}
.oo-ui-messageDialog-message {
color: var(--ooui-text);
}
.oo-ui-messageDialog-actions-horizontal .oo-ui-actionWidget {
border-right-color: var(--ooui-interface-border);
}
.oo-ui-messageDialog-actions-vertical .oo-ui-actionWidget {
border-bottom-color: var(--ooui-interface-border);
}
.oo-ui-processDialog-content .oo-ui-window-head,
.oo-ui-processDialog-content .oo-ui-window-foot {
outline-color: var(--ooui-interface-border);
}
.oo-ui-processDialog .oo-ui-actionWidget > .oo-ui-buttonElement-button {
border-top-color: transparent;
border-bottom-color: transparent;
}
.oo-ui-processDialog .oo-ui-actionWidget > .oo-ui-buttonElement-button:hover,
.oo-ui-processDialog .oo-ui-actionWidget > .oo-ui-buttonElement-button:active {
border-top-color: transparent;
border-bottom-color: transparent;
}
.oo-ui-processDialog .oo-ui-actionWidget:not( .oo-ui-flaggedElement-progressive ):not( .oo-ui-flaggedElement-destructive ) > .oo-ui-buttonElement-button:hover,
.oo-ui-processDialog .oo-ui-actionWidget:not( .oo-ui-flaggedElement-progressive ):not( .oo-ui-flaggedElement-destructive ) > .oo-ui-buttonElement-button:active {
border-right-color: var(--ooui-interface-border);
border-left-color: transparent;
}
.oo-ui-processDialog .oo-ui-actionWidget:not( .oo-ui-flaggedElement-progressive ):not( .oo-ui-flaggedElement-destructive ) > .oo-ui-buttonElement-button:focus {
border-color: var(--ooui-accent);
}
.oo-ui-processDialog-actions-safe .oo-ui-actionWidget > .oo-ui-buttonElement-button,
.oo-ui-processDialog-actions-other .oo-ui-actionWidget > .oo-ui-buttonElement-button {
border-right-color: var(--ooui-normal-border);
border-left-color: transparent;
}
.oo-ui-processDialog-actions-safe .oo-ui-widget-enabled.oo-ui-iconElement:not( .oo-ui-labelElement ) > .oo-ui-buttonElement-button:hover {
background-color: var(--ooui-normal--hover);
border-right-color: var(--ooui-interface-border);
}
.oo-ui-windowManager-modal > .oo-ui-dialog {
background-color: var(--ooui-window-background);
}
.oo-ui-windowManager-modal > .oo-ui-dialog > .oo-ui-window-frame {
background-color: var(--ooui-interface);
}
.oo-ui-windowManager-modal.oo-ui-windowManager-floating > .oo-ui-dialog > .oo-ui-window-frame {
border-color: var(--ooui-interface-border);
}
.oo-ui-window {
color: var(--ooui-text);
}
.oo-ui-toolbar-bar {
background-color: var(--ooui-interface);
color: var(--ooui-text);
}
.oo-ui-toolbar-position-top > .oo-ui-toolbar-bar {
border-bottom-color: var(--body-mid);
}
.oo-ui-toolbar-bar .oo-ui-bookletLayout > .oo-ui-menuLayout-menu {
border-right-color: var(--body-mid);
}
.oo-ui-tool.oo-ui-widget-enabled > .oo-ui-tool-link:hover {
background-color: var(--ooui-normal--hover);
}
.oo-ui-tool.oo-ui-widget-enabled > .oo-ui-tool-link:focus {
outline: 1px solid var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-tool.oo-ui-widget-enabled > .oo-ui-tool-link:active,
.oo-ui-tool.oo-ui-widget-enabled.oo-ui-tool-active > .oo-ui-tool-link,
.oo-ui-tool.oo-ui-widget-enabled.oo-ui-popupToolGroup-active > .oo-ui-tool-link {
background-color: var(--ooui-normal--hover);
color: var(--ooui-accent);
box-shadow: none;
}
.oo-ui-tool.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive > .oo-ui-tool-link {
background-color: var(--ooui-progressive);
}
.oo-ui-tool.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive > .oo-ui-tool-link:hover {
background-color: var(--ooui-progressive--hover);
}
.oo-ui-tool.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive > .oo-ui-tool-link:focus {
box-shadow: inset 0 0 0 1px var(--ooui-accent), inset 0 0 0 2px #fff;
}
.oo-ui-tool.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive > .oo-ui-tool-link:active,
.oo-ui-tool.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive.oo-ui-tool-active > .oo-ui-tool-link {
background-color: var(--ooui-progressive--hover);
}
.oo-ui-listToolGroup-tools .oo-ui-tool.oo-ui-widget-enabled {
background-color: var(--ooui-normal);
}
.oo-ui-listToolGroup-tools .oo-ui-tool.oo-ui-widget-enabled:hover {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
}
.oo-ui-listToolGroup-tools .oo-ui-tool-active.oo-ui-widget-enabled .oo-ui-tool-link .oo-ui-tool-title {
color: var(--ooui-progressive);
}
.oo-ui-menuToolGroup {
border-left-color: var(--body-mid);
border-right-color: var(--body-mid);
}
.oo-ui-popupToolGroup-tools {
background-color: var(--ooui-interface);
border-color: var(--body-mid);
}
.oo-ui-popupToolGroup.oo-ui-widget-enabled > .oo-ui-popupToolGroup-handle:hover {
background-color: var(--ooui-normal--hover);
}
.oo-ui-popupToolGroup.oo-ui-widget-enabled > .oo-ui-popupToolGroup-handle:focus {
outline: 1px solid var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-toolbar-actions .oo-ui-popupToolGroup.oo-ui-widget-enabled > .oo-ui-popupToolGroup-handle:hover {
border-right-color: var(--ooui-normal--hover);
}
.oo-ui-popupToolGroup-tools .oo-ui-tool.oo-ui-widget-enabled .oo-ui-tool-link:focus {
box-shadow: inset 0 0 0 2px var(--ooui-accent);
}
.oo-ui-popupToolGroup-tools .oo-ui-tool-active.oo-ui-widget-enabled .oo-ui-tool-link .oo-ui-tool-title {
color: var(--ooui-progressive);
}
.oo-ui-popupToolGroup.oo-ui-popupToolGroup-active > .oo-ui-popupToolGroup-handle {
background-color: var(--ooui-normal);
color: var(--ooui-accent);
}
.oo-ui-popupToolGroup.oo-ui-popupToolGroup-active > .oo-ui-popupToolGroup-handle:hover {
background-color: var(--ooui-normal--hover);
color: var(--ooui-accent);
}
.oo-ui-bookletLayout-outlinePanel > .oo-ui-outlineControlsWidget {
border-top-color: var(--ooui-interface-border);
}
.oo-ui-bookletLayout > .oo-ui-menuLayout-menu {
border-right-color: var(--ooui-interface-border);
}
.oo-ui-fieldLayout-disabled > .oo-ui-fieldLayout-body > .oo-ui-fieldLayout-header > .oo-ui-labelElement-label {
color: var(--ooui-disabled-text);
}
.oo-ui-panelLayout-framed {
border-color: var(--sidebar);
}
.oo-ui-icon-settings {
background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' width='20' height='20' viewBox='0 0 20 20'%3E%3Ctitle%3Esettings%3C/title%3E%3Cg transform='translate(10 10)'%3E%3Cpath id='a' d='M1.5-10h-3l-1 6.5h5m0 7h-5l1 6.5h3'/%3E%3Cuse xlink:href='%23a' transform='rotate(45)'/%3E%3Cuse xlink:href='%23a' transform='rotate(90)'/%3E%3Cuse xlink:href='%23a' transform='rotate(135)'/%3E%3C/g%3E%3Cpath d='M10 2.5a7.5 7.5 0 0 0 0 15 7.5 7.5 0 0 0 0-15v4a3.5 3.5 0 0 1 0 7 3.5 3.5 0 0 1 0-7'/%3E%3C/svg%3E");
}
.oo-ui-icon-clear {
background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 20 20'%3E%3Ctitle%3Eclear%3C/title%3E%3Cpath d='M10 0a10 10 0 1 0 10 10A10 10 0 0 0 10 0zm5.66 14.24-1.41 1.41L10 11.41l-4.24 4.25-1.42-1.42L8.59 10 4.34 5.76l1.42-1.42L10 8.59l4.24-4.24 1.41 1.41L11.41 10z'/%3E%3C/svg%3E");
}
.mw-widget-dateInputWidget-handle {
background-color: var(--ooui-input);
color: var(--ooui-text);
border-color: var(--ooui-input-border);
}
.mw-widget-dateInputWidget-calendar {
background-color: var(--ooui-interface);
}
.mw-widget-dateInputWidget.oo-ui-widget-enabled .mw-widget-dateInputWidget-handle:hover {
border-color: var(--ooui-input-border--hover);
}
.mw-widget-calendarWidget {
border-color: var(--ooui-interface-border);
}
.mw-widget-calendarWidget:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.mw-widget-calendarWidget-day,
.mw-widget-calendarWidget-day-heading {
color: var(--ooui-text);
}
.mw-widget-calendarWidget-day-additional {
color: var(--ooui-text);
opacity: 0.67;
}
.mw-widget-calendarWidget-day-today {
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.mw-widget-calendarWidget-item:hover {
background-color: var(--ooui-progressive);
}
.mw-widget-calendarWidget-item-selected {
background-color: var(--ooui-progressive--hover);
}
.mw-widgets-datetime-calendarWidget {
background-color: var(--ooui-interface);
border-color: var(--ooui-interface-border);
}
.mw-widgets-datetime-calendarWidget:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent), 0 2px 2px 0 rgba(0, 0, 0, 0.25);
}
.mw-widgets-datetime-calendarWidget-grid .mw-widgets-datetime-calendarWidget-cell.mw-widgets-datetime-calendarWidget-extra .oo-ui-buttonElement-button .oo-ui-labelElement-label {
color: var(--subtle-color);
}
.mw-widgets-datetime-calendarWidget-grid .mw-widgets-datetime-calendarWidget-cell.mw-widgets-datetime-calendarWidget-selected .oo-ui-buttonElement-button {
background-color: var(--ooui-progressive--hover);
}
.mw-widgets-datetime-dateTimeInputWidget-handle {
background-color: var(--ooui-input);
color: var(--ooui-text);
border-color: var(--ooui-input-border);
}
.mw-widgets-datetime-dateTimeInputWidget.oo-ui-widget-enabled.mw-widgets-datetime-dateTimeInputWidget-handle:hover {
border-color: var(--ooui-input-border--hover);
}
.mw-widgets-datetime-dateTimeInputWidget.oo-ui-widget-enabled:hover input,
.mw-widgets-datetime-dateTimeInputWidget.oo-ui-widget-enabled:hover textarea {
border-color: var(--ooui-input-border--hover);
}
.mw-widgets-datetime-dateTimeInputWidget.oo-ui-widget-enabled .mw-widgets-datetime-dateTimeInputWidget-editField:hover {
background-color: var(--ooui-normal);
}
.ve-activated .ve-init-mw-desktopArticleTarget-originalContent #catlinks:hover {
background: var(--ooui-normal--hover);
}
.ve-ui-overlay {
font-family: inherit;
}
.oo-ui-toolbar-position-top .ve-ui-toolbarDialog-position-above {
border-top-color: var(--body-mid);
}
.ve-ce-branchNode-blockSlug,
.ve-ce-branchNode-newSlug {
outline-color: var(--body-border);
background-color: var(--ooui-interface);
}
.ve-ui-specialCharacterPage h3 {
color: var(--byline-color);
}
.ve-ui-specialCharacterPage-character {
border-color: var(--body-mid);
}
.ve-ui-specialCharacterPage-character:hover {
border-color: var(--body-dark);
}
.ve-ce-linkAnnotation.ve-ce-annotation-active {
box-shadow: 0 0 0 1px var(--body-mid);
background: none;
}
.ve-ui-desktopContext .ve-ui-linkContextItem .ve-ui-linkContextItem-label {
border-color: var(--body-border);
}
.ve-ui-mwHelpPopupTool-version-label,
.ve-ui-mwHelpPopupTool-version-link,
.ve-ui-mwHelpPopupTool-version-date {
color: var(--byline-color);
}
.ve-ce-tableCellableNode {
border-color: var(--body-mid);
}
.ve-ce-mwReferencesListNode-muted {
color: var(--byline-color);
}
.ve-ui-mwTemplatePage-description,
.ve-ui-mwParameterPage-label,
.ve-ui-mwParameterPage-description-required,
.ve-ui-mwParameterPage-description-deprecated {
color: var(--byline-color);
}
.mw-widget-titleWidget-menu .mw-widget-titleOptionWidget-description {
color: var(--byline-color);
}
.ve-ui-mwGalleryDialog-menuLayout > .oo-ui-menuLayout-menu,
.ve-ui-mwGalleryDialog-innerMenuLayout > .oo-ui-menuLayout-menu,
.ve-ui-mwGalleryDialog .ve-ui-mwGalleryDialog-image-container,
.ve-ui-targetWidget {
border-color: var(--body-border);
}
.ve-ui-targetWidget:not(.oo-ui-pendingElement-pending) {
background-color: var(--body-main);
}
.ve-ui-mwSaveDialog {
color: var(--ooui-text);
}
.ve-ui-mwSaveDialog-options {
background-color: var(--ooui-interface);
border-color: var(--body-border);
}
.ve-ui-mwSaveDialog-summary {
background-color: var(--ooui-input);
}
.ve-ui-mwSaveDialog-editSummary-count {
border-color: var(--body-border);
}
.ve-ui-mwSaveDialog-license {
color: var(--byline-color);
}
.ve-ui-mwReferenceContextItem-muted {
color: var(--byline-color);
}
.ve-ui-mwNoticesPopupTool-items > div:not(:first-child),
.ve-ui-mwHelpPopupTool-item:not(:first-child) {
border-color: var(--body-border);
}
.ve-ui-mwTransclusionOutlineControlsWidget {
background-color: var(--ooui-interface);
border-top-color: var(--body-border);
}
.ve-ui-mwTransclusionOutlineTemplateWidget-sticky {
background-color: var(--ooui-interface);
}
.ve-ui-mwTransclusionOutlineTemplateWidget .ve-ui-mwTransclusionOutlineParameterWidget.oo-ui-optionWidget-highlighted {
color: var(--ooui-text);
}
.ve-ui-mwTransclusionOutlineTemplateWidget-no-template-parameters {
color: var(--subtle-color);
}
.ve-ui-mwParameterPage-undocumentedLabel {
color: var(--subtle-color);
}
.ve-ui-mwTwoPaneTransclusionDialogLayout > .oo-ui-menuLayout-menu {
border-right: var(--body-border);
}
.ve-ui-mwParameterPage-doc-required,
.ve-ui-mwParameterPage-doc-deprecated,
.ve-ui-mwParameterPage-inlineDescription .ve-ui-mwParameterPage-doc-example {
color: var(--byline-color);
}
.ve-ui-expandableContent-toggle {
background-color: var(--ooui-interface);
}
.ve-ui-expandableContent-fade {
background: linear-gradient(to right, rgba(255, 255, 255, 0) 0, var(--ooui-interface) 90%);
}
.ve-ui-commandHelpDialog-shortcut > kbd,
.ve-ui-commandHelpDialog-sequence > kbd {
background-color: var(--keypress-background);
color: var(--keypress-color);
border-color: var(--keypress-border);
box-shadow: none;
text-shadow: none;
}
.ve-init-mw-desktopArticleTarget-toolbarPlaceholder-floating .ve-init-mw-desktopArticleTarget-toolbarPlaceholder-bar {
background: var(--ooui-interface);
}
.ve-init-mw-desktopArticleTarget-toolbarPlaceholder-bar {
border-bottom-color: var(--body-mid);
}
figure[typeof~='mw:File/Thumb'],
figure[typeof~='mw:File/Frame'],
figure[typeof~='mw:Image/Thumb'],
figure[typeof~='mw:Video/Thumb'],
figure[typeof~='mw:Image/Frame'],
figure[typeof~='mw:Video/Frame'] {
border: none;
background-color: var(--thumb-bg);
}
figure[typeof~='mw:File/Thumb'] > a:first-child > *:first-child:not( .mw-broken-media ),
figure[typeof~='mw:File/Frame'] > a:first-child > *:first-child:not( .mw-broken-media ),
figure[typeof~='mw:Image/Thumb'] > a:first-child > *:first-child:not( .mw-broken-media ),
figure[typeof~='mw:Video/Thumb'] > a:first-child > *:first-child:not( .mw-broken-media ),
figure[typeof~='mw:Image/Frame'] > a:first-child > *:first-child:not( .mw-broken-media ),
figure[typeof~='mw:Video/Frame'] > a:first-child > *:first-child:not( .mw-broken-media ) {
border: none;
background: var(--thumb-bg);
}
figure[typeof~='mw:File/Thumb'] > figcaption,
figure[typeof~='mw:File/Frame'] > figcaption,
figure[typeof~='mw:Image/Thumb'] > figcaption,
figure[typeof~='mw:Video/Thumb'] > figcaption,
figure[typeof~='mw:Image/Frame'] > figcaption,
figure[typeof~='mw:Video/Frame'] > figcaption {
border: none;
background-color: var(--thumb-caption-bg);
padding: 4px 6px;
}
:root {
--keypress-background: #eee;
--keypress-border: #ccc;
--keypress-color: #333;
}
.shortcut {
border: 1px solid var(--body-border);
background: var(--body-light);
float: right;
font-size: 0.8em;
margin: 0.5em 0em 0.5em 1em;
padding: 0.5em;
text-align: center;
}
.hatnote,
.seealso {
font-style: italic;
}
.hatnote i,
.seealso i {
font-style: normal;
}
div.hatnote,
div.seealso {
margin: 0.5em 1.6em;
}
div.hatnote + div.hatnote,
div.hatnote + div.seealso,
div.seealso + div.hatnote,
div.seealso + div.seealso {
margin-top: -0.5em;
}
.keypress {
background: var(--keypress-background);
color: var(--keypress-color);
font-family: inherit;
border: 1px solid var(--keypress-border);
border-radius: 2px;
font-size: 0.9em;
margin: 0 0.1em;
padding: 0.1em 0.4em;
white-space: nowrap;
}
:root {
--documentation-background: #f9fafa;
--documentation-link-color: #e4eaee;
--documentation-headers-color: #fff;
--documentation-header-background: #949eaa;
--documentation-subheader-background: #808c9a;
--documentation-border: #e4eaee;
}
.documentation {
background: var(--documentation-background);
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
margin: 1em 0;
}
.documentation pre,
.documentation code {
background-color: var(--documentation-background);
border-color: var(--documentation-border);
}
.documentation h2,
.documentation hr {
border-color: var(--documentation-border);
}
.documentation-header {
color: var(--documentation-headers-color);
background: var(--documentation-header-background);
font-weight: bold;
padding: 1em 1.5em;
}
.documentation-title {
font-size: 1.25em;
}
.documentation-subheader {
color: var(--documentation-headers-color);
background: var(--documentation-subheader-background);
padding: 0.5em 1.5em;
}
.documentation-subheader a,
.documentation-subheader a:visited,
.documentation-subheader a:active {
color: var(--documentation-link-color);
}
.documentation-documentation,
.documentation-links {
font-size: 0.85em;
}
.documentation-content {
padding: 1em 1.5em;
}
.mw-templatedata-doc-params dl:not(:empty) {
column-count: 3;
border-top: 1px solid var(--body-border);
margin-bottom: 0.5em;
}
.mw-templatedata-doc-params dt::after {
content: ":";
}
.mw-templatedata-doc-params dd,
.mw-templatedata-doc-params dt {
margin: 0.1em 2em;
min-width: auto;
}
.mw-templatedata-doc-muted {
color: var(--subtle-color);
font-style: italic;
}
:root {
--infobox-text-color: var(--text-color);
}
ol.references,
.reflist {
font-size: 90%;
}
.reflist {
list-style-type: decimal;
}
.reflist .references {
font-size: 100%;
list-style-type: inherit;
}
.reflist-lower-alpha {
list-style-type: lower-alpha;
}
ol.references li:target,
sup.reference:target {
background-color: var(--body-light);
}
.hideQuotes .refhide {
display: none;
}
:root {
--messagebox-obsolete-background: #cfcfcf;
--messagebox-obsolete-border: #464646;
--messagebox-obsolete-color: var(--text-color);
--messagebox-obsolete-link-color: #6c6c6c;
--messagebox-info-background: #ebebeb;
--messagebox-info-border: #898989;
--messagebox-info-color: var(--text-color);
--messagebox-info-link-color: #6c6c6c;
--messagebox-action-background: #c7e8fa;
--messagebox-action-border: #0b5884;
--messagebox-action-color: var(--text-color);
--messagebox-action-link-color: #03436b;
--messagebox-warn-background: #dfc0ba;
--messagebox-warn-border: #861c10;
--messagebox-warn-color: var(--text-color);
--messagebox-warn-link-color: #8e221a;
--messagebox-safe-background: #d8f0d3;
--messagebox-safe-border: #1b8408;
--messagebox-safe-color: var(--text-color);
--messagebox-safe-link-color: #1b8408;
--messagebox-disambig-background: #ebebeb;
--messagebox-disambig-border: #898989;
--messagebox-disambig-color: var(--text-color);
--messagebox-disambig-link-color: #6c6c6c;
--messagebox-discord-background: #5865f2;
--messagebox-discord-border: #4c57d0;
--messagebox-discord-link-color: #d2e5fc;
}
.mw-message-box,
.mw-message-box-error,
.mw-message-box-warning,
.mw-message-box-success,
.usermessage {
color: var(--text-color);
}
.messagebox {
width: 65%;
margin: 0.5em auto;
border-left: 15px solid;
border-color: var(--body-dark);
background-color: var(--body-light);
box-sizing: border-box;
}
.messagebox.obsolete {
background-color: var(--messagebox-obsolete-background);
border-color: var(--messagebox-obsolete-border);
color: var(--messagebox-obsolete-color);
}
.messagebox.obsolete a,
.messagebox.obsolete a:visited,
.messagebox.obsolete a:active {
color: var(--messagebox-obsolete-link-color);
}
.messagebox.info {
background-color: var(--messagebox-info-background);
border-color: var(--messagebox-info-border);
color: var(--messagebox-info-color);
}
.messagebox.info a,
.messagebox.info a:visited,
.messagebox.info a:active {
color: var(--messagebox-info-link-color);
}
.messagebox.action {
background-color: var(--messagebox-action-background);
border-color: var(--messagebox-action-border);
color: var(--messagebox-action-color);
}
.messagebox.action a,
.messagebox.action a:visited,
.messagebox.action a:active {
color: var(--messagebox-action-link-color);
}
.messagebox.warn {
background-color: var(--messagebox-warn-background);
border-color: var(--messagebox-warn-border);
color: var(--messagebox-warn-color);
}
.messagebox.warn a,
.messagebox.warn a:visited,
.messagebox.warn a:active {
color: var(--messagebox-warn-link-color);
}
.messagebox.safe {
background-color: var(--messagebox-safe-background);
border-color: var(--messagebox-safe-border);
color: var(--messagebox-safe-color);
}
.messagebox.safe a,
.messagebox.safe a:visited,
.messagebox.safe a:active {
color: var(--messagebox-safe-link-color);
}
.messagebox.disambig {
background-color: var(--messagebox-disambig-background);
border-color: var(--messagebox-disambig-border);
color: var(--messagebox-disambig-color);
}
.messagebox.disambig a,
.messagebox.disambig a:visited,
.messagebox.disambig a:active {
color: var(--messagebox-disambig-link-color);
}
.messagebox.discord {
background-color: var(--messagebox-discord-background);
border-color: var(--messagebox-discord-border);
color: #fff;
}
.messagebox.discord a,
.messagebox.discord a:visited,
.messagebox.discord a:active {
color: var(--messagebox-discord-link-color);
}
.messagebox.discord a.external,
.messagebox.discord a:visited.external,
.messagebox.discord a:active.external {
font-style: italic;
}
.messagebox.stub {
width: 40%;
}
.messagebox.hasdialogue {
padding: 0 10px;
width: auto;
}
:root {
--byline-arrow-filter: invert(29%) sepia(0%) saturate(376%) hue-rotate(172deg) brightness(87%) contrast(80%);
--tile-border-color: #cabe9b;
--tile-background-color: #f9f3eb;
--tile-link-button-color: #f5e9db;
--tile-link-button-highlight-color: #dfccb0;
--tile-dark-color: #fff;
--tile-dark-bg: #5d6773;
--tile-dark-link-color: #ccc;
--tile-dark-byline-color: rgba(255, 255, 255, 0.7);
--tile-dark-header-color: #fff;
}
.tile {
background: var(--tile-background-color);
border: 1px solid var(--tile-border-color);
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
padding: 1.5em 2em 1em;
max-width: 40em;
}
.tile h2 {
font-size: 1.4em;
font-weight: bold;
border: none;
margin: 0 0 0.4em;
}
.tile .byline + h2 {
margin-top: -0.5em;
}
.tile.dark {
color: var(--tile-dark-color);
background: var(--tile-dark-bg);
border: none;
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.3);
}
.tile.dark h2 {
color: var(--tile-dark-header-color);
}
.tile.dark a {
color: var(--tile-dark-link-color);
}
.tile.dark .byline {
color: var(--tile-dark-byline-color);
}
.byline {
font-size: 0.9em;
color: var(--byline-color);
}
.byline a {
color: var(--byline-color);
}
.tile-row {
display: flex;
flex-flow: row wrap;
margin-bottom: 1em;
}
.tile-halves {
display: flex;
flex-flow: row wrap;
border: 1px solid var(--tile-border-color);
background: var(--tile-background-color);
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
}
.tile-halves h2 {
font-size: 1.4em;
font-weight: bold;
border: none;
margin: 0 0 0.4em;
}
.tile-halves .byline + h2 {
margin-top: -0.5em;
}
.tile-top {
width: 100%;
padding: 1.3rem 1.5rem 0.6rem;
}
.tile-top.tile-image {
display: flex;
align-items: center;
background-color: var(--byline-color);
overflow: hidden;
padding: 0;
height: 13vw;
max-height: 12em;
transition: 0.4s ease-out;
}
.tile-halves:hover .tile-top.tile-image img {
transform: scale(1.1);
transition: 0.5s ease-out;
}
.tile-top.tile-image a {
width: 100%;
}
.tile-top.tile-image img {
width: 100%;
object-fit: cover;
max-height: 200px;
transition: 0.4s ease-out;
}
.tile-bottom {
background: var(--tile-background-color);
border-top: 1px solid var(--tile-border-color);
width: 100%;
padding: 1rem 1.5rem 0.6rem;
}
.tile-bottom.link-button {
align-self: flex-end;
padding: 0;
}
.tile-bottom.link-button a {
display: block;
text-align: center;
padding: 0.75em 1.5em 0.8em;
text-decoration: none;
}
.tile-bottom.read-more {
background: var(--tile-link-button-color);
transition: 0.3s ease-out;
}
.tile-bottom.read-more a {
color: var(--byline-color);
font-weight: bold;
text-align: right;
}
.tile-bottom.read-more:hover {
background: var(--tile-link-button-highlight-color);
}
.tile-bottom.read-more:hover .arrow {
transform: translateX(50%);
}
.tile-bottom.read-more .arrow {
filter: var(--byline-arrow-filter);
margin-left: 0.4em;
transition: 0.3s ease-out;
}
body.page-Main_Page.action-view .catlinks,
body.page-Main_Page.action-view #contentSub,
body.page-Main_Page.action-view #firstHeading,
body.page-Main_Page.action-view #siteNotice {
display: none;
}
body.page-Main_Page .mw-parser-output {
max-width: 75em;
margin: 0 auto;
}
body.page-Main_Page.action-view .catlinks,
body.page-Main_Page.action-view #contentSub,
body.page-Main_Page.action-view #siteNotice {
display: none;
}
.mainpage-header {
display: flex;
margin: 2.6em 1.75em 1.5em;
}
.mainpage-header .header-intro {
flex: 2;
}
.mainpage-header .header-intro h1 {
font-size: 2.5em;
font-weight: bold;
border: none;
margin: 0 0 0.15em;
}
.mainpage-header .header-intro p {
font-size: 1.1em;
line-height: 1.7em;
}
.mainpage-header .header-stats {
flex: 1;
display: flex;
justify-content: center;
align-items: center;
margin-top: -1em;
}
.mainpage-body {
display: grid;
grid-template-areas: "event event event" "update update update" "content content content" "left left right";
gap: 0.9rem;
grid-template-columns: repeat(3, 1fr);
}
.mainpage-body h2 a {
color: var(--text-color);
}
.mainpage-body .tile {
padding-left: 1.75em;
padding-right: 1.75em;
max-width: 100%;
}
.mainpage-body .tile-row {
width: 100%;
margin-bottom: 0;
}
.mainpage-body .tile-row {
display: grid;
gap: 0.9rem;
}
.mainpage-left {
grid-area: left;
flex: 2;
display: flex;
flex-flow: column wrap;
}
.mainpage-left > * {
margin: 0 0 0.9rem;
}
.mainpage-right {
grid-area: right;
flex: 1;
display: flex;
flex-flow: column wrap;
}
.mainpage-right > * {
margin: 0 0 0.9rem;
}
.arrow {
background: url('filepath://White-chevron.svg') no-repeat;
display: inline-block;
height: 0.7rem;
width: 0.45rem;
vertical-align: middle;
}
.arrow.dark {
filter: invert(80%);
}
.mainpage-contents {
grid-area: content;
grid-template-columns: repeat(6, 1fr);
}
.mainpage-contents .tile-halves {
flex: 1;
}
.mainpage-contents .tile-top {
height: 4.5rem;
position: relative;
}
.mainpage-contents h2 {
margin: 0;
padding: 0;
}
.mainpage-contents .tile-bottom.link-button a {
padding: 0.75em 0.2em;
}
.popular-pages ul {
display: grid;
grid-template-columns: repeat(3, 1fr);
grid-gap: 0.6em;
margin: 1em 0 0.7em 0;
}
.mp-popular-page-light {
display: flex;
align-items: center;
background-color: var(--button-background);
transition: 100ms;
}
.mp-popular-page-light a {
flex: 1;
display: block;
color: #fff;
font-weight: bold;
text-align: center;
text-decoration: none;
padding: 0.7em 1em;
}
.mp-popular-page-light:hover {
filter: brightness(115%);
transition: 100ms;
}
.mainpage-discord {
border: none;
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.3);
}
.mainpage-discord .tile-top {
display: flex;
align-items: center;
background: #5865f2;
padding: 1em 1.75em;
}
.mainpage-discord .tile-top a {
flex: 1;
position: relative;
text-decoration: none;
}
.mainpage-discord .tile-top a:hover .arrow {
transform: translateX(50%);
}
.mainpage-discord .tile-bottom {
background: #525ee0;
border: none;
padding: 1em 1.75em;
}
.mainpage-discord .tile-bottom p {
color: #fff;
font-weight: bold;
font-size: 0.9em;
text-align: center;
text-transform: uppercase;
letter-spacing: 0.03em;
margin: 0;
}
.mainpage-discord .partner-icon {
margin-right: 0.75em;
}
.mainpage-discord .server-name {
color: #fff;
font-weight: bold;
font-size: 1.25em;
margin: 0.5em 0 -0.15em;
}
.mainpage-discord .server-tagline {
color: rgba(255, 255, 255, 0.9);
margin-bottom: 0.5em;
}
.mainpage-discord .arrow {
position: absolute;
top: calc(50% - .5em);
right: 0;
height: 1em;
width: 0.7em;
background-size: 0.7em 1em;
transition: 0.3s ease-out;
}
.mainpage-editing {
border: none;
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.3);
}
.mainpage-editing .tile-top {
background: #438ab5;
}
.mainpage-editing .tile-bottom {
background: #3980ab;
border: none;
padding: 0.8rem 1.5rem 0.4rem;
}
.mainpage-editing h2,
.mainpage-editing a {
color: #fff;
}
.mainpage-editing p {
color: rgba(255, 255, 255, 0.9);
}
.mainpage-editing ul {
list-style-image: url('filepath://Transparent-chevron.svg');
}
@media only screen and (max-width: 1200px) {
.mainpage-contents {
grid-template-columns: repeat(3, 1fr);
}
}
@media only screen and (max-width: 1000px) {
.mainpage-body {
grid-template-areas: "event event event" "update update update" "content content content" "left left left" "right right right";
}
.mainpage-recent-updates {
grid-template-columns: repeat(2, 1fr);
}
.mainpage-recent-updates .tile-halves:last-child {
display: none;
}
.mainpage-recent-updates .tile-halves:hover .tile-top img {
transform: scale(1.04);
}
.mainpage-recent-updates .tile-top {
height: 18vw;
min-height: 9em;
}
.mainpage-header .header-stats {
display: none;
}
.mainpage-left > *:last-child,
.mainpage-right > *:last-child {
margin-bottom: 0;
}
.popular-pages ul {
grid-template-columns: repeat(2, 1fr);
}
}
@media only screen and (max-width: 720px) {
.mainpage-recent-updates {
grid-template-columns: none;
}
.mainpage-recent-updates .tile-halves:last-child {
display: flex;
}
.mainpage-contents {
grid-template-columns: repeat(2, 1fr);
}
}
.mw-prefs-buttons {
background-color: var(--body-main);
border-top-color: var(--body-border);
box-shadow: none;
}
.mw-prefs-tabs-wrapper.oo-ui-panelLayout-framed,
.mw-prefs-tabs > .oo-ui-menuLayout-content > .oo-ui-indexLayout-stackLayout > .oo-ui-tabPanelLayout {
border-color: var(--body-border);
}
.mw-htmlform-ooui .mw-htmlform-matrix tbody tr:nth-child(even) td {
background-color: var(--body-light);
}
.mw-htmlform-ooui .mw-htmlform-matrix tbody tr:hover td {
background-color: var(--body-mid);
}
:root {
--rc-positive-color: #407813;
--rc-negative-color: #b41e0f;
}
.mw-plusminus-pos {
color: var(--rc-positive-color);
}
.mw-plusminus-neg {
color: var(--rc-negative-color);
}
.client-js .mw-recentchanges-toplinks:not(.mw-recentchanges-toplinks-collapsed) {
border-color: var(--body-border);
background-color: var(--body-light);
border-radius: 2px;
}
.mw-rcfilters-ui-filterTagMultiselectWidget-wrapper-content-title {
color: var(--text-color);
}
.mw-rcfilters-ui-filterTagMultiselectWidget-emptyFilters {
color: var(--byline-color);
}
.mw-rcfilters-ui-filterTagMultiselectWidget.oo-ui-widget-enabled .oo-ui-tagMultiselectWidget-handle {
background-color: var(--ooui-interface);
border-color: var(--ooui-interface-border);
}
.mw-rcfilters-ui-filterTagMultiselectWidget-views-select-widget.oo-ui-widget {
border-color: var(--ooui-interface-border);
}
.mw-rcfilters-collapsed .mw-rcfilters-ui-filterTagMultiselectWidget {
border-bottom-color: var(--ooui-interface-border);
}
.mw-rcfilters-ui-menuSelectWidget-footer {
background-color: var(--ooui-interface);
border-color: var(--ooui-interface-border);
}
.mw-rcfilters-ui-viewSwitchWidget label.oo-ui-labelWidget {
color: var(--byline-color);
}
.mw-rcfilters-ui-tagItemWidget-popup-content {
color: var(--ooui-text);
}
.mw-changeslist-legend,
.mw-rcfilters-ui-changesListWrapperWidget .mw-changeslist-legend {
background-color: var(--body-light);
border-color: var(--body-dark);
}
.mw-rcfilters-ui-changesListWrapperWidget-previousChangesIndicator {
border-color: var(--sidebar);
}
.client-js .mw-changeslist ul,
.client-js .mw-changeslist table.mw-enhanced-rc {
margin-left: 0;
}
.mw-rcfilters-ui-watchlistTopSectionWidget-separator {
border-color: var(--sidebar);
}
.mw-rcfilters-ui-itemMenuOptionWidget-header {
border-bottom-color: var(--ooui-interface);
background-color: var(--ooui-interface-border);
}
.mw-rcfilters-ui-itemMenuOptionWidget:not(:last-child):not(.mw-rcfilters-ui-itemMenuOptionWidget-identifier-talk) {
border-bottom-color: var(--ooui-normal-border);
}
.mw-rcfilters-ui-itemMenuOptionWidget-label-title,
.mw-rcfilters-ui-itemMenuOptionWidget-label-desc {
color: var(--text-color);
}
.mw-rcfilters-ui-filterMenuOptionWidget.oo-ui-flaggedElement-muted:not(.oo-ui-optionWidget-selected) {
background-color: var(--body-main);
}
.mw-rcfilters-ui-filterMenuOptionWidget.oo-ui-flaggedElement-muted .mw-rcfilters-ui-itemMenuOptionWidget-label-title,
.mw-rcfilters-ui-filterMenuOptionWidget.oo-ui-flaggedElement-muted .mw-rcfilters-ui-itemMenuOptionWidget-label-desc {
color: var(--subtle-color);
}
.mw-rcfilters-ui-filterMenuSectionOptionWidget {
background-color: var(--body-mid);
}
.mw-rcfilters-ui-filterMenuSectionOptionWidget-header-title.oo-ui-labelElement-label {
color: var(--ooui-text);
}
.mw-rcfilters-ui-filterMenuHeaderWidget-title {
color: var(--ooui-text);
}
.mw-rcfilters-ui-filterMenuHeaderWidget-header {
border-bottom-color: var(--ooui-interface-border);
background-color: var(--ooui-interface);
}
.mw-rcfilters-ui-itemMenuOptionWidget-view-namespaces {
border-top-color: var(--ooui-interface-border);
}
.mw-rcfilters-ui-datePopupWidget {
border-color: var(--ooui-interface-border);
}
.mw-rcfilters-ui-datePopupWidget .mw-rcfilters-ui-valuePickerWidget-title {
color: var(--byline-color);
}
.mw-rcfilters-ui-savedLinksListItemWidget-label {
color: var(--ooui-accent);
}
.client-js .mw-changeslist.mw-rcfilters-ui-changesListWrapperWidget-highlighted ul,
.client-js .mw-changeslist.mw-rcfilters-ui-changesListWrapperWidget-highlighted table.mw-enhanced-rc {
margin-left: 1.5em;
}
.page-Special_CreateAccount .mw-ui-container,
.page-Special_UserLogin .mw-ui-container {
max-width: 64rem;
margin: 0 auto;
}
.mw-number-text {
color: var(--byline-color);
}
.mw-body-content .mw-number-text h3 {
color: var(--text-color);
}
#mw-indicator-mw-helplink a {
background: none;
padding: 0;
display: flex;
align-items: center;
}
#mw-indicator-mw-helplink a::before {
content: '';
margin-right: 5px;
-webkit-mask: url("/resources/src/mediawiki.helplink/images/helpNotice.svg?46d34") no-repeat 50% 50% / contain;
mask: url("/resources/src/mediawiki.helplink/images/helpNotice.svg?46d34") no-repeat 50% 50% / contain;
background: var(--text-color);
height: 20px;
width: 20px;
}
.results-info {
color: inherit;
}
.mw-search-profile-tabs {
background-color: var(--body-mid);
border-color: transparent;
}
.search-types .current a {
color: inherit;
}
#mw-searchoptions {
background-color: var(--body-mid);
border-color: transparent;
}
#mw-searchoptions .divider {
border-color: var(--body-border);
}
#mw-searchoptions h4 {
font-family: inherit;
}
#mw-searchoptions .oo-ui-labelElement:nth-of-type(odd) {
font-weight: bold;
}
.searchresult {
line-height: 1.5;
}
.searchalttitle,
#mw-search-interwiki li {
font-size: 90%;
}
.mw-search-result-data {
color: var(--byline-color);
}
.page-Special_ListFiles a.image img {
width: inherit;
height: inherit;
}
.page-Special_ListFiles .TablePager_col_thumb {
text-align: center;
}
#editcount table[border="1"] {
background-color: var(--body-main) !important;
border-color: var(--wikitable-border) !important;
margin-top: 0.5em;
}
#editcount table[border="1"] th,
#editcount table[border="1"] td {
padding: 0.2em 0.4em;
}
#editcount table[border="1"] th {
background-color: var(--wikitable-header-bg);
border: 1px solid var(--wikitable-border);
}
#editcount table[border="1"] td {
border: 1px solid var(--wikitable-border);
}
#editcount table[border="1"] tr:nth-child(odd) {
background-color: var(--body-light);
}
.mw-echo-ui-notificationBadgeButtonPopupWidget-popup > .oo-ui-popupWidget-popup .mw-echo-ui-placeholderItemWidget {
background-color: inherit;
}
table.mw-interwikitable.body td.mw-interwikitable-local-yes {
background-color: var(--table-yes-background);
color: var(--table-yes-color);
}
.mw-protectedpages-unknown {
color: var(--byline-color);
}
.watchlistredir,
.allpagesredirect {
font-style: italic;
}
.allpagesredirect:after {
color: var(--byline-color);
content: " (redirect)";
}
.mw-apisandbox-toolbar {
background: var(--body-main);
}
.oo-ui-menuOptionWidget .mw-apisandbox-flag {
color: var(--byline-color);
}
tr.mw-abusefilter-list-disabled,
tr.mw-abusefilter-list-disabled td {
color: var(--byline-color);
}
table.mw-abuselog-details {
background: var(--wikitable-bg);
border-color: var(--wikitable-border);
}
table.mw-abuselog-details th {
background: var(--wikitable-header-bg);
}
table.mw-abuselog-details th,
table.mw-abuselog-details td {
border-color: var(--wikitable-border);
}
.mw-abusefilter-log-hidden-entry {
color: var(--subtle-color);
}
body td.mw-abusefilter-history-changed {
background: var(--table-no-background);
}
div.mw-abusefilter-editor,
#mw-abusefilter-warn-preview,
#mw-abusefilter-disallow-preview {
border-color: var(--ooui-input-border);
}
.mw-destfile-warning {
border-color: var(--warningbox-border);
color: var(--text-color);
background-color: var(--warningbox-bg);
}
span.fileinput-button {
background-color: var(--ooui-normal);
border-color: var(--ooui-normal-border);
color: var(--ooui-text);
}
ul.fileupload-results li.ful-success {
background-color: var(--successbox-bg);
}
ul.fileupload-results li.ful-success a {
color: var(--link-color);
}
ul.fileupload-results li.ful-error {
background-color: var(--errorbox-bg);
}
#t-print,
#t-permalink {
display: none;
}
#filetoc {
border-radius: 2px;
background: var(--body-mid);
border-color: transparent;
margin: 0.5em auto;
text-align: center;
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
}
li.gallerybox div.thumb {
border: none;
background-color: var(--thumb-bg);
}
.smwfact {
display: none;
}
.list-header {
background-color: var(--body-mid);
color: inherit;
}
.editOptions {
color: var(--text-color);
background-color: var(--sourceeditor-background-secondary);
border-color: var(--sourceeditor-border);
}
.mw-json th,
.mw-json td {
border-color: var(--wikitable-border);
}
.mw-json td {
background: var(--wikitable-bg);
}
.mw-json th {
background: var(--wikitable-header-bg);
}
b81756cbe3233908723e3f91e4d173e336fbbb00
File:Cryoknight icon.svg
6
472
812
2024-03-23T02:20:33Z
Jayden
3
wikitext
text/x-wiki
da39a3ee5e6b4b0d3255bfef95601890afd80709
File:Hammermage icon.svg
6
473
813
2024-03-23T02:20:57Z
Jayden
3
wikitext
text/x-wiki
da39a3ee5e6b4b0d3255bfef95601890afd80709
File:Guardian icon.svg
6
474
814
2024-03-23T02:21:07Z
Jayden
3
wikitext
text/x-wiki
da39a3ee5e6b4b0d3255bfef95601890afd80709
Cryoknight
0
69
815
700
2024-03-23T02:22:15Z
Jayden
3
wikitext
text/x-wiki
'''Cryoknight''' ([[File:Cryoknight icon.svg|18px]]) is a [[faction]] which specialises in using melee weapons in [[combat]].
{{Classes}}
76257178f9db6a770bd5b6fdbecf4e3072340194
Guardian
0
70
816
701
2024-03-23T02:22:24Z
Jayden
3
wikitext
text/x-wiki
'''Guardian''' ([[File:Guardian icon.svg|18px]]) is a [[faction]] which specialises in using ranged weapons in [[combat]].
{{Classes}}
950015780f99b97ace6d6a608f8a2e48c9e2d12e
Hammermage
0
71
817
702
2024-03-23T02:22:30Z
Jayden
3
wikitext
text/x-wiki
'''Hammermage''' ([[File:Hammermage icon.svg|18px]]) is a [[faction]] which specialises in using magic weapons in [[combat]].
{{Classes}}
f8bf2d1ec829eb6be6ceb61e871674e69d17b139
Factions
0
72
818
773
2024-03-23T02:23:16Z
Jayden
3
/* Classes */
wikitext
text/x-wiki
[[File:Factions.jpg|thumb|right|Examples of the three factions.]]
'''Factions''' in [[Brighter Shores]] allow the [[player]] to specialise in using a specific [[combat]] style.
==Classes==
* The [[Cryoknight]] ([[File:Cryoknight icon.svg|18px]]) faction is focused on melee combat, using weapons like [[sword]]s alongside a [[shield]]
* [[Guardian]]s ([[File:Guardian icon.svg|18px]]) use ranged combat, preferring to wield weapons like [[crossbow]]s
* The [[Hammermage]] ([[File:Hammermage icon.svg|18px]]) faction fights using a mix of melee and magic
{{Factions}}
{{Mechanics}}
fdaa168145b31986fcec5fa48849733121b02f7f
819
818
2024-03-23T02:23:22Z
Jayden
3
wikitext
text/x-wiki
[[File:Factions.jpg|thumb|right|Examples of the three factions.]]
'''Factions''' in [[Brighter Shores]] allow the [[player]] to specialise in using a specific [[combat]] style.
==Factions==
* The [[Cryoknight]] ([[File:Cryoknight icon.svg|18px]]) faction is focused on melee combat, using weapons like [[sword]]s alongside a [[shield]]
* [[Guardian]]s ([[File:Guardian icon.svg|18px]]) use ranged combat, preferring to wield weapons like [[crossbow]]s
* The [[Hammermage]] ([[File:Hammermage icon.svg|18px]]) faction fights using a mix of melee and magic
{{Factions}}
{{Mechanics}}
7a0c4fd272b732a0666f8dc4629760aadfdc2cb2
Template:Factions
10
190
820
539
2024-03-23T02:25:17Z
Jayden
3
wikitext
text/x-wiki
{{Navbox
|name = Factions
|title = [[Factions]]
|style1 = text-align:center
|group1 =
* [[File:Cryoknight icon.svg|18px]] [[Cryoknight]]
* [[File:Guardian icon.svg|18px]] [[Guardian]]
* [[File:Hammermage icon.svg|18px]] [[Hammermage]]
}}{{Ctg|Factions}}
c2dc2e02915258b5278d7867ad3e4d1040bc509e
Combat
0
191
823
718
2024-03-23T04:12:23Z
Omnes Ferant
23
link
wikitext
text/x-wiki
[[File:Equipment.jpg|thumb|right|A preview of player in combat.]]
'''Combat''' is a mechanic in [[Brighter Shores]] in which several [[player]]s or [[monsters]] fight. Depending on the [[class]] that is being used, player combat can utilise melee, ranged, or magic.
{{Mechanics}}
21208dd96cb1cddf670c80f76647856dcc95a2e3
Barricade guard
0
475
824
2024-03-23T04:23:07Z
Omnes Ferant
23
Created page with "'''Barricade guard''' is an NPC that guards the [[Barricades]]. The player must talk to [[Captain Jal Degreene]] as part of a quest in order to be allowed through. [[Category:NPCs]]"
wikitext
text/x-wiki
'''Barricade guard''' is an NPC that guards the [[Barricades]]. The player must talk to [[Captain Jal Degreene]] as part of a quest in order to be allowed through.
[[Category:NPCs]]
d47d259eb775f7d963dd0a59b525226d722c986b
User:Sly
2
476
825
2024-03-23T06:17:06Z
Sly
39
Created blank page
wikitext
text/x-wiki
da39a3ee5e6b4b0d3255bfef95601890afd80709
Talk:Premium Pass
1
477
826
2024-03-23T13:09:12Z
Demonly
42
Created page with "Need to change the "It will not be a recurring subscription", as the latest images by andrew himself on twitter show-cases that it is indeed a time variant subscription. - https://twitter.com/AndrewCGower/status/1771227689514315873/photo/1 "365 days left", the article listed as source reference is older than that which andrew has posted on his twitter himself, with no additional clarification it is misleading to state one or the other."
wikitext
text/x-wiki
Need to change the "It will not be a recurring subscription", as the latest images by andrew himself on twitter show-cases that it is indeed a time variant subscription.
- https://twitter.com/AndrewCGower/status/1771227689514315873/photo/1
"365 days left", the article listed as source reference is older than that which andrew has posted on his twitter himself, with no additional clarification it is misleading to state one or the other.
50ecbd31f894b5bb82677d2d3ba4106260b87cda
Talk:Premium Pass
1
477
827
826
2024-03-23T13:10:08Z
Demonly
42
Blanked the page
wikitext
text/x-wiki
da39a3ee5e6b4b0d3255bfef95601890afd80709
828
827
2024-03-23T13:10:27Z
Demonly
42
/* Changing wiki page to reference latest tweet regarding subscription */ new section
wikitext
text/x-wiki
== Changing wiki page to reference latest tweet regarding subscription ==
I think we need to change the "It will not be a recurring subscription", as the latest images by andrew himself on twitter show-cases that it is indeed a time variant subscription. - https://twitter.com/AndrewCGower/status/1771227689514315873/photo/1
"365 days left", the article listed as source reference is older than that which andrew has posted on his twitter himself, with no additional clarification it is misleading to state one or the other.
4286f18fb238471b28c76ea0187ac48bb8261ea5
829
828
2024-03-23T13:20:31Z
Demonly
42
/* Changing wiki page to reference latest tweet regarding subscription */
wikitext
text/x-wiki
== Changing wiki page to reference latest tweet regarding subscription ==
I think we need to change the "It will not be a recurring subscription", as the latest images by andrew himself on twitter show-cases that it is indeed a time variant subscription. - https://twitter.com/AndrewCGower/status/1771227689514315873/photo/1
"365 days left", the article listed as source reference is older than that which andrew has posted on his twitter himself, with no additional clarification it is misleading to state one or the other.
To further quote the article:
"One of the key differences is we're probably not going to do auto-recurring payments," There is no reference to it not being a recurring premium pass, just no "auto-recurring payments" which is vastly different than having to purchase it every time you run out, this could also potential be a hint at there being a bond type system similar to runescape.
9eea1a07079394ce13f1c68068f023b1a3920bec
830
829
2024-03-23T13:22:09Z
Demonly
42
wikitext
text/x-wiki
== Changing wiki page to reference latest tweet regarding subscription ==
I think we need to change the "It will not be a recurring subscription", as the latest images by andrew himself on twitter show-cases that it is indeed a time variant subscription. - https://twitter.com/AndrewCGower/status/1771227689514315873/photo/1
"365 days left", the article listed as source reference is older than that which andrew has posted on his twitter himself, with no additional clarification it is misleading to state one or the other.
To further quote the article:
"One of the key differences is we're probably not going to do auto-recurring payments," There is no reference to it not being a recurring premium pass, just no "auto-recurring payments" which is vastly different than having to purchase it every time you run out, this could also potential be a hint at there being a bond type system similar to runescape, and further reading into the article "Everyone's got their millions of different streaming service subscriptions," Gower explains. "The Netflix subscriptions, Amazon Prime subscriptions, people are getting a certain degree of subscription fatigue. So we've decided to just make it a non-recurring payment. You can just buy a pass, get the premium, it's not like a commitment that you're then gonna have to pay that forever." still doesn't state anything about having to buy it again after time runs out. Just that it's not a commitment that you have to pay forever because he doesn't like how recurring subscriptions are setup to be predatory against people (they auto renew)
f3afb0a73e9d3d6557dcf621f4a9ffc3edcea19d
869
830
2024-03-23T14:30:29Z
Digitalspork
40
/* Changing wiki page to reference latest tweet regarding subscription */
wikitext
text/x-wiki
== Changing wiki page to reference latest tweet regarding subscription ==
I think we need to change the "It will not be a recurring subscription", as the latest images by andrew himself on twitter show-cases that it is indeed a time variant subscription. - https://twitter.com/AndrewCGower/status/1771227689514315873/photo/1
"365 days left", the article listed as source reference is older than that which andrew has posted on his twitter himself, with no additional clarification it is misleading to state one or the other.
To further quote the article:
"One of the key differences is we're probably not going to do auto-recurring payments," There is no reference to it not being a recurring premium pass, just no "auto-recurring payments" which is vastly different than having to purchase it every time you run out, this could also potential be a hint at there being a bond type system similar to runescape, and further reading into the article "Everyone's got their millions of different streaming service subscriptions," Gower explains. "The Netflix subscriptions, Amazon Prime subscriptions, people are getting a certain degree of subscription fatigue. So we've decided to just make it a non-recurring payment. You can just buy a pass, get the premium, it's not like a commitment that you're then gonna have to pay that forever." still doesn't state anything about having to buy it again after time runs out. Just that it's not a commitment that you have to pay forever because he doesn't like how recurring subscriptions are setup to be predatory against people (they auto renew)
// End of OP
Adding on to this, I absolutely agree that we should adjust how this is written or perhaps exclude it all together for now as it seems that we don't entirely know how it will function. It does appear that it will be a Premium '''Pass''' rather than some sort of renewing Subscription or Membership system, which leads me to the possibility that the Pass might be something that lasts 1 year versus potentially the design iteration in the interview being something that never expired at the time. Overall it's really hard to say with the information contradicting itself at this point and the game still being in development. --[[User:Digitalspork|Digitalspork (She/Her) ♡]] ([[User talk:Digitalspork|talk]]) 14:30, 23 March 2024 (UTC)
6ac2c974036aed226a8c05bea45d78702c10f363
Basic bacon
0
84
831
194
2024-03-23T13:34:36Z
ToofleBerry
6
Added infobox.
wikitext
text/x-wiki
{{Unofficial name}}
{{Infobox Item
|name=Basic bacon
|image=Item basic bacon.png
|release=
|episode=
|profession=[[Chef]]
|value=
}}
'''Basic bacon''' is a food that can be created using the [[Chef]] profession. It can be obtained by frying raw bacon in a kitchen.
[[Category:Items]]
d4c7edd4f86d94ac84706a1df44b594948bf8ca8
833
831
2024-03-23T13:36:34Z
ToofleBerry
6
ToofleBerry moved page [[Basic Bacon]] to [[Basic bacon]]: Capitalization.
wikitext
text/x-wiki
{{Unofficial name}}
{{Infobox Item
|name=Basic bacon
|image=Item basic bacon.png
|release=
|episode=
|profession=[[Chef]]
|value=
}}
'''Basic bacon''' is a food that can be created using the [[Chef]] profession. It can be obtained by frying raw bacon in a kitchen.
[[Category:Items]]
d4c7edd4f86d94ac84706a1df44b594948bf8ca8
Raw basic bacon
0
478
832
2024-03-23T13:36:06Z
ToofleBerry
6
Created page with "{{Unofficial name}} {{Infobox Item |name=Raw basic bacon |image=Item raw basic bacon.png |release= |episode= |profession=[[Chef]] |value= }} '''Raw basic bacon''' is an item that can be fried to [[basic bacon]] using the [[Chef]] profession. [[Category:Items]]"
wikitext
text/x-wiki
{{Unofficial name}}
{{Infobox Item
|name=Raw basic bacon
|image=Item raw basic bacon.png
|release=
|episode=
|profession=[[Chef]]
|value=
}}
'''Raw basic bacon''' is an item that can be fried to [[basic bacon]] using the [[Chef]] profession.
[[Category:Items]]
979d778e87c57be33520a229cc08bff24ef11223
Basic Bacon
0
479
834
2024-03-23T13:36:34Z
ToofleBerry
6
ToofleBerry moved page [[Basic Bacon]] to [[Basic bacon]]: Capitalization.
wikitext
text/x-wiki
#REDIRECT [[Basic bacon]]
c38471a0e7a87a3245441acecaf5ae5c97ffb95e
Brighter Shores:Lua
4
480
835
2024-03-23T13:39:39Z
Habblet
11
Created page with "'''Lua''' is a programming language that is integrated into the ''{{SITENAME}}'' with [[mw:Extension:Scribunto|Scribunto]]. Lua source code is run from Modules in their own namespace, and invoked with <code><nowiki>{{#invoke:Module|function}}</nowiki></code>; this should be done with a wrapper template. For example, if we have a module named "foo", then we should have a template called "Template:Foo" consisting of <code><nowiki>{{#invoke:Foo|main}}</nowiki></code> to cal..."
wikitext
text/x-wiki
'''Lua''' is a programming language that is integrated into the ''{{SITENAME}}'' with [[mw:Extension:Scribunto|Scribunto]]. Lua source code is run from Modules in their own namespace, and invoked with <code><nowiki>{{#invoke:Module|function}}</nowiki></code>; this should be done with a wrapper template. For example, if we have a module named "foo", then we should have a template called "Template:Foo" consisting of <code><nowiki>{{#invoke:Foo|main}}</nowiki></code> to call the module, and use <code><nowiki>{{Foo}}</nowiki></code> to use the module on pages.
For certain complex templates, Lua runs many times more efficiently than standard wikitext. It can also perform operations not available otherwise in wikitext. Unlike JavaScript, it is available to all readers, and does not need to be enabled. It is also run during parsing, rather than after.
All templates and modules should have a <code><nowiki>/doc</nowiki></code> page with at least {{t|Documentation}} or {{t|No documentation}} on it.
For an introductory guide to using Lua on the wiki see [[Help:Editing/Lua guide]].
==Helpful tips==
In order to produce Lua code that is free from bugs and to do so efficiently there's a few habits you should adopt as they will save you a lot of headaches.
===Use the debug console===
The debug console lets you test code while you're working on it. This saves you a lot of time. It also lets you avoid saving unecessary revisions just to see if your code is working. Instead you'll only be saving known working code after you're done with adding a feature. Don't wait too long though, in case your power or internet goes out.
You can test expressions such as: <pre>= 2+2</pre> which will return <pre>4</pre> as you'd expect.
You can also call into any function that is ''visible'' from outside. If you defined this function as part of for instance table p which you're then returning to Scribunto, you can call into this function from the debug console:
<syntaxhighlight lang='lua'>
local p = {}
function p.calculate(num)
return num + 2
end
return p
</syntaxhighlight>
<pre>= p.calculate(3)</pre> or <pre>mw.log( p.calculate(3) )</pre> yields <pre>5</pre>
If this function were instead returning a table you could inspect it like so:
<syntaxhighlight lang='lua'>
local p = {}
function p.calculate2(num)
return { num + 1, num + 2}
end
return p
</syntaxhighlight>
<pre>mw.logObject( p.calculate2(3) )</pre>
Sometimes you might not be interested in the output and only want to check if a function works. In the above example you could have used one of the following for that:
<pre>= #p.calculate2(3)</pre>
<pre>= type(p.calculate2(3))</pre>
Of course calling any Lua function from the outside, expects the function to only take one argument, the frame object, which we can't provide in the debug console, so we have to work around that. This is usually done by providing two entry-point functions, one which takes the frame object, grabs the arguments from it an passes it on to the ''real'' function like so:
<syntaxhighlight lang='lua'>
local p = {}
function p.calculate(frame)
local args = frame:getParent().args
return p._calculate(args)
end
function p._calculate(args)
local num = args[1]
return num + 2
end
return p
</syntaxhighlight>
Normal invocation of the module will use the p.calculate() function, but now you can debug the output from the real p._calculate() function in the debug console like so:
<pre>= p._calculate({3})</pre>
===Validate all input parameters===
Make sure to check all the input parameters you get from the entry point function, and do so early on. Invalid or unexpected data will cause your program to crash or misbehave.
===Don't repeat yourself (DRY)===
If your code has sections that look very similar there's a good chance it can be simplified. Always look for opportunities like this.
===Keep it simple stupid (KISS)===
Don't make something complicated if it doesn't need to be. Simpler code is easier to maintain. For instance maybe if you re-organized your data, it becomes much easier to handle in your code.
Also does the task at hand really need a Lua module? If the problem is simple enough maybe a template or a macro will work just as well.
===Avoid deep nesting===
If you have too many levels of indented code, that's a sign you need to break out some code and put it into functions.
===Comments===
Good commenting is basically describing what a chunk of code does, not how it works. Also do not comment every line, you should comment every function and every major block of code.
==See also==
* [[Wikipedia:Lua (programming language)]] and [[Wikipedia:Project:Lua]], for a more in-depth breakdown of the coding Language
* [[mw:Extension:Scribunto/Lua reference manual]], for the documentation of Lua as used by the Scribunto extension
* [{{fullurl:Special:AllPages|namespace=828&hideredirects=1}} Special:AllPages (namespace:Module)], for a list of all current modules
* [[Brighter Shores:Lua/Modules]], for a list of all modules, excluding Exchange and miscellaneous data pages
* [[Brighter Shores:Lua/Helper modules]], for a table of modules designed to facilitate writing other modules
* [[:Category:Lua-based templates]], for an index of templates that directly invoke Lua
* [[Special:PrefixIndex/Module:Sandbox/]], for a list of personal test modules
{{Editing guides}}
{{Lua guides}}
[[Category:Brighter Shores Wiki community|Lua]]
[[Category:Modules| ]]
[[Category:Lua-based templates| ]]
c401e4c2f1a5c90b90eaa0c98f411206deeb74ec
Category:Modules
14
481
836
2024-03-23T13:40:43Z
Habblet
11
Created page with "All [[BS:LUA|lua]] modules. Like [[:Category:Templates]], modules should not be in this category directly, but instead in one of the subcategories. [[Category:Brighter Shores Wiki community]]"
wikitext
text/x-wiki
All [[BS:LUA|lua]] modules.
Like [[:Category:Templates]], modules should not be in this category directly, but instead in one of the subcategories.
[[Category:Brighter Shores Wiki community]]
72981c43b15eb78b5fb06e44cf0466799dd08459
Brighter Shores:Lua/Helper modules
4
482
837
2024-03-23T13:42:07Z
Habblet
11
Created page with "This is a table of modules and functions that were created specifically for facilitating the creation of other modules. Documentation for modules here is done in the source code with [[Template:Helper module]]. In all below descriptions, optional arguments have square brackets around them with default values after a pipe, if appropriate. i.e. <code>foo( x, [y|1] )</code> means function foo has one required argument, and the second argument is optional and will default to..."
wikitext
text/x-wiki
This is a table of modules and functions that were created specifically for facilitating the creation of other modules. Documentation for modules here is done in the source code with [[Template:Helper module]]. In all below descriptions, optional arguments have square brackets around them with default values after a pipe, if appropriate. i.e. <code>foo( x, [y|1] )</code> means function foo has one required argument, and the second argument is optional and will default to 1.
<dpl>
namespace = Module
uses = Template:Helper module
titlematch = %/doc
nottitlematch = Helper module/doc
include = {Helper module}
format = <table class="wikitable sticky-header"><tr><th>Module</th><th>Function</th><th>Type</th><th>Use</th><th>Example</th></tr>,,,</table>
ordermethod=title
</dpl>
{{Lua guides}}
[[Category:Helper modules| ]]
8aa3d4373c70db3602bc54164342ecb106d56e8d
Category:Helper modules
14
483
838
2024-03-23T13:42:27Z
Habblet
11
Created page with "Modules that are designed to be used by other modules. See also [[Brighter Shores:Lua/Helper modules]]. [[Category:Modules]]"
wikitext
text/x-wiki
Modules that are designed to be used by other modules. See also [[Brighter Shores:Lua/Helper modules]].
[[Category:Modules]]
226a95fefc0206bee90b7d9c317daeedf76ac0f7
Brighter Shores:Protection policy
4
484
839
2024-03-23T13:45:56Z
Habblet
11
Created page with "{{Nutshell|Pages should remain fully editable unless there is considerable cause to warrant protection.}} {{Shortcut|BS:PP|BS:PROT|BS:PROTECT}} [[Brighter Shores:Administrators|Administrators]] can '''protect pages''' and unprotect pages. Full protection of a page or image means that a non-admin cannot modify it. The majority of pages on the wiki should remain publicly editable, and '''not protected'''. Pages may, however, be temporarily or permanently protected for le..."
wikitext
text/x-wiki
{{Nutshell|Pages should remain fully editable unless there is considerable cause to warrant protection.}}
{{Shortcut|BS:PP|BS:PROT|BS:PROTECT}}
[[Brighter Shores:Administrators|Administrators]] can '''protect pages''' and unprotect pages. Full protection of a page or image means that a non-admin cannot modify it.
The majority of pages on the wiki should remain publicly editable, and '''not protected'''. Pages may, however, be temporarily or permanently protected for legal reasons (for example, license texts should not be changed) or in cases of extreme vandalism or edit warring.
There are two kinds of protection:
* '''Full protection''' disables editing for everyone except other administrators.
* '''Semi-protection''' disables editing from IP addresses and accounts less than four days old.
All protections and unprotections are automatically logged in the [[Special:Log/protect|protection log]].
==Full protection==
* Pages with very high traffic (such as the [[Brighter Shores Wiki|Main Page]]).
* Maintaining the integrity of the [[:File:Wiki.png|site's logo]] and [[:File:Favicon.ico|favicon]].
* Protecting the interface and system messages in the [[Help:MediaWiki namespace|MediaWiki namespace]]. (These are protected automatically.)
* Talk pages of blocked users, if they abuse the ability to appeal their block.
* Templates that have a great potential for vandalism through their inclusion on many pages.
===Temporary===
* Editing disputes
* Persistent vandalism by registered users.
==Semi-protection==
'''Indefinite''' semi-protection may be used for:
* All templates and images transcluded in the [[Brighter Shores Wiki|Main Page]]
* User pages when requested by the user
* Archives
* Talkpages of AutoWikiBrowser bot accounts
'''Temporary''' semi-protection may be used for:
* Articles, talk pages, and images that are persistently vandalised by multiple users
There is no need to protect personal .css and .js pages such as "user/monobook.css" or "user/cologneblue.js". Only the accounts associated with these pages are able to edit them. (For more information on using these pages, see [[Help:User style]].)
==Unprotection==
Any administrator may unprotect any page after a reasonable period has lapsed, particularly a few days. Protection can also expire automatically if an expiry time is specified by the protecting administrator.
==Guidelines==
* Protecting pages pre-emptively is generally discouraged. Only protect when there is persistent vandalism coming from many IPs/accounts, or if there is an on-going edit war that is showing no signs of cooling down. Blocks should be used instead of protection whenever possible.
* Do not edit protected pages that are subject to dispute except to add a notice explaining the page's protection.
* Do not protect a page you are involved in a dispute over. Administrative rights are not editor privileges – administrators should only act as servants to the user community at large.
* Avoid favouring one version of the article over another, unless one version is factually incorrect or vandalism.
* Temporarily protected pages should generally not be left as such for very long. Expiry times should usually be used in these cases.
* Talk and user talk pages are not to be protected except in extreme circumstances. An exception applies to user talk pages for banned users that are being persistently abused.
* Protection is not an endorsement of the protected version. Do not edit a page protected in a dispute to change it to another version.
* To maintain the open nature of the wiki format, protection should be used sparingly. Always consider other options, such as blocks and dispute resolution, before resorting to protection. Whenever possible, use an expiry time to keep the page protected for as little time as possible.
[[Category:Policies|Protection policy]]
48f6ec72daf57447cbd28a6550fc4967a940d211
843
839
2024-03-23T13:52:30Z
Habblet
11
wikitext
text/x-wiki
{{Nutshell|Pages should remain fully editable unless there is considerable cause to warrant protection.}}
{{Shortcut|BS:PP|BS:PROT|BS:PROTECT}}
[[Brighter Shores:Administrators|Administrators]] can '''protect pages''' and unprotect pages. Full protection of a page or image means that a non-admin cannot modify it.
The majority of pages on the wiki should remain publicly editable, and '''not protected'''. Pages may, however, be temporarily or permanently protected for legal reasons (for example, license texts should not be changed) or in cases of extreme vandalism or edit warring.
There are two kinds of protection:
* '''Full protection''' disables editing for everyone except other administrators.
* '''Semi-protection''' disables editing from IP addresses and accounts less than four days old.
All protections and unprotections are automatically logged in the [[Special:Log/protect|protection log]].
==Full protection==
* Pages with very high traffic (such as the [[Brighter Shores Wiki|Main Page]]).
* Maintaining the integrity of the [[:File:Wiki.png|site's logo]] and [[:File:Favicon.ico|favicon]].
* Protecting the interface and system messages in the [[Help:MediaWiki namespace|MediaWiki namespace]]. (These are protected automatically.)
* Talk pages of blocked users, if they abuse the ability to appeal their block.
* Templates that have a great potential for vandalism through their inclusion on many pages.
===Temporary===
* Editing disputes
* Persistent vandalism by registered users.
==Semi-protection==
'''Indefinite''' semi-protection may be used for:
* All templates and images transcluded in the [[Brighter Shores Wiki|Main Page]]
* User pages when requested by the user
* Archives
* Talkpages of AutoWikiBrowser bot accounts
'''Temporary''' semi-protection may be used for:
* Articles, talk pages, and images that are persistently vandalised by multiple users
There is no need to protect personal .css and .js pages such as "user/monobook.css" or "user/cologneblue.js". Only the accounts associated with these pages are able to edit them. (For more information on using these pages, see [[Help:User style]].)
==Unprotection==
Any administrator may unprotect any page after a reasonable period has lapsed, particularly a few days. Protection can also expire automatically if an expiry time is specified by the protecting administrator.
==Guidelines==
* Protecting pages pre-emptively is generally discouraged. Only protect when there is persistent vandalism coming from many IPs/accounts, or if there is an on-going edit war that is showing no signs of cooling down. Blocks should be used instead of protection whenever possible.
* Do not edit protected pages that are subject to dispute except to add a notice explaining the page's protection.
* Do not protect a page you are involved in a dispute over. Administrative rights are not editor privileges – administrators should only act as servants to the user community at large.
* Avoid favouring one version of the article over another, unless one version is factually incorrect or vandalism.
* Temporarily protected pages should generally not be left as such for very long. Expiry times should usually be used in these cases.
* Talk and user talk pages are not to be protected except in extreme circumstances. An exception applies to user talk pages for banned users that are being persistently abused.
* Protection is not an endorsement of the protected version. Do not edit a page protected in a dispute to change it to another version.
* To maintain the open nature of the wiki format, protection should be used sparingly. Always consider other options, such as blocks and dispute resolution, before resorting to protection. Whenever possible, use an expiry time to keep the page protected for as little time as possible.
[[Category:Policies & Guidelines]]
29d176634873214449a241bd17e03e4f14c9055d
Template:Nutshell
10
485
840
2024-03-23T13:47:24Z
Habblet
11
Created page with "{{MessageBox |img = [[File:Bronze coin.png|center|link=]] |{{{title|This page}}} in a nutshell: |{{#if:{{{2|}}} |*{{{1}}} *{{{2}}}{{#if:{{{3|}}}| *{{{3}}} }}|{{{1}}}}} }}<noinclude>{{/doc}}</noinclude>"
wikitext
text/x-wiki
{{MessageBox
|img = [[File:Bronze coin.png|center|link=]]
|{{{title|This page}}} in a nutshell:
|{{#if:{{{2|}}}
|*{{{1}}}
*{{{2}}}{{#if:{{{3|}}}|
*{{{3}}}
}}|{{{1}}}}}
}}<noinclude>{{/doc}}</noinclude>
83d09117d9da24d2a89c198ad7e5c9b13c3ea3dd
Template:Nutshell/doc
10
486
841
2024-03-23T13:48:35Z
Habblet
11
Created page with "{{Documentation}} This template displays an notification about the basics of the page. ==Usage== This template can be used by entering the following onto a relevant page. <pre>{{Nutshell|First bullet point|Second bullet point|Third bullet point}}</pre> ==Bullet points== These parameters are replaced by the text that will describe the page. Only one of these is absolutely necessary. ==Template notes== * Use the nutshell summary to make the Brighter Shores Wiki more in..."
wikitext
text/x-wiki
{{Documentation}}
This template displays an notification about the basics of the page.
==Usage==
This template can be used by entering the following onto a relevant page.
<pre>{{Nutshell|First bullet point|Second bullet point|Third bullet point}}</pre>
==Bullet points==
These parameters are replaced by the text that will describe the page. Only one of these is absolutely necessary.
==Template notes==
* Use the nutshell summary to make the Brighter Shores Wiki more inviting to [[Wikipedia:Welcoming committee|new users]]
* Nutshell entries must be brief overviews, with a very high [[wikipedia:Signal-to-noise ratio#Informal use|signal-to-noise ratio]]
* Make sure each word in the nutshell carries significant weight
* Wikilink key words to other [[Wikipedia:Policies and guidelines|policy and guideline]] pages to create a "nut trail"
<includeonly>[[Category:Message box templates|{{PAGENAME}}]]</includeonly>
c86aaa7710e9676ce4097f03d1253c1d2d758329
Category:Policies & Guidelines
14
487
842
2024-03-23T13:51:49Z
Habblet
11
Created page with "{{Categoryheader|pages|[[Brighter Shores Wiki]]'s policies and guidelines. They should always be adhered to. If you disagree with any of them, feel free to discuss them on their respective talk pages.||}} [[Category:Brighter Shores Wiki community]]"
wikitext
text/x-wiki
{{Categoryheader|pages|[[Brighter Shores Wiki]]'s policies and guidelines. They should always be adhered to. If you disagree with any of them, feel free to discuss them on their respective talk pages.||}}
[[Category:Brighter Shores Wiki community]]
6eaab344bdc23cc3790f0e6039d14ea2fafe26a1
Brighter Shores:Shortcut
4
488
844
2024-03-23T13:54:09Z
Habblet
11
Created page with "{{Shortcut|BS:SC|BS:SHORT}} A '''shortcut''' is a specialised type of [[Brighter Shores:Redirecting|redirect page]] that provides an abbreviated wikilink to a project page or one of its sections, usually from the Brighter Shores: [[Help:Namespace|namespace]]. If there is a shortcut for a page or section, it is usually displayed in an information box labelled 'shortcuts:', as seen at the right side of this page. See [[Template:Shortcut]] for instructions on how to create..."
wikitext
text/x-wiki
{{Shortcut|BS:SC|BS:SHORT}}
A '''shortcut''' is a specialised type of [[Brighter Shores:Redirecting|redirect page]] that provides an abbreviated wikilink to a project page or one of its sections, usually from the Brighter Shores: [[Help:Namespace|namespace]]. If there is a shortcut for a page or section, it is usually displayed in an information box labelled 'shortcuts:', as seen at the right side of this page. See [[Template:Shortcut]] for instructions on how to create shortcuts.
[[Category:Brighter Shores Wiki community]]
84cd3e28ba96a07216659a590755ef17513f82ae
2024
0
489
845
2024-03-23T13:56:36Z
Habblet
11
Created page with "'''2024''' is the 14<sup>th</sup> anniversary of the formation of [[Fen Research]] and the year of release of ''[[Brighter Shores]]''. {{Timeline}}"
wikitext
text/x-wiki
'''2024''' is the 14<sup>th</sup> anniversary of the formation of [[Fen Research]] and the year of release of ''[[Brighter Shores]]''.
{{Timeline}}
493107277cd25f364a5f0c157f5df5866da5941c
Template:Timeline
10
490
846
2024-03-23T13:58:20Z
Habblet
11
Created page with "{{Navbox |name = Timeline |title = ''Brighter Shores'' timeline |gtitle1 = 2010s |group1 = * [[2010]] |gtitle2 = 2020s |group2 = * [[2024]] |gtitle3 = Other |group3 = * [[Upcoming updates]] * [[Hidden updates]] * [[Calendar]] * [[:Category:Dates in Brighter Shores|Dates in Brighter Shores]] }}{{Ctg|Dates in Brighter Shores::ifmatches[199][200][201]}}"
wikitext
text/x-wiki
{{Navbox
|name = Timeline
|title = ''Brighter Shores'' timeline
|gtitle1 = 2010s
|group1 =
* [[2010]]
|gtitle2 = 2020s
|group2 =
* [[2024]]
|gtitle3 = Other
|group3 =
* [[Upcoming updates]]
* [[Hidden updates]]
* [[Calendar]]
* [[:Category:Dates in Brighter Shores|Dates in Brighter Shores]]
}}{{Ctg|Dates in Brighter Shores::ifmatches[199][200][201]}}
9a545f5076606f82f16c4485082d27cc44439b80
854
846
2024-03-23T14:11:29Z
Habblet
11
wikitext
text/x-wiki
{{Navbox
|name = Timeline
|title = ''Brighter Shores'' timeline
|gtitle1 = 2010s
|group1 =
* [[2010]]
|gtitle2 = 2020s
|group2 =
* [[2024]]
|gtitle3 = Other
|group3 =
* [[Upcoming updates]]
* [[Hidden updates]]
* [[:Category:Dates in Brighter Shores|Dates in Brighter Shores]]
}}{{Ctg|Dates in Brighter Shores::ifmatches[199][200][201]}}
91b5f602c6b6f8113d9211dbed724df24a721f71
858
854
2024-03-23T14:15:50Z
Habblet
11
wikitext
text/x-wiki
{{Navbox
|name = Timeline
|title = ''Brighter Shores'' timeline
|gtitle1 = 2010s
|group1 =
* [[2010]]
|gtitle2 = 2020s
|group2 =
* [[2024]]
|gtitle3 = Other
|group3 =
* [[Upcoming updates]]
* [[Hidden updates]]
* [[:Category:Dates in Brighter Shores|Dates in Brighter Shores]]
}}{{Ctg|Timeline}}
cdf2b52067592f1144c910d5e87b0f17093a5d53
Template:NA
10
491
847
2024-03-23T14:01:53Z
Habblet
11
Created page with "<includeonly>class="table-na nohighlight" style="text-align: {{{align|center}}}; {{{style|}}};" {{#if:{{{data-sort|}}}|data-sort-value="{{{data-sort}}}"|}} {{#if:{{{colspan|}}}|colspan={{{colspan}}}}} {{#if:{{{rowspan|}}}|rowspan={{{rowspan}}}}}<!-- -->| <small>{{{1|N/A}}}</small></includeonly><noinclude>{{/doc}}</noinclude>"
wikitext
text/x-wiki
<includeonly>class="table-na nohighlight" style="text-align: {{{align|center}}}; {{{style|}}};" {{#if:{{{data-sort|}}}|data-sort-value="{{{data-sort}}}"|}} {{#if:{{{colspan|}}}|colspan={{{colspan}}}}} {{#if:{{{rowspan|}}}|rowspan={{{rowspan}}}}}<!--
-->| <small>{{{1|N/A}}}</small></includeonly><noinclude>{{/doc}}</noinclude>
ed61ed44168991085a44ab4301eeaaeb128ae1c4
Template:NA/doc
10
492
848
2024-03-23T14:02:34Z
Habblet
11
Created page with "{{Documentation}} This template displays a table cell with the provided text, or the letters "N/A" if no text is provided. The contents of the cell will be center-aligned unless the optional <code>align</code> parameter is used to specify otherwise. The styling can be further customised using the optional <code>style</code> parameter. The optional <code>data-sort</code> parameter can be used to provide a value used for sorting within the table. ==Usage== This template..."
wikitext
text/x-wiki
{{Documentation}}
This template displays a table cell with the provided text, or the letters "N/A" if no text is provided.
The contents of the cell will be center-aligned unless the optional <code>align</code> parameter is used to specify otherwise. The styling can be further customised using the optional <code>style</code> parameter. The optional <code>data-sort</code> parameter can be used to provide a value used for sorting within the table.
==Usage==
This template can be used by entering the following onto a relevant page, within a table cell.
<pre>{{NA}}</pre>
{| class="wikitable"
!{{NA}}
!Y
!N
|-
|Y||Y||Y
|-
|N||Y||{{NA}}
|}
===colspan===
Use this parameter to adjust the column width.
===rowspan===
Use this parameter to adjust the row height.
<pre>{{NA|colspan=2|rowspan=2}}</pre>
{| class="wikitable"
!Y
!{{NA}}
! colspan="2" |N
|-
|Y||Y||Y||Y
|-
| rowspan="2" |N||Y||{{NA|colspan=2|rowspan=2}}
|-
|Y
|}
===text===
Use may also change the text presented simply by doing the following:
<pre>{{NA|Perhaps}}</pre>
{| class="wikitable"
!{{NA}}
!Y
!N
|-
|Y||Y||Y
|-
|N||Y||{{NA|Perhaps}}
|}
===style===
Allows adding arbitrary inline CSS to the cell.
<pre>{{NA|style=text-align:left;}} {{NA|style=text-align:right;}}</pre>
{| class="wikitable"
!Q wider
!Y wider
!N wider
|-
|Y||Y||Y
|-
|N||{{NA|style=text-align:left;}}||{{NA|style=text-align:right;}}
|}
===data-sort===
Allows setting a specific sort value for the cell in sortable tables.
<pre>{{NA|data-sort=zz}}</pre>
{| class="wikitable sortable"
!{{NA}}
!Y
!N
|-
|Y||Y||Y
|-
|N||Y||{{NA|data-sort=zz}}
|-
|{{NA}}||N||N
|}
Note how the NA in column 1 (which has no <code>data-sort</code>) is sorted after N, while the NA in column 3 (with <code>data-sort="zz"</code>) is sorted after Y.
==See also==
* {{t|Okay}} and {{t|Not okay}}
* {{t|Yes}} and {{t|No}}
* {{t|NA}}
* {{t|NoBorder}}
<includeonly>[[Category:Formatting templates|{{PAGENAME}}]]</includeonly>
d70ed77cb161c6470f842f4c63f150c2ef602cdb
Template:Future
10
493
849
2024-03-23T14:05:10Z
Habblet
11
Created page with "{{MessageBox |img = [[File:Unknown episode icon.png|link=|center]] |This article or section contains information about a scheduled [[Upcoming updates|future release or update]]. |The information is subject to change. As the wiki is not [[BS:CRYSTAL|a crystal ball]], this article should consist only of facts included in official Fen Research releases and ''not'' speculation. }}{{Mainonly|[[Category:Future content]]}}<noinclude>{{/doc}}</noinclude>"
wikitext
text/x-wiki
{{MessageBox
|img = [[File:Unknown episode icon.png|link=|center]]
|This article or section contains information about a scheduled [[Upcoming updates|future release or update]].
|The information is subject to change. As the wiki is not [[BS:CRYSTAL|a crystal ball]], this article should consist only of facts included in official Fen Research releases and ''not'' speculation.
}}{{Mainonly|[[Category:Future content]]}}<noinclude>{{/doc}}</noinclude>
bd1c6affd3316589c3443a0f31821034fe9b4f9b
Template:Future/doc
10
494
850
2024-03-23T14:05:29Z
Habblet
11
Created page with "{{Documentation}} This template displays a note that the page has information on a future release and a disclaimer that the information is subject to change. ==Usage== This template can be used by entering the following onto a page. It automatically includes [[:Category:Future content]] to the page. <pre>{{Future}}</pre> <includeonly>[[Category:Message box templates|{{PAGENAME}}]]</includeonly>"
wikitext
text/x-wiki
{{Documentation}}
This template displays a note that the page has information on a future release and a disclaimer that the information is subject to change.
==Usage==
This template can be used by entering the following onto a page. It automatically includes [[:Category:Future content]] to the page.
<pre>{{Future}}</pre>
<includeonly>[[Category:Message box templates|{{PAGENAME}}]]</includeonly>
cfc8b51f904d19e54d10ff8b6ecaf4d97895602f
Category:Future content
14
495
851
2024-03-23T14:06:22Z
Habblet
11
Created page with "{{Categoryheader|pages|future content. These are content updates that have not yet happened, but which are expected or scheduled to happen at some time in the future. Articles are automatically added to this category if they contain {{t|Future}}. Note that this is intended to refer only to future updates that have been officially announced by [[Fen Research]], and should not be used to document speculation. Brighter Shores:The Wiki is not...#... a crystal ball|The Bri..."
wikitext
text/x-wiki
{{Categoryheader|pages|future content. These are content updates that have not yet happened, but which are expected or scheduled to happen at some time in the future. Articles are automatically added to this category if they contain {{t|Future}}.
Note that this is intended to refer only to future updates that have been officially announced by [[Fen Research]], and should not be used to document speculation. [[Brighter Shores:The Wiki is not...#... a crystal ball|The Brighter Shores Wiki is not a crystal ball]]||}}
[[Category:Content]]
a485d1a243fe58f98024982a42663a4485f61bae
Upcoming updates
0
496
852
2024-03-23T14:07:19Z
Habblet
11
Created page with "{{Future}} This page is a list of [[updates]] coming to ''[[Brighter Shores]]''. ==Schedule== ''The dates and specific order of the updates are based on official announcements and estimates from Fen Research. It is possible that an update will not be released within the listed time frame.'' ===2024=== {| class="wikitable" ! colspan="2" | Timeframe ! Update |- | colspan="2" | Q3 | Release of ''[[Brighter Shores]]''. |}"
wikitext
text/x-wiki
{{Future}}
This page is a list of [[updates]] coming to ''[[Brighter Shores]]''.
==Schedule==
''The dates and specific order of the updates are based on official announcements and estimates from Fen Research. It is possible that an update will not be released within the listed time frame.''
===2024===
{| class="wikitable"
! colspan="2" | Timeframe
! Update
|-
| colspan="2" | Q3
| Release of ''[[Brighter Shores]]''.
|}
04bba2b4a9d8556a991242b17328dcf3fccc2067
Hidden updates
0
497
853
2024-03-23T14:09:52Z
Habblet
11
Created page with "'''Hidden updates''' are [[updates]] which are not mentioned in the ''Brighter Shores'' news. There are small updates and bug fixes which are too trivial to announce and should be documented here as they are found. This page lists hidden updates for {{CURRENTYEAR}}."
wikitext
text/x-wiki
'''Hidden updates''' are [[updates]] which are not mentioned in the ''Brighter Shores'' news. There are small updates and bug fixes which are too trivial to announce and should be documented here as they are found.
This page lists hidden updates for {{CURRENTYEAR}}.
905d533fbc74a183be770b8f8d85e69ef164d27e
Category:Dates in Brighter Shores
14
498
855
2024-03-23T14:12:51Z
Habblet
11
Created page with "{{Categoryheader|pages|dates in ''Brighter Shores''||static=no}} {| class="wikitable" align="center" width="75%" ! Events in ''Brighter Shores'' listed by year |- | align=center | [[2010]] – [[2024]] |} {| class="wikitable" align="center" width="75%" ! colspan="32" | Events in ''Brighter Shores'' listed by date |- style="font-size:75%" |'''Jan''' |[[1 January|1]] |[[2 January|2]] |[[3 January|3]] |[[4 January|4]] |[[5 January|5]] |[[6 January|6]] |[[7 January|7]..."
wikitext
text/x-wiki
{{Categoryheader|pages|dates in ''Brighter Shores''||static=no}}
{| class="wikitable" align="center" width="75%"
! Events in ''Brighter Shores'' listed by year
|-
| align=center | [[2010]] – [[2024]]
|}
{| class="wikitable" align="center" width="75%"
! colspan="32" | Events in ''Brighter Shores'' listed by date
|- style="font-size:75%"
|'''Jan'''
|[[1 January|1]]
|[[2 January|2]]
|[[3 January|3]]
|[[4 January|4]]
|[[5 January|5]]
|[[6 January|6]]
|[[7 January|7]]
|[[8 January|8]]
|[[9 January|9]]
|[[10 January|10]]
|[[11 January|11]]
|[[12 January|12]]
|[[13 January|13]]
|[[14 January|14]]
|[[15 January|15]]
|[[16 January|16]]
|[[17 January|17]]
|[[18 January|18]]
|[[19 January|19]]
|[[20 January|20]]
|[[21 January|21]]
|[[22 January|22]]
|[[23 January|23]]
|[[24 January|24]]
|[[25 January|25]]
|[[26 January|26]]
|[[27 January|27]]
|[[28 January|28]]
|[[29 January|29]]
|[[30 January|30]]
|[[31 January|31]]
|- style="font-size:75%"
|'''Feb'''
|[[1 February|1]]
|[[2 February|2]]
|[[3 February|3]]
|[[4 February|4]]
|[[5 February|5]]
|[[6 February|6]]
|[[7 February|7]]
|[[8 February|8]]
|[[9 February|9]]
|[[10 February|10]]
|[[11 February|11]]
|[[12 February|12]]
|[[13 February|13]]
|[[14 February|14]]
|[[15 February|15]]
|[[16 February|16]]
|[[17 February|17]]
|[[18 February|18]]
|[[19 February|19]]
|[[20 February|20]]
|[[21 February|21]]
|[[22 February|22]]
|[[23 February|23]]
|[[24 February|24]]
|[[25 February|25]]
|[[26 February|26]]
|[[27 February|27]]
|[[28 February|28]]
|[[29 February|29]]
|- style="font-size:75%"
|'''Mar'''
|[[1 March|1]]
|[[2 March|2]]
|[[3 March|3]]
|[[4 March|4]]
|[[5 March|5]]
|[[6 March|6]]
|[[7 March|7]]
|[[8 March|8]]
|[[9 March|9]]
|[[10 March|10]]
|[[11 March|11]]
|[[12 March|12]]
|[[13 March|13]]
|[[14 March|14]]
|[[15 March|15]]
|[[16 March|16]]
|[[17 March|17]]
|[[18 March|18]]
|[[19 March|19]]
|[[20 March|20]]
|[[21 March|21]]
|[[22 March|22]]
|[[23 March|23]]
|[[24 March|24]]
|[[25 March|25]]
|[[26 March|26]]
|[[27 March|27]]
|[[28 March|28]]
|[[29 March|29]]
|[[30 March|30]]
|[[31 March|31]]
|- style="font-size:75%"
|'''Apr'''
|[[1 April|1]]
|[[2 April|2]]
|[[3 April|3]]
|[[4 April|4]]
|[[5 April|5]]
|[[6 April|6]]
|[[7 April|7]]
|[[8 April|8]]
|[[9 April|9]]
|[[10 April|10]]
|[[11 April|11]]
|[[12 April|12]]
|[[13 April|13]]
|[[14 April|14]]
|[[15 April|15]]
|[[16 April|16]]
|[[17 April|17]]
|[[18 April|18]]
|[[19 April|19]]
|[[20 April|20]]
|[[21 April|21]]
|[[22 April|22]]
|[[23 April|23]]
|[[24 April|24]]
|[[25 April|25]]
|[[26 April|26]]
|[[27 April|27]]
|[[28 April|28]]
|[[29 April|29]]
|[[30 April|30]]
|- style="font-size:75%"
|'''May'''
|[[1 May|1]]
|[[2 May|2]]
|[[3 May|3]]
|[[4 May|4]]
|[[5 May|5]]
|[[6 May|6]]
|[[7 May|7]]
|[[8 May|8]]
|[[9 May|9]]
|[[10 May|10]]
|[[11 May|11]]
|[[12 May|12]]
|[[13 May|13]]
|[[14 May|14]]
|[[15 May|15]]
|[[16 May|16]]
|[[17 May|17]]
|[[18 May|18]]
|[[19 May|19]]
|[[20 May|20]]
|[[21 May|21]]
|[[22 May|22]]
|[[23 May|23]]
|[[24 May|24]]
|[[25 May|25]]
|[[26 May|26]]
|[[27 May|27]]
|[[28 May|28]]
|[[29 May|29]]
|[[30 May|30]]
|[[31 May|31]]
|- style="font-size:75%"
|'''Jun'''
|[[1 June|1]]
|[[2 June|2]]
|[[3 June|3]]
|[[4 June|4]]
|[[5 June|5]]
|[[6 June|6]]
|[[7 June|7]]
|[[8 June|8]]
|[[9 June|9]]
|[[10 June|10]]
|[[11 June|11]]
|[[12 June|12]]
|[[13 June|13]]
|[[14 June|14]]
|[[15 June|15]]
|[[16 June|16]]
|[[17 June|17]]
|[[18 June|18]]
|[[19 June|19]]
|[[20 June|20]]
|[[21 June|21]]
|[[22 June|22]]
|[[23 June|23]]
|[[24 June|24]]
|[[25 June|25]]
|[[26 June|26]]
|[[27 June|27]]
|[[28 June|28]]
|[[29 June|29]]
|[[30 June|30]]
|- style="font-size:75%"
|'''Jul'''
|[[1 July|1]]
|[[2 July|2]]
|[[3 July|3]]
|[[4 July|4]]
|[[5 July|5]]
|[[6 July|6]]
|[[7 July|7]]
|[[8 July|8]]
|[[9 July|9]]
|[[10 July|10]]
|[[11 July|11]]
|[[12 July|12]]
|[[13 July|13]]
|[[14 July|14]]
|[[15 July|15]]
|[[16 July|16]]
|[[17 July|17]]
|[[18 July|18]]
|[[19 July|19]]
|[[20 July|20]]
|[[21 July|21]]
|[[22 July|22]]
|[[23 July|23]]
|[[24 July|24]]
|[[25 July|25]]
|[[26 July|26]]
|[[27 July|27]]
|[[28 July|28]]
|[[29 July|29]]
|[[30 July|30]]
|[[31 July|31]]
|- style="font-size:75%"
|'''Aug'''
|[[1 August|1]]
|[[2 August|2]]
|[[3 August|3]]
|[[4 August|4]]
|[[5 August|5]]
|[[6 August|6]]
|[[7 August|7]]
|[[8 August|8]]
|[[9 August|9]]
|[[10 August|10]]
|[[11 August|11]]
|[[12 August|12]]
|[[13 August|13]]
|[[14 August|14]]
|[[15 August|15]]
|[[16 August|16]]
|[[17 August|17]]
|[[18 August|18]]
|[[19 August|19]]
|[[20 August|20]]
|[[21 August|21]]
|[[22 August|22]]
|[[23 August|23]]
|[[24 August|24]]
|[[25 August|25]]
|[[26 August|26]]
|[[27 August|27]]
|[[28 August|28]]
|[[29 August|29]]
|[[30 August|30]]
|[[31 August|31]]
|- style="font-size:75%"
|'''Sep'''
|[[1 September|1]]
|[[2 September|2]]
|[[3 September|3]]
|[[4 September|4]]
|[[5 September|5]]
|[[6 September|6]]
|[[7 September|7]]
|[[8 September|8]]
|[[9 September|9]]
|[[10 September|10]]
|[[11 September|11]]
|[[12 September|12]]
|[[13 September|13]]
|[[14 September|14]]
|[[15 September|15]]
|[[16 September|16]]
|[[17 September|17]]
|[[18 September|18]]
|[[19 September|19]]
|[[20 September|20]]
|[[21 September|21]]
|[[22 September|22]]
|[[23 September|23]]
|[[24 September|24]]
|[[25 September|25]]
|[[26 September|26]]
|[[27 September|27]]
|[[28 September|28]]
|[[29 September|29]]
|[[30 September|30]]
|- style="font-size:75%"
|'''Oct'''
|[[1 October|1]]
|[[2 October|2]]
|[[3 October|3]]
|[[4 October|4]]
|[[5 October|5]]
|[[6 October|6]]
|[[7 October|7]]
|[[8 October|8]]
|[[9 October|9]]
|[[10 October|10]]
|[[11 October|11]]
|[[12 October|12]]
|[[13 October|13]]
|[[14 October|14]]
|[[15 October|15]]
|[[16 October|16]]
|[[17 October|17]]
|[[18 October|18]]
|[[19 October|19]]
|[[20 October|20]]
|[[21 October|21]]
|[[22 October|22]]
|[[23 October|23]]
|[[24 October|24]]
|[[25 October|25]]
|[[26 October|26]]
|[[27 October|27]]
|[[28 October|28]]
|[[29 October|29]]
|[[30 October|30]]
|[[31 October|31]]
|- style="font-size:75%"
|'''Nov'''
|[[1 November|1]]
|[[2 November|2]]
|[[3 November|3]]
|[[4 November|4]]
|[[5 November|5]]
|[[6 November|6]]
|[[7 November|7]]
|[[8 November|8]]
|[[9 November|9]]
|[[10 November|10]]
|[[11 November|11]]
|[[12 November|12]]
|[[13 November|13]]
|[[14 November|14]]
|[[15 November|15]]
|[[16 November|16]]
|[[17 November|17]]
|[[18 November|18]]
|[[19 November|19]]
|[[20 November|20]]
|[[21 November|21]]
|[[22 November|22]]
|[[23 November|23]]
|[[24 November|24]]
|[[25 November|25]]
|[[26 November|26]]
|[[27 November|27]]
|[[28 November|28]]
|[[29 November|29]]
|[[30 November|30]]
|- style="font-size:75%"
|'''Dec'''
|[[1 December|1]]
|[[2 December|2]]
|[[3 December|3]]
|[[4 December|4]]
|[[5 December|5]]
|[[6 December|6]]
|[[7 December|7]]
|[[8 December|8]]
|[[9 December|9]]
|[[10 December|10]]
|[[11 December|11]]
|[[12 December|12]]
|[[13 December|13]]
|[[14 December|14]]
|[[15 December|15]]
|[[16 December|16]]
|[[17 December|17]]
|[[18 December|18]]
|[[19 December|19]]
|[[20 December|20]]
|[[21 December|21]]
|[[22 December|22]]
|[[23 December|23]]
|[[24 December|24]]
|[[25 December|25]]
|[[26 December|26]]
|[[27 December|27]]
|[[28 December|28]]
|[[29 December|29]]
|[[30 December|30]]
|[[31 December|31]]
|}
[[Category:Updates]]
0416a20095bbaf6028366d04b815db693c4bf7e3
Category:Updates
14
499
856
2024-03-23T14:14:12Z
Habblet
11
Created page with "{{Categoryheader|pages, images, and subcategories|any materials about ''[[Brighter Shores]]'' updates pertaining to either the game client, the ''Brighter Shores'' website, or the ''Brighter Shores'' community, whether they are in the form of front page updates, developer blogs, patch notes, and any updates no longer kept on the ''Brighter Shores'' website|yes|[[Template:Updates]]}} [[Category:Content]] [[Category:Game info]]"
wikitext
text/x-wiki
{{Categoryheader|pages, images, and subcategories|any materials about ''[[Brighter Shores]]'' updates pertaining to either the game client, the ''Brighter Shores'' website, or the ''Brighter Shores'' community, whether they are in the form of front page updates, developer blogs, patch notes, and any updates no longer kept on the ''Brighter Shores'' website|yes|[[Template:Updates]]}}
[[Category:Content]]
[[Category:Game info]]
07027ef8cca83c8c3450573b3ea1d5c0021b0ea1
Category:Game info
14
500
857
2024-03-23T14:14:37Z
Habblet
11
Created page with "{{Categoryheader|pages|game information that does not fit in the [[:Category:Content|content categories]]||}} [[Category:Content]]"
wikitext
text/x-wiki
{{Categoryheader|pages|game information that does not fit in the [[:Category:Content|content categories]]||}}
[[Category:Content]]
82769e2363a58588e3003336640f40ee242c2f80
Category:Timeline
14
501
859
2024-03-23T14:16:50Z
Habblet
11
Created page with "{{Categoryheader|pages|''[[Brighter Shores]]''<nowiki/>'s timeline|yes|[[Template:Timeline]]}} [[Category:Game info]]"
wikitext
text/x-wiki
{{Categoryheader|pages|''[[Brighter Shores]]''<nowiki/>'s timeline|yes|[[Template:Timeline]]}}
[[Category:Game info]]
2222004cffa6b0538edbd16ba450250d8a3de111
2010
0
502
860
2024-03-23T14:17:48Z
Habblet
11
Created page with "'''2010''' is the year of formation of [[Fen Research]]. {{Timeline}}"
wikitext
text/x-wiki
'''2010''' is the year of formation of [[Fen Research]].
{{Timeline}}
b3ab55187ef608b38a8c10762729656f8973733a
Module:Navbox/doc
828
503
861
2024-03-23T14:18:42Z
Habblet
11
Created page with "{{No documentation}}"
wikitext
text/x-wiki
{{No documentation}}
ad36a615c98d03e22b03ecaa7b9d7d87b5d7b517
Module:Navbox
828
98
862
157
2024-03-23T14:19:46Z
Habblet
11
Scribunto
text/plain
-- <nowiki>
--
-- Implements {{navbox}}
--
local p = {}
local tnavbar = require( 'Module:Tnavbar' )
local yesno = require( 'Module:Yesno' )
local page_title = mw.title.getCurrentTitle().fullText
--
-- Helper for inserting a new row into the navbox
--
-- @param tbl {mw.html table}
-- @return tbl {mw.html table}
--
local function insertRow( tbl )
return tbl:tag( 'tr' )
end
--
-- Creates the navbox table
--
-- @param args {table}
-- @return tbl {mw.html table}
--
local function createTbl( args )
local tbl = mw.html.create( 'table' )
tbl
:addClass( yesno(args.subgroup, false) and 'navbox-subgroup' or 'navbox' )
:addClass( 'nowraplinks' )
if not yesno(args.subgroup, false) and
( args.state == 'collapsed' or
args.state == 'uncollapsed' or
args.state == 'autocollapse' or
-- defaults to autocollapse
args.state == nil )
then
tbl:addClass( 'mw-collapsible' )
if args.state == 'collapsed' then
tbl:addClass( 'mw-collapsed' )
elseif args.state == 'uncollapsed' then
tbl:addClass('navbox-uncollapsed')
else
tbl:addClass( 'mw-collapsed' )
tbl:addClass( 'navbox-autocollapse' )
end
end
if yesno(args.collapsible, false) then
tbl:addClass( 'navbox-collapsible' )
end
if args.style then
tbl:cssText( args.style )
end
-- used by [[MediaWiki:Gadget-navbox-tracking.js]] for tracking purposes
tbl:attr( { ['data-navbox-name'] = args.name } )
return tbl
end
--
-- Wrapper for [[Module:Tnavbar]]
--
-- @param args {table}
-- @return {mw.html table}
--
local function navbar( args )
local div = mw.html.create( 'div' )
:css( {
float = 'left',
['text-align'] = 'left'
} )
:wikitext( tnavbar._navbar( { [1] = args.name, ['mini'] = true, ['talk'] = 'autoconfirmed' } ) )
return div
end
--
-- Creates the header (what you see when the navbox is collapsed)
--
-- @param tbl {mw.html table}
-- @param args {table}
-- @return {mw.html table}
--
local function header( tbl, args )
local div = insertRow( tbl )
:tag( 'th' )
:attr( 'colspan', '2' )
:addClass( 'navbox-title' )
:wikitext( args.name and tostring( navbar( args ) ) )
:tag('div')
:addClass( 'navbox-title-name' )
:wikitext( args.title )
return div:allDone()
end
--
-- Inserts a row into the navbox
--
-- @param tbl {mw.html table}
-- @param gtitle {string}
-- @param group {string}
-- @param gtype {string}
-- @param style {string}
-- @return {mw.html table}
--
local function row( tbl, gtitle, group, gtype, style, _name, subgroup )
local tr = insertRow( tbl )
local td
if gtitle then
td = tr
:addClass( 'navbox-group' )
:tag( 'th' )
:addClass( 'navbox-group-title' )
:wikitext( gtitle )
:done()
:tag( 'td' )
else
td = tr
:addClass( 'navbox-group' )
:addClass( 'navbox-group-split' )
:tag( 'td' )
:addClass( 'navbox-group-title-hidden' )
:attr( 'colspan', '0' )
:css( 'display', 'none' )
:done()
:tag( 'td' )
:attr( 'colspan', '2' )
end
--[[
List styling
This is unlikely to be implemented in the near future due to it requiring extra css to work
and mobile currently not supporting that css.
As an example, it lets you do the following instead if using {{*}} all the time
| group3 =
* {{plink|foo}}
* {{plink|bar}}
* {{plink|baz}}
]]
if mw.ustring.match( group, '^%s*%*' ) then
td:newline()
-- trim whitespace on bullets
local spl = mw.text.split( group, '\n' )
for i = 1, #spl do
spl[i] = mw.text.trim( spl[i] )
end
group = '\n' .. table.concat( spl, '\n' )
end
--local group2 = group
--local group3 = group2
-- analytics
--if _name then
-- local name = mw.ustring.gsub(_name,' ','_')
-- for v in mw.ustring.gmatch(group,'%[%[[^%]]+%]%]') do
-- if mw.ustring.match(v,'%[%[File:.+|link=') then
-- local link = mw.ustring.match(v,'|link=([^%]|]+)')
-- if link then
-- local linkrep = mw.ustring.gsub(link,'([%%%]%[%-^$*()+?])','%%%1')
-- local _link = mw.ustring.gsub(link,' ','_')
-- local newfile = mw.ustring.gsub(v,'|link='..linkrep,string.format('|link=https://brightershoreswiki.org/w/%s?f=%s',_link,name))
-- local w = mw.ustring.gsub(v,'([%%%]%[%-^$*()+?])','%%%1')
-- group2 = mw.ustring.gsub(group2,w,newfile)
-- end
-- elseif mw.ustring.match(v,'%[%[Category:') then
-- nothing
-- else
-- local link = mw.ustring.match(v,'%[%[([^%]|]+)')
-- local txt = mw.ustring.match(v,'%|([^%]|]+)') or link
-- local newlink = ''
-- black links if current page
-- if link == page_title then
-- newlink = string.format('<b>%s</b>',txt)
-- else
-- local _link = mw.ustring.gsub(link or '',' ','_')
-- newlink = string.format('[https://brightershoreswiki.org/w/%s?n=%s %s]',_link,name,txt)
-- end
-- local w = mw.ustring.gsub(v,'([%%%]%[%-^$*()+?])','%%%1')
-- group2 = mw.ustring.gsub(group2,w,newlink)
-- end
-- end
--[==[
fix [[these kind]]s of [[link]]s post analytics parse
]==]
-- group3 = group2
-- for v in mw.ustring.gmatch(group2,'%[https://brightershoreswiki.org/w[^%]]-%]%a') do
-- local rep = mw.ustring.gsub(v,'%]','')
-- rep = rep..']'
-- local w = mw.ustring.gsub(v,'([%%%]%[%-^$*()+?])','%%%1')
-- group3 = mw.ustring.gsub(group2,w,rep)
-- end
--end
td
:addClass( 'navbox-list' )
:wikitext( group ) --group3
if gtype and mw.ustring.lower( gtype ) == 'subgroup' then
td
:addClass( 'navbox-parent' )
:css( {
padding = '0'
} )
end
if style then
td:cssText( style )
end
return td:allDone()
end
--
-- Inserts a footer into the navbox
--
-- @param tbl {mw.html table}
-- @param args {table}
-- @return {mw.html table}
--
local function footer( tbl, args )
local th = insertRow( tbl )
:tag( 'th' )
:attr( 'colspan', '2' )
:addClass( 'navbox-footer' )
if args.fstyle then
th:cssText( args.fstyle )
end
if mw.ustring.match( args.footer, '^%s*%*' ) then
th:newline()
-- trim whitespace on bullets
local spl = mw.text.split( args.footer, '\n' )
for i = 1, #spl do
spl[i] = mw.text.trim( spl[i] )
end
args.footer = table.concat( spl, '\n' )
th:addClass( 'navbox-list' )
end
th:wikitext( args.footer )
return th:allDone()
end
--
-- Adds [[Category:Navbox templates]] to navbox template pages
--
-- @return {string}
--
local function categories()
local title = mw.title.getCurrentTitle()
local page = title.text
local ns = title.nsText
if ns == 'Template' then
-- sort in category by pagename
return '[[Category:Navbox templates| ' .. page .. ']]'
else
return ''
end
end
--
-- Adds [[Template:Navbox/doc]] to navbox template pages
--
-- @param args {table}
-- @return {string}
--
local function docs( args )
local frame = mw.getCurrentFrame()
local title = mw.title.getCurrentTitle()
local base = title.baseText
local ns = title.nsText
-- not if a subpage of [[Template:Navbox]]
if base ~= 'Navbox' and
-- in template ns
ns == 'Template' and
-- not a navbox group within a navbox
not yesno(args.subgroup, false) and
-- not a collapsible navbox within a navbox
not yesno(args.collapsible, false) and
-- not if the doc argument is not set to "yes"
yesno(args.doc, false)
then
return frame:expandTemplate{ title = 'Navbox/doc' }
else
return ''
end
end
--
-- Navbox method to allow it to be called by other modules
--
-- @param _args {table}
-- @return {string}
--
function p._navbox( _args )
local args = {}
local wkCss = ''
local wkDiv = ''
local j
-- preserves parser function behaviour where an empty string is considered undefined
-- or nil in lua's case
for k, v in pairs( _args ) do
if v ~= '' then
args[k] = v
end
end
local tbl = createTbl( args )
if not yesno(args.subgroup, false) then
tbl = header( tbl, args )
end
-- insert up to 25 rows
for i = 1, 25 do
j = tostring( i )
if args['group' .. j] then
tbl = row( tbl, args['gtitle' .. j], args['group' .. j], args['gtype' .. j], args['style' .. j], args.name, args.subgroup )
else
break
end
end
if args.footer then
tbl = footer( tbl, args )
end
tbl = tostring( tbl )
local cats = ''
if not yesno(args.subgroup, false) and not yesno(args.hidecat, false) then
cats = categories()
end
local docs = docs( args )
return tbl .. cats .. docs
end
--
-- Main navbox method accessed through #invoke
--
-- @param frame {table}
-- @return {string}
--
function p.navbox( frame )
local args = frame:getParent().args
return p._navbox( args )
end
return p
-- </nowiki>
b85e4b479ede98c0df765393cf4acba5c536b57a
MediaWiki:Gadget-bsw-util.js
8
339
863
560
2024-03-23T14:20:55Z
Habblet
11
javascript
text/javascript
(function ($, mw, bs) {
'use strict';
function createOOUIWindowManager() {
if (window.OOUIWindowManager == undefined) {
window.OOUIWindowManager = new OO.ui.WindowManager();
$( 'body' ).append( window.OOUIWindowManager.$element );
}
return window.OOUIWindowManager;
}
/**
* Reusable functions
*
* These are available under the `bswiki` global variable.
* @example `bswiki.addCommas`
* The alias `bs` is also available in place of `bswiki`.
*/
var util = {
/**
* Formats a number string with commas.
*
* @todo fully replace this with Number.protoype.toLocaleString
* > 123456.78.toLocaleString('en')
*
* @example 123456.78 -> 123,456.78
*
* @param num {Number|String} The number to format.
* @return {String} The formated number.
*/
addCommas: function (num) {
if (typeof num === 'number') {
return num.toLocaleString('en');
}
// @todo chuck this into parseFloat first and then to toLocaleString?
num += '';
var x = num.split('.'),
x1 = x[0],
x2 = x.length > 1 ?
'.' + x[1] :
'',
rgx = /(\d+)(\d{3})/;
while (rgx.test(x1)) {
x1 = x1.replace(rgx, '$1,$2');
}
return x1 + x2;
},
/**
* Extracts parameter-argument pairs from templates.
*
* @todo Fix for multiple templates
*
* @param tpl {String} Template to extract data from.
* @param text {String} Text to look for template in.
* @return {Object} Object containing parameter-argument pairs
*/
parseTemplate: function (tpl, text) {
var rgx = new RegExp(
'\\{\\{(template:)?' + tpl.replace(/[ _]/g, '[ _]') + '\\s*(\\||\\}\\})',
'i'
),
exec = rgx.exec(text),
// splits template into |arg=param or |param
paramRgx = /\|(.*?(\{\{.+?\}\})?)(?=\s*\||$)/g,
args = {},
params,
i,
j;
// happens if the template is not found in the text
if (exec === null) {
return false;
}
text = text.substring(exec.index + 2);
// used to account for nested templates
j = 0;
// this purposefully doesn't use regex
// as it became very difficult to make it work properly
for (i = 0; i < text.length; i += 1) {
if (text[i] === '{') {
j += 1;
} else if (text[i] === '}') {
if (j > 0) {
j -= 1;
} else {
break;
}
}
}
// cut off where the template ends
text = text.substring(0, i);
// remove template name as we're not interested in it past this point
text = text.substring(text.indexOf('|')).trim();
// separate params and args into an array
params = text.match(paramRgx);
// handle no params/args
if (params !== null) {
// used as an index for unnamed params
i = 1;
params.forEach(function (el) {
var str = el.trim().substring(1),
eq = str.indexOf('='),
tpl = str.indexOf('{{'),
param,
val;
// checks if the equals is after opening a template
// to catch unnamed args that have templates with named args as params
if (eq > -1 && (tpl === -1 || eq < tpl)) {
param = str.substring(0, eq).trim().toLowerCase();
val = str.substring(eq + 1).trim();
} else {
param = i;
val = str.trim();
i += 1;
}
args[param] = val;
});
}
return args;
},
/**
* Helper for making cross domain requests to Brighter Shores's APIs.
* If the APIs ever enable CORS, we can ditch this and do the lookup directly.
*
* @param url {string} The URL to look up
* @param via {string} One of 'anyorigin', 'whateverorigin' or 'crossorigin'. Defaults to 'anyorigin'.
*
* @return {string} The URLto use to make the API request.
*/
crossDomain: function (url, via) {
switch (via) {
case 'crossorigin':
url = 'http://crossorigin.me/' + url;
break;
case 'whateverorigin':
url = 'http://whateverorigin.org/get?url=' + encodeURIComponent( url ) + '&callback=?';
break;
case 'anyorigin':
default:
url = 'http://anyorigin.com/go/?url=' + encodeURIComponent( url ) + '&callback=?';
break;
}
return url;
},
/**
* Returns the OOUI window manager as a Promise. Will load OOUI (core and windows) and create the manager, if necessary.
*
* @return {jQuery.Deferred} A jQuery Promise where window.OOUIWindowManager is will be defined
* Chaining a .then will pass OOUIWindowManager to the function argument
*/
withOOUIWindowManager: function() {
return mw.loader.using(['oojs-ui-core','oojs-ui-windows']).then(createOOUIWindowManager);
},
/**
* Helper for creating and initializing a new OOUI Dialog object
* After init, the window is added to the global Window Manager.
*
* Will automatically load OOUI (core and windows) and create the window manager, if necessary. window.OOUIWindowManager will be defined within this.
*
* @author Jayden
*
* @param name {string} The symbolic name of the window
* @param title {string} The title of the window
* @param winconfig {object} Object containing params for the OO.ui.Dialog obj
* @param init {function} Function to be called to initialise the object
* @param openNow {boolean} Whether the window should be opened instantly
* @param autoClose {boolean} Autoclose when the user clicks outside of the modal
*
* @return {jquery.Deferred} The jQuery Promise returned by mw.loader.using
* Chaining a .then will pass the created {OO.ui.Dialog} object as the function argument
*/
createOOUIWindow: function(name, title, winconfig, init, openNow, autoClose) {
return mw.loader.using(['oojs-ui-core','oojs-ui-windows']).then(function(){
createOOUIWindowManager();
winconfig = winconfig || {};
function myModal( config ) {
myModal.super.call( this, config );
}
OO.inheritClass( myModal, OO.ui.Dialog );
myModal.static.name = name;
myModal.static.title = title;
myModal.prototype.initialize = function () {
myModal.super.prototype.initialize.call( this );
init(this);
}
var modal = new myModal(winconfig);
console.debug('Adding ' + myModal.static.name + ' to WindowManager');
window.OOUIWindowManager.addWindows( [ modal ] );
if (openNow) {
window.OOUIWindowManager.openWindow(name);
}
if (autoClose) {
$(document).on('click', function (e) {
if (modal && modal.isVisible() && e.target.classList.contains('oo-ui-window-active')) {
modal.close();
};
});
}
return modal;
});
},
/**
* Helper for checking if the user's browser supports desktop notifications
* @author Jayden
*/
canSendBrowserNotifs: function () {
if (!("Notification" in window)) {
console.warn("This browser does not support desktop notifications");
return false;
} else {
return true;
}
},
/**
* Send a desktop/browser notification to a user, requires the page to be open
* @author Jayden
*
* @param https://developer.mozilla.org/en-US/docs/Web/API/Notification/Notification
*
* @return Notification object or null
*/
sendBrowserNotif: function (title, opts) {
if (bs.canSendBrowserNotifs == false) {
return null;
}
Notification.requestPermission().then(function(result) {
if (result === "granted") {
console.debug('Firing desktop notification');
var notif = new Notification(title, opts);
notif.onclick = function(e) {
window.focus();
}
return notif;
} else {
return null;
}
});
},
/**
* Check if the browser has support for localStorage
* @author Jayden
*
* @return boolean
**/
hasLocalStorage: function() {
try {
localStorage.setItem('test', 'test')
localStorage.removeItem('test')
return true
} catch (e) {
return false
}
},
/**
* Gets a query string parameter from given URL or current href
* @author Jayden
*
* @return string or null
**/
qsp: function(name, url) {
if (!url) url = window.location.href;
name = name.replace(/[\[\]]/g, '\\$&');
var regex = new RegExp('[?&]' + name + '(=([^&#]*)|&|#|$)'),
results = regex.exec(url);
if (!results) return null;
if (!results[2]) return '';
return decodeURIComponent(results[2].replace(/\+/g, ' '));
},
/**
* Get the URL for a file on the wiki, aganst the endpoint that is actually cached and fast.
* Should probably not be used for images we expect to change frequently.
* @author cookmeplox
*
* @return string
**/
getFileURLCached: function(filename) {
var base = window.location.origin;
filename = filename.replace(/ /g,"_")
filename = filename.replace(/\(/g, '%28').replace(/\)/g, '%29')
var cb = '48781';
return base + '/images/' + filename + '?' + cb;
},
isUsingStickyHeader: function() {
return ($('body').hasClass('wgl-stickyheader'))
}
};
function init() {
$.extend(bs, util, {});
// add bs as a global alias
window.bs = bs;
}
init();
}(this.jQuery, this.mediaWiki, this.bswiki = this.bswiki || {}));
c67f993a10439f5c9a9abca5480e464498116852
Module:Infobox
828
102
864
801
2024-03-23T14:23:09Z
Gau Cho
5
Simplify the table_class param
Scribunto
text/plain
--[=[
-- For documentation, see [[Module:Infobox/doc]]
--]=]
-- <nowiki>
local Infobox = {}
Infobox.__index = Infobox
Infobox.__tostring = Infobox.tostring
-- Edit button for unknown params
local editbutton = require('Module:Edit button')
local edit = editbutton("'''?''' (edit)")
-- Page title
local pagename = mw.title.getCurrentTitle().fullText
-- map of flags to html tags used by Infobox.addRow()
-- let's only define it once, since :addRow() is used multiple times per module
local tagmap = {
tr = 'tr',
th = 'th',
td = 'td',
argh = 'th',
argd = 'td'
}
--[=[
-- Standardized functions
-- called as string with defineParams
--]=]
-- Standardized "has content" function
function hasContent(arg, default)
-- Return arg if any non-whitespace character is found
return string.match(arg or '','%S') and arg or default
end
-- Standardized "name" function
function subjectName(arg)
return string.match(arg or '','%S') and arg or nil
end
-- Create a standardized release function, since so many pages use it
-- Turns release and update into a single parameter
function releaseUpdate(release, update)
if not Infobox.isDefined(release) then
return nil
end
if string.lower(release) == 'no' then
return 'N/A'
end
if not Infobox.isDefined(update) then
return string.format('%s (Update unknown)',release)
end
if string.lower(update) == 'no' then
return release
end
return string.format('%s ([[Update:%s|Update]])', release, update)
end
-- Standardized image function
function image(img)
if img and img:find('%S') then
return img
else
return nil
end
end
-- Standardized numbers
function numbers(num)
num = string.gsub(num or '',',','')
return tonumber(num)
end
-- map of names to pre-defined functions, used by Infobox:defineParams
local func_map = {
name = subjectName,
release = { name = releaseUpdate, params = { 'release', 'update' }, flag = 'p' },
removal = { name = releaseUpdate, params = { 'removal', 'removalupdate' }, flag = 'p' },
has_content = hasContent,
image = image,
numbers = numbers,
}
-- used to fill nil params in switching sections
-- this message isn't kidding
-- If you see this message anywhere outside of this code
-- (including inside switchfo box data)
-- report it
local nil_param = 'INFOBOX MODULE ERROR, PLEASE REPORT TO WIKI ADMIN'
-- In case the nil_param is needed outside of this module
-- give it an easy way to be accessed
function Infobox.nilParam()
return nil_param
end
-- switch infobox globals
local LINE_WIDTH = 300
local MAX_LINES = 2
local DEFAULT_MAX_BUTTONS = 6
-- calculate with width of a switch infobox button
-- potential @TODO: rework to use actual character widths
function button_width(label)
local PX_PER_CHAR = 6
local PX_PAD_MAR = 24
return string.len(label) * PX_PER_CHAR + PX_PAD_MAR
end
Infobox.splitpoint = '&&SPLITPOINT&&'
-- quick test to see if a value is considered nil
function Infobox.isDefined(arg)
if arg == nil then
return false
end
if type(arg) == 'string' then
if arg == nil_param then
return false
elseif arg:find('%S') then
if arg:find('action=edit') then
return false
else
return true
end
else
return false
end
end
return true
end
--[[
Infobox class
-- args : parameters from frame to pass through
-- Sets a meta table and creates a <div> tag wrapper
-- other fields are initialized in other functions
--]]
function Infobox.new(args)
local obj = setmetatable({
args = args, -- parameters (uncleaned)
rargs = {}, -- parameters (cleaned)
params = {}, -- parameters mapped to functions
paramnames = {}, -- parameter names
dupeable = {}, -- parameters that are allowed to have duplicated switch data
table_class = 'infobox', -- The base class of the infobox
switchfo = false, -- switch infobox? or not?
switchfoattr = {}, -- switch data class changes
maxbuttons = DEFAULT_MAX_BUTTONS, -- maximum number of buttons before switching becomes a menu
switch_tag = '', -- switchfo data
switch_buttons_tag = '', -- switchfo buttons
custom_buttons = false,
smw_error_tag = '',
rtable = nil, -- returned infobox table
labels = nil, -- returned labels
_smw = {}, -- semantic mediawiki data
_smwOne = {}, -- semantic mediawiki data part 2
_smwSubobject = {}, -- semantic mediawiki data part 3
_smwSubobjectAppliesTo = nil, -- semantic mediawiki data part 3.5
_smwElement = {}, -- semantic mediawiki data part 4
setSMWElement = true,
versions = -1, -- number of switch versions (-1 is uncalculated)
infoboxname = nil, -- template name
appendStrs = {},
bottomlinks = { -- template bottom links
links = {
{ 'Template talk:%s', 'talk' },
{ 'Template:%s', 'view' }
},
colspan = 2
},
catdata = {}, -- meta category data
catlist = {}, -- defined table of category names (strings)
__finished = false, -- infobox status
},
Infobox)
return obj
end
--[[
Changes the class of the Infobox from 'infobox' to something else
use before :create()
--]]
function Infobox:setClass(new_class)
if type(arg) == 'string' then
self.table_class = new_class
end
end
--[[
Creates an infobox
-- If Infobox:maxVersions() has not been run, it will be run here
-- If the infobox should be a switch infobox, all labels will be added
-- Creates a wikitable that will be the infobox
THIS SHOULD BE DONE AFTER ADDING AND CLEANING PARAMETERS
--]]
function Infobox:create()
-- Run to find if this is a switch infobox and if so, how many boxes
if self.versions == -1 then
self:maxVersion()
end
-- Run if switch infobox
if self.switchfo then
-- Buttons wrapper
-- Hidden by default, unhidden by javascript
self.switch_buttons_tag = mw.html.create('div')
:addClass('infobox-buttons')
-- default version to immediately switch to via js
local defv = tonumber(self.args.defver)
if defv and defv <= self.versions then -- you troll, don't try to show something that isn't there
self.switch_buttons_tag:attr('data-default-version',defv)
end
local numlines = 1
local width_working = 0
local total_width = 0
local buttons = {}
-- Add individual buttons to the wrapper
for i=1,self.versions do
local wid = button_width(self.labels[i] or i)
width_working = width_working + wid
total_width = total_width + wid
if width_working > LINE_WIDTH then
numlines = numlines + 1
width_working = wid
end
local b = mw.html.create('span')
:attr('data-switch-index',tostring(i))
-- space to underscore
:attr('data-switch-anchor','#'..string.gsub(self.labels[i] or i,' ','_'))
:addClass('button')
:wikitext(self.labels[i] or i)
table.insert(buttons, {b, wid})
end
local best = {-1, 100000}
if (numlines > 1) and (numlines <= MAX_LINES) then
-- attempt to balance line widths
local w_s, w_e = 0,total_width
for i = 1,#buttons-1 do
w_s = w_s + buttons[i][2]
w_e = w_e - buttons[i][2]
if w_s > LINE_WIDTH then
-- w_s only increases, so we're done once it exceeds the width
break
end
if w_e <= LINE_WIDTH then
-- w_e only decreases, so just continue if it exceeds line
local diff = math.abs(w_s - w_e)
if diff < best[2] then
best = { i, diff }
end
end
end
if best[1] == -1 then
best = { math.floor(#buttons/2), 100000 }
end
end
for i,v in ipairs(buttons) do
self.switch_buttons_tag:node(v[1])
if i == best[1] then
self.switch_buttons_tag:tag('br')
end
end
-- Used by JavaScript to turn the buttons into a menu list if too many variants
if self.versions > self.maxbuttons or numlines > MAX_LINES then
self.switch_buttons_tag:addClass('infobox-buttons-select')
end
self.switch_buttons_tag:done()
end
-- Create infobox table
self.rtable = mw.html.create('table')
:addClass('plainlinks')
:addClass(table_class)
-- Add necessary class if switch infobox
if self.switchfo then
self.rtable:addClass('infobox-switch')
end
end
-- Defines an infobox name ({{Template:arg}})
-- Used to create a link at the bottom of pages and for css
function Infobox:defineName(arg)
self.infoboxname = arg
end
-- Defines the bottom links of the infobox
-- pass a table whose elements are tables that define a link and a label
-- {
-- { 'link', 'label },
-- ...
-- }
-- The template name can be substituted into the tables using '%s'
-- If we wanted Template:InFooBar to link to it's /doc page with a "doc" label:
-- { ...
-- { 'Template:%s/doc', 'doc' },
-- ... }
-- The template's name can only be called 5 times
function Infobox:defineLinks(arg)
if type(arg) == 'table' then
if arg.colspan then
self.bottomlinks.colspan = arg.colspan
end
if arg.links then
if type(arg.links) == 'table' then
self.bottomlinks.links = arg.links
end
end
if arg.hide then
self.bottomlinks.hide = arg.hide
end
end
end
-- Change max number of buttons before switching to menu
-- defaults to 5
-- MUST BE RUN BEFORE :create()
function Infobox:setMaxButtons(arg)
-- if not a number, just go back to default
self.maxbuttons = tonumber(arg) or DEFAULT_MAX_BUTTONS
end
--[[
Add parameters functions
All parameters should be tables
The first parameter defines the type of cell to create
-- th : <th>
-- td : <td>
-- argh : <th>
-- argd : <td>
The second parameter defines what is inside the tag
-- th | th : text passed
-- argh | argd : parameter with the name passed
Additional named parameters can be used to add any styling or attributes
-- attr : mw.html:attr({ arg1 = '1', ... })
-- css : mw.html:css({ arg1 = '1', ...)
-- class : mw.html:addClass('arg')
---- class also supports a table of values, even though mw.html:addClass() does not
-- rowspan : mw.html:attr('rowspan',arg)
-- colspan : mw.html:attr('colspan',arg)
-- title : mw.html:attr('title',arg)
Example:
ipsobox:addRow( { 'th' , 'Header', title = 'Title' },
{ 'argh', 'arg1', class = 'parameter' } })
produces:
<tr><th title="Title">Header</th><th class="parameter">args.arg1</th></tr>
adding it to the infobox table of ipsobox
Cells defined as 'argh' and 'argd' will automatically have data-attr-param="" added, and defined as the passed argument if the infobox in creation is defined as a switch infobox
The row itself may be modified with metadata using the named index at "meta"
-- meta.addClass : mw.html:addClass('arg')
-- this function currently only supports a single string
--]]
function Infobox.addRow(box, ...)
-- New row to add
local args = ...
local _row = box.rtable:tag('tr')
-- For each member of tags
for i, v in ipairs(args) do
-- map tag name to appropriate tag, default to <td>
local _cell = _row:tag(tagmap[v.tag] or 'td')
-- mw.html:attr() and mw.html:css() both accept table input
-- colspan, rowspan, title will be quick ways to access attr
-- these functions also do all the necessary work
if v.attr then
_cell:attr(v.attr)
end
if v.colspan then
_cell:attr('colspan',v.colspan)
end
if v.rowspan then
_cell:attr('rowspan',v.rowspan)
end
if v.title then
_cell:attr('title',v.title)
end
if v.css then
_cell:css(v.css)
end
-- if class is a string, it can be added directly
-- if a table, add every value
-- mw.html:addClass() doesn't function with tables
-- so iterate over the class names here and add them individually
if v.class then
if type(v.class) == 'string' then
_cell:addClass(v.class)
elseif type(v.class) == 'table' then
for _, w in ipairs(v.class) do
_cell:addClass(w)
end
end
end
-- if the cell is a normal th or td, add the exact argument passed
if v.tag == 'th' or v.tag == 'td' then
_cell:wikitext(v.content)
-- if defined with "arg", add the argument with name passed
elseif v.tag == 'argh' or v.tag == 'argd' then
local content = box.rargs[v.content]
-- if the requested parameter doesn't exist whatsoever, just return a blank string
if not content then
content = ''
-- If switches exist, first attempt to use the version1 values
elseif content.switches then
if content.switches[1] ~= nil_param then
content = content.switches[1] or ''
else
content = content.d or ''
end
-- fallback to default value
else
content = content.d or ''
end
_cell:wikitext(content)
-- add necessary attribute for switch infoboxes
if box.switchfo then
_cell:attr('data-attr-param',v.content)
end
end
end
-- not that meta
-- allow classes to be defined on the whole row
-- okay, sort of meta
if args.meta then
if args.meta.addClass then
_row:addClass(args.meta.addClass)
end
end
return box
end
function Infobox.customButtonPlacement(box,arg)
box.custom_buttons = arg
return box
end
function Infobox.addButtonsRow(box, args)
if box.switchfo then
box.custom_buttons = true
local _row = box.rtable:tag('tr')
:addClass('rsw-infobox-switch-buttons-row')
:tag('td')
:addClass('rsw-infobox-switch-buttons')
:attr('colspan', args.colspan)
:node(box.switch_buttons_tag)
end
return box
end
function Infobox.addButtonsCaption(box)
if box.switchfo then
box.custom_buttons = true
local _row = box.rtable:tag('caption')
:addClass('rsw-infobox-switch-buttons-caption')
:node(box.switch_buttons_tag)
end
return box
end
--[[
-- adds a blank row of padding spanning the given number of columns
--]]
function Infobox.pad(box, colspan, class)
local tr = box:tag('tr')
:tag('td'):attr('colspan', colspan or 1):addClass('infobox-padding')
:done()
if class then
tr:addClass(class)
end
tr:done()
return box
end
--[[
-- functions the same as mw.html:wikitext() on the wrapper
-- Should only be used for categories really
--]]
function Infobox.wikitext(box, arg)
box.rtable:wikitext(arg)
return box
end
--[[
-- Adds the specified item(s) to the end of the infobox, outside of the table
-- items are concatenated together with an empty space
--]]
function Infobox.append(box, ...)
for i,v in ipairs({...}) do
table.insert(box.appendStrs, v)
end
return box
end
--[[
-- Adds a caption to the infobox
-- defaults to the pagename
-- or the default argument if defined
--]]
function Infobox.caption(box)
-- default to the article's name
local name = pagename
-- first see if the name parameter exists
if box.rargs.name then
-- then try the default
if box.rargs.name.d then
name = box.rargs.name.d
-- then look for swithes
elseif box.rargs.name.switches then
-- then look at version 1
if box.rargs.name.switches[1] ~= nil_param then
name = box.rargs.name.switches[1]
end
end
end
local caption = box.rtable:tag('caption')
:wikitext(name)
-- add necessary attribute for switch infoboxes
if box.switchfo then
caption:attr('data-attr-param','name')
end
return box
end
--[[
-- Functions for styling the infobox
-- works the same as the respective mw.html functions
--]]
-- attr
function Infobox.attr(box, arg)
box.rtable:attr(arg)
return box
end
-- css
function Infobox.float(box,float)
box.rtable:css('float',float)
return box
end
function Infobox.css(box, ...)
box.rtable:css(...)
return box
end
-- addClass
function Infobox.addClass(box, arg)
box.rtable:addClass(arg)
return box
end
-- Much like Infobox.addClass, but adds multiple classes
function Infobox.addClasses(box, ...)
for _, v in ipairs(...) do
box.rtable:addClass(box)
end
return box
end
--[[
Add tags directly to the infobox table
Use sparingly
Returns the tag created rather than the entire box
Which is an mw.html object
Further uses of :tag() will be mw.html.tag, rather than Infobox.tag
As such, Infobox:addRow() cannot be used afterwards without restating the infobox as the object
--]]
function Infobox.tag(box, arg)
return box.rtable:tag(arg)
end
--[[
Allows the infobox to use Semantic Media Wiki and give parameters properties
Pass a table to this function to map parameter names to properties
Calling syntax:
-- {{#show:page|?property}}:
-- "<property>" - unqualified and without a number will display the default value
-- "<property#>" - with a number will show the switch data from that index
-- "all <property>" - adding all will display every unique value in a comma separated list
Properties initiated in Infobox:finish()
--]]
function Infobox:useSMW(arg)
if type(arg) == 'table' then
for w, v in pairs(arg) do
self._smw[w] = v
end
end
end
--[[
As above, but only assigns to "<property>", which will act like "all <property>" - "<property>#" not present
Properties initiated in Infobox:finish()
--]]
function Infobox:useSMWOne(arg)
if type(arg) == 'table' then
for w, v in pairs(arg) do
self._smwOne[w] = v
end
end
end
--[[
Set up the infobox to set properties in a SMW subobject. This will create a subobject for each version
- if there is only one version, it will put the properties directly on to the page, like useSMWOne
Properties initiated in Infobox:finish()
--]]
function Infobox:useSMWSubobject(arg)
if type(arg) == 'table' then
for w, v in pairs(arg) do
self._smwSubobject[w] = v
end
end
end
function Infobox:useSMWElement(arg)
if type(arg) == 'table' then
for w, v in pairs(arg) do
self._smwElement[w] = v
end
self.setSMWElement = true
end
end
--[[
Finishing function
-- Finishes the return, adding necessary final tags
--]]
function Infobox:finish()
local onmain = mw.title.getCurrentTitle().namespace == 0
-- Don't finish twice
if self.__finished then
return
end
-- Add switch infobox resources
--if self.switchfo then
self.rtable:attr('data-resource-class', '.infobox-resources-'..string.gsub(tostring(self.infoboxname), ' ', '_'))
-- Wrapper tag, hidden
self.switch_tag = mw.html.create('div')
:addClass('infobox-switch-resources')
:addClass('infobox-resources-'..string.gsub(tostring(self.infoboxname), ' ', '_'))
:addClass('hidden')
for _, v in ipairs(self.paramnames) do
local param = self.rargs[v]
local default_value = param.d or edit
-- Parameters may not have any switches data, those are ignored
local switchattr = self.switchfoattr[v]
-- Parameter data wrapper
local res_span = self.switch_tag:tag('span')
:attr('data-attr-param',v)
-- Child for default value
local def = res_span:tag('span')
:attr('data-attr-index',0)
:wikitext(tostring(default_value))
-- Switch classes
if switchattr then
def:attr('data-addclass',switchattr.d)
end
def:done()
if param.switches then
-- Add all switches, ignore those defined as nil
for i, w in ipairs(param.switches) do
if w ~= nil_param and w ~= nil and w ~= default_value then
local _w = res_span:tag('span')
:attr('data-attr-index',i)
:wikitext(tostring(w))
-- Switch classes
if switchattr then
_w:attr('data-addclass',switchattr.switches[i])
end
_w:done()
end
end
res_span:done()
end
end
-- Add a tracking category for mainspace pages that have more than 1 version
if onmain then
if self.versions > 1 then
-- version count data
self.switch_tag:tag('span')
:wikitext(string.format('Versions: [[Version count::%s]]',self.versions))
:done()
self.switch_tag:wikitext('[[Category:Pages that contain switch infobox data]]')
end
end
self.switch_tag:done()
--end
-- smw data
if onmain then
-- members smw display, yes --> true; no --> false; other --> unknown
local function smwMembers(smw_arg)
local smw_argv = string.lower(smw_arg or '')
if smw_argv == 'yes' then
return 'true'
elseif smw_argv == 'no' then
return 'false'
else
return 'unknown'
end
end
-- release date smw display
local function smwRelease(smw_arg)
local _d,_m,_y = string.match(smw_arg or '', '%[%[(%d%d?) (%a+)%]%] %[%[(%d%d%d%d)%]%]')
if _d == nil then
return nil
end
return table.concat({_d,_m,_y},' ')
end
-- default, just return the text
local function smwDefault(smw_arg)
if smw_arg ~= nil_param and smw_arg ~= edit then
return smw_arg
else
return 'unknown'
end
end
local smw_to_func = {
members = smwMembers,
release = smwRelease,
removal = smwRelease,
default = smwDefault
}
local smw_data_arr = {}
-- custom properties
for w, v in pairs(self._smw) do
-- only needed to give special formatting to release
-- and to make members true/false
local smwfunc = smw_to_func[w] or smw_to_func.default
local curarg = self.rargs[w]
if curarg then
local _arg = curarg.d
local argdefault = _arg
if _arg == edit then
argdefault = 'unknown'
else
local _x = mw.text.split(tostring(_arg), Infobox.splitpoint, true)
if not smw_data_arr[v] then
smw_data_arr[v] = {}
end
if not smw_data_arr['All '..v] then
smw_data_arr['All '..v] = {}
end
for _,y in ipairs(_x) do
local temp_smw_data = smwfunc(y)
table.insert(smw_data_arr[v], temp_smw_data)
table.insert(smw_data_arr['All '..v], temp_smw_data)
end
end
if curarg.switches then
local _args = {}
for _, x in ipairs(curarg.switches) do
if x ~= nil_param then
table.insert(_args,x)
else
table.insert(_args,argdefault or nil_param)
end
end
for i, x in ipairs(_args) do
local _x = mw.text.split(tostring(x), Infobox.splitpoint, true)
if not smw_data_arr[v..i] then
smw_data_arr[v..i] = {}
end
if not smw_data_arr['All '..v] then
smw_data_arr['All '..v] = {}
end
for _,y in ipairs(_x) do
local temp_smw_data = smwfunc(y)
table.insert(smw_data_arr[v..i], temp_smw_data)
table.insert(smw_data_arr['All '..v], temp_smw_data)
end
end
end
end
end
-- if one version, put smwSubobject into smwOne and just do that
if self.versions < 2 and not self._smwSubobjectAppliesTo then
for w,v in pairs(self._smwSubobject) do
if not self._smwOne[w] then
self._smwOne[w] = v
elseif type(self._smwOne[w]) == 'table' then
table.insert(self._smwOne[w], v)
else
self._smwOne[w] = { self._smwOne[w], v }
end
end
end
for w, _v in pairs(self._smwOne) do
-- only needed to give special formatting to release
-- and to make members true/false
local smwfunc = smw_to_func[w] or smw_to_func.default
local curarg = self.rargs[w]
if curarg then
local _arg = curarg.d
local argdefault = _arg
if _arg == edit then
argdefault = 'unknown'
end
if curarg.switches then
local _args = {}
for _, x in ipairs(curarg.switches) do
if x ~= nil_param then
table.insert(_args,x)
else
table.insert(_args,argdefault or nil_param)
end
end
for i, x in ipairs(_args) do
local _x = mw.text.split(tostring(x), Infobox.splitpoint, true)
for _,y in ipairs(_x) do
local temp_smw_data = smwfunc(y)
for _,v in ipairs(type(_v) == 'table' and _v or {_v}) do
if not smw_data_arr[v] then
smw_data_arr[v] = {}
end
table.insert(smw_data_arr[v], temp_smw_data)
end
end
end
else
if Infobox.isDefined(_arg) then
local _targ = mw.text.split(tostring(_arg), Infobox.splitpoint, true)
for _,y in ipairs(_targ) do
local temp_smw_data = smwfunc(y)
for _,v in ipairs(type(_v) == 'table' and _v or {_v}) do
if not smw_data_arr[v] then
smw_data_arr[v] = {}
end
table.insert(smw_data_arr[v], temp_smw_data)
end
end
end
end
end
end
local smw_data_arr_elem = {}
for w, v in pairs(self._smwElement) do
-- only needed to give special formatting to release
-- and to make members true/false
local smwfunc = smw_to_func[w] or smw_to_func.default
local curarg = self.rargs[w]
if curarg then
local _arg = curarg.d
local argdefault = _arg
if _arg == edit then
argdefault = 'unknown'
end
if curarg.switches then
local _args = {}
for _, x in ipairs(curarg.switches) do
if x ~= nil_param then
table.insert(_args,x)
else
table.insert(_args,argdefault or nil_param)
end
end
for i, x in ipairs(_args) do
if Infobox.isDefined(x) then
local _x = mw.text.split(tostring(x), Infobox.splitpoint, true)
for _,y in ipairs(_x) do
local temp_smw_data = smwfunc(y)
if not smw_data_arr_elem[v] then
smw_data_arr_elem[v] = {}
end
table.insert(smw_data_arr_elem[v], temp_smw_data)
end
end
end
else
if Infobox.isDefined(_arg) then
local _targ = mw.text.split(tostring(_arg), Infobox.splitpoint, true)
for _,y in ipairs(_targ) do
local temp_smw_data = smwfunc(y)
if not smw_data_arr_elem[v] then
smw_data_arr_elem[v] = {}
end
table.insert(smw_data_arr_elem[v], temp_smw_data)
end
end
end
end
end
-- if is a switchfo, setup for subobjects
local smw_data_arr_subobj = {}
if self._smwSubobjectAppliesTo then
for i,k in ipairs(self._smwSubobjectAppliesTo) do
local subobj_data = {
['Is variant of'] = {pagename},
}
for w,v in pairs(self._smwSubobject) do
local smwfunc = smw_to_func[w] or smw_to_func.default
local curarg = self.rargs[w]
if curarg then
local argval = curarg.d
if curarg.switches then
argval = curarg.switches[i]
if not Infobox.isDefined(argval) then
argval = curarg.d
end
end
if Infobox.isDefined(argval) then
local _x = mw.text.split(tostring(argval), Infobox.splitpoint, true)
for _, _x1 in ipairs(_x) do
_x1 = smwfunc(_x1)
if _x1 ~= 'unknown' then
if not subobj_data[v] then
subobj_data[v] = {}
end
table.insert(subobj_data[v], _x1)
end
end
end
end
end
for w,v in ipairs(k) do
local subobj_name = v
-- can't have a . in the first 5 characters of a subobject identifier
if mw.ustring.find(mw.ustring.sub(subobj_name,0,5), '%.') then
self:wikitext('[[Category:Pages with an invalid subobject name]]')
subobj_name = mw.ustring.gsub(subobj_name, '%.', '')
end
if subobj_name == '0' or subobj_name == '' then
self:wikitext('[[Category:Pages with an invalid subobject name]]')
subobj_name = 'v_'..subobj_name
end
smw_data_arr_subobj[subobj_name] = subobj_data
end
end
end
local res = mw.smw.set(smw_data_arr)
local res_subobj = true
for w,v in pairs(smw_data_arr_subobj) do
res_subobj = mw.smw.subobject(v, w)
if not res_subobj == true then
break
end
end
if not (res == true and res_subobj == true) then
self.smw_error_tag = mw.html.create('div'):css('display','none'):addClass('infobox-smw-data')
if not res == true then
self.smw_error_tag:tag('div'):wikitext('Error setting SMW properties: '+res.error):done()
end
if not res_subobj == true then
self.smw_error_tag:tag('div'):wikitext('Error setting SMW subobject properties: '+res_subobj.error):done()
end
end
if self.setSMWElement then
if self.smw_error_tag == '' then
self.smw_error_tag = mw.html.create('div'):css('display','none'):addClass('infobox-smw-data')
end
for i,v in pairs(smw_data_arr_elem) do
for j,k in ipairs(v) do
if k ~= 'unknown' then
self.smw_error_tag:tag('span'):wikitext(mw.ustring.format('%s: [[%s::%s]]', i,i,k ))
end
end
end
end
if self._smwSubobjectAppliesTo then
if self.smw_error_tag == '' then
self.smw_error_tag = mw.html.create('div'):css('display','none'):addClass('infobox-smw-data')
end
for w,v in pairs(smw_data_arr_subobj) do
local subobjdiv = self.smw_error_tag:tag('div')
subobjdiv:tag('span'):wikitext('SMW Subobject for '..w)
for j,k in pairs(v) do
subobjdiv:tag('span'):wikitext(mw.ustring.format('%s: %s', j, table.concat(k, ', ')))
end
end
end
end
-- Add view and talk links to infobox
-- Only done if a name is defined
if self.infoboxname and not self.bottomlinks.hide then
local bottom_links = {}
for _, v in ipairs(self.bottomlinks.links) do
table.insert(bottom_links,
string.format(
table.concat({'[[',
v[1],
'|',
v[2],
']]'}),
self.infoboxname,
self.infoboxname,
self.infoboxname,
self.infoboxname,
self.infoboxname)
)
end
bottom_links = table.concat(bottom_links,' • ')
self.rtable:tag('tr'):tag('td')
:addClass('infobox-template-links')
:attr('colspan', self.bottomlinks.colspan)
:wikitext(bottom_links)
:done()
end
-- Define as finished
self.__finished = true
end
--[[
Function for defining parameters
-- name : parameter name
-- func : function to define param, defaults to looking at blanks
DO NOT DEFINE VERSION HERE
USE :maxVersion()
Can be used any number of times for efficient definition
--]]
function Infobox:defineParams(...)
for _, v in ipairs(...) do
-- For every parameter, store its corresponding function to self.params
if v.name then
-- If the value is a function or a table (which should define a function)
if type(v.func) == 'function' or type(v.func) == 'table' then
self.params[v.name] = v.func
-- If the value is a string, use the predefined Infobox function of that name
elseif type(v.func) == 'string' then
self.params[v.name] = func_map[v.func] or hasContent
-- Everything else just looks for blanks
else
self.params[v.name] = hasContent()
end
-- Create a list of all param names
table.insert(self.paramnames,v.name)
-- function to allow duplicated values
if v.dupes then
self.dupeable[v.name] = true
end
end
end
end
--[[
-- Forces an infobox to only use 1 variant
-- Mainly used by lite infoboxes
-- This should be run before creation
--]]
function Infobox:noSwitch()
self.versions = 1
self.switchfo = false
end
--[[
-- Calculates the max version
-- Adds labels
-- Sees if this needs to be a switch infobox
-- Returns extra version count (even if already run)
-- Sets the smw subobject names from version or smwname
--]]
function Infobox.maxVersion(box)
-- Only allowed to run once
if box.versions ~= -1 then
return box.versions
end
box.labels = {}
box.versions = 0
local smwappliesto = {}
-- Look for up to 125 variants, defined in order
for i=1, 125 do
-- If variant# exists
if box.args['version'..i] then
-- Increase version count
box.versions = box.versions + 1
-- Add its label
local label = box.args['version'..i] or ('Version '..i)
table.insert(box.labels,label)
-- add to appliesto
if box.args['smwname'..i] then
table.insert(smwappliesto, mw.text.split(box.args['smwname'..i], '¦'))
else
table.insert(smwappliesto, {label})
end
else
-- Stop if it doesn't exist
break
end
end
-- Define self as a switch infobox if at least 1 other version is found
if box.versions > 0 then
box.switchfo = true
box._smwSubobjectAppliesTo = smwappliesto
else
-- single version, check for appliesto
if box.args['smwname'] then
box._smwSubobjectAppliesTo = {mw.text.split(box.args['smwname'], '¦')}
end
end
-- versions calculated
return box.versions
end
--[[
-- Cleans parameters as defined by the above function
-- SHOULD NOT BE RUN UNTIL ALL THINGS ARE DEFINED
-- Handles switches as well
-- adds table _add to rargs, a cleaned up version of arguments
-- d : default value
-- switches : table of switches (in numerical order)
-- Functions can be defined with tables
---- name : name of function
---- params : table of args to pass to functions
---- flag : flags for input
d | #default : use the cleaned parameter first, otherwise passed
p : use the passed value of parameters
r | l : use raw (literal) text, rather than values
-- Defining a single flag will use that flag on all parameters
-- Defining a table of flags will use the respective flag by position
--]]
function Infobox:cleanParams()
-- map of flags to functionality
local flagmap = {
r = 'r',
l = 'r',
d = 'd',
p = 'p'
}
-- For all parameters named
for _, v in ipairs(self.paramnames) do
-- Parameter to add
local _add = {}
local catdata = { all_defined = true, one_defined = false }
-- If the value of params is a function
if type(self.params[v]) == 'function' then
-- Perform that function with the parameter
_add.d = self.params[v](self.args[v])
-- If it's a table, parse it into a function
elseif type(self.params[v]) == 'table' then
-- Find the functions name
local func = self.params[v].name
if type(func) == 'string' then
func = func_map[func]
end
-- catch all
if type(func) ~= 'function' then
func = has_content
end
-- Recreate table of args and flags
local func_args = {}
local flag = {}
-- If the flags are NOT a table, turn them into a table
-- Same size as the parameter table
-- Every flag will be the same
if type(self.params[v].flag) ~= 'table' then
-- Map flags, if unmapped, use default
local _flag = flagmap[self.params[v].flag] or 'd'
-- recreate table
for x=1,#self.params[v].params do
table.insert(flag,_flag)
end
-- If flags are already a table, recreate them in new table
elseif type(self.params[v].flag) == 'table' then
local _flag = self.params[v].flag
-- recreate table
for x=1,#self.params[v].params do
-- Map flags, if unmapped, use default
table.insert(flag,flagmap[_flag[x]] or 'd')
end
end
-- Recreate param table, parsing flags as instructions
for x, w in ipairs(self.params[v].params) do
local xarg
-- By default or defined as 'd'
-- looks for the cleaned value of the named parameter first
-- if it doesn't exist, look at the passed value next
-- if that doesn't exist, use blank
if flag[x] == 'd' then
xarg = self.rargs[w] and self.rargs[w].d
-- compare to nil explicitly because false is a valid value
if xarg == nil then
xarg = self.args[w] or ''
end
-- Look only at the passed value of the named parameter
-- if that doesn't exist, use blank
elseif flag[x] == 'p' then
xarg = self.args[w] or ''
-- Don't interpret value as a parameter name, and paste the as is
elseif flag[x] == 'r' then
xarg = w
end
-- Add parsed argument to table
table.insert(func_args,xarg)
end
-- Run function
_add.d = func(unpack(func_args))
end
if _add.d == nil or _add.d == nil_param then
-- have to do pagename defaults here to prevent weird behaviour with switch values
if v == 'name' then
_add.d = pagename
else
_add.d = edit
end
catdata.all_defined = false
else
--_add.d is not nil
catdata.one_defined = true
end
if self.switchfo then
-- Table of switches values and count of them
local _add_switch = {}
local switches = 0
-- Look for up to the maximum number
for i=1, self.versions do
local _addarg
-- see if this param is allowed to have switch
if v ~= 'image' and v ~= 'examine' and string.find(self.args[v..i] or '','%$%d') then
local refi = string.match(self.args[v..i],'%$(%d+)')
_addarg = _add_switch[tonumber(refi)] or nil_param
else
-- If the value of params is a function
if type(self.params[v]) == 'function' then
-- Perform that function with the parameter at that index
_addarg = self.params[v](self.args[v..i])
-- If it's a table, parse it into a function
elseif type(self.params[v]) == 'table' then
-- Find the functions name
local func = self.params[v].name
if type(func) == 'string' then
func = func_map[func]
end
-- catch all
if type(func) ~= 'function' then
func = has_content
end
-- Recreate table of args and flags
local func_args = {}
local flag = {}
-- If the flags are NOT a table, turn them into a table
-- Same size as the parameter table
-- Every flag will be the same
if type(self.params[v].flag) ~= 'table' then
-- Map flags, if unmapped, use default
local _flag = flagmap[self.params[v].flag] or 'd'
-- recreate table
for x=1,#self.params[v].params do
table.insert(flag,_flag)
end
-- If flags are already a table, recreate them in new table
elseif type(self.params[v].flag) == 'table' then
local _flag = self.params[v].flag
-- recreate table
for x=1,#self.params[v].params do
-- Map flags, if unmapped, use default
table.insert(flag,flagmap[_flag[x]] or 'd')
end
end
-- Recreate param table, parsing flags as instructions
for x, w in ipairs(self.params[v].params) do
local xarg
-- By default or defined as 'd'
-- looks for the cleaned value of the named parameter first
-- if it doesn't exist, look at the passed value next
-- if that doesn't exist, look at the default
-- if that doesn't exist, use blank
if flag[x] == 'd' then
if self.rargs[w] then
if self.rargs[w].switches then
xarg = self.rargs[w].switches[i]
else
xarg = self.args[w..i]
end
if xarg == nil or xarg == nil_param then
xarg = self.rargs[w].d
end
end
-- multiple catches in a row just to cover everything
if xarg == nil or xarg == nil_param then
xarg = self.args[w..i]
end
if xarg == nil or xarg == edit or xarg == nil_param then
xarg = self.args[w]
end
if xarg == nil or xarg == edit or xarg == nil_param then
xarg = ''
end
-- Look only at the passed value of the named parameter
-- if that doesn't exist, use unnumbered parameter
-- if that doesn't exist, use blank
elseif flag[x] == 'p' then
xarg = self.args[w..i] or self.args[w] or ''
-- Don't interpret value as a parameter name, and paste the as is
elseif flag[x] == 'r' then
xarg = w
end
-- Add parsed argument to table
table.insert(func_args,xarg)
end
-- Run function
_addarg = func(unpack(func_args))
end
end
-- If not defined, add the nil_param value
-- An actual nil would cause errors in placement
-- So it needs to be filled with an actual value
-- "nil_param" is understood as nil in other functions
-- Include table in case parameter isn't defined by template
if _addarg == nil or _addarg == nil_param then
table.insert(_add_switch, nil_param)
else
switches = switches + 1
table.insert(_add_switch, _addarg)
catdata.one_defined = true
end
end
-- If there are actually other values to switch to
-- Define a switches subtable, otherwise ignore it
if switches > 0 then
_add.switches = _add_switch
end
end
-- Quick fix for names (which defaults to pagename)
if v == 'name' then
if _add.d == pagename then
if _add.switches and _add.switches[1] ~= pagename and _add.switches[1] ~= nil_param then
_add.d = _add.switches[1]
end
end
end
-- Parameter cleaning finished, add to table of cleaned args
self.rargs[v] = _add
-- Category metadata
-- If every param except default is defined, all_defined = true
if catdata.all_defined == false then
if _add.d == edit then
if _add.switches then
catdata.all_defined = true
for _, v in ipairs(_add.switches) do
if v == nil_param then
catdata.all_defined = false
break
end
end
end
end
end
self.catdata[v] = catdata
end
-- mass dupe removal
-- this needs to be done at the end to keep dependent parameters working
-- also removes incompatible data types
for _, v in ipairs(self.paramnames) do
-- not removed from dupe enabled params parameters
if not self.dupeable[v] and self.rargs[v] and self.rargs[v].switches then
-- tells us whether or not we'll need to remove the switch data
-- switched to false if a switch values does not match the default
local rmvswitch = true
for q, z in ipairs(self.rargs[v].switches) do
-- remove types that don't turn into strings properly
if type(z) == 'table' or type(z) == 'function' then
self.rargs[v].switches[q] = nil_param
-- if it isn't nil or an edit button
-- change variable to keep the switch data
elseif z ~= nil_param and z ~= edit then
rmvswitch = false
end
end
-- remove switch data if everything was a dupe
if rmvswitch then
self.rargs[v].switches = nil
end
end
end
-- Title parentheses (has to be done here, sadly)
local _name
if self.rargs.name then
_name = self.rargs.name.d
-- replace html entities to their actual character
_name = mw.text.decode(_name)
-- if the page name matches the item name, don't add parentheses
if _name == mw.title.getCurrentTitle().fullText then
self.rtable:addClass('no-parenthesis-style')
end
end
end
--[[
Function to link internal use parameters with JS class attribution
-- self:linkParams{ { arg1, arg2 }, ... { arg1a, arg2a } }
-- arg1: parameter name being linked
-- arg2: parameter name that holds the classes
-- THIS FUNCTION SHOULD BE RUN AFTER :cleanParams()
-- THIS FUNCTION SHOULD BE RUN BEFORE :finish()
-- The second argument's data should always contain a value (a CSS class name) at every index
-- This function is cancelled for non switch boxes
--]]
function Infobox:linkParams(...)
if not self.switchfo then
return
end
for _, v in ipairs(...) do
self.switchfoattr[v[1]] = self.rargs[v[2]]
end
end
--[==========================================[
-- Functions for accessing parameters easily
--]==========================================]
--[[
Access the param
-- arg : param name
-- retp : return type
d | #default : self.rargs[arg].d -- Default value
f | full : self.rargs[arg] -- Entire table
s | switches : self.rargs[arg].switches -- Entire switch table
s# : self.rargs[arg].switches[#] -- Single switch value at index #
r : switches[1] or d
--]]
function Infobox:param(arg, retp)
-- All parameters
if arg == 'all' then
return self.rargs
end
-- case-insensitive flagging
retp = tostring(retp):lower()
local fmap = {
d = 'd', default = 'd', s0 = 'd', -- let s-naught count as default (since that's what it is)
f = 'f', full = 'f',
s = 's', switch = 's', switches = 's',
r = 'r'
}
local ret_func
-- quickly see if the parameter is a value greater than 0
if retp:match('s[1-9]') then
ret_func = 's2'
else
-- Otherwise map it to the correct flag, or the default
ret_func = fmap[retp] or fmap.d
end
-- Fetch parameter
local param = self.rargs[arg]
-- Return nil if no table found
if not param then return nil end
-- Return default
if ret_func == 'd' then
return param.d
end
-- Return full table
if ret_func == 'f' then
return param
end
-- Return switch table
if ret_func == 's' then
return param.switches
end
-- Return the first switch, otherwise the default
if ret_func == 'r' then
if not param.switches then
return param.d
elseif param.switches[1] == nil_param then
return param.d
else
return param.switches[1]
end
end
-- If s2, reread the param
if ret_func == 's2' then
-- no switches
if not param.switches then
return nil
end
-- Parse index by removing the s
local index = retp:match('s(%d+)')
-- nil_param
if param.switches[index] == nil_param then
return nil
else
return param.switches[index]
end
end
end
--[[
Checks if a parameter is defined and not blank
-- arg : parameter to look at
-- index : index of switches to look at (defaults to default param)
-- defining 'all' will look at every possible value for the parameter
--]]
function Infobox:paramDefined(arg,index)
-- Can use cleaned params for switches
-- but need the passed to identify blanks in the template
local param = self.rargs[arg]
local _arg = self.args[arg]
if string.find(_arg or '','%?action=edit') then
_arg = ''
end
index = index or 0
local ret
-- create a long strong of every value to test for things if 'all'
if string.lower(index) == 'all' then
return self.catdata[arg] and (self.catdata[arg].one_defined or self.catdata[arg].all_defined)
-- index to number otherwise
else
index = tonumber(index) or 0
if index == 0 then
if param.switches then
if Infobox.isDefined(param.switches[1]) then
ret = param.switches[1]
else
ret = _arg
end
else
ret = _arg
end
else
if not param.switches then
return nil
end
if param.switches[index] == nil_param then
return nil
end
ret = param.switches[index]
end
end
return tostring(ret or ''):find('%S')
end
--[[
Function to perform a search on all parameters of a defined name
-- param: param name
-- val: a value or function
-- functions passed must return either true or false
-- with true being counted as a match
--]]
function Infobox:paramGrep(param,val)
local arg = self.rargs[param]
-- if no parameters, return nil
if not arg then
return nil
end
local ret
local valtype = type(val)
-- start with the default value
-- if it's a function, run it
if valtype == 'function' then
ret = val(arg.d)
-- true means it matched
if ret == true then
return ret
end
-- switches up here for functions
if arg.switches then
for _, v in ipairs(arg.switches) do
ret = val(v)
if ret == true then
return true
end
end
end
-- if it's just a value, compare the two
-- only run if types match to avoid errors
-- compare switches later
elseif valtype == type(arg.d) then
-- if a string, make case insensitive
if valtype == 'string' then
if string.lower(val) == string.lower(arg.d) then
return true
end
-- everything else just test directly
elseif val == arg.d then
return true
end
end
-- switch cases
-- more organized putting them here
if arg.switches then
for _, v in ipairs(arg.switches) do
if valtype == type(v) then
if valtype == 'string' then
if val:lower() == v:lower() then
return true
end
elseif val == v then
return true
end
end
end
end
-- return false in every other case
return false
end
------
function Infobox.paramRead(arg,val)
-- if no parameters, return nil
if not arg then
return nil
end
local ret
local valtype = type(val)
-- start with the default value
-- if it's a function, run it
if valtype == 'function' then
ret = val(arg.d)
-- true means it matched
if ret == true then
return ret
end
-- switches up here for functions
if arg.switches then
for _, v in ipairs(arg.switches) do
ret = val(v)
if ret == true then
return true
end
end
end
-- if it's just a value, compare the two
-- only run if types match to avoid errors
-- compare switches later
elseif valtype == type(arg.d) then
-- if a string, make case insensitive
if valtype == 'string' then
if string.lower(val) == string.lower(arg.d) then
return true
end
-- everything else just test directly
elseif val == arg.d then
return true
end
end
-- switch cases
-- more organized putting them here
if arg.switches then
for _, v in ipairs(arg.switches) do
if valtype == type(v) then
if valtype == 'string' then
if val:lower() == v:lower() then
return true
end
elseif val == v then
return true
end
end
end
end
-- return false in every other case
return false
end
----
-- Return collected category data
function Infobox:categoryData()
return self.catdata
end
-- Override tostring
function Infobox.tostring(box)
-- If not finished, finish
if not box.__finished then
box:finish()
end
-- Make entire html wrapper a string and return it
local btns = box.switch_buttons_tag
if box.custom_buttons then
btns = ''
end
if box.args.__dump__ then
return '<' .. 'pre>'..mw.dumpObject(box) .. '</' .. 'pre>[[Category:Dumping infoboxes]]'
end
return tostring(btns) .. tostring(box.rtable) .. table.concat(box.appendStrs, '') .. tostring(box.switch_tag) .. tostring(box.smw_error_tag)
end
return Infobox
-- </nowiki>
05a784cb90f58f63a02a7fce84a7d25e6561ae8e
866
864
2024-03-23T14:24:21Z
Gau Cho
5
Remove the bottomlinks feature - disabled in 100% of RSC/OSRS Templates and 75% of RS3 templates
Scribunto
text/plain
--[=[
-- For documentation, see [[Module:Infobox/doc]]
--]=]
-- <nowiki>
local Infobox = {}
Infobox.__index = Infobox
Infobox.__tostring = Infobox.tostring
-- Edit button for unknown params
local editbutton = require('Module:Edit button')
local edit = editbutton("'''?''' (edit)")
-- Page title
local pagename = mw.title.getCurrentTitle().fullText
-- map of flags to html tags used by Infobox.addRow()
-- let's only define it once, since :addRow() is used multiple times per module
local tagmap = {
tr = 'tr',
th = 'th',
td = 'td',
argh = 'th',
argd = 'td'
}
--[=[
-- Standardized functions
-- called as string with defineParams
--]=]
-- Standardized "has content" function
function hasContent(arg, default)
-- Return arg if any non-whitespace character is found
return string.match(arg or '','%S') and arg or default
end
-- Standardized "name" function
function subjectName(arg)
return string.match(arg or '','%S') and arg or nil
end
-- Create a standardized release function, since so many pages use it
-- Turns release and update into a single parameter
function releaseUpdate(release, update)
if not Infobox.isDefined(release) then
return nil
end
if string.lower(release) == 'no' then
return 'N/A'
end
if not Infobox.isDefined(update) then
return string.format('%s (Update unknown)',release)
end
if string.lower(update) == 'no' then
return release
end
return string.format('%s ([[Update:%s|Update]])', release, update)
end
-- Standardized image function
function image(img)
if img and img:find('%S') then
return img
else
return nil
end
end
-- Standardized numbers
function numbers(num)
num = string.gsub(num or '',',','')
return tonumber(num)
end
-- map of names to pre-defined functions, used by Infobox:defineParams
local func_map = {
name = subjectName,
release = { name = releaseUpdate, params = { 'release', 'update' }, flag = 'p' },
removal = { name = releaseUpdate, params = { 'removal', 'removalupdate' }, flag = 'p' },
has_content = hasContent,
image = image,
numbers = numbers,
}
-- used to fill nil params in switching sections
-- this message isn't kidding
-- If you see this message anywhere outside of this code
-- (including inside switchfo box data)
-- report it
local nil_param = 'INFOBOX MODULE ERROR, PLEASE REPORT TO WIKI ADMIN'
-- In case the nil_param is needed outside of this module
-- give it an easy way to be accessed
function Infobox.nilParam()
return nil_param
end
-- switch infobox globals
local LINE_WIDTH = 300
local MAX_LINES = 2
local DEFAULT_MAX_BUTTONS = 6
-- calculate with width of a switch infobox button
-- potential @TODO: rework to use actual character widths
function button_width(label)
local PX_PER_CHAR = 6
local PX_PAD_MAR = 24
return string.len(label) * PX_PER_CHAR + PX_PAD_MAR
end
Infobox.splitpoint = '&&SPLITPOINT&&'
-- quick test to see if a value is considered nil
function Infobox.isDefined(arg)
if arg == nil then
return false
end
if type(arg) == 'string' then
if arg == nil_param then
return false
elseif arg:find('%S') then
if arg:find('action=edit') then
return false
else
return true
end
else
return false
end
end
return true
end
--[[
Infobox class
-- args : parameters from frame to pass through
-- Sets a meta table and creates a <div> tag wrapper
-- other fields are initialized in other functions
--]]
function Infobox.new(args)
local obj = setmetatable({
args = args, -- parameters (uncleaned)
rargs = {}, -- parameters (cleaned)
params = {}, -- parameters mapped to functions
paramnames = {}, -- parameter names
dupeable = {}, -- parameters that are allowed to have duplicated switch data
table_class = 'infobox', -- The base class of the infobox
switchfo = false, -- switch infobox? or not?
switchfoattr = {}, -- switch data class changes
maxbuttons = DEFAULT_MAX_BUTTONS, -- maximum number of buttons before switching becomes a menu
switch_tag = '', -- switchfo data
switch_buttons_tag = '', -- switchfo buttons
custom_buttons = false,
smw_error_tag = '',
rtable = nil, -- returned infobox table
labels = nil, -- returned labels
_smw = {}, -- semantic mediawiki data
_smwOne = {}, -- semantic mediawiki data part 2
_smwSubobject = {}, -- semantic mediawiki data part 3
_smwSubobjectAppliesTo = nil, -- semantic mediawiki data part 3.5
_smwElement = {}, -- semantic mediawiki data part 4
setSMWElement = true,
versions = -1, -- number of switch versions (-1 is uncalculated)
infoboxname = nil, -- template name
appendStrs = {},
catdata = {}, -- meta category data
catlist = {}, -- defined table of category names (strings)
__finished = false, -- infobox status
},
Infobox)
return obj
end
--[[
Changes the class of the Infobox from 'infobox' to something else
use before :create()
--]]
function Infobox:setClass(new_class)
if type(arg) == 'string' then
self.table_class = new_class
end
end
--[[
Creates an infobox
-- If Infobox:maxVersions() has not been run, it will be run here
-- If the infobox should be a switch infobox, all labels will be added
-- Creates a wikitable that will be the infobox
THIS SHOULD BE DONE AFTER ADDING AND CLEANING PARAMETERS
--]]
function Infobox:create()
-- Run to find if this is a switch infobox and if so, how many boxes
if self.versions == -1 then
self:maxVersion()
end
-- Run if switch infobox
if self.switchfo then
-- Buttons wrapper
-- Hidden by default, unhidden by javascript
self.switch_buttons_tag = mw.html.create('div')
:addClass('infobox-buttons')
-- default version to immediately switch to via js
local defv = tonumber(self.args.defver)
if defv and defv <= self.versions then -- you troll, don't try to show something that isn't there
self.switch_buttons_tag:attr('data-default-version',defv)
end
local numlines = 1
local width_working = 0
local total_width = 0
local buttons = {}
-- Add individual buttons to the wrapper
for i=1,self.versions do
local wid = button_width(self.labels[i] or i)
width_working = width_working + wid
total_width = total_width + wid
if width_working > LINE_WIDTH then
numlines = numlines + 1
width_working = wid
end
local b = mw.html.create('span')
:attr('data-switch-index',tostring(i))
-- space to underscore
:attr('data-switch-anchor','#'..string.gsub(self.labels[i] or i,' ','_'))
:addClass('button')
:wikitext(self.labels[i] or i)
table.insert(buttons, {b, wid})
end
local best = {-1, 100000}
if (numlines > 1) and (numlines <= MAX_LINES) then
-- attempt to balance line widths
local w_s, w_e = 0,total_width
for i = 1,#buttons-1 do
w_s = w_s + buttons[i][2]
w_e = w_e - buttons[i][2]
if w_s > LINE_WIDTH then
-- w_s only increases, so we're done once it exceeds the width
break
end
if w_e <= LINE_WIDTH then
-- w_e only decreases, so just continue if it exceeds line
local diff = math.abs(w_s - w_e)
if diff < best[2] then
best = { i, diff }
end
end
end
if best[1] == -1 then
best = { math.floor(#buttons/2), 100000 }
end
end
for i,v in ipairs(buttons) do
self.switch_buttons_tag:node(v[1])
if i == best[1] then
self.switch_buttons_tag:tag('br')
end
end
-- Used by JavaScript to turn the buttons into a menu list if too many variants
if self.versions > self.maxbuttons or numlines > MAX_LINES then
self.switch_buttons_tag:addClass('infobox-buttons-select')
end
self.switch_buttons_tag:done()
end
-- Create infobox table
self.rtable = mw.html.create('table')
:addClass('plainlinks')
:addClass(table_class)
-- Add necessary class if switch infobox
if self.switchfo then
self.rtable:addClass('infobox-switch')
end
end
-- Defines an infobox name ({{Template:arg}})
-- Used to create a link at the bottom of pages and for css
function Infobox:defineName(arg)
self.infoboxname = arg
end
-- Change max number of buttons before switching to menu
-- defaults to 5
-- MUST BE RUN BEFORE :create()
function Infobox:setMaxButtons(arg)
-- if not a number, just go back to default
self.maxbuttons = tonumber(arg) or DEFAULT_MAX_BUTTONS
end
--[[
Add parameters functions
All parameters should be tables
The first parameter defines the type of cell to create
-- th : <th>
-- td : <td>
-- argh : <th>
-- argd : <td>
The second parameter defines what is inside the tag
-- th | th : text passed
-- argh | argd : parameter with the name passed
Additional named parameters can be used to add any styling or attributes
-- attr : mw.html:attr({ arg1 = '1', ... })
-- css : mw.html:css({ arg1 = '1', ...)
-- class : mw.html:addClass('arg')
---- class also supports a table of values, even though mw.html:addClass() does not
-- rowspan : mw.html:attr('rowspan',arg)
-- colspan : mw.html:attr('colspan',arg)
-- title : mw.html:attr('title',arg)
Example:
ipsobox:addRow( { 'th' , 'Header', title = 'Title' },
{ 'argh', 'arg1', class = 'parameter' } })
produces:
<tr><th title="Title">Header</th><th class="parameter">args.arg1</th></tr>
adding it to the infobox table of ipsobox
Cells defined as 'argh' and 'argd' will automatically have data-attr-param="" added, and defined as the passed argument if the infobox in creation is defined as a switch infobox
The row itself may be modified with metadata using the named index at "meta"
-- meta.addClass : mw.html:addClass('arg')
-- this function currently only supports a single string
--]]
function Infobox.addRow(box, ...)
-- New row to add
local args = ...
local _row = box.rtable:tag('tr')
-- For each member of tags
for i, v in ipairs(args) do
-- map tag name to appropriate tag, default to <td>
local _cell = _row:tag(tagmap[v.tag] or 'td')
-- mw.html:attr() and mw.html:css() both accept table input
-- colspan, rowspan, title will be quick ways to access attr
-- these functions also do all the necessary work
if v.attr then
_cell:attr(v.attr)
end
if v.colspan then
_cell:attr('colspan',v.colspan)
end
if v.rowspan then
_cell:attr('rowspan',v.rowspan)
end
if v.title then
_cell:attr('title',v.title)
end
if v.css then
_cell:css(v.css)
end
-- if class is a string, it can be added directly
-- if a table, add every value
-- mw.html:addClass() doesn't function with tables
-- so iterate over the class names here and add them individually
if v.class then
if type(v.class) == 'string' then
_cell:addClass(v.class)
elseif type(v.class) == 'table' then
for _, w in ipairs(v.class) do
_cell:addClass(w)
end
end
end
-- if the cell is a normal th or td, add the exact argument passed
if v.tag == 'th' or v.tag == 'td' then
_cell:wikitext(v.content)
-- if defined with "arg", add the argument with name passed
elseif v.tag == 'argh' or v.tag == 'argd' then
local content = box.rargs[v.content]
-- if the requested parameter doesn't exist whatsoever, just return a blank string
if not content then
content = ''
-- If switches exist, first attempt to use the version1 values
elseif content.switches then
if content.switches[1] ~= nil_param then
content = content.switches[1] or ''
else
content = content.d or ''
end
-- fallback to default value
else
content = content.d or ''
end
_cell:wikitext(content)
-- add necessary attribute for switch infoboxes
if box.switchfo then
_cell:attr('data-attr-param',v.content)
end
end
end
-- not that meta
-- allow classes to be defined on the whole row
-- okay, sort of meta
if args.meta then
if args.meta.addClass then
_row:addClass(args.meta.addClass)
end
end
return box
end
function Infobox.customButtonPlacement(box,arg)
box.custom_buttons = arg
return box
end
function Infobox.addButtonsRow(box, args)
if box.switchfo then
box.custom_buttons = true
local _row = box.rtable:tag('tr')
:addClass('rsw-infobox-switch-buttons-row')
:tag('td')
:addClass('rsw-infobox-switch-buttons')
:attr('colspan', args.colspan)
:node(box.switch_buttons_tag)
end
return box
end
function Infobox.addButtonsCaption(box)
if box.switchfo then
box.custom_buttons = true
local _row = box.rtable:tag('caption')
:addClass('rsw-infobox-switch-buttons-caption')
:node(box.switch_buttons_tag)
end
return box
end
--[[
-- adds a blank row of padding spanning the given number of columns
--]]
function Infobox.pad(box, colspan, class)
local tr = box:tag('tr')
:tag('td'):attr('colspan', colspan or 1):addClass('infobox-padding')
:done()
if class then
tr:addClass(class)
end
tr:done()
return box
end
--[[
-- functions the same as mw.html:wikitext() on the wrapper
-- Should only be used for categories really
--]]
function Infobox.wikitext(box, arg)
box.rtable:wikitext(arg)
return box
end
--[[
-- Adds the specified item(s) to the end of the infobox, outside of the table
-- items are concatenated together with an empty space
--]]
function Infobox.append(box, ...)
for i,v in ipairs({...}) do
table.insert(box.appendStrs, v)
end
return box
end
--[[
-- Adds a caption to the infobox
-- defaults to the pagename
-- or the default argument if defined
--]]
function Infobox.caption(box)
-- default to the article's name
local name = pagename
-- first see if the name parameter exists
if box.rargs.name then
-- then try the default
if box.rargs.name.d then
name = box.rargs.name.d
-- then look for swithes
elseif box.rargs.name.switches then
-- then look at version 1
if box.rargs.name.switches[1] ~= nil_param then
name = box.rargs.name.switches[1]
end
end
end
local caption = box.rtable:tag('caption')
:wikitext(name)
-- add necessary attribute for switch infoboxes
if box.switchfo then
caption:attr('data-attr-param','name')
end
return box
end
--[[
-- Functions for styling the infobox
-- works the same as the respective mw.html functions
--]]
-- attr
function Infobox.attr(box, arg)
box.rtable:attr(arg)
return box
end
-- css
function Infobox.float(box,float)
box.rtable:css('float',float)
return box
end
function Infobox.css(box, ...)
box.rtable:css(...)
return box
end
-- addClass
function Infobox.addClass(box, arg)
box.rtable:addClass(arg)
return box
end
-- Much like Infobox.addClass, but adds multiple classes
function Infobox.addClasses(box, ...)
for _, v in ipairs(...) do
box.rtable:addClass(box)
end
return box
end
--[[
Add tags directly to the infobox table
Use sparingly
Returns the tag created rather than the entire box
Which is an mw.html object
Further uses of :tag() will be mw.html.tag, rather than Infobox.tag
As such, Infobox:addRow() cannot be used afterwards without restating the infobox as the object
--]]
function Infobox.tag(box, arg)
return box.rtable:tag(arg)
end
--[[
Allows the infobox to use Semantic Media Wiki and give parameters properties
Pass a table to this function to map parameter names to properties
Calling syntax:
-- {{#show:page|?property}}:
-- "<property>" - unqualified and without a number will display the default value
-- "<property#>" - with a number will show the switch data from that index
-- "all <property>" - adding all will display every unique value in a comma separated list
Properties initiated in Infobox:finish()
--]]
function Infobox:useSMW(arg)
if type(arg) == 'table' then
for w, v in pairs(arg) do
self._smw[w] = v
end
end
end
--[[
As above, but only assigns to "<property>", which will act like "all <property>" - "<property>#" not present
Properties initiated in Infobox:finish()
--]]
function Infobox:useSMWOne(arg)
if type(arg) == 'table' then
for w, v in pairs(arg) do
self._smwOne[w] = v
end
end
end
--[[
Set up the infobox to set properties in a SMW subobject. This will create a subobject for each version
- if there is only one version, it will put the properties directly on to the page, like useSMWOne
Properties initiated in Infobox:finish()
--]]
function Infobox:useSMWSubobject(arg)
if type(arg) == 'table' then
for w, v in pairs(arg) do
self._smwSubobject[w] = v
end
end
end
function Infobox:useSMWElement(arg)
if type(arg) == 'table' then
for w, v in pairs(arg) do
self._smwElement[w] = v
end
self.setSMWElement = true
end
end
--[[
Finishing function
-- Finishes the return, adding necessary final tags
--]]
function Infobox:finish()
local onmain = mw.title.getCurrentTitle().namespace == 0
-- Don't finish twice
if self.__finished then
return
end
-- Add switch infobox resources
--if self.switchfo then
self.rtable:attr('data-resource-class', '.infobox-resources-'..string.gsub(tostring(self.infoboxname), ' ', '_'))
-- Wrapper tag, hidden
self.switch_tag = mw.html.create('div')
:addClass('infobox-switch-resources')
:addClass('infobox-resources-'..string.gsub(tostring(self.infoboxname), ' ', '_'))
:addClass('hidden')
for _, v in ipairs(self.paramnames) do
local param = self.rargs[v]
local default_value = param.d or edit
-- Parameters may not have any switches data, those are ignored
local switchattr = self.switchfoattr[v]
-- Parameter data wrapper
local res_span = self.switch_tag:tag('span')
:attr('data-attr-param',v)
-- Child for default value
local def = res_span:tag('span')
:attr('data-attr-index',0)
:wikitext(tostring(default_value))
-- Switch classes
if switchattr then
def:attr('data-addclass',switchattr.d)
end
def:done()
if param.switches then
-- Add all switches, ignore those defined as nil
for i, w in ipairs(param.switches) do
if w ~= nil_param and w ~= nil and w ~= default_value then
local _w = res_span:tag('span')
:attr('data-attr-index',i)
:wikitext(tostring(w))
-- Switch classes
if switchattr then
_w:attr('data-addclass',switchattr.switches[i])
end
_w:done()
end
end
res_span:done()
end
end
-- Add a tracking category for mainspace pages that have more than 1 version
if onmain then
if self.versions > 1 then
-- version count data
self.switch_tag:tag('span')
:wikitext(string.format('Versions: [[Version count::%s]]',self.versions))
:done()
self.switch_tag:wikitext('[[Category:Pages that contain switch infobox data]]')
end
end
self.switch_tag:done()
--end
-- smw data
if onmain then
-- members smw display, yes --> true; no --> false; other --> unknown
local function smwMembers(smw_arg)
local smw_argv = string.lower(smw_arg or '')
if smw_argv == 'yes' then
return 'true'
elseif smw_argv == 'no' then
return 'false'
else
return 'unknown'
end
end
-- release date smw display
local function smwRelease(smw_arg)
local _d,_m,_y = string.match(smw_arg or '', '%[%[(%d%d?) (%a+)%]%] %[%[(%d%d%d%d)%]%]')
if _d == nil then
return nil
end
return table.concat({_d,_m,_y},' ')
end
-- default, just return the text
local function smwDefault(smw_arg)
if smw_arg ~= nil_param and smw_arg ~= edit then
return smw_arg
else
return 'unknown'
end
end
local smw_to_func = {
members = smwMembers,
release = smwRelease,
removal = smwRelease,
default = smwDefault
}
local smw_data_arr = {}
-- custom properties
for w, v in pairs(self._smw) do
-- only needed to give special formatting to release
-- and to make members true/false
local smwfunc = smw_to_func[w] or smw_to_func.default
local curarg = self.rargs[w]
if curarg then
local _arg = curarg.d
local argdefault = _arg
if _arg == edit then
argdefault = 'unknown'
else
local _x = mw.text.split(tostring(_arg), Infobox.splitpoint, true)
if not smw_data_arr[v] then
smw_data_arr[v] = {}
end
if not smw_data_arr['All '..v] then
smw_data_arr['All '..v] = {}
end
for _,y in ipairs(_x) do
local temp_smw_data = smwfunc(y)
table.insert(smw_data_arr[v], temp_smw_data)
table.insert(smw_data_arr['All '..v], temp_smw_data)
end
end
if curarg.switches then
local _args = {}
for _, x in ipairs(curarg.switches) do
if x ~= nil_param then
table.insert(_args,x)
else
table.insert(_args,argdefault or nil_param)
end
end
for i, x in ipairs(_args) do
local _x = mw.text.split(tostring(x), Infobox.splitpoint, true)
if not smw_data_arr[v..i] then
smw_data_arr[v..i] = {}
end
if not smw_data_arr['All '..v] then
smw_data_arr['All '..v] = {}
end
for _,y in ipairs(_x) do
local temp_smw_data = smwfunc(y)
table.insert(smw_data_arr[v..i], temp_smw_data)
table.insert(smw_data_arr['All '..v], temp_smw_data)
end
end
end
end
end
-- if one version, put smwSubobject into smwOne and just do that
if self.versions < 2 and not self._smwSubobjectAppliesTo then
for w,v in pairs(self._smwSubobject) do
if not self._smwOne[w] then
self._smwOne[w] = v
elseif type(self._smwOne[w]) == 'table' then
table.insert(self._smwOne[w], v)
else
self._smwOne[w] = { self._smwOne[w], v }
end
end
end
for w, _v in pairs(self._smwOne) do
-- only needed to give special formatting to release
-- and to make members true/false
local smwfunc = smw_to_func[w] or smw_to_func.default
local curarg = self.rargs[w]
if curarg then
local _arg = curarg.d
local argdefault = _arg
if _arg == edit then
argdefault = 'unknown'
end
if curarg.switches then
local _args = {}
for _, x in ipairs(curarg.switches) do
if x ~= nil_param then
table.insert(_args,x)
else
table.insert(_args,argdefault or nil_param)
end
end
for i, x in ipairs(_args) do
local _x = mw.text.split(tostring(x), Infobox.splitpoint, true)
for _,y in ipairs(_x) do
local temp_smw_data = smwfunc(y)
for _,v in ipairs(type(_v) == 'table' and _v or {_v}) do
if not smw_data_arr[v] then
smw_data_arr[v] = {}
end
table.insert(smw_data_arr[v], temp_smw_data)
end
end
end
else
if Infobox.isDefined(_arg) then
local _targ = mw.text.split(tostring(_arg), Infobox.splitpoint, true)
for _,y in ipairs(_targ) do
local temp_smw_data = smwfunc(y)
for _,v in ipairs(type(_v) == 'table' and _v or {_v}) do
if not smw_data_arr[v] then
smw_data_arr[v] = {}
end
table.insert(smw_data_arr[v], temp_smw_data)
end
end
end
end
end
end
local smw_data_arr_elem = {}
for w, v in pairs(self._smwElement) do
-- only needed to give special formatting to release
-- and to make members true/false
local smwfunc = smw_to_func[w] or smw_to_func.default
local curarg = self.rargs[w]
if curarg then
local _arg = curarg.d
local argdefault = _arg
if _arg == edit then
argdefault = 'unknown'
end
if curarg.switches then
local _args = {}
for _, x in ipairs(curarg.switches) do
if x ~= nil_param then
table.insert(_args,x)
else
table.insert(_args,argdefault or nil_param)
end
end
for i, x in ipairs(_args) do
if Infobox.isDefined(x) then
local _x = mw.text.split(tostring(x), Infobox.splitpoint, true)
for _,y in ipairs(_x) do
local temp_smw_data = smwfunc(y)
if not smw_data_arr_elem[v] then
smw_data_arr_elem[v] = {}
end
table.insert(smw_data_arr_elem[v], temp_smw_data)
end
end
end
else
if Infobox.isDefined(_arg) then
local _targ = mw.text.split(tostring(_arg), Infobox.splitpoint, true)
for _,y in ipairs(_targ) do
local temp_smw_data = smwfunc(y)
if not smw_data_arr_elem[v] then
smw_data_arr_elem[v] = {}
end
table.insert(smw_data_arr_elem[v], temp_smw_data)
end
end
end
end
end
-- if is a switchfo, setup for subobjects
local smw_data_arr_subobj = {}
if self._smwSubobjectAppliesTo then
for i,k in ipairs(self._smwSubobjectAppliesTo) do
local subobj_data = {
['Is variant of'] = {pagename},
}
for w,v in pairs(self._smwSubobject) do
local smwfunc = smw_to_func[w] or smw_to_func.default
local curarg = self.rargs[w]
if curarg then
local argval = curarg.d
if curarg.switches then
argval = curarg.switches[i]
if not Infobox.isDefined(argval) then
argval = curarg.d
end
end
if Infobox.isDefined(argval) then
local _x = mw.text.split(tostring(argval), Infobox.splitpoint, true)
for _, _x1 in ipairs(_x) do
_x1 = smwfunc(_x1)
if _x1 ~= 'unknown' then
if not subobj_data[v] then
subobj_data[v] = {}
end
table.insert(subobj_data[v], _x1)
end
end
end
end
end
for w,v in ipairs(k) do
local subobj_name = v
-- can't have a . in the first 5 characters of a subobject identifier
if mw.ustring.find(mw.ustring.sub(subobj_name,0,5), '%.') then
self:wikitext('[[Category:Pages with an invalid subobject name]]')
subobj_name = mw.ustring.gsub(subobj_name, '%.', '')
end
if subobj_name == '0' or subobj_name == '' then
self:wikitext('[[Category:Pages with an invalid subobject name]]')
subobj_name = 'v_'..subobj_name
end
smw_data_arr_subobj[subobj_name] = subobj_data
end
end
end
local res = mw.smw.set(smw_data_arr)
local res_subobj = true
for w,v in pairs(smw_data_arr_subobj) do
res_subobj = mw.smw.subobject(v, w)
if not res_subobj == true then
break
end
end
if not (res == true and res_subobj == true) then
self.smw_error_tag = mw.html.create('div'):css('display','none'):addClass('infobox-smw-data')
if not res == true then
self.smw_error_tag:tag('div'):wikitext('Error setting SMW properties: '+res.error):done()
end
if not res_subobj == true then
self.smw_error_tag:tag('div'):wikitext('Error setting SMW subobject properties: '+res_subobj.error):done()
end
end
if self.setSMWElement then
if self.smw_error_tag == '' then
self.smw_error_tag = mw.html.create('div'):css('display','none'):addClass('infobox-smw-data')
end
for i,v in pairs(smw_data_arr_elem) do
for j,k in ipairs(v) do
if k ~= 'unknown' then
self.smw_error_tag:tag('span'):wikitext(mw.ustring.format('%s: [[%s::%s]]', i,i,k ))
end
end
end
end
if self._smwSubobjectAppliesTo then
if self.smw_error_tag == '' then
self.smw_error_tag = mw.html.create('div'):css('display','none'):addClass('infobox-smw-data')
end
for w,v in pairs(smw_data_arr_subobj) do
local subobjdiv = self.smw_error_tag:tag('div')
subobjdiv:tag('span'):wikitext('SMW Subobject for '..w)
for j,k in pairs(v) do
subobjdiv:tag('span'):wikitext(mw.ustring.format('%s: %s', j, table.concat(k, ', ')))
end
end
end
end
-- Define as finished
self.__finished = true
end
--[[
Function for defining parameters
-- name : parameter name
-- func : function to define param, defaults to looking at blanks
DO NOT DEFINE VERSION HERE
USE :maxVersion()
Can be used any number of times for efficient definition
--]]
function Infobox:defineParams(...)
for _, v in ipairs(...) do
-- For every parameter, store its corresponding function to self.params
if v.name then
-- If the value is a function or a table (which should define a function)
if type(v.func) == 'function' or type(v.func) == 'table' then
self.params[v.name] = v.func
-- If the value is a string, use the predefined Infobox function of that name
elseif type(v.func) == 'string' then
self.params[v.name] = func_map[v.func] or hasContent
-- Everything else just looks for blanks
else
self.params[v.name] = hasContent()
end
-- Create a list of all param names
table.insert(self.paramnames,v.name)
-- function to allow duplicated values
if v.dupes then
self.dupeable[v.name] = true
end
end
end
end
--[[
-- Forces an infobox to only use 1 variant
-- Mainly used by lite infoboxes
-- This should be run before creation
--]]
function Infobox:noSwitch()
self.versions = 1
self.switchfo = false
end
--[[
-- Calculates the max version
-- Adds labels
-- Sees if this needs to be a switch infobox
-- Returns extra version count (even if already run)
-- Sets the smw subobject names from version or smwname
--]]
function Infobox.maxVersion(box)
-- Only allowed to run once
if box.versions ~= -1 then
return box.versions
end
box.labels = {}
box.versions = 0
local smwappliesto = {}
-- Look for up to 125 variants, defined in order
for i=1, 125 do
-- If variant# exists
if box.args['version'..i] then
-- Increase version count
box.versions = box.versions + 1
-- Add its label
local label = box.args['version'..i] or ('Version '..i)
table.insert(box.labels,label)
-- add to appliesto
if box.args['smwname'..i] then
table.insert(smwappliesto, mw.text.split(box.args['smwname'..i], '¦'))
else
table.insert(smwappliesto, {label})
end
else
-- Stop if it doesn't exist
break
end
end
-- Define self as a switch infobox if at least 1 other version is found
if box.versions > 0 then
box.switchfo = true
box._smwSubobjectAppliesTo = smwappliesto
else
-- single version, check for appliesto
if box.args['smwname'] then
box._smwSubobjectAppliesTo = {mw.text.split(box.args['smwname'], '¦')}
end
end
-- versions calculated
return box.versions
end
--[[
-- Cleans parameters as defined by the above function
-- SHOULD NOT BE RUN UNTIL ALL THINGS ARE DEFINED
-- Handles switches as well
-- adds table _add to rargs, a cleaned up version of arguments
-- d : default value
-- switches : table of switches (in numerical order)
-- Functions can be defined with tables
---- name : name of function
---- params : table of args to pass to functions
---- flag : flags for input
d | #default : use the cleaned parameter first, otherwise passed
p : use the passed value of parameters
r | l : use raw (literal) text, rather than values
-- Defining a single flag will use that flag on all parameters
-- Defining a table of flags will use the respective flag by position
--]]
function Infobox:cleanParams()
-- map of flags to functionality
local flagmap = {
r = 'r',
l = 'r',
d = 'd',
p = 'p'
}
-- For all parameters named
for _, v in ipairs(self.paramnames) do
-- Parameter to add
local _add = {}
local catdata = { all_defined = true, one_defined = false }
-- If the value of params is a function
if type(self.params[v]) == 'function' then
-- Perform that function with the parameter
_add.d = self.params[v](self.args[v])
-- If it's a table, parse it into a function
elseif type(self.params[v]) == 'table' then
-- Find the functions name
local func = self.params[v].name
if type(func) == 'string' then
func = func_map[func]
end
-- catch all
if type(func) ~= 'function' then
func = has_content
end
-- Recreate table of args and flags
local func_args = {}
local flag = {}
-- If the flags are NOT a table, turn them into a table
-- Same size as the parameter table
-- Every flag will be the same
if type(self.params[v].flag) ~= 'table' then
-- Map flags, if unmapped, use default
local _flag = flagmap[self.params[v].flag] or 'd'
-- recreate table
for x=1,#self.params[v].params do
table.insert(flag,_flag)
end
-- If flags are already a table, recreate them in new table
elseif type(self.params[v].flag) == 'table' then
local _flag = self.params[v].flag
-- recreate table
for x=1,#self.params[v].params do
-- Map flags, if unmapped, use default
table.insert(flag,flagmap[_flag[x]] or 'd')
end
end
-- Recreate param table, parsing flags as instructions
for x, w in ipairs(self.params[v].params) do
local xarg
-- By default or defined as 'd'
-- looks for the cleaned value of the named parameter first
-- if it doesn't exist, look at the passed value next
-- if that doesn't exist, use blank
if flag[x] == 'd' then
xarg = self.rargs[w] and self.rargs[w].d
-- compare to nil explicitly because false is a valid value
if xarg == nil then
xarg = self.args[w] or ''
end
-- Look only at the passed value of the named parameter
-- if that doesn't exist, use blank
elseif flag[x] == 'p' then
xarg = self.args[w] or ''
-- Don't interpret value as a parameter name, and paste the as is
elseif flag[x] == 'r' then
xarg = w
end
-- Add parsed argument to table
table.insert(func_args,xarg)
end
-- Run function
_add.d = func(unpack(func_args))
end
if _add.d == nil or _add.d == nil_param then
-- have to do pagename defaults here to prevent weird behaviour with switch values
if v == 'name' then
_add.d = pagename
else
_add.d = edit
end
catdata.all_defined = false
else
--_add.d is not nil
catdata.one_defined = true
end
if self.switchfo then
-- Table of switches values and count of them
local _add_switch = {}
local switches = 0
-- Look for up to the maximum number
for i=1, self.versions do
local _addarg
-- see if this param is allowed to have switch
if v ~= 'image' and v ~= 'examine' and string.find(self.args[v..i] or '','%$%d') then
local refi = string.match(self.args[v..i],'%$(%d+)')
_addarg = _add_switch[tonumber(refi)] or nil_param
else
-- If the value of params is a function
if type(self.params[v]) == 'function' then
-- Perform that function with the parameter at that index
_addarg = self.params[v](self.args[v..i])
-- If it's a table, parse it into a function
elseif type(self.params[v]) == 'table' then
-- Find the functions name
local func = self.params[v].name
if type(func) == 'string' then
func = func_map[func]
end
-- catch all
if type(func) ~= 'function' then
func = has_content
end
-- Recreate table of args and flags
local func_args = {}
local flag = {}
-- If the flags are NOT a table, turn them into a table
-- Same size as the parameter table
-- Every flag will be the same
if type(self.params[v].flag) ~= 'table' then
-- Map flags, if unmapped, use default
local _flag = flagmap[self.params[v].flag] or 'd'
-- recreate table
for x=1,#self.params[v].params do
table.insert(flag,_flag)
end
-- If flags are already a table, recreate them in new table
elseif type(self.params[v].flag) == 'table' then
local _flag = self.params[v].flag
-- recreate table
for x=1,#self.params[v].params do
-- Map flags, if unmapped, use default
table.insert(flag,flagmap[_flag[x]] or 'd')
end
end
-- Recreate param table, parsing flags as instructions
for x, w in ipairs(self.params[v].params) do
local xarg
-- By default or defined as 'd'
-- looks for the cleaned value of the named parameter first
-- if it doesn't exist, look at the passed value next
-- if that doesn't exist, look at the default
-- if that doesn't exist, use blank
if flag[x] == 'd' then
if self.rargs[w] then
if self.rargs[w].switches then
xarg = self.rargs[w].switches[i]
else
xarg = self.args[w..i]
end
if xarg == nil or xarg == nil_param then
xarg = self.rargs[w].d
end
end
-- multiple catches in a row just to cover everything
if xarg == nil or xarg == nil_param then
xarg = self.args[w..i]
end
if xarg == nil or xarg == edit or xarg == nil_param then
xarg = self.args[w]
end
if xarg == nil or xarg == edit or xarg == nil_param then
xarg = ''
end
-- Look only at the passed value of the named parameter
-- if that doesn't exist, use unnumbered parameter
-- if that doesn't exist, use blank
elseif flag[x] == 'p' then
xarg = self.args[w..i] or self.args[w] or ''
-- Don't interpret value as a parameter name, and paste the as is
elseif flag[x] == 'r' then
xarg = w
end
-- Add parsed argument to table
table.insert(func_args,xarg)
end
-- Run function
_addarg = func(unpack(func_args))
end
end
-- If not defined, add the nil_param value
-- An actual nil would cause errors in placement
-- So it needs to be filled with an actual value
-- "nil_param" is understood as nil in other functions
-- Include table in case parameter isn't defined by template
if _addarg == nil or _addarg == nil_param then
table.insert(_add_switch, nil_param)
else
switches = switches + 1
table.insert(_add_switch, _addarg)
catdata.one_defined = true
end
end
-- If there are actually other values to switch to
-- Define a switches subtable, otherwise ignore it
if switches > 0 then
_add.switches = _add_switch
end
end
-- Quick fix for names (which defaults to pagename)
if v == 'name' then
if _add.d == pagename then
if _add.switches and _add.switches[1] ~= pagename and _add.switches[1] ~= nil_param then
_add.d = _add.switches[1]
end
end
end
-- Parameter cleaning finished, add to table of cleaned args
self.rargs[v] = _add
-- Category metadata
-- If every param except default is defined, all_defined = true
if catdata.all_defined == false then
if _add.d == edit then
if _add.switches then
catdata.all_defined = true
for _, v in ipairs(_add.switches) do
if v == nil_param then
catdata.all_defined = false
break
end
end
end
end
end
self.catdata[v] = catdata
end
-- mass dupe removal
-- this needs to be done at the end to keep dependent parameters working
-- also removes incompatible data types
for _, v in ipairs(self.paramnames) do
-- not removed from dupe enabled params parameters
if not self.dupeable[v] and self.rargs[v] and self.rargs[v].switches then
-- tells us whether or not we'll need to remove the switch data
-- switched to false if a switch values does not match the default
local rmvswitch = true
for q, z in ipairs(self.rargs[v].switches) do
-- remove types that don't turn into strings properly
if type(z) == 'table' or type(z) == 'function' then
self.rargs[v].switches[q] = nil_param
-- if it isn't nil or an edit button
-- change variable to keep the switch data
elseif z ~= nil_param and z ~= edit then
rmvswitch = false
end
end
-- remove switch data if everything was a dupe
if rmvswitch then
self.rargs[v].switches = nil
end
end
end
-- Title parentheses (has to be done here, sadly)
local _name
if self.rargs.name then
_name = self.rargs.name.d
-- replace html entities to their actual character
_name = mw.text.decode(_name)
-- if the page name matches the item name, don't add parentheses
if _name == mw.title.getCurrentTitle().fullText then
self.rtable:addClass('no-parenthesis-style')
end
end
end
--[[
Function to link internal use parameters with JS class attribution
-- self:linkParams{ { arg1, arg2 }, ... { arg1a, arg2a } }
-- arg1: parameter name being linked
-- arg2: parameter name that holds the classes
-- THIS FUNCTION SHOULD BE RUN AFTER :cleanParams()
-- THIS FUNCTION SHOULD BE RUN BEFORE :finish()
-- The second argument's data should always contain a value (a CSS class name) at every index
-- This function is cancelled for non switch boxes
--]]
function Infobox:linkParams(...)
if not self.switchfo then
return
end
for _, v in ipairs(...) do
self.switchfoattr[v[1]] = self.rargs[v[2]]
end
end
--[==========================================[
-- Functions for accessing parameters easily
--]==========================================]
--[[
Access the param
-- arg : param name
-- retp : return type
d | #default : self.rargs[arg].d -- Default value
f | full : self.rargs[arg] -- Entire table
s | switches : self.rargs[arg].switches -- Entire switch table
s# : self.rargs[arg].switches[#] -- Single switch value at index #
r : switches[1] or d
--]]
function Infobox:param(arg, retp)
-- All parameters
if arg == 'all' then
return self.rargs
end
-- case-insensitive flagging
retp = tostring(retp):lower()
local fmap = {
d = 'd', default = 'd', s0 = 'd', -- let s-naught count as default (since that's what it is)
f = 'f', full = 'f',
s = 's', switch = 's', switches = 's',
r = 'r'
}
local ret_func
-- quickly see if the parameter is a value greater than 0
if retp:match('s[1-9]') then
ret_func = 's2'
else
-- Otherwise map it to the correct flag, or the default
ret_func = fmap[retp] or fmap.d
end
-- Fetch parameter
local param = self.rargs[arg]
-- Return nil if no table found
if not param then return nil end
-- Return default
if ret_func == 'd' then
return param.d
end
-- Return full table
if ret_func == 'f' then
return param
end
-- Return switch table
if ret_func == 's' then
return param.switches
end
-- Return the first switch, otherwise the default
if ret_func == 'r' then
if not param.switches then
return param.d
elseif param.switches[1] == nil_param then
return param.d
else
return param.switches[1]
end
end
-- If s2, reread the param
if ret_func == 's2' then
-- no switches
if not param.switches then
return nil
end
-- Parse index by removing the s
local index = retp:match('s(%d+)')
-- nil_param
if param.switches[index] == nil_param then
return nil
else
return param.switches[index]
end
end
end
--[[
Checks if a parameter is defined and not blank
-- arg : parameter to look at
-- index : index of switches to look at (defaults to default param)
-- defining 'all' will look at every possible value for the parameter
--]]
function Infobox:paramDefined(arg,index)
-- Can use cleaned params for switches
-- but need the passed to identify blanks in the template
local param = self.rargs[arg]
local _arg = self.args[arg]
if string.find(_arg or '','%?action=edit') then
_arg = ''
end
index = index or 0
local ret
-- create a long strong of every value to test for things if 'all'
if string.lower(index) == 'all' then
return self.catdata[arg] and (self.catdata[arg].one_defined or self.catdata[arg].all_defined)
-- index to number otherwise
else
index = tonumber(index) or 0
if index == 0 then
if param.switches then
if Infobox.isDefined(param.switches[1]) then
ret = param.switches[1]
else
ret = _arg
end
else
ret = _arg
end
else
if not param.switches then
return nil
end
if param.switches[index] == nil_param then
return nil
end
ret = param.switches[index]
end
end
return tostring(ret or ''):find('%S')
end
--[[
Function to perform a search on all parameters of a defined name
-- param: param name
-- val: a value or function
-- functions passed must return either true or false
-- with true being counted as a match
--]]
function Infobox:paramGrep(param,val)
local arg = self.rargs[param]
-- if no parameters, return nil
if not arg then
return nil
end
local ret
local valtype = type(val)
-- start with the default value
-- if it's a function, run it
if valtype == 'function' then
ret = val(arg.d)
-- true means it matched
if ret == true then
return ret
end
-- switches up here for functions
if arg.switches then
for _, v in ipairs(arg.switches) do
ret = val(v)
if ret == true then
return true
end
end
end
-- if it's just a value, compare the two
-- only run if types match to avoid errors
-- compare switches later
elseif valtype == type(arg.d) then
-- if a string, make case insensitive
if valtype == 'string' then
if string.lower(val) == string.lower(arg.d) then
return true
end
-- everything else just test directly
elseif val == arg.d then
return true
end
end
-- switch cases
-- more organized putting them here
if arg.switches then
for _, v in ipairs(arg.switches) do
if valtype == type(v) then
if valtype == 'string' then
if val:lower() == v:lower() then
return true
end
elseif val == v then
return true
end
end
end
end
-- return false in every other case
return false
end
------
function Infobox.paramRead(arg,val)
-- if no parameters, return nil
if not arg then
return nil
end
local ret
local valtype = type(val)
-- start with the default value
-- if it's a function, run it
if valtype == 'function' then
ret = val(arg.d)
-- true means it matched
if ret == true then
return ret
end
-- switches up here for functions
if arg.switches then
for _, v in ipairs(arg.switches) do
ret = val(v)
if ret == true then
return true
end
end
end
-- if it's just a value, compare the two
-- only run if types match to avoid errors
-- compare switches later
elseif valtype == type(arg.d) then
-- if a string, make case insensitive
if valtype == 'string' then
if string.lower(val) == string.lower(arg.d) then
return true
end
-- everything else just test directly
elseif val == arg.d then
return true
end
end
-- switch cases
-- more organized putting them here
if arg.switches then
for _, v in ipairs(arg.switches) do
if valtype == type(v) then
if valtype == 'string' then
if val:lower() == v:lower() then
return true
end
elseif val == v then
return true
end
end
end
end
-- return false in every other case
return false
end
----
-- Return collected category data
function Infobox:categoryData()
return self.catdata
end
-- Override tostring
function Infobox.tostring(box)
-- If not finished, finish
if not box.__finished then
box:finish()
end
-- Make entire html wrapper a string and return it
local btns = box.switch_buttons_tag
if box.custom_buttons then
btns = ''
end
if box.args.__dump__ then
return '<' .. 'pre>'..mw.dumpObject(box) .. '</' .. 'pre>[[Category:Dumping infoboxes]]'
end
return tostring(btns) .. tostring(box.rtable) .. table.concat(box.appendStrs, '') .. tostring(box.switch_tag) .. tostring(box.smw_error_tag)
end
return Infobox
-- </nowiki>
f3dcc28411c15daa10f3d01733027d046eaee018
Factions
0
72
865
819
2024-03-23T14:23:10Z
Merds
25
/* Factions */
wikitext
text/x-wiki
[[File:Factions.jpg|thumb|right|Examples of the three factions.]]
'''Factions''' in [[Brighter Shores]] allow the [[player]] to specialise in using a specific [[combat]] style.
==Factions==
* The [[Cryoknight]] ([[File:Cryoknight icon.svg|18px]]) faction is focused on melee combat, using weapons like [[sword]]s alongside a [[shield]].
* [[Guardian]]s ([[File:Guardian icon.svg|18px]]) use ranged combat, preferring to wield weapons like [[crossbow]]s.
* The [[Hammermage]] ([[File:Hammermage icon.svg|18px]]) faction fights using a mix of melee and magic.
{{Factions}}
{{Mechanics}}
d46b23770133a17edc23d4714a666d2117a3560a
Module:Infobox/doc
828
504
867
2024-03-23T14:26:48Z
Gau Cho
5
Imported documentation, removed bottomLinks/defineLinks
wikitext
text/x-wiki
{{documentation}}
{{ToC|right}}
==Creating a template step-by-step==
===Import Module:Infobox===
<syntaxhighlight lang="lua">
local infobox = require('Module:Infobox')
</syntaxhighlight>
===Unpack the frame arguments===
<syntaxhighlight lang="lua">
function p.main(frame)
local args = frame:getParent().args
...
</syntaxhighlight>
===Define an Infobox object===
{{Main|Module:Infobox#new}}
<syntaxhighlight lang="lua">
local ret = infobox.new(args)
</syntaxhighlight>
===Map your arguments to functions===
{{Main|Module:Infobox#defineParams}}
<syntaxhighlight lang="lua">
ret:defineParams {
...
}
</syntaxhighlight>
===Parse your arguments===
{{Main|Module:Infobox#cleanParams}}
<syntaxhighlight lang="lua">
ret:cleanParams()
</syntaxhighlight>
===Initialise your HTML===
{{Main|Module:Infobox#create}}
<syntaxhighlight lang="lua">
ret:create()
</syntaxhighlight>
===Name your infobox===
{{Main|Module:Infobox#defineName}}
<syntaxhighlight lang="lua">
-- note: we don't use the "Template:" namespace prefix
ret:defineName('Infobox FooBar')
</syntaxhighlight>
===Give your infobox custom behaviour===
{{Main|Module:Infobox#addClass|Module:Infobox#useSMW|Module:Infobox#defineLinks}}
<syntaxhighlight lang="lua">
ret:addClass(...)
ret:useSMW({ ... })
</syntaxhighlight>
===Give your infobox a caption===
{{Main|Module:Infobox#caption}}
<syntaxhighlight lang="lua">
ret:caption()
</syntaxhighlight>
===Format your table===
{{Main|Module:Infobox#addRow}}
<syntaxhighlight lang="lua">
ret:addRow{ ... }
:addRow{ ... }
</syntaxhighlight>
===Finalise your template===
{{Main|Module:Infobox#finish}}
<syntaxhighlight lang="lua">
ret:finish()
</syntaxhighlight>
==Functions==
===Public functions===
For the example snippets below, <code>ret</code> is an arbitrary infobox initiated as:
<syntaxhighlight lang="lua">
local ret = Infobox.new(args)
</syntaxhighlight>
====Priority====
Certain functions rely on information created by other functions, and thus must be run in a particular order:
{| class="wikitable"
! 0
|
* new
|-
! 1
|
* defineParams
|-
! 2
|
* create
* maxVersion
|-
! 3
|
* cleanParams
* setMaxButtons
* noSwitch
|-
! 4
|
* ''other functions''
|-
! 5
|
* finish
|}
====nilParam====
<syntaxhighlight lang="lua">
Infobox.nilParam()
</syntaxhighlight>
Returns the value of the placeholder value <code>Infobox.nil_param</code>. This value is generally not seen, but it is used to fill switchbox data as <code>nil</code> causes unwanted behaviour.
====isDefined====
<syntaxhighlight lang="lua">
Infobox.isDefined(arg)
</syntaxhighlight>
Checks whether the value <code>arg</code> can be considered as [[Module:Infobox#Defined parameters|defined]].
====new====
<syntaxhighlight lang="lua">
Infobox.new(args)
</syntaxhighlight>
Creates a new infobox object with <code>args</code> as a <code>table</code> of values passed from the template invocation.
This function also creates the top-level wrapper and sets a metatable for the infobox.
====create====
<syntaxhighlight lang="lua">
ret:create()
</syntaxhighlight>
Creates the HTML tags used for the infobox itself. Will run <code>maxVersion()</code> if it has not been run already.
====defineName====
<syntaxhighlight lang="lua">
ret:defineName(arg)
</syntaxhighlight>
Defines the name of the infobox. This should be the base pagename; i.e. no "Template:" namespace prefix.
====setMaxButtons====
<syntaxhighlight lang="lua">
ret:setMaxButtons(n)
</syntaxhighlight>
Changes the behaviour of buttons by defining the maximum number of buttons that are allowed to appear. If the version count exceeds the button count, their buttons will be replaced with a drop down menu. If not run, the maximum button count will be 5.
====cleanParams====
<syntaxhighlight lang="lua">
ret:cleanParams()
</syntaxhighlight>
Parses the parameters with their mapped functions.
====defineParams====
<syntaxhighlight lang="lua">
ret:defineParams{
...
}
</syntaxhighlight>
Maps parameters to functions as defined by a <code>table</code> formatted as such:
<syntaxhighlight lang="lua">
{ name = <param>, func = <func>, dupes = true },
</syntaxhighlight>
<code>param</code> should be a <code>string</code> that names the parameter as it will be in references for use in other functions.
<code>func</code> should be a <code>function</code> or instructions on how to find a function.
<code>dupes</code> is a meta configuration that allows the parameter to be duplicated in switch data. Normally, these duplicate values are not needed, and they will be deleted if they are the same as the default values after all parameters have been parsed. Some parameters require duplication to function properly, such as display altering parameters defined with <code>linkParams()</code>.
If duplicates are not needed, this parameter should be deleted.
;Predefined functions
If <code>func</code> is a <code>string</code>, then the module will attempt to use a predefined function.
{| class="wikitable"
! Function
! Use
|-
! <tt>name</tt>
| Uses the parameter named "name". If "name" is blank or undefined, it will use the page name.
|-
! <tt>release</tt>
| Uses the parameters named "release" and "update" and formats it as such:
* If both are defined: <code><nowiki><release> ([[Update:<update>|Update]])</nowiki></code>
* If only release is defined: <code><release> (Update unknown)</code>
* If release is not defined: <code>? (edit)</code>
|-
! <tt>removal</tt>
| Uses the parameters named "removal" and "removalupdate" and formats it the same as <code>release</code>
|-
! <tt>hasContent</tt>
| If the parameter is defined and not blank, it will be used. Otherwise, <code>? (edit)</code> will be used.
|-
! <tt>image</tt>
| Currently functions the same as <code>hasContent</code>
|-
! <tt>numbers</tt>
| Removes commas from the parameter and attempts to cast it to a <code>number</code>. If it works, the number is used, otherwise <code>? (edit)</code>
|}
;User-defined functions
If <code>func</code> is a <code>function</code>, then that function will be used to parse the parameter. User-defined functions allow for more robust formatting and guidelines.
As a general practice, user-defined functions should be located under the <code>main</code> functions in the module. It is best to document these functions so that they may be changed by other editors if necessary.
In user-defined functions, circumstances where the edit button should be shown should return <code>nil</code>, which is automatically handled by the module.
;Simple and complex definitions
Parameters may be mapped to functions in a straightforward manner by simply definining a name of or reference to a function, such as:
<syntaxhighlight lang="lua">
ret:defineParams{
{ name = 'foo', func = 'hasContent' },
{ name = 'bar', func = barFunc }
}
</syntaxhighlight>
Simple definitions only pass the parameter from the master list named <name>. Some parameters need more interaction with other parameters. To do this, we require a complex definition. Complex definitions point to a user-defined function and map what parameters to pass. Complex definitions can also pass literal values or the uncleaned value with the use of flags.
Complex functions are defined as <code>table</code> values formatted as such:
<syntaxhighlight lang="lua">
func = { name = <funcname>, params = { <paramname>, ... }, flag = <flags> }
</syntaxhighlight>
A basic example for complex functions is:
<syntaxhighlight lang="lua">
ret:defineParams{
{ name = 'foo', func = { name = fooFunc, params = { 'bar', 'baz' } },
}
-- ...
-- ...
function fooFunc(arg1,arg2)
return arg1..arg2
end
</syntaxhighlight>
In this example, we have a parameter named "foo", but we use the parameters passed to the template named "bar" and "baz". Parameters are passed in the order listed, so in the above, the parameter <code>bar</code> is used for <code>arg1</code>, and <code>baz</code> is used for <code>arg2</code>.
Flags define the behaviour of the parameters named. The following flag behaviours exist:
* <code>d</code> - Looks for the cleaned and parsed version of the parameter. If not cleaned, it will use the value passed to the template. If neither exist, it will use <code>nil</code>. This is the default behaviour if no flag is defined.
* <code>p</code> - Looks only at the value passed to the template. If it does not exist, it will use <code>nil</code>.
* <code>r</code> ''or'' <code>l</code> - Uses the literal (or raw) value.
If <code>flag</code> is a <code>string</code>, then the behaviour defined by it will apply to every parameter passed. If <code>flag</code> is a <code>table</code>, then each flag will only define the behaviour of the respective parameter.
For example:
<syntaxhighlight lang="lua">
ret:defineParams{
{ name = 'foo', func = {
name = fooFunc,
params = { 'foo', 'bar', 'baz' },
flag = { 'd', 'p', 'l' },
},
}
</syntaxhighlight>
In the above snippet, <code>foo</code> will use the default behaviour and <code>bar</code> will only look for the value passed to the template. The third parameter will use the string literal <code>'baz'</code>.
;Definition order
Parameters are defined in the order that they are coded. If a parameter relies on the cleaned value of another parameter, then the parameter dependent on the other will need to be defined after in the definition table.
====addRow====
<syntaxhighlight lang="lua">
ret:addRow(tbl)
</syntaxhighlight>
Adds a new row to the template with columns and behaviour defined by <code>tbl</code>, which should be a <code>table</code> that holds cells defined as <code>table</code> variables, formatted as such:
<syntaxhighlight lang="lua">
{
{ celltype, label, <attr1> = <value1>, <attr2> = <value2> ... },
...
}
</syntaxhighlight>
<code>celltype</code> and <code>label</code> are <code>string</code> values that define the fundamental display of the cell.
{| class="wikitable"
! <tt>celltype</tt>
! Output
|-
! <tt>th</tt>
| Creates a <code><nowiki><th></nowiki></code> tag where the content is the value of <code>label</code>
|-
! <tt>td</tt>
| Creates a <code><nowiki><td></nowiki></code> tag where the content is the value of <code>label</code>
|-
! <tt>argh</tt>
| Creates a <code><nowiki><th></nowiki></code> tag where the content is the value of the parameter named <code>label</code>
|-
! <tt>argd</tt>
| Creates a <code><nowiki><td></nowiki></code> tag where the content is the value of the parameter named <code>label</code>
|}
The attributes are any of the available attributes defined inside the function. All functions that are ultimately run are documented in the [[mw:Extension:Scribunto/Lua reference manual#HTML library|Lua reference manual]] and are run on the tag for the specific table cell they are called on.
{| class="wikitable"
! <tt>attr</tt>
! Type
! Use
|-
! <tt>attr</tt>
| <tt>table</tt>
| Passes the value to <tt>mw.html.attr()</tt>
|-
! <tt>css</tt>
| <tt>table</tt>
| Passes the value to <tt>mw.html.css()</tt>
|-
! <tt>colspan</tt>
| <tt>number</tt>
| Uses the value to run <tt>mw.html.attr('colspan',#)</tt>
|-
! <tt>rowspan</tt>
| <tt>number</tt>
| Uses the value to run <tt>mw.html.attr('rowspan',#)</tt>
|-
! <tt>title</tt>
| <tt>string</tt>
| Uses the value to run <tt>mw.html.attr('title',text)</tt>
|-
! <tt>class</tt>
| <tt>string</tt>
| Passes the value to <tt>mw.html.addClass()</tt>
|-
! <tt>class</tt>
| <tt>table</tt>
| Passes every value in the table to <tt>mw.html.addClass()</tt>
|}
If the template is a switch infobox, then <code>data-attr-param="<paramname>"</code> will be added to the table cell.
This function will return the template, allowing further self functions to be performed.
====wikitext====
<syntaxhighlight lang="lua">
ret:wikitext(txt)
</syntaxhighlight>
Appends wikitext to the top-level wrapper. Templates, etc. passed directly from Lua code will need explicit preprocessing prior to display properly.
This function will return the template, allowing further self functions to be performed.
====caption====
<syntaxhighlight lang="lua">
ret:caption()
</syntaxhighlight>
Adds a caption to the infobox based off the subject name, using the following priority for the text:
* <code>name</code> parameter
* <code>name1</code> parameter (if switch infobox)
* <code><nowiki>{{PAGENAME}}</nowiki></code>
If the template is a switch infobox, this will also add <code>data-attr-param="name"</code> to the <code>caption</code>.
This function will return the template, allowing further self functions to be performed.
====attr====
<syntaxhighlight lang="lua">
ret:attr(arg)
</syntaxhighlight>
Passes <code>arg</code> to <code>mw.html.attr()</code>.
This function will return the template, allowing further self functions to be performed.
====float====
<syntaxhighlight lang="lua">
ret:float(dir)
</syntaxhighlight>
Changes the direction of the CSS style <code>float</code> for the top level wrapper. By default, all infoboxes float <code>right</code>.
This function will return the template, allowing further self functions to be performed.
====css====
<syntaxhighlight lang="lua">
ret:css(...)
</syntaxhighlight>
Passes the arguments to <code>mw.html.css()</code>.
This function will return the template, allowing further self functions to be performed.
====addClass====
<syntaxhighlight lang="lua">
ret:addClass(arg)
</syntaxhighlight>
Passes <code>arg</code> to <code>mw.html.addClass()</code>.
This function will return the template, allowing further self functions to be performed.
====addClasses====
<syntaxhighlight lang="lua">
ret:attr(...)
</syntaxhighlight>
Passes every argument to <code>mw.html.addClass()</code> individually.
This function will return the template, allowing further self functions to be performed.
====tag====
<syntaxhighlight lang="lua">
ret:tag(arg)
</syntaxhighlight>
Passes <code>arg</code> to <code>mw.html.tag()</code>.
This function will return the tag (not the template), allowing further self functions to be performed.
====useSMW====
<syntaxhighlight lang="lua">
ret:useSMW(tbl)
</syntaxhighlight>
Tells the module to create properties for parameters, as well as defining those mappings with <code>tbl</code>, a <code>table</code> whose elements form an associated array formatted as such:
<syntaxhighlight lang="lua">
{
parameter = property,
...
}
</syntaxhighlight>
When defined, properties will be defined for two separate properties: both "Property:<name>" and "Property:All <name>". If the template holds switch infobox data, then properties will be defined for "Property:<name><X>" for all applicable X. The "All <name>" properties exist to create storage for all applicable values. Keep this in mind, as "Property:<name>" will only ever store the default value.
By default, the module will define [[Property:Release date]] and [[Property:Is members only]].
====noSwitch====
<syntaxhighlight lang="lua">
ret:noSwitch()
</syntaxhighlight>
Forces the template to use only a single version, the default.
====maxVersion====
<syntaxhighlight lang="lua">
ret:maxVersion()
</syntaxhighlight>
Returns the number of versions used by the infobox. When run the first time, this function will check and define the version count first. Subsequent calls will simply return the count.
====linkParams====
<syntaxhighlight lang="lua">
ret:linkParams{
paramName = linkedParam,
...
}
</syntaxhighlight>
Links two parameters where one parameter (<code>paramName</code>) is the parameter name of a cell's contents, and <code>linkedParam</code> is the name of the parameter that contains the classes for the specified cell. It will only have an effect on switch infoboxes. Both parameters will need to be defined in the infobox with <code>definedParams</code>. They should be functions of the parameter they operator on and include <code>dupes = true</code> in their definitions.
This function must be called only '''after''' calling <code>ret:cleanParams()</code> (and before <code>ret:finish()</code>).
Example: grand exchange graphs do not make sense to display for untradeable items within switch infoboxes (e.g. [[ahrim's staff]]); one could use a linkParam to add a class that will display:none table row when switching to untradeable items.
In the source code of the infobox, these will be added as such:
<syntaxhighlight lang="html5">
<div class="infobox-switch-resources hidden">
<span data-attr-param="param">
<span data-attr-index="0" data-addclass="linkedParam[d]">paramName[d]</span>
<span data-attr-index="1" data-addclass="linkedParam[1]">paramName[1]</span>
<span data-attr-index="2" data-addclass="linkedParam[2]">paramName[2]</span>
</span>
</div>
</syntaxhighlight>
From this, the switch infobox javascript will add the contents of <code>data-addclass</code> to class attribute of the row of the table when the infobox is switched. You will also need to define the classes you are using in global CSS.
If the parameter is a th or td element, the class is added to the parent tr. Otherwise, it is added to the element directly (e.g. caption element).
====finish====
Finalises the template and adds remaining required HTML.
* Creates hidden tag for switch infobox data (if needed)
* Adds [[:Category:Pages that contain switch infobox data]] if in the mainspace
* Defines [[Property:Version count]] if in the mainspace
* Adds [[RS:SMW|Semantic MediaWiki Data]] in a hidden tag (if needed)
*: This data can be viewed on the page itself by using inspect element, but it is not normally visible
* Adds infobox bottom links
====param====
<syntaxhighlight lang="lua">
ret:param(arg, flag)
</syntaxhighlight>
Returns the value of the parameter named <code>arg</code>. The exact format and values are determined by the <code>flag</code>:
* <code>d</code> ''or'' empty - default value of the parameter
* <code>f</code> ''or'' <code>full</code> - all values of the parameter as a table
* <code>s</code> ''or'' <code>switches</code> - table of all switch values (or nil if no switches are present)
* <code>s#</code> - switch value at index <code>#</code>
* <code>r</code> - if defined, switch value 1, otherwise the default value
Note that this function returns the actual table used by the template. If a switch value is equal to <code>Infobox.nil_param</code> for flag <code>s#</code>, then <code>nil</code> will be returned instead; however, when calling specific indices from the tables returned by <code>f</code> or <code>r</code>, the value of <code>Infobox.nil_param</code> will be returned without extra parsing.
====paramDefined====
<syntaxhighlight lang="lua">
ret:paramDefined(arg, flag)
</syntaxhighlight>
Looks to see if the parameter named <code>arg</code> is [[Module:Infobox#Defined parameters|defined]] at any index, based on instructions from <code>flag</code>:
* <code>0</code> ''or'' empty - default value of parameter
* <code>#</code> - value of switch at index <code>#</code>
* <code>all</code> - true if the parameter is defined with a default or at any switch value
====paramGrep====
<syntaxhighlight lang="lua">
ret:paramGrep(arg, query)
</syntaxhighlight>
Performs a function or search on every possible value of the parameter named <code>arg</code>. <code>query</code> can be either a <code>function</code>, a <code>string</code>, or a <code>number</code>. If a match is found or the function query returns true, <code>paramGrep</code> will end its search.
If <code>query</code> is a function, that function must pass a single argument (the parameter), and return either <code>true</code> or <code>false</code>.
If <code>query</code> is a string, then that string will be compared to each value of the parameter. If they match exactly, disregarding casing, then <code>true</code> will be returned. To perform a pattern match on strings, you will need to define <code>query</code> as a function that returns a boolean value based on <code>string.find</code> or <code>mw.ustring.find</code>.
If <code>query</code> is a number (or any other type), then it will be compared to each value for a match.
Matches are only checked if the type of <code>query</code> matches the value of the parameter; e.g., it is not valid to search for a number (ex: <code>4</code>) inside a string (ex: <code>'455'</code>).
====paramRead====
<syntaxhighlight lang="lua">
Infobox.paramRead(arg, query)
</syntaxhighlight>
Performs the same function as <code>paramGrep</code>; however, instead of <code>arg</code> being a name of a parameter to look for, it is the table itself. Useful for functions where only the table of parameters is passed, but not the whole infobox.
====categoryData====
<syntaxhighlight lang="lua">
ret:categoryData()
</syntaxhighlight>
Returns fundamental category data collected during <code>Infobox:cleanParams()</code>.
Fields in the category data include:
* <code>one_defined</code> - <code>true</code> if at least one possible value of the parameter is defined
* <code>all_defined</code> - <code>false</code> if at least one possible value of the parameter is not defined
====addDropLevelVars====
<syntaxhighlight lang="lua">
Infobox:addDropLevelVars(key, paramName)
</syntaxhighlight>
Used to link infobox versions to specific [[Template:DropsLine|drops table]] versions. Sets a var <code>DropLevel_{key}_{version_name}</code>, where the value is pulled from the value of the given param <code>paramName</code> at each version. If multiple values are set with the same key, the result will be a comma separated string.
For example, if an infobox has <code>|version1 = A|level1 = 10</code>, then <code>ret:addDropLevelVars('combat', 'level')</code> will set the variable <code>DropLevel_combat_A = 10</code>.
==Rules==
===Defined parameters===
Parameters are to be considered "defined" if they meet all of the following criteria:
* Is not <code>nil</code>
* Contains at least one non-whitespace character <code>string.find(param,'%S')</code>
* Is not equal to <code>Infobox.nil_param</code>
* Does not contain the string <code>'action=edit'</code>
8cdcf2cfecf010d28eaf327d04e763ca9e7e0769
Template:Citations
10
505
868
2024-03-23T14:27:12Z
Habblet
11
Created page with "{{Navbox |doc = no |hidecat = yes |state = uncollapse |name = Citations |title = [[Brighter Shores:Style guide/References and citations|References and citations]] |gtitle1 = Footnote-style |gtype1 = Subgroup |group1 = {{Navbox |subgroup = Yes |gtitle1 = Standard |group1 = * [[Template:CiteGeneral|General]] * [[Template:CiteTwitter|Twitter]] |gtitle2 = Other |group2 = * [[Template:Refn|Refn]] * [[Template:NamedRef|NamedRef]] * Template:..."
wikitext
text/x-wiki
{{Navbox
|doc = no
|hidecat = yes
|state = uncollapse
|name = Citations
|title = [[Brighter Shores:Style guide/References and citations|References and citations]]
|gtitle1 = Footnote-style
|gtype1 = Subgroup
|group1 =
{{Navbox
|subgroup = Yes
|gtitle1 = Standard
|group1 =
* [[Template:CiteGeneral|General]]
* [[Template:CiteTwitter|Twitter]]
|gtitle2 = Other
|group2 =
* [[Template:Refn|Refn]]
* [[Template:NamedRef|NamedRef]]
* [[Template:RefDate|RefDate]]
* [[Template:Reflist|Reflist]]
* [[Template:Notelist|Notelist]]
}}
|gtitle2 = Other
|group2 =
* [[Module:References|Module]]
}}<noinclude><!-- This navbox is transcluded on other templates' documentation so it is hidden on the template and called right here-->{{Navbox/doc}}[[Category:Navigational templates]]</noinclude>
34588894364f05e3163ae2fb8e498ca9e8029cb8
Template:Unsigned
10
506
870
2024-03-23T14:33:12Z
Habblet
11
Created page with "{{nbsp}}<small>—The preceding [[Brighter Shores:Signatures|unsigned]] comment was added by [[Special:Contributions/{{{1}}}|{{{1}}}]] ([[User talk:{{#replace:{{{1}}}|:|:}}|talk]]){{#if:{{{2|}}}| on  {{#replace:{{{2}}}|<nowiki /> (UTC)}} (UTC)|}}.</small><noinclude>{{/doc}}</noinclude>"
wikitext
text/x-wiki
{{nbsp}}<small>—The preceding [[Brighter Shores:Signatures|unsigned]] comment was added by [[Special:Contributions/{{{1}}}|{{{1}}}]] ([[User talk:{{#replace:{{{1}}}|:|:}}|talk]]){{#if:{{{2|}}}| on  {{#replace:{{{2}}}|<nowiki /> (UTC)}} (UTC)|}}.</small><noinclude>{{/doc}}</noinclude>
59bad4c7657f4eea2e742036816d8eeee9481972
Template:Unsigned/doc
10
507
871
2024-03-23T14:34:31Z
Habblet
11
Created page with "{{Documentation}} The '''Unsigned''' template is used to add a "signature" another user's comments. ==Usage== {{t|u|user name|date}} * '''user name:''' Name or IP of user who left comment. * '''date:''' Timestamp from edit history (remember to use UTC times). '''Note:''' The datestamp from the edit history appears in your local time that is set in your preferences. In order for the time to be UTC, adjust it using the difference you designated between the server time..."
wikitext
text/x-wiki
{{Documentation}}
The '''Unsigned''' template is used to add a "signature" another user's comments.
==Usage==
{{t|u|user name|date}}
* '''user name:''' Name or IP of user who left comment.
* '''date:''' Timestamp from edit history (remember to use UTC times).
'''Note:''' The datestamp from the edit history appears in your local time that is set in your preferences. In order for the time to be UTC, adjust it using the difference you designated between the server time and local time.
==Example==
'''Typing:''' <code><nowiki>{{Unsigned|User|10:10, 10 September 2008}}</nowiki></code>
'''will yield:''' {{Unsigned|User|10:10, 10 September 2008}}
<includeonly>[[Category:Transclusion templates|{{BASEPAGENAME}}]]</includeonly>
8e961e21e4595e977f81a7e4de2c32b99833931f
Template:Nbsp
10
508
872
2024-03-23T14:34:57Z
Habblet
11
Created page with "{{Multi| |{{{1|1}}}}}<noinclude>{{/doc}}</noinclude>"
wikitext
text/x-wiki
{{Multi| |{{{1|1}}}}}<noinclude>{{/doc}}</noinclude>
61daf0d7b8be40943f672f058c80cb5cebe7db84
Template:Nbsp/doc
10
509
873
2024-03-23T14:35:09Z
Habblet
11
Created page with "{{Documentation}} <pre>&nbsp;</pre> Inserts a non-breaking space; template so clean-up bots can distinguish a deliberate ''&nbsp;'' from an RTE-generated one. First unnamed parameter can be used to include multiple spaces; defaults to 1. <includeonly>[[Category:Formatting templates]]</includeonly>"
wikitext
text/x-wiki
{{Documentation}}
<pre>&nbsp;</pre>
Inserts a non-breaking space; template so clean-up bots can distinguish a deliberate ''&nbsp;'' from an RTE-generated one.
First unnamed parameter can be used to include multiple spaces; defaults to 1.
<includeonly>[[Category:Formatting templates]]</includeonly>
13b6cfa4d748ee7dfcbe4eba2030b9a776250fd4
Template:Multi
10
510
874
2024-03-23T14:35:29Z
Habblet
11
Created page with "<includeonly>{{#invoke:Multi|main}}</includeonly><noinclude>{{/doc}}<noinclude>[[Category:Mathematical templates|{{PAGENAME}}]]</noinclude>"
wikitext
text/x-wiki
<includeonly>{{#invoke:Multi|main}}</includeonly><noinclude>{{/doc}}<noinclude>[[Category:Mathematical templates|{{PAGENAME}}]]</noinclude>
20508aea87fee66cbc633f64018b3f3973856eed
User:Digitalspork
2
511
875
2024-03-23T14:35:36Z
Digitalspork
40
Created User Page
wikitext
text/x-wiki
I'm Spork! (Digitalspork everywhere)
She/Her ♡
c7d418f88197d428e389804b4586b9bd4546f9ed
Template:Multi/doc
10
512
876
2024-03-23T14:36:11Z
Habblet
11
Created page with "{{Documentation}} This template makes it possible to insert any number of times it should be repeated. To use it, insert {{t|Multi|text to be repeated|amount of times}} for example: {{t|Multi|Hi!|5}} results in: {{Multi|Hi!|5}} '''NOTE:''' To insert a space at the beginning or the end of a repeating, use <code>&nbsp;</code> This template currently works until 1399 repeatings."
wikitext
text/x-wiki
{{Documentation}}
This template makes it possible to insert any number of times it should be repeated. To use it, insert {{t|Multi|text to be repeated|amount of times}} for example: {{t|Multi|Hi!|5}} results in:
{{Multi|Hi!|5}}
'''NOTE:''' To insert a space at the beginning or the end of a repeating, use <code>&nbsp;</code>
This template currently works until 1399 repeatings.
9d662eb40e5859a515ee96312be5922415670d99
Module:Multi
828
513
877
2024-03-23T14:36:36Z
Habblet
11
Created page with "--<nowiki> local p = {} function p.multi(str, count) return string.rep(str, count) end function p.main(frame) local args = frame:getParent().args local str = args[1] local times = args[2] or 2 return p.multi(str, times) end return p --</nowiki>"
Scribunto
text/plain
--<nowiki>
local p = {}
function p.multi(str, count)
return string.rep(str, count)
end
function p.main(frame)
local args = frame:getParent().args
local str = args[1]
local times = args[2] or 2
return p.multi(str, times)
end
return p
--</nowiki>
6c6bbce49d1caec9fbbc6ae1f8f38a27fc2c4b23
Module:Multi/doc
828
514
878
2024-03-23T14:36:42Z
Habblet
11
Created page with "{{No documentation}}"
wikitext
text/x-wiki
{{No documentation}}
ad36a615c98d03e22b03ecaa7b9d7d87b5d7b517
Category:Mathematical templates
14
515
879
2024-03-23T14:37:01Z
Habblet
11
Created page with "{{Categoryheader|templates|those that are mathematical functions or parser functions to calculate||}} [[Category:Templates]]"
wikitext
text/x-wiki
{{Categoryheader|templates|those that are mathematical functions or parser functions to calculate||}}
[[Category:Templates]]
1397cc85263799b4db0ef470fa114bc28ea0fb07
Brighter Shores:Signatures
4
516
880
2024-03-23T14:39:25Z
Habblet
11
Created page with "{{Shortcut|BS:SIG}} When posting in the forum or on [[Brighter Shores:Talk page|talk pages]], you must '''sign your posts'''. This helps other readers identify who posted what and organise a mass of comments into an easy to read conversation. Posting signatures will also help other users to identify the author of a comment, to navigate to their talk pages. In addition, signatures contain a '''time stamp''' which records when a comment was made as well. While it is impo..."
wikitext
text/x-wiki
{{Shortcut|BS:SIG}}
When posting in the forum or on [[Brighter Shores:Talk page|talk pages]], you must '''sign your posts'''. This helps other readers identify who posted what and organise a mass of comments into an easy to read conversation. Posting signatures will also help other users to identify the author of a comment, to navigate to their talk pages. In addition, signatures contain a '''time stamp''' which records when a comment was made as well.
While it is important to sign your comments on the forums, talk pages, and some project pages, signatures should '''never''' go in the mainspace. No matter what content you add, you may never [[Brighter Shores:Ownership|sign it]], since the wiki is a collaborative effort, and the articles and files belong to every one of the contributors. Credit is given to each contributor in the page history, which lists every revision ever made to a page.
==How to sign your posts==
There are two ways to sign your posts. The first is to type four tildes (<nowiki>~~~~</nowiki>) at the end of your post, which, when saved, will generate your signature and a time stamp. The other way is to click the signature button ([[File:Signature button.png|The signature button]]) at the top of the editing window. This will insert the four tildes for you!
===Different signature forms===
Typing four tildes results in your signature and a time stamp, which is almost always what should be used, but there are other possibilities as well. Typing three tildes results in just your signature appearing. This is most commonly used when the time a comment was made is unimportant, such as a guest book or a list of project members. Typing 5 tildes results in just the time stamp appearing.
{| class="wikitable"
! Wikimarkup !! Resulting code !! Resulting display
|-
|align="center"|<nowiki>~~~</nowiki>
|<nowiki>[[User:Example|Example]]</nowiki>
| [[User:Example|Example]]
|-
|align="center"|<nowiki>~~~~</nowiki>
| <nowiki>[[User:Example|Example]]</nowiki> {{CURRENTTIME}}, {{CURRENTDAY}} {{CURRENTMONTHNAME}} {{CURRENTYEAR}} (UTC)
| [[User:Example|Example]] {{CURRENTTIME}}, {{CURRENTDAY}} {{CURRENTMONTHNAME}} {{CURRENTYEAR}} (UTC)
|-
|align="center"|<nowiki>~~~~~</nowiki>
| {{CURRENTTIME}}, {{CURRENTDAY}} {{CURRENTMONTHNAME}} {{CURRENTYEAR}} (UTC)
| {{CURRENTTIME}}, {{CURRENTDAY}} {{CURRENTMONTHNAME}} {{CURRENTYEAR}} (UTC)
|}
==Custom signatures==
The default signature is a simple link to your userpage. Many users wish to express individuality in their signatures, so they create customised signatures. Users are encouraged to do so, however they must adhere to a few simple rules. We have these rules because without them, custom signatures very quickly begin making a mess of things. Custom signatures are often very long in terms of the code required to produce them. When many such signatures are posted in full on a single page, the page can get very long and become difficult to edit for users with slower internet connections.
In addition to bandwidth concerns, when an image is used in a signature, it quickly becomes included on hundreds of pages that it would not normally appear on. If the image in question ever needs to be replaced or renamed, the huge amount of pages that it links to becomes a large issue, since it must be replaced on each and every page to prevent it from appearing as a [[Special:WantedFiles|wanted file]], a file which is linked to, but does not exist.
To prevent both of these issues, signatures must be placed on pages as a template. This means that, when the signature is viewed in the page editor, it shows up as <code><nowiki>{{Signatures/Example}}</nowiki></code> instead of the entire code for your signature. Not only does it make pages much smaller by compressing the entire code of your signature into that one snippet of code, but it makes replacing images far easier, since the image need only be changed on the template, then it will be updated on every page that the template is used.
===Creating your signature===
Users interested in creating their own signatures can find help on [[Brighter Shores:Customising your signature|this page]]. When creating signatures, the following rules apply to both editors creating their own signatures and to editors creating signatures for others.
# Signatures must link to the user's userpage—or the user's talk page, if they prefer not to have a user page on this wiki. Signatures may link to both if the user so desires. The name does not need to be the user's exact account name, but it must be a name by which the user is widely known. Without this provision, signatures do not provide the useful ability to identify a comment from a certain user on a page.
# Signatures may not exceed the '''maximum height of 31px'''.
# Users may only have one signature template page. That page may contain more than one signature, but only one may be used at a time. Methods by which this can be accomplished are listed below.
# Signatures cannot contain more than two images, since signatures with more than this can cause computers to load them slowly.
# Images contained in signatures may not be higher than 31 pixels. Users can scale images to 31px high without distorting them by using the code: <code><nowiki>[[File:Example.png|x31px]]</nowiki></code>
# Signatures must not contain linebreaks. This results in a line break when the signature is used, which interferes with formatting and other page code.
# Signatures that use HTML tags must be balanced. This means that every <nowiki><span> must have a matching </span></nowiki>. You can tell if your signature is balanced by typing something after it. If it is plain text, then your signature is balanced.
# Signatures must not be excessively long. There is no set limit for how long is too long, but use common sense.
# Signatures may not be animated. This includes animated GIF images, GIF slideshows that switch between still images, or flashing text.
===Setting up your signature===
Once you have your signature code, either by creating it yourself or by having another user create it for you, you must create a template to store your signature on. Usually, this is <code><nowiki>Template:Signatures/</nowiki>{{USERNAME}}</code>, however it can also be a sub-page of your user page, such as <code>User:{{USERNAME}}/Signature</code>.
*If using <code><nowiki>Template:Signatures/</nowiki>{{USERNAME}}</code>
*:After the code for your signature, '''without''' hitting enter or inserting a line break, paste the following code: <code><nowiki><noinclude>[[Category:Signatures|{{ucfirst:{{SUBPAGENAME}}}}]]</noinclude></nowiki></code>
*If using <code>User:{{USERNAME}}/Signature</code>
*:After the code for your signature, '''without''' hitting enter or inserting a line break, paste the following code: <code><nowiki><noinclude>[[Category:Signatures|{{ucfirst:{{BASEPAGENAME}}}}]]</noinclude></nowiki></code>
This won't appear in your signature when you sign, but is used to add your signature to [[:Category:Signatures]] and to sort it based on your username. An example of a signature page is:
<pre><span style="border:2px solid green;">[[User:Example|Example]]</span><noinclude>[[Category:Signatures|{{ucfirst:{{SUBPAGENAME}}}}]]</noinclude></pre>
Once the template page is set up, go to your [[Special:Preferences|preferences]], ensure that "Treat signature as wikitext" is checked, and paste this into the "New signature" field:
<nowiki>{{Template:Signatures/</nowiki>{{USERNAME}}<nowiki>}}</nowiki> or <nowiki>{{User:</nowiki>{{USERNAME}}<nowiki>/Signature}}</nowiki>
If your signature is not on a sub page of Template:Signatures, then change <code>Template:Signatures/{{USERNAME}}</code> and <code>Signatures/{{USERNAME}}</code> to whatever page your signature is located on, such as <code>User:{{USERNAME}}/Signature</code>
===Multiple signatures===
While only one signature can be active at time, users are free to change signatures whenever they wish, as well as having multiple signatures to pick from. A common way to do this it is to store signatures on your user page and paste whichever one you want to use currently in your template page. Another more advanced method is to store them on your signature page, but prevent them from appearing along with your current signature by use of noinclude tags. For example:
<pre><span style="border:2px solid green;">[[User:Example|Example]]</span><noinclude>
Other signature codes
[[Category:Signatures|{{ucfirst:{{SUBPAGENAME}}}}]]</noinclude></pre>
Notice that the opening <tt><noinclude></tt> tag is pasted '''before''' the line break. If you do not do this, it will break the signature formatting.
==Dealing with unsigned comments==
If you see an unsigned comment, feel free to use the {{t|unsigned}} template. The table below shows how to use this template.
{| class="wikitable"
! Wikimarkup !! Example code !! Resulting display
|-
|<nowiki>{{unsigned|</nowiki>''user name or IP''<nowiki>|</nowiki>''date and time''<nowiki>}}</nowiki>
|<nowiki>{{unsigned|Example|</nowiki>{{#time:Y-m-dTH:i:s}}<nowiki>}}</nowiki>
|{{unsigned|Example|{{#time:Y-m-dTH:i:s}}}}
|}
You may also want to remind users to sign their posts if they aren't, or if they don't know how, direct them to this page.
==List of signatures==
Feel free to post your signature or view other signatures on our [[/Sign|signatures page]].
[[Category:Signatures| ]]
[[Category:Policies & Guidelines]]
1d84979322f41e460fdf4633f4c3b2a53b335d09
Template:USERNAME
10
517
881
2024-03-23T14:39:49Z
Habblet
11
Created page with "<span class="insertusername">{{{1|<insert name here>}}}</span><noinclude>{{/doc}}</noinclude>"
wikitext
text/x-wiki
<span class="insertusername">{{{1|<insert name here>}}}</span><noinclude>{{/doc}}</noinclude>
d7e859cb9366ebe106e1b3fcb502e0071c4dc690
Template:USERNAME/doc
10
518
882
2024-03-23T14:40:09Z
Habblet
11
Created page with "{{Documentation}} __NOEDITSECTION__ {{t|USERNAME}} displays the username of the user viewing the page. If the user is not logged in, then the template will display <insert name here>. You can control the text displayed by adding a parameter to the template with a value of the default text. For example, <code><nowiki>{{USERNAME|foo}}</nowiki></code> outputs "foo" if the user viewing it is not logged in. ===Examples=== {| class="wikitable" cellpadding="3" width="66%" |+..."
wikitext
text/x-wiki
{{Documentation}}
__NOEDITSECTION__
{{t|USERNAME}} displays the username of the user viewing the page.
If the user is not logged in, then the template will display <insert name here>. You can control the text displayed by adding a parameter to the template with a value of the default text. For example, <code><nowiki>{{USERNAME|foo}}</nowiki></code> outputs "foo" if the user viewing it is not logged in.
===Examples===
{| class="wikitable" cellpadding="3" width="66%"
|+
!Code
!Gives
|+
|<nowiki>[[Special:MyPage|{{USERNAME}}]]</nowiki>
|[[Special:MyPage|{{USERNAME}}]]
|+
|<nowiki>[[Special:MyTalk|{{USERNAME}}'s talkpage]]</nowiki>
|[[Special:MyTalk|{{USERNAME}}'s talk page]]
|+
|<nowiki>[[Special:MyContributions|{{USERNAME}}'s Contribs]]</nowiki>
|[[Special:MyContributions|{{USERNAME}}'s contribs]]
|}
<includeonly>[[Category:Transclusion templates|{{PAGENAME}}]]</includeonly>
d6462ffcc632fedc2eedf25aad237666c015cb56
Category:Signatures
14
519
883
2024-03-23T14:40:33Z
Habblet
11
Created page with "{{Categoryheader|templates|[[Brighter Shores:Signatures|signatures]]||}} [[Category:User templates]]"
wikitext
text/x-wiki
{{Categoryheader|templates|[[Brighter Shores:Signatures|signatures]]||}}
[[Category:User templates]]
deee84e3d7f9b25120a4220e2a35556d27b5bec3
Category:User templates
14
520
884
2024-03-23T14:40:55Z
Habblet
11
Created page with "{{Categoryheader|templates|that are for use in the '''User:''' namespace. All [[Brighter Shores:Userboxes|userboxes]] and templates specific for use in user pages are listed within this category||}} [[Category:Templates]]"
wikitext
text/x-wiki
{{Categoryheader|templates|that are for use in the '''User:''' namespace. All [[Brighter Shores:Userboxes|userboxes]] and templates specific for use in user pages are listed within this category||}}
[[Category:Templates]]
d25c4c35d6d6b8e3cc67c953028eae499e9b1ca2
Talk:Premium Pass
1
477
885
869
2024-03-23T14:45:04Z
Digitalspork
40
Added Unsigned Template to original edit.
wikitext
text/x-wiki
== Changing wiki page to reference latest tweet regarding subscription ==
I think we need to change the "It will not be a recurring subscription", as the latest images by andrew himself on twitter show-cases that it is indeed a time variant subscription. - https://twitter.com/AndrewCGower/status/1771227689514315873/photo/1
"365 days left", the article listed as source reference is older than that which andrew has posted on his twitter himself, with no additional clarification it is misleading to state one or the other.
To further quote the article:
"One of the key differences is we're probably not going to do auto-recurring payments," There is no reference to it not being a recurring premium pass, just no "auto-recurring payments" which is vastly different than having to purchase it every time you run out, this could also potential be a hint at there being a bond type system similar to runescape, and further reading into the article "Everyone's got their millions of different streaming service subscriptions," Gower explains. "The Netflix subscriptions, Amazon Prime subscriptions, people are getting a certain degree of subscription fatigue. So we've decided to just make it a non-recurring payment. You can just buy a pass, get the premium, it's not like a commitment that you're then gonna have to pay that forever." still doesn't state anything about having to buy it again after time runs out. Just that it's not a commitment that you have to pay forever because he doesn't like how recurring subscriptions are setup to be predatory against people (they auto renew) {{unsigned|Demonly|3.23.24}}
// End of OP
Adding on to this, I absolutely agree that we should adjust how this is written or perhaps exclude it all together for now as it seems that we don't entirely know how it will function. It does appear that it will be a Premium '''Pass''' rather than some sort of renewing Subscription or Membership system, which leads me to the possibility that the Pass might be something that lasts 1 year versus potentially the design iteration in the interview being something that never expired at the time. Overall it's really hard to say with the information contradicting itself at this point and the game still being in development. --[[User:Digitalspork|Digitalspork (She/Her) ♡]] ([[User talk:Digitalspork|talk]]) 14:30, 23 March 2024 (UTC)
ee2d7f11439b5aa4dbba491cfd681a87da2b1582
887
885
2024-03-23T14:48:29Z
Habblet
11
wikitext
text/x-wiki
== Changing wiki page to reference latest tweet regarding subscription ==
I think we need to change the "It will not be a recurring subscription", as the latest images by andrew himself on twitter show-cases that it is indeed a time variant subscription. - https://twitter.com/AndrewCGower/status/1771227689514315873/photo/1
"365 days left", the article listed as source reference is older than that which andrew has posted on his twitter himself, with no additional clarification it is misleading to state one or the other. {{U|Demonly|13:10, 23 March 2024 (UTC)}}
To further quote the article:
"One of the key differences is we're probably not going to do auto-recurring payments," There is no reference to it not being a recurring premium pass, just no "auto-recurring payments" which is vastly different than having to purchase it every time you run out, this could also potential be a hint at there being a bond type system similar to runescape, and further reading into the article "Everyone's got their millions of different streaming service subscriptions," Gower explains. "The Netflix subscriptions, Amazon Prime subscriptions, people are getting a certain degree of subscription fatigue. So we've decided to just make it a non-recurring payment. You can just buy a pass, get the premium, it's not like a commitment that you're then gonna have to pay that forever." still doesn't state anything about having to buy it again after time runs out. Just that it's not a commitment that you have to pay forever because he doesn't like how recurring subscriptions are setup to be predatory against people (they auto renew) {{U|Demonly|13:22, 23 March 2024 (UTC)}}
// End of OP
Adding on to this, I absolutely agree that we should adjust how this is written or perhaps exclude it all together for now as it seems that we don't entirely know how it will function. It does appear that it will be a Premium '''Pass''' rather than some sort of renewing Subscription or Membership system, which leads me to the possibility that the Pass might be something that lasts 1 year versus potentially the design iteration in the interview being something that never expired at the time. Overall it's really hard to say with the information contradicting itself at this point and the game still being in development. --[[User:Digitalspork|Digitalspork (She/Her) ♡]] ([[User talk:Digitalspork|talk]]) 14:30, 23 March 2024 (UTC)
f82ae8a4fe6b42e5b2723e82859d9d8d801ddd56
921
887
2024-03-23T16:24:11Z
Jayden
3
/* Changing wiki page to reference latest tweet regarding subscription */
wikitext
text/x-wiki
== Changing wiki page to reference latest tweet regarding subscription ==
I think we need to change the "It will not be a recurring subscription", as the latest images by andrew himself on twitter show-cases that it is indeed a time variant subscription. - https://twitter.com/AndrewCGower/status/1771227689514315873/photo/1
"365 days left", the article listed as source reference is older than that which andrew has posted on his twitter himself, with no additional clarification it is misleading to state one or the other. {{U|Demonly|13:10, 23 March 2024 (UTC)}}
To further quote the article:
"One of the key differences is we're probably not going to do auto-recurring payments," There is no reference to it not being a recurring premium pass, just no "auto-recurring payments" which is vastly different than having to purchase it every time you run out, this could also potential be a hint at there being a bond type system similar to runescape, and further reading into the article "Everyone's got their millions of different streaming service subscriptions," Gower explains. "The Netflix subscriptions, Amazon Prime subscriptions, people are getting a certain degree of subscription fatigue. So we've decided to just make it a non-recurring payment. You can just buy a pass, get the premium, it's not like a commitment that you're then gonna have to pay that forever." still doesn't state anything about having to buy it again after time runs out. Just that it's not a commitment that you have to pay forever because he doesn't like how recurring subscriptions are setup to be predatory against people (they auto renew) {{U|Demonly|13:22, 23 March 2024 (UTC)}}
// End of OP
Adding on to this, I absolutely agree that we should adjust how this is written or perhaps exclude it all together for now as it seems that we don't entirely know how it will function. It does appear that it will be a Premium '''Pass''' rather than some sort of renewing Subscription or Membership system, which leads me to the possibility that the Pass might be something that lasts 1 year versus potentially the design iteration in the interview being something that never expired at the time. Overall it's really hard to say with the information contradicting itself at this point and the game still being in development. --[[User:Digitalspork|Digitalspork (She/Her) ♡]] ([[User talk:Digitalspork|talk]]) 14:30, 23 March 2024 (UTC)
:Hey both! Thanks for raising this - I've edited the wording to say it won't be an "automatically recurring subscription". I think this lines up better with the information currently available from Andrew's Twitter account, while not infering too much from his recent screenshot which seems to suggest it will function like "game time" from World of Warcraft where you can add additional days/months/years to it. [[User:Jayden|Jayden]] ([[User talk:Jayden|talk]]) 16:24, 23 March 2024 (UTC)
e219cf4ec98ec90fd855f4205a474be56d179d03
Template:U
10
521
886
2024-03-23T14:46:25Z
Habblet
11
Redirected page to [[Template:Unsigned]]
wikitext
text/x-wiki
#REDIRECT [[Template:Unsigned]]
0b107b86f688ac0fa9436704c4ec73d88c96ef75
Factions
0
72
888
865
2024-03-23T14:50:30Z
Digitalspork
40
Added Quote about Factions/Classes from the Official Website (this felt like the appropriate place, remove if it isn't.)
wikitext
text/x-wiki
[[File:Factions.jpg|thumb|right|Examples of the three factions.]]
'''Factions''' in [[Brighter Shores]] allow the [[player]] to specialise in using a specific [[combat]] style.
Factions are described as follows on the Official Brighter Shores Website.
"You will discover powerful magic sources and become one of the legendary classes of old: Cryoknight, Guardian or Hammermage. Which is fortunate, because something is corrupting the deepest reaches of the nearby Hopeforest, and only through the strength of your new-found powers will you be able to deal with it." {{CiteGeneral|url=https://brightershores.com|title=Official Brighter Shores Website}}
==Factions==
* The [[Cryoknight]] ([[File:Cryoknight icon.svg|18px]]) faction is focused on melee combat, using weapons like [[sword]]s alongside a [[shield]].
* [[Guardian]]s ([[File:Guardian icon.svg|18px]]) use ranged combat, preferring to wield weapons like [[crossbow]]s.
* The [[Hammermage]] ([[File:Hammermage icon.svg|18px]]) faction fights using a mix of melee and magic.
{{Factions}}
{{Mechanics}}
9e7b85f72ebd07d25e34b47bb71978a59e93e27c
Tradeing
0
522
889
2024-03-23T14:52:28Z
Habblet
11
Redirected page to [[Trading]]
wikitext
text/x-wiki
#REDIRECT [[Trading]]
3ac6668e21947f55c316a2cbe7909f231910234e
Brighter shores
0
523
890
2024-03-23T14:53:17Z
Habblet
11
Redirected page to [[Brighter Shores]]
wikitext
text/x-wiki
#REDIRECT [[Brighter Shores]]
d29839506a6d53c11083697d350097bac95fb0d8
Cbow
0
524
891
2024-03-23T14:53:54Z
Habblet
11
Redirected page to [[Crossbow]]
wikitext
text/x-wiki
#REDIRECT [[Crossbow]]
3ede2fe6ebf104c28077e2d7b666c93511dd5328
Brighter Shores:Redirecting
4
525
892
2024-03-23T14:54:20Z
Habblet
11
Created page with "{{Shortcut|BS:REDIR|BS:R|BS:REDIRECT}} Although our pages (should) always have the accurate names of the items, quests or characters, players searching this wiki may not be as accurate as we are; after all, the use of shortenings or abbreviations can speed up searching considerably, if they can be used. To this end '''redirecting''' is utilised in order to aid users to find their articles. A redirect is a page created specifically to take a searcher straight to another..."
wikitext
text/x-wiki
{{Shortcut|BS:REDIR|BS:R|BS:REDIRECT}}
Although our pages (should) always have the accurate names of the items, quests or characters, players searching this wiki may not be as accurate as we are; after all, the use of shortenings or abbreviations can speed up searching considerably, if they can be used. To this end '''redirecting''' is utilised in order to aid users to find their articles.
A redirect is a page created specifically to take a searcher straight to another article, even without the accurate name. They can be used in a variety of situations to help the users of this wiki.
==How to redirect==
To make a redirect page, the page which will be redirecting must be created. To redirect it to a selected page, simply write <code>#REDIRECT <nowiki>[[Target page name]]</nowiki></code> in it. When previewed, the page will show the following:
#REDIRECT [[Brighter Shores:No page|Target page name]]
Don't worry. It may not look like a redirect page does once created, but that is just because redirects don't show on preview pages. See below to see what a page looks like when redirected:
[[File:Redirect.png]]
{{Clear|left}}
===Redirecting to a category===
When creating a page that redirects to a category, using the format above causes the redirect page to be included in the category itself. To properly redirect to a category, use
<pre>#REDIRECT [[:Category:CategoryNameHere]]</pre>
The use of the colon (:) before the category instructs the Wiki software to treat the link as a normal link and not as a category to be included.
===Editing an existing redirect===
Editing a redirect page is like editing any other page: the trick comes in finding the redirect page itself and not its target.
To access an existing redirect page, search for the redirect title (example "Abby whip"). When the target page appears, a note underneath the target page's title will say something similar to "<span id='contentSub'>(Redirected from [[Abby whip]])</span>". Clicking on the link in this notice will take you to the redirect page itself (pictured above) which can then be edited as normal.
Alternatively, <code>?redirect=no</code> can be appended to a link that redirects (the question mark indicates the start of a {{wp|Query string|query string}}).
==When to use redirects==
Redirects can be used for a number of things:
* Common misspellings ([[Tradeing]])
* Different forms of capitalisation ([[Brighter shores]])
* Common shortenings or abbreviations ([[Cbow]])
* Alternative names
==When not to use redirects==
* Redirecting from one namespace to another; for example, making "Example" redirect to [[User:Example]]. This applies for all situations except in special cases (e.g. redirects to policies).
* For an unclear term with more than one possible meaning, a disambiguation page may be an alternative to a redirect. Any mis-spellings of this term should redirect to the disambiguation page.
* Redirects from one userpage to another is allowed only if the user has switched accounts, or if the user's userpage is impossible to type on a conventional keyboard. Other than that, user related redirects will not be allowed.
{{Policies & Guidelines}}
693125a457fe73c1929b4a5827567e7ef0c4fcf8
Template:*
10
526
893
2024-03-23T14:56:45Z
Habblet
11
Created page with "<includeonly>'''•'''</includeonly><noinclude>{{/doc}}</noinclude>"
wikitext
text/x-wiki
<includeonly>'''•'''</includeonly><noinclude>{{/doc}}</noinclude>
2c69a2b42eee28fc569d1bad5f2e3d8b059346f0
Template:*/doc
10
527
894
2024-03-23T14:59:19Z
Habblet
11
Created page with "{{Documentation}} The '''*''' template is used to add bullets (example: '''•''') by substituting <tt><nowiki>'''&bull;'''</nowiki></tt> automatically. ==Usage== The recommended usage is to use spaces ''before'' and ''after'' the template. <pre>[[Fisher]] {{*}} [[Forager]]</pre> The template renders one space on each side of the bullet. [[Fisher]] {{*}} [[Forager]] For long dotted lists each list item can be put on its own line, with spaces between each item..."
wikitext
text/x-wiki
{{Documentation}}
The '''*''' template is used to add bullets (example: '''•''') by substituting <tt><nowiki>'''&bull;'''</nowiki></tt> automatically.
==Usage==
The recommended usage is to use spaces ''before'' and ''after'' the template.
<pre>[[Fisher]] {{*}} [[Forager]]</pre>
The template renders one space on each side of the bullet.
[[Fisher]] {{*}} [[Forager]]
For long dotted lists each list item can be put on its own line, with spaces between each item and the template.
<pre>
[[Fisher]] {{*}}
[[Forager]] {{*}}
[[Chef]] {{*}}
[[Woodcutter]]
</pre>
As before, the template renders one space on each side of the bullets.
[[Fisher]] {{*}}
[[Forager]] {{*}}
[[Chef]] {{*}}
[[Woodcutter]]
When the list is too long and line breaks, the class "nowraplinks" should be used.
<pre style="width:95%; overflow:scroll"><div class="nowraplinks">
[[Fisher]] {{*}} [[Forager]] {{*}} [[Chef]] {{*}} [[Woodcutter]] {{*}} [[Fisher]] {{*}} [[Forager]] {{*}} [[Chef]] {{*}} [[Woodcutter]] {{*}} [[Fisher]] {{*}} [[Forager]] {{*}} [[Chef]] {{*}} [[Woodcutter]] {{*}} [[Fisher]] {{*}} [[Forager]] {{*}} [[Chef]] {{*}} [[Woodcutter]] {{*}} [[Fisher]] {{*}} [[Forager]] {{*}} [[Chef]] {{*}} [[Woodcutter]] {{*}} [[Fisher]] {{*}} [[Forager]] {{*}} [[Chef]] {{*}} [[Woodcutter]] {{*}} [[Fisher]] {{*}} [[Forager]] {{*}} [[Chef]] {{*}} [[Woodcutter]] {{*}} [[Fisher]] {{*}} [[Forager]] {{*}} [[Chef]] {{*}} [[Woodcutter]] {{*}} [[Fisher]] {{*}} [[Forager]] {{*}} [[Chef]] {{*}} [[Woodcutter]] {{*}} [[Fisher]] {{*}} [[Forager]] {{*}} [[Chef]] {{*}} [[Woodcutter]]
</div></pre>
Using "nowraplinks" forces the line break to come after one of the bullets.
<div class="nowraplinks">
[[Fisher]] {{*}} [[Forager]] {{*}} [[Chef]] {{*}} [[Woodcutter]] {{*}} [[Fisher]] {{*}} [[Forager]] {{*}} [[Chef]] {{*}} [[Woodcutter]] {{*}} [[Fisher]] {{*}} [[Forager]] {{*}} [[Chef]] {{*}} [[Woodcutter]] {{*}} [[Fisher]] {{*}} [[Forager]] {{*}} [[Chef]] {{*}} [[Woodcutter]] {{*}} [[Fisher]] {{*}} [[Forager]] {{*}} [[Chef]] {{*}} [[Woodcutter]] {{*}} [[Fisher]] {{*}} [[Forager]] {{*}} [[Chef]] {{*}} [[Woodcutter]] {{*}} [[Fisher]] {{*}} [[Forager]] {{*}} [[Chef]] {{*}} [[Woodcutter]] {{*}} [[Fisher]] {{*}} [[Forager]] {{*}} [[Chef]] {{*}} [[Woodcutter]] {{*}} [[Fisher]] {{*}} [[Forager]] {{*}} [[Chef]] {{*}} [[Woodcutter]] {{*}} [[Fisher]] {{*}} [[Forager]] {{*}} [[Chef]] {{*}} [[Woodcutter]]
</div>
<includeonly>[[Category:Formatting templates|{{PAGENAME}}]]</includeonly>
{{TemplateData|<templatedata>
{
"params": {},
"description": "The * template is used to add bullets (example: •) by substituting '''•''' automatically.",
"format": "inline"
}
</templatedata>
}}
278584e4ad397ffa001cc9def2212a3550aced64
Category:Public domain files
14
528
895
2024-03-23T15:06:34Z
Habblet
11
Created page with "{{Categoryheader|files|being in the [[wikipedia:Public domain|public domain]]|yes|[[Template:PD]]}} [[Category:Brighter Shores Wiki images]] [[Category:Images]]"
wikitext
text/x-wiki
{{Categoryheader|files|being in the [[wikipedia:Public domain|public domain]]|yes|[[Template:PD]]}}
[[Category:Brighter Shores Wiki images]]
[[Category:Images]]
cf950cb0373b6e7eebf3ae20c7993a1014e75281
Template:Permanent Protection/doc
10
234
897
408
2024-03-23T15:07:39Z
Habblet
11
wikitext
text/x-wiki
{{documentation}}
This template displays a notice that a page is permanently protected.
==Usage==
This template can be used by entering the following onto a relevant page. It will automatically add [[:Category:Permanently protected files]] to the page.
<pre>{{Permanent Protection}}</pre>
<includeonly>[[Category:Transclusion templates|{{PAGENAME}}]]</includeonly>
5f32848d66c705ae0f009547b8649fadec95dd97
File:Copyright.svg
6
222
898
392
2024-03-23T15:09:14Z
Habblet
11
Protected "[[File:Copyright.svg]]": High traffic page ([Edit=Allow only administrators] (indefinite) [Move=Allow only administrators] (indefinite) [Upload=Allow only administrators] (indefinite))
wikitext
text/x-wiki
== Summary ==
{{Permanent Protection}}
{{GFDL}}
Source: modified from [http://commons.wikimedia.org/wiki/Image:Copyright-problem.svg a file on Wikimedia Commons].
e14066573aa911d4461287d3595b37b55a8127d2
File:GreenCopyleft.svg
6
284
899
464
2024-03-23T15:10:07Z
Habblet
11
Protected "[[File:GreenCopyleft.svg]]": High traffic page ([Edit=Allow only administrators] (indefinite) [Move=Allow only administrators] (indefinite) [Upload=Allow only administrators] (indefinite))
wikitext
text/x-wiki
== Summary ==
{{Permanent Protection}}
The green copyleft symbol. Obtained from Wikimedia Commons. Released into the public domain by the author.
==License==
{{PD}}
47293a069177dca145eca783f1e2b5266321a29d
File:Heckert GNU white.svg
6
278
900
457
2024-03-23T15:10:23Z
Habblet
11
Protected "[[File:Heckert GNU white.svg]]": High traffic page ([Edit=Allow only administrators] (indefinite) [Move=Allow only administrators] (indefinite) [Upload=Allow only administrators] (indefinite))
wikitext
text/x-wiki
== Summary ==
{{Permanent Protection}}
An image of a Gnu. Taken from Wikimedia Commons ([http://commons.wikimedia.org/wiki/Image:Heckert_GNU_white.svg description page]).
*Original author: Aurelio A. Heckert <aurium@gmail.com>
==License==
{{Copyleft}}
a7cee28305c93ffd7726b6fd731e9296c14b575b
File:Padlock-red.svg
6
224
901
396
2024-03-23T15:10:33Z
Habblet
11
Protected "[[File:Padlock-red.svg]]": High traffic page ([Edit=Allow only administrators] (indefinite) [Move=Allow only administrators] (indefinite) [Upload=Allow only administrators] (indefinite))
wikitext
text/x-wiki
== Summary ==
{{Permanent Protection}}
{{PD}}
070edbdc5141e7b313fe8575081029aa39d81152
Category:Maintenance templates
14
530
902
2024-03-23T15:10:58Z
Habblet
11
Created page with "{{Categoryheader|templates|ones that are used in articles that require maintenance||}} [[Category:Templates]]"
wikitext
text/x-wiki
{{Categoryheader|templates|ones that are used in articles that require maintenance||}}
[[Category:Templates]]
c4f130af1f861e235175770aaff030537f79d7eb
User:Merds
2
531
903
2024-03-23T15:14:01Z
Merds
25
Created page with "."
wikitext
text/x-wiki
.
3a52ce780950d4d969792a2559cd519d7ee8c727
The Delectable Dab Restaurant
0
89
904
254
2024-03-23T15:17:50Z
Habblet
11
moving content from [[The Deletectable Dab Restaurant]]
wikitext
text/x-wiki
[[File:The Deletectable Dab Restaurant.jpg|thumb|right|The Deletectable Dab Restaurant]]
The '''The Deletectable Dab Restaurant''' is a restaurant.
[[Category:Shops]]
4dc9205697bcb4195de57e550fe90ec7a57b7438
The Deletectable Dab Restaurant
0
203
905
356
2024-03-23T15:17:59Z
Habblet
11
Redirected page to [[The Delectable Dab Restaurant]]
wikitext
text/x-wiki
#REDIRECT [[The Delectable Dab Restaurant]]
08b53c46126388472ba961b5ca0c80b4efde44c4
File:Redirect-arrow.svg
6
532
906
2024-03-23T15:20:07Z
Habblet
11
{{Permanent Protection}}
{{PD}}
[[Category:Brighter Shores Wiki images]]
wikitext
text/x-wiki
== Summary ==
{{Permanent Protection}}
{{PD}}
[[Category:Brighter Shores Wiki images]]
961f216a7fc07fd554e7acc689ace825211cfd02
907
906
2024-03-23T15:20:33Z
Habblet
11
Protected "[[File:Redirect-arrow.svg]]": High traffic page ([Edit=Allow only administrators] (indefinite) [Move=Allow only administrators] (indefinite) [Upload=Allow only administrators] (indefinite))
wikitext
text/x-wiki
== Summary ==
{{Permanent Protection}}
{{PD}}
[[Category:Brighter Shores Wiki images]]
961f216a7fc07fd554e7acc689ace825211cfd02
Brighter Shores:REDIR
4
533
908
2024-03-23T15:32:39Z
Habblet
11
Redirected page to [[Brighter Shores:Redirecting]]
wikitext
text/x-wiki
#REDIRECT [[Brighter Shores:Redirecting]]
100f2267143fe2b036e719f9a057be60cb53ba22
Brighter Shores:R
4
534
909
2024-03-23T15:32:43Z
Habblet
11
Redirected page to [[Brighter Shores:Redirecting]]
wikitext
text/x-wiki
#REDIRECT [[Brighter Shores:Redirecting]]
100f2267143fe2b036e719f9a057be60cb53ba22
Brighter Shores:REDIRECT
4
535
910
2024-03-23T15:32:47Z
Habblet
11
Redirected page to [[Brighter Shores:Redirecting]]
wikitext
text/x-wiki
#REDIRECT [[Brighter Shores:Redirecting]]
100f2267143fe2b036e719f9a057be60cb53ba22
File:Redirect.png
6
536
911
2024-03-23T15:37:57Z
Habblet
11
{{CC-BY-NC-SA}}
[[Category:Brighter Shores Wiki images]]
wikitext
text/x-wiki
== Summary ==
{{CC-BY-NC-SA}}
[[Category:Brighter Shores Wiki images]]
b153b576ff38e477237e896297feb074d5dfa301
Template:CC-BY-NC-SA
10
537
912
2024-03-23T15:38:24Z
Habblet
11
Created page with "{| class="messagebox info" id="cc-by-nc-sa" | [[File:Cc-by new white.svg|32px|centre|link=]] | This file is licensed under the {{WP|Creative Commons}} [https://creativecommons.org/licenses/by-nc-sa/3.0/ Attribution-NonCommercial-ShareAlike 3.0] License. |}{{Fileonly|[[Category:Licensed images]]}}<noinclude>{{/doc}}[[Category:License templates]]</noinclude>"
wikitext
text/x-wiki
{| class="messagebox info" id="cc-by-nc-sa"
| [[File:Cc-by new white.svg|32px|centre|link=]]
| This file is licensed under the {{WP|Creative Commons}} [https://creativecommons.org/licenses/by-nc-sa/3.0/ Attribution-NonCommercial-ShareAlike 3.0] License.
|}{{Fileonly|[[Category:Licensed images]]}}<noinclude>{{/doc}}[[Category:License templates]]</noinclude>
b4d2e0d6bcfb1f233ee79a741685891ea23cbb1a
Template:CC-BY-NC-SA/doc
10
538
913
2024-03-23T15:38:47Z
Habblet
11
Created page with "{{Documentation}} This template is used to mark files that licensed under a {{wp|Creative Commons}} [https://creativecommons.org/licenses/by-nc-sa/3.0/ Attribution-NonCommercial-ShareAlike 3.0] license. As the wiki's content is [[meta:Copyrights|licensed]] under CC BY-NC-SA 3.0, files that exclusively contain the wiki's content should be marked with this template. ==Usage== :Type {{t|CC-BY-NC-SA}} on the file information page. <includeonly>Category:Copyright templat..."
wikitext
text/x-wiki
{{Documentation}}
This template is used to mark files that licensed under a {{wp|Creative Commons}} [https://creativecommons.org/licenses/by-nc-sa/3.0/ Attribution-NonCommercial-ShareAlike 3.0] license.
As the wiki's content is [[meta:Copyrights|licensed]] under CC BY-NC-SA 3.0, files that exclusively contain the wiki's content should be marked with this template.
==Usage==
:Type {{t|CC-BY-NC-SA}} on the file information page.
<includeonly>[[Category:Copyright templates|{{PAGENAME}}]]</includeonly>
b78ac8aab4dd88ea4ef95eb2d27576b5742784f7
File:Cc-by new white.svg
6
539
914
2024-03-23T15:39:24Z
Habblet
11
Sourced from: https://commons.wikimedia.org/wiki/File:Cc-by_new_white.svg
{{PD}}
wikitext
text/x-wiki
== Summary ==
Sourced from: https://commons.wikimedia.org/wiki/File:Cc-by_new_white.svg
{{PD}}
fb5a83a231aa6325d6e3814019acb05a94be2703
Template:Clear
10
540
915
2024-03-23T15:40:06Z
Habblet
11
Created page with "<div class="clear-template clear-{{lc:{{{1|both}}}}}" style="clear:{{{1|both}}};"></div><noinclude>{{/doc}}</noinclude>"
wikitext
text/x-wiki
<div class="clear-template clear-{{lc:{{{1|both}}}}}" style="clear:{{{1|both}}};"></div><noinclude>{{/doc}}</noinclude>
9ee297b925c23b42a84fc64c637724e15a075001
Template:Clear/doc
10
541
916
2024-03-23T15:40:16Z
Habblet
11
Created page with "{{Documentation}} The '''clear''' template is used when the text needs to be moved below, for example, after an image or an infobox. ==Usage== <pre>{{clear}}</pre> :substitutes: '''<nowiki><div class="clear-template clear-both" style="clear:both;"></div></nowiki>''' <pre>{{clear|left}}</pre> :substitutes: '''<nowiki><div class="clear-template clear-left" style="clear:left;"></div></nowiki>''' <pre>{{clear|right}}</pre> :substitutes: '''<nowiki><div class="clear-templa..."
wikitext
text/x-wiki
{{Documentation}}
The '''clear''' template is used when the text needs to be moved below, for example, after an image or an infobox.
==Usage==
<pre>{{clear}}</pre>
:substitutes: '''<nowiki><div class="clear-template clear-both" style="clear:both;"></div></nowiki>'''
<pre>{{clear|left}}</pre>
:substitutes: '''<nowiki><div class="clear-template clear-left" style="clear:left;"></div></nowiki>'''
<pre>{{clear|right}}</pre>
:substitutes: '''<nowiki><div class="clear-template clear-right" style="clear:right;"></div></nowiki>'''
{{TemplateData|<templatedata>
{
"params": {
"1": {
"label": "Placement",
"description": "One of: left, right, both",
"type": "line",
"default": "both"
}
},
"description": "The clear template is used when the text needs to be moved below, for example, after an image or an infobox.",
"format": "inline"
}
</templatedata>}}<includeonly>[[Category:Formatting templates|{{PAGENAME}}]]</includeonly>
7a2477ddf8acbb56c6a887db7f5ec8d6d4b77887
Brighter Shores:No page
4
542
917
2024-03-23T15:46:48Z
Habblet
11
Created page with "[[File:Information icon.svg|left|40px]] The page you were looking for does not exist. It has either been deleted, was no longer needed, or is reserved for the time being and has been linked to this page to clear up the [[Special:WantedPages|wanted pages]]. Sorry for the inconvenience. [[Main Page|Go back to the Main Page]]. <noinclude>[[Category:Brighter Shores Wiki community]]</noinclude>"
wikitext
text/x-wiki
[[File:Information icon.svg|left|40px]]
The page you were looking for does not exist. It has either been deleted, was no longer needed, or is reserved for the time being and has been linked to this page to clear up the [[Special:WantedPages|wanted pages]]. Sorry for the inconvenience.
[[Main Page|Go back to the Main Page]].
<noinclude>[[Category:Brighter Shores Wiki community]]</noinclude>
6b0aaa2cd86df1eb479c666d8bec17acb3863fc7
File:Information icon.svg
6
543
918
2024-03-23T15:47:07Z
Habblet
11
{{Permanent Protection}}
{{GFDL}}
wikitext
text/x-wiki
== Summary ==
{{Permanent Protection}}
{{GFDL}}
0fe0469d4da9d6c680a11557b924fa01baf09375
919
918
2024-03-23T15:47:15Z
Habblet
11
Protected "[[File:Information icon.svg]]": High traffic page ([Edit=Allow only administrators] (indefinite) [Move=Allow only administrators] (indefinite) [Upload=Allow only administrators] (indefinite))
wikitext
text/x-wiki
== Summary ==
{{Permanent Protection}}
{{GFDL}}
0fe0469d4da9d6c680a11557b924fa01baf09375
Premium Pass
0
76
920
790
2024-03-23T16:22:12Z
Jayden
3
wikitext
text/x-wiki
[[File:Premium Pass comparison.png|thumb|A comparison of some of the Premium Pass features.]]
The '''Premium Pass''' is a type of membership that can be purchased using real money. It provides access to a number of new areas and features in [[Brighter Shores]] for the duration of time that the [[account]] owns it.
While owning the Premium Pass is required to access the benefits, it will not be an automatically recurring subscription.{{CiteGeneral|url=https://www.gamesradar.com/ahead-of-his-new-mmo-runescape-creator-says-games-have-gotten-too-microtransaction-heavy-our-number-one-aim-is-not-monetization-its-players/|title=Ahead of his new MMO, RuneScape creator says games have gotten too microtransaction-heavy: "Our number one aim is not monetization, it's players"|author=Kaan Serin|date=17 March 2024|accessdate=22 March 2024|quote="One of the key differences is we're probably not going to do auto-recurring payments," continues Gower.}}
==Benefits==
There are several benefits to purchasing a Premium Pass:
* Access to the [[Mine of Mantuban]] and [[Crenopolis]]
* Ability to choose a unique character name, and change your name at any point
* Access to exclusive armour dyes
* Ability to [[trade]] with other [[player]]s
==References==
{{Reflist}}
{{Premium Pass}}
{{Mechanics}}
[[Category:Community]]
0c1ec4bd61533ded12c675683f492c562cadbd39
Category:References that need verification
14
544
922
2024-03-23T17:16:50Z
Jayden
3
Created page with "{{Categoryheader|pages|references that need verification|yes|ref tags when the date parameter is over a month old}} {{Hidden category}} [[Category:Maintenance categories]]"
wikitext
text/x-wiki
{{Categoryheader|pages|references that need verification|yes|ref tags when the date parameter is over a month old}}
{{Hidden category}}
[[Category:Maintenance categories]]
e8463eee5d8873691226d1d0af8bd0bc952164e3
Captain Jal Degreene
0
431
923
689
2024-03-23T17:19:50Z
Omnes Ferant
23
NPC
wikitext
text/x-wiki
'''Captain Jal Degreene''' is an NPC. In the Main Story, the Player needs clearance from him to get access into the Mine Entrance.
[[Category:NPCs]]
4294e34ec8c6fc8e74fc33d8e16317d0edaed5c2
Forum:Forum Grove
110
545
924
2024-03-23T17:30:34Z
Habblet
11
temp title
wikitext
text/x-wiki
{{Shortcut|YG|RG}}
'''Forum Grove''' is a place where community members can discuss larger changes to the wiki, such as policy proposals or suggestions to substantially redesign content pages. As this page is viewed by a variety of editors, you can expect fair and centralised discussions. Broadly construed, if the community would be interested in the topic, start it here. Even if a discussion is taking place elsewhere, it may be appropriate to announce that discussion here as well. To add a new topic, type the title in the box below and click "Add new topic".
<center><big>Please only post here if it concerns the Wiki.</big></center>
<center>Threads on in-game discussion, such as requesting a Shield of Arrav partner may be deleted. Additionally, if you have any questions regarding the wiki, they may be answered on [[Brighter Shores:User help|User help]] or [[Brighter Shores:Administrator requests|Administrator requests]].</center>
<div style="text-align:center;">'''[[Special:Recentchangeslinked/Category:{{PAGENAME}}|View recent changes for this forum]]''' {{*}} '''[[:Category:{{PAGENAME}}|View alphabetic list of topics]]''' {{*}} '''[[Brighter Shores:Forum Archives|View the archives]]'''</div>
----
<!-- <table width="100%"><tr><td><!-- You could create (or transclude) a forum header here --><!-- </td><td width="50%"> -->
<inputbox>
type=create
prefix=Forum:
preload=Template:Forumheader/{{PAGENAME}}
buttonlabel=Add new topic
</inputbox><!-- </td></tr></table> -->
==Active threads==
{| class="discussiontable" style="width:100%"
! class="topic" style="width:55%" | Topic
! class="edited" style="width:25%" | Last edit
! class="edited-by" style="width:20%" | Last author
|}
<dpl>
namespace=Forum
category=Forum Grove
notcategory=Forum archives by date closed
notcategory=Brighter Shores Wiki community
noresultsheader=There are no active discussions.
shownamespace=false
addlasteditor=true
addeditdate=true
ordermethod=lastedit
order=descending
mode=userformat
include={forumheader}:%TITLE%:%DATE%:%USER%
table=style="width:100%; border:0; margin-top:2px" class="dpltable",-
tablerow=class="topic" style="width:55%"|[[Forum:%%|%%]],class="edited" style="width:25%"|{{#if:%%|{{#time:H:i, j F Y|%%}}|–}},class="edited-by" style="width:20%"|{{#if:%%|[[User:%%|%%]]|–}}
allowcachedresults=false
</dpl>
==Archived threads==
{| class="discussiontable archive" style="width:100%; margin-bottom:-2px"
! class="topic" style="width:45%" | Topic
! class="rg-archive" style="width:25%" | Archived on
! class="rg-archive" style="width:16%" | Archived by
! class="rg-archive" style="width:14%" | Forum type
|}
<dpl>
namespace=Forum
category=Forum archives by date closed
shownamespace=false
addlasteditor=true
ordermethod=sortkey
order=descending
mode=userformat
include={forumheader}:%TITLE%:date:user:type
table=style="width:100%; border:0; margin-top:2px" class="dpltable archive",-
tablerow=class="topic" style="width:45%"|[[Forum:%%|%%]],class="rg-archive" style="width:25%"|{{#if:%%|{{#time:H:i, j F Y|%%}}|–}},class="rg-archive" style="width:16%"|{{#if:%%|[[User:%%|%%]]|–}},class="rg-archive" style="width:14%"|{{#if:%%|[[:Category:Forum archives/{{#switch:{{lc:%%}}|community=Community|content=Content|discussion=Discussion|miscellaneous|misc=Miscellaneous|policy=Policy|technical|tech=Technical|user-related|user=User-related|clan chat|clan=Clan chat|meta=Meta|%%}}|{{#switch:{{lc:%%}}|community=Community|content=Content|discussion=Discussion|miscellaneous|misc=Miscellaneous|policy=Policy|technical|tech=Technical|user-related|user=User-related|clan chat|clan=Clan chat|meta=Meta|%%}}]]|-}}
allowcachedresults=false
count={%DPL_count:25%}
</dpl>
[[Category:Brighter Shores Wiki community]]
[[Category:Forum Grove| ]]
82314cda33151a9c75588d437dfc23c995402c36
Category:Forum Grove
14
546
925
2024-03-23T17:31:12Z
Habblet
11
Created page with "This is a list of topics from the [[Forum:Forum Grove|Forum Grove]]. [[Category:Brighter Shores Wiki community]]"
wikitext
text/x-wiki
This is a list of topics from the [[Forum:Forum Grove|Forum Grove]].
[[Category:Brighter Shores Wiki community]]
b0164eff7eb06d21d6773440d71e5305b659ab44
Brighter Shores:User help
4
547
926
2024-03-23T17:33:04Z
Habblet
11
Created page with "__NEWSECTIONLINK__ [[Category:Brighter Shores Wiki community]] {{Otheruses|requests for help from general users|requests for help needing administrator tools|Brighter Shores:Administrator requests}} {{Shortcut|BS:HELP|BS:UH|BS:UR}} Welcome to the '''Brighter Shores Wiki User Help''' page. This page is here to offer a central location for those who are participating with the development of this wiki to make general requests for help. For admin help, Brighter Shores:Admi..."
wikitext
text/x-wiki
__NEWSECTIONLINK__
[[Category:Brighter Shores Wiki community]]
{{Otheruses|requests for help from general users|requests for help needing administrator tools|Brighter Shores:Administrator requests}}
{{Shortcut|BS:HELP|BS:UH|BS:UR}}
Welcome to the '''Brighter Shores Wiki User Help''' page. This page is here to offer a central location for those who are participating with the development of this wiki to make general requests for help. For admin help, [[Brighter Shores:Administrator requests|click here]].
'''Note for requesters''' - Once a solution has been presented and implemented, please add a comment signifying completion, if the request hasn't already been archived. This is to help other users know when to archive completed requests.
==Instructions==
{{/userInfo}}
{{Archive list}}
__TOC__
=Requests=
<!-- Please keep request below this line and in chronological order. -->
59967ee9ef24af65196c09dece1f5fd959400f77
Brighter Shores:Administrator requests
4
548
927
2024-03-23T17:33:47Z
Habblet
11
Created page with "{{/adminInfo}} '''Note: Please only make requests on this page that specifically require sysop tools to fulfil.'''<br/> Make sure to [[Brighter Shores:Signatures|sign and date your request]] by typing four tildes (<tt><nowiki>~~~~</nowiki></tt>) at the end of your message. {{Archive list}} __TOC__ =Requests= <!-- Please keep request below this line and in chronological order. -->"
wikitext
text/x-wiki
{{/adminInfo}}
'''Note: Please only make requests on this page that specifically require sysop tools to fulfil.'''<br/>
Make sure to [[Brighter Shores:Signatures|sign and date your request]] by typing four tildes (<tt><nowiki>~~~~</nowiki></tt>) at the end of your message.
{{Archive list}}
__TOC__
=Requests=
<!-- Please keep request below this line and in chronological order. -->
db15353d2e271e0ed11cf9ebbae537e231c800fc
Brighter Shores:Administrator requests/adminInfo
4
549
928
2024-03-23T17:34:56Z
Habblet
11
Created page with "__NEWSECTIONLINK__ <div class="tile" style="max-width:1000px;margin:0 auto;"> {{Shortcut|BS:AH|BS:AR}} ===What this page ''is'' for=== * '''Protecting/unprotecting pages.''' Highly visible pages or content that may have links from outside websites are encouraged to have some level of protection. This can also include a request for administrators to try and calm down [[wikipedia:Wikipedia:Edit war|an edit war]]. This should be done according to the Brighter Shores:Prote..."
wikitext
text/x-wiki
__NEWSECTIONLINK__
<div class="tile" style="max-width:1000px;margin:0 auto;">
{{Shortcut|BS:AH|BS:AR}}
===What this page ''is'' for===
* '''Protecting/unprotecting pages.''' Highly visible pages or content that may have links from outside websites are encouraged to have some level of protection. This can also include a request for administrators to try and calm down [[wikipedia:Wikipedia:Edit war|an edit war]]. This should be done according to the [[Brighter Shores:Protection policy]].
* '''Moving/renaming protected pages and files.''' Due to vandals' mis-use of the page move tool, some pages are protected from being renamed except by an administrator. If you can make a compelling case for a page move, or consensus has been reached on the respective discussion page related to the page you think needs to be renamed, formal requests for the page move can happen here. New contributors to this wiki or "anonymous" users wishing to rename a page that don't have the page move option available to them yet are also welcome to make such requests on this page.
* '''Minor edits to protected pages.''' This is mostly on protected templates that can have a substantial impact on the whole wiki if they are changed, so caution is urged when they are modified.
* '''Announcements that are intended to be across the whole wiki.''' This appears on [[MediaWiki:Sitenotice]], and should be something that would be of interest to the whole community.
* '''Importing pages from another wiki.''' While seldom used for content on this wiki, this is an option that is available for bringing in content from another wiki and preserving its edit history, which requires administrator rights. This may take some time, so be patient if you wish to make this sort of request. MediaWiki importing tools can sometimes be buggy, so be gentle on volunteer administrators doing this task.
*'''Reporting vandals and spammers.''' Regular editors are encouraged to revert the vandalism or spam as quickly as possible, and alert an administrator to block the problematic user in order to prevent further damage.
* '''Hiding revisions and/or edit summaries.''' In the case of blatant copyright violations, significantly offensive material, identity establishing information, or any other content that poses a major risk to the wiki or its editors, the revision(s) may be hidden using [[Special:RevisionDelete]].
* '''General questions to the administrators of this wiki.''' You might get a faster reply by posting on the [[Brighter Shores:User help|User help]] page; however, the administrators here will try to help you to the best of their abilities.
===What this page ''is not'' for===
*'''Problems that do not require administrator tools to complete.''' Instead, please visit the [[Brighter Shores:User help|user help page]].
*'''Requests to become an administrator.''' If you are interested in learning what an administrator does or how you can become one, please visit the [[Brighter Shores:Administrators|Administrator]]s page for information about administrators and [[Brighter Shores:Requests for adminship|Requests for adminship]] page for the process to become an administrator.
*'''General discussions about administrator behaviour.''' Most policy discussions, including policies that govern administrators, ought to be started on the [[Forum:Forum Grove|Forum Grove]] and kept to that forum for input from the larger Brighter Shores Wiki community.
*'''Minor requests for deletion.''' If you've accidentally duplicated content or wish to just clean up a mess you've made on the wiki, you should simply tag the page with {{t|D|Reason(s) for nomination}}.
</div>
<br><div class="center">[https://brightershoreswiki.org/w/RuneScape:Administrator_requests?action=edit§ion=new <span class="mw-ui-button mw-ui-progressive">Click here to add a new request</span>]</div>
e00418dd5cae92a713a57635a25d4c5e7cbdb81a
944
928
2024-03-23T17:44:29Z
Habblet
11
wikitext
text/x-wiki
__NEWSECTIONLINK__
<div class="tile" style="max-width:1000px;margin:0 auto;">
{{Shortcut|BS:AH|BS:AR}}
===What this page ''is'' for===
* '''Protecting/unprotecting pages.''' Highly visible pages or content that may have links from outside websites are encouraged to have some level of protection. This can also include a request for administrators to try and calm down [[wikipedia:Wikipedia:Edit war|an edit war]]. This should be done according to the [[Brighter Shores:Protection policy]].
* '''Moving/renaming protected pages and files.''' Due to vandals' mis-use of the page move tool, some pages are protected from being renamed except by an administrator. If you can make a compelling case for a page move, or consensus has been reached on the respective discussion page related to the page you think needs to be renamed, formal requests for the page move can happen here. New contributors to this wiki or "anonymous" users wishing to rename a page that don't have the page move option available to them yet are also welcome to make such requests on this page.
* '''Minor edits to protected pages.''' This is mostly on protected templates that can have a substantial impact on the whole wiki if they are changed, so caution is urged when they are modified.
* '''Announcements that are intended to be across the whole wiki.''' This appears on [[MediaWiki:Sitenotice]], and should be something that would be of interest to the whole community.
* '''Importing pages from another wiki.''' While seldom used for content on this wiki, this is an option that is available for bringing in content from another wiki and preserving its edit history, which requires administrator rights. This may take some time, so be patient if you wish to make this sort of request. MediaWiki importing tools can sometimes be buggy, so be gentle on volunteer administrators doing this task.
*'''Reporting vandals and spammers.''' Regular editors are encouraged to revert the vandalism or spam as quickly as possible, and alert an administrator to block the problematic user in order to prevent further damage.
* '''Hiding revisions and/or edit summaries.''' In the case of blatant copyright violations, significantly offensive material, identity establishing information, or any other content that poses a major risk to the wiki or its editors, the revision(s) may be hidden using [[Special:RevisionDelete]].
* '''General questions to the administrators of this wiki.''' You might get a faster reply by posting on the [[Brighter Shores:User help|User help]] page; however, the administrators here will try to help you to the best of their abilities.
===What this page ''is not'' for===
*'''Problems that do not require administrator tools to complete.''' Instead, please visit the [[Brighter Shores:User help|user help page]].
*'''Requests to become an administrator.''' If you are interested in learning what an administrator does or how you can become one, please visit the [[Brighter Shores:Administrators|Administrator]]s page for information about administrators and [[Brighter Shores:Requests for adminship|Requests for adminship]] page for the process to become an administrator.
*'''General discussions about administrator behaviour.''' Most policy discussions, including policies that govern administrators, ought to be started on the [[Forum:Forum Grove|Forum Grove]] and kept to that forum for input from the larger Brighter Shores Wiki community.
*'''Minor requests for deletion.''' If you've accidentally duplicated content or wish to just clean up a mess you've made on the wiki, you should simply tag the page with {{t|D|Reason(s) for nomination}}.
</div>
<br><div class="center">[https://brightershoreswiki.org/w/Brighter_Shores:Administrator_requests?action=edit§ion=new <span class="mw-ui-button mw-ui-progressive">Click here to add a new request</span>]</div>
e7299740192e9910131e5513e24675fdd640fb74
Brighter Shores:AH
4
550
929
2024-03-23T17:35:19Z
Habblet
11
Redirected page to [[Brighter Shores:Administrator requests]]
wikitext
text/x-wiki
#REDIRECT [[Brighter Shores:Administrator requests]]
6126e8d5efe61d72a1734783ac0c699cc9e32e98
Brighter Shores:AR
4
551
930
2024-03-23T17:35:23Z
Habblet
11
Redirected page to [[Brighter Shores:Administrator requests]]
wikitext
text/x-wiki
#REDIRECT [[Brighter Shores:Administrator requests]]
6126e8d5efe61d72a1734783ac0c699cc9e32e98
Template:Archive list
10
552
931
2024-03-23T17:36:11Z
Habblet
11
Created page with "<includeonly>{| class="archivelist plainlinks" |{{{image|[[File:Replacement filing cabinet.svg|center|40px|Archives]]}}} |- !{{{title|Archives}}} |- |{{#dpl: |namespace = {{NAMESPACEE}} |ordermethod = title |order = ascending |skipthispage = false |resultsheader = ²{#vardefine:n¦%PAGES%}²²{#ifeq:²{lc:{{{basepage}}} }²¦yes¦²{#ifeq:²{lc:²{#explode:²{#titleparts:²{FULLPAGENAME}²¦¦-1}²¦¦0}²}²¦archive¦²{#titleparts:²{FULLPAGENAME}²¦-1}²¦ {{{base..."
wikitext
text/x-wiki
<includeonly>{| class="archivelist plainlinks"
|{{{image|[[File:Replacement filing cabinet.svg|center|40px|Archives]]}}}
|-
!{{{title|Archives}}}
|-
|{{#dpl:
|namespace = {{NAMESPACEE}}
|ordermethod = title
|order = ascending
|skipthispage = false
|resultsheader = ²{#vardefine:n¦%PAGES%}²²{#ifeq:²{lc:{{{basepage}}} }²¦yes¦²{#ifeq:²{lc:²{#explode:²{#titleparts:²{FULLPAGENAME}²¦¦-1}²¦¦0}²}²¦archive¦[[²{#titleparts:²{FULLPAGENAME}²¦-1}²¦ {{{basepagetitle¦Current}}} ]]<br>}²}²
|titleregexp = ^{{#replace:{{#replace:{{#if:{{#pos:{{lc:{{SUBPAGENAME}}}}|archive}}|{{BASEPAGENAME}}|{{PAGENAME}}}}|'|'}}||_}}/[Aa]rchive_[1-9]$
|format = ,[[%PAGE%¦%NR%]]²{#ifexpr:²{#var:n}² > %NR%¦ ²{*}² }²,
|noresultsheader=<nowiki> </nowiki>
}}{{#dpl:
|namespace = {{NAMESPACEE}}
|ordermethod = title
|order = ascending
|skipthispage = false
|titleregexp = ^{{#replace:{{#replace:{{#if:{{#pos:{{lc:{{SUBPAGENAME}}}}|archive}}|{{BASEPAGENAME}}|{{PAGENAME}}}}|'|'}}||_}}/[Aa]rchive_[1-9][0-9]$
|format = , ²{*}² [[%PAGE%¦²{#expr:%NR%+9}²]],
|noresultsheader = <nowiki> </nowiki>
|noresultsfooter = <nowiki> </nowiki>
}}{{#dpl:
|namespace = {{NAMESPACEE}}
|ordermethod = title
|count = 1
|order = ascending
|skipthispage = false
|titleregexp = ^{{#replace:{{#replace:{{#if:{{#pos:{{lc:{{SUBPAGENAME}}}}|archive}}|{{BASEPAGENAME}}|{{PAGENAME}}}}|'|'}}||_}}/[Aa]rchive_[1-9]$
|format = ,,,
|resultsfooter = ²{#ifeq:²{lc:{{{nlink¦yes}}} }²¦no¦¦<br><span class="createArchive" style="font-size:75%; display:none;">[²{fullurl:²{#ifeq:²{lc:²{#sub:²{#titleparts:²{FULLPAGENAME}²¦¦-1}²¦0¦7}²}²¦archive¦²{#titleparts:²{FULLPAGENAME}²¦-1}²¦²{FULLPAGENAME}²}²/Archive_²{#expr:%PAGES%+1}²¦action=edit&preload=²{urlencode:{{{preload¦Template:Archive_list/Preload}}} }²}² Create next archive]</span>}²²{#ifeq:²{lc:{{{alink¦no}}} }²¦yes¦<br><span class="createArchive" style="font-size:75%; display:none;">[²{fullurl:²{#ifeq:²{lc:²{#sub:²{#titleparts:²{FULLPAGENAME}²¦¦-1}²¦0¦7}²}²¦archive¦²{#titleparts:²{FULLPAGENAME}²¦-1}²¦²{FULLPAGENAME}²}²/Archive_%PAGES%¦action=edit§ion=new}² Add to current]</span>}²
|noresultsfooter = No archives yet²{#ifeq:²{lc:{{{nlink¦yes}}} }²¦no¦¦<br><span class="createArchive" style="font-size:75%; display:none;">[²{fullurl:²{FULLPAGENAME}²/Archive_1¦action=edit&preload=²{urlencode:{{{preload¦Template:Archive_list/Preload}}} }²}² Create next archive]</span>}²
}}
|}</includeonly><noinclude><!--This is a preview of the archive list that doesn't use the actual template so as to prevent accidental creation of subpage archives
-->{| class="archivelist plainlinks"
|[[File:Replacement filing cabinet.svg|center|40px|link=]]
|-
!Archives
|-
|No archives yet <br> [{{fullurl:{{FULLPAGENAME}}|action=purge}} <span style="font-size:75%">Create next archive</span>]
|}{{/doc}}</noinclude>
38cdb14839d317e8778554f4b2e3b0899c58d34a
Template:Archive list/doc
10
553
932
2024-03-23T17:36:58Z
Habblet
11
Created page with "{{Documentation}} {{ToC|left}} ==Usage== This template puts a list of page archives at the top of a page in a small table. It automatically adds links to the list as they are created. It also provides a link at the bottom for creating the next archive. It is important to use this link, because if the archive name is not in a standard format, ''[page]''/Archive ''[number]'', the archive will not be detected and added to the list. Archives should also be sequential to allo..."
wikitext
text/x-wiki
{{Documentation}}
{{ToC|left}}
==Usage==
This template puts a list of page archives at the top of a page in a small table. It automatically adds links to the list as they are created. It also provides a link at the bottom for creating the next archive. It is important to use this link, because if the archive name is not in a standard format, ''[page]''/Archive ''[number]'', the archive will not be detected and added to the list. Archives should also be sequential to allow for proper organisation. Many formatting options are available but archives that are not in the userspace should only use a few of these, to encourage uniformity. Currently 500 archives are supported (the limits of a single Dynamic Pages List), and archives after 500 will not be searched for or listed.
==Syntax==
<pre>{{Archive list
|title=
|align=
|alink=
|nlink=
|preload=
|width=
|image=
|border=
|background=
|talign=
|linkstyle=
}}</pre>
===title===
The title will be displayed in bold centered text above the archive list. In the userspace, styles may be applied to the title by putting span tags around it. Defaults to "Archives". It may be deleted if this is the title you want.
===align===
Specifies where the archive box floats. Text will wrap around the box. Values can be left, right, or center. It defaults to right and can be deleted if a right-align is what is desired.
===alink===
Adds a link which will edit the current archive, creating a new section with no header so the additions go to the bottom of the page. It is useful for things such as [[BS:RFD|requests for deletions]] since sections are archived as they are completed. Sets alink equal to yes to turn it on. It is turned off by default, and if you want it off, the field can be deleted.
===nlink===
Adds a link which will create the next archive in the sequence. It supports preloading and by default it preloads [[Template:Archive list/Preload]]. Set nlink to no to turn it off. It is turned on by default and can be deleted if you want it on.
===preload===
Sets which page to preload when a new archive is created with nlink. The default is [[Template:Archive list/Preload]].
===basepage===
Adds a link to the current page for discussion; not shown by default; named 'Current' by default
===basepagetitle===
Changes the title of the basepage link if it is shown; defaults to 'Current'
===dates===
Adds a hover over that provides dates for the time frame of each archive based on the creation date of the archive and the one before it.
==Userspace only==
The following fields should only be used in the Userspace, since archives outside the userspace should have a uniform appearance. All values can be deleted if no change from default is wanted.
===width===
The width of the archive box. The text will wrap if the box is not wide enough, but it looks better if the box is wide enough to accommodate the preset line breaks. As such it may be necessary to increase the width of the box depending on the settings you apply. The default width is 120px.
===image===
The image to be displayed above the title. It can be any image on the wiki, or an image hosted on an external host. No formatting is applied by default, the full image link is required. The default is [[:File:Replacement filing cabinet.svg]].
====border====
CSS code that is used to determine the border, in the format <code>style width colour</code>. Note that there are no quotes surrounding the input, and that it is not followed by a semicolon. Defaults to <code>solid 1px #CCC</code>.
===background===
The background colour. It can be a hexadecimal code (including the #) a colour name, or colour coordinates. It is not followed by a semicolon. Defaults to #FCFCFC.
====talign====
The alignment of the archive list within the box. Defaults to center.
===linkstyle===
The styles applied to every link in the archive box, including the archive creation link. Its default value is the default link style of your current skin.
<includeonly>[[Category:Transclusion templates]]</includeonly>
e72948053c0e4a9eb4a4f485f8ccee7ab5f2d703
Template:ToC
10
554
933
2024-03-23T17:37:19Z
Habblet
11
Created page with "<div id="toctemplate" style="clear:{{{clear|left}}}; float:{{#switch:{{{align|{{{1|}}}}}}|right=right|center=center|left=left}}; margin:{{#switch:{{{align|{{{1|}}}}}}|right=0 0 1.5em 1.5em|left=0 1.5em 1.5em 0|#default=0}}; width:{{{width|auto}}};" class="nomobile {{#if:{{{limit|}}}| toclimit-{{#expr:{{{limit}}}+1}}}}">__TOC__</div><noinclude>{{/doc}}</noinclude>"
wikitext
text/x-wiki
<div id="toctemplate" style="clear:{{{clear|left}}}; float:{{#switch:{{{align|{{{1|}}}}}}|right=right|center=center|left=left}}; margin:{{#switch:{{{align|{{{1|}}}}}}|right=0 0 1.5em 1.5em|left=0 1.5em 1.5em 0|#default=0}}; width:{{{width|auto}}};" class="nomobile {{#if:{{{limit|}}}| toclimit-{{#expr:{{{limit}}}+1}}}}">__TOC__</div><noinclude>{{/doc}}</noinclude>
8f47e84425c949cf10267af7ee234e60fdeff3e2
Template:ToC/doc
10
555
934
2024-03-23T17:37:36Z
Habblet
11
Created page with "{{Documentation}} The '''ToC''' template aligns the "Table of Contents" in a page. The table may now be able to float at the left or right of a page and the text should wrap around it. This template can improve page layouts in certain cases. It can also force-insert a table of contents in pages where there are not enough sections for an automatic insertion of a "Table of Contents". ==Usage== * {{t|ToC|align}} * {{t|ToC|align|clear|width|limit}} ===Optional parameters=..."
wikitext
text/x-wiki
{{Documentation}}
The '''ToC''' template aligns the "Table of Contents" in a page. The table may now be able to float at the left or right of a page and the text should wrap around it. This template can improve page layouts in certain cases. It can also force-insert a table of contents in pages where there are not enough sections for an automatic insertion of a "Table of Contents".
==Usage==
* {{t|ToC|align}}
* {{t|ToC|align|clear|width|limit}}
===Optional parameters===
<pre>{{ToC
| align = the alignment of the table
| clear = equivalent of placing <br clear=> above the table; defaults to LEFT
| width = the width of the table; defaults to AUTO
| limit = the limit of the sections displayed; the default is no limits
}}</pre>
<includeonly>[[Category:Formatting templates|{{PAGENAME}}]]</includeonly>
f80dfe16d8e539cccbeb905a1d3af14598f647a3
935
934
2024-03-23T17:37:43Z
Habblet
11
wikitext
text/x-wiki
{{Documentation}}
The '''ToC''' template aligns the "Table of Contents" in a page. The table may now be able to float at the left or right of a page and the text should wrap around it. This template can improve page layouts in certain cases. It can also force-insert a table of contents in pages where there are not enough sections for an automatic insertion of a "Table of Contents".
==Usage==
* {{t|ToC|align}}
* {{t|ToC|align|clear|width|limit}}
===Optional parameters===
<pre>{{ToC
|align = the alignment of the table
|clear = equivalent of placing <br clear=> above the table; defaults to LEFT
|width = the width of the table; defaults to AUTO
|limit = the limit of the sections displayed; the default is no limits
}}</pre>
<includeonly>[[Category:Formatting templates|{{PAGENAME}}]]</includeonly>
0bbf5aac864ab5eb69c59e1072eb0f9f8afe254a
Module:Infobox/doc
828
504
936
867
2024-03-23T17:38:18Z
Gau Cho
5
documenting meta = to addRow
wikitext
text/x-wiki
{{documentation}}
{{ToC|right}}
==Creating a template step-by-step==
===Import Module:Infobox===
<syntaxhighlight lang="lua">
local infobox = require('Module:Infobox')
</syntaxhighlight>
===Unpack the frame arguments===
<syntaxhighlight lang="lua">
function p.main(frame)
local args = frame:getParent().args
...
</syntaxhighlight>
===Define an Infobox object===
{{Main|Module:Infobox#new}}
<syntaxhighlight lang="lua">
local ret = infobox.new(args)
</syntaxhighlight>
===Map your arguments to functions===
{{Main|Module:Infobox#defineParams}}
<syntaxhighlight lang="lua">
ret:defineParams {
...
}
</syntaxhighlight>
===Parse your arguments===
{{Main|Module:Infobox#cleanParams}}
<syntaxhighlight lang="lua">
ret:cleanParams()
</syntaxhighlight>
===Initialise your HTML===
{{Main|Module:Infobox#create}}
<syntaxhighlight lang="lua">
ret:create()
</syntaxhighlight>
===Name your infobox===
{{Main|Module:Infobox#defineName}}
<syntaxhighlight lang="lua">
-- note: we don't use the "Template:" namespace prefix
ret:defineName('Infobox FooBar')
</syntaxhighlight>
===Give your infobox custom behaviour===
{{Main|Module:Infobox#addClass|Module:Infobox#useSMW|Module:Infobox#defineLinks}}
<syntaxhighlight lang="lua">
ret:addClass(...)
ret:useSMW({ ... })
</syntaxhighlight>
===Give your infobox a caption===
{{Main|Module:Infobox#caption}}
<syntaxhighlight lang="lua">
ret:caption()
</syntaxhighlight>
===Format your table===
{{Main|Module:Infobox#addRow}}
<syntaxhighlight lang="lua">
ret:addRow{ ... }
:addRow{ ... }
</syntaxhighlight>
===Finalise your template===
{{Main|Module:Infobox#finish}}
<syntaxhighlight lang="lua">
ret:finish()
</syntaxhighlight>
==Functions==
===Public functions===
For the example snippets below, <code>ret</code> is an arbitrary infobox initiated as:
<syntaxhighlight lang="lua">
local ret = Infobox.new(args)
</syntaxhighlight>
====Priority====
Certain functions rely on information created by other functions, and thus must be run in a particular order:
{| class="wikitable"
! 0
|
* new
|-
! 1
|
* defineParams
|-
! 2
|
* create
* maxVersion
|-
! 3
|
* cleanParams
* setMaxButtons
* noSwitch
|-
! 4
|
* ''other functions''
|-
! 5
|
* finish
|}
====nilParam====
<syntaxhighlight lang="lua">
Infobox.nilParam()
</syntaxhighlight>
Returns the value of the placeholder value <code>Infobox.nil_param</code>. This value is generally not seen, but it is used to fill switchbox data as <code>nil</code> causes unwanted behaviour.
====isDefined====
<syntaxhighlight lang="lua">
Infobox.isDefined(arg)
</syntaxhighlight>
Checks whether the value <code>arg</code> can be considered as [[Module:Infobox#Defined parameters|defined]].
====new====
<syntaxhighlight lang="lua">
Infobox.new(args)
</syntaxhighlight>
Creates a new infobox object with <code>args</code> as a <code>table</code> of values passed from the template invocation.
This function also creates the top-level wrapper and sets a metatable for the infobox.
====create====
<syntaxhighlight lang="lua">
ret:create()
</syntaxhighlight>
Creates the HTML tags used for the infobox itself. Will run <code>maxVersion()</code> if it has not been run already.
====defineName====
<syntaxhighlight lang="lua">
ret:defineName(arg)
</syntaxhighlight>
Defines the name of the infobox. This should be the base pagename; i.e. no "Template:" namespace prefix.
====setMaxButtons====
<syntaxhighlight lang="lua">
ret:setMaxButtons(n)
</syntaxhighlight>
Changes the behaviour of buttons by defining the maximum number of buttons that are allowed to appear. If the version count exceeds the button count, their buttons will be replaced with a drop down menu. If not run, the maximum button count will be 5.
====cleanParams====
<syntaxhighlight lang="lua">
ret:cleanParams()
</syntaxhighlight>
Parses the parameters with their mapped functions.
====defineParams====
<syntaxhighlight lang="lua">
ret:defineParams{
...
}
</syntaxhighlight>
Maps parameters to functions as defined by a <code>table</code> formatted as such:
<syntaxhighlight lang="lua">
{ name = <param>, func = <func>, dupes = true },
</syntaxhighlight>
<code>param</code> should be a <code>string</code> that names the parameter as it will be in references for use in other functions.
<code>func</code> should be a <code>function</code> or instructions on how to find a function.
<code>dupes</code> is a meta configuration that allows the parameter to be duplicated in switch data. Normally, these duplicate values are not needed, and they will be deleted if they are the same as the default values after all parameters have been parsed. Some parameters require duplication to function properly, such as display altering parameters defined with <code>linkParams()</code>.
If duplicates are not needed, this parameter should be deleted.
;Predefined functions
If <code>func</code> is a <code>string</code>, then the module will attempt to use a predefined function.
{| class="wikitable"
! Function
! Use
|-
! <tt>name</tt>
| Uses the parameter named "name". If "name" is blank or undefined, it will use the page name.
|-
! <tt>release</tt>
| Uses the parameters named "release" and "update" and formats it as such:
* If both are defined: <code><nowiki><release> ([[Update:<update>|Update]])</nowiki></code>
* If only release is defined: <code><release> (Update unknown)</code>
* If release is not defined: <code>? (edit)</code>
|-
! <tt>removal</tt>
| Uses the parameters named "removal" and "removalupdate" and formats it the same as <code>release</code>
|-
! <tt>hasContent</tt>
| If the parameter is defined and not blank, it will be used. Otherwise, <code>? (edit)</code> will be used.
|-
! <tt>image</tt>
| Currently functions the same as <code>hasContent</code>
|-
! <tt>numbers</tt>
| Removes commas from the parameter and attempts to cast it to a <code>number</code>. If it works, the number is used, otherwise <code>? (edit)</code>
|}
;User-defined functions
If <code>func</code> is a <code>function</code>, then that function will be used to parse the parameter. User-defined functions allow for more robust formatting and guidelines.
As a general practice, user-defined functions should be located under the <code>main</code> functions in the module. It is best to document these functions so that they may be changed by other editors if necessary.
In user-defined functions, circumstances where the edit button should be shown should return <code>nil</code>, which is automatically handled by the module.
;Simple and complex definitions
Parameters may be mapped to functions in a straightforward manner by simply definining a name of or reference to a function, such as:
<syntaxhighlight lang="lua">
ret:defineParams{
{ name = 'foo', func = 'hasContent' },
{ name = 'bar', func = barFunc }
}
</syntaxhighlight>
Simple definitions only pass the parameter from the master list named <name>. Some parameters need more interaction with other parameters. To do this, we require a complex definition. Complex definitions point to a user-defined function and map what parameters to pass. Complex definitions can also pass literal values or the uncleaned value with the use of flags.
Complex functions are defined as <code>table</code> values formatted as such:
<syntaxhighlight lang="lua">
func = { name = <funcname>, params = { <paramname>, ... }, flag = <flags> }
</syntaxhighlight>
A basic example for complex functions is:
<syntaxhighlight lang="lua">
ret:defineParams{
{ name = 'foo', func = { name = fooFunc, params = { 'bar', 'baz' } },
}
-- ...
-- ...
function fooFunc(arg1,arg2)
return arg1..arg2
end
</syntaxhighlight>
In this example, we have a parameter named "foo", but we use the parameters passed to the template named "bar" and "baz". Parameters are passed in the order listed, so in the above, the parameter <code>bar</code> is used for <code>arg1</code>, and <code>baz</code> is used for <code>arg2</code>.
Flags define the behaviour of the parameters named. The following flag behaviours exist:
* <code>d</code> - Looks for the cleaned and parsed version of the parameter. If not cleaned, it will use the value passed to the template. If neither exist, it will use <code>nil</code>. This is the default behaviour if no flag is defined.
* <code>p</code> - Looks only at the value passed to the template. If it does not exist, it will use <code>nil</code>.
* <code>r</code> ''or'' <code>l</code> - Uses the literal (or raw) value.
If <code>flag</code> is a <code>string</code>, then the behaviour defined by it will apply to every parameter passed. If <code>flag</code> is a <code>table</code>, then each flag will only define the behaviour of the respective parameter.
For example:
<syntaxhighlight lang="lua">
ret:defineParams{
{ name = 'foo', func = {
name = fooFunc,
params = { 'foo', 'bar', 'baz' },
flag = { 'd', 'p', 'l' },
},
}
</syntaxhighlight>
In the above snippet, <code>foo</code> will use the default behaviour and <code>bar</code> will only look for the value passed to the template. The third parameter will use the string literal <code>'baz'</code>.
;Definition order
Parameters are defined in the order that they are coded. If a parameter relies on the cleaned value of another parameter, then the parameter dependent on the other will need to be defined after in the definition table.
====addRow====
<syntaxhighlight lang="lua">
ret:addRow(tbl)
</syntaxhighlight>
Adds a new row to the template with columns and behaviour defined by <code>tbl</code>, which should be a <code>table</code> that holds cells defined as <code>table</code> variables, formatted as such:
<syntaxhighlight lang="lua">
{
meta = { addClass = 'class' }, -- Optional line, string containing a class to apply to the entire row
{ celltype, label, <attr1> = <value1>, <attr2> = <value2> ... },
...
}
</syntaxhighlight>
<code>celltype</code> and <code>label</code> are <code>string</code> values that define the fundamental display of the cell.
{| class="wikitable"
! <tt>celltype</tt>
! Output
|-
! <tt>th</tt>
| Creates a <code><nowiki><th></nowiki></code> tag where the content is the value of <code>label</code>
|-
! <tt>td</tt>
| Creates a <code><nowiki><td></nowiki></code> tag where the content is the value of <code>label</code>
|-
! <tt>argh</tt>
| Creates a <code><nowiki><th></nowiki></code> tag where the content is the value of the parameter named <code>label</code>
|-
! <tt>argd</tt>
| Creates a <code><nowiki><td></nowiki></code> tag where the content is the value of the parameter named <code>label</code>
|}
The attributes are any of the available attributes defined inside the function. All functions that are ultimately run are documented in the [[mw:Extension:Scribunto/Lua reference manual#HTML library|Lua reference manual]] and are run on the tag for the specific table cell they are called on.
{| class="wikitable"
! <tt>attr</tt>
! Type
! Use
|-
! <tt>attr</tt>
| <tt>table</tt>
| Passes the value to <tt>mw.html.attr()</tt>
|-
! <tt>css</tt>
| <tt>table</tt>
| Passes the value to <tt>mw.html.css()</tt>
|-
! <tt>colspan</tt>
| <tt>number</tt>
| Uses the value to run <tt>mw.html.attr('colspan',#)</tt>
|-
! <tt>rowspan</tt>
| <tt>number</tt>
| Uses the value to run <tt>mw.html.attr('rowspan',#)</tt>
|-
! <tt>title</tt>
| <tt>string</tt>
| Uses the value to run <tt>mw.html.attr('title',text)</tt>
|-
! <tt>class</tt>
| <tt>string</tt>
| Passes the value to <tt>mw.html.addClass()</tt>
|-
! <tt>class</tt>
| <tt>table</tt>
| Passes every value in the table to <tt>mw.html.addClass()</tt>
|}
If the template is a switch infobox, then <code>data-attr-param="<paramname>"</code> will be added to the table cell.
This function will return the template, allowing further self functions to be performed.
====wikitext====
<syntaxhighlight lang="lua">
ret:wikitext(txt)
</syntaxhighlight>
Appends wikitext to the top-level wrapper. Templates, etc. passed directly from Lua code will need explicit preprocessing prior to display properly.
This function will return the template, allowing further self functions to be performed.
====caption====
<syntaxhighlight lang="lua">
ret:caption()
</syntaxhighlight>
Adds a caption to the infobox based off the subject name, using the following priority for the text:
* <code>name</code> parameter
* <code>name1</code> parameter (if switch infobox)
* <code><nowiki>{{PAGENAME}}</nowiki></code>
If the template is a switch infobox, this will also add <code>data-attr-param="name"</code> to the <code>caption</code>.
This function will return the template, allowing further self functions to be performed.
====attr====
<syntaxhighlight lang="lua">
ret:attr(arg)
</syntaxhighlight>
Passes <code>arg</code> to <code>mw.html.attr()</code>.
This function will return the template, allowing further self functions to be performed.
====float====
<syntaxhighlight lang="lua">
ret:float(dir)
</syntaxhighlight>
Changes the direction of the CSS style <code>float</code> for the top level wrapper. By default, all infoboxes float <code>right</code>.
This function will return the template, allowing further self functions to be performed.
====css====
<syntaxhighlight lang="lua">
ret:css(...)
</syntaxhighlight>
Passes the arguments to <code>mw.html.css()</code>.
This function will return the template, allowing further self functions to be performed.
====addClass====
<syntaxhighlight lang="lua">
ret:addClass(arg)
</syntaxhighlight>
Passes <code>arg</code> to <code>mw.html.addClass()</code>.
This function will return the template, allowing further self functions to be performed.
====addClasses====
<syntaxhighlight lang="lua">
ret:attr(...)
</syntaxhighlight>
Passes every argument to <code>mw.html.addClass()</code> individually.
This function will return the template, allowing further self functions to be performed.
====tag====
<syntaxhighlight lang="lua">
ret:tag(arg)
</syntaxhighlight>
Passes <code>arg</code> to <code>mw.html.tag()</code>.
This function will return the tag (not the template), allowing further self functions to be performed.
====useSMW====
<syntaxhighlight lang="lua">
ret:useSMW(tbl)
</syntaxhighlight>
Tells the module to create properties for parameters, as well as defining those mappings with <code>tbl</code>, a <code>table</code> whose elements form an associated array formatted as such:
<syntaxhighlight lang="lua">
{
parameter = property,
...
}
</syntaxhighlight>
When defined, properties will be defined for two separate properties: both "Property:<name>" and "Property:All <name>". If the template holds switch infobox data, then properties will be defined for "Property:<name><X>" for all applicable X. The "All <name>" properties exist to create storage for all applicable values. Keep this in mind, as "Property:<name>" will only ever store the default value.
By default, the module will define [[Property:Release date]] and [[Property:Is members only]].
====noSwitch====
<syntaxhighlight lang="lua">
ret:noSwitch()
</syntaxhighlight>
Forces the template to use only a single version, the default.
====maxVersion====
<syntaxhighlight lang="lua">
ret:maxVersion()
</syntaxhighlight>
Returns the number of versions used by the infobox. When run the first time, this function will check and define the version count first. Subsequent calls will simply return the count.
====linkParams====
<syntaxhighlight lang="lua">
ret:linkParams{
paramName = linkedParam,
...
}
</syntaxhighlight>
Links two parameters where one parameter (<code>paramName</code>) is the parameter name of a cell's contents, and <code>linkedParam</code> is the name of the parameter that contains the classes for the specified cell. It will only have an effect on switch infoboxes. Both parameters will need to be defined in the infobox with <code>definedParams</code>. They should be functions of the parameter they operator on and include <code>dupes = true</code> in their definitions.
This function must be called only '''after''' calling <code>ret:cleanParams()</code> (and before <code>ret:finish()</code>).
Example: grand exchange graphs do not make sense to display for untradeable items within switch infoboxes (e.g. [[ahrim's staff]]); one could use a linkParam to add a class that will display:none table row when switching to untradeable items.
In the source code of the infobox, these will be added as such:
<syntaxhighlight lang="html5">
<div class="infobox-switch-resources hidden">
<span data-attr-param="param">
<span data-attr-index="0" data-addclass="linkedParam[d]">paramName[d]</span>
<span data-attr-index="1" data-addclass="linkedParam[1]">paramName[1]</span>
<span data-attr-index="2" data-addclass="linkedParam[2]">paramName[2]</span>
</span>
</div>
</syntaxhighlight>
From this, the switch infobox javascript will add the contents of <code>data-addclass</code> to class attribute of the row of the table when the infobox is switched. You will also need to define the classes you are using in global CSS.
If the parameter is a th or td element, the class is added to the parent tr. Otherwise, it is added to the element directly (e.g. caption element).
====finish====
Finalises the template and adds remaining required HTML.
* Creates hidden tag for switch infobox data (if needed)
* Adds [[:Category:Pages that contain switch infobox data]] if in the mainspace
* Defines [[Property:Version count]] if in the mainspace
* Adds [[RS:SMW|Semantic MediaWiki Data]] in a hidden tag (if needed)
*: This data can be viewed on the page itself by using inspect element, but it is not normally visible
* Adds infobox bottom links
====param====
<syntaxhighlight lang="lua">
ret:param(arg, flag)
</syntaxhighlight>
Returns the value of the parameter named <code>arg</code>. The exact format and values are determined by the <code>flag</code>:
* <code>d</code> ''or'' empty - default value of the parameter
* <code>f</code> ''or'' <code>full</code> - all values of the parameter as a table
* <code>s</code> ''or'' <code>switches</code> - table of all switch values (or nil if no switches are present)
* <code>s#</code> - switch value at index <code>#</code>
* <code>r</code> - if defined, switch value 1, otherwise the default value
Note that this function returns the actual table used by the template. If a switch value is equal to <code>Infobox.nil_param</code> for flag <code>s#</code>, then <code>nil</code> will be returned instead; however, when calling specific indices from the tables returned by <code>f</code> or <code>r</code>, the value of <code>Infobox.nil_param</code> will be returned without extra parsing.
====paramDefined====
<syntaxhighlight lang="lua">
ret:paramDefined(arg, flag)
</syntaxhighlight>
Looks to see if the parameter named <code>arg</code> is [[Module:Infobox#Defined parameters|defined]] at any index, based on instructions from <code>flag</code>:
* <code>0</code> ''or'' empty - default value of parameter
* <code>#</code> - value of switch at index <code>#</code>
* <code>all</code> - true if the parameter is defined with a default or at any switch value
====paramGrep====
<syntaxhighlight lang="lua">
ret:paramGrep(arg, query)
</syntaxhighlight>
Performs a function or search on every possible value of the parameter named <code>arg</code>. <code>query</code> can be either a <code>function</code>, a <code>string</code>, or a <code>number</code>. If a match is found or the function query returns true, <code>paramGrep</code> will end its search.
If <code>query</code> is a function, that function must pass a single argument (the parameter), and return either <code>true</code> or <code>false</code>.
If <code>query</code> is a string, then that string will be compared to each value of the parameter. If they match exactly, disregarding casing, then <code>true</code> will be returned. To perform a pattern match on strings, you will need to define <code>query</code> as a function that returns a boolean value based on <code>string.find</code> or <code>mw.ustring.find</code>.
If <code>query</code> is a number (or any other type), then it will be compared to each value for a match.
Matches are only checked if the type of <code>query</code> matches the value of the parameter; e.g., it is not valid to search for a number (ex: <code>4</code>) inside a string (ex: <code>'455'</code>).
====paramRead====
<syntaxhighlight lang="lua">
Infobox.paramRead(arg, query)
</syntaxhighlight>
Performs the same function as <code>paramGrep</code>; however, instead of <code>arg</code> being a name of a parameter to look for, it is the table itself. Useful for functions where only the table of parameters is passed, but not the whole infobox.
====categoryData====
<syntaxhighlight lang="lua">
ret:categoryData()
</syntaxhighlight>
Returns fundamental category data collected during <code>Infobox:cleanParams()</code>.
Fields in the category data include:
* <code>one_defined</code> - <code>true</code> if at least one possible value of the parameter is defined
* <code>all_defined</code> - <code>false</code> if at least one possible value of the parameter is not defined
====addDropLevelVars====
<syntaxhighlight lang="lua">
Infobox:addDropLevelVars(key, paramName)
</syntaxhighlight>
Used to link infobox versions to specific [[Template:DropsLine|drops table]] versions. Sets a var <code>DropLevel_{key}_{version_name}</code>, where the value is pulled from the value of the given param <code>paramName</code> at each version. If multiple values are set with the same key, the result will be a comma separated string.
For example, if an infobox has <code>|version1 = A|level1 = 10</code>, then <code>ret:addDropLevelVars('combat', 'level')</code> will set the variable <code>DropLevel_combat_A = 10</code>.
==Rules==
===Defined parameters===
Parameters are to be considered "defined" if they meet all of the following criteria:
* Is not <code>nil</code>
* Contains at least one non-whitespace character <code>string.find(param,'%S')</code>
* Is not equal to <code>Infobox.nil_param</code>
* Does not contain the string <code>'action=edit'</code>
77e9f63af5b42c97f2cba17140e115cd2bf3ebe2
File:Replacement filing cabinet.svg
6
556
937
2024-03-23T17:38:39Z
Habblet
11
Original source: https://commons.wikimedia.org/wiki/File:Replacement_filing_cabinet.svg
{{PD}}
wikitext
text/x-wiki
== Summary ==
Original source: https://commons.wikimedia.org/wiki/File:Replacement_filing_cabinet.svg
{{PD}}
e01a1e726a79a95e8f631d0723147bd6f7a60e45
MediaWiki:Common.less/templates.less
8
25
938
649
2024-03-23T17:40:11Z
Habblet
11
less
less
/* ==================
TEMPLATES
==================*/
:root {
--keypress-background: @gallery;
--keypress-border: @silver;
--keypress-color: @mineshaft;
}
// Template:Archive list
.archivelist {
background-color: @infobox-background;
border: solid 1px @infobox-border-color;
box-shadow: @box-shadow;
float: right;
margin: 5px;
padding: 5px;
text-align: center;
width: 120px;
}
// Template:Shortcut
.shortcut {
border: 1px solid @infobox-border-color;
background: @infobox-background;
float: right;
font-size: .8em;
margin: 0.5em 0em 0.5em 1em;
padding: 0.5em;
text-align: center;
}
// Hatnotes: [[Module:Hatnote]]
.hatnote,
.seealso {
font-style: italic;
i {
font-style: normal;
}
}
// two classes - hatnote gets much customisation in minerva but seealso doesnt
div.hatnote,
div.seealso {
// 0.5em is <p>'s top and bottom margin
// 1.6em to match <dd>/<ul> indent
margin: .5em 1.6em;
& + & {
margin-top: -0.5em;
}
}
// Template:Key press
.keypress {
background: var(--keypress-background);
color: var(--keypress-color);
font-family: inherit;
border: 1px solid var(--keypress-border);
border-radius: @border-radius;
font-size: 0.9em;
margin: 0 0.1em;
padding: 0.1em 0.4em;
white-space: nowrap;
}
3f3a1343c7473bb68436f22ac70f68f81c286a6e
MediaWiki:Common.css
8
30
939
811
2024-03-23T17:40:25Z
Habblet
11
Updating CSS from [[MediaWiki:Common.less]]
css
text/css
/* <pre> */
:root {
--body-main: #feffff;
--body-light: #f2f2f2;
--body-mid: #d0bd97;
--body-dark: #e3e3e3;
--body-border: #000;
--body-background-color: #173a4d;
--button-background: #605443;
--button-color: #fff;
--button-border: #3c352a;
--button-dark: #18140c;
--button-light: #3a301d;
--sidebar: #cfc08d;
--background-text-color: #e2dbc8;
--background-link-color: #e2bd8a;
--search-box: #efeee6;
--link-color: #936039;
--redlink-color: #ba0000;
--text-color: #000;
--byline-color: #ccc;
--subtle-color: #777;
--admin-blue: #332e75;
--bearcat-green: #13592e;
--awb-purple: #933b96;
--rsw-blue: #438ab6;
--osrsw-brown: #605443;
--thumb-bg: var(--body-light);
--thumb-caption-bg: var(--body-mid);
--sourceeditor-input-background: #fff;
--sourceeditor-background: var(--body-light);
--sourceeditor-background-secondary: var(--body-light);
--sourceeditor-border: var(--body-mid);
--codemirror-gutter-background: var(--body-mid);
}
@font-face {
font-family: 'Lora';
font-weight: 400 700;
font-style: normal;
font-display: swap;
src: url('filepath://Lora.woff2') format('woff2');
}
@font-face {
font-family: 'Lora';
font-weight: 400 700;
font-style: italic;
font-display: swap;
src: url('filepath://Lora-Italic.woff2') format('woff2');
}
:root {
--base-text-color: #36414f;
--base-heading-color: #444e5a;
--base-heading-border: #e4eaee;
--mw-code-background-color: #ddd4bb;
--body-background-image: url('filepath://Wiki_background.jpg');
}
#mw-page-base {
background: none;
}
.mw-body {
background-color: var(--body-main);
color: var(--text-color);
border-color: transparent;
box-shadow: 0 0 7px rgba(0, 0, 0, 0.15);
margin-top: 0;
}
h1,
h2,
h3,
h4,
h5,
h6 {
color: var(--text-color);
}
h1,
h2 {
border-color: var(--sidebar);
}
.mw-body h1,
.mw-body-content h1,
.mw-body-content h2,
.mw-body-content h3,
.mw-body-content h4,
.mw-body-content h5,
.mw-body-content h6 {
font-family: 'Lora', 'Palatino', 'Georgia', serif;
}
.mw-parser-output h2:first-of-type {
clear: left;
}
.mw-footer {
color: var(--background-text-color);
}
.mw-footer li {
color: var(--background-text-color);
}
.mw-footer a,
.mw-footer a:active,
.mw-footer a:visited {
color: var(--background-link-color);
}
::placeholder {
color: var(--subtle-color);
}
a {
color: var(--link-color);
}
a:visited,
a:active {
color: var(--link-color);
}
a.new {
color: var(--redlink-color);
}
a.new:visited {
color: var(--redlink-color);
}
.mw-parser-output a.extiw,
.mw-parser-output a.external {
color: var(--link-color);
}
.mw-parser-output a.extiw:visited,
.mw-parser-output a.external:visited,
.mw-parser-output a.extiw:active,
.mw-parser-output a.external:active {
color: var(--link-color);
}
.jsPurgeLink a.external {
color: var(--link-color);
}
:root {
--errorbox-bg: #feecea;
--errorbox-border: #ee4231;
--warningbox-bg: #fef9de;
--warningbox-border: #f9d000;
--successbox-bg: #ecf8e3;
--successbox-border: #6bc71f;
}
.mw-message-box-error,
.errorbox,
.mw-message-box-warning,
.warningbox,
.mw-message-box-success,
.successbox,
.usermessage {
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
}
.mw-message-box-error,
.errorbox {
background-color: var(--errorbox-bg);
border-color: var(--errorbox-border);
}
.mw-message-box-warning,
.warningbox,
.usermessage {
background-color: var(--warningbox-bg);
border-color: var(--warningbox-border);
}
.mw-message-box-success,
.successbox {
background-color: var(--successbox-bg);
border-color: var(--successbox-border);
}
.catlinks {
background: var(--body-light);
border: 1px solid var(--body-dark);
padding: 8px 15px;
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
}
.catlinks li {
border-color: var(--body-mid);
}
.filehistory a img,
#file img {
background: url("data:image/svg+xml,%3C%3Fxml version='1.0' encoding='UTF-8'%3F%3E%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16'%3E%3Cpath d='M0 0h8v16h8V8H0z' opacity='.13'/%3E%3C/svg%3E") repeat;
}
#file img:hover {
background: none;
}
.mw-highlight {
background: none;
}
.mw-highlight .linenos {
background-color: var(--mw-code-background-color);
color: var(--byline-color);
}
.mw-highlight a:hover .linenos,
.mw-highlight .hll a .linenos {
color: var(--text-color);
}
.mw-content-ltr.mw-highlight-lines pre,
.mw-content-ltr.content .mw-highlight-lines pre {
box-shadow: inset 2.75em 0 0 var(--mw-code-background-color);
}
#pagehistory ul {
list-style: none;
margin: 0;
}
#pagehistory li {
border: 1px solid transparent;
padding: 1px 10px;
margin: 2px 0;
}
#pagehistory li.selected {
background-color: var(--body-light);
color: inherit;
border: 1px dashed var(--body-border);
outline: none;
}
#mw-history-compare > div:first-of-type {
position: -webkit-sticky;
position: sticky;
top: 0;
background-color: var(--body-main);
border-bottom: 1px solid var(--body-dark);
padding: 0.25em 0;
}
.wgl-stickyheader #mw-history-compare > div:first-of-type {
top: 2.5rem;
}
.autocomment,
.autocomment a,
.autocomment a:visited {
color: var(--link-color);
}
li span.deleted,
span.history-deleted {
color: var(--byline-color);
}
.mw-usertoollinks-contribs-no-edits,
.mw-usertoollinks-contribs-no-edits:visited {
color: var(--redlink-color);
}
.CategoryTreeToggle {
color: var(--link-color);
}
body.wgl-stickyheader.action-view .mw-headline:target::before {
display: block;
content: '';
margin-top: -3rem;
height: 3rem;
visibility: hidden;
pointer-events: none;
}
.mw-mmv-post-image {
color: var(--text-color);
background-color: var(--body-main);
}
.mw-mmv-image-metadata {
border-top-color: var(--body-mid);
background-color: var(--body-light);
}
.mw-mmv-dialog,
.mw-mmv-dialog .mw-mmv-dialog-down-arrow,
.mw-mmv-options-dialog .mw-mmv-dialog-down-arrow {
background-color: var(--body-light);
box-shadow: none;
}
.mw-mmv-options-enable-alert {
background-color: var(--body-light);
color: var(--text-color);
}
.mw-mmv-options-dialog-header,
.mw-mmv-options-text-header,
.mw-mmv-options-text-body,
.mw-mmv-options-enable-alert,
.mw-mmv-options-dialog .mw-mmv-disable-confirmation .mw-mmv-options-dialog-header,
.mw-mmv-options-dialog .mw-mmv-disable-confirmation .mw-mmv-options-text-header {
color: var(--text-color);
}
.mw-revslider-container {
border-color: var(--sidebar);
}
.mw-revslider-slider-wrapper {
border-top-color: var(--sidebar);
}
.mw-ui-button {
background-color: var(--ooui-normal);
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
}
.mw-ui-button:not(:disabled):hover,
.mw-ui-button:not(:disabled):active {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
}
.mw-ui-button:not(:disabled):focus {
color: var(--ooui-text);
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent), inset 0 0 0 2px #fff;
}
.mw-ui-button:not(:disabled):visited {
color: var(--ooui-text);
}
.mw-ui-button.mw-ui-progressive:not(:disabled) {
background-color: var(--ooui-progressive);
color: #fff;
border-color: var(--ooui-progressive);
}
.mw-ui-button.mw-ui-progressive:not(:disabled):hover {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
}
.mw-ui-button.mw-ui-progressive:not(:disabled):focus {
box-shadow: inset 0 0 0 1px var(--ooui-accent), inset 0 0 0 2px #fff;
}
.mw-ui-button.mw-ui-progressive:not(:disabled):active,
.mw-ui-button.mw-ui-progressive:not(:disabled).is-on {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
box-shadow: none;
}
.mw-ui-button.mw-ui-destructive:not( :disabled ) {
color: #fff;
}
.mw-ui-button.mw-ui-quiet,
.mw-ui-button.mw-ui-quiet.mw-ui-progressive,
.mw-ui-button.mw-ui-quiet.mw-ui-destructive {
color: var(--text-color);
}
input[type='checkbox']:hover + .mw-ui-button.mw-ui-quiet,
input[type='checkbox']:hover + .mw-ui-button.mw-ui-quiet.mw-ui-progressive,
input[type='checkbox']:hover + .mw-ui-button.mw-ui-quiet.mw-ui-destructive,
.mw-ui-button.mw-ui-quiet:hover,
.mw-ui-button.mw-ui-quiet.mw-ui-progressive:hover,
.mw-ui-button.mw-ui-quiet.mw-ui-destructive:hover {
background-color: rgba(0, 24, 73, 0.02745098);
color: var(--text-color);
border-color: transparent;
}
input[type='checkbox']:focus + .mw-ui-button.mw-ui-quiet,
input[type='checkbox']:focus + .mw-ui-button.mw-ui-quiet.mw-ui-progressive,
input[type='checkbox']:focus + .mw-ui-button.mw-ui-quiet.mw-ui-destructive,
.mw-ui-button.mw-ui-quiet:focus,
.mw-ui-button.mw-ui-quiet.mw-ui-progressive:focus,
.mw-ui-button.mw-ui-quiet.mw-ui-destructive:focus {
color: var(--text-color);
}
input[type='checkbox']:active + .mw-ui-button.mw-ui-quiet,
input[type='checkbox']:active + .mw-ui-button.mw-ui-quiet.mw-ui-progressive,
input[type='checkbox']:active + .mw-ui-button.mw-ui-quiet.mw-ui-destructive,
.mw-ui-button.mw-ui-quiet:active,
.mw-ui-button.mw-ui-quiet.mw-ui-progressive:active,
.mw-ui-button.mw-ui-quiet.mw-ui-destructive:active {
background-color: rgba(0, 36, 73, 0.08235294);
color: var(--text-color);
border-color: #72777d;
}
.mw-ui-input {
background-color: var(--ooui-input);
color: var(--text-color);
border-color: var(--ooui-input-border);
}
.mw-ui-input:hover {
border-color: var(--ooui-input-border--hover);
}
.mw-ui-input::placeholder {
color: var(--byline-color);
}
.mw-content-ltr .redirectText li:first-child {
padding: 0;
background: 0;
}
.mw-content-ltr .redirectText li:first-child::before {
content: '';
background: currentcolor;
-webkit-mask: url("filepath://Redirect-arrow.svg") no-repeat 50% 50% / contain;
mask: url("filepath://Redirect-arrow.svg") no-repeat 50% 50% / contain;
display: inline-block;
width: 47px;
height: 20px;
}
:root {
--wikitable-header-bg: var(--body-dark);
--wikitable-border: var(--body-border);
--wikitable-bg: var(--body-light);
--wikitable-bg-lighter: #e9e3d6;
--wikitable-color: var(--text-color);
--table-na-background: rgba(255, 255, 255, 0.3);
--table-na-color: var(--subtle-color);
--table-yes-background: #c3e8a3;
--table-yes-color: #2e5e05;
--table-no-background: #fbc0ba;
--table-no-color: #801c13;
--table-maybe-background: #fcea94;
--table-maybe-color: #786300;
}
.wikitable {
background: var(--wikitable-bg);
color: var(--wikitable-color);
border-color: var(--wikitable-border);
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
}
.wikitable > tr > th,
.wikitable > tr > td,
.wikitable > * > tr > th,
.wikitable > * > tr > td {
border-color: var(--wikitable-border);
}
.wikitable > tr > th.table-noborder,
.wikitable > tr > td.table-noborder,
.wikitable > * > tr > th.table-noborder,
.wikitable > * > tr > td.table-noborder {
border-left-style: hidden;
border-right-style: hidden;
padding-left: 0;
padding-right: 0;
}
.wikitable > tr > th,
.wikitable > * > tr > th {
background-color: var(--wikitable-header-bg);
}
.tabber .wikitable {
box-shadow: none;
}
.mw_metadata td,
.mw_metadata th {
border-color: var(--wikitable-border);
}
.mw_metadata th {
background-color: var(--wikitable-header-bg);
}
.mw_metadata td {
background-color: var(--wikitable-bg);
}
.mw-datatable {
border-color: var(--wikitable-border);
}
.mw-datatable td,
.mw-datatable th {
border-color: var(--wikitable-border);
}
.mw-datatable th {
background-color: var(--wikitable-header-bg);
}
.mw-datatable td {
background-color: var(--wikitable-bg);
}
.mw-datatable tr:hover td {
background-color: var(--wikitable-bg);
}
table.alternating-rows tr:nth-child(odd),
table.alternating-cols td:nth-child(odd) {
background: var(--wikitable-alternating-bg);
}
.table-na {
background: var(--table-na-background);
color: var(--table-na-color);
vertical-align: middle;
text-align: center;
}
.table-yes {
background: var(--table-yes-background);
color: var(--table-yes-color);
}
.table-positive {
background: var(--table-yes-background);
}
.table-no {
background: var(--table-no-background);
color: var(--table-no-color);
}
.table-negative {
background: var(--table-no-background);
}
.table-maybe {
background: var(--table-maybe-background);
color: var(--table-maybe-color);
}
#mw-allmessagestable .am_actual,
#mw-allmessagestable .am_default {
background-color: var(--wikitable-bg);
}
#mw-allmessagestable .am_default:hover,
#mw-allmessagestable .am_actual:hover,
#mw-allmessagestable tbody:hover td {
background-color: var(--wikitable-bg-lighter);
}
table.wikitable td.no-cell-spacing {
padding: 0;
height: 0;
}
table.wikitable td.no-cell-spacing table {
margin: -1px;
width: calc(100% + 2px);
height: calc(100% + 2px);
}
.plainlist ol,
.plainlist ul {
margin: 0;
}
.plainlist li {
margin-bottom: 0;
list-style: none;
}
table.align-right-1 td:nth-of-type(1),
table.align-right-2 td:nth-of-type(2),
table.align-right-3 td:nth-of-type(3),
table.align-right-4 td:nth-of-type(4),
table.align-right-5 td:nth-of-type(5),
table.align-right-6 td:nth-of-type(6),
table.align-right-7 td:nth-of-type(7),
table.align-right-8 td:nth-of-type(8),
table.align-right-9 td:nth-of-type(9),
table.align-right-10 td:nth-of-type(10),
table.align-right-11 td:nth-of-type(11),
table.align-right-12 td:nth-of-type(12),
table.align-right-13 td:nth-of-type(13),
table.align-right-14 td:nth-of-type(14),
table.align-right-15 td:nth-of-type(15),
table.align-right-16 td:nth-of-type(16),
table.align-right-17 td:nth-of-type(17),
table.align-right-18 td:nth-of-type(18),
table.align-right-19 td:nth-of-type(19),
table.align-right-20 td:nth-of-type(20) {
text-align: right;
}
table.align-center-1 td:nth-of-type(1),
table.align-center-2 td:nth-of-type(2),
table.align-center-3 td:nth-of-type(3),
table.align-center-4 td:nth-of-type(4),
table.align-center-5 td:nth-of-type(5),
table.align-center-6 td:nth-of-type(6),
table.align-center-7 td:nth-of-type(7),
table.align-center-8 td:nth-of-type(8),
table.align-center-9 td:nth-of-type(9),
table.align-center-10 td:nth-of-type(10),
table.align-center-11 td:nth-of-type(11),
table.align-center-12 td:nth-of-type(12),
table.align-center-13 td:nth-of-type(13),
table.align-center-14 td:nth-of-type(14),
table.align-center-15 td:nth-of-type(15),
table.align-center-16 td:nth-of-type(16),
table.align-center-17 td:nth-of-type(17),
table.align-center-18 td:nth-of-type(18),
table.align-center-19 td:nth-of-type(19),
table.align-center-20 td:nth-of-type(20) {
text-align: center;
}
table.align-left-1 td:nth-of-type(1),
table.align-left-2 td:nth-of-type(2),
table.align-left-3 td:nth-of-type(3),
table.align-left-4 td:nth-of-type(4),
table.align-left-5 td:nth-of-type(5),
table.align-left-6 td:nth-of-type(6),
table.align-left-7 td:nth-of-type(7),
table.align-left-8 td:nth-of-type(8),
table.align-left-9 td:nth-of-type(9),
table.align-left-10 td:nth-of-type(10),
table.align-left-11 td:nth-of-type(11),
table.align-left-12 td:nth-of-type(12),
table.align-left-13 td:nth-of-type(13),
table.align-left-14 td:nth-of-type(14),
table.align-left-15 td:nth-of-type(15),
table.align-left-16 td:nth-of-type(16),
table.align-left-17 td:nth-of-type(17),
table.align-left-18 td:nth-of-type(18),
table.align-left-19 td:nth-of-type(19),
table.align-left-20 td:nth-of-type(20) {
text-align: left;
}
:root {
--diff-addedline-border-color: #438ab5;
--diff-addedline-background: #bddff2;
--diff-addedline-color: #000;
--diff-deletedline-border-color: #379541;
--diff-deletedline-background: #c1edbf;
--diff-deletedline-color: #000;
--diff-context-border-color: var(--body-mid);
--diff-context-background: var(--body-mid);
}
.diff-context {
border-color: var(--diff-context-border-color);
background: var(--diff-context-background);
color: inherit;
}
.diff-addedline {
border-color: var(--diff-addedline-border-color);
}
.diff-addedline .diffchange {
background: var(--diff-addedline-background);
color: var(--diff-addedline-color);
}
.diff-deletedline {
border-color: var(--diff-deletedline-border-color);
}
.diff-deletedline .diffchange {
background: var(--diff-deletedline-background);
color: var(--diff-deletedline-color);
}
.mw-diff-movedpara-left:after,
.mw-diff-movedpara-right:after {
color: var(--text-color);
}
.mw-notification {
background-color: var(--body-light);
border-color: var(--body-border);
color: var(--text-color);
}
.mw-echo-ui-notificationsInboxWidget-toolbarWrapper {
background: var(--body-main);
}
.mw-body-content .mw-echo-ui-datedSubGroupListWidget-title-secondary {
color: var(--byline-color);
}
.mw-echo-ui-pageNotificationsOptionWidget.oo-ui-optionWidget-selected {
background-color: var(--ooui-normal);
color: var(--ooui-accent);
}
.mw-echo-ui-pageNotificationsOptionWidget-label-count {
background-color: var(--ooui-normal);
color: var(--byline-color);
}
.oo-ui-optionWidget-selected .mw-echo-ui-pageNotificationsOptionWidget-label-count {
color: var(--ooui-accent);
}
.mw-echo-ui-pageNotificationsOptionWidget.oo-ui-optionWidget-highlighted {
background-color: var(--ooui-normal);
color: var(--text-color);
}
.mw-echo-ui-crossWikiUnreadFilterWidget {
border-color: var(--body-border);
}
.mw-echo-ui-crossWikiUnreadFilterWidget-subtitle {
color: var(--byline-color);
}
.mw-echo-ui-notificationBadgeButtonPopupWidget-popup > .oo-ui-popupWidget-popup > .oo-ui-popupWidget-head,
.mw-echo-ui-notificationBadgeButtonPopupWidget-popup > .oo-ui-popupWidget-popup > .oo-ui-popupWidget-footer {
border-color: var(--ooui-interface-border);
}
.mw-echo-ui-notificationBadgeButtonPopupWidget-popup > .oo-ui-popupWidget-popup > .oo-ui-popupWidget-footer .mw-echo-ui-notificationBadgeButtonPopupWidget-footer-buttons .oo-ui-buttonElement:last-child {
border-left-color: var(--ooui-normal-border);
}
.mw-echo-ui-notificationItemWidget {
background-color: var(--ooui-normal);
border-color: var(--ooui-normal-border);
}
.mw-echo-ui-notificationItemWidget:hover,
.mw-echo-ui-notificationItemWidget-unread:hover {
background-color: var(--ooui-normal--hover);
}
.mw-echo-ui-notificationItemWidget:last-child {
border-bottom-color: var(--ooui-normal-border);
}
.mw-echo-ui-notificationItemWidget-unread {
background-color: var(--search-box);
}
.mw-echo-ui-crossWikiNotificationItemWidget-group,
.mw-echo-ui-bundleNotificationItemWidget-group {
background-color: var(--ooui-interface);
}
.mw-echo-ui-toggleReadCircleButtonWidget-circle {
background-color: var(--ooui-progressive);
}
.mw-echo-ui-toggleReadCircleButtonWidget:hover .mw-echo-ui-toggleReadCircleButtonWidget-circle {
background-color: var(--ooui-progressive--hover);
}
.mw-echo-ui-toggleReadCircleButtonWidget-circle-unread {
background-color: var(--ooui-normal);
border-color: var(--ooui-normal-border);
}
.mw-echo-ui-notificationItemWidget-content-message-header,
.mw-echo-ui-notificationItemWidget-content-message-body,
.mw-echo-ui-menuItemWidget > .oo-ui-buttonElement-button > .oo-ui-labelElement-label,
.mw-echo-ui-notificationItemWidget-content-actions-timestamp {
color: var(--ooui-text);
}
.mw-echo-ui-bundleNotificationItemWidget-group {
background-color: var(--body-main);
}
@keyframes unseen-fadeout-to-unread {
from {
background-color: var(--wikitable-bg-lighter);
}
to {
background-color: var(--search-box);
}
}
@keyframes unseen-fadeout-to-read {
from {
background-color: var(--wikitable-bg-lighter);
}
to {
background-color: var(--body-main);
}
}
.mwe-popups {
background: var(--body-light);
}
.mwe-popups .mwe-popups-container {
color: var(--text-color);
background: var(--body-light);
}
.mwe-popups .mwe-popups-container.flipped-x-y:before,
.mwe-popups .mwe-popups-container.flipped-y:before {
border-top: none;
}
.mwe-popups .mwe-popups-container.mwe-popups-no-image-tri:before {
border-bottom: none;
}
.mwe-popups .mwe-popups-container.flipped-x-y:after,
.mwe-popups .mwe-popups-container.flipped-y:after {
border-top-color: var(--body-light);
}
.mwe-popups .mwe-popups-container.mwe-popups-no-image-tri:after {
border-bottom-color: var(--body-light);
}
.mwe-popups .mwe-popups-settings-icon:hover,
.mwe-popups .mwe-popups-settings-icon:active {
background-color: var(--ooui-normal--hover);
}
.mwe-popups .mw-ui-icon-element:not(.disabled):hover {
background: none;
}
.mwe-popups .mwe-popups-extract {
color: var(--text-color);
}
.mwe-popups .mwe-popups-extract[dir='ltr']:after {
background-image: linear-gradient(to right, rgba(49, 62, 89, 0), var(--body-light) 50%);
}
.mwe-popups-overlay {
background-color: var(--ooui-window-background);
}
#mwe-popups-settings {
background: var(--ooui-interface);
border-color: var(--ooui-interface-border);
color: var(--text-color);
}
#mwe-popups-settings header {
border-color: var(--ooui-interface-border);
}
#mwe-popups-settings main#mwe-popups-settings-form p {
color: var(--byline-color);
}
#mwe-popups-settings main#mwe-popups-settings-form form label > span {
color: var(--ooui-text);
}
:root {
--smw-ask-options-even-bg: var(--body-mid);
--smw-ask-options-odd-bg: var(--body-light);
--smw-ask-action-btn-lblue-bg: var(--body-main);
--smw-ask-action-btn-lblue-color: #000;
--smw-ask-action-btn-lblue-border-color: var(--body-light);
--smw-ask-action-btn-dblue-bg: var(--body-light);
--smw-ask-action-btn-dblue-color: #fff;
--smw-ask-action-btn-dblue-border-color: var(--button-border);
}
.smw-ask-condition fieldset,
.smw-ask-printhead fieldset {
border-color: var(--sidebar);
}
.smw-ask-search fieldset,
.smw-ask-format fieldset,
.smw-ask-options fieldset {
border-color: var(--sidebar);
}
.strike > span:before,
.strike > span:after {
background: var(--sidebar);
}
.smw-ask-options-fields tr td {
background-color: var(--smw-ask-options-even-bg);
}
.smw-ask-options-fields tr:nth-child(odd) td {
background-color: var(--smw-ask-options-odd-bg);
}
.smw-ask-action-btn.smw-ask-action-btn-lblue,
.smw-ask-action-btn.smw-ask-action-btn-lblue:hover,
.smw-ask-action-btn.smw-ask-action-btn-lblue:visited {
background-color: var(--smw-ask-action-btn-lblue-bg);
color: var(--smw-ask-action-btn-lblue-color);
border-color: var(--smw-ask-action-btn-lblue-border-color);
}
.smw-ask-action-btn.smw-ask-action-btn-dblue,
.smw-ask-action-btn.smw-ask-action-btn-dblue:hover,
.smw-ask-action-btn.smw-ask-action-btn-dblue:visited {
background-color: var(--smw-ask-action-btn-dblue-bg);
color: var(--smw-ask-action-btn-dblue-color);
border-color: var(--smw-ask-action-btn-dblue-border-color);
}
.smw-ask-query textarea,
.smw-ask-actions textarea {
background-color: var(--ooui-interface);
border-color: var(--ooui-interface-border);
color: var(--ooui-text);
}
.smw-ask-query-format select {
background-color: var(--ooui-interface);
border: 1px solid var(--ooui-interface-border);
color: var(--ooui-text);
}
.smw-ask-toplinks {
background-color: var(--body-mid);
}
.smw-ask-toplinks span.smw-icon-info {
background: none;
padding: 0 !important;
}
.smw-ask-toplinks span.smw-icon-info::before {
content: '';
background: var(--text-color);
-webkit-mask: url("data:image/svg+xml,%3C%3Fxml version='1.0' encoding='UTF-8'%3F%3E%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 20 20'%3E%3Ctitle%3Einfo%3C/title%3E%3Cpath d='M10 0C4.477 0 0 4.477 0 10s4.477 10 10 10 10-4.477 10-10S15.523 0 10 0zM9 5h2v2H9zm0 4h2v6H9z'/%3E%3C/svg%3E") no-repeat 50% 50% / contain;
mask: url("data:image/svg+xml,%3C%3Fxml version='1.0' encoding='UTF-8'%3F%3E%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 20 20'%3E%3Ctitle%3Einfo%3C/title%3E%3Cpath d='M10 0C4.477 0 0 4.477 0 10s4.477 10 10 10 10-4.477 10-10S15.523 0 10 0zM9 5h2v2H9zm0 4h2v6H9z'/%3E%3C/svg%3E") no-repeat 50% 50% / contain;
padding: 0 0 3px 18px;
}
.smw-ask-options-row-odd {
background-color: var(--body-light);
}
.smw-ask-options-row-even {
background-color: var(--body-mid);
}
#options-toggle:not(:checked) + #options-list .options-parameter-list:after {
background-image: linear-gradient(to bottom, transparent, var(--body-mid) 90%);
}
.smw-ask-button-submit input {
background-color: var(--ooui-normal);
border-color: var(--ooui-normal-border);
color: var(--text-color);
}
.smw-ask-button-submit input:hover,
.smw-ask-button-lgrey:hover {
background-color: var(--ooui-normal--hover);
border-color: var(--ooui-normal-border);
}
input.smw-ask-action-btn.smw-ask-action-btn-dblue {
background-color: var(--ooui-normal);
border-color: var(--ooui-normal-border);
color: var(--ooui-text);
}
a.smw-ask-action-btn.smw-ask-action-btn-lblue {
background-color: var(--body-mid);
border-color: var(--body-mid);
color: var(--ooui-text);
}
a.smw-ask-action-btn.smw-ask-action-btn-lblue:visited {
background-color: var(--body-mid);
border-color: var(--body-mid);
color: var(--ooui-text);
}
a.smw-ask-action-btn.smw-ask-action-btn-lblue:hover {
background-color: var(--body-mid);
border-color: var(--body-mid);
color: var(--ooui-text);
}
a.smw-ask-action-btn-lgrey {
background-color: var(--ooui-normal);
border-color: var(--ooui-normal-border);
color: var(--ooui-text);
}
a.smw-ask-action-btn-lgrey:hover {
background-color: var(--ooui-normal--hover);
border-color: var(--ooui-normal-border);
color: var(--ooui-text);
}
.smw-callout-error {
background-color: var(--errorbox-bg);
border-color: var(--errorbox-border);
}
.smw-callout-info {
background-color: var(--body-light);
border-color: var(--body-dark);
}
.smw-callout-success {
background-color: var(--successbox-bg);
border-color: var(--successbox-border);
}
.smw-callout-warning {
background-color: var(--warningbox-bg);
border-color: var(--warningbox-bg);
}
.smw-tabs input.nav-tab:checked + label.nav-label,
.smw-tabs input.nav-tab:checked + label.nav-label:hover {
color: inherit;
}
#tab-smw-property-value:checked + label.nav-label .usage-count {
color: #fff;
background-color: var(--ooui-progressive);
}
#tab-smw-property-value:checked + label.nav-label .usage-count.moderate {
color: #fff;
background-color: #b55e0c;
border-color: #b55e0c;
}
#tab-smw-property-value:checked + label.nav-label .usage-count.high {
color: #fff;
background-color: #9f261e;
border-color: #9f261e;
}
.smw-property-page-results .header-title {
background-color: var(--ooui-interface);
border-bottom-color: var(--ooui-interface-border);
color: var(--ooui-text);
}
.smw-property-page-results .value-row:hover {
background-color: var(--ooui-normal--hover);
}
.smw-property-page-results .smw-table .header-row {
color: var(--text-color);
}
.tippy-tooltip.light-border-theme {
background-color: var(--body-light);
color: var(--text-color);
}
.tippy-tooltip.light-border-theme .tippy-arrow {
border-top-color: var(--body-light);
}
.tippy-tooltip.light-border-theme .tippy-arrow:after {
border-top-color: var(--body-light);
}
.tippy-header {
background-color: var(--body-dark);
border-bottom-color: var(--body-mid);
}
.smw-ui-input-filter {
background-color: var(--ooui-interface);
border-color: var(--ooui-interface-border);
color: var(--ooui-text);
}
.smw-ui-input-filter input {
border-left-color: var(--ooui-interface-border) !important;
color: var(--ooui-text) !important;
}
.smw-ui-pagination .page-link.link-disabled {
background-color: var(--ooui-disabled);
border-color: var(--ooui-disabled-border);
color: var(--subtle-color);
}
.smw-ui-pagination .page-link {
background-color: var(--ooui-normal);
border-color: var(--ooui-normal-border);
color: var(--link-color);
}
.smw-ui-pagination .page-link:hover {
background-color: var(--ooui-normal--hover);
border-color: var(--ooui-normal-border);
color: var(--link-color);
}
.smw-ui-pagination .page-link.link-active {
color: #fff;
background-color: var(--ooui-progressive);
border-color: var(--ooui-progressive);
}
.smw-tabs input.nav-tab:checked + label.nav-label {
border-color: var(--ooui-normal-border);
}
.smw-tabs section,
.smw-tabs .subtab-content {
border-top-color: var(--ooui-normal-border);
}
.smw-column-header {
color: var(--text-color);
}
.smw-factbox {
background: var(--body-main);
border-color: transparent;
}
.mw-body .mw-indicators #mw-indicator-smw-entity-examiner.mw-indicator .smw-indicator-vertical-bar-loader {
display: none;
}
.smwb-theme-light .smwb-title,
.smwb-theme-light .smwb-center,
.smwb-theme-light .smwb-actions,
.smwb-theme-light .smwb-prophead {
background-color: var(--body-mid);
}
.smwb-theme-light .smwb-factbox {
border-left-color: var(--body-mid);
}
.smwb-theme-light .smwb-ifactbox {
border-right-color: var(--body-mid);
}
.smwb-theme-light .smwb-propval {
background-color: var(--body-light);
}
.smwb-action-separator {
border-color: var(--wikitable-border);
}
.smwb-bottom {
border-bottom: 1px solid var(--wikitable-border);
}
.smwb-ifactbox .smwb-cell,
.smwb-factbox .smwb-cell {
border-top: 1px solid var(--wikitable-border);
}
.smwb-propvalue .smwb-prophead,
.smwb-ipropvalue .smwb-prophead,
.smwb-propvalue .smwb-propval,
.smwb-ipropvalue .smwb-propval {
font-size: 0.9em;
}
:root {
--filter-black-to-link: invert(36%) sepia(58%) saturate(433%) hue-rotate(344deg) brightness(100%) contrast(91%);
}
#bodyContent span.smwbrowse a {
color: black;
background-image: url('filepath://Smwbrowse.svg');
filter: var(--filter-black-to-link);
}
#bodyContent span.smwbrowse a:hover {
color: black;
background-image: url('filepath://Smwbrowse-hover.svg');
text-decoration: underline;
}
#bodyContent span.smwsearch a {
color: black;
filter: var(--filter-black-to-link);
background-image: url('filepath://Smwsearch.svg');
}
#bodyContent span.smwsearch a:hover {
color: black;
background-image: url('filepath://Smwsearch-hover.svg');
text-decoration: underline;
}
:root {
--tabber-tab-bg: var(--body-light);
--tabber-tab-border-color: var(--body-border);
--tabber-active-tab-bg: var(--body-light);
--tabber-active-tab-color: var(--text-color);
--tabber-active-tab-hover-bg: var(--body-light);
--tabber-active-tab-hover-border-color: var(--body-border);
--tabber-active-tab-hover-color: var(--text-color);
--tabber-active-tab-border-hider-color: var(--body-light);
--tabber-inactive-tab-bg: var(--body-background-color);
--tabber-inactive-tab-border-color: var(--body-border);
--tabber-inactive-tab-color: var(--text-color);
--tabber-inactive-tab-hover-bg: var(--body-light);
--tabber-inactive-tab-hover-border-color: var(--body-border);
}
.tabber {
margin: 1em 0;
}
.tabber .tabbertab {
background-color: var(--tabber-tab-bg);
border: 1px solid var(--tabber-tab-border-color);
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
padding: 1em 1.5em;
}
ul.tabbernav {
border: none;
margin-left: 2em;
margin-bottom: 0;
margin-right: 2em;
padding: 0;
font-family: inherit;
}
ul.tabbernav li.tabberactive > a {
background-color: var(--tabber-active-tab-bg);
color: var(--tabber-active-tab-color);
border-bottom: none;
position: relative;
}
ul.tabbernav li.tabberactive > a:hover {
color: var(--tabber-active-tab-hover-color);
background-color: var(--tabber-active-tab-hover-bg);
border-color: var(--tabber-active-tab-hover-border-color);
border-bottom: none;
}
ul.tabbernav li.tabberactive > a::after {
content: '';
position: absolute;
left: 0;
right: 0;
bottom: -1px;
border-bottom: 2px solid var(--tabber-active-tab-border-hider-color);
}
ul.tabbernav li a {
background-color: var(--tabber-inactive-tab-bg);
border-bottom: transparent;
border-color: var(--tabber-inactive-tab-border-color);
color: var(--tabber-inactive-tab-color);
display: inline-block;
font-size: 110%;
padding: 0.5em 1em;
}
ul.tabbernav li a:hover {
background-color: var(--tabber-inactive-tab-hover-bg);
border-color: var(--tabber-inactive-tab-hover-border-color);
}
ul.tabbernav li a:link,
ul.tabbernav li a:visited {
color: var(--tabber-inactive-tab-color);
}
:root {
--ooui-text: var(--text-color);
--ooui-interface: var(--body-light);
--ooui-interface-border: var(--body-border);
--ooui-window-background: rgba(255, 255, 255, 0.5);
--ooui-normal: #d5c7ad;
--ooui-normal--hover: #dfd5c1;
--ooui-normal-border: #b8a282;
--ooui-progressive: #605443;
--ooui-progressive--hover: #7e6e58;
--ooui-accent: var(--link-color);
--ooui-input: #fff;
--ooui-input-border: #b8a282;
--ooui-input-border--hover: #8a724f;
--ooui-disabled: #d1cdc5;
--ooui-disabled-border: #c2b9ab;
--ooui-disabled-text: var(--subtle-color);
--ooui-pending-background-image: repeating-linear-gradient(-45deg, var(--search-box), var(--search-box) 20px, var(--body-main) 20px, var(--body-main) 30px);
}
.oo-ui-widget {
color: var(--ooui-text);
}
.oo-ui-checkboxInputWidget [type='checkbox'] + span,
.oo-ui-radioInputWidget [type='radio'] + span {
background-color: var(--ooui-input);
border-color: var(--ooui-input-border);
}
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:checked + span,
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:indeterminate + span {
background-color: var(--ooui-progressive);
border-color: var(--ooui-progressive);
}
.oo-ui-radioInputWidget.oo-ui-widget-enabled [type='radio']:checked + span {
border-color: var(--ooui-progressive);
}
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:checked:hover + span,
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:indeterminate:hover + span {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
}
.oo-ui-radioInputWidget.oo-ui-widget-enabled [type='radio']:checked:hover + span {
border-color: var(--ooui-progressive--hover);
}
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:hover + span,
.oo-ui-radioInputWidget.oo-ui-widget-enabled [type='radio']:hover + span {
border-color: var(--ooui-accent);
}
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:focus + span {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:active + span,
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:checked:active + span,
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:indeterminate:active + span {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
box-shadow: inset 0 0 0 1px var(--ooui-progressive--hover);
}
.oo-ui-radioInputWidget.oo-ui-widget-enabled [type='radio']:active + span {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
}
.oo-ui-radioInputWidget.oo-ui-widget-enabled [type='radio']:checked:active + span {
border-color: var(--ooui-progressive--hover);
box-shadow: inset 0 0 0 1px var(--ooui-progressive--hover);
}
.oo-ui-radioInputWidget.oo-ui-widget-enabled [type='radio']:checked:active + span:before {
border-color: var(--ooui-progressive--hover);
}
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:checked:focus + span,
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:indeterminate:focus + span {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent), inset 0 0 0 2px #fff;
}
.oo-ui-checkboxInputWidget [type='checkbox']:disabled + span,
.oo-ui-radioInputWidget [type='radio']:disabled + span {
background-color: var(--ooui-disabled);
border-color: var(--ooui-disabled);
}
.oo-ui-dropdownWidget-handle {
border-color: var(--ooui-normal-border);
}
.oo-ui-dropdownWidget.oo-ui-widget-enabled .oo-ui-dropdownWidget-handle {
background-color: var(--ooui-normal);
color: var(--ooui-text);
}
.oo-ui-dropdownWidget.oo-ui-widget-enabled .oo-ui-dropdownWidget-handle:hover {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
}
.oo-ui-dropdownWidget.oo-ui-widget-enabled .oo-ui-dropdownWidget-handle:active {
color: var(--ooui-text);
}
.oo-ui-dropdownWidget.oo-ui-widget-enabled .oo-ui-dropdownWidget-handle:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-dropdownWidget.oo-ui-widget-enabled.oo-ui-dropdownWidget-open .oo-ui-dropdownWidget-handle {
background-color: var(--ooui-normal--hover);
}
.oo-ui-dropdownWidget.oo-ui-widget-disabled .oo-ui-dropdownWidget-handle {
color: var(--ooui-disabled-text);
text-shadow: none;
border-color: var(--ooui-disabled-border);
background-color: var(--ooui-disabled);
}
.oo-ui-dropdownInputWidget select {
border-color: var(--ooui-normal-border);
}
.oo-ui-dropdownInputWidget option {
background-color: var(--ooui-interface);
}
.oo-ui-dropdownInputWidget.oo-ui-widget-enabled {
background-color: var(--ooui-normal);
}
.oo-ui-dropdownInputWidget.oo-ui-widget-enabled:hover {
background-color: var(--ooui-normal--hover);
}
.oo-ui-dropdownInputWidget.oo-ui-widget-enabled select {
color: var(--ooui-text);
}
.oo-ui-dropdownInputWidget.oo-ui-widget-enabled select:hover,
.oo-ui-dropdownInputWidget.oo-ui-widget-enabled select:active {
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
}
.oo-ui-dropdownInputWidget.oo-ui-widget-enabled select:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-labelWidget.oo-ui-inline-help {
color: var(--byline-color);
}
.oo-ui-menuSelectWidget {
background-color: var(--ooui-interface);
border-color: var(--ooui-interface-border);
}
.oo-ui-menuSelectWidget-frameless {
box-shadow: inset 0 -1px 0 0 var(--ooui-normal-border);
}
.oo-ui-menuSectionOptionWidget {
color: var(--byline-color);
}
.oo-ui-menuOptionWidget.oo-ui-optionWidget-highlighted,
.oo-ui-menuOptionWidget.oo-ui-optionWidget-selected {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
}
.oo-ui-menuOptionWidget.oo-ui-optionWidget-selected.oo-ui-menuOptionWidget.oo-ui-optionWidget-highlighted,
.oo-ui-menuOptionWidget.oo-ui-optionWidget-pressed.oo-ui-menuOptionWidget.oo-ui-optionWidget-highlighted {
color: var(--ooui-accent);
}
.oo-ui-menuOptionWidget.oo-ui-widget-enabled.oo-ui-optionWidget {
color: var(--ooui-text);
}
.oo-ui-messageDialog-title {
color: inherit;
}
.oo-ui-messageWidget.oo-ui-messageWidget-block.oo-ui-flaggedElement-error {
background-color: var(--errorbox-bg);
border-color: var(--errorbox-border);
}
.oo-ui-messageWidget.oo-ui-messageWidget-block.oo-ui-flaggedElement-warning {
background-color: var(--warningbox-bg);
border-color: var(--warningbox-border);
}
.oo-ui-messageWidget.oo-ui-messageWidget-block.oo-ui-flaggedElement-success {
background-color: var(--successbox-bg);
border-color: var(--successbox-border);
}
.oo-ui-messageWidget.oo-ui-messageWidget-block.oo-ui-flaggedElement-notice {
background-color: var(--messagebox-info-background);
border-color: var(--messagebox-info-border);
}
.oo-ui-messageWidget.oo-ui-flaggedElement-error:not(.oo-ui-messageWidget-block),
.oo-ui-messageWidget.oo-ui-flaggedElement-success:not(.oo-ui-messageWidget-block) {
color: var(--ooui-text);
}
.oo-ui-optionWidget.oo-ui-widget-disabled {
color: var(--ooui-disabled-text);
}
.oo-ui-outlineControlsWidget {
background-color: var(--ooui-normal);
}
.oo-ui-outlineOptionWidget.oo-ui-optionWidget-highlighted {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
}
.oo-ui-popupWidget-popup {
background-color: var(--ooui-interface);
border-color: var(--ooui-interface-border);
}
.oo-ui-popupWidget-anchored-top .oo-ui-popupWidget-anchor:after {
border-bottom-color: var(--ooui-interface);
}
.oo-ui-popupWidget-anchored-top .oo-ui-popupWidget-anchor:before {
border-bottom-color: var(--ooui-interface-border);
}
.oo-ui-popupWidget-anchored-bottom .oo-ui-popupWidget-anchor:after {
border-top-color: var(--ooui-interface);
}
.oo-ui-popupWidget-anchored-bottom .oo-ui-popupWidget-anchor:before {
border-top-color: var(--ooui-interface-border);
}
.oo-ui-popupWidget-anchored-start .oo-ui-popupWidget-anchor:after {
border-right-color: var(--ooui-interface);
}
.oo-ui-popupWidget-anchored-start .oo-ui-popupWidget-anchor:before {
border-right-color: var(--ooui-interface-border);
}
.oo-ui-popupWidget-anchored-end .oo-ui-popupWidget-anchor:after {
border-left-color: var(--ooui-interface);
}
.oo-ui-popupWidget-anchored-end .oo-ui-popupWidget-anchor:before {
border-left-color: var(--ooui-interface-border);
}
.oo-ui-searchWidget-query {
border-bottom-color: var(--ooui-interface-border);
}
.oo-ui-selectFileWidget-dropTarget {
background-color: var(--ooui-interface);
border-color: var(--ooui-interface-border);
}
.oo-ui-selectFileWidget.oo-ui-widget-enabled.oo-ui-selectFileWidget-dropTarget {
background-color: var(--ooui-interface);
}
.oo-ui-selectFileWidget.oo-ui-widget-enabled.oo-ui-selectFileWidget-dropTarget:hover {
border-color: var(--ooui-input-border--hover);
}
.oo-ui-tabOptionWidget {
color: var(--ooui-text);
}
.oo-ui-tabSelectWidget-framed .oo-ui-tabOptionWidget.oo-ui-optionWidget-selected {
background-color: var(--body-dark);
color: var(--ooui-text);
}
.oo-ui-tabSelectWidget-framed .oo-ui-tabOptionWidget.oo-ui-optionWidget-selected .oo-ui-labelElement-label {
border-bottom-color: var(--body-border);
}
.oo-ui-tabSelectWidget-framed .oo-ui-tabOptionWidget.oo-ui-widget-enabled:hover,
.oo-ui-tabSelectWidget-framed .oo-ui-tabOptionWidget.oo-ui-widget-enabled:active {
background-color: var(--body-light);
color: var(--ooui-text);
}
.oo-ui-tabSelectWidget-framed .oo-ui-tabOptionWidget.oo-ui-widget-enabled.oo-ui-optionWidget-selected:hover {
background-color: var(--body-dark);
}
.oo-ui-tabSelectWidget-frameless .oo-ui-tabOptionWidget.oo-ui-optionWidget-selected {
color: var(--ooui-progressive);
box-shadow: inset 0 -2px 0 0 var(--ooui-progressive);
}
.oo-ui-tabSelectWidget-frameless .oo-ui-tabOptionWidget.oo-ui-optionWidget-selected:hover,
.oo-ui-tabSelectWidget-frameless .oo-ui-tabOptionWidget.oo-ui-optionWidget-selected:focus {
color: var(--ooui-progressive--hover);
box-shadow: inset 0 -2px 0 0 var(--ooui-progressive--hover);
}
.oo-ui-tabSelectWidget-framed {
background: none;
border-bottom: 1px solid var(--ooui-interface-border);
}
.oo-ui-tabSelectWidget-frameless {
box-shadow: inset 0 -1px 0 0 var(--ooui-interface-border);
}
.oo-ui-tabSelectWidget-mobile {
}
.oo-ui-tabSelectWidget-mobile.oo-ui-tabSelectWidget-framed:after {
background: var(--mobile-navbox-linear-gradient);
}
.oo-ui-tabSelectWidget-mobile.oo-ui-tabSelectWidget-frameless:after {
background: var(--mobile-navbox-linear-gradient);
}
.oo-ui-tagItemWidget {
border-color: var(--ooui-normal-border);
}
.oo-ui-tagItemWidget.oo-ui-widget-enabled {
color: var(--ooui-text);
}
.oo-ui-tagItemWidget.oo-ui-widget-enabled:hover {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
}
.oo-ui-tagItemWidget.oo-ui-widget-enabled:not( .oo-ui-tagItemWidget-fixed ) {
background-color: var(--ooui-normal);
}
.oo-ui-tagItemWidget.oo-ui-widget-enabled .oo-ui-buttonElement-button:hover {
background-color: var(--ooui-normal--hover);
}
.oo-ui-tagMultiselectWidget.oo-ui-widget-enabled {
background-color: var(--ooui-interface);
}
.oo-ui-tagMultiselectWidget.oo-ui-widget-enabled.oo-ui-tagMultiselectWidget-outlined {
background-color: var(--ooui-normal);
}
.oo-ui-tagMultiselectWidget.oo-ui-widget-enabled.oo-ui-tagMultiselectWidget-outlined .oo-ui-tagItemWidget.oo-ui-widget-enabled {
background-color: var(--ooui-interface);
}
.oo-ui-textInputWidget .oo-ui-inputWidget-input {
background-color: var(--ooui-input);
color: var(--ooui-text);
border-color: var(--ooui-input-border);
}
.oo-ui-textInputWidget.oo-ui-widget-enabled .oo-ui-inputWidget-input::placeholder {
color: var(--subtle-color);
}
.oo-ui-textInputWidget.oo-ui-widget-enabled .oo-ui-inputWidget-input:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-textInputWidget.oo-ui-widget-enabled .oo-ui-inputWidget-input[readonly]:not(.oo-ui-pendingElement-pending) {
background-color: var(--ooui-disabled);
color: var(--ooui-disabled-text);
}
.oo-ui-textInputWidget.oo-ui-widget-enabled:hover .oo-ui-inputWidget-input {
border-color: var(--ooui-input-border--hover);
}
.oo-ui-textInputWidget.oo-ui-widget-enabled:hover .oo-ui-inputWidget-input:focus {
border-color: var(--ooui-accent);
}
@media screen and (min-width: 0) {
.oo-ui-textInputWidget.oo-ui-widget-enabled textarea.oo-ui-inputWidget-input:focus {
outline: 1px solid var(--ooui-accent);
}
}
.oo-ui-textInputWidget.oo-ui-widget-disabled .oo-ui-inputWidget-input {
background-color: var(--ooui-disabled);
color: var(--ooui-disabled-text);
text-shadow: none;
border-color: var(--ooui-disabled-border);
}
.oo-ui-toggleSwitchWidget {
background-color: var(--ooui-input);
border-color: var(--ooui-input-border);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled .oo-ui-toggleSwitchWidget-grip {
background-color: var(--ooui-input);
border-color: var(--ooui-input-border);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:hover {
background-color: var(--ooui-input);
border-color: var(--ooui-accent);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:hover .oo-ui-toggleSwitchWidget-grip {
background-color: var(--ooui-input);
border-color: var(--ooui-accent);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:active,
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:active:hover,
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:active:focus {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
box-shadow: inset 0 0 0 1px var(--ooui-progressive--hover);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:active .oo-ui-toggleSwitchWidget-grip,
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:active:hover .oo-ui-toggleSwitchWidget-grip,
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:active:focus .oo-ui-toggleSwitchWidget-grip {
background-color: var(--ooui-input);
border-color: var(--ooui-input);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:focus .oo-ui-toggleSwitchWidget-grip {
border-color: var(--ooui-accent);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled.oo-ui-toggleWidget-on {
background-color: var(--ooui-progressive);
border-color: var(--ooui-progressive);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled.oo-ui-toggleWidget-on .oo-ui-toggleSwitchWidget-grip {
background-color: var(--ooui-input);
border-color: var(--ooui-input);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled.oo-ui-toggleWidget-on:hover {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled.oo-ui-toggleWidget-on:active,
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled.oo-ui-toggleWidget-on:active:hover {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled.oo-ui-toggleWidget-on:focus {
border-color: var(--ooui-progressive);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled.oo-ui-toggleWidget-on:focus::before {
border-color: #fff;
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-disabled {
background-color: var(--ooui-disabled);
border-color: var(--ooui-disabled);
}
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled > .oo-ui-buttonElement-button {
color: var(--ooui-text);
}
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled > .oo-ui-buttonElement-button:hover {
color: var(--ooui-text);
}
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled > .oo-ui-buttonElement-button:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled.oo-ui-buttonElement-pressed > input.oo-ui-buttonElement-button,
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled > .oo-ui-buttonElement-button:active {
color: var(--ooui-text);
}
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button,
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button:hover {
color: var(--ooui-text);
}
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button:active,
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive.oo-ui-buttonElement-pressed > .oo-ui-buttonElement-button {
color: var(--ooui-text);
border-color: var(--ooui-text);
}
.oo-ui-buttonElement-frameless.oo-ui-widget-disabled > .oo-ui-buttonElement-button {
color: var(--ooui-disabled-text);
}
.oo-ui-buttonElement-framed.oo-ui-widget-disabled > .oo-ui-buttonElement-button {
background-color: var(--ooui-disabled);
border-color: var(--ooui-disabled-border);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled > .oo-ui-buttonElement-button {
background-color: var(--ooui-normal);
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled > .oo-ui-buttonElement-button:hover {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled > .oo-ui-buttonElement-button:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-buttonElement-active > .oo-ui-buttonElement-button {
background-color: var(--ooui-progressive--hover);
color: #fff;
border-color: var(--ooui-progressive--hover);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-buttonElement-active > .oo-ui-buttonElement-button:focus {
border-color: var(--ooui-progressive--hover);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled > .oo-ui-buttonElement-button:active,
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-buttonElement-pressed > .oo-ui-buttonElement-button {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive {
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button {
color: var(--ooui-text);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button:hover {
background-color: var(--ooui-normal--hover);
border-color: var(--ooui-progressive--hover);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-destructive > .oo-ui-buttonElement-button {
color: var(--ooui-text);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-destructive > .oo-ui-buttonElement-button:hover {
background-color: var(--ooui-normal--hover);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button {
background-color: var(--ooui-progressive);
border-color: var(--ooui-progressive);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button:hover {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent), inset 0 0 0 2px #fff;
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button:active,
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive.oo-ui-buttonElement-pressed > .oo-ui-buttonElement-button,
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive.oo-ui-buttonElement-active > .oo-ui-buttonElement-button,
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive.oo-ui-popupToolGroup-active > .oo-ui-buttonElement-button {
color: #fff;
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
}
.oo-ui-pendingElement-pending {
background-image: var(--ooui-pending-background-image);
background-size: 200%;
animation: oo-ui-pendingElement-stripes 6s linear infinite;
}
@keyframes oo-ui-pendingElement-stripes {
100% {
background-position: 100%;
}
}
.oo-ui-messageDialog-content > .oo-ui-window-foot {
outline-color: var(--ooui-interface-border);
}
.oo-ui-messageDialog-message {
color: var(--ooui-text);
}
.oo-ui-messageDialog-actions-horizontal .oo-ui-actionWidget {
border-right-color: var(--ooui-interface-border);
}
.oo-ui-messageDialog-actions-vertical .oo-ui-actionWidget {
border-bottom-color: var(--ooui-interface-border);
}
.oo-ui-processDialog-content .oo-ui-window-head,
.oo-ui-processDialog-content .oo-ui-window-foot {
outline-color: var(--ooui-interface-border);
}
.oo-ui-processDialog .oo-ui-actionWidget > .oo-ui-buttonElement-button {
border-top-color: transparent;
border-bottom-color: transparent;
}
.oo-ui-processDialog .oo-ui-actionWidget > .oo-ui-buttonElement-button:hover,
.oo-ui-processDialog .oo-ui-actionWidget > .oo-ui-buttonElement-button:active {
border-top-color: transparent;
border-bottom-color: transparent;
}
.oo-ui-processDialog .oo-ui-actionWidget:not( .oo-ui-flaggedElement-progressive ):not( .oo-ui-flaggedElement-destructive ) > .oo-ui-buttonElement-button:hover,
.oo-ui-processDialog .oo-ui-actionWidget:not( .oo-ui-flaggedElement-progressive ):not( .oo-ui-flaggedElement-destructive ) > .oo-ui-buttonElement-button:active {
border-right-color: var(--ooui-interface-border);
border-left-color: transparent;
}
.oo-ui-processDialog .oo-ui-actionWidget:not( .oo-ui-flaggedElement-progressive ):not( .oo-ui-flaggedElement-destructive ) > .oo-ui-buttonElement-button:focus {
border-color: var(--ooui-accent);
}
.oo-ui-processDialog-actions-safe .oo-ui-actionWidget > .oo-ui-buttonElement-button,
.oo-ui-processDialog-actions-other .oo-ui-actionWidget > .oo-ui-buttonElement-button {
border-right-color: var(--ooui-normal-border);
border-left-color: transparent;
}
.oo-ui-processDialog-actions-safe .oo-ui-widget-enabled.oo-ui-iconElement:not( .oo-ui-labelElement ) > .oo-ui-buttonElement-button:hover {
background-color: var(--ooui-normal--hover);
border-right-color: var(--ooui-interface-border);
}
.oo-ui-windowManager-modal > .oo-ui-dialog {
background-color: var(--ooui-window-background);
}
.oo-ui-windowManager-modal > .oo-ui-dialog > .oo-ui-window-frame {
background-color: var(--ooui-interface);
}
.oo-ui-windowManager-modal.oo-ui-windowManager-floating > .oo-ui-dialog > .oo-ui-window-frame {
border-color: var(--ooui-interface-border);
}
.oo-ui-window {
color: var(--ooui-text);
}
.oo-ui-toolbar-bar {
background-color: var(--ooui-interface);
color: var(--ooui-text);
}
.oo-ui-toolbar-position-top > .oo-ui-toolbar-bar {
border-bottom-color: var(--body-mid);
}
.oo-ui-toolbar-bar .oo-ui-bookletLayout > .oo-ui-menuLayout-menu {
border-right-color: var(--body-mid);
}
.oo-ui-tool.oo-ui-widget-enabled > .oo-ui-tool-link:hover {
background-color: var(--ooui-normal--hover);
}
.oo-ui-tool.oo-ui-widget-enabled > .oo-ui-tool-link:focus {
outline: 1px solid var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-tool.oo-ui-widget-enabled > .oo-ui-tool-link:active,
.oo-ui-tool.oo-ui-widget-enabled.oo-ui-tool-active > .oo-ui-tool-link,
.oo-ui-tool.oo-ui-widget-enabled.oo-ui-popupToolGroup-active > .oo-ui-tool-link {
background-color: var(--ooui-normal--hover);
color: var(--ooui-accent);
box-shadow: none;
}
.oo-ui-tool.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive > .oo-ui-tool-link {
background-color: var(--ooui-progressive);
}
.oo-ui-tool.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive > .oo-ui-tool-link:hover {
background-color: var(--ooui-progressive--hover);
}
.oo-ui-tool.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive > .oo-ui-tool-link:focus {
box-shadow: inset 0 0 0 1px var(--ooui-accent), inset 0 0 0 2px #fff;
}
.oo-ui-tool.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive > .oo-ui-tool-link:active,
.oo-ui-tool.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive.oo-ui-tool-active > .oo-ui-tool-link {
background-color: var(--ooui-progressive--hover);
}
.oo-ui-listToolGroup-tools .oo-ui-tool.oo-ui-widget-enabled {
background-color: var(--ooui-normal);
}
.oo-ui-listToolGroup-tools .oo-ui-tool.oo-ui-widget-enabled:hover {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
}
.oo-ui-listToolGroup-tools .oo-ui-tool-active.oo-ui-widget-enabled .oo-ui-tool-link .oo-ui-tool-title {
color: var(--ooui-progressive);
}
.oo-ui-menuToolGroup {
border-left-color: var(--body-mid);
border-right-color: var(--body-mid);
}
.oo-ui-popupToolGroup-tools {
background-color: var(--ooui-interface);
border-color: var(--body-mid);
}
.oo-ui-popupToolGroup.oo-ui-widget-enabled > .oo-ui-popupToolGroup-handle:hover {
background-color: var(--ooui-normal--hover);
}
.oo-ui-popupToolGroup.oo-ui-widget-enabled > .oo-ui-popupToolGroup-handle:focus {
outline: 1px solid var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-toolbar-actions .oo-ui-popupToolGroup.oo-ui-widget-enabled > .oo-ui-popupToolGroup-handle:hover {
border-right-color: var(--ooui-normal--hover);
}
.oo-ui-popupToolGroup-tools .oo-ui-tool.oo-ui-widget-enabled .oo-ui-tool-link:focus {
box-shadow: inset 0 0 0 2px var(--ooui-accent);
}
.oo-ui-popupToolGroup-tools .oo-ui-tool-active.oo-ui-widget-enabled .oo-ui-tool-link .oo-ui-tool-title {
color: var(--ooui-progressive);
}
.oo-ui-popupToolGroup.oo-ui-popupToolGroup-active > .oo-ui-popupToolGroup-handle {
background-color: var(--ooui-normal);
color: var(--ooui-accent);
}
.oo-ui-popupToolGroup.oo-ui-popupToolGroup-active > .oo-ui-popupToolGroup-handle:hover {
background-color: var(--ooui-normal--hover);
color: var(--ooui-accent);
}
.oo-ui-bookletLayout-outlinePanel > .oo-ui-outlineControlsWidget {
border-top-color: var(--ooui-interface-border);
}
.oo-ui-bookletLayout > .oo-ui-menuLayout-menu {
border-right-color: var(--ooui-interface-border);
}
.oo-ui-fieldLayout-disabled > .oo-ui-fieldLayout-body > .oo-ui-fieldLayout-header > .oo-ui-labelElement-label {
color: var(--ooui-disabled-text);
}
.oo-ui-panelLayout-framed {
border-color: var(--sidebar);
}
.oo-ui-icon-settings {
background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' width='20' height='20' viewBox='0 0 20 20'%3E%3Ctitle%3Esettings%3C/title%3E%3Cg transform='translate(10 10)'%3E%3Cpath id='a' d='M1.5-10h-3l-1 6.5h5m0 7h-5l1 6.5h3'/%3E%3Cuse xlink:href='%23a' transform='rotate(45)'/%3E%3Cuse xlink:href='%23a' transform='rotate(90)'/%3E%3Cuse xlink:href='%23a' transform='rotate(135)'/%3E%3C/g%3E%3Cpath d='M10 2.5a7.5 7.5 0 0 0 0 15 7.5 7.5 0 0 0 0-15v4a3.5 3.5 0 0 1 0 7 3.5 3.5 0 0 1 0-7'/%3E%3C/svg%3E");
}
.oo-ui-icon-clear {
background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 20 20'%3E%3Ctitle%3Eclear%3C/title%3E%3Cpath d='M10 0a10 10 0 1 0 10 10A10 10 0 0 0 10 0zm5.66 14.24-1.41 1.41L10 11.41l-4.24 4.25-1.42-1.42L8.59 10 4.34 5.76l1.42-1.42L10 8.59l4.24-4.24 1.41 1.41L11.41 10z'/%3E%3C/svg%3E");
}
.mw-widget-dateInputWidget-handle {
background-color: var(--ooui-input);
color: var(--ooui-text);
border-color: var(--ooui-input-border);
}
.mw-widget-dateInputWidget-calendar {
background-color: var(--ooui-interface);
}
.mw-widget-dateInputWidget.oo-ui-widget-enabled .mw-widget-dateInputWidget-handle:hover {
border-color: var(--ooui-input-border--hover);
}
.mw-widget-calendarWidget {
border-color: var(--ooui-interface-border);
}
.mw-widget-calendarWidget:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.mw-widget-calendarWidget-day,
.mw-widget-calendarWidget-day-heading {
color: var(--ooui-text);
}
.mw-widget-calendarWidget-day-additional {
color: var(--ooui-text);
opacity: 0.67;
}
.mw-widget-calendarWidget-day-today {
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.mw-widget-calendarWidget-item:hover {
background-color: var(--ooui-progressive);
}
.mw-widget-calendarWidget-item-selected {
background-color: var(--ooui-progressive--hover);
}
.mw-widgets-datetime-calendarWidget {
background-color: var(--ooui-interface);
border-color: var(--ooui-interface-border);
}
.mw-widgets-datetime-calendarWidget:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent), 0 2px 2px 0 rgba(0, 0, 0, 0.25);
}
.mw-widgets-datetime-calendarWidget-grid .mw-widgets-datetime-calendarWidget-cell.mw-widgets-datetime-calendarWidget-extra .oo-ui-buttonElement-button .oo-ui-labelElement-label {
color: var(--subtle-color);
}
.mw-widgets-datetime-calendarWidget-grid .mw-widgets-datetime-calendarWidget-cell.mw-widgets-datetime-calendarWidget-selected .oo-ui-buttonElement-button {
background-color: var(--ooui-progressive--hover);
}
.mw-widgets-datetime-dateTimeInputWidget-handle {
background-color: var(--ooui-input);
color: var(--ooui-text);
border-color: var(--ooui-input-border);
}
.mw-widgets-datetime-dateTimeInputWidget.oo-ui-widget-enabled.mw-widgets-datetime-dateTimeInputWidget-handle:hover {
border-color: var(--ooui-input-border--hover);
}
.mw-widgets-datetime-dateTimeInputWidget.oo-ui-widget-enabled:hover input,
.mw-widgets-datetime-dateTimeInputWidget.oo-ui-widget-enabled:hover textarea {
border-color: var(--ooui-input-border--hover);
}
.mw-widgets-datetime-dateTimeInputWidget.oo-ui-widget-enabled .mw-widgets-datetime-dateTimeInputWidget-editField:hover {
background-color: var(--ooui-normal);
}
.ve-activated .ve-init-mw-desktopArticleTarget-originalContent #catlinks:hover {
background: var(--ooui-normal--hover);
}
.ve-ui-overlay {
font-family: inherit;
}
.oo-ui-toolbar-position-top .ve-ui-toolbarDialog-position-above {
border-top-color: var(--body-mid);
}
.ve-ce-branchNode-blockSlug,
.ve-ce-branchNode-newSlug {
outline-color: var(--body-border);
background-color: var(--ooui-interface);
}
.ve-ui-specialCharacterPage h3 {
color: var(--byline-color);
}
.ve-ui-specialCharacterPage-character {
border-color: var(--body-mid);
}
.ve-ui-specialCharacterPage-character:hover {
border-color: var(--body-dark);
}
.ve-ce-linkAnnotation.ve-ce-annotation-active {
box-shadow: 0 0 0 1px var(--body-mid);
background: none;
}
.ve-ui-desktopContext .ve-ui-linkContextItem .ve-ui-linkContextItem-label {
border-color: var(--body-border);
}
.ve-ui-mwHelpPopupTool-version-label,
.ve-ui-mwHelpPopupTool-version-link,
.ve-ui-mwHelpPopupTool-version-date {
color: var(--byline-color);
}
.ve-ce-tableCellableNode {
border-color: var(--body-mid);
}
.ve-ce-mwReferencesListNode-muted {
color: var(--byline-color);
}
.ve-ui-mwTemplatePage-description,
.ve-ui-mwParameterPage-label,
.ve-ui-mwParameterPage-description-required,
.ve-ui-mwParameterPage-description-deprecated {
color: var(--byline-color);
}
.mw-widget-titleWidget-menu .mw-widget-titleOptionWidget-description {
color: var(--byline-color);
}
.ve-ui-mwGalleryDialog-menuLayout > .oo-ui-menuLayout-menu,
.ve-ui-mwGalleryDialog-innerMenuLayout > .oo-ui-menuLayout-menu,
.ve-ui-mwGalleryDialog .ve-ui-mwGalleryDialog-image-container,
.ve-ui-targetWidget {
border-color: var(--body-border);
}
.ve-ui-targetWidget:not(.oo-ui-pendingElement-pending) {
background-color: var(--body-main);
}
.ve-ui-mwSaveDialog {
color: var(--ooui-text);
}
.ve-ui-mwSaveDialog-options {
background-color: var(--ooui-interface);
border-color: var(--body-border);
}
.ve-ui-mwSaveDialog-summary {
background-color: var(--ooui-input);
}
.ve-ui-mwSaveDialog-editSummary-count {
border-color: var(--body-border);
}
.ve-ui-mwSaveDialog-license {
color: var(--byline-color);
}
.ve-ui-mwReferenceContextItem-muted {
color: var(--byline-color);
}
.ve-ui-mwNoticesPopupTool-items > div:not(:first-child),
.ve-ui-mwHelpPopupTool-item:not(:first-child) {
border-color: var(--body-border);
}
.ve-ui-mwTransclusionOutlineControlsWidget {
background-color: var(--ooui-interface);
border-top-color: var(--body-border);
}
.ve-ui-mwTransclusionOutlineTemplateWidget-sticky {
background-color: var(--ooui-interface);
}
.ve-ui-mwTransclusionOutlineTemplateWidget .ve-ui-mwTransclusionOutlineParameterWidget.oo-ui-optionWidget-highlighted {
color: var(--ooui-text);
}
.ve-ui-mwTransclusionOutlineTemplateWidget-no-template-parameters {
color: var(--subtle-color);
}
.ve-ui-mwParameterPage-undocumentedLabel {
color: var(--subtle-color);
}
.ve-ui-mwTwoPaneTransclusionDialogLayout > .oo-ui-menuLayout-menu {
border-right: var(--body-border);
}
.ve-ui-mwParameterPage-doc-required,
.ve-ui-mwParameterPage-doc-deprecated,
.ve-ui-mwParameterPage-inlineDescription .ve-ui-mwParameterPage-doc-example {
color: var(--byline-color);
}
.ve-ui-expandableContent-toggle {
background-color: var(--ooui-interface);
}
.ve-ui-expandableContent-fade {
background: linear-gradient(to right, rgba(255, 255, 255, 0) 0, var(--ooui-interface) 90%);
}
.ve-ui-commandHelpDialog-shortcut > kbd,
.ve-ui-commandHelpDialog-sequence > kbd {
background-color: var(--keypress-background);
color: var(--keypress-color);
border-color: var(--keypress-border);
box-shadow: none;
text-shadow: none;
}
.ve-init-mw-desktopArticleTarget-toolbarPlaceholder-floating .ve-init-mw-desktopArticleTarget-toolbarPlaceholder-bar {
background: var(--ooui-interface);
}
.ve-init-mw-desktopArticleTarget-toolbarPlaceholder-bar {
border-bottom-color: var(--body-mid);
}
figure[typeof~='mw:File/Thumb'],
figure[typeof~='mw:File/Frame'],
figure[typeof~='mw:Image/Thumb'],
figure[typeof~='mw:Video/Thumb'],
figure[typeof~='mw:Image/Frame'],
figure[typeof~='mw:Video/Frame'] {
border: none;
background-color: var(--thumb-bg);
}
figure[typeof~='mw:File/Thumb'] > a:first-child > *:first-child:not( .mw-broken-media ),
figure[typeof~='mw:File/Frame'] > a:first-child > *:first-child:not( .mw-broken-media ),
figure[typeof~='mw:Image/Thumb'] > a:first-child > *:first-child:not( .mw-broken-media ),
figure[typeof~='mw:Video/Thumb'] > a:first-child > *:first-child:not( .mw-broken-media ),
figure[typeof~='mw:Image/Frame'] > a:first-child > *:first-child:not( .mw-broken-media ),
figure[typeof~='mw:Video/Frame'] > a:first-child > *:first-child:not( .mw-broken-media ) {
border: none;
background: var(--thumb-bg);
}
figure[typeof~='mw:File/Thumb'] > figcaption,
figure[typeof~='mw:File/Frame'] > figcaption,
figure[typeof~='mw:Image/Thumb'] > figcaption,
figure[typeof~='mw:Video/Thumb'] > figcaption,
figure[typeof~='mw:Image/Frame'] > figcaption,
figure[typeof~='mw:Video/Frame'] > figcaption {
border: none;
background-color: var(--thumb-caption-bg);
padding: 4px 6px;
}
:root {
--keypress-background: #eee;
--keypress-border: #ccc;
--keypress-color: #333;
}
.archivelist {
background-color: var(--body-light);
border: solid 1px var(--body-border);
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
float: right;
margin: 5px;
padding: 5px;
text-align: center;
width: 120px;
}
.shortcut {
border: 1px solid var(--body-border);
background: var(--body-light);
float: right;
font-size: 0.8em;
margin: 0.5em 0em 0.5em 1em;
padding: 0.5em;
text-align: center;
}
.hatnote,
.seealso {
font-style: italic;
}
.hatnote i,
.seealso i {
font-style: normal;
}
div.hatnote,
div.seealso {
margin: 0.5em 1.6em;
}
div.hatnote + div.hatnote,
div.hatnote + div.seealso,
div.seealso + div.hatnote,
div.seealso + div.seealso {
margin-top: -0.5em;
}
.keypress {
background: var(--keypress-background);
color: var(--keypress-color);
font-family: inherit;
border: 1px solid var(--keypress-border);
border-radius: 2px;
font-size: 0.9em;
margin: 0 0.1em;
padding: 0.1em 0.4em;
white-space: nowrap;
}
:root {
--documentation-background: #f9fafa;
--documentation-link-color: #e4eaee;
--documentation-headers-color: #fff;
--documentation-header-background: #949eaa;
--documentation-subheader-background: #808c9a;
--documentation-border: #e4eaee;
}
.documentation {
background: var(--documentation-background);
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
margin: 1em 0;
}
.documentation pre,
.documentation code {
background-color: var(--documentation-background);
border-color: var(--documentation-border);
}
.documentation h2,
.documentation hr {
border-color: var(--documentation-border);
}
.documentation-header {
color: var(--documentation-headers-color);
background: var(--documentation-header-background);
font-weight: bold;
padding: 1em 1.5em;
}
.documentation-title {
font-size: 1.25em;
}
.documentation-subheader {
color: var(--documentation-headers-color);
background: var(--documentation-subheader-background);
padding: 0.5em 1.5em;
}
.documentation-subheader a,
.documentation-subheader a:visited,
.documentation-subheader a:active {
color: var(--documentation-link-color);
}
.documentation-documentation,
.documentation-links {
font-size: 0.85em;
}
.documentation-content {
padding: 1em 1.5em;
}
.mw-templatedata-doc-params dl:not(:empty) {
column-count: 3;
border-top: 1px solid var(--body-border);
margin-bottom: 0.5em;
}
.mw-templatedata-doc-params dt::after {
content: ":";
}
.mw-templatedata-doc-params dd,
.mw-templatedata-doc-params dt {
margin: 0.1em 2em;
min-width: auto;
}
.mw-templatedata-doc-muted {
color: var(--subtle-color);
font-style: italic;
}
:root {
--infobox-text-color: var(--text-color);
}
ol.references,
.reflist {
font-size: 90%;
}
.reflist {
list-style-type: decimal;
}
.reflist .references {
font-size: 100%;
list-style-type: inherit;
}
.reflist-lower-alpha {
list-style-type: lower-alpha;
}
ol.references li:target,
sup.reference:target {
background-color: var(--body-light);
}
.hideQuotes .refhide {
display: none;
}
:root {
--messagebox-obsolete-background: #cfcfcf;
--messagebox-obsolete-border: #464646;
--messagebox-obsolete-color: var(--text-color);
--messagebox-obsolete-link-color: #6c6c6c;
--messagebox-info-background: #ebebeb;
--messagebox-info-border: #898989;
--messagebox-info-color: var(--text-color);
--messagebox-info-link-color: #6c6c6c;
--messagebox-action-background: #c7e8fa;
--messagebox-action-border: #0b5884;
--messagebox-action-color: var(--text-color);
--messagebox-action-link-color: #03436b;
--messagebox-warn-background: #dfc0ba;
--messagebox-warn-border: #861c10;
--messagebox-warn-color: var(--text-color);
--messagebox-warn-link-color: #8e221a;
--messagebox-safe-background: #d8f0d3;
--messagebox-safe-border: #1b8408;
--messagebox-safe-color: var(--text-color);
--messagebox-safe-link-color: #1b8408;
--messagebox-disambig-background: #ebebeb;
--messagebox-disambig-border: #898989;
--messagebox-disambig-color: var(--text-color);
--messagebox-disambig-link-color: #6c6c6c;
--messagebox-discord-background: #5865f2;
--messagebox-discord-border: #4c57d0;
--messagebox-discord-link-color: #d2e5fc;
}
.mw-message-box,
.mw-message-box-error,
.mw-message-box-warning,
.mw-message-box-success,
.usermessage {
color: var(--text-color);
}
.messagebox {
width: 65%;
margin: 0.5em auto;
border-left: 15px solid;
border-color: var(--body-dark);
background-color: var(--body-light);
box-sizing: border-box;
}
.messagebox.obsolete {
background-color: var(--messagebox-obsolete-background);
border-color: var(--messagebox-obsolete-border);
color: var(--messagebox-obsolete-color);
}
.messagebox.obsolete a,
.messagebox.obsolete a:visited,
.messagebox.obsolete a:active {
color: var(--messagebox-obsolete-link-color);
}
.messagebox.info {
background-color: var(--messagebox-info-background);
border-color: var(--messagebox-info-border);
color: var(--messagebox-info-color);
}
.messagebox.info a,
.messagebox.info a:visited,
.messagebox.info a:active {
color: var(--messagebox-info-link-color);
}
.messagebox.action {
background-color: var(--messagebox-action-background);
border-color: var(--messagebox-action-border);
color: var(--messagebox-action-color);
}
.messagebox.action a,
.messagebox.action a:visited,
.messagebox.action a:active {
color: var(--messagebox-action-link-color);
}
.messagebox.warn {
background-color: var(--messagebox-warn-background);
border-color: var(--messagebox-warn-border);
color: var(--messagebox-warn-color);
}
.messagebox.warn a,
.messagebox.warn a:visited,
.messagebox.warn a:active {
color: var(--messagebox-warn-link-color);
}
.messagebox.safe {
background-color: var(--messagebox-safe-background);
border-color: var(--messagebox-safe-border);
color: var(--messagebox-safe-color);
}
.messagebox.safe a,
.messagebox.safe a:visited,
.messagebox.safe a:active {
color: var(--messagebox-safe-link-color);
}
.messagebox.disambig {
background-color: var(--messagebox-disambig-background);
border-color: var(--messagebox-disambig-border);
color: var(--messagebox-disambig-color);
}
.messagebox.disambig a,
.messagebox.disambig a:visited,
.messagebox.disambig a:active {
color: var(--messagebox-disambig-link-color);
}
.messagebox.discord {
background-color: var(--messagebox-discord-background);
border-color: var(--messagebox-discord-border);
color: #fff;
}
.messagebox.discord a,
.messagebox.discord a:visited,
.messagebox.discord a:active {
color: var(--messagebox-discord-link-color);
}
.messagebox.discord a.external,
.messagebox.discord a:visited.external,
.messagebox.discord a:active.external {
font-style: italic;
}
.messagebox.stub {
width: 40%;
}
.messagebox.hasdialogue {
padding: 0 10px;
width: auto;
}
:root {
--byline-arrow-filter: invert(29%) sepia(0%) saturate(376%) hue-rotate(172deg) brightness(87%) contrast(80%);
--tile-border-color: #cabe9b;
--tile-background-color: #f9f3eb;
--tile-link-button-color: #f5e9db;
--tile-link-button-highlight-color: #dfccb0;
--tile-dark-color: #fff;
--tile-dark-bg: #5d6773;
--tile-dark-link-color: #ccc;
--tile-dark-byline-color: rgba(255, 255, 255, 0.7);
--tile-dark-header-color: #fff;
}
.tile {
background: var(--tile-background-color);
border: 1px solid var(--tile-border-color);
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
padding: 1.5em 2em 1em;
max-width: 40em;
}
.tile h2 {
font-size: 1.4em;
font-weight: bold;
border: none;
margin: 0 0 0.4em;
}
.tile .byline + h2 {
margin-top: -0.5em;
}
.tile.dark {
color: var(--tile-dark-color);
background: var(--tile-dark-bg);
border: none;
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.3);
}
.tile.dark h2 {
color: var(--tile-dark-header-color);
}
.tile.dark a {
color: var(--tile-dark-link-color);
}
.tile.dark .byline {
color: var(--tile-dark-byline-color);
}
.byline {
font-size: 0.9em;
color: var(--byline-color);
}
.byline a {
color: var(--byline-color);
}
.tile-row {
display: flex;
flex-flow: row wrap;
margin-bottom: 1em;
}
.tile-halves {
display: flex;
flex-flow: row wrap;
border: 1px solid var(--tile-border-color);
background: var(--tile-background-color);
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
}
.tile-halves h2 {
font-size: 1.4em;
font-weight: bold;
border: none;
margin: 0 0 0.4em;
}
.tile-halves .byline + h2 {
margin-top: -0.5em;
}
.tile-top {
width: 100%;
padding: 1.3rem 1.5rem 0.6rem;
}
.tile-top.tile-image {
display: flex;
align-items: center;
background-color: var(--byline-color);
overflow: hidden;
padding: 0;
height: 13vw;
max-height: 12em;
transition: 0.4s ease-out;
}
.tile-halves:hover .tile-top.tile-image img {
transform: scale(1.1);
transition: 0.5s ease-out;
}
.tile-top.tile-image a {
width: 100%;
}
.tile-top.tile-image img {
width: 100%;
object-fit: cover;
max-height: 200px;
transition: 0.4s ease-out;
}
.tile-bottom {
background: var(--tile-background-color);
border-top: 1px solid var(--tile-border-color);
width: 100%;
padding: 1rem 1.5rem 0.6rem;
}
.tile-bottom.link-button {
align-self: flex-end;
padding: 0;
}
.tile-bottom.link-button a {
display: block;
text-align: center;
padding: 0.75em 1.5em 0.8em;
text-decoration: none;
}
.tile-bottom.read-more {
background: var(--tile-link-button-color);
transition: 0.3s ease-out;
}
.tile-bottom.read-more a {
color: var(--byline-color);
font-weight: bold;
text-align: right;
}
.tile-bottom.read-more:hover {
background: var(--tile-link-button-highlight-color);
}
.tile-bottom.read-more:hover .arrow {
transform: translateX(50%);
}
.tile-bottom.read-more .arrow {
filter: var(--byline-arrow-filter);
margin-left: 0.4em;
transition: 0.3s ease-out;
}
body.page-Main_Page.action-view .catlinks,
body.page-Main_Page.action-view #contentSub,
body.page-Main_Page.action-view #firstHeading,
body.page-Main_Page.action-view #siteNotice {
display: none;
}
body.page-Main_Page .mw-parser-output {
max-width: 75em;
margin: 0 auto;
}
body.page-Main_Page.action-view .catlinks,
body.page-Main_Page.action-view #contentSub,
body.page-Main_Page.action-view #siteNotice {
display: none;
}
.mainpage-header {
display: flex;
margin: 2.6em 1.75em 1.5em;
}
.mainpage-header .header-intro {
flex: 2;
}
.mainpage-header .header-intro h1 {
font-size: 2.5em;
font-weight: bold;
border: none;
margin: 0 0 0.15em;
}
.mainpage-header .header-intro p {
font-size: 1.1em;
line-height: 1.7em;
}
.mainpage-header .header-stats {
flex: 1;
display: flex;
justify-content: center;
align-items: center;
margin-top: -1em;
}
.mainpage-body {
display: grid;
grid-template-areas: "event event event" "update update update" "content content content" "left left right";
gap: 0.9rem;
grid-template-columns: repeat(3, 1fr);
}
.mainpage-body h2 a {
color: var(--text-color);
}
.mainpage-body .tile {
padding-left: 1.75em;
padding-right: 1.75em;
max-width: 100%;
}
.mainpage-body .tile-row {
width: 100%;
margin-bottom: 0;
}
.mainpage-body .tile-row {
display: grid;
gap: 0.9rem;
}
.mainpage-left {
grid-area: left;
flex: 2;
display: flex;
flex-flow: column wrap;
}
.mainpage-left > * {
margin: 0 0 0.9rem;
}
.mainpage-right {
grid-area: right;
flex: 1;
display: flex;
flex-flow: column wrap;
}
.mainpage-right > * {
margin: 0 0 0.9rem;
}
.arrow {
background: url('filepath://White-chevron.svg') no-repeat;
display: inline-block;
height: 0.7rem;
width: 0.45rem;
vertical-align: middle;
}
.arrow.dark {
filter: invert(80%);
}
.mainpage-contents {
grid-area: content;
grid-template-columns: repeat(6, 1fr);
}
.mainpage-contents .tile-halves {
flex: 1;
}
.mainpage-contents .tile-top {
height: 4.5rem;
position: relative;
}
.mainpage-contents h2 {
margin: 0;
padding: 0;
}
.mainpage-contents .tile-bottom.link-button a {
padding: 0.75em 0.2em;
}
.popular-pages ul {
display: grid;
grid-template-columns: repeat(3, 1fr);
grid-gap: 0.6em;
margin: 1em 0 0.7em 0;
}
.mp-popular-page-light {
display: flex;
align-items: center;
background-color: var(--button-background);
transition: 100ms;
}
.mp-popular-page-light a {
flex: 1;
display: block;
color: #fff;
font-weight: bold;
text-align: center;
text-decoration: none;
padding: 0.7em 1em;
}
.mp-popular-page-light:hover {
filter: brightness(115%);
transition: 100ms;
}
.mainpage-discord {
border: none;
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.3);
}
.mainpage-discord .tile-top {
display: flex;
align-items: center;
background: #5865f2;
padding: 1em 1.75em;
}
.mainpage-discord .tile-top a {
flex: 1;
position: relative;
text-decoration: none;
}
.mainpage-discord .tile-top a:hover .arrow {
transform: translateX(50%);
}
.mainpage-discord .tile-bottom {
background: #525ee0;
border: none;
padding: 1em 1.75em;
}
.mainpage-discord .tile-bottom p {
color: #fff;
font-weight: bold;
font-size: 0.9em;
text-align: center;
text-transform: uppercase;
letter-spacing: 0.03em;
margin: 0;
}
.mainpage-discord .partner-icon {
margin-right: 0.75em;
}
.mainpage-discord .server-name {
color: #fff;
font-weight: bold;
font-size: 1.25em;
margin: 0.5em 0 -0.15em;
}
.mainpage-discord .server-tagline {
color: rgba(255, 255, 255, 0.9);
margin-bottom: 0.5em;
}
.mainpage-discord .arrow {
position: absolute;
top: calc(50% - .5em);
right: 0;
height: 1em;
width: 0.7em;
background-size: 0.7em 1em;
transition: 0.3s ease-out;
}
.mainpage-editing {
border: none;
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.3);
}
.mainpage-editing .tile-top {
background: #438ab5;
}
.mainpage-editing .tile-bottom {
background: #3980ab;
border: none;
padding: 0.8rem 1.5rem 0.4rem;
}
.mainpage-editing h2,
.mainpage-editing a {
color: #fff;
}
.mainpage-editing p {
color: rgba(255, 255, 255, 0.9);
}
.mainpage-editing ul {
list-style-image: url('filepath://Transparent-chevron.svg');
}
@media only screen and (max-width: 1200px) {
.mainpage-contents {
grid-template-columns: repeat(3, 1fr);
}
}
@media only screen and (max-width: 1000px) {
.mainpage-body {
grid-template-areas: "event event event" "update update update" "content content content" "left left left" "right right right";
}
.mainpage-recent-updates {
grid-template-columns: repeat(2, 1fr);
}
.mainpage-recent-updates .tile-halves:last-child {
display: none;
}
.mainpage-recent-updates .tile-halves:hover .tile-top img {
transform: scale(1.04);
}
.mainpage-recent-updates .tile-top {
height: 18vw;
min-height: 9em;
}
.mainpage-header .header-stats {
display: none;
}
.mainpage-left > *:last-child,
.mainpage-right > *:last-child {
margin-bottom: 0;
}
.popular-pages ul {
grid-template-columns: repeat(2, 1fr);
}
}
@media only screen and (max-width: 720px) {
.mainpage-recent-updates {
grid-template-columns: none;
}
.mainpage-recent-updates .tile-halves:last-child {
display: flex;
}
.mainpage-contents {
grid-template-columns: repeat(2, 1fr);
}
}
.mw-prefs-buttons {
background-color: var(--body-main);
border-top-color: var(--body-border);
box-shadow: none;
}
.mw-prefs-tabs-wrapper.oo-ui-panelLayout-framed,
.mw-prefs-tabs > .oo-ui-menuLayout-content > .oo-ui-indexLayout-stackLayout > .oo-ui-tabPanelLayout {
border-color: var(--body-border);
}
.mw-htmlform-ooui .mw-htmlform-matrix tbody tr:nth-child(even) td {
background-color: var(--body-light);
}
.mw-htmlform-ooui .mw-htmlform-matrix tbody tr:hover td {
background-color: var(--body-mid);
}
:root {
--rc-positive-color: #407813;
--rc-negative-color: #b41e0f;
}
.mw-plusminus-pos {
color: var(--rc-positive-color);
}
.mw-plusminus-neg {
color: var(--rc-negative-color);
}
.client-js .mw-recentchanges-toplinks:not(.mw-recentchanges-toplinks-collapsed) {
border-color: var(--body-border);
background-color: var(--body-light);
border-radius: 2px;
}
.mw-rcfilters-ui-filterTagMultiselectWidget-wrapper-content-title {
color: var(--text-color);
}
.mw-rcfilters-ui-filterTagMultiselectWidget-emptyFilters {
color: var(--byline-color);
}
.mw-rcfilters-ui-filterTagMultiselectWidget.oo-ui-widget-enabled .oo-ui-tagMultiselectWidget-handle {
background-color: var(--ooui-interface);
border-color: var(--ooui-interface-border);
}
.mw-rcfilters-ui-filterTagMultiselectWidget-views-select-widget.oo-ui-widget {
border-color: var(--ooui-interface-border);
}
.mw-rcfilters-collapsed .mw-rcfilters-ui-filterTagMultiselectWidget {
border-bottom-color: var(--ooui-interface-border);
}
.mw-rcfilters-ui-menuSelectWidget-footer {
background-color: var(--ooui-interface);
border-color: var(--ooui-interface-border);
}
.mw-rcfilters-ui-viewSwitchWidget label.oo-ui-labelWidget {
color: var(--byline-color);
}
.mw-rcfilters-ui-tagItemWidget-popup-content {
color: var(--ooui-text);
}
.mw-changeslist-legend,
.mw-rcfilters-ui-changesListWrapperWidget .mw-changeslist-legend {
background-color: var(--body-light);
border-color: var(--body-dark);
}
.mw-rcfilters-ui-changesListWrapperWidget-previousChangesIndicator {
border-color: var(--sidebar);
}
.client-js .mw-changeslist ul,
.client-js .mw-changeslist table.mw-enhanced-rc {
margin-left: 0;
}
.mw-rcfilters-ui-watchlistTopSectionWidget-separator {
border-color: var(--sidebar);
}
.mw-rcfilters-ui-itemMenuOptionWidget-header {
border-bottom-color: var(--ooui-interface);
background-color: var(--ooui-interface-border);
}
.mw-rcfilters-ui-itemMenuOptionWidget:not(:last-child):not(.mw-rcfilters-ui-itemMenuOptionWidget-identifier-talk) {
border-bottom-color: var(--ooui-normal-border);
}
.mw-rcfilters-ui-itemMenuOptionWidget-label-title,
.mw-rcfilters-ui-itemMenuOptionWidget-label-desc {
color: var(--text-color);
}
.mw-rcfilters-ui-filterMenuOptionWidget.oo-ui-flaggedElement-muted:not(.oo-ui-optionWidget-selected) {
background-color: var(--body-main);
}
.mw-rcfilters-ui-filterMenuOptionWidget.oo-ui-flaggedElement-muted .mw-rcfilters-ui-itemMenuOptionWidget-label-title,
.mw-rcfilters-ui-filterMenuOptionWidget.oo-ui-flaggedElement-muted .mw-rcfilters-ui-itemMenuOptionWidget-label-desc {
color: var(--subtle-color);
}
.mw-rcfilters-ui-filterMenuSectionOptionWidget {
background-color: var(--body-mid);
}
.mw-rcfilters-ui-filterMenuSectionOptionWidget-header-title.oo-ui-labelElement-label {
color: var(--ooui-text);
}
.mw-rcfilters-ui-filterMenuHeaderWidget-title {
color: var(--ooui-text);
}
.mw-rcfilters-ui-filterMenuHeaderWidget-header {
border-bottom-color: var(--ooui-interface-border);
background-color: var(--ooui-interface);
}
.mw-rcfilters-ui-itemMenuOptionWidget-view-namespaces {
border-top-color: var(--ooui-interface-border);
}
.mw-rcfilters-ui-datePopupWidget {
border-color: var(--ooui-interface-border);
}
.mw-rcfilters-ui-datePopupWidget .mw-rcfilters-ui-valuePickerWidget-title {
color: var(--byline-color);
}
.mw-rcfilters-ui-savedLinksListItemWidget-label {
color: var(--ooui-accent);
}
.client-js .mw-changeslist.mw-rcfilters-ui-changesListWrapperWidget-highlighted ul,
.client-js .mw-changeslist.mw-rcfilters-ui-changesListWrapperWidget-highlighted table.mw-enhanced-rc {
margin-left: 1.5em;
}
.page-Special_CreateAccount .mw-ui-container,
.page-Special_UserLogin .mw-ui-container {
max-width: 64rem;
margin: 0 auto;
}
.mw-number-text {
color: var(--byline-color);
}
.mw-body-content .mw-number-text h3 {
color: var(--text-color);
}
#mw-indicator-mw-helplink a {
background: none;
padding: 0;
display: flex;
align-items: center;
}
#mw-indicator-mw-helplink a::before {
content: '';
margin-right: 5px;
-webkit-mask: url("/resources/src/mediawiki.helplink/images/helpNotice.svg?46d34") no-repeat 50% 50% / contain;
mask: url("/resources/src/mediawiki.helplink/images/helpNotice.svg?46d34") no-repeat 50% 50% / contain;
background: var(--text-color);
height: 20px;
width: 20px;
}
.results-info {
color: inherit;
}
.mw-search-profile-tabs {
background-color: var(--body-mid);
border-color: transparent;
}
.search-types .current a {
color: inherit;
}
#mw-searchoptions {
background-color: var(--body-mid);
border-color: transparent;
}
#mw-searchoptions .divider {
border-color: var(--body-border);
}
#mw-searchoptions h4 {
font-family: inherit;
}
#mw-searchoptions .oo-ui-labelElement:nth-of-type(odd) {
font-weight: bold;
}
.searchresult {
line-height: 1.5;
}
.searchalttitle,
#mw-search-interwiki li {
font-size: 90%;
}
.mw-search-result-data {
color: var(--byline-color);
}
.page-Special_ListFiles a.image img {
width: inherit;
height: inherit;
}
.page-Special_ListFiles .TablePager_col_thumb {
text-align: center;
}
#editcount table[border="1"] {
background-color: var(--body-main) !important;
border-color: var(--wikitable-border) !important;
margin-top: 0.5em;
}
#editcount table[border="1"] th,
#editcount table[border="1"] td {
padding: 0.2em 0.4em;
}
#editcount table[border="1"] th {
background-color: var(--wikitable-header-bg);
border: 1px solid var(--wikitable-border);
}
#editcount table[border="1"] td {
border: 1px solid var(--wikitable-border);
}
#editcount table[border="1"] tr:nth-child(odd) {
background-color: var(--body-light);
}
.mw-echo-ui-notificationBadgeButtonPopupWidget-popup > .oo-ui-popupWidget-popup .mw-echo-ui-placeholderItemWidget {
background-color: inherit;
}
table.mw-interwikitable.body td.mw-interwikitable-local-yes {
background-color: var(--table-yes-background);
color: var(--table-yes-color);
}
.mw-protectedpages-unknown {
color: var(--byline-color);
}
.watchlistredir,
.allpagesredirect {
font-style: italic;
}
.allpagesredirect:after {
color: var(--byline-color);
content: " (redirect)";
}
.mw-apisandbox-toolbar {
background: var(--body-main);
}
.oo-ui-menuOptionWidget .mw-apisandbox-flag {
color: var(--byline-color);
}
tr.mw-abusefilter-list-disabled,
tr.mw-abusefilter-list-disabled td {
color: var(--byline-color);
}
table.mw-abuselog-details {
background: var(--wikitable-bg);
border-color: var(--wikitable-border);
}
table.mw-abuselog-details th {
background: var(--wikitable-header-bg);
}
table.mw-abuselog-details th,
table.mw-abuselog-details td {
border-color: var(--wikitable-border);
}
.mw-abusefilter-log-hidden-entry {
color: var(--subtle-color);
}
body td.mw-abusefilter-history-changed {
background: var(--table-no-background);
}
div.mw-abusefilter-editor,
#mw-abusefilter-warn-preview,
#mw-abusefilter-disallow-preview {
border-color: var(--ooui-input-border);
}
.mw-destfile-warning {
border-color: var(--warningbox-border);
color: var(--text-color);
background-color: var(--warningbox-bg);
}
span.fileinput-button {
background-color: var(--ooui-normal);
border-color: var(--ooui-normal-border);
color: var(--ooui-text);
}
ul.fileupload-results li.ful-success {
background-color: var(--successbox-bg);
}
ul.fileupload-results li.ful-success a {
color: var(--link-color);
}
ul.fileupload-results li.ful-error {
background-color: var(--errorbox-bg);
}
#t-print,
#t-permalink {
display: none;
}
#filetoc {
border-radius: 2px;
background: var(--body-mid);
border-color: transparent;
margin: 0.5em auto;
text-align: center;
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
}
li.gallerybox div.thumb {
border: none;
background-color: var(--thumb-bg);
}
.smwfact {
display: none;
}
.list-header {
background-color: var(--body-mid);
color: inherit;
}
.editOptions {
color: var(--text-color);
background-color: var(--sourceeditor-background-secondary);
border-color: var(--sourceeditor-border);
}
.mw-json th,
.mw-json td {
border-color: var(--wikitable-border);
}
.mw-json td {
background: var(--wikitable-bg);
}
.mw-json th {
background: var(--wikitable-header-bg);
}
2a9d34c5e42d34db57d549c4f46dd6347a14abfa
Brighter Shores:User help/userInfo
4
557
940
2024-03-23T17:43:36Z
Habblet
11
Created page with "__NEWSECTIONLINK__ <div class="tile" style="max-width:1000px;margin:0 auto;"> ===What this page ''is'' for=== * '''Coding help.''' Requesting help with writing templates, making a nice user page, or any questions on writing wiki-code can be asked here and users will help to the best of their ability. * '''Requests for non-administrative actions.''' If help is required with an action (such as moving a page), asking users here for help with that action is acceptable. * '''..."
wikitext
text/x-wiki
__NEWSECTIONLINK__
<div class="tile" style="max-width:1000px;margin:0 auto;">
===What this page ''is'' for===
* '''Coding help.''' Requesting help with writing templates, making a nice user page, or any questions on writing wiki-code can be asked here and users will help to the best of their ability.
* '''Requests for non-administrative actions.''' If help is required with an action (such as moving a page), asking users here for help with that action is acceptable.
* '''Questions on how the wiki works.''' All the policies and processes in use on the Brighter Shores Wiki may seem a little overwhelming at first. If you need help in understanding any of the policies, or more in depth instructions on a process, asking here is a good start.
* '''Other questions to the users of the wiki.''' While the [[Forum:Forum Grove|Forum Grove]] is often a better place, a simple question may be asked here for a quick response.
* '''An all-in-one place to put things.''' Many of the wiki's procedures are lesser-known, so putting a note here is a good way to do something if the correct procedure is not known.
===What this page ''is not'' for===
* '''Requests for actions involving administrator tools.''' Please use [[BS:AR|Admin requests]] for such requests.
* '''Larger discussion with other users on policies or other wide-ranging actions.''' The [[Forum:Forum Grove|Forum Grove]] is a more suitable location to discuss larger changes to the wiki's policies, procedures and high-use templates.
* '''General chat (about Brighter Shores or not).''' General chat about Brighter Shores (or an off-topic subject) should be taken to individual user talk pages, or article talk pages when applicable.
</div>
<br><div class="center">[https://brightershoreswiki.org/w/Brighter_Shores:User_help?action=edit§ion=new <span class="mw-ui-button mw-ui-progressive">Click here to add a new request</span>]</div>
5716d59b2030d5b09a61a7d2980649d5633840e2
Brighter Shores:HELP
4
558
941
2024-03-23T17:43:51Z
Habblet
11
Redirected page to [[Brighter Shores:User help]]
wikitext
text/x-wiki
#REDIRECT [[Brighter Shores:User help]]
08d5271b652e48f9b361ae93c837882ebc245b31
Brighter Shores:UH
4
559
942
2024-03-23T17:43:54Z
Habblet
11
Redirected page to [[Brighter Shores:User help]]
wikitext
text/x-wiki
#REDIRECT [[Brighter Shores:User help]]
08d5271b652e48f9b361ae93c837882ebc245b31
Brighter Shores:UR
4
560
943
2024-03-23T17:43:57Z
Habblet
11
Redirected page to [[Brighter Shores:User help]]
wikitext
text/x-wiki
#REDIRECT [[Brighter Shores:User help]]
08d5271b652e48f9b361ae93c837882ebc245b31
Forum:Forum Grove
110
545
945
924
2024-03-23T17:45:38Z
Habblet
11
wikitext
text/x-wiki
{{Shortcut|FG}}
'''Forum Grove''' is a place where community members can discuss larger changes to the wiki, such as policy proposals or suggestions to substantially redesign content pages. As this page is viewed by a variety of editors, you can expect fair and centralised discussions. Broadly construed, if the community would be interested in the topic, start it here. Even if a discussion is taking place elsewhere, it may be appropriate to announce that discussion here as well. To add a new topic, type the title in the box below and click "Add new topic".
<center><big>Please only post here if it concerns the Wiki.</big></center>
<center>Threads on in-game discussion, such as requesting a Shield of Arrav partner may be deleted. Additionally, if you have any questions regarding the wiki, they may be answered on [[Brighter Shores:User help|User help]] or [[Brighter Shores:Administrator requests|Administrator requests]].</center>
<div style="text-align:center;">'''[[Special:Recentchangeslinked/Category:{{PAGENAME}}|View recent changes for this forum]]''' {{*}} '''[[:Category:{{PAGENAME}}|View alphabetic list of topics]]''' {{*}} '''[[Brighter Shores:Forum Archives|View the archives]]'''</div>
----
<!-- <table width="100%"><tr><td><!-- You could create (or transclude) a forum header here --><!-- </td><td width="50%"> -->
<inputbox>
type=create
prefix=Forum:
preload=Template:Forumheader/{{PAGENAME}}
buttonlabel=Add new topic
</inputbox><!-- </td></tr></table> -->
==Active threads==
{| class="discussiontable" style="width:100%"
! class="topic" style="width:55%" | Topic
! class="edited" style="width:25%" | Last edit
! class="edited-by" style="width:20%" | Last author
|}
<dpl>
namespace=Forum
category=Forum Grove
notcategory=Forum archives by date closed
notcategory=Brighter Shores Wiki community
noresultsheader=There are no active discussions.
shownamespace=false
addlasteditor=true
addeditdate=true
ordermethod=lastedit
order=descending
mode=userformat
include={forumheader}:%TITLE%:%DATE%:%USER%
table=style="width:100%; border:0; margin-top:2px" class="dpltable",-
tablerow=class="topic" style="width:55%"|[[Forum:%%|%%]],class="edited" style="width:25%"|{{#if:%%|{{#time:H:i, j F Y|%%}}|–}},class="edited-by" style="width:20%"|{{#if:%%|[[User:%%|%%]]|–}}
allowcachedresults=false
</dpl>
==Archived threads==
{| class="discussiontable archive" style="width:100%; margin-bottom:-2px"
! class="topic" style="width:45%" | Topic
! class="rg-archive" style="width:25%" | Archived on
! class="rg-archive" style="width:16%" | Archived by
! class="rg-archive" style="width:14%" | Forum type
|}
<dpl>
namespace=Forum
category=Forum archives by date closed
shownamespace=false
addlasteditor=true
ordermethod=sortkey
order=descending
mode=userformat
include={forumheader}:%TITLE%:date:user:type
table=style="width:100%; border:0; margin-top:2px" class="dpltable archive",-
tablerow=class="topic" style="width:45%"|[[Forum:%%|%%]],class="rg-archive" style="width:25%"|{{#if:%%|{{#time:H:i, j F Y|%%}}|–}},class="rg-archive" style="width:16%"|{{#if:%%|[[User:%%|%%]]|–}},class="rg-archive" style="width:14%"|{{#if:%%|[[:Category:Forum archives/{{#switch:{{lc:%%}}|community=Community|content=Content|discussion=Discussion|miscellaneous|misc=Miscellaneous|policy=Policy|technical|tech=Technical|user-related|user=User-related|clan chat|clan=Clan chat|meta=Meta|%%}}|{{#switch:{{lc:%%}}|community=Community|content=Content|discussion=Discussion|miscellaneous|misc=Miscellaneous|policy=Policy|technical|tech=Technical|user-related|user=User-related|clan chat|clan=Clan chat|meta=Meta|%%}}]]|-}}
allowcachedresults=false
count={%DPL_count:25%}
</dpl>
[[Category:Brighter Shores Wiki community]]
[[Category:Forum Grove| ]]
b85ad2c768f8c896cfb080d8bd7dd812ba50c77d
947
945
2024-03-23T17:46:01Z
Habblet
11
wikitext
text/x-wiki
{{Shortcut|BS:FG}}
'''Forum Grove''' is a place where community members can discuss larger changes to the wiki, such as policy proposals or suggestions to substantially redesign content pages. As this page is viewed by a variety of editors, you can expect fair and centralised discussions. Broadly construed, if the community would be interested in the topic, start it here. Even if a discussion is taking place elsewhere, it may be appropriate to announce that discussion here as well. To add a new topic, type the title in the box below and click "Add new topic".
<center><big>Please only post here if it concerns the Wiki.</big></center>
<center>Threads on in-game discussion, such as requesting a Shield of Arrav partner may be deleted. Additionally, if you have any questions regarding the wiki, they may be answered on [[Brighter Shores:User help|User help]] or [[Brighter Shores:Administrator requests|Administrator requests]].</center>
<div style="text-align:center;">'''[[Special:Recentchangeslinked/Category:{{PAGENAME}}|View recent changes for this forum]]''' {{*}} '''[[:Category:{{PAGENAME}}|View alphabetic list of topics]]''' {{*}} '''[[Brighter Shores:Forum Archives|View the archives]]'''</div>
----
<!-- <table width="100%"><tr><td><!-- You could create (or transclude) a forum header here --><!-- </td><td width="50%"> -->
<inputbox>
type=create
prefix=Forum:
preload=Template:Forumheader/{{PAGENAME}}
buttonlabel=Add new topic
</inputbox><!-- </td></tr></table> -->
==Active threads==
{| class="discussiontable" style="width:100%"
! class="topic" style="width:55%" | Topic
! class="edited" style="width:25%" | Last edit
! class="edited-by" style="width:20%" | Last author
|}
<dpl>
namespace=Forum
category=Forum Grove
notcategory=Forum archives by date closed
notcategory=Brighter Shores Wiki community
noresultsheader=There are no active discussions.
shownamespace=false
addlasteditor=true
addeditdate=true
ordermethod=lastedit
order=descending
mode=userformat
include={forumheader}:%TITLE%:%DATE%:%USER%
table=style="width:100%; border:0; margin-top:2px" class="dpltable",-
tablerow=class="topic" style="width:55%"|[[Forum:%%|%%]],class="edited" style="width:25%"|{{#if:%%|{{#time:H:i, j F Y|%%}}|–}},class="edited-by" style="width:20%"|{{#if:%%|[[User:%%|%%]]|–}}
allowcachedresults=false
</dpl>
==Archived threads==
{| class="discussiontable archive" style="width:100%; margin-bottom:-2px"
! class="topic" style="width:45%" | Topic
! class="rg-archive" style="width:25%" | Archived on
! class="rg-archive" style="width:16%" | Archived by
! class="rg-archive" style="width:14%" | Forum type
|}
<dpl>
namespace=Forum
category=Forum archives by date closed
shownamespace=false
addlasteditor=true
ordermethod=sortkey
order=descending
mode=userformat
include={forumheader}:%TITLE%:date:user:type
table=style="width:100%; border:0; margin-top:2px" class="dpltable archive",-
tablerow=class="topic" style="width:45%"|[[Forum:%%|%%]],class="rg-archive" style="width:25%"|{{#if:%%|{{#time:H:i, j F Y|%%}}|–}},class="rg-archive" style="width:16%"|{{#if:%%|[[User:%%|%%]]|–}},class="rg-archive" style="width:14%"|{{#if:%%|[[:Category:Forum archives/{{#switch:{{lc:%%}}|community=Community|content=Content|discussion=Discussion|miscellaneous|misc=Miscellaneous|policy=Policy|technical|tech=Technical|user-related|user=User-related|clan chat|clan=Clan chat|meta=Meta|%%}}|{{#switch:{{lc:%%}}|community=Community|content=Content|discussion=Discussion|miscellaneous|misc=Miscellaneous|policy=Policy|technical|tech=Technical|user-related|user=User-related|clan chat|clan=Clan chat|meta=Meta|%%}}]]|-}}
allowcachedresults=false
count={%DPL_count:25%}
</dpl>
[[Category:Brighter Shores Wiki community]]
[[Category:Forum Grove| ]]
679830036750579bfdbf7ad69e95bdc497191ac4
948
947
2024-03-23T17:46:14Z
Habblet
11
wikitext
text/x-wiki
{{Shortcut|FG}}
'''Forum Grove''' is a place where community members can discuss larger changes to the wiki, such as policy proposals or suggestions to substantially redesign content pages. As this page is viewed by a variety of editors, you can expect fair and centralised discussions. Broadly construed, if the community would be interested in the topic, start it here. Even if a discussion is taking place elsewhere, it may be appropriate to announce that discussion here as well. To add a new topic, type the title in the box below and click "Add new topic".
<center><big>Please only post here if it concerns the Wiki.</big></center>
<center>Threads on in-game discussion, such as requesting a Shield of Arrav partner may be deleted. Additionally, if you have any questions regarding the wiki, they may be answered on [[Brighter Shores:User help|User help]] or [[Brighter Shores:Administrator requests|Administrator requests]].</center>
<div style="text-align:center;">'''[[Special:Recentchangeslinked/Category:{{PAGENAME}}|View recent changes for this forum]]''' {{*}} '''[[:Category:{{PAGENAME}}|View alphabetic list of topics]]''' {{*}} '''[[Brighter Shores:Forum Archives|View the archives]]'''</div>
----
<!-- <table width="100%"><tr><td><!-- You could create (or transclude) a forum header here --><!-- </td><td width="50%"> -->
<inputbox>
type=create
prefix=Forum:
preload=Template:Forumheader/{{PAGENAME}}
buttonlabel=Add new topic
</inputbox><!-- </td></tr></table> -->
==Active threads==
{| class="discussiontable" style="width:100%"
! class="topic" style="width:55%" | Topic
! class="edited" style="width:25%" | Last edit
! class="edited-by" style="width:20%" | Last author
|}
<dpl>
namespace=Forum
category=Forum Grove
notcategory=Forum archives by date closed
notcategory=Brighter Shores Wiki community
noresultsheader=There are no active discussions.
shownamespace=false
addlasteditor=true
addeditdate=true
ordermethod=lastedit
order=descending
mode=userformat
include={forumheader}:%TITLE%:%DATE%:%USER%
table=style="width:100%; border:0; margin-top:2px" class="dpltable",-
tablerow=class="topic" style="width:55%"|[[Forum:%%|%%]],class="edited" style="width:25%"|{{#if:%%|{{#time:H:i, j F Y|%%}}|–}},class="edited-by" style="width:20%"|{{#if:%%|[[User:%%|%%]]|–}}
allowcachedresults=false
</dpl>
==Archived threads==
{| class="discussiontable archive" style="width:100%; margin-bottom:-2px"
! class="topic" style="width:45%" | Topic
! class="rg-archive" style="width:25%" | Archived on
! class="rg-archive" style="width:16%" | Archived by
! class="rg-archive" style="width:14%" | Forum type
|}
<dpl>
namespace=Forum
category=Forum archives by date closed
shownamespace=false
addlasteditor=true
ordermethod=sortkey
order=descending
mode=userformat
include={forumheader}:%TITLE%:date:user:type
table=style="width:100%; border:0; margin-top:2px" class="dpltable archive",-
tablerow=class="topic" style="width:45%"|[[Forum:%%|%%]],class="rg-archive" style="width:25%"|{{#if:%%|{{#time:H:i, j F Y|%%}}|–}},class="rg-archive" style="width:16%"|{{#if:%%|[[User:%%|%%]]|–}},class="rg-archive" style="width:14%"|{{#if:%%|[[:Category:Forum archives/{{#switch:{{lc:%%}}|community=Community|content=Content|discussion=Discussion|miscellaneous|misc=Miscellaneous|policy=Policy|technical|tech=Technical|user-related|user=User-related|clan chat|clan=Clan chat|meta=Meta|%%}}|{{#switch:{{lc:%%}}|community=Community|content=Content|discussion=Discussion|miscellaneous|misc=Miscellaneous|policy=Policy|technical|tech=Technical|user-related|user=User-related|clan chat|clan=Clan chat|meta=Meta|%%}}]]|-}}
allowcachedresults=false
count={%DPL_count:25%}
</dpl>
[[Category:Brighter Shores Wiki community]]
[[Category:Forum Grove| ]]
b85ad2c768f8c896cfb080d8bd7dd812ba50c77d
FG
0
561
946
2024-03-23T17:45:47Z
Habblet
11
Redirected page to [[Forum:Forum Grove]]
wikitext
text/x-wiki
#REDIRECT [[Forum:Forum Grove]]
827d0794c13dd4fea3549f3a41ab3df53ac618af
Brighter Shores:ABOUT
4
565
952
2024-03-23T17:49:32Z
Habblet
11
Redirected page to [[Brighter Shores:About]]
wikitext
text/x-wiki
#REDIRECT [[Brighter Shores:About]]
cb91624f92be801de8b06f2cbd711659080b4cb0
Brighter Shores:BSW
4
566
953
2024-03-23T17:49:36Z
Habblet
11
Redirected page to [[Brighter Shores:About]]
wikitext
text/x-wiki
#REDIRECT [[Brighter Shores:About]]
cb91624f92be801de8b06f2cbd711659080b4cb0
Brighter Shores:WIKI
4
567
954
2024-03-23T17:49:39Z
Habblet
11
Redirected page to [[Brighter Shores:About]]
wikitext
text/x-wiki
#REDIRECT [[Brighter Shores:About]]
cb91624f92be801de8b06f2cbd711659080b4cb0
Template:Purge
10
569
956
2024-03-23T17:52:47Z
Habblet
11
Created page with "<{{{tag|small}}} class="plainlinks {{#if:{{{noinplace|}}}||jsPurgeLink}}" id="res" title="{{{hover|If this information seems incorrect, click here to force an update.}}}">[{{fullurl:{{FULLPAGENAME}}#res|action=purge}} {{{1|(update)}}}]</{{{tag|small}}}><noinclude>{{/doc}}</noinclude>"
wikitext
text/x-wiki
<{{{tag|small}}} class="plainlinks {{#if:{{{noinplace|}}}||jsPurgeLink}}" id="res" title="{{{hover|If this information seems incorrect, click here to force an update.}}}">[{{fullurl:{{FULLPAGENAME}}#res|action=purge}} {{{1|(update)}}}]</{{{tag|small}}}><noinclude>{{/doc}}</noinclude>
309711647b62ba4d74449ecd97ffe6b61a4726d2
Template:Purge/doc
10
570
957
2024-03-23T17:56:30Z
Habblet
11
Created page with "{{Documentation}} Place this template on a page that uses any sort of time based parser to display information to allow readers to see up to date information. It includes its own anchor (<code>#res</code>) so that clicking the link will take the reader right back to where they clicked it. By default, the tag used will be a <code>small</code> tag (but can be changed), and the link will be an in-place style purge (uses javascript to purge via the API and reload the page)..."
wikitext
text/x-wiki
{{Documentation}}
Place this template on a page that uses any sort of time based parser to display information to allow readers to see up to date information. It includes its own anchor (<code>#res</code>) so that clicking the link will take the reader right back to where they clicked it. By default, the tag used will be a <code>small</code> tag (but can be changed), and the link will be an in-place style purge (uses javascript to purge via the API and reload the page) (but can be suppressed to purge via ?action=purge instead, which requires a confirmation).
==Usage==
<pre>{{Purge|optional text|tag=(optional) <small> by default|noinplace=(optional) suppress in-place purging|hover=(optional) input custom mouse-over text}}</pre>
===Examples===
<pre>This is the list of active discussions.<sup>{{Purge}}</sup></pre>
This is the list of active discussions.<sup>{{Purge}}</sup>
<pre>This is the list of active discussions. Click {{Purge|here|tag=span}} to purge the page.</pre>
This is the list of active discussions. Click {{Purge|here|tag=span}} to purge the page.
<pre>This is the list of active discussions. Click {{Purge|here|tag=span|noinplace=true}} to purge the page via ?action=purge.</pre>
<includeonly>[[Category:Formatting templates]]</includeonly>
4b7f2505901bfc65f5dc2885c5b5902a34f260c9
Category:Requests
14
573
960
2024-03-23T18:30:28Z
Habblet
11
Created page with "{{Categoryheader|pages|requests for Wiki help||}} [[Category:Maintenance]]"
wikitext
text/x-wiki
{{Categoryheader|pages|requests for Wiki help||}}
[[Category:Maintenance]]
9e9b7ca5c0c5b1f2b79f1acbfa27fb9ba71438b6
Template:Redirect3
10
577
964
2024-03-23T18:31:36Z
Habblet
11
Created page with "{{Hatnote|"{{{1}}}" redirects here. {{{2}}}.}}<noinclude>{{/doc}}</noinclude>"
wikitext
text/x-wiki
{{Hatnote|"{{{1}}}" redirects here. {{{2}}}.}}<noinclude>{{/doc}}</noinclude>
41848570b9c3732f5ab114b00df06e4aefec5501
Template:Redirect3/doc
10
578
965
2024-03-23T18:32:10Z
Habblet
11
Created page with "{{Documentation}} This template displays text showing what redirects to a certain page. ==Usage== This template can be used by entering the following onto a relevant page. <pre>{{Redirect3|Location|Description including links}}</pre> ==location== This parameter is replaced by the location. ==description== This parameter is replaced by a description of the redirect. ==See also== * [[Template:Redirect]] * [[Template:Otheruses]] * [[Template:See also]] * RuneScape:Re..."
wikitext
text/x-wiki
{{Documentation}}
This template displays text showing what redirects to a certain page.
==Usage==
This template can be used by entering the following onto a relevant page.
<pre>{{Redirect3|Location|Description including links}}</pre>
==location==
This parameter is replaced by the location.
==description==
This parameter is replaced by a description of the redirect.
==See also==
* [[Template:Redirect]]
* [[Template:Otheruses]]
* [[Template:See also]]
* [[RuneScape:Redirecting]]
* [[Wikipedia:Template:Redirect3|Redirect3]], the template at Wikipedia
<includeonly>[[Category:Transclusion templates|{{PAGENAME}}]]</includeonly>
923714c3fba229a7a4adf192f8e073d2f4ebbeb0
Factions
0
72
966
888
2024-03-23T18:37:47Z
Habblet
11
wikitext
text/x-wiki
[[File:Factions.jpg|thumb|right|Examples of the three factions.]]
'''Factions''' in [[Brighter Shores]] allow the [[player]] to specialise in using a specific [[combat]] style.
Factions are described as follows on the Official Brighter Shores Website.
"You will discover powerful magic sources and become one of the legendary classes of old: Cryoknight, Guardian or Hammermage. Which is fortunate, because something is corrupting the deepest reaches of the nearby Hopeforest, and only through the strength of your new-found powers will you be able to deal with it." {{CiteGeneral|url=https://brightershores.com|title=Official Brighter Shores Website}}
==Factions==
* The [[Cryoknight]] ([[File:Cryoknight icon.svg|18px]]) faction is focused on melee combat, using weapons like [[sword]]s alongside a [[shield]].
* [[Guardian]]s ([[File:Guardian icon.svg|18px]]) use ranged combat, preferring to wield weapons like [[crossbow]]s.
* The [[Hammermage]] ([[File:Hammermage icon.svg|18px]]) faction fights using a mix of melee and magic.
==References==
{{Reflist}}
{{Factions}}
{{Mechanics}}
aff33a12201b6a9525990b57b246efa0c4e52dca
969
966
2024-03-23T19:19:31Z
Jayden
3
move quote to {{quote2}} template
wikitext
text/x-wiki
[[File:Factions.jpg|thumb|right|Examples of the three factions.]]
{{Quote2|You will discover powerful magic sources and become one of the legendary classes of old: Cryoknight, Guardian or Hammermage. Which is fortunate, because something is corrupting the deepest reaches of the nearby Hopeforest, and only through the strength of your new-found powers will you be able to deal with it.|Official website{{CiteGeneral|url=https://brightershores.com|title=Official Brighter Shores website|date=23 March 2024|accessdate=23 March 2024|archiveurl=https://archive.is/BaZ8w|archivedate=23 March 2024}}}}
'''Factions''' in [[Brighter Shores]] allow the [[player]] to specialise in using a specific [[combat]] style.
==Factions==
* The [[Cryoknight]] ([[File:Cryoknight icon.svg|18px]]) faction is focused on melee combat, using weapons like [[sword]]s alongside a [[shield]].
* [[Guardian]]s ([[File:Guardian icon.svg|18px]]) use ranged combat, preferring to wield weapons like [[crossbow]]s.
* The [[Hammermage]] ([[File:Hammermage icon.svg|18px]]) faction fights using a mix of melee and magic.
==References==
{{Reflist}}
{{Factions}}
{{Mechanics}}
d9ff53ba2beae1f54a11c404da68079b0f01d8d8
Template:Quote2
10
579
967
2024-03-23T19:16:05Z
Jayden
3
Created page with "{| align="{{{align|center}}}" style="border-collapse:collapse; border-style:none; background-color:transparent;" | class="quotation-mark" style="width:20px; vertical-align:top; font-size:{{#switch:{{{size|{{{4|{{{quotewidth|{{{width|20px}}}}}}}}}}}} |10px=20px |30px=60px |40px=80px |50px=100px |60px=120px |#default=40px}}; font-family:serif; font-weight:bold; text-align:left; padding:10px 10px;" | “ | style="vertical-align:center; padding:4px 10px;" | {{{quote|{{{1|{{{..."
wikitext
text/x-wiki
{| align="{{{align|center}}}" style="border-collapse:collapse; border-style:none; background-color:transparent;"
| class="quotation-mark" style="width:20px; vertical-align:top; font-size:{{#switch:{{{size|{{{4|{{{quotewidth|{{{width|20px}}}}}}}}}}}}
|10px=20px
|30px=60px
|40px=80px
|50px=100px
|60px=120px
|#default=40px}}; font-family:serif; font-weight:bold; text-align:left; padding:10px 10px;" | “
| style="vertical-align:center; padding:4px 10px;" | {{{quote|{{{1|{{{quotetext|<noinclude>Text of the quote</noinclude>}}}}}}}}}
| class="quotation-mark" style="width:20px; vertical-align:bottom; font-size:{{#switch:{{{size|{{{4|{{{quotewidth|{{{width|20px}}}}}}}}}}}}
|10px=20px
|30px=60px
|40px=80px
|50px=100px
|60px=120px
|#default=40px}}; font-family:serif; font-weight:bold; text-align:right; padding:10px 10px;" | ”
|-
{{#if:{{{2|{{{personquoted|}}}}}}{{{3|{{{quotesource|}}}}}}|
{{!}}
{{!}} style="vertical-align:top" {{!}}{{#if:{{{2|{{{personquoted|<noinclude>Origin</noinclude>}}}}}}|<div style="line-height:1em;text-align: right"><cite style="font-style:normal;">— {{{person|{{{2|{{{personquoted|}}}}}}}}} {{#if:{{{3|{{{quotesource|<noinclude>Source</noinclude>}}}}}}|{{{3|{{{quotesource|}}}}}}}}</cite></div>}}}}
|}<noinclude>{{/doc}}
[[Category:Formatting templates|{{PAGENAME}}]]
</noinclude>
025a2af58b04d360572090051de2cf0e0ce57f01
Template:Quote2/doc
10
580
968
2024-03-23T19:16:54Z
Jayden
3
Created page with "{{Documentation}} The '''quote2''' template provides a centered, borderless quotation, with scalable, non-clickable graphic quotation marks, and optional attribution of the source of the quote. Can be used with or without additional parameters. ==Usage== {{t|quote2|quote|attribution|source}} ==Parameters== * first parameter (mandatory) - the quote itself * second parameter (optional) - attribution * third parameter (optional) - source; if any text is assigned to the ''..."
wikitext
text/x-wiki
{{Documentation}}
The '''quote2''' template provides a centered, borderless quotation, with scalable, non-clickable graphic quotation marks, and optional attribution of the source of the quote. Can be used with or without additional parameters.
==Usage==
{{t|quote2|quote|attribution|source}}
==Parameters==
* first parameter (mandatory) - the quote itself
* second parameter (optional) - attribution
* third parameter (optional) - source; if any text is assigned to the ''source'' field, it will be rendered as a browser [[wikipedia:Tooltip|tooltip]].
<includeonly>[[Category:Formatting templates|{{PAGENAME}}]]</includeonly>
1baead2479d4ab18e48db8cc72216fd211a83f2c
Template:NamedRef
10
581
970
2024-03-23T19:30:51Z
Jayden
3
Created page with "<includeonly>{{#invoke:References|namedref}}</includeonly><noinclude>{{/doc}}</noinclude>"
wikitext
text/x-wiki
<includeonly>{{#invoke:References|namedref}}</includeonly><noinclude>{{/doc}}</noinclude>
62b84ceb7a0311f003bf0e60674043dc7ac4f86a
Template:NamedRef/doc
10
582
971
2024-03-23T19:31:16Z
Jayden
3
Created page with "{{Documentation}} __NOTOC__ {{Invokes|References}} This template is used to quickly re-use a named reference. This works with references named using any method, be that a Cite template, or using ref tags normally. ==Usage== ===Basic=== The syntax is: <pre>{{NamedRef|name}}</pre> You must name a reference before inserting this template or it will trigger an error message. ===Groups=== If you want to refer to a named reference that is part of a group, you can use the s..."
wikitext
text/x-wiki
{{Documentation}}
__NOTOC__
{{Invokes|References}}
This template is used to quickly re-use a named reference. This works with references named using any method, be that a Cite template, or using ref tags normally.
==Usage==
===Basic===
The syntax is:
<pre>{{NamedRef|name}}</pre>
You must name a reference before inserting this template or it will trigger an error message.
===Groups===
If you want to refer to a named reference that is part of a group, you can use the second parameter:
<pre>{{NamedRef|name|group}}</pre>
===Named parameters===
If you prefer, you can use named parameters instead - to make it clearer which parameter is which, etc.
<pre>{{NamedRef|name=name|group=group}}</pre>
{{citations}}
<includeonly>[[Category:Reference templates]]</includeonly>
ffc1c52c09db38ec5dc3427d2b6130a520d8c815
Brighter Shores
0
51
972
821
2024-03-23T19:31:59Z
Jayden
3
more info from recent interview
wikitext
text/x-wiki
[[File:Brighter Shores key art.jpg|thumb|The promotional image for Brighter Shores.]]
'''''Brighter Shores''''' is an upcoming game developed by [[Fen Research]] and designed by [[Andrew Gower]]. It will be released in Q3 2024, and will be available for Windows and macOS (Apple Silicon and Intel chipsets). The game is {{wp|free-to-play}}, but players can access additional features and content by purchasing the [[Premium Pass]].
Brighter Shores features an ongoing story with hundreds of hours of gameplay.{{CiteGeneral|url=https://store.steampowered.com/app/2791440/Brighter_Shores/|title=Brighter Shores on Steam|author=Valve|date=22 March 2024|accessdate=22 March 2024|archiveurl=https://archive.is/eYgMA|archivedate=22 March 2024}} New content is released in the game in an episodic format. Players start their journey in [[Hopeport]], as a member of the town guard.
==History==
The game has been under development in some form or another since at least 2014 by Gower,{{CiteTwitter|url=https://twitter.com/AndrewCGower/status/1767945130487493010|author=Andrew Gower|date=13 March 2024|accessdate=22 March 2024|quote=Over 10 years!|archiveurl=https://archive.is/rhmtZ|archivedate=22 March 2024}} and was announced officially on 13 March 2024. An initial two-minute trailer was released, which depicts [[player]]s engaging in [[combat]], several [[profession]]s, and a variety of different [[location]]s.{{CiteGeneral|url=https://www.youtube.com/watch?v=ASIbNq_pLQQ|title=Brighter Shores Gameplay Trailer|author=MMOs.com|date=13 March 2024|accessdate=22 March 2024}}
Part of the reason that Brighter Shores took a long time to develop is because Gower decided to create a new game engine from scratch, as opposed to using a popular engine like {{wp|Unreal Engine}} or {{wp|Unity}}.{{CiteGeneral|url=https://www.gamesradar.com/runescape-creator-answers-our-biggest-questions-about-his-new-mmo-brighter-shores-classes-professions-monetization-and-a-ttrpg-open-world/|title=RuneScape creator answers our biggest questions about his new MMO Brighter Shores: classes, professions, monetization, and a TTRPG open world|author=Austin Wood|date=23 March 2024|accessdate=23 March 2024|archiveurl=https://archive.is/AxMwI|archivedate=23 March 2024|name=griv}} He had previously created his own engine for his previous MMORPG {{wp|RuneScape}} in the early 2000s, programmed in {{wp|Java}}. The engine that Gower built is called [[Fenforge]], and had previously been used by at least two games prior to being used for Brighter Shores. Gower has said that active development on Brighter Shores officially started in 2017.{{NamedRef|griv}}
A closed beta is planned in 2024 prior to the release of the game.{{CiteTwitter|url=https://twitter.com/AndrewCGower/status/1767973447425003776|author=Andrew Gower|date=13 March 2024|accessdate=23 March 2024|quote=There will be a closed beta. I will post more about it on x/twitter closer to the time.|archiveurl=https://archive.is/BknSB|archivedate=23 March 2024}}
==Trivia==
* The logo of Brighter Shores features [[Hopeport Obelisk]].
==External links==
* [https://store.steampowered.com/app/2791440/Brighter%20Shores/ Steam page]
* [https://brightershores.com/ Official website]
==References==
{{Reflist}}
[[Category:Games]]
[[Category:Fen Research]]
eae5245e3030642337105e16f60e09f068fd4609
Professions
0
56
973
797
2024-03-23T19:37:42Z
Jayden
3
more info from recent interview
wikitext
text/x-wiki
'''Professions''' are skills that [[player]]s can train and utilise in [[Brighter Shores]]. Most professions can either be trained by the player actively playing the game, or [[Passive activity|passively]] while the game is closed.
As the player progresses through the game, more professions will become available for the player to learn. Players aren't limited to once profession at a time; they can utilise multiple at once.{{CiteGeneral|url=https://www.gamesradar.com/runescape-creator-answers-our-biggest-questions-about-his-new-mmo-brighter-shores-classes-professions-monetization-and-a-ttrpg-open-world/|title=RuneScape creator answers our biggest questions about his new MMO Brighter Shores: classes, professions, monetization, and a TTRPG open world|author=Austin Wood|date=23 March 2024|accessdate=23 March 2024|archiveurl=https://archive.is/AxMwI|archivedate=23 March 2024|name=griv}}
==List of professions==
{| class="wikitable"
! colspan="2" | Name !! Uses
|-
| [[File:Profession fisher.png|30px|link=Fisher]] || [[Fisher]] || Catching various [[fish]]
|-
| [[File:Profession forager.png|30px|link=Forager]] || [[Forager]] || Gathering items
|-
| || [[Chef]] || Cooking [[food]] items
|-
| || [[Woodcutter]] || Chopping down [[tree]]s
|-
| || [[Miner]] || Mining [[mineral]]s
|-
| || [[Alchemist]] || Brewing [[potion]]s
|-
| || [[Stonemason]] ||
|-
| || [[Merchant]] ||
|-
| || [[Blacksmith]] ||
|}
==Gallery==
<gallery>
File:Professions preview 1.jpg
File:Professions preview 2.jpg
File:Professions preview 3.jpg
</gallery>
==References==
{{Reflist}}
{{Professions}}
{{Mechanics}}
5c77db291fc927e932ebd19742c315914b6f6b92
974
973
2024-03-23T19:39:29Z
Jayden
3
this is probably better off as a section here rather than a separate page
wikitext
text/x-wiki
'''Professions''' are skills that [[player]]s can train and utilise in [[Brighter Shores]]. Most professions can either be trained by the player actively playing the game, or passively while the game is closed.
As the player progresses through the game, more professions will become available for the player to learn. Players aren't limited to once profession at a time; they can utilise multiple at once.{{CiteGeneral|url=https://www.gamesradar.com/runescape-creator-answers-our-biggest-questions-about-his-new-mmo-brighter-shores-classes-professions-monetization-and-a-ttrpg-open-world/|title=RuneScape creator answers our biggest questions about his new MMO Brighter Shores: classes, professions, monetization, and a TTRPG open world|author=Austin Wood|date=23 March 2024|accessdate=23 March 2024|archiveurl=https://archive.is/AxMwI|archivedate=23 March 2024|name=griv}}
==Passive training==
Unlike other similar MMOs, players can continue to perform certain profession-related activities while logged out of the game.
==List of professions==
{| class="wikitable"
! colspan="2" | Name !! Uses
|-
| [[File:Profession fisher.png|30px|link=Fisher]] || [[Fisher]] || Catching various [[fish]]
|-
| [[File:Profession forager.png|30px|link=Forager]] || [[Forager]] || Gathering items
|-
| || [[Chef]] || Cooking [[food]] items
|-
| || [[Woodcutter]] || Chopping down [[tree]]s
|-
| || [[Miner]] || Mining [[mineral]]s
|-
| || [[Alchemist]] || Brewing [[potion]]s
|-
| || [[Stonemason]] ||
|-
| || [[Merchant]] ||
|-
| || [[Blacksmith]] ||
|}
==Gallery==
<gallery>
File:Professions preview 1.jpg
File:Professions preview 2.jpg
File:Professions preview 3.jpg
</gallery>
==References==
{{Reflist}}
{{Professions}}
{{Mechanics}}
8f55ea7ddb20c9d635ca91981c7cbc4675fcad9d
Passive activity
0
200
975
552
2024-03-23T19:39:55Z
Jayden
3
Redirected page to [[Professions#Passive training]]
wikitext
text/x-wiki
#REDIRECT [[Professions#Passive training]]
4c37fa20aa7ec022c193b0ba116870e82080dfa6
Passive
0
583
976
2024-03-23T19:40:06Z
Jayden
3
Redirected page to [[Professions#Passive training]]
wikitext
text/x-wiki
#REDIRECT [[Professions#Passive training]]
4c37fa20aa7ec022c193b0ba116870e82080dfa6
MediaWiki:Gadgets-definition
8
6
977
587
2024-03-23T20:48:10Z
BlackHawk
10
wikitext
text/x-wiki
This page contains the definitions for all gadgets on the wiki. In most cases, code that could be placed in Common.js should be made into a module here instead for granularity and better support for mobile, etc.
Edits to this page should be done with care. When targeting a gadget for mobile, ensure that the gadget '''works''' on mobile properly by debugging it on mobile devices. Some mobile devices do not allow JavaScript to run, or do not run it by default, so there should always be a fallback option for those that do not have JS enabled. For scripts that are intended for use on a lot of pages, it may be a good idea to propose it on the [[Forum:Forum Grove|Yew Grove]] first. Gadgets which can be enabled/disabled by the user (on [[Special:Preferences#mw-prefsection-gadgets|Special:Preferences]]) should have a description created on ''Mediawiki:Gadget-gadgetname''.
==Core==
* autocollapse[ResourceLoader|type=general|default|hidden|dependencies=mediawiki.Uri]|autocollapse.js
* autosort[ResourceLoader|type=general|dependencies=ext.gadget.bsw-util,ext.gadget.highlightTable|targets=desktop,mobile|default]|autosort.js
* bsw-util[ResourceLoader|dependencies=mediawiki.util|targets=desktop,mobile|type=general|default|hidden]|bsw-util.js
* InstantCollapsible[ResourceLoader|default|hidden|dependencies=jquery.makeCollapsible|type=general]|InstantCollapsible.js
* Less[ResourceLoader|rights=editinterface|dependencies=mediawiki.api|type=general|default|hidden]|Less.js
* navboxToggle[ResourceLoader|targets=mobile|dependencies=ext.gadget.rsw-util|type=general|default|hidden]|navboxToggle.js
* titleparenthesis[ResourceLoader|actions=view|type=general|default|hidden]|titleparenthesis.js|titleparenthesis.css
* tooltips[ResourceLoader|type=general|default|hidden]|tooltips.js
* uncheckfileredirects[ResourceLoader|type=general|rights=suppressredirect|default|hidden]|UncheckFileRedirect.js
==Tools==
* batchupload[ResourceLoader|type=general|default|hidden|dependencies=mediawiki.util|rights=upload]|batchupload.js
* contributions[ResourceLoader|type=general|default|dependencies=ext.gadget.bsw-util]|contributions.js
* dropdown[ResourceLoader|type=general|dependencies=mediawiki.util,mediawiki.api|default]|dropdown.js
* editCount[ResourceLoader|type=general|dependencies=ext.gadget.bsw-util]|editCount.js
* ezcopy[ResourceLoader|type=general|targets=desktop]|ezcopy.js|ezcopy.css
* hotcat[ResourceLoader|rights=upload|type=general]|hotcat.js
* Message-names[ResourceLoader|rights=editinterface|type=general|dependencies=mediawiki.util]|Message-names.js
* newPage[ResourceLoader|default|type=general|dependencies=ext.gadget.bsw-util|rights=createpage]|newPage.js
* purge[ResourceLoader|default|type=general|dependencies=ext.gadget.bsw-util,ext.smw.purge,mediawiki.api|hidden]|purge.js
* QuickDiff[ResourceLoader|type=general|dependencies=mediawiki.Uri,mediawiki.util]|QDmodal.js|QuickDiff.js|QDmodal.css
* ReferenceTooltips[ResourceLoader|default|actions=view|type=general|dependencies=ext.gadget.bsw-util]|ReferenceTooltips.js|ReferenceTooltips.css
* scribunto-console[ResourceLoader|actions=edit|type=general|default]|scribunto-console.js
* scribunto-console-core[ResourceLoader|type=general|hidden]|scribunto-console-core.js|scribunto-console.css
* sectionAnchors[ResourceLoader|type=general|default]|sectionAnchors.js|sectionAnchors.css
==Appearance==
* colorRC[ResourceLoader|type=styles|targets=desktop,mobile]|colorRC.css
* falseSubpage[ResourceLoader|type=general|default|hidden]|falseSubpage.js
* markblocked[ResourceLoader|type=general]|markblocked.js
* readableHistory[ResourceLoader|type=general|actions=history]|readableHistory.js|readableHistory.css
* readableRC[ResourceLoader|type=general]|readableRC.js
* readableRC-core[ResourceLoader|type=general|dependencies=oojs-ui-core|hidden]|readableRC-core.js|readableRC-core.css
* relativetime[ResourceLoader|actions=edit,view|dependencies=mediawiki.util|type=general|default]|relativetime.js
* stickyTableHeaders[ResourceLoader|type=styles|default]|stickyTableHeaders.css
* toplinksDropdown[ResourceLoader|type=general|peers=toplinksDropdown-styles]|toplinksDropdown.js
* toplinksDropdown-styles[ResourceLoader|type=styles|hidden]|toplinksDropdown.css
==Other==
* defaultsummaries[ResourceLoader|actions=edit|type=general]|defaultsummaries.js
* defaultsummaries-core[ResourceLoader|dependencies=oojs-ui-core|type=general|hidden]|defaultsummaries-core.js
* gadgetLinks[ResourceLoader|type=general|default]|gadgetLinks.js
* searchfocus[ResourceLoader|type=general|default]|searchfocus.js
* sigreminder[ResourceLoader|actions=edit|dependencies=ext.gadget.rsw-util|type=general|default]|sigreminder.js
56f646d2f7eb1f3363ef2a33f9b755580e3913dc
978
977
2024-03-23T20:49:17Z
BlackHawk
10
wikitext
text/x-wiki
This page contains the definitions for all gadgets on the wiki. In most cases, code that could be placed in Common.js should be made into a module here instead for granularity and better support for mobile, etc.
Edits to this page should be done with care. When targeting a gadget for mobile, ensure that the gadget '''works''' on mobile properly by debugging it on mobile devices. Some mobile devices do not allow JavaScript to run, or do not run it by default, so there should always be a fallback option for those that do not have JS enabled. For scripts that are intended for use on a lot of pages, it may be a good idea to propose it on the [[Forum:Forum Grove|Yew Grove]] first. Gadgets which can be enabled/disabled by the user (on [[Special:Preferences#mw-prefsection-gadgets|Special:Preferences]]) should have a description created on ''Mediawiki:Gadget-gadgetname''.
==Core==
* autocollapse[ResourceLoader|type=general|default|hidden|dependencies=mediawiki.Uri]|autocollapse.js
* autosort[ResourceLoader|type=general|dependencies=ext.gadget.bsw-util,ext.gadget.highlightTable|targets=desktop,mobile|default]|autosort.js
* bsw-util[ResourceLoader|dependencies=mediawiki.util|targets=desktop,mobile|type=general|default|hidden]|bsw-util.js
* InstantCollapsible[ResourceLoader|default|hidden|dependencies=jquery.makeCollapsible|type=general]|InstantCollapsible.js
* Less[ResourceLoader|rights=editinterface|dependencies=mediawiki.api|type=general|default|hidden]|Less.js
* navboxToggle[ResourceLoader|targets=mobile|dependencies=ext.gadget.bsw-util|type=general|default|hidden]|navboxToggle.js
* titleparenthesis[ResourceLoader|actions=view|type=general|default|hidden]|titleparenthesis.js|titleparenthesis.css
* tooltips[ResourceLoader|type=general|default|hidden]|tooltips.js
* uncheckfileredirects[ResourceLoader|type=general|rights=suppressredirect|default|hidden]|UncheckFileRedirect.js
==Tools==
* batchupload[ResourceLoader|type=general|default|hidden|dependencies=mediawiki.util|rights=upload]|batchupload.js
* contributions[ResourceLoader|type=general|default|dependencies=ext.gadget.bsw-util]|contributions.js
* dropdown[ResourceLoader|type=general|dependencies=mediawiki.util,mediawiki.api|default]|dropdown.js
* editCount[ResourceLoader|type=general|dependencies=ext.gadget.bsw-util]|editCount.js
* ezcopy[ResourceLoader|type=general|targets=desktop]|ezcopy.js|ezcopy.css
* hotcat[ResourceLoader|rights=upload|type=general]|hotcat.js
* Message-names[ResourceLoader|rights=editinterface|type=general|dependencies=mediawiki.util]|Message-names.js
* newPage[ResourceLoader|default|type=general|dependencies=ext.gadget.bsw-util|rights=createpage]|newPage.js
* purge[ResourceLoader|default|type=general|dependencies=ext.gadget.bsw-util,ext.smw.purge,mediawiki.api|hidden]|purge.js
* QuickDiff[ResourceLoader|type=general|dependencies=mediawiki.Uri,mediawiki.util]|QDmodal.js|QuickDiff.js|QDmodal.css
* ReferenceTooltips[ResourceLoader|default|actions=view|type=general|dependencies=ext.gadget.bsw-util]|ReferenceTooltips.js|ReferenceTooltips.css
* scribunto-console[ResourceLoader|actions=edit|type=general|default]|scribunto-console.js
* scribunto-console-core[ResourceLoader|type=general|hidden]|scribunto-console-core.js|scribunto-console.css
* sectionAnchors[ResourceLoader|type=general|default]|sectionAnchors.js|sectionAnchors.css
==Appearance==
* colorRC[ResourceLoader|type=styles|targets=desktop,mobile]|colorRC.css
* falseSubpage[ResourceLoader|type=general|default|hidden]|falseSubpage.js
* markblocked[ResourceLoader|type=general]|markblocked.js
* readableHistory[ResourceLoader|type=general|actions=history]|readableHistory.js|readableHistory.css
* readableRC[ResourceLoader|type=general]|readableRC.js
* readableRC-core[ResourceLoader|type=general|dependencies=oojs-ui-core|hidden]|readableRC-core.js|readableRC-core.css
* relativetime[ResourceLoader|actions=edit,view|dependencies=mediawiki.util|type=general|default]|relativetime.js
* stickyTableHeaders[ResourceLoader|type=styles|default]|stickyTableHeaders.css
* toplinksDropdown[ResourceLoader|type=general|peers=toplinksDropdown-styles]|toplinksDropdown.js
* toplinksDropdown-styles[ResourceLoader|type=styles|hidden]|toplinksDropdown.css
==Other==
* defaultsummaries[ResourceLoader|actions=edit|type=general]|defaultsummaries.js
* defaultsummaries-core[ResourceLoader|dependencies=oojs-ui-core|type=general|hidden]|defaultsummaries-core.js
* gadgetLinks[ResourceLoader|type=general|default]|gadgetLinks.js
* searchfocus[ResourceLoader|type=general|default]|searchfocus.js
* sigreminder[ResourceLoader|actions=edit|dependencies=ext.gadget.bsw-util|type=general|default]|sigreminder.js
f07541cdcde7faf0b508ebb4f74dfeb104079cfe
MediaWiki:Gadget-autocollapse
8
584
979
2024-03-23T20:49:35Z
BlackHawk
10
Created page with "'''Autocollapse''': Auto collapse navboxes if there's more than one or the height exceeds 300."
wikitext
text/x-wiki
'''Autocollapse''': Auto collapse navboxes if there's more than one or the height exceeds 300.
4fa1a5cd0b04adabbaf19aadecbc055fde48f498
MediaWiki:Gadget-autocollapse.js
8
585
980
2024-03-23T20:49:56Z
BlackHawk
10
Created page with "/** * Automatically collapsed navboxes under certain conditions */ (function($, mw){ if ($( ".mw-collapsible-toggle" ).length) expandMaps(); if ( !$('.navbox-autocollapse').length || mw.Uri().query.veaction != undefined ) return; mw.hook('wikipage.collapsibleContent').add(init); function init() { var $navboxes = $('.navbox'), // maximum number of navboxes before they all stay collapsed maxShow = 1, // maximum allowable height of navbox before it s..."
javascript
text/javascript
/**
* Automatically collapsed navboxes under certain conditions
*/
(function($, mw){
if ($( ".mw-collapsible-toggle" ).length) expandMaps();
if (
!$('.navbox-autocollapse').length ||
mw.Uri().query.veaction != undefined
) return;
mw.hook('wikipage.collapsibleContent').add(init);
function init() {
var $navboxes = $('.navbox'),
// maximum number of navboxes before they all stay collapsed
maxShow = 1,
// maximum allowable height of navbox before it stays collapsed
maxHeight = 300;
if ($navboxes.length > maxShow) {
return;
}
$navboxes.each(function(i,box){
var $box = $(box);
if (!$box.hasClass('navbox-autocollapse')) return;
$box.data('mw-collapsible').expand();
if ( $box.height() > maxHeight ) $box.data('mw-collapsible').collapse();
});
}
// handle collapsible maps
function expandMaps() {
$( ".mw-collapsible-toggle" ).on( "click keypress", function() {
const $this = $( this );
if( $this.hasClass( "mw-collapsible-toggle-expanded" ) ) {
mw.hook( "wikipage.content" ).fire(
$( "a.mw-kartographer-map", $this.parents( ".mw-collapsible" ).first() ).parent()
);
}
} );
}
//$(init);
})(jQuery, mediaWiki);
4ef40b5103e462ff4c492dd976ee96e58ec7052e
MediaWiki:Gadget-navboxToggle
8
588
983
2024-03-23T20:51:55Z
BlackHawk
10
Created page with "'''NavboxToggle''': Moves navboxes in mobile and handle collapsing."
wikitext
text/x-wiki
'''NavboxToggle''': Moves navboxes in mobile and handle collapsing.
3dac3dc5f95d5764a2e9a59f7274f9132b026b7f
MediaWiki:Gadget-navboxToggle.js
8
589
984
2024-03-23T20:52:18Z
BlackHawk
10
Created page with "(function ($) { var navtoggle = function () { if ($('.navbox.mw-collapsible').length) { var $arrow = $('<div>') .addClass('mw-ui-icon mw-ui-icon-mf-expand mw-ui-icon-element mw-ui-icon-small indicator mw-ui-icon-flush-left'); var $navigationText = $('<span>') .addClass('mw-headline') .text('Navigation'); var $toggleBar = $('<h2>') .attr('id', 'navbox-fake-collapsible-heading') .addClass('section-heading collapsible-heading') .append($..."
javascript
text/javascript
(function ($) {
var navtoggle = function () {
if ($('.navbox.mw-collapsible').length) {
var $arrow = $('<div>')
.addClass('mw-ui-icon mw-ui-icon-mf-expand mw-ui-icon-element mw-ui-icon-small indicator mw-ui-icon-flush-left');
var $navigationText = $('<span>')
.addClass('mw-headline')
.text('Navigation');
var $toggleBar = $('<h2>')
.attr('id', 'navbox-fake-collapsible-heading')
.addClass('section-heading collapsible-heading')
.append($arrow)
.append($navigationText);
$toggleBar.on('click', function () {
// flip arrow
$('#navbox-fake-collapsible-heading > .mw-ui-icon').toggleClass('mf-mw-ui-icon-rotate-flip');
// collapse navboxes
$('.navbox.mw-collapsible').toggle();
});
// pull out navboxes so they don't get collapsed by the previous section
var $navboxes = $('.navbox.mw-collapsible').detach();
// default to hidden
$navboxes.toggle();
// append everything to the end of the content section
$('.mw-parser-output').first().append($toggleBar).append($navboxes);
}
};
function init() {
var tout = setTimeout(clearInterval, 30000, checksections);
var checksections = setInterval( function () {
if ( $('.mw-parser-output .collapsible-heading *[aria-expanded]').length ) {
navtoggle();
clearTimeout(tout);
clearInterval(checksections);
}
}, 500);
}
$(init);
})(jQuery);
e7508c73fe2d8d4349fa884f30c706b024956354
MediaWiki:Gadget-scribunto-console
8
593
988
2024-03-23T20:54:14Z
BlackHawk
10
Created page with "'''Scribunto Console buttons''': Adds several extra utility buttons to the scribunto console (module pages)."
wikitext
text/x-wiki
'''Scribunto Console buttons''': Adds several extra utility buttons to the scribunto console (module pages).
0bad7592464f4a6ee0d3c430f80199ed4c5e5ad7
MediaWiki:Gadget-scribunto-console.js
8
594
989
2024-03-23T20:54:25Z
BlackHawk
10
Created page with "// <nowiki> $(function () { if ($('#mw-scribunto-console').length) { mw.loader.load('ext.gadget.scribunto-console-core') } }) // </nowiki>"
javascript
text/javascript
// <nowiki>
$(function () {
if ($('#mw-scribunto-console').length) {
mw.loader.load('ext.gadget.scribunto-console-core')
}
})
// </nowiki>
5fc493e12e9dee77c3826e4e3bd44a6de4804e08
MediaWiki:Gadget-scribunto-console-core.js
8
595
990
2024-03-23T20:55:16Z
BlackHawk
10
Created page with "/**<nowiki> * Gadget that loads a couple of snippets for the console on module pages * Authors: ** LapOnTheMoon ** Gaz Lloyd * * * The scribunto console is run by ext.scribunto.edit - https://github.com/wikimedia/mediawiki-extensions-Scribunto/blob/master/modules/ext.scribunto.edit.js */ (function() { const FRAME_TEST = ["local frame = {}", "function frame.getParent()", " local args = {", " -- Args go here as ['name'] = value,", " }", " return { args = ar..."
javascript
text/javascript
/**<nowiki>
* Gadget that loads a couple of snippets for the console on module pages
* Authors:
** LapOnTheMoon
** Gaz Lloyd
*
*
* The scribunto console is run by ext.scribunto.edit - https://github.com/wikimedia/mediawiki-extensions-Scribunto/blob/master/modules/ext.scribunto.edit.js
*/
(function() {
const FRAME_TEST = ["local frame = {}",
"function frame.getParent()",
" local args = {",
" -- Args go here as ['name'] = value,",
" }",
" return { args = args }",
"end",
"mw.log( p.main(frame) )"],
FRAME_TEST_TEXT = FRAME_TEST.join('\n');
var $clearBtn, load_attempts = 0, $inp;
function addButtons() {
var $addTextBtn = $('<input class="console-control console-addFrameText" type="button" value="Frame text" title="Load code for a basic frame">');
$addTextBtn.on('click', function() {
$inp.val(FRAME_TEST_TEXT).attr('rows', FRAME_TEST.length+1);
});
var $prevHistory = $('<input class="console-control console-prevHist" type="button" value="History ˄" title="Load the previous input in your console history, if any">');
var $nextHistory = $('<input class="console-control console-nextHist" type="button" value="History ˅" title="Load the next in your console history, if any">');
// send the appropriate keydown events to the input element
// (ctrl+up / ctrl+down scrolls history)
$prevHistory.on('click', function(){
$inp.trigger({
type: 'keydown',
keyCode: 38, //UP arrow
ctrlKey: true
});
});
$nextHistory.on('click', function(){
$inp.trigger({
type: 'keydown',
keyCode: 40, //DOWN arrow
ctrlKey: true
});
});
var $allowEnter = $('<input class="console-control console-allowEnter" type="checkbox" name="console-allowEnter" id="console-allowEnter">'),
$allowEnterWrapper = $('<span title="Use the Run button or Ctrl+Enter to execute your code, when checked">');
$allowEnterWrapper.append($allowEnter, '<label for="console-allowEnter">Allow normal enter key</label>');
// don't actually need to have an event attached to this, we're just gonna check is(:checked)
// BUT we are adding an event to save state to localStorage
$allowEnter.prop('checked', window.localStorage.getItem('rsw-scribunto-console-allowEnter') === "true"); // do this before attaching event, just to be sure we don't fire it
$allowEnter.on('change', function(){
window.localStorage.setItem('rsw-scribunto-console-allowEnter', $allowEnter.is(':checked'));
});
// attach this to the parent element
// capture=true => this runs before the innermost element's event
document.getElementById('mw-scribunto-input').parentElement.addEventListener('keydown', function(e){
if (e.target.id !== 'mw-scribunto-input') return;
if (! (e.keyCode === 13)) return; // enter
if (e.ctrlKey || e.shiftKey) return;
if ($allowEnter.is(':checked')) {
e.stopImmediatePropagation();
$inp.attr('rows', $inp.val().split(/\r?\n/).length+1);
return;
}
}, true);
// enter runs the code
// ctrl+enter runs it too, and we're explicitly excluding ctrl+enter from allowEnter
var $run = $('<input class="console-control console-runButton" type="button" value="Run" title="Run the current input">');
$run.on('click', function(){
$inp.trigger({
type: 'keydown',
keyCode: 13,
ctrlKey: true
});
});
$clearBtn.parent().prepend($run).append($addTextBtn, $prevHistory, $nextHistory, $allowEnterWrapper);
}
function init() {
$clearBtn = $('input[type="button"][value="Clear"]');
$inp = $('#mw-scribunto-input');
if ($('#mw-scribunto-output').length && $clearBtn.length && $inp.length) {
$clearBtn.addClass('console-control console-clearButton').attr('title', 'Clear the console (no confirmation!)');
addButtons();
} else {
load_attempts++;
if (load_attempts > 100) return;
setTimeout(init, 50);
}
}
$(init);
})();
//</nowiki>
d78a22ed04dcef6db2d53a3ae281e4f7a913be0e
MediaWiki:Gadget-scribunto-console.css
8
596
991
2024-03-23T20:55:28Z
BlackHawk
10
Created page with ".mw-scribunto-console-fieldset .console-control { margin-right: 0.25rem; } .mw-scribunto-console-fieldset input.console-control[type="checkbox"] { margin-left: 0.25rem; }"
css
text/css
.mw-scribunto-console-fieldset .console-control {
margin-right: 0.25rem;
}
.mw-scribunto-console-fieldset input.console-control[type="checkbox"] {
margin-left: 0.25rem;
}
fc574fe11f2de72f79465a968908d06459b3fda6
Category:Tracking categories
14
604
999
2024-03-23T21:00:57Z
BlackHawk
10
Created page with "[[Category:Maintenance categories|*]]"
wikitext
text/x-wiki
[[Category:Maintenance categories|*]]
15b31ba883345150763f12bbbf5fa84b08af63f3
MediaWiki:Gadget-markblocked
8
605
1000
2024-03-23T21:01:25Z
BlackHawk
10
Created page with "'''MarkBlocked''': Add a strikethrough for the names of users that have been blocked."
wikitext
text/x-wiki
'''MarkBlocked''': Add a strikethrough for the names of users that have been blocked.
27f57884220172d5d170676bb135cf0c7ace0bf4
MediaWiki:Gadget-markblocked.js
8
606
1001
2024-03-23T21:01:38Z
BlackHawk
10
Created page with "var markblocked_contributions = 'Special:Contributions'; mw.loader.load('//en.wikipedia.org/w/index.php?title=MediaWiki:Gadget-markblocked.js&bcache=1&maxage=259200&action=raw&ctype=text/javascript');"
javascript
text/javascript
var markblocked_contributions = 'Special:Contributions';
mw.loader.load('//en.wikipedia.org/w/index.php?title=MediaWiki:Gadget-markblocked.js&bcache=1&maxage=259200&action=raw&ctype=text/javascript');
d3cba065aaf8f47567bafe99cdecd8ca4bdfd8da
MediaWiki:Gadget-readableHistory
8
607
1002
2024-03-23T21:02:00Z
BlackHawk
10
Created page with "'''ReadableHistory''': Formats page histories (<code>?action=history</code>) into columns to make it more readable."
wikitext
text/x-wiki
'''ReadableHistory''': Formats page histories (<code>?action=history</code>) into columns to make it more readable.
214afcab1b1ca9f1ac90f3f9d2573cbebf0746d6
MediaWiki:Gadget-readableHistory.js
8
608
1003
2024-03-23T21:02:49Z
BlackHawk
10
Created page with "// <nowiki> // Formats rows on page histories into three columns to make it more readable; // essentially [[MediaWiki:Gadget-readableRC-core.js]], but for ?action=history // // @author Iiii_I_I_I (function (mw) { function runReadableHistory() { let container = document.querySelector('#pagehistory'); let revisions = document.querySelectorAll('.mw-contributions-list li'); container.classList.add('gadget-history-enabled'); revisions.for..."
javascript
text/javascript
// <nowiki>
// Formats rows on page histories into three columns to make it more readable;
// essentially [[MediaWiki:Gadget-readableRC-core.js]], but for ?action=history
//
// @author Iiii_I_I_I
(function (mw) {
function runReadableHistory() {
let container = document.querySelector('#pagehistory');
let revisions = document.querySelectorAll('.mw-contributions-list li');
container.classList.add('gadget-history-enabled');
revisions.forEach((revision) => cleanRevision(revision));
}
function cleanRevision(row) {
shortenRevisionDate(row);
shortenByteSize(row);
shortenUserLinks(row);
// first column: revision comparison buttons and date
// "() () [] 01:15, 09 May '11"
let dateContainer = document.createElement('div');
dateContainer.classList.add('gadget-history-dateoptions');
dateContainer.append(
check('input[name="oldid"]', row),
check('input[name="diff"]', row),
check('input[form="mw-history-revisionactions"]', row),
check('.mw-changeslist-date', row)
);
// second column: diff links and bytes
// "(cur|prev) (11,885) (+410)"
let diffContainer = document.createElement('div');
diffContainer.classList.add('gadget-history-diffinfo');
diffContainer.append(
check('.mw-history-histlinks', row),
check('.history-size', row),
check('.mw-diff-bytes:not(.history-size)', row),
check('.minoredit', row),
check('.mw-revdelundel-link', row)
);
// third column: user links, summary, undo, and Special:Tags
// "MrDew (t|c|b) (update max_melee1 and acc_melee1) (undo|thank)"
let userContainer = document.createElement('div');
userContainer.classList.add('gadget-history-userinfo');
userContainer.append(
check('.history-user', row),
check('.comment', row),
check('.mw-changeslist-links:not(.mw-usertoollinks)', row),
check('.mw-tag-markers', row)
);
// clear everything inside row
row.innerHTML = '';
// add new <td>s
row.append(dateContainer, diffContainer, userContainer);
}
// return element if it exists; if not, fail silently
// (unlike querySelector, which returns "null")
function check(selector, row) {
let element = row.querySelector(selector);
return (element) ? element : '';
}
// turns 09:05, 7 August 2023 -> 09:05, 07 Aug '23
function shortenRevisionDate(row) {
let timestamp = row.querySelector('.mw-changeslist-date:not(.history-deleted)');
let date = new Date(timestamp.textContent.split(', ')[1]);
date = date.toLocaleString('en-GB', { day: '2-digit', month: 'short', year: '2-digit' });
date = date.slice(0, 7) + "'" + date.slice(7);
timestamp.textContent = timestamp.textContent.split(', ')[0] + ', ' + date;
}
// turns (11,498 bytes) -> (11,498)
function shortenByteSize(row) {
let size = row.querySelector('.history-size');
// if page was blanked (shows "(empty)"), exit
if (size.dataset.mwBytes === '0') return;
size.textContent = size.textContent.slice(0, -6);
}
// turns (talk | contribs | block) -> (t|c|b)
function shortenUserLinks(row) {
// if username has been revdeled (shows "(username removed)"), exit
if (row.querySelector('.mw-userlink.history-deleted')) return;
// replace links with first letter of each link
let links = row.querySelectorAll('.mw-usertoollinks a');
links.forEach(link => link.textContent = link.textContent.slice(0, 1));
}
// innit
mw.hook('wikipage.content').add(function () {
runReadableHistory();
});
})(mediaWiki);
// </nowiki>
06660e3f6ac054d8ef1f6a2263d0dc56461c744e
MediaWiki:Gadget-readableHistory.css
8
609
1004
2024-03-23T21:03:17Z
BlackHawk
10
Created page with "/* revision rows */ .gadget-history-enabled .mw-contributions-list li { display: flex; gap: 1.25em; padding: .15em 0 !important; margin: .2em 0 !important; } /* first column */ .gadget-history-dateoptions { width: 190px; white-space: nowrap; } .gadget-history-dateoptions input { margin: 2px !important; } .gadget-history-dateoptions a.mw-changeslist-date { margin-left: 6px; } /* second column */ .gadget-history-diffinfo { width: 230px; white-space: nowrap;..."
css
text/css
/* revision rows */
.gadget-history-enabled .mw-contributions-list li {
display: flex;
gap: 1.25em;
padding: .15em 0 !important;
margin: .2em 0 !important;
}
/* first column */
.gadget-history-dateoptions {
width: 190px;
white-space: nowrap;
}
.gadget-history-dateoptions input {
margin: 2px !important;
}
.gadget-history-dateoptions a.mw-changeslist-date {
margin-left: 6px;
}
/* second column */
.gadget-history-diffinfo {
width: 230px;
white-space: nowrap;
}
.gadget-history-diffinfo .mw-diff-bytes {
margin-right: 5px;
}
/* third column */
.gadget-history-userinfo {
flex: 1;
}
.gadget-history-userinfo .history-user {
margin: 0 !important;
}
.gadget-history-userinfo > span + span {
margin-left: 5px;
}
/* pipe in link groups */
.gadget-history-enabled .mw-usertoollinks,
.gadget-history-enabled .mw-changeslist-links {
display: inline-flex;
}
.gadget-history-enabled .mw-changeslist-links > span:not(:first-child)::before {
content: '|';
padding: 0 .125em;
}
.gadget-history-enabled .mw-usertoollinks > span:not(:first-child)::before {
padding: 0 .075em;
}
/* truncate long IPv6 addresses */
.gadget-history-enabled .mw-anonuserlink {
display: inline-block;
overflow: hidden;
text-overflow: ellipsis;
vertical-align: bottom;
white-space: nowrap;
max-width: 17ch;
}
/* compact view */
@media screen and (max-width: 900px) {
.gadget-history-enabled .mw-contributions-list li {
display: block;
padding: .5em 0 !important;
border-bottom: 1px solid var(--tile-border-color) !important;
}
.gadget-history-dateoptions,
.gadget-history-diffinfo {
display: inline-block;
width: initial;
}
.gadget-history-diffinfo {
margin-left: .5em;
}
.gadget-history-userinfo {
display: block;
line-height: 1.5;
margin: .1em 0 0 4em;
}
}
4ac66e1c86b9bfba5f99106181a4a76cb7e774f1
MediaWiki:Gadget-readableRC
8
610
1005
2024-03-23T21:03:46Z
BlackHawk
10
Created page with "'''ReadableRC''': Formats [[Special:RecentChanges]] into columns to make it more readable. Requires "Group changes by page" to be enabled in the [[Special:Preferences#mw-prefsection-rc|"Recent changes" tab]]."
wikitext
text/x-wiki
'''ReadableRC''': Formats [[Special:RecentChanges]] into columns to make it more readable. Requires "Group changes by page" to be enabled in the [[Special:Preferences#mw-prefsection-rc|"Recent changes" tab]].
d8d27d6a8700547557e32b7fa5f9eb3286610c57
MediaWiki:Gadget-readableRC.js
8
611
1006
2024-03-23T21:04:08Z
BlackHawk
10
Created page with "// <nowiki> if (mw.config.get('wgPageName') == 'Special:RecentChanges') { mw.loader.load('ext.gadget.readableRC-core'); } // </nowiki>"
javascript
text/javascript
// <nowiki>
if (mw.config.get('wgPageName') == 'Special:RecentChanges') {
mw.loader.load('ext.gadget.readableRC-core');
}
// </nowiki>
f19ed0a5ced5b11b6ae435e9d7e094c03529589f
MediaWiki:Gadget-readableRC-core
8
612
1007
2024-03-23T21:04:34Z
BlackHawk
10
Created page with "'''ReadableRC-core''': Loaded by '''ReadableRC'''."
wikitext
text/x-wiki
'''ReadableRC-core''': Loaded by '''ReadableRC'''.
3b4a36fc746b0e1ab77753b48bb6f78cfc1c25eb
MediaWiki:Gadget-readableRC-core.css
8
613
1008
2024-03-23T21:09:10Z
BlackHawk
10
Created page with "/* padding between "Live updates" button and gadget */ .gadget-rc-button { margin-left: .5em; } /* diff row */ .gadget-rc-enabled .mw-changeslist-line { margin: .3em 0; line-height: 1.6; -webkit-hyphens: auto; -ms-hyphens: auto; hyphens: auto; } /* this is what makes most of it work */ .gadget-rc-enabled .mw-changeslist-line tbody > tr { display: flex; } /* pagename/log name column */ .gadget-rc-pagename, .gadget-rc-logname { width: 22vw; max-width: 350px;..."
css
text/css
/* padding between "Live updates" button and gadget */
.gadget-rc-button {
margin-left: .5em;
}
/* diff row */
.gadget-rc-enabled .mw-changeslist-line {
margin: .3em 0;
line-height: 1.6;
-webkit-hyphens: auto;
-ms-hyphens: auto;
hyphens: auto;
}
/* this is what makes most of it work */
.gadget-rc-enabled .mw-changeslist-line tbody > tr {
display: flex;
}
/* pagename/log name column */
.gadget-rc-pagename,
.gadget-rc-logname {
width: 22vw;
max-width: 350px;
margin-right: .5em;
}
@media screen and (max-width: 1000px) {
.gadget-rc-pagename,
.gadget-rc-logname {
width: 20vw;
}
}
.gadget-rc-logname {
font-weight: bold;
}
/* diff/hist column */
.gadget-rc-diff,
.gadget-rc-logdots {
width: 14vw;
max-width: 175px;
}
.gadget-rc-diff .mw-changeslist-separator {
display: none;
}
.gadget-rc-logdots .mw-changeslist-separator {
padding-left: .35em;
}
/* user description column */
.gadget-rc-userlinks,
.gadget-rc-logentry {
flex: 1;
margin-left: .5em;
}
/* limit height of certain types of pages to 2 lines */
.mw-changeslist-ns-828 .gadget-rc-userlinks, /* Module: */
.mw-changeslist-ns-120 .gadget-rc-userlinks, /* Transcript: */
.mw-changeslist-ns4-Counter-Vandalism_Unit_Data .gadget-rc-userlinks,
.mw-changeslist-log-newusers .gadget-rc-logentry /* user creation log */
{
display: -webkit-box;
-webkit-line-clamp: 2;
-webkit-box-orient: vertical;
overflow: hidden;
}
.gadget-rc-userlinks > * {
margin-right: .25em;
}
/* default is 95% for some reason */
.gadget-rc-enabled .changedby {
font-size: 100%;
}
.gadget-rc-enabled .mw-userlink {
font-weight: bold;
}
/* truncate long IPv6 addresses */
.gadget-rc-enabled .mw-anonuserlink {
display: inline-block;
overflow: hidden;
text-overflow: ellipsis;
text-transform: uppercase;
white-space: nowrap;
vertical-align: bottom;
max-width: 17ch;
}
/* user links */
.gadget-rc-enabled .mw-usertoollinks {
display: inline-flex;
}
.gadget-rc-enabled .mw-usertoollinks a {
padding: 0 .05em;
}
/* remove spaces around pipes in user links */
.gadget-rc-enabled .mw-usertoollinks > span:not(:first-child):before {
content: '|';
}
/* abusefilter tags */
.gadget-rc-enabled .mw-tag-markers,
.gadget-rc-enabled .mw-tag-markers a {
font-weight: normal;
}
/* fix alignment on nested rows */
.gadget-rc-enabled .gadget-rc-nested {
margin-left: 4.6em;
}
.gadget-rc-nested .gadget-rc-pagename {
margin-right: .75em;
}
.gadget-rc-nested .gadget-rc-userlinks {
margin-left: 2em;
}
.gadget-rc-nested .gadget-rc-logentry {
margin-left: 2.3em;
}
/* debold */
.gadget-rc-nested .gadget-rc-logname {
font-weight: normal;
}
c3fcc203769c0d08d14a90d7ccf86a5d46ef897a
MediaWiki:Gadget-readableRC-core.js
8
614
1009
2024-03-23T21:09:13Z
BlackHawk
10
Created page with "// <nowiki> // Formats the rows on Special:RecentChanges where all the information runs together // into three columns (page, diff/byte change, and user links) to make it more readable // // @author Iiii_I_I_I // // @TODO: support "Group changes by page" option being unchecked in Special:Preferences? (function ($, mw) { function runReadableRC($content) { if (!$content.hasClass('mw-changeslist')) { return; } $content.addClass('gad..."
javascript
text/javascript
// <nowiki>
// Formats the rows on Special:RecentChanges where all the information runs together
// into three columns (page, diff/byte change, and user links) to make it more readable
//
// @author Iiii_I_I_I
//
// @TODO: support "Group changes by page" option being unchecked in Special:Preferences?
(function ($, mw) {
function runReadableRC($content) {
if (!$content.hasClass('mw-changeslist')) {
return;
}
$content.addClass('gadget-rc-enabled');
var rows = document.querySelectorAll('.mw-changeslist-line, ' + // does not include grouped edits
'.mw-rcfilters-ui-highlights-enhanced-toplevel, ' + // first child in grouped edits
'.mw-rcfilters-ui-highlights-enhanced-nested'); // subsequent children in grouped edits
for (var i = 0; i < rows.length; i++) {
var row = rows[i];
// nested rows (only visible after expanding grouped edits)
if (row.classList.contains('mw-rcfilters-ui-highlights-enhanced-nested')) {
row.classList.add('gadget-rc-nested');
if (row.classList.contains('mw-changeslist-edit')) {
cleanNestedEdit(row);
}
else if (row.classList.contains('mw-changeslist-log')) {
cleanNestedLog(row);
}
}
// top-level rows (visible without uncollapsing any groups)
else {
// ignore parent element of grouped edits (text is in children, not container)
if (row.classList.contains('mw-collapsible')) {
continue;
}
// top-level row in grouped edits/log entries
if (row.classList.contains('mw-rcfilters-ui-highlights-enhanced-toplevel')) {
var parent = row.closest('.mw-collapsible');
if (parent.classList.contains('mw-changeslist-edit')) {
cleanMultipleEdits(row);
}
else if (parent.classList.contains('mw-changeslist-log')) {
cleanMultipleLogs(row);
}
}
// row for single edit/log entries
else {
if (row.classList.contains('mw-changeslist-edit')) {
cleanSingleEdit(row);
}
else if (row.classList.contains('mw-changeslist-log')) {
cleanSingleLog(row);
}
}
}
}
}
function insert(row, newNode, referenceNode) {
return row.querySelector(referenceNode).parentNode.insertBefore(row.querySelector(newNode), row.querySelector(referenceNode));
}
function wrap(referenceNode, wrapperEl, wrapperClass) {
var wrapper = document.createElement(wrapperEl);
referenceNode.parentNode.insertBefore(wrapper, referenceNode);
wrapper.appendChild(referenceNode);
wrapper.classList.add(wrapperClass);
}
function cleanNestedLog(row) {
// wrap "log name" (actually timestamp) together
wrap(row.querySelector('.mw-enhanced-rc-time'), 'td', 'gadget-rc-logname');
// placeholder column with separator dots
wrap(row.querySelector('.mw-changeslist-separator'), 'td', 'gadget-rc-logdots');
cleanUserLinks(row);
// rename <td>
row.querySelector('td.mw-enhanced-rc-nested').className = 'gadget-rc-logentry';
// rearrange newly created <td>s
insert(row, '.gadget-rc-logname', '.gadget-rc-logentry');
insert(row, '.gadget-rc-logdots', '.gadget-rc-logentry');
}
function cleanNestedEdit(row) {
// wrap "page name" (actually revision links) together
wrap(row.querySelector('.mw-enhanced-rc-time'), 'td', 'gadget-rc-pagename');
// remove two dot separators
row.querySelector('.mw-changeslist-separator').remove();
row.querySelector('.mw-changeslist-separator').remove();
// wrap user stuff together
$('.mw-userlink, .mw-usertoollinks, .comment, .mw-rollback-link, .mw-tag-markers, .history-deleted', row).wrapAll('<td class="gadget-rc-userlinks" />');
cleanUserLinks(row);
// "rollback x edit(s)" -> "rollback"
// link does not exist if it is a page creation or user does not have the right
if (row.querySelector('.mw-rollback-link')) {
row.querySelector('.mw-rollback-link a').textContent = 'rollback';
}
// rename <td>
row.querySelector('td.mw-enhanced-rc-nested').className = 'gadget-rc-diff';
// rearrange newly created <td>s
insert(row, '.gadget-rc-userlinks', '.gadget-rc-diff');
insert(row, '.gadget-rc-pagename', '.gadget-rc-userlinks');
insert(row, '.gadget-rc-diff', '.gadget-rc-userlinks');
}
function cleanMultipleLogs(row) {
// log name
wrap(row.querySelector('.mw-rc-unwatched'), 'td', 'gadget-rc-logname');
// remove square brackets from grouped usernames; cannot simply use remove()
// since there might be other text in the same node, eg. "(4×)]"
var users = row.querySelector('.changedby').childNodes;
users[0].textContent = users[0].textContent.slice(1); // [
users[users.length - 1].textContent = users[users.length - 1].textContent.slice(0, -1); // ]
// placeholder column with separator dots
wrap(row.querySelector('.mw-changeslist-separator'), 'td', 'gadget-rc-logdots');
// rename <td>
row.querySelector('.mw-changeslist-line-inner').className = 'gadget-rc-logentry';
// rearrange newly created <td>s
insert(row, '.gadget-rc-logname', '.gadget-rc-logentry');
insert(row, '.gadget-rc-logdots', '.gadget-rc-logentry');
// stupid empty node
row.querySelector('.gadget-rc-logentry').childNodes[0].remove();
}
function cleanMultipleEdits(row) {
// page name
wrap(row.querySelector('.mw-title'), 'td', 'gadget-rc-pagename');
// "x changes" -> "diff"
if (row.querySelector('.mw-changeslist-groupdiff')) {
row.querySelector('.mw-changeslist-groupdiff').textContent = 'diff';
}
// new pages have a text node instead of a link
else {
row.querySelector('.mw-changeslist-links span:first-child').textContent = 'diff';
}
// "history" -> "hist"
if (row.querySelector('.mw-changeslist-history')) {
row.querySelector('.mw-changeslist-history').textContent = 'hist';
}
// nonexistent pages (redirect-suppressed move or deleted) have a text node instead of a link
else {
var newHist = row.querySelector('.mw-changeslist-line-inner').childNodes[4].nodeValue.replace('history', 'hist');
row.querySelector('.mw-changeslist-line-inner').childNodes[4].nodeValue = newHist;
}
// list of user(s)
wrap(row.querySelector('.changedby'), 'td', 'gadget-rc-userlinks');
// remove square brackets from grouped usernames; cannot simply use remove()
// since there might be other text in the same node, eg. "(4×)]"
var users = row.querySelector('.changedby').childNodes;
users[0].textContent = users[0].textContent.slice(1); // [
users[users.length - 1].textContent = users[users.length - 1].textContent.slice(0, -1); // ]
// rename <td>
row.querySelector('.mw-changeslist-line-inner').className = 'gadget-rc-diff';
// rearrange newly created <td>s
insert(row, '.gadget-rc-userlinks', '.gadget-rc-diff');
insert(row, '.gadget-rc-pagename', '.gadget-rc-userlinks');
insert(row, '.gadget-rc-diff', '.gadget-rc-userlinks');
}
function cleanSingleLog(row) {
// log name
wrap(row.querySelector('.mw-changeslist-line-inner-logLink'), 'td', 'gadget-rc-logname');
// placeholder column with separator dots
wrap(row.querySelector('.mw-changeslist-line-inner-separatorAfterLinks'), 'td', 'gadget-rc-logdots');
cleanUserLinks(row);
// rename <td>
row.querySelector('.mw-changeslist-line-inner').className = 'gadget-rc-logentry';
// rearrange newly created <td>s
insert(row, '.gadget-rc-logname', '.gadget-rc-logentry');
insert(row, '.gadget-rc-logdots', '.gadget-rc-logentry');
}
function cleanSingleEdit(row) {
// page name
wrap(row.querySelector('.mw-title'), 'td', 'gadget-rc-pagename');
// "rollback x edit(s)" -> "rollback"
// link does not exist if it is a page creation or user does not have the right
if (row.querySelector('.mw-rollback-link')) {
row.querySelector('.mw-rollback-link a').textContent = 'rollback';
}
// user info
$('.mw-userlink, .mw-usertoollinks, .comment, .mw-rollback-link, .mw-tag-markers, .history-deleted', row).wrapAll('<td class="gadget-rc-userlinks" />');
cleanUserLinks(row);
// rename <td>
row.querySelector('.mw-changeslist-line-inner').className = 'gadget-rc-diff';
// rearrange newly created <td>s
insert(row, '.gadget-rc-userlinks', '.gadget-rc-diff');
insert(row, '.gadget-rc-pagename', '.gadget-rc-userlinks');
insert(row, '.gadget-rc-diff', '.gadget-rc-userlinks');
}
// (talk | contribs | block) -> (t|c|b)
// possible variations: (talk), (talk | contribs), (talk | block), (talk | contribs | block), (username removed)
function cleanUserLinks(row) {
// if username has been revdeled (shows "(username removed)"), then exit
if (row.querySelector('.history-deleted')) {
return;
}
row.querySelector('.mw-usertoollinks-talk').textContent = 't';
// IPs don't have dedicated contribs link - it's linked in their username
if (row.querySelector('.mw-usertoollinks-contribs')) {
row.querySelector('.mw-usertoollinks-contribs').textContent = 'c';
}
// non-admins don't have block link
if (row.querySelector('.mw-usertoollinks-block')) {
row.querySelector('.mw-usertoollinks-block').textContent = 'b';
}
}
function init() {
var info = new OO.ui.PopupButtonWidget({
classes: ['gadget-rc-button'],
framed: false,
label: 'Broken?',
popup: {
head: true,
label: 'Is the RecentChanges layout broken?',
$content: $("<p><a href='/w/MediaWiki:Gadget-readableRC-core.js'>ReadableRC</a>, which formats this " +
"page into columns, might have an error. If something looks wrong, disable this gadget in " +
"your preferences and report the issue to <a href='/w/User_talk:Iiii_I_I_I'>Iiii I I I</a>.</p>"),
padded: true,
align: 'force-right',
hideCloseButton: true
}
})
mw.hook('structuredChangeFilters.ui.initialized').add(function () {
runReadableRC($('.mw-changeslist'));
mw.hook('wikipage.content').add(runReadableRC);
$('.mw-rcfilters-ui-liveUpdateButtonWidget').append(info.$element);
});
}
$(init);
})(jQuery, mediaWiki);
// </nowiki>
c45f421d76021394854fc3838e5c17502a4ba6db
MediaWiki:Gadgets-definition
8
6
1010
978
2024-03-23T21:13:46Z
BlackHawk
10
wikitext
text/x-wiki
This page contains the definitions for all gadgets on the wiki. In most cases, code that could be placed in Common.js should be made into a module here instead for granularity and better support for mobile, etc.
Edits to this page should be done with care. When targeting a gadget for mobile, ensure that the gadget '''works''' on mobile properly by debugging it on mobile devices. Some mobile devices do not allow JavaScript to run, or do not run it by default, so there should always be a fallback option for those that do not have JS enabled. For scripts that are intended for use on a lot of pages, it may be a good idea to propose it on the [[Forum:Forum Grove|Yew Grove]] first. Gadgets which can be enabled/disabled by the user (on [[Special:Preferences#mw-prefsection-gadgets|Special:Preferences]]) should have a description created on ''Mediawiki:Gadget-gadgetname''.
==Core==
* autocollapse[ResourceLoader|type=general|default|hidden|dependencies=mediawiki.Uri]|autocollapse.js
* autosort[ResourceLoader|type=general|dependencies=ext.gadget.bsw-util,ext.gadget.highlightTable|targets=desktop,mobile|default]|autosort.js
* bsw-util[ResourceLoader|dependencies=mediawiki.util|targets=desktop,mobile|type=general|default|hidden]|bsw-util.js
* InstantCollapsible[ResourceLoader|default|hidden|dependencies=jquery.makeCollapsible|type=general]|InstantCollapsible.js
* Less[ResourceLoader|rights=editinterface|dependencies=mediawiki.api|type=general|default|hidden]|Less.js
* navboxToggle[ResourceLoader|targets=mobile|dependencies=ext.gadget.bsw-util|type=general|default|hidden]|navboxToggle.js
* titleparenthesis[ResourceLoader|actions=view|type=general|default|hidden]|titleparenthesis.js|titleparenthesis.css
* tooltips[ResourceLoader|type=general|default|hidden]|tooltips.js
* uncheckfileredirects[ResourceLoader|type=general|rights=suppressredirect|default|hidden]|UncheckFileRedirect.js
==Tools==
* batchupload[ResourceLoader|type=general|default|hidden|dependencies=mediawiki.util|rights=upload]|batchupload.js
* contributions[ResourceLoader|type=general|default|dependencies=ext.gadget.bsw-util]|contributions.js
* dropdown[ResourceLoader|type=general|dependencies=mediawiki.util,mediawiki.api|default]|dropdown.js
* editCount[ResourceLoader|type=general|dependencies=ext.gadget.bsw-util]|editCount.js
* ezcopy[ResourceLoader|type=general|targets=desktop]|ezcopy.js|ezcopy.css
* hotcat[ResourceLoader|rights=upload|type=general]|hotcat.js
* Message-names[ResourceLoader|rights=editinterface|type=general|dependencies=mediawiki.util]|Message-names.js
* newPage[ResourceLoader|default|type=general|dependencies=ext.gadget.bsw-util|rights=createpage]|newPage.js
* purge[ResourceLoader|default|type=general|dependencies=ext.gadget.bsw-util,ext.smw.purge,mediawiki.api|hidden]|purge.js
* QuickDiff[ResourceLoader|type=general|dependencies=mediawiki.Uri,mediawiki.util]|QDmodal.js|QuickDiff.js|QDmodal.css
* ReferenceTooltips[ResourceLoader|default|actions=view|type=general|dependencies=ext.gadget.bsw-util]|ReferenceTooltips.js|ReferenceTooltips.css
* scribunto-console[ResourceLoader|actions=edit|type=general|default]|scribunto-console.js
* scribunto-console-core[ResourceLoader|type=general|hidden]|scribunto-console-core.js|scribunto-console.css
* sectionAnchors[ResourceLoader|type=general|default]|sectionAnchors.js|sectionAnchors.css
==Appearance==
* colorRC[ResourceLoader|type=styles|targets=desktop,mobile]|colorRC.css
* falseSubpage[ResourceLoader|type=general|default|hidden]|falseSubpage.js
* markblocked[ResourceLoader|type=general]|markblocked.js
* readableHistory[ResourceLoader|type=general|actions=history]|readableHistory.js|readableHistory.css
* readableRC[ResourceLoader|type=general]|readableRC.js
* readableRC-core[ResourceLoader|type=general|dependencies=oojs-ui-core|hidden]|readableRC-core.js|readableRC-core.css
==Other==
* gadgetLinks[ResourceLoader|type=general|default]|gadgetLinks.js
a33d0f9a14b95bf367d20304c4357267f54e7483
File:Signature button.png
6
615
1011
2024-03-23T21:18:37Z
BlackHawk
10
wikitext
text/x-wiki
da39a3ee5e6b4b0d3255bfef95601890afd80709
File:Foraging.jpg
6
617
1013
2024-03-23T21:25:34Z
Habblet
11
{{Fair use|link=https://cdn.cloudflare.steamstatic.com/steam/apps/2791440/ss_5ff5f0954896d8bc8893f977ede5ce06fe88cc45.jpg?t=1710756596}}
wikitext
text/x-wiki
== Summary ==
{{Fair use|link=https://cdn.cloudflare.steamstatic.com/steam/apps/2791440/ss_5ff5f0954896d8bc8893f977ede5ce06fe88cc45.jpg?t=1710756596}}
0afcd6926c8dc428b5b132379d394d393baa72cd
Forager
0
59
1014
214
2024-03-23T21:26:23Z
Habblet
11
wikitext
text/x-wiki
[[File:Foraging.jpg|thumb|right|Some players foraging.]]
'''Forager''' is a type of [[professions|profession]].
{{Professions}}
2afc42626fde5df0870eb363ae36134e45a68106
Template:Retake image
10
618
1015
2024-03-23T21:33:48Z
Habblet
11
Created page with "{{MessageBox |class = file |img = [[File:Information icon.svg|centre|32px|link=]] | This file has a flaw in the captured content and needs to be retaken. | Files [[:Category:Images needing to be retaken|like these]] should be recaptured in order to meet the Brighter Shores Wiki's [[Brighter Shores:Images and media policy|quality standards]]. Please see the [[Brighter Shores:Image Maintenance|Image maintenance project]] page for more information.{{#if:{{{1|}}}|<br/>A nota..."
wikitext
text/x-wiki
{{MessageBox
|class = file
|img = [[File:Information icon.svg|centre|32px|link=]]
| This file has a flaw in the captured content and needs to be retaken.
| Files [[:Category:Images needing to be retaken|like these]] should be recaptured in order to meet the Brighter Shores Wiki's [[Brighter Shores:Images and media policy|quality standards]]. Please see the [[Brighter Shores:Image Maintenance|Image maintenance project]] page for more information.{{#if:{{{1|}}}|<br/>A notable flaw is '''{{{1|}}}'''}}
}}{{Fileonly|[[Category:Images needing to be retaken]]}}<noinclude>{{/doc}}</noinclude>
0b68b673417d5bebdebe7ce12413be6d598cbe37
Template:Retake image/doc
10
619
1016
2024-03-23T21:34:11Z
Habblet
11
Created page with "{{Documentation}} This template displays a notification that an image does not meet the wiki's [[Brighter Shores:Images and media policy|quality standards]] and should be retaken. It automatically adds [[:Category:Images needing to be retaken]] to the page. ==Usage== {{T|Retake image}}<br/> {{T|Retake}} {{Retake image}} {{TemplateData|<templatedata> { "description": "This template displays a notification that an image should be retaken.", "params": { "1": { "d..."
wikitext
text/x-wiki
{{Documentation}}
This template displays a notification that an image does not meet the wiki's [[Brighter Shores:Images and media policy|quality standards]] and should be retaken. It automatically adds [[:Category:Images needing to be retaken]] to the page.
==Usage==
{{T|Retake image}}<br/>
{{T|Retake}}
{{Retake image}}
{{TemplateData|<templatedata>
{
"description": "This template displays a notification that an image should be retaken.",
"params": {
"1": {
"description": "A notable flaw of the image.",
"type": "string",
"suggested": true,
"label": "Image's flaw"
}
},
"format": "inline"
}
</templatedata>}}
<includeonly>[[Category:Image templates|{{PAGENAME}}]]</includeonly>
fb7326ef8d7a6dec7354cd6994a3bc92d20b527b
Category:Image templates
14
620
1017
2024-03-23T21:34:31Z
Habblet
11
Created page with "{{Categoryheader|templates|placing special tags on images||}} [[Category:Templates]]"
wikitext
text/x-wiki
{{Categoryheader|templates|placing special tags on images||}}
[[Category:Templates]]
bea99e1dfb6678f00761033b56d61e1a35ca5dd9
Template:Retake
10
621
1018
2024-03-23T21:34:46Z
Habblet
11
Redirected page to [[Template:Retake image]]
wikitext
text/x-wiki
#REDIRECT [[Template:Retake image]]
ae5a607e4401d598c97d69f3dcbbeeae3d282471
File:Sneaky Thief.png
6
622
1019
2024-03-23T21:35:09Z
Habblet
11
{{NPC license|Sneaky Thief}}
{{Retake|Needs idle shot}}
wikitext
text/x-wiki
== Summary ==
{{NPC license|Sneaky Thief}}
{{Retake|Needs idle shot}}
329d62ab9d44546954c6ff9c684d457dfff5e291
Category:Images needing to be retaken
14
623
1020
2024-03-23T21:36:01Z
Habblet
11
Created page with "{{Categoryheader|images|those that need to be retaken|yes|[[Template:Retake image]]}} [[Category:Maintenance categories]]"
wikitext
text/x-wiki
{{Categoryheader|images|those that need to be retaken|yes|[[Template:Retake image]]}}
[[Category:Maintenance categories]]
8a41f07911c6fa2c28d8560903ae54a23db1307b
Sneaky Thief
0
100
1021
245
2024-03-23T21:36:45Z
Habblet
11
wikitext
text/x-wiki
[[File:Sneaky Thief.png|200px|right]]
'''Sneaky Thieves''' are a type of monster. They have 1,100 health.
[[Category:Monsters]]
ebf3ddffaaf24ccb19451dadb875482f7607a4ad
Special attacks
0
624
1022
2024-03-23T21:37:49Z
Habblet
11
Created page with "'''Special attacks''' are a mechanic that is part of the [[combat]] system. [[Category:Combat]] [[Category:Mechanics]]"
wikitext
text/x-wiki
'''Special attacks''' are a mechanic that is part of the [[combat]] system.
[[Category:Combat]]
[[Category:Mechanics]]
df8f1854f73854bb2575a31e278eb5e73d69651d
Category:Combat
14
625
1023
2024-03-23T21:38:34Z
Habblet
11
Created page with " [[Category:Content]]"
wikitext
text/x-wiki
[[Category:Content]]
f0862228d83b1c3b88413847402b23e597fab110
Combat
0
191
1024
823
2024-03-23T21:40:05Z
Habblet
11
wikitext
text/x-wiki
[[File:Equipment.jpg|thumb|right|A preview of player in combat.]]
'''Combat''' is a mechanic in [[Brighter Shores]] in which several [[player]]s or [[monsters]] fight. Depending on the [[class]] that is being used, player combat can utilise melee, ranged, or magic.
[[Special attacks]] are a feature of the combat system.
{{Mechanics}}
73085f33a384dc452b4b9cbe3a82fe8fadddc94a
1026
1024
2024-03-23T21:44:18Z
Habblet
11
wikitext
text/x-wiki
[[File:Equipment.jpg|thumb|right|A preview of player in combat.]]
[[File:Combat 2.jpg|thumb|right|Another preview of player in combat.]]
'''Combat''' is a mechanic in [[Brighter Shores]] in which several [[player]]s or [[monsters]] fight. Depending on the [[class]] that is being used, player combat can utilise melee, ranged, or magic.
[[Special attacks]] are a feature of the combat system.
{{Mechanics}}
371f3d30660aedd0e95528c67bee980616ea1792
File:Combat.jpg
6
626
1025
2024-03-23T21:42:33Z
Habblet
11
{{Fair use|link=https://cdn.cloudflare.steamstatic.com/steam/apps/2791440/ss_a67ce8ed2d32a531442c893007a881215c4648b8.jpg?t=1710756596}}
wikitext
text/x-wiki
== Summary ==
{{Fair use|link=https://cdn.cloudflare.steamstatic.com/steam/apps/2791440/ss_a67ce8ed2d32a531442c893007a881215c4648b8.jpg?t=1710756596}}
f2da26bdcf62a64e1ae9e8a8ab4c5c03f2f13294
File:Wailing Shade.png
6
627
1027
2024-03-23T21:45:24Z
Habblet
11
{{NPC license|Wailing Shade}}
{{Retake|Needs idle shot}}
wikitext
text/x-wiki
== Summary ==
{{NPC license|Wailing Shade}}
{{Retake|Needs idle shot}}
1a572e31e83eb4e3dd5d2edd6a449272c334236e
Template:Navbox/doc
10
103
1028
708
2024-03-23T21:45:38Z
BlackHawk
10
wikitext
text/x-wiki
{{documentation|Template:Navbox}}
{{invokes|Navbox|category=No}}<!----Do not add this category to *every* navbox
added explicitly to {{Navbox}} at the end of documentation----->
__TOC__<!--Needed to prevent TOC appearing in the navbox itself if it has a heading.-->
==Usage==
This template can be used to make a standard navigation box. It is intended for use within another template that standardises the title and contents of the box (see [[Template:Rune equipment]]). This template should not be used directly within articles, as it creates a maintenance burden to do so whenever the contents of the box have to be updated.
==Syntax==
<pre>
{{Navbox
|state = uncollapsed, collapsed, plain, autocollapse (default)
|name = mandatory - name of the template
|style = optional - style for the whole table
|title = mandatory - navbox header
|gtitleN = optional - title of N-th group of items
|styleN = optional - style for groupN; i.e. text-align
|groupN = mandatory - list of groups of items
|fstyle = optional - style for footer ; i.e. text-align
|footer = optional - navbox footer
}}
</pre>
* '''Groups:'''
** Groups of items can be added as parameters: ''group1'', ''group2'', ''group3'', ... up to ''groupN''.
* '''Group title:''' Each group has its own title parameter: ''gtitle1'', ''gtitle2'', ''gtitle3'', ... up to ''gtitleN''.
* '''Group style:''' Style may also be customised to each group in: ''style1'', ''style2'', ''style3'', ... up to ''styleN''.
* '''Superscript:''' It is preferred to use superscript (<code><nowiki><sup></nowiki></code>) to denote variants of items that are already contained in the navbox.
* '''Bullets:''' Create unordered lists with lines beginning with *.
==States==
* '''Autocollapse:''' By default, the state of a navbox is "autocollapsed". This means that if the number of navboxes in a page exceeds the maximum allocation of the collapsible navboxes, then the remaining navboxes are collapsed automatically. For more information (or to change the setting), see [[MediaWiki:Gadget-autocollapse.js]].
** Currently, the ''autocollapse'' allocation is '''<span style="color:red">2</span>'''. This means that if there are 3 navboxes in a page, the third and subsequent navboxes will be collapsed automatically.
* '''Uncollapsed:''' Forces the navbox to be displayed.
* '''Collapsed:''' The reverse of ''uncollapsed''. Forces the navbox to be hidden instead.
** Navboxes with a height of more than 300 pixels will also be collapsed automatically. For more information (or to change the setting), see [[MediaWiki:Gadget-autocollapse.js]].
* '''Plain:''' Removes the "show/hide" link.
==Sub-groups==
* For larger navboxes, it may be necessary to include sub-groups within a particular group of items. It is also possible to collapsible navboxes within the parent navbox, see [[#Collapsible sub-groups|Collapsible sub-groups]].
* To create sub-groups within <code><nowiki>{{Navbox}}</nowiki></code>, certain parameters are to be included:
** The parent navbox group (i.e. ''group2'' in the example below) requires the type parameter (''gtype2 = subgroup'').
** The nested navbox (sub-group) requires the inclusion of the sub-group parameter (''subgroup = yes''). This enables the template to differentiate between the sub-group and the parent navbox.
<pre>{{Navbox
|name =
|title =
|gtitle1 =
|group1 =
|gtitle2 =
|gtype2 = subgroup (mandatory)
|group2 =
{{Navbox
|subgroup = yes (mandatory)
|gtitle1 =
|group1 =
|gtitle2 =
|group2 =
}}
}}</pre>
==Collapsible sub-groups==
* For extremely long navboxes, it is recommended to use collapsible navboxes within the parent navbox. Further sub-groups can then be added to these collapsible navboxes.
* To create collapsible sub-groups within <code><nowiki>{{Navbox}}</nowiki></code>, these parameters need to be included:
** The parent navbox is almost always uncollapsed (''state=uncollapsed'').
** The parent navbox group (i.e. ''group1'' in the example below) requires the type parameter (''gtype1 = subgroup'').
** The nested collapsible navbox requires the inclusion of the collapsible parameter (''collapsible = yes''). This enables the template to differentiate between the collapsible navbox and the parent navbox.
** The nested collapsible navbox is forcefully collapsed (''state=collapsed'').
<pre>{{Navbox
|state = uncollapsed
|name =
|gtype1 = subgroup
|group1 =
{{Navbox
|collapsible = yes
|state = collapsed
|title =
|gtitle1 =
|group1 =
|gtitle2 =
|group2 =
}}
}}</pre>
==Use of images==
* The use of images in navboxes is permitted, but please resize the images to keep them small. Inventory-sized images (25-30 pixels) are recommended.
** Use {{t|plink}} to create links with images.
** Use {{t|plinkp}} for any case where text is not desired after the link.
** Use {{t|chatl}} to link chatheads.
** Use {{t|Emote link}} to link emote icons.
* Avoid using images in the main header of the navbox.
Link and file share the same name
<pre>{{plink|Item}}</pre>
File name differs from the link
<pre>{{plink|Item|pic=File}}</pre>
Link and file share the same name, but different text is desired to display
<pre>{{plink|Item|txt=Text}}</pre>
File name differs from the link and different text is desired to display
<pre>{{plink|Item|pic=File|txt=Text}}</pre>
{|class="wikitable"
|+ Examples
!Code
!Standard syntax
|-
|<code><nowiki>{{plink|Abyssal whip}}</nowiki></code>
|<code><nowiki>[[File:Abyssal whip.png|link=Abyssal whip]] [[Abyssal whip]]</nowiki></code>
|-
|<code><nowiki>{{plink|Granite maul|pic=Abyssal whip}}</nowiki></code>
|<code><nowiki>[[File:Abyssal whip.png|link=Granite maul]] [[Granite maul]]</nowiki></code>
|-
|<code><nowiki>{{plink|Abyssal whip|txt=Whip}}</nowiki></code>
|<code><nowiki>[[File:Abyssal whip.png|link=Abyssal whip]] [[Abyssal whip|Whip]]</nowiki></code>
|-
|<code><nowiki>{{plink|Granite maul|pic=Abyssal whip|txt=Whip}}</nowiki></code>
|<code><nowiki>[[File:Abyssal whip.png|link=Granite maul]] [[Granite maul|Whip]]</nowiki></code>
|-
|<code><nowiki>{{plinkp|Abyssal whip}}</nowiki></code>
|<code><nowiki>[[File:Abyssal whip.png|link=Abyssal whip]]</nowiki></code>
|-
|<code><nowiki>{{plinkp|Granite maul|pic=Abyssal whip}}</nowiki></code>
|<code><nowiki>[[File:Abyssal whip.png|link=Granite maul]]</nowiki></code>
|-
|}
==Categorising==
Navboxes are useful for transcluding categories onto a large number of pages that share both a trait and the navigation box. For example: [[Template:Rune equipment]] transcludes [[:Category:Rune]] onto every page that uses it.
There are 2 methods of categorising pages with navboxes:
The preferred method is to use '''{{t|Ctg}}'''. This has the most simple rules but is the easiest to use.
The other method is to use '''{{t|Mainonly|rules}}''' and provide more complex rules with parser functions. [[Template:Potions]] is an example of this:
<pre>
{{mainonly|{{#ifeq:{{lc:{{#sub:{{PAGENAME}}|-3}}}}|mix|[[Category:Barbarian mixes]]}}}}
</pre>
This code tells the template to add [[:Category:Barbarian mixes]] to pages only if their title ends with the string "mix". <code><nowiki>{{ctg|Barbarian mixes::ifmatches[mix]}}</nowiki></code> would '''not''' work here, because several pages include the substring "mix" in other locations, and they would be improperly categorised.
Categorisation should only be used on a template for large-scale addition. For small numbers of pages it is simpler to directly add the category to each page.
==Examples==
{{#ifeq:{{BASEPAGENAME}}|Navbox||To see the following navboxes in action, see [[Template:Navbox]].}}
===Single line navbox with centered list===
{{#ifeq:{{BASEPAGENAME}}|Navbox|{{Navbox
|state = uncollapsed
|name = Navbox
|title = [[Brighter Shores:Sandbox|Single line navbox]]
|style1 = text-align:center
|group1 =
* Lorem ipsum dolor sit amet
* Consectetur adipisicing elit
* sed do eiusmod tempor incididunt ut labore et dolore magna aliqua
}}}}
<pre>{{Navbox
|name =
|title =
|style1 = text-align:center
|group1 =
}}</pre>
===Navbox with standard footer===
{{#ifeq:{{BASEPAGENAME}}|Navbox|<!--
-->{{Navbox
|state = uncollapsed
|name = Navbox
|title = [[Brighter Shores:Sandbox|Navbox with footer]]
|style1 = text-align:center
|group1 =
* Lorem ipsum dolor sit amet
* Consectetur adipisicing elit
* sed do eiusmod tempor incididunt ut labore et dolore magna aliqua
|footer = Centered footer
}}}}
<pre>{{Navbox
|name =
|title =
|gtitle1 =
|group1 =
|footer = Centered footer
}}</pre>
===Navbox with styled footer===
{{#ifeq:{{BASEPAGENAME}}|Navbox|<!--
-->{{Navbox
|state = uncollapsed
|name = Navbox
|title = [[Brighter Shores:Sandbox|Navbox with footer]]
|style1 = text-align:center
|group1 =
* Lorem ipsum dolor sit amet
* Consectetur adipisicing elit
* sed do eiusmod tempor incididunt ut labore et dolore magna aliqua
|fstyle = text-align:right
|footer = Right-aligned footer
}}}}
<pre>{{Navbox
|name =
|title =
|gtitle1 =
|group1 =
|fstyle = text-align:right
|footer = Right-aligned footer
}}</pre>
===Multiple line navbox===
{{#ifeq:{{BASEPAGENAME}}|Navbox|<!--
-->{{Navbox
|state = uncollapsed
|name = Navbox
|title = [[Brighter Shores:Sandbox|Multiple line navbox]]
|gtitle1 = Group title 1
|group1 = Lorem ipsum dolor sit amet...
|gtitle2 = Group title 2
|group2 = Consectetur adipisicing elit...
|gtitle3 = Group title 3
|group3 = Sed do eiusmod tempor incididunt ut labore et dolore magna aliqua.
}}}}
<pre>{{Navbox
|name =
|title =
|gtitle1 = Group title 1
|group1 =
|gtitle2 = Group title 2
|group2 =
|gtitle3 = Group title 3
|group3 =
}}</pre>
===Collapsed navbox===
{{#ifeq:{{BASEPAGENAME}}|Navbox|<!--
-->{{Navbox
|state = collapsed
|name = Navbox
|title = [[Brighter Shores:Sandbox|Collapsed navbox]]
|style1 = text-align:center
|group1 = Lorem?
}}}}
<pre>{{Navbox
|state = collapsed
|name =
|title =
|style1 = text-align:center
|group1 =
}}</pre>
===Plain navbox with Tnavbar===
{{#ifeq:{{BASEPAGENAME}}|Navbox|<!--
-->{{Navbox
|state = plain
|name = Navbox
|title = [[Brighter Shores:Sandbox|Plain navbox with Tnavbar]]
|style1 = text-align:center
|group1 = [<small>[[Brighter Shores:Sandbox|show]]</small>]/[<small>[[Brighter Shores:Sandbox|hide]]</small>] links hidden (see Top-right corner).
}}}}
<pre>{{Navbox
|state = plain
|name =
|title =
|style1 = text-align:center
|group1 =
}}</pre>
===Plain navbox without Tnavbar===
{{#ifeq:{{BASEPAGENAME}}|Navbox|<!--
-->{{Navbox
|state = plain
|title = [[Brighter Shores:Sandbox|Plain navbox without Tnavbar]]
|style1 = text-align:center
|group1 = [<small>[[Brighter Shores:Sandbox|show]]</small>]/[<small>[[Brighter Shores:Sandbox|hide]]</small>] links hidden (see Top-right corner).<br><small>[[Brighter Shores:Sandbox|v]] {{*}} [[Brighter Shores:Sandbox|d]] {{*}} [[Brighter Shores:Sandbox|e]]</small> links also hidden (see Top-left corner). This is done by removing the ''name'' parameter.
}}}}
<pre>{{Navbox
|state = plain
|title =
|style1 = text-align:center
|group1 =
}}</pre>
===Complicated navbox===
{{#ifeq:{{BASEPAGENAME}}|Navbox|<!--
-->{{Navbox
|state = uncollapsed
|name = Navbox
|title = [[Brighter Shores:Sandbox|Complicated navbox]]
|gtitle1 = Level 1 Title 1
|group1 = Lorem ipsum dolor sit amet, consectetur adipiscing elit. Nulla eu sem eget nisi bibendum viverra a eget leo. Integer velit arcu, accumsan vel rhoncus eget, auctor a tellus. Nullam mollis turpis sollicitudin justo hendrerit ac volutpat nibh placerat.
|gtitle2 = Level 1 Title 2
|group2 = Curabitur posuere vestibulum dolor, quis faucibus justo tristique in. Nulla facilisi. Nunc iaculis erat nec ligula rutrum vel porta dolor posuere. Maecenas venenatis sapien id sapien pellentesque mollis.
|gtitle3 = Level 1 Title 3
|group3 = Sed ac sapien risus, in pharetra purus.
|gtitle4 = Level 1 Title 4
|group4 = Curabitur eu metus elit, a eleifend est. Aliquam vestibulum mollis metus, ut facilisis justo tincidunt non. Donec vel felis ut purus molestie facilisis consectetur a est. Nulla velit nisi, aliquet at condimentum non, varius ac nibh. Praesent fringilla nisi nibh. Morbi quis dapibus nulla.
|gtitle5 = Level 1 Title 5
|gtype5 = subgroup
|group5 =
{{Navbox
|subgroup = yes
|gtitle1 = Level 2 Title 1
|group1 = Nam cursus, leo sit amet congue porttitor, ante ligula mattis ante, ut rhoncus nisi augue eget mi. Etiam scelerisque, nunc et sagittis consequat, augue turpis gravida massa, quis blandit lectus orci vel sem.
|gtitle2 = Level 2 Title 2
|group2 = Aliquam tortor est, luctus et consectetur eget, dapibus lobortis ante.
|gtitle3 = Level 2 Title 3
|gtype3 = subgroup
|group3 =
{{Navbox
|subgroup = yes
|gtitle1 = Level 3 Title 1
|group1 = Vestibulum ante ipsum primis in faucibus orci luctus et ultrices posuere cubilia Curae; Vestibulum eu lacus ut sapien tristique fringilla tincidunt vitae risus.
|gtitle2 = Level 3 Title 2
|group2 = Donec in libero lorem. Vestibulum consequat tincidunt imperdiet.
}}
|gtitle4 = Level 2 Title 4
|group4 = Vivamus odio mi, ullamcorper vitae rutrum sed, bibendum vel mauris. Proin sed libero ac sapien pellentesque dapibus. Nulla et ipsum libero. Integer vitae euismod eros. Ut enim purus, consectetur congue fermentum nec, pharetra non dui. Mauris mollis sapien at massa commodo rutrum. Donec non risus ut dui ultrices molestie non a quam.
}}
|gtitle6 = Level 1 Title 6
|group6 = Duis vel ligula tellus, sed rutrum augue. Cras varius consectetur ligula, vitae accumsan nisl vehicula vitae. Integer mi nunc, cursus sit amet mattis vitae, porta nec ligula.
|gtitle7 = Level 1 Title 7
|group7 = Etiam vulputate nisl eget sapien mattis ultrices. Vestibulum et eros vitae arcu condimentum porta. Cras fringilla, erat quis consequat sollicitudin, est tortor tempor massa, quis euismod risus nisi vel massa. Phasellus in risus ac metus pharetra sodales vel at velit. Nulla ullamcorper, orci ac ultrices sollicitudin, ante erat scelerisque eros, auctor pretium felis nibh bibendum purus.
|fstyle = text-align:right
|footer = Quisque ut nisl arcu. Integer tincidunt, turpis pharetra consectetur consectetur, felis ipsum sagittis turpis, vel interdum eros mauris sed odio. <br> Aenean scelerisque rhoncus leo, a cursus neque vehicula sed.
}}}}
<pre>{{Navbox
|state = uncollapsed
|name =
|title =
|gtitle1 = Level 1 Title 1
|group1 =
|gtitle2 = Level 1 Title 2
|group2 =
|gtitle3 = Level 1 Title 3
|group3 =
|gtitle4 = Level 1 Title 4
|group4 =
|gtitle5 = Level 1 Title 5
|gtype5 = subgroup
|group5 =
{{Navbox
|subgroup = yes
|gtitle1 = Level 2 Title 1
|group1 =
|gtitle2 = Level 2 Title 2
|group2 =
|gtitle3 = Level 2 Title 3
|gtype3 = subgroup
|group3 =
{{Navbox
|subgroup = yes
|gtitle1 = Level 3 Title 1
|group1 =
|gtitle2 = Level 3 Title 2
|group2 =
}}
|gtitle4 = Level 2 Title 4
|group4 =
}}
|gtitle6 = Level 1 Title 6
|group6 =
|gtitle7 = Level 1 Title 7
|group7 =
|fstyle =
|footer =
}}</pre>
==Preventing unwanted documentation==
The [[Template:Navbox/doc|Navbox template's documentation]] is automatically transcluded under the navbox on any Template namespace page. It is not transcluded when used as a sub-group or collapsible sub-group template (''subgroup= yes'' or ''collapsible=yes'').
Should the documentation appear when it is unwanted, it can be hidden by setting the doc parameter ''doc=no'' on the template. In most cases, the doc parameter is not used and the parameter is removed completely.
On a similar note, the automatically-added category [[:Category:Navbox templates]] can be suppressed by adding ''hidecat=yes''.
<noinclude>[[Category:Navbox templates|*{{PAGENAME}}]]</noinclude>
<includeonly>
{{#ifeq:{{PAGENAME}}|Navbox|[[Category:Lua-based templates]]}}<!---
This should be kept separate to prevent *every* nav box from
Being marked as Lua based, simply for the sake of
keeping the category easy to navigate ---->
</includeonly>
15f83d4d6412ced0e9c0160317b164a4df337481
Wailing Shade
0
85
1029
256
2024-03-23T21:46:01Z
Habblet
11
wikitext
text/x-wiki
[[File:Wailing Shade.png|200px|right]]
'''Wailing Shades''' are monsters. They have 682 health.
[[Category:Monsters]]
a9e541a12d60a52c6d2499af5ab601ff5a5652df
Template:Sandboxheader
10
629
1031
2024-03-23T21:47:00Z
BlackHawk
10
Created page with "<includeonly>__NEWSECTIONLINK__ __NOTOC__[[Category:Brighter Shores Wiki community]]</includeonly> <div class="tile" style="margin: 2em auto"> <h2>Welcome to the sandbox, a place to try out editing.</h2> Anyone can change this page. To edit, click the "'''Edit source'''" or "'''Add topic'''" tabs above. Content added here will not stay permanently. * If you have an account, you can create your own sandbox in [[Special:MyPage/Sandbox|your userspace]]. * For help getting..."
wikitext
text/x-wiki
<includeonly>__NEWSECTIONLINK__ __NOTOC__[[Category:Brighter Shores Wiki community]]</includeonly>
<div class="tile" style="margin: 2em auto">
<h2>Welcome to the sandbox, a place to try out editing.</h2>
Anyone can change this page. To edit, click the "'''Edit source'''" or "'''Add topic'''" tabs above. Content added here will not stay permanently.
* If you have an account, you can create your own sandbox in [[Special:MyPage/Sandbox|your userspace]].
* For help getting started, see [[Help:Editing]].</div><noinclude>{{/doc}}</noinclude>
dcca2c9dfa759ae118a19612cdbd56a4d04b6129
Brighter Shores:Links
4
631
1033
2024-03-23T21:54:27Z
BlackHawk
10
Created page with "{{shortcut|BS:LINKS|BS:AFFILIATED}} ==Official links== * [https://brightershores.com ''Brighter Shores''] * [https://store.steampowered.com/app/2791440/Brighter_Shores/ ''Brighter Shores'' on Steam] ==Affiliates== ''If you would like to exchange links with us, please create a topic in the [[Forum:Forum Grove|Forum Grove]].'' [[Category:RuneScape Wiki community|Links]]"
wikitext
text/x-wiki
{{shortcut|BS:LINKS|BS:AFFILIATED}}
==Official links==
* [https://brightershores.com ''Brighter Shores'']
* [https://store.steampowered.com/app/2791440/Brighter_Shores/ ''Brighter Shores'' on Steam]
==Affiliates==
''If you would like to exchange links with us, please create a topic in the [[Forum:Forum Grove|Forum Grove]].''
[[Category:RuneScape Wiki community|Links]]
0dfb52bb6bc528c3d6e145e74456e4884622fe41
1034
1033
2024-03-23T21:54:38Z
BlackHawk
10
wikitext
text/x-wiki
{{shortcut|BS:LINKS|BS:AFFILIATED}}
==Official links==
* [https://brightershores.com ''Brighter Shores'']
* [https://store.steampowered.com/app/2791440/Brighter_Shores/ ''Brighter Shores'' on Steam]
==Affiliates==
''If you would like to exchange links with us, please create a topic in the [[Forum:Forum Grove|Forum Grove]].''
[[Category:Brighter Shores community|Links]]
2324b0847789fef02cc8ed6f503e3ff294bebc0b
1035
1034
2024-03-23T21:54:57Z
BlackHawk
10
wikitext
text/x-wiki
{{shortcut|BS:LINKS|BS:AFFILIATED}}
==Official links==
* [https://brightershores.com ''Brighter Shores'']
* [https://store.steampowered.com/app/2791440/Brighter_Shores/ ''Brighter Shores'' on Steam]
==Affiliates==
''If you would like to exchange links with us, please create a topic in the [[Forum:Forum Grove|Forum Grove]].''
[[Category:Brighter Shores Wiki community|Links]]
af38876fe8eb8eff2f3c9f6f77f8cc85299c2e34
1041
1035
2024-03-23T22:01:06Z
Cook Me Plox
28
/* Affiliates */ this is not a policy
wikitext
text/x-wiki
{{shortcut|BS:LINKS|BS:AFFILIATED}}
==Official links==
* [https://brightershores.com ''Brighter Shores'']
* [https://store.steampowered.com/app/2791440/Brighter_Shores/ ''Brighter Shores'' on Steam]
0a2dffa656344173762b3ae6fc589ac62c0fb768
Template:Infobox Item
10
77
1036
765
2024-03-23T21:58:02Z
InvalidCards
4
wikitext
text/x-wiki
<includeonly>{| class="wikitable" style="float:right"
|+{{{name|{{PAGENAME}}}
|-
|colspan="2" style="text-align:center"|[[File:{{{image|}}}|50px]]
|-
|<b>Release date</b>||{{{release|Q3 2024}}}
|-
|<b>Episode</b>||{{#switch:{{{episode|}}}|Hopeport=[[File:Hopeport episode icon.png|18px]] [[Hopeport]]|Hopeforest=[[File:Hopeforest episode icon.png|18px]] [[Hopeforest]]|Mine of Manbutan=[[File:Mine of Manbutan episode icon.png|18px]]|#default=[[File:Unknown episode icon.png|18px]] Unknown}}
|-
|<b>Profession</b>||{{{profession|}}}
|-
|<b>Value</b>||{{{value|0}}}
|}{{Mainonly|[[Category:Items]]}}</includeonly>
9810fc208b1113bf98f9bbf7672bd7dee300f7cf
1037
1036
2024-03-23T21:58:32Z
InvalidCards
4
wikitext
text/x-wiki
<includeonly>{| class="wikitable" style="float:right"
|+{{{name|{{PAGENAME}}}
|-
|colspan="2" style="text-align:center"|[[File:{{{image|{{PAGENAME}}.png}|50px]]
|-
|<b>Release date</b>||{{{release|Q3 2024}}}
|-
|<b>Episode</b>||{{#switch:{{{episode|}}}|Hopeport=[[File:Hopeport episode icon.png|18px]] [[Hopeport]]|Hopeforest=[[File:Hopeforest episode icon.png|18px]] [[Hopeforest]]|Mine of Manbutan=[[File:Mine of Manbutan episode icon.png|18px]]|#default=[[File:Unknown episode icon.png|18px]] Unknown}}
|-
|<b>Profession</b>||{{{profession|}}}
|-
|<b>Value</b>||{{{value|0}}}
|}{{Mainonly|[[Category:Items]]}}</includeonly>
76b03bb9e2570ba79aa485ac19dcde946bafe65d
1038
1037
2024-03-23T21:59:33Z
InvalidCards
4
wikitext
text/x-wiki
<includeonly>{| class="wikitable" style="float:right"
|+{{{name|{{PAGENAME}}}
|-
|colspan="2" style="text-align:center"|[[File:{{{image|{{PAGENAME}}.png}}}|50px]]
|-
|<b>Release date</b>||{{{release|Q3 2024}}}
|-
|<b>Episode</b>||{{#switch:{{{episode|}}}|Hopeport=[[File:Hopeport episode icon.png|18px]] [[Hopeport]]|Hopeforest=[[File:Hopeforest episode icon.png|18px]] [[Hopeforest]]|Mine of Manbutan=[[File:Mine of Manbutan episode icon.png|18px]]|#default=[[File:Unknown episode icon.png|18px]] Unknown}}
|-
|<b>Profession</b>||{{{profession|}}}
|-
|<b>Value</b>||{{{value|0}}}
|}{{Mainonly|[[Category:Items]]}}</includeonly>
f5b8abbdef4fc4edf75a182f34710994665f463f
1039
1038
2024-03-23T21:59:47Z
InvalidCards
4
wikitext
text/x-wiki
<includeonly>{| class="wikitable" style="float:right"
|+{{{name|{{PAGENAME}}}}}
|-
|colspan="2" style="text-align:center"|[[File:{{{image|{{PAGENAME}}.png}}}|50px]]
|-
|<b>Release date</b>||{{{release|Q3 2024}}}
|-
|<b>Episode</b>||{{#switch:{{{episode|}}}|Hopeport=[[File:Hopeport episode icon.png|18px]] [[Hopeport]]|Hopeforest=[[File:Hopeforest episode icon.png|18px]] [[Hopeforest]]|Mine of Manbutan=[[File:Mine of Manbutan episode icon.png|18px]]|#default=[[File:Unknown episode icon.png|18px]] Unknown}}
|-
|<b>Profession</b>||{{{profession|}}}
|-
|<b>Value</b>||{{{value|0}}}
|}{{Mainonly|[[Category:Items]]}}</includeonly>
5d62a8b8c38bebe01cf37d5f1a84f2549c0ac808
Hammermage potion
0
632
1040
2024-03-23T21:59:57Z
InvalidCards
4
Created page with "{{Unofficial name}} {{Infobox Item |episode=Hopeport |profession=Alchemist |value=330 }} The '''Hammermage potion''' is a type of [[potion]]."
wikitext
text/x-wiki
{{Unofficial name}}
{{Infobox Item
|episode=Hopeport
|profession=Alchemist
|value=330
}}
The '''Hammermage potion''' is a type of [[potion]].
b2d417c8674e4135430a7d62063fda6bc0dd4728
1048
1040
2024-03-23T22:06:21Z
BlackHawk
10
added [[Category:Potions]] using [[Help:Gadget-HotCat|HotCat]]
wikitext
text/x-wiki
{{Unofficial name}}
{{Infobox Item
|episode=Hopeport
|profession=Alchemist
|value=330
}}
The '''Hammermage potion''' is a type of [[potion]].
[[Category:Potions]]
580ebcc96b07c4c57ac5228284d0f5abf64f5464
File:Hammermage potion.png
6
633
1042
2024-03-23T22:01:08Z
InvalidCards
4
wikitext
text/x-wiki
da39a3ee5e6b4b0d3255bfef95601890afd80709
Brighter Shores:About
4
432
1043
690
2024-03-23T22:03:03Z
Cook Me Plox
28
wikitext
text/x-wiki
{{shortcut|BS:ABOUT|BS:BSW|BS:WIKI}}
The '''Brighter Shores Wiki''' is a [[wikipedia:wiki|wiki]] based entirely on the MMORPG game ''[[Brighter Shores]]'' and its many features. There are currently {{NUMBEROFARTICLES}} articles and {{NUMBEROFFILES}} files on the Brighter Shores Wiki, with {{NUMBEROFEDITS}} edits made to {{NUMBEROFPAGES}} pages in total. The wiki currently has {{NUMBEROFACTIVEUSERS}} [[Brighter Shores:Access levels|active users]] and {{NUMBEROFADMINS}} [[Brighter Shores:Administrators|administrators]].
==Overview==
Started on [[22 March]] [[2024]], the Brighter Shores Wiki's goal is to remain a vast, knowledgeable source for all things in ''Brighter Shores''. As the site is a wiki, anybody can edit it, and all are encouraged to do so.
==How you can help==
If you see anything that needs changing - change it! If you notice improper grammar, spelling errors, punctuation mistakes, inaccuracies, incompleteness or anything else that needs doing, hit the Edit button at the top of the page and correct it yourself.
Other activities you can help out with include:
* Checking [[Special:RecentChanges|recent changes]] for vandalism
* Creating [[Special:WantedPages|wanted pages]]
* Creating [[Special:SearchDigest|redirects for commonly searched terms]]
* Ensuring that no pages are [[Special:LonelyPages|orphaned]]
* Making sure that all pages have [[Special:UncategorisedPages|categories]]
Other projects that need your help can be found at [[Brighter Shores:Maintenance]] along with common maintenance tasks.
It's a good idea for users to [[Special:CreateAccount|register an account]]. This way, your IP address is hidden from public view, all your edits can be attributed to one account, and you can customise your userpage to your heart's content.
Check out our [[Help:Editing|editing guides]] for more information on how to edit and what to help with.
==History==
;2024
* '''22 March''' – The Brighter Shores Wiki is founded
==See also==
* [[Brighter Shores:Links]]
[[Category:Brighter Shores Wiki community|About]]
c6feaa99657619dbf64256e7f0271a0d28b9e964
Coif
0
634
1044
2024-03-23T22:03:30Z
InvalidCards
4
Created page with "{{Unofficial name}} {{Infobox Item |profession=Combat |value=0 }} The '''coif''' is a piece of equipment worn on the head."
wikitext
text/x-wiki
{{Unofficial name}}
{{Infobox Item
|profession=Combat
|value=0
}}
The '''coif''' is a piece of equipment worn on the head.
492e27b9463c46cd0ad3e5c6fe8d16c66e69e0a8
File:Coif.png
6
635
1045
2024-03-23T22:03:57Z
InvalidCards
4
wikitext
text/x-wiki
da39a3ee5e6b4b0d3255bfef95601890afd80709
Merchant potion
0
636
1046
2024-03-23T22:05:49Z
InvalidCards
4
Created page with "{{Unofficial name}} {{Infobox Item |episode=Hopeport |profession=[[Alchemist]] |value=18 }} The '''Merchant potion''' is a type of [[potion]]."
wikitext
text/x-wiki
{{Unofficial name}}
{{Infobox Item
|episode=Hopeport
|profession=[[Alchemist]]
|value=18
}}
The '''Merchant potion''' is a type of [[potion]].
4f43f969387c1a6b4f89bf05c77cd4ffabaf597c
1050
1046
2024-03-23T22:07:37Z
InvalidCards
4
wikitext
text/x-wiki
{{Unofficial name}}
{{Infobox Item
|episode=Hopeport
|profession=[[Alchemist]]
|value=18
}}
The '''Merchant potion''' is a type of [[potion]].
[[Category:Potions]]
0bcc66fd7d76e467b334474d9a5b811d1e81dc78
File:Merchant potion.png
6
637
1047
2024-03-23T22:06:14Z
InvalidCards
4
wikitext
text/x-wiki
da39a3ee5e6b4b0d3255bfef95601890afd80709
Category:Potions
14
638
1049
2024-03-23T22:07:07Z
BlackHawk
10
Created page with "{{Categoryheader|pages|potions}}"
wikitext
text/x-wiki
{{Categoryheader|pages|potions}}
634bf39e84867f225915a10464301596b4cc8873
Miner potion
0
465
1051
761
2024-03-23T22:08:11Z
InvalidCards
4
cat
wikitext
text/x-wiki
{{Unofficial name}}
{{Infobox Item
|name=Miner potion
|image=Miner potion.png
|release=
|episode=Hopeport
|profession=[[Alchemist]]
|value=16
}}
'''Miner potions''' are a type of [[potion]].
[[Category:Potions]]
5b4ccd2d701b123baade8dcc83644026370032d5
Coif
0
634
1052
1044
2024-03-23T22:09:18Z
InvalidCards
4
wikitext
text/x-wiki
{{Unofficial name}}
{{Infobox Item
|profession=Combat
|value=0
}}
The '''coif''' is a piece of equipment worn on the head.
[[Category:Equipment]]
206708953c01777eac31a8fa5c094bbe1c67afb3
1079
1052
2024-03-23T22:26:53Z
InvalidCards
4
wikitext
text/x-wiki
{{Unofficial name}}
{{Infobox Item
|profession=Combat
|value=0
}}
The '''coif''' is a piece of equipment worn on the head.<ref>https://brightershores.com/screenshots/09_himatik_ruins.jpg</ref>
==References==
{{Reflist}}
[[Category:Equipment]]
2dc69e32b96279b7178788895d78cbed40a48b99
File:Hammermage potion.png
6
633
1053
1042
2024-03-23T22:09:36Z
BlackHawk
10
wikitext
text/x-wiki
[[Category:Potion images]]
388d06d85806717fa6f546638e7310b47cc31d1c
Category:Equipment
14
639
1054
2024-03-23T22:09:42Z
InvalidCards
4
Created page with "{{Categoryheader|pages|equipment}} [[Category:Items]]"
wikitext
text/x-wiki
{{Categoryheader|pages|equipment}}
[[Category:Items]]
dc65a82154083b9ee9ea36f3d9d7fde8928c7f2b
File:Merchant potion.png
6
637
1055
1047
2024-03-23T22:09:45Z
BlackHawk
10
wikitext
text/x-wiki
[[Category:Potion images]]
388d06d85806717fa6f546638e7310b47cc31d1c
File:Miner potion.png
6
467
1056
766
2024-03-23T22:09:52Z
BlackHawk
10
wikitext
text/x-wiki
[[Category:Potion images]]
388d06d85806717fa6f546638e7310b47cc31d1c
Category:Potions
14
638
1057
1049
2024-03-23T22:09:57Z
InvalidCards
4
cat
wikitext
text/x-wiki
{{Categoryheader|pages|potions}}
[[Category:Items]]
b1e988ef054f123175aa5e82d1f651f638693d97
Category:Potion images
14
640
1058
2024-03-23T22:10:36Z
BlackHawk
10
Created page with "{{Categoryheader|images|potions||}} [[Category:Item images]] [[Category:Potions]]"
wikitext
text/x-wiki
{{Categoryheader|images|potions||}}
[[Category:Item images]]
[[Category:Potions]]
38ca8cb03bd5190d922ea34b7ac59e79d4ce5aec
Category:Games
14
170
1059
306
2024-03-23T22:10:37Z
InvalidCards
4
cat
wikitext
text/x-wiki
{{Categoryheader|pages and subcategories|games}}
[[Category:Game info]]
f13032f0e5850305bd60b211b215853cac8d3618
Category:Interface
14
458
1060
742
2024-03-23T22:11:08Z
InvalidCards
4
cat
wikitext
text/x-wiki
{{Categoryheader|pages|the game [[interface]]}}
[[Category:Game info]]
63db4e79b974846982c9ac793a02884486ecbb92
Category:Item images
14
641
1061
2024-03-23T22:11:12Z
BlackHawk
10
Created page with "{{Categoryheader|images|item images with no particular subcategory||}} [[Category:Images]]"
wikitext
text/x-wiki
{{Categoryheader|images|item images with no particular subcategory||}}
[[Category:Images]]
744c793b35b8958dee8db412706f61ff859ec24a
Category:Mechanics
14
459
1062
748
2024-03-23T22:11:26Z
InvalidCards
4
cat
wikitext
text/x-wiki
{{Categoryheader|pages|game mechanics}}
[[Category:Content]]
f4b1d29008eebbdf7c1f6f8937172a7991ebdd30
File:Coif.png
6
635
1063
1045
2024-03-23T22:12:10Z
InvalidCards
4
wikitext
text/x-wiki
[[Category:Equipment images]]
c0f3495b1253ecbf1fbea2d80ea286868c4c9e0e
Category:Equipment images
14
642
1064
2024-03-23T22:12:33Z
InvalidCards
4
Created page with "{{Categoryheader|images|equipment||}} [[Category:Item images]] [[Category:Equipment]]"
wikitext
text/x-wiki
{{Categoryheader|images|equipment||}}
[[Category:Item images]] [[Category:Equipment]]
01dea09f71d2a4dd393ac901211b12785d71ac69
Basic bacon
0
84
1065
833
2024-03-23T22:14:00Z
BlackHawk
10
wikitext
text/x-wiki
{{Unofficial name}}
{{Infobox Item
|name=Basic bacon
|image=Item basic bacon.png
|release=
|episode=
|profession=[[Chef]]
|value=
}}
'''Basic bacon''' is a food that can be created using the [[Chef]] profession. It can be obtained by frying raw bacon in a kitchen.
[[Category:Items]]
[[Category:Food]]
a44b462528cf5e7925c0920537f95d657b7b9f87
1070
1065
2024-03-23T22:22:31Z
ToofleBerry
6
Added hyperlink.
wikitext
text/x-wiki
{{Unofficial name}}
{{Infobox Item
|name=Basic bacon
|image=Item basic bacon.png
|release=
|episode=
|profession=[[Chef]]
|value=
}}
'''Basic bacon''' is a food that can be created using the [[Chef]] profession. It can be obtained by frying [[raw basic bacon]] in a kitchen.
[[Category:Items]]
[[Category:Food]]
7b18c468c88b5f95316b1fa3039144d0908e13c8
1086
1070
2024-03-23T22:30:53Z
InvalidCards
4
+Refs -Items category (automatically added by Infobox Item)
wikitext
text/x-wiki
{{Unofficial name}}
{{Infobox Item
|name=Basic bacon
|image=Item basic bacon.png
|release=
|episode=
|profession=[[Chef]]
|value=
}}
'''Basic bacon''' is a food that can be created using the [[Chef]] profession. It can be obtained by frying [[raw basic bacon]] in a kitchen.<ref>https://brightershores.com/screenshots/02_cooking.jpg</ref>
==References==
{{Reflist}}
[[Category:Food]]
0a1f1fcfbdc6976a854c18ff954afbec0e565051
Category:Food
14
643
1066
2024-03-23T22:14:21Z
BlackHawk
10
Created page with "{{Categoryheader|pages|food||}} [[Category:Items|Food]]"
wikitext
text/x-wiki
{{Categoryheader|pages|food||}}
[[Category:Items|Food]]
c4402d277e6900032483096a0ed9b482a9e393f3
File:Basic bacon.png
6
392
1067
642
2024-03-23T22:15:00Z
BlackHawk
10
wikitext
text/x-wiki
[[Category:Food images]]
c2551224a66dc9773d5073bd42696054240bf631
Category:Food images
14
644
1068
2024-03-23T22:15:23Z
BlackHawk
10
Created page with "{{Categoryheader|images|food||}} [[Category:Item images]] [[Category:Food]]"
wikitext
text/x-wiki
{{Categoryheader|images|food||}}
[[Category:Item images]]
[[Category:Food]]
e6a5bf15120a73c24e889a1957979ea38ca729f5
Health potion
0
645
1069
2024-03-23T22:22:31Z
InvalidCards
4
Created page with "{{Unofficial name}} {{Infobox Item |profession=Alchemist |value=? }} '''Health potions''' are a type of [[potion]], most likely used to restore one's health in [[combat]]. [[Category:Potions]]"
wikitext
text/x-wiki
{{Unofficial name}}
{{Infobox Item
|profession=Alchemist
|value=?
}}
'''Health potions''' are a type of [[potion]], most likely used to restore one's health in [[combat]].
[[Category:Potions]]
31473831dbcbd3a5073041ee7b79aca19568f2e0
1078
1069
2024-03-23T22:26:22Z
InvalidCards
4
Refs
wikitext
text/x-wiki
{{Unofficial name}}
{{Infobox Item
|profession=Alchemist
|value=?
}}
'''Health potions''' are a type of [[potion]]<ref>https://brightershores.com/screenshots/03_shade_combat.jpg</ref>, most likely used to restore one's health in [[combat]].
==References==
{{Reflist}}
[[Category:Potions]]
849db66f74d96820d3553caeb18d840a946859f7
File:Health potion.png
6
646
1071
2024-03-23T22:22:54Z
InvalidCards
4
[[Category:Potion images]]
wikitext
text/x-wiki
== Summary ==
[[Category:Potion images]]
403612027df4e8aa7c694b3882d8a5d2b1b95b5c
File:Raw basic bacon.png
6
398
1072
648
2024-03-23T22:23:03Z
ToofleBerry
6
wikitext
text/x-wiki
[[Category:Item images]]
915e99ad51bd4c6b4ce4f7bef3caaf8e3d3f97b2
1076
1072
2024-03-23T22:25:26Z
BlackHawk
10
wikitext
text/x-wiki
[[Category:Food images]]
c2551224a66dc9773d5073bd42696054240bf631
Strength Cryonae
0
647
1073
2024-03-23T22:24:37Z
InvalidCards
4
Created page with "{{Unofficial name}} {{Infobox Item |profession=Alchemist |value=? }} '''Cryoknight potions''' are a type of [[potion]]. [[Category:Potions]]"
wikitext
text/x-wiki
{{Unofficial name}}
{{Infobox Item
|profession=Alchemist
|value=?
}}
'''Cryoknight potions''' are a type of [[potion]].
[[Category:Potions]]
3f3dfcdc47f1d54f8a702f648aa935b00eb68598
1077
1073
2024-03-23T22:25:59Z
InvalidCards
4
Refs
wikitext
text/x-wiki
{{Unofficial name}}
{{Infobox Item
|profession=Alchemist
|value=?
}}
'''Cryoknight potions''' are a type of [[potion]].<ref>https://brightershores.com/screenshots/03_shade_combat.jpg</ref>
==References==
{{Reflist}}
[[Category:Potions]]
43aec8a5dcab61499c11d2e132305754b72d4479
File:Cryoknight potion.png
6
648
1074
2024-03-23T22:24:53Z
InvalidCards
4
[[Category:Potion images]]
wikitext
text/x-wiki
== Summary ==
[[Category:Potion images]]
403612027df4e8aa7c694b3882d8a5d2b1b95b5c
Raw basic bacon
0
478
1075
832
2024-03-23T22:25:12Z
BlackHawk
10
wikitext
text/x-wiki
{{Unofficial name}}
{{Infobox Item
|name=Raw basic bacon
|image=Item raw basic bacon.png
|release=
|episode=
|profession=[[Chef]]
|value=
}}
'''Raw basic bacon''' is an item that can be fried to [[basic bacon]] using the [[Chef]] profession.
[[Category:Items]]
[[Category:Food]]
e415cbd1c6af45d961c1781d57d2dfc8e30d4bc3
1085
1075
2024-03-23T22:30:31Z
InvalidCards
4
+Refs -Items category (automatically added by Infobox Item)
wikitext
text/x-wiki
{{Unofficial name}}
{{Infobox Item
|name=Raw basic bacon
|image=Item raw basic bacon.png
|release=
|episode=
|profession=[[Chef]]
|value=
}}
'''Raw basic bacon''' is an item that can be fried to [[basic bacon]] using the [[Chef]] profession.<ref>https://brightershores.com/screenshots/02_cooking.jpg</ref>
==References==
{{Reflist}}
[[Category:Food]]
d455974b4d9b2a95e9411cea34a7e063dbd547c8
Branch
0
464
1080
763
2024-03-23T22:27:28Z
InvalidCards
4
Refs
wikitext
text/x-wiki
{{Unofficial name}}
{{Infobox Item
|name=Branch
|image=Branch.png
|release=
|episode=Hopeforest
|profession=[[Woodcutter]]
|value=48
}}
'''Branches''' can be collected by the [[Woodcutter]] [[profession]] in [[Hopeforest]].<ref>https://brightershores.com/screenshots/09_himatik_ruins.jpg</ref>
==References==
{{Reflist}}
e9e49f4b3fcc57e8c4a3913c27f61e968b298a5c
Merchant potion
0
636
1081
1050
2024-03-23T22:27:49Z
InvalidCards
4
Refs
wikitext
text/x-wiki
{{Unofficial name}}
{{Infobox Item
|episode=Hopeport
|profession=[[Alchemist]]
|value=18
}}
The '''Merchant potion''' is a type of [[potion]].<ref>https://brightershores.com/screenshots/09_himatik_ruins.jpg</ref>
==References==
{{Reflist}}
[[Category:Potions]]
77b3b7c06a3dd6604974e6a70f2193f1d41dd8fe
Hammermage potion
0
632
1082
1048
2024-03-23T22:28:15Z
InvalidCards
4
Refs
wikitext
text/x-wiki
{{Unofficial name}}
{{Infobox Item
|episode=Hopeport
|profession=Alchemist
|value=330
}}
The '''Hammermage potion''' is a type of [[potion]].<ref>https://brightershores.com/screenshots/09_himatik_ruins.jpg</ref>
==References==
{{Reflist}}
[[Category:Potions]]
e7ce2724b88bc545f093d05a64a1e9c8bf81daf2
Miner potion
0
465
1083
1051
2024-03-23T22:28:36Z
InvalidCards
4
Refs
wikitext
text/x-wiki
{{Unofficial name}}
{{Infobox Item
|name=Miner potion
|image=Miner potion.png
|release=
|episode=Hopeport
|profession=[[Alchemist]]
|value=16
}}
'''Miner potions''' are a type of [[potion]].<ref>https://brightershores.com/screenshots/09_himatik_ruins.jpg</ref>
==References==
{{Reflist}}
[[Category:Potions]]
faa3649f6b3e1bc991238998a430ef0eb3500e32
Sturlet
0
67
1084
131
2024-03-23T22:29:29Z
InvalidCards
4
wikitext
text/x-wiki
{{Infobox Item
|name=Sturlet
|image=Sturlet.png
|release=Soon
}}
'''Sturlet''' is a type of [[fish]] that gives 7 experience in the [[Fisher]] profession per catch.<ref>https://brightershores.com/screenshots/12_vincible.jpg</ref>
==References==
{{Reflist}}
d17ff743d57684dddfddd25b85fdfdfeda6457b3
Brighter Shores:Policies
4
470
1087
822
2024-03-23T22:42:02Z
BlackHawk
10
wikitext
text/x-wiki
To ensure that people can contribute in good faith to the wiki, the Brighter Shores Wiki has several easy-to-follow policies. These are generally modelled on similar wikis of this nature, including Wikipedia. The key to maintaining a successful wiki is by making decisions through [[wikipedia:Wikipedia:Consensus|consensus]], which is what we aim to do at all times.
==Community policies==
* '''Ownership''' – Users do not own the pages and files they edit or create. They exist to better the wiki in some shape or form.
* '''Protection''' – Unless there are reasonable grounds for protecting one, pages should remain fully editable by users to ensure wide collaboration is possible.
* '''Status and opinion-weight''' – An editor should not be treated differently or have any extra weight on their opinions based on their experience or status.
* '''Three-revert rule''' – Explain the changes you make in the edit summary. Rather than engaging in a revert war with another user, discuss it in the talk page.
* '''Use common sense''' – Common sense takes precedence over any policy. Be reasonable.
==Content policies==
* '''Granularity''' – Anything notable, excluding players, may have its own article.
* '''Neutral point of view''' – Pages on the wiki should always be written from a neutral point of view.
* '''Spoilers''' – Articles may contain content that spoils some of the game. There are no warnings on the wiki, so viewers should read at their own risk.
* '''Assume good faith''' – Always assume that an editor's actions were an attempt to improve the wiki.
* '''Don't delete discussions''' – Don't delete previous discussions. These include user talk pages.
* '''Don't edit userpages''' – There's no reason to edit another user's pages under most circumstances.
* '''Blocking users''' – Disruptive users can be blocked from editing by administrators. Blocked users can still read all pages, but can't edit any page except their user talk page.
* '''Treating other users with respect''' – Be nice and don't try to cause unnecessary strife.
950f3d4ed69026c81392e50ecfc3036f498fc94b
Barricade guard
0
475
1088
824
2024-03-23T22:51:49Z
BlackHawk
10
wikitext
text/x-wiki
'''Barricade guard''' is an NPC that guards the [[Barricades]]. The player must talk to [[Captain Jal Degreene]] as part of a quest in order to be allowed through. If the player attempts to pass the barricades before talking with Captain Jal Degreene, the guard will say "Yeah, like I said, it's not safe. You'll have to get permission from Captain Jal Degreene if you want in."
[[Category:NPCs]]
a321f16072a8feebf980d47097b1f4c13e43130e
Backpack
0
457
1089
739
2024-03-23T22:53:54Z
BlackHawk
10
wikitext
text/x-wiki
The '''backpack''' is where [[player]]s store the items that they are currently carrying. It is accessed by clicking the backpack button at the bottom left of the game [[interface]].
[[File:Backpack interface.png|thumb|The backpack interface]]
The player's backpack stores up to 24 items.
{{Interface}}
481a06850b7cbb0dc376b3e05953c0ed086e3fef
1095
1089
2024-03-23T22:58:41Z
ToofleBerry
6
wikitext
text/x-wiki
[[File:Icon backpack.png]] The '''backpack''' is where [[player]]s store the items that they are currently carrying. It is accessed by clicking the backpack button at the bottom left of the game [[interface]].
[[File:Backpack interface.png|thumb|The backpack interface]]
The player's backpack stores up to 24 items.
{{Interface}}
1e26eea27d411372d8f8cc516c278372e73f9cd7
File:Backpack interface.png
6
649
1090
2024-03-23T22:54:38Z
BlackHawk
10
wikitext
text/x-wiki
da39a3ee5e6b4b0d3255bfef95601890afd80709
1091
1090
2024-03-23T22:55:14Z
BlackHawk
10
wikitext
text/x-wiki
[[Category:Interface images]]
8b38a20a90b4a2aadd7ece37d674d3ef53efce66
Category:Interface images
14
650
1092
2024-03-23T22:56:08Z
BlackHawk
10
Created page with "{{Categoryheader|images|the ''[[Brighter Shores]]'' [[interface]]||}} [[Category:Images]]"
wikitext
text/x-wiki
{{Categoryheader|images|the ''[[Brighter Shores]]'' [[interface]]||}}
[[Category:Images]]
4ddaa8eea01ccc9207c2599d99a4c3de5816bbf2
File:Profession forager.png
6
417
1093
670
2024-03-23T22:57:57Z
Merds
25
Merds uploaded a new version of [[File:Profession forager.png]]
wikitext
text/x-wiki
da39a3ee5e6b4b0d3255bfef95601890afd80709
File:Guardian icon.svg
6
474
1094
814
2024-03-23T22:58:22Z
Merds
25
Merds uploaded a new version of [[File:Guardian icon.svg]]
wikitext
text/x-wiki
da39a3ee5e6b4b0d3255bfef95601890afd80709
File:Hammermage icon.svg
6
473
1096
813
2024-03-23T22:59:32Z
Merds
25
Merds uploaded a new version of [[File:Hammermage icon.svg]]
wikitext
text/x-wiki
da39a3ee5e6b4b0d3255bfef95601890afd80709
File:Cryoknight icon.svg
6
472
1097
812
2024-03-23T22:59:42Z
Merds
25
Merds uploaded a new version of [[File:Cryoknight icon.svg]]
wikitext
text/x-wiki
da39a3ee5e6b4b0d3255bfef95601890afd80709
File:Combat actions interface.png
6
651
1098
2024-03-23T23:00:07Z
BlackHawk
10
wikitext
text/x-wiki
da39a3ee5e6b4b0d3255bfef95601890afd80709
1100
1098
2024-03-23T23:00:59Z
BlackHawk
10
wikitext
text/x-wiki
[[Category:Interface images]]
8b38a20a90b4a2aadd7ece37d674d3ef53efce66
Combat
0
191
1099
1026
2024-03-23T23:00:15Z
BlackHawk
10
wikitext
text/x-wiki
[[File:Equipment.jpg|thumb|right|A preview of player in combat.]]
[[File:Combat 2.jpg|thumb|right|Another preview of player in combat.]]
[[File:Combat actions interface.png|thumb|The combat actions interface.]]
'''Combat''' is a mechanic in [[Brighter Shores]] in which several [[player]]s or [[monsters]] fight. Depending on the [[class]] that is being used, player combat can utilise melee, ranged, or magic.
[[Special attacks]] are a feature of the combat system.
{{Mechanics}}
9ec3224b800ac09f28c4b5663576cc63d5a728b7
MediaWiki:Common.less/mainpage.less
8
44
1101
89
2024-03-23T23:16:23Z
Merds
25
less
less
/* ===================
MAIN PAGE
=================== */
body.page-Main_Page.action-view .catlinks,
body.page-Main_Page.action-view #contentSub,
body.page-Main_Page.action-view #firstHeading,
body.page-Main_Page.action-view #siteNotice {
display: none;
}
/* ===================
variables
=================== */
@mp-text-light: fade( @white, 90% );
@mp-gutter-width: .9rem;
/* ==========================
page-specific styles
========================== */
body.page-Main_Page {
// limit max width for readability
// don't use #mw-content-text because it includes the editform
.mw-parser-output {
max-width: 75em;
margin: 0 auto;
}
// not when editing
&.action-view {
.catlinks,
#contentSub,
// hide pagetitle in favor of .mainpage-header
// Note: as of mw1.38, this is not needed anymore
// blanking both [[MediaWiki:Mainpage-title-loggedin]] &
// [[MediaWiki:Mainpage-title]] applies an inline `display: none;`
// #firstHeading,
// anything listed in the sitenotice should already be on the main page
#siteNotice {
display: none;
}
}
}
/* ====================
general styles
==================== */
.mainpage-header {
display: flex;
margin: 2.6em 1.75em 1.5em;
.header-intro {
flex: 2;
h1 {
font-size: 2.5em;
font-weight: bold;
border: none;
margin: 0 0 .15em;
}
p {
font-size: 1.1em;
line-height: 1.7em;
}
}
.header-stats {
flex: 1;
display: flex;
justify-content: center;
align-items: center;
margin-top: -1em;
}
}
// main sections
.mainpage-body {
display: grid;
grid-template-areas:
"event event event" // for tbzr tile
"update update update"
"content content content"
"left left right";
gap: 0.9rem;
grid-template-columns: repeat(3, 1fr);
h2 a {
color: var(--text-color);
}
.tile {
padding-left: 1.75em;
padding-right: 1.75em;
max-width: 100%;
}
.tile-row {
width: 100%;
margin-bottom: 0;
}
}
.mainpage-body .tile-row {
display: grid;
gap: 0.9rem
}
// left column
.mainpage-left {
grid-area: left;
flex: 2;
display: flex;
flex-flow: column wrap;
> * {
margin: 0 0 @mp-gutter-width;
}
}
// right column
.mainpage-right {
grid-area: right;
flex: 1;
display: flex;
flex-flow: column wrap;
> * {
margin: 0 0 @mp-gutter-width;
}
}
/* ====================
components
==================== */
.arrow {
background: url('filepath://White-chevron.svg') no-repeat;
display: inline-block;
height: .7rem;
width: .45rem;
vertical-align: middle;
&.dark {
filter: invert(80%);
}
}
/* =============================
section-specific styles
============================= */
/* --------------------
wiki contents
-------------------- */
@mp-contents-height: 4.5rem;
.mainpage-contents {
grid-area: content;
grid-template-columns: repeat(6, 1fr);
.tile-halves {
flex: 1;
}
.tile-top {
height: 4.5rem;
position: relative; // needed for ribbon
}
h2 {
margin: 0;
padding: 0;
}
.tile-bottom.link-button a {
padding: 0.75em 0.2em; // prevent grid gap misalignment
}
}
/* --------------------
popular pages
-------------------- */
.popular-pages ul {
display: grid;
grid-template-columns: repeat(3, 1fr);
grid-gap: .6em;
margin: 1em 0 .7em 0;
}
.mp-popular-page-light {
display: flex;
align-items: center;
background-color: var(--button-background);
transition: 100ms;
a {
flex: 1;
display: block;
color: @white;
font-weight: bold;
text-align: center;
text-decoration: none;
padding: .7em 1em;
}
&:hover {
filter: brightness(115%);
transition: 100ms;
}
}
/* --------------------
discord server
-------------------- */
.mainpage-discord {
border: none;
box-shadow: @box-shadow-dark;
.tile-top {
display: flex;
align-items: center;
background: @discord-bg;
padding: 1em 1.25em;
a {
flex: 1;
position: relative; // allow link to cover icon
text-decoration: none;
&:hover .arrow {
transform: translateX(50%);
}
}
}
.tile-bottom {
background: @discord-bg-dark;
border: none;
padding: 1em 1.25em;
p {
color: @white;
font-weight: bold;
font-size: .9em;
text-align: center;
text-transform: uppercase;
letter-spacing: .03em;
margin: 0;
}
}
.partner-icon {
margin-right: .75em;
text-align: center;
width: 60px;
}
.server-name {
color: @white;
font-weight: bold;
font-size: 1.25em;
margin: .5em 0 -0.15em;
}
.server-tagline {
color: @mp-text-light;
margin-bottom: .5em;
}
.arrow {
position: absolute;
top: ~"calc(50% - .5em)"; // center arrow on its point
right: 0;
height: 1em;
width: .7em;
background-size: .7em 1em;
transition: .3s ease-out;
}
}
/* --------------------
edit the wiki
-------------------- */
.mainpage-editing {
border: none;
box-shadow: @box-shadow-dark;
.tile-top {
background: @steel-blue;
}
.tile-bottom {
background: saturate( darken( @steel-blue, 4% ), 4% );
border: none;
padding: .8rem 1.5rem .4rem;
}
h2,
a {
color: @white;
}
p {
color: @mp-text-light;
}
ul {
list-style-image: url('filepath://Transparent-chevron.svg');
}
}
/* ==========================
media queries
========================== */
@media only screen and (max-width: @width-breakpoint-desktop-wide) {
// switch to two rows of three tiles
.mainpage-contents {
grid-template-columns: repeat(3, 1fr)
}
}
@media only screen and (max-width: @width-breakpoint-desktop) {
// mainpage-left and -right on one column now
.mainpage-body {
grid-template-areas:
"event event event"
"update update update"
"content content content"
"left left left"
"right right right";
}
.mainpage-recent-updates {
grid-template-columns: repeat(2, 1fr);
.tile-halves {
// hide third recent update
&:last-child {
display: none;
}
// zoom on hover
&:hover .tile-top img {
transform: scale(1.04);
}
}
.tile-top {
height: 18vw;
min-height: 9em;
}
}
// hide other things
.mainpage-header .header-stats {
display: none;
}
// kill margin as it duplicates grid's gap
.mainpage-left > *:last-child,
.mainpage-right > *:last-child {
margin-bottom: 0;
}
.popular-pages ul {
grid-template-columns: repeat(2, 1fr);
}
}
@media only screen and (max-width: @width-breakpoint-tablet) {
.mainpage-recent-updates {
// resulting in single column
grid-template-columns: none;
// revert display:none
.tile-halves:last-child {
display: flex;
}
}
// switch to three rows of two tiles
.mainpage-contents {
grid-template-columns: repeat(2, 1fr);
}
}
80784031c4733e9705fd4037a9b23e961888049b
MediaWiki:Common.css
8
30
1102
939
2024-03-23T23:16:32Z
Merds
25
Updating CSS from [[MediaWiki:Common.less]]
css
text/css
/* <pre> */
:root {
--body-main: #feffff;
--body-light: #f2f2f2;
--body-mid: #d0bd97;
--body-dark: #e3e3e3;
--body-border: #000;
--body-background-color: #173a4d;
--button-background: #605443;
--button-color: #fff;
--button-border: #3c352a;
--button-dark: #18140c;
--button-light: #3a301d;
--sidebar: #cfc08d;
--background-text-color: #e2dbc8;
--background-link-color: #e2bd8a;
--search-box: #efeee6;
--link-color: #936039;
--redlink-color: #ba0000;
--text-color: #000;
--byline-color: #ccc;
--subtle-color: #777;
--admin-blue: #332e75;
--bearcat-green: #13592e;
--awb-purple: #933b96;
--rsw-blue: #438ab6;
--osrsw-brown: #605443;
--thumb-bg: var(--body-light);
--thumb-caption-bg: var(--body-mid);
--sourceeditor-input-background: #fff;
--sourceeditor-background: var(--body-light);
--sourceeditor-background-secondary: var(--body-light);
--sourceeditor-border: var(--body-mid);
--codemirror-gutter-background: var(--body-mid);
}
@font-face {
font-family: 'Lora';
font-weight: 400 700;
font-style: normal;
font-display: swap;
src: url('filepath://Lora.woff2') format('woff2');
}
@font-face {
font-family: 'Lora';
font-weight: 400 700;
font-style: italic;
font-display: swap;
src: url('filepath://Lora-Italic.woff2') format('woff2');
}
:root {
--base-text-color: #36414f;
--base-heading-color: #444e5a;
--base-heading-border: #e4eaee;
--mw-code-background-color: #ddd4bb;
--body-background-image: url('filepath://Wiki_background.jpg');
}
#mw-page-base {
background: none;
}
.mw-body {
background-color: var(--body-main);
color: var(--text-color);
border-color: transparent;
box-shadow: 0 0 7px rgba(0, 0, 0, 0.15);
margin-top: 0;
}
h1,
h2,
h3,
h4,
h5,
h6 {
color: var(--text-color);
}
h1,
h2 {
border-color: var(--sidebar);
}
.mw-body h1,
.mw-body-content h1,
.mw-body-content h2,
.mw-body-content h3,
.mw-body-content h4,
.mw-body-content h5,
.mw-body-content h6 {
font-family: 'Lora', 'Palatino', 'Georgia', serif;
}
.mw-parser-output h2:first-of-type {
clear: left;
}
.mw-footer {
color: var(--background-text-color);
}
.mw-footer li {
color: var(--background-text-color);
}
.mw-footer a,
.mw-footer a:active,
.mw-footer a:visited {
color: var(--background-link-color);
}
::placeholder {
color: var(--subtle-color);
}
a {
color: var(--link-color);
}
a:visited,
a:active {
color: var(--link-color);
}
a.new {
color: var(--redlink-color);
}
a.new:visited {
color: var(--redlink-color);
}
.mw-parser-output a.extiw,
.mw-parser-output a.external {
color: var(--link-color);
}
.mw-parser-output a.extiw:visited,
.mw-parser-output a.external:visited,
.mw-parser-output a.extiw:active,
.mw-parser-output a.external:active {
color: var(--link-color);
}
.jsPurgeLink a.external {
color: var(--link-color);
}
:root {
--errorbox-bg: #feecea;
--errorbox-border: #ee4231;
--warningbox-bg: #fef9de;
--warningbox-border: #f9d000;
--successbox-bg: #ecf8e3;
--successbox-border: #6bc71f;
}
.mw-message-box-error,
.errorbox,
.mw-message-box-warning,
.warningbox,
.mw-message-box-success,
.successbox,
.usermessage {
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
}
.mw-message-box-error,
.errorbox {
background-color: var(--errorbox-bg);
border-color: var(--errorbox-border);
}
.mw-message-box-warning,
.warningbox,
.usermessage {
background-color: var(--warningbox-bg);
border-color: var(--warningbox-border);
}
.mw-message-box-success,
.successbox {
background-color: var(--successbox-bg);
border-color: var(--successbox-border);
}
.catlinks {
background: var(--body-light);
border: 1px solid var(--body-dark);
padding: 8px 15px;
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
}
.catlinks li {
border-color: var(--body-mid);
}
.filehistory a img,
#file img {
background: url("data:image/svg+xml,%3C%3Fxml version='1.0' encoding='UTF-8'%3F%3E%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16'%3E%3Cpath d='M0 0h8v16h8V8H0z' opacity='.13'/%3E%3C/svg%3E") repeat;
}
#file img:hover {
background: none;
}
.mw-highlight {
background: none;
}
.mw-highlight .linenos {
background-color: var(--mw-code-background-color);
color: var(--byline-color);
}
.mw-highlight a:hover .linenos,
.mw-highlight .hll a .linenos {
color: var(--text-color);
}
.mw-content-ltr.mw-highlight-lines pre,
.mw-content-ltr.content .mw-highlight-lines pre {
box-shadow: inset 2.75em 0 0 var(--mw-code-background-color);
}
#pagehistory ul {
list-style: none;
margin: 0;
}
#pagehistory li {
border: 1px solid transparent;
padding: 1px 10px;
margin: 2px 0;
}
#pagehistory li.selected {
background-color: var(--body-light);
color: inherit;
border: 1px dashed var(--body-border);
outline: none;
}
#mw-history-compare > div:first-of-type {
position: -webkit-sticky;
position: sticky;
top: 0;
background-color: var(--body-main);
border-bottom: 1px solid var(--body-dark);
padding: 0.25em 0;
}
.wgl-stickyheader #mw-history-compare > div:first-of-type {
top: 2.5rem;
}
.autocomment,
.autocomment a,
.autocomment a:visited {
color: var(--link-color);
}
li span.deleted,
span.history-deleted {
color: var(--byline-color);
}
.mw-usertoollinks-contribs-no-edits,
.mw-usertoollinks-contribs-no-edits:visited {
color: var(--redlink-color);
}
.CategoryTreeToggle {
color: var(--link-color);
}
body.wgl-stickyheader.action-view .mw-headline:target::before {
display: block;
content: '';
margin-top: -3rem;
height: 3rem;
visibility: hidden;
pointer-events: none;
}
.mw-mmv-post-image {
color: var(--text-color);
background-color: var(--body-main);
}
.mw-mmv-image-metadata {
border-top-color: var(--body-mid);
background-color: var(--body-light);
}
.mw-mmv-dialog,
.mw-mmv-dialog .mw-mmv-dialog-down-arrow,
.mw-mmv-options-dialog .mw-mmv-dialog-down-arrow {
background-color: var(--body-light);
box-shadow: none;
}
.mw-mmv-options-enable-alert {
background-color: var(--body-light);
color: var(--text-color);
}
.mw-mmv-options-dialog-header,
.mw-mmv-options-text-header,
.mw-mmv-options-text-body,
.mw-mmv-options-enable-alert,
.mw-mmv-options-dialog .mw-mmv-disable-confirmation .mw-mmv-options-dialog-header,
.mw-mmv-options-dialog .mw-mmv-disable-confirmation .mw-mmv-options-text-header {
color: var(--text-color);
}
.mw-revslider-container {
border-color: var(--sidebar);
}
.mw-revslider-slider-wrapper {
border-top-color: var(--sidebar);
}
.mw-ui-button {
background-color: var(--ooui-normal);
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
}
.mw-ui-button:not(:disabled):hover,
.mw-ui-button:not(:disabled):active {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
}
.mw-ui-button:not(:disabled):focus {
color: var(--ooui-text);
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent), inset 0 0 0 2px #fff;
}
.mw-ui-button:not(:disabled):visited {
color: var(--ooui-text);
}
.mw-ui-button.mw-ui-progressive:not(:disabled) {
background-color: var(--ooui-progressive);
color: #fff;
border-color: var(--ooui-progressive);
}
.mw-ui-button.mw-ui-progressive:not(:disabled):hover {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
}
.mw-ui-button.mw-ui-progressive:not(:disabled):focus {
box-shadow: inset 0 0 0 1px var(--ooui-accent), inset 0 0 0 2px #fff;
}
.mw-ui-button.mw-ui-progressive:not(:disabled):active,
.mw-ui-button.mw-ui-progressive:not(:disabled).is-on {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
box-shadow: none;
}
.mw-ui-button.mw-ui-destructive:not( :disabled ) {
color: #fff;
}
.mw-ui-button.mw-ui-quiet,
.mw-ui-button.mw-ui-quiet.mw-ui-progressive,
.mw-ui-button.mw-ui-quiet.mw-ui-destructive {
color: var(--text-color);
}
input[type='checkbox']:hover + .mw-ui-button.mw-ui-quiet,
input[type='checkbox']:hover + .mw-ui-button.mw-ui-quiet.mw-ui-progressive,
input[type='checkbox']:hover + .mw-ui-button.mw-ui-quiet.mw-ui-destructive,
.mw-ui-button.mw-ui-quiet:hover,
.mw-ui-button.mw-ui-quiet.mw-ui-progressive:hover,
.mw-ui-button.mw-ui-quiet.mw-ui-destructive:hover {
background-color: rgba(0, 24, 73, 0.02745098);
color: var(--text-color);
border-color: transparent;
}
input[type='checkbox']:focus + .mw-ui-button.mw-ui-quiet,
input[type='checkbox']:focus + .mw-ui-button.mw-ui-quiet.mw-ui-progressive,
input[type='checkbox']:focus + .mw-ui-button.mw-ui-quiet.mw-ui-destructive,
.mw-ui-button.mw-ui-quiet:focus,
.mw-ui-button.mw-ui-quiet.mw-ui-progressive:focus,
.mw-ui-button.mw-ui-quiet.mw-ui-destructive:focus {
color: var(--text-color);
}
input[type='checkbox']:active + .mw-ui-button.mw-ui-quiet,
input[type='checkbox']:active + .mw-ui-button.mw-ui-quiet.mw-ui-progressive,
input[type='checkbox']:active + .mw-ui-button.mw-ui-quiet.mw-ui-destructive,
.mw-ui-button.mw-ui-quiet:active,
.mw-ui-button.mw-ui-quiet.mw-ui-progressive:active,
.mw-ui-button.mw-ui-quiet.mw-ui-destructive:active {
background-color: rgba(0, 36, 73, 0.08235294);
color: var(--text-color);
border-color: #72777d;
}
.mw-ui-input {
background-color: var(--ooui-input);
color: var(--text-color);
border-color: var(--ooui-input-border);
}
.mw-ui-input:hover {
border-color: var(--ooui-input-border--hover);
}
.mw-ui-input::placeholder {
color: var(--byline-color);
}
.mw-content-ltr .redirectText li:first-child {
padding: 0;
background: 0;
}
.mw-content-ltr .redirectText li:first-child::before {
content: '';
background: currentcolor;
-webkit-mask: url("filepath://Redirect-arrow.svg") no-repeat 50% 50% / contain;
mask: url("filepath://Redirect-arrow.svg") no-repeat 50% 50% / contain;
display: inline-block;
width: 47px;
height: 20px;
}
:root {
--wikitable-header-bg: var(--body-dark);
--wikitable-border: var(--body-border);
--wikitable-bg: var(--body-light);
--wikitable-bg-lighter: #e9e3d6;
--wikitable-color: var(--text-color);
--table-na-background: rgba(255, 255, 255, 0.3);
--table-na-color: var(--subtle-color);
--table-yes-background: #c3e8a3;
--table-yes-color: #2e5e05;
--table-no-background: #fbc0ba;
--table-no-color: #801c13;
--table-maybe-background: #fcea94;
--table-maybe-color: #786300;
}
.wikitable {
background: var(--wikitable-bg);
color: var(--wikitable-color);
border-color: var(--wikitable-border);
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
}
.wikitable > tr > th,
.wikitable > tr > td,
.wikitable > * > tr > th,
.wikitable > * > tr > td {
border-color: var(--wikitable-border);
}
.wikitable > tr > th.table-noborder,
.wikitable > tr > td.table-noborder,
.wikitable > * > tr > th.table-noborder,
.wikitable > * > tr > td.table-noborder {
border-left-style: hidden;
border-right-style: hidden;
padding-left: 0;
padding-right: 0;
}
.wikitable > tr > th,
.wikitable > * > tr > th {
background-color: var(--wikitable-header-bg);
}
.tabber .wikitable {
box-shadow: none;
}
.mw_metadata td,
.mw_metadata th {
border-color: var(--wikitable-border);
}
.mw_metadata th {
background-color: var(--wikitable-header-bg);
}
.mw_metadata td {
background-color: var(--wikitable-bg);
}
.mw-datatable {
border-color: var(--wikitable-border);
}
.mw-datatable td,
.mw-datatable th {
border-color: var(--wikitable-border);
}
.mw-datatable th {
background-color: var(--wikitable-header-bg);
}
.mw-datatable td {
background-color: var(--wikitable-bg);
}
.mw-datatable tr:hover td {
background-color: var(--wikitable-bg);
}
table.alternating-rows tr:nth-child(odd),
table.alternating-cols td:nth-child(odd) {
background: var(--wikitable-alternating-bg);
}
.table-na {
background: var(--table-na-background);
color: var(--table-na-color);
vertical-align: middle;
text-align: center;
}
.table-yes {
background: var(--table-yes-background);
color: var(--table-yes-color);
}
.table-positive {
background: var(--table-yes-background);
}
.table-no {
background: var(--table-no-background);
color: var(--table-no-color);
}
.table-negative {
background: var(--table-no-background);
}
.table-maybe {
background: var(--table-maybe-background);
color: var(--table-maybe-color);
}
#mw-allmessagestable .am_actual,
#mw-allmessagestable .am_default {
background-color: var(--wikitable-bg);
}
#mw-allmessagestable .am_default:hover,
#mw-allmessagestable .am_actual:hover,
#mw-allmessagestable tbody:hover td {
background-color: var(--wikitable-bg-lighter);
}
table.wikitable td.no-cell-spacing {
padding: 0;
height: 0;
}
table.wikitable td.no-cell-spacing table {
margin: -1px;
width: calc(100% + 2px);
height: calc(100% + 2px);
}
.plainlist ol,
.plainlist ul {
margin: 0;
}
.plainlist li {
margin-bottom: 0;
list-style: none;
}
table.align-right-1 td:nth-of-type(1),
table.align-right-2 td:nth-of-type(2),
table.align-right-3 td:nth-of-type(3),
table.align-right-4 td:nth-of-type(4),
table.align-right-5 td:nth-of-type(5),
table.align-right-6 td:nth-of-type(6),
table.align-right-7 td:nth-of-type(7),
table.align-right-8 td:nth-of-type(8),
table.align-right-9 td:nth-of-type(9),
table.align-right-10 td:nth-of-type(10),
table.align-right-11 td:nth-of-type(11),
table.align-right-12 td:nth-of-type(12),
table.align-right-13 td:nth-of-type(13),
table.align-right-14 td:nth-of-type(14),
table.align-right-15 td:nth-of-type(15),
table.align-right-16 td:nth-of-type(16),
table.align-right-17 td:nth-of-type(17),
table.align-right-18 td:nth-of-type(18),
table.align-right-19 td:nth-of-type(19),
table.align-right-20 td:nth-of-type(20) {
text-align: right;
}
table.align-center-1 td:nth-of-type(1),
table.align-center-2 td:nth-of-type(2),
table.align-center-3 td:nth-of-type(3),
table.align-center-4 td:nth-of-type(4),
table.align-center-5 td:nth-of-type(5),
table.align-center-6 td:nth-of-type(6),
table.align-center-7 td:nth-of-type(7),
table.align-center-8 td:nth-of-type(8),
table.align-center-9 td:nth-of-type(9),
table.align-center-10 td:nth-of-type(10),
table.align-center-11 td:nth-of-type(11),
table.align-center-12 td:nth-of-type(12),
table.align-center-13 td:nth-of-type(13),
table.align-center-14 td:nth-of-type(14),
table.align-center-15 td:nth-of-type(15),
table.align-center-16 td:nth-of-type(16),
table.align-center-17 td:nth-of-type(17),
table.align-center-18 td:nth-of-type(18),
table.align-center-19 td:nth-of-type(19),
table.align-center-20 td:nth-of-type(20) {
text-align: center;
}
table.align-left-1 td:nth-of-type(1),
table.align-left-2 td:nth-of-type(2),
table.align-left-3 td:nth-of-type(3),
table.align-left-4 td:nth-of-type(4),
table.align-left-5 td:nth-of-type(5),
table.align-left-6 td:nth-of-type(6),
table.align-left-7 td:nth-of-type(7),
table.align-left-8 td:nth-of-type(8),
table.align-left-9 td:nth-of-type(9),
table.align-left-10 td:nth-of-type(10),
table.align-left-11 td:nth-of-type(11),
table.align-left-12 td:nth-of-type(12),
table.align-left-13 td:nth-of-type(13),
table.align-left-14 td:nth-of-type(14),
table.align-left-15 td:nth-of-type(15),
table.align-left-16 td:nth-of-type(16),
table.align-left-17 td:nth-of-type(17),
table.align-left-18 td:nth-of-type(18),
table.align-left-19 td:nth-of-type(19),
table.align-left-20 td:nth-of-type(20) {
text-align: left;
}
:root {
--diff-addedline-border-color: #438ab5;
--diff-addedline-background: #bddff2;
--diff-addedline-color: #000;
--diff-deletedline-border-color: #379541;
--diff-deletedline-background: #c1edbf;
--diff-deletedline-color: #000;
--diff-context-border-color: var(--body-mid);
--diff-context-background: var(--body-mid);
}
.diff-context {
border-color: var(--diff-context-border-color);
background: var(--diff-context-background);
color: inherit;
}
.diff-addedline {
border-color: var(--diff-addedline-border-color);
}
.diff-addedline .diffchange {
background: var(--diff-addedline-background);
color: var(--diff-addedline-color);
}
.diff-deletedline {
border-color: var(--diff-deletedline-border-color);
}
.diff-deletedline .diffchange {
background: var(--diff-deletedline-background);
color: var(--diff-deletedline-color);
}
.mw-diff-movedpara-left:after,
.mw-diff-movedpara-right:after {
color: var(--text-color);
}
.mw-notification {
background-color: var(--body-light);
border-color: var(--body-border);
color: var(--text-color);
}
.mw-echo-ui-notificationsInboxWidget-toolbarWrapper {
background: var(--body-main);
}
.mw-body-content .mw-echo-ui-datedSubGroupListWidget-title-secondary {
color: var(--byline-color);
}
.mw-echo-ui-pageNotificationsOptionWidget.oo-ui-optionWidget-selected {
background-color: var(--ooui-normal);
color: var(--ooui-accent);
}
.mw-echo-ui-pageNotificationsOptionWidget-label-count {
background-color: var(--ooui-normal);
color: var(--byline-color);
}
.oo-ui-optionWidget-selected .mw-echo-ui-pageNotificationsOptionWidget-label-count {
color: var(--ooui-accent);
}
.mw-echo-ui-pageNotificationsOptionWidget.oo-ui-optionWidget-highlighted {
background-color: var(--ooui-normal);
color: var(--text-color);
}
.mw-echo-ui-crossWikiUnreadFilterWidget {
border-color: var(--body-border);
}
.mw-echo-ui-crossWikiUnreadFilterWidget-subtitle {
color: var(--byline-color);
}
.mw-echo-ui-notificationBadgeButtonPopupWidget-popup > .oo-ui-popupWidget-popup > .oo-ui-popupWidget-head,
.mw-echo-ui-notificationBadgeButtonPopupWidget-popup > .oo-ui-popupWidget-popup > .oo-ui-popupWidget-footer {
border-color: var(--ooui-interface-border);
}
.mw-echo-ui-notificationBadgeButtonPopupWidget-popup > .oo-ui-popupWidget-popup > .oo-ui-popupWidget-footer .mw-echo-ui-notificationBadgeButtonPopupWidget-footer-buttons .oo-ui-buttonElement:last-child {
border-left-color: var(--ooui-normal-border);
}
.mw-echo-ui-notificationItemWidget {
background-color: var(--ooui-normal);
border-color: var(--ooui-normal-border);
}
.mw-echo-ui-notificationItemWidget:hover,
.mw-echo-ui-notificationItemWidget-unread:hover {
background-color: var(--ooui-normal--hover);
}
.mw-echo-ui-notificationItemWidget:last-child {
border-bottom-color: var(--ooui-normal-border);
}
.mw-echo-ui-notificationItemWidget-unread {
background-color: var(--search-box);
}
.mw-echo-ui-crossWikiNotificationItemWidget-group,
.mw-echo-ui-bundleNotificationItemWidget-group {
background-color: var(--ooui-interface);
}
.mw-echo-ui-toggleReadCircleButtonWidget-circle {
background-color: var(--ooui-progressive);
}
.mw-echo-ui-toggleReadCircleButtonWidget:hover .mw-echo-ui-toggleReadCircleButtonWidget-circle {
background-color: var(--ooui-progressive--hover);
}
.mw-echo-ui-toggleReadCircleButtonWidget-circle-unread {
background-color: var(--ooui-normal);
border-color: var(--ooui-normal-border);
}
.mw-echo-ui-notificationItemWidget-content-message-header,
.mw-echo-ui-notificationItemWidget-content-message-body,
.mw-echo-ui-menuItemWidget > .oo-ui-buttonElement-button > .oo-ui-labelElement-label,
.mw-echo-ui-notificationItemWidget-content-actions-timestamp {
color: var(--ooui-text);
}
.mw-echo-ui-bundleNotificationItemWidget-group {
background-color: var(--body-main);
}
@keyframes unseen-fadeout-to-unread {
from {
background-color: var(--wikitable-bg-lighter);
}
to {
background-color: var(--search-box);
}
}
@keyframes unseen-fadeout-to-read {
from {
background-color: var(--wikitable-bg-lighter);
}
to {
background-color: var(--body-main);
}
}
.mwe-popups {
background: var(--body-light);
}
.mwe-popups .mwe-popups-container {
color: var(--text-color);
background: var(--body-light);
}
.mwe-popups .mwe-popups-container.flipped-x-y:before,
.mwe-popups .mwe-popups-container.flipped-y:before {
border-top: none;
}
.mwe-popups .mwe-popups-container.mwe-popups-no-image-tri:before {
border-bottom: none;
}
.mwe-popups .mwe-popups-container.flipped-x-y:after,
.mwe-popups .mwe-popups-container.flipped-y:after {
border-top-color: var(--body-light);
}
.mwe-popups .mwe-popups-container.mwe-popups-no-image-tri:after {
border-bottom-color: var(--body-light);
}
.mwe-popups .mwe-popups-settings-icon:hover,
.mwe-popups .mwe-popups-settings-icon:active {
background-color: var(--ooui-normal--hover);
}
.mwe-popups .mw-ui-icon-element:not(.disabled):hover {
background: none;
}
.mwe-popups .mwe-popups-extract {
color: var(--text-color);
}
.mwe-popups .mwe-popups-extract[dir='ltr']:after {
background-image: linear-gradient(to right, rgba(49, 62, 89, 0), var(--body-light) 50%);
}
.mwe-popups-overlay {
background-color: var(--ooui-window-background);
}
#mwe-popups-settings {
background: var(--ooui-interface);
border-color: var(--ooui-interface-border);
color: var(--text-color);
}
#mwe-popups-settings header {
border-color: var(--ooui-interface-border);
}
#mwe-popups-settings main#mwe-popups-settings-form p {
color: var(--byline-color);
}
#mwe-popups-settings main#mwe-popups-settings-form form label > span {
color: var(--ooui-text);
}
:root {
--smw-ask-options-even-bg: var(--body-mid);
--smw-ask-options-odd-bg: var(--body-light);
--smw-ask-action-btn-lblue-bg: var(--body-main);
--smw-ask-action-btn-lblue-color: #000;
--smw-ask-action-btn-lblue-border-color: var(--body-light);
--smw-ask-action-btn-dblue-bg: var(--body-light);
--smw-ask-action-btn-dblue-color: #fff;
--smw-ask-action-btn-dblue-border-color: var(--button-border);
}
.smw-ask-condition fieldset,
.smw-ask-printhead fieldset {
border-color: var(--sidebar);
}
.smw-ask-search fieldset,
.smw-ask-format fieldset,
.smw-ask-options fieldset {
border-color: var(--sidebar);
}
.strike > span:before,
.strike > span:after {
background: var(--sidebar);
}
.smw-ask-options-fields tr td {
background-color: var(--smw-ask-options-even-bg);
}
.smw-ask-options-fields tr:nth-child(odd) td {
background-color: var(--smw-ask-options-odd-bg);
}
.smw-ask-action-btn.smw-ask-action-btn-lblue,
.smw-ask-action-btn.smw-ask-action-btn-lblue:hover,
.smw-ask-action-btn.smw-ask-action-btn-lblue:visited {
background-color: var(--smw-ask-action-btn-lblue-bg);
color: var(--smw-ask-action-btn-lblue-color);
border-color: var(--smw-ask-action-btn-lblue-border-color);
}
.smw-ask-action-btn.smw-ask-action-btn-dblue,
.smw-ask-action-btn.smw-ask-action-btn-dblue:hover,
.smw-ask-action-btn.smw-ask-action-btn-dblue:visited {
background-color: var(--smw-ask-action-btn-dblue-bg);
color: var(--smw-ask-action-btn-dblue-color);
border-color: var(--smw-ask-action-btn-dblue-border-color);
}
.smw-ask-query textarea,
.smw-ask-actions textarea {
background-color: var(--ooui-interface);
border-color: var(--ooui-interface-border);
color: var(--ooui-text);
}
.smw-ask-query-format select {
background-color: var(--ooui-interface);
border: 1px solid var(--ooui-interface-border);
color: var(--ooui-text);
}
.smw-ask-toplinks {
background-color: var(--body-mid);
}
.smw-ask-toplinks span.smw-icon-info {
background: none;
padding: 0 !important;
}
.smw-ask-toplinks span.smw-icon-info::before {
content: '';
background: var(--text-color);
-webkit-mask: url("data:image/svg+xml,%3C%3Fxml version='1.0' encoding='UTF-8'%3F%3E%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 20 20'%3E%3Ctitle%3Einfo%3C/title%3E%3Cpath d='M10 0C4.477 0 0 4.477 0 10s4.477 10 10 10 10-4.477 10-10S15.523 0 10 0zM9 5h2v2H9zm0 4h2v6H9z'/%3E%3C/svg%3E") no-repeat 50% 50% / contain;
mask: url("data:image/svg+xml,%3C%3Fxml version='1.0' encoding='UTF-8'%3F%3E%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 20 20'%3E%3Ctitle%3Einfo%3C/title%3E%3Cpath d='M10 0C4.477 0 0 4.477 0 10s4.477 10 10 10 10-4.477 10-10S15.523 0 10 0zM9 5h2v2H9zm0 4h2v6H9z'/%3E%3C/svg%3E") no-repeat 50% 50% / contain;
padding: 0 0 3px 18px;
}
.smw-ask-options-row-odd {
background-color: var(--body-light);
}
.smw-ask-options-row-even {
background-color: var(--body-mid);
}
#options-toggle:not(:checked) + #options-list .options-parameter-list:after {
background-image: linear-gradient(to bottom, transparent, var(--body-mid) 90%);
}
.smw-ask-button-submit input {
background-color: var(--ooui-normal);
border-color: var(--ooui-normal-border);
color: var(--text-color);
}
.smw-ask-button-submit input:hover,
.smw-ask-button-lgrey:hover {
background-color: var(--ooui-normal--hover);
border-color: var(--ooui-normal-border);
}
input.smw-ask-action-btn.smw-ask-action-btn-dblue {
background-color: var(--ooui-normal);
border-color: var(--ooui-normal-border);
color: var(--ooui-text);
}
a.smw-ask-action-btn.smw-ask-action-btn-lblue {
background-color: var(--body-mid);
border-color: var(--body-mid);
color: var(--ooui-text);
}
a.smw-ask-action-btn.smw-ask-action-btn-lblue:visited {
background-color: var(--body-mid);
border-color: var(--body-mid);
color: var(--ooui-text);
}
a.smw-ask-action-btn.smw-ask-action-btn-lblue:hover {
background-color: var(--body-mid);
border-color: var(--body-mid);
color: var(--ooui-text);
}
a.smw-ask-action-btn-lgrey {
background-color: var(--ooui-normal);
border-color: var(--ooui-normal-border);
color: var(--ooui-text);
}
a.smw-ask-action-btn-lgrey:hover {
background-color: var(--ooui-normal--hover);
border-color: var(--ooui-normal-border);
color: var(--ooui-text);
}
.smw-callout-error {
background-color: var(--errorbox-bg);
border-color: var(--errorbox-border);
}
.smw-callout-info {
background-color: var(--body-light);
border-color: var(--body-dark);
}
.smw-callout-success {
background-color: var(--successbox-bg);
border-color: var(--successbox-border);
}
.smw-callout-warning {
background-color: var(--warningbox-bg);
border-color: var(--warningbox-bg);
}
.smw-tabs input.nav-tab:checked + label.nav-label,
.smw-tabs input.nav-tab:checked + label.nav-label:hover {
color: inherit;
}
#tab-smw-property-value:checked + label.nav-label .usage-count {
color: #fff;
background-color: var(--ooui-progressive);
}
#tab-smw-property-value:checked + label.nav-label .usage-count.moderate {
color: #fff;
background-color: #b55e0c;
border-color: #b55e0c;
}
#tab-smw-property-value:checked + label.nav-label .usage-count.high {
color: #fff;
background-color: #9f261e;
border-color: #9f261e;
}
.smw-property-page-results .header-title {
background-color: var(--ooui-interface);
border-bottom-color: var(--ooui-interface-border);
color: var(--ooui-text);
}
.smw-property-page-results .value-row:hover {
background-color: var(--ooui-normal--hover);
}
.smw-property-page-results .smw-table .header-row {
color: var(--text-color);
}
.tippy-tooltip.light-border-theme {
background-color: var(--body-light);
color: var(--text-color);
}
.tippy-tooltip.light-border-theme .tippy-arrow {
border-top-color: var(--body-light);
}
.tippy-tooltip.light-border-theme .tippy-arrow:after {
border-top-color: var(--body-light);
}
.tippy-header {
background-color: var(--body-dark);
border-bottom-color: var(--body-mid);
}
.smw-ui-input-filter {
background-color: var(--ooui-interface);
border-color: var(--ooui-interface-border);
color: var(--ooui-text);
}
.smw-ui-input-filter input {
border-left-color: var(--ooui-interface-border) !important;
color: var(--ooui-text) !important;
}
.smw-ui-pagination .page-link.link-disabled {
background-color: var(--ooui-disabled);
border-color: var(--ooui-disabled-border);
color: var(--subtle-color);
}
.smw-ui-pagination .page-link {
background-color: var(--ooui-normal);
border-color: var(--ooui-normal-border);
color: var(--link-color);
}
.smw-ui-pagination .page-link:hover {
background-color: var(--ooui-normal--hover);
border-color: var(--ooui-normal-border);
color: var(--link-color);
}
.smw-ui-pagination .page-link.link-active {
color: #fff;
background-color: var(--ooui-progressive);
border-color: var(--ooui-progressive);
}
.smw-tabs input.nav-tab:checked + label.nav-label {
border-color: var(--ooui-normal-border);
}
.smw-tabs section,
.smw-tabs .subtab-content {
border-top-color: var(--ooui-normal-border);
}
.smw-column-header {
color: var(--text-color);
}
.smw-factbox {
background: var(--body-main);
border-color: transparent;
}
.mw-body .mw-indicators #mw-indicator-smw-entity-examiner.mw-indicator .smw-indicator-vertical-bar-loader {
display: none;
}
.smwb-theme-light .smwb-title,
.smwb-theme-light .smwb-center,
.smwb-theme-light .smwb-actions,
.smwb-theme-light .smwb-prophead {
background-color: var(--body-mid);
}
.smwb-theme-light .smwb-factbox {
border-left-color: var(--body-mid);
}
.smwb-theme-light .smwb-ifactbox {
border-right-color: var(--body-mid);
}
.smwb-theme-light .smwb-propval {
background-color: var(--body-light);
}
.smwb-action-separator {
border-color: var(--wikitable-border);
}
.smwb-bottom {
border-bottom: 1px solid var(--wikitable-border);
}
.smwb-ifactbox .smwb-cell,
.smwb-factbox .smwb-cell {
border-top: 1px solid var(--wikitable-border);
}
.smwb-propvalue .smwb-prophead,
.smwb-ipropvalue .smwb-prophead,
.smwb-propvalue .smwb-propval,
.smwb-ipropvalue .smwb-propval {
font-size: 0.9em;
}
:root {
--filter-black-to-link: invert(36%) sepia(58%) saturate(433%) hue-rotate(344deg) brightness(100%) contrast(91%);
}
#bodyContent span.smwbrowse a {
color: black;
background-image: url('filepath://Smwbrowse.svg');
filter: var(--filter-black-to-link);
}
#bodyContent span.smwbrowse a:hover {
color: black;
background-image: url('filepath://Smwbrowse-hover.svg');
text-decoration: underline;
}
#bodyContent span.smwsearch a {
color: black;
filter: var(--filter-black-to-link);
background-image: url('filepath://Smwsearch.svg');
}
#bodyContent span.smwsearch a:hover {
color: black;
background-image: url('filepath://Smwsearch-hover.svg');
text-decoration: underline;
}
:root {
--tabber-tab-bg: var(--body-light);
--tabber-tab-border-color: var(--body-border);
--tabber-active-tab-bg: var(--body-light);
--tabber-active-tab-color: var(--text-color);
--tabber-active-tab-hover-bg: var(--body-light);
--tabber-active-tab-hover-border-color: var(--body-border);
--tabber-active-tab-hover-color: var(--text-color);
--tabber-active-tab-border-hider-color: var(--body-light);
--tabber-inactive-tab-bg: var(--body-background-color);
--tabber-inactive-tab-border-color: var(--body-border);
--tabber-inactive-tab-color: var(--text-color);
--tabber-inactive-tab-hover-bg: var(--body-light);
--tabber-inactive-tab-hover-border-color: var(--body-border);
}
.tabber {
margin: 1em 0;
}
.tabber .tabbertab {
background-color: var(--tabber-tab-bg);
border: 1px solid var(--tabber-tab-border-color);
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
padding: 1em 1.5em;
}
ul.tabbernav {
border: none;
margin-left: 2em;
margin-bottom: 0;
margin-right: 2em;
padding: 0;
font-family: inherit;
}
ul.tabbernav li.tabberactive > a {
background-color: var(--tabber-active-tab-bg);
color: var(--tabber-active-tab-color);
border-bottom: none;
position: relative;
}
ul.tabbernav li.tabberactive > a:hover {
color: var(--tabber-active-tab-hover-color);
background-color: var(--tabber-active-tab-hover-bg);
border-color: var(--tabber-active-tab-hover-border-color);
border-bottom: none;
}
ul.tabbernav li.tabberactive > a::after {
content: '';
position: absolute;
left: 0;
right: 0;
bottom: -1px;
border-bottom: 2px solid var(--tabber-active-tab-border-hider-color);
}
ul.tabbernav li a {
background-color: var(--tabber-inactive-tab-bg);
border-bottom: transparent;
border-color: var(--tabber-inactive-tab-border-color);
color: var(--tabber-inactive-tab-color);
display: inline-block;
font-size: 110%;
padding: 0.5em 1em;
}
ul.tabbernav li a:hover {
background-color: var(--tabber-inactive-tab-hover-bg);
border-color: var(--tabber-inactive-tab-hover-border-color);
}
ul.tabbernav li a:link,
ul.tabbernav li a:visited {
color: var(--tabber-inactive-tab-color);
}
:root {
--ooui-text: var(--text-color);
--ooui-interface: var(--body-light);
--ooui-interface-border: var(--body-border);
--ooui-window-background: rgba(255, 255, 255, 0.5);
--ooui-normal: #d5c7ad;
--ooui-normal--hover: #dfd5c1;
--ooui-normal-border: #b8a282;
--ooui-progressive: #605443;
--ooui-progressive--hover: #7e6e58;
--ooui-accent: var(--link-color);
--ooui-input: #fff;
--ooui-input-border: #b8a282;
--ooui-input-border--hover: #8a724f;
--ooui-disabled: #d1cdc5;
--ooui-disabled-border: #c2b9ab;
--ooui-disabled-text: var(--subtle-color);
--ooui-pending-background-image: repeating-linear-gradient(-45deg, var(--search-box), var(--search-box) 20px, var(--body-main) 20px, var(--body-main) 30px);
}
.oo-ui-widget {
color: var(--ooui-text);
}
.oo-ui-checkboxInputWidget [type='checkbox'] + span,
.oo-ui-radioInputWidget [type='radio'] + span {
background-color: var(--ooui-input);
border-color: var(--ooui-input-border);
}
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:checked + span,
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:indeterminate + span {
background-color: var(--ooui-progressive);
border-color: var(--ooui-progressive);
}
.oo-ui-radioInputWidget.oo-ui-widget-enabled [type='radio']:checked + span {
border-color: var(--ooui-progressive);
}
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:checked:hover + span,
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:indeterminate:hover + span {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
}
.oo-ui-radioInputWidget.oo-ui-widget-enabled [type='radio']:checked:hover + span {
border-color: var(--ooui-progressive--hover);
}
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:hover + span,
.oo-ui-radioInputWidget.oo-ui-widget-enabled [type='radio']:hover + span {
border-color: var(--ooui-accent);
}
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:focus + span {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:active + span,
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:checked:active + span,
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:indeterminate:active + span {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
box-shadow: inset 0 0 0 1px var(--ooui-progressive--hover);
}
.oo-ui-radioInputWidget.oo-ui-widget-enabled [type='radio']:active + span {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
}
.oo-ui-radioInputWidget.oo-ui-widget-enabled [type='radio']:checked:active + span {
border-color: var(--ooui-progressive--hover);
box-shadow: inset 0 0 0 1px var(--ooui-progressive--hover);
}
.oo-ui-radioInputWidget.oo-ui-widget-enabled [type='radio']:checked:active + span:before {
border-color: var(--ooui-progressive--hover);
}
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:checked:focus + span,
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:indeterminate:focus + span {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent), inset 0 0 0 2px #fff;
}
.oo-ui-checkboxInputWidget [type='checkbox']:disabled + span,
.oo-ui-radioInputWidget [type='radio']:disabled + span {
background-color: var(--ooui-disabled);
border-color: var(--ooui-disabled);
}
.oo-ui-dropdownWidget-handle {
border-color: var(--ooui-normal-border);
}
.oo-ui-dropdownWidget.oo-ui-widget-enabled .oo-ui-dropdownWidget-handle {
background-color: var(--ooui-normal);
color: var(--ooui-text);
}
.oo-ui-dropdownWidget.oo-ui-widget-enabled .oo-ui-dropdownWidget-handle:hover {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
}
.oo-ui-dropdownWidget.oo-ui-widget-enabled .oo-ui-dropdownWidget-handle:active {
color: var(--ooui-text);
}
.oo-ui-dropdownWidget.oo-ui-widget-enabled .oo-ui-dropdownWidget-handle:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-dropdownWidget.oo-ui-widget-enabled.oo-ui-dropdownWidget-open .oo-ui-dropdownWidget-handle {
background-color: var(--ooui-normal--hover);
}
.oo-ui-dropdownWidget.oo-ui-widget-disabled .oo-ui-dropdownWidget-handle {
color: var(--ooui-disabled-text);
text-shadow: none;
border-color: var(--ooui-disabled-border);
background-color: var(--ooui-disabled);
}
.oo-ui-dropdownInputWidget select {
border-color: var(--ooui-normal-border);
}
.oo-ui-dropdownInputWidget option {
background-color: var(--ooui-interface);
}
.oo-ui-dropdownInputWidget.oo-ui-widget-enabled {
background-color: var(--ooui-normal);
}
.oo-ui-dropdownInputWidget.oo-ui-widget-enabled:hover {
background-color: var(--ooui-normal--hover);
}
.oo-ui-dropdownInputWidget.oo-ui-widget-enabled select {
color: var(--ooui-text);
}
.oo-ui-dropdownInputWidget.oo-ui-widget-enabled select:hover,
.oo-ui-dropdownInputWidget.oo-ui-widget-enabled select:active {
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
}
.oo-ui-dropdownInputWidget.oo-ui-widget-enabled select:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-labelWidget.oo-ui-inline-help {
color: var(--byline-color);
}
.oo-ui-menuSelectWidget {
background-color: var(--ooui-interface);
border-color: var(--ooui-interface-border);
}
.oo-ui-menuSelectWidget-frameless {
box-shadow: inset 0 -1px 0 0 var(--ooui-normal-border);
}
.oo-ui-menuSectionOptionWidget {
color: var(--byline-color);
}
.oo-ui-menuOptionWidget.oo-ui-optionWidget-highlighted,
.oo-ui-menuOptionWidget.oo-ui-optionWidget-selected {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
}
.oo-ui-menuOptionWidget.oo-ui-optionWidget-selected.oo-ui-menuOptionWidget.oo-ui-optionWidget-highlighted,
.oo-ui-menuOptionWidget.oo-ui-optionWidget-pressed.oo-ui-menuOptionWidget.oo-ui-optionWidget-highlighted {
color: var(--ooui-accent);
}
.oo-ui-menuOptionWidget.oo-ui-widget-enabled.oo-ui-optionWidget {
color: var(--ooui-text);
}
.oo-ui-messageDialog-title {
color: inherit;
}
.oo-ui-messageWidget.oo-ui-messageWidget-block.oo-ui-flaggedElement-error {
background-color: var(--errorbox-bg);
border-color: var(--errorbox-border);
}
.oo-ui-messageWidget.oo-ui-messageWidget-block.oo-ui-flaggedElement-warning {
background-color: var(--warningbox-bg);
border-color: var(--warningbox-border);
}
.oo-ui-messageWidget.oo-ui-messageWidget-block.oo-ui-flaggedElement-success {
background-color: var(--successbox-bg);
border-color: var(--successbox-border);
}
.oo-ui-messageWidget.oo-ui-messageWidget-block.oo-ui-flaggedElement-notice {
background-color: var(--messagebox-info-background);
border-color: var(--messagebox-info-border);
}
.oo-ui-messageWidget.oo-ui-flaggedElement-error:not(.oo-ui-messageWidget-block),
.oo-ui-messageWidget.oo-ui-flaggedElement-success:not(.oo-ui-messageWidget-block) {
color: var(--ooui-text);
}
.oo-ui-optionWidget.oo-ui-widget-disabled {
color: var(--ooui-disabled-text);
}
.oo-ui-outlineControlsWidget {
background-color: var(--ooui-normal);
}
.oo-ui-outlineOptionWidget.oo-ui-optionWidget-highlighted {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
}
.oo-ui-popupWidget-popup {
background-color: var(--ooui-interface);
border-color: var(--ooui-interface-border);
}
.oo-ui-popupWidget-anchored-top .oo-ui-popupWidget-anchor:after {
border-bottom-color: var(--ooui-interface);
}
.oo-ui-popupWidget-anchored-top .oo-ui-popupWidget-anchor:before {
border-bottom-color: var(--ooui-interface-border);
}
.oo-ui-popupWidget-anchored-bottom .oo-ui-popupWidget-anchor:after {
border-top-color: var(--ooui-interface);
}
.oo-ui-popupWidget-anchored-bottom .oo-ui-popupWidget-anchor:before {
border-top-color: var(--ooui-interface-border);
}
.oo-ui-popupWidget-anchored-start .oo-ui-popupWidget-anchor:after {
border-right-color: var(--ooui-interface);
}
.oo-ui-popupWidget-anchored-start .oo-ui-popupWidget-anchor:before {
border-right-color: var(--ooui-interface-border);
}
.oo-ui-popupWidget-anchored-end .oo-ui-popupWidget-anchor:after {
border-left-color: var(--ooui-interface);
}
.oo-ui-popupWidget-anchored-end .oo-ui-popupWidget-anchor:before {
border-left-color: var(--ooui-interface-border);
}
.oo-ui-searchWidget-query {
border-bottom-color: var(--ooui-interface-border);
}
.oo-ui-selectFileWidget-dropTarget {
background-color: var(--ooui-interface);
border-color: var(--ooui-interface-border);
}
.oo-ui-selectFileWidget.oo-ui-widget-enabled.oo-ui-selectFileWidget-dropTarget {
background-color: var(--ooui-interface);
}
.oo-ui-selectFileWidget.oo-ui-widget-enabled.oo-ui-selectFileWidget-dropTarget:hover {
border-color: var(--ooui-input-border--hover);
}
.oo-ui-tabOptionWidget {
color: var(--ooui-text);
}
.oo-ui-tabSelectWidget-framed .oo-ui-tabOptionWidget.oo-ui-optionWidget-selected {
background-color: var(--body-dark);
color: var(--ooui-text);
}
.oo-ui-tabSelectWidget-framed .oo-ui-tabOptionWidget.oo-ui-optionWidget-selected .oo-ui-labelElement-label {
border-bottom-color: var(--body-border);
}
.oo-ui-tabSelectWidget-framed .oo-ui-tabOptionWidget.oo-ui-widget-enabled:hover,
.oo-ui-tabSelectWidget-framed .oo-ui-tabOptionWidget.oo-ui-widget-enabled:active {
background-color: var(--body-light);
color: var(--ooui-text);
}
.oo-ui-tabSelectWidget-framed .oo-ui-tabOptionWidget.oo-ui-widget-enabled.oo-ui-optionWidget-selected:hover {
background-color: var(--body-dark);
}
.oo-ui-tabSelectWidget-frameless .oo-ui-tabOptionWidget.oo-ui-optionWidget-selected {
color: var(--ooui-progressive);
box-shadow: inset 0 -2px 0 0 var(--ooui-progressive);
}
.oo-ui-tabSelectWidget-frameless .oo-ui-tabOptionWidget.oo-ui-optionWidget-selected:hover,
.oo-ui-tabSelectWidget-frameless .oo-ui-tabOptionWidget.oo-ui-optionWidget-selected:focus {
color: var(--ooui-progressive--hover);
box-shadow: inset 0 -2px 0 0 var(--ooui-progressive--hover);
}
.oo-ui-tabSelectWidget-framed {
background: none;
border-bottom: 1px solid var(--ooui-interface-border);
}
.oo-ui-tabSelectWidget-frameless {
box-shadow: inset 0 -1px 0 0 var(--ooui-interface-border);
}
.oo-ui-tabSelectWidget-mobile {
}
.oo-ui-tabSelectWidget-mobile.oo-ui-tabSelectWidget-framed:after {
background: var(--mobile-navbox-linear-gradient);
}
.oo-ui-tabSelectWidget-mobile.oo-ui-tabSelectWidget-frameless:after {
background: var(--mobile-navbox-linear-gradient);
}
.oo-ui-tagItemWidget {
border-color: var(--ooui-normal-border);
}
.oo-ui-tagItemWidget.oo-ui-widget-enabled {
color: var(--ooui-text);
}
.oo-ui-tagItemWidget.oo-ui-widget-enabled:hover {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
}
.oo-ui-tagItemWidget.oo-ui-widget-enabled:not( .oo-ui-tagItemWidget-fixed ) {
background-color: var(--ooui-normal);
}
.oo-ui-tagItemWidget.oo-ui-widget-enabled .oo-ui-buttonElement-button:hover {
background-color: var(--ooui-normal--hover);
}
.oo-ui-tagMultiselectWidget.oo-ui-widget-enabled {
background-color: var(--ooui-interface);
}
.oo-ui-tagMultiselectWidget.oo-ui-widget-enabled.oo-ui-tagMultiselectWidget-outlined {
background-color: var(--ooui-normal);
}
.oo-ui-tagMultiselectWidget.oo-ui-widget-enabled.oo-ui-tagMultiselectWidget-outlined .oo-ui-tagItemWidget.oo-ui-widget-enabled {
background-color: var(--ooui-interface);
}
.oo-ui-textInputWidget .oo-ui-inputWidget-input {
background-color: var(--ooui-input);
color: var(--ooui-text);
border-color: var(--ooui-input-border);
}
.oo-ui-textInputWidget.oo-ui-widget-enabled .oo-ui-inputWidget-input::placeholder {
color: var(--subtle-color);
}
.oo-ui-textInputWidget.oo-ui-widget-enabled .oo-ui-inputWidget-input:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-textInputWidget.oo-ui-widget-enabled .oo-ui-inputWidget-input[readonly]:not(.oo-ui-pendingElement-pending) {
background-color: var(--ooui-disabled);
color: var(--ooui-disabled-text);
}
.oo-ui-textInputWidget.oo-ui-widget-enabled:hover .oo-ui-inputWidget-input {
border-color: var(--ooui-input-border--hover);
}
.oo-ui-textInputWidget.oo-ui-widget-enabled:hover .oo-ui-inputWidget-input:focus {
border-color: var(--ooui-accent);
}
@media screen and (min-width: 0) {
.oo-ui-textInputWidget.oo-ui-widget-enabled textarea.oo-ui-inputWidget-input:focus {
outline: 1px solid var(--ooui-accent);
}
}
.oo-ui-textInputWidget.oo-ui-widget-disabled .oo-ui-inputWidget-input {
background-color: var(--ooui-disabled);
color: var(--ooui-disabled-text);
text-shadow: none;
border-color: var(--ooui-disabled-border);
}
.oo-ui-toggleSwitchWidget {
background-color: var(--ooui-input);
border-color: var(--ooui-input-border);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled .oo-ui-toggleSwitchWidget-grip {
background-color: var(--ooui-input);
border-color: var(--ooui-input-border);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:hover {
background-color: var(--ooui-input);
border-color: var(--ooui-accent);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:hover .oo-ui-toggleSwitchWidget-grip {
background-color: var(--ooui-input);
border-color: var(--ooui-accent);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:active,
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:active:hover,
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:active:focus {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
box-shadow: inset 0 0 0 1px var(--ooui-progressive--hover);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:active .oo-ui-toggleSwitchWidget-grip,
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:active:hover .oo-ui-toggleSwitchWidget-grip,
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:active:focus .oo-ui-toggleSwitchWidget-grip {
background-color: var(--ooui-input);
border-color: var(--ooui-input);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:focus .oo-ui-toggleSwitchWidget-grip {
border-color: var(--ooui-accent);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled.oo-ui-toggleWidget-on {
background-color: var(--ooui-progressive);
border-color: var(--ooui-progressive);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled.oo-ui-toggleWidget-on .oo-ui-toggleSwitchWidget-grip {
background-color: var(--ooui-input);
border-color: var(--ooui-input);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled.oo-ui-toggleWidget-on:hover {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled.oo-ui-toggleWidget-on:active,
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled.oo-ui-toggleWidget-on:active:hover {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled.oo-ui-toggleWidget-on:focus {
border-color: var(--ooui-progressive);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled.oo-ui-toggleWidget-on:focus::before {
border-color: #fff;
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-disabled {
background-color: var(--ooui-disabled);
border-color: var(--ooui-disabled);
}
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled > .oo-ui-buttonElement-button {
color: var(--ooui-text);
}
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled > .oo-ui-buttonElement-button:hover {
color: var(--ooui-text);
}
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled > .oo-ui-buttonElement-button:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled.oo-ui-buttonElement-pressed > input.oo-ui-buttonElement-button,
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled > .oo-ui-buttonElement-button:active {
color: var(--ooui-text);
}
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button,
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button:hover {
color: var(--ooui-text);
}
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button:active,
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive.oo-ui-buttonElement-pressed > .oo-ui-buttonElement-button {
color: var(--ooui-text);
border-color: var(--ooui-text);
}
.oo-ui-buttonElement-frameless.oo-ui-widget-disabled > .oo-ui-buttonElement-button {
color: var(--ooui-disabled-text);
}
.oo-ui-buttonElement-framed.oo-ui-widget-disabled > .oo-ui-buttonElement-button {
background-color: var(--ooui-disabled);
border-color: var(--ooui-disabled-border);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled > .oo-ui-buttonElement-button {
background-color: var(--ooui-normal);
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled > .oo-ui-buttonElement-button:hover {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled > .oo-ui-buttonElement-button:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-buttonElement-active > .oo-ui-buttonElement-button {
background-color: var(--ooui-progressive--hover);
color: #fff;
border-color: var(--ooui-progressive--hover);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-buttonElement-active > .oo-ui-buttonElement-button:focus {
border-color: var(--ooui-progressive--hover);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled > .oo-ui-buttonElement-button:active,
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-buttonElement-pressed > .oo-ui-buttonElement-button {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive {
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button {
color: var(--ooui-text);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button:hover {
background-color: var(--ooui-normal--hover);
border-color: var(--ooui-progressive--hover);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-destructive > .oo-ui-buttonElement-button {
color: var(--ooui-text);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-destructive > .oo-ui-buttonElement-button:hover {
background-color: var(--ooui-normal--hover);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button {
background-color: var(--ooui-progressive);
border-color: var(--ooui-progressive);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button:hover {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent), inset 0 0 0 2px #fff;
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button:active,
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive.oo-ui-buttonElement-pressed > .oo-ui-buttonElement-button,
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive.oo-ui-buttonElement-active > .oo-ui-buttonElement-button,
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive.oo-ui-popupToolGroup-active > .oo-ui-buttonElement-button {
color: #fff;
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
}
.oo-ui-pendingElement-pending {
background-image: var(--ooui-pending-background-image);
background-size: 200%;
animation: oo-ui-pendingElement-stripes 6s linear infinite;
}
@keyframes oo-ui-pendingElement-stripes {
100% {
background-position: 100%;
}
}
.oo-ui-messageDialog-content > .oo-ui-window-foot {
outline-color: var(--ooui-interface-border);
}
.oo-ui-messageDialog-message {
color: var(--ooui-text);
}
.oo-ui-messageDialog-actions-horizontal .oo-ui-actionWidget {
border-right-color: var(--ooui-interface-border);
}
.oo-ui-messageDialog-actions-vertical .oo-ui-actionWidget {
border-bottom-color: var(--ooui-interface-border);
}
.oo-ui-processDialog-content .oo-ui-window-head,
.oo-ui-processDialog-content .oo-ui-window-foot {
outline-color: var(--ooui-interface-border);
}
.oo-ui-processDialog .oo-ui-actionWidget > .oo-ui-buttonElement-button {
border-top-color: transparent;
border-bottom-color: transparent;
}
.oo-ui-processDialog .oo-ui-actionWidget > .oo-ui-buttonElement-button:hover,
.oo-ui-processDialog .oo-ui-actionWidget > .oo-ui-buttonElement-button:active {
border-top-color: transparent;
border-bottom-color: transparent;
}
.oo-ui-processDialog .oo-ui-actionWidget:not( .oo-ui-flaggedElement-progressive ):not( .oo-ui-flaggedElement-destructive ) > .oo-ui-buttonElement-button:hover,
.oo-ui-processDialog .oo-ui-actionWidget:not( .oo-ui-flaggedElement-progressive ):not( .oo-ui-flaggedElement-destructive ) > .oo-ui-buttonElement-button:active {
border-right-color: var(--ooui-interface-border);
border-left-color: transparent;
}
.oo-ui-processDialog .oo-ui-actionWidget:not( .oo-ui-flaggedElement-progressive ):not( .oo-ui-flaggedElement-destructive ) > .oo-ui-buttonElement-button:focus {
border-color: var(--ooui-accent);
}
.oo-ui-processDialog-actions-safe .oo-ui-actionWidget > .oo-ui-buttonElement-button,
.oo-ui-processDialog-actions-other .oo-ui-actionWidget > .oo-ui-buttonElement-button {
border-right-color: var(--ooui-normal-border);
border-left-color: transparent;
}
.oo-ui-processDialog-actions-safe .oo-ui-widget-enabled.oo-ui-iconElement:not( .oo-ui-labelElement ) > .oo-ui-buttonElement-button:hover {
background-color: var(--ooui-normal--hover);
border-right-color: var(--ooui-interface-border);
}
.oo-ui-windowManager-modal > .oo-ui-dialog {
background-color: var(--ooui-window-background);
}
.oo-ui-windowManager-modal > .oo-ui-dialog > .oo-ui-window-frame {
background-color: var(--ooui-interface);
}
.oo-ui-windowManager-modal.oo-ui-windowManager-floating > .oo-ui-dialog > .oo-ui-window-frame {
border-color: var(--ooui-interface-border);
}
.oo-ui-window {
color: var(--ooui-text);
}
.oo-ui-toolbar-bar {
background-color: var(--ooui-interface);
color: var(--ooui-text);
}
.oo-ui-toolbar-position-top > .oo-ui-toolbar-bar {
border-bottom-color: var(--body-mid);
}
.oo-ui-toolbar-bar .oo-ui-bookletLayout > .oo-ui-menuLayout-menu {
border-right-color: var(--body-mid);
}
.oo-ui-tool.oo-ui-widget-enabled > .oo-ui-tool-link:hover {
background-color: var(--ooui-normal--hover);
}
.oo-ui-tool.oo-ui-widget-enabled > .oo-ui-tool-link:focus {
outline: 1px solid var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-tool.oo-ui-widget-enabled > .oo-ui-tool-link:active,
.oo-ui-tool.oo-ui-widget-enabled.oo-ui-tool-active > .oo-ui-tool-link,
.oo-ui-tool.oo-ui-widget-enabled.oo-ui-popupToolGroup-active > .oo-ui-tool-link {
background-color: var(--ooui-normal--hover);
color: var(--ooui-accent);
box-shadow: none;
}
.oo-ui-tool.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive > .oo-ui-tool-link {
background-color: var(--ooui-progressive);
}
.oo-ui-tool.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive > .oo-ui-tool-link:hover {
background-color: var(--ooui-progressive--hover);
}
.oo-ui-tool.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive > .oo-ui-tool-link:focus {
box-shadow: inset 0 0 0 1px var(--ooui-accent), inset 0 0 0 2px #fff;
}
.oo-ui-tool.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive > .oo-ui-tool-link:active,
.oo-ui-tool.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive.oo-ui-tool-active > .oo-ui-tool-link {
background-color: var(--ooui-progressive--hover);
}
.oo-ui-listToolGroup-tools .oo-ui-tool.oo-ui-widget-enabled {
background-color: var(--ooui-normal);
}
.oo-ui-listToolGroup-tools .oo-ui-tool.oo-ui-widget-enabled:hover {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
}
.oo-ui-listToolGroup-tools .oo-ui-tool-active.oo-ui-widget-enabled .oo-ui-tool-link .oo-ui-tool-title {
color: var(--ooui-progressive);
}
.oo-ui-menuToolGroup {
border-left-color: var(--body-mid);
border-right-color: var(--body-mid);
}
.oo-ui-popupToolGroup-tools {
background-color: var(--ooui-interface);
border-color: var(--body-mid);
}
.oo-ui-popupToolGroup.oo-ui-widget-enabled > .oo-ui-popupToolGroup-handle:hover {
background-color: var(--ooui-normal--hover);
}
.oo-ui-popupToolGroup.oo-ui-widget-enabled > .oo-ui-popupToolGroup-handle:focus {
outline: 1px solid var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-toolbar-actions .oo-ui-popupToolGroup.oo-ui-widget-enabled > .oo-ui-popupToolGroup-handle:hover {
border-right-color: var(--ooui-normal--hover);
}
.oo-ui-popupToolGroup-tools .oo-ui-tool.oo-ui-widget-enabled .oo-ui-tool-link:focus {
box-shadow: inset 0 0 0 2px var(--ooui-accent);
}
.oo-ui-popupToolGroup-tools .oo-ui-tool-active.oo-ui-widget-enabled .oo-ui-tool-link .oo-ui-tool-title {
color: var(--ooui-progressive);
}
.oo-ui-popupToolGroup.oo-ui-popupToolGroup-active > .oo-ui-popupToolGroup-handle {
background-color: var(--ooui-normal);
color: var(--ooui-accent);
}
.oo-ui-popupToolGroup.oo-ui-popupToolGroup-active > .oo-ui-popupToolGroup-handle:hover {
background-color: var(--ooui-normal--hover);
color: var(--ooui-accent);
}
.oo-ui-bookletLayout-outlinePanel > .oo-ui-outlineControlsWidget {
border-top-color: var(--ooui-interface-border);
}
.oo-ui-bookletLayout > .oo-ui-menuLayout-menu {
border-right-color: var(--ooui-interface-border);
}
.oo-ui-fieldLayout-disabled > .oo-ui-fieldLayout-body > .oo-ui-fieldLayout-header > .oo-ui-labelElement-label {
color: var(--ooui-disabled-text);
}
.oo-ui-panelLayout-framed {
border-color: var(--sidebar);
}
.oo-ui-icon-settings {
background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' width='20' height='20' viewBox='0 0 20 20'%3E%3Ctitle%3Esettings%3C/title%3E%3Cg transform='translate(10 10)'%3E%3Cpath id='a' d='M1.5-10h-3l-1 6.5h5m0 7h-5l1 6.5h3'/%3E%3Cuse xlink:href='%23a' transform='rotate(45)'/%3E%3Cuse xlink:href='%23a' transform='rotate(90)'/%3E%3Cuse xlink:href='%23a' transform='rotate(135)'/%3E%3C/g%3E%3Cpath d='M10 2.5a7.5 7.5 0 0 0 0 15 7.5 7.5 0 0 0 0-15v4a3.5 3.5 0 0 1 0 7 3.5 3.5 0 0 1 0-7'/%3E%3C/svg%3E");
}
.oo-ui-icon-clear {
background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 20 20'%3E%3Ctitle%3Eclear%3C/title%3E%3Cpath d='M10 0a10 10 0 1 0 10 10A10 10 0 0 0 10 0zm5.66 14.24-1.41 1.41L10 11.41l-4.24 4.25-1.42-1.42L8.59 10 4.34 5.76l1.42-1.42L10 8.59l4.24-4.24 1.41 1.41L11.41 10z'/%3E%3C/svg%3E");
}
.mw-widget-dateInputWidget-handle {
background-color: var(--ooui-input);
color: var(--ooui-text);
border-color: var(--ooui-input-border);
}
.mw-widget-dateInputWidget-calendar {
background-color: var(--ooui-interface);
}
.mw-widget-dateInputWidget.oo-ui-widget-enabled .mw-widget-dateInputWidget-handle:hover {
border-color: var(--ooui-input-border--hover);
}
.mw-widget-calendarWidget {
border-color: var(--ooui-interface-border);
}
.mw-widget-calendarWidget:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.mw-widget-calendarWidget-day,
.mw-widget-calendarWidget-day-heading {
color: var(--ooui-text);
}
.mw-widget-calendarWidget-day-additional {
color: var(--ooui-text);
opacity: 0.67;
}
.mw-widget-calendarWidget-day-today {
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.mw-widget-calendarWidget-item:hover {
background-color: var(--ooui-progressive);
}
.mw-widget-calendarWidget-item-selected {
background-color: var(--ooui-progressive--hover);
}
.mw-widgets-datetime-calendarWidget {
background-color: var(--ooui-interface);
border-color: var(--ooui-interface-border);
}
.mw-widgets-datetime-calendarWidget:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent), 0 2px 2px 0 rgba(0, 0, 0, 0.25);
}
.mw-widgets-datetime-calendarWidget-grid .mw-widgets-datetime-calendarWidget-cell.mw-widgets-datetime-calendarWidget-extra .oo-ui-buttonElement-button .oo-ui-labelElement-label {
color: var(--subtle-color);
}
.mw-widgets-datetime-calendarWidget-grid .mw-widgets-datetime-calendarWidget-cell.mw-widgets-datetime-calendarWidget-selected .oo-ui-buttonElement-button {
background-color: var(--ooui-progressive--hover);
}
.mw-widgets-datetime-dateTimeInputWidget-handle {
background-color: var(--ooui-input);
color: var(--ooui-text);
border-color: var(--ooui-input-border);
}
.mw-widgets-datetime-dateTimeInputWidget.oo-ui-widget-enabled.mw-widgets-datetime-dateTimeInputWidget-handle:hover {
border-color: var(--ooui-input-border--hover);
}
.mw-widgets-datetime-dateTimeInputWidget.oo-ui-widget-enabled:hover input,
.mw-widgets-datetime-dateTimeInputWidget.oo-ui-widget-enabled:hover textarea {
border-color: var(--ooui-input-border--hover);
}
.mw-widgets-datetime-dateTimeInputWidget.oo-ui-widget-enabled .mw-widgets-datetime-dateTimeInputWidget-editField:hover {
background-color: var(--ooui-normal);
}
.ve-activated .ve-init-mw-desktopArticleTarget-originalContent #catlinks:hover {
background: var(--ooui-normal--hover);
}
.ve-ui-overlay {
font-family: inherit;
}
.oo-ui-toolbar-position-top .ve-ui-toolbarDialog-position-above {
border-top-color: var(--body-mid);
}
.ve-ce-branchNode-blockSlug,
.ve-ce-branchNode-newSlug {
outline-color: var(--body-border);
background-color: var(--ooui-interface);
}
.ve-ui-specialCharacterPage h3 {
color: var(--byline-color);
}
.ve-ui-specialCharacterPage-character {
border-color: var(--body-mid);
}
.ve-ui-specialCharacterPage-character:hover {
border-color: var(--body-dark);
}
.ve-ce-linkAnnotation.ve-ce-annotation-active {
box-shadow: 0 0 0 1px var(--body-mid);
background: none;
}
.ve-ui-desktopContext .ve-ui-linkContextItem .ve-ui-linkContextItem-label {
border-color: var(--body-border);
}
.ve-ui-mwHelpPopupTool-version-label,
.ve-ui-mwHelpPopupTool-version-link,
.ve-ui-mwHelpPopupTool-version-date {
color: var(--byline-color);
}
.ve-ce-tableCellableNode {
border-color: var(--body-mid);
}
.ve-ce-mwReferencesListNode-muted {
color: var(--byline-color);
}
.ve-ui-mwTemplatePage-description,
.ve-ui-mwParameterPage-label,
.ve-ui-mwParameterPage-description-required,
.ve-ui-mwParameterPage-description-deprecated {
color: var(--byline-color);
}
.mw-widget-titleWidget-menu .mw-widget-titleOptionWidget-description {
color: var(--byline-color);
}
.ve-ui-mwGalleryDialog-menuLayout > .oo-ui-menuLayout-menu,
.ve-ui-mwGalleryDialog-innerMenuLayout > .oo-ui-menuLayout-menu,
.ve-ui-mwGalleryDialog .ve-ui-mwGalleryDialog-image-container,
.ve-ui-targetWidget {
border-color: var(--body-border);
}
.ve-ui-targetWidget:not(.oo-ui-pendingElement-pending) {
background-color: var(--body-main);
}
.ve-ui-mwSaveDialog {
color: var(--ooui-text);
}
.ve-ui-mwSaveDialog-options {
background-color: var(--ooui-interface);
border-color: var(--body-border);
}
.ve-ui-mwSaveDialog-summary {
background-color: var(--ooui-input);
}
.ve-ui-mwSaveDialog-editSummary-count {
border-color: var(--body-border);
}
.ve-ui-mwSaveDialog-license {
color: var(--byline-color);
}
.ve-ui-mwReferenceContextItem-muted {
color: var(--byline-color);
}
.ve-ui-mwNoticesPopupTool-items > div:not(:first-child),
.ve-ui-mwHelpPopupTool-item:not(:first-child) {
border-color: var(--body-border);
}
.ve-ui-mwTransclusionOutlineControlsWidget {
background-color: var(--ooui-interface);
border-top-color: var(--body-border);
}
.ve-ui-mwTransclusionOutlineTemplateWidget-sticky {
background-color: var(--ooui-interface);
}
.ve-ui-mwTransclusionOutlineTemplateWidget .ve-ui-mwTransclusionOutlineParameterWidget.oo-ui-optionWidget-highlighted {
color: var(--ooui-text);
}
.ve-ui-mwTransclusionOutlineTemplateWidget-no-template-parameters {
color: var(--subtle-color);
}
.ve-ui-mwParameterPage-undocumentedLabel {
color: var(--subtle-color);
}
.ve-ui-mwTwoPaneTransclusionDialogLayout > .oo-ui-menuLayout-menu {
border-right: var(--body-border);
}
.ve-ui-mwParameterPage-doc-required,
.ve-ui-mwParameterPage-doc-deprecated,
.ve-ui-mwParameterPage-inlineDescription .ve-ui-mwParameterPage-doc-example {
color: var(--byline-color);
}
.ve-ui-expandableContent-toggle {
background-color: var(--ooui-interface);
}
.ve-ui-expandableContent-fade {
background: linear-gradient(to right, rgba(255, 255, 255, 0) 0, var(--ooui-interface) 90%);
}
.ve-ui-commandHelpDialog-shortcut > kbd,
.ve-ui-commandHelpDialog-sequence > kbd {
background-color: var(--keypress-background);
color: var(--keypress-color);
border-color: var(--keypress-border);
box-shadow: none;
text-shadow: none;
}
.ve-init-mw-desktopArticleTarget-toolbarPlaceholder-floating .ve-init-mw-desktopArticleTarget-toolbarPlaceholder-bar {
background: var(--ooui-interface);
}
.ve-init-mw-desktopArticleTarget-toolbarPlaceholder-bar {
border-bottom-color: var(--body-mid);
}
figure[typeof~='mw:File/Thumb'],
figure[typeof~='mw:File/Frame'],
figure[typeof~='mw:Image/Thumb'],
figure[typeof~='mw:Video/Thumb'],
figure[typeof~='mw:Image/Frame'],
figure[typeof~='mw:Video/Frame'] {
border: none;
background-color: var(--thumb-bg);
}
figure[typeof~='mw:File/Thumb'] > a:first-child > *:first-child:not( .mw-broken-media ),
figure[typeof~='mw:File/Frame'] > a:first-child > *:first-child:not( .mw-broken-media ),
figure[typeof~='mw:Image/Thumb'] > a:first-child > *:first-child:not( .mw-broken-media ),
figure[typeof~='mw:Video/Thumb'] > a:first-child > *:first-child:not( .mw-broken-media ),
figure[typeof~='mw:Image/Frame'] > a:first-child > *:first-child:not( .mw-broken-media ),
figure[typeof~='mw:Video/Frame'] > a:first-child > *:first-child:not( .mw-broken-media ) {
border: none;
background: var(--thumb-bg);
}
figure[typeof~='mw:File/Thumb'] > figcaption,
figure[typeof~='mw:File/Frame'] > figcaption,
figure[typeof~='mw:Image/Thumb'] > figcaption,
figure[typeof~='mw:Video/Thumb'] > figcaption,
figure[typeof~='mw:Image/Frame'] > figcaption,
figure[typeof~='mw:Video/Frame'] > figcaption {
border: none;
background-color: var(--thumb-caption-bg);
padding: 4px 6px;
}
:root {
--keypress-background: #eee;
--keypress-border: #ccc;
--keypress-color: #333;
}
.archivelist {
background-color: var(--body-light);
border: solid 1px var(--body-border);
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
float: right;
margin: 5px;
padding: 5px;
text-align: center;
width: 120px;
}
.shortcut {
border: 1px solid var(--body-border);
background: var(--body-light);
float: right;
font-size: 0.8em;
margin: 0.5em 0em 0.5em 1em;
padding: 0.5em;
text-align: center;
}
.hatnote,
.seealso {
font-style: italic;
}
.hatnote i,
.seealso i {
font-style: normal;
}
div.hatnote,
div.seealso {
margin: 0.5em 1.6em;
}
div.hatnote + div.hatnote,
div.hatnote + div.seealso,
div.seealso + div.hatnote,
div.seealso + div.seealso {
margin-top: -0.5em;
}
.keypress {
background: var(--keypress-background);
color: var(--keypress-color);
font-family: inherit;
border: 1px solid var(--keypress-border);
border-radius: 2px;
font-size: 0.9em;
margin: 0 0.1em;
padding: 0.1em 0.4em;
white-space: nowrap;
}
:root {
--documentation-background: #f9fafa;
--documentation-link-color: #e4eaee;
--documentation-headers-color: #fff;
--documentation-header-background: #949eaa;
--documentation-subheader-background: #808c9a;
--documentation-border: #e4eaee;
}
.documentation {
background: var(--documentation-background);
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
margin: 1em 0;
}
.documentation pre,
.documentation code {
background-color: var(--documentation-background);
border-color: var(--documentation-border);
}
.documentation h2,
.documentation hr {
border-color: var(--documentation-border);
}
.documentation-header {
color: var(--documentation-headers-color);
background: var(--documentation-header-background);
font-weight: bold;
padding: 1em 1.5em;
}
.documentation-title {
font-size: 1.25em;
}
.documentation-subheader {
color: var(--documentation-headers-color);
background: var(--documentation-subheader-background);
padding: 0.5em 1.5em;
}
.documentation-subheader a,
.documentation-subheader a:visited,
.documentation-subheader a:active {
color: var(--documentation-link-color);
}
.documentation-documentation,
.documentation-links {
font-size: 0.85em;
}
.documentation-content {
padding: 1em 1.5em;
}
.mw-templatedata-doc-params dl:not(:empty) {
column-count: 3;
border-top: 1px solid var(--body-border);
margin-bottom: 0.5em;
}
.mw-templatedata-doc-params dt::after {
content: ":";
}
.mw-templatedata-doc-params dd,
.mw-templatedata-doc-params dt {
margin: 0.1em 2em;
min-width: auto;
}
.mw-templatedata-doc-muted {
color: var(--subtle-color);
font-style: italic;
}
:root {
--infobox-text-color: var(--text-color);
}
ol.references,
.reflist {
font-size: 90%;
}
.reflist {
list-style-type: decimal;
}
.reflist .references {
font-size: 100%;
list-style-type: inherit;
}
.reflist-lower-alpha {
list-style-type: lower-alpha;
}
ol.references li:target,
sup.reference:target {
background-color: var(--body-light);
}
.hideQuotes .refhide {
display: none;
}
:root {
--messagebox-obsolete-background: #cfcfcf;
--messagebox-obsolete-border: #464646;
--messagebox-obsolete-color: var(--text-color);
--messagebox-obsolete-link-color: #6c6c6c;
--messagebox-info-background: #ebebeb;
--messagebox-info-border: #898989;
--messagebox-info-color: var(--text-color);
--messagebox-info-link-color: #6c6c6c;
--messagebox-action-background: #c7e8fa;
--messagebox-action-border: #0b5884;
--messagebox-action-color: var(--text-color);
--messagebox-action-link-color: #03436b;
--messagebox-warn-background: #dfc0ba;
--messagebox-warn-border: #861c10;
--messagebox-warn-color: var(--text-color);
--messagebox-warn-link-color: #8e221a;
--messagebox-safe-background: #d8f0d3;
--messagebox-safe-border: #1b8408;
--messagebox-safe-color: var(--text-color);
--messagebox-safe-link-color: #1b8408;
--messagebox-disambig-background: #ebebeb;
--messagebox-disambig-border: #898989;
--messagebox-disambig-color: var(--text-color);
--messagebox-disambig-link-color: #6c6c6c;
--messagebox-discord-background: #5865f2;
--messagebox-discord-border: #4c57d0;
--messagebox-discord-link-color: #d2e5fc;
}
.mw-message-box,
.mw-message-box-error,
.mw-message-box-warning,
.mw-message-box-success,
.usermessage {
color: var(--text-color);
}
.messagebox {
width: 65%;
margin: 0.5em auto;
border-left: 15px solid;
border-color: var(--body-dark);
background-color: var(--body-light);
box-sizing: border-box;
}
.messagebox.obsolete {
background-color: var(--messagebox-obsolete-background);
border-color: var(--messagebox-obsolete-border);
color: var(--messagebox-obsolete-color);
}
.messagebox.obsolete a,
.messagebox.obsolete a:visited,
.messagebox.obsolete a:active {
color: var(--messagebox-obsolete-link-color);
}
.messagebox.info {
background-color: var(--messagebox-info-background);
border-color: var(--messagebox-info-border);
color: var(--messagebox-info-color);
}
.messagebox.info a,
.messagebox.info a:visited,
.messagebox.info a:active {
color: var(--messagebox-info-link-color);
}
.messagebox.action {
background-color: var(--messagebox-action-background);
border-color: var(--messagebox-action-border);
color: var(--messagebox-action-color);
}
.messagebox.action a,
.messagebox.action a:visited,
.messagebox.action a:active {
color: var(--messagebox-action-link-color);
}
.messagebox.warn {
background-color: var(--messagebox-warn-background);
border-color: var(--messagebox-warn-border);
color: var(--messagebox-warn-color);
}
.messagebox.warn a,
.messagebox.warn a:visited,
.messagebox.warn a:active {
color: var(--messagebox-warn-link-color);
}
.messagebox.safe {
background-color: var(--messagebox-safe-background);
border-color: var(--messagebox-safe-border);
color: var(--messagebox-safe-color);
}
.messagebox.safe a,
.messagebox.safe a:visited,
.messagebox.safe a:active {
color: var(--messagebox-safe-link-color);
}
.messagebox.disambig {
background-color: var(--messagebox-disambig-background);
border-color: var(--messagebox-disambig-border);
color: var(--messagebox-disambig-color);
}
.messagebox.disambig a,
.messagebox.disambig a:visited,
.messagebox.disambig a:active {
color: var(--messagebox-disambig-link-color);
}
.messagebox.discord {
background-color: var(--messagebox-discord-background);
border-color: var(--messagebox-discord-border);
color: #fff;
}
.messagebox.discord a,
.messagebox.discord a:visited,
.messagebox.discord a:active {
color: var(--messagebox-discord-link-color);
}
.messagebox.discord a.external,
.messagebox.discord a:visited.external,
.messagebox.discord a:active.external {
font-style: italic;
}
.messagebox.stub {
width: 40%;
}
.messagebox.hasdialogue {
padding: 0 10px;
width: auto;
}
:root {
--byline-arrow-filter: invert(29%) sepia(0%) saturate(376%) hue-rotate(172deg) brightness(87%) contrast(80%);
--tile-border-color: #cabe9b;
--tile-background-color: #f9f3eb;
--tile-link-button-color: #f5e9db;
--tile-link-button-highlight-color: #dfccb0;
--tile-dark-color: #fff;
--tile-dark-bg: #5d6773;
--tile-dark-link-color: #ccc;
--tile-dark-byline-color: rgba(255, 255, 255, 0.7);
--tile-dark-header-color: #fff;
}
.tile {
background: var(--tile-background-color);
border: 1px solid var(--tile-border-color);
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
padding: 1.5em 2em 1em;
max-width: 40em;
}
.tile h2 {
font-size: 1.4em;
font-weight: bold;
border: none;
margin: 0 0 0.4em;
}
.tile .byline + h2 {
margin-top: -0.5em;
}
.tile.dark {
color: var(--tile-dark-color);
background: var(--tile-dark-bg);
border: none;
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.3);
}
.tile.dark h2 {
color: var(--tile-dark-header-color);
}
.tile.dark a {
color: var(--tile-dark-link-color);
}
.tile.dark .byline {
color: var(--tile-dark-byline-color);
}
.byline {
font-size: 0.9em;
color: var(--byline-color);
}
.byline a {
color: var(--byline-color);
}
.tile-row {
display: flex;
flex-flow: row wrap;
margin-bottom: 1em;
}
.tile-halves {
display: flex;
flex-flow: row wrap;
border: 1px solid var(--tile-border-color);
background: var(--tile-background-color);
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
}
.tile-halves h2 {
font-size: 1.4em;
font-weight: bold;
border: none;
margin: 0 0 0.4em;
}
.tile-halves .byline + h2 {
margin-top: -0.5em;
}
.tile-top {
width: 100%;
padding: 1.3rem 1.5rem 0.6rem;
}
.tile-top.tile-image {
display: flex;
align-items: center;
background-color: var(--byline-color);
overflow: hidden;
padding: 0;
height: 13vw;
max-height: 12em;
transition: 0.4s ease-out;
}
.tile-halves:hover .tile-top.tile-image img {
transform: scale(1.1);
transition: 0.5s ease-out;
}
.tile-top.tile-image a {
width: 100%;
}
.tile-top.tile-image img {
width: 100%;
object-fit: cover;
max-height: 200px;
transition: 0.4s ease-out;
}
.tile-bottom {
background: var(--tile-background-color);
border-top: 1px solid var(--tile-border-color);
width: 100%;
padding: 1rem 1.5rem 0.6rem;
}
.tile-bottom.link-button {
align-self: flex-end;
padding: 0;
}
.tile-bottom.link-button a {
display: block;
text-align: center;
padding: 0.75em 1.5em 0.8em;
text-decoration: none;
}
.tile-bottom.read-more {
background: var(--tile-link-button-color);
transition: 0.3s ease-out;
}
.tile-bottom.read-more a {
color: var(--byline-color);
font-weight: bold;
text-align: right;
}
.tile-bottom.read-more:hover {
background: var(--tile-link-button-highlight-color);
}
.tile-bottom.read-more:hover .arrow {
transform: translateX(50%);
}
.tile-bottom.read-more .arrow {
filter: var(--byline-arrow-filter);
margin-left: 0.4em;
transition: 0.3s ease-out;
}
body.page-Main_Page.action-view .catlinks,
body.page-Main_Page.action-view #contentSub,
body.page-Main_Page.action-view #firstHeading,
body.page-Main_Page.action-view #siteNotice {
display: none;
}
body.page-Main_Page .mw-parser-output {
max-width: 75em;
margin: 0 auto;
}
body.page-Main_Page.action-view .catlinks,
body.page-Main_Page.action-view #contentSub,
body.page-Main_Page.action-view #siteNotice {
display: none;
}
.mainpage-header {
display: flex;
margin: 2.6em 1.75em 1.5em;
}
.mainpage-header .header-intro {
flex: 2;
}
.mainpage-header .header-intro h1 {
font-size: 2.5em;
font-weight: bold;
border: none;
margin: 0 0 0.15em;
}
.mainpage-header .header-intro p {
font-size: 1.1em;
line-height: 1.7em;
}
.mainpage-header .header-stats {
flex: 1;
display: flex;
justify-content: center;
align-items: center;
margin-top: -1em;
}
.mainpage-body {
display: grid;
grid-template-areas: "event event event" "update update update" "content content content" "left left right";
gap: 0.9rem;
grid-template-columns: repeat(3, 1fr);
}
.mainpage-body h2 a {
color: var(--text-color);
}
.mainpage-body .tile {
padding-left: 1.75em;
padding-right: 1.75em;
max-width: 100%;
}
.mainpage-body .tile-row {
width: 100%;
margin-bottom: 0;
}
.mainpage-body .tile-row {
display: grid;
gap: 0.9rem;
}
.mainpage-left {
grid-area: left;
flex: 2;
display: flex;
flex-flow: column wrap;
}
.mainpage-left > * {
margin: 0 0 0.9rem;
}
.mainpage-right {
grid-area: right;
flex: 1;
display: flex;
flex-flow: column wrap;
}
.mainpage-right > * {
margin: 0 0 0.9rem;
}
.arrow {
background: url('filepath://White-chevron.svg') no-repeat;
display: inline-block;
height: 0.7rem;
width: 0.45rem;
vertical-align: middle;
}
.arrow.dark {
filter: invert(80%);
}
.mainpage-contents {
grid-area: content;
grid-template-columns: repeat(6, 1fr);
}
.mainpage-contents .tile-halves {
flex: 1;
}
.mainpage-contents .tile-top {
height: 4.5rem;
position: relative;
}
.mainpage-contents h2 {
margin: 0;
padding: 0;
}
.mainpage-contents .tile-bottom.link-button a {
padding: 0.75em 0.2em;
}
.popular-pages ul {
display: grid;
grid-template-columns: repeat(3, 1fr);
grid-gap: 0.6em;
margin: 1em 0 0.7em 0;
}
.mp-popular-page-light {
display: flex;
align-items: center;
background-color: var(--button-background);
transition: 100ms;
}
.mp-popular-page-light a {
flex: 1;
display: block;
color: #fff;
font-weight: bold;
text-align: center;
text-decoration: none;
padding: 0.7em 1em;
}
.mp-popular-page-light:hover {
filter: brightness(115%);
transition: 100ms;
}
.mainpage-discord {
border: none;
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.3);
}
.mainpage-discord .tile-top {
display: flex;
align-items: center;
background: #5865f2;
padding: 1em 1.25em;
}
.mainpage-discord .tile-top a {
flex: 1;
position: relative;
text-decoration: none;
}
.mainpage-discord .tile-top a:hover .arrow {
transform: translateX(50%);
}
.mainpage-discord .tile-bottom {
background: #525ee0;
border: none;
padding: 1em 1.25em;
}
.mainpage-discord .tile-bottom p {
color: #fff;
font-weight: bold;
font-size: 0.9em;
text-align: center;
text-transform: uppercase;
letter-spacing: 0.03em;
margin: 0;
}
.mainpage-discord .partner-icon {
margin-right: 0.75em;
text-align: center;
width: 60px;
}
.mainpage-discord .server-name {
color: #fff;
font-weight: bold;
font-size: 1.25em;
margin: 0.5em 0 -0.15em;
}
.mainpage-discord .server-tagline {
color: rgba(255, 255, 255, 0.9);
margin-bottom: 0.5em;
}
.mainpage-discord .arrow {
position: absolute;
top: calc(50% - .5em);
right: 0;
height: 1em;
width: 0.7em;
background-size: 0.7em 1em;
transition: 0.3s ease-out;
}
.mainpage-editing {
border: none;
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.3);
}
.mainpage-editing .tile-top {
background: #438ab5;
}
.mainpage-editing .tile-bottom {
background: #3980ab;
border: none;
padding: 0.8rem 1.5rem 0.4rem;
}
.mainpage-editing h2,
.mainpage-editing a {
color: #fff;
}
.mainpage-editing p {
color: rgba(255, 255, 255, 0.9);
}
.mainpage-editing ul {
list-style-image: url('filepath://Transparent-chevron.svg');
}
@media only screen and (max-width: 1200px) {
.mainpage-contents {
grid-template-columns: repeat(3, 1fr);
}
}
@media only screen and (max-width: 1000px) {
.mainpage-body {
grid-template-areas: "event event event" "update update update" "content content content" "left left left" "right right right";
}
.mainpage-recent-updates {
grid-template-columns: repeat(2, 1fr);
}
.mainpage-recent-updates .tile-halves:last-child {
display: none;
}
.mainpage-recent-updates .tile-halves:hover .tile-top img {
transform: scale(1.04);
}
.mainpage-recent-updates .tile-top {
height: 18vw;
min-height: 9em;
}
.mainpage-header .header-stats {
display: none;
}
.mainpage-left > *:last-child,
.mainpage-right > *:last-child {
margin-bottom: 0;
}
.popular-pages ul {
grid-template-columns: repeat(2, 1fr);
}
}
@media only screen and (max-width: 720px) {
.mainpage-recent-updates {
grid-template-columns: none;
}
.mainpage-recent-updates .tile-halves:last-child {
display: flex;
}
.mainpage-contents {
grid-template-columns: repeat(2, 1fr);
}
}
.mw-prefs-buttons {
background-color: var(--body-main);
border-top-color: var(--body-border);
box-shadow: none;
}
.mw-prefs-tabs-wrapper.oo-ui-panelLayout-framed,
.mw-prefs-tabs > .oo-ui-menuLayout-content > .oo-ui-indexLayout-stackLayout > .oo-ui-tabPanelLayout {
border-color: var(--body-border);
}
.mw-htmlform-ooui .mw-htmlform-matrix tbody tr:nth-child(even) td {
background-color: var(--body-light);
}
.mw-htmlform-ooui .mw-htmlform-matrix tbody tr:hover td {
background-color: var(--body-mid);
}
:root {
--rc-positive-color: #407813;
--rc-negative-color: #b41e0f;
}
.mw-plusminus-pos {
color: var(--rc-positive-color);
}
.mw-plusminus-neg {
color: var(--rc-negative-color);
}
.client-js .mw-recentchanges-toplinks:not(.mw-recentchanges-toplinks-collapsed) {
border-color: var(--body-border);
background-color: var(--body-light);
border-radius: 2px;
}
.mw-rcfilters-ui-filterTagMultiselectWidget-wrapper-content-title {
color: var(--text-color);
}
.mw-rcfilters-ui-filterTagMultiselectWidget-emptyFilters {
color: var(--byline-color);
}
.mw-rcfilters-ui-filterTagMultiselectWidget.oo-ui-widget-enabled .oo-ui-tagMultiselectWidget-handle {
background-color: var(--ooui-interface);
border-color: var(--ooui-interface-border);
}
.mw-rcfilters-ui-filterTagMultiselectWidget-views-select-widget.oo-ui-widget {
border-color: var(--ooui-interface-border);
}
.mw-rcfilters-collapsed .mw-rcfilters-ui-filterTagMultiselectWidget {
border-bottom-color: var(--ooui-interface-border);
}
.mw-rcfilters-ui-menuSelectWidget-footer {
background-color: var(--ooui-interface);
border-color: var(--ooui-interface-border);
}
.mw-rcfilters-ui-viewSwitchWidget label.oo-ui-labelWidget {
color: var(--byline-color);
}
.mw-rcfilters-ui-tagItemWidget-popup-content {
color: var(--ooui-text);
}
.mw-changeslist-legend,
.mw-rcfilters-ui-changesListWrapperWidget .mw-changeslist-legend {
background-color: var(--body-light);
border-color: var(--body-dark);
}
.mw-rcfilters-ui-changesListWrapperWidget-previousChangesIndicator {
border-color: var(--sidebar);
}
.client-js .mw-changeslist ul,
.client-js .mw-changeslist table.mw-enhanced-rc {
margin-left: 0;
}
.mw-rcfilters-ui-watchlistTopSectionWidget-separator {
border-color: var(--sidebar);
}
.mw-rcfilters-ui-itemMenuOptionWidget-header {
border-bottom-color: var(--ooui-interface);
background-color: var(--ooui-interface-border);
}
.mw-rcfilters-ui-itemMenuOptionWidget:not(:last-child):not(.mw-rcfilters-ui-itemMenuOptionWidget-identifier-talk) {
border-bottom-color: var(--ooui-normal-border);
}
.mw-rcfilters-ui-itemMenuOptionWidget-label-title,
.mw-rcfilters-ui-itemMenuOptionWidget-label-desc {
color: var(--text-color);
}
.mw-rcfilters-ui-filterMenuOptionWidget.oo-ui-flaggedElement-muted:not(.oo-ui-optionWidget-selected) {
background-color: var(--body-main);
}
.mw-rcfilters-ui-filterMenuOptionWidget.oo-ui-flaggedElement-muted .mw-rcfilters-ui-itemMenuOptionWidget-label-title,
.mw-rcfilters-ui-filterMenuOptionWidget.oo-ui-flaggedElement-muted .mw-rcfilters-ui-itemMenuOptionWidget-label-desc {
color: var(--subtle-color);
}
.mw-rcfilters-ui-filterMenuSectionOptionWidget {
background-color: var(--body-mid);
}
.mw-rcfilters-ui-filterMenuSectionOptionWidget-header-title.oo-ui-labelElement-label {
color: var(--ooui-text);
}
.mw-rcfilters-ui-filterMenuHeaderWidget-title {
color: var(--ooui-text);
}
.mw-rcfilters-ui-filterMenuHeaderWidget-header {
border-bottom-color: var(--ooui-interface-border);
background-color: var(--ooui-interface);
}
.mw-rcfilters-ui-itemMenuOptionWidget-view-namespaces {
border-top-color: var(--ooui-interface-border);
}
.mw-rcfilters-ui-datePopupWidget {
border-color: var(--ooui-interface-border);
}
.mw-rcfilters-ui-datePopupWidget .mw-rcfilters-ui-valuePickerWidget-title {
color: var(--byline-color);
}
.mw-rcfilters-ui-savedLinksListItemWidget-label {
color: var(--ooui-accent);
}
.client-js .mw-changeslist.mw-rcfilters-ui-changesListWrapperWidget-highlighted ul,
.client-js .mw-changeslist.mw-rcfilters-ui-changesListWrapperWidget-highlighted table.mw-enhanced-rc {
margin-left: 1.5em;
}
.page-Special_CreateAccount .mw-ui-container,
.page-Special_UserLogin .mw-ui-container {
max-width: 64rem;
margin: 0 auto;
}
.mw-number-text {
color: var(--byline-color);
}
.mw-body-content .mw-number-text h3 {
color: var(--text-color);
}
#mw-indicator-mw-helplink a {
background: none;
padding: 0;
display: flex;
align-items: center;
}
#mw-indicator-mw-helplink a::before {
content: '';
margin-right: 5px;
-webkit-mask: url("/resources/src/mediawiki.helplink/images/helpNotice.svg?46d34") no-repeat 50% 50% / contain;
mask: url("/resources/src/mediawiki.helplink/images/helpNotice.svg?46d34") no-repeat 50% 50% / contain;
background: var(--text-color);
height: 20px;
width: 20px;
}
.results-info {
color: inherit;
}
.mw-search-profile-tabs {
background-color: var(--body-mid);
border-color: transparent;
}
.search-types .current a {
color: inherit;
}
#mw-searchoptions {
background-color: var(--body-mid);
border-color: transparent;
}
#mw-searchoptions .divider {
border-color: var(--body-border);
}
#mw-searchoptions h4 {
font-family: inherit;
}
#mw-searchoptions .oo-ui-labelElement:nth-of-type(odd) {
font-weight: bold;
}
.searchresult {
line-height: 1.5;
}
.searchalttitle,
#mw-search-interwiki li {
font-size: 90%;
}
.mw-search-result-data {
color: var(--byline-color);
}
.page-Special_ListFiles a.image img {
width: inherit;
height: inherit;
}
.page-Special_ListFiles .TablePager_col_thumb {
text-align: center;
}
#editcount table[border="1"] {
background-color: var(--body-main) !important;
border-color: var(--wikitable-border) !important;
margin-top: 0.5em;
}
#editcount table[border="1"] th,
#editcount table[border="1"] td {
padding: 0.2em 0.4em;
}
#editcount table[border="1"] th {
background-color: var(--wikitable-header-bg);
border: 1px solid var(--wikitable-border);
}
#editcount table[border="1"] td {
border: 1px solid var(--wikitable-border);
}
#editcount table[border="1"] tr:nth-child(odd) {
background-color: var(--body-light);
}
.mw-echo-ui-notificationBadgeButtonPopupWidget-popup > .oo-ui-popupWidget-popup .mw-echo-ui-placeholderItemWidget {
background-color: inherit;
}
table.mw-interwikitable.body td.mw-interwikitable-local-yes {
background-color: var(--table-yes-background);
color: var(--table-yes-color);
}
.mw-protectedpages-unknown {
color: var(--byline-color);
}
.watchlistredir,
.allpagesredirect {
font-style: italic;
}
.allpagesredirect:after {
color: var(--byline-color);
content: " (redirect)";
}
.mw-apisandbox-toolbar {
background: var(--body-main);
}
.oo-ui-menuOptionWidget .mw-apisandbox-flag {
color: var(--byline-color);
}
tr.mw-abusefilter-list-disabled,
tr.mw-abusefilter-list-disabled td {
color: var(--byline-color);
}
table.mw-abuselog-details {
background: var(--wikitable-bg);
border-color: var(--wikitable-border);
}
table.mw-abuselog-details th {
background: var(--wikitable-header-bg);
}
table.mw-abuselog-details th,
table.mw-abuselog-details td {
border-color: var(--wikitable-border);
}
.mw-abusefilter-log-hidden-entry {
color: var(--subtle-color);
}
body td.mw-abusefilter-history-changed {
background: var(--table-no-background);
}
div.mw-abusefilter-editor,
#mw-abusefilter-warn-preview,
#mw-abusefilter-disallow-preview {
border-color: var(--ooui-input-border);
}
.mw-destfile-warning {
border-color: var(--warningbox-border);
color: var(--text-color);
background-color: var(--warningbox-bg);
}
span.fileinput-button {
background-color: var(--ooui-normal);
border-color: var(--ooui-normal-border);
color: var(--ooui-text);
}
ul.fileupload-results li.ful-success {
background-color: var(--successbox-bg);
}
ul.fileupload-results li.ful-success a {
color: var(--link-color);
}
ul.fileupload-results li.ful-error {
background-color: var(--errorbox-bg);
}
#t-print,
#t-permalink {
display: none;
}
#filetoc {
border-radius: 2px;
background: var(--body-mid);
border-color: transparent;
margin: 0.5em auto;
text-align: center;
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
}
li.gallerybox div.thumb {
border: none;
background-color: var(--thumb-bg);
}
.smwfact {
display: none;
}
.list-header {
background-color: var(--body-mid);
color: inherit;
}
.editOptions {
color: var(--text-color);
background-color: var(--sourceeditor-background-secondary);
border-color: var(--sourceeditor-border);
}
.mw-json th,
.mw-json td {
border-color: var(--wikitable-border);
}
.mw-json td {
background: var(--wikitable-bg);
}
.mw-json th {
background: var(--wikitable-header-bg);
}
e937175ace325542c9f85e20670147e7e28ccc27
1106
1102
2024-03-24T00:00:05Z
Merds
25
Updating CSS from [[MediaWiki:Common.less]]
css
text/css
/* <pre> */
:root {
--body-main: #feffff;
--body-light: #f2f2f2;
--body-mid: #d0bd97;
--body-dark: #e3e3e3;
--body-border: #000;
--body-background-color: #173a4d;
--button-background: #605443;
--button-color: #fff;
--button-border: #3c352a;
--button-dark: #18140c;
--button-light: #3a301d;
--sidebar: #cfc08d;
--background-text-color: #e2dbc8;
--background-link-color: #e2bd8a;
--search-box: #efeee6;
--link-color: #936039;
--redlink-color: #ba0000;
--text-color: #000;
--byline-color: #ccc;
--subtle-color: #777;
--admin-blue: #332e75;
--bearcat-green: #13592e;
--awb-purple: #933b96;
--rsw-blue: #438ab6;
--osrsw-brown: #605443;
--thumb-bg: var(--body-light);
--thumb-caption-bg: var(--body-mid);
--sourceeditor-input-background: #fff;
--sourceeditor-background: var(--body-light);
--sourceeditor-background-secondary: var(--body-light);
--sourceeditor-border: var(--body-mid);
--codemirror-gutter-background: var(--body-mid);
}
@font-face {
font-family: 'Lora';
font-weight: 400 700;
font-style: normal;
font-display: swap;
src: url('filepath://Lora.woff2') format('woff2');
}
@font-face {
font-family: 'Lora';
font-weight: 400 700;
font-style: italic;
font-display: swap;
src: url('filepath://Lora-Italic.woff2') format('woff2');
}
:root {
--base-text-color: #36414f;
--base-heading-color: #444e5a;
--base-heading-border: #e4eaee;
--mw-code-background-color: #ddd4bb;
--body-background-image: url('filepath://Wiki_background.jpg');
}
#mw-page-base {
background: none;
}
.mw-body {
background-color: var(--body-main);
color: var(--text-color);
border-color: transparent;
box-shadow: 0 0 7px rgba(0, 0, 0, 0.15);
margin-top: 0;
}
h1,
h2,
h3,
h4,
h5,
h6 {
color: var(--text-color);
}
h1,
h2 {
border-color: var(--sidebar);
}
.mw-body h1,
.mw-body-content h1,
.mw-body-content h2,
.mw-body-content h3,
.mw-body-content h4,
.mw-body-content h5,
.mw-body-content h6 {
font-family: 'Lora', 'Palatino', 'Georgia', serif;
}
.mw-parser-output h2:first-of-type {
clear: left;
}
.mw-footer {
color: var(--background-text-color);
}
.mw-footer li {
color: var(--background-text-color);
}
.mw-footer a,
.mw-footer a:active,
.mw-footer a:visited {
color: var(--background-link-color);
}
::placeholder {
color: var(--subtle-color);
}
a {
color: var(--link-color);
}
a:visited,
a:active {
color: var(--link-color);
}
a.new {
color: var(--redlink-color);
}
a.new:visited {
color: var(--redlink-color);
}
.mw-parser-output a.extiw,
.mw-parser-output a.external {
color: var(--link-color);
}
.mw-parser-output a.extiw:visited,
.mw-parser-output a.external:visited,
.mw-parser-output a.extiw:active,
.mw-parser-output a.external:active {
color: var(--link-color);
}
.jsPurgeLink a.external {
color: var(--link-color);
}
:root {
--errorbox-bg: #feecea;
--errorbox-border: #ee4231;
--warningbox-bg: #fef9de;
--warningbox-border: #f9d000;
--successbox-bg: #ecf8e3;
--successbox-border: #6bc71f;
}
.mw-message-box-error,
.errorbox,
.mw-message-box-warning,
.warningbox,
.mw-message-box-success,
.successbox,
.usermessage {
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
}
.mw-message-box-error,
.errorbox {
background-color: var(--errorbox-bg);
border-color: var(--errorbox-border);
}
.mw-message-box-warning,
.warningbox,
.usermessage {
background-color: var(--warningbox-bg);
border-color: var(--warningbox-border);
}
.mw-message-box-success,
.successbox {
background-color: var(--successbox-bg);
border-color: var(--successbox-border);
}
.catlinks {
background: var(--body-light);
border: 1px solid var(--body-dark);
padding: 8px 15px;
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
}
.catlinks li {
border-color: var(--body-mid);
}
.filehistory a img,
#file img {
background: url("data:image/svg+xml,%3C%3Fxml version='1.0' encoding='UTF-8'%3F%3E%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16'%3E%3Cpath d='M0 0h8v16h8V8H0z' opacity='.13'/%3E%3C/svg%3E") repeat;
}
#file img:hover {
background: none;
}
.mw-highlight {
background: none;
}
.mw-highlight .linenos {
background-color: var(--mw-code-background-color);
color: var(--byline-color);
}
.mw-highlight a:hover .linenos,
.mw-highlight .hll a .linenos {
color: var(--text-color);
}
.mw-content-ltr.mw-highlight-lines pre,
.mw-content-ltr.content .mw-highlight-lines pre {
box-shadow: inset 2.75em 0 0 var(--mw-code-background-color);
}
#pagehistory ul {
list-style: none;
margin: 0;
}
#pagehistory li {
border: 1px solid transparent;
padding: 1px 10px;
margin: 2px 0;
}
#pagehistory li.selected {
background-color: var(--body-light);
color: inherit;
border: 1px dashed var(--body-border);
outline: none;
}
#mw-history-compare > div:first-of-type {
position: -webkit-sticky;
position: sticky;
top: 0;
background-color: var(--body-main);
border-bottom: 1px solid var(--body-dark);
padding: 0.25em 0;
}
.wgl-stickyheader #mw-history-compare > div:first-of-type {
top: 2.5rem;
}
.autocomment,
.autocomment a,
.autocomment a:visited {
color: var(--link-color);
}
li span.deleted,
span.history-deleted {
color: var(--byline-color);
}
.mw-usertoollinks-contribs-no-edits,
.mw-usertoollinks-contribs-no-edits:visited {
color: var(--redlink-color);
}
.CategoryTreeToggle {
color: var(--link-color);
}
body.wgl-stickyheader.action-view .mw-headline:target::before {
display: block;
content: '';
margin-top: -3rem;
height: 3rem;
visibility: hidden;
pointer-events: none;
}
.mw-mmv-post-image {
color: var(--text-color);
background-color: var(--body-main);
}
.mw-mmv-image-metadata {
border-top-color: var(--body-mid);
background-color: var(--body-light);
}
.mw-mmv-dialog,
.mw-mmv-dialog .mw-mmv-dialog-down-arrow,
.mw-mmv-options-dialog .mw-mmv-dialog-down-arrow {
background-color: var(--body-light);
box-shadow: none;
}
.mw-mmv-options-enable-alert {
background-color: var(--body-light);
color: var(--text-color);
}
.mw-mmv-options-dialog-header,
.mw-mmv-options-text-header,
.mw-mmv-options-text-body,
.mw-mmv-options-enable-alert,
.mw-mmv-options-dialog .mw-mmv-disable-confirmation .mw-mmv-options-dialog-header,
.mw-mmv-options-dialog .mw-mmv-disable-confirmation .mw-mmv-options-text-header {
color: var(--text-color);
}
.mw-revslider-container {
border-color: var(--sidebar);
}
.mw-revslider-slider-wrapper {
border-top-color: var(--sidebar);
}
.mw-ui-button {
background-color: var(--ooui-normal);
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
}
.mw-ui-button:not(:disabled):hover,
.mw-ui-button:not(:disabled):active {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
}
.mw-ui-button:not(:disabled):focus {
color: var(--ooui-text);
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent), inset 0 0 0 2px #fff;
}
.mw-ui-button:not(:disabled):visited {
color: var(--ooui-text);
}
.mw-ui-button.mw-ui-progressive:not(:disabled) {
background-color: var(--ooui-progressive);
color: #fff;
border-color: var(--ooui-progressive);
}
.mw-ui-button.mw-ui-progressive:not(:disabled):hover {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
}
.mw-ui-button.mw-ui-progressive:not(:disabled):focus {
box-shadow: inset 0 0 0 1px var(--ooui-accent), inset 0 0 0 2px #fff;
}
.mw-ui-button.mw-ui-progressive:not(:disabled):active,
.mw-ui-button.mw-ui-progressive:not(:disabled).is-on {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
box-shadow: none;
}
.mw-ui-button.mw-ui-destructive:not( :disabled ) {
color: #fff;
}
.mw-ui-button.mw-ui-quiet,
.mw-ui-button.mw-ui-quiet.mw-ui-progressive,
.mw-ui-button.mw-ui-quiet.mw-ui-destructive {
color: var(--text-color);
}
input[type='checkbox']:hover + .mw-ui-button.mw-ui-quiet,
input[type='checkbox']:hover + .mw-ui-button.mw-ui-quiet.mw-ui-progressive,
input[type='checkbox']:hover + .mw-ui-button.mw-ui-quiet.mw-ui-destructive,
.mw-ui-button.mw-ui-quiet:hover,
.mw-ui-button.mw-ui-quiet.mw-ui-progressive:hover,
.mw-ui-button.mw-ui-quiet.mw-ui-destructive:hover {
background-color: rgba(0, 24, 73, 0.02745098);
color: var(--text-color);
border-color: transparent;
}
input[type='checkbox']:focus + .mw-ui-button.mw-ui-quiet,
input[type='checkbox']:focus + .mw-ui-button.mw-ui-quiet.mw-ui-progressive,
input[type='checkbox']:focus + .mw-ui-button.mw-ui-quiet.mw-ui-destructive,
.mw-ui-button.mw-ui-quiet:focus,
.mw-ui-button.mw-ui-quiet.mw-ui-progressive:focus,
.mw-ui-button.mw-ui-quiet.mw-ui-destructive:focus {
color: var(--text-color);
}
input[type='checkbox']:active + .mw-ui-button.mw-ui-quiet,
input[type='checkbox']:active + .mw-ui-button.mw-ui-quiet.mw-ui-progressive,
input[type='checkbox']:active + .mw-ui-button.mw-ui-quiet.mw-ui-destructive,
.mw-ui-button.mw-ui-quiet:active,
.mw-ui-button.mw-ui-quiet.mw-ui-progressive:active,
.mw-ui-button.mw-ui-quiet.mw-ui-destructive:active {
background-color: rgba(0, 36, 73, 0.08235294);
color: var(--text-color);
border-color: #72777d;
}
.mw-ui-input {
background-color: var(--ooui-input);
color: var(--text-color);
border-color: var(--ooui-input-border);
}
.mw-ui-input:hover {
border-color: var(--ooui-input-border--hover);
}
.mw-ui-input::placeholder {
color: var(--byline-color);
}
.mw-content-ltr .redirectText li:first-child {
padding: 0;
background: 0;
}
.mw-content-ltr .redirectText li:first-child::before {
content: '';
background: currentcolor;
-webkit-mask: url("filepath://Redirect-arrow.svg") no-repeat 50% 50% / contain;
mask: url("filepath://Redirect-arrow.svg") no-repeat 50% 50% / contain;
display: inline-block;
width: 47px;
height: 20px;
}
:root {
--wikitable-header-bg: var(--body-dark);
--wikitable-border: var(--body-border);
--wikitable-bg: var(--body-light);
--wikitable-bg-lighter: #e9e3d6;
--wikitable-color: var(--text-color);
--table-na-background: rgba(255, 255, 255, 0.3);
--table-na-color: var(--subtle-color);
--table-yes-background: #c3e8a3;
--table-yes-color: #2e5e05;
--table-no-background: #fbc0ba;
--table-no-color: #801c13;
--table-maybe-background: #fcea94;
--table-maybe-color: #786300;
}
.wikitable {
background: var(--wikitable-bg);
color: var(--wikitable-color);
border-color: var(--wikitable-border);
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
}
.wikitable > tr > th,
.wikitable > tr > td,
.wikitable > * > tr > th,
.wikitable > * > tr > td {
border-color: var(--wikitable-border);
}
.wikitable > tr > th.table-noborder,
.wikitable > tr > td.table-noborder,
.wikitable > * > tr > th.table-noborder,
.wikitable > * > tr > td.table-noborder {
border-left-style: hidden;
border-right-style: hidden;
padding-left: 0;
padding-right: 0;
}
.wikitable > tr > th,
.wikitable > * > tr > th {
background-color: var(--wikitable-header-bg);
}
.tabber .wikitable {
box-shadow: none;
}
.mw_metadata td,
.mw_metadata th {
border-color: var(--wikitable-border);
}
.mw_metadata th {
background-color: var(--wikitable-header-bg);
}
.mw_metadata td {
background-color: var(--wikitable-bg);
}
.mw-datatable {
border-color: var(--wikitable-border);
}
.mw-datatable td,
.mw-datatable th {
border-color: var(--wikitable-border);
}
.mw-datatable th {
background-color: var(--wikitable-header-bg);
}
.mw-datatable td {
background-color: var(--wikitable-bg);
}
.mw-datatable tr:hover td {
background-color: var(--wikitable-bg);
}
table.alternating-rows tr:nth-child(odd),
table.alternating-cols td:nth-child(odd) {
background: var(--wikitable-alternating-bg);
}
.table-na {
background: var(--table-na-background);
color: var(--table-na-color);
vertical-align: middle;
text-align: center;
}
.table-yes {
background: var(--table-yes-background);
color: var(--table-yes-color);
}
.table-positive {
background: var(--table-yes-background);
}
.table-no {
background: var(--table-no-background);
color: var(--table-no-color);
}
.table-negative {
background: var(--table-no-background);
}
.table-maybe {
background: var(--table-maybe-background);
color: var(--table-maybe-color);
}
#mw-allmessagestable .am_actual,
#mw-allmessagestable .am_default {
background-color: var(--wikitable-bg);
}
#mw-allmessagestable .am_default:hover,
#mw-allmessagestable .am_actual:hover,
#mw-allmessagestable tbody:hover td {
background-color: var(--wikitable-bg-lighter);
}
table.wikitable td.no-cell-spacing {
padding: 0;
height: 0;
}
table.wikitable td.no-cell-spacing table {
margin: -1px;
width: calc(100% + 2px);
height: calc(100% + 2px);
}
.plainlist ol,
.plainlist ul {
margin: 0;
}
.plainlist li {
margin-bottom: 0;
list-style: none;
}
table.align-right-1 td:nth-of-type(1),
table.align-right-2 td:nth-of-type(2),
table.align-right-3 td:nth-of-type(3),
table.align-right-4 td:nth-of-type(4),
table.align-right-5 td:nth-of-type(5),
table.align-right-6 td:nth-of-type(6),
table.align-right-7 td:nth-of-type(7),
table.align-right-8 td:nth-of-type(8),
table.align-right-9 td:nth-of-type(9),
table.align-right-10 td:nth-of-type(10),
table.align-right-11 td:nth-of-type(11),
table.align-right-12 td:nth-of-type(12),
table.align-right-13 td:nth-of-type(13),
table.align-right-14 td:nth-of-type(14),
table.align-right-15 td:nth-of-type(15),
table.align-right-16 td:nth-of-type(16),
table.align-right-17 td:nth-of-type(17),
table.align-right-18 td:nth-of-type(18),
table.align-right-19 td:nth-of-type(19),
table.align-right-20 td:nth-of-type(20) {
text-align: right;
}
table.align-center-1 td:nth-of-type(1),
table.align-center-2 td:nth-of-type(2),
table.align-center-3 td:nth-of-type(3),
table.align-center-4 td:nth-of-type(4),
table.align-center-5 td:nth-of-type(5),
table.align-center-6 td:nth-of-type(6),
table.align-center-7 td:nth-of-type(7),
table.align-center-8 td:nth-of-type(8),
table.align-center-9 td:nth-of-type(9),
table.align-center-10 td:nth-of-type(10),
table.align-center-11 td:nth-of-type(11),
table.align-center-12 td:nth-of-type(12),
table.align-center-13 td:nth-of-type(13),
table.align-center-14 td:nth-of-type(14),
table.align-center-15 td:nth-of-type(15),
table.align-center-16 td:nth-of-type(16),
table.align-center-17 td:nth-of-type(17),
table.align-center-18 td:nth-of-type(18),
table.align-center-19 td:nth-of-type(19),
table.align-center-20 td:nth-of-type(20) {
text-align: center;
}
table.align-left-1 td:nth-of-type(1),
table.align-left-2 td:nth-of-type(2),
table.align-left-3 td:nth-of-type(3),
table.align-left-4 td:nth-of-type(4),
table.align-left-5 td:nth-of-type(5),
table.align-left-6 td:nth-of-type(6),
table.align-left-7 td:nth-of-type(7),
table.align-left-8 td:nth-of-type(8),
table.align-left-9 td:nth-of-type(9),
table.align-left-10 td:nth-of-type(10),
table.align-left-11 td:nth-of-type(11),
table.align-left-12 td:nth-of-type(12),
table.align-left-13 td:nth-of-type(13),
table.align-left-14 td:nth-of-type(14),
table.align-left-15 td:nth-of-type(15),
table.align-left-16 td:nth-of-type(16),
table.align-left-17 td:nth-of-type(17),
table.align-left-18 td:nth-of-type(18),
table.align-left-19 td:nth-of-type(19),
table.align-left-20 td:nth-of-type(20) {
text-align: left;
}
:root {
--diff-addedline-border-color: #438ab5;
--diff-addedline-background: #bddff2;
--diff-addedline-color: #000;
--diff-deletedline-border-color: #379541;
--diff-deletedline-background: #c1edbf;
--diff-deletedline-color: #000;
--diff-context-border-color: var(--body-mid);
--diff-context-background: var(--body-mid);
}
.diff-context {
border-color: var(--diff-context-border-color);
background: var(--diff-context-background);
color: inherit;
}
.diff-addedline {
border-color: var(--diff-addedline-border-color);
}
.diff-addedline .diffchange {
background: var(--diff-addedline-background);
color: var(--diff-addedline-color);
}
.diff-deletedline {
border-color: var(--diff-deletedline-border-color);
}
.diff-deletedline .diffchange {
background: var(--diff-deletedline-background);
color: var(--diff-deletedline-color);
}
.mw-diff-movedpara-left:after,
.mw-diff-movedpara-right:after {
color: var(--text-color);
}
.mw-notification {
background-color: var(--body-light);
border-color: var(--body-border);
color: var(--text-color);
}
.mw-echo-ui-notificationsInboxWidget-toolbarWrapper {
background: var(--body-main);
}
.mw-body-content .mw-echo-ui-datedSubGroupListWidget-title-secondary {
color: var(--byline-color);
}
.mw-echo-ui-pageNotificationsOptionWidget.oo-ui-optionWidget-selected {
background-color: var(--ooui-normal);
color: var(--ooui-accent);
}
.mw-echo-ui-pageNotificationsOptionWidget-label-count {
background-color: var(--ooui-normal);
color: var(--byline-color);
}
.oo-ui-optionWidget-selected .mw-echo-ui-pageNotificationsOptionWidget-label-count {
color: var(--ooui-accent);
}
.mw-echo-ui-pageNotificationsOptionWidget.oo-ui-optionWidget-highlighted {
background-color: var(--ooui-normal);
color: var(--text-color);
}
.mw-echo-ui-crossWikiUnreadFilterWidget {
border-color: var(--body-border);
}
.mw-echo-ui-crossWikiUnreadFilterWidget-subtitle {
color: var(--byline-color);
}
.mw-echo-ui-notificationBadgeButtonPopupWidget-popup > .oo-ui-popupWidget-popup > .oo-ui-popupWidget-head,
.mw-echo-ui-notificationBadgeButtonPopupWidget-popup > .oo-ui-popupWidget-popup > .oo-ui-popupWidget-footer {
border-color: var(--ooui-interface-border);
}
.mw-echo-ui-notificationBadgeButtonPopupWidget-popup > .oo-ui-popupWidget-popup > .oo-ui-popupWidget-footer .mw-echo-ui-notificationBadgeButtonPopupWidget-footer-buttons .oo-ui-buttonElement:last-child {
border-left-color: var(--ooui-normal-border);
}
.mw-echo-ui-notificationItemWidget {
background-color: var(--ooui-normal);
border-color: var(--ooui-normal-border);
}
.mw-echo-ui-notificationItemWidget:hover,
.mw-echo-ui-notificationItemWidget-unread:hover {
background-color: var(--ooui-normal--hover);
}
.mw-echo-ui-notificationItemWidget:last-child {
border-bottom-color: var(--ooui-normal-border);
}
.mw-echo-ui-notificationItemWidget-unread {
background-color: var(--search-box);
}
.mw-echo-ui-crossWikiNotificationItemWidget-group,
.mw-echo-ui-bundleNotificationItemWidget-group {
background-color: var(--ooui-interface);
}
.mw-echo-ui-toggleReadCircleButtonWidget-circle {
background-color: var(--ooui-progressive);
}
.mw-echo-ui-toggleReadCircleButtonWidget:hover .mw-echo-ui-toggleReadCircleButtonWidget-circle {
background-color: var(--ooui-progressive--hover);
}
.mw-echo-ui-toggleReadCircleButtonWidget-circle-unread {
background-color: var(--ooui-normal);
border-color: var(--ooui-normal-border);
}
.mw-echo-ui-notificationItemWidget-content-message-header,
.mw-echo-ui-notificationItemWidget-content-message-body,
.mw-echo-ui-menuItemWidget > .oo-ui-buttonElement-button > .oo-ui-labelElement-label,
.mw-echo-ui-notificationItemWidget-content-actions-timestamp {
color: var(--ooui-text);
}
.mw-echo-ui-bundleNotificationItemWidget-group {
background-color: var(--body-main);
}
@keyframes unseen-fadeout-to-unread {
from {
background-color: var(--wikitable-bg-lighter);
}
to {
background-color: var(--search-box);
}
}
@keyframes unseen-fadeout-to-read {
from {
background-color: var(--wikitable-bg-lighter);
}
to {
background-color: var(--body-main);
}
}
.mwe-popups {
background: var(--body-light);
}
.mwe-popups .mwe-popups-container {
color: var(--text-color);
background: var(--body-light);
}
.mwe-popups .mwe-popups-container.flipped-x-y:before,
.mwe-popups .mwe-popups-container.flipped-y:before {
border-top: none;
}
.mwe-popups .mwe-popups-container.mwe-popups-no-image-tri:before {
border-bottom: none;
}
.mwe-popups .mwe-popups-container.flipped-x-y:after,
.mwe-popups .mwe-popups-container.flipped-y:after {
border-top-color: var(--body-light);
}
.mwe-popups .mwe-popups-container.mwe-popups-no-image-tri:after {
border-bottom-color: var(--body-light);
}
.mwe-popups .mwe-popups-settings-icon:hover,
.mwe-popups .mwe-popups-settings-icon:active {
background-color: var(--ooui-normal--hover);
}
.mwe-popups .mw-ui-icon-element:not(.disabled):hover {
background: none;
}
.mwe-popups .mwe-popups-extract {
color: var(--text-color);
}
.mwe-popups .mwe-popups-extract[dir='ltr']:after {
background-image: linear-gradient(to right, rgba(49, 62, 89, 0), var(--body-light) 50%);
}
.mwe-popups-overlay {
background-color: var(--ooui-window-background);
}
#mwe-popups-settings {
background: var(--ooui-interface);
border-color: var(--ooui-interface-border);
color: var(--text-color);
}
#mwe-popups-settings header {
border-color: var(--ooui-interface-border);
}
#mwe-popups-settings main#mwe-popups-settings-form p {
color: var(--byline-color);
}
#mwe-popups-settings main#mwe-popups-settings-form form label > span {
color: var(--ooui-text);
}
:root {
--smw-ask-options-even-bg: var(--body-mid);
--smw-ask-options-odd-bg: var(--body-light);
--smw-ask-action-btn-lblue-bg: var(--body-main);
--smw-ask-action-btn-lblue-color: #000;
--smw-ask-action-btn-lblue-border-color: var(--body-light);
--smw-ask-action-btn-dblue-bg: var(--body-light);
--smw-ask-action-btn-dblue-color: #fff;
--smw-ask-action-btn-dblue-border-color: var(--button-border);
}
.smw-ask-condition fieldset,
.smw-ask-printhead fieldset {
border-color: var(--sidebar);
}
.smw-ask-search fieldset,
.smw-ask-format fieldset,
.smw-ask-options fieldset {
border-color: var(--sidebar);
}
.strike > span:before,
.strike > span:after {
background: var(--sidebar);
}
.smw-ask-options-fields tr td {
background-color: var(--smw-ask-options-even-bg);
}
.smw-ask-options-fields tr:nth-child(odd) td {
background-color: var(--smw-ask-options-odd-bg);
}
.smw-ask-action-btn.smw-ask-action-btn-lblue,
.smw-ask-action-btn.smw-ask-action-btn-lblue:hover,
.smw-ask-action-btn.smw-ask-action-btn-lblue:visited {
background-color: var(--smw-ask-action-btn-lblue-bg);
color: var(--smw-ask-action-btn-lblue-color);
border-color: var(--smw-ask-action-btn-lblue-border-color);
}
.smw-ask-action-btn.smw-ask-action-btn-dblue,
.smw-ask-action-btn.smw-ask-action-btn-dblue:hover,
.smw-ask-action-btn.smw-ask-action-btn-dblue:visited {
background-color: var(--smw-ask-action-btn-dblue-bg);
color: var(--smw-ask-action-btn-dblue-color);
border-color: var(--smw-ask-action-btn-dblue-border-color);
}
.smw-ask-query textarea,
.smw-ask-actions textarea {
background-color: var(--ooui-interface);
border-color: var(--ooui-interface-border);
color: var(--ooui-text);
}
.smw-ask-query-format select {
background-color: var(--ooui-interface);
border: 1px solid var(--ooui-interface-border);
color: var(--ooui-text);
}
.smw-ask-toplinks {
background-color: var(--body-mid);
}
.smw-ask-toplinks span.smw-icon-info {
background: none;
padding: 0 !important;
}
.smw-ask-toplinks span.smw-icon-info::before {
content: '';
background: var(--text-color);
-webkit-mask: url("data:image/svg+xml,%3C%3Fxml version='1.0' encoding='UTF-8'%3F%3E%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 20 20'%3E%3Ctitle%3Einfo%3C/title%3E%3Cpath d='M10 0C4.477 0 0 4.477 0 10s4.477 10 10 10 10-4.477 10-10S15.523 0 10 0zM9 5h2v2H9zm0 4h2v6H9z'/%3E%3C/svg%3E") no-repeat 50% 50% / contain;
mask: url("data:image/svg+xml,%3C%3Fxml version='1.0' encoding='UTF-8'%3F%3E%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 20 20'%3E%3Ctitle%3Einfo%3C/title%3E%3Cpath d='M10 0C4.477 0 0 4.477 0 10s4.477 10 10 10 10-4.477 10-10S15.523 0 10 0zM9 5h2v2H9zm0 4h2v6H9z'/%3E%3C/svg%3E") no-repeat 50% 50% / contain;
padding: 0 0 3px 18px;
}
.smw-ask-options-row-odd {
background-color: var(--body-light);
}
.smw-ask-options-row-even {
background-color: var(--body-mid);
}
#options-toggle:not(:checked) + #options-list .options-parameter-list:after {
background-image: linear-gradient(to bottom, transparent, var(--body-mid) 90%);
}
.smw-ask-button-submit input {
background-color: var(--ooui-normal);
border-color: var(--ooui-normal-border);
color: var(--text-color);
}
.smw-ask-button-submit input:hover,
.smw-ask-button-lgrey:hover {
background-color: var(--ooui-normal--hover);
border-color: var(--ooui-normal-border);
}
input.smw-ask-action-btn.smw-ask-action-btn-dblue {
background-color: var(--ooui-normal);
border-color: var(--ooui-normal-border);
color: var(--ooui-text);
}
a.smw-ask-action-btn.smw-ask-action-btn-lblue {
background-color: var(--body-mid);
border-color: var(--body-mid);
color: var(--ooui-text);
}
a.smw-ask-action-btn.smw-ask-action-btn-lblue:visited {
background-color: var(--body-mid);
border-color: var(--body-mid);
color: var(--ooui-text);
}
a.smw-ask-action-btn.smw-ask-action-btn-lblue:hover {
background-color: var(--body-mid);
border-color: var(--body-mid);
color: var(--ooui-text);
}
a.smw-ask-action-btn-lgrey {
background-color: var(--ooui-normal);
border-color: var(--ooui-normal-border);
color: var(--ooui-text);
}
a.smw-ask-action-btn-lgrey:hover {
background-color: var(--ooui-normal--hover);
border-color: var(--ooui-normal-border);
color: var(--ooui-text);
}
.smw-callout-error {
background-color: var(--errorbox-bg);
border-color: var(--errorbox-border);
}
.smw-callout-info {
background-color: var(--body-light);
border-color: var(--body-dark);
}
.smw-callout-success {
background-color: var(--successbox-bg);
border-color: var(--successbox-border);
}
.smw-callout-warning {
background-color: var(--warningbox-bg);
border-color: var(--warningbox-bg);
}
.smw-tabs input.nav-tab:checked + label.nav-label,
.smw-tabs input.nav-tab:checked + label.nav-label:hover {
color: inherit;
}
#tab-smw-property-value:checked + label.nav-label .usage-count {
color: #fff;
background-color: var(--ooui-progressive);
}
#tab-smw-property-value:checked + label.nav-label .usage-count.moderate {
color: #fff;
background-color: #b55e0c;
border-color: #b55e0c;
}
#tab-smw-property-value:checked + label.nav-label .usage-count.high {
color: #fff;
background-color: #9f261e;
border-color: #9f261e;
}
.smw-property-page-results .header-title {
background-color: var(--ooui-interface);
border-bottom-color: var(--ooui-interface-border);
color: var(--ooui-text);
}
.smw-property-page-results .value-row:hover {
background-color: var(--ooui-normal--hover);
}
.smw-property-page-results .smw-table .header-row {
color: var(--text-color);
}
.tippy-tooltip.light-border-theme {
background-color: var(--body-light);
color: var(--text-color);
}
.tippy-tooltip.light-border-theme .tippy-arrow {
border-top-color: var(--body-light);
}
.tippy-tooltip.light-border-theme .tippy-arrow:after {
border-top-color: var(--body-light);
}
.tippy-header {
background-color: var(--body-dark);
border-bottom-color: var(--body-mid);
}
.smw-ui-input-filter {
background-color: var(--ooui-interface);
border-color: var(--ooui-interface-border);
color: var(--ooui-text);
}
.smw-ui-input-filter input {
border-left-color: var(--ooui-interface-border) !important;
color: var(--ooui-text) !important;
}
.smw-ui-pagination .page-link.link-disabled {
background-color: var(--ooui-disabled);
border-color: var(--ooui-disabled-border);
color: var(--subtle-color);
}
.smw-ui-pagination .page-link {
background-color: var(--ooui-normal);
border-color: var(--ooui-normal-border);
color: var(--link-color);
}
.smw-ui-pagination .page-link:hover {
background-color: var(--ooui-normal--hover);
border-color: var(--ooui-normal-border);
color: var(--link-color);
}
.smw-ui-pagination .page-link.link-active {
color: #fff;
background-color: var(--ooui-progressive);
border-color: var(--ooui-progressive);
}
.smw-tabs input.nav-tab:checked + label.nav-label {
border-color: var(--ooui-normal-border);
}
.smw-tabs section,
.smw-tabs .subtab-content {
border-top-color: var(--ooui-normal-border);
}
.smw-column-header {
color: var(--text-color);
}
.smw-factbox {
background: var(--body-main);
border-color: transparent;
}
.mw-body .mw-indicators #mw-indicator-smw-entity-examiner.mw-indicator .smw-indicator-vertical-bar-loader {
display: none;
}
.smwb-theme-light .smwb-title,
.smwb-theme-light .smwb-center,
.smwb-theme-light .smwb-actions,
.smwb-theme-light .smwb-prophead {
background-color: var(--body-mid);
}
.smwb-theme-light .smwb-factbox {
border-left-color: var(--body-mid);
}
.smwb-theme-light .smwb-ifactbox {
border-right-color: var(--body-mid);
}
.smwb-theme-light .smwb-propval {
background-color: var(--body-light);
}
.smwb-action-separator {
border-color: var(--wikitable-border);
}
.smwb-bottom {
border-bottom: 1px solid var(--wikitable-border);
}
.smwb-ifactbox .smwb-cell,
.smwb-factbox .smwb-cell {
border-top: 1px solid var(--wikitable-border);
}
.smwb-propvalue .smwb-prophead,
.smwb-ipropvalue .smwb-prophead,
.smwb-propvalue .smwb-propval,
.smwb-ipropvalue .smwb-propval {
font-size: 0.9em;
}
:root {
--filter-black-to-link: invert(36%) sepia(58%) saturate(433%) hue-rotate(344deg) brightness(100%) contrast(91%);
}
#bodyContent span.smwbrowse a {
color: black;
background-image: url('filepath://Smwbrowse.svg');
filter: var(--filter-black-to-link);
}
#bodyContent span.smwbrowse a:hover {
color: black;
background-image: url('filepath://Smwbrowse-hover.svg');
text-decoration: underline;
}
#bodyContent span.smwsearch a {
color: black;
filter: var(--filter-black-to-link);
background-image: url('filepath://Smwsearch.svg');
}
#bodyContent span.smwsearch a:hover {
color: black;
background-image: url('filepath://Smwsearch-hover.svg');
text-decoration: underline;
}
:root {
--tabber-tab-bg: var(--body-light);
--tabber-tab-border-color: var(--body-border);
--tabber-active-tab-bg: var(--body-light);
--tabber-active-tab-color: var(--text-color);
--tabber-active-tab-hover-bg: var(--body-light);
--tabber-active-tab-hover-border-color: var(--body-border);
--tabber-active-tab-hover-color: var(--text-color);
--tabber-active-tab-border-hider-color: var(--body-light);
--tabber-inactive-tab-bg: var(--body-background-color);
--tabber-inactive-tab-border-color: var(--body-border);
--tabber-inactive-tab-color: var(--text-color);
--tabber-inactive-tab-hover-bg: var(--body-light);
--tabber-inactive-tab-hover-border-color: var(--body-border);
}
.tabber {
margin: 1em 0;
}
.tabber .tabbertab {
background-color: var(--tabber-tab-bg);
border: 1px solid var(--tabber-tab-border-color);
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
padding: 1em 1.5em;
}
ul.tabbernav {
border: none;
margin-left: 2em;
margin-bottom: 0;
margin-right: 2em;
padding: 0;
font-family: inherit;
}
ul.tabbernav li.tabberactive > a {
background-color: var(--tabber-active-tab-bg);
color: var(--tabber-active-tab-color);
border-bottom: none;
position: relative;
}
ul.tabbernav li.tabberactive > a:hover {
color: var(--tabber-active-tab-hover-color);
background-color: var(--tabber-active-tab-hover-bg);
border-color: var(--tabber-active-tab-hover-border-color);
border-bottom: none;
}
ul.tabbernav li.tabberactive > a::after {
content: '';
position: absolute;
left: 0;
right: 0;
bottom: -1px;
border-bottom: 2px solid var(--tabber-active-tab-border-hider-color);
}
ul.tabbernav li a {
background-color: var(--tabber-inactive-tab-bg);
border-bottom: transparent;
border-color: var(--tabber-inactive-tab-border-color);
color: var(--tabber-inactive-tab-color);
display: inline-block;
font-size: 110%;
padding: 0.5em 1em;
}
ul.tabbernav li a:hover {
background-color: var(--tabber-inactive-tab-hover-bg);
border-color: var(--tabber-inactive-tab-hover-border-color);
}
ul.tabbernav li a:link,
ul.tabbernav li a:visited {
color: var(--tabber-inactive-tab-color);
}
:root {
--ooui-text: var(--text-color);
--ooui-interface: var(--body-light);
--ooui-interface-border: var(--body-border);
--ooui-window-background: rgba(255, 255, 255, 0.5);
--ooui-normal: #d5c7ad;
--ooui-normal--hover: #dfd5c1;
--ooui-normal-border: #b8a282;
--ooui-progressive: #605443;
--ooui-progressive--hover: #7e6e58;
--ooui-accent: var(--link-color);
--ooui-input: #fff;
--ooui-input-border: #b8a282;
--ooui-input-border--hover: #8a724f;
--ooui-disabled: #d1cdc5;
--ooui-disabled-border: #c2b9ab;
--ooui-disabled-text: var(--subtle-color);
--ooui-pending-background-image: repeating-linear-gradient(-45deg, var(--search-box), var(--search-box) 20px, var(--body-main) 20px, var(--body-main) 30px);
}
.oo-ui-widget {
color: var(--ooui-text);
}
.oo-ui-checkboxInputWidget [type='checkbox'] + span,
.oo-ui-radioInputWidget [type='radio'] + span {
background-color: var(--ooui-input);
border-color: var(--ooui-input-border);
}
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:checked + span,
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:indeterminate + span {
background-color: var(--ooui-progressive);
border-color: var(--ooui-progressive);
}
.oo-ui-radioInputWidget.oo-ui-widget-enabled [type='radio']:checked + span {
border-color: var(--ooui-progressive);
}
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:checked:hover + span,
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:indeterminate:hover + span {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
}
.oo-ui-radioInputWidget.oo-ui-widget-enabled [type='radio']:checked:hover + span {
border-color: var(--ooui-progressive--hover);
}
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:hover + span,
.oo-ui-radioInputWidget.oo-ui-widget-enabled [type='radio']:hover + span {
border-color: var(--ooui-accent);
}
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:focus + span {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:active + span,
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:checked:active + span,
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:indeterminate:active + span {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
box-shadow: inset 0 0 0 1px var(--ooui-progressive--hover);
}
.oo-ui-radioInputWidget.oo-ui-widget-enabled [type='radio']:active + span {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
}
.oo-ui-radioInputWidget.oo-ui-widget-enabled [type='radio']:checked:active + span {
border-color: var(--ooui-progressive--hover);
box-shadow: inset 0 0 0 1px var(--ooui-progressive--hover);
}
.oo-ui-radioInputWidget.oo-ui-widget-enabled [type='radio']:checked:active + span:before {
border-color: var(--ooui-progressive--hover);
}
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:checked:focus + span,
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:indeterminate:focus + span {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent), inset 0 0 0 2px #fff;
}
.oo-ui-checkboxInputWidget [type='checkbox']:disabled + span,
.oo-ui-radioInputWidget [type='radio']:disabled + span {
background-color: var(--ooui-disabled);
border-color: var(--ooui-disabled);
}
.oo-ui-dropdownWidget-handle {
border-color: var(--ooui-normal-border);
}
.oo-ui-dropdownWidget.oo-ui-widget-enabled .oo-ui-dropdownWidget-handle {
background-color: var(--ooui-normal);
color: var(--ooui-text);
}
.oo-ui-dropdownWidget.oo-ui-widget-enabled .oo-ui-dropdownWidget-handle:hover {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
}
.oo-ui-dropdownWidget.oo-ui-widget-enabled .oo-ui-dropdownWidget-handle:active {
color: var(--ooui-text);
}
.oo-ui-dropdownWidget.oo-ui-widget-enabled .oo-ui-dropdownWidget-handle:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-dropdownWidget.oo-ui-widget-enabled.oo-ui-dropdownWidget-open .oo-ui-dropdownWidget-handle {
background-color: var(--ooui-normal--hover);
}
.oo-ui-dropdownWidget.oo-ui-widget-disabled .oo-ui-dropdownWidget-handle {
color: var(--ooui-disabled-text);
text-shadow: none;
border-color: var(--ooui-disabled-border);
background-color: var(--ooui-disabled);
}
.oo-ui-dropdownInputWidget select {
border-color: var(--ooui-normal-border);
}
.oo-ui-dropdownInputWidget option {
background-color: var(--ooui-interface);
}
.oo-ui-dropdownInputWidget.oo-ui-widget-enabled {
background-color: var(--ooui-normal);
}
.oo-ui-dropdownInputWidget.oo-ui-widget-enabled:hover {
background-color: var(--ooui-normal--hover);
}
.oo-ui-dropdownInputWidget.oo-ui-widget-enabled select {
color: var(--ooui-text);
}
.oo-ui-dropdownInputWidget.oo-ui-widget-enabled select:hover,
.oo-ui-dropdownInputWidget.oo-ui-widget-enabled select:active {
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
}
.oo-ui-dropdownInputWidget.oo-ui-widget-enabled select:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-labelWidget.oo-ui-inline-help {
color: var(--byline-color);
}
.oo-ui-menuSelectWidget {
background-color: var(--ooui-interface);
border-color: var(--ooui-interface-border);
}
.oo-ui-menuSelectWidget-frameless {
box-shadow: inset 0 -1px 0 0 var(--ooui-normal-border);
}
.oo-ui-menuSectionOptionWidget {
color: var(--byline-color);
}
.oo-ui-menuOptionWidget.oo-ui-optionWidget-highlighted,
.oo-ui-menuOptionWidget.oo-ui-optionWidget-selected {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
}
.oo-ui-menuOptionWidget.oo-ui-optionWidget-selected.oo-ui-menuOptionWidget.oo-ui-optionWidget-highlighted,
.oo-ui-menuOptionWidget.oo-ui-optionWidget-pressed.oo-ui-menuOptionWidget.oo-ui-optionWidget-highlighted {
color: var(--ooui-accent);
}
.oo-ui-menuOptionWidget.oo-ui-widget-enabled.oo-ui-optionWidget {
color: var(--ooui-text);
}
.oo-ui-messageDialog-title {
color: inherit;
}
.oo-ui-messageWidget.oo-ui-messageWidget-block.oo-ui-flaggedElement-error {
background-color: var(--errorbox-bg);
border-color: var(--errorbox-border);
}
.oo-ui-messageWidget.oo-ui-messageWidget-block.oo-ui-flaggedElement-warning {
background-color: var(--warningbox-bg);
border-color: var(--warningbox-border);
}
.oo-ui-messageWidget.oo-ui-messageWidget-block.oo-ui-flaggedElement-success {
background-color: var(--successbox-bg);
border-color: var(--successbox-border);
}
.oo-ui-messageWidget.oo-ui-messageWidget-block.oo-ui-flaggedElement-notice {
background-color: var(--messagebox-info-background);
border-color: var(--messagebox-info-border);
}
.oo-ui-messageWidget.oo-ui-flaggedElement-error:not(.oo-ui-messageWidget-block),
.oo-ui-messageWidget.oo-ui-flaggedElement-success:not(.oo-ui-messageWidget-block) {
color: var(--ooui-text);
}
.oo-ui-optionWidget.oo-ui-widget-disabled {
color: var(--ooui-disabled-text);
}
.oo-ui-outlineControlsWidget {
background-color: var(--ooui-normal);
}
.oo-ui-outlineOptionWidget.oo-ui-optionWidget-highlighted {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
}
.oo-ui-popupWidget-popup {
background-color: var(--ooui-interface);
border-color: var(--ooui-interface-border);
}
.oo-ui-popupWidget-anchored-top .oo-ui-popupWidget-anchor:after {
border-bottom-color: var(--ooui-interface);
}
.oo-ui-popupWidget-anchored-top .oo-ui-popupWidget-anchor:before {
border-bottom-color: var(--ooui-interface-border);
}
.oo-ui-popupWidget-anchored-bottom .oo-ui-popupWidget-anchor:after {
border-top-color: var(--ooui-interface);
}
.oo-ui-popupWidget-anchored-bottom .oo-ui-popupWidget-anchor:before {
border-top-color: var(--ooui-interface-border);
}
.oo-ui-popupWidget-anchored-start .oo-ui-popupWidget-anchor:after {
border-right-color: var(--ooui-interface);
}
.oo-ui-popupWidget-anchored-start .oo-ui-popupWidget-anchor:before {
border-right-color: var(--ooui-interface-border);
}
.oo-ui-popupWidget-anchored-end .oo-ui-popupWidget-anchor:after {
border-left-color: var(--ooui-interface);
}
.oo-ui-popupWidget-anchored-end .oo-ui-popupWidget-anchor:before {
border-left-color: var(--ooui-interface-border);
}
.oo-ui-searchWidget-query {
border-bottom-color: var(--ooui-interface-border);
}
.oo-ui-selectFileWidget-dropTarget {
background-color: var(--ooui-interface);
border-color: var(--ooui-interface-border);
}
.oo-ui-selectFileWidget.oo-ui-widget-enabled.oo-ui-selectFileWidget-dropTarget {
background-color: var(--ooui-interface);
}
.oo-ui-selectFileWidget.oo-ui-widget-enabled.oo-ui-selectFileWidget-dropTarget:hover {
border-color: var(--ooui-input-border--hover);
}
.oo-ui-tabOptionWidget {
color: var(--ooui-text);
}
.oo-ui-tabSelectWidget-framed .oo-ui-tabOptionWidget.oo-ui-optionWidget-selected {
background-color: var(--body-dark);
color: var(--ooui-text);
}
.oo-ui-tabSelectWidget-framed .oo-ui-tabOptionWidget.oo-ui-optionWidget-selected .oo-ui-labelElement-label {
border-bottom-color: var(--body-border);
}
.oo-ui-tabSelectWidget-framed .oo-ui-tabOptionWidget.oo-ui-widget-enabled:hover,
.oo-ui-tabSelectWidget-framed .oo-ui-tabOptionWidget.oo-ui-widget-enabled:active {
background-color: var(--body-light);
color: var(--ooui-text);
}
.oo-ui-tabSelectWidget-framed .oo-ui-tabOptionWidget.oo-ui-widget-enabled.oo-ui-optionWidget-selected:hover {
background-color: var(--body-dark);
}
.oo-ui-tabSelectWidget-frameless .oo-ui-tabOptionWidget.oo-ui-optionWidget-selected {
color: var(--ooui-progressive);
box-shadow: inset 0 -2px 0 0 var(--ooui-progressive);
}
.oo-ui-tabSelectWidget-frameless .oo-ui-tabOptionWidget.oo-ui-optionWidget-selected:hover,
.oo-ui-tabSelectWidget-frameless .oo-ui-tabOptionWidget.oo-ui-optionWidget-selected:focus {
color: var(--ooui-progressive--hover);
box-shadow: inset 0 -2px 0 0 var(--ooui-progressive--hover);
}
.oo-ui-tabSelectWidget-framed {
background: none;
border-bottom: 1px solid var(--ooui-interface-border);
}
.oo-ui-tabSelectWidget-frameless {
box-shadow: inset 0 -1px 0 0 var(--ooui-interface-border);
}
.oo-ui-tabSelectWidget-mobile {
}
.oo-ui-tabSelectWidget-mobile.oo-ui-tabSelectWidget-framed:after {
background: var(--mobile-navbox-linear-gradient);
}
.oo-ui-tabSelectWidget-mobile.oo-ui-tabSelectWidget-frameless:after {
background: var(--mobile-navbox-linear-gradient);
}
.oo-ui-tagItemWidget {
border-color: var(--ooui-normal-border);
}
.oo-ui-tagItemWidget.oo-ui-widget-enabled {
color: var(--ooui-text);
}
.oo-ui-tagItemWidget.oo-ui-widget-enabled:hover {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
}
.oo-ui-tagItemWidget.oo-ui-widget-enabled:not( .oo-ui-tagItemWidget-fixed ) {
background-color: var(--ooui-normal);
}
.oo-ui-tagItemWidget.oo-ui-widget-enabled .oo-ui-buttonElement-button:hover {
background-color: var(--ooui-normal--hover);
}
.oo-ui-tagMultiselectWidget.oo-ui-widget-enabled {
background-color: var(--ooui-interface);
}
.oo-ui-tagMultiselectWidget.oo-ui-widget-enabled.oo-ui-tagMultiselectWidget-outlined {
background-color: var(--ooui-normal);
}
.oo-ui-tagMultiselectWidget.oo-ui-widget-enabled.oo-ui-tagMultiselectWidget-outlined .oo-ui-tagItemWidget.oo-ui-widget-enabled {
background-color: var(--ooui-interface);
}
.oo-ui-textInputWidget .oo-ui-inputWidget-input {
background-color: var(--ooui-input);
color: var(--ooui-text);
border-color: var(--ooui-input-border);
}
.oo-ui-textInputWidget.oo-ui-widget-enabled .oo-ui-inputWidget-input::placeholder {
color: var(--subtle-color);
}
.oo-ui-textInputWidget.oo-ui-widget-enabled .oo-ui-inputWidget-input:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-textInputWidget.oo-ui-widget-enabled .oo-ui-inputWidget-input[readonly]:not(.oo-ui-pendingElement-pending) {
background-color: var(--ooui-disabled);
color: var(--ooui-disabled-text);
}
.oo-ui-textInputWidget.oo-ui-widget-enabled:hover .oo-ui-inputWidget-input {
border-color: var(--ooui-input-border--hover);
}
.oo-ui-textInputWidget.oo-ui-widget-enabled:hover .oo-ui-inputWidget-input:focus {
border-color: var(--ooui-accent);
}
@media screen and (min-width: 0) {
.oo-ui-textInputWidget.oo-ui-widget-enabled textarea.oo-ui-inputWidget-input:focus {
outline: 1px solid var(--ooui-accent);
}
}
.oo-ui-textInputWidget.oo-ui-widget-disabled .oo-ui-inputWidget-input {
background-color: var(--ooui-disabled);
color: var(--ooui-disabled-text);
text-shadow: none;
border-color: var(--ooui-disabled-border);
}
.oo-ui-toggleSwitchWidget {
background-color: var(--ooui-input);
border-color: var(--ooui-input-border);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled .oo-ui-toggleSwitchWidget-grip {
background-color: var(--ooui-input);
border-color: var(--ooui-input-border);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:hover {
background-color: var(--ooui-input);
border-color: var(--ooui-accent);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:hover .oo-ui-toggleSwitchWidget-grip {
background-color: var(--ooui-input);
border-color: var(--ooui-accent);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:active,
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:active:hover,
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:active:focus {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
box-shadow: inset 0 0 0 1px var(--ooui-progressive--hover);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:active .oo-ui-toggleSwitchWidget-grip,
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:active:hover .oo-ui-toggleSwitchWidget-grip,
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:active:focus .oo-ui-toggleSwitchWidget-grip {
background-color: var(--ooui-input);
border-color: var(--ooui-input);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:focus .oo-ui-toggleSwitchWidget-grip {
border-color: var(--ooui-accent);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled.oo-ui-toggleWidget-on {
background-color: var(--ooui-progressive);
border-color: var(--ooui-progressive);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled.oo-ui-toggleWidget-on .oo-ui-toggleSwitchWidget-grip {
background-color: var(--ooui-input);
border-color: var(--ooui-input);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled.oo-ui-toggleWidget-on:hover {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled.oo-ui-toggleWidget-on:active,
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled.oo-ui-toggleWidget-on:active:hover {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled.oo-ui-toggleWidget-on:focus {
border-color: var(--ooui-progressive);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled.oo-ui-toggleWidget-on:focus::before {
border-color: #fff;
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-disabled {
background-color: var(--ooui-disabled);
border-color: var(--ooui-disabled);
}
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled > .oo-ui-buttonElement-button {
color: var(--ooui-text);
}
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled > .oo-ui-buttonElement-button:hover {
color: var(--ooui-text);
}
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled > .oo-ui-buttonElement-button:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled.oo-ui-buttonElement-pressed > input.oo-ui-buttonElement-button,
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled > .oo-ui-buttonElement-button:active {
color: var(--ooui-text);
}
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button,
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button:hover {
color: var(--ooui-text);
}
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button:active,
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive.oo-ui-buttonElement-pressed > .oo-ui-buttonElement-button {
color: var(--ooui-text);
border-color: var(--ooui-text);
}
.oo-ui-buttonElement-frameless.oo-ui-widget-disabled > .oo-ui-buttonElement-button {
color: var(--ooui-disabled-text);
}
.oo-ui-buttonElement-framed.oo-ui-widget-disabled > .oo-ui-buttonElement-button {
background-color: var(--ooui-disabled);
border-color: var(--ooui-disabled-border);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled > .oo-ui-buttonElement-button {
background-color: var(--ooui-normal);
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled > .oo-ui-buttonElement-button:hover {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled > .oo-ui-buttonElement-button:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-buttonElement-active > .oo-ui-buttonElement-button {
background-color: var(--ooui-progressive--hover);
color: #fff;
border-color: var(--ooui-progressive--hover);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-buttonElement-active > .oo-ui-buttonElement-button:focus {
border-color: var(--ooui-progressive--hover);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled > .oo-ui-buttonElement-button:active,
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-buttonElement-pressed > .oo-ui-buttonElement-button {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive {
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button {
color: var(--ooui-text);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button:hover {
background-color: var(--ooui-normal--hover);
border-color: var(--ooui-progressive--hover);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-destructive > .oo-ui-buttonElement-button {
color: var(--ooui-text);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-destructive > .oo-ui-buttonElement-button:hover {
background-color: var(--ooui-normal--hover);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button {
background-color: var(--ooui-progressive);
border-color: var(--ooui-progressive);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button:hover {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent), inset 0 0 0 2px #fff;
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button:active,
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive.oo-ui-buttonElement-pressed > .oo-ui-buttonElement-button,
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive.oo-ui-buttonElement-active > .oo-ui-buttonElement-button,
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive.oo-ui-popupToolGroup-active > .oo-ui-buttonElement-button {
color: #fff;
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
}
.oo-ui-pendingElement-pending {
background-image: var(--ooui-pending-background-image);
background-size: 200%;
animation: oo-ui-pendingElement-stripes 6s linear infinite;
}
@keyframes oo-ui-pendingElement-stripes {
100% {
background-position: 100%;
}
}
.oo-ui-messageDialog-content > .oo-ui-window-foot {
outline-color: var(--ooui-interface-border);
}
.oo-ui-messageDialog-message {
color: var(--ooui-text);
}
.oo-ui-messageDialog-actions-horizontal .oo-ui-actionWidget {
border-right-color: var(--ooui-interface-border);
}
.oo-ui-messageDialog-actions-vertical .oo-ui-actionWidget {
border-bottom-color: var(--ooui-interface-border);
}
.oo-ui-processDialog-content .oo-ui-window-head,
.oo-ui-processDialog-content .oo-ui-window-foot {
outline-color: var(--ooui-interface-border);
}
.oo-ui-processDialog .oo-ui-actionWidget > .oo-ui-buttonElement-button {
border-top-color: transparent;
border-bottom-color: transparent;
}
.oo-ui-processDialog .oo-ui-actionWidget > .oo-ui-buttonElement-button:hover,
.oo-ui-processDialog .oo-ui-actionWidget > .oo-ui-buttonElement-button:active {
border-top-color: transparent;
border-bottom-color: transparent;
}
.oo-ui-processDialog .oo-ui-actionWidget:not( .oo-ui-flaggedElement-progressive ):not( .oo-ui-flaggedElement-destructive ) > .oo-ui-buttonElement-button:hover,
.oo-ui-processDialog .oo-ui-actionWidget:not( .oo-ui-flaggedElement-progressive ):not( .oo-ui-flaggedElement-destructive ) > .oo-ui-buttonElement-button:active {
border-right-color: var(--ooui-interface-border);
border-left-color: transparent;
}
.oo-ui-processDialog .oo-ui-actionWidget:not( .oo-ui-flaggedElement-progressive ):not( .oo-ui-flaggedElement-destructive ) > .oo-ui-buttonElement-button:focus {
border-color: var(--ooui-accent);
}
.oo-ui-processDialog-actions-safe .oo-ui-actionWidget > .oo-ui-buttonElement-button,
.oo-ui-processDialog-actions-other .oo-ui-actionWidget > .oo-ui-buttonElement-button {
border-right-color: var(--ooui-normal-border);
border-left-color: transparent;
}
.oo-ui-processDialog-actions-safe .oo-ui-widget-enabled.oo-ui-iconElement:not( .oo-ui-labelElement ) > .oo-ui-buttonElement-button:hover {
background-color: var(--ooui-normal--hover);
border-right-color: var(--ooui-interface-border);
}
.oo-ui-windowManager-modal > .oo-ui-dialog {
background-color: var(--ooui-window-background);
}
.oo-ui-windowManager-modal > .oo-ui-dialog > .oo-ui-window-frame {
background-color: var(--ooui-interface);
}
.oo-ui-windowManager-modal.oo-ui-windowManager-floating > .oo-ui-dialog > .oo-ui-window-frame {
border-color: var(--ooui-interface-border);
}
.oo-ui-window {
color: var(--ooui-text);
}
.oo-ui-toolbar-bar {
background-color: var(--ooui-interface);
color: var(--ooui-text);
}
.oo-ui-toolbar-position-top > .oo-ui-toolbar-bar {
border-bottom-color: var(--body-mid);
}
.oo-ui-toolbar-bar .oo-ui-bookletLayout > .oo-ui-menuLayout-menu {
border-right-color: var(--body-mid);
}
.oo-ui-tool.oo-ui-widget-enabled > .oo-ui-tool-link:hover {
background-color: var(--ooui-normal--hover);
}
.oo-ui-tool.oo-ui-widget-enabled > .oo-ui-tool-link:focus {
outline: 1px solid var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-tool.oo-ui-widget-enabled > .oo-ui-tool-link:active,
.oo-ui-tool.oo-ui-widget-enabled.oo-ui-tool-active > .oo-ui-tool-link,
.oo-ui-tool.oo-ui-widget-enabled.oo-ui-popupToolGroup-active > .oo-ui-tool-link {
background-color: var(--ooui-normal--hover);
color: var(--ooui-accent);
box-shadow: none;
}
.oo-ui-tool.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive > .oo-ui-tool-link {
background-color: var(--ooui-progressive);
}
.oo-ui-tool.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive > .oo-ui-tool-link:hover {
background-color: var(--ooui-progressive--hover);
}
.oo-ui-tool.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive > .oo-ui-tool-link:focus {
box-shadow: inset 0 0 0 1px var(--ooui-accent), inset 0 0 0 2px #fff;
}
.oo-ui-tool.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive > .oo-ui-tool-link:active,
.oo-ui-tool.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive.oo-ui-tool-active > .oo-ui-tool-link {
background-color: var(--ooui-progressive--hover);
}
.oo-ui-listToolGroup-tools .oo-ui-tool.oo-ui-widget-enabled {
background-color: var(--ooui-normal);
}
.oo-ui-listToolGroup-tools .oo-ui-tool.oo-ui-widget-enabled:hover {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
}
.oo-ui-listToolGroup-tools .oo-ui-tool-active.oo-ui-widget-enabled .oo-ui-tool-link .oo-ui-tool-title {
color: var(--ooui-progressive);
}
.oo-ui-menuToolGroup {
border-left-color: var(--body-mid);
border-right-color: var(--body-mid);
}
.oo-ui-popupToolGroup-tools {
background-color: var(--ooui-interface);
border-color: var(--body-mid);
}
.oo-ui-popupToolGroup.oo-ui-widget-enabled > .oo-ui-popupToolGroup-handle:hover {
background-color: var(--ooui-normal--hover);
}
.oo-ui-popupToolGroup.oo-ui-widget-enabled > .oo-ui-popupToolGroup-handle:focus {
outline: 1px solid var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-toolbar-actions .oo-ui-popupToolGroup.oo-ui-widget-enabled > .oo-ui-popupToolGroup-handle:hover {
border-right-color: var(--ooui-normal--hover);
}
.oo-ui-popupToolGroup-tools .oo-ui-tool.oo-ui-widget-enabled .oo-ui-tool-link:focus {
box-shadow: inset 0 0 0 2px var(--ooui-accent);
}
.oo-ui-popupToolGroup-tools .oo-ui-tool-active.oo-ui-widget-enabled .oo-ui-tool-link .oo-ui-tool-title {
color: var(--ooui-progressive);
}
.oo-ui-popupToolGroup.oo-ui-popupToolGroup-active > .oo-ui-popupToolGroup-handle {
background-color: var(--ooui-normal);
color: var(--ooui-accent);
}
.oo-ui-popupToolGroup.oo-ui-popupToolGroup-active > .oo-ui-popupToolGroup-handle:hover {
background-color: var(--ooui-normal--hover);
color: var(--ooui-accent);
}
.oo-ui-bookletLayout-outlinePanel > .oo-ui-outlineControlsWidget {
border-top-color: var(--ooui-interface-border);
}
.oo-ui-bookletLayout > .oo-ui-menuLayout-menu {
border-right-color: var(--ooui-interface-border);
}
.oo-ui-fieldLayout-disabled > .oo-ui-fieldLayout-body > .oo-ui-fieldLayout-header > .oo-ui-labelElement-label {
color: var(--ooui-disabled-text);
}
.oo-ui-panelLayout-framed {
border-color: var(--sidebar);
}
.oo-ui-icon-settings {
background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' width='20' height='20' viewBox='0 0 20 20'%3E%3Ctitle%3Esettings%3C/title%3E%3Cg transform='translate(10 10)'%3E%3Cpath id='a' d='M1.5-10h-3l-1 6.5h5m0 7h-5l1 6.5h3'/%3E%3Cuse xlink:href='%23a' transform='rotate(45)'/%3E%3Cuse xlink:href='%23a' transform='rotate(90)'/%3E%3Cuse xlink:href='%23a' transform='rotate(135)'/%3E%3C/g%3E%3Cpath d='M10 2.5a7.5 7.5 0 0 0 0 15 7.5 7.5 0 0 0 0-15v4a3.5 3.5 0 0 1 0 7 3.5 3.5 0 0 1 0-7'/%3E%3C/svg%3E");
}
.oo-ui-icon-clear {
background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 20 20'%3E%3Ctitle%3Eclear%3C/title%3E%3Cpath d='M10 0a10 10 0 1 0 10 10A10 10 0 0 0 10 0zm5.66 14.24-1.41 1.41L10 11.41l-4.24 4.25-1.42-1.42L8.59 10 4.34 5.76l1.42-1.42L10 8.59l4.24-4.24 1.41 1.41L11.41 10z'/%3E%3C/svg%3E");
}
.mw-widget-dateInputWidget-handle {
background-color: var(--ooui-input);
color: var(--ooui-text);
border-color: var(--ooui-input-border);
}
.mw-widget-dateInputWidget-calendar {
background-color: var(--ooui-interface);
}
.mw-widget-dateInputWidget.oo-ui-widget-enabled .mw-widget-dateInputWidget-handle:hover {
border-color: var(--ooui-input-border--hover);
}
.mw-widget-calendarWidget {
border-color: var(--ooui-interface-border);
}
.mw-widget-calendarWidget:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.mw-widget-calendarWidget-day,
.mw-widget-calendarWidget-day-heading {
color: var(--ooui-text);
}
.mw-widget-calendarWidget-day-additional {
color: var(--ooui-text);
opacity: 0.67;
}
.mw-widget-calendarWidget-day-today {
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.mw-widget-calendarWidget-item:hover {
background-color: var(--ooui-progressive);
}
.mw-widget-calendarWidget-item-selected {
background-color: var(--ooui-progressive--hover);
}
.mw-widgets-datetime-calendarWidget {
background-color: var(--ooui-interface);
border-color: var(--ooui-interface-border);
}
.mw-widgets-datetime-calendarWidget:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent), 0 2px 2px 0 rgba(0, 0, 0, 0.25);
}
.mw-widgets-datetime-calendarWidget-grid .mw-widgets-datetime-calendarWidget-cell.mw-widgets-datetime-calendarWidget-extra .oo-ui-buttonElement-button .oo-ui-labelElement-label {
color: var(--subtle-color);
}
.mw-widgets-datetime-calendarWidget-grid .mw-widgets-datetime-calendarWidget-cell.mw-widgets-datetime-calendarWidget-selected .oo-ui-buttonElement-button {
background-color: var(--ooui-progressive--hover);
}
.mw-widgets-datetime-dateTimeInputWidget-handle {
background-color: var(--ooui-input);
color: var(--ooui-text);
border-color: var(--ooui-input-border);
}
.mw-widgets-datetime-dateTimeInputWidget.oo-ui-widget-enabled.mw-widgets-datetime-dateTimeInputWidget-handle:hover {
border-color: var(--ooui-input-border--hover);
}
.mw-widgets-datetime-dateTimeInputWidget.oo-ui-widget-enabled:hover input,
.mw-widgets-datetime-dateTimeInputWidget.oo-ui-widget-enabled:hover textarea {
border-color: var(--ooui-input-border--hover);
}
.mw-widgets-datetime-dateTimeInputWidget.oo-ui-widget-enabled .mw-widgets-datetime-dateTimeInputWidget-editField:hover {
background-color: var(--ooui-normal);
}
.ve-activated .ve-init-mw-desktopArticleTarget-originalContent #catlinks:hover {
background: var(--ooui-normal--hover);
}
.ve-ui-overlay {
font-family: inherit;
}
.oo-ui-toolbar-position-top .ve-ui-toolbarDialog-position-above {
border-top-color: var(--body-mid);
}
.ve-ce-branchNode-blockSlug,
.ve-ce-branchNode-newSlug {
outline-color: var(--body-border);
background-color: var(--ooui-interface);
}
.ve-ui-specialCharacterPage h3 {
color: var(--byline-color);
}
.ve-ui-specialCharacterPage-character {
border-color: var(--body-mid);
}
.ve-ui-specialCharacterPage-character:hover {
border-color: var(--body-dark);
}
.ve-ce-linkAnnotation.ve-ce-annotation-active {
box-shadow: 0 0 0 1px var(--body-mid);
background: none;
}
.ve-ui-desktopContext .ve-ui-linkContextItem .ve-ui-linkContextItem-label {
border-color: var(--body-border);
}
.ve-ui-mwHelpPopupTool-version-label,
.ve-ui-mwHelpPopupTool-version-link,
.ve-ui-mwHelpPopupTool-version-date {
color: var(--byline-color);
}
.ve-ce-tableCellableNode {
border-color: var(--body-mid);
}
.ve-ce-mwReferencesListNode-muted {
color: var(--byline-color);
}
.ve-ui-mwTemplatePage-description,
.ve-ui-mwParameterPage-label,
.ve-ui-mwParameterPage-description-required,
.ve-ui-mwParameterPage-description-deprecated {
color: var(--byline-color);
}
.mw-widget-titleWidget-menu .mw-widget-titleOptionWidget-description {
color: var(--byline-color);
}
.ve-ui-mwGalleryDialog-menuLayout > .oo-ui-menuLayout-menu,
.ve-ui-mwGalleryDialog-innerMenuLayout > .oo-ui-menuLayout-menu,
.ve-ui-mwGalleryDialog .ve-ui-mwGalleryDialog-image-container,
.ve-ui-targetWidget {
border-color: var(--body-border);
}
.ve-ui-targetWidget:not(.oo-ui-pendingElement-pending) {
background-color: var(--body-main);
}
.ve-ui-mwSaveDialog {
color: var(--ooui-text);
}
.ve-ui-mwSaveDialog-options {
background-color: var(--ooui-interface);
border-color: var(--body-border);
}
.ve-ui-mwSaveDialog-summary {
background-color: var(--ooui-input);
}
.ve-ui-mwSaveDialog-editSummary-count {
border-color: var(--body-border);
}
.ve-ui-mwSaveDialog-license {
color: var(--byline-color);
}
.ve-ui-mwReferenceContextItem-muted {
color: var(--byline-color);
}
.ve-ui-mwNoticesPopupTool-items > div:not(:first-child),
.ve-ui-mwHelpPopupTool-item:not(:first-child) {
border-color: var(--body-border);
}
.ve-ui-mwTransclusionOutlineControlsWidget {
background-color: var(--ooui-interface);
border-top-color: var(--body-border);
}
.ve-ui-mwTransclusionOutlineTemplateWidget-sticky {
background-color: var(--ooui-interface);
}
.ve-ui-mwTransclusionOutlineTemplateWidget .ve-ui-mwTransclusionOutlineParameterWidget.oo-ui-optionWidget-highlighted {
color: var(--ooui-text);
}
.ve-ui-mwTransclusionOutlineTemplateWidget-no-template-parameters {
color: var(--subtle-color);
}
.ve-ui-mwParameterPage-undocumentedLabel {
color: var(--subtle-color);
}
.ve-ui-mwTwoPaneTransclusionDialogLayout > .oo-ui-menuLayout-menu {
border-right: var(--body-border);
}
.ve-ui-mwParameterPage-doc-required,
.ve-ui-mwParameterPage-doc-deprecated,
.ve-ui-mwParameterPage-inlineDescription .ve-ui-mwParameterPage-doc-example {
color: var(--byline-color);
}
.ve-ui-expandableContent-toggle {
background-color: var(--ooui-interface);
}
.ve-ui-expandableContent-fade {
background: linear-gradient(to right, rgba(255, 255, 255, 0) 0, var(--ooui-interface) 90%);
}
.ve-ui-commandHelpDialog-shortcut > kbd,
.ve-ui-commandHelpDialog-sequence > kbd {
background-color: var(--keypress-background);
color: var(--keypress-color);
border-color: var(--keypress-border);
box-shadow: none;
text-shadow: none;
}
.ve-init-mw-desktopArticleTarget-toolbarPlaceholder-floating .ve-init-mw-desktopArticleTarget-toolbarPlaceholder-bar {
background: var(--ooui-interface);
}
.ve-init-mw-desktopArticleTarget-toolbarPlaceholder-bar {
border-bottom-color: var(--body-mid);
}
figure[typeof~='mw:File/Thumb'],
figure[typeof~='mw:File/Frame'],
figure[typeof~='mw:Image/Thumb'],
figure[typeof~='mw:Video/Thumb'],
figure[typeof~='mw:Image/Frame'],
figure[typeof~='mw:Video/Frame'] {
border: none;
background-color: var(--thumb-bg);
}
figure[typeof~='mw:File/Thumb'] > a:first-child > *:first-child:not( .mw-broken-media ),
figure[typeof~='mw:File/Frame'] > a:first-child > *:first-child:not( .mw-broken-media ),
figure[typeof~='mw:Image/Thumb'] > a:first-child > *:first-child:not( .mw-broken-media ),
figure[typeof~='mw:Video/Thumb'] > a:first-child > *:first-child:not( .mw-broken-media ),
figure[typeof~='mw:Image/Frame'] > a:first-child > *:first-child:not( .mw-broken-media ),
figure[typeof~='mw:Video/Frame'] > a:first-child > *:first-child:not( .mw-broken-media ) {
border: none;
background: var(--thumb-bg);
}
figure[typeof~='mw:File/Thumb'] > figcaption,
figure[typeof~='mw:File/Frame'] > figcaption,
figure[typeof~='mw:Image/Thumb'] > figcaption,
figure[typeof~='mw:Video/Thumb'] > figcaption,
figure[typeof~='mw:Image/Frame'] > figcaption,
figure[typeof~='mw:Video/Frame'] > figcaption {
border: none;
background-color: var(--thumb-caption-bg);
padding: 4px 6px;
}
:root {
--keypress-background: #eee;
--keypress-border: #ccc;
--keypress-color: #333;
}
.archivelist {
background-color: var(--body-light);
border: solid 1px var(--body-border);
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
float: right;
margin: 5px;
padding: 5px;
text-align: center;
width: 120px;
}
.shortcut {
border: 1px solid var(--body-border);
background: var(--body-light);
float: right;
font-size: 0.8em;
margin: 0.5em 0em 0.5em 1em;
padding: 0.5em;
text-align: center;
}
.hatnote,
.seealso {
font-style: italic;
}
.hatnote i,
.seealso i {
font-style: normal;
}
div.hatnote,
div.seealso {
margin: 0.5em 1.6em;
}
div.hatnote + div.hatnote,
div.hatnote + div.seealso,
div.seealso + div.hatnote,
div.seealso + div.seealso {
margin-top: -0.5em;
}
.keypress {
background: var(--keypress-background);
color: var(--keypress-color);
font-family: inherit;
border: 1px solid var(--keypress-border);
border-radius: 2px;
font-size: 0.9em;
margin: 0 0.1em;
padding: 0.1em 0.4em;
white-space: nowrap;
}
:root {
--documentation-background: #f9fafa;
--documentation-link-color: #e4eaee;
--documentation-headers-color: #fff;
--documentation-header-background: #949eaa;
--documentation-subheader-background: #808c9a;
--documentation-border: #e4eaee;
}
.documentation {
background: var(--documentation-background);
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
margin: 1em 0;
}
.documentation pre,
.documentation code {
background-color: var(--documentation-background);
border-color: var(--documentation-border);
}
.documentation h2,
.documentation hr {
border-color: var(--documentation-border);
}
.documentation-header {
color: var(--documentation-headers-color);
background: var(--documentation-header-background);
font-weight: bold;
padding: 1em 1.5em;
}
.documentation-title {
font-size: 1.25em;
}
.documentation-subheader {
color: var(--documentation-headers-color);
background: var(--documentation-subheader-background);
padding: 0.5em 1.5em;
}
.documentation-subheader a,
.documentation-subheader a:visited,
.documentation-subheader a:active {
color: var(--documentation-link-color);
}
.documentation-documentation,
.documentation-links {
font-size: 0.85em;
}
.documentation-content {
padding: 1em 1.5em;
}
.mw-templatedata-doc-params dl:not(:empty) {
column-count: 3;
border-top: 1px solid var(--body-border);
margin-bottom: 0.5em;
}
.mw-templatedata-doc-params dt::after {
content: ":";
}
.mw-templatedata-doc-params dd,
.mw-templatedata-doc-params dt {
margin: 0.1em 2em;
min-width: auto;
}
.mw-templatedata-doc-muted {
color: var(--subtle-color);
font-style: italic;
}
:root {
--infobox-text-color: var(--text-color);
}
ol.references,
.reflist {
font-size: 90%;
}
.reflist {
list-style-type: decimal;
}
.reflist .references {
font-size: 100%;
list-style-type: inherit;
}
.reflist-lower-alpha {
list-style-type: lower-alpha;
}
ol.references li:target,
sup.reference:target {
background-color: var(--body-light);
}
.hideQuotes .refhide {
display: none;
}
:root {
--messagebox-obsolete-background: #cfcfcf;
--messagebox-obsolete-border: #464646;
--messagebox-obsolete-color: var(--text-color);
--messagebox-obsolete-link-color: #6c6c6c;
--messagebox-info-background: #ebebeb;
--messagebox-info-border: #898989;
--messagebox-info-color: var(--text-color);
--messagebox-info-link-color: #6c6c6c;
--messagebox-action-background: #c7e8fa;
--messagebox-action-border: #0b5884;
--messagebox-action-color: var(--text-color);
--messagebox-action-link-color: #03436b;
--messagebox-warn-background: #dfc0ba;
--messagebox-warn-border: #861c10;
--messagebox-warn-color: var(--text-color);
--messagebox-warn-link-color: #8e221a;
--messagebox-safe-background: #d8f0d3;
--messagebox-safe-border: #1b8408;
--messagebox-safe-color: var(--text-color);
--messagebox-safe-link-color: #1b8408;
--messagebox-disambig-background: #ebebeb;
--messagebox-disambig-border: #898989;
--messagebox-disambig-color: var(--text-color);
--messagebox-disambig-link-color: #6c6c6c;
--messagebox-discord-background: #5865f2;
--messagebox-discord-border: #4c57d0;
--messagebox-discord-link-color: #d2e5fc;
}
.mw-message-box,
.mw-message-box-error,
.mw-message-box-warning,
.mw-message-box-success,
.usermessage {
color: var(--text-color);
}
.messagebox {
width: 65%;
margin: 0.5em auto;
border-left: 15px solid;
border-color: var(--body-dark);
background-color: var(--body-light);
box-sizing: border-box;
}
.messagebox.obsolete {
background-color: var(--messagebox-obsolete-background);
border-color: var(--messagebox-obsolete-border);
color: var(--messagebox-obsolete-color);
}
.messagebox.obsolete a,
.messagebox.obsolete a:visited,
.messagebox.obsolete a:active {
color: var(--messagebox-obsolete-link-color);
}
.messagebox.info {
background-color: var(--messagebox-info-background);
border-color: var(--messagebox-info-border);
color: var(--messagebox-info-color);
}
.messagebox.info a,
.messagebox.info a:visited,
.messagebox.info a:active {
color: var(--messagebox-info-link-color);
}
.messagebox.action {
background-color: var(--messagebox-action-background);
border-color: var(--messagebox-action-border);
color: var(--messagebox-action-color);
}
.messagebox.action a,
.messagebox.action a:visited,
.messagebox.action a:active {
color: var(--messagebox-action-link-color);
}
.messagebox.warn {
background-color: var(--messagebox-warn-background);
border-color: var(--messagebox-warn-border);
color: var(--messagebox-warn-color);
}
.messagebox.warn a,
.messagebox.warn a:visited,
.messagebox.warn a:active {
color: var(--messagebox-warn-link-color);
}
.messagebox.safe {
background-color: var(--messagebox-safe-background);
border-color: var(--messagebox-safe-border);
color: var(--messagebox-safe-color);
}
.messagebox.safe a,
.messagebox.safe a:visited,
.messagebox.safe a:active {
color: var(--messagebox-safe-link-color);
}
.messagebox.disambig {
background-color: var(--messagebox-disambig-background);
border-color: var(--messagebox-disambig-border);
color: var(--messagebox-disambig-color);
}
.messagebox.disambig a,
.messagebox.disambig a:visited,
.messagebox.disambig a:active {
color: var(--messagebox-disambig-link-color);
}
.messagebox.discord {
background-color: var(--messagebox-discord-background);
border-color: var(--messagebox-discord-border);
color: #fff;
}
.messagebox.discord a,
.messagebox.discord a:visited,
.messagebox.discord a:active {
color: var(--messagebox-discord-link-color);
}
.messagebox.discord a.external,
.messagebox.discord a:visited.external,
.messagebox.discord a:active.external {
font-style: italic;
}
.messagebox.stub {
width: 40%;
}
.messagebox.hasdialogue {
padding: 0 10px;
width: auto;
}
:root {
--byline-arrow-filter: invert(29%) sepia(0%) saturate(376%) hue-rotate(172deg) brightness(87%) contrast(80%);
--tile-border-color: #cabe9b;
--tile-background-color: #f9f3eb;
--tile-link-button-color: #f5e9db;
--tile-link-button-highlight-color: #dfccb0;
--tile-dark-color: #fff;
--tile-dark-bg: #5d6773;
--tile-dark-link-color: #ccc;
--tile-dark-byline-color: rgba(255, 255, 255, 0.7);
--tile-dark-header-color: #fff;
}
.tile {
background: var(--tile-background-color);
border: 1px solid var(--tile-border-color);
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
padding: 1.5em 2em 1em;
max-width: 40em;
}
.tile h2 {
font-size: 1.4em;
font-weight: bold;
border: none;
margin: 0 0 0.4em;
}
.tile .byline + h2 {
margin-top: -0.5em;
}
.tile.dark {
color: var(--tile-dark-color);
background: var(--tile-dark-bg);
border: none;
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.3);
}
.tile.dark h2 {
color: var(--tile-dark-header-color);
}
.tile.dark a {
color: var(--tile-dark-link-color);
}
.tile.dark .byline {
color: var(--tile-dark-byline-color);
}
.byline {
font-size: 0.9em;
color: var(--byline-color);
}
.byline a {
color: var(--byline-color);
}
.tile-row {
display: flex;
flex-flow: row wrap;
margin-bottom: 1em;
}
.tile-halves {
display: flex;
flex-flow: row wrap;
border: 1px solid var(--tile-border-color);
background: var(--tile-background-color);
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
}
.tile-halves h2 {
font-size: 1.4em;
font-weight: bold;
border: none;
margin: 0 0 0.4em;
}
.tile-halves .byline + h2 {
margin-top: -0.5em;
}
.tile-top {
width: 100%;
padding: 1.3rem 1.5rem 0.6rem;
}
.tile-top.tile-image {
display: flex;
align-items: center;
background-color: var(--byline-color);
overflow: hidden;
padding: 0;
height: 13vw;
max-height: 12em;
transition: 0.4s ease-out;
}
.tile-halves:hover .tile-top.tile-image img {
transform: scale(1.1);
transition: 0.5s ease-out;
}
.tile-top.tile-image a {
width: 100%;
}
.tile-top.tile-image img {
width: 100%;
object-fit: cover;
max-height: 200px;
transition: 0.4s ease-out;
}
.tile-bottom {
background: var(--tile-background-color);
border-top: 1px solid var(--tile-border-color);
width: 100%;
padding: 1rem 1.5rem 0.6rem;
}
.tile-bottom.link-button {
align-self: flex-end;
padding: 0;
}
.tile-bottom.link-button a {
display: block;
text-align: center;
padding: 0.75em 1.5em 0.8em;
text-decoration: none;
}
.tile-bottom.read-more {
background: var(--tile-link-button-color);
transition: 0.3s ease-out;
}
.tile-bottom.read-more a {
color: var(--byline-color);
font-weight: bold;
text-align: right;
}
.tile-bottom.read-more:hover {
background: var(--tile-link-button-highlight-color);
}
.tile-bottom.read-more:hover .arrow {
transform: translateX(50%);
}
.tile-bottom.read-more .arrow {
filter: var(--byline-arrow-filter);
margin-left: 0.4em;
transition: 0.3s ease-out;
}
body.page-Main_Page.action-view .catlinks,
body.page-Main_Page.action-view #contentSub,
body.page-Main_Page.action-view #firstHeading,
body.page-Main_Page.action-view #siteNotice {
display: none;
}
body.page-Main_Page .mw-parser-output {
max-width: 75em;
margin: 0 auto;
}
body.page-Main_Page.action-view .catlinks,
body.page-Main_Page.action-view #contentSub,
body.page-Main_Page.action-view #siteNotice {
display: none;
}
.mainpage-header {
display: flex;
margin: 2.6em 1.75em 1.5em;
}
.mainpage-header .header-intro {
flex: 2;
}
.mainpage-header .header-intro h1 {
font-size: 2.5em;
font-weight: bold;
border: none;
margin: 0 0 0.15em;
}
.mainpage-header .header-intro p {
font-size: 1.1em;
line-height: 1.7em;
}
.mainpage-header .header-stats {
flex: 1;
display: flex;
justify-content: center;
align-items: center;
margin-top: -1em;
}
.mainpage-body {
display: grid;
grid-template-areas: "event event event" "update update update" "content content content" "left left right";
gap: 0.9rem;
grid-template-columns: repeat(3, 1fr);
}
.mainpage-body h2 a {
color: var(--text-color);
}
.mainpage-body .tile {
padding-left: 1.75em;
padding-right: 1.75em;
max-width: 100%;
}
.mainpage-body .tile-row {
width: 100%;
margin-bottom: 0;
}
.mainpage-body .tile-row {
display: grid;
gap: 0.9rem;
}
.mainpage-contents.tile-row {
display: flex;
}
.mainpage-contents.tile-row .tile-top {
height: 6.5rem;
}
.mainpage-left {
grid-area: left;
flex: 2;
display: flex;
flex-flow: column wrap;
}
.mainpage-left > * {
margin: 0 0 0.9rem;
}
.mainpage-right {
grid-area: right;
flex: 1;
display: flex;
flex-flow: column wrap;
}
.mainpage-right > * {
margin: 0 0 0.9rem;
}
.arrow {
background: url('filepath://White-chevron.svg') no-repeat;
display: inline-block;
height: 0.7rem;
width: 0.45rem;
vertical-align: middle;
}
.arrow.dark {
filter: invert(80%);
}
.mainpage-contents {
grid-area: content;
grid-template-columns: repeat(6, 1fr);
}
.mainpage-contents .tile-halves {
flex: 1;
}
.mainpage-contents .tile-top {
height: 4.5rem;
position: relative;
}
.mainpage-contents h2 {
margin: 0;
padding: 0;
}
.mainpage-contents .tile-bottom.link-button a {
padding: 0.75em 0.2em;
}
.popular-pages ul {
display: grid;
grid-template-columns: repeat(3, 1fr);
grid-gap: 0.6em;
margin: 1em 0 0.7em 0;
}
.mp-popular-page-light {
display: flex;
align-items: center;
background-color: var(--button-background);
transition: 100ms;
}
.mp-popular-page-light a {
flex: 1;
display: block;
color: #fff;
font-weight: bold;
text-align: center;
text-decoration: none;
padding: 0.7em 1em;
}
.mp-popular-page-light:hover {
filter: brightness(115%);
transition: 100ms;
}
.mainpage-discord {
border: none;
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.3);
}
.mainpage-discord .tile-top {
display: flex;
align-items: center;
background: #5865f2;
padding: 1em 1.25em;
}
.mainpage-discord .tile-top a {
flex: 1;
position: relative;
text-decoration: none;
}
.mainpage-discord .tile-top a:hover .arrow {
transform: translateX(50%);
}
.mainpage-discord .tile-bottom {
background: #525ee0;
border: none;
padding: 1em 1.25em;
}
.mainpage-discord .tile-bottom p {
color: #fff;
font-weight: bold;
font-size: 0.9em;
text-align: center;
text-transform: uppercase;
letter-spacing: 0.03em;
margin: 0;
}
.mainpage-discord .partner-icon {
margin-right: 0.75em;
text-align: center;
width: 60px;
}
.mainpage-discord .server-name {
color: #fff;
font-weight: bold;
font-size: 1.25em;
margin: 0.5em 0 -0.15em;
}
.mainpage-discord .server-tagline {
color: rgba(255, 255, 255, 0.9);
margin-bottom: 0.5em;
}
.mainpage-discord .arrow {
position: absolute;
top: calc(50% - .5em);
right: 0;
height: 1em;
width: 0.7em;
background-size: 0.7em 1em;
transition: 0.3s ease-out;
}
.mainpage-editing {
border: none;
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.3);
}
.mainpage-editing .tile-top {
background: #438ab5;
}
.mainpage-editing .tile-bottom {
background: #3980ab;
border: none;
padding: 0.8rem 1.5rem 0.4rem;
}
.mainpage-editing h2,
.mainpage-editing a {
color: #fff;
}
.mainpage-editing p {
color: rgba(255, 255, 255, 0.9);
}
.mainpage-editing ul {
list-style-image: url('filepath://Transparent-chevron.svg');
}
@media only screen and (max-width: 1200px) {
.mainpage-contents {
grid-template-columns: repeat(3, 1fr);
}
}
@media only screen and (max-width: 1000px) {
.mainpage-body {
grid-template-areas: "event event event" "update update update" "content content content" "left left left" "right right right";
}
.mainpage-recent-updates {
grid-template-columns: repeat(2, 1fr);
}
.mainpage-recent-updates .tile-halves:last-child {
display: none;
}
.mainpage-recent-updates .tile-halves:hover .tile-top img {
transform: scale(1.04);
}
.mainpage-recent-updates .tile-top {
height: 18vw;
min-height: 9em;
}
.mainpage-header .header-stats {
display: none;
}
.mainpage-left > *:last-child,
.mainpage-right > *:last-child {
margin-bottom: 0;
}
.popular-pages ul {
grid-template-columns: repeat(2, 1fr);
}
}
@media only screen and (max-width: 720px) {
.mainpage-recent-updates {
grid-template-columns: none;
}
.mainpage-recent-updates .tile-halves:last-child {
display: flex;
}
.mainpage-contents {
grid-template-columns: repeat(2, 1fr);
}
}
.mw-prefs-buttons {
background-color: var(--body-main);
border-top-color: var(--body-border);
box-shadow: none;
}
.mw-prefs-tabs-wrapper.oo-ui-panelLayout-framed,
.mw-prefs-tabs > .oo-ui-menuLayout-content > .oo-ui-indexLayout-stackLayout > .oo-ui-tabPanelLayout {
border-color: var(--body-border);
}
.mw-htmlform-ooui .mw-htmlform-matrix tbody tr:nth-child(even) td {
background-color: var(--body-light);
}
.mw-htmlform-ooui .mw-htmlform-matrix tbody tr:hover td {
background-color: var(--body-mid);
}
:root {
--rc-positive-color: #407813;
--rc-negative-color: #b41e0f;
}
.mw-plusminus-pos {
color: var(--rc-positive-color);
}
.mw-plusminus-neg {
color: var(--rc-negative-color);
}
.client-js .mw-recentchanges-toplinks:not(.mw-recentchanges-toplinks-collapsed) {
border-color: var(--body-border);
background-color: var(--body-light);
border-radius: 2px;
}
.mw-rcfilters-ui-filterTagMultiselectWidget-wrapper-content-title {
color: var(--text-color);
}
.mw-rcfilters-ui-filterTagMultiselectWidget-emptyFilters {
color: var(--byline-color);
}
.mw-rcfilters-ui-filterTagMultiselectWidget.oo-ui-widget-enabled .oo-ui-tagMultiselectWidget-handle {
background-color: var(--ooui-interface);
border-color: var(--ooui-interface-border);
}
.mw-rcfilters-ui-filterTagMultiselectWidget-views-select-widget.oo-ui-widget {
border-color: var(--ooui-interface-border);
}
.mw-rcfilters-collapsed .mw-rcfilters-ui-filterTagMultiselectWidget {
border-bottom-color: var(--ooui-interface-border);
}
.mw-rcfilters-ui-menuSelectWidget-footer {
background-color: var(--ooui-interface);
border-color: var(--ooui-interface-border);
}
.mw-rcfilters-ui-viewSwitchWidget label.oo-ui-labelWidget {
color: var(--byline-color);
}
.mw-rcfilters-ui-tagItemWidget-popup-content {
color: var(--ooui-text);
}
.mw-changeslist-legend,
.mw-rcfilters-ui-changesListWrapperWidget .mw-changeslist-legend {
background-color: var(--body-light);
border-color: var(--body-dark);
}
.mw-rcfilters-ui-changesListWrapperWidget-previousChangesIndicator {
border-color: var(--sidebar);
}
.client-js .mw-changeslist ul,
.client-js .mw-changeslist table.mw-enhanced-rc {
margin-left: 0;
}
.mw-rcfilters-ui-watchlistTopSectionWidget-separator {
border-color: var(--sidebar);
}
.mw-rcfilters-ui-itemMenuOptionWidget-header {
border-bottom-color: var(--ooui-interface);
background-color: var(--ooui-interface-border);
}
.mw-rcfilters-ui-itemMenuOptionWidget:not(:last-child):not(.mw-rcfilters-ui-itemMenuOptionWidget-identifier-talk) {
border-bottom-color: var(--ooui-normal-border);
}
.mw-rcfilters-ui-itemMenuOptionWidget-label-title,
.mw-rcfilters-ui-itemMenuOptionWidget-label-desc {
color: var(--text-color);
}
.mw-rcfilters-ui-filterMenuOptionWidget.oo-ui-flaggedElement-muted:not(.oo-ui-optionWidget-selected) {
background-color: var(--body-main);
}
.mw-rcfilters-ui-filterMenuOptionWidget.oo-ui-flaggedElement-muted .mw-rcfilters-ui-itemMenuOptionWidget-label-title,
.mw-rcfilters-ui-filterMenuOptionWidget.oo-ui-flaggedElement-muted .mw-rcfilters-ui-itemMenuOptionWidget-label-desc {
color: var(--subtle-color);
}
.mw-rcfilters-ui-filterMenuSectionOptionWidget {
background-color: var(--body-mid);
}
.mw-rcfilters-ui-filterMenuSectionOptionWidget-header-title.oo-ui-labelElement-label {
color: var(--ooui-text);
}
.mw-rcfilters-ui-filterMenuHeaderWidget-title {
color: var(--ooui-text);
}
.mw-rcfilters-ui-filterMenuHeaderWidget-header {
border-bottom-color: var(--ooui-interface-border);
background-color: var(--ooui-interface);
}
.mw-rcfilters-ui-itemMenuOptionWidget-view-namespaces {
border-top-color: var(--ooui-interface-border);
}
.mw-rcfilters-ui-datePopupWidget {
border-color: var(--ooui-interface-border);
}
.mw-rcfilters-ui-datePopupWidget .mw-rcfilters-ui-valuePickerWidget-title {
color: var(--byline-color);
}
.mw-rcfilters-ui-savedLinksListItemWidget-label {
color: var(--ooui-accent);
}
.client-js .mw-changeslist.mw-rcfilters-ui-changesListWrapperWidget-highlighted ul,
.client-js .mw-changeslist.mw-rcfilters-ui-changesListWrapperWidget-highlighted table.mw-enhanced-rc {
margin-left: 1.5em;
}
.page-Special_CreateAccount .mw-ui-container,
.page-Special_UserLogin .mw-ui-container {
max-width: 64rem;
margin: 0 auto;
}
.mw-number-text {
color: var(--byline-color);
}
.mw-body-content .mw-number-text h3 {
color: var(--text-color);
}
#mw-indicator-mw-helplink a {
background: none;
padding: 0;
display: flex;
align-items: center;
}
#mw-indicator-mw-helplink a::before {
content: '';
margin-right: 5px;
-webkit-mask: url("/resources/src/mediawiki.helplink/images/helpNotice.svg?46d34") no-repeat 50% 50% / contain;
mask: url("/resources/src/mediawiki.helplink/images/helpNotice.svg?46d34") no-repeat 50% 50% / contain;
background: var(--text-color);
height: 20px;
width: 20px;
}
.results-info {
color: inherit;
}
.mw-search-profile-tabs {
background-color: var(--body-mid);
border-color: transparent;
}
.search-types .current a {
color: inherit;
}
#mw-searchoptions {
background-color: var(--body-mid);
border-color: transparent;
}
#mw-searchoptions .divider {
border-color: var(--body-border);
}
#mw-searchoptions h4 {
font-family: inherit;
}
#mw-searchoptions .oo-ui-labelElement:nth-of-type(odd) {
font-weight: bold;
}
.searchresult {
line-height: 1.5;
}
.searchalttitle,
#mw-search-interwiki li {
font-size: 90%;
}
.mw-search-result-data {
color: var(--byline-color);
}
.page-Special_ListFiles a.image img {
width: inherit;
height: inherit;
}
.page-Special_ListFiles .TablePager_col_thumb {
text-align: center;
}
#editcount table[border="1"] {
background-color: var(--body-main) !important;
border-color: var(--wikitable-border) !important;
margin-top: 0.5em;
}
#editcount table[border="1"] th,
#editcount table[border="1"] td {
padding: 0.2em 0.4em;
}
#editcount table[border="1"] th {
background-color: var(--wikitable-header-bg);
border: 1px solid var(--wikitable-border);
}
#editcount table[border="1"] td {
border: 1px solid var(--wikitable-border);
}
#editcount table[border="1"] tr:nth-child(odd) {
background-color: var(--body-light);
}
.mw-echo-ui-notificationBadgeButtonPopupWidget-popup > .oo-ui-popupWidget-popup .mw-echo-ui-placeholderItemWidget {
background-color: inherit;
}
table.mw-interwikitable.body td.mw-interwikitable-local-yes {
background-color: var(--table-yes-background);
color: var(--table-yes-color);
}
.mw-protectedpages-unknown {
color: var(--byline-color);
}
.watchlistredir,
.allpagesredirect {
font-style: italic;
}
.allpagesredirect:after {
color: var(--byline-color);
content: " (redirect)";
}
.mw-apisandbox-toolbar {
background: var(--body-main);
}
.oo-ui-menuOptionWidget .mw-apisandbox-flag {
color: var(--byline-color);
}
tr.mw-abusefilter-list-disabled,
tr.mw-abusefilter-list-disabled td {
color: var(--byline-color);
}
table.mw-abuselog-details {
background: var(--wikitable-bg);
border-color: var(--wikitable-border);
}
table.mw-abuselog-details th {
background: var(--wikitable-header-bg);
}
table.mw-abuselog-details th,
table.mw-abuselog-details td {
border-color: var(--wikitable-border);
}
.mw-abusefilter-log-hidden-entry {
color: var(--subtle-color);
}
body td.mw-abusefilter-history-changed {
background: var(--table-no-background);
}
div.mw-abusefilter-editor,
#mw-abusefilter-warn-preview,
#mw-abusefilter-disallow-preview {
border-color: var(--ooui-input-border);
}
.mw-destfile-warning {
border-color: var(--warningbox-border);
color: var(--text-color);
background-color: var(--warningbox-bg);
}
span.fileinput-button {
background-color: var(--ooui-normal);
border-color: var(--ooui-normal-border);
color: var(--ooui-text);
}
ul.fileupload-results li.ful-success {
background-color: var(--successbox-bg);
}
ul.fileupload-results li.ful-success a {
color: var(--link-color);
}
ul.fileupload-results li.ful-error {
background-color: var(--errorbox-bg);
}
#t-print,
#t-permalink {
display: none;
}
#filetoc {
border-radius: 2px;
background: var(--body-mid);
border-color: transparent;
margin: 0.5em auto;
text-align: center;
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
}
li.gallerybox div.thumb {
border: none;
background-color: var(--thumb-bg);
}
.smwfact {
display: none;
}
.list-header {
background-color: var(--body-mid);
color: inherit;
}
.editOptions {
color: var(--text-color);
background-color: var(--sourceeditor-background-secondary);
border-color: var(--sourceeditor-border);
}
.mw-json th,
.mw-json td {
border-color: var(--wikitable-border);
}
.mw-json td {
background: var(--wikitable-bg);
}
.mw-json th {
background: var(--wikitable-header-bg);
}
88e3ac82f0860164521e25c1b4e7e7c3e7ae013f
1111
1106
2024-03-24T00:18:28Z
Merds
25
Updating CSS from [[MediaWiki:Common.less]]
css
text/css
/* <pre> */
:root {
--body-main: #feffff;
--body-light: #f2f2f2;
--body-mid: #d0bd97;
--body-dark: #e3e3e3;
--body-border: #000;
--body-background-color: #173a4d;
--button-background: #605443;
--button-color: #fff;
--button-border: #3c352a;
--button-dark: #18140c;
--button-light: #3a301d;
--sidebar: #cfc08d;
--background-text-color: #e2dbc8;
--background-link-color: #e2bd8a;
--search-box: #efeee6;
--link-color: #936039;
--redlink-color: #ba0000;
--text-color: #000;
--byline-color: #ccc;
--subtle-color: #777;
--admin-blue: #332e75;
--bearcat-green: #13592e;
--awb-purple: #933b96;
--rsw-blue: #438ab6;
--osrsw-brown: #605443;
--thumb-bg: var(--body-light);
--thumb-caption-bg: var(--body-mid);
--sourceeditor-input-background: #fff;
--sourceeditor-background: var(--body-light);
--sourceeditor-background-secondary: var(--body-light);
--sourceeditor-border: var(--body-mid);
--codemirror-gutter-background: var(--body-mid);
}
@font-face {
font-family: 'Lora';
font-weight: 400 700;
font-style: normal;
font-display: swap;
src: url('filepath://Lora.woff2') format('woff2');
}
@font-face {
font-family: 'Lora';
font-weight: 400 700;
font-style: italic;
font-display: swap;
src: url('filepath://Lora-Italic.woff2') format('woff2');
}
:root {
--base-text-color: #36414f;
--base-heading-color: #444e5a;
--base-heading-border: #e4eaee;
--mw-code-background-color: #ddd4bb;
--body-background-image: url('filepath://Wiki_background.jpg');
}
#mw-page-base {
background: none;
}
.mw-body {
background-color: var(--body-main);
color: var(--text-color);
border-color: transparent;
box-shadow: 0 0 7px rgba(0, 0, 0, 0.15);
margin-top: 0;
}
h1,
h2,
h3,
h4,
h5,
h6 {
color: var(--text-color);
}
h1,
h2 {
border-color: var(--sidebar);
}
.mw-body h1,
.mw-body-content h1,
.mw-body-content h2,
.mw-body-content h3,
.mw-body-content h4,
.mw-body-content h5,
.mw-body-content h6 {
font-family: 'Lora', 'Palatino', 'Georgia', serif;
}
.mw-parser-output h2:first-of-type {
clear: left;
}
.mw-footer {
color: var(--background-text-color);
}
.mw-footer li {
color: var(--background-text-color);
}
.mw-footer a,
.mw-footer a:active,
.mw-footer a:visited {
color: var(--background-link-color);
}
::placeholder {
color: var(--subtle-color);
}
a {
color: var(--link-color);
}
a:visited,
a:active {
color: var(--link-color);
}
a.new {
color: var(--redlink-color);
}
a.new:visited {
color: var(--redlink-color);
}
.mw-parser-output a.extiw,
.mw-parser-output a.external {
color: var(--link-color);
}
.mw-parser-output a.extiw:visited,
.mw-parser-output a.external:visited,
.mw-parser-output a.extiw:active,
.mw-parser-output a.external:active {
color: var(--link-color);
}
.jsPurgeLink a.external {
color: var(--link-color);
}
:root {
--errorbox-bg: #feecea;
--errorbox-border: #ee4231;
--warningbox-bg: #fef9de;
--warningbox-border: #f9d000;
--successbox-bg: #ecf8e3;
--successbox-border: #6bc71f;
}
.mw-message-box-error,
.errorbox,
.mw-message-box-warning,
.warningbox,
.mw-message-box-success,
.successbox,
.usermessage {
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
}
.mw-message-box-error,
.errorbox {
background-color: var(--errorbox-bg);
border-color: var(--errorbox-border);
}
.mw-message-box-warning,
.warningbox,
.usermessage {
background-color: var(--warningbox-bg);
border-color: var(--warningbox-border);
}
.mw-message-box-success,
.successbox {
background-color: var(--successbox-bg);
border-color: var(--successbox-border);
}
.catlinks {
background: var(--body-light);
border: 1px solid var(--body-dark);
padding: 8px 15px;
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
}
.catlinks li {
border-color: var(--body-mid);
}
.filehistory a img,
#file img {
background: url("data:image/svg+xml,%3C%3Fxml version='1.0' encoding='UTF-8'%3F%3E%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16'%3E%3Cpath d='M0 0h8v16h8V8H0z' opacity='.13'/%3E%3C/svg%3E") repeat;
}
#file img:hover {
background: none;
}
.mw-highlight {
background: none;
}
.mw-highlight .linenos {
background-color: var(--mw-code-background-color);
color: var(--byline-color);
}
.mw-highlight a:hover .linenos,
.mw-highlight .hll a .linenos {
color: var(--text-color);
}
.mw-content-ltr.mw-highlight-lines pre,
.mw-content-ltr.content .mw-highlight-lines pre {
box-shadow: inset 2.75em 0 0 var(--mw-code-background-color);
}
#pagehistory ul {
list-style: none;
margin: 0;
}
#pagehistory li {
border: 1px solid transparent;
padding: 1px 10px;
margin: 2px 0;
}
#pagehistory li.selected {
background-color: var(--body-light);
color: inherit;
border: 1px dashed var(--body-border);
outline: none;
}
#mw-history-compare > div:first-of-type {
position: -webkit-sticky;
position: sticky;
top: 0;
background-color: var(--body-main);
border-bottom: 1px solid var(--body-dark);
padding: 0.25em 0;
}
.wgl-stickyheader #mw-history-compare > div:first-of-type {
top: 2.5rem;
}
.autocomment,
.autocomment a,
.autocomment a:visited {
color: var(--link-color);
}
li span.deleted,
span.history-deleted {
color: var(--byline-color);
}
.mw-usertoollinks-contribs-no-edits,
.mw-usertoollinks-contribs-no-edits:visited {
color: var(--redlink-color);
}
.CategoryTreeToggle {
color: var(--link-color);
}
body.wgl-stickyheader.action-view .mw-headline:target::before {
display: block;
content: '';
margin-top: -3rem;
height: 3rem;
visibility: hidden;
pointer-events: none;
}
.mw-mmv-post-image {
color: var(--text-color);
background-color: var(--body-main);
}
.mw-mmv-image-metadata {
border-top-color: var(--body-mid);
background-color: var(--body-light);
}
.mw-mmv-dialog,
.mw-mmv-dialog .mw-mmv-dialog-down-arrow,
.mw-mmv-options-dialog .mw-mmv-dialog-down-arrow {
background-color: var(--body-light);
box-shadow: none;
}
.mw-mmv-options-enable-alert {
background-color: var(--body-light);
color: var(--text-color);
}
.mw-mmv-options-dialog-header,
.mw-mmv-options-text-header,
.mw-mmv-options-text-body,
.mw-mmv-options-enable-alert,
.mw-mmv-options-dialog .mw-mmv-disable-confirmation .mw-mmv-options-dialog-header,
.mw-mmv-options-dialog .mw-mmv-disable-confirmation .mw-mmv-options-text-header {
color: var(--text-color);
}
.mw-revslider-container {
border-color: var(--sidebar);
}
.mw-revslider-slider-wrapper {
border-top-color: var(--sidebar);
}
.mw-ui-button {
background-color: var(--ooui-normal);
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
}
.mw-ui-button:not(:disabled):hover,
.mw-ui-button:not(:disabled):active {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
}
.mw-ui-button:not(:disabled):focus {
color: var(--ooui-text);
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent), inset 0 0 0 2px #fff;
}
.mw-ui-button:not(:disabled):visited {
color: var(--ooui-text);
}
.mw-ui-button.mw-ui-progressive:not(:disabled) {
background-color: var(--ooui-progressive);
color: #fff;
border-color: var(--ooui-progressive);
}
.mw-ui-button.mw-ui-progressive:not(:disabled):hover {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
}
.mw-ui-button.mw-ui-progressive:not(:disabled):focus {
box-shadow: inset 0 0 0 1px var(--ooui-accent), inset 0 0 0 2px #fff;
}
.mw-ui-button.mw-ui-progressive:not(:disabled):active,
.mw-ui-button.mw-ui-progressive:not(:disabled).is-on {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
box-shadow: none;
}
.mw-ui-button.mw-ui-destructive:not( :disabled ) {
color: #fff;
}
.mw-ui-button.mw-ui-quiet,
.mw-ui-button.mw-ui-quiet.mw-ui-progressive,
.mw-ui-button.mw-ui-quiet.mw-ui-destructive {
color: var(--text-color);
}
input[type='checkbox']:hover + .mw-ui-button.mw-ui-quiet,
input[type='checkbox']:hover + .mw-ui-button.mw-ui-quiet.mw-ui-progressive,
input[type='checkbox']:hover + .mw-ui-button.mw-ui-quiet.mw-ui-destructive,
.mw-ui-button.mw-ui-quiet:hover,
.mw-ui-button.mw-ui-quiet.mw-ui-progressive:hover,
.mw-ui-button.mw-ui-quiet.mw-ui-destructive:hover {
background-color: rgba(0, 24, 73, 0.02745098);
color: var(--text-color);
border-color: transparent;
}
input[type='checkbox']:focus + .mw-ui-button.mw-ui-quiet,
input[type='checkbox']:focus + .mw-ui-button.mw-ui-quiet.mw-ui-progressive,
input[type='checkbox']:focus + .mw-ui-button.mw-ui-quiet.mw-ui-destructive,
.mw-ui-button.mw-ui-quiet:focus,
.mw-ui-button.mw-ui-quiet.mw-ui-progressive:focus,
.mw-ui-button.mw-ui-quiet.mw-ui-destructive:focus {
color: var(--text-color);
}
input[type='checkbox']:active + .mw-ui-button.mw-ui-quiet,
input[type='checkbox']:active + .mw-ui-button.mw-ui-quiet.mw-ui-progressive,
input[type='checkbox']:active + .mw-ui-button.mw-ui-quiet.mw-ui-destructive,
.mw-ui-button.mw-ui-quiet:active,
.mw-ui-button.mw-ui-quiet.mw-ui-progressive:active,
.mw-ui-button.mw-ui-quiet.mw-ui-destructive:active {
background-color: rgba(0, 36, 73, 0.08235294);
color: var(--text-color);
border-color: #72777d;
}
.mw-ui-input {
background-color: var(--ooui-input);
color: var(--text-color);
border-color: var(--ooui-input-border);
}
.mw-ui-input:hover {
border-color: var(--ooui-input-border--hover);
}
.mw-ui-input::placeholder {
color: var(--byline-color);
}
.mw-content-ltr .redirectText li:first-child {
padding: 0;
background: 0;
}
.mw-content-ltr .redirectText li:first-child::before {
content: '';
background: currentcolor;
-webkit-mask: url("filepath://Redirect-arrow.svg") no-repeat 50% 50% / contain;
mask: url("filepath://Redirect-arrow.svg") no-repeat 50% 50% / contain;
display: inline-block;
width: 47px;
height: 20px;
}
:root {
--wikitable-header-bg: var(--body-dark);
--wikitable-border: var(--body-border);
--wikitable-bg: var(--body-light);
--wikitable-bg-lighter: #e9e3d6;
--wikitable-color: var(--text-color);
--table-na-background: rgba(255, 255, 255, 0.3);
--table-na-color: var(--subtle-color);
--table-yes-background: #c3e8a3;
--table-yes-color: #2e5e05;
--table-no-background: #fbc0ba;
--table-no-color: #801c13;
--table-maybe-background: #fcea94;
--table-maybe-color: #786300;
}
.wikitable {
background: var(--wikitable-bg);
color: var(--wikitable-color);
border-color: var(--wikitable-border);
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
}
.wikitable > tr > th,
.wikitable > tr > td,
.wikitable > * > tr > th,
.wikitable > * > tr > td {
border-color: var(--wikitable-border);
}
.wikitable > tr > th.table-noborder,
.wikitable > tr > td.table-noborder,
.wikitable > * > tr > th.table-noborder,
.wikitable > * > tr > td.table-noborder {
border-left-style: hidden;
border-right-style: hidden;
padding-left: 0;
padding-right: 0;
}
.wikitable > tr > th,
.wikitable > * > tr > th {
background-color: var(--wikitable-header-bg);
}
.tabber .wikitable {
box-shadow: none;
}
.mw_metadata td,
.mw_metadata th {
border-color: var(--wikitable-border);
}
.mw_metadata th {
background-color: var(--wikitable-header-bg);
}
.mw_metadata td {
background-color: var(--wikitable-bg);
}
.mw-datatable {
border-color: var(--wikitable-border);
}
.mw-datatable td,
.mw-datatable th {
border-color: var(--wikitable-border);
}
.mw-datatable th {
background-color: var(--wikitable-header-bg);
}
.mw-datatable td {
background-color: var(--wikitable-bg);
}
.mw-datatable tr:hover td {
background-color: var(--wikitable-bg);
}
table.alternating-rows tr:nth-child(odd),
table.alternating-cols td:nth-child(odd) {
background: var(--wikitable-alternating-bg);
}
.table-na {
background: var(--table-na-background);
color: var(--table-na-color);
vertical-align: middle;
text-align: center;
}
.table-yes {
background: var(--table-yes-background);
color: var(--table-yes-color);
}
.table-positive {
background: var(--table-yes-background);
}
.table-no {
background: var(--table-no-background);
color: var(--table-no-color);
}
.table-negative {
background: var(--table-no-background);
}
.table-maybe {
background: var(--table-maybe-background);
color: var(--table-maybe-color);
}
#mw-allmessagestable .am_actual,
#mw-allmessagestable .am_default {
background-color: var(--wikitable-bg);
}
#mw-allmessagestable .am_default:hover,
#mw-allmessagestable .am_actual:hover,
#mw-allmessagestable tbody:hover td {
background-color: var(--wikitable-bg-lighter);
}
table.wikitable td.no-cell-spacing {
padding: 0;
height: 0;
}
table.wikitable td.no-cell-spacing table {
margin: -1px;
width: calc(100% + 2px);
height: calc(100% + 2px);
}
.plainlist ol,
.plainlist ul {
margin: 0;
}
.plainlist li {
margin-bottom: 0;
list-style: none;
}
table.align-right-1 td:nth-of-type(1),
table.align-right-2 td:nth-of-type(2),
table.align-right-3 td:nth-of-type(3),
table.align-right-4 td:nth-of-type(4),
table.align-right-5 td:nth-of-type(5),
table.align-right-6 td:nth-of-type(6),
table.align-right-7 td:nth-of-type(7),
table.align-right-8 td:nth-of-type(8),
table.align-right-9 td:nth-of-type(9),
table.align-right-10 td:nth-of-type(10),
table.align-right-11 td:nth-of-type(11),
table.align-right-12 td:nth-of-type(12),
table.align-right-13 td:nth-of-type(13),
table.align-right-14 td:nth-of-type(14),
table.align-right-15 td:nth-of-type(15),
table.align-right-16 td:nth-of-type(16),
table.align-right-17 td:nth-of-type(17),
table.align-right-18 td:nth-of-type(18),
table.align-right-19 td:nth-of-type(19),
table.align-right-20 td:nth-of-type(20) {
text-align: right;
}
table.align-center-1 td:nth-of-type(1),
table.align-center-2 td:nth-of-type(2),
table.align-center-3 td:nth-of-type(3),
table.align-center-4 td:nth-of-type(4),
table.align-center-5 td:nth-of-type(5),
table.align-center-6 td:nth-of-type(6),
table.align-center-7 td:nth-of-type(7),
table.align-center-8 td:nth-of-type(8),
table.align-center-9 td:nth-of-type(9),
table.align-center-10 td:nth-of-type(10),
table.align-center-11 td:nth-of-type(11),
table.align-center-12 td:nth-of-type(12),
table.align-center-13 td:nth-of-type(13),
table.align-center-14 td:nth-of-type(14),
table.align-center-15 td:nth-of-type(15),
table.align-center-16 td:nth-of-type(16),
table.align-center-17 td:nth-of-type(17),
table.align-center-18 td:nth-of-type(18),
table.align-center-19 td:nth-of-type(19),
table.align-center-20 td:nth-of-type(20) {
text-align: center;
}
table.align-left-1 td:nth-of-type(1),
table.align-left-2 td:nth-of-type(2),
table.align-left-3 td:nth-of-type(3),
table.align-left-4 td:nth-of-type(4),
table.align-left-5 td:nth-of-type(5),
table.align-left-6 td:nth-of-type(6),
table.align-left-7 td:nth-of-type(7),
table.align-left-8 td:nth-of-type(8),
table.align-left-9 td:nth-of-type(9),
table.align-left-10 td:nth-of-type(10),
table.align-left-11 td:nth-of-type(11),
table.align-left-12 td:nth-of-type(12),
table.align-left-13 td:nth-of-type(13),
table.align-left-14 td:nth-of-type(14),
table.align-left-15 td:nth-of-type(15),
table.align-left-16 td:nth-of-type(16),
table.align-left-17 td:nth-of-type(17),
table.align-left-18 td:nth-of-type(18),
table.align-left-19 td:nth-of-type(19),
table.align-left-20 td:nth-of-type(20) {
text-align: left;
}
:root {
--diff-addedline-border-color: #438ab5;
--diff-addedline-background: #bddff2;
--diff-addedline-color: #000;
--diff-deletedline-border-color: #379541;
--diff-deletedline-background: #c1edbf;
--diff-deletedline-color: #000;
--diff-context-border-color: var(--body-mid);
--diff-context-background: var(--body-mid);
}
.diff-context {
border-color: var(--diff-context-border-color);
background: var(--diff-context-background);
color: inherit;
}
.diff-addedline {
border-color: var(--diff-addedline-border-color);
}
.diff-addedline .diffchange {
background: var(--diff-addedline-background);
color: var(--diff-addedline-color);
}
.diff-deletedline {
border-color: var(--diff-deletedline-border-color);
}
.diff-deletedline .diffchange {
background: var(--diff-deletedline-background);
color: var(--diff-deletedline-color);
}
.mw-diff-movedpara-left:after,
.mw-diff-movedpara-right:after {
color: var(--text-color);
}
.mw-notification {
background-color: var(--body-light);
border-color: var(--body-border);
color: var(--text-color);
}
.mw-echo-ui-notificationsInboxWidget-toolbarWrapper {
background: var(--body-main);
}
.mw-body-content .mw-echo-ui-datedSubGroupListWidget-title-secondary {
color: var(--byline-color);
}
.mw-echo-ui-pageNotificationsOptionWidget.oo-ui-optionWidget-selected {
background-color: var(--ooui-normal);
color: var(--ooui-accent);
}
.mw-echo-ui-pageNotificationsOptionWidget-label-count {
background-color: var(--ooui-normal);
color: var(--byline-color);
}
.oo-ui-optionWidget-selected .mw-echo-ui-pageNotificationsOptionWidget-label-count {
color: var(--ooui-accent);
}
.mw-echo-ui-pageNotificationsOptionWidget.oo-ui-optionWidget-highlighted {
background-color: var(--ooui-normal);
color: var(--text-color);
}
.mw-echo-ui-crossWikiUnreadFilterWidget {
border-color: var(--body-border);
}
.mw-echo-ui-crossWikiUnreadFilterWidget-subtitle {
color: var(--byline-color);
}
.mw-echo-ui-notificationBadgeButtonPopupWidget-popup > .oo-ui-popupWidget-popup > .oo-ui-popupWidget-head,
.mw-echo-ui-notificationBadgeButtonPopupWidget-popup > .oo-ui-popupWidget-popup > .oo-ui-popupWidget-footer {
border-color: var(--ooui-interface-border);
}
.mw-echo-ui-notificationBadgeButtonPopupWidget-popup > .oo-ui-popupWidget-popup > .oo-ui-popupWidget-footer .mw-echo-ui-notificationBadgeButtonPopupWidget-footer-buttons .oo-ui-buttonElement:last-child {
border-left-color: var(--ooui-normal-border);
}
.mw-echo-ui-notificationItemWidget {
background-color: var(--ooui-normal);
border-color: var(--ooui-normal-border);
}
.mw-echo-ui-notificationItemWidget:hover,
.mw-echo-ui-notificationItemWidget-unread:hover {
background-color: var(--ooui-normal--hover);
}
.mw-echo-ui-notificationItemWidget:last-child {
border-bottom-color: var(--ooui-normal-border);
}
.mw-echo-ui-notificationItemWidget-unread {
background-color: var(--search-box);
}
.mw-echo-ui-crossWikiNotificationItemWidget-group,
.mw-echo-ui-bundleNotificationItemWidget-group {
background-color: var(--ooui-interface);
}
.mw-echo-ui-toggleReadCircleButtonWidget-circle {
background-color: var(--ooui-progressive);
}
.mw-echo-ui-toggleReadCircleButtonWidget:hover .mw-echo-ui-toggleReadCircleButtonWidget-circle {
background-color: var(--ooui-progressive--hover);
}
.mw-echo-ui-toggleReadCircleButtonWidget-circle-unread {
background-color: var(--ooui-normal);
border-color: var(--ooui-normal-border);
}
.mw-echo-ui-notificationItemWidget-content-message-header,
.mw-echo-ui-notificationItemWidget-content-message-body,
.mw-echo-ui-menuItemWidget > .oo-ui-buttonElement-button > .oo-ui-labelElement-label,
.mw-echo-ui-notificationItemWidget-content-actions-timestamp {
color: var(--ooui-text);
}
.mw-echo-ui-bundleNotificationItemWidget-group {
background-color: var(--body-main);
}
@keyframes unseen-fadeout-to-unread {
from {
background-color: var(--wikitable-bg-lighter);
}
to {
background-color: var(--search-box);
}
}
@keyframes unseen-fadeout-to-read {
from {
background-color: var(--wikitable-bg-lighter);
}
to {
background-color: var(--body-main);
}
}
.mwe-popups {
background: var(--body-light);
}
.mwe-popups .mwe-popups-container {
color: var(--text-color);
background: var(--body-light);
}
.mwe-popups .mwe-popups-container.flipped-x-y:before,
.mwe-popups .mwe-popups-container.flipped-y:before {
border-top: none;
}
.mwe-popups .mwe-popups-container.mwe-popups-no-image-tri:before {
border-bottom: none;
}
.mwe-popups .mwe-popups-container.flipped-x-y:after,
.mwe-popups .mwe-popups-container.flipped-y:after {
border-top-color: var(--body-light);
}
.mwe-popups .mwe-popups-container.mwe-popups-no-image-tri:after {
border-bottom-color: var(--body-light);
}
.mwe-popups .mwe-popups-settings-icon:hover,
.mwe-popups .mwe-popups-settings-icon:active {
background-color: var(--ooui-normal--hover);
}
.mwe-popups .mw-ui-icon-element:not(.disabled):hover {
background: none;
}
.mwe-popups .mwe-popups-extract {
color: var(--text-color);
}
.mwe-popups .mwe-popups-extract[dir='ltr']:after {
background-image: linear-gradient(to right, rgba(49, 62, 89, 0), var(--body-light) 50%);
}
.mwe-popups-overlay {
background-color: var(--ooui-window-background);
}
#mwe-popups-settings {
background: var(--ooui-interface);
border-color: var(--ooui-interface-border);
color: var(--text-color);
}
#mwe-popups-settings header {
border-color: var(--ooui-interface-border);
}
#mwe-popups-settings main#mwe-popups-settings-form p {
color: var(--byline-color);
}
#mwe-popups-settings main#mwe-popups-settings-form form label > span {
color: var(--ooui-text);
}
:root {
--smw-ask-options-even-bg: var(--body-mid);
--smw-ask-options-odd-bg: var(--body-light);
--smw-ask-action-btn-lblue-bg: var(--body-main);
--smw-ask-action-btn-lblue-color: #000;
--smw-ask-action-btn-lblue-border-color: var(--body-light);
--smw-ask-action-btn-dblue-bg: var(--body-light);
--smw-ask-action-btn-dblue-color: #fff;
--smw-ask-action-btn-dblue-border-color: var(--button-border);
}
.smw-ask-condition fieldset,
.smw-ask-printhead fieldset {
border-color: var(--sidebar);
}
.smw-ask-search fieldset,
.smw-ask-format fieldset,
.smw-ask-options fieldset {
border-color: var(--sidebar);
}
.strike > span:before,
.strike > span:after {
background: var(--sidebar);
}
.smw-ask-options-fields tr td {
background-color: var(--smw-ask-options-even-bg);
}
.smw-ask-options-fields tr:nth-child(odd) td {
background-color: var(--smw-ask-options-odd-bg);
}
.smw-ask-action-btn.smw-ask-action-btn-lblue,
.smw-ask-action-btn.smw-ask-action-btn-lblue:hover,
.smw-ask-action-btn.smw-ask-action-btn-lblue:visited {
background-color: var(--smw-ask-action-btn-lblue-bg);
color: var(--smw-ask-action-btn-lblue-color);
border-color: var(--smw-ask-action-btn-lblue-border-color);
}
.smw-ask-action-btn.smw-ask-action-btn-dblue,
.smw-ask-action-btn.smw-ask-action-btn-dblue:hover,
.smw-ask-action-btn.smw-ask-action-btn-dblue:visited {
background-color: var(--smw-ask-action-btn-dblue-bg);
color: var(--smw-ask-action-btn-dblue-color);
border-color: var(--smw-ask-action-btn-dblue-border-color);
}
.smw-ask-query textarea,
.smw-ask-actions textarea {
background-color: var(--ooui-interface);
border-color: var(--ooui-interface-border);
color: var(--ooui-text);
}
.smw-ask-query-format select {
background-color: var(--ooui-interface);
border: 1px solid var(--ooui-interface-border);
color: var(--ooui-text);
}
.smw-ask-toplinks {
background-color: var(--body-mid);
}
.smw-ask-toplinks span.smw-icon-info {
background: none;
padding: 0 !important;
}
.smw-ask-toplinks span.smw-icon-info::before {
content: '';
background: var(--text-color);
-webkit-mask: url("data:image/svg+xml,%3C%3Fxml version='1.0' encoding='UTF-8'%3F%3E%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 20 20'%3E%3Ctitle%3Einfo%3C/title%3E%3Cpath d='M10 0C4.477 0 0 4.477 0 10s4.477 10 10 10 10-4.477 10-10S15.523 0 10 0zM9 5h2v2H9zm0 4h2v6H9z'/%3E%3C/svg%3E") no-repeat 50% 50% / contain;
mask: url("data:image/svg+xml,%3C%3Fxml version='1.0' encoding='UTF-8'%3F%3E%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 20 20'%3E%3Ctitle%3Einfo%3C/title%3E%3Cpath d='M10 0C4.477 0 0 4.477 0 10s4.477 10 10 10 10-4.477 10-10S15.523 0 10 0zM9 5h2v2H9zm0 4h2v6H9z'/%3E%3C/svg%3E") no-repeat 50% 50% / contain;
padding: 0 0 3px 18px;
}
.smw-ask-options-row-odd {
background-color: var(--body-light);
}
.smw-ask-options-row-even {
background-color: var(--body-mid);
}
#options-toggle:not(:checked) + #options-list .options-parameter-list:after {
background-image: linear-gradient(to bottom, transparent, var(--body-mid) 90%);
}
.smw-ask-button-submit input {
background-color: var(--ooui-normal);
border-color: var(--ooui-normal-border);
color: var(--text-color);
}
.smw-ask-button-submit input:hover,
.smw-ask-button-lgrey:hover {
background-color: var(--ooui-normal--hover);
border-color: var(--ooui-normal-border);
}
input.smw-ask-action-btn.smw-ask-action-btn-dblue {
background-color: var(--ooui-normal);
border-color: var(--ooui-normal-border);
color: var(--ooui-text);
}
a.smw-ask-action-btn.smw-ask-action-btn-lblue {
background-color: var(--body-mid);
border-color: var(--body-mid);
color: var(--ooui-text);
}
a.smw-ask-action-btn.smw-ask-action-btn-lblue:visited {
background-color: var(--body-mid);
border-color: var(--body-mid);
color: var(--ooui-text);
}
a.smw-ask-action-btn.smw-ask-action-btn-lblue:hover {
background-color: var(--body-mid);
border-color: var(--body-mid);
color: var(--ooui-text);
}
a.smw-ask-action-btn-lgrey {
background-color: var(--ooui-normal);
border-color: var(--ooui-normal-border);
color: var(--ooui-text);
}
a.smw-ask-action-btn-lgrey:hover {
background-color: var(--ooui-normal--hover);
border-color: var(--ooui-normal-border);
color: var(--ooui-text);
}
.smw-callout-error {
background-color: var(--errorbox-bg);
border-color: var(--errorbox-border);
}
.smw-callout-info {
background-color: var(--body-light);
border-color: var(--body-dark);
}
.smw-callout-success {
background-color: var(--successbox-bg);
border-color: var(--successbox-border);
}
.smw-callout-warning {
background-color: var(--warningbox-bg);
border-color: var(--warningbox-bg);
}
.smw-tabs input.nav-tab:checked + label.nav-label,
.smw-tabs input.nav-tab:checked + label.nav-label:hover {
color: inherit;
}
#tab-smw-property-value:checked + label.nav-label .usage-count {
color: #fff;
background-color: var(--ooui-progressive);
}
#tab-smw-property-value:checked + label.nav-label .usage-count.moderate {
color: #fff;
background-color: #b55e0c;
border-color: #b55e0c;
}
#tab-smw-property-value:checked + label.nav-label .usage-count.high {
color: #fff;
background-color: #9f261e;
border-color: #9f261e;
}
.smw-property-page-results .header-title {
background-color: var(--ooui-interface);
border-bottom-color: var(--ooui-interface-border);
color: var(--ooui-text);
}
.smw-property-page-results .value-row:hover {
background-color: var(--ooui-normal--hover);
}
.smw-property-page-results .smw-table .header-row {
color: var(--text-color);
}
.tippy-tooltip.light-border-theme {
background-color: var(--body-light);
color: var(--text-color);
}
.tippy-tooltip.light-border-theme .tippy-arrow {
border-top-color: var(--body-light);
}
.tippy-tooltip.light-border-theme .tippy-arrow:after {
border-top-color: var(--body-light);
}
.tippy-header {
background-color: var(--body-dark);
border-bottom-color: var(--body-mid);
}
.smw-ui-input-filter {
background-color: var(--ooui-interface);
border-color: var(--ooui-interface-border);
color: var(--ooui-text);
}
.smw-ui-input-filter input {
border-left-color: var(--ooui-interface-border) !important;
color: var(--ooui-text) !important;
}
.smw-ui-pagination .page-link.link-disabled {
background-color: var(--ooui-disabled);
border-color: var(--ooui-disabled-border);
color: var(--subtle-color);
}
.smw-ui-pagination .page-link {
background-color: var(--ooui-normal);
border-color: var(--ooui-normal-border);
color: var(--link-color);
}
.smw-ui-pagination .page-link:hover {
background-color: var(--ooui-normal--hover);
border-color: var(--ooui-normal-border);
color: var(--link-color);
}
.smw-ui-pagination .page-link.link-active {
color: #fff;
background-color: var(--ooui-progressive);
border-color: var(--ooui-progressive);
}
.smw-tabs input.nav-tab:checked + label.nav-label {
border-color: var(--ooui-normal-border);
}
.smw-tabs section,
.smw-tabs .subtab-content {
border-top-color: var(--ooui-normal-border);
}
.smw-column-header {
color: var(--text-color);
}
.smw-factbox {
background: var(--body-main);
border-color: transparent;
}
.mw-body .mw-indicators #mw-indicator-smw-entity-examiner.mw-indicator .smw-indicator-vertical-bar-loader {
display: none;
}
.smwb-theme-light .smwb-title,
.smwb-theme-light .smwb-center,
.smwb-theme-light .smwb-actions,
.smwb-theme-light .smwb-prophead {
background-color: var(--body-mid);
}
.smwb-theme-light .smwb-factbox {
border-left-color: var(--body-mid);
}
.smwb-theme-light .smwb-ifactbox {
border-right-color: var(--body-mid);
}
.smwb-theme-light .smwb-propval {
background-color: var(--body-light);
}
.smwb-action-separator {
border-color: var(--wikitable-border);
}
.smwb-bottom {
border-bottom: 1px solid var(--wikitable-border);
}
.smwb-ifactbox .smwb-cell,
.smwb-factbox .smwb-cell {
border-top: 1px solid var(--wikitable-border);
}
.smwb-propvalue .smwb-prophead,
.smwb-ipropvalue .smwb-prophead,
.smwb-propvalue .smwb-propval,
.smwb-ipropvalue .smwb-propval {
font-size: 0.9em;
}
:root {
--filter-black-to-link: invert(36%) sepia(58%) saturate(433%) hue-rotate(344deg) brightness(100%) contrast(91%);
}
#bodyContent span.smwbrowse a {
color: black;
background-image: url('filepath://Smwbrowse.svg');
filter: var(--filter-black-to-link);
}
#bodyContent span.smwbrowse a:hover {
color: black;
background-image: url('filepath://Smwbrowse-hover.svg');
text-decoration: underline;
}
#bodyContent span.smwsearch a {
color: black;
filter: var(--filter-black-to-link);
background-image: url('filepath://Smwsearch.svg');
}
#bodyContent span.smwsearch a:hover {
color: black;
background-image: url('filepath://Smwsearch-hover.svg');
text-decoration: underline;
}
:root {
--tabber-tab-bg: var(--body-light);
--tabber-tab-border-color: var(--body-border);
--tabber-active-tab-bg: var(--body-light);
--tabber-active-tab-color: var(--text-color);
--tabber-active-tab-hover-bg: var(--body-light);
--tabber-active-tab-hover-border-color: var(--body-border);
--tabber-active-tab-hover-color: var(--text-color);
--tabber-active-tab-border-hider-color: var(--body-light);
--tabber-inactive-tab-bg: var(--body-background-color);
--tabber-inactive-tab-border-color: var(--body-border);
--tabber-inactive-tab-color: var(--text-color);
--tabber-inactive-tab-hover-bg: var(--body-light);
--tabber-inactive-tab-hover-border-color: var(--body-border);
}
.tabber {
margin: 1em 0;
}
.tabber .tabbertab {
background-color: var(--tabber-tab-bg);
border: 1px solid var(--tabber-tab-border-color);
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
padding: 1em 1.5em;
}
ul.tabbernav {
border: none;
margin-left: 2em;
margin-bottom: 0;
margin-right: 2em;
padding: 0;
font-family: inherit;
}
ul.tabbernav li.tabberactive > a {
background-color: var(--tabber-active-tab-bg);
color: var(--tabber-active-tab-color);
border-bottom: none;
position: relative;
}
ul.tabbernav li.tabberactive > a:hover {
color: var(--tabber-active-tab-hover-color);
background-color: var(--tabber-active-tab-hover-bg);
border-color: var(--tabber-active-tab-hover-border-color);
border-bottom: none;
}
ul.tabbernav li.tabberactive > a::after {
content: '';
position: absolute;
left: 0;
right: 0;
bottom: -1px;
border-bottom: 2px solid var(--tabber-active-tab-border-hider-color);
}
ul.tabbernav li a {
background-color: var(--tabber-inactive-tab-bg);
border-bottom: transparent;
border-color: var(--tabber-inactive-tab-border-color);
color: var(--tabber-inactive-tab-color);
display: inline-block;
font-size: 110%;
padding: 0.5em 1em;
}
ul.tabbernav li a:hover {
background-color: var(--tabber-inactive-tab-hover-bg);
border-color: var(--tabber-inactive-tab-hover-border-color);
}
ul.tabbernav li a:link,
ul.tabbernav li a:visited {
color: var(--tabber-inactive-tab-color);
}
:root {
--ooui-text: var(--text-color);
--ooui-interface: var(--body-light);
--ooui-interface-border: var(--body-border);
--ooui-window-background: rgba(255, 255, 255, 0.5);
--ooui-normal: #d5c7ad;
--ooui-normal--hover: #dfd5c1;
--ooui-normal-border: #b8a282;
--ooui-progressive: #605443;
--ooui-progressive--hover: #7e6e58;
--ooui-accent: var(--link-color);
--ooui-input: #fff;
--ooui-input-border: #b8a282;
--ooui-input-border--hover: #8a724f;
--ooui-disabled: #d1cdc5;
--ooui-disabled-border: #c2b9ab;
--ooui-disabled-text: var(--subtle-color);
--ooui-pending-background-image: repeating-linear-gradient(-45deg, var(--search-box), var(--search-box) 20px, var(--body-main) 20px, var(--body-main) 30px);
}
.oo-ui-widget {
color: var(--ooui-text);
}
.oo-ui-checkboxInputWidget [type='checkbox'] + span,
.oo-ui-radioInputWidget [type='radio'] + span {
background-color: var(--ooui-input);
border-color: var(--ooui-input-border);
}
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:checked + span,
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:indeterminate + span {
background-color: var(--ooui-progressive);
border-color: var(--ooui-progressive);
}
.oo-ui-radioInputWidget.oo-ui-widget-enabled [type='radio']:checked + span {
border-color: var(--ooui-progressive);
}
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:checked:hover + span,
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:indeterminate:hover + span {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
}
.oo-ui-radioInputWidget.oo-ui-widget-enabled [type='radio']:checked:hover + span {
border-color: var(--ooui-progressive--hover);
}
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:hover + span,
.oo-ui-radioInputWidget.oo-ui-widget-enabled [type='radio']:hover + span {
border-color: var(--ooui-accent);
}
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:focus + span {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:active + span,
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:checked:active + span,
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:indeterminate:active + span {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
box-shadow: inset 0 0 0 1px var(--ooui-progressive--hover);
}
.oo-ui-radioInputWidget.oo-ui-widget-enabled [type='radio']:active + span {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
}
.oo-ui-radioInputWidget.oo-ui-widget-enabled [type='radio']:checked:active + span {
border-color: var(--ooui-progressive--hover);
box-shadow: inset 0 0 0 1px var(--ooui-progressive--hover);
}
.oo-ui-radioInputWidget.oo-ui-widget-enabled [type='radio']:checked:active + span:before {
border-color: var(--ooui-progressive--hover);
}
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:checked:focus + span,
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:indeterminate:focus + span {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent), inset 0 0 0 2px #fff;
}
.oo-ui-checkboxInputWidget [type='checkbox']:disabled + span,
.oo-ui-radioInputWidget [type='radio']:disabled + span {
background-color: var(--ooui-disabled);
border-color: var(--ooui-disabled);
}
.oo-ui-dropdownWidget-handle {
border-color: var(--ooui-normal-border);
}
.oo-ui-dropdownWidget.oo-ui-widget-enabled .oo-ui-dropdownWidget-handle {
background-color: var(--ooui-normal);
color: var(--ooui-text);
}
.oo-ui-dropdownWidget.oo-ui-widget-enabled .oo-ui-dropdownWidget-handle:hover {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
}
.oo-ui-dropdownWidget.oo-ui-widget-enabled .oo-ui-dropdownWidget-handle:active {
color: var(--ooui-text);
}
.oo-ui-dropdownWidget.oo-ui-widget-enabled .oo-ui-dropdownWidget-handle:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-dropdownWidget.oo-ui-widget-enabled.oo-ui-dropdownWidget-open .oo-ui-dropdownWidget-handle {
background-color: var(--ooui-normal--hover);
}
.oo-ui-dropdownWidget.oo-ui-widget-disabled .oo-ui-dropdownWidget-handle {
color: var(--ooui-disabled-text);
text-shadow: none;
border-color: var(--ooui-disabled-border);
background-color: var(--ooui-disabled);
}
.oo-ui-dropdownInputWidget select {
border-color: var(--ooui-normal-border);
}
.oo-ui-dropdownInputWidget option {
background-color: var(--ooui-interface);
}
.oo-ui-dropdownInputWidget.oo-ui-widget-enabled {
background-color: var(--ooui-normal);
}
.oo-ui-dropdownInputWidget.oo-ui-widget-enabled:hover {
background-color: var(--ooui-normal--hover);
}
.oo-ui-dropdownInputWidget.oo-ui-widget-enabled select {
color: var(--ooui-text);
}
.oo-ui-dropdownInputWidget.oo-ui-widget-enabled select:hover,
.oo-ui-dropdownInputWidget.oo-ui-widget-enabled select:active {
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
}
.oo-ui-dropdownInputWidget.oo-ui-widget-enabled select:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-labelWidget.oo-ui-inline-help {
color: var(--byline-color);
}
.oo-ui-menuSelectWidget {
background-color: var(--ooui-interface);
border-color: var(--ooui-interface-border);
}
.oo-ui-menuSelectWidget-frameless {
box-shadow: inset 0 -1px 0 0 var(--ooui-normal-border);
}
.oo-ui-menuSectionOptionWidget {
color: var(--byline-color);
}
.oo-ui-menuOptionWidget.oo-ui-optionWidget-highlighted,
.oo-ui-menuOptionWidget.oo-ui-optionWidget-selected {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
}
.oo-ui-menuOptionWidget.oo-ui-optionWidget-selected.oo-ui-menuOptionWidget.oo-ui-optionWidget-highlighted,
.oo-ui-menuOptionWidget.oo-ui-optionWidget-pressed.oo-ui-menuOptionWidget.oo-ui-optionWidget-highlighted {
color: var(--ooui-accent);
}
.oo-ui-menuOptionWidget.oo-ui-widget-enabled.oo-ui-optionWidget {
color: var(--ooui-text);
}
.oo-ui-messageDialog-title {
color: inherit;
}
.oo-ui-messageWidget.oo-ui-messageWidget-block.oo-ui-flaggedElement-error {
background-color: var(--errorbox-bg);
border-color: var(--errorbox-border);
}
.oo-ui-messageWidget.oo-ui-messageWidget-block.oo-ui-flaggedElement-warning {
background-color: var(--warningbox-bg);
border-color: var(--warningbox-border);
}
.oo-ui-messageWidget.oo-ui-messageWidget-block.oo-ui-flaggedElement-success {
background-color: var(--successbox-bg);
border-color: var(--successbox-border);
}
.oo-ui-messageWidget.oo-ui-messageWidget-block.oo-ui-flaggedElement-notice {
background-color: var(--messagebox-info-background);
border-color: var(--messagebox-info-border);
}
.oo-ui-messageWidget.oo-ui-flaggedElement-error:not(.oo-ui-messageWidget-block),
.oo-ui-messageWidget.oo-ui-flaggedElement-success:not(.oo-ui-messageWidget-block) {
color: var(--ooui-text);
}
.oo-ui-optionWidget.oo-ui-widget-disabled {
color: var(--ooui-disabled-text);
}
.oo-ui-outlineControlsWidget {
background-color: var(--ooui-normal);
}
.oo-ui-outlineOptionWidget.oo-ui-optionWidget-highlighted {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
}
.oo-ui-popupWidget-popup {
background-color: var(--ooui-interface);
border-color: var(--ooui-interface-border);
}
.oo-ui-popupWidget-anchored-top .oo-ui-popupWidget-anchor:after {
border-bottom-color: var(--ooui-interface);
}
.oo-ui-popupWidget-anchored-top .oo-ui-popupWidget-anchor:before {
border-bottom-color: var(--ooui-interface-border);
}
.oo-ui-popupWidget-anchored-bottom .oo-ui-popupWidget-anchor:after {
border-top-color: var(--ooui-interface);
}
.oo-ui-popupWidget-anchored-bottom .oo-ui-popupWidget-anchor:before {
border-top-color: var(--ooui-interface-border);
}
.oo-ui-popupWidget-anchored-start .oo-ui-popupWidget-anchor:after {
border-right-color: var(--ooui-interface);
}
.oo-ui-popupWidget-anchored-start .oo-ui-popupWidget-anchor:before {
border-right-color: var(--ooui-interface-border);
}
.oo-ui-popupWidget-anchored-end .oo-ui-popupWidget-anchor:after {
border-left-color: var(--ooui-interface);
}
.oo-ui-popupWidget-anchored-end .oo-ui-popupWidget-anchor:before {
border-left-color: var(--ooui-interface-border);
}
.oo-ui-searchWidget-query {
border-bottom-color: var(--ooui-interface-border);
}
.oo-ui-selectFileWidget-dropTarget {
background-color: var(--ooui-interface);
border-color: var(--ooui-interface-border);
}
.oo-ui-selectFileWidget.oo-ui-widget-enabled.oo-ui-selectFileWidget-dropTarget {
background-color: var(--ooui-interface);
}
.oo-ui-selectFileWidget.oo-ui-widget-enabled.oo-ui-selectFileWidget-dropTarget:hover {
border-color: var(--ooui-input-border--hover);
}
.oo-ui-tabOptionWidget {
color: var(--ooui-text);
}
.oo-ui-tabSelectWidget-framed .oo-ui-tabOptionWidget.oo-ui-optionWidget-selected {
background-color: var(--body-dark);
color: var(--ooui-text);
}
.oo-ui-tabSelectWidget-framed .oo-ui-tabOptionWidget.oo-ui-optionWidget-selected .oo-ui-labelElement-label {
border-bottom-color: var(--body-border);
}
.oo-ui-tabSelectWidget-framed .oo-ui-tabOptionWidget.oo-ui-widget-enabled:hover,
.oo-ui-tabSelectWidget-framed .oo-ui-tabOptionWidget.oo-ui-widget-enabled:active {
background-color: var(--body-light);
color: var(--ooui-text);
}
.oo-ui-tabSelectWidget-framed .oo-ui-tabOptionWidget.oo-ui-widget-enabled.oo-ui-optionWidget-selected:hover {
background-color: var(--body-dark);
}
.oo-ui-tabSelectWidget-frameless .oo-ui-tabOptionWidget.oo-ui-optionWidget-selected {
color: var(--ooui-progressive);
box-shadow: inset 0 -2px 0 0 var(--ooui-progressive);
}
.oo-ui-tabSelectWidget-frameless .oo-ui-tabOptionWidget.oo-ui-optionWidget-selected:hover,
.oo-ui-tabSelectWidget-frameless .oo-ui-tabOptionWidget.oo-ui-optionWidget-selected:focus {
color: var(--ooui-progressive--hover);
box-shadow: inset 0 -2px 0 0 var(--ooui-progressive--hover);
}
.oo-ui-tabSelectWidget-framed {
background: none;
border-bottom: 1px solid var(--ooui-interface-border);
}
.oo-ui-tabSelectWidget-frameless {
box-shadow: inset 0 -1px 0 0 var(--ooui-interface-border);
}
.oo-ui-tabSelectWidget-mobile {
}
.oo-ui-tabSelectWidget-mobile.oo-ui-tabSelectWidget-framed:after {
background: var(--mobile-navbox-linear-gradient);
}
.oo-ui-tabSelectWidget-mobile.oo-ui-tabSelectWidget-frameless:after {
background: var(--mobile-navbox-linear-gradient);
}
.oo-ui-tagItemWidget {
border-color: var(--ooui-normal-border);
}
.oo-ui-tagItemWidget.oo-ui-widget-enabled {
color: var(--ooui-text);
}
.oo-ui-tagItemWidget.oo-ui-widget-enabled:hover {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
}
.oo-ui-tagItemWidget.oo-ui-widget-enabled:not( .oo-ui-tagItemWidget-fixed ) {
background-color: var(--ooui-normal);
}
.oo-ui-tagItemWidget.oo-ui-widget-enabled .oo-ui-buttonElement-button:hover {
background-color: var(--ooui-normal--hover);
}
.oo-ui-tagMultiselectWidget.oo-ui-widget-enabled {
background-color: var(--ooui-interface);
}
.oo-ui-tagMultiselectWidget.oo-ui-widget-enabled.oo-ui-tagMultiselectWidget-outlined {
background-color: var(--ooui-normal);
}
.oo-ui-tagMultiselectWidget.oo-ui-widget-enabled.oo-ui-tagMultiselectWidget-outlined .oo-ui-tagItemWidget.oo-ui-widget-enabled {
background-color: var(--ooui-interface);
}
.oo-ui-textInputWidget .oo-ui-inputWidget-input {
background-color: var(--ooui-input);
color: var(--ooui-text);
border-color: var(--ooui-input-border);
}
.oo-ui-textInputWidget.oo-ui-widget-enabled .oo-ui-inputWidget-input::placeholder {
color: var(--subtle-color);
}
.oo-ui-textInputWidget.oo-ui-widget-enabled .oo-ui-inputWidget-input:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-textInputWidget.oo-ui-widget-enabled .oo-ui-inputWidget-input[readonly]:not(.oo-ui-pendingElement-pending) {
background-color: var(--ooui-disabled);
color: var(--ooui-disabled-text);
}
.oo-ui-textInputWidget.oo-ui-widget-enabled:hover .oo-ui-inputWidget-input {
border-color: var(--ooui-input-border--hover);
}
.oo-ui-textInputWidget.oo-ui-widget-enabled:hover .oo-ui-inputWidget-input:focus {
border-color: var(--ooui-accent);
}
@media screen and (min-width: 0) {
.oo-ui-textInputWidget.oo-ui-widget-enabled textarea.oo-ui-inputWidget-input:focus {
outline: 1px solid var(--ooui-accent);
}
}
.oo-ui-textInputWidget.oo-ui-widget-disabled .oo-ui-inputWidget-input {
background-color: var(--ooui-disabled);
color: var(--ooui-disabled-text);
text-shadow: none;
border-color: var(--ooui-disabled-border);
}
.oo-ui-toggleSwitchWidget {
background-color: var(--ooui-input);
border-color: var(--ooui-input-border);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled .oo-ui-toggleSwitchWidget-grip {
background-color: var(--ooui-input);
border-color: var(--ooui-input-border);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:hover {
background-color: var(--ooui-input);
border-color: var(--ooui-accent);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:hover .oo-ui-toggleSwitchWidget-grip {
background-color: var(--ooui-input);
border-color: var(--ooui-accent);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:active,
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:active:hover,
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:active:focus {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
box-shadow: inset 0 0 0 1px var(--ooui-progressive--hover);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:active .oo-ui-toggleSwitchWidget-grip,
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:active:hover .oo-ui-toggleSwitchWidget-grip,
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:active:focus .oo-ui-toggleSwitchWidget-grip {
background-color: var(--ooui-input);
border-color: var(--ooui-input);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:focus .oo-ui-toggleSwitchWidget-grip {
border-color: var(--ooui-accent);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled.oo-ui-toggleWidget-on {
background-color: var(--ooui-progressive);
border-color: var(--ooui-progressive);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled.oo-ui-toggleWidget-on .oo-ui-toggleSwitchWidget-grip {
background-color: var(--ooui-input);
border-color: var(--ooui-input);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled.oo-ui-toggleWidget-on:hover {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled.oo-ui-toggleWidget-on:active,
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled.oo-ui-toggleWidget-on:active:hover {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled.oo-ui-toggleWidget-on:focus {
border-color: var(--ooui-progressive);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled.oo-ui-toggleWidget-on:focus::before {
border-color: #fff;
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-disabled {
background-color: var(--ooui-disabled);
border-color: var(--ooui-disabled);
}
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled > .oo-ui-buttonElement-button {
color: var(--ooui-text);
}
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled > .oo-ui-buttonElement-button:hover {
color: var(--ooui-text);
}
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled > .oo-ui-buttonElement-button:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled.oo-ui-buttonElement-pressed > input.oo-ui-buttonElement-button,
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled > .oo-ui-buttonElement-button:active {
color: var(--ooui-text);
}
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button,
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button:hover {
color: var(--ooui-text);
}
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button:active,
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive.oo-ui-buttonElement-pressed > .oo-ui-buttonElement-button {
color: var(--ooui-text);
border-color: var(--ooui-text);
}
.oo-ui-buttonElement-frameless.oo-ui-widget-disabled > .oo-ui-buttonElement-button {
color: var(--ooui-disabled-text);
}
.oo-ui-buttonElement-framed.oo-ui-widget-disabled > .oo-ui-buttonElement-button {
background-color: var(--ooui-disabled);
border-color: var(--ooui-disabled-border);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled > .oo-ui-buttonElement-button {
background-color: var(--ooui-normal);
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled > .oo-ui-buttonElement-button:hover {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled > .oo-ui-buttonElement-button:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-buttonElement-active > .oo-ui-buttonElement-button {
background-color: var(--ooui-progressive--hover);
color: #fff;
border-color: var(--ooui-progressive--hover);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-buttonElement-active > .oo-ui-buttonElement-button:focus {
border-color: var(--ooui-progressive--hover);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled > .oo-ui-buttonElement-button:active,
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-buttonElement-pressed > .oo-ui-buttonElement-button {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive {
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button {
color: var(--ooui-text);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button:hover {
background-color: var(--ooui-normal--hover);
border-color: var(--ooui-progressive--hover);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-destructive > .oo-ui-buttonElement-button {
color: var(--ooui-text);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-destructive > .oo-ui-buttonElement-button:hover {
background-color: var(--ooui-normal--hover);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button {
background-color: var(--ooui-progressive);
border-color: var(--ooui-progressive);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button:hover {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent), inset 0 0 0 2px #fff;
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button:active,
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive.oo-ui-buttonElement-pressed > .oo-ui-buttonElement-button,
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive.oo-ui-buttonElement-active > .oo-ui-buttonElement-button,
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive.oo-ui-popupToolGroup-active > .oo-ui-buttonElement-button {
color: #fff;
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
}
.oo-ui-pendingElement-pending {
background-image: var(--ooui-pending-background-image);
background-size: 200%;
animation: oo-ui-pendingElement-stripes 6s linear infinite;
}
@keyframes oo-ui-pendingElement-stripes {
100% {
background-position: 100%;
}
}
.oo-ui-messageDialog-content > .oo-ui-window-foot {
outline-color: var(--ooui-interface-border);
}
.oo-ui-messageDialog-message {
color: var(--ooui-text);
}
.oo-ui-messageDialog-actions-horizontal .oo-ui-actionWidget {
border-right-color: var(--ooui-interface-border);
}
.oo-ui-messageDialog-actions-vertical .oo-ui-actionWidget {
border-bottom-color: var(--ooui-interface-border);
}
.oo-ui-processDialog-content .oo-ui-window-head,
.oo-ui-processDialog-content .oo-ui-window-foot {
outline-color: var(--ooui-interface-border);
}
.oo-ui-processDialog .oo-ui-actionWidget > .oo-ui-buttonElement-button {
border-top-color: transparent;
border-bottom-color: transparent;
}
.oo-ui-processDialog .oo-ui-actionWidget > .oo-ui-buttonElement-button:hover,
.oo-ui-processDialog .oo-ui-actionWidget > .oo-ui-buttonElement-button:active {
border-top-color: transparent;
border-bottom-color: transparent;
}
.oo-ui-processDialog .oo-ui-actionWidget:not( .oo-ui-flaggedElement-progressive ):not( .oo-ui-flaggedElement-destructive ) > .oo-ui-buttonElement-button:hover,
.oo-ui-processDialog .oo-ui-actionWidget:not( .oo-ui-flaggedElement-progressive ):not( .oo-ui-flaggedElement-destructive ) > .oo-ui-buttonElement-button:active {
border-right-color: var(--ooui-interface-border);
border-left-color: transparent;
}
.oo-ui-processDialog .oo-ui-actionWidget:not( .oo-ui-flaggedElement-progressive ):not( .oo-ui-flaggedElement-destructive ) > .oo-ui-buttonElement-button:focus {
border-color: var(--ooui-accent);
}
.oo-ui-processDialog-actions-safe .oo-ui-actionWidget > .oo-ui-buttonElement-button,
.oo-ui-processDialog-actions-other .oo-ui-actionWidget > .oo-ui-buttonElement-button {
border-right-color: var(--ooui-normal-border);
border-left-color: transparent;
}
.oo-ui-processDialog-actions-safe .oo-ui-widget-enabled.oo-ui-iconElement:not( .oo-ui-labelElement ) > .oo-ui-buttonElement-button:hover {
background-color: var(--ooui-normal--hover);
border-right-color: var(--ooui-interface-border);
}
.oo-ui-windowManager-modal > .oo-ui-dialog {
background-color: var(--ooui-window-background);
}
.oo-ui-windowManager-modal > .oo-ui-dialog > .oo-ui-window-frame {
background-color: var(--ooui-interface);
}
.oo-ui-windowManager-modal.oo-ui-windowManager-floating > .oo-ui-dialog > .oo-ui-window-frame {
border-color: var(--ooui-interface-border);
}
.oo-ui-window {
color: var(--ooui-text);
}
.oo-ui-toolbar-bar {
background-color: var(--ooui-interface);
color: var(--ooui-text);
}
.oo-ui-toolbar-position-top > .oo-ui-toolbar-bar {
border-bottom-color: var(--body-mid);
}
.oo-ui-toolbar-bar .oo-ui-bookletLayout > .oo-ui-menuLayout-menu {
border-right-color: var(--body-mid);
}
.oo-ui-tool.oo-ui-widget-enabled > .oo-ui-tool-link:hover {
background-color: var(--ooui-normal--hover);
}
.oo-ui-tool.oo-ui-widget-enabled > .oo-ui-tool-link:focus {
outline: 1px solid var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-tool.oo-ui-widget-enabled > .oo-ui-tool-link:active,
.oo-ui-tool.oo-ui-widget-enabled.oo-ui-tool-active > .oo-ui-tool-link,
.oo-ui-tool.oo-ui-widget-enabled.oo-ui-popupToolGroup-active > .oo-ui-tool-link {
background-color: var(--ooui-normal--hover);
color: var(--ooui-accent);
box-shadow: none;
}
.oo-ui-tool.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive > .oo-ui-tool-link {
background-color: var(--ooui-progressive);
}
.oo-ui-tool.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive > .oo-ui-tool-link:hover {
background-color: var(--ooui-progressive--hover);
}
.oo-ui-tool.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive > .oo-ui-tool-link:focus {
box-shadow: inset 0 0 0 1px var(--ooui-accent), inset 0 0 0 2px #fff;
}
.oo-ui-tool.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive > .oo-ui-tool-link:active,
.oo-ui-tool.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive.oo-ui-tool-active > .oo-ui-tool-link {
background-color: var(--ooui-progressive--hover);
}
.oo-ui-listToolGroup-tools .oo-ui-tool.oo-ui-widget-enabled {
background-color: var(--ooui-normal);
}
.oo-ui-listToolGroup-tools .oo-ui-tool.oo-ui-widget-enabled:hover {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
}
.oo-ui-listToolGroup-tools .oo-ui-tool-active.oo-ui-widget-enabled .oo-ui-tool-link .oo-ui-tool-title {
color: var(--ooui-progressive);
}
.oo-ui-menuToolGroup {
border-left-color: var(--body-mid);
border-right-color: var(--body-mid);
}
.oo-ui-popupToolGroup-tools {
background-color: var(--ooui-interface);
border-color: var(--body-mid);
}
.oo-ui-popupToolGroup.oo-ui-widget-enabled > .oo-ui-popupToolGroup-handle:hover {
background-color: var(--ooui-normal--hover);
}
.oo-ui-popupToolGroup.oo-ui-widget-enabled > .oo-ui-popupToolGroup-handle:focus {
outline: 1px solid var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-toolbar-actions .oo-ui-popupToolGroup.oo-ui-widget-enabled > .oo-ui-popupToolGroup-handle:hover {
border-right-color: var(--ooui-normal--hover);
}
.oo-ui-popupToolGroup-tools .oo-ui-tool.oo-ui-widget-enabled .oo-ui-tool-link:focus {
box-shadow: inset 0 0 0 2px var(--ooui-accent);
}
.oo-ui-popupToolGroup-tools .oo-ui-tool-active.oo-ui-widget-enabled .oo-ui-tool-link .oo-ui-tool-title {
color: var(--ooui-progressive);
}
.oo-ui-popupToolGroup.oo-ui-popupToolGroup-active > .oo-ui-popupToolGroup-handle {
background-color: var(--ooui-normal);
color: var(--ooui-accent);
}
.oo-ui-popupToolGroup.oo-ui-popupToolGroup-active > .oo-ui-popupToolGroup-handle:hover {
background-color: var(--ooui-normal--hover);
color: var(--ooui-accent);
}
.oo-ui-bookletLayout-outlinePanel > .oo-ui-outlineControlsWidget {
border-top-color: var(--ooui-interface-border);
}
.oo-ui-bookletLayout > .oo-ui-menuLayout-menu {
border-right-color: var(--ooui-interface-border);
}
.oo-ui-fieldLayout-disabled > .oo-ui-fieldLayout-body > .oo-ui-fieldLayout-header > .oo-ui-labelElement-label {
color: var(--ooui-disabled-text);
}
.oo-ui-panelLayout-framed {
border-color: var(--sidebar);
}
.oo-ui-icon-settings {
background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' width='20' height='20' viewBox='0 0 20 20'%3E%3Ctitle%3Esettings%3C/title%3E%3Cg transform='translate(10 10)'%3E%3Cpath id='a' d='M1.5-10h-3l-1 6.5h5m0 7h-5l1 6.5h3'/%3E%3Cuse xlink:href='%23a' transform='rotate(45)'/%3E%3Cuse xlink:href='%23a' transform='rotate(90)'/%3E%3Cuse xlink:href='%23a' transform='rotate(135)'/%3E%3C/g%3E%3Cpath d='M10 2.5a7.5 7.5 0 0 0 0 15 7.5 7.5 0 0 0 0-15v4a3.5 3.5 0 0 1 0 7 3.5 3.5 0 0 1 0-7'/%3E%3C/svg%3E");
}
.oo-ui-icon-clear {
background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 20 20'%3E%3Ctitle%3Eclear%3C/title%3E%3Cpath d='M10 0a10 10 0 1 0 10 10A10 10 0 0 0 10 0zm5.66 14.24-1.41 1.41L10 11.41l-4.24 4.25-1.42-1.42L8.59 10 4.34 5.76l1.42-1.42L10 8.59l4.24-4.24 1.41 1.41L11.41 10z'/%3E%3C/svg%3E");
}
.mw-widget-dateInputWidget-handle {
background-color: var(--ooui-input);
color: var(--ooui-text);
border-color: var(--ooui-input-border);
}
.mw-widget-dateInputWidget-calendar {
background-color: var(--ooui-interface);
}
.mw-widget-dateInputWidget.oo-ui-widget-enabled .mw-widget-dateInputWidget-handle:hover {
border-color: var(--ooui-input-border--hover);
}
.mw-widget-calendarWidget {
border-color: var(--ooui-interface-border);
}
.mw-widget-calendarWidget:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.mw-widget-calendarWidget-day,
.mw-widget-calendarWidget-day-heading {
color: var(--ooui-text);
}
.mw-widget-calendarWidget-day-additional {
color: var(--ooui-text);
opacity: 0.67;
}
.mw-widget-calendarWidget-day-today {
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.mw-widget-calendarWidget-item:hover {
background-color: var(--ooui-progressive);
}
.mw-widget-calendarWidget-item-selected {
background-color: var(--ooui-progressive--hover);
}
.mw-widgets-datetime-calendarWidget {
background-color: var(--ooui-interface);
border-color: var(--ooui-interface-border);
}
.mw-widgets-datetime-calendarWidget:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent), 0 2px 2px 0 rgba(0, 0, 0, 0.25);
}
.mw-widgets-datetime-calendarWidget-grid .mw-widgets-datetime-calendarWidget-cell.mw-widgets-datetime-calendarWidget-extra .oo-ui-buttonElement-button .oo-ui-labelElement-label {
color: var(--subtle-color);
}
.mw-widgets-datetime-calendarWidget-grid .mw-widgets-datetime-calendarWidget-cell.mw-widgets-datetime-calendarWidget-selected .oo-ui-buttonElement-button {
background-color: var(--ooui-progressive--hover);
}
.mw-widgets-datetime-dateTimeInputWidget-handle {
background-color: var(--ooui-input);
color: var(--ooui-text);
border-color: var(--ooui-input-border);
}
.mw-widgets-datetime-dateTimeInputWidget.oo-ui-widget-enabled.mw-widgets-datetime-dateTimeInputWidget-handle:hover {
border-color: var(--ooui-input-border--hover);
}
.mw-widgets-datetime-dateTimeInputWidget.oo-ui-widget-enabled:hover input,
.mw-widgets-datetime-dateTimeInputWidget.oo-ui-widget-enabled:hover textarea {
border-color: var(--ooui-input-border--hover);
}
.mw-widgets-datetime-dateTimeInputWidget.oo-ui-widget-enabled .mw-widgets-datetime-dateTimeInputWidget-editField:hover {
background-color: var(--ooui-normal);
}
.ve-activated .ve-init-mw-desktopArticleTarget-originalContent #catlinks:hover {
background: var(--ooui-normal--hover);
}
.ve-ui-overlay {
font-family: inherit;
}
.oo-ui-toolbar-position-top .ve-ui-toolbarDialog-position-above {
border-top-color: var(--body-mid);
}
.ve-ce-branchNode-blockSlug,
.ve-ce-branchNode-newSlug {
outline-color: var(--body-border);
background-color: var(--ooui-interface);
}
.ve-ui-specialCharacterPage h3 {
color: var(--byline-color);
}
.ve-ui-specialCharacterPage-character {
border-color: var(--body-mid);
}
.ve-ui-specialCharacterPage-character:hover {
border-color: var(--body-dark);
}
.ve-ce-linkAnnotation.ve-ce-annotation-active {
box-shadow: 0 0 0 1px var(--body-mid);
background: none;
}
.ve-ui-desktopContext .ve-ui-linkContextItem .ve-ui-linkContextItem-label {
border-color: var(--body-border);
}
.ve-ui-mwHelpPopupTool-version-label,
.ve-ui-mwHelpPopupTool-version-link,
.ve-ui-mwHelpPopupTool-version-date {
color: var(--byline-color);
}
.ve-ce-tableCellableNode {
border-color: var(--body-mid);
}
.ve-ce-mwReferencesListNode-muted {
color: var(--byline-color);
}
.ve-ui-mwTemplatePage-description,
.ve-ui-mwParameterPage-label,
.ve-ui-mwParameterPage-description-required,
.ve-ui-mwParameterPage-description-deprecated {
color: var(--byline-color);
}
.mw-widget-titleWidget-menu .mw-widget-titleOptionWidget-description {
color: var(--byline-color);
}
.ve-ui-mwGalleryDialog-menuLayout > .oo-ui-menuLayout-menu,
.ve-ui-mwGalleryDialog-innerMenuLayout > .oo-ui-menuLayout-menu,
.ve-ui-mwGalleryDialog .ve-ui-mwGalleryDialog-image-container,
.ve-ui-targetWidget {
border-color: var(--body-border);
}
.ve-ui-targetWidget:not(.oo-ui-pendingElement-pending) {
background-color: var(--body-main);
}
.ve-ui-mwSaveDialog {
color: var(--ooui-text);
}
.ve-ui-mwSaveDialog-options {
background-color: var(--ooui-interface);
border-color: var(--body-border);
}
.ve-ui-mwSaveDialog-summary {
background-color: var(--ooui-input);
}
.ve-ui-mwSaveDialog-editSummary-count {
border-color: var(--body-border);
}
.ve-ui-mwSaveDialog-license {
color: var(--byline-color);
}
.ve-ui-mwReferenceContextItem-muted {
color: var(--byline-color);
}
.ve-ui-mwNoticesPopupTool-items > div:not(:first-child),
.ve-ui-mwHelpPopupTool-item:not(:first-child) {
border-color: var(--body-border);
}
.ve-ui-mwTransclusionOutlineControlsWidget {
background-color: var(--ooui-interface);
border-top-color: var(--body-border);
}
.ve-ui-mwTransclusionOutlineTemplateWidget-sticky {
background-color: var(--ooui-interface);
}
.ve-ui-mwTransclusionOutlineTemplateWidget .ve-ui-mwTransclusionOutlineParameterWidget.oo-ui-optionWidget-highlighted {
color: var(--ooui-text);
}
.ve-ui-mwTransclusionOutlineTemplateWidget-no-template-parameters {
color: var(--subtle-color);
}
.ve-ui-mwParameterPage-undocumentedLabel {
color: var(--subtle-color);
}
.ve-ui-mwTwoPaneTransclusionDialogLayout > .oo-ui-menuLayout-menu {
border-right: var(--body-border);
}
.ve-ui-mwParameterPage-doc-required,
.ve-ui-mwParameterPage-doc-deprecated,
.ve-ui-mwParameterPage-inlineDescription .ve-ui-mwParameterPage-doc-example {
color: var(--byline-color);
}
.ve-ui-expandableContent-toggle {
background-color: var(--ooui-interface);
}
.ve-ui-expandableContent-fade {
background: linear-gradient(to right, rgba(255, 255, 255, 0) 0, var(--ooui-interface) 90%);
}
.ve-ui-commandHelpDialog-shortcut > kbd,
.ve-ui-commandHelpDialog-sequence > kbd {
background-color: var(--keypress-background);
color: var(--keypress-color);
border-color: var(--keypress-border);
box-shadow: none;
text-shadow: none;
}
.ve-init-mw-desktopArticleTarget-toolbarPlaceholder-floating .ve-init-mw-desktopArticleTarget-toolbarPlaceholder-bar {
background: var(--ooui-interface);
}
.ve-init-mw-desktopArticleTarget-toolbarPlaceholder-bar {
border-bottom-color: var(--body-mid);
}
figure[typeof~='mw:File/Thumb'],
figure[typeof~='mw:File/Frame'],
figure[typeof~='mw:Image/Thumb'],
figure[typeof~='mw:Video/Thumb'],
figure[typeof~='mw:Image/Frame'],
figure[typeof~='mw:Video/Frame'] {
border: none;
background-color: var(--thumb-bg);
}
figure[typeof~='mw:File/Thumb'] > a:first-child > *:first-child:not( .mw-broken-media ),
figure[typeof~='mw:File/Frame'] > a:first-child > *:first-child:not( .mw-broken-media ),
figure[typeof~='mw:Image/Thumb'] > a:first-child > *:first-child:not( .mw-broken-media ),
figure[typeof~='mw:Video/Thumb'] > a:first-child > *:first-child:not( .mw-broken-media ),
figure[typeof~='mw:Image/Frame'] > a:first-child > *:first-child:not( .mw-broken-media ),
figure[typeof~='mw:Video/Frame'] > a:first-child > *:first-child:not( .mw-broken-media ) {
border: none;
background: var(--thumb-bg);
}
figure[typeof~='mw:File/Thumb'] > figcaption,
figure[typeof~='mw:File/Frame'] > figcaption,
figure[typeof~='mw:Image/Thumb'] > figcaption,
figure[typeof~='mw:Video/Thumb'] > figcaption,
figure[typeof~='mw:Image/Frame'] > figcaption,
figure[typeof~='mw:Video/Frame'] > figcaption {
border: none;
background-color: var(--thumb-caption-bg);
padding: 4px 6px;
}
:root {
--keypress-background: #eee;
--keypress-border: #ccc;
--keypress-color: #333;
}
.archivelist {
background-color: var(--body-light);
border: solid 1px var(--body-border);
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
float: right;
margin: 5px;
padding: 5px;
text-align: center;
width: 120px;
}
.shortcut {
border: 1px solid var(--body-border);
background: var(--body-light);
float: right;
font-size: 0.8em;
margin: 0.5em 0em 0.5em 1em;
padding: 0.5em;
text-align: center;
}
.hatnote,
.seealso {
font-style: italic;
}
.hatnote i,
.seealso i {
font-style: normal;
}
div.hatnote,
div.seealso {
margin: 0.5em 1.6em;
}
div.hatnote + div.hatnote,
div.hatnote + div.seealso,
div.seealso + div.hatnote,
div.seealso + div.seealso {
margin-top: -0.5em;
}
.keypress {
background: var(--keypress-background);
color: var(--keypress-color);
font-family: inherit;
border: 1px solid var(--keypress-border);
border-radius: 2px;
font-size: 0.9em;
margin: 0 0.1em;
padding: 0.1em 0.4em;
white-space: nowrap;
}
:root {
--documentation-background: #f9fafa;
--documentation-link-color: #e4eaee;
--documentation-headers-color: #fff;
--documentation-header-background: #949eaa;
--documentation-subheader-background: #808c9a;
--documentation-border: #e4eaee;
}
.documentation {
background: var(--documentation-background);
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
margin: 1em 0;
}
.documentation pre,
.documentation code {
background-color: var(--documentation-background);
border-color: var(--documentation-border);
}
.documentation h2,
.documentation hr {
border-color: var(--documentation-border);
}
.documentation-header {
color: var(--documentation-headers-color);
background: var(--documentation-header-background);
font-weight: bold;
padding: 1em 1.5em;
}
.documentation-title {
font-size: 1.25em;
}
.documentation-subheader {
color: var(--documentation-headers-color);
background: var(--documentation-subheader-background);
padding: 0.5em 1.5em;
}
.documentation-subheader a,
.documentation-subheader a:visited,
.documentation-subheader a:active {
color: var(--documentation-link-color);
}
.documentation-documentation,
.documentation-links {
font-size: 0.85em;
}
.documentation-content {
padding: 1em 1.5em;
}
.mw-templatedata-doc-params dl:not(:empty) {
column-count: 3;
border-top: 1px solid var(--body-border);
margin-bottom: 0.5em;
}
.mw-templatedata-doc-params dt::after {
content: ":";
}
.mw-templatedata-doc-params dd,
.mw-templatedata-doc-params dt {
margin: 0.1em 2em;
min-width: auto;
}
.mw-templatedata-doc-muted {
color: var(--subtle-color);
font-style: italic;
}
:root {
--infobox-text-color: var(--text-color);
}
ol.references,
.reflist {
font-size: 90%;
}
.reflist {
list-style-type: decimal;
}
.reflist .references {
font-size: 100%;
list-style-type: inherit;
}
.reflist-lower-alpha {
list-style-type: lower-alpha;
}
ol.references li:target,
sup.reference:target {
background-color: var(--body-light);
}
.hideQuotes .refhide {
display: none;
}
:root {
--messagebox-obsolete-background: #cfcfcf;
--messagebox-obsolete-border: #464646;
--messagebox-obsolete-color: var(--text-color);
--messagebox-obsolete-link-color: #6c6c6c;
--messagebox-info-background: #ebebeb;
--messagebox-info-border: #898989;
--messagebox-info-color: var(--text-color);
--messagebox-info-link-color: #6c6c6c;
--messagebox-action-background: #c7e8fa;
--messagebox-action-border: #0b5884;
--messagebox-action-color: var(--text-color);
--messagebox-action-link-color: #03436b;
--messagebox-warn-background: #dfc0ba;
--messagebox-warn-border: #861c10;
--messagebox-warn-color: var(--text-color);
--messagebox-warn-link-color: #8e221a;
--messagebox-safe-background: #d8f0d3;
--messagebox-safe-border: #1b8408;
--messagebox-safe-color: var(--text-color);
--messagebox-safe-link-color: #1b8408;
--messagebox-disambig-background: #ebebeb;
--messagebox-disambig-border: #898989;
--messagebox-disambig-color: var(--text-color);
--messagebox-disambig-link-color: #6c6c6c;
--messagebox-discord-background: #5865f2;
--messagebox-discord-border: #4c57d0;
--messagebox-discord-link-color: #d2e5fc;
}
.mw-message-box,
.mw-message-box-error,
.mw-message-box-warning,
.mw-message-box-success,
.usermessage {
color: var(--text-color);
}
.messagebox {
width: 65%;
margin: 0.5em auto;
border-left: 15px solid;
border-color: var(--body-dark);
background-color: var(--body-light);
box-sizing: border-box;
}
.messagebox.obsolete {
background-color: var(--messagebox-obsolete-background);
border-color: var(--messagebox-obsolete-border);
color: var(--messagebox-obsolete-color);
}
.messagebox.obsolete a,
.messagebox.obsolete a:visited,
.messagebox.obsolete a:active {
color: var(--messagebox-obsolete-link-color);
}
.messagebox.info {
background-color: var(--messagebox-info-background);
border-color: var(--messagebox-info-border);
color: var(--messagebox-info-color);
}
.messagebox.info a,
.messagebox.info a:visited,
.messagebox.info a:active {
color: var(--messagebox-info-link-color);
}
.messagebox.action {
background-color: var(--messagebox-action-background);
border-color: var(--messagebox-action-border);
color: var(--messagebox-action-color);
}
.messagebox.action a,
.messagebox.action a:visited,
.messagebox.action a:active {
color: var(--messagebox-action-link-color);
}
.messagebox.warn {
background-color: var(--messagebox-warn-background);
border-color: var(--messagebox-warn-border);
color: var(--messagebox-warn-color);
}
.messagebox.warn a,
.messagebox.warn a:visited,
.messagebox.warn a:active {
color: var(--messagebox-warn-link-color);
}
.messagebox.safe {
background-color: var(--messagebox-safe-background);
border-color: var(--messagebox-safe-border);
color: var(--messagebox-safe-color);
}
.messagebox.safe a,
.messagebox.safe a:visited,
.messagebox.safe a:active {
color: var(--messagebox-safe-link-color);
}
.messagebox.disambig {
background-color: var(--messagebox-disambig-background);
border-color: var(--messagebox-disambig-border);
color: var(--messagebox-disambig-color);
}
.messagebox.disambig a,
.messagebox.disambig a:visited,
.messagebox.disambig a:active {
color: var(--messagebox-disambig-link-color);
}
.messagebox.discord {
background-color: var(--messagebox-discord-background);
border-color: var(--messagebox-discord-border);
color: #fff;
}
.messagebox.discord a,
.messagebox.discord a:visited,
.messagebox.discord a:active {
color: var(--messagebox-discord-link-color);
}
.messagebox.discord a.external,
.messagebox.discord a:visited.external,
.messagebox.discord a:active.external {
font-style: italic;
}
.messagebox.stub {
width: 40%;
}
.messagebox.hasdialogue {
padding: 0 10px;
width: auto;
}
:root {
--byline-arrow-filter: invert(29%) sepia(0%) saturate(376%) hue-rotate(172deg) brightness(87%) contrast(80%);
--tile-border-color: #cabe9b;
--tile-background-color: #f9f3eb;
--tile-link-button-color: #f5e9db;
--tile-link-button-highlight-color: #dfccb0;
--tile-dark-color: #fff;
--tile-dark-bg: #5d6773;
--tile-dark-link-color: #ccc;
--tile-dark-byline-color: rgba(255, 255, 255, 0.7);
--tile-dark-header-color: #fff;
}
.tile {
background: var(--tile-background-color);
border: 1px solid var(--tile-border-color);
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
padding: 1.5em 2em 1em;
max-width: 40em;
}
.tile h2 {
font-size: 1.4em;
font-weight: bold;
border: none;
margin: 0 0 0.4em;
}
.tile .byline + h2 {
margin-top: -0.5em;
}
.tile.dark {
color: var(--tile-dark-color);
background: var(--tile-dark-bg);
border: none;
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.3);
}
.tile.dark h2 {
color: var(--tile-dark-header-color);
}
.tile.dark a {
color: var(--tile-dark-link-color);
}
.tile.dark .byline {
color: var(--tile-dark-byline-color);
}
.byline {
font-size: 0.9em;
color: var(--byline-color);
}
.byline a {
color: var(--byline-color);
}
.tile-row {
display: flex;
flex-flow: row wrap;
margin-bottom: 1em;
}
.tile-halves {
display: flex;
flex-flow: row wrap;
border: 1px solid var(--tile-border-color);
background: var(--tile-background-color);
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
}
.tile-halves h2 {
font-size: 1.4em;
font-weight: bold;
border: none;
margin: 0 0 0.4em;
}
.tile-halves .byline + h2 {
margin-top: -0.5em;
}
.tile-top {
width: 100%;
padding: 1.3rem 1.5rem 0.6rem;
}
.tile-top.tile-image {
display: flex;
align-items: center;
background-color: var(--byline-color);
overflow: hidden;
padding: 0;
height: 13vw;
max-height: 12em;
transition: 0.4s ease-out;
}
.tile-halves:hover .tile-top.tile-image img {
transform: scale(1.1);
transition: 0.5s ease-out;
}
.tile-top.tile-image a {
width: 100%;
}
.tile-top.tile-image img {
width: 100%;
object-fit: cover;
max-height: 200px;
transition: 0.4s ease-out;
}
.tile-bottom {
background: var(--tile-background-color);
border-top: 1px solid var(--tile-border-color);
width: 100%;
padding: 1rem 1.5rem 0.6rem;
}
.tile-bottom.link-button {
align-self: flex-end;
padding: 0;
}
.tile-bottom.link-button a {
display: block;
text-align: center;
padding: 0.75em 1.5em 0.8em;
text-decoration: none;
}
.tile-bottom.read-more {
background: var(--tile-link-button-color);
transition: 0.3s ease-out;
}
.tile-bottom.read-more a {
color: var(--byline-color);
font-weight: bold;
text-align: right;
}
.tile-bottom.read-more:hover {
background: var(--tile-link-button-highlight-color);
}
.tile-bottom.read-more:hover .arrow {
transform: translateX(50%);
}
.tile-bottom.read-more .arrow {
filter: var(--byline-arrow-filter);
margin-left: 0.4em;
transition: 0.3s ease-out;
}
body.page-Main_Page.action-view .catlinks,
body.page-Main_Page.action-view #contentSub,
body.page-Main_Page.action-view #firstHeading,
body.page-Main_Page.action-view #siteNotice {
display: none;
}
body.page-Main_Page .mw-parser-output {
max-width: 75em;
margin: 0 auto;
}
body.page-Main_Page.action-view .catlinks,
body.page-Main_Page.action-view #contentSub,
body.page-Main_Page.action-view #siteNotice {
display: none;
}
.mainpage-header {
display: flex;
margin: 2.6em 1.75em 1.5em;
}
.mainpage-header .header-intro {
flex: 2;
}
.mainpage-header .header-intro h1 {
font-size: 2.5em;
font-weight: bold;
border: none;
margin: 0 0 0.15em;
}
.mainpage-header .header-intro p {
font-size: 1.1em;
line-height: 1.7em;
}
.mainpage-header .header-stats {
flex: 1;
display: flex;
justify-content: center;
align-items: center;
margin-top: -1em;
}
.mainpage-body {
display: grid;
grid-template-areas: "event event event" "update update update" "content content content" "left left right";
gap: 0.9rem;
grid-template-columns: repeat(3, 1fr);
}
.mainpage-body h2 a {
color: var(--text-color);
}
.mainpage-body .tile {
padding-left: 1.75em;
padding-right: 1.75em;
max-width: 100%;
}
.mainpage-body .tile-row {
width: 100%;
margin-bottom: 0;
}
.mainpage-body .tile-row {
display: grid;
gap: 0.9rem;
}
.mainpage-contents.tile-row {
display: flex;
}
.mainpage-contents.tile-row .tile-top {
height: 6.5rem;
}
.mainpage-left {
grid-area: left;
flex: 2;
display: flex;
flex-flow: column wrap;
}
.mainpage-left > * {
margin: 0 0 0.9rem;
}
.mainpage-right {
grid-area: right;
flex: 1;
display: flex;
flex-flow: column wrap;
}
.mainpage-right > * {
margin: 0 0 0.9rem;
}
.arrow {
background: url('filepath://White-chevron.svg') no-repeat;
display: inline-block;
height: 0.7rem;
width: 0.45rem;
vertical-align: middle;
}
.arrow.dark {
filter: invert(80%);
}
.mainpage-contents {
grid-area: content;
grid-template-columns: repeat(6, 1fr);
}
.mainpage-contents .tile-halves {
flex: 1;
}
.mainpage-contents .tile-top {
height: 4.5rem;
position: relative;
}
.mainpage-contents h2 {
margin: 0;
padding: 0;
}
.mainpage-contents .tile-bottom.link-button a {
padding: 0.75em 0.2em;
}
.popular-pages ul {
display: grid;
grid-template-columns: repeat(3, 1fr);
grid-gap: 0.6em;
margin: 1em 0 0.7em 0;
}
.mp-popular-page-light {
display: flex;
align-items: center;
background-color: var(--button-background);
transition: 100ms;
}
.mp-popular-page-light a {
flex: 1;
display: block;
color: #fff;
font-weight: bold;
text-align: center;
text-decoration: none;
padding: 0.7em 1em;
}
.mp-popular-page-light:hover {
filter: brightness(115%);
transition: 100ms;
}
.mainpage-social {
border: none;
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.3);
}
.mainpage-social .tile-top {
display: flex;
align-items: center;
padding: 1em 1.5em;
}
.mainpage-social .tile-top a {
flex: 1;
position: relative;
text-decoration: none;
}
.mainpage-social .tile-top a:hover .arrow {
transform: translateX(50%);
}
.mainpage-social .tile-bottom {
border: none;
padding: 1em 1.75em;
}
.mainpage-social .tile-bottom p {
color: #fff;
font-weight: bold;
font-size: 0.9em;
text-align: center;
text-transform: uppercase;
letter-spacing: 0.03em;
margin: 0;
}
.mainpage-social .social-icon {
margin-right: 0.75em;
text-align: center;
width: 60px;
}
.mainpage-social .social-header {
color: #fff;
font-weight: bold;
font-size: 1.15em;
margin: 0.5em 0 -0.15em;
}
.mainpage-social .server-tagline {
color: rgba(255, 255, 255, 0.9);
margin-bottom: 0.5em;
}
.mainpage-social .arrow {
position: absolute;
top: calc(50% - .5em);
right: 0;
height: 1em;
width: 0.7em;
background-size: 0.7em 1em;
transition: 0.3s ease-out;
}
.mainpage-social.mainpage-discord .tile-top {
background: #5865f2;
}
.mainpage-social.mainpage-discord .tile-bottom {
background: #525ee0;
}
.mainpage-social.mainpage-twitter .tile-top {
background: #15202b;
}
.mainpage-social.mainpage-twitter .tile-bottom {
background: #121c26;
}
.mainpage-editing {
border: none;
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.3);
}
.mainpage-editing .tile-top {
background: #438ab5;
}
.mainpage-editing .tile-bottom {
background: #3980ab;
border: none;
padding: 0.8rem 1.5rem 0.4rem;
}
.mainpage-editing h2,
.mainpage-editing a {
color: #fff;
}
.mainpage-editing p {
color: rgba(255, 255, 255, 0.9);
}
.mainpage-editing ul {
list-style-image: url('filepath://Transparent-chevron.svg');
}
@media only screen and (max-width: 1200px) {
.mainpage-contents {
grid-template-columns: repeat(3, 1fr);
}
}
@media only screen and (max-width: 1000px) {
.mainpage-body {
grid-template-areas: "event event event" "update update update" "content content content" "left left left" "right right right";
}
.mainpage-recent-updates {
grid-template-columns: repeat(2, 1fr);
}
.mainpage-recent-updates .tile-halves:last-child {
display: none;
}
.mainpage-recent-updates .tile-halves:hover .tile-top img {
transform: scale(1.04);
}
.mainpage-recent-updates .tile-top {
height: 18vw;
min-height: 9em;
}
.mainpage-header .header-stats {
display: none;
}
.mainpage-left > *:last-child,
.mainpage-right > *:last-child {
margin-bottom: 0;
}
.popular-pages ul {
grid-template-columns: repeat(2, 1fr);
}
}
@media only screen and (max-width: 720px) {
.mainpage-recent-updates {
grid-template-columns: none;
}
.mainpage-recent-updates .tile-halves:last-child {
display: flex;
}
.mainpage-contents {
grid-template-columns: repeat(2, 1fr);
}
}
.mw-prefs-buttons {
background-color: var(--body-main);
border-top-color: var(--body-border);
box-shadow: none;
}
.mw-prefs-tabs-wrapper.oo-ui-panelLayout-framed,
.mw-prefs-tabs > .oo-ui-menuLayout-content > .oo-ui-indexLayout-stackLayout > .oo-ui-tabPanelLayout {
border-color: var(--body-border);
}
.mw-htmlform-ooui .mw-htmlform-matrix tbody tr:nth-child(even) td {
background-color: var(--body-light);
}
.mw-htmlform-ooui .mw-htmlform-matrix tbody tr:hover td {
background-color: var(--body-mid);
}
:root {
--rc-positive-color: #407813;
--rc-negative-color: #b41e0f;
}
.mw-plusminus-pos {
color: var(--rc-positive-color);
}
.mw-plusminus-neg {
color: var(--rc-negative-color);
}
.client-js .mw-recentchanges-toplinks:not(.mw-recentchanges-toplinks-collapsed) {
border-color: var(--body-border);
background-color: var(--body-light);
border-radius: 2px;
}
.mw-rcfilters-ui-filterTagMultiselectWidget-wrapper-content-title {
color: var(--text-color);
}
.mw-rcfilters-ui-filterTagMultiselectWidget-emptyFilters {
color: var(--byline-color);
}
.mw-rcfilters-ui-filterTagMultiselectWidget.oo-ui-widget-enabled .oo-ui-tagMultiselectWidget-handle {
background-color: var(--ooui-interface);
border-color: var(--ooui-interface-border);
}
.mw-rcfilters-ui-filterTagMultiselectWidget-views-select-widget.oo-ui-widget {
border-color: var(--ooui-interface-border);
}
.mw-rcfilters-collapsed .mw-rcfilters-ui-filterTagMultiselectWidget {
border-bottom-color: var(--ooui-interface-border);
}
.mw-rcfilters-ui-menuSelectWidget-footer {
background-color: var(--ooui-interface);
border-color: var(--ooui-interface-border);
}
.mw-rcfilters-ui-viewSwitchWidget label.oo-ui-labelWidget {
color: var(--byline-color);
}
.mw-rcfilters-ui-tagItemWidget-popup-content {
color: var(--ooui-text);
}
.mw-changeslist-legend,
.mw-rcfilters-ui-changesListWrapperWidget .mw-changeslist-legend {
background-color: var(--body-light);
border-color: var(--body-dark);
}
.mw-rcfilters-ui-changesListWrapperWidget-previousChangesIndicator {
border-color: var(--sidebar);
}
.client-js .mw-changeslist ul,
.client-js .mw-changeslist table.mw-enhanced-rc {
margin-left: 0;
}
.mw-rcfilters-ui-watchlistTopSectionWidget-separator {
border-color: var(--sidebar);
}
.mw-rcfilters-ui-itemMenuOptionWidget-header {
border-bottom-color: var(--ooui-interface);
background-color: var(--ooui-interface-border);
}
.mw-rcfilters-ui-itemMenuOptionWidget:not(:last-child):not(.mw-rcfilters-ui-itemMenuOptionWidget-identifier-talk) {
border-bottom-color: var(--ooui-normal-border);
}
.mw-rcfilters-ui-itemMenuOptionWidget-label-title,
.mw-rcfilters-ui-itemMenuOptionWidget-label-desc {
color: var(--text-color);
}
.mw-rcfilters-ui-filterMenuOptionWidget.oo-ui-flaggedElement-muted:not(.oo-ui-optionWidget-selected) {
background-color: var(--body-main);
}
.mw-rcfilters-ui-filterMenuOptionWidget.oo-ui-flaggedElement-muted .mw-rcfilters-ui-itemMenuOptionWidget-label-title,
.mw-rcfilters-ui-filterMenuOptionWidget.oo-ui-flaggedElement-muted .mw-rcfilters-ui-itemMenuOptionWidget-label-desc {
color: var(--subtle-color);
}
.mw-rcfilters-ui-filterMenuSectionOptionWidget {
background-color: var(--body-mid);
}
.mw-rcfilters-ui-filterMenuSectionOptionWidget-header-title.oo-ui-labelElement-label {
color: var(--ooui-text);
}
.mw-rcfilters-ui-filterMenuHeaderWidget-title {
color: var(--ooui-text);
}
.mw-rcfilters-ui-filterMenuHeaderWidget-header {
border-bottom-color: var(--ooui-interface-border);
background-color: var(--ooui-interface);
}
.mw-rcfilters-ui-itemMenuOptionWidget-view-namespaces {
border-top-color: var(--ooui-interface-border);
}
.mw-rcfilters-ui-datePopupWidget {
border-color: var(--ooui-interface-border);
}
.mw-rcfilters-ui-datePopupWidget .mw-rcfilters-ui-valuePickerWidget-title {
color: var(--byline-color);
}
.mw-rcfilters-ui-savedLinksListItemWidget-label {
color: var(--ooui-accent);
}
.client-js .mw-changeslist.mw-rcfilters-ui-changesListWrapperWidget-highlighted ul,
.client-js .mw-changeslist.mw-rcfilters-ui-changesListWrapperWidget-highlighted table.mw-enhanced-rc {
margin-left: 1.5em;
}
.page-Special_CreateAccount .mw-ui-container,
.page-Special_UserLogin .mw-ui-container {
max-width: 64rem;
margin: 0 auto;
}
.mw-number-text {
color: var(--byline-color);
}
.mw-body-content .mw-number-text h3 {
color: var(--text-color);
}
#mw-indicator-mw-helplink a {
background: none;
padding: 0;
display: flex;
align-items: center;
}
#mw-indicator-mw-helplink a::before {
content: '';
margin-right: 5px;
-webkit-mask: url("/resources/src/mediawiki.helplink/images/helpNotice.svg?46d34") no-repeat 50% 50% / contain;
mask: url("/resources/src/mediawiki.helplink/images/helpNotice.svg?46d34") no-repeat 50% 50% / contain;
background: var(--text-color);
height: 20px;
width: 20px;
}
.results-info {
color: inherit;
}
.mw-search-profile-tabs {
background-color: var(--body-mid);
border-color: transparent;
}
.search-types .current a {
color: inherit;
}
#mw-searchoptions {
background-color: var(--body-mid);
border-color: transparent;
}
#mw-searchoptions .divider {
border-color: var(--body-border);
}
#mw-searchoptions h4 {
font-family: inherit;
}
#mw-searchoptions .oo-ui-labelElement:nth-of-type(odd) {
font-weight: bold;
}
.searchresult {
line-height: 1.5;
}
.searchalttitle,
#mw-search-interwiki li {
font-size: 90%;
}
.mw-search-result-data {
color: var(--byline-color);
}
.page-Special_ListFiles a.image img {
width: inherit;
height: inherit;
}
.page-Special_ListFiles .TablePager_col_thumb {
text-align: center;
}
#editcount table[border="1"] {
background-color: var(--body-main) !important;
border-color: var(--wikitable-border) !important;
margin-top: 0.5em;
}
#editcount table[border="1"] th,
#editcount table[border="1"] td {
padding: 0.2em 0.4em;
}
#editcount table[border="1"] th {
background-color: var(--wikitable-header-bg);
border: 1px solid var(--wikitable-border);
}
#editcount table[border="1"] td {
border: 1px solid var(--wikitable-border);
}
#editcount table[border="1"] tr:nth-child(odd) {
background-color: var(--body-light);
}
.mw-echo-ui-notificationBadgeButtonPopupWidget-popup > .oo-ui-popupWidget-popup .mw-echo-ui-placeholderItemWidget {
background-color: inherit;
}
table.mw-interwikitable.body td.mw-interwikitable-local-yes {
background-color: var(--table-yes-background);
color: var(--table-yes-color);
}
.mw-protectedpages-unknown {
color: var(--byline-color);
}
.watchlistredir,
.allpagesredirect {
font-style: italic;
}
.allpagesredirect:after {
color: var(--byline-color);
content: " (redirect)";
}
.mw-apisandbox-toolbar {
background: var(--body-main);
}
.oo-ui-menuOptionWidget .mw-apisandbox-flag {
color: var(--byline-color);
}
tr.mw-abusefilter-list-disabled,
tr.mw-abusefilter-list-disabled td {
color: var(--byline-color);
}
table.mw-abuselog-details {
background: var(--wikitable-bg);
border-color: var(--wikitable-border);
}
table.mw-abuselog-details th {
background: var(--wikitable-header-bg);
}
table.mw-abuselog-details th,
table.mw-abuselog-details td {
border-color: var(--wikitable-border);
}
.mw-abusefilter-log-hidden-entry {
color: var(--subtle-color);
}
body td.mw-abusefilter-history-changed {
background: var(--table-no-background);
}
div.mw-abusefilter-editor,
#mw-abusefilter-warn-preview,
#mw-abusefilter-disallow-preview {
border-color: var(--ooui-input-border);
}
.mw-destfile-warning {
border-color: var(--warningbox-border);
color: var(--text-color);
background-color: var(--warningbox-bg);
}
span.fileinput-button {
background-color: var(--ooui-normal);
border-color: var(--ooui-normal-border);
color: var(--ooui-text);
}
ul.fileupload-results li.ful-success {
background-color: var(--successbox-bg);
}
ul.fileupload-results li.ful-success a {
color: var(--link-color);
}
ul.fileupload-results li.ful-error {
background-color: var(--errorbox-bg);
}
#t-print,
#t-permalink {
display: none;
}
#filetoc {
border-radius: 2px;
background: var(--body-mid);
border-color: transparent;
margin: 0.5em auto;
text-align: center;
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
}
li.gallerybox div.thumb {
border: none;
background-color: var(--thumb-bg);
}
.smwfact {
display: none;
}
.list-header {
background-color: var(--body-mid);
color: inherit;
}
.editOptions {
color: var(--text-color);
background-color: var(--sourceeditor-background-secondary);
border-color: var(--sourceeditor-border);
}
.mw-json th,
.mw-json td {
border-color: var(--wikitable-border);
}
.mw-json td {
background: var(--wikitable-bg);
}
.mw-json th {
background: var(--wikitable-header-bg);
}
84a2a0f753def74700fa4c4e42753b4699df7d1f
1114
1111
2024-03-24T00:35:25Z
Merds
25
Updating CSS from [[MediaWiki:Common.less]]
css
text/css
/* <pre> */
:root {
--body-main: #feffff;
--body-light: #f2f2f2;
--body-mid: #d0bd97;
--body-dark: #e3e3e3;
--body-border: #000;
--body-background-color: #173a4d;
--button-background: #605443;
--button-color: #fff;
--button-border: #3c352a;
--button-dark: #18140c;
--button-light: #3a301d;
--sidebar: #cfc08d;
--background-text-color: #e2dbc8;
--background-link-color: #e2bd8a;
--search-box: #efeee6;
--link-color: #936039;
--redlink-color: #ba0000;
--text-color: #2F2828;
--byline-color: #ccc;
--subtle-color: #777;
--admin-blue: #332e75;
--bearcat-green: #13592e;
--awb-purple: #933b96;
--rsw-blue: #438ab6;
--osrsw-brown: #605443;
--thumb-bg: var(--body-light);
--thumb-caption-bg: var(--body-mid);
--sourceeditor-input-background: #fff;
--sourceeditor-background: var(--body-light);
--sourceeditor-background-secondary: var(--body-light);
--sourceeditor-border: var(--body-mid);
--codemirror-gutter-background: var(--body-mid);
}
@font-face {
font-family: 'Lora';
font-weight: 400 700;
font-style: normal;
font-display: swap;
src: url('filepath://Lora.woff2') format('woff2');
}
@font-face {
font-family: 'Lora';
font-weight: 400 700;
font-style: italic;
font-display: swap;
src: url('filepath://Lora-Italic.woff2') format('woff2');
}
:root {
--base-text-color: #36414f;
--base-heading-color: #444e5a;
--base-heading-border: #e4eaee;
--mw-code-background-color: #ddd4bb;
--body-background-image: url('filepath://Wiki_background.jpg');
}
#mw-page-base {
background: none;
}
.mw-body {
background-color: var(--body-main);
color: var(--text-color);
border-color: transparent;
box-shadow: 0 0 7px rgba(0, 0, 0, 0.15);
margin-top: 0;
}
h1,
h2,
h3,
h4,
h5,
h6 {
color: var(--text-color);
}
h1,
h2 {
border-color: var(--sidebar);
}
.mw-body h1,
.mw-body-content h1,
.mw-body-content h2,
.mw-body-content h3,
.mw-body-content h4,
.mw-body-content h5,
.mw-body-content h6 {
font-family: 'Lora', 'Palatino', 'Georgia', serif;
}
.mw-parser-output h2:first-of-type {
clear: left;
}
.mw-footer {
color: var(--background-text-color);
}
.mw-footer li {
color: var(--background-text-color);
}
.mw-footer a,
.mw-footer a:active,
.mw-footer a:visited {
color: var(--background-link-color);
}
::placeholder {
color: var(--subtle-color);
}
a {
color: var(--link-color);
}
a:visited,
a:active {
color: var(--link-color);
}
a.new {
color: var(--redlink-color);
}
a.new:visited {
color: var(--redlink-color);
}
.mw-parser-output a.extiw,
.mw-parser-output a.external {
color: var(--link-color);
}
.mw-parser-output a.extiw:visited,
.mw-parser-output a.external:visited,
.mw-parser-output a.extiw:active,
.mw-parser-output a.external:active {
color: var(--link-color);
}
.jsPurgeLink a.external {
color: var(--link-color);
}
:root {
--errorbox-bg: #feecea;
--errorbox-border: #ee4231;
--warningbox-bg: #fef9de;
--warningbox-border: #f9d000;
--successbox-bg: #ecf8e3;
--successbox-border: #6bc71f;
}
.mw-message-box-error,
.errorbox,
.mw-message-box-warning,
.warningbox,
.mw-message-box-success,
.successbox,
.usermessage {
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
}
.mw-message-box-error,
.errorbox {
background-color: var(--errorbox-bg);
border-color: var(--errorbox-border);
}
.mw-message-box-warning,
.warningbox,
.usermessage {
background-color: var(--warningbox-bg);
border-color: var(--warningbox-border);
}
.mw-message-box-success,
.successbox {
background-color: var(--successbox-bg);
border-color: var(--successbox-border);
}
.catlinks {
background: var(--body-light);
border: 1px solid var(--body-dark);
padding: 8px 15px;
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
}
.catlinks li {
border-color: var(--body-mid);
}
.filehistory a img,
#file img {
background: url("data:image/svg+xml,%3C%3Fxml version='1.0' encoding='UTF-8'%3F%3E%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16'%3E%3Cpath d='M0 0h8v16h8V8H0z' opacity='.13'/%3E%3C/svg%3E") repeat;
}
#file img:hover {
background: none;
}
.mw-highlight {
background: none;
}
.mw-highlight .linenos {
background-color: var(--mw-code-background-color);
color: var(--byline-color);
}
.mw-highlight a:hover .linenos,
.mw-highlight .hll a .linenos {
color: var(--text-color);
}
.mw-content-ltr.mw-highlight-lines pre,
.mw-content-ltr.content .mw-highlight-lines pre {
box-shadow: inset 2.75em 0 0 var(--mw-code-background-color);
}
#pagehistory ul {
list-style: none;
margin: 0;
}
#pagehistory li {
border: 1px solid transparent;
padding: 1px 10px;
margin: 2px 0;
}
#pagehistory li.selected {
background-color: var(--body-light);
color: inherit;
border: 1px dashed var(--body-border);
outline: none;
}
#mw-history-compare > div:first-of-type {
position: -webkit-sticky;
position: sticky;
top: 0;
background-color: var(--body-main);
border-bottom: 1px solid var(--body-dark);
padding: 0.25em 0;
}
.wgl-stickyheader #mw-history-compare > div:first-of-type {
top: 2.5rem;
}
.autocomment,
.autocomment a,
.autocomment a:visited {
color: var(--link-color);
}
li span.deleted,
span.history-deleted {
color: var(--byline-color);
}
.mw-usertoollinks-contribs-no-edits,
.mw-usertoollinks-contribs-no-edits:visited {
color: var(--redlink-color);
}
.CategoryTreeToggle {
color: var(--link-color);
}
body.wgl-stickyheader.action-view .mw-headline:target::before {
display: block;
content: '';
margin-top: -3rem;
height: 3rem;
visibility: hidden;
pointer-events: none;
}
.mw-mmv-post-image {
color: var(--text-color);
background-color: var(--body-main);
}
.mw-mmv-image-metadata {
border-top-color: var(--body-mid);
background-color: var(--body-light);
}
.mw-mmv-dialog,
.mw-mmv-dialog .mw-mmv-dialog-down-arrow,
.mw-mmv-options-dialog .mw-mmv-dialog-down-arrow {
background-color: var(--body-light);
box-shadow: none;
}
.mw-mmv-options-enable-alert {
background-color: var(--body-light);
color: var(--text-color);
}
.mw-mmv-options-dialog-header,
.mw-mmv-options-text-header,
.mw-mmv-options-text-body,
.mw-mmv-options-enable-alert,
.mw-mmv-options-dialog .mw-mmv-disable-confirmation .mw-mmv-options-dialog-header,
.mw-mmv-options-dialog .mw-mmv-disable-confirmation .mw-mmv-options-text-header {
color: var(--text-color);
}
.mw-revslider-container {
border-color: var(--sidebar);
}
.mw-revslider-slider-wrapper {
border-top-color: var(--sidebar);
}
.mw-ui-button {
background-color: var(--ooui-normal);
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
}
.mw-ui-button:not(:disabled):hover,
.mw-ui-button:not(:disabled):active {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
}
.mw-ui-button:not(:disabled):focus {
color: var(--ooui-text);
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent), inset 0 0 0 2px #fff;
}
.mw-ui-button:not(:disabled):visited {
color: var(--ooui-text);
}
.mw-ui-button.mw-ui-progressive:not(:disabled) {
background-color: var(--ooui-progressive);
color: #fff;
border-color: var(--ooui-progressive);
}
.mw-ui-button.mw-ui-progressive:not(:disabled):hover {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
}
.mw-ui-button.mw-ui-progressive:not(:disabled):focus {
box-shadow: inset 0 0 0 1px var(--ooui-accent), inset 0 0 0 2px #fff;
}
.mw-ui-button.mw-ui-progressive:not(:disabled):active,
.mw-ui-button.mw-ui-progressive:not(:disabled).is-on {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
box-shadow: none;
}
.mw-ui-button.mw-ui-destructive:not( :disabled ) {
color: #fff;
}
.mw-ui-button.mw-ui-quiet,
.mw-ui-button.mw-ui-quiet.mw-ui-progressive,
.mw-ui-button.mw-ui-quiet.mw-ui-destructive {
color: var(--text-color);
}
input[type='checkbox']:hover + .mw-ui-button.mw-ui-quiet,
input[type='checkbox']:hover + .mw-ui-button.mw-ui-quiet.mw-ui-progressive,
input[type='checkbox']:hover + .mw-ui-button.mw-ui-quiet.mw-ui-destructive,
.mw-ui-button.mw-ui-quiet:hover,
.mw-ui-button.mw-ui-quiet.mw-ui-progressive:hover,
.mw-ui-button.mw-ui-quiet.mw-ui-destructive:hover {
background-color: rgba(0, 24, 73, 0.02745098);
color: var(--text-color);
border-color: transparent;
}
input[type='checkbox']:focus + .mw-ui-button.mw-ui-quiet,
input[type='checkbox']:focus + .mw-ui-button.mw-ui-quiet.mw-ui-progressive,
input[type='checkbox']:focus + .mw-ui-button.mw-ui-quiet.mw-ui-destructive,
.mw-ui-button.mw-ui-quiet:focus,
.mw-ui-button.mw-ui-quiet.mw-ui-progressive:focus,
.mw-ui-button.mw-ui-quiet.mw-ui-destructive:focus {
color: var(--text-color);
}
input[type='checkbox']:active + .mw-ui-button.mw-ui-quiet,
input[type='checkbox']:active + .mw-ui-button.mw-ui-quiet.mw-ui-progressive,
input[type='checkbox']:active + .mw-ui-button.mw-ui-quiet.mw-ui-destructive,
.mw-ui-button.mw-ui-quiet:active,
.mw-ui-button.mw-ui-quiet.mw-ui-progressive:active,
.mw-ui-button.mw-ui-quiet.mw-ui-destructive:active {
background-color: rgba(0, 36, 73, 0.08235294);
color: var(--text-color);
border-color: #72777d;
}
.mw-ui-input {
background-color: var(--ooui-input);
color: var(--text-color);
border-color: var(--ooui-input-border);
}
.mw-ui-input:hover {
border-color: var(--ooui-input-border--hover);
}
.mw-ui-input::placeholder {
color: var(--byline-color);
}
.mw-content-ltr .redirectText li:first-child {
padding: 0;
background: 0;
}
.mw-content-ltr .redirectText li:first-child::before {
content: '';
background: currentcolor;
-webkit-mask: url("filepath://Redirect-arrow.svg") no-repeat 50% 50% / contain;
mask: url("filepath://Redirect-arrow.svg") no-repeat 50% 50% / contain;
display: inline-block;
width: 47px;
height: 20px;
}
:root {
--wikitable-header-bg: var(--body-dark);
--wikitable-border: var(--body-border);
--wikitable-bg: var(--body-light);
--wikitable-bg-lighter: #e9e3d6;
--wikitable-color: var(--text-color);
--table-na-background: rgba(255, 255, 255, 0.3);
--table-na-color: var(--subtle-color);
--table-yes-background: #c3e8a3;
--table-yes-color: #2e5e05;
--table-no-background: #fbc0ba;
--table-no-color: #801c13;
--table-maybe-background: #fcea94;
--table-maybe-color: #786300;
}
.wikitable {
background: var(--wikitable-bg);
color: var(--wikitable-color);
border-color: var(--wikitable-border);
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
}
.wikitable > tr > th,
.wikitable > tr > td,
.wikitable > * > tr > th,
.wikitable > * > tr > td {
border-color: var(--wikitable-border);
}
.wikitable > tr > th.table-noborder,
.wikitable > tr > td.table-noborder,
.wikitable > * > tr > th.table-noborder,
.wikitable > * > tr > td.table-noborder {
border-left-style: hidden;
border-right-style: hidden;
padding-left: 0;
padding-right: 0;
}
.wikitable > tr > th,
.wikitable > * > tr > th {
background-color: var(--wikitable-header-bg);
}
.tabber .wikitable {
box-shadow: none;
}
.mw_metadata td,
.mw_metadata th {
border-color: var(--wikitable-border);
}
.mw_metadata th {
background-color: var(--wikitable-header-bg);
}
.mw_metadata td {
background-color: var(--wikitable-bg);
}
.mw-datatable {
border-color: var(--wikitable-border);
}
.mw-datatable td,
.mw-datatable th {
border-color: var(--wikitable-border);
}
.mw-datatable th {
background-color: var(--wikitable-header-bg);
}
.mw-datatable td {
background-color: var(--wikitable-bg);
}
.mw-datatable tr:hover td {
background-color: var(--wikitable-bg);
}
table.alternating-rows tr:nth-child(odd),
table.alternating-cols td:nth-child(odd) {
background: var(--wikitable-alternating-bg);
}
.table-na {
background: var(--table-na-background);
color: var(--table-na-color);
vertical-align: middle;
text-align: center;
}
.table-yes {
background: var(--table-yes-background);
color: var(--table-yes-color);
}
.table-positive {
background: var(--table-yes-background);
}
.table-no {
background: var(--table-no-background);
color: var(--table-no-color);
}
.table-negative {
background: var(--table-no-background);
}
.table-maybe {
background: var(--table-maybe-background);
color: var(--table-maybe-color);
}
#mw-allmessagestable .am_actual,
#mw-allmessagestable .am_default {
background-color: var(--wikitable-bg);
}
#mw-allmessagestable .am_default:hover,
#mw-allmessagestable .am_actual:hover,
#mw-allmessagestable tbody:hover td {
background-color: var(--wikitable-bg-lighter);
}
table.wikitable td.no-cell-spacing {
padding: 0;
height: 0;
}
table.wikitable td.no-cell-spacing table {
margin: -1px;
width: calc(100% + 2px);
height: calc(100% + 2px);
}
.plainlist ol,
.plainlist ul {
margin: 0;
}
.plainlist li {
margin-bottom: 0;
list-style: none;
}
table.align-right-1 td:nth-of-type(1),
table.align-right-2 td:nth-of-type(2),
table.align-right-3 td:nth-of-type(3),
table.align-right-4 td:nth-of-type(4),
table.align-right-5 td:nth-of-type(5),
table.align-right-6 td:nth-of-type(6),
table.align-right-7 td:nth-of-type(7),
table.align-right-8 td:nth-of-type(8),
table.align-right-9 td:nth-of-type(9),
table.align-right-10 td:nth-of-type(10),
table.align-right-11 td:nth-of-type(11),
table.align-right-12 td:nth-of-type(12),
table.align-right-13 td:nth-of-type(13),
table.align-right-14 td:nth-of-type(14),
table.align-right-15 td:nth-of-type(15),
table.align-right-16 td:nth-of-type(16),
table.align-right-17 td:nth-of-type(17),
table.align-right-18 td:nth-of-type(18),
table.align-right-19 td:nth-of-type(19),
table.align-right-20 td:nth-of-type(20) {
text-align: right;
}
table.align-center-1 td:nth-of-type(1),
table.align-center-2 td:nth-of-type(2),
table.align-center-3 td:nth-of-type(3),
table.align-center-4 td:nth-of-type(4),
table.align-center-5 td:nth-of-type(5),
table.align-center-6 td:nth-of-type(6),
table.align-center-7 td:nth-of-type(7),
table.align-center-8 td:nth-of-type(8),
table.align-center-9 td:nth-of-type(9),
table.align-center-10 td:nth-of-type(10),
table.align-center-11 td:nth-of-type(11),
table.align-center-12 td:nth-of-type(12),
table.align-center-13 td:nth-of-type(13),
table.align-center-14 td:nth-of-type(14),
table.align-center-15 td:nth-of-type(15),
table.align-center-16 td:nth-of-type(16),
table.align-center-17 td:nth-of-type(17),
table.align-center-18 td:nth-of-type(18),
table.align-center-19 td:nth-of-type(19),
table.align-center-20 td:nth-of-type(20) {
text-align: center;
}
table.align-left-1 td:nth-of-type(1),
table.align-left-2 td:nth-of-type(2),
table.align-left-3 td:nth-of-type(3),
table.align-left-4 td:nth-of-type(4),
table.align-left-5 td:nth-of-type(5),
table.align-left-6 td:nth-of-type(6),
table.align-left-7 td:nth-of-type(7),
table.align-left-8 td:nth-of-type(8),
table.align-left-9 td:nth-of-type(9),
table.align-left-10 td:nth-of-type(10),
table.align-left-11 td:nth-of-type(11),
table.align-left-12 td:nth-of-type(12),
table.align-left-13 td:nth-of-type(13),
table.align-left-14 td:nth-of-type(14),
table.align-left-15 td:nth-of-type(15),
table.align-left-16 td:nth-of-type(16),
table.align-left-17 td:nth-of-type(17),
table.align-left-18 td:nth-of-type(18),
table.align-left-19 td:nth-of-type(19),
table.align-left-20 td:nth-of-type(20) {
text-align: left;
}
:root {
--diff-addedline-border-color: #438ab5;
--diff-addedline-background: #bddff2;
--diff-addedline-color: #000;
--diff-deletedline-border-color: #379541;
--diff-deletedline-background: #c1edbf;
--diff-deletedline-color: #000;
--diff-context-border-color: var(--body-mid);
--diff-context-background: var(--body-mid);
}
.diff-context {
border-color: var(--diff-context-border-color);
background: var(--diff-context-background);
color: inherit;
}
.diff-addedline {
border-color: var(--diff-addedline-border-color);
}
.diff-addedline .diffchange {
background: var(--diff-addedline-background);
color: var(--diff-addedline-color);
}
.diff-deletedline {
border-color: var(--diff-deletedline-border-color);
}
.diff-deletedline .diffchange {
background: var(--diff-deletedline-background);
color: var(--diff-deletedline-color);
}
.mw-diff-movedpara-left:after,
.mw-diff-movedpara-right:after {
color: var(--text-color);
}
.mw-notification {
background-color: var(--body-light);
border-color: var(--body-border);
color: var(--text-color);
}
.mw-echo-ui-notificationsInboxWidget-toolbarWrapper {
background: var(--body-main);
}
.mw-body-content .mw-echo-ui-datedSubGroupListWidget-title-secondary {
color: var(--byline-color);
}
.mw-echo-ui-pageNotificationsOptionWidget.oo-ui-optionWidget-selected {
background-color: var(--ooui-normal);
color: var(--ooui-accent);
}
.mw-echo-ui-pageNotificationsOptionWidget-label-count {
background-color: var(--ooui-normal);
color: var(--byline-color);
}
.oo-ui-optionWidget-selected .mw-echo-ui-pageNotificationsOptionWidget-label-count {
color: var(--ooui-accent);
}
.mw-echo-ui-pageNotificationsOptionWidget.oo-ui-optionWidget-highlighted {
background-color: var(--ooui-normal);
color: var(--text-color);
}
.mw-echo-ui-crossWikiUnreadFilterWidget {
border-color: var(--body-border);
}
.mw-echo-ui-crossWikiUnreadFilterWidget-subtitle {
color: var(--byline-color);
}
.mw-echo-ui-notificationBadgeButtonPopupWidget-popup > .oo-ui-popupWidget-popup > .oo-ui-popupWidget-head,
.mw-echo-ui-notificationBadgeButtonPopupWidget-popup > .oo-ui-popupWidget-popup > .oo-ui-popupWidget-footer {
border-color: var(--ooui-interface-border);
}
.mw-echo-ui-notificationBadgeButtonPopupWidget-popup > .oo-ui-popupWidget-popup > .oo-ui-popupWidget-footer .mw-echo-ui-notificationBadgeButtonPopupWidget-footer-buttons .oo-ui-buttonElement:last-child {
border-left-color: var(--ooui-normal-border);
}
.mw-echo-ui-notificationItemWidget {
background-color: var(--ooui-normal);
border-color: var(--ooui-normal-border);
}
.mw-echo-ui-notificationItemWidget:hover,
.mw-echo-ui-notificationItemWidget-unread:hover {
background-color: var(--ooui-normal--hover);
}
.mw-echo-ui-notificationItemWidget:last-child {
border-bottom-color: var(--ooui-normal-border);
}
.mw-echo-ui-notificationItemWidget-unread {
background-color: var(--search-box);
}
.mw-echo-ui-crossWikiNotificationItemWidget-group,
.mw-echo-ui-bundleNotificationItemWidget-group {
background-color: var(--ooui-interface);
}
.mw-echo-ui-toggleReadCircleButtonWidget-circle {
background-color: var(--ooui-progressive);
}
.mw-echo-ui-toggleReadCircleButtonWidget:hover .mw-echo-ui-toggleReadCircleButtonWidget-circle {
background-color: var(--ooui-progressive--hover);
}
.mw-echo-ui-toggleReadCircleButtonWidget-circle-unread {
background-color: var(--ooui-normal);
border-color: var(--ooui-normal-border);
}
.mw-echo-ui-notificationItemWidget-content-message-header,
.mw-echo-ui-notificationItemWidget-content-message-body,
.mw-echo-ui-menuItemWidget > .oo-ui-buttonElement-button > .oo-ui-labelElement-label,
.mw-echo-ui-notificationItemWidget-content-actions-timestamp {
color: var(--ooui-text);
}
.mw-echo-ui-bundleNotificationItemWidget-group {
background-color: var(--body-main);
}
@keyframes unseen-fadeout-to-unread {
from {
background-color: var(--wikitable-bg-lighter);
}
to {
background-color: var(--search-box);
}
}
@keyframes unseen-fadeout-to-read {
from {
background-color: var(--wikitable-bg-lighter);
}
to {
background-color: var(--body-main);
}
}
.mwe-popups {
background: var(--body-light);
}
.mwe-popups .mwe-popups-container {
color: var(--text-color);
background: var(--body-light);
}
.mwe-popups .mwe-popups-container.flipped-x-y:before,
.mwe-popups .mwe-popups-container.flipped-y:before {
border-top: none;
}
.mwe-popups .mwe-popups-container.mwe-popups-no-image-tri:before {
border-bottom: none;
}
.mwe-popups .mwe-popups-container.flipped-x-y:after,
.mwe-popups .mwe-popups-container.flipped-y:after {
border-top-color: var(--body-light);
}
.mwe-popups .mwe-popups-container.mwe-popups-no-image-tri:after {
border-bottom-color: var(--body-light);
}
.mwe-popups .mwe-popups-settings-icon:hover,
.mwe-popups .mwe-popups-settings-icon:active {
background-color: var(--ooui-normal--hover);
}
.mwe-popups .mw-ui-icon-element:not(.disabled):hover {
background: none;
}
.mwe-popups .mwe-popups-extract {
color: var(--text-color);
}
.mwe-popups .mwe-popups-extract[dir='ltr']:after {
background-image: linear-gradient(to right, rgba(49, 62, 89, 0), var(--body-light) 50%);
}
.mwe-popups-overlay {
background-color: var(--ooui-window-background);
}
#mwe-popups-settings {
background: var(--ooui-interface);
border-color: var(--ooui-interface-border);
color: var(--text-color);
}
#mwe-popups-settings header {
border-color: var(--ooui-interface-border);
}
#mwe-popups-settings main#mwe-popups-settings-form p {
color: var(--byline-color);
}
#mwe-popups-settings main#mwe-popups-settings-form form label > span {
color: var(--ooui-text);
}
:root {
--smw-ask-options-even-bg: var(--body-mid);
--smw-ask-options-odd-bg: var(--body-light);
--smw-ask-action-btn-lblue-bg: var(--body-main);
--smw-ask-action-btn-lblue-color: #000;
--smw-ask-action-btn-lblue-border-color: var(--body-light);
--smw-ask-action-btn-dblue-bg: var(--body-light);
--smw-ask-action-btn-dblue-color: #fff;
--smw-ask-action-btn-dblue-border-color: var(--button-border);
}
.smw-ask-condition fieldset,
.smw-ask-printhead fieldset {
border-color: var(--sidebar);
}
.smw-ask-search fieldset,
.smw-ask-format fieldset,
.smw-ask-options fieldset {
border-color: var(--sidebar);
}
.strike > span:before,
.strike > span:after {
background: var(--sidebar);
}
.smw-ask-options-fields tr td {
background-color: var(--smw-ask-options-even-bg);
}
.smw-ask-options-fields tr:nth-child(odd) td {
background-color: var(--smw-ask-options-odd-bg);
}
.smw-ask-action-btn.smw-ask-action-btn-lblue,
.smw-ask-action-btn.smw-ask-action-btn-lblue:hover,
.smw-ask-action-btn.smw-ask-action-btn-lblue:visited {
background-color: var(--smw-ask-action-btn-lblue-bg);
color: var(--smw-ask-action-btn-lblue-color);
border-color: var(--smw-ask-action-btn-lblue-border-color);
}
.smw-ask-action-btn.smw-ask-action-btn-dblue,
.smw-ask-action-btn.smw-ask-action-btn-dblue:hover,
.smw-ask-action-btn.smw-ask-action-btn-dblue:visited {
background-color: var(--smw-ask-action-btn-dblue-bg);
color: var(--smw-ask-action-btn-dblue-color);
border-color: var(--smw-ask-action-btn-dblue-border-color);
}
.smw-ask-query textarea,
.smw-ask-actions textarea {
background-color: var(--ooui-interface);
border-color: var(--ooui-interface-border);
color: var(--ooui-text);
}
.smw-ask-query-format select {
background-color: var(--ooui-interface);
border: 1px solid var(--ooui-interface-border);
color: var(--ooui-text);
}
.smw-ask-toplinks {
background-color: var(--body-mid);
}
.smw-ask-toplinks span.smw-icon-info {
background: none;
padding: 0 !important;
}
.smw-ask-toplinks span.smw-icon-info::before {
content: '';
background: var(--text-color);
-webkit-mask: url("data:image/svg+xml,%3C%3Fxml version='1.0' encoding='UTF-8'%3F%3E%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 20 20'%3E%3Ctitle%3Einfo%3C/title%3E%3Cpath d='M10 0C4.477 0 0 4.477 0 10s4.477 10 10 10 10-4.477 10-10S15.523 0 10 0zM9 5h2v2H9zm0 4h2v6H9z'/%3E%3C/svg%3E") no-repeat 50% 50% / contain;
mask: url("data:image/svg+xml,%3C%3Fxml version='1.0' encoding='UTF-8'%3F%3E%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 20 20'%3E%3Ctitle%3Einfo%3C/title%3E%3Cpath d='M10 0C4.477 0 0 4.477 0 10s4.477 10 10 10 10-4.477 10-10S15.523 0 10 0zM9 5h2v2H9zm0 4h2v6H9z'/%3E%3C/svg%3E") no-repeat 50% 50% / contain;
padding: 0 0 3px 18px;
}
.smw-ask-options-row-odd {
background-color: var(--body-light);
}
.smw-ask-options-row-even {
background-color: var(--body-mid);
}
#options-toggle:not(:checked) + #options-list .options-parameter-list:after {
background-image: linear-gradient(to bottom, transparent, var(--body-mid) 90%);
}
.smw-ask-button-submit input {
background-color: var(--ooui-normal);
border-color: var(--ooui-normal-border);
color: var(--text-color);
}
.smw-ask-button-submit input:hover,
.smw-ask-button-lgrey:hover {
background-color: var(--ooui-normal--hover);
border-color: var(--ooui-normal-border);
}
input.smw-ask-action-btn.smw-ask-action-btn-dblue {
background-color: var(--ooui-normal);
border-color: var(--ooui-normal-border);
color: var(--ooui-text);
}
a.smw-ask-action-btn.smw-ask-action-btn-lblue {
background-color: var(--body-mid);
border-color: var(--body-mid);
color: var(--ooui-text);
}
a.smw-ask-action-btn.smw-ask-action-btn-lblue:visited {
background-color: var(--body-mid);
border-color: var(--body-mid);
color: var(--ooui-text);
}
a.smw-ask-action-btn.smw-ask-action-btn-lblue:hover {
background-color: var(--body-mid);
border-color: var(--body-mid);
color: var(--ooui-text);
}
a.smw-ask-action-btn-lgrey {
background-color: var(--ooui-normal);
border-color: var(--ooui-normal-border);
color: var(--ooui-text);
}
a.smw-ask-action-btn-lgrey:hover {
background-color: var(--ooui-normal--hover);
border-color: var(--ooui-normal-border);
color: var(--ooui-text);
}
.smw-callout-error {
background-color: var(--errorbox-bg);
border-color: var(--errorbox-border);
}
.smw-callout-info {
background-color: var(--body-light);
border-color: var(--body-dark);
}
.smw-callout-success {
background-color: var(--successbox-bg);
border-color: var(--successbox-border);
}
.smw-callout-warning {
background-color: var(--warningbox-bg);
border-color: var(--warningbox-bg);
}
.smw-tabs input.nav-tab:checked + label.nav-label,
.smw-tabs input.nav-tab:checked + label.nav-label:hover {
color: inherit;
}
#tab-smw-property-value:checked + label.nav-label .usage-count {
color: #fff;
background-color: var(--ooui-progressive);
}
#tab-smw-property-value:checked + label.nav-label .usage-count.moderate {
color: #fff;
background-color: #b55e0c;
border-color: #b55e0c;
}
#tab-smw-property-value:checked + label.nav-label .usage-count.high {
color: #fff;
background-color: #9f261e;
border-color: #9f261e;
}
.smw-property-page-results .header-title {
background-color: var(--ooui-interface);
border-bottom-color: var(--ooui-interface-border);
color: var(--ooui-text);
}
.smw-property-page-results .value-row:hover {
background-color: var(--ooui-normal--hover);
}
.smw-property-page-results .smw-table .header-row {
color: var(--text-color);
}
.tippy-tooltip.light-border-theme {
background-color: var(--body-light);
color: var(--text-color);
}
.tippy-tooltip.light-border-theme .tippy-arrow {
border-top-color: var(--body-light);
}
.tippy-tooltip.light-border-theme .tippy-arrow:after {
border-top-color: var(--body-light);
}
.tippy-header {
background-color: var(--body-dark);
border-bottom-color: var(--body-mid);
}
.smw-ui-input-filter {
background-color: var(--ooui-interface);
border-color: var(--ooui-interface-border);
color: var(--ooui-text);
}
.smw-ui-input-filter input {
border-left-color: var(--ooui-interface-border) !important;
color: var(--ooui-text) !important;
}
.smw-ui-pagination .page-link.link-disabled {
background-color: var(--ooui-disabled);
border-color: var(--ooui-disabled-border);
color: var(--subtle-color);
}
.smw-ui-pagination .page-link {
background-color: var(--ooui-normal);
border-color: var(--ooui-normal-border);
color: var(--link-color);
}
.smw-ui-pagination .page-link:hover {
background-color: var(--ooui-normal--hover);
border-color: var(--ooui-normal-border);
color: var(--link-color);
}
.smw-ui-pagination .page-link.link-active {
color: #fff;
background-color: var(--ooui-progressive);
border-color: var(--ooui-progressive);
}
.smw-tabs input.nav-tab:checked + label.nav-label {
border-color: var(--ooui-normal-border);
}
.smw-tabs section,
.smw-tabs .subtab-content {
border-top-color: var(--ooui-normal-border);
}
.smw-column-header {
color: var(--text-color);
}
.smw-factbox {
background: var(--body-main);
border-color: transparent;
}
.mw-body .mw-indicators #mw-indicator-smw-entity-examiner.mw-indicator .smw-indicator-vertical-bar-loader {
display: none;
}
.smwb-theme-light .smwb-title,
.smwb-theme-light .smwb-center,
.smwb-theme-light .smwb-actions,
.smwb-theme-light .smwb-prophead {
background-color: var(--body-mid);
}
.smwb-theme-light .smwb-factbox {
border-left-color: var(--body-mid);
}
.smwb-theme-light .smwb-ifactbox {
border-right-color: var(--body-mid);
}
.smwb-theme-light .smwb-propval {
background-color: var(--body-light);
}
.smwb-action-separator {
border-color: var(--wikitable-border);
}
.smwb-bottom {
border-bottom: 1px solid var(--wikitable-border);
}
.smwb-ifactbox .smwb-cell,
.smwb-factbox .smwb-cell {
border-top: 1px solid var(--wikitable-border);
}
.smwb-propvalue .smwb-prophead,
.smwb-ipropvalue .smwb-prophead,
.smwb-propvalue .smwb-propval,
.smwb-ipropvalue .smwb-propval {
font-size: 0.9em;
}
:root {
--filter-black-to-link: invert(36%) sepia(58%) saturate(433%) hue-rotate(344deg) brightness(100%) contrast(91%);
}
#bodyContent span.smwbrowse a {
color: black;
background-image: url('filepath://Smwbrowse.svg');
filter: var(--filter-black-to-link);
}
#bodyContent span.smwbrowse a:hover {
color: black;
background-image: url('filepath://Smwbrowse-hover.svg');
text-decoration: underline;
}
#bodyContent span.smwsearch a {
color: black;
filter: var(--filter-black-to-link);
background-image: url('filepath://Smwsearch.svg');
}
#bodyContent span.smwsearch a:hover {
color: black;
background-image: url('filepath://Smwsearch-hover.svg');
text-decoration: underline;
}
:root {
--tabber-tab-bg: var(--body-light);
--tabber-tab-border-color: var(--body-border);
--tabber-active-tab-bg: var(--body-light);
--tabber-active-tab-color: var(--text-color);
--tabber-active-tab-hover-bg: var(--body-light);
--tabber-active-tab-hover-border-color: var(--body-border);
--tabber-active-tab-hover-color: var(--text-color);
--tabber-active-tab-border-hider-color: var(--body-light);
--tabber-inactive-tab-bg: var(--body-background-color);
--tabber-inactive-tab-border-color: var(--body-border);
--tabber-inactive-tab-color: var(--text-color);
--tabber-inactive-tab-hover-bg: var(--body-light);
--tabber-inactive-tab-hover-border-color: var(--body-border);
}
.tabber {
margin: 1em 0;
}
.tabber .tabbertab {
background-color: var(--tabber-tab-bg);
border: 1px solid var(--tabber-tab-border-color);
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
padding: 1em 1.5em;
}
ul.tabbernav {
border: none;
margin-left: 2em;
margin-bottom: 0;
margin-right: 2em;
padding: 0;
font-family: inherit;
}
ul.tabbernav li.tabberactive > a {
background-color: var(--tabber-active-tab-bg);
color: var(--tabber-active-tab-color);
border-bottom: none;
position: relative;
}
ul.tabbernav li.tabberactive > a:hover {
color: var(--tabber-active-tab-hover-color);
background-color: var(--tabber-active-tab-hover-bg);
border-color: var(--tabber-active-tab-hover-border-color);
border-bottom: none;
}
ul.tabbernav li.tabberactive > a::after {
content: '';
position: absolute;
left: 0;
right: 0;
bottom: -1px;
border-bottom: 2px solid var(--tabber-active-tab-border-hider-color);
}
ul.tabbernav li a {
background-color: var(--tabber-inactive-tab-bg);
border-bottom: transparent;
border-color: var(--tabber-inactive-tab-border-color);
color: var(--tabber-inactive-tab-color);
display: inline-block;
font-size: 110%;
padding: 0.5em 1em;
}
ul.tabbernav li a:hover {
background-color: var(--tabber-inactive-tab-hover-bg);
border-color: var(--tabber-inactive-tab-hover-border-color);
}
ul.tabbernav li a:link,
ul.tabbernav li a:visited {
color: var(--tabber-inactive-tab-color);
}
:root {
--ooui-text: var(--text-color);
--ooui-interface: var(--body-light);
--ooui-interface-border: var(--body-border);
--ooui-window-background: rgba(255, 255, 255, 0.5);
--ooui-normal: #d5c7ad;
--ooui-normal--hover: #dfd5c1;
--ooui-normal-border: #b8a282;
--ooui-progressive: #605443;
--ooui-progressive--hover: #7e6e58;
--ooui-accent: var(--link-color);
--ooui-input: #fff;
--ooui-input-border: #b8a282;
--ooui-input-border--hover: #8a724f;
--ooui-disabled: #d1cdc5;
--ooui-disabled-border: #c2b9ab;
--ooui-disabled-text: var(--subtle-color);
--ooui-pending-background-image: repeating-linear-gradient(-45deg, var(--search-box), var(--search-box) 20px, var(--body-main) 20px, var(--body-main) 30px);
}
.oo-ui-widget {
color: var(--ooui-text);
}
.oo-ui-checkboxInputWidget [type='checkbox'] + span,
.oo-ui-radioInputWidget [type='radio'] + span {
background-color: var(--ooui-input);
border-color: var(--ooui-input-border);
}
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:checked + span,
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:indeterminate + span {
background-color: var(--ooui-progressive);
border-color: var(--ooui-progressive);
}
.oo-ui-radioInputWidget.oo-ui-widget-enabled [type='radio']:checked + span {
border-color: var(--ooui-progressive);
}
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:checked:hover + span,
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:indeterminate:hover + span {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
}
.oo-ui-radioInputWidget.oo-ui-widget-enabled [type='radio']:checked:hover + span {
border-color: var(--ooui-progressive--hover);
}
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:hover + span,
.oo-ui-radioInputWidget.oo-ui-widget-enabled [type='radio']:hover + span {
border-color: var(--ooui-accent);
}
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:focus + span {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:active + span,
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:checked:active + span,
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:indeterminate:active + span {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
box-shadow: inset 0 0 0 1px var(--ooui-progressive--hover);
}
.oo-ui-radioInputWidget.oo-ui-widget-enabled [type='radio']:active + span {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
}
.oo-ui-radioInputWidget.oo-ui-widget-enabled [type='radio']:checked:active + span {
border-color: var(--ooui-progressive--hover);
box-shadow: inset 0 0 0 1px var(--ooui-progressive--hover);
}
.oo-ui-radioInputWidget.oo-ui-widget-enabled [type='radio']:checked:active + span:before {
border-color: var(--ooui-progressive--hover);
}
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:checked:focus + span,
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:indeterminate:focus + span {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent), inset 0 0 0 2px #fff;
}
.oo-ui-checkboxInputWidget [type='checkbox']:disabled + span,
.oo-ui-radioInputWidget [type='radio']:disabled + span {
background-color: var(--ooui-disabled);
border-color: var(--ooui-disabled);
}
.oo-ui-dropdownWidget-handle {
border-color: var(--ooui-normal-border);
}
.oo-ui-dropdownWidget.oo-ui-widget-enabled .oo-ui-dropdownWidget-handle {
background-color: var(--ooui-normal);
color: var(--ooui-text);
}
.oo-ui-dropdownWidget.oo-ui-widget-enabled .oo-ui-dropdownWidget-handle:hover {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
}
.oo-ui-dropdownWidget.oo-ui-widget-enabled .oo-ui-dropdownWidget-handle:active {
color: var(--ooui-text);
}
.oo-ui-dropdownWidget.oo-ui-widget-enabled .oo-ui-dropdownWidget-handle:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-dropdownWidget.oo-ui-widget-enabled.oo-ui-dropdownWidget-open .oo-ui-dropdownWidget-handle {
background-color: var(--ooui-normal--hover);
}
.oo-ui-dropdownWidget.oo-ui-widget-disabled .oo-ui-dropdownWidget-handle {
color: var(--ooui-disabled-text);
text-shadow: none;
border-color: var(--ooui-disabled-border);
background-color: var(--ooui-disabled);
}
.oo-ui-dropdownInputWidget select {
border-color: var(--ooui-normal-border);
}
.oo-ui-dropdownInputWidget option {
background-color: var(--ooui-interface);
}
.oo-ui-dropdownInputWidget.oo-ui-widget-enabled {
background-color: var(--ooui-normal);
}
.oo-ui-dropdownInputWidget.oo-ui-widget-enabled:hover {
background-color: var(--ooui-normal--hover);
}
.oo-ui-dropdownInputWidget.oo-ui-widget-enabled select {
color: var(--ooui-text);
}
.oo-ui-dropdownInputWidget.oo-ui-widget-enabled select:hover,
.oo-ui-dropdownInputWidget.oo-ui-widget-enabled select:active {
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
}
.oo-ui-dropdownInputWidget.oo-ui-widget-enabled select:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-labelWidget.oo-ui-inline-help {
color: var(--byline-color);
}
.oo-ui-menuSelectWidget {
background-color: var(--ooui-interface);
border-color: var(--ooui-interface-border);
}
.oo-ui-menuSelectWidget-frameless {
box-shadow: inset 0 -1px 0 0 var(--ooui-normal-border);
}
.oo-ui-menuSectionOptionWidget {
color: var(--byline-color);
}
.oo-ui-menuOptionWidget.oo-ui-optionWidget-highlighted,
.oo-ui-menuOptionWidget.oo-ui-optionWidget-selected {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
}
.oo-ui-menuOptionWidget.oo-ui-optionWidget-selected.oo-ui-menuOptionWidget.oo-ui-optionWidget-highlighted,
.oo-ui-menuOptionWidget.oo-ui-optionWidget-pressed.oo-ui-menuOptionWidget.oo-ui-optionWidget-highlighted {
color: var(--ooui-accent);
}
.oo-ui-menuOptionWidget.oo-ui-widget-enabled.oo-ui-optionWidget {
color: var(--ooui-text);
}
.oo-ui-messageDialog-title {
color: inherit;
}
.oo-ui-messageWidget.oo-ui-messageWidget-block.oo-ui-flaggedElement-error {
background-color: var(--errorbox-bg);
border-color: var(--errorbox-border);
}
.oo-ui-messageWidget.oo-ui-messageWidget-block.oo-ui-flaggedElement-warning {
background-color: var(--warningbox-bg);
border-color: var(--warningbox-border);
}
.oo-ui-messageWidget.oo-ui-messageWidget-block.oo-ui-flaggedElement-success {
background-color: var(--successbox-bg);
border-color: var(--successbox-border);
}
.oo-ui-messageWidget.oo-ui-messageWidget-block.oo-ui-flaggedElement-notice {
background-color: var(--messagebox-info-background);
border-color: var(--messagebox-info-border);
}
.oo-ui-messageWidget.oo-ui-flaggedElement-error:not(.oo-ui-messageWidget-block),
.oo-ui-messageWidget.oo-ui-flaggedElement-success:not(.oo-ui-messageWidget-block) {
color: var(--ooui-text);
}
.oo-ui-optionWidget.oo-ui-widget-disabled {
color: var(--ooui-disabled-text);
}
.oo-ui-outlineControlsWidget {
background-color: var(--ooui-normal);
}
.oo-ui-outlineOptionWidget.oo-ui-optionWidget-highlighted {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
}
.oo-ui-popupWidget-popup {
background-color: var(--ooui-interface);
border-color: var(--ooui-interface-border);
}
.oo-ui-popupWidget-anchored-top .oo-ui-popupWidget-anchor:after {
border-bottom-color: var(--ooui-interface);
}
.oo-ui-popupWidget-anchored-top .oo-ui-popupWidget-anchor:before {
border-bottom-color: var(--ooui-interface-border);
}
.oo-ui-popupWidget-anchored-bottom .oo-ui-popupWidget-anchor:after {
border-top-color: var(--ooui-interface);
}
.oo-ui-popupWidget-anchored-bottom .oo-ui-popupWidget-anchor:before {
border-top-color: var(--ooui-interface-border);
}
.oo-ui-popupWidget-anchored-start .oo-ui-popupWidget-anchor:after {
border-right-color: var(--ooui-interface);
}
.oo-ui-popupWidget-anchored-start .oo-ui-popupWidget-anchor:before {
border-right-color: var(--ooui-interface-border);
}
.oo-ui-popupWidget-anchored-end .oo-ui-popupWidget-anchor:after {
border-left-color: var(--ooui-interface);
}
.oo-ui-popupWidget-anchored-end .oo-ui-popupWidget-anchor:before {
border-left-color: var(--ooui-interface-border);
}
.oo-ui-searchWidget-query {
border-bottom-color: var(--ooui-interface-border);
}
.oo-ui-selectFileWidget-dropTarget {
background-color: var(--ooui-interface);
border-color: var(--ooui-interface-border);
}
.oo-ui-selectFileWidget.oo-ui-widget-enabled.oo-ui-selectFileWidget-dropTarget {
background-color: var(--ooui-interface);
}
.oo-ui-selectFileWidget.oo-ui-widget-enabled.oo-ui-selectFileWidget-dropTarget:hover {
border-color: var(--ooui-input-border--hover);
}
.oo-ui-tabOptionWidget {
color: var(--ooui-text);
}
.oo-ui-tabSelectWidget-framed .oo-ui-tabOptionWidget.oo-ui-optionWidget-selected {
background-color: var(--body-dark);
color: var(--ooui-text);
}
.oo-ui-tabSelectWidget-framed .oo-ui-tabOptionWidget.oo-ui-optionWidget-selected .oo-ui-labelElement-label {
border-bottom-color: var(--body-border);
}
.oo-ui-tabSelectWidget-framed .oo-ui-tabOptionWidget.oo-ui-widget-enabled:hover,
.oo-ui-tabSelectWidget-framed .oo-ui-tabOptionWidget.oo-ui-widget-enabled:active {
background-color: var(--body-light);
color: var(--ooui-text);
}
.oo-ui-tabSelectWidget-framed .oo-ui-tabOptionWidget.oo-ui-widget-enabled.oo-ui-optionWidget-selected:hover {
background-color: var(--body-dark);
}
.oo-ui-tabSelectWidget-frameless .oo-ui-tabOptionWidget.oo-ui-optionWidget-selected {
color: var(--ooui-progressive);
box-shadow: inset 0 -2px 0 0 var(--ooui-progressive);
}
.oo-ui-tabSelectWidget-frameless .oo-ui-tabOptionWidget.oo-ui-optionWidget-selected:hover,
.oo-ui-tabSelectWidget-frameless .oo-ui-tabOptionWidget.oo-ui-optionWidget-selected:focus {
color: var(--ooui-progressive--hover);
box-shadow: inset 0 -2px 0 0 var(--ooui-progressive--hover);
}
.oo-ui-tabSelectWidget-framed {
background: none;
border-bottom: 1px solid var(--ooui-interface-border);
}
.oo-ui-tabSelectWidget-frameless {
box-shadow: inset 0 -1px 0 0 var(--ooui-interface-border);
}
.oo-ui-tabSelectWidget-mobile {
}
.oo-ui-tabSelectWidget-mobile.oo-ui-tabSelectWidget-framed:after {
background: var(--mobile-navbox-linear-gradient);
}
.oo-ui-tabSelectWidget-mobile.oo-ui-tabSelectWidget-frameless:after {
background: var(--mobile-navbox-linear-gradient);
}
.oo-ui-tagItemWidget {
border-color: var(--ooui-normal-border);
}
.oo-ui-tagItemWidget.oo-ui-widget-enabled {
color: var(--ooui-text);
}
.oo-ui-tagItemWidget.oo-ui-widget-enabled:hover {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
}
.oo-ui-tagItemWidget.oo-ui-widget-enabled:not( .oo-ui-tagItemWidget-fixed ) {
background-color: var(--ooui-normal);
}
.oo-ui-tagItemWidget.oo-ui-widget-enabled .oo-ui-buttonElement-button:hover {
background-color: var(--ooui-normal--hover);
}
.oo-ui-tagMultiselectWidget.oo-ui-widget-enabled {
background-color: var(--ooui-interface);
}
.oo-ui-tagMultiselectWidget.oo-ui-widget-enabled.oo-ui-tagMultiselectWidget-outlined {
background-color: var(--ooui-normal);
}
.oo-ui-tagMultiselectWidget.oo-ui-widget-enabled.oo-ui-tagMultiselectWidget-outlined .oo-ui-tagItemWidget.oo-ui-widget-enabled {
background-color: var(--ooui-interface);
}
.oo-ui-textInputWidget .oo-ui-inputWidget-input {
background-color: var(--ooui-input);
color: var(--ooui-text);
border-color: var(--ooui-input-border);
}
.oo-ui-textInputWidget.oo-ui-widget-enabled .oo-ui-inputWidget-input::placeholder {
color: var(--subtle-color);
}
.oo-ui-textInputWidget.oo-ui-widget-enabled .oo-ui-inputWidget-input:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-textInputWidget.oo-ui-widget-enabled .oo-ui-inputWidget-input[readonly]:not(.oo-ui-pendingElement-pending) {
background-color: var(--ooui-disabled);
color: var(--ooui-disabled-text);
}
.oo-ui-textInputWidget.oo-ui-widget-enabled:hover .oo-ui-inputWidget-input {
border-color: var(--ooui-input-border--hover);
}
.oo-ui-textInputWidget.oo-ui-widget-enabled:hover .oo-ui-inputWidget-input:focus {
border-color: var(--ooui-accent);
}
@media screen and (min-width: 0) {
.oo-ui-textInputWidget.oo-ui-widget-enabled textarea.oo-ui-inputWidget-input:focus {
outline: 1px solid var(--ooui-accent);
}
}
.oo-ui-textInputWidget.oo-ui-widget-disabled .oo-ui-inputWidget-input {
background-color: var(--ooui-disabled);
color: var(--ooui-disabled-text);
text-shadow: none;
border-color: var(--ooui-disabled-border);
}
.oo-ui-toggleSwitchWidget {
background-color: var(--ooui-input);
border-color: var(--ooui-input-border);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled .oo-ui-toggleSwitchWidget-grip {
background-color: var(--ooui-input);
border-color: var(--ooui-input-border);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:hover {
background-color: var(--ooui-input);
border-color: var(--ooui-accent);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:hover .oo-ui-toggleSwitchWidget-grip {
background-color: var(--ooui-input);
border-color: var(--ooui-accent);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:active,
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:active:hover,
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:active:focus {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
box-shadow: inset 0 0 0 1px var(--ooui-progressive--hover);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:active .oo-ui-toggleSwitchWidget-grip,
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:active:hover .oo-ui-toggleSwitchWidget-grip,
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:active:focus .oo-ui-toggleSwitchWidget-grip {
background-color: var(--ooui-input);
border-color: var(--ooui-input);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:focus .oo-ui-toggleSwitchWidget-grip {
border-color: var(--ooui-accent);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled.oo-ui-toggleWidget-on {
background-color: var(--ooui-progressive);
border-color: var(--ooui-progressive);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled.oo-ui-toggleWidget-on .oo-ui-toggleSwitchWidget-grip {
background-color: var(--ooui-input);
border-color: var(--ooui-input);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled.oo-ui-toggleWidget-on:hover {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled.oo-ui-toggleWidget-on:active,
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled.oo-ui-toggleWidget-on:active:hover {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled.oo-ui-toggleWidget-on:focus {
border-color: var(--ooui-progressive);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled.oo-ui-toggleWidget-on:focus::before {
border-color: #fff;
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-disabled {
background-color: var(--ooui-disabled);
border-color: var(--ooui-disabled);
}
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled > .oo-ui-buttonElement-button {
color: var(--ooui-text);
}
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled > .oo-ui-buttonElement-button:hover {
color: var(--ooui-text);
}
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled > .oo-ui-buttonElement-button:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled.oo-ui-buttonElement-pressed > input.oo-ui-buttonElement-button,
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled > .oo-ui-buttonElement-button:active {
color: var(--ooui-text);
}
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button,
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button:hover {
color: var(--ooui-text);
}
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button:active,
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive.oo-ui-buttonElement-pressed > .oo-ui-buttonElement-button {
color: var(--ooui-text);
border-color: var(--ooui-text);
}
.oo-ui-buttonElement-frameless.oo-ui-widget-disabled > .oo-ui-buttonElement-button {
color: var(--ooui-disabled-text);
}
.oo-ui-buttonElement-framed.oo-ui-widget-disabled > .oo-ui-buttonElement-button {
background-color: var(--ooui-disabled);
border-color: var(--ooui-disabled-border);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled > .oo-ui-buttonElement-button {
background-color: var(--ooui-normal);
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled > .oo-ui-buttonElement-button:hover {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled > .oo-ui-buttonElement-button:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-buttonElement-active > .oo-ui-buttonElement-button {
background-color: var(--ooui-progressive--hover);
color: #fff;
border-color: var(--ooui-progressive--hover);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-buttonElement-active > .oo-ui-buttonElement-button:focus {
border-color: var(--ooui-progressive--hover);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled > .oo-ui-buttonElement-button:active,
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-buttonElement-pressed > .oo-ui-buttonElement-button {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive {
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button {
color: var(--ooui-text);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button:hover {
background-color: var(--ooui-normal--hover);
border-color: var(--ooui-progressive--hover);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-destructive > .oo-ui-buttonElement-button {
color: var(--ooui-text);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-destructive > .oo-ui-buttonElement-button:hover {
background-color: var(--ooui-normal--hover);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button {
background-color: var(--ooui-progressive);
border-color: var(--ooui-progressive);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button:hover {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent), inset 0 0 0 2px #fff;
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button:active,
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive.oo-ui-buttonElement-pressed > .oo-ui-buttonElement-button,
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive.oo-ui-buttonElement-active > .oo-ui-buttonElement-button,
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive.oo-ui-popupToolGroup-active > .oo-ui-buttonElement-button {
color: #fff;
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
}
.oo-ui-pendingElement-pending {
background-image: var(--ooui-pending-background-image);
background-size: 200%;
animation: oo-ui-pendingElement-stripes 6s linear infinite;
}
@keyframes oo-ui-pendingElement-stripes {
100% {
background-position: 100%;
}
}
.oo-ui-messageDialog-content > .oo-ui-window-foot {
outline-color: var(--ooui-interface-border);
}
.oo-ui-messageDialog-message {
color: var(--ooui-text);
}
.oo-ui-messageDialog-actions-horizontal .oo-ui-actionWidget {
border-right-color: var(--ooui-interface-border);
}
.oo-ui-messageDialog-actions-vertical .oo-ui-actionWidget {
border-bottom-color: var(--ooui-interface-border);
}
.oo-ui-processDialog-content .oo-ui-window-head,
.oo-ui-processDialog-content .oo-ui-window-foot {
outline-color: var(--ooui-interface-border);
}
.oo-ui-processDialog .oo-ui-actionWidget > .oo-ui-buttonElement-button {
border-top-color: transparent;
border-bottom-color: transparent;
}
.oo-ui-processDialog .oo-ui-actionWidget > .oo-ui-buttonElement-button:hover,
.oo-ui-processDialog .oo-ui-actionWidget > .oo-ui-buttonElement-button:active {
border-top-color: transparent;
border-bottom-color: transparent;
}
.oo-ui-processDialog .oo-ui-actionWidget:not( .oo-ui-flaggedElement-progressive ):not( .oo-ui-flaggedElement-destructive ) > .oo-ui-buttonElement-button:hover,
.oo-ui-processDialog .oo-ui-actionWidget:not( .oo-ui-flaggedElement-progressive ):not( .oo-ui-flaggedElement-destructive ) > .oo-ui-buttonElement-button:active {
border-right-color: var(--ooui-interface-border);
border-left-color: transparent;
}
.oo-ui-processDialog .oo-ui-actionWidget:not( .oo-ui-flaggedElement-progressive ):not( .oo-ui-flaggedElement-destructive ) > .oo-ui-buttonElement-button:focus {
border-color: var(--ooui-accent);
}
.oo-ui-processDialog-actions-safe .oo-ui-actionWidget > .oo-ui-buttonElement-button,
.oo-ui-processDialog-actions-other .oo-ui-actionWidget > .oo-ui-buttonElement-button {
border-right-color: var(--ooui-normal-border);
border-left-color: transparent;
}
.oo-ui-processDialog-actions-safe .oo-ui-widget-enabled.oo-ui-iconElement:not( .oo-ui-labelElement ) > .oo-ui-buttonElement-button:hover {
background-color: var(--ooui-normal--hover);
border-right-color: var(--ooui-interface-border);
}
.oo-ui-windowManager-modal > .oo-ui-dialog {
background-color: var(--ooui-window-background);
}
.oo-ui-windowManager-modal > .oo-ui-dialog > .oo-ui-window-frame {
background-color: var(--ooui-interface);
}
.oo-ui-windowManager-modal.oo-ui-windowManager-floating > .oo-ui-dialog > .oo-ui-window-frame {
border-color: var(--ooui-interface-border);
}
.oo-ui-window {
color: var(--ooui-text);
}
.oo-ui-toolbar-bar {
background-color: var(--ooui-interface);
color: var(--ooui-text);
}
.oo-ui-toolbar-position-top > .oo-ui-toolbar-bar {
border-bottom-color: var(--body-mid);
}
.oo-ui-toolbar-bar .oo-ui-bookletLayout > .oo-ui-menuLayout-menu {
border-right-color: var(--body-mid);
}
.oo-ui-tool.oo-ui-widget-enabled > .oo-ui-tool-link:hover {
background-color: var(--ooui-normal--hover);
}
.oo-ui-tool.oo-ui-widget-enabled > .oo-ui-tool-link:focus {
outline: 1px solid var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-tool.oo-ui-widget-enabled > .oo-ui-tool-link:active,
.oo-ui-tool.oo-ui-widget-enabled.oo-ui-tool-active > .oo-ui-tool-link,
.oo-ui-tool.oo-ui-widget-enabled.oo-ui-popupToolGroup-active > .oo-ui-tool-link {
background-color: var(--ooui-normal--hover);
color: var(--ooui-accent);
box-shadow: none;
}
.oo-ui-tool.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive > .oo-ui-tool-link {
background-color: var(--ooui-progressive);
}
.oo-ui-tool.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive > .oo-ui-tool-link:hover {
background-color: var(--ooui-progressive--hover);
}
.oo-ui-tool.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive > .oo-ui-tool-link:focus {
box-shadow: inset 0 0 0 1px var(--ooui-accent), inset 0 0 0 2px #fff;
}
.oo-ui-tool.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive > .oo-ui-tool-link:active,
.oo-ui-tool.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive.oo-ui-tool-active > .oo-ui-tool-link {
background-color: var(--ooui-progressive--hover);
}
.oo-ui-listToolGroup-tools .oo-ui-tool.oo-ui-widget-enabled {
background-color: var(--ooui-normal);
}
.oo-ui-listToolGroup-tools .oo-ui-tool.oo-ui-widget-enabled:hover {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
}
.oo-ui-listToolGroup-tools .oo-ui-tool-active.oo-ui-widget-enabled .oo-ui-tool-link .oo-ui-tool-title {
color: var(--ooui-progressive);
}
.oo-ui-menuToolGroup {
border-left-color: var(--body-mid);
border-right-color: var(--body-mid);
}
.oo-ui-popupToolGroup-tools {
background-color: var(--ooui-interface);
border-color: var(--body-mid);
}
.oo-ui-popupToolGroup.oo-ui-widget-enabled > .oo-ui-popupToolGroup-handle:hover {
background-color: var(--ooui-normal--hover);
}
.oo-ui-popupToolGroup.oo-ui-widget-enabled > .oo-ui-popupToolGroup-handle:focus {
outline: 1px solid var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-toolbar-actions .oo-ui-popupToolGroup.oo-ui-widget-enabled > .oo-ui-popupToolGroup-handle:hover {
border-right-color: var(--ooui-normal--hover);
}
.oo-ui-popupToolGroup-tools .oo-ui-tool.oo-ui-widget-enabled .oo-ui-tool-link:focus {
box-shadow: inset 0 0 0 2px var(--ooui-accent);
}
.oo-ui-popupToolGroup-tools .oo-ui-tool-active.oo-ui-widget-enabled .oo-ui-tool-link .oo-ui-tool-title {
color: var(--ooui-progressive);
}
.oo-ui-popupToolGroup.oo-ui-popupToolGroup-active > .oo-ui-popupToolGroup-handle {
background-color: var(--ooui-normal);
color: var(--ooui-accent);
}
.oo-ui-popupToolGroup.oo-ui-popupToolGroup-active > .oo-ui-popupToolGroup-handle:hover {
background-color: var(--ooui-normal--hover);
color: var(--ooui-accent);
}
.oo-ui-bookletLayout-outlinePanel > .oo-ui-outlineControlsWidget {
border-top-color: var(--ooui-interface-border);
}
.oo-ui-bookletLayout > .oo-ui-menuLayout-menu {
border-right-color: var(--ooui-interface-border);
}
.oo-ui-fieldLayout-disabled > .oo-ui-fieldLayout-body > .oo-ui-fieldLayout-header > .oo-ui-labelElement-label {
color: var(--ooui-disabled-text);
}
.oo-ui-panelLayout-framed {
border-color: var(--sidebar);
}
.oo-ui-icon-settings {
background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' width='20' height='20' viewBox='0 0 20 20'%3E%3Ctitle%3Esettings%3C/title%3E%3Cg transform='translate(10 10)'%3E%3Cpath id='a' d='M1.5-10h-3l-1 6.5h5m0 7h-5l1 6.5h3'/%3E%3Cuse xlink:href='%23a' transform='rotate(45)'/%3E%3Cuse xlink:href='%23a' transform='rotate(90)'/%3E%3Cuse xlink:href='%23a' transform='rotate(135)'/%3E%3C/g%3E%3Cpath d='M10 2.5a7.5 7.5 0 0 0 0 15 7.5 7.5 0 0 0 0-15v4a3.5 3.5 0 0 1 0 7 3.5 3.5 0 0 1 0-7'/%3E%3C/svg%3E");
}
.oo-ui-icon-clear {
background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 20 20'%3E%3Ctitle%3Eclear%3C/title%3E%3Cpath d='M10 0a10 10 0 1 0 10 10A10 10 0 0 0 10 0zm5.66 14.24-1.41 1.41L10 11.41l-4.24 4.25-1.42-1.42L8.59 10 4.34 5.76l1.42-1.42L10 8.59l4.24-4.24 1.41 1.41L11.41 10z'/%3E%3C/svg%3E");
}
.mw-widget-dateInputWidget-handle {
background-color: var(--ooui-input);
color: var(--ooui-text);
border-color: var(--ooui-input-border);
}
.mw-widget-dateInputWidget-calendar {
background-color: var(--ooui-interface);
}
.mw-widget-dateInputWidget.oo-ui-widget-enabled .mw-widget-dateInputWidget-handle:hover {
border-color: var(--ooui-input-border--hover);
}
.mw-widget-calendarWidget {
border-color: var(--ooui-interface-border);
}
.mw-widget-calendarWidget:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.mw-widget-calendarWidget-day,
.mw-widget-calendarWidget-day-heading {
color: var(--ooui-text);
}
.mw-widget-calendarWidget-day-additional {
color: var(--ooui-text);
opacity: 0.67;
}
.mw-widget-calendarWidget-day-today {
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.mw-widget-calendarWidget-item:hover {
background-color: var(--ooui-progressive);
}
.mw-widget-calendarWidget-item-selected {
background-color: var(--ooui-progressive--hover);
}
.mw-widgets-datetime-calendarWidget {
background-color: var(--ooui-interface);
border-color: var(--ooui-interface-border);
}
.mw-widgets-datetime-calendarWidget:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent), 0 2px 2px 0 rgba(0, 0, 0, 0.25);
}
.mw-widgets-datetime-calendarWidget-grid .mw-widgets-datetime-calendarWidget-cell.mw-widgets-datetime-calendarWidget-extra .oo-ui-buttonElement-button .oo-ui-labelElement-label {
color: var(--subtle-color);
}
.mw-widgets-datetime-calendarWidget-grid .mw-widgets-datetime-calendarWidget-cell.mw-widgets-datetime-calendarWidget-selected .oo-ui-buttonElement-button {
background-color: var(--ooui-progressive--hover);
}
.mw-widgets-datetime-dateTimeInputWidget-handle {
background-color: var(--ooui-input);
color: var(--ooui-text);
border-color: var(--ooui-input-border);
}
.mw-widgets-datetime-dateTimeInputWidget.oo-ui-widget-enabled.mw-widgets-datetime-dateTimeInputWidget-handle:hover {
border-color: var(--ooui-input-border--hover);
}
.mw-widgets-datetime-dateTimeInputWidget.oo-ui-widget-enabled:hover input,
.mw-widgets-datetime-dateTimeInputWidget.oo-ui-widget-enabled:hover textarea {
border-color: var(--ooui-input-border--hover);
}
.mw-widgets-datetime-dateTimeInputWidget.oo-ui-widget-enabled .mw-widgets-datetime-dateTimeInputWidget-editField:hover {
background-color: var(--ooui-normal);
}
.ve-activated .ve-init-mw-desktopArticleTarget-originalContent #catlinks:hover {
background: var(--ooui-normal--hover);
}
.ve-ui-overlay {
font-family: inherit;
}
.oo-ui-toolbar-position-top .ve-ui-toolbarDialog-position-above {
border-top-color: var(--body-mid);
}
.ve-ce-branchNode-blockSlug,
.ve-ce-branchNode-newSlug {
outline-color: var(--body-border);
background-color: var(--ooui-interface);
}
.ve-ui-specialCharacterPage h3 {
color: var(--byline-color);
}
.ve-ui-specialCharacterPage-character {
border-color: var(--body-mid);
}
.ve-ui-specialCharacterPage-character:hover {
border-color: var(--body-dark);
}
.ve-ce-linkAnnotation.ve-ce-annotation-active {
box-shadow: 0 0 0 1px var(--body-mid);
background: none;
}
.ve-ui-desktopContext .ve-ui-linkContextItem .ve-ui-linkContextItem-label {
border-color: var(--body-border);
}
.ve-ui-mwHelpPopupTool-version-label,
.ve-ui-mwHelpPopupTool-version-link,
.ve-ui-mwHelpPopupTool-version-date {
color: var(--byline-color);
}
.ve-ce-tableCellableNode {
border-color: var(--body-mid);
}
.ve-ce-mwReferencesListNode-muted {
color: var(--byline-color);
}
.ve-ui-mwTemplatePage-description,
.ve-ui-mwParameterPage-label,
.ve-ui-mwParameterPage-description-required,
.ve-ui-mwParameterPage-description-deprecated {
color: var(--byline-color);
}
.mw-widget-titleWidget-menu .mw-widget-titleOptionWidget-description {
color: var(--byline-color);
}
.ve-ui-mwGalleryDialog-menuLayout > .oo-ui-menuLayout-menu,
.ve-ui-mwGalleryDialog-innerMenuLayout > .oo-ui-menuLayout-menu,
.ve-ui-mwGalleryDialog .ve-ui-mwGalleryDialog-image-container,
.ve-ui-targetWidget {
border-color: var(--body-border);
}
.ve-ui-targetWidget:not(.oo-ui-pendingElement-pending) {
background-color: var(--body-main);
}
.ve-ui-mwSaveDialog {
color: var(--ooui-text);
}
.ve-ui-mwSaveDialog-options {
background-color: var(--ooui-interface);
border-color: var(--body-border);
}
.ve-ui-mwSaveDialog-summary {
background-color: var(--ooui-input);
}
.ve-ui-mwSaveDialog-editSummary-count {
border-color: var(--body-border);
}
.ve-ui-mwSaveDialog-license {
color: var(--byline-color);
}
.ve-ui-mwReferenceContextItem-muted {
color: var(--byline-color);
}
.ve-ui-mwNoticesPopupTool-items > div:not(:first-child),
.ve-ui-mwHelpPopupTool-item:not(:first-child) {
border-color: var(--body-border);
}
.ve-ui-mwTransclusionOutlineControlsWidget {
background-color: var(--ooui-interface);
border-top-color: var(--body-border);
}
.ve-ui-mwTransclusionOutlineTemplateWidget-sticky {
background-color: var(--ooui-interface);
}
.ve-ui-mwTransclusionOutlineTemplateWidget .ve-ui-mwTransclusionOutlineParameterWidget.oo-ui-optionWidget-highlighted {
color: var(--ooui-text);
}
.ve-ui-mwTransclusionOutlineTemplateWidget-no-template-parameters {
color: var(--subtle-color);
}
.ve-ui-mwParameterPage-undocumentedLabel {
color: var(--subtle-color);
}
.ve-ui-mwTwoPaneTransclusionDialogLayout > .oo-ui-menuLayout-menu {
border-right: var(--body-border);
}
.ve-ui-mwParameterPage-doc-required,
.ve-ui-mwParameterPage-doc-deprecated,
.ve-ui-mwParameterPage-inlineDescription .ve-ui-mwParameterPage-doc-example {
color: var(--byline-color);
}
.ve-ui-expandableContent-toggle {
background-color: var(--ooui-interface);
}
.ve-ui-expandableContent-fade {
background: linear-gradient(to right, rgba(255, 255, 255, 0) 0, var(--ooui-interface) 90%);
}
.ve-ui-commandHelpDialog-shortcut > kbd,
.ve-ui-commandHelpDialog-sequence > kbd {
background-color: var(--keypress-background);
color: var(--keypress-color);
border-color: var(--keypress-border);
box-shadow: none;
text-shadow: none;
}
.ve-init-mw-desktopArticleTarget-toolbarPlaceholder-floating .ve-init-mw-desktopArticleTarget-toolbarPlaceholder-bar {
background: var(--ooui-interface);
}
.ve-init-mw-desktopArticleTarget-toolbarPlaceholder-bar {
border-bottom-color: var(--body-mid);
}
figure[typeof~='mw:File/Thumb'],
figure[typeof~='mw:File/Frame'],
figure[typeof~='mw:Image/Thumb'],
figure[typeof~='mw:Video/Thumb'],
figure[typeof~='mw:Image/Frame'],
figure[typeof~='mw:Video/Frame'] {
border: none;
background-color: var(--thumb-bg);
}
figure[typeof~='mw:File/Thumb'] > a:first-child > *:first-child:not( .mw-broken-media ),
figure[typeof~='mw:File/Frame'] > a:first-child > *:first-child:not( .mw-broken-media ),
figure[typeof~='mw:Image/Thumb'] > a:first-child > *:first-child:not( .mw-broken-media ),
figure[typeof~='mw:Video/Thumb'] > a:first-child > *:first-child:not( .mw-broken-media ),
figure[typeof~='mw:Image/Frame'] > a:first-child > *:first-child:not( .mw-broken-media ),
figure[typeof~='mw:Video/Frame'] > a:first-child > *:first-child:not( .mw-broken-media ) {
border: none;
background: var(--thumb-bg);
}
figure[typeof~='mw:File/Thumb'] > figcaption,
figure[typeof~='mw:File/Frame'] > figcaption,
figure[typeof~='mw:Image/Thumb'] > figcaption,
figure[typeof~='mw:Video/Thumb'] > figcaption,
figure[typeof~='mw:Image/Frame'] > figcaption,
figure[typeof~='mw:Video/Frame'] > figcaption {
border: none;
background-color: var(--thumb-caption-bg);
padding: 4px 6px;
}
:root {
--keypress-background: #eee;
--keypress-border: #ccc;
--keypress-color: #333;
}
.archivelist {
background-color: var(--body-light);
border: solid 1px var(--body-border);
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
float: right;
margin: 5px;
padding: 5px;
text-align: center;
width: 120px;
}
.shortcut {
border: 1px solid var(--body-border);
background: var(--body-light);
float: right;
font-size: 0.8em;
margin: 0.5em 0em 0.5em 1em;
padding: 0.5em;
text-align: center;
}
.hatnote,
.seealso {
font-style: italic;
}
.hatnote i,
.seealso i {
font-style: normal;
}
div.hatnote,
div.seealso {
margin: 0.5em 1.6em;
}
div.hatnote + div.hatnote,
div.hatnote + div.seealso,
div.seealso + div.hatnote,
div.seealso + div.seealso {
margin-top: -0.5em;
}
.keypress {
background: var(--keypress-background);
color: var(--keypress-color);
font-family: inherit;
border: 1px solid var(--keypress-border);
border-radius: 2px;
font-size: 0.9em;
margin: 0 0.1em;
padding: 0.1em 0.4em;
white-space: nowrap;
}
:root {
--documentation-background: #f9fafa;
--documentation-link-color: #e4eaee;
--documentation-headers-color: #fff;
--documentation-header-background: #949eaa;
--documentation-subheader-background: #808c9a;
--documentation-border: #e4eaee;
}
.documentation {
background: var(--documentation-background);
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
margin: 1em 0;
}
.documentation pre,
.documentation code {
background-color: var(--documentation-background);
border-color: var(--documentation-border);
}
.documentation h2,
.documentation hr {
border-color: var(--documentation-border);
}
.documentation-header {
color: var(--documentation-headers-color);
background: var(--documentation-header-background);
font-weight: bold;
padding: 1em 1.5em;
}
.documentation-title {
font-size: 1.25em;
}
.documentation-subheader {
color: var(--documentation-headers-color);
background: var(--documentation-subheader-background);
padding: 0.5em 1.5em;
}
.documentation-subheader a,
.documentation-subheader a:visited,
.documentation-subheader a:active {
color: var(--documentation-link-color);
}
.documentation-documentation,
.documentation-links {
font-size: 0.85em;
}
.documentation-content {
padding: 1em 1.5em;
}
.mw-templatedata-doc-params dl:not(:empty) {
column-count: 3;
border-top: 1px solid var(--body-border);
margin-bottom: 0.5em;
}
.mw-templatedata-doc-params dt::after {
content: ":";
}
.mw-templatedata-doc-params dd,
.mw-templatedata-doc-params dt {
margin: 0.1em 2em;
min-width: auto;
}
.mw-templatedata-doc-muted {
color: var(--subtle-color);
font-style: italic;
}
:root {
--infobox-text-color: var(--text-color);
}
ol.references,
.reflist {
font-size: 90%;
}
.reflist {
list-style-type: decimal;
}
.reflist .references {
font-size: 100%;
list-style-type: inherit;
}
.reflist-lower-alpha {
list-style-type: lower-alpha;
}
ol.references li:target,
sup.reference:target {
background-color: var(--body-light);
}
.hideQuotes .refhide {
display: none;
}
:root {
--messagebox-obsolete-background: #cfcfcf;
--messagebox-obsolete-border: #464646;
--messagebox-obsolete-color: var(--text-color);
--messagebox-obsolete-link-color: #6c6c6c;
--messagebox-info-background: #ebebeb;
--messagebox-info-border: #898989;
--messagebox-info-color: var(--text-color);
--messagebox-info-link-color: #6c6c6c;
--messagebox-action-background: #c7e8fa;
--messagebox-action-border: #0b5884;
--messagebox-action-color: var(--text-color);
--messagebox-action-link-color: #03436b;
--messagebox-warn-background: #dfc0ba;
--messagebox-warn-border: #861c10;
--messagebox-warn-color: var(--text-color);
--messagebox-warn-link-color: #8e221a;
--messagebox-safe-background: #d8f0d3;
--messagebox-safe-border: #1b8408;
--messagebox-safe-color: var(--text-color);
--messagebox-safe-link-color: #1b8408;
--messagebox-disambig-background: #ebebeb;
--messagebox-disambig-border: #898989;
--messagebox-disambig-color: var(--text-color);
--messagebox-disambig-link-color: #6c6c6c;
--messagebox-discord-background: #5865f2;
--messagebox-discord-border: #4c57d0;
--messagebox-discord-link-color: #d2e5fc;
}
.mw-message-box,
.mw-message-box-error,
.mw-message-box-warning,
.mw-message-box-success,
.usermessage {
color: var(--text-color);
}
.messagebox {
width: 65%;
margin: 0.5em auto;
border-left: 15px solid;
border-color: var(--body-dark);
background-color: var(--body-light);
box-sizing: border-box;
}
.messagebox.obsolete {
background-color: var(--messagebox-obsolete-background);
border-color: var(--messagebox-obsolete-border);
color: var(--messagebox-obsolete-color);
}
.messagebox.obsolete a,
.messagebox.obsolete a:visited,
.messagebox.obsolete a:active {
color: var(--messagebox-obsolete-link-color);
}
.messagebox.info {
background-color: var(--messagebox-info-background);
border-color: var(--messagebox-info-border);
color: var(--messagebox-info-color);
}
.messagebox.info a,
.messagebox.info a:visited,
.messagebox.info a:active {
color: var(--messagebox-info-link-color);
}
.messagebox.action {
background-color: var(--messagebox-action-background);
border-color: var(--messagebox-action-border);
color: var(--messagebox-action-color);
}
.messagebox.action a,
.messagebox.action a:visited,
.messagebox.action a:active {
color: var(--messagebox-action-link-color);
}
.messagebox.warn {
background-color: var(--messagebox-warn-background);
border-color: var(--messagebox-warn-border);
color: var(--messagebox-warn-color);
}
.messagebox.warn a,
.messagebox.warn a:visited,
.messagebox.warn a:active {
color: var(--messagebox-warn-link-color);
}
.messagebox.safe {
background-color: var(--messagebox-safe-background);
border-color: var(--messagebox-safe-border);
color: var(--messagebox-safe-color);
}
.messagebox.safe a,
.messagebox.safe a:visited,
.messagebox.safe a:active {
color: var(--messagebox-safe-link-color);
}
.messagebox.disambig {
background-color: var(--messagebox-disambig-background);
border-color: var(--messagebox-disambig-border);
color: var(--messagebox-disambig-color);
}
.messagebox.disambig a,
.messagebox.disambig a:visited,
.messagebox.disambig a:active {
color: var(--messagebox-disambig-link-color);
}
.messagebox.discord {
background-color: var(--messagebox-discord-background);
border-color: var(--messagebox-discord-border);
color: #fff;
}
.messagebox.discord a,
.messagebox.discord a:visited,
.messagebox.discord a:active {
color: var(--messagebox-discord-link-color);
}
.messagebox.discord a.external,
.messagebox.discord a:visited.external,
.messagebox.discord a:active.external {
font-style: italic;
}
.messagebox.stub {
width: 40%;
}
.messagebox.hasdialogue {
padding: 0 10px;
width: auto;
}
:root {
--byline-arrow-filter: invert(29%) sepia(0%) saturate(376%) hue-rotate(172deg) brightness(87%) contrast(80%);
--tile-border-color: #cabe9b;
--tile-background-color: #f9f3eb;
--tile-link-button-color: #f5e9db;
--tile-link-button-highlight-color: #dfccb0;
--tile-dark-color: #fff;
--tile-dark-bg: #5d6773;
--tile-dark-link-color: #ccc;
--tile-dark-byline-color: rgba(255, 255, 255, 0.7);
--tile-dark-header-color: #fff;
}
.tile {
background: var(--tile-background-color);
border: 1px solid var(--tile-border-color);
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
padding: 1.5em 2em 1em;
max-width: 40em;
}
.tile h2 {
font-size: 1.4em;
font-weight: bold;
border: none;
margin: 0 0 0.4em;
}
.tile .byline + h2 {
margin-top: -0.5em;
}
.tile.dark {
color: var(--tile-dark-color);
background: var(--tile-dark-bg);
border: none;
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.3);
}
.tile.dark h2 {
color: var(--tile-dark-header-color);
}
.tile.dark a {
color: var(--tile-dark-link-color);
}
.tile.dark .byline {
color: var(--tile-dark-byline-color);
}
.byline {
font-size: 0.9em;
color: var(--byline-color);
}
.byline a {
color: var(--byline-color);
}
.tile-row {
display: flex;
flex-flow: row wrap;
margin-bottom: 1em;
}
.tile-halves {
display: flex;
flex-flow: row wrap;
border: 1px solid var(--tile-border-color);
background: var(--tile-background-color);
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
}
.tile-halves h2 {
font-size: 1.4em;
font-weight: bold;
border: none;
margin: 0 0 0.4em;
}
.tile-halves .byline + h2 {
margin-top: -0.5em;
}
.tile-top {
width: 100%;
padding: 1.3rem 1.5rem 0.6rem;
}
.tile-top.tile-image {
display: flex;
align-items: center;
background-color: var(--byline-color);
overflow: hidden;
padding: 0;
height: 13vw;
max-height: 12em;
transition: 0.4s ease-out;
}
.tile-halves:hover .tile-top.tile-image img {
transform: scale(1.1);
transition: 0.5s ease-out;
}
.tile-top.tile-image a {
width: 100%;
}
.tile-top.tile-image img {
width: 100%;
object-fit: cover;
max-height: 200px;
transition: 0.4s ease-out;
}
.tile-bottom {
background: var(--tile-background-color);
border-top: 1px solid var(--tile-border-color);
width: 100%;
padding: 1rem 1.5rem 0.6rem;
}
.tile-bottom.link-button {
align-self: flex-end;
padding: 0;
}
.tile-bottom.link-button a {
display: block;
text-align: center;
padding: 0.75em 1.5em 0.8em;
text-decoration: none;
}
.tile-bottom.read-more {
background: var(--tile-link-button-color);
transition: 0.3s ease-out;
}
.tile-bottom.read-more a {
color: var(--byline-color);
font-weight: bold;
text-align: right;
}
.tile-bottom.read-more:hover {
background: var(--tile-link-button-highlight-color);
}
.tile-bottom.read-more:hover .arrow {
transform: translateX(50%);
}
.tile-bottom.read-more .arrow {
filter: var(--byline-arrow-filter);
margin-left: 0.4em;
transition: 0.3s ease-out;
}
body.page-Main_Page.action-view .catlinks,
body.page-Main_Page.action-view #contentSub,
body.page-Main_Page.action-view #firstHeading,
body.page-Main_Page.action-view #siteNotice {
display: none;
}
body.page-Main_Page .mw-parser-output {
max-width: 75em;
margin: 0 auto;
}
body.page-Main_Page.action-view .catlinks,
body.page-Main_Page.action-view #contentSub,
body.page-Main_Page.action-view #siteNotice {
display: none;
}
.mainpage-header {
display: flex;
margin: 2.6em 1.75em 1.5em;
}
.mainpage-header .header-intro {
flex: 2;
}
.mainpage-header .header-intro h1 {
font-size: 2.5em;
font-weight: bold;
border: none;
margin: 0 0 0.15em;
}
.mainpage-header .header-intro p {
font-size: 1.1em;
line-height: 1.7em;
}
.mainpage-header .header-stats {
flex: 1;
display: flex;
justify-content: center;
align-items: center;
margin-top: -1em;
}
.mainpage-body {
display: grid;
grid-template-areas: "event event event" "update update update" "content content content" "left left right";
gap: 0.9rem;
grid-template-columns: repeat(3, 1fr);
}
.mainpage-body h2 a {
color: var(--text-color);
}
.mainpage-body .tile {
padding-left: 1.75em;
padding-right: 1.75em;
max-width: 100%;
}
.mainpage-body .tile-row {
width: 100%;
margin-bottom: 0;
}
.mainpage-body .tile-row {
display: grid;
gap: 0.9rem;
}
.mainpage-contents.tile-row {
display: flex;
}
.mainpage-contents.tile-row .tile-top {
height: 6.5rem;
}
.mainpage-left {
grid-area: left;
flex: 2;
display: flex;
flex-flow: column wrap;
}
.mainpage-left > * {
margin: 0 0 0.9rem;
}
.mainpage-right {
grid-area: right;
flex: 1;
display: flex;
flex-flow: column wrap;
}
.mainpage-right > * {
margin: 0 0 0.9rem;
}
.arrow {
background: url('filepath://White-chevron.svg') no-repeat;
display: inline-block;
height: 0.7rem;
width: 0.45rem;
vertical-align: middle;
}
.arrow.dark {
filter: invert(80%);
}
.mainpage-contents {
grid-area: content;
grid-template-columns: repeat(6, 1fr);
}
.mainpage-contents .tile-halves {
flex: 1;
}
.mainpage-contents .tile-top {
height: 4.5rem;
position: relative;
}
.mainpage-contents h2 {
margin: 0;
padding: 0;
}
.mainpage-contents .tile-bottom.link-button a {
padding: 0.75em 0.2em;
}
.popular-pages ul {
display: grid;
grid-template-columns: repeat(3, 1fr);
grid-gap: 0.6em;
margin: 1em 0 0.7em 0;
}
.mp-popular-page-light {
display: flex;
align-items: center;
background-color: var(--button-background);
transition: 100ms;
}
.mp-popular-page-light a {
flex: 1;
display: block;
color: #fff;
font-weight: bold;
text-align: center;
text-decoration: none;
padding: 0.7em 1em;
}
.mp-popular-page-light:hover {
filter: brightness(115%);
transition: 100ms;
}
.mainpage-social {
border: none;
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.3);
}
.mainpage-social .tile-top {
display: flex;
align-items: center;
padding: 1em 1.5em;
}
.mainpage-social .tile-top a {
flex: 1;
position: relative;
text-decoration: none;
}
.mainpage-social .tile-top a:hover .arrow {
transform: translateX(50%);
}
.mainpage-social .tile-bottom {
border: none;
padding: 1em 1.75em;
}
.mainpage-social .tile-bottom p {
color: #fff;
font-weight: bold;
font-size: 0.9em;
text-align: center;
text-transform: uppercase;
letter-spacing: 0.03em;
margin: 0;
}
.mainpage-social .social-icon {
margin-right: 0.75em;
text-align: center;
width: 60px;
}
.mainpage-social .social-header {
color: #fff;
font-weight: bold;
font-size: 1.15em;
margin: 0.5em 0 -0.15em;
}
.mainpage-social .server-tagline {
color: rgba(255, 255, 255, 0.9);
margin-bottom: 0.5em;
}
.mainpage-social .arrow {
position: absolute;
top: calc(50% - .5em);
right: 0;
height: 1em;
width: 0.7em;
background-size: 0.7em 1em;
transition: 0.3s ease-out;
}
.mainpage-social.mainpage-discord .tile-top {
background: #5865f2;
}
.mainpage-social.mainpage-discord .tile-bottom {
background: #525ee0;
}
.mainpage-social.mainpage-twitter .tile-top {
background: #15202b;
}
.mainpage-social.mainpage-twitter .tile-bottom {
background: #121c26;
}
.mainpage-editing {
border: none;
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.3);
}
.mainpage-editing .tile-top {
background: #438ab5;
}
.mainpage-editing .tile-bottom {
background: #3980ab;
border: none;
padding: 0.8rem 1.5rem 0.4rem;
}
.mainpage-editing h2,
.mainpage-editing a {
color: #fff;
}
.mainpage-editing p {
color: rgba(255, 255, 255, 0.9);
}
.mainpage-editing ul {
list-style-image: url('filepath://Transparent-chevron.svg');
}
@media only screen and (max-width: 1200px) {
.mainpage-contents {
grid-template-columns: repeat(3, 1fr);
}
}
@media only screen and (max-width: 1000px) {
.mainpage-body {
grid-template-areas: "event event event" "update update update" "content content content" "left left left" "right right right";
}
.mainpage-recent-updates {
grid-template-columns: repeat(2, 1fr);
}
.mainpage-recent-updates .tile-halves:last-child {
display: none;
}
.mainpage-recent-updates .tile-halves:hover .tile-top img {
transform: scale(1.04);
}
.mainpage-recent-updates .tile-top {
height: 18vw;
min-height: 9em;
}
.mainpage-header .header-stats {
display: none;
}
.mainpage-left > *:last-child,
.mainpage-right > *:last-child {
margin-bottom: 0;
}
.popular-pages ul {
grid-template-columns: repeat(2, 1fr);
}
}
@media only screen and (max-width: 720px) {
.mainpage-recent-updates {
grid-template-columns: none;
}
.mainpage-recent-updates .tile-halves:last-child {
display: flex;
}
.mainpage-contents {
grid-template-columns: repeat(2, 1fr);
}
}
.mw-prefs-buttons {
background-color: var(--body-main);
border-top-color: var(--body-border);
box-shadow: none;
}
.mw-prefs-tabs-wrapper.oo-ui-panelLayout-framed,
.mw-prefs-tabs > .oo-ui-menuLayout-content > .oo-ui-indexLayout-stackLayout > .oo-ui-tabPanelLayout {
border-color: var(--body-border);
}
.mw-htmlform-ooui .mw-htmlform-matrix tbody tr:nth-child(even) td {
background-color: var(--body-light);
}
.mw-htmlform-ooui .mw-htmlform-matrix tbody tr:hover td {
background-color: var(--body-mid);
}
:root {
--rc-positive-color: #407813;
--rc-negative-color: #b41e0f;
}
.mw-plusminus-pos {
color: var(--rc-positive-color);
}
.mw-plusminus-neg {
color: var(--rc-negative-color);
}
.client-js .mw-recentchanges-toplinks:not(.mw-recentchanges-toplinks-collapsed) {
border-color: var(--body-border);
background-color: var(--body-light);
border-radius: 2px;
}
.mw-rcfilters-ui-filterTagMultiselectWidget-wrapper-content-title {
color: var(--text-color);
}
.mw-rcfilters-ui-filterTagMultiselectWidget-emptyFilters {
color: var(--byline-color);
}
.mw-rcfilters-ui-filterTagMultiselectWidget.oo-ui-widget-enabled .oo-ui-tagMultiselectWidget-handle {
background-color: var(--ooui-interface);
border-color: var(--ooui-interface-border);
}
.mw-rcfilters-ui-filterTagMultiselectWidget-views-select-widget.oo-ui-widget {
border-color: var(--ooui-interface-border);
}
.mw-rcfilters-collapsed .mw-rcfilters-ui-filterTagMultiselectWidget {
border-bottom-color: var(--ooui-interface-border);
}
.mw-rcfilters-ui-menuSelectWidget-footer {
background-color: var(--ooui-interface);
border-color: var(--ooui-interface-border);
}
.mw-rcfilters-ui-viewSwitchWidget label.oo-ui-labelWidget {
color: var(--byline-color);
}
.mw-rcfilters-ui-tagItemWidget-popup-content {
color: var(--ooui-text);
}
.mw-changeslist-legend,
.mw-rcfilters-ui-changesListWrapperWidget .mw-changeslist-legend {
background-color: var(--body-light);
border-color: var(--body-dark);
}
.mw-rcfilters-ui-changesListWrapperWidget-previousChangesIndicator {
border-color: var(--sidebar);
}
.client-js .mw-changeslist ul,
.client-js .mw-changeslist table.mw-enhanced-rc {
margin-left: 0;
}
.mw-rcfilters-ui-watchlistTopSectionWidget-separator {
border-color: var(--sidebar);
}
.mw-rcfilters-ui-itemMenuOptionWidget-header {
border-bottom-color: var(--ooui-interface);
background-color: var(--ooui-interface-border);
}
.mw-rcfilters-ui-itemMenuOptionWidget:not(:last-child):not(.mw-rcfilters-ui-itemMenuOptionWidget-identifier-talk) {
border-bottom-color: var(--ooui-normal-border);
}
.mw-rcfilters-ui-itemMenuOptionWidget-label-title,
.mw-rcfilters-ui-itemMenuOptionWidget-label-desc {
color: var(--text-color);
}
.mw-rcfilters-ui-filterMenuOptionWidget.oo-ui-flaggedElement-muted:not(.oo-ui-optionWidget-selected) {
background-color: var(--body-main);
}
.mw-rcfilters-ui-filterMenuOptionWidget.oo-ui-flaggedElement-muted .mw-rcfilters-ui-itemMenuOptionWidget-label-title,
.mw-rcfilters-ui-filterMenuOptionWidget.oo-ui-flaggedElement-muted .mw-rcfilters-ui-itemMenuOptionWidget-label-desc {
color: var(--subtle-color);
}
.mw-rcfilters-ui-filterMenuSectionOptionWidget {
background-color: var(--body-mid);
}
.mw-rcfilters-ui-filterMenuSectionOptionWidget-header-title.oo-ui-labelElement-label {
color: var(--ooui-text);
}
.mw-rcfilters-ui-filterMenuHeaderWidget-title {
color: var(--ooui-text);
}
.mw-rcfilters-ui-filterMenuHeaderWidget-header {
border-bottom-color: var(--ooui-interface-border);
background-color: var(--ooui-interface);
}
.mw-rcfilters-ui-itemMenuOptionWidget-view-namespaces {
border-top-color: var(--ooui-interface-border);
}
.mw-rcfilters-ui-datePopupWidget {
border-color: var(--ooui-interface-border);
}
.mw-rcfilters-ui-datePopupWidget .mw-rcfilters-ui-valuePickerWidget-title {
color: var(--byline-color);
}
.mw-rcfilters-ui-savedLinksListItemWidget-label {
color: var(--ooui-accent);
}
.client-js .mw-changeslist.mw-rcfilters-ui-changesListWrapperWidget-highlighted ul,
.client-js .mw-changeslist.mw-rcfilters-ui-changesListWrapperWidget-highlighted table.mw-enhanced-rc {
margin-left: 1.5em;
}
.page-Special_CreateAccount .mw-ui-container,
.page-Special_UserLogin .mw-ui-container {
max-width: 64rem;
margin: 0 auto;
}
.mw-number-text {
color: var(--byline-color);
}
.mw-body-content .mw-number-text h3 {
color: var(--text-color);
}
#mw-indicator-mw-helplink a {
background: none;
padding: 0;
display: flex;
align-items: center;
}
#mw-indicator-mw-helplink a::before {
content: '';
margin-right: 5px;
-webkit-mask: url("/resources/src/mediawiki.helplink/images/helpNotice.svg?46d34") no-repeat 50% 50% / contain;
mask: url("/resources/src/mediawiki.helplink/images/helpNotice.svg?46d34") no-repeat 50% 50% / contain;
background: var(--text-color);
height: 20px;
width: 20px;
}
.results-info {
color: inherit;
}
.mw-search-profile-tabs {
background-color: var(--body-mid);
border-color: transparent;
}
.search-types .current a {
color: inherit;
}
#mw-searchoptions {
background-color: var(--body-mid);
border-color: transparent;
}
#mw-searchoptions .divider {
border-color: var(--body-border);
}
#mw-searchoptions h4 {
font-family: inherit;
}
#mw-searchoptions .oo-ui-labelElement:nth-of-type(odd) {
font-weight: bold;
}
.searchresult {
line-height: 1.5;
}
.searchalttitle,
#mw-search-interwiki li {
font-size: 90%;
}
.mw-search-result-data {
color: var(--byline-color);
}
.page-Special_ListFiles a.image img {
width: inherit;
height: inherit;
}
.page-Special_ListFiles .TablePager_col_thumb {
text-align: center;
}
#editcount table[border="1"] {
background-color: var(--body-main) !important;
border-color: var(--wikitable-border) !important;
margin-top: 0.5em;
}
#editcount table[border="1"] th,
#editcount table[border="1"] td {
padding: 0.2em 0.4em;
}
#editcount table[border="1"] th {
background-color: var(--wikitable-header-bg);
border: 1px solid var(--wikitable-border);
}
#editcount table[border="1"] td {
border: 1px solid var(--wikitable-border);
}
#editcount table[border="1"] tr:nth-child(odd) {
background-color: var(--body-light);
}
.mw-echo-ui-notificationBadgeButtonPopupWidget-popup > .oo-ui-popupWidget-popup .mw-echo-ui-placeholderItemWidget {
background-color: inherit;
}
table.mw-interwikitable.body td.mw-interwikitable-local-yes {
background-color: var(--table-yes-background);
color: var(--table-yes-color);
}
.mw-protectedpages-unknown {
color: var(--byline-color);
}
.watchlistredir,
.allpagesredirect {
font-style: italic;
}
.allpagesredirect:after {
color: var(--byline-color);
content: " (redirect)";
}
.mw-apisandbox-toolbar {
background: var(--body-main);
}
.oo-ui-menuOptionWidget .mw-apisandbox-flag {
color: var(--byline-color);
}
tr.mw-abusefilter-list-disabled,
tr.mw-abusefilter-list-disabled td {
color: var(--byline-color);
}
table.mw-abuselog-details {
background: var(--wikitable-bg);
border-color: var(--wikitable-border);
}
table.mw-abuselog-details th {
background: var(--wikitable-header-bg);
}
table.mw-abuselog-details th,
table.mw-abuselog-details td {
border-color: var(--wikitable-border);
}
.mw-abusefilter-log-hidden-entry {
color: var(--subtle-color);
}
body td.mw-abusefilter-history-changed {
background: var(--table-no-background);
}
div.mw-abusefilter-editor,
#mw-abusefilter-warn-preview,
#mw-abusefilter-disallow-preview {
border-color: var(--ooui-input-border);
}
.mw-destfile-warning {
border-color: var(--warningbox-border);
color: var(--text-color);
background-color: var(--warningbox-bg);
}
span.fileinput-button {
background-color: var(--ooui-normal);
border-color: var(--ooui-normal-border);
color: var(--ooui-text);
}
ul.fileupload-results li.ful-success {
background-color: var(--successbox-bg);
}
ul.fileupload-results li.ful-success a {
color: var(--link-color);
}
ul.fileupload-results li.ful-error {
background-color: var(--errorbox-bg);
}
#t-print,
#t-permalink {
display: none;
}
#filetoc {
border-radius: 2px;
background: var(--body-mid);
border-color: transparent;
margin: 0.5em auto;
text-align: center;
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
}
li.gallerybox div.thumb {
border: none;
background-color: var(--thumb-bg);
}
.smwfact {
display: none;
}
.list-header {
background-color: var(--body-mid);
color: inherit;
}
.editOptions {
color: var(--text-color);
background-color: var(--sourceeditor-background-secondary);
border-color: var(--sourceeditor-border);
}
.mw-json th,
.mw-json td {
border-color: var(--wikitable-border);
}
.mw-json td {
background: var(--wikitable-bg);
}
.mw-json th {
background: var(--wikitable-header-bg);
}
ad703ea67282e690523565e4d2f2096c7935488c
1116
1114
2024-03-24T00:51:44Z
Merds
25
Updating CSS from [[MediaWiki:Common.less]]
css
text/css
/* <pre> */
:root {
--body-main: #feffff;
--body-light: #f2f2f2;
--body-mid: #d0bd97;
--body-dark: #e3e3e3;
--body-border: #878787;
--body-background-color: #173a4d;
--button-background: #605443;
--button-color: #fff;
--button-border: #3c352a;
--button-dark: #18140c;
--button-light: #3a301d;
--sidebar: #cfc08d;
--background-text-color: #e2dbc8;
--background-link-color: #e2bd8a;
--search-box: #efeee6;
--link-color: #936039;
--redlink-color: #ba0000;
--text-color: #2F2828;
--byline-color: #ccc;
--subtle-color: #777;
--admin-blue: #332e75;
--bearcat-green: #13592e;
--awb-purple: #933b96;
--rsw-blue: #438ab6;
--osrsw-brown: #605443;
--thumb-bg: var(--body-light);
--thumb-caption-bg: var(--body-mid);
--sourceeditor-input-background: #fff;
--sourceeditor-background: var(--body-light);
--sourceeditor-background-secondary: var(--body-light);
--sourceeditor-border: var(--body-mid);
--codemirror-gutter-background: var(--body-mid);
}
@font-face {
font-family: 'Lora';
font-weight: 400 700;
font-style: normal;
font-display: swap;
src: url('filepath://Lora.woff2') format('woff2');
}
@font-face {
font-family: 'Lora';
font-weight: 400 700;
font-style: italic;
font-display: swap;
src: url('filepath://Lora-Italic.woff2') format('woff2');
}
:root {
--base-text-color: #36414f;
--base-heading-color: #444e5a;
--base-heading-border: #e4eaee;
--mw-code-background-color: #ddd4bb;
--body-background-image: url('filepath://Wiki_background.jpg');
}
#mw-page-base {
background: none;
}
.mw-body {
background-color: var(--body-main);
color: var(--text-color);
border-color: transparent;
box-shadow: 0 0 7px rgba(0, 0, 0, 0.15);
margin-top: 0;
}
h1,
h2,
h3,
h4,
h5,
h6 {
color: var(--text-color);
}
h1,
h2 {
border-color: var(--sidebar);
}
.mw-body h1,
.mw-body-content h1,
.mw-body-content h2,
.mw-body-content h3,
.mw-body-content h4,
.mw-body-content h5,
.mw-body-content h6 {
font-family: 'Lora', 'Palatino', 'Georgia', serif;
}
.mw-parser-output h2:first-of-type {
clear: left;
}
.mw-footer {
color: var(--background-text-color);
}
.mw-footer li {
color: var(--background-text-color);
}
.mw-footer a,
.mw-footer a:active,
.mw-footer a:visited {
color: var(--background-link-color);
}
::placeholder {
color: var(--subtle-color);
}
a {
color: var(--link-color);
}
a:visited,
a:active {
color: var(--link-color);
}
a.new {
color: var(--redlink-color);
}
a.new:visited {
color: var(--redlink-color);
}
.mw-parser-output a.extiw,
.mw-parser-output a.external {
color: var(--link-color);
}
.mw-parser-output a.extiw:visited,
.mw-parser-output a.external:visited,
.mw-parser-output a.extiw:active,
.mw-parser-output a.external:active {
color: var(--link-color);
}
.jsPurgeLink a.external {
color: var(--link-color);
}
:root {
--errorbox-bg: #feecea;
--errorbox-border: #ee4231;
--warningbox-bg: #fef9de;
--warningbox-border: #f9d000;
--successbox-bg: #ecf8e3;
--successbox-border: #6bc71f;
}
.mw-message-box-error,
.errorbox,
.mw-message-box-warning,
.warningbox,
.mw-message-box-success,
.successbox,
.usermessage {
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
}
.mw-message-box-error,
.errorbox {
background-color: var(--errorbox-bg);
border-color: var(--errorbox-border);
}
.mw-message-box-warning,
.warningbox,
.usermessage {
background-color: var(--warningbox-bg);
border-color: var(--warningbox-border);
}
.mw-message-box-success,
.successbox {
background-color: var(--successbox-bg);
border-color: var(--successbox-border);
}
.catlinks {
background: var(--body-light);
border: 1px solid var(--body-dark);
padding: 8px 15px;
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
}
.catlinks li {
border-color: var(--body-mid);
}
.filehistory a img,
#file img {
background: url("data:image/svg+xml,%3C%3Fxml version='1.0' encoding='UTF-8'%3F%3E%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16'%3E%3Cpath d='M0 0h8v16h8V8H0z' opacity='.13'/%3E%3C/svg%3E") repeat;
}
#file img:hover {
background: none;
}
.mw-highlight {
background: none;
}
.mw-highlight .linenos {
background-color: var(--mw-code-background-color);
color: var(--byline-color);
}
.mw-highlight a:hover .linenos,
.mw-highlight .hll a .linenos {
color: var(--text-color);
}
.mw-content-ltr.mw-highlight-lines pre,
.mw-content-ltr.content .mw-highlight-lines pre {
box-shadow: inset 2.75em 0 0 var(--mw-code-background-color);
}
#pagehistory ul {
list-style: none;
margin: 0;
}
#pagehistory li {
border: 1px solid transparent;
padding: 1px 10px;
margin: 2px 0;
}
#pagehistory li.selected {
background-color: var(--body-light);
color: inherit;
border: 1px dashed var(--body-border);
outline: none;
}
#mw-history-compare > div:first-of-type {
position: -webkit-sticky;
position: sticky;
top: 0;
background-color: var(--body-main);
border-bottom: 1px solid var(--body-dark);
padding: 0.25em 0;
}
.wgl-stickyheader #mw-history-compare > div:first-of-type {
top: 2.5rem;
}
.autocomment,
.autocomment a,
.autocomment a:visited {
color: var(--link-color);
}
li span.deleted,
span.history-deleted {
color: var(--byline-color);
}
.mw-usertoollinks-contribs-no-edits,
.mw-usertoollinks-contribs-no-edits:visited {
color: var(--redlink-color);
}
.CategoryTreeToggle {
color: var(--link-color);
}
body.wgl-stickyheader.action-view .mw-headline:target::before {
display: block;
content: '';
margin-top: -3rem;
height: 3rem;
visibility: hidden;
pointer-events: none;
}
.mw-mmv-post-image {
color: var(--text-color);
background-color: var(--body-main);
}
.mw-mmv-image-metadata {
border-top-color: var(--body-mid);
background-color: var(--body-light);
}
.mw-mmv-dialog,
.mw-mmv-dialog .mw-mmv-dialog-down-arrow,
.mw-mmv-options-dialog .mw-mmv-dialog-down-arrow {
background-color: var(--body-light);
box-shadow: none;
}
.mw-mmv-options-enable-alert {
background-color: var(--body-light);
color: var(--text-color);
}
.mw-mmv-options-dialog-header,
.mw-mmv-options-text-header,
.mw-mmv-options-text-body,
.mw-mmv-options-enable-alert,
.mw-mmv-options-dialog .mw-mmv-disable-confirmation .mw-mmv-options-dialog-header,
.mw-mmv-options-dialog .mw-mmv-disable-confirmation .mw-mmv-options-text-header {
color: var(--text-color);
}
.mw-revslider-container {
border-color: var(--sidebar);
}
.mw-revslider-slider-wrapper {
border-top-color: var(--sidebar);
}
.mw-ui-button {
background-color: var(--ooui-normal);
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
}
.mw-ui-button:not(:disabled):hover,
.mw-ui-button:not(:disabled):active {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
}
.mw-ui-button:not(:disabled):focus {
color: var(--ooui-text);
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent), inset 0 0 0 2px #fff;
}
.mw-ui-button:not(:disabled):visited {
color: var(--ooui-text);
}
.mw-ui-button.mw-ui-progressive:not(:disabled) {
background-color: var(--ooui-progressive);
color: #fff;
border-color: var(--ooui-progressive);
}
.mw-ui-button.mw-ui-progressive:not(:disabled):hover {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
}
.mw-ui-button.mw-ui-progressive:not(:disabled):focus {
box-shadow: inset 0 0 0 1px var(--ooui-accent), inset 0 0 0 2px #fff;
}
.mw-ui-button.mw-ui-progressive:not(:disabled):active,
.mw-ui-button.mw-ui-progressive:not(:disabled).is-on {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
box-shadow: none;
}
.mw-ui-button.mw-ui-destructive:not( :disabled ) {
color: #fff;
}
.mw-ui-button.mw-ui-quiet,
.mw-ui-button.mw-ui-quiet.mw-ui-progressive,
.mw-ui-button.mw-ui-quiet.mw-ui-destructive {
color: var(--text-color);
}
input[type='checkbox']:hover + .mw-ui-button.mw-ui-quiet,
input[type='checkbox']:hover + .mw-ui-button.mw-ui-quiet.mw-ui-progressive,
input[type='checkbox']:hover + .mw-ui-button.mw-ui-quiet.mw-ui-destructive,
.mw-ui-button.mw-ui-quiet:hover,
.mw-ui-button.mw-ui-quiet.mw-ui-progressive:hover,
.mw-ui-button.mw-ui-quiet.mw-ui-destructive:hover {
background-color: rgba(0, 24, 73, 0.02745098);
color: var(--text-color);
border-color: transparent;
}
input[type='checkbox']:focus + .mw-ui-button.mw-ui-quiet,
input[type='checkbox']:focus + .mw-ui-button.mw-ui-quiet.mw-ui-progressive,
input[type='checkbox']:focus + .mw-ui-button.mw-ui-quiet.mw-ui-destructive,
.mw-ui-button.mw-ui-quiet:focus,
.mw-ui-button.mw-ui-quiet.mw-ui-progressive:focus,
.mw-ui-button.mw-ui-quiet.mw-ui-destructive:focus {
color: var(--text-color);
}
input[type='checkbox']:active + .mw-ui-button.mw-ui-quiet,
input[type='checkbox']:active + .mw-ui-button.mw-ui-quiet.mw-ui-progressive,
input[type='checkbox']:active + .mw-ui-button.mw-ui-quiet.mw-ui-destructive,
.mw-ui-button.mw-ui-quiet:active,
.mw-ui-button.mw-ui-quiet.mw-ui-progressive:active,
.mw-ui-button.mw-ui-quiet.mw-ui-destructive:active {
background-color: rgba(0, 36, 73, 0.08235294);
color: var(--text-color);
border-color: #72777d;
}
.mw-ui-input {
background-color: var(--ooui-input);
color: var(--text-color);
border-color: var(--ooui-input-border);
}
.mw-ui-input:hover {
border-color: var(--ooui-input-border--hover);
}
.mw-ui-input::placeholder {
color: var(--byline-color);
}
.mw-content-ltr .redirectText li:first-child {
padding: 0;
background: 0;
}
.mw-content-ltr .redirectText li:first-child::before {
content: '';
background: currentcolor;
-webkit-mask: url("filepath://Redirect-arrow.svg") no-repeat 50% 50% / contain;
mask: url("filepath://Redirect-arrow.svg") no-repeat 50% 50% / contain;
display: inline-block;
width: 47px;
height: 20px;
}
:root {
--wikitable-header-bg: var(--body-dark);
--wikitable-border: var(--body-border);
--wikitable-bg: var(--body-light);
--wikitable-bg-lighter: #e9e3d6;
--wikitable-color: var(--text-color);
--table-na-background: rgba(255, 255, 255, 0.3);
--table-na-color: var(--subtle-color);
--table-yes-background: #c3e8a3;
--table-yes-color: #2e5e05;
--table-no-background: #fbc0ba;
--table-no-color: #801c13;
--table-maybe-background: #fcea94;
--table-maybe-color: #786300;
}
.wikitable {
background: var(--wikitable-bg);
color: var(--wikitable-color);
border-color: var(--wikitable-border);
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
}
.wikitable > tr > th,
.wikitable > tr > td,
.wikitable > * > tr > th,
.wikitable > * > tr > td {
border-color: var(--wikitable-border);
}
.wikitable > tr > th.table-noborder,
.wikitable > tr > td.table-noborder,
.wikitable > * > tr > th.table-noborder,
.wikitable > * > tr > td.table-noborder {
border-left-style: hidden;
border-right-style: hidden;
padding-left: 0;
padding-right: 0;
}
.wikitable > tr > th,
.wikitable > * > tr > th {
background-color: var(--wikitable-header-bg);
}
.tabber .wikitable {
box-shadow: none;
}
.mw_metadata td,
.mw_metadata th {
border-color: var(--wikitable-border);
}
.mw_metadata th {
background-color: var(--wikitable-header-bg);
}
.mw_metadata td {
background-color: var(--wikitable-bg);
}
.mw-datatable {
border-color: var(--wikitable-border);
}
.mw-datatable td,
.mw-datatable th {
border-color: var(--wikitable-border);
}
.mw-datatable th {
background-color: var(--wikitable-header-bg);
}
.mw-datatable td {
background-color: var(--wikitable-bg);
}
.mw-datatable tr:hover td {
background-color: var(--wikitable-bg);
}
table.alternating-rows tr:nth-child(odd),
table.alternating-cols td:nth-child(odd) {
background: var(--wikitable-alternating-bg);
}
.table-na {
background: var(--table-na-background);
color: var(--table-na-color);
vertical-align: middle;
text-align: center;
}
.table-yes {
background: var(--table-yes-background);
color: var(--table-yes-color);
}
.table-positive {
background: var(--table-yes-background);
}
.table-no {
background: var(--table-no-background);
color: var(--table-no-color);
}
.table-negative {
background: var(--table-no-background);
}
.table-maybe {
background: var(--table-maybe-background);
color: var(--table-maybe-color);
}
#mw-allmessagestable .am_actual,
#mw-allmessagestable .am_default {
background-color: var(--wikitable-bg);
}
#mw-allmessagestable .am_default:hover,
#mw-allmessagestable .am_actual:hover,
#mw-allmessagestable tbody:hover td {
background-color: var(--wikitable-bg-lighter);
}
table.wikitable td.no-cell-spacing {
padding: 0;
height: 0;
}
table.wikitable td.no-cell-spacing table {
margin: -1px;
width: calc(100% + 2px);
height: calc(100% + 2px);
}
.plainlist ol,
.plainlist ul {
margin: 0;
}
.plainlist li {
margin-bottom: 0;
list-style: none;
}
table.align-right-1 td:nth-of-type(1),
table.align-right-2 td:nth-of-type(2),
table.align-right-3 td:nth-of-type(3),
table.align-right-4 td:nth-of-type(4),
table.align-right-5 td:nth-of-type(5),
table.align-right-6 td:nth-of-type(6),
table.align-right-7 td:nth-of-type(7),
table.align-right-8 td:nth-of-type(8),
table.align-right-9 td:nth-of-type(9),
table.align-right-10 td:nth-of-type(10),
table.align-right-11 td:nth-of-type(11),
table.align-right-12 td:nth-of-type(12),
table.align-right-13 td:nth-of-type(13),
table.align-right-14 td:nth-of-type(14),
table.align-right-15 td:nth-of-type(15),
table.align-right-16 td:nth-of-type(16),
table.align-right-17 td:nth-of-type(17),
table.align-right-18 td:nth-of-type(18),
table.align-right-19 td:nth-of-type(19),
table.align-right-20 td:nth-of-type(20) {
text-align: right;
}
table.align-center-1 td:nth-of-type(1),
table.align-center-2 td:nth-of-type(2),
table.align-center-3 td:nth-of-type(3),
table.align-center-4 td:nth-of-type(4),
table.align-center-5 td:nth-of-type(5),
table.align-center-6 td:nth-of-type(6),
table.align-center-7 td:nth-of-type(7),
table.align-center-8 td:nth-of-type(8),
table.align-center-9 td:nth-of-type(9),
table.align-center-10 td:nth-of-type(10),
table.align-center-11 td:nth-of-type(11),
table.align-center-12 td:nth-of-type(12),
table.align-center-13 td:nth-of-type(13),
table.align-center-14 td:nth-of-type(14),
table.align-center-15 td:nth-of-type(15),
table.align-center-16 td:nth-of-type(16),
table.align-center-17 td:nth-of-type(17),
table.align-center-18 td:nth-of-type(18),
table.align-center-19 td:nth-of-type(19),
table.align-center-20 td:nth-of-type(20) {
text-align: center;
}
table.align-left-1 td:nth-of-type(1),
table.align-left-2 td:nth-of-type(2),
table.align-left-3 td:nth-of-type(3),
table.align-left-4 td:nth-of-type(4),
table.align-left-5 td:nth-of-type(5),
table.align-left-6 td:nth-of-type(6),
table.align-left-7 td:nth-of-type(7),
table.align-left-8 td:nth-of-type(8),
table.align-left-9 td:nth-of-type(9),
table.align-left-10 td:nth-of-type(10),
table.align-left-11 td:nth-of-type(11),
table.align-left-12 td:nth-of-type(12),
table.align-left-13 td:nth-of-type(13),
table.align-left-14 td:nth-of-type(14),
table.align-left-15 td:nth-of-type(15),
table.align-left-16 td:nth-of-type(16),
table.align-left-17 td:nth-of-type(17),
table.align-left-18 td:nth-of-type(18),
table.align-left-19 td:nth-of-type(19),
table.align-left-20 td:nth-of-type(20) {
text-align: left;
}
:root {
--diff-addedline-border-color: #438ab5;
--diff-addedline-background: #bddff2;
--diff-addedline-color: #000;
--diff-deletedline-border-color: #379541;
--diff-deletedline-background: #c1edbf;
--diff-deletedline-color: #000;
--diff-context-border-color: var(--body-mid);
--diff-context-background: var(--body-mid);
}
.diff-context {
border-color: var(--diff-context-border-color);
background: var(--diff-context-background);
color: inherit;
}
.diff-addedline {
border-color: var(--diff-addedline-border-color);
}
.diff-addedline .diffchange {
background: var(--diff-addedline-background);
color: var(--diff-addedline-color);
}
.diff-deletedline {
border-color: var(--diff-deletedline-border-color);
}
.diff-deletedline .diffchange {
background: var(--diff-deletedline-background);
color: var(--diff-deletedline-color);
}
.mw-diff-movedpara-left:after,
.mw-diff-movedpara-right:after {
color: var(--text-color);
}
.mw-notification {
background-color: var(--body-light);
border-color: var(--body-border);
color: var(--text-color);
}
.mw-echo-ui-notificationsInboxWidget-toolbarWrapper {
background: var(--body-main);
}
.mw-body-content .mw-echo-ui-datedSubGroupListWidget-title-secondary {
color: var(--byline-color);
}
.mw-echo-ui-pageNotificationsOptionWidget.oo-ui-optionWidget-selected {
background-color: var(--ooui-normal);
color: var(--ooui-accent);
}
.mw-echo-ui-pageNotificationsOptionWidget-label-count {
background-color: var(--ooui-normal);
color: var(--byline-color);
}
.oo-ui-optionWidget-selected .mw-echo-ui-pageNotificationsOptionWidget-label-count {
color: var(--ooui-accent);
}
.mw-echo-ui-pageNotificationsOptionWidget.oo-ui-optionWidget-highlighted {
background-color: var(--ooui-normal);
color: var(--text-color);
}
.mw-echo-ui-crossWikiUnreadFilterWidget {
border-color: var(--body-border);
}
.mw-echo-ui-crossWikiUnreadFilterWidget-subtitle {
color: var(--byline-color);
}
.mw-echo-ui-notificationBadgeButtonPopupWidget-popup > .oo-ui-popupWidget-popup > .oo-ui-popupWidget-head,
.mw-echo-ui-notificationBadgeButtonPopupWidget-popup > .oo-ui-popupWidget-popup > .oo-ui-popupWidget-footer {
border-color: var(--ooui-interface-border);
}
.mw-echo-ui-notificationBadgeButtonPopupWidget-popup > .oo-ui-popupWidget-popup > .oo-ui-popupWidget-footer .mw-echo-ui-notificationBadgeButtonPopupWidget-footer-buttons .oo-ui-buttonElement:last-child {
border-left-color: var(--ooui-normal-border);
}
.mw-echo-ui-notificationItemWidget {
background-color: var(--ooui-normal);
border-color: var(--ooui-normal-border);
}
.mw-echo-ui-notificationItemWidget:hover,
.mw-echo-ui-notificationItemWidget-unread:hover {
background-color: var(--ooui-normal--hover);
}
.mw-echo-ui-notificationItemWidget:last-child {
border-bottom-color: var(--ooui-normal-border);
}
.mw-echo-ui-notificationItemWidget-unread {
background-color: var(--search-box);
}
.mw-echo-ui-crossWikiNotificationItemWidget-group,
.mw-echo-ui-bundleNotificationItemWidget-group {
background-color: var(--ooui-interface);
}
.mw-echo-ui-toggleReadCircleButtonWidget-circle {
background-color: var(--ooui-progressive);
}
.mw-echo-ui-toggleReadCircleButtonWidget:hover .mw-echo-ui-toggleReadCircleButtonWidget-circle {
background-color: var(--ooui-progressive--hover);
}
.mw-echo-ui-toggleReadCircleButtonWidget-circle-unread {
background-color: var(--ooui-normal);
border-color: var(--ooui-normal-border);
}
.mw-echo-ui-notificationItemWidget-content-message-header,
.mw-echo-ui-notificationItemWidget-content-message-body,
.mw-echo-ui-menuItemWidget > .oo-ui-buttonElement-button > .oo-ui-labelElement-label,
.mw-echo-ui-notificationItemWidget-content-actions-timestamp {
color: var(--ooui-text);
}
.mw-echo-ui-bundleNotificationItemWidget-group {
background-color: var(--body-main);
}
@keyframes unseen-fadeout-to-unread {
from {
background-color: var(--wikitable-bg-lighter);
}
to {
background-color: var(--search-box);
}
}
@keyframes unseen-fadeout-to-read {
from {
background-color: var(--wikitable-bg-lighter);
}
to {
background-color: var(--body-main);
}
}
.mwe-popups {
background: var(--body-light);
}
.mwe-popups .mwe-popups-container {
color: var(--text-color);
background: var(--body-light);
}
.mwe-popups .mwe-popups-container.flipped-x-y:before,
.mwe-popups .mwe-popups-container.flipped-y:before {
border-top: none;
}
.mwe-popups .mwe-popups-container.mwe-popups-no-image-tri:before {
border-bottom: none;
}
.mwe-popups .mwe-popups-container.flipped-x-y:after,
.mwe-popups .mwe-popups-container.flipped-y:after {
border-top-color: var(--body-light);
}
.mwe-popups .mwe-popups-container.mwe-popups-no-image-tri:after {
border-bottom-color: var(--body-light);
}
.mwe-popups .mwe-popups-settings-icon:hover,
.mwe-popups .mwe-popups-settings-icon:active {
background-color: var(--ooui-normal--hover);
}
.mwe-popups .mw-ui-icon-element:not(.disabled):hover {
background: none;
}
.mwe-popups .mwe-popups-extract {
color: var(--text-color);
}
.mwe-popups .mwe-popups-extract[dir='ltr']:after {
background-image: linear-gradient(to right, rgba(49, 62, 89, 0), var(--body-light) 50%);
}
.mwe-popups-overlay {
background-color: var(--ooui-window-background);
}
#mwe-popups-settings {
background: var(--ooui-interface);
border-color: var(--ooui-interface-border);
color: var(--text-color);
}
#mwe-popups-settings header {
border-color: var(--ooui-interface-border);
}
#mwe-popups-settings main#mwe-popups-settings-form p {
color: var(--byline-color);
}
#mwe-popups-settings main#mwe-popups-settings-form form label > span {
color: var(--ooui-text);
}
:root {
--smw-ask-options-even-bg: var(--body-mid);
--smw-ask-options-odd-bg: var(--body-light);
--smw-ask-action-btn-lblue-bg: var(--body-main);
--smw-ask-action-btn-lblue-color: #000;
--smw-ask-action-btn-lblue-border-color: var(--body-light);
--smw-ask-action-btn-dblue-bg: var(--body-light);
--smw-ask-action-btn-dblue-color: #fff;
--smw-ask-action-btn-dblue-border-color: var(--button-border);
}
.smw-ask-condition fieldset,
.smw-ask-printhead fieldset {
border-color: var(--sidebar);
}
.smw-ask-search fieldset,
.smw-ask-format fieldset,
.smw-ask-options fieldset {
border-color: var(--sidebar);
}
.strike > span:before,
.strike > span:after {
background: var(--sidebar);
}
.smw-ask-options-fields tr td {
background-color: var(--smw-ask-options-even-bg);
}
.smw-ask-options-fields tr:nth-child(odd) td {
background-color: var(--smw-ask-options-odd-bg);
}
.smw-ask-action-btn.smw-ask-action-btn-lblue,
.smw-ask-action-btn.smw-ask-action-btn-lblue:hover,
.smw-ask-action-btn.smw-ask-action-btn-lblue:visited {
background-color: var(--smw-ask-action-btn-lblue-bg);
color: var(--smw-ask-action-btn-lblue-color);
border-color: var(--smw-ask-action-btn-lblue-border-color);
}
.smw-ask-action-btn.smw-ask-action-btn-dblue,
.smw-ask-action-btn.smw-ask-action-btn-dblue:hover,
.smw-ask-action-btn.smw-ask-action-btn-dblue:visited {
background-color: var(--smw-ask-action-btn-dblue-bg);
color: var(--smw-ask-action-btn-dblue-color);
border-color: var(--smw-ask-action-btn-dblue-border-color);
}
.smw-ask-query textarea,
.smw-ask-actions textarea {
background-color: var(--ooui-interface);
border-color: var(--ooui-interface-border);
color: var(--ooui-text);
}
.smw-ask-query-format select {
background-color: var(--ooui-interface);
border: 1px solid var(--ooui-interface-border);
color: var(--ooui-text);
}
.smw-ask-toplinks {
background-color: var(--body-mid);
}
.smw-ask-toplinks span.smw-icon-info {
background: none;
padding: 0 !important;
}
.smw-ask-toplinks span.smw-icon-info::before {
content: '';
background: var(--text-color);
-webkit-mask: url("data:image/svg+xml,%3C%3Fxml version='1.0' encoding='UTF-8'%3F%3E%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 20 20'%3E%3Ctitle%3Einfo%3C/title%3E%3Cpath d='M10 0C4.477 0 0 4.477 0 10s4.477 10 10 10 10-4.477 10-10S15.523 0 10 0zM9 5h2v2H9zm0 4h2v6H9z'/%3E%3C/svg%3E") no-repeat 50% 50% / contain;
mask: url("data:image/svg+xml,%3C%3Fxml version='1.0' encoding='UTF-8'%3F%3E%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 20 20'%3E%3Ctitle%3Einfo%3C/title%3E%3Cpath d='M10 0C4.477 0 0 4.477 0 10s4.477 10 10 10 10-4.477 10-10S15.523 0 10 0zM9 5h2v2H9zm0 4h2v6H9z'/%3E%3C/svg%3E") no-repeat 50% 50% / contain;
padding: 0 0 3px 18px;
}
.smw-ask-options-row-odd {
background-color: var(--body-light);
}
.smw-ask-options-row-even {
background-color: var(--body-mid);
}
#options-toggle:not(:checked) + #options-list .options-parameter-list:after {
background-image: linear-gradient(to bottom, transparent, var(--body-mid) 90%);
}
.smw-ask-button-submit input {
background-color: var(--ooui-normal);
border-color: var(--ooui-normal-border);
color: var(--text-color);
}
.smw-ask-button-submit input:hover,
.smw-ask-button-lgrey:hover {
background-color: var(--ooui-normal--hover);
border-color: var(--ooui-normal-border);
}
input.smw-ask-action-btn.smw-ask-action-btn-dblue {
background-color: var(--ooui-normal);
border-color: var(--ooui-normal-border);
color: var(--ooui-text);
}
a.smw-ask-action-btn.smw-ask-action-btn-lblue {
background-color: var(--body-mid);
border-color: var(--body-mid);
color: var(--ooui-text);
}
a.smw-ask-action-btn.smw-ask-action-btn-lblue:visited {
background-color: var(--body-mid);
border-color: var(--body-mid);
color: var(--ooui-text);
}
a.smw-ask-action-btn.smw-ask-action-btn-lblue:hover {
background-color: var(--body-mid);
border-color: var(--body-mid);
color: var(--ooui-text);
}
a.smw-ask-action-btn-lgrey {
background-color: var(--ooui-normal);
border-color: var(--ooui-normal-border);
color: var(--ooui-text);
}
a.smw-ask-action-btn-lgrey:hover {
background-color: var(--ooui-normal--hover);
border-color: var(--ooui-normal-border);
color: var(--ooui-text);
}
.smw-callout-error {
background-color: var(--errorbox-bg);
border-color: var(--errorbox-border);
}
.smw-callout-info {
background-color: var(--body-light);
border-color: var(--body-dark);
}
.smw-callout-success {
background-color: var(--successbox-bg);
border-color: var(--successbox-border);
}
.smw-callout-warning {
background-color: var(--warningbox-bg);
border-color: var(--warningbox-bg);
}
.smw-tabs input.nav-tab:checked + label.nav-label,
.smw-tabs input.nav-tab:checked + label.nav-label:hover {
color: inherit;
}
#tab-smw-property-value:checked + label.nav-label .usage-count {
color: #fff;
background-color: var(--ooui-progressive);
}
#tab-smw-property-value:checked + label.nav-label .usage-count.moderate {
color: #fff;
background-color: #b55e0c;
border-color: #b55e0c;
}
#tab-smw-property-value:checked + label.nav-label .usage-count.high {
color: #fff;
background-color: #9f261e;
border-color: #9f261e;
}
.smw-property-page-results .header-title {
background-color: var(--ooui-interface);
border-bottom-color: var(--ooui-interface-border);
color: var(--ooui-text);
}
.smw-property-page-results .value-row:hover {
background-color: var(--ooui-normal--hover);
}
.smw-property-page-results .smw-table .header-row {
color: var(--text-color);
}
.tippy-tooltip.light-border-theme {
background-color: var(--body-light);
color: var(--text-color);
}
.tippy-tooltip.light-border-theme .tippy-arrow {
border-top-color: var(--body-light);
}
.tippy-tooltip.light-border-theme .tippy-arrow:after {
border-top-color: var(--body-light);
}
.tippy-header {
background-color: var(--body-dark);
border-bottom-color: var(--body-mid);
}
.smw-ui-input-filter {
background-color: var(--ooui-interface);
border-color: var(--ooui-interface-border);
color: var(--ooui-text);
}
.smw-ui-input-filter input {
border-left-color: var(--ooui-interface-border) !important;
color: var(--ooui-text) !important;
}
.smw-ui-pagination .page-link.link-disabled {
background-color: var(--ooui-disabled);
border-color: var(--ooui-disabled-border);
color: var(--subtle-color);
}
.smw-ui-pagination .page-link {
background-color: var(--ooui-normal);
border-color: var(--ooui-normal-border);
color: var(--link-color);
}
.smw-ui-pagination .page-link:hover {
background-color: var(--ooui-normal--hover);
border-color: var(--ooui-normal-border);
color: var(--link-color);
}
.smw-ui-pagination .page-link.link-active {
color: #fff;
background-color: var(--ooui-progressive);
border-color: var(--ooui-progressive);
}
.smw-tabs input.nav-tab:checked + label.nav-label {
border-color: var(--ooui-normal-border);
}
.smw-tabs section,
.smw-tabs .subtab-content {
border-top-color: var(--ooui-normal-border);
}
.smw-column-header {
color: var(--text-color);
}
.smw-factbox {
background: var(--body-main);
border-color: transparent;
}
.mw-body .mw-indicators #mw-indicator-smw-entity-examiner.mw-indicator .smw-indicator-vertical-bar-loader {
display: none;
}
.smwb-theme-light .smwb-title,
.smwb-theme-light .smwb-center,
.smwb-theme-light .smwb-actions,
.smwb-theme-light .smwb-prophead {
background-color: var(--body-mid);
}
.smwb-theme-light .smwb-factbox {
border-left-color: var(--body-mid);
}
.smwb-theme-light .smwb-ifactbox {
border-right-color: var(--body-mid);
}
.smwb-theme-light .smwb-propval {
background-color: var(--body-light);
}
.smwb-action-separator {
border-color: var(--wikitable-border);
}
.smwb-bottom {
border-bottom: 1px solid var(--wikitable-border);
}
.smwb-ifactbox .smwb-cell,
.smwb-factbox .smwb-cell {
border-top: 1px solid var(--wikitable-border);
}
.smwb-propvalue .smwb-prophead,
.smwb-ipropvalue .smwb-prophead,
.smwb-propvalue .smwb-propval,
.smwb-ipropvalue .smwb-propval {
font-size: 0.9em;
}
:root {
--filter-black-to-link: invert(36%) sepia(58%) saturate(433%) hue-rotate(344deg) brightness(100%) contrast(91%);
}
#bodyContent span.smwbrowse a {
color: black;
background-image: url('filepath://Smwbrowse.svg');
filter: var(--filter-black-to-link);
}
#bodyContent span.smwbrowse a:hover {
color: black;
background-image: url('filepath://Smwbrowse-hover.svg');
text-decoration: underline;
}
#bodyContent span.smwsearch a {
color: black;
filter: var(--filter-black-to-link);
background-image: url('filepath://Smwsearch.svg');
}
#bodyContent span.smwsearch a:hover {
color: black;
background-image: url('filepath://Smwsearch-hover.svg');
text-decoration: underline;
}
:root {
--tabber-tab-bg: var(--body-light);
--tabber-tab-border-color: var(--body-border);
--tabber-active-tab-bg: var(--body-light);
--tabber-active-tab-color: var(--text-color);
--tabber-active-tab-hover-bg: var(--body-light);
--tabber-active-tab-hover-border-color: var(--body-border);
--tabber-active-tab-hover-color: var(--text-color);
--tabber-active-tab-border-hider-color: var(--body-light);
--tabber-inactive-tab-bg: var(--body-background-color);
--tabber-inactive-tab-border-color: var(--body-border);
--tabber-inactive-tab-color: var(--text-color);
--tabber-inactive-tab-hover-bg: var(--body-light);
--tabber-inactive-tab-hover-border-color: var(--body-border);
}
.tabber {
margin: 1em 0;
}
.tabber .tabbertab {
background-color: var(--tabber-tab-bg);
border: 1px solid var(--tabber-tab-border-color);
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
padding: 1em 1.5em;
}
ul.tabbernav {
border: none;
margin-left: 2em;
margin-bottom: 0;
margin-right: 2em;
padding: 0;
font-family: inherit;
}
ul.tabbernav li.tabberactive > a {
background-color: var(--tabber-active-tab-bg);
color: var(--tabber-active-tab-color);
border-bottom: none;
position: relative;
}
ul.tabbernav li.tabberactive > a:hover {
color: var(--tabber-active-tab-hover-color);
background-color: var(--tabber-active-tab-hover-bg);
border-color: var(--tabber-active-tab-hover-border-color);
border-bottom: none;
}
ul.tabbernav li.tabberactive > a::after {
content: '';
position: absolute;
left: 0;
right: 0;
bottom: -1px;
border-bottom: 2px solid var(--tabber-active-tab-border-hider-color);
}
ul.tabbernav li a {
background-color: var(--tabber-inactive-tab-bg);
border-bottom: transparent;
border-color: var(--tabber-inactive-tab-border-color);
color: var(--tabber-inactive-tab-color);
display: inline-block;
font-size: 110%;
padding: 0.5em 1em;
}
ul.tabbernav li a:hover {
background-color: var(--tabber-inactive-tab-hover-bg);
border-color: var(--tabber-inactive-tab-hover-border-color);
}
ul.tabbernav li a:link,
ul.tabbernav li a:visited {
color: var(--tabber-inactive-tab-color);
}
:root {
--ooui-text: var(--text-color);
--ooui-interface: var(--body-light);
--ooui-interface-border: var(--body-border);
--ooui-window-background: rgba(255, 255, 255, 0.5);
--ooui-normal: #d5c7ad;
--ooui-normal--hover: #dfd5c1;
--ooui-normal-border: #b8a282;
--ooui-progressive: #605443;
--ooui-progressive--hover: #7e6e58;
--ooui-accent: var(--link-color);
--ooui-input: #fff;
--ooui-input-border: #b8a282;
--ooui-input-border--hover: #8a724f;
--ooui-disabled: #d1cdc5;
--ooui-disabled-border: #c2b9ab;
--ooui-disabled-text: var(--subtle-color);
--ooui-pending-background-image: repeating-linear-gradient(-45deg, var(--search-box), var(--search-box) 20px, var(--body-main) 20px, var(--body-main) 30px);
}
.oo-ui-widget {
color: var(--ooui-text);
}
.oo-ui-checkboxInputWidget [type='checkbox'] + span,
.oo-ui-radioInputWidget [type='radio'] + span {
background-color: var(--ooui-input);
border-color: var(--ooui-input-border);
}
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:checked + span,
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:indeterminate + span {
background-color: var(--ooui-progressive);
border-color: var(--ooui-progressive);
}
.oo-ui-radioInputWidget.oo-ui-widget-enabled [type='radio']:checked + span {
border-color: var(--ooui-progressive);
}
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:checked:hover + span,
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:indeterminate:hover + span {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
}
.oo-ui-radioInputWidget.oo-ui-widget-enabled [type='radio']:checked:hover + span {
border-color: var(--ooui-progressive--hover);
}
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:hover + span,
.oo-ui-radioInputWidget.oo-ui-widget-enabled [type='radio']:hover + span {
border-color: var(--ooui-accent);
}
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:focus + span {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:active + span,
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:checked:active + span,
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:indeterminate:active + span {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
box-shadow: inset 0 0 0 1px var(--ooui-progressive--hover);
}
.oo-ui-radioInputWidget.oo-ui-widget-enabled [type='radio']:active + span {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
}
.oo-ui-radioInputWidget.oo-ui-widget-enabled [type='radio']:checked:active + span {
border-color: var(--ooui-progressive--hover);
box-shadow: inset 0 0 0 1px var(--ooui-progressive--hover);
}
.oo-ui-radioInputWidget.oo-ui-widget-enabled [type='radio']:checked:active + span:before {
border-color: var(--ooui-progressive--hover);
}
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:checked:focus + span,
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:indeterminate:focus + span {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent), inset 0 0 0 2px #fff;
}
.oo-ui-checkboxInputWidget [type='checkbox']:disabled + span,
.oo-ui-radioInputWidget [type='radio']:disabled + span {
background-color: var(--ooui-disabled);
border-color: var(--ooui-disabled);
}
.oo-ui-dropdownWidget-handle {
border-color: var(--ooui-normal-border);
}
.oo-ui-dropdownWidget.oo-ui-widget-enabled .oo-ui-dropdownWidget-handle {
background-color: var(--ooui-normal);
color: var(--ooui-text);
}
.oo-ui-dropdownWidget.oo-ui-widget-enabled .oo-ui-dropdownWidget-handle:hover {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
}
.oo-ui-dropdownWidget.oo-ui-widget-enabled .oo-ui-dropdownWidget-handle:active {
color: var(--ooui-text);
}
.oo-ui-dropdownWidget.oo-ui-widget-enabled .oo-ui-dropdownWidget-handle:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-dropdownWidget.oo-ui-widget-enabled.oo-ui-dropdownWidget-open .oo-ui-dropdownWidget-handle {
background-color: var(--ooui-normal--hover);
}
.oo-ui-dropdownWidget.oo-ui-widget-disabled .oo-ui-dropdownWidget-handle {
color: var(--ooui-disabled-text);
text-shadow: none;
border-color: var(--ooui-disabled-border);
background-color: var(--ooui-disabled);
}
.oo-ui-dropdownInputWidget select {
border-color: var(--ooui-normal-border);
}
.oo-ui-dropdownInputWidget option {
background-color: var(--ooui-interface);
}
.oo-ui-dropdownInputWidget.oo-ui-widget-enabled {
background-color: var(--ooui-normal);
}
.oo-ui-dropdownInputWidget.oo-ui-widget-enabled:hover {
background-color: var(--ooui-normal--hover);
}
.oo-ui-dropdownInputWidget.oo-ui-widget-enabled select {
color: var(--ooui-text);
}
.oo-ui-dropdownInputWidget.oo-ui-widget-enabled select:hover,
.oo-ui-dropdownInputWidget.oo-ui-widget-enabled select:active {
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
}
.oo-ui-dropdownInputWidget.oo-ui-widget-enabled select:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-labelWidget.oo-ui-inline-help {
color: var(--byline-color);
}
.oo-ui-menuSelectWidget {
background-color: var(--ooui-interface);
border-color: var(--ooui-interface-border);
}
.oo-ui-menuSelectWidget-frameless {
box-shadow: inset 0 -1px 0 0 var(--ooui-normal-border);
}
.oo-ui-menuSectionOptionWidget {
color: var(--byline-color);
}
.oo-ui-menuOptionWidget.oo-ui-optionWidget-highlighted,
.oo-ui-menuOptionWidget.oo-ui-optionWidget-selected {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
}
.oo-ui-menuOptionWidget.oo-ui-optionWidget-selected.oo-ui-menuOptionWidget.oo-ui-optionWidget-highlighted,
.oo-ui-menuOptionWidget.oo-ui-optionWidget-pressed.oo-ui-menuOptionWidget.oo-ui-optionWidget-highlighted {
color: var(--ooui-accent);
}
.oo-ui-menuOptionWidget.oo-ui-widget-enabled.oo-ui-optionWidget {
color: var(--ooui-text);
}
.oo-ui-messageDialog-title {
color: inherit;
}
.oo-ui-messageWidget.oo-ui-messageWidget-block.oo-ui-flaggedElement-error {
background-color: var(--errorbox-bg);
border-color: var(--errorbox-border);
}
.oo-ui-messageWidget.oo-ui-messageWidget-block.oo-ui-flaggedElement-warning {
background-color: var(--warningbox-bg);
border-color: var(--warningbox-border);
}
.oo-ui-messageWidget.oo-ui-messageWidget-block.oo-ui-flaggedElement-success {
background-color: var(--successbox-bg);
border-color: var(--successbox-border);
}
.oo-ui-messageWidget.oo-ui-messageWidget-block.oo-ui-flaggedElement-notice {
background-color: var(--messagebox-info-background);
border-color: var(--messagebox-info-border);
}
.oo-ui-messageWidget.oo-ui-flaggedElement-error:not(.oo-ui-messageWidget-block),
.oo-ui-messageWidget.oo-ui-flaggedElement-success:not(.oo-ui-messageWidget-block) {
color: var(--ooui-text);
}
.oo-ui-optionWidget.oo-ui-widget-disabled {
color: var(--ooui-disabled-text);
}
.oo-ui-outlineControlsWidget {
background-color: var(--ooui-normal);
}
.oo-ui-outlineOptionWidget.oo-ui-optionWidget-highlighted {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
}
.oo-ui-popupWidget-popup {
background-color: var(--ooui-interface);
border-color: var(--ooui-interface-border);
}
.oo-ui-popupWidget-anchored-top .oo-ui-popupWidget-anchor:after {
border-bottom-color: var(--ooui-interface);
}
.oo-ui-popupWidget-anchored-top .oo-ui-popupWidget-anchor:before {
border-bottom-color: var(--ooui-interface-border);
}
.oo-ui-popupWidget-anchored-bottom .oo-ui-popupWidget-anchor:after {
border-top-color: var(--ooui-interface);
}
.oo-ui-popupWidget-anchored-bottom .oo-ui-popupWidget-anchor:before {
border-top-color: var(--ooui-interface-border);
}
.oo-ui-popupWidget-anchored-start .oo-ui-popupWidget-anchor:after {
border-right-color: var(--ooui-interface);
}
.oo-ui-popupWidget-anchored-start .oo-ui-popupWidget-anchor:before {
border-right-color: var(--ooui-interface-border);
}
.oo-ui-popupWidget-anchored-end .oo-ui-popupWidget-anchor:after {
border-left-color: var(--ooui-interface);
}
.oo-ui-popupWidget-anchored-end .oo-ui-popupWidget-anchor:before {
border-left-color: var(--ooui-interface-border);
}
.oo-ui-searchWidget-query {
border-bottom-color: var(--ooui-interface-border);
}
.oo-ui-selectFileWidget-dropTarget {
background-color: var(--ooui-interface);
border-color: var(--ooui-interface-border);
}
.oo-ui-selectFileWidget.oo-ui-widget-enabled.oo-ui-selectFileWidget-dropTarget {
background-color: var(--ooui-interface);
}
.oo-ui-selectFileWidget.oo-ui-widget-enabled.oo-ui-selectFileWidget-dropTarget:hover {
border-color: var(--ooui-input-border--hover);
}
.oo-ui-tabOptionWidget {
color: var(--ooui-text);
}
.oo-ui-tabSelectWidget-framed .oo-ui-tabOptionWidget.oo-ui-optionWidget-selected {
background-color: var(--body-dark);
color: var(--ooui-text);
}
.oo-ui-tabSelectWidget-framed .oo-ui-tabOptionWidget.oo-ui-optionWidget-selected .oo-ui-labelElement-label {
border-bottom-color: var(--body-border);
}
.oo-ui-tabSelectWidget-framed .oo-ui-tabOptionWidget.oo-ui-widget-enabled:hover,
.oo-ui-tabSelectWidget-framed .oo-ui-tabOptionWidget.oo-ui-widget-enabled:active {
background-color: var(--body-light);
color: var(--ooui-text);
}
.oo-ui-tabSelectWidget-framed .oo-ui-tabOptionWidget.oo-ui-widget-enabled.oo-ui-optionWidget-selected:hover {
background-color: var(--body-dark);
}
.oo-ui-tabSelectWidget-frameless .oo-ui-tabOptionWidget.oo-ui-optionWidget-selected {
color: var(--ooui-progressive);
box-shadow: inset 0 -2px 0 0 var(--ooui-progressive);
}
.oo-ui-tabSelectWidget-frameless .oo-ui-tabOptionWidget.oo-ui-optionWidget-selected:hover,
.oo-ui-tabSelectWidget-frameless .oo-ui-tabOptionWidget.oo-ui-optionWidget-selected:focus {
color: var(--ooui-progressive--hover);
box-shadow: inset 0 -2px 0 0 var(--ooui-progressive--hover);
}
.oo-ui-tabSelectWidget-framed {
background: none;
border-bottom: 1px solid var(--ooui-interface-border);
}
.oo-ui-tabSelectWidget-frameless {
box-shadow: inset 0 -1px 0 0 var(--ooui-interface-border);
}
.oo-ui-tabSelectWidget-mobile {
}
.oo-ui-tabSelectWidget-mobile.oo-ui-tabSelectWidget-framed:after {
background: var(--mobile-navbox-linear-gradient);
}
.oo-ui-tabSelectWidget-mobile.oo-ui-tabSelectWidget-frameless:after {
background: var(--mobile-navbox-linear-gradient);
}
.oo-ui-tagItemWidget {
border-color: var(--ooui-normal-border);
}
.oo-ui-tagItemWidget.oo-ui-widget-enabled {
color: var(--ooui-text);
}
.oo-ui-tagItemWidget.oo-ui-widget-enabled:hover {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
}
.oo-ui-tagItemWidget.oo-ui-widget-enabled:not( .oo-ui-tagItemWidget-fixed ) {
background-color: var(--ooui-normal);
}
.oo-ui-tagItemWidget.oo-ui-widget-enabled .oo-ui-buttonElement-button:hover {
background-color: var(--ooui-normal--hover);
}
.oo-ui-tagMultiselectWidget.oo-ui-widget-enabled {
background-color: var(--ooui-interface);
}
.oo-ui-tagMultiselectWidget.oo-ui-widget-enabled.oo-ui-tagMultiselectWidget-outlined {
background-color: var(--ooui-normal);
}
.oo-ui-tagMultiselectWidget.oo-ui-widget-enabled.oo-ui-tagMultiselectWidget-outlined .oo-ui-tagItemWidget.oo-ui-widget-enabled {
background-color: var(--ooui-interface);
}
.oo-ui-textInputWidget .oo-ui-inputWidget-input {
background-color: var(--ooui-input);
color: var(--ooui-text);
border-color: var(--ooui-input-border);
}
.oo-ui-textInputWidget.oo-ui-widget-enabled .oo-ui-inputWidget-input::placeholder {
color: var(--subtle-color);
}
.oo-ui-textInputWidget.oo-ui-widget-enabled .oo-ui-inputWidget-input:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-textInputWidget.oo-ui-widget-enabled .oo-ui-inputWidget-input[readonly]:not(.oo-ui-pendingElement-pending) {
background-color: var(--ooui-disabled);
color: var(--ooui-disabled-text);
}
.oo-ui-textInputWidget.oo-ui-widget-enabled:hover .oo-ui-inputWidget-input {
border-color: var(--ooui-input-border--hover);
}
.oo-ui-textInputWidget.oo-ui-widget-enabled:hover .oo-ui-inputWidget-input:focus {
border-color: var(--ooui-accent);
}
@media screen and (min-width: 0) {
.oo-ui-textInputWidget.oo-ui-widget-enabled textarea.oo-ui-inputWidget-input:focus {
outline: 1px solid var(--ooui-accent);
}
}
.oo-ui-textInputWidget.oo-ui-widget-disabled .oo-ui-inputWidget-input {
background-color: var(--ooui-disabled);
color: var(--ooui-disabled-text);
text-shadow: none;
border-color: var(--ooui-disabled-border);
}
.oo-ui-toggleSwitchWidget {
background-color: var(--ooui-input);
border-color: var(--ooui-input-border);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled .oo-ui-toggleSwitchWidget-grip {
background-color: var(--ooui-input);
border-color: var(--ooui-input-border);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:hover {
background-color: var(--ooui-input);
border-color: var(--ooui-accent);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:hover .oo-ui-toggleSwitchWidget-grip {
background-color: var(--ooui-input);
border-color: var(--ooui-accent);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:active,
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:active:hover,
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:active:focus {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
box-shadow: inset 0 0 0 1px var(--ooui-progressive--hover);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:active .oo-ui-toggleSwitchWidget-grip,
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:active:hover .oo-ui-toggleSwitchWidget-grip,
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:active:focus .oo-ui-toggleSwitchWidget-grip {
background-color: var(--ooui-input);
border-color: var(--ooui-input);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:focus .oo-ui-toggleSwitchWidget-grip {
border-color: var(--ooui-accent);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled.oo-ui-toggleWidget-on {
background-color: var(--ooui-progressive);
border-color: var(--ooui-progressive);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled.oo-ui-toggleWidget-on .oo-ui-toggleSwitchWidget-grip {
background-color: var(--ooui-input);
border-color: var(--ooui-input);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled.oo-ui-toggleWidget-on:hover {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled.oo-ui-toggleWidget-on:active,
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled.oo-ui-toggleWidget-on:active:hover {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled.oo-ui-toggleWidget-on:focus {
border-color: var(--ooui-progressive);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled.oo-ui-toggleWidget-on:focus::before {
border-color: #fff;
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-disabled {
background-color: var(--ooui-disabled);
border-color: var(--ooui-disabled);
}
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled > .oo-ui-buttonElement-button {
color: var(--ooui-text);
}
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled > .oo-ui-buttonElement-button:hover {
color: var(--ooui-text);
}
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled > .oo-ui-buttonElement-button:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled.oo-ui-buttonElement-pressed > input.oo-ui-buttonElement-button,
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled > .oo-ui-buttonElement-button:active {
color: var(--ooui-text);
}
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button,
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button:hover {
color: var(--ooui-text);
}
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button:active,
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive.oo-ui-buttonElement-pressed > .oo-ui-buttonElement-button {
color: var(--ooui-text);
border-color: var(--ooui-text);
}
.oo-ui-buttonElement-frameless.oo-ui-widget-disabled > .oo-ui-buttonElement-button {
color: var(--ooui-disabled-text);
}
.oo-ui-buttonElement-framed.oo-ui-widget-disabled > .oo-ui-buttonElement-button {
background-color: var(--ooui-disabled);
border-color: var(--ooui-disabled-border);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled > .oo-ui-buttonElement-button {
background-color: var(--ooui-normal);
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled > .oo-ui-buttonElement-button:hover {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled > .oo-ui-buttonElement-button:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-buttonElement-active > .oo-ui-buttonElement-button {
background-color: var(--ooui-progressive--hover);
color: #fff;
border-color: var(--ooui-progressive--hover);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-buttonElement-active > .oo-ui-buttonElement-button:focus {
border-color: var(--ooui-progressive--hover);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled > .oo-ui-buttonElement-button:active,
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-buttonElement-pressed > .oo-ui-buttonElement-button {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive {
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button {
color: var(--ooui-text);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button:hover {
background-color: var(--ooui-normal--hover);
border-color: var(--ooui-progressive--hover);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-destructive > .oo-ui-buttonElement-button {
color: var(--ooui-text);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-destructive > .oo-ui-buttonElement-button:hover {
background-color: var(--ooui-normal--hover);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button {
background-color: var(--ooui-progressive);
border-color: var(--ooui-progressive);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button:hover {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent), inset 0 0 0 2px #fff;
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button:active,
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive.oo-ui-buttonElement-pressed > .oo-ui-buttonElement-button,
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive.oo-ui-buttonElement-active > .oo-ui-buttonElement-button,
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive.oo-ui-popupToolGroup-active > .oo-ui-buttonElement-button {
color: #fff;
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
}
.oo-ui-pendingElement-pending {
background-image: var(--ooui-pending-background-image);
background-size: 200%;
animation: oo-ui-pendingElement-stripes 6s linear infinite;
}
@keyframes oo-ui-pendingElement-stripes {
100% {
background-position: 100%;
}
}
.oo-ui-messageDialog-content > .oo-ui-window-foot {
outline-color: var(--ooui-interface-border);
}
.oo-ui-messageDialog-message {
color: var(--ooui-text);
}
.oo-ui-messageDialog-actions-horizontal .oo-ui-actionWidget {
border-right-color: var(--ooui-interface-border);
}
.oo-ui-messageDialog-actions-vertical .oo-ui-actionWidget {
border-bottom-color: var(--ooui-interface-border);
}
.oo-ui-processDialog-content .oo-ui-window-head,
.oo-ui-processDialog-content .oo-ui-window-foot {
outline-color: var(--ooui-interface-border);
}
.oo-ui-processDialog .oo-ui-actionWidget > .oo-ui-buttonElement-button {
border-top-color: transparent;
border-bottom-color: transparent;
}
.oo-ui-processDialog .oo-ui-actionWidget > .oo-ui-buttonElement-button:hover,
.oo-ui-processDialog .oo-ui-actionWidget > .oo-ui-buttonElement-button:active {
border-top-color: transparent;
border-bottom-color: transparent;
}
.oo-ui-processDialog .oo-ui-actionWidget:not( .oo-ui-flaggedElement-progressive ):not( .oo-ui-flaggedElement-destructive ) > .oo-ui-buttonElement-button:hover,
.oo-ui-processDialog .oo-ui-actionWidget:not( .oo-ui-flaggedElement-progressive ):not( .oo-ui-flaggedElement-destructive ) > .oo-ui-buttonElement-button:active {
border-right-color: var(--ooui-interface-border);
border-left-color: transparent;
}
.oo-ui-processDialog .oo-ui-actionWidget:not( .oo-ui-flaggedElement-progressive ):not( .oo-ui-flaggedElement-destructive ) > .oo-ui-buttonElement-button:focus {
border-color: var(--ooui-accent);
}
.oo-ui-processDialog-actions-safe .oo-ui-actionWidget > .oo-ui-buttonElement-button,
.oo-ui-processDialog-actions-other .oo-ui-actionWidget > .oo-ui-buttonElement-button {
border-right-color: var(--ooui-normal-border);
border-left-color: transparent;
}
.oo-ui-processDialog-actions-safe .oo-ui-widget-enabled.oo-ui-iconElement:not( .oo-ui-labelElement ) > .oo-ui-buttonElement-button:hover {
background-color: var(--ooui-normal--hover);
border-right-color: var(--ooui-interface-border);
}
.oo-ui-windowManager-modal > .oo-ui-dialog {
background-color: var(--ooui-window-background);
}
.oo-ui-windowManager-modal > .oo-ui-dialog > .oo-ui-window-frame {
background-color: var(--ooui-interface);
}
.oo-ui-windowManager-modal.oo-ui-windowManager-floating > .oo-ui-dialog > .oo-ui-window-frame {
border-color: var(--ooui-interface-border);
}
.oo-ui-window {
color: var(--ooui-text);
}
.oo-ui-toolbar-bar {
background-color: var(--ooui-interface);
color: var(--ooui-text);
}
.oo-ui-toolbar-position-top > .oo-ui-toolbar-bar {
border-bottom-color: var(--body-mid);
}
.oo-ui-toolbar-bar .oo-ui-bookletLayout > .oo-ui-menuLayout-menu {
border-right-color: var(--body-mid);
}
.oo-ui-tool.oo-ui-widget-enabled > .oo-ui-tool-link:hover {
background-color: var(--ooui-normal--hover);
}
.oo-ui-tool.oo-ui-widget-enabled > .oo-ui-tool-link:focus {
outline: 1px solid var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-tool.oo-ui-widget-enabled > .oo-ui-tool-link:active,
.oo-ui-tool.oo-ui-widget-enabled.oo-ui-tool-active > .oo-ui-tool-link,
.oo-ui-tool.oo-ui-widget-enabled.oo-ui-popupToolGroup-active > .oo-ui-tool-link {
background-color: var(--ooui-normal--hover);
color: var(--ooui-accent);
box-shadow: none;
}
.oo-ui-tool.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive > .oo-ui-tool-link {
background-color: var(--ooui-progressive);
}
.oo-ui-tool.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive > .oo-ui-tool-link:hover {
background-color: var(--ooui-progressive--hover);
}
.oo-ui-tool.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive > .oo-ui-tool-link:focus {
box-shadow: inset 0 0 0 1px var(--ooui-accent), inset 0 0 0 2px #fff;
}
.oo-ui-tool.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive > .oo-ui-tool-link:active,
.oo-ui-tool.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive.oo-ui-tool-active > .oo-ui-tool-link {
background-color: var(--ooui-progressive--hover);
}
.oo-ui-listToolGroup-tools .oo-ui-tool.oo-ui-widget-enabled {
background-color: var(--ooui-normal);
}
.oo-ui-listToolGroup-tools .oo-ui-tool.oo-ui-widget-enabled:hover {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
}
.oo-ui-listToolGroup-tools .oo-ui-tool-active.oo-ui-widget-enabled .oo-ui-tool-link .oo-ui-tool-title {
color: var(--ooui-progressive);
}
.oo-ui-menuToolGroup {
border-left-color: var(--body-mid);
border-right-color: var(--body-mid);
}
.oo-ui-popupToolGroup-tools {
background-color: var(--ooui-interface);
border-color: var(--body-mid);
}
.oo-ui-popupToolGroup.oo-ui-widget-enabled > .oo-ui-popupToolGroup-handle:hover {
background-color: var(--ooui-normal--hover);
}
.oo-ui-popupToolGroup.oo-ui-widget-enabled > .oo-ui-popupToolGroup-handle:focus {
outline: 1px solid var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-toolbar-actions .oo-ui-popupToolGroup.oo-ui-widget-enabled > .oo-ui-popupToolGroup-handle:hover {
border-right-color: var(--ooui-normal--hover);
}
.oo-ui-popupToolGroup-tools .oo-ui-tool.oo-ui-widget-enabled .oo-ui-tool-link:focus {
box-shadow: inset 0 0 0 2px var(--ooui-accent);
}
.oo-ui-popupToolGroup-tools .oo-ui-tool-active.oo-ui-widget-enabled .oo-ui-tool-link .oo-ui-tool-title {
color: var(--ooui-progressive);
}
.oo-ui-popupToolGroup.oo-ui-popupToolGroup-active > .oo-ui-popupToolGroup-handle {
background-color: var(--ooui-normal);
color: var(--ooui-accent);
}
.oo-ui-popupToolGroup.oo-ui-popupToolGroup-active > .oo-ui-popupToolGroup-handle:hover {
background-color: var(--ooui-normal--hover);
color: var(--ooui-accent);
}
.oo-ui-bookletLayout-outlinePanel > .oo-ui-outlineControlsWidget {
border-top-color: var(--ooui-interface-border);
}
.oo-ui-bookletLayout > .oo-ui-menuLayout-menu {
border-right-color: var(--ooui-interface-border);
}
.oo-ui-fieldLayout-disabled > .oo-ui-fieldLayout-body > .oo-ui-fieldLayout-header > .oo-ui-labelElement-label {
color: var(--ooui-disabled-text);
}
.oo-ui-panelLayout-framed {
border-color: var(--sidebar);
}
.oo-ui-icon-settings {
background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' width='20' height='20' viewBox='0 0 20 20'%3E%3Ctitle%3Esettings%3C/title%3E%3Cg transform='translate(10 10)'%3E%3Cpath id='a' d='M1.5-10h-3l-1 6.5h5m0 7h-5l1 6.5h3'/%3E%3Cuse xlink:href='%23a' transform='rotate(45)'/%3E%3Cuse xlink:href='%23a' transform='rotate(90)'/%3E%3Cuse xlink:href='%23a' transform='rotate(135)'/%3E%3C/g%3E%3Cpath d='M10 2.5a7.5 7.5 0 0 0 0 15 7.5 7.5 0 0 0 0-15v4a3.5 3.5 0 0 1 0 7 3.5 3.5 0 0 1 0-7'/%3E%3C/svg%3E");
}
.oo-ui-icon-clear {
background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 20 20'%3E%3Ctitle%3Eclear%3C/title%3E%3Cpath d='M10 0a10 10 0 1 0 10 10A10 10 0 0 0 10 0zm5.66 14.24-1.41 1.41L10 11.41l-4.24 4.25-1.42-1.42L8.59 10 4.34 5.76l1.42-1.42L10 8.59l4.24-4.24 1.41 1.41L11.41 10z'/%3E%3C/svg%3E");
}
.mw-widget-dateInputWidget-handle {
background-color: var(--ooui-input);
color: var(--ooui-text);
border-color: var(--ooui-input-border);
}
.mw-widget-dateInputWidget-calendar {
background-color: var(--ooui-interface);
}
.mw-widget-dateInputWidget.oo-ui-widget-enabled .mw-widget-dateInputWidget-handle:hover {
border-color: var(--ooui-input-border--hover);
}
.mw-widget-calendarWidget {
border-color: var(--ooui-interface-border);
}
.mw-widget-calendarWidget:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.mw-widget-calendarWidget-day,
.mw-widget-calendarWidget-day-heading {
color: var(--ooui-text);
}
.mw-widget-calendarWidget-day-additional {
color: var(--ooui-text);
opacity: 0.67;
}
.mw-widget-calendarWidget-day-today {
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.mw-widget-calendarWidget-item:hover {
background-color: var(--ooui-progressive);
}
.mw-widget-calendarWidget-item-selected {
background-color: var(--ooui-progressive--hover);
}
.mw-widgets-datetime-calendarWidget {
background-color: var(--ooui-interface);
border-color: var(--ooui-interface-border);
}
.mw-widgets-datetime-calendarWidget:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent), 0 2px 2px 0 rgba(0, 0, 0, 0.25);
}
.mw-widgets-datetime-calendarWidget-grid .mw-widgets-datetime-calendarWidget-cell.mw-widgets-datetime-calendarWidget-extra .oo-ui-buttonElement-button .oo-ui-labelElement-label {
color: var(--subtle-color);
}
.mw-widgets-datetime-calendarWidget-grid .mw-widgets-datetime-calendarWidget-cell.mw-widgets-datetime-calendarWidget-selected .oo-ui-buttonElement-button {
background-color: var(--ooui-progressive--hover);
}
.mw-widgets-datetime-dateTimeInputWidget-handle {
background-color: var(--ooui-input);
color: var(--ooui-text);
border-color: var(--ooui-input-border);
}
.mw-widgets-datetime-dateTimeInputWidget.oo-ui-widget-enabled.mw-widgets-datetime-dateTimeInputWidget-handle:hover {
border-color: var(--ooui-input-border--hover);
}
.mw-widgets-datetime-dateTimeInputWidget.oo-ui-widget-enabled:hover input,
.mw-widgets-datetime-dateTimeInputWidget.oo-ui-widget-enabled:hover textarea {
border-color: var(--ooui-input-border--hover);
}
.mw-widgets-datetime-dateTimeInputWidget.oo-ui-widget-enabled .mw-widgets-datetime-dateTimeInputWidget-editField:hover {
background-color: var(--ooui-normal);
}
.ve-activated .ve-init-mw-desktopArticleTarget-originalContent #catlinks:hover {
background: var(--ooui-normal--hover);
}
.ve-ui-overlay {
font-family: inherit;
}
.oo-ui-toolbar-position-top .ve-ui-toolbarDialog-position-above {
border-top-color: var(--body-mid);
}
.ve-ce-branchNode-blockSlug,
.ve-ce-branchNode-newSlug {
outline-color: var(--body-border);
background-color: var(--ooui-interface);
}
.ve-ui-specialCharacterPage h3 {
color: var(--byline-color);
}
.ve-ui-specialCharacterPage-character {
border-color: var(--body-mid);
}
.ve-ui-specialCharacterPage-character:hover {
border-color: var(--body-dark);
}
.ve-ce-linkAnnotation.ve-ce-annotation-active {
box-shadow: 0 0 0 1px var(--body-mid);
background: none;
}
.ve-ui-desktopContext .ve-ui-linkContextItem .ve-ui-linkContextItem-label {
border-color: var(--body-border);
}
.ve-ui-mwHelpPopupTool-version-label,
.ve-ui-mwHelpPopupTool-version-link,
.ve-ui-mwHelpPopupTool-version-date {
color: var(--byline-color);
}
.ve-ce-tableCellableNode {
border-color: var(--body-mid);
}
.ve-ce-mwReferencesListNode-muted {
color: var(--byline-color);
}
.ve-ui-mwTemplatePage-description,
.ve-ui-mwParameterPage-label,
.ve-ui-mwParameterPage-description-required,
.ve-ui-mwParameterPage-description-deprecated {
color: var(--byline-color);
}
.mw-widget-titleWidget-menu .mw-widget-titleOptionWidget-description {
color: var(--byline-color);
}
.ve-ui-mwGalleryDialog-menuLayout > .oo-ui-menuLayout-menu,
.ve-ui-mwGalleryDialog-innerMenuLayout > .oo-ui-menuLayout-menu,
.ve-ui-mwGalleryDialog .ve-ui-mwGalleryDialog-image-container,
.ve-ui-targetWidget {
border-color: var(--body-border);
}
.ve-ui-targetWidget:not(.oo-ui-pendingElement-pending) {
background-color: var(--body-main);
}
.ve-ui-mwSaveDialog {
color: var(--ooui-text);
}
.ve-ui-mwSaveDialog-options {
background-color: var(--ooui-interface);
border-color: var(--body-border);
}
.ve-ui-mwSaveDialog-summary {
background-color: var(--ooui-input);
}
.ve-ui-mwSaveDialog-editSummary-count {
border-color: var(--body-border);
}
.ve-ui-mwSaveDialog-license {
color: var(--byline-color);
}
.ve-ui-mwReferenceContextItem-muted {
color: var(--byline-color);
}
.ve-ui-mwNoticesPopupTool-items > div:not(:first-child),
.ve-ui-mwHelpPopupTool-item:not(:first-child) {
border-color: var(--body-border);
}
.ve-ui-mwTransclusionOutlineControlsWidget {
background-color: var(--ooui-interface);
border-top-color: var(--body-border);
}
.ve-ui-mwTransclusionOutlineTemplateWidget-sticky {
background-color: var(--ooui-interface);
}
.ve-ui-mwTransclusionOutlineTemplateWidget .ve-ui-mwTransclusionOutlineParameterWidget.oo-ui-optionWidget-highlighted {
color: var(--ooui-text);
}
.ve-ui-mwTransclusionOutlineTemplateWidget-no-template-parameters {
color: var(--subtle-color);
}
.ve-ui-mwParameterPage-undocumentedLabel {
color: var(--subtle-color);
}
.ve-ui-mwTwoPaneTransclusionDialogLayout > .oo-ui-menuLayout-menu {
border-right: var(--body-border);
}
.ve-ui-mwParameterPage-doc-required,
.ve-ui-mwParameterPage-doc-deprecated,
.ve-ui-mwParameterPage-inlineDescription .ve-ui-mwParameterPage-doc-example {
color: var(--byline-color);
}
.ve-ui-expandableContent-toggle {
background-color: var(--ooui-interface);
}
.ve-ui-expandableContent-fade {
background: linear-gradient(to right, rgba(255, 255, 255, 0) 0, var(--ooui-interface) 90%);
}
.ve-ui-commandHelpDialog-shortcut > kbd,
.ve-ui-commandHelpDialog-sequence > kbd {
background-color: var(--keypress-background);
color: var(--keypress-color);
border-color: var(--keypress-border);
box-shadow: none;
text-shadow: none;
}
.ve-init-mw-desktopArticleTarget-toolbarPlaceholder-floating .ve-init-mw-desktopArticleTarget-toolbarPlaceholder-bar {
background: var(--ooui-interface);
}
.ve-init-mw-desktopArticleTarget-toolbarPlaceholder-bar {
border-bottom-color: var(--body-mid);
}
figure[typeof~='mw:File/Thumb'],
figure[typeof~='mw:File/Frame'],
figure[typeof~='mw:Image/Thumb'],
figure[typeof~='mw:Video/Thumb'],
figure[typeof~='mw:Image/Frame'],
figure[typeof~='mw:Video/Frame'] {
border: none;
background-color: var(--thumb-bg);
}
figure[typeof~='mw:File/Thumb'] > a:first-child > *:first-child:not( .mw-broken-media ),
figure[typeof~='mw:File/Frame'] > a:first-child > *:first-child:not( .mw-broken-media ),
figure[typeof~='mw:Image/Thumb'] > a:first-child > *:first-child:not( .mw-broken-media ),
figure[typeof~='mw:Video/Thumb'] > a:first-child > *:first-child:not( .mw-broken-media ),
figure[typeof~='mw:Image/Frame'] > a:first-child > *:first-child:not( .mw-broken-media ),
figure[typeof~='mw:Video/Frame'] > a:first-child > *:first-child:not( .mw-broken-media ) {
border: none;
background: var(--thumb-bg);
}
figure[typeof~='mw:File/Thumb'] > figcaption,
figure[typeof~='mw:File/Frame'] > figcaption,
figure[typeof~='mw:Image/Thumb'] > figcaption,
figure[typeof~='mw:Video/Thumb'] > figcaption,
figure[typeof~='mw:Image/Frame'] > figcaption,
figure[typeof~='mw:Video/Frame'] > figcaption {
border: none;
background-color: var(--thumb-caption-bg);
padding: 4px 6px;
}
:root {
--keypress-background: #eee;
--keypress-border: #ccc;
--keypress-color: #333;
}
.archivelist {
background-color: var(--body-light);
border: solid 1px var(--body-border);
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
float: right;
margin: 5px;
padding: 5px;
text-align: center;
width: 120px;
}
.shortcut {
border: 1px solid var(--body-border);
background: var(--body-light);
float: right;
font-size: 0.8em;
margin: 0.5em 0em 0.5em 1em;
padding: 0.5em;
text-align: center;
}
.hatnote,
.seealso {
font-style: italic;
}
.hatnote i,
.seealso i {
font-style: normal;
}
div.hatnote,
div.seealso {
margin: 0.5em 1.6em;
}
div.hatnote + div.hatnote,
div.hatnote + div.seealso,
div.seealso + div.hatnote,
div.seealso + div.seealso {
margin-top: -0.5em;
}
.keypress {
background: var(--keypress-background);
color: var(--keypress-color);
font-family: inherit;
border: 1px solid var(--keypress-border);
border-radius: 2px;
font-size: 0.9em;
margin: 0 0.1em;
padding: 0.1em 0.4em;
white-space: nowrap;
}
:root {
--documentation-background: #f9fafa;
--documentation-link-color: #e4eaee;
--documentation-headers-color: #fff;
--documentation-header-background: #949eaa;
--documentation-subheader-background: #808c9a;
--documentation-border: #e4eaee;
}
.documentation {
background: var(--documentation-background);
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
margin: 1em 0;
}
.documentation pre,
.documentation code {
background-color: var(--documentation-background);
border-color: var(--documentation-border);
}
.documentation h2,
.documentation hr {
border-color: var(--documentation-border);
}
.documentation-header {
color: var(--documentation-headers-color);
background: var(--documentation-header-background);
font-weight: bold;
padding: 1em 1.5em;
}
.documentation-title {
font-size: 1.25em;
}
.documentation-subheader {
color: var(--documentation-headers-color);
background: var(--documentation-subheader-background);
padding: 0.5em 1.5em;
}
.documentation-subheader a,
.documentation-subheader a:visited,
.documentation-subheader a:active {
color: var(--documentation-link-color);
}
.documentation-documentation,
.documentation-links {
font-size: 0.85em;
}
.documentation-content {
padding: 1em 1.5em;
}
.mw-templatedata-doc-params dl:not(:empty) {
column-count: 3;
border-top: 1px solid var(--body-border);
margin-bottom: 0.5em;
}
.mw-templatedata-doc-params dt::after {
content: ":";
}
.mw-templatedata-doc-params dd,
.mw-templatedata-doc-params dt {
margin: 0.1em 2em;
min-width: auto;
}
.mw-templatedata-doc-muted {
color: var(--subtle-color);
font-style: italic;
}
:root {
--infobox-text-color: var(--text-color);
}
ol.references,
.reflist {
font-size: 90%;
}
.reflist {
list-style-type: decimal;
}
.reflist .references {
font-size: 100%;
list-style-type: inherit;
}
.reflist-lower-alpha {
list-style-type: lower-alpha;
}
ol.references li:target,
sup.reference:target {
background-color: var(--body-light);
}
.hideQuotes .refhide {
display: none;
}
:root {
--messagebox-obsolete-background: #cfcfcf;
--messagebox-obsolete-border: #464646;
--messagebox-obsolete-color: var(--text-color);
--messagebox-obsolete-link-color: #6c6c6c;
--messagebox-info-background: #ebebeb;
--messagebox-info-border: #898989;
--messagebox-info-color: var(--text-color);
--messagebox-info-link-color: #6c6c6c;
--messagebox-action-background: #c7e8fa;
--messagebox-action-border: #0b5884;
--messagebox-action-color: var(--text-color);
--messagebox-action-link-color: #03436b;
--messagebox-warn-background: #dfc0ba;
--messagebox-warn-border: #861c10;
--messagebox-warn-color: var(--text-color);
--messagebox-warn-link-color: #8e221a;
--messagebox-safe-background: #d8f0d3;
--messagebox-safe-border: #1b8408;
--messagebox-safe-color: var(--text-color);
--messagebox-safe-link-color: #1b8408;
--messagebox-disambig-background: #ebebeb;
--messagebox-disambig-border: #898989;
--messagebox-disambig-color: var(--text-color);
--messagebox-disambig-link-color: #6c6c6c;
--messagebox-discord-background: #5865f2;
--messagebox-discord-border: #4c57d0;
--messagebox-discord-link-color: #d2e5fc;
}
.mw-message-box,
.mw-message-box-error,
.mw-message-box-warning,
.mw-message-box-success,
.usermessage {
color: var(--text-color);
}
.messagebox {
width: 65%;
margin: 0.5em auto;
border-left: 15px solid;
border-color: var(--body-dark);
background-color: var(--body-light);
box-sizing: border-box;
}
.messagebox.obsolete {
background-color: var(--messagebox-obsolete-background);
border-color: var(--messagebox-obsolete-border);
color: var(--messagebox-obsolete-color);
}
.messagebox.obsolete a,
.messagebox.obsolete a:visited,
.messagebox.obsolete a:active {
color: var(--messagebox-obsolete-link-color);
}
.messagebox.info {
background-color: var(--messagebox-info-background);
border-color: var(--messagebox-info-border);
color: var(--messagebox-info-color);
}
.messagebox.info a,
.messagebox.info a:visited,
.messagebox.info a:active {
color: var(--messagebox-info-link-color);
}
.messagebox.action {
background-color: var(--messagebox-action-background);
border-color: var(--messagebox-action-border);
color: var(--messagebox-action-color);
}
.messagebox.action a,
.messagebox.action a:visited,
.messagebox.action a:active {
color: var(--messagebox-action-link-color);
}
.messagebox.warn {
background-color: var(--messagebox-warn-background);
border-color: var(--messagebox-warn-border);
color: var(--messagebox-warn-color);
}
.messagebox.warn a,
.messagebox.warn a:visited,
.messagebox.warn a:active {
color: var(--messagebox-warn-link-color);
}
.messagebox.safe {
background-color: var(--messagebox-safe-background);
border-color: var(--messagebox-safe-border);
color: var(--messagebox-safe-color);
}
.messagebox.safe a,
.messagebox.safe a:visited,
.messagebox.safe a:active {
color: var(--messagebox-safe-link-color);
}
.messagebox.disambig {
background-color: var(--messagebox-disambig-background);
border-color: var(--messagebox-disambig-border);
color: var(--messagebox-disambig-color);
}
.messagebox.disambig a,
.messagebox.disambig a:visited,
.messagebox.disambig a:active {
color: var(--messagebox-disambig-link-color);
}
.messagebox.discord {
background-color: var(--messagebox-discord-background);
border-color: var(--messagebox-discord-border);
color: #fff;
}
.messagebox.discord a,
.messagebox.discord a:visited,
.messagebox.discord a:active {
color: var(--messagebox-discord-link-color);
}
.messagebox.discord a.external,
.messagebox.discord a:visited.external,
.messagebox.discord a:active.external {
font-style: italic;
}
.messagebox.stub {
width: 40%;
}
.messagebox.hasdialogue {
padding: 0 10px;
width: auto;
}
:root {
--byline-arrow-filter: invert(29%) sepia(0%) saturate(376%) hue-rotate(172deg) brightness(87%) contrast(80%);
--tile-border-color: #cabe9b;
--tile-background-color: #f9f3eb;
--tile-link-button-color: #f5e9db;
--tile-link-button-highlight-color: #dfccb0;
--tile-dark-color: #fff;
--tile-dark-bg: #5d6773;
--tile-dark-link-color: #ccc;
--tile-dark-byline-color: rgba(255, 255, 255, 0.7);
--tile-dark-header-color: #fff;
}
.tile {
background: var(--tile-background-color);
border: 1px solid var(--tile-border-color);
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
padding: 1.5em 2em 1em;
max-width: 40em;
}
.tile h2 {
font-size: 1.4em;
font-weight: bold;
border: none;
margin: 0 0 0.4em;
}
.tile .byline + h2 {
margin-top: -0.5em;
}
.tile.dark {
color: var(--tile-dark-color);
background: var(--tile-dark-bg);
border: none;
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.3);
}
.tile.dark h2 {
color: var(--tile-dark-header-color);
}
.tile.dark a {
color: var(--tile-dark-link-color);
}
.tile.dark .byline {
color: var(--tile-dark-byline-color);
}
.byline {
font-size: 0.9em;
color: var(--byline-color);
}
.byline a {
color: var(--byline-color);
}
.tile-row {
display: flex;
flex-flow: row wrap;
margin-bottom: 1em;
}
.tile-halves {
display: flex;
flex-flow: row wrap;
border: 1px solid var(--tile-border-color);
background: var(--tile-background-color);
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
}
.tile-halves h2 {
font-size: 1.4em;
font-weight: bold;
border: none;
margin: 0 0 0.4em;
}
.tile-halves .byline + h2 {
margin-top: -0.5em;
}
.tile-top {
width: 100%;
padding: 1.3rem 1.5rem 0.6rem;
}
.tile-top.tile-image {
display: flex;
align-items: center;
background-color: var(--byline-color);
overflow: hidden;
padding: 0;
height: 13vw;
max-height: 12em;
transition: 0.4s ease-out;
}
.tile-halves:hover .tile-top.tile-image img {
transform: scale(1.1);
transition: 0.5s ease-out;
}
.tile-top.tile-image a {
width: 100%;
}
.tile-top.tile-image img {
width: 100%;
object-fit: cover;
max-height: 200px;
transition: 0.4s ease-out;
}
.tile-bottom {
background: var(--tile-background-color);
border-top: 1px solid var(--tile-border-color);
width: 100%;
padding: 1rem 1.5rem 0.6rem;
}
.tile-bottom.link-button {
align-self: flex-end;
padding: 0;
}
.tile-bottom.link-button a {
display: block;
text-align: center;
padding: 0.75em 1.5em 0.8em;
text-decoration: none;
}
.tile-bottom.read-more {
background: var(--tile-link-button-color);
transition: 0.3s ease-out;
}
.tile-bottom.read-more a {
color: var(--byline-color);
font-weight: bold;
text-align: right;
}
.tile-bottom.read-more:hover {
background: var(--tile-link-button-highlight-color);
}
.tile-bottom.read-more:hover .arrow {
transform: translateX(50%);
}
.tile-bottom.read-more .arrow {
filter: var(--byline-arrow-filter);
margin-left: 0.4em;
transition: 0.3s ease-out;
}
body.page-Main_Page.action-view .catlinks,
body.page-Main_Page.action-view #contentSub,
body.page-Main_Page.action-view #firstHeading,
body.page-Main_Page.action-view #siteNotice {
display: none;
}
body.page-Main_Page .mw-parser-output {
max-width: 75em;
margin: 0 auto;
}
body.page-Main_Page.action-view .catlinks,
body.page-Main_Page.action-view #contentSub,
body.page-Main_Page.action-view #siteNotice {
display: none;
}
.mainpage-header {
display: flex;
margin: 2.6em 1.75em 1.5em;
}
.mainpage-header .header-intro {
flex: 2;
}
.mainpage-header .header-intro h1 {
font-size: 2.5em;
font-weight: bold;
border: none;
margin: 0 0 0.15em;
}
.mainpage-header .header-intro p {
font-size: 1.1em;
line-height: 1.7em;
}
.mainpage-header .header-stats {
flex: 1;
display: flex;
justify-content: center;
align-items: center;
margin-top: -1em;
}
.mainpage-body {
display: grid;
grid-template-areas: "event event event" "update update update" "content content content" "left left right";
gap: 0.9rem;
grid-template-columns: repeat(3, 1fr);
}
.mainpage-body h2 a {
color: var(--text-color);
}
.mainpage-body .tile {
padding-left: 1.75em;
padding-right: 1.75em;
max-width: 100%;
}
.mainpage-body .tile-row {
width: 100%;
margin-bottom: 0;
}
.mainpage-body .tile-row {
display: grid;
gap: 0.9rem;
}
.mainpage-contents.tile-row {
display: flex;
}
.mainpage-contents.tile-row .tile-top {
height: 6.5rem;
}
.mainpage-left {
grid-area: left;
flex: 2;
display: flex;
flex-flow: column wrap;
}
.mainpage-left > * {
margin: 0 0 0.9rem;
}
.mainpage-right {
grid-area: right;
flex: 1;
display: flex;
flex-flow: column wrap;
}
.mainpage-right > * {
margin: 0 0 0.9rem;
}
.arrow {
background: url('filepath://White-chevron.svg') no-repeat;
display: inline-block;
height: 0.7rem;
width: 0.45rem;
vertical-align: middle;
}
.arrow.dark {
filter: invert(80%);
}
.mainpage-contents {
grid-area: content;
grid-template-columns: repeat(6, 1fr);
}
.mainpage-contents .tile-halves {
flex: 1;
}
.mainpage-contents .tile-top {
height: 4.5rem;
position: relative;
}
.mainpage-contents h2 {
margin: 0;
padding: 0;
}
.mainpage-contents .tile-bottom.link-button a {
padding: 0.75em 0.2em;
}
.popular-pages ul {
display: grid;
grid-template-columns: repeat(3, 1fr);
grid-gap: 0.6em;
margin: 1em 0 0.7em 0;
}
.mp-popular-page-light {
display: flex;
align-items: center;
background-color: var(--button-background);
transition: 100ms;
}
.mp-popular-page-light a {
flex: 1;
display: block;
color: #fff;
font-weight: bold;
text-align: center;
text-decoration: none;
padding: 0.7em 1em;
}
.mp-popular-page-light:hover {
filter: brightness(115%);
transition: 100ms;
}
.mainpage-social {
border: none;
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.3);
}
.mainpage-social .tile-top {
display: flex;
align-items: center;
padding: 1em 1.5em;
}
.mainpage-social .tile-top a {
flex: 1;
position: relative;
text-decoration: none;
}
.mainpage-social .tile-top a:hover .arrow {
transform: translateX(50%);
}
.mainpage-social .tile-bottom {
border: none;
padding: 1em 1.75em;
}
.mainpage-social .tile-bottom p {
color: #fff;
font-weight: bold;
font-size: 0.9em;
text-align: center;
text-transform: uppercase;
letter-spacing: 0.03em;
margin: 0;
}
.mainpage-social .social-icon {
margin-right: 0.75em;
text-align: center;
width: 60px;
}
.mainpage-social .social-header {
color: #fff;
font-weight: bold;
font-size: 1.15em;
margin: 0.5em 0 -0.15em;
}
.mainpage-social .server-tagline {
color: rgba(255, 255, 255, 0.9);
margin-bottom: 0.5em;
}
.mainpage-social .arrow {
position: absolute;
top: calc(50% - .5em);
right: 0;
height: 1em;
width: 0.7em;
background-size: 0.7em 1em;
transition: 0.3s ease-out;
}
.mainpage-social.mainpage-discord .tile-top {
background: #5865f2;
}
.mainpage-social.mainpage-discord .tile-bottom {
background: #525ee0;
}
.mainpage-social.mainpage-twitter .tile-top {
background: #15202b;
}
.mainpage-social.mainpage-twitter .tile-bottom {
background: #121c26;
}
.mainpage-editing {
border: none;
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.3);
}
.mainpage-editing .tile-top {
background: #438ab5;
}
.mainpage-editing .tile-bottom {
background: #3980ab;
border: none;
padding: 0.8rem 1.5rem 0.4rem;
}
.mainpage-editing h2,
.mainpage-editing a {
color: #fff;
}
.mainpage-editing p {
color: rgba(255, 255, 255, 0.9);
}
.mainpage-editing ul {
list-style-image: url('filepath://Transparent-chevron.svg');
}
@media only screen and (max-width: 1200px) {
.mainpage-contents {
grid-template-columns: repeat(3, 1fr);
}
}
@media only screen and (max-width: 1000px) {
.mainpage-body {
grid-template-areas: "event event event" "update update update" "content content content" "left left left" "right right right";
}
.mainpage-recent-updates {
grid-template-columns: repeat(2, 1fr);
}
.mainpage-recent-updates .tile-halves:last-child {
display: none;
}
.mainpage-recent-updates .tile-halves:hover .tile-top img {
transform: scale(1.04);
}
.mainpage-recent-updates .tile-top {
height: 18vw;
min-height: 9em;
}
.mainpage-header .header-stats {
display: none;
}
.mainpage-left > *:last-child,
.mainpage-right > *:last-child {
margin-bottom: 0;
}
.popular-pages ul {
grid-template-columns: repeat(2, 1fr);
}
}
@media only screen and (max-width: 720px) {
.mainpage-recent-updates {
grid-template-columns: none;
}
.mainpage-recent-updates .tile-halves:last-child {
display: flex;
}
.mainpage-contents {
grid-template-columns: repeat(2, 1fr);
}
}
.mw-prefs-buttons {
background-color: var(--body-main);
border-top-color: var(--body-border);
box-shadow: none;
}
.mw-prefs-tabs-wrapper.oo-ui-panelLayout-framed,
.mw-prefs-tabs > .oo-ui-menuLayout-content > .oo-ui-indexLayout-stackLayout > .oo-ui-tabPanelLayout {
border-color: var(--body-border);
}
.mw-htmlform-ooui .mw-htmlform-matrix tbody tr:nth-child(even) td {
background-color: var(--body-light);
}
.mw-htmlform-ooui .mw-htmlform-matrix tbody tr:hover td {
background-color: var(--body-mid);
}
:root {
--rc-positive-color: #407813;
--rc-negative-color: #b41e0f;
}
.mw-plusminus-pos {
color: var(--rc-positive-color);
}
.mw-plusminus-neg {
color: var(--rc-negative-color);
}
.client-js .mw-recentchanges-toplinks:not(.mw-recentchanges-toplinks-collapsed) {
border-color: var(--body-border);
background-color: var(--body-light);
border-radius: 2px;
}
.mw-rcfilters-ui-filterTagMultiselectWidget-wrapper-content-title {
color: var(--text-color);
}
.mw-rcfilters-ui-filterTagMultiselectWidget-emptyFilters {
color: var(--byline-color);
}
.mw-rcfilters-ui-filterTagMultiselectWidget.oo-ui-widget-enabled .oo-ui-tagMultiselectWidget-handle {
background-color: var(--ooui-interface);
border-color: var(--ooui-interface-border);
}
.mw-rcfilters-ui-filterTagMultiselectWidget-views-select-widget.oo-ui-widget {
border-color: var(--ooui-interface-border);
}
.mw-rcfilters-collapsed .mw-rcfilters-ui-filterTagMultiselectWidget {
border-bottom-color: var(--ooui-interface-border);
}
.mw-rcfilters-ui-menuSelectWidget-footer {
background-color: var(--ooui-interface);
border-color: var(--ooui-interface-border);
}
.mw-rcfilters-ui-viewSwitchWidget label.oo-ui-labelWidget {
color: var(--byline-color);
}
.mw-rcfilters-ui-tagItemWidget-popup-content {
color: var(--ooui-text);
}
.mw-changeslist-legend,
.mw-rcfilters-ui-changesListWrapperWidget .mw-changeslist-legend {
background-color: var(--body-light);
border-color: var(--body-dark);
}
.mw-rcfilters-ui-changesListWrapperWidget-previousChangesIndicator {
border-color: var(--sidebar);
}
.client-js .mw-changeslist ul,
.client-js .mw-changeslist table.mw-enhanced-rc {
margin-left: 0;
}
.mw-rcfilters-ui-watchlistTopSectionWidget-separator {
border-color: var(--sidebar);
}
.mw-rcfilters-ui-itemMenuOptionWidget-header {
border-bottom-color: var(--ooui-interface);
background-color: var(--ooui-interface-border);
}
.mw-rcfilters-ui-itemMenuOptionWidget:not(:last-child):not(.mw-rcfilters-ui-itemMenuOptionWidget-identifier-talk) {
border-bottom-color: var(--ooui-normal-border);
}
.mw-rcfilters-ui-itemMenuOptionWidget-label-title,
.mw-rcfilters-ui-itemMenuOptionWidget-label-desc {
color: var(--text-color);
}
.mw-rcfilters-ui-filterMenuOptionWidget.oo-ui-flaggedElement-muted:not(.oo-ui-optionWidget-selected) {
background-color: var(--body-main);
}
.mw-rcfilters-ui-filterMenuOptionWidget.oo-ui-flaggedElement-muted .mw-rcfilters-ui-itemMenuOptionWidget-label-title,
.mw-rcfilters-ui-filterMenuOptionWidget.oo-ui-flaggedElement-muted .mw-rcfilters-ui-itemMenuOptionWidget-label-desc {
color: var(--subtle-color);
}
.mw-rcfilters-ui-filterMenuSectionOptionWidget {
background-color: var(--body-mid);
}
.mw-rcfilters-ui-filterMenuSectionOptionWidget-header-title.oo-ui-labelElement-label {
color: var(--ooui-text);
}
.mw-rcfilters-ui-filterMenuHeaderWidget-title {
color: var(--ooui-text);
}
.mw-rcfilters-ui-filterMenuHeaderWidget-header {
border-bottom-color: var(--ooui-interface-border);
background-color: var(--ooui-interface);
}
.mw-rcfilters-ui-itemMenuOptionWidget-view-namespaces {
border-top-color: var(--ooui-interface-border);
}
.mw-rcfilters-ui-datePopupWidget {
border-color: var(--ooui-interface-border);
}
.mw-rcfilters-ui-datePopupWidget .mw-rcfilters-ui-valuePickerWidget-title {
color: var(--byline-color);
}
.mw-rcfilters-ui-savedLinksListItemWidget-label {
color: var(--ooui-accent);
}
.client-js .mw-changeslist.mw-rcfilters-ui-changesListWrapperWidget-highlighted ul,
.client-js .mw-changeslist.mw-rcfilters-ui-changesListWrapperWidget-highlighted table.mw-enhanced-rc {
margin-left: 1.5em;
}
.page-Special_CreateAccount .mw-ui-container,
.page-Special_UserLogin .mw-ui-container {
max-width: 64rem;
margin: 0 auto;
}
.mw-number-text {
color: var(--byline-color);
}
.mw-body-content .mw-number-text h3 {
color: var(--text-color);
}
#mw-indicator-mw-helplink a {
background: none;
padding: 0;
display: flex;
align-items: center;
}
#mw-indicator-mw-helplink a::before {
content: '';
margin-right: 5px;
-webkit-mask: url("/resources/src/mediawiki.helplink/images/helpNotice.svg?46d34") no-repeat 50% 50% / contain;
mask: url("/resources/src/mediawiki.helplink/images/helpNotice.svg?46d34") no-repeat 50% 50% / contain;
background: var(--text-color);
height: 20px;
width: 20px;
}
.results-info {
color: inherit;
}
.mw-search-profile-tabs {
background-color: var(--body-mid);
border-color: transparent;
}
.search-types .current a {
color: inherit;
}
#mw-searchoptions {
background-color: var(--body-mid);
border-color: transparent;
}
#mw-searchoptions .divider {
border-color: var(--body-border);
}
#mw-searchoptions h4 {
font-family: inherit;
}
#mw-searchoptions .oo-ui-labelElement:nth-of-type(odd) {
font-weight: bold;
}
.searchresult {
line-height: 1.5;
}
.searchalttitle,
#mw-search-interwiki li {
font-size: 90%;
}
.mw-search-result-data {
color: var(--byline-color);
}
.page-Special_ListFiles a.image img {
width: inherit;
height: inherit;
}
.page-Special_ListFiles .TablePager_col_thumb {
text-align: center;
}
#editcount table[border="1"] {
background-color: var(--body-main) !important;
border-color: var(--wikitable-border) !important;
margin-top: 0.5em;
}
#editcount table[border="1"] th,
#editcount table[border="1"] td {
padding: 0.2em 0.4em;
}
#editcount table[border="1"] th {
background-color: var(--wikitable-header-bg);
border: 1px solid var(--wikitable-border);
}
#editcount table[border="1"] td {
border: 1px solid var(--wikitable-border);
}
#editcount table[border="1"] tr:nth-child(odd) {
background-color: var(--body-light);
}
.mw-echo-ui-notificationBadgeButtonPopupWidget-popup > .oo-ui-popupWidget-popup .mw-echo-ui-placeholderItemWidget {
background-color: inherit;
}
table.mw-interwikitable.body td.mw-interwikitable-local-yes {
background-color: var(--table-yes-background);
color: var(--table-yes-color);
}
.mw-protectedpages-unknown {
color: var(--byline-color);
}
.watchlistredir,
.allpagesredirect {
font-style: italic;
}
.allpagesredirect:after {
color: var(--byline-color);
content: " (redirect)";
}
.mw-apisandbox-toolbar {
background: var(--body-main);
}
.oo-ui-menuOptionWidget .mw-apisandbox-flag {
color: var(--byline-color);
}
tr.mw-abusefilter-list-disabled,
tr.mw-abusefilter-list-disabled td {
color: var(--byline-color);
}
table.mw-abuselog-details {
background: var(--wikitable-bg);
border-color: var(--wikitable-border);
}
table.mw-abuselog-details th {
background: var(--wikitable-header-bg);
}
table.mw-abuselog-details th,
table.mw-abuselog-details td {
border-color: var(--wikitable-border);
}
.mw-abusefilter-log-hidden-entry {
color: var(--subtle-color);
}
body td.mw-abusefilter-history-changed {
background: var(--table-no-background);
}
div.mw-abusefilter-editor,
#mw-abusefilter-warn-preview,
#mw-abusefilter-disallow-preview {
border-color: var(--ooui-input-border);
}
.mw-destfile-warning {
border-color: var(--warningbox-border);
color: var(--text-color);
background-color: var(--warningbox-bg);
}
span.fileinput-button {
background-color: var(--ooui-normal);
border-color: var(--ooui-normal-border);
color: var(--ooui-text);
}
ul.fileupload-results li.ful-success {
background-color: var(--successbox-bg);
}
ul.fileupload-results li.ful-success a {
color: var(--link-color);
}
ul.fileupload-results li.ful-error {
background-color: var(--errorbox-bg);
}
#t-print,
#t-permalink {
display: none;
}
#filetoc {
border-radius: 2px;
background: var(--body-mid);
border-color: transparent;
margin: 0.5em auto;
text-align: center;
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
}
li.gallerybox div.thumb {
border: none;
background-color: var(--thumb-bg);
}
.smwfact {
display: none;
}
.list-header {
background-color: var(--body-mid);
color: inherit;
}
.editOptions {
color: var(--text-color);
background-color: var(--sourceeditor-background-secondary);
border-color: var(--sourceeditor-border);
}
.mw-json th,
.mw-json td {
border-color: var(--wikitable-border);
}
.mw-json td {
background: var(--wikitable-bg);
}
.mw-json th {
background: var(--wikitable-header-bg);
}
02c685caf40344ae125e987451897f3eba1db9c6
1118
1116
2024-03-24T00:59:06Z
Merds
25
Updating CSS from [[MediaWiki:Common.less]]
css
text/css
/* <pre> */
:root {
--body-main: #feffff;
--body-light: #f2f2f2;
--body-mid: #d0bd97;
--body-dark: #e3e3e3;
--body-border: #878787;
--body-background-color: #173a4d;
--button-background: #605443;
--button-color: #fff;
--button-border: #3c352a;
--button-dark: #18140c;
--button-light: #3a301d;
--sidebar: #cfc08d;
--background-text-color: #e2dbc8;
--background-link-color: #e2bd8a;
--search-box: #efeee6;
--link-color: #936039;
--redlink-color: #ba0000;
--text-color: #2F2828;
--byline-color: #ccc;
--subtle-color: #777;
--admin-blue: #332e75;
--bearcat-green: #13592e;
--awb-purple: #933b96;
--rsw-blue: #438ab6;
--osrsw-brown: #605443;
--thumb-bg: var(--body-light);
--thumb-caption-bg: var(--body-mid);
--sourceeditor-input-background: #fff;
--sourceeditor-background: var(--body-light);
--sourceeditor-background-secondary: var(--body-light);
--sourceeditor-border: var(--body-mid);
--codemirror-gutter-background: var(--body-mid);
}
@font-face {
font-family: 'Lora';
font-weight: 400 700;
font-style: normal;
font-display: swap;
src: url('filepath://Lora.woff2') format('woff2');
}
@font-face {
font-family: 'Lora';
font-weight: 400 700;
font-style: italic;
font-display: swap;
src: url('filepath://Lora-Italic.woff2') format('woff2');
}
:root {
--base-text-color: #36414f;
--base-heading-color: #444e5a;
--base-heading-border: #e4eaee;
--mw-code-background-color: #ddd4bb;
--body-background-image: url('filepath://Wiki_background.jpg');
}
#mw-page-base {
background: none;
}
.mw-body {
background-color: var(--body-main);
color: var(--text-color);
border-color: transparent;
box-shadow: 0 0 7px rgba(0, 0, 0, 0.15);
margin-top: 0;
}
h1,
h2,
h3,
h4,
h5,
h6 {
color: var(--text-color);
}
h1,
h2 {
border-color: var(--sidebar);
}
.mw-body h1,
.mw-body-content h1,
.mw-body-content h2,
.mw-body-content h3,
.mw-body-content h4,
.mw-body-content h5,
.mw-body-content h6 {
font-family: 'Lora', 'Palatino', 'Georgia', serif;
}
.mw-parser-output h2:first-of-type {
clear: left;
}
.mw-footer {
color: var(--background-text-color);
}
.mw-footer li {
color: var(--background-text-color);
}
.mw-footer a,
.mw-footer a:active,
.mw-footer a:visited {
color: var(--background-link-color);
}
::placeholder {
color: var(--subtle-color);
}
a {
color: var(--link-color);
}
a:visited,
a:active {
color: var(--link-color);
}
a.new {
color: var(--redlink-color);
}
a.new:visited {
color: var(--redlink-color);
}
.mw-parser-output a.extiw,
.mw-parser-output a.external {
color: var(--link-color);
}
.mw-parser-output a.extiw:visited,
.mw-parser-output a.external:visited,
.mw-parser-output a.extiw:active,
.mw-parser-output a.external:active {
color: var(--link-color);
}
.jsPurgeLink a.external {
color: var(--link-color);
}
:root {
--errorbox-bg: #feecea;
--errorbox-border: #ee4231;
--warningbox-bg: #fef9de;
--warningbox-border: #f9d000;
--successbox-bg: #ecf8e3;
--successbox-border: #6bc71f;
}
.mw-message-box-error,
.errorbox,
.mw-message-box-warning,
.warningbox,
.mw-message-box-success,
.successbox,
.usermessage {
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
}
.mw-message-box-error,
.errorbox {
background-color: var(--errorbox-bg);
border-color: var(--errorbox-border);
}
.mw-message-box-warning,
.warningbox,
.usermessage {
background-color: var(--warningbox-bg);
border-color: var(--warningbox-border);
}
.mw-message-box-success,
.successbox {
background-color: var(--successbox-bg);
border-color: var(--successbox-border);
}
.catlinks {
background: var(--body-light);
border: 1px solid var(--body-dark);
padding: 8px 15px;
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
}
.catlinks li {
border-color: var(--body-mid);
}
.filehistory a img,
#file img {
background: url("data:image/svg+xml,%3C%3Fxml version='1.0' encoding='UTF-8'%3F%3E%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16'%3E%3Cpath d='M0 0h8v16h8V8H0z' opacity='.13'/%3E%3C/svg%3E") repeat;
}
#file img:hover {
background: none;
}
.mw-highlight {
background: none;
}
.mw-highlight .linenos {
background-color: var(--mw-code-background-color);
color: var(--byline-color);
}
.mw-highlight a:hover .linenos,
.mw-highlight .hll a .linenos {
color: var(--text-color);
}
.mw-content-ltr.mw-highlight-lines pre,
.mw-content-ltr.content .mw-highlight-lines pre {
box-shadow: inset 2.75em 0 0 var(--mw-code-background-color);
}
#pagehistory ul {
list-style: none;
margin: 0;
}
#pagehistory li {
border: 1px solid transparent;
padding: 1px 10px;
margin: 2px 0;
}
#pagehistory li.selected {
background-color: var(--body-light);
color: inherit;
border: 1px dashed var(--body-border);
outline: none;
}
#mw-history-compare > div:first-of-type {
position: -webkit-sticky;
position: sticky;
top: 0;
background-color: var(--body-main);
border-bottom: 1px solid var(--body-dark);
padding: 0.25em 0;
}
.wgl-stickyheader #mw-history-compare > div:first-of-type {
top: 2.5rem;
}
.autocomment,
.autocomment a,
.autocomment a:visited {
color: var(--link-color);
}
li span.deleted,
span.history-deleted {
color: var(--byline-color);
}
.mw-usertoollinks-contribs-no-edits,
.mw-usertoollinks-contribs-no-edits:visited {
color: var(--redlink-color);
}
.CategoryTreeToggle {
color: var(--link-color);
}
body.wgl-stickyheader.action-view .mw-headline:target::before {
display: block;
content: '';
margin-top: -3rem;
height: 3rem;
visibility: hidden;
pointer-events: none;
}
.mw-mmv-post-image {
color: var(--text-color);
background-color: var(--body-main);
}
.mw-mmv-image-metadata {
border-top-color: var(--body-mid);
background-color: var(--body-light);
}
.mw-mmv-dialog,
.mw-mmv-dialog .mw-mmv-dialog-down-arrow,
.mw-mmv-options-dialog .mw-mmv-dialog-down-arrow {
background-color: var(--body-light);
box-shadow: none;
}
.mw-mmv-options-enable-alert {
background-color: var(--body-light);
color: var(--text-color);
}
.mw-mmv-options-dialog-header,
.mw-mmv-options-text-header,
.mw-mmv-options-text-body,
.mw-mmv-options-enable-alert,
.mw-mmv-options-dialog .mw-mmv-disable-confirmation .mw-mmv-options-dialog-header,
.mw-mmv-options-dialog .mw-mmv-disable-confirmation .mw-mmv-options-text-header {
color: var(--text-color);
}
.mw-revslider-container {
border-color: var(--sidebar);
}
.mw-revslider-slider-wrapper {
border-top-color: var(--sidebar);
}
.mw-ui-button {
background-color: var(--ooui-normal);
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
}
.mw-ui-button:not(:disabled):hover,
.mw-ui-button:not(:disabled):active {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
}
.mw-ui-button:not(:disabled):focus {
color: var(--ooui-text);
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent), inset 0 0 0 2px #fff;
}
.mw-ui-button:not(:disabled):visited {
color: var(--ooui-text);
}
.mw-ui-button.mw-ui-progressive:not(:disabled) {
background-color: var(--ooui-progressive);
color: #fff;
border-color: var(--ooui-progressive);
}
.mw-ui-button.mw-ui-progressive:not(:disabled):hover {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
}
.mw-ui-button.mw-ui-progressive:not(:disabled):focus {
box-shadow: inset 0 0 0 1px var(--ooui-accent), inset 0 0 0 2px #fff;
}
.mw-ui-button.mw-ui-progressive:not(:disabled):active,
.mw-ui-button.mw-ui-progressive:not(:disabled).is-on {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
box-shadow: none;
}
.mw-ui-button.mw-ui-destructive:not( :disabled ) {
color: #fff;
}
.mw-ui-button.mw-ui-quiet,
.mw-ui-button.mw-ui-quiet.mw-ui-progressive,
.mw-ui-button.mw-ui-quiet.mw-ui-destructive {
color: var(--text-color);
}
input[type='checkbox']:hover + .mw-ui-button.mw-ui-quiet,
input[type='checkbox']:hover + .mw-ui-button.mw-ui-quiet.mw-ui-progressive,
input[type='checkbox']:hover + .mw-ui-button.mw-ui-quiet.mw-ui-destructive,
.mw-ui-button.mw-ui-quiet:hover,
.mw-ui-button.mw-ui-quiet.mw-ui-progressive:hover,
.mw-ui-button.mw-ui-quiet.mw-ui-destructive:hover {
background-color: rgba(0, 24, 73, 0.02745098);
color: var(--text-color);
border-color: transparent;
}
input[type='checkbox']:focus + .mw-ui-button.mw-ui-quiet,
input[type='checkbox']:focus + .mw-ui-button.mw-ui-quiet.mw-ui-progressive,
input[type='checkbox']:focus + .mw-ui-button.mw-ui-quiet.mw-ui-destructive,
.mw-ui-button.mw-ui-quiet:focus,
.mw-ui-button.mw-ui-quiet.mw-ui-progressive:focus,
.mw-ui-button.mw-ui-quiet.mw-ui-destructive:focus {
color: var(--text-color);
}
input[type='checkbox']:active + .mw-ui-button.mw-ui-quiet,
input[type='checkbox']:active + .mw-ui-button.mw-ui-quiet.mw-ui-progressive,
input[type='checkbox']:active + .mw-ui-button.mw-ui-quiet.mw-ui-destructive,
.mw-ui-button.mw-ui-quiet:active,
.mw-ui-button.mw-ui-quiet.mw-ui-progressive:active,
.mw-ui-button.mw-ui-quiet.mw-ui-destructive:active {
background-color: rgba(0, 36, 73, 0.08235294);
color: var(--text-color);
border-color: #72777d;
}
.mw-ui-input {
background-color: var(--ooui-input);
color: var(--text-color);
border-color: var(--ooui-input-border);
}
.mw-ui-input:hover {
border-color: var(--ooui-input-border--hover);
}
.mw-ui-input::placeholder {
color: var(--byline-color);
}
.mw-content-ltr .redirectText li:first-child {
padding: 0;
background: 0;
}
.mw-content-ltr .redirectText li:first-child::before {
content: '';
background: currentcolor;
-webkit-mask: url("filepath://Redirect-arrow.svg") no-repeat 50% 50% / contain;
mask: url("filepath://Redirect-arrow.svg") no-repeat 50% 50% / contain;
display: inline-block;
width: 47px;
height: 20px;
}
:root {
--wikitable-header-bg: var(--body-dark);
--wikitable-border: var(--body-border);
--wikitable-bg: var(--body-light);
--wikitable-bg-lighter: #e9e3d6;
--wikitable-color: var(--text-color);
--table-na-background: rgba(255, 255, 255, 0.3);
--table-na-color: var(--subtle-color);
--table-yes-background: #c3e8a3;
--table-yes-color: #2e5e05;
--table-no-background: #fbc0ba;
--table-no-color: #801c13;
--table-maybe-background: #fcea94;
--table-maybe-color: #786300;
}
.wikitable {
background: var(--wikitable-bg);
color: var(--wikitable-color);
border-color: var(--wikitable-border);
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
}
.wikitable > tr > th,
.wikitable > tr > td,
.wikitable > * > tr > th,
.wikitable > * > tr > td {
border-color: var(--wikitable-border);
}
.wikitable > tr > th.table-noborder,
.wikitable > tr > td.table-noborder,
.wikitable > * > tr > th.table-noborder,
.wikitable > * > tr > td.table-noborder {
border-left-style: hidden;
border-right-style: hidden;
padding-left: 0;
padding-right: 0;
}
.wikitable > tr > th,
.wikitable > * > tr > th {
background-color: var(--wikitable-header-bg);
}
.tabber .wikitable {
box-shadow: none;
}
.mw_metadata td,
.mw_metadata th {
border-color: var(--wikitable-border);
}
.mw_metadata th {
background-color: var(--wikitable-header-bg);
}
.mw_metadata td {
background-color: var(--wikitable-bg);
}
.mw-datatable {
border-color: var(--wikitable-border);
}
.mw-datatable td,
.mw-datatable th {
border-color: var(--wikitable-border);
}
.mw-datatable th {
background-color: var(--wikitable-header-bg);
}
.mw-datatable td {
background-color: var(--wikitable-bg);
}
.mw-datatable tr:hover td {
background-color: var(--wikitable-bg);
}
table.alternating-rows tr:nth-child(odd),
table.alternating-cols td:nth-child(odd) {
background: var(--wikitable-alternating-bg);
}
.table-na {
background: var(--table-na-background);
color: var(--table-na-color);
vertical-align: middle;
text-align: center;
}
.table-yes {
background: var(--table-yes-background);
color: var(--table-yes-color);
}
.table-positive {
background: var(--table-yes-background);
}
.table-no {
background: var(--table-no-background);
color: var(--table-no-color);
}
.table-negative {
background: var(--table-no-background);
}
.table-maybe {
background: var(--table-maybe-background);
color: var(--table-maybe-color);
}
#mw-allmessagestable .am_actual,
#mw-allmessagestable .am_default {
background-color: var(--wikitable-bg);
}
#mw-allmessagestable .am_default:hover,
#mw-allmessagestable .am_actual:hover,
#mw-allmessagestable tbody:hover td {
background-color: var(--wikitable-bg-lighter);
}
table.wikitable td.no-cell-spacing {
padding: 0;
height: 0;
}
table.wikitable td.no-cell-spacing table {
margin: -1px;
width: calc(100% + 2px);
height: calc(100% + 2px);
}
.plainlist ol,
.plainlist ul {
margin: 0;
}
.plainlist li {
margin-bottom: 0;
list-style: none;
}
table.align-right-1 td:nth-of-type(1),
table.align-right-2 td:nth-of-type(2),
table.align-right-3 td:nth-of-type(3),
table.align-right-4 td:nth-of-type(4),
table.align-right-5 td:nth-of-type(5),
table.align-right-6 td:nth-of-type(6),
table.align-right-7 td:nth-of-type(7),
table.align-right-8 td:nth-of-type(8),
table.align-right-9 td:nth-of-type(9),
table.align-right-10 td:nth-of-type(10),
table.align-right-11 td:nth-of-type(11),
table.align-right-12 td:nth-of-type(12),
table.align-right-13 td:nth-of-type(13),
table.align-right-14 td:nth-of-type(14),
table.align-right-15 td:nth-of-type(15),
table.align-right-16 td:nth-of-type(16),
table.align-right-17 td:nth-of-type(17),
table.align-right-18 td:nth-of-type(18),
table.align-right-19 td:nth-of-type(19),
table.align-right-20 td:nth-of-type(20) {
text-align: right;
}
table.align-center-1 td:nth-of-type(1),
table.align-center-2 td:nth-of-type(2),
table.align-center-3 td:nth-of-type(3),
table.align-center-4 td:nth-of-type(4),
table.align-center-5 td:nth-of-type(5),
table.align-center-6 td:nth-of-type(6),
table.align-center-7 td:nth-of-type(7),
table.align-center-8 td:nth-of-type(8),
table.align-center-9 td:nth-of-type(9),
table.align-center-10 td:nth-of-type(10),
table.align-center-11 td:nth-of-type(11),
table.align-center-12 td:nth-of-type(12),
table.align-center-13 td:nth-of-type(13),
table.align-center-14 td:nth-of-type(14),
table.align-center-15 td:nth-of-type(15),
table.align-center-16 td:nth-of-type(16),
table.align-center-17 td:nth-of-type(17),
table.align-center-18 td:nth-of-type(18),
table.align-center-19 td:nth-of-type(19),
table.align-center-20 td:nth-of-type(20) {
text-align: center;
}
table.align-left-1 td:nth-of-type(1),
table.align-left-2 td:nth-of-type(2),
table.align-left-3 td:nth-of-type(3),
table.align-left-4 td:nth-of-type(4),
table.align-left-5 td:nth-of-type(5),
table.align-left-6 td:nth-of-type(6),
table.align-left-7 td:nth-of-type(7),
table.align-left-8 td:nth-of-type(8),
table.align-left-9 td:nth-of-type(9),
table.align-left-10 td:nth-of-type(10),
table.align-left-11 td:nth-of-type(11),
table.align-left-12 td:nth-of-type(12),
table.align-left-13 td:nth-of-type(13),
table.align-left-14 td:nth-of-type(14),
table.align-left-15 td:nth-of-type(15),
table.align-left-16 td:nth-of-type(16),
table.align-left-17 td:nth-of-type(17),
table.align-left-18 td:nth-of-type(18),
table.align-left-19 td:nth-of-type(19),
table.align-left-20 td:nth-of-type(20) {
text-align: left;
}
:root {
--diff-addedline-border-color: #438ab5;
--diff-addedline-background: #bddff2;
--diff-addedline-color: #000;
--diff-deletedline-border-color: #379541;
--diff-deletedline-background: #c1edbf;
--diff-deletedline-color: #000;
--diff-context-border-color: var(--body-mid);
--diff-context-background: var(--body-mid);
}
.diff-context {
border-color: var(--diff-context-border-color);
background: var(--diff-context-background);
color: inherit;
}
.diff-addedline {
border-color: var(--diff-addedline-border-color);
}
.diff-addedline .diffchange {
background: var(--diff-addedline-background);
color: var(--diff-addedline-color);
}
.diff-deletedline {
border-color: var(--diff-deletedline-border-color);
}
.diff-deletedline .diffchange {
background: var(--diff-deletedline-background);
color: var(--diff-deletedline-color);
}
.mw-diff-movedpara-left:after,
.mw-diff-movedpara-right:after {
color: var(--text-color);
}
.mw-notification {
background-color: var(--body-light);
border-color: var(--body-border);
color: var(--text-color);
}
.mw-echo-ui-notificationsInboxWidget-toolbarWrapper {
background: var(--body-main);
}
.mw-body-content .mw-echo-ui-datedSubGroupListWidget-title-secondary {
color: var(--byline-color);
}
.mw-echo-ui-pageNotificationsOptionWidget.oo-ui-optionWidget-selected {
background-color: var(--ooui-normal);
color: var(--ooui-accent);
}
.mw-echo-ui-pageNotificationsOptionWidget-label-count {
background-color: var(--ooui-normal);
color: var(--byline-color);
}
.oo-ui-optionWidget-selected .mw-echo-ui-pageNotificationsOptionWidget-label-count {
color: var(--ooui-accent);
}
.mw-echo-ui-pageNotificationsOptionWidget.oo-ui-optionWidget-highlighted {
background-color: var(--ooui-normal);
color: var(--text-color);
}
.mw-echo-ui-crossWikiUnreadFilterWidget {
border-color: var(--body-border);
}
.mw-echo-ui-crossWikiUnreadFilterWidget-subtitle {
color: var(--byline-color);
}
.mw-echo-ui-notificationBadgeButtonPopupWidget-popup > .oo-ui-popupWidget-popup > .oo-ui-popupWidget-head,
.mw-echo-ui-notificationBadgeButtonPopupWidget-popup > .oo-ui-popupWidget-popup > .oo-ui-popupWidget-footer {
border-color: var(--ooui-interface-border);
}
.mw-echo-ui-notificationBadgeButtonPopupWidget-popup > .oo-ui-popupWidget-popup > .oo-ui-popupWidget-footer .mw-echo-ui-notificationBadgeButtonPopupWidget-footer-buttons .oo-ui-buttonElement:last-child {
border-left-color: var(--ooui-normal-border);
}
.mw-echo-ui-notificationItemWidget {
background-color: var(--ooui-normal);
border-color: var(--ooui-normal-border);
}
.mw-echo-ui-notificationItemWidget:hover,
.mw-echo-ui-notificationItemWidget-unread:hover {
background-color: var(--ooui-normal--hover);
}
.mw-echo-ui-notificationItemWidget:last-child {
border-bottom-color: var(--ooui-normal-border);
}
.mw-echo-ui-notificationItemWidget-unread {
background-color: var(--search-box);
}
.mw-echo-ui-crossWikiNotificationItemWidget-group,
.mw-echo-ui-bundleNotificationItemWidget-group {
background-color: var(--ooui-interface);
}
.mw-echo-ui-toggleReadCircleButtonWidget-circle {
background-color: var(--ooui-progressive);
}
.mw-echo-ui-toggleReadCircleButtonWidget:hover .mw-echo-ui-toggleReadCircleButtonWidget-circle {
background-color: var(--ooui-progressive--hover);
}
.mw-echo-ui-toggleReadCircleButtonWidget-circle-unread {
background-color: var(--ooui-normal);
border-color: var(--ooui-normal-border);
}
.mw-echo-ui-notificationItemWidget-content-message-header,
.mw-echo-ui-notificationItemWidget-content-message-body,
.mw-echo-ui-menuItemWidget > .oo-ui-buttonElement-button > .oo-ui-labelElement-label,
.mw-echo-ui-notificationItemWidget-content-actions-timestamp {
color: var(--ooui-text);
}
.mw-echo-ui-bundleNotificationItemWidget-group {
background-color: var(--body-main);
}
@keyframes unseen-fadeout-to-unread {
from {
background-color: var(--wikitable-bg-lighter);
}
to {
background-color: var(--search-box);
}
}
@keyframes unseen-fadeout-to-read {
from {
background-color: var(--wikitable-bg-lighter);
}
to {
background-color: var(--body-main);
}
}
.mwe-popups {
background: var(--body-light);
}
.mwe-popups .mwe-popups-container {
color: var(--text-color);
background: var(--body-light);
}
.mwe-popups .mwe-popups-container.flipped-x-y:before,
.mwe-popups .mwe-popups-container.flipped-y:before {
border-top: none;
}
.mwe-popups .mwe-popups-container.mwe-popups-no-image-tri:before {
border-bottom: none;
}
.mwe-popups .mwe-popups-container.flipped-x-y:after,
.mwe-popups .mwe-popups-container.flipped-y:after {
border-top-color: var(--body-light);
}
.mwe-popups .mwe-popups-container.mwe-popups-no-image-tri:after {
border-bottom-color: var(--body-light);
}
.mwe-popups .mwe-popups-settings-icon:hover,
.mwe-popups .mwe-popups-settings-icon:active {
background-color: var(--ooui-normal--hover);
}
.mwe-popups .mw-ui-icon-element:not(.disabled):hover {
background: none;
}
.mwe-popups .mwe-popups-extract {
color: var(--text-color);
}
.mwe-popups .mwe-popups-extract[dir='ltr']:after {
background-image: linear-gradient(to right, rgba(49, 62, 89, 0), var(--body-light) 50%);
}
.mwe-popups-overlay {
background-color: var(--ooui-window-background);
}
#mwe-popups-settings {
background: var(--ooui-interface);
border-color: var(--ooui-interface-border);
color: var(--text-color);
}
#mwe-popups-settings header {
border-color: var(--ooui-interface-border);
}
#mwe-popups-settings main#mwe-popups-settings-form p {
color: var(--byline-color);
}
#mwe-popups-settings main#mwe-popups-settings-form form label > span {
color: var(--ooui-text);
}
:root {
--smw-ask-options-even-bg: var(--body-mid);
--smw-ask-options-odd-bg: var(--body-light);
--smw-ask-action-btn-lblue-bg: var(--body-main);
--smw-ask-action-btn-lblue-color: #000;
--smw-ask-action-btn-lblue-border-color: var(--body-light);
--smw-ask-action-btn-dblue-bg: var(--body-light);
--smw-ask-action-btn-dblue-color: #fff;
--smw-ask-action-btn-dblue-border-color: var(--button-border);
}
.smw-ask-condition fieldset,
.smw-ask-printhead fieldset {
border-color: var(--sidebar);
}
.smw-ask-search fieldset,
.smw-ask-format fieldset,
.smw-ask-options fieldset {
border-color: var(--sidebar);
}
.strike > span:before,
.strike > span:after {
background: var(--sidebar);
}
.smw-ask-options-fields tr td {
background-color: var(--smw-ask-options-even-bg);
}
.smw-ask-options-fields tr:nth-child(odd) td {
background-color: var(--smw-ask-options-odd-bg);
}
.smw-ask-action-btn.smw-ask-action-btn-lblue,
.smw-ask-action-btn.smw-ask-action-btn-lblue:hover,
.smw-ask-action-btn.smw-ask-action-btn-lblue:visited {
background-color: var(--smw-ask-action-btn-lblue-bg);
color: var(--smw-ask-action-btn-lblue-color);
border-color: var(--smw-ask-action-btn-lblue-border-color);
}
.smw-ask-action-btn.smw-ask-action-btn-dblue,
.smw-ask-action-btn.smw-ask-action-btn-dblue:hover,
.smw-ask-action-btn.smw-ask-action-btn-dblue:visited {
background-color: var(--smw-ask-action-btn-dblue-bg);
color: var(--smw-ask-action-btn-dblue-color);
border-color: var(--smw-ask-action-btn-dblue-border-color);
}
.smw-ask-query textarea,
.smw-ask-actions textarea {
background-color: var(--ooui-interface);
border-color: var(--ooui-interface-border);
color: var(--ooui-text);
}
.smw-ask-query-format select {
background-color: var(--ooui-interface);
border: 1px solid var(--ooui-interface-border);
color: var(--ooui-text);
}
.smw-ask-toplinks {
background-color: var(--body-mid);
}
.smw-ask-toplinks span.smw-icon-info {
background: none;
padding: 0 !important;
}
.smw-ask-toplinks span.smw-icon-info::before {
content: '';
background: var(--text-color);
-webkit-mask: url("data:image/svg+xml,%3C%3Fxml version='1.0' encoding='UTF-8'%3F%3E%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 20 20'%3E%3Ctitle%3Einfo%3C/title%3E%3Cpath d='M10 0C4.477 0 0 4.477 0 10s4.477 10 10 10 10-4.477 10-10S15.523 0 10 0zM9 5h2v2H9zm0 4h2v6H9z'/%3E%3C/svg%3E") no-repeat 50% 50% / contain;
mask: url("data:image/svg+xml,%3C%3Fxml version='1.0' encoding='UTF-8'%3F%3E%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 20 20'%3E%3Ctitle%3Einfo%3C/title%3E%3Cpath d='M10 0C4.477 0 0 4.477 0 10s4.477 10 10 10 10-4.477 10-10S15.523 0 10 0zM9 5h2v2H9zm0 4h2v6H9z'/%3E%3C/svg%3E") no-repeat 50% 50% / contain;
padding: 0 0 3px 18px;
}
.smw-ask-options-row-odd {
background-color: var(--body-light);
}
.smw-ask-options-row-even {
background-color: var(--body-mid);
}
#options-toggle:not(:checked) + #options-list .options-parameter-list:after {
background-image: linear-gradient(to bottom, transparent, var(--body-mid) 90%);
}
.smw-ask-button-submit input {
background-color: var(--ooui-normal);
border-color: var(--ooui-normal-border);
color: var(--text-color);
}
.smw-ask-button-submit input:hover,
.smw-ask-button-lgrey:hover {
background-color: var(--ooui-normal--hover);
border-color: var(--ooui-normal-border);
}
input.smw-ask-action-btn.smw-ask-action-btn-dblue {
background-color: var(--ooui-normal);
border-color: var(--ooui-normal-border);
color: var(--ooui-text);
}
a.smw-ask-action-btn.smw-ask-action-btn-lblue {
background-color: var(--body-mid);
border-color: var(--body-mid);
color: var(--ooui-text);
}
a.smw-ask-action-btn.smw-ask-action-btn-lblue:visited {
background-color: var(--body-mid);
border-color: var(--body-mid);
color: var(--ooui-text);
}
a.smw-ask-action-btn.smw-ask-action-btn-lblue:hover {
background-color: var(--body-mid);
border-color: var(--body-mid);
color: var(--ooui-text);
}
a.smw-ask-action-btn-lgrey {
background-color: var(--ooui-normal);
border-color: var(--ooui-normal-border);
color: var(--ooui-text);
}
a.smw-ask-action-btn-lgrey:hover {
background-color: var(--ooui-normal--hover);
border-color: var(--ooui-normal-border);
color: var(--ooui-text);
}
.smw-callout-error {
background-color: var(--errorbox-bg);
border-color: var(--errorbox-border);
}
.smw-callout-info {
background-color: var(--body-light);
border-color: var(--body-dark);
}
.smw-callout-success {
background-color: var(--successbox-bg);
border-color: var(--successbox-border);
}
.smw-callout-warning {
background-color: var(--warningbox-bg);
border-color: var(--warningbox-bg);
}
.smw-tabs input.nav-tab:checked + label.nav-label,
.smw-tabs input.nav-tab:checked + label.nav-label:hover {
color: inherit;
}
#tab-smw-property-value:checked + label.nav-label .usage-count {
color: #fff;
background-color: var(--ooui-progressive);
}
#tab-smw-property-value:checked + label.nav-label .usage-count.moderate {
color: #fff;
background-color: #b55e0c;
border-color: #b55e0c;
}
#tab-smw-property-value:checked + label.nav-label .usage-count.high {
color: #fff;
background-color: #9f261e;
border-color: #9f261e;
}
.smw-property-page-results .header-title {
background-color: var(--ooui-interface);
border-bottom-color: var(--ooui-interface-border);
color: var(--ooui-text);
}
.smw-property-page-results .value-row:hover {
background-color: var(--ooui-normal--hover);
}
.smw-property-page-results .smw-table .header-row {
color: var(--text-color);
}
.tippy-tooltip.light-border-theme {
background-color: var(--body-light);
color: var(--text-color);
}
.tippy-tooltip.light-border-theme .tippy-arrow {
border-top-color: var(--body-light);
}
.tippy-tooltip.light-border-theme .tippy-arrow:after {
border-top-color: var(--body-light);
}
.tippy-header {
background-color: var(--body-dark);
border-bottom-color: var(--body-mid);
}
.smw-ui-input-filter {
background-color: var(--ooui-interface);
border-color: var(--ooui-interface-border);
color: var(--ooui-text);
}
.smw-ui-input-filter input {
border-left-color: var(--ooui-interface-border) !important;
color: var(--ooui-text) !important;
}
.smw-ui-pagination .page-link.link-disabled {
background-color: var(--ooui-disabled);
border-color: var(--ooui-disabled-border);
color: var(--subtle-color);
}
.smw-ui-pagination .page-link {
background-color: var(--ooui-normal);
border-color: var(--ooui-normal-border);
color: var(--link-color);
}
.smw-ui-pagination .page-link:hover {
background-color: var(--ooui-normal--hover);
border-color: var(--ooui-normal-border);
color: var(--link-color);
}
.smw-ui-pagination .page-link.link-active {
color: #fff;
background-color: var(--ooui-progressive);
border-color: var(--ooui-progressive);
}
.smw-tabs input.nav-tab:checked + label.nav-label {
border-color: var(--ooui-normal-border);
}
.smw-tabs section,
.smw-tabs .subtab-content {
border-top-color: var(--ooui-normal-border);
}
.smw-column-header {
color: var(--text-color);
}
.smw-factbox {
background: var(--body-main);
border-color: transparent;
}
.mw-body .mw-indicators #mw-indicator-smw-entity-examiner.mw-indicator .smw-indicator-vertical-bar-loader {
display: none;
}
.smwb-theme-light .smwb-title,
.smwb-theme-light .smwb-center,
.smwb-theme-light .smwb-actions,
.smwb-theme-light .smwb-prophead {
background-color: var(--body-mid);
}
.smwb-theme-light .smwb-factbox {
border-left-color: var(--body-mid);
}
.smwb-theme-light .smwb-ifactbox {
border-right-color: var(--body-mid);
}
.smwb-theme-light .smwb-propval {
background-color: var(--body-light);
}
.smwb-action-separator {
border-color: var(--wikitable-border);
}
.smwb-bottom {
border-bottom: 1px solid var(--wikitable-border);
}
.smwb-ifactbox .smwb-cell,
.smwb-factbox .smwb-cell {
border-top: 1px solid var(--wikitable-border);
}
.smwb-propvalue .smwb-prophead,
.smwb-ipropvalue .smwb-prophead,
.smwb-propvalue .smwb-propval,
.smwb-ipropvalue .smwb-propval {
font-size: 0.9em;
}
:root {
--filter-black-to-link: invert(36%) sepia(58%) saturate(433%) hue-rotate(344deg) brightness(100%) contrast(91%);
}
#bodyContent span.smwbrowse a {
color: black;
background-image: url('filepath://Smwbrowse.svg');
filter: var(--filter-black-to-link);
}
#bodyContent span.smwbrowse a:hover {
color: black;
background-image: url('filepath://Smwbrowse-hover.svg');
text-decoration: underline;
}
#bodyContent span.smwsearch a {
color: black;
filter: var(--filter-black-to-link);
background-image: url('filepath://Smwsearch.svg');
}
#bodyContent span.smwsearch a:hover {
color: black;
background-image: url('filepath://Smwsearch-hover.svg');
text-decoration: underline;
}
:root {
--tabber-tab-bg: var(--body-light);
--tabber-tab-border-color: var(--body-border);
--tabber-active-tab-bg: var(--body-light);
--tabber-active-tab-color: var(--text-color);
--tabber-active-tab-hover-bg: var(--body-light);
--tabber-active-tab-hover-border-color: var(--body-border);
--tabber-active-tab-hover-color: var(--text-color);
--tabber-active-tab-border-hider-color: var(--body-light);
--tabber-inactive-tab-bg: var(--body-background-color);
--tabber-inactive-tab-border-color: var(--body-border);
--tabber-inactive-tab-color: var(--text-color);
--tabber-inactive-tab-hover-bg: var(--body-light);
--tabber-inactive-tab-hover-border-color: var(--body-border);
}
.tabber {
margin: 1em 0;
}
.tabber .tabbertab {
background-color: var(--tabber-tab-bg);
border: 1px solid var(--tabber-tab-border-color);
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
padding: 1em 1.5em;
}
ul.tabbernav {
border: none;
margin-left: 2em;
margin-bottom: 0;
margin-right: 2em;
padding: 0;
font-family: inherit;
}
ul.tabbernav li.tabberactive > a {
background-color: var(--tabber-active-tab-bg);
color: var(--tabber-active-tab-color);
border-bottom: none;
position: relative;
}
ul.tabbernav li.tabberactive > a:hover {
color: var(--tabber-active-tab-hover-color);
background-color: var(--tabber-active-tab-hover-bg);
border-color: var(--tabber-active-tab-hover-border-color);
border-bottom: none;
}
ul.tabbernav li.tabberactive > a::after {
content: '';
position: absolute;
left: 0;
right: 0;
bottom: -1px;
border-bottom: 2px solid var(--tabber-active-tab-border-hider-color);
}
ul.tabbernav li a {
background-color: var(--tabber-inactive-tab-bg);
border-bottom: transparent;
border-color: var(--tabber-inactive-tab-border-color);
color: var(--tabber-inactive-tab-color);
display: inline-block;
font-size: 110%;
padding: 0.5em 1em;
}
ul.tabbernav li a:hover {
background-color: var(--tabber-inactive-tab-hover-bg);
border-color: var(--tabber-inactive-tab-hover-border-color);
}
ul.tabbernav li a:link,
ul.tabbernav li a:visited {
color: var(--tabber-inactive-tab-color);
}
:root {
--ooui-text: var(--text-color);
--ooui-interface: var(--body-light);
--ooui-interface-border: var(--body-border);
--ooui-window-background: rgba(255, 255, 255, 0.5);
--ooui-normal: #d5c7ad;
--ooui-normal--hover: #dfd5c1;
--ooui-normal-border: #b8a282;
--ooui-progressive: #605443;
--ooui-progressive--hover: #7e6e58;
--ooui-accent: var(--link-color);
--ooui-input: #fff;
--ooui-input-border: #b8a282;
--ooui-input-border--hover: #8a724f;
--ooui-disabled: #d1cdc5;
--ooui-disabled-border: #c2b9ab;
--ooui-disabled-text: var(--subtle-color);
--ooui-pending-background-image: repeating-linear-gradient(-45deg, var(--search-box), var(--search-box) 20px, var(--body-main) 20px, var(--body-main) 30px);
}
.oo-ui-widget {
color: var(--ooui-text);
}
.oo-ui-checkboxInputWidget [type='checkbox'] + span,
.oo-ui-radioInputWidget [type='radio'] + span {
background-color: var(--ooui-input);
border-color: var(--ooui-input-border);
}
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:checked + span,
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:indeterminate + span {
background-color: var(--ooui-progressive);
border-color: var(--ooui-progressive);
}
.oo-ui-radioInputWidget.oo-ui-widget-enabled [type='radio']:checked + span {
border-color: var(--ooui-progressive);
}
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:checked:hover + span,
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:indeterminate:hover + span {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
}
.oo-ui-radioInputWidget.oo-ui-widget-enabled [type='radio']:checked:hover + span {
border-color: var(--ooui-progressive--hover);
}
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:hover + span,
.oo-ui-radioInputWidget.oo-ui-widget-enabled [type='radio']:hover + span {
border-color: var(--ooui-accent);
}
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:focus + span {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:active + span,
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:checked:active + span,
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:indeterminate:active + span {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
box-shadow: inset 0 0 0 1px var(--ooui-progressive--hover);
}
.oo-ui-radioInputWidget.oo-ui-widget-enabled [type='radio']:active + span {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
}
.oo-ui-radioInputWidget.oo-ui-widget-enabled [type='radio']:checked:active + span {
border-color: var(--ooui-progressive--hover);
box-shadow: inset 0 0 0 1px var(--ooui-progressive--hover);
}
.oo-ui-radioInputWidget.oo-ui-widget-enabled [type='radio']:checked:active + span:before {
border-color: var(--ooui-progressive--hover);
}
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:checked:focus + span,
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:indeterminate:focus + span {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent), inset 0 0 0 2px #fff;
}
.oo-ui-checkboxInputWidget [type='checkbox']:disabled + span,
.oo-ui-radioInputWidget [type='radio']:disabled + span {
background-color: var(--ooui-disabled);
border-color: var(--ooui-disabled);
}
.oo-ui-dropdownWidget-handle {
border-color: var(--ooui-normal-border);
}
.oo-ui-dropdownWidget.oo-ui-widget-enabled .oo-ui-dropdownWidget-handle {
background-color: var(--ooui-normal);
color: var(--ooui-text);
}
.oo-ui-dropdownWidget.oo-ui-widget-enabled .oo-ui-dropdownWidget-handle:hover {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
}
.oo-ui-dropdownWidget.oo-ui-widget-enabled .oo-ui-dropdownWidget-handle:active {
color: var(--ooui-text);
}
.oo-ui-dropdownWidget.oo-ui-widget-enabled .oo-ui-dropdownWidget-handle:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-dropdownWidget.oo-ui-widget-enabled.oo-ui-dropdownWidget-open .oo-ui-dropdownWidget-handle {
background-color: var(--ooui-normal--hover);
}
.oo-ui-dropdownWidget.oo-ui-widget-disabled .oo-ui-dropdownWidget-handle {
color: var(--ooui-disabled-text);
text-shadow: none;
border-color: var(--ooui-disabled-border);
background-color: var(--ooui-disabled);
}
.oo-ui-dropdownInputWidget select {
border-color: var(--ooui-normal-border);
}
.oo-ui-dropdownInputWidget option {
background-color: var(--ooui-interface);
}
.oo-ui-dropdownInputWidget.oo-ui-widget-enabled {
background-color: var(--ooui-normal);
}
.oo-ui-dropdownInputWidget.oo-ui-widget-enabled:hover {
background-color: var(--ooui-normal--hover);
}
.oo-ui-dropdownInputWidget.oo-ui-widget-enabled select {
color: var(--ooui-text);
}
.oo-ui-dropdownInputWidget.oo-ui-widget-enabled select:hover,
.oo-ui-dropdownInputWidget.oo-ui-widget-enabled select:active {
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
}
.oo-ui-dropdownInputWidget.oo-ui-widget-enabled select:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-labelWidget.oo-ui-inline-help {
color: var(--byline-color);
}
.oo-ui-menuSelectWidget {
background-color: var(--ooui-interface);
border-color: var(--ooui-interface-border);
}
.oo-ui-menuSelectWidget-frameless {
box-shadow: inset 0 -1px 0 0 var(--ooui-normal-border);
}
.oo-ui-menuSectionOptionWidget {
color: var(--byline-color);
}
.oo-ui-menuOptionWidget.oo-ui-optionWidget-highlighted,
.oo-ui-menuOptionWidget.oo-ui-optionWidget-selected {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
}
.oo-ui-menuOptionWidget.oo-ui-optionWidget-selected.oo-ui-menuOptionWidget.oo-ui-optionWidget-highlighted,
.oo-ui-menuOptionWidget.oo-ui-optionWidget-pressed.oo-ui-menuOptionWidget.oo-ui-optionWidget-highlighted {
color: var(--ooui-accent);
}
.oo-ui-menuOptionWidget.oo-ui-widget-enabled.oo-ui-optionWidget {
color: var(--ooui-text);
}
.oo-ui-messageDialog-title {
color: inherit;
}
.oo-ui-messageWidget.oo-ui-messageWidget-block.oo-ui-flaggedElement-error {
background-color: var(--errorbox-bg);
border-color: var(--errorbox-border);
}
.oo-ui-messageWidget.oo-ui-messageWidget-block.oo-ui-flaggedElement-warning {
background-color: var(--warningbox-bg);
border-color: var(--warningbox-border);
}
.oo-ui-messageWidget.oo-ui-messageWidget-block.oo-ui-flaggedElement-success {
background-color: var(--successbox-bg);
border-color: var(--successbox-border);
}
.oo-ui-messageWidget.oo-ui-messageWidget-block.oo-ui-flaggedElement-notice {
background-color: var(--messagebox-info-background);
border-color: var(--messagebox-info-border);
}
.oo-ui-messageWidget.oo-ui-flaggedElement-error:not(.oo-ui-messageWidget-block),
.oo-ui-messageWidget.oo-ui-flaggedElement-success:not(.oo-ui-messageWidget-block) {
color: var(--ooui-text);
}
.oo-ui-optionWidget.oo-ui-widget-disabled {
color: var(--ooui-disabled-text);
}
.oo-ui-outlineControlsWidget {
background-color: var(--ooui-normal);
}
.oo-ui-outlineOptionWidget.oo-ui-optionWidget-highlighted {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
}
.oo-ui-popupWidget-popup {
background-color: var(--ooui-interface);
border-color: var(--ooui-interface-border);
}
.oo-ui-popupWidget-anchored-top .oo-ui-popupWidget-anchor:after {
border-bottom-color: var(--ooui-interface);
}
.oo-ui-popupWidget-anchored-top .oo-ui-popupWidget-anchor:before {
border-bottom-color: var(--ooui-interface-border);
}
.oo-ui-popupWidget-anchored-bottom .oo-ui-popupWidget-anchor:after {
border-top-color: var(--ooui-interface);
}
.oo-ui-popupWidget-anchored-bottom .oo-ui-popupWidget-anchor:before {
border-top-color: var(--ooui-interface-border);
}
.oo-ui-popupWidget-anchored-start .oo-ui-popupWidget-anchor:after {
border-right-color: var(--ooui-interface);
}
.oo-ui-popupWidget-anchored-start .oo-ui-popupWidget-anchor:before {
border-right-color: var(--ooui-interface-border);
}
.oo-ui-popupWidget-anchored-end .oo-ui-popupWidget-anchor:after {
border-left-color: var(--ooui-interface);
}
.oo-ui-popupWidget-anchored-end .oo-ui-popupWidget-anchor:before {
border-left-color: var(--ooui-interface-border);
}
.oo-ui-searchWidget-query {
border-bottom-color: var(--ooui-interface-border);
}
.oo-ui-selectFileWidget-dropTarget {
background-color: var(--ooui-interface);
border-color: var(--ooui-interface-border);
}
.oo-ui-selectFileWidget.oo-ui-widget-enabled.oo-ui-selectFileWidget-dropTarget {
background-color: var(--ooui-interface);
}
.oo-ui-selectFileWidget.oo-ui-widget-enabled.oo-ui-selectFileWidget-dropTarget:hover {
border-color: var(--ooui-input-border--hover);
}
.oo-ui-tabOptionWidget {
color: var(--ooui-text);
}
.oo-ui-tabSelectWidget-framed .oo-ui-tabOptionWidget.oo-ui-optionWidget-selected {
background-color: var(--body-dark);
color: var(--ooui-text);
}
.oo-ui-tabSelectWidget-framed .oo-ui-tabOptionWidget.oo-ui-optionWidget-selected .oo-ui-labelElement-label {
border-bottom-color: var(--body-border);
}
.oo-ui-tabSelectWidget-framed .oo-ui-tabOptionWidget.oo-ui-widget-enabled:hover,
.oo-ui-tabSelectWidget-framed .oo-ui-tabOptionWidget.oo-ui-widget-enabled:active {
background-color: var(--body-light);
color: var(--ooui-text);
}
.oo-ui-tabSelectWidget-framed .oo-ui-tabOptionWidget.oo-ui-widget-enabled.oo-ui-optionWidget-selected:hover {
background-color: var(--body-dark);
}
.oo-ui-tabSelectWidget-frameless .oo-ui-tabOptionWidget.oo-ui-optionWidget-selected {
color: var(--ooui-progressive);
box-shadow: inset 0 -2px 0 0 var(--ooui-progressive);
}
.oo-ui-tabSelectWidget-frameless .oo-ui-tabOptionWidget.oo-ui-optionWidget-selected:hover,
.oo-ui-tabSelectWidget-frameless .oo-ui-tabOptionWidget.oo-ui-optionWidget-selected:focus {
color: var(--ooui-progressive--hover);
box-shadow: inset 0 -2px 0 0 var(--ooui-progressive--hover);
}
.oo-ui-tabSelectWidget-framed {
background: none;
border-bottom: 1px solid var(--ooui-interface-border);
}
.oo-ui-tabSelectWidget-frameless {
box-shadow: inset 0 -1px 0 0 var(--ooui-interface-border);
}
.oo-ui-tabSelectWidget-mobile {
}
.oo-ui-tabSelectWidget-mobile.oo-ui-tabSelectWidget-framed:after {
background: var(--mobile-navbox-linear-gradient);
}
.oo-ui-tabSelectWidget-mobile.oo-ui-tabSelectWidget-frameless:after {
background: var(--mobile-navbox-linear-gradient);
}
.oo-ui-tagItemWidget {
border-color: var(--ooui-normal-border);
}
.oo-ui-tagItemWidget.oo-ui-widget-enabled {
color: var(--ooui-text);
}
.oo-ui-tagItemWidget.oo-ui-widget-enabled:hover {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
}
.oo-ui-tagItemWidget.oo-ui-widget-enabled:not( .oo-ui-tagItemWidget-fixed ) {
background-color: var(--ooui-normal);
}
.oo-ui-tagItemWidget.oo-ui-widget-enabled .oo-ui-buttonElement-button:hover {
background-color: var(--ooui-normal--hover);
}
.oo-ui-tagMultiselectWidget.oo-ui-widget-enabled {
background-color: var(--ooui-interface);
}
.oo-ui-tagMultiselectWidget.oo-ui-widget-enabled.oo-ui-tagMultiselectWidget-outlined {
background-color: var(--ooui-normal);
}
.oo-ui-tagMultiselectWidget.oo-ui-widget-enabled.oo-ui-tagMultiselectWidget-outlined .oo-ui-tagItemWidget.oo-ui-widget-enabled {
background-color: var(--ooui-interface);
}
.oo-ui-textInputWidget .oo-ui-inputWidget-input {
background-color: var(--ooui-input);
color: var(--ooui-text);
border-color: var(--ooui-input-border);
}
.oo-ui-textInputWidget.oo-ui-widget-enabled .oo-ui-inputWidget-input::placeholder {
color: var(--subtle-color);
}
.oo-ui-textInputWidget.oo-ui-widget-enabled .oo-ui-inputWidget-input:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-textInputWidget.oo-ui-widget-enabled .oo-ui-inputWidget-input[readonly]:not(.oo-ui-pendingElement-pending) {
background-color: var(--ooui-disabled);
color: var(--ooui-disabled-text);
}
.oo-ui-textInputWidget.oo-ui-widget-enabled:hover .oo-ui-inputWidget-input {
border-color: var(--ooui-input-border--hover);
}
.oo-ui-textInputWidget.oo-ui-widget-enabled:hover .oo-ui-inputWidget-input:focus {
border-color: var(--ooui-accent);
}
@media screen and (min-width: 0) {
.oo-ui-textInputWidget.oo-ui-widget-enabled textarea.oo-ui-inputWidget-input:focus {
outline: 1px solid var(--ooui-accent);
}
}
.oo-ui-textInputWidget.oo-ui-widget-disabled .oo-ui-inputWidget-input {
background-color: var(--ooui-disabled);
color: var(--ooui-disabled-text);
text-shadow: none;
border-color: var(--ooui-disabled-border);
}
.oo-ui-toggleSwitchWidget {
background-color: var(--ooui-input);
border-color: var(--ooui-input-border);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled .oo-ui-toggleSwitchWidget-grip {
background-color: var(--ooui-input);
border-color: var(--ooui-input-border);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:hover {
background-color: var(--ooui-input);
border-color: var(--ooui-accent);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:hover .oo-ui-toggleSwitchWidget-grip {
background-color: var(--ooui-input);
border-color: var(--ooui-accent);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:active,
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:active:hover,
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:active:focus {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
box-shadow: inset 0 0 0 1px var(--ooui-progressive--hover);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:active .oo-ui-toggleSwitchWidget-grip,
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:active:hover .oo-ui-toggleSwitchWidget-grip,
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:active:focus .oo-ui-toggleSwitchWidget-grip {
background-color: var(--ooui-input);
border-color: var(--ooui-input);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:focus .oo-ui-toggleSwitchWidget-grip {
border-color: var(--ooui-accent);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled.oo-ui-toggleWidget-on {
background-color: var(--ooui-progressive);
border-color: var(--ooui-progressive);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled.oo-ui-toggleWidget-on .oo-ui-toggleSwitchWidget-grip {
background-color: var(--ooui-input);
border-color: var(--ooui-input);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled.oo-ui-toggleWidget-on:hover {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled.oo-ui-toggleWidget-on:active,
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled.oo-ui-toggleWidget-on:active:hover {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled.oo-ui-toggleWidget-on:focus {
border-color: var(--ooui-progressive);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled.oo-ui-toggleWidget-on:focus::before {
border-color: #fff;
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-disabled {
background-color: var(--ooui-disabled);
border-color: var(--ooui-disabled);
}
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled > .oo-ui-buttonElement-button {
color: var(--ooui-text);
}
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled > .oo-ui-buttonElement-button:hover {
color: var(--ooui-text);
}
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled > .oo-ui-buttonElement-button:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled.oo-ui-buttonElement-pressed > input.oo-ui-buttonElement-button,
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled > .oo-ui-buttonElement-button:active {
color: var(--ooui-text);
}
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button,
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button:hover {
color: var(--ooui-text);
}
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button:active,
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive.oo-ui-buttonElement-pressed > .oo-ui-buttonElement-button {
color: var(--ooui-text);
border-color: var(--ooui-text);
}
.oo-ui-buttonElement-frameless.oo-ui-widget-disabled > .oo-ui-buttonElement-button {
color: var(--ooui-disabled-text);
}
.oo-ui-buttonElement-framed.oo-ui-widget-disabled > .oo-ui-buttonElement-button {
background-color: var(--ooui-disabled);
border-color: var(--ooui-disabled-border);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled > .oo-ui-buttonElement-button {
background-color: var(--ooui-normal);
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled > .oo-ui-buttonElement-button:hover {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled > .oo-ui-buttonElement-button:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-buttonElement-active > .oo-ui-buttonElement-button {
background-color: var(--ooui-progressive--hover);
color: #fff;
border-color: var(--ooui-progressive--hover);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-buttonElement-active > .oo-ui-buttonElement-button:focus {
border-color: var(--ooui-progressive--hover);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled > .oo-ui-buttonElement-button:active,
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-buttonElement-pressed > .oo-ui-buttonElement-button {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive {
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button {
color: var(--ooui-text);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button:hover {
background-color: var(--ooui-normal--hover);
border-color: var(--ooui-progressive--hover);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-destructive > .oo-ui-buttonElement-button {
color: var(--ooui-text);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-destructive > .oo-ui-buttonElement-button:hover {
background-color: var(--ooui-normal--hover);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button {
background-color: var(--ooui-progressive);
border-color: var(--ooui-progressive);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button:hover {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent), inset 0 0 0 2px #fff;
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button:active,
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive.oo-ui-buttonElement-pressed > .oo-ui-buttonElement-button,
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive.oo-ui-buttonElement-active > .oo-ui-buttonElement-button,
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive.oo-ui-popupToolGroup-active > .oo-ui-buttonElement-button {
color: #fff;
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
}
.oo-ui-pendingElement-pending {
background-image: var(--ooui-pending-background-image);
background-size: 200%;
animation: oo-ui-pendingElement-stripes 6s linear infinite;
}
@keyframes oo-ui-pendingElement-stripes {
100% {
background-position: 100%;
}
}
.oo-ui-messageDialog-content > .oo-ui-window-foot {
outline-color: var(--ooui-interface-border);
}
.oo-ui-messageDialog-message {
color: var(--ooui-text);
}
.oo-ui-messageDialog-actions-horizontal .oo-ui-actionWidget {
border-right-color: var(--ooui-interface-border);
}
.oo-ui-messageDialog-actions-vertical .oo-ui-actionWidget {
border-bottom-color: var(--ooui-interface-border);
}
.oo-ui-processDialog-content .oo-ui-window-head,
.oo-ui-processDialog-content .oo-ui-window-foot {
outline-color: var(--ooui-interface-border);
}
.oo-ui-processDialog .oo-ui-actionWidget > .oo-ui-buttonElement-button {
border-top-color: transparent;
border-bottom-color: transparent;
}
.oo-ui-processDialog .oo-ui-actionWidget > .oo-ui-buttonElement-button:hover,
.oo-ui-processDialog .oo-ui-actionWidget > .oo-ui-buttonElement-button:active {
border-top-color: transparent;
border-bottom-color: transparent;
}
.oo-ui-processDialog .oo-ui-actionWidget:not( .oo-ui-flaggedElement-progressive ):not( .oo-ui-flaggedElement-destructive ) > .oo-ui-buttonElement-button:hover,
.oo-ui-processDialog .oo-ui-actionWidget:not( .oo-ui-flaggedElement-progressive ):not( .oo-ui-flaggedElement-destructive ) > .oo-ui-buttonElement-button:active {
border-right-color: var(--ooui-interface-border);
border-left-color: transparent;
}
.oo-ui-processDialog .oo-ui-actionWidget:not( .oo-ui-flaggedElement-progressive ):not( .oo-ui-flaggedElement-destructive ) > .oo-ui-buttonElement-button:focus {
border-color: var(--ooui-accent);
}
.oo-ui-processDialog-actions-safe .oo-ui-actionWidget > .oo-ui-buttonElement-button,
.oo-ui-processDialog-actions-other .oo-ui-actionWidget > .oo-ui-buttonElement-button {
border-right-color: var(--ooui-normal-border);
border-left-color: transparent;
}
.oo-ui-processDialog-actions-safe .oo-ui-widget-enabled.oo-ui-iconElement:not( .oo-ui-labelElement ) > .oo-ui-buttonElement-button:hover {
background-color: var(--ooui-normal--hover);
border-right-color: var(--ooui-interface-border);
}
.oo-ui-windowManager-modal > .oo-ui-dialog {
background-color: var(--ooui-window-background);
}
.oo-ui-windowManager-modal > .oo-ui-dialog > .oo-ui-window-frame {
background-color: var(--ooui-interface);
}
.oo-ui-windowManager-modal.oo-ui-windowManager-floating > .oo-ui-dialog > .oo-ui-window-frame {
border-color: var(--ooui-interface-border);
}
.oo-ui-window {
color: var(--ooui-text);
}
.oo-ui-toolbar-bar {
background-color: var(--ooui-interface);
color: var(--ooui-text);
}
.oo-ui-toolbar-position-top > .oo-ui-toolbar-bar {
border-bottom-color: var(--body-mid);
}
.oo-ui-toolbar-bar .oo-ui-bookletLayout > .oo-ui-menuLayout-menu {
border-right-color: var(--body-mid);
}
.oo-ui-tool.oo-ui-widget-enabled > .oo-ui-tool-link:hover {
background-color: var(--ooui-normal--hover);
}
.oo-ui-tool.oo-ui-widget-enabled > .oo-ui-tool-link:focus {
outline: 1px solid var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-tool.oo-ui-widget-enabled > .oo-ui-tool-link:active,
.oo-ui-tool.oo-ui-widget-enabled.oo-ui-tool-active > .oo-ui-tool-link,
.oo-ui-tool.oo-ui-widget-enabled.oo-ui-popupToolGroup-active > .oo-ui-tool-link {
background-color: var(--ooui-normal--hover);
color: var(--ooui-accent);
box-shadow: none;
}
.oo-ui-tool.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive > .oo-ui-tool-link {
background-color: var(--ooui-progressive);
}
.oo-ui-tool.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive > .oo-ui-tool-link:hover {
background-color: var(--ooui-progressive--hover);
}
.oo-ui-tool.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive > .oo-ui-tool-link:focus {
box-shadow: inset 0 0 0 1px var(--ooui-accent), inset 0 0 0 2px #fff;
}
.oo-ui-tool.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive > .oo-ui-tool-link:active,
.oo-ui-tool.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive.oo-ui-tool-active > .oo-ui-tool-link {
background-color: var(--ooui-progressive--hover);
}
.oo-ui-listToolGroup-tools .oo-ui-tool.oo-ui-widget-enabled {
background-color: var(--ooui-normal);
}
.oo-ui-listToolGroup-tools .oo-ui-tool.oo-ui-widget-enabled:hover {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
}
.oo-ui-listToolGroup-tools .oo-ui-tool-active.oo-ui-widget-enabled .oo-ui-tool-link .oo-ui-tool-title {
color: var(--ooui-progressive);
}
.oo-ui-menuToolGroup {
border-left-color: var(--body-mid);
border-right-color: var(--body-mid);
}
.oo-ui-popupToolGroup-tools {
background-color: var(--ooui-interface);
border-color: var(--body-mid);
}
.oo-ui-popupToolGroup.oo-ui-widget-enabled > .oo-ui-popupToolGroup-handle:hover {
background-color: var(--ooui-normal--hover);
}
.oo-ui-popupToolGroup.oo-ui-widget-enabled > .oo-ui-popupToolGroup-handle:focus {
outline: 1px solid var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-toolbar-actions .oo-ui-popupToolGroup.oo-ui-widget-enabled > .oo-ui-popupToolGroup-handle:hover {
border-right-color: var(--ooui-normal--hover);
}
.oo-ui-popupToolGroup-tools .oo-ui-tool.oo-ui-widget-enabled .oo-ui-tool-link:focus {
box-shadow: inset 0 0 0 2px var(--ooui-accent);
}
.oo-ui-popupToolGroup-tools .oo-ui-tool-active.oo-ui-widget-enabled .oo-ui-tool-link .oo-ui-tool-title {
color: var(--ooui-progressive);
}
.oo-ui-popupToolGroup.oo-ui-popupToolGroup-active > .oo-ui-popupToolGroup-handle {
background-color: var(--ooui-normal);
color: var(--ooui-accent);
}
.oo-ui-popupToolGroup.oo-ui-popupToolGroup-active > .oo-ui-popupToolGroup-handle:hover {
background-color: var(--ooui-normal--hover);
color: var(--ooui-accent);
}
.oo-ui-bookletLayout-outlinePanel > .oo-ui-outlineControlsWidget {
border-top-color: var(--ooui-interface-border);
}
.oo-ui-bookletLayout > .oo-ui-menuLayout-menu {
border-right-color: var(--ooui-interface-border);
}
.oo-ui-fieldLayout-disabled > .oo-ui-fieldLayout-body > .oo-ui-fieldLayout-header > .oo-ui-labelElement-label {
color: var(--ooui-disabled-text);
}
.oo-ui-panelLayout-framed {
border-color: var(--sidebar);
}
.oo-ui-icon-settings {
background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' width='20' height='20' viewBox='0 0 20 20'%3E%3Ctitle%3Esettings%3C/title%3E%3Cg transform='translate(10 10)'%3E%3Cpath id='a' d='M1.5-10h-3l-1 6.5h5m0 7h-5l1 6.5h3'/%3E%3Cuse xlink:href='%23a' transform='rotate(45)'/%3E%3Cuse xlink:href='%23a' transform='rotate(90)'/%3E%3Cuse xlink:href='%23a' transform='rotate(135)'/%3E%3C/g%3E%3Cpath d='M10 2.5a7.5 7.5 0 0 0 0 15 7.5 7.5 0 0 0 0-15v4a3.5 3.5 0 0 1 0 7 3.5 3.5 0 0 1 0-7'/%3E%3C/svg%3E");
}
.oo-ui-icon-clear {
background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 20 20'%3E%3Ctitle%3Eclear%3C/title%3E%3Cpath d='M10 0a10 10 0 1 0 10 10A10 10 0 0 0 10 0zm5.66 14.24-1.41 1.41L10 11.41l-4.24 4.25-1.42-1.42L8.59 10 4.34 5.76l1.42-1.42L10 8.59l4.24-4.24 1.41 1.41L11.41 10z'/%3E%3C/svg%3E");
}
.mw-widget-dateInputWidget-handle {
background-color: var(--ooui-input);
color: var(--ooui-text);
border-color: var(--ooui-input-border);
}
.mw-widget-dateInputWidget-calendar {
background-color: var(--ooui-interface);
}
.mw-widget-dateInputWidget.oo-ui-widget-enabled .mw-widget-dateInputWidget-handle:hover {
border-color: var(--ooui-input-border--hover);
}
.mw-widget-calendarWidget {
border-color: var(--ooui-interface-border);
}
.mw-widget-calendarWidget:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.mw-widget-calendarWidget-day,
.mw-widget-calendarWidget-day-heading {
color: var(--ooui-text);
}
.mw-widget-calendarWidget-day-additional {
color: var(--ooui-text);
opacity: 0.67;
}
.mw-widget-calendarWidget-day-today {
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.mw-widget-calendarWidget-item:hover {
background-color: var(--ooui-progressive);
}
.mw-widget-calendarWidget-item-selected {
background-color: var(--ooui-progressive--hover);
}
.mw-widgets-datetime-calendarWidget {
background-color: var(--ooui-interface);
border-color: var(--ooui-interface-border);
}
.mw-widgets-datetime-calendarWidget:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent), 0 2px 2px 0 rgba(0, 0, 0, 0.25);
}
.mw-widgets-datetime-calendarWidget-grid .mw-widgets-datetime-calendarWidget-cell.mw-widgets-datetime-calendarWidget-extra .oo-ui-buttonElement-button .oo-ui-labelElement-label {
color: var(--subtle-color);
}
.mw-widgets-datetime-calendarWidget-grid .mw-widgets-datetime-calendarWidget-cell.mw-widgets-datetime-calendarWidget-selected .oo-ui-buttonElement-button {
background-color: var(--ooui-progressive--hover);
}
.mw-widgets-datetime-dateTimeInputWidget-handle {
background-color: var(--ooui-input);
color: var(--ooui-text);
border-color: var(--ooui-input-border);
}
.mw-widgets-datetime-dateTimeInputWidget.oo-ui-widget-enabled.mw-widgets-datetime-dateTimeInputWidget-handle:hover {
border-color: var(--ooui-input-border--hover);
}
.mw-widgets-datetime-dateTimeInputWidget.oo-ui-widget-enabled:hover input,
.mw-widgets-datetime-dateTimeInputWidget.oo-ui-widget-enabled:hover textarea {
border-color: var(--ooui-input-border--hover);
}
.mw-widgets-datetime-dateTimeInputWidget.oo-ui-widget-enabled .mw-widgets-datetime-dateTimeInputWidget-editField:hover {
background-color: var(--ooui-normal);
}
.ve-activated .ve-init-mw-desktopArticleTarget-originalContent #catlinks:hover {
background: var(--ooui-normal--hover);
}
.ve-ui-overlay {
font-family: inherit;
}
.oo-ui-toolbar-position-top .ve-ui-toolbarDialog-position-above {
border-top-color: var(--body-mid);
}
.ve-ce-branchNode-blockSlug,
.ve-ce-branchNode-newSlug {
outline-color: var(--body-border);
background-color: var(--ooui-interface);
}
.ve-ui-specialCharacterPage h3 {
color: var(--byline-color);
}
.ve-ui-specialCharacterPage-character {
border-color: var(--body-mid);
}
.ve-ui-specialCharacterPage-character:hover {
border-color: var(--body-dark);
}
.ve-ce-linkAnnotation.ve-ce-annotation-active {
box-shadow: 0 0 0 1px var(--body-mid);
background: none;
}
.ve-ui-desktopContext .ve-ui-linkContextItem .ve-ui-linkContextItem-label {
border-color: var(--body-border);
}
.ve-ui-mwHelpPopupTool-version-label,
.ve-ui-mwHelpPopupTool-version-link,
.ve-ui-mwHelpPopupTool-version-date {
color: var(--byline-color);
}
.ve-ce-tableCellableNode {
border-color: var(--body-mid);
}
.ve-ce-mwReferencesListNode-muted {
color: var(--byline-color);
}
.ve-ui-mwTemplatePage-description,
.ve-ui-mwParameterPage-label,
.ve-ui-mwParameterPage-description-required,
.ve-ui-mwParameterPage-description-deprecated {
color: var(--byline-color);
}
.mw-widget-titleWidget-menu .mw-widget-titleOptionWidget-description {
color: var(--byline-color);
}
.ve-ui-mwGalleryDialog-menuLayout > .oo-ui-menuLayout-menu,
.ve-ui-mwGalleryDialog-innerMenuLayout > .oo-ui-menuLayout-menu,
.ve-ui-mwGalleryDialog .ve-ui-mwGalleryDialog-image-container,
.ve-ui-targetWidget {
border-color: var(--body-border);
}
.ve-ui-targetWidget:not(.oo-ui-pendingElement-pending) {
background-color: var(--body-main);
}
.ve-ui-mwSaveDialog {
color: var(--ooui-text);
}
.ve-ui-mwSaveDialog-options {
background-color: var(--ooui-interface);
border-color: var(--body-border);
}
.ve-ui-mwSaveDialog-summary {
background-color: var(--ooui-input);
}
.ve-ui-mwSaveDialog-editSummary-count {
border-color: var(--body-border);
}
.ve-ui-mwSaveDialog-license {
color: var(--byline-color);
}
.ve-ui-mwReferenceContextItem-muted {
color: var(--byline-color);
}
.ve-ui-mwNoticesPopupTool-items > div:not(:first-child),
.ve-ui-mwHelpPopupTool-item:not(:first-child) {
border-color: var(--body-border);
}
.ve-ui-mwTransclusionOutlineControlsWidget {
background-color: var(--ooui-interface);
border-top-color: var(--body-border);
}
.ve-ui-mwTransclusionOutlineTemplateWidget-sticky {
background-color: var(--ooui-interface);
}
.ve-ui-mwTransclusionOutlineTemplateWidget .ve-ui-mwTransclusionOutlineParameterWidget.oo-ui-optionWidget-highlighted {
color: var(--ooui-text);
}
.ve-ui-mwTransclusionOutlineTemplateWidget-no-template-parameters {
color: var(--subtle-color);
}
.ve-ui-mwParameterPage-undocumentedLabel {
color: var(--subtle-color);
}
.ve-ui-mwTwoPaneTransclusionDialogLayout > .oo-ui-menuLayout-menu {
border-right: var(--body-border);
}
.ve-ui-mwParameterPage-doc-required,
.ve-ui-mwParameterPage-doc-deprecated,
.ve-ui-mwParameterPage-inlineDescription .ve-ui-mwParameterPage-doc-example {
color: var(--byline-color);
}
.ve-ui-expandableContent-toggle {
background-color: var(--ooui-interface);
}
.ve-ui-expandableContent-fade {
background: linear-gradient(to right, rgba(255, 255, 255, 0) 0, var(--ooui-interface) 90%);
}
.ve-ui-commandHelpDialog-shortcut > kbd,
.ve-ui-commandHelpDialog-sequence > kbd {
background-color: var(--keypress-background);
color: var(--keypress-color);
border-color: var(--keypress-border);
box-shadow: none;
text-shadow: none;
}
.ve-init-mw-desktopArticleTarget-toolbarPlaceholder-floating .ve-init-mw-desktopArticleTarget-toolbarPlaceholder-bar {
background: var(--ooui-interface);
}
.ve-init-mw-desktopArticleTarget-toolbarPlaceholder-bar {
border-bottom-color: var(--body-mid);
}
figure[typeof~='mw:File/Thumb'],
figure[typeof~='mw:File/Frame'],
figure[typeof~='mw:Image/Thumb'],
figure[typeof~='mw:Video/Thumb'],
figure[typeof~='mw:Image/Frame'],
figure[typeof~='mw:Video/Frame'] {
border: none;
background-color: var(--thumb-bg);
}
figure[typeof~='mw:File/Thumb'] > a:first-child > *:first-child:not( .mw-broken-media ),
figure[typeof~='mw:File/Frame'] > a:first-child > *:first-child:not( .mw-broken-media ),
figure[typeof~='mw:Image/Thumb'] > a:first-child > *:first-child:not( .mw-broken-media ),
figure[typeof~='mw:Video/Thumb'] > a:first-child > *:first-child:not( .mw-broken-media ),
figure[typeof~='mw:Image/Frame'] > a:first-child > *:first-child:not( .mw-broken-media ),
figure[typeof~='mw:Video/Frame'] > a:first-child > *:first-child:not( .mw-broken-media ) {
border: none;
background: var(--thumb-bg);
}
figure[typeof~='mw:File/Thumb'] > figcaption,
figure[typeof~='mw:File/Frame'] > figcaption,
figure[typeof~='mw:Image/Thumb'] > figcaption,
figure[typeof~='mw:Video/Thumb'] > figcaption,
figure[typeof~='mw:Image/Frame'] > figcaption,
figure[typeof~='mw:Video/Frame'] > figcaption {
border: none;
background-color: var(--thumb-caption-bg);
padding: 4px 6px;
}
:root {
--keypress-background: #eee;
--keypress-border: #ccc;
--keypress-color: #333;
}
.archivelist {
background-color: var(--body-light);
border: solid 1px var(--body-border);
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
float: right;
margin: 5px;
padding: 5px;
text-align: center;
width: 120px;
}
.shortcut {
border: 1px solid var(--body-border);
background: var(--body-light);
float: right;
font-size: 0.8em;
margin: 0.5em 0em 0.5em 1em;
padding: 0.5em;
text-align: center;
}
.hatnote,
.seealso {
font-style: italic;
}
.hatnote i,
.seealso i {
font-style: normal;
}
div.hatnote,
div.seealso {
margin: 0.5em 1.6em;
}
div.hatnote + div.hatnote,
div.hatnote + div.seealso,
div.seealso + div.hatnote,
div.seealso + div.seealso {
margin-top: -0.5em;
}
.keypress {
background: var(--keypress-background);
color: var(--keypress-color);
font-family: inherit;
border: 1px solid var(--keypress-border);
border-radius: 2px;
font-size: 0.9em;
margin: 0 0.1em;
padding: 0.1em 0.4em;
white-space: nowrap;
}
:root {
--documentation-background: #f9fafa;
--documentation-link-color: #e4eaee;
--documentation-headers-color: #fff;
--documentation-header-background: #949eaa;
--documentation-subheader-background: #808c9a;
--documentation-border: #e4eaee;
}
.documentation {
background: var(--documentation-background);
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
margin: 1em 0;
}
.documentation pre,
.documentation code {
background-color: var(--documentation-background);
border-color: var(--documentation-border);
}
.documentation h2,
.documentation hr {
border-color: var(--documentation-border);
}
.documentation-header {
color: var(--documentation-headers-color);
background: var(--documentation-header-background);
font-weight: bold;
padding: 1em 1.5em;
}
.documentation-title {
font-size: 1.25em;
}
.documentation-subheader {
color: var(--documentation-headers-color);
background: var(--documentation-subheader-background);
padding: 0.5em 1.5em;
}
.documentation-subheader a,
.documentation-subheader a:visited,
.documentation-subheader a:active {
color: var(--documentation-link-color);
}
.documentation-documentation,
.documentation-links {
font-size: 0.85em;
}
.documentation-content {
padding: 1em 1.5em;
}
.mw-templatedata-doc-params dl:not(:empty) {
column-count: 3;
border-top: 1px solid var(--body-border);
margin-bottom: 0.5em;
}
.mw-templatedata-doc-params dt::after {
content: ":";
}
.mw-templatedata-doc-params dd,
.mw-templatedata-doc-params dt {
margin: 0.1em 2em;
min-width: auto;
}
.mw-templatedata-doc-muted {
color: var(--subtle-color);
font-style: italic;
}
:root {
--infobox-text-color: var(--text-color);
}
ol.references,
.reflist {
font-size: 90%;
}
.reflist {
list-style-type: decimal;
}
.reflist .references {
font-size: 100%;
list-style-type: inherit;
}
.reflist-lower-alpha {
list-style-type: lower-alpha;
}
ol.references li:target,
sup.reference:target {
background-color: var(--body-light);
}
.hideQuotes .refhide {
display: none;
}
:root {
--messagebox-obsolete-background: #cfcfcf;
--messagebox-obsolete-border: #464646;
--messagebox-obsolete-color: var(--text-color);
--messagebox-obsolete-link-color: #6c6c6c;
--messagebox-info-background: #ebebeb;
--messagebox-info-border: #898989;
--messagebox-info-color: var(--text-color);
--messagebox-info-link-color: #6c6c6c;
--messagebox-action-background: #c7e8fa;
--messagebox-action-border: #0b5884;
--messagebox-action-color: var(--text-color);
--messagebox-action-link-color: #03436b;
--messagebox-warn-background: #dfc0ba;
--messagebox-warn-border: #861c10;
--messagebox-warn-color: var(--text-color);
--messagebox-warn-link-color: #8e221a;
--messagebox-safe-background: #d8f0d3;
--messagebox-safe-border: #1b8408;
--messagebox-safe-color: var(--text-color);
--messagebox-safe-link-color: #1b8408;
--messagebox-disambig-background: #ebebeb;
--messagebox-disambig-border: #898989;
--messagebox-disambig-color: var(--text-color);
--messagebox-disambig-link-color: #6c6c6c;
--messagebox-discord-background: #5865f2;
--messagebox-discord-border: #4c57d0;
--messagebox-discord-link-color: #d2e5fc;
}
.mw-message-box,
.mw-message-box-error,
.mw-message-box-warning,
.mw-message-box-success,
.usermessage {
color: var(--text-color);
}
.messagebox {
width: 65%;
margin: 0.5em auto;
border-left: 15px solid;
border-color: var(--body-dark);
background-color: var(--body-light);
box-sizing: border-box;
}
.messagebox.obsolete {
background-color: var(--messagebox-obsolete-background);
border-color: var(--messagebox-obsolete-border);
color: var(--messagebox-obsolete-color);
}
.messagebox.obsolete a,
.messagebox.obsolete a:visited,
.messagebox.obsolete a:active {
color: var(--messagebox-obsolete-link-color);
}
.messagebox.info {
background-color: var(--messagebox-info-background);
border-color: var(--messagebox-info-border);
color: var(--messagebox-info-color);
}
.messagebox.info a,
.messagebox.info a:visited,
.messagebox.info a:active {
color: var(--messagebox-info-link-color);
}
.messagebox.action {
background-color: var(--messagebox-action-background);
border-color: var(--messagebox-action-border);
color: var(--messagebox-action-color);
}
.messagebox.action a,
.messagebox.action a:visited,
.messagebox.action a:active {
color: var(--messagebox-action-link-color);
}
.messagebox.warn {
background-color: var(--messagebox-warn-background);
border-color: var(--messagebox-warn-border);
color: var(--messagebox-warn-color);
}
.messagebox.warn a,
.messagebox.warn a:visited,
.messagebox.warn a:active {
color: var(--messagebox-warn-link-color);
}
.messagebox.safe {
background-color: var(--messagebox-safe-background);
border-color: var(--messagebox-safe-border);
color: var(--messagebox-safe-color);
}
.messagebox.safe a,
.messagebox.safe a:visited,
.messagebox.safe a:active {
color: var(--messagebox-safe-link-color);
}
.messagebox.disambig {
background-color: var(--messagebox-disambig-background);
border-color: var(--messagebox-disambig-border);
color: var(--messagebox-disambig-color);
}
.messagebox.disambig a,
.messagebox.disambig a:visited,
.messagebox.disambig a:active {
color: var(--messagebox-disambig-link-color);
}
.messagebox.discord {
background-color: var(--messagebox-discord-background);
border-color: var(--messagebox-discord-border);
color: #fff;
}
.messagebox.discord a,
.messagebox.discord a:visited,
.messagebox.discord a:active {
color: var(--messagebox-discord-link-color);
}
.messagebox.discord a.external,
.messagebox.discord a:visited.external,
.messagebox.discord a:active.external {
font-style: italic;
}
.messagebox.stub {
width: 40%;
}
.messagebox.hasdialogue {
padding: 0 10px;
width: auto;
}
:root {
--byline-arrow-filter: invert(29%) sepia(0%) saturate(376%) hue-rotate(172deg) brightness(87%) contrast(80%);
--tile-border-color: #cabe9b;
--tile-background-color: #f9f3eb;
--tile-link-button-color: #f5e9db;
--tile-link-button-highlight-color: #dfccb0;
--tile-dark-color: #fff;
--tile-dark-bg: #5d6773;
--tile-dark-link-color: #ccc;
--tile-dark-byline-color: rgba(255, 255, 255, 0.7);
--tile-dark-header-color: #fff;
}
.tile {
background: var(--tile-background-color);
border: 1px solid var(--tile-border-color);
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
padding: 1.5em 2em 1em;
max-width: 40em;
}
.tile h2 {
font-size: 1.4em;
font-weight: bold;
border: none;
margin: 0 0 0.4em;
}
.tile .byline + h2 {
margin-top: -0.5em;
}
.tile.dark {
color: var(--tile-dark-color);
background: var(--tile-dark-bg);
border: none;
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.3);
}
.tile.dark h2 {
color: var(--tile-dark-header-color);
}
.tile.dark a {
color: var(--tile-dark-link-color);
}
.tile.dark .byline {
color: var(--tile-dark-byline-color);
}
.byline {
font-size: 0.9em;
color: var(--byline-color);
}
.byline a {
color: var(--byline-color);
}
.tile-row {
display: flex;
flex-flow: row wrap;
margin-bottom: 1em;
}
.tile-halves {
display: flex;
flex-flow: row wrap;
border: 1px solid var(--tile-border-color);
background: var(--tile-background-color);
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
}
.tile-halves h2 {
font-size: 1.4em;
font-weight: bold;
border: none;
margin: 0 0 0.4em;
}
.tile-halves .byline + h2 {
margin-top: -0.5em;
}
.tile-top {
width: 100%;
padding: 1.3rem 1.5rem 0.6rem;
}
.tile-top.tile-image {
display: flex;
align-items: center;
background-color: var(--byline-color);
overflow: hidden;
padding: 0;
height: 13vw;
max-height: 12em;
transition: 0.4s ease-out;
}
.tile-halves:hover .tile-top.tile-image img {
transform: scale(1.1);
transition: 0.5s ease-out;
}
.tile-top.tile-image a {
width: 100%;
}
.tile-top.tile-image img {
width: 100%;
object-fit: cover;
max-height: 200px;
transition: 0.4s ease-out;
}
.tile-bottom {
background: var(--tile-background-color);
border-top: 1px solid var(--tile-border-color);
width: 100%;
padding: 1rem 1.5rem 0.6rem;
}
.tile-bottom.link-button {
align-self: flex-end;
padding: 0;
}
.tile-bottom.link-button a {
display: block;
text-align: center;
padding: 0.75em 1.5em 0.8em;
text-decoration: none;
}
.tile-bottom.read-more {
background: var(--tile-link-button-color);
transition: 0.3s ease-out;
}
.tile-bottom.read-more a {
color: var(--byline-color);
font-weight: bold;
text-align: right;
}
.tile-bottom.read-more:hover {
background: var(--tile-link-button-highlight-color);
}
.tile-bottom.read-more:hover .arrow {
transform: translateX(50%);
}
.tile-bottom.read-more .arrow {
filter: var(--byline-arrow-filter);
margin-left: 0.4em;
transition: 0.3s ease-out;
}
body.page-Main_Page.action-view .catlinks,
body.page-Main_Page.action-view #contentSub,
body.page-Main_Page.action-view #firstHeading,
body.page-Main_Page.action-view #siteNotice {
display: none;
}
body.page-Main_Page .mw-parser-output {
max-width: 75em;
margin: 0 auto;
}
body.page-Main_Page.action-view .catlinks,
body.page-Main_Page.action-view #contentSub,
body.page-Main_Page.action-view #siteNotice {
display: none;
}
.mainpage-header {
display: flex;
margin: 2.6em 1.75em 1.5em;
}
.mainpage-header .header-intro {
flex: 2;
}
.mainpage-header .header-intro h1 {
font-size: 2.5em;
font-weight: bold;
border: none;
margin: 0 0 0.15em;
}
.mainpage-header .header-intro p {
font-size: 1.1em;
line-height: 1.7em;
}
.mainpage-header .header-stats {
flex: 1;
display: flex;
justify-content: center;
align-items: center;
margin-top: -1em;
}
.mainpage-body {
display: grid;
grid-template-areas: "event event event" "update update update" "content content content" "left left right";
gap: 0.9rem;
grid-template-columns: repeat(3, 1fr);
}
.mainpage-body h2 a {
color: var(--text-color);
}
.mainpage-body .tile {
padding-left: 1.75em;
padding-right: 1.75em;
max-width: 100%;
}
.mainpage-body .tile-row {
width: 100%;
margin-bottom: 0;
}
.mainpage-body .tile-row {
display: grid;
gap: 0.9rem;
}
.mainpage-contents.tile-row {
display: flex;
}
.mainpage-contents.tile-row .tile-top {
height: 5.5rem;
}
.mainpage-left {
grid-area: left;
flex: 2;
display: flex;
flex-flow: column wrap;
}
.mainpage-left > * {
margin: 0 0 0.9rem;
}
.mainpage-right {
grid-area: right;
flex: 1;
display: flex;
flex-flow: column wrap;
}
.mainpage-right > * {
margin: 0 0 0.9rem;
}
.arrow {
background: url('filepath://White-chevron.svg') no-repeat;
display: inline-block;
height: 0.7rem;
width: 0.45rem;
vertical-align: middle;
}
.arrow.dark {
filter: invert(80%);
}
.mainpage-contents {
grid-area: content;
grid-template-columns: repeat(6, 1fr);
}
.mainpage-contents .tile-halves {
flex: 1;
}
.mainpage-contents .tile-top {
height: 4.5rem;
position: relative;
}
.mainpage-contents .tile-top.tile-image img {
height: auto;
}
.mainpage-contents h2 {
margin: 0;
padding: 0;
}
.mainpage-contents .tile-bottom.link-button a {
padding: 0.75em 0.2em;
}
.popular-pages ul {
display: grid;
grid-template-columns: repeat(3, 1fr);
grid-gap: 0.6em;
margin: 1em 0 0.7em 0;
}
.mp-popular-page-light {
display: flex;
align-items: center;
background-color: var(--button-background);
transition: 100ms;
}
.mp-popular-page-light a {
flex: 1;
display: block;
color: #fff;
font-weight: bold;
text-align: center;
text-decoration: none;
padding: 0.7em 1em;
}
.mp-popular-page-light:hover {
filter: brightness(115%);
transition: 100ms;
}
.mainpage-social {
border: none;
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.3);
}
.mainpage-social .tile-top {
display: flex;
align-items: center;
padding: 1em 1.5em;
}
.mainpage-social .tile-top a {
flex: 1;
position: relative;
text-decoration: none;
}
.mainpage-social .tile-top a:hover .arrow {
transform: translateX(50%);
}
.mainpage-social .tile-bottom {
border: none;
padding: 1em 1.75em;
}
.mainpage-social .tile-bottom p {
color: #fff;
font-weight: bold;
font-size: 0.9em;
text-align: center;
text-transform: uppercase;
letter-spacing: 0.03em;
margin: 0;
}
.mainpage-social .social-icon {
margin-right: 0.75em;
text-align: center;
width: 60px;
}
.mainpage-social .social-header {
color: #fff;
font-weight: bold;
font-size: 1.15em;
margin: 0.5em 0 -0.15em;
}
.mainpage-social .server-tagline {
color: rgba(255, 255, 255, 0.9);
margin-bottom: 0.5em;
}
.mainpage-social .arrow {
position: absolute;
top: calc(50% - .5em);
right: 0;
height: 1em;
width: 0.7em;
background-size: 0.7em 1em;
transition: 0.3s ease-out;
}
.mainpage-social.mainpage-discord .tile-top {
background: #5865f2;
}
.mainpage-social.mainpage-discord .tile-bottom {
background: #525ee0;
}
.mainpage-social.mainpage-twitter .tile-top {
background: #15202b;
}
.mainpage-social.mainpage-twitter .tile-bottom {
background: #121c26;
}
.mainpage-editing {
border: none;
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.3);
}
.mainpage-editing .tile-top {
background: #438ab5;
}
.mainpage-editing .tile-bottom {
background: #3980ab;
border: none;
padding: 0.8rem 1.5rem 0.4rem;
}
.mainpage-editing h2,
.mainpage-editing a {
color: #fff;
}
.mainpage-editing p {
color: rgba(255, 255, 255, 0.9);
}
.mainpage-editing ul {
list-style-image: url('filepath://Transparent-chevron.svg');
}
@media only screen and (max-width: 1200px) {
.mainpage-contents {
grid-template-columns: repeat(3, 1fr);
}
}
@media only screen and (max-width: 1000px) {
.mainpage-body {
grid-template-areas: "event event event" "update update update" "content content content" "left left left" "right right right";
}
.mainpage-recent-updates {
grid-template-columns: repeat(2, 1fr);
}
.mainpage-recent-updates .tile-halves:last-child {
display: none;
}
.mainpage-recent-updates .tile-halves:hover .tile-top img {
transform: scale(1.04);
}
.mainpage-recent-updates .tile-top {
height: 18vw;
min-height: 9em;
}
.mainpage-header .header-stats {
display: none;
}
.mainpage-left > *:last-child,
.mainpage-right > *:last-child {
margin-bottom: 0;
}
.popular-pages ul {
grid-template-columns: repeat(2, 1fr);
}
}
@media only screen and (max-width: 720px) {
.mainpage-recent-updates {
grid-template-columns: none;
}
.mainpage-recent-updates .tile-halves:last-child {
display: flex;
}
.mainpage-contents {
grid-template-columns: repeat(2, 1fr);
}
}
.mw-prefs-buttons {
background-color: var(--body-main);
border-top-color: var(--body-border);
box-shadow: none;
}
.mw-prefs-tabs-wrapper.oo-ui-panelLayout-framed,
.mw-prefs-tabs > .oo-ui-menuLayout-content > .oo-ui-indexLayout-stackLayout > .oo-ui-tabPanelLayout {
border-color: var(--body-border);
}
.mw-htmlform-ooui .mw-htmlform-matrix tbody tr:nth-child(even) td {
background-color: var(--body-light);
}
.mw-htmlform-ooui .mw-htmlform-matrix tbody tr:hover td {
background-color: var(--body-mid);
}
:root {
--rc-positive-color: #407813;
--rc-negative-color: #b41e0f;
}
.mw-plusminus-pos {
color: var(--rc-positive-color);
}
.mw-plusminus-neg {
color: var(--rc-negative-color);
}
.client-js .mw-recentchanges-toplinks:not(.mw-recentchanges-toplinks-collapsed) {
border-color: var(--body-border);
background-color: var(--body-light);
border-radius: 2px;
}
.mw-rcfilters-ui-filterTagMultiselectWidget-wrapper-content-title {
color: var(--text-color);
}
.mw-rcfilters-ui-filterTagMultiselectWidget-emptyFilters {
color: var(--byline-color);
}
.mw-rcfilters-ui-filterTagMultiselectWidget.oo-ui-widget-enabled .oo-ui-tagMultiselectWidget-handle {
background-color: var(--ooui-interface);
border-color: var(--ooui-interface-border);
}
.mw-rcfilters-ui-filterTagMultiselectWidget-views-select-widget.oo-ui-widget {
border-color: var(--ooui-interface-border);
}
.mw-rcfilters-collapsed .mw-rcfilters-ui-filterTagMultiselectWidget {
border-bottom-color: var(--ooui-interface-border);
}
.mw-rcfilters-ui-menuSelectWidget-footer {
background-color: var(--ooui-interface);
border-color: var(--ooui-interface-border);
}
.mw-rcfilters-ui-viewSwitchWidget label.oo-ui-labelWidget {
color: var(--byline-color);
}
.mw-rcfilters-ui-tagItemWidget-popup-content {
color: var(--ooui-text);
}
.mw-changeslist-legend,
.mw-rcfilters-ui-changesListWrapperWidget .mw-changeslist-legend {
background-color: var(--body-light);
border-color: var(--body-dark);
}
.mw-rcfilters-ui-changesListWrapperWidget-previousChangesIndicator {
border-color: var(--sidebar);
}
.client-js .mw-changeslist ul,
.client-js .mw-changeslist table.mw-enhanced-rc {
margin-left: 0;
}
.mw-rcfilters-ui-watchlistTopSectionWidget-separator {
border-color: var(--sidebar);
}
.mw-rcfilters-ui-itemMenuOptionWidget-header {
border-bottom-color: var(--ooui-interface);
background-color: var(--ooui-interface-border);
}
.mw-rcfilters-ui-itemMenuOptionWidget:not(:last-child):not(.mw-rcfilters-ui-itemMenuOptionWidget-identifier-talk) {
border-bottom-color: var(--ooui-normal-border);
}
.mw-rcfilters-ui-itemMenuOptionWidget-label-title,
.mw-rcfilters-ui-itemMenuOptionWidget-label-desc {
color: var(--text-color);
}
.mw-rcfilters-ui-filterMenuOptionWidget.oo-ui-flaggedElement-muted:not(.oo-ui-optionWidget-selected) {
background-color: var(--body-main);
}
.mw-rcfilters-ui-filterMenuOptionWidget.oo-ui-flaggedElement-muted .mw-rcfilters-ui-itemMenuOptionWidget-label-title,
.mw-rcfilters-ui-filterMenuOptionWidget.oo-ui-flaggedElement-muted .mw-rcfilters-ui-itemMenuOptionWidget-label-desc {
color: var(--subtle-color);
}
.mw-rcfilters-ui-filterMenuSectionOptionWidget {
background-color: var(--body-mid);
}
.mw-rcfilters-ui-filterMenuSectionOptionWidget-header-title.oo-ui-labelElement-label {
color: var(--ooui-text);
}
.mw-rcfilters-ui-filterMenuHeaderWidget-title {
color: var(--ooui-text);
}
.mw-rcfilters-ui-filterMenuHeaderWidget-header {
border-bottom-color: var(--ooui-interface-border);
background-color: var(--ooui-interface);
}
.mw-rcfilters-ui-itemMenuOptionWidget-view-namespaces {
border-top-color: var(--ooui-interface-border);
}
.mw-rcfilters-ui-datePopupWidget {
border-color: var(--ooui-interface-border);
}
.mw-rcfilters-ui-datePopupWidget .mw-rcfilters-ui-valuePickerWidget-title {
color: var(--byline-color);
}
.mw-rcfilters-ui-savedLinksListItemWidget-label {
color: var(--ooui-accent);
}
.client-js .mw-changeslist.mw-rcfilters-ui-changesListWrapperWidget-highlighted ul,
.client-js .mw-changeslist.mw-rcfilters-ui-changesListWrapperWidget-highlighted table.mw-enhanced-rc {
margin-left: 1.5em;
}
.page-Special_CreateAccount .mw-ui-container,
.page-Special_UserLogin .mw-ui-container {
max-width: 64rem;
margin: 0 auto;
}
.mw-number-text {
color: var(--byline-color);
}
.mw-body-content .mw-number-text h3 {
color: var(--text-color);
}
#mw-indicator-mw-helplink a {
background: none;
padding: 0;
display: flex;
align-items: center;
}
#mw-indicator-mw-helplink a::before {
content: '';
margin-right: 5px;
-webkit-mask: url("/resources/src/mediawiki.helplink/images/helpNotice.svg?46d34") no-repeat 50% 50% / contain;
mask: url("/resources/src/mediawiki.helplink/images/helpNotice.svg?46d34") no-repeat 50% 50% / contain;
background: var(--text-color);
height: 20px;
width: 20px;
}
.results-info {
color: inherit;
}
.mw-search-profile-tabs {
background-color: var(--body-mid);
border-color: transparent;
}
.search-types .current a {
color: inherit;
}
#mw-searchoptions {
background-color: var(--body-mid);
border-color: transparent;
}
#mw-searchoptions .divider {
border-color: var(--body-border);
}
#mw-searchoptions h4 {
font-family: inherit;
}
#mw-searchoptions .oo-ui-labelElement:nth-of-type(odd) {
font-weight: bold;
}
.searchresult {
line-height: 1.5;
}
.searchalttitle,
#mw-search-interwiki li {
font-size: 90%;
}
.mw-search-result-data {
color: var(--byline-color);
}
.page-Special_ListFiles a.image img {
width: inherit;
height: inherit;
}
.page-Special_ListFiles .TablePager_col_thumb {
text-align: center;
}
#editcount table[border="1"] {
background-color: var(--body-main) !important;
border-color: var(--wikitable-border) !important;
margin-top: 0.5em;
}
#editcount table[border="1"] th,
#editcount table[border="1"] td {
padding: 0.2em 0.4em;
}
#editcount table[border="1"] th {
background-color: var(--wikitable-header-bg);
border: 1px solid var(--wikitable-border);
}
#editcount table[border="1"] td {
border: 1px solid var(--wikitable-border);
}
#editcount table[border="1"] tr:nth-child(odd) {
background-color: var(--body-light);
}
.mw-echo-ui-notificationBadgeButtonPopupWidget-popup > .oo-ui-popupWidget-popup .mw-echo-ui-placeholderItemWidget {
background-color: inherit;
}
table.mw-interwikitable.body td.mw-interwikitable-local-yes {
background-color: var(--table-yes-background);
color: var(--table-yes-color);
}
.mw-protectedpages-unknown {
color: var(--byline-color);
}
.watchlistredir,
.allpagesredirect {
font-style: italic;
}
.allpagesredirect:after {
color: var(--byline-color);
content: " (redirect)";
}
.mw-apisandbox-toolbar {
background: var(--body-main);
}
.oo-ui-menuOptionWidget .mw-apisandbox-flag {
color: var(--byline-color);
}
tr.mw-abusefilter-list-disabled,
tr.mw-abusefilter-list-disabled td {
color: var(--byline-color);
}
table.mw-abuselog-details {
background: var(--wikitable-bg);
border-color: var(--wikitable-border);
}
table.mw-abuselog-details th {
background: var(--wikitable-header-bg);
}
table.mw-abuselog-details th,
table.mw-abuselog-details td {
border-color: var(--wikitable-border);
}
.mw-abusefilter-log-hidden-entry {
color: var(--subtle-color);
}
body td.mw-abusefilter-history-changed {
background: var(--table-no-background);
}
div.mw-abusefilter-editor,
#mw-abusefilter-warn-preview,
#mw-abusefilter-disallow-preview {
border-color: var(--ooui-input-border);
}
.mw-destfile-warning {
border-color: var(--warningbox-border);
color: var(--text-color);
background-color: var(--warningbox-bg);
}
span.fileinput-button {
background-color: var(--ooui-normal);
border-color: var(--ooui-normal-border);
color: var(--ooui-text);
}
ul.fileupload-results li.ful-success {
background-color: var(--successbox-bg);
}
ul.fileupload-results li.ful-success a {
color: var(--link-color);
}
ul.fileupload-results li.ful-error {
background-color: var(--errorbox-bg);
}
#t-print,
#t-permalink {
display: none;
}
#filetoc {
border-radius: 2px;
background: var(--body-mid);
border-color: transparent;
margin: 0.5em auto;
text-align: center;
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
}
li.gallerybox div.thumb {
border: none;
background-color: var(--thumb-bg);
}
.smwfact {
display: none;
}
.list-header {
background-color: var(--body-mid);
color: inherit;
}
.editOptions {
color: var(--text-color);
background-color: var(--sourceeditor-background-secondary);
border-color: var(--sourceeditor-border);
}
.mw-json th,
.mw-json td {
border-color: var(--wikitable-border);
}
.mw-json td {
background: var(--wikitable-bg);
}
.mw-json th {
background: var(--wikitable-header-bg);
}
1bea3cb7a674bed420d95353c485c3a1ae3c7b95
1123
1118
2024-03-24T01:28:38Z
Merds
25
Updating CSS from [[MediaWiki:Common.less]]
css
text/css
/* <pre> */
:root {
--body-main: #feffff;
--body-light: #f2f2f2;
--body-mid: #d0bd97;
--body-dark: #e3e3e3;
--body-border: #878787;
--body-background-color: #173a4d;
--button-background: #605443;
--button-color: #fff;
--button-border: #3c352a;
--button-dark: #18140c;
--button-light: #3a301d;
--sidebar: #cfc08d;
--background-text-color: #e2dbc8;
--background-link-color: #e2bd8a;
--search-box: #efeee6;
--link-color: #936039;
--redlink-color: #ba0000;
--text-color: #2F2828;
--byline-color: #ccc;
--subtle-color: #777;
--admin-blue: #332e75;
--bearcat-green: #13592e;
--awb-purple: #933b96;
--rsw-blue: #438ab6;
--osrsw-brown: #605443;
--thumb-bg: var(--body-light);
--thumb-caption-bg: var(--body-mid);
--sourceeditor-input-background: #fff;
--sourceeditor-background: var(--body-light);
--sourceeditor-background-secondary: var(--body-light);
--sourceeditor-border: var(--body-mid);
--codemirror-gutter-background: var(--body-mid);
}
@font-face {
font-family: 'Lora';
font-weight: 400 700;
font-style: normal;
font-display: swap;
src: url('filepath://Lora.woff2') format('woff2');
}
@font-face {
font-family: 'Lora';
font-weight: 400 700;
font-style: italic;
font-display: swap;
src: url('filepath://Lora-Italic.woff2') format('woff2');
}
:root {
--base-text-color: #36414f;
--base-heading-color: #444e5a;
--base-heading-border: #e4eaee;
--mw-code-background-color: #ddd4bb;
--body-background-image: url('filepath://Wiki_background.jpg');
}
#mw-page-base {
background: none;
}
.mw-body {
background-color: var(--body-main);
color: var(--text-color);
border-color: transparent;
box-shadow: 0 0 7px rgba(0, 0, 0, 0.15);
margin-top: 0;
}
h1,
h2,
h3,
h4,
h5,
h6 {
color: var(--text-color);
}
h1,
h2 {
border-color: var(--sidebar);
}
.mw-body h1,
.mw-body-content h1,
.mw-body-content h2,
.mw-body-content h3,
.mw-body-content h4,
.mw-body-content h5,
.mw-body-content h6 {
font-family: 'Lora', 'Palatino', 'Georgia', serif;
}
.mw-parser-output h2:first-of-type {
clear: left;
}
.mw-footer {
color: var(--background-text-color);
}
.mw-footer li {
color: var(--background-text-color);
}
.mw-footer a,
.mw-footer a:active,
.mw-footer a:visited {
color: var(--background-link-color);
}
::placeholder {
color: var(--subtle-color);
}
a {
color: var(--link-color);
}
a:visited,
a:active {
color: var(--link-color);
}
a.new {
color: var(--redlink-color);
}
a.new:visited {
color: var(--redlink-color);
}
.mw-parser-output a.extiw,
.mw-parser-output a.external {
color: var(--link-color);
}
.mw-parser-output a.extiw:visited,
.mw-parser-output a.external:visited,
.mw-parser-output a.extiw:active,
.mw-parser-output a.external:active {
color: var(--link-color);
}
.jsPurgeLink a.external {
color: var(--link-color);
}
:root {
--errorbox-bg: #feecea;
--errorbox-border: #ee4231;
--warningbox-bg: #fef9de;
--warningbox-border: #f9d000;
--successbox-bg: #ecf8e3;
--successbox-border: #6bc71f;
}
.mw-message-box-error,
.errorbox,
.mw-message-box-warning,
.warningbox,
.mw-message-box-success,
.successbox,
.usermessage {
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
}
.mw-message-box-error,
.errorbox {
background-color: var(--errorbox-bg);
border-color: var(--errorbox-border);
}
.mw-message-box-warning,
.warningbox,
.usermessage {
background-color: var(--warningbox-bg);
border-color: var(--warningbox-border);
}
.mw-message-box-success,
.successbox {
background-color: var(--successbox-bg);
border-color: var(--successbox-border);
}
.catlinks {
background: var(--body-light);
border: 1px solid var(--body-dark);
padding: 8px 15px;
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
}
.catlinks li {
border-color: var(--body-mid);
}
.filehistory a img,
#file img {
background: url("data:image/svg+xml,%3C%3Fxml version='1.0' encoding='UTF-8'%3F%3E%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16'%3E%3Cpath d='M0 0h8v16h8V8H0z' opacity='.13'/%3E%3C/svg%3E") repeat;
}
#file img:hover {
background: none;
}
.mw-highlight {
background: none;
}
.mw-highlight .linenos {
background-color: var(--mw-code-background-color);
color: var(--byline-color);
}
.mw-highlight a:hover .linenos,
.mw-highlight .hll a .linenos {
color: var(--text-color);
}
.mw-content-ltr.mw-highlight-lines pre,
.mw-content-ltr.content .mw-highlight-lines pre {
box-shadow: inset 2.75em 0 0 var(--mw-code-background-color);
}
#pagehistory ul {
list-style: none;
margin: 0;
}
#pagehistory li {
border: 1px solid transparent;
padding: 1px 10px;
margin: 2px 0;
}
#pagehistory li.selected {
background-color: var(--body-light);
color: inherit;
border: 1px dashed var(--body-border);
outline: none;
}
#mw-history-compare > div:first-of-type {
position: -webkit-sticky;
position: sticky;
top: 0;
background-color: var(--body-main);
border-bottom: 1px solid var(--body-dark);
padding: 0.25em 0;
}
.wgl-stickyheader #mw-history-compare > div:first-of-type {
top: 2.5rem;
}
.autocomment,
.autocomment a,
.autocomment a:visited {
color: var(--link-color);
}
li span.deleted,
span.history-deleted {
color: var(--byline-color);
}
.mw-usertoollinks-contribs-no-edits,
.mw-usertoollinks-contribs-no-edits:visited {
color: var(--redlink-color);
}
.CategoryTreeToggle {
color: var(--link-color);
}
body.wgl-stickyheader.action-view .mw-headline:target::before {
display: block;
content: '';
margin-top: -3rem;
height: 3rem;
visibility: hidden;
pointer-events: none;
}
.mw-mmv-post-image {
color: var(--text-color);
background-color: var(--body-main);
}
.mw-mmv-image-metadata {
border-top-color: var(--body-mid);
background-color: var(--body-light);
}
.mw-mmv-dialog,
.mw-mmv-dialog .mw-mmv-dialog-down-arrow,
.mw-mmv-options-dialog .mw-mmv-dialog-down-arrow {
background-color: var(--body-light);
box-shadow: none;
}
.mw-mmv-options-enable-alert {
background-color: var(--body-light);
color: var(--text-color);
}
.mw-mmv-options-dialog-header,
.mw-mmv-options-text-header,
.mw-mmv-options-text-body,
.mw-mmv-options-enable-alert,
.mw-mmv-options-dialog .mw-mmv-disable-confirmation .mw-mmv-options-dialog-header,
.mw-mmv-options-dialog .mw-mmv-disable-confirmation .mw-mmv-options-text-header {
color: var(--text-color);
}
.mw-revslider-container {
border-color: var(--sidebar);
}
.mw-revslider-slider-wrapper {
border-top-color: var(--sidebar);
}
.mw-ui-button {
background-color: var(--ooui-normal);
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
}
.mw-ui-button:not(:disabled):hover,
.mw-ui-button:not(:disabled):active {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
}
.mw-ui-button:not(:disabled):focus {
color: var(--ooui-text);
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent), inset 0 0 0 2px #fff;
}
.mw-ui-button:not(:disabled):visited {
color: var(--ooui-text);
}
.mw-ui-button.mw-ui-progressive:not(:disabled) {
background-color: var(--ooui-progressive);
color: #fff;
border-color: var(--ooui-progressive);
}
.mw-ui-button.mw-ui-progressive:not(:disabled):hover {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
}
.mw-ui-button.mw-ui-progressive:not(:disabled):focus {
box-shadow: inset 0 0 0 1px var(--ooui-accent), inset 0 0 0 2px #fff;
}
.mw-ui-button.mw-ui-progressive:not(:disabled):active,
.mw-ui-button.mw-ui-progressive:not(:disabled).is-on {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
box-shadow: none;
}
.mw-ui-button.mw-ui-destructive:not( :disabled ) {
color: #fff;
}
.mw-ui-button.mw-ui-quiet,
.mw-ui-button.mw-ui-quiet.mw-ui-progressive,
.mw-ui-button.mw-ui-quiet.mw-ui-destructive {
color: var(--text-color);
}
input[type='checkbox']:hover + .mw-ui-button.mw-ui-quiet,
input[type='checkbox']:hover + .mw-ui-button.mw-ui-quiet.mw-ui-progressive,
input[type='checkbox']:hover + .mw-ui-button.mw-ui-quiet.mw-ui-destructive,
.mw-ui-button.mw-ui-quiet:hover,
.mw-ui-button.mw-ui-quiet.mw-ui-progressive:hover,
.mw-ui-button.mw-ui-quiet.mw-ui-destructive:hover {
background-color: rgba(0, 24, 73, 0.02745098);
color: var(--text-color);
border-color: transparent;
}
input[type='checkbox']:focus + .mw-ui-button.mw-ui-quiet,
input[type='checkbox']:focus + .mw-ui-button.mw-ui-quiet.mw-ui-progressive,
input[type='checkbox']:focus + .mw-ui-button.mw-ui-quiet.mw-ui-destructive,
.mw-ui-button.mw-ui-quiet:focus,
.mw-ui-button.mw-ui-quiet.mw-ui-progressive:focus,
.mw-ui-button.mw-ui-quiet.mw-ui-destructive:focus {
color: var(--text-color);
}
input[type='checkbox']:active + .mw-ui-button.mw-ui-quiet,
input[type='checkbox']:active + .mw-ui-button.mw-ui-quiet.mw-ui-progressive,
input[type='checkbox']:active + .mw-ui-button.mw-ui-quiet.mw-ui-destructive,
.mw-ui-button.mw-ui-quiet:active,
.mw-ui-button.mw-ui-quiet.mw-ui-progressive:active,
.mw-ui-button.mw-ui-quiet.mw-ui-destructive:active {
background-color: rgba(0, 36, 73, 0.08235294);
color: var(--text-color);
border-color: #72777d;
}
.mw-ui-input {
background-color: var(--ooui-input);
color: var(--text-color);
border-color: var(--ooui-input-border);
}
.mw-ui-input:hover {
border-color: var(--ooui-input-border--hover);
}
.mw-ui-input::placeholder {
color: var(--byline-color);
}
.mw-content-ltr .redirectText li:first-child {
padding: 0;
background: 0;
}
.mw-content-ltr .redirectText li:first-child::before {
content: '';
background: currentcolor;
-webkit-mask: url("filepath://Redirect-arrow.svg") no-repeat 50% 50% / contain;
mask: url("filepath://Redirect-arrow.svg") no-repeat 50% 50% / contain;
display: inline-block;
width: 47px;
height: 20px;
}
.vector-search-box-inner {
background: var(--body-main);
box-shadow: inset 0 -7px 7px -7px rgba(0, 0, 0, 0.15);
}
.vector-menu-dropdown .vector-menu-heading {
color: #937040;
}
.vector-menu-dropdown .vector-menu-heading:hover {
color: #937040;
}
.vector-menu-dropdown .vector-menu-heading:focus {
color: #937040;
}
:root {
--wikitable-header-bg: var(--body-dark);
--wikitable-border: var(--body-border);
--wikitable-bg: var(--body-light);
--wikitable-bg-lighter: #e9e3d6;
--wikitable-color: var(--text-color);
--table-na-background: rgba(255, 255, 255, 0.3);
--table-na-color: var(--subtle-color);
--table-yes-background: #c3e8a3;
--table-yes-color: #2e5e05;
--table-no-background: #fbc0ba;
--table-no-color: #801c13;
--table-maybe-background: #fcea94;
--table-maybe-color: #786300;
}
.wikitable {
background: var(--wikitable-bg);
color: var(--wikitable-color);
border-color: var(--wikitable-border);
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
}
.wikitable > tr > th,
.wikitable > tr > td,
.wikitable > * > tr > th,
.wikitable > * > tr > td {
border-color: var(--wikitable-border);
}
.wikitable > tr > th.table-noborder,
.wikitable > tr > td.table-noborder,
.wikitable > * > tr > th.table-noborder,
.wikitable > * > tr > td.table-noborder {
border-left-style: hidden;
border-right-style: hidden;
padding-left: 0;
padding-right: 0;
}
.wikitable > tr > th,
.wikitable > * > tr > th {
background-color: var(--wikitable-header-bg);
}
.tabber .wikitable {
box-shadow: none;
}
.mw_metadata td,
.mw_metadata th {
border-color: var(--wikitable-border);
}
.mw_metadata th {
background-color: var(--wikitable-header-bg);
}
.mw_metadata td {
background-color: var(--wikitable-bg);
}
.mw-datatable {
border-color: var(--wikitable-border);
}
.mw-datatable td,
.mw-datatable th {
border-color: var(--wikitable-border);
}
.mw-datatable th {
background-color: var(--wikitable-header-bg);
}
.mw-datatable td {
background-color: var(--wikitable-bg);
}
.mw-datatable tr:hover td {
background-color: var(--wikitable-bg);
}
table.alternating-rows tr:nth-child(odd),
table.alternating-cols td:nth-child(odd) {
background: var(--wikitable-alternating-bg);
}
.table-na {
background: var(--table-na-background);
color: var(--table-na-color);
vertical-align: middle;
text-align: center;
}
.table-yes {
background: var(--table-yes-background);
color: var(--table-yes-color);
}
.table-positive {
background: var(--table-yes-background);
}
.table-no {
background: var(--table-no-background);
color: var(--table-no-color);
}
.table-negative {
background: var(--table-no-background);
}
.table-maybe {
background: var(--table-maybe-background);
color: var(--table-maybe-color);
}
#mw-allmessagestable .am_actual,
#mw-allmessagestable .am_default {
background-color: var(--wikitable-bg);
}
#mw-allmessagestable .am_default:hover,
#mw-allmessagestable .am_actual:hover,
#mw-allmessagestable tbody:hover td {
background-color: var(--wikitable-bg-lighter);
}
table.wikitable td.no-cell-spacing {
padding: 0;
height: 0;
}
table.wikitable td.no-cell-spacing table {
margin: -1px;
width: calc(100% + 2px);
height: calc(100% + 2px);
}
.plainlist ol,
.plainlist ul {
margin: 0;
}
.plainlist li {
margin-bottom: 0;
list-style: none;
}
table.align-right-1 td:nth-of-type(1),
table.align-right-2 td:nth-of-type(2),
table.align-right-3 td:nth-of-type(3),
table.align-right-4 td:nth-of-type(4),
table.align-right-5 td:nth-of-type(5),
table.align-right-6 td:nth-of-type(6),
table.align-right-7 td:nth-of-type(7),
table.align-right-8 td:nth-of-type(8),
table.align-right-9 td:nth-of-type(9),
table.align-right-10 td:nth-of-type(10),
table.align-right-11 td:nth-of-type(11),
table.align-right-12 td:nth-of-type(12),
table.align-right-13 td:nth-of-type(13),
table.align-right-14 td:nth-of-type(14),
table.align-right-15 td:nth-of-type(15),
table.align-right-16 td:nth-of-type(16),
table.align-right-17 td:nth-of-type(17),
table.align-right-18 td:nth-of-type(18),
table.align-right-19 td:nth-of-type(19),
table.align-right-20 td:nth-of-type(20) {
text-align: right;
}
table.align-center-1 td:nth-of-type(1),
table.align-center-2 td:nth-of-type(2),
table.align-center-3 td:nth-of-type(3),
table.align-center-4 td:nth-of-type(4),
table.align-center-5 td:nth-of-type(5),
table.align-center-6 td:nth-of-type(6),
table.align-center-7 td:nth-of-type(7),
table.align-center-8 td:nth-of-type(8),
table.align-center-9 td:nth-of-type(9),
table.align-center-10 td:nth-of-type(10),
table.align-center-11 td:nth-of-type(11),
table.align-center-12 td:nth-of-type(12),
table.align-center-13 td:nth-of-type(13),
table.align-center-14 td:nth-of-type(14),
table.align-center-15 td:nth-of-type(15),
table.align-center-16 td:nth-of-type(16),
table.align-center-17 td:nth-of-type(17),
table.align-center-18 td:nth-of-type(18),
table.align-center-19 td:nth-of-type(19),
table.align-center-20 td:nth-of-type(20) {
text-align: center;
}
table.align-left-1 td:nth-of-type(1),
table.align-left-2 td:nth-of-type(2),
table.align-left-3 td:nth-of-type(3),
table.align-left-4 td:nth-of-type(4),
table.align-left-5 td:nth-of-type(5),
table.align-left-6 td:nth-of-type(6),
table.align-left-7 td:nth-of-type(7),
table.align-left-8 td:nth-of-type(8),
table.align-left-9 td:nth-of-type(9),
table.align-left-10 td:nth-of-type(10),
table.align-left-11 td:nth-of-type(11),
table.align-left-12 td:nth-of-type(12),
table.align-left-13 td:nth-of-type(13),
table.align-left-14 td:nth-of-type(14),
table.align-left-15 td:nth-of-type(15),
table.align-left-16 td:nth-of-type(16),
table.align-left-17 td:nth-of-type(17),
table.align-left-18 td:nth-of-type(18),
table.align-left-19 td:nth-of-type(19),
table.align-left-20 td:nth-of-type(20) {
text-align: left;
}
:root {
--diff-addedline-border-color: #438ab5;
--diff-addedline-background: #bddff2;
--diff-addedline-color: #000;
--diff-deletedline-border-color: #379541;
--diff-deletedline-background: #c1edbf;
--diff-deletedline-color: #000;
--diff-context-border-color: var(--body-mid);
--diff-context-background: var(--body-mid);
}
.diff-context {
border-color: var(--diff-context-border-color);
background: var(--diff-context-background);
color: inherit;
}
.diff-addedline {
border-color: var(--diff-addedline-border-color);
}
.diff-addedline .diffchange {
background: var(--diff-addedline-background);
color: var(--diff-addedline-color);
}
.diff-deletedline {
border-color: var(--diff-deletedline-border-color);
}
.diff-deletedline .diffchange {
background: var(--diff-deletedline-background);
color: var(--diff-deletedline-color);
}
.mw-diff-movedpara-left:after,
.mw-diff-movedpara-right:after {
color: var(--text-color);
}
.mw-notification {
background-color: var(--body-light);
border-color: var(--body-border);
color: var(--text-color);
}
.mw-echo-ui-notificationsInboxWidget-toolbarWrapper {
background: var(--body-main);
}
.mw-body-content .mw-echo-ui-datedSubGroupListWidget-title-secondary {
color: var(--byline-color);
}
.mw-echo-ui-pageNotificationsOptionWidget.oo-ui-optionWidget-selected {
background-color: var(--ooui-normal);
color: var(--ooui-accent);
}
.mw-echo-ui-pageNotificationsOptionWidget-label-count {
background-color: var(--ooui-normal);
color: var(--byline-color);
}
.oo-ui-optionWidget-selected .mw-echo-ui-pageNotificationsOptionWidget-label-count {
color: var(--ooui-accent);
}
.mw-echo-ui-pageNotificationsOptionWidget.oo-ui-optionWidget-highlighted {
background-color: var(--ooui-normal);
color: var(--text-color);
}
.mw-echo-ui-crossWikiUnreadFilterWidget {
border-color: var(--body-border);
}
.mw-echo-ui-crossWikiUnreadFilterWidget-subtitle {
color: var(--byline-color);
}
.mw-echo-ui-notificationBadgeButtonPopupWidget-popup > .oo-ui-popupWidget-popup > .oo-ui-popupWidget-head,
.mw-echo-ui-notificationBadgeButtonPopupWidget-popup > .oo-ui-popupWidget-popup > .oo-ui-popupWidget-footer {
border-color: var(--ooui-interface-border);
}
.mw-echo-ui-notificationBadgeButtonPopupWidget-popup > .oo-ui-popupWidget-popup > .oo-ui-popupWidget-footer .mw-echo-ui-notificationBadgeButtonPopupWidget-footer-buttons .oo-ui-buttonElement:last-child {
border-left-color: var(--ooui-normal-border);
}
.mw-echo-ui-notificationItemWidget {
background-color: var(--ooui-normal);
border-color: var(--ooui-normal-border);
}
.mw-echo-ui-notificationItemWidget:hover,
.mw-echo-ui-notificationItemWidget-unread:hover {
background-color: var(--ooui-normal--hover);
}
.mw-echo-ui-notificationItemWidget:last-child {
border-bottom-color: var(--ooui-normal-border);
}
.mw-echo-ui-notificationItemWidget-unread {
background-color: var(--search-box);
}
.mw-echo-ui-crossWikiNotificationItemWidget-group,
.mw-echo-ui-bundleNotificationItemWidget-group {
background-color: var(--ooui-interface);
}
.mw-echo-ui-toggleReadCircleButtonWidget-circle {
background-color: var(--ooui-progressive);
}
.mw-echo-ui-toggleReadCircleButtonWidget:hover .mw-echo-ui-toggleReadCircleButtonWidget-circle {
background-color: var(--ooui-progressive--hover);
}
.mw-echo-ui-toggleReadCircleButtonWidget-circle-unread {
background-color: var(--ooui-normal);
border-color: var(--ooui-normal-border);
}
.mw-echo-ui-notificationItemWidget-content-message-header,
.mw-echo-ui-notificationItemWidget-content-message-body,
.mw-echo-ui-menuItemWidget > .oo-ui-buttonElement-button > .oo-ui-labelElement-label,
.mw-echo-ui-notificationItemWidget-content-actions-timestamp {
color: var(--ooui-text);
}
.mw-echo-ui-bundleNotificationItemWidget-group {
background-color: var(--body-main);
}
@keyframes unseen-fadeout-to-unread {
from {
background-color: var(--wikitable-bg-lighter);
}
to {
background-color: var(--search-box);
}
}
@keyframes unseen-fadeout-to-read {
from {
background-color: var(--wikitable-bg-lighter);
}
to {
background-color: var(--body-main);
}
}
.mwe-popups {
background: var(--body-light);
}
.mwe-popups .mwe-popups-container {
color: var(--text-color);
background: var(--body-light);
}
.mwe-popups .mwe-popups-container.flipped-x-y:before,
.mwe-popups .mwe-popups-container.flipped-y:before {
border-top: none;
}
.mwe-popups .mwe-popups-container.mwe-popups-no-image-tri:before {
border-bottom: none;
}
.mwe-popups .mwe-popups-container.flipped-x-y:after,
.mwe-popups .mwe-popups-container.flipped-y:after {
border-top-color: var(--body-light);
}
.mwe-popups .mwe-popups-container.mwe-popups-no-image-tri:after {
border-bottom-color: var(--body-light);
}
.mwe-popups .mwe-popups-settings-icon:hover,
.mwe-popups .mwe-popups-settings-icon:active {
background-color: var(--ooui-normal--hover);
}
.mwe-popups .mw-ui-icon-element:not(.disabled):hover {
background: none;
}
.mwe-popups .mwe-popups-extract {
color: var(--text-color);
}
.mwe-popups .mwe-popups-extract[dir='ltr']:after {
background-image: linear-gradient(to right, rgba(49, 62, 89, 0), var(--body-light) 50%);
}
.mwe-popups-overlay {
background-color: var(--ooui-window-background);
}
#mwe-popups-settings {
background: var(--ooui-interface);
border-color: var(--ooui-interface-border);
color: var(--text-color);
}
#mwe-popups-settings header {
border-color: var(--ooui-interface-border);
}
#mwe-popups-settings main#mwe-popups-settings-form p {
color: var(--byline-color);
}
#mwe-popups-settings main#mwe-popups-settings-form form label > span {
color: var(--ooui-text);
}
:root {
--smw-ask-options-even-bg: var(--body-mid);
--smw-ask-options-odd-bg: var(--body-light);
--smw-ask-action-btn-lblue-bg: var(--body-main);
--smw-ask-action-btn-lblue-color: #000;
--smw-ask-action-btn-lblue-border-color: var(--body-light);
--smw-ask-action-btn-dblue-bg: var(--body-light);
--smw-ask-action-btn-dblue-color: #fff;
--smw-ask-action-btn-dblue-border-color: var(--button-border);
}
.smw-ask-condition fieldset,
.smw-ask-printhead fieldset {
border-color: var(--sidebar);
}
.smw-ask-search fieldset,
.smw-ask-format fieldset,
.smw-ask-options fieldset {
border-color: var(--sidebar);
}
.strike > span:before,
.strike > span:after {
background: var(--sidebar);
}
.smw-ask-options-fields tr td {
background-color: var(--smw-ask-options-even-bg);
}
.smw-ask-options-fields tr:nth-child(odd) td {
background-color: var(--smw-ask-options-odd-bg);
}
.smw-ask-action-btn.smw-ask-action-btn-lblue,
.smw-ask-action-btn.smw-ask-action-btn-lblue:hover,
.smw-ask-action-btn.smw-ask-action-btn-lblue:visited {
background-color: var(--smw-ask-action-btn-lblue-bg);
color: var(--smw-ask-action-btn-lblue-color);
border-color: var(--smw-ask-action-btn-lblue-border-color);
}
.smw-ask-action-btn.smw-ask-action-btn-dblue,
.smw-ask-action-btn.smw-ask-action-btn-dblue:hover,
.smw-ask-action-btn.smw-ask-action-btn-dblue:visited {
background-color: var(--smw-ask-action-btn-dblue-bg);
color: var(--smw-ask-action-btn-dblue-color);
border-color: var(--smw-ask-action-btn-dblue-border-color);
}
.smw-ask-query textarea,
.smw-ask-actions textarea {
background-color: var(--ooui-interface);
border-color: var(--ooui-interface-border);
color: var(--ooui-text);
}
.smw-ask-query-format select {
background-color: var(--ooui-interface);
border: 1px solid var(--ooui-interface-border);
color: var(--ooui-text);
}
.smw-ask-toplinks {
background-color: var(--body-mid);
}
.smw-ask-toplinks span.smw-icon-info {
background: none;
padding: 0 !important;
}
.smw-ask-toplinks span.smw-icon-info::before {
content: '';
background: var(--text-color);
-webkit-mask: url("data:image/svg+xml,%3C%3Fxml version='1.0' encoding='UTF-8'%3F%3E%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 20 20'%3E%3Ctitle%3Einfo%3C/title%3E%3Cpath d='M10 0C4.477 0 0 4.477 0 10s4.477 10 10 10 10-4.477 10-10S15.523 0 10 0zM9 5h2v2H9zm0 4h2v6H9z'/%3E%3C/svg%3E") no-repeat 50% 50% / contain;
mask: url("data:image/svg+xml,%3C%3Fxml version='1.0' encoding='UTF-8'%3F%3E%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 20 20'%3E%3Ctitle%3Einfo%3C/title%3E%3Cpath d='M10 0C4.477 0 0 4.477 0 10s4.477 10 10 10 10-4.477 10-10S15.523 0 10 0zM9 5h2v2H9zm0 4h2v6H9z'/%3E%3C/svg%3E") no-repeat 50% 50% / contain;
padding: 0 0 3px 18px;
}
.smw-ask-options-row-odd {
background-color: var(--body-light);
}
.smw-ask-options-row-even {
background-color: var(--body-mid);
}
#options-toggle:not(:checked) + #options-list .options-parameter-list:after {
background-image: linear-gradient(to bottom, transparent, var(--body-mid) 90%);
}
.smw-ask-button-submit input {
background-color: var(--ooui-normal);
border-color: var(--ooui-normal-border);
color: var(--text-color);
}
.smw-ask-button-submit input:hover,
.smw-ask-button-lgrey:hover {
background-color: var(--ooui-normal--hover);
border-color: var(--ooui-normal-border);
}
input.smw-ask-action-btn.smw-ask-action-btn-dblue {
background-color: var(--ooui-normal);
border-color: var(--ooui-normal-border);
color: var(--ooui-text);
}
a.smw-ask-action-btn.smw-ask-action-btn-lblue {
background-color: var(--body-mid);
border-color: var(--body-mid);
color: var(--ooui-text);
}
a.smw-ask-action-btn.smw-ask-action-btn-lblue:visited {
background-color: var(--body-mid);
border-color: var(--body-mid);
color: var(--ooui-text);
}
a.smw-ask-action-btn.smw-ask-action-btn-lblue:hover {
background-color: var(--body-mid);
border-color: var(--body-mid);
color: var(--ooui-text);
}
a.smw-ask-action-btn-lgrey {
background-color: var(--ooui-normal);
border-color: var(--ooui-normal-border);
color: var(--ooui-text);
}
a.smw-ask-action-btn-lgrey:hover {
background-color: var(--ooui-normal--hover);
border-color: var(--ooui-normal-border);
color: var(--ooui-text);
}
.smw-callout-error {
background-color: var(--errorbox-bg);
border-color: var(--errorbox-border);
}
.smw-callout-info {
background-color: var(--body-light);
border-color: var(--body-dark);
}
.smw-callout-success {
background-color: var(--successbox-bg);
border-color: var(--successbox-border);
}
.smw-callout-warning {
background-color: var(--warningbox-bg);
border-color: var(--warningbox-bg);
}
.smw-tabs input.nav-tab:checked + label.nav-label,
.smw-tabs input.nav-tab:checked + label.nav-label:hover {
color: inherit;
}
#tab-smw-property-value:checked + label.nav-label .usage-count {
color: #fff;
background-color: var(--ooui-progressive);
}
#tab-smw-property-value:checked + label.nav-label .usage-count.moderate {
color: #fff;
background-color: #b55e0c;
border-color: #b55e0c;
}
#tab-smw-property-value:checked + label.nav-label .usage-count.high {
color: #fff;
background-color: #9f261e;
border-color: #9f261e;
}
.smw-property-page-results .header-title {
background-color: var(--ooui-interface);
border-bottom-color: var(--ooui-interface-border);
color: var(--ooui-text);
}
.smw-property-page-results .value-row:hover {
background-color: var(--ooui-normal--hover);
}
.smw-property-page-results .smw-table .header-row {
color: var(--text-color);
}
.tippy-tooltip.light-border-theme {
background-color: var(--body-light);
color: var(--text-color);
}
.tippy-tooltip.light-border-theme .tippy-arrow {
border-top-color: var(--body-light);
}
.tippy-tooltip.light-border-theme .tippy-arrow:after {
border-top-color: var(--body-light);
}
.tippy-header {
background-color: var(--body-dark);
border-bottom-color: var(--body-mid);
}
.smw-ui-input-filter {
background-color: var(--ooui-interface);
border-color: var(--ooui-interface-border);
color: var(--ooui-text);
}
.smw-ui-input-filter input {
border-left-color: var(--ooui-interface-border) !important;
color: var(--ooui-text) !important;
}
.smw-ui-pagination .page-link.link-disabled {
background-color: var(--ooui-disabled);
border-color: var(--ooui-disabled-border);
color: var(--subtle-color);
}
.smw-ui-pagination .page-link {
background-color: var(--ooui-normal);
border-color: var(--ooui-normal-border);
color: var(--link-color);
}
.smw-ui-pagination .page-link:hover {
background-color: var(--ooui-normal--hover);
border-color: var(--ooui-normal-border);
color: var(--link-color);
}
.smw-ui-pagination .page-link.link-active {
color: #fff;
background-color: var(--ooui-progressive);
border-color: var(--ooui-progressive);
}
.smw-tabs input.nav-tab:checked + label.nav-label {
border-color: var(--ooui-normal-border);
}
.smw-tabs section,
.smw-tabs .subtab-content {
border-top-color: var(--ooui-normal-border);
}
.smw-column-header {
color: var(--text-color);
}
.smw-factbox {
background: var(--body-main);
border-color: transparent;
}
.mw-body .mw-indicators #mw-indicator-smw-entity-examiner.mw-indicator .smw-indicator-vertical-bar-loader {
display: none;
}
.smwb-theme-light .smwb-title,
.smwb-theme-light .smwb-center,
.smwb-theme-light .smwb-actions,
.smwb-theme-light .smwb-prophead {
background-color: var(--body-mid);
}
.smwb-theme-light .smwb-factbox {
border-left-color: var(--body-mid);
}
.smwb-theme-light .smwb-ifactbox {
border-right-color: var(--body-mid);
}
.smwb-theme-light .smwb-propval {
background-color: var(--body-light);
}
.smwb-action-separator {
border-color: var(--wikitable-border);
}
.smwb-bottom {
border-bottom: 1px solid var(--wikitable-border);
}
.smwb-ifactbox .smwb-cell,
.smwb-factbox .smwb-cell {
border-top: 1px solid var(--wikitable-border);
}
.smwb-propvalue .smwb-prophead,
.smwb-ipropvalue .smwb-prophead,
.smwb-propvalue .smwb-propval,
.smwb-ipropvalue .smwb-propval {
font-size: 0.9em;
}
:root {
--filter-black-to-link: invert(36%) sepia(58%) saturate(433%) hue-rotate(344deg) brightness(100%) contrast(91%);
}
#bodyContent span.smwbrowse a {
color: black;
background-image: url('filepath://Smwbrowse.svg');
filter: var(--filter-black-to-link);
}
#bodyContent span.smwbrowse a:hover {
color: black;
background-image: url('filepath://Smwbrowse-hover.svg');
text-decoration: underline;
}
#bodyContent span.smwsearch a {
color: black;
filter: var(--filter-black-to-link);
background-image: url('filepath://Smwsearch.svg');
}
#bodyContent span.smwsearch a:hover {
color: black;
background-image: url('filepath://Smwsearch-hover.svg');
text-decoration: underline;
}
:root {
--tabber-tab-bg: var(--body-light);
--tabber-tab-border-color: var(--body-border);
--tabber-active-tab-bg: var(--body-light);
--tabber-active-tab-color: var(--text-color);
--tabber-active-tab-hover-bg: var(--body-light);
--tabber-active-tab-hover-border-color: var(--body-border);
--tabber-active-tab-hover-color: var(--text-color);
--tabber-active-tab-border-hider-color: var(--body-light);
--tabber-inactive-tab-bg: var(--body-background-color);
--tabber-inactive-tab-border-color: var(--body-border);
--tabber-inactive-tab-color: var(--text-color);
--tabber-inactive-tab-hover-bg: var(--body-light);
--tabber-inactive-tab-hover-border-color: var(--body-border);
}
.tabber {
margin: 1em 0;
}
.tabber .tabbertab {
background-color: var(--tabber-tab-bg);
border: 1px solid var(--tabber-tab-border-color);
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
padding: 1em 1.5em;
}
ul.tabbernav {
border: none;
margin-left: 2em;
margin-bottom: 0;
margin-right: 2em;
padding: 0;
font-family: inherit;
}
ul.tabbernav li.tabberactive > a {
background-color: var(--tabber-active-tab-bg);
color: var(--tabber-active-tab-color);
border-bottom: none;
position: relative;
}
ul.tabbernav li.tabberactive > a:hover {
color: var(--tabber-active-tab-hover-color);
background-color: var(--tabber-active-tab-hover-bg);
border-color: var(--tabber-active-tab-hover-border-color);
border-bottom: none;
}
ul.tabbernav li.tabberactive > a::after {
content: '';
position: absolute;
left: 0;
right: 0;
bottom: -1px;
border-bottom: 2px solid var(--tabber-active-tab-border-hider-color);
}
ul.tabbernav li a {
background-color: var(--tabber-inactive-tab-bg);
border-bottom: transparent;
border-color: var(--tabber-inactive-tab-border-color);
color: var(--tabber-inactive-tab-color);
display: inline-block;
font-size: 110%;
padding: 0.5em 1em;
}
ul.tabbernav li a:hover {
background-color: var(--tabber-inactive-tab-hover-bg);
border-color: var(--tabber-inactive-tab-hover-border-color);
}
ul.tabbernav li a:link,
ul.tabbernav li a:visited {
color: var(--tabber-inactive-tab-color);
}
:root {
--ooui-text: var(--text-color);
--ooui-interface: var(--body-light);
--ooui-interface-border: var(--body-border);
--ooui-window-background: rgba(255, 255, 255, 0.5);
--ooui-normal: #d5c7ad;
--ooui-normal--hover: #dfd5c1;
--ooui-normal-border: #b8a282;
--ooui-progressive: #605443;
--ooui-progressive--hover: #7e6e58;
--ooui-accent: var(--link-color);
--ooui-input: #fff;
--ooui-input-border: #b8a282;
--ooui-input-border--hover: #8a724f;
--ooui-disabled: #d1cdc5;
--ooui-disabled-border: #c2b9ab;
--ooui-disabled-text: var(--subtle-color);
--ooui-pending-background-image: repeating-linear-gradient(-45deg, var(--search-box), var(--search-box) 20px, var(--body-main) 20px, var(--body-main) 30px);
}
.oo-ui-widget {
color: var(--ooui-text);
}
.oo-ui-checkboxInputWidget [type='checkbox'] + span,
.oo-ui-radioInputWidget [type='radio'] + span {
background-color: var(--ooui-input);
border-color: var(--ooui-input-border);
}
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:checked + span,
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:indeterminate + span {
background-color: var(--ooui-progressive);
border-color: var(--ooui-progressive);
}
.oo-ui-radioInputWidget.oo-ui-widget-enabled [type='radio']:checked + span {
border-color: var(--ooui-progressive);
}
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:checked:hover + span,
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:indeterminate:hover + span {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
}
.oo-ui-radioInputWidget.oo-ui-widget-enabled [type='radio']:checked:hover + span {
border-color: var(--ooui-progressive--hover);
}
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:hover + span,
.oo-ui-radioInputWidget.oo-ui-widget-enabled [type='radio']:hover + span {
border-color: var(--ooui-accent);
}
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:focus + span {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:active + span,
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:checked:active + span,
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:indeterminate:active + span {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
box-shadow: inset 0 0 0 1px var(--ooui-progressive--hover);
}
.oo-ui-radioInputWidget.oo-ui-widget-enabled [type='radio']:active + span {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
}
.oo-ui-radioInputWidget.oo-ui-widget-enabled [type='radio']:checked:active + span {
border-color: var(--ooui-progressive--hover);
box-shadow: inset 0 0 0 1px var(--ooui-progressive--hover);
}
.oo-ui-radioInputWidget.oo-ui-widget-enabled [type='radio']:checked:active + span:before {
border-color: var(--ooui-progressive--hover);
}
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:checked:focus + span,
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:indeterminate:focus + span {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent), inset 0 0 0 2px #fff;
}
.oo-ui-checkboxInputWidget [type='checkbox']:disabled + span,
.oo-ui-radioInputWidget [type='radio']:disabled + span {
background-color: var(--ooui-disabled);
border-color: var(--ooui-disabled);
}
.oo-ui-dropdownWidget-handle {
border-color: var(--ooui-normal-border);
}
.oo-ui-dropdownWidget.oo-ui-widget-enabled .oo-ui-dropdownWidget-handle {
background-color: var(--ooui-normal);
color: var(--ooui-text);
}
.oo-ui-dropdownWidget.oo-ui-widget-enabled .oo-ui-dropdownWidget-handle:hover {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
}
.oo-ui-dropdownWidget.oo-ui-widget-enabled .oo-ui-dropdownWidget-handle:active {
color: var(--ooui-text);
}
.oo-ui-dropdownWidget.oo-ui-widget-enabled .oo-ui-dropdownWidget-handle:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-dropdownWidget.oo-ui-widget-enabled.oo-ui-dropdownWidget-open .oo-ui-dropdownWidget-handle {
background-color: var(--ooui-normal--hover);
}
.oo-ui-dropdownWidget.oo-ui-widget-disabled .oo-ui-dropdownWidget-handle {
color: var(--ooui-disabled-text);
text-shadow: none;
border-color: var(--ooui-disabled-border);
background-color: var(--ooui-disabled);
}
.oo-ui-dropdownInputWidget select {
border-color: var(--ooui-normal-border);
}
.oo-ui-dropdownInputWidget option {
background-color: var(--ooui-interface);
}
.oo-ui-dropdownInputWidget.oo-ui-widget-enabled {
background-color: var(--ooui-normal);
}
.oo-ui-dropdownInputWidget.oo-ui-widget-enabled:hover {
background-color: var(--ooui-normal--hover);
}
.oo-ui-dropdownInputWidget.oo-ui-widget-enabled select {
color: var(--ooui-text);
}
.oo-ui-dropdownInputWidget.oo-ui-widget-enabled select:hover,
.oo-ui-dropdownInputWidget.oo-ui-widget-enabled select:active {
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
}
.oo-ui-dropdownInputWidget.oo-ui-widget-enabled select:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-labelWidget.oo-ui-inline-help {
color: var(--byline-color);
}
.oo-ui-menuSelectWidget {
background-color: var(--ooui-interface);
border-color: var(--ooui-interface-border);
}
.oo-ui-menuSelectWidget-frameless {
box-shadow: inset 0 -1px 0 0 var(--ooui-normal-border);
}
.oo-ui-menuSectionOptionWidget {
color: var(--byline-color);
}
.oo-ui-menuOptionWidget.oo-ui-optionWidget-highlighted,
.oo-ui-menuOptionWidget.oo-ui-optionWidget-selected {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
}
.oo-ui-menuOptionWidget.oo-ui-optionWidget-selected.oo-ui-menuOptionWidget.oo-ui-optionWidget-highlighted,
.oo-ui-menuOptionWidget.oo-ui-optionWidget-pressed.oo-ui-menuOptionWidget.oo-ui-optionWidget-highlighted {
color: var(--ooui-accent);
}
.oo-ui-menuOptionWidget.oo-ui-widget-enabled.oo-ui-optionWidget {
color: var(--ooui-text);
}
.oo-ui-messageDialog-title {
color: inherit;
}
.oo-ui-messageWidget.oo-ui-messageWidget-block.oo-ui-flaggedElement-error {
background-color: var(--errorbox-bg);
border-color: var(--errorbox-border);
}
.oo-ui-messageWidget.oo-ui-messageWidget-block.oo-ui-flaggedElement-warning {
background-color: var(--warningbox-bg);
border-color: var(--warningbox-border);
}
.oo-ui-messageWidget.oo-ui-messageWidget-block.oo-ui-flaggedElement-success {
background-color: var(--successbox-bg);
border-color: var(--successbox-border);
}
.oo-ui-messageWidget.oo-ui-messageWidget-block.oo-ui-flaggedElement-notice {
background-color: var(--messagebox-info-background);
border-color: var(--messagebox-info-border);
}
.oo-ui-messageWidget.oo-ui-flaggedElement-error:not(.oo-ui-messageWidget-block),
.oo-ui-messageWidget.oo-ui-flaggedElement-success:not(.oo-ui-messageWidget-block) {
color: var(--ooui-text);
}
.oo-ui-optionWidget.oo-ui-widget-disabled {
color: var(--ooui-disabled-text);
}
.oo-ui-outlineControlsWidget {
background-color: var(--ooui-normal);
}
.oo-ui-outlineOptionWidget.oo-ui-optionWidget-highlighted {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
}
.oo-ui-popupWidget-popup {
background-color: var(--ooui-interface);
border-color: var(--ooui-interface-border);
}
.oo-ui-popupWidget-anchored-top .oo-ui-popupWidget-anchor:after {
border-bottom-color: var(--ooui-interface);
}
.oo-ui-popupWidget-anchored-top .oo-ui-popupWidget-anchor:before {
border-bottom-color: var(--ooui-interface-border);
}
.oo-ui-popupWidget-anchored-bottom .oo-ui-popupWidget-anchor:after {
border-top-color: var(--ooui-interface);
}
.oo-ui-popupWidget-anchored-bottom .oo-ui-popupWidget-anchor:before {
border-top-color: var(--ooui-interface-border);
}
.oo-ui-popupWidget-anchored-start .oo-ui-popupWidget-anchor:after {
border-right-color: var(--ooui-interface);
}
.oo-ui-popupWidget-anchored-start .oo-ui-popupWidget-anchor:before {
border-right-color: var(--ooui-interface-border);
}
.oo-ui-popupWidget-anchored-end .oo-ui-popupWidget-anchor:after {
border-left-color: var(--ooui-interface);
}
.oo-ui-popupWidget-anchored-end .oo-ui-popupWidget-anchor:before {
border-left-color: var(--ooui-interface-border);
}
.oo-ui-searchWidget-query {
border-bottom-color: var(--ooui-interface-border);
}
.oo-ui-selectFileWidget-dropTarget {
background-color: var(--ooui-interface);
border-color: var(--ooui-interface-border);
}
.oo-ui-selectFileWidget.oo-ui-widget-enabled.oo-ui-selectFileWidget-dropTarget {
background-color: var(--ooui-interface);
}
.oo-ui-selectFileWidget.oo-ui-widget-enabled.oo-ui-selectFileWidget-dropTarget:hover {
border-color: var(--ooui-input-border--hover);
}
.oo-ui-tabOptionWidget {
color: var(--ooui-text);
}
.oo-ui-tabSelectWidget-framed .oo-ui-tabOptionWidget.oo-ui-optionWidget-selected {
background-color: var(--body-dark);
color: var(--ooui-text);
}
.oo-ui-tabSelectWidget-framed .oo-ui-tabOptionWidget.oo-ui-optionWidget-selected .oo-ui-labelElement-label {
border-bottom-color: var(--body-border);
}
.oo-ui-tabSelectWidget-framed .oo-ui-tabOptionWidget.oo-ui-widget-enabled:hover,
.oo-ui-tabSelectWidget-framed .oo-ui-tabOptionWidget.oo-ui-widget-enabled:active {
background-color: var(--body-light);
color: var(--ooui-text);
}
.oo-ui-tabSelectWidget-framed .oo-ui-tabOptionWidget.oo-ui-widget-enabled.oo-ui-optionWidget-selected:hover {
background-color: var(--body-dark);
}
.oo-ui-tabSelectWidget-frameless .oo-ui-tabOptionWidget.oo-ui-optionWidget-selected {
color: var(--ooui-progressive);
box-shadow: inset 0 -2px 0 0 var(--ooui-progressive);
}
.oo-ui-tabSelectWidget-frameless .oo-ui-tabOptionWidget.oo-ui-optionWidget-selected:hover,
.oo-ui-tabSelectWidget-frameless .oo-ui-tabOptionWidget.oo-ui-optionWidget-selected:focus {
color: var(--ooui-progressive--hover);
box-shadow: inset 0 -2px 0 0 var(--ooui-progressive--hover);
}
.oo-ui-tabSelectWidget-framed {
background: none;
border-bottom: 1px solid var(--ooui-interface-border);
}
.oo-ui-tabSelectWidget-frameless {
box-shadow: inset 0 -1px 0 0 var(--ooui-interface-border);
}
.oo-ui-tabSelectWidget-mobile {
}
.oo-ui-tabSelectWidget-mobile.oo-ui-tabSelectWidget-framed:after {
background: var(--mobile-navbox-linear-gradient);
}
.oo-ui-tabSelectWidget-mobile.oo-ui-tabSelectWidget-frameless:after {
background: var(--mobile-navbox-linear-gradient);
}
.oo-ui-tagItemWidget {
border-color: var(--ooui-normal-border);
}
.oo-ui-tagItemWidget.oo-ui-widget-enabled {
color: var(--ooui-text);
}
.oo-ui-tagItemWidget.oo-ui-widget-enabled:hover {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
}
.oo-ui-tagItemWidget.oo-ui-widget-enabled:not( .oo-ui-tagItemWidget-fixed ) {
background-color: var(--ooui-normal);
}
.oo-ui-tagItemWidget.oo-ui-widget-enabled .oo-ui-buttonElement-button:hover {
background-color: var(--ooui-normal--hover);
}
.oo-ui-tagMultiselectWidget.oo-ui-widget-enabled {
background-color: var(--ooui-interface);
}
.oo-ui-tagMultiselectWidget.oo-ui-widget-enabled.oo-ui-tagMultiselectWidget-outlined {
background-color: var(--ooui-normal);
}
.oo-ui-tagMultiselectWidget.oo-ui-widget-enabled.oo-ui-tagMultiselectWidget-outlined .oo-ui-tagItemWidget.oo-ui-widget-enabled {
background-color: var(--ooui-interface);
}
.oo-ui-textInputWidget .oo-ui-inputWidget-input {
background-color: var(--ooui-input);
color: var(--ooui-text);
border-color: var(--ooui-input-border);
}
.oo-ui-textInputWidget.oo-ui-widget-enabled .oo-ui-inputWidget-input::placeholder {
color: var(--subtle-color);
}
.oo-ui-textInputWidget.oo-ui-widget-enabled .oo-ui-inputWidget-input:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-textInputWidget.oo-ui-widget-enabled .oo-ui-inputWidget-input[readonly]:not(.oo-ui-pendingElement-pending) {
background-color: var(--ooui-disabled);
color: var(--ooui-disabled-text);
}
.oo-ui-textInputWidget.oo-ui-widget-enabled:hover .oo-ui-inputWidget-input {
border-color: var(--ooui-input-border--hover);
}
.oo-ui-textInputWidget.oo-ui-widget-enabled:hover .oo-ui-inputWidget-input:focus {
border-color: var(--ooui-accent);
}
@media screen and (min-width: 0) {
.oo-ui-textInputWidget.oo-ui-widget-enabled textarea.oo-ui-inputWidget-input:focus {
outline: 1px solid var(--ooui-accent);
}
}
.oo-ui-textInputWidget.oo-ui-widget-disabled .oo-ui-inputWidget-input {
background-color: var(--ooui-disabled);
color: var(--ooui-disabled-text);
text-shadow: none;
border-color: var(--ooui-disabled-border);
}
.oo-ui-toggleSwitchWidget {
background-color: var(--ooui-input);
border-color: var(--ooui-input-border);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled .oo-ui-toggleSwitchWidget-grip {
background-color: var(--ooui-input);
border-color: var(--ooui-input-border);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:hover {
background-color: var(--ooui-input);
border-color: var(--ooui-accent);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:hover .oo-ui-toggleSwitchWidget-grip {
background-color: var(--ooui-input);
border-color: var(--ooui-accent);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:active,
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:active:hover,
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:active:focus {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
box-shadow: inset 0 0 0 1px var(--ooui-progressive--hover);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:active .oo-ui-toggleSwitchWidget-grip,
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:active:hover .oo-ui-toggleSwitchWidget-grip,
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:active:focus .oo-ui-toggleSwitchWidget-grip {
background-color: var(--ooui-input);
border-color: var(--ooui-input);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:focus .oo-ui-toggleSwitchWidget-grip {
border-color: var(--ooui-accent);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled.oo-ui-toggleWidget-on {
background-color: var(--ooui-progressive);
border-color: var(--ooui-progressive);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled.oo-ui-toggleWidget-on .oo-ui-toggleSwitchWidget-grip {
background-color: var(--ooui-input);
border-color: var(--ooui-input);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled.oo-ui-toggleWidget-on:hover {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled.oo-ui-toggleWidget-on:active,
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled.oo-ui-toggleWidget-on:active:hover {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled.oo-ui-toggleWidget-on:focus {
border-color: var(--ooui-progressive);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled.oo-ui-toggleWidget-on:focus::before {
border-color: #fff;
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-disabled {
background-color: var(--ooui-disabled);
border-color: var(--ooui-disabled);
}
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled > .oo-ui-buttonElement-button {
color: var(--ooui-text);
}
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled > .oo-ui-buttonElement-button:hover {
color: var(--ooui-text);
}
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled > .oo-ui-buttonElement-button:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled.oo-ui-buttonElement-pressed > input.oo-ui-buttonElement-button,
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled > .oo-ui-buttonElement-button:active {
color: var(--ooui-text);
}
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button,
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button:hover {
color: var(--ooui-text);
}
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button:active,
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive.oo-ui-buttonElement-pressed > .oo-ui-buttonElement-button {
color: var(--ooui-text);
border-color: var(--ooui-text);
}
.oo-ui-buttonElement-frameless.oo-ui-widget-disabled > .oo-ui-buttonElement-button {
color: var(--ooui-disabled-text);
}
.oo-ui-buttonElement-framed.oo-ui-widget-disabled > .oo-ui-buttonElement-button {
background-color: var(--ooui-disabled);
border-color: var(--ooui-disabled-border);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled > .oo-ui-buttonElement-button {
background-color: var(--ooui-normal);
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled > .oo-ui-buttonElement-button:hover {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled > .oo-ui-buttonElement-button:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-buttonElement-active > .oo-ui-buttonElement-button {
background-color: var(--ooui-progressive--hover);
color: #fff;
border-color: var(--ooui-progressive--hover);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-buttonElement-active > .oo-ui-buttonElement-button:focus {
border-color: var(--ooui-progressive--hover);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled > .oo-ui-buttonElement-button:active,
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-buttonElement-pressed > .oo-ui-buttonElement-button {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive {
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button {
color: var(--ooui-text);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button:hover {
background-color: var(--ooui-normal--hover);
border-color: var(--ooui-progressive--hover);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-destructive > .oo-ui-buttonElement-button {
color: var(--ooui-text);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-destructive > .oo-ui-buttonElement-button:hover {
background-color: var(--ooui-normal--hover);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button {
background-color: var(--ooui-progressive);
border-color: var(--ooui-progressive);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button:hover {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent), inset 0 0 0 2px #fff;
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button:active,
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive.oo-ui-buttonElement-pressed > .oo-ui-buttonElement-button,
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive.oo-ui-buttonElement-active > .oo-ui-buttonElement-button,
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive.oo-ui-popupToolGroup-active > .oo-ui-buttonElement-button {
color: #fff;
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
}
.oo-ui-pendingElement-pending {
background-image: var(--ooui-pending-background-image);
background-size: 200%;
animation: oo-ui-pendingElement-stripes 6s linear infinite;
}
@keyframes oo-ui-pendingElement-stripes {
100% {
background-position: 100%;
}
}
.oo-ui-messageDialog-content > .oo-ui-window-foot {
outline-color: var(--ooui-interface-border);
}
.oo-ui-messageDialog-message {
color: var(--ooui-text);
}
.oo-ui-messageDialog-actions-horizontal .oo-ui-actionWidget {
border-right-color: var(--ooui-interface-border);
}
.oo-ui-messageDialog-actions-vertical .oo-ui-actionWidget {
border-bottom-color: var(--ooui-interface-border);
}
.oo-ui-processDialog-content .oo-ui-window-head,
.oo-ui-processDialog-content .oo-ui-window-foot {
outline-color: var(--ooui-interface-border);
}
.oo-ui-processDialog .oo-ui-actionWidget > .oo-ui-buttonElement-button {
border-top-color: transparent;
border-bottom-color: transparent;
}
.oo-ui-processDialog .oo-ui-actionWidget > .oo-ui-buttonElement-button:hover,
.oo-ui-processDialog .oo-ui-actionWidget > .oo-ui-buttonElement-button:active {
border-top-color: transparent;
border-bottom-color: transparent;
}
.oo-ui-processDialog .oo-ui-actionWidget:not( .oo-ui-flaggedElement-progressive ):not( .oo-ui-flaggedElement-destructive ) > .oo-ui-buttonElement-button:hover,
.oo-ui-processDialog .oo-ui-actionWidget:not( .oo-ui-flaggedElement-progressive ):not( .oo-ui-flaggedElement-destructive ) > .oo-ui-buttonElement-button:active {
border-right-color: var(--ooui-interface-border);
border-left-color: transparent;
}
.oo-ui-processDialog .oo-ui-actionWidget:not( .oo-ui-flaggedElement-progressive ):not( .oo-ui-flaggedElement-destructive ) > .oo-ui-buttonElement-button:focus {
border-color: var(--ooui-accent);
}
.oo-ui-processDialog-actions-safe .oo-ui-actionWidget > .oo-ui-buttonElement-button,
.oo-ui-processDialog-actions-other .oo-ui-actionWidget > .oo-ui-buttonElement-button {
border-right-color: var(--ooui-normal-border);
border-left-color: transparent;
}
.oo-ui-processDialog-actions-safe .oo-ui-widget-enabled.oo-ui-iconElement:not( .oo-ui-labelElement ) > .oo-ui-buttonElement-button:hover {
background-color: var(--ooui-normal--hover);
border-right-color: var(--ooui-interface-border);
}
.oo-ui-windowManager-modal > .oo-ui-dialog {
background-color: var(--ooui-window-background);
}
.oo-ui-windowManager-modal > .oo-ui-dialog > .oo-ui-window-frame {
background-color: var(--ooui-interface);
}
.oo-ui-windowManager-modal.oo-ui-windowManager-floating > .oo-ui-dialog > .oo-ui-window-frame {
border-color: var(--ooui-interface-border);
}
.oo-ui-window {
color: var(--ooui-text);
}
.oo-ui-toolbar-bar {
background-color: var(--ooui-interface);
color: var(--ooui-text);
}
.oo-ui-toolbar-position-top > .oo-ui-toolbar-bar {
border-bottom-color: var(--body-mid);
}
.oo-ui-toolbar-bar .oo-ui-bookletLayout > .oo-ui-menuLayout-menu {
border-right-color: var(--body-mid);
}
.oo-ui-tool.oo-ui-widget-enabled > .oo-ui-tool-link:hover {
background-color: var(--ooui-normal--hover);
}
.oo-ui-tool.oo-ui-widget-enabled > .oo-ui-tool-link:focus {
outline: 1px solid var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-tool.oo-ui-widget-enabled > .oo-ui-tool-link:active,
.oo-ui-tool.oo-ui-widget-enabled.oo-ui-tool-active > .oo-ui-tool-link,
.oo-ui-tool.oo-ui-widget-enabled.oo-ui-popupToolGroup-active > .oo-ui-tool-link {
background-color: var(--ooui-normal--hover);
color: var(--ooui-accent);
box-shadow: none;
}
.oo-ui-tool.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive > .oo-ui-tool-link {
background-color: var(--ooui-progressive);
}
.oo-ui-tool.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive > .oo-ui-tool-link:hover {
background-color: var(--ooui-progressive--hover);
}
.oo-ui-tool.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive > .oo-ui-tool-link:focus {
box-shadow: inset 0 0 0 1px var(--ooui-accent), inset 0 0 0 2px #fff;
}
.oo-ui-tool.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive > .oo-ui-tool-link:active,
.oo-ui-tool.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive.oo-ui-tool-active > .oo-ui-tool-link {
background-color: var(--ooui-progressive--hover);
}
.oo-ui-listToolGroup-tools .oo-ui-tool.oo-ui-widget-enabled {
background-color: var(--ooui-normal);
}
.oo-ui-listToolGroup-tools .oo-ui-tool.oo-ui-widget-enabled:hover {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
}
.oo-ui-listToolGroup-tools .oo-ui-tool-active.oo-ui-widget-enabled .oo-ui-tool-link .oo-ui-tool-title {
color: var(--ooui-progressive);
}
.oo-ui-menuToolGroup {
border-left-color: var(--body-mid);
border-right-color: var(--body-mid);
}
.oo-ui-popupToolGroup-tools {
background-color: var(--ooui-interface);
border-color: var(--body-mid);
}
.oo-ui-popupToolGroup.oo-ui-widget-enabled > .oo-ui-popupToolGroup-handle:hover {
background-color: var(--ooui-normal--hover);
}
.oo-ui-popupToolGroup.oo-ui-widget-enabled > .oo-ui-popupToolGroup-handle:focus {
outline: 1px solid var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-toolbar-actions .oo-ui-popupToolGroup.oo-ui-widget-enabled > .oo-ui-popupToolGroup-handle:hover {
border-right-color: var(--ooui-normal--hover);
}
.oo-ui-popupToolGroup-tools .oo-ui-tool.oo-ui-widget-enabled .oo-ui-tool-link:focus {
box-shadow: inset 0 0 0 2px var(--ooui-accent);
}
.oo-ui-popupToolGroup-tools .oo-ui-tool-active.oo-ui-widget-enabled .oo-ui-tool-link .oo-ui-tool-title {
color: var(--ooui-progressive);
}
.oo-ui-popupToolGroup.oo-ui-popupToolGroup-active > .oo-ui-popupToolGroup-handle {
background-color: var(--ooui-normal);
color: var(--ooui-accent);
}
.oo-ui-popupToolGroup.oo-ui-popupToolGroup-active > .oo-ui-popupToolGroup-handle:hover {
background-color: var(--ooui-normal--hover);
color: var(--ooui-accent);
}
.oo-ui-bookletLayout-outlinePanel > .oo-ui-outlineControlsWidget {
border-top-color: var(--ooui-interface-border);
}
.oo-ui-bookletLayout > .oo-ui-menuLayout-menu {
border-right-color: var(--ooui-interface-border);
}
.oo-ui-fieldLayout-disabled > .oo-ui-fieldLayout-body > .oo-ui-fieldLayout-header > .oo-ui-labelElement-label {
color: var(--ooui-disabled-text);
}
.oo-ui-panelLayout-framed {
border-color: var(--sidebar);
}
.oo-ui-icon-settings {
background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' width='20' height='20' viewBox='0 0 20 20'%3E%3Ctitle%3Esettings%3C/title%3E%3Cg transform='translate(10 10)'%3E%3Cpath id='a' d='M1.5-10h-3l-1 6.5h5m0 7h-5l1 6.5h3'/%3E%3Cuse xlink:href='%23a' transform='rotate(45)'/%3E%3Cuse xlink:href='%23a' transform='rotate(90)'/%3E%3Cuse xlink:href='%23a' transform='rotate(135)'/%3E%3C/g%3E%3Cpath d='M10 2.5a7.5 7.5 0 0 0 0 15 7.5 7.5 0 0 0 0-15v4a3.5 3.5 0 0 1 0 7 3.5 3.5 0 0 1 0-7'/%3E%3C/svg%3E");
}
.oo-ui-icon-clear {
background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 20 20'%3E%3Ctitle%3Eclear%3C/title%3E%3Cpath d='M10 0a10 10 0 1 0 10 10A10 10 0 0 0 10 0zm5.66 14.24-1.41 1.41L10 11.41l-4.24 4.25-1.42-1.42L8.59 10 4.34 5.76l1.42-1.42L10 8.59l4.24-4.24 1.41 1.41L11.41 10z'/%3E%3C/svg%3E");
}
.mw-widget-dateInputWidget-handle {
background-color: var(--ooui-input);
color: var(--ooui-text);
border-color: var(--ooui-input-border);
}
.mw-widget-dateInputWidget-calendar {
background-color: var(--ooui-interface);
}
.mw-widget-dateInputWidget.oo-ui-widget-enabled .mw-widget-dateInputWidget-handle:hover {
border-color: var(--ooui-input-border--hover);
}
.mw-widget-calendarWidget {
border-color: var(--ooui-interface-border);
}
.mw-widget-calendarWidget:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.mw-widget-calendarWidget-day,
.mw-widget-calendarWidget-day-heading {
color: var(--ooui-text);
}
.mw-widget-calendarWidget-day-additional {
color: var(--ooui-text);
opacity: 0.67;
}
.mw-widget-calendarWidget-day-today {
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.mw-widget-calendarWidget-item:hover {
background-color: var(--ooui-progressive);
}
.mw-widget-calendarWidget-item-selected {
background-color: var(--ooui-progressive--hover);
}
.mw-widgets-datetime-calendarWidget {
background-color: var(--ooui-interface);
border-color: var(--ooui-interface-border);
}
.mw-widgets-datetime-calendarWidget:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent), 0 2px 2px 0 rgba(0, 0, 0, 0.25);
}
.mw-widgets-datetime-calendarWidget-grid .mw-widgets-datetime-calendarWidget-cell.mw-widgets-datetime-calendarWidget-extra .oo-ui-buttonElement-button .oo-ui-labelElement-label {
color: var(--subtle-color);
}
.mw-widgets-datetime-calendarWidget-grid .mw-widgets-datetime-calendarWidget-cell.mw-widgets-datetime-calendarWidget-selected .oo-ui-buttonElement-button {
background-color: var(--ooui-progressive--hover);
}
.mw-widgets-datetime-dateTimeInputWidget-handle {
background-color: var(--ooui-input);
color: var(--ooui-text);
border-color: var(--ooui-input-border);
}
.mw-widgets-datetime-dateTimeInputWidget.oo-ui-widget-enabled.mw-widgets-datetime-dateTimeInputWidget-handle:hover {
border-color: var(--ooui-input-border--hover);
}
.mw-widgets-datetime-dateTimeInputWidget.oo-ui-widget-enabled:hover input,
.mw-widgets-datetime-dateTimeInputWidget.oo-ui-widget-enabled:hover textarea {
border-color: var(--ooui-input-border--hover);
}
.mw-widgets-datetime-dateTimeInputWidget.oo-ui-widget-enabled .mw-widgets-datetime-dateTimeInputWidget-editField:hover {
background-color: var(--ooui-normal);
}
.ve-activated .ve-init-mw-desktopArticleTarget-originalContent #catlinks:hover {
background: var(--ooui-normal--hover);
}
.ve-ui-overlay {
font-family: inherit;
}
.oo-ui-toolbar-position-top .ve-ui-toolbarDialog-position-above {
border-top-color: var(--body-mid);
}
.ve-ce-branchNode-blockSlug,
.ve-ce-branchNode-newSlug {
outline-color: var(--body-border);
background-color: var(--ooui-interface);
}
.ve-ui-specialCharacterPage h3 {
color: var(--byline-color);
}
.ve-ui-specialCharacterPage-character {
border-color: var(--body-mid);
}
.ve-ui-specialCharacterPage-character:hover {
border-color: var(--body-dark);
}
.ve-ce-linkAnnotation.ve-ce-annotation-active {
box-shadow: 0 0 0 1px var(--body-mid);
background: none;
}
.ve-ui-desktopContext .ve-ui-linkContextItem .ve-ui-linkContextItem-label {
border-color: var(--body-border);
}
.ve-ui-mwHelpPopupTool-version-label,
.ve-ui-mwHelpPopupTool-version-link,
.ve-ui-mwHelpPopupTool-version-date {
color: var(--byline-color);
}
.ve-ce-tableCellableNode {
border-color: var(--body-mid);
}
.ve-ce-mwReferencesListNode-muted {
color: var(--byline-color);
}
.ve-ui-mwTemplatePage-description,
.ve-ui-mwParameterPage-label,
.ve-ui-mwParameterPage-description-required,
.ve-ui-mwParameterPage-description-deprecated {
color: var(--byline-color);
}
.mw-widget-titleWidget-menu .mw-widget-titleOptionWidget-description {
color: var(--byline-color);
}
.ve-ui-mwGalleryDialog-menuLayout > .oo-ui-menuLayout-menu,
.ve-ui-mwGalleryDialog-innerMenuLayout > .oo-ui-menuLayout-menu,
.ve-ui-mwGalleryDialog .ve-ui-mwGalleryDialog-image-container,
.ve-ui-targetWidget {
border-color: var(--body-border);
}
.ve-ui-targetWidget:not(.oo-ui-pendingElement-pending) {
background-color: var(--body-main);
}
.ve-ui-mwSaveDialog {
color: var(--ooui-text);
}
.ve-ui-mwSaveDialog-options {
background-color: var(--ooui-interface);
border-color: var(--body-border);
}
.ve-ui-mwSaveDialog-summary {
background-color: var(--ooui-input);
}
.ve-ui-mwSaveDialog-editSummary-count {
border-color: var(--body-border);
}
.ve-ui-mwSaveDialog-license {
color: var(--byline-color);
}
.ve-ui-mwReferenceContextItem-muted {
color: var(--byline-color);
}
.ve-ui-mwNoticesPopupTool-items > div:not(:first-child),
.ve-ui-mwHelpPopupTool-item:not(:first-child) {
border-color: var(--body-border);
}
.ve-ui-mwTransclusionOutlineControlsWidget {
background-color: var(--ooui-interface);
border-top-color: var(--body-border);
}
.ve-ui-mwTransclusionOutlineTemplateWidget-sticky {
background-color: var(--ooui-interface);
}
.ve-ui-mwTransclusionOutlineTemplateWidget .ve-ui-mwTransclusionOutlineParameterWidget.oo-ui-optionWidget-highlighted {
color: var(--ooui-text);
}
.ve-ui-mwTransclusionOutlineTemplateWidget-no-template-parameters {
color: var(--subtle-color);
}
.ve-ui-mwParameterPage-undocumentedLabel {
color: var(--subtle-color);
}
.ve-ui-mwTwoPaneTransclusionDialogLayout > .oo-ui-menuLayout-menu {
border-right: var(--body-border);
}
.ve-ui-mwParameterPage-doc-required,
.ve-ui-mwParameterPage-doc-deprecated,
.ve-ui-mwParameterPage-inlineDescription .ve-ui-mwParameterPage-doc-example {
color: var(--byline-color);
}
.ve-ui-expandableContent-toggle {
background-color: var(--ooui-interface);
}
.ve-ui-expandableContent-fade {
background: linear-gradient(to right, rgba(255, 255, 255, 0) 0, var(--ooui-interface) 90%);
}
.ve-ui-commandHelpDialog-shortcut > kbd,
.ve-ui-commandHelpDialog-sequence > kbd {
background-color: var(--keypress-background);
color: var(--keypress-color);
border-color: var(--keypress-border);
box-shadow: none;
text-shadow: none;
}
.ve-init-mw-desktopArticleTarget-toolbarPlaceholder-floating .ve-init-mw-desktopArticleTarget-toolbarPlaceholder-bar {
background: var(--ooui-interface);
}
.ve-init-mw-desktopArticleTarget-toolbarPlaceholder-bar {
border-bottom-color: var(--body-mid);
}
figure[typeof~='mw:File/Thumb'],
figure[typeof~='mw:File/Frame'],
figure[typeof~='mw:Image/Thumb'],
figure[typeof~='mw:Video/Thumb'],
figure[typeof~='mw:Image/Frame'],
figure[typeof~='mw:Video/Frame'] {
border: none;
background-color: var(--thumb-bg);
}
figure[typeof~='mw:File/Thumb'] > a:first-child > *:first-child:not( .mw-broken-media ),
figure[typeof~='mw:File/Frame'] > a:first-child > *:first-child:not( .mw-broken-media ),
figure[typeof~='mw:Image/Thumb'] > a:first-child > *:first-child:not( .mw-broken-media ),
figure[typeof~='mw:Video/Thumb'] > a:first-child > *:first-child:not( .mw-broken-media ),
figure[typeof~='mw:Image/Frame'] > a:first-child > *:first-child:not( .mw-broken-media ),
figure[typeof~='mw:Video/Frame'] > a:first-child > *:first-child:not( .mw-broken-media ) {
border: none;
background: var(--thumb-bg);
}
figure[typeof~='mw:File/Thumb'] > figcaption,
figure[typeof~='mw:File/Frame'] > figcaption,
figure[typeof~='mw:Image/Thumb'] > figcaption,
figure[typeof~='mw:Video/Thumb'] > figcaption,
figure[typeof~='mw:Image/Frame'] > figcaption,
figure[typeof~='mw:Video/Frame'] > figcaption {
border: none;
background-color: var(--thumb-caption-bg);
padding: 4px 6px;
}
:root {
--keypress-background: #eee;
--keypress-border: #ccc;
--keypress-color: #333;
}
.archivelist {
background-color: var(--body-light);
border: solid 1px var(--body-border);
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
float: right;
margin: 5px;
padding: 5px;
text-align: center;
width: 120px;
}
.shortcut {
border: 1px solid var(--body-border);
background: var(--body-light);
float: right;
font-size: 0.8em;
margin: 0.5em 0em 0.5em 1em;
padding: 0.5em;
text-align: center;
}
.hatnote,
.seealso {
font-style: italic;
}
.hatnote i,
.seealso i {
font-style: normal;
}
div.hatnote,
div.seealso {
margin: 0.5em 1.6em;
}
div.hatnote + div.hatnote,
div.hatnote + div.seealso,
div.seealso + div.hatnote,
div.seealso + div.seealso {
margin-top: -0.5em;
}
.keypress {
background: var(--keypress-background);
color: var(--keypress-color);
font-family: inherit;
border: 1px solid var(--keypress-border);
border-radius: 2px;
font-size: 0.9em;
margin: 0 0.1em;
padding: 0.1em 0.4em;
white-space: nowrap;
}
:root {
--documentation-background: #f9fafa;
--documentation-link-color: #e4eaee;
--documentation-headers-color: #fff;
--documentation-header-background: #949eaa;
--documentation-subheader-background: #808c9a;
--documentation-border: #e4eaee;
}
.documentation {
background: var(--documentation-background);
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
margin: 1em 0;
}
.documentation pre,
.documentation code {
background-color: var(--documentation-background);
border-color: var(--documentation-border);
}
.documentation h2,
.documentation hr {
border-color: var(--documentation-border);
}
.documentation-header {
color: var(--documentation-headers-color);
background: var(--documentation-header-background);
font-weight: bold;
padding: 1em 1.5em;
}
.documentation-title {
font-size: 1.25em;
}
.documentation-subheader {
color: var(--documentation-headers-color);
background: var(--documentation-subheader-background);
padding: 0.5em 1.5em;
}
.documentation-subheader a,
.documentation-subheader a:visited,
.documentation-subheader a:active {
color: var(--documentation-link-color);
}
.documentation-documentation,
.documentation-links {
font-size: 0.85em;
}
.documentation-content {
padding: 1em 1.5em;
}
.mw-templatedata-doc-params dl:not(:empty) {
column-count: 3;
border-top: 1px solid var(--body-border);
margin-bottom: 0.5em;
}
.mw-templatedata-doc-params dt::after {
content: ":";
}
.mw-templatedata-doc-params dd,
.mw-templatedata-doc-params dt {
margin: 0.1em 2em;
min-width: auto;
}
.mw-templatedata-doc-muted {
color: var(--subtle-color);
font-style: italic;
}
:root {
--infobox-text-color: var(--text-color);
}
ol.references,
.reflist {
font-size: 90%;
}
.reflist {
list-style-type: decimal;
}
.reflist .references {
font-size: 100%;
list-style-type: inherit;
}
.reflist-lower-alpha {
list-style-type: lower-alpha;
}
ol.references li:target,
sup.reference:target {
background-color: var(--body-light);
}
.hideQuotes .refhide {
display: none;
}
:root {
--messagebox-obsolete-background: #cfcfcf;
--messagebox-obsolete-border: #464646;
--messagebox-obsolete-color: var(--text-color);
--messagebox-obsolete-link-color: #6c6c6c;
--messagebox-info-background: #ebebeb;
--messagebox-info-border: #898989;
--messagebox-info-color: var(--text-color);
--messagebox-info-link-color: #6c6c6c;
--messagebox-action-background: #c7e8fa;
--messagebox-action-border: #0b5884;
--messagebox-action-color: var(--text-color);
--messagebox-action-link-color: #03436b;
--messagebox-warn-background: #dfc0ba;
--messagebox-warn-border: #861c10;
--messagebox-warn-color: var(--text-color);
--messagebox-warn-link-color: #8e221a;
--messagebox-safe-background: #d8f0d3;
--messagebox-safe-border: #1b8408;
--messagebox-safe-color: var(--text-color);
--messagebox-safe-link-color: #1b8408;
--messagebox-disambig-background: #ebebeb;
--messagebox-disambig-border: #898989;
--messagebox-disambig-color: var(--text-color);
--messagebox-disambig-link-color: #6c6c6c;
--messagebox-discord-background: #5865f2;
--messagebox-discord-border: #4c57d0;
--messagebox-discord-link-color: #d2e5fc;
}
.mw-message-box,
.mw-message-box-error,
.mw-message-box-warning,
.mw-message-box-success,
.usermessage {
color: var(--text-color);
}
.messagebox {
width: 65%;
margin: 0.5em auto;
border-left: 15px solid;
border-color: var(--body-dark);
background-color: var(--body-light);
box-sizing: border-box;
}
.messagebox.obsolete {
background-color: var(--messagebox-obsolete-background);
border-color: var(--messagebox-obsolete-border);
color: var(--messagebox-obsolete-color);
}
.messagebox.obsolete a,
.messagebox.obsolete a:visited,
.messagebox.obsolete a:active {
color: var(--messagebox-obsolete-link-color);
}
.messagebox.info {
background-color: var(--messagebox-info-background);
border-color: var(--messagebox-info-border);
color: var(--messagebox-info-color);
}
.messagebox.info a,
.messagebox.info a:visited,
.messagebox.info a:active {
color: var(--messagebox-info-link-color);
}
.messagebox.action {
background-color: var(--messagebox-action-background);
border-color: var(--messagebox-action-border);
color: var(--messagebox-action-color);
}
.messagebox.action a,
.messagebox.action a:visited,
.messagebox.action a:active {
color: var(--messagebox-action-link-color);
}
.messagebox.warn {
background-color: var(--messagebox-warn-background);
border-color: var(--messagebox-warn-border);
color: var(--messagebox-warn-color);
}
.messagebox.warn a,
.messagebox.warn a:visited,
.messagebox.warn a:active {
color: var(--messagebox-warn-link-color);
}
.messagebox.safe {
background-color: var(--messagebox-safe-background);
border-color: var(--messagebox-safe-border);
color: var(--messagebox-safe-color);
}
.messagebox.safe a,
.messagebox.safe a:visited,
.messagebox.safe a:active {
color: var(--messagebox-safe-link-color);
}
.messagebox.disambig {
background-color: var(--messagebox-disambig-background);
border-color: var(--messagebox-disambig-border);
color: var(--messagebox-disambig-color);
}
.messagebox.disambig a,
.messagebox.disambig a:visited,
.messagebox.disambig a:active {
color: var(--messagebox-disambig-link-color);
}
.messagebox.discord {
background-color: var(--messagebox-discord-background);
border-color: var(--messagebox-discord-border);
color: #fff;
}
.messagebox.discord a,
.messagebox.discord a:visited,
.messagebox.discord a:active {
color: var(--messagebox-discord-link-color);
}
.messagebox.discord a.external,
.messagebox.discord a:visited.external,
.messagebox.discord a:active.external {
font-style: italic;
}
.messagebox.stub {
width: 40%;
}
.messagebox.hasdialogue {
padding: 0 10px;
width: auto;
}
:root {
--byline-arrow-filter: invert(29%) sepia(0%) saturate(376%) hue-rotate(172deg) brightness(87%) contrast(80%);
--tile-border-color: #cabe9b;
--tile-background-color: #f9f3eb;
--tile-link-button-color: #f5e9db;
--tile-link-button-highlight-color: #dfccb0;
--tile-dark-color: #fff;
--tile-dark-bg: #5d6773;
--tile-dark-link-color: #ccc;
--tile-dark-byline-color: rgba(255, 255, 255, 0.7);
--tile-dark-header-color: #fff;
}
.tile {
background: var(--tile-background-color);
border: 1px solid var(--tile-border-color);
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
padding: 1.5em 2em 1em;
max-width: 40em;
}
.tile h2 {
font-size: 1.4em;
font-weight: bold;
border: none;
margin: 0 0 0.4em;
}
.tile .byline + h2 {
margin-top: -0.5em;
}
.tile.dark {
color: var(--tile-dark-color);
background: var(--tile-dark-bg);
border: none;
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.3);
}
.tile.dark h2 {
color: var(--tile-dark-header-color);
}
.tile.dark a {
color: var(--tile-dark-link-color);
}
.tile.dark .byline {
color: var(--tile-dark-byline-color);
}
.byline {
font-size: 0.9em;
color: var(--byline-color);
}
.byline a {
color: var(--byline-color);
}
.tile-row {
display: flex;
flex-flow: row wrap;
margin-bottom: 1em;
}
.tile-halves {
display: flex;
flex-flow: row wrap;
border: 1px solid var(--tile-border-color);
background: var(--tile-background-color);
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
}
.tile-halves h2 {
font-size: 1.4em;
font-weight: bold;
border: none;
margin: 0 0 0.4em;
}
.tile-halves .byline + h2 {
margin-top: -0.5em;
}
.tile-top {
width: 100%;
padding: 1.3rem 1.5rem 0.6rem;
}
.tile-top.tile-image {
display: flex;
align-items: center;
background-color: var(--byline-color);
overflow: hidden;
padding: 0;
height: 13vw;
max-height: 12em;
transition: 0.4s ease-out;
}
.tile-halves:hover .tile-top.tile-image img {
transform: scale(1.1);
transition: 0.5s ease-out;
}
.tile-top.tile-image a {
width: 100%;
}
.tile-top.tile-image img {
width: 100%;
object-fit: cover;
max-height: 200px;
transition: 0.4s ease-out;
}
.tile-bottom {
background: var(--tile-background-color);
border-top: 1px solid var(--tile-border-color);
width: 100%;
padding: 1rem 1.5rem 0.6rem;
}
.tile-bottom.link-button {
align-self: flex-end;
padding: 0;
}
.tile-bottom.link-button a {
display: block;
text-align: center;
padding: 0.75em 1.5em 0.8em;
text-decoration: none;
}
.tile-bottom.read-more {
background: var(--tile-link-button-color);
transition: 0.3s ease-out;
}
.tile-bottom.read-more a {
color: var(--byline-color);
font-weight: bold;
text-align: right;
}
.tile-bottom.read-more:hover {
background: var(--tile-link-button-highlight-color);
}
.tile-bottom.read-more:hover .arrow {
transform: translateX(50%);
}
.tile-bottom.read-more .arrow {
filter: var(--byline-arrow-filter);
margin-left: 0.4em;
transition: 0.3s ease-out;
}
body.page-Main_Page.action-view .catlinks,
body.page-Main_Page.action-view #contentSub,
body.page-Main_Page.action-view #firstHeading,
body.page-Main_Page.action-view #siteNotice {
display: none;
}
body.page-Main_Page .mw-parser-output {
max-width: 75em;
margin: 0 auto;
}
body.page-Main_Page.action-view .catlinks,
body.page-Main_Page.action-view #contentSub,
body.page-Main_Page.action-view #siteNotice {
display: none;
}
.mainpage-header {
display: flex;
margin: 2.6em 1.75em 1.5em;
}
.mainpage-header .header-intro {
flex: 2;
}
.mainpage-header .header-intro h1 {
font-size: 2.5em;
font-weight: bold;
border: none;
margin: 0 0 0.15em;
}
.mainpage-header .header-intro p {
font-size: 1.1em;
line-height: 1.7em;
}
.mainpage-header .header-stats {
flex: 1;
display: flex;
justify-content: center;
align-items: center;
margin-top: -1em;
}
.mainpage-body {
display: grid;
grid-template-areas: "event event event" "update update update" "content content content" "left left right";
gap: 0.9rem;
grid-template-columns: repeat(3, 1fr);
}
.mainpage-body h2 a {
color: var(--text-color);
}
.mainpage-body .tile {
padding-left: 1.75em;
padding-right: 1.75em;
max-width: 100%;
}
.mainpage-body .tile-row {
width: 100%;
margin-bottom: 0;
}
.mainpage-body .tile-row {
display: grid;
gap: 0.9rem;
}
.mainpage-contents.tile-row {
display: flex;
}
.mainpage-contents.tile-row .tile-top {
height: 5.5rem;
}
.mainpage-left {
grid-area: left;
flex: 2;
display: flex;
flex-flow: column wrap;
}
.mainpage-left > * {
margin: 0 0 0.9rem;
}
.mainpage-right {
grid-area: right;
flex: 1;
display: flex;
flex-flow: column wrap;
}
.mainpage-right > * {
margin: 0 0 0.9rem;
}
.arrow {
background: url('filepath://White-chevron.svg') no-repeat;
display: inline-block;
height: 0.7rem;
width: 0.45rem;
vertical-align: middle;
}
.arrow.dark {
filter: invert(80%);
}
.mainpage-contents {
grid-area: content;
grid-template-columns: repeat(6, 1fr);
}
.mainpage-contents .tile-halves {
flex: 1;
}
.mainpage-contents .tile-top {
height: 4.5rem;
position: relative;
}
.mainpage-contents .tile-top.tile-image img {
height: auto;
}
.mainpage-contents h2 {
margin: 0;
padding: 0;
}
.mainpage-contents .tile-bottom.link-button a {
padding: 0.75em 0.2em;
}
.popular-pages ul {
display: grid;
grid-template-columns: repeat(3, 1fr);
grid-gap: 0.6em;
margin: 1em 0 0.7em 0;
}
.mp-popular-page-light {
display: flex;
align-items: center;
background-color: var(--button-background);
transition: 100ms;
}
.mp-popular-page-light a {
flex: 1;
display: block;
color: #fff;
font-weight: bold;
text-align: center;
text-decoration: none;
padding: 0.7em 1em;
}
.mp-popular-page-light:hover {
filter: brightness(115%);
transition: 100ms;
}
.mainpage-social {
border: none;
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.3);
}
.mainpage-social .tile-top {
display: flex;
align-items: center;
padding: 1em 1.5em;
}
.mainpage-social .tile-top a {
flex: 1;
position: relative;
text-decoration: none;
}
.mainpage-social .tile-top a:hover .arrow {
transform: translateX(50%);
}
.mainpage-social .tile-bottom {
border: none;
padding: 1em 1.75em;
}
.mainpage-social .tile-bottom p {
color: #fff;
font-weight: bold;
font-size: 0.9em;
text-align: center;
text-transform: uppercase;
letter-spacing: 0.03em;
margin: 0;
}
.mainpage-social .social-icon {
margin-right: 0.75em;
text-align: center;
width: 60px;
}
.mainpage-social .social-header {
color: #fff;
font-weight: bold;
font-size: 1.15em;
margin: 0.5em 0 -0.15em;
}
.mainpage-social .server-tagline {
color: rgba(255, 255, 255, 0.9);
margin-bottom: 0.5em;
}
.mainpage-social .arrow {
position: absolute;
top: calc(50% - .5em);
right: 0;
height: 1em;
width: 0.7em;
background-size: 0.7em 1em;
transition: 0.3s ease-out;
}
.mainpage-social.mainpage-discord .tile-top {
background: #5865f2;
}
.mainpage-social.mainpage-discord .tile-bottom {
background: #525ee0;
}
.mainpage-social.mainpage-twitter .tile-top {
background: #15202b;
}
.mainpage-social.mainpage-twitter .tile-bottom {
background: #121c26;
}
.mainpage-editing {
border: none;
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.3);
}
.mainpage-editing .tile-top {
background: #438ab5;
}
.mainpage-editing .tile-bottom {
background: #3980ab;
border: none;
padding: 0.8rem 1.5rem 0.4rem;
}
.mainpage-editing h2,
.mainpage-editing a {
color: #fff;
}
.mainpage-editing p {
color: rgba(255, 255, 255, 0.9);
}
.mainpage-editing ul {
list-style-image: url('filepath://Transparent-chevron.svg');
}
@media only screen and (max-width: 1200px) {
.mainpage-contents {
grid-template-columns: repeat(3, 1fr);
}
}
@media only screen and (max-width: 1000px) {
.mainpage-body {
grid-template-areas: "event event event" "update update update" "content content content" "left left left" "right right right";
}
.mainpage-recent-updates {
grid-template-columns: repeat(2, 1fr);
}
.mainpage-recent-updates .tile-halves:last-child {
display: none;
}
.mainpage-recent-updates .tile-halves:hover .tile-top img {
transform: scale(1.04);
}
.mainpage-recent-updates .tile-top {
height: 18vw;
min-height: 9em;
}
.mainpage-header .header-stats {
display: none;
}
.mainpage-left > *:last-child,
.mainpage-right > *:last-child {
margin-bottom: 0;
}
.popular-pages ul {
grid-template-columns: repeat(2, 1fr);
}
}
@media only screen and (max-width: 720px) {
.mainpage-recent-updates {
grid-template-columns: none;
}
.mainpage-recent-updates .tile-halves:last-child {
display: flex;
}
.mainpage-contents {
grid-template-columns: repeat(2, 1fr);
}
}
.mw-prefs-buttons {
background-color: var(--body-main);
border-top-color: var(--body-border);
box-shadow: none;
}
.mw-prefs-tabs-wrapper.oo-ui-panelLayout-framed,
.mw-prefs-tabs > .oo-ui-menuLayout-content > .oo-ui-indexLayout-stackLayout > .oo-ui-tabPanelLayout {
border-color: var(--body-border);
}
.mw-htmlform-ooui .mw-htmlform-matrix tbody tr:nth-child(even) td {
background-color: var(--body-light);
}
.mw-htmlform-ooui .mw-htmlform-matrix tbody tr:hover td {
background-color: var(--body-mid);
}
:root {
--rc-positive-color: #407813;
--rc-negative-color: #b41e0f;
}
.mw-plusminus-pos {
color: var(--rc-positive-color);
}
.mw-plusminus-neg {
color: var(--rc-negative-color);
}
.client-js .mw-recentchanges-toplinks:not(.mw-recentchanges-toplinks-collapsed) {
border-color: var(--body-border);
background-color: var(--body-light);
border-radius: 2px;
}
.mw-rcfilters-ui-filterTagMultiselectWidget-wrapper-content-title {
color: var(--text-color);
}
.mw-rcfilters-ui-filterTagMultiselectWidget-emptyFilters {
color: var(--byline-color);
}
.mw-rcfilters-ui-filterTagMultiselectWidget.oo-ui-widget-enabled .oo-ui-tagMultiselectWidget-handle {
background-color: var(--ooui-interface);
border-color: var(--ooui-interface-border);
}
.mw-rcfilters-ui-filterTagMultiselectWidget-views-select-widget.oo-ui-widget {
border-color: var(--ooui-interface-border);
}
.mw-rcfilters-collapsed .mw-rcfilters-ui-filterTagMultiselectWidget {
border-bottom-color: var(--ooui-interface-border);
}
.mw-rcfilters-ui-menuSelectWidget-footer {
background-color: var(--ooui-interface);
border-color: var(--ooui-interface-border);
}
.mw-rcfilters-ui-viewSwitchWidget label.oo-ui-labelWidget {
color: var(--byline-color);
}
.mw-rcfilters-ui-tagItemWidget-popup-content {
color: var(--ooui-text);
}
.mw-changeslist-legend,
.mw-rcfilters-ui-changesListWrapperWidget .mw-changeslist-legend {
background-color: var(--body-light);
border-color: var(--body-dark);
}
.mw-rcfilters-ui-changesListWrapperWidget-previousChangesIndicator {
border-color: var(--sidebar);
}
.client-js .mw-changeslist ul,
.client-js .mw-changeslist table.mw-enhanced-rc {
margin-left: 0;
}
.mw-rcfilters-ui-watchlistTopSectionWidget-separator {
border-color: var(--sidebar);
}
.mw-rcfilters-ui-itemMenuOptionWidget-header {
border-bottom-color: var(--ooui-interface);
background-color: var(--ooui-interface-border);
}
.mw-rcfilters-ui-itemMenuOptionWidget:not(:last-child):not(.mw-rcfilters-ui-itemMenuOptionWidget-identifier-talk) {
border-bottom-color: var(--ooui-normal-border);
}
.mw-rcfilters-ui-itemMenuOptionWidget-label-title,
.mw-rcfilters-ui-itemMenuOptionWidget-label-desc {
color: var(--text-color);
}
.mw-rcfilters-ui-filterMenuOptionWidget.oo-ui-flaggedElement-muted:not(.oo-ui-optionWidget-selected) {
background-color: var(--body-main);
}
.mw-rcfilters-ui-filterMenuOptionWidget.oo-ui-flaggedElement-muted .mw-rcfilters-ui-itemMenuOptionWidget-label-title,
.mw-rcfilters-ui-filterMenuOptionWidget.oo-ui-flaggedElement-muted .mw-rcfilters-ui-itemMenuOptionWidget-label-desc {
color: var(--subtle-color);
}
.mw-rcfilters-ui-filterMenuSectionOptionWidget {
background-color: var(--body-mid);
}
.mw-rcfilters-ui-filterMenuSectionOptionWidget-header-title.oo-ui-labelElement-label {
color: var(--ooui-text);
}
.mw-rcfilters-ui-filterMenuHeaderWidget-title {
color: var(--ooui-text);
}
.mw-rcfilters-ui-filterMenuHeaderWidget-header {
border-bottom-color: var(--ooui-interface-border);
background-color: var(--ooui-interface);
}
.mw-rcfilters-ui-itemMenuOptionWidget-view-namespaces {
border-top-color: var(--ooui-interface-border);
}
.mw-rcfilters-ui-datePopupWidget {
border-color: var(--ooui-interface-border);
}
.mw-rcfilters-ui-datePopupWidget .mw-rcfilters-ui-valuePickerWidget-title {
color: var(--byline-color);
}
.mw-rcfilters-ui-savedLinksListItemWidget-label {
color: var(--ooui-accent);
}
.client-js .mw-changeslist.mw-rcfilters-ui-changesListWrapperWidget-highlighted ul,
.client-js .mw-changeslist.mw-rcfilters-ui-changesListWrapperWidget-highlighted table.mw-enhanced-rc {
margin-left: 1.5em;
}
.page-Special_CreateAccount .mw-ui-container,
.page-Special_UserLogin .mw-ui-container {
max-width: 64rem;
margin: 0 auto;
}
.mw-number-text {
color: var(--byline-color);
}
.mw-body-content .mw-number-text h3 {
color: var(--text-color);
}
#mw-indicator-mw-helplink a {
background: none;
padding: 0;
display: flex;
align-items: center;
}
#mw-indicator-mw-helplink a::before {
content: '';
margin-right: 5px;
-webkit-mask: url("/resources/src/mediawiki.helplink/images/helpNotice.svg?46d34") no-repeat 50% 50% / contain;
mask: url("/resources/src/mediawiki.helplink/images/helpNotice.svg?46d34") no-repeat 50% 50% / contain;
background: var(--text-color);
height: 20px;
width: 20px;
}
.results-info {
color: inherit;
}
.mw-search-profile-tabs {
background-color: var(--body-mid);
border-color: transparent;
}
.search-types .current a {
color: inherit;
}
#mw-searchoptions {
background-color: var(--body-mid);
border-color: transparent;
}
#mw-searchoptions .divider {
border-color: var(--body-border);
}
#mw-searchoptions h4 {
font-family: inherit;
}
#mw-searchoptions .oo-ui-labelElement:nth-of-type(odd) {
font-weight: bold;
}
.searchresult {
line-height: 1.5;
}
.searchalttitle,
#mw-search-interwiki li {
font-size: 90%;
}
.mw-search-result-data {
color: var(--byline-color);
}
.page-Special_ListFiles a.image img {
width: inherit;
height: inherit;
}
.page-Special_ListFiles .TablePager_col_thumb {
text-align: center;
}
#editcount table[border="1"] {
background-color: var(--body-main) !important;
border-color: var(--wikitable-border) !important;
margin-top: 0.5em;
}
#editcount table[border="1"] th,
#editcount table[border="1"] td {
padding: 0.2em 0.4em;
}
#editcount table[border="1"] th {
background-color: var(--wikitable-header-bg);
border: 1px solid var(--wikitable-border);
}
#editcount table[border="1"] td {
border: 1px solid var(--wikitable-border);
}
#editcount table[border="1"] tr:nth-child(odd) {
background-color: var(--body-light);
}
.mw-echo-ui-notificationBadgeButtonPopupWidget-popup > .oo-ui-popupWidget-popup .mw-echo-ui-placeholderItemWidget {
background-color: inherit;
}
table.mw-interwikitable.body td.mw-interwikitable-local-yes {
background-color: var(--table-yes-background);
color: var(--table-yes-color);
}
.mw-protectedpages-unknown {
color: var(--byline-color);
}
.watchlistredir,
.allpagesredirect {
font-style: italic;
}
.allpagesredirect:after {
color: var(--byline-color);
content: " (redirect)";
}
.mw-apisandbox-toolbar {
background: var(--body-main);
}
.oo-ui-menuOptionWidget .mw-apisandbox-flag {
color: var(--byline-color);
}
tr.mw-abusefilter-list-disabled,
tr.mw-abusefilter-list-disabled td {
color: var(--byline-color);
}
table.mw-abuselog-details {
background: var(--wikitable-bg);
border-color: var(--wikitable-border);
}
table.mw-abuselog-details th {
background: var(--wikitable-header-bg);
}
table.mw-abuselog-details th,
table.mw-abuselog-details td {
border-color: var(--wikitable-border);
}
.mw-abusefilter-log-hidden-entry {
color: var(--subtle-color);
}
body td.mw-abusefilter-history-changed {
background: var(--table-no-background);
}
div.mw-abusefilter-editor,
#mw-abusefilter-warn-preview,
#mw-abusefilter-disallow-preview {
border-color: var(--ooui-input-border);
}
.mw-destfile-warning {
border-color: var(--warningbox-border);
color: var(--text-color);
background-color: var(--warningbox-bg);
}
span.fileinput-button {
background-color: var(--ooui-normal);
border-color: var(--ooui-normal-border);
color: var(--ooui-text);
}
ul.fileupload-results li.ful-success {
background-color: var(--successbox-bg);
}
ul.fileupload-results li.ful-success a {
color: var(--link-color);
}
ul.fileupload-results li.ful-error {
background-color: var(--errorbox-bg);
}
#t-print,
#t-permalink {
display: none;
}
#filetoc {
border-radius: 2px;
background: var(--body-mid);
border-color: transparent;
margin: 0.5em auto;
text-align: center;
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
}
li.gallerybox div.thumb {
border: none;
background-color: var(--thumb-bg);
}
.smwfact {
display: none;
}
.list-header {
background-color: var(--body-mid);
color: inherit;
}
.editOptions {
color: var(--text-color);
background-color: var(--sourceeditor-background-secondary);
border-color: var(--sourceeditor-border);
}
.mw-json th,
.mw-json td {
border-color: var(--wikitable-border);
}
.mw-json td {
background: var(--wikitable-bg);
}
.mw-json th {
background: var(--wikitable-header-bg);
}
1dd5ad4d210deab17823e112cb8ffd71b516b950
1125
1123
2024-03-24T01:30:09Z
Merds
25
Updating CSS from [[MediaWiki:Common.less]]
css
text/css
/* <pre> */
:root {
--body-main: #feffff;
--body-light: #f2f2f2;
--body-mid: #d0bd97;
--body-dark: #e3e3e3;
--body-border: #878787;
--body-background-color: #173a4d;
--button-background: #605443;
--button-color: #fff;
--button-border: #3c352a;
--button-dark: #18140c;
--button-light: #3a301d;
--sidebar: #cfc08d;
--background-text-color: #e2dbc8;
--background-link-color: #e2bd8a;
--search-box: #efeee6;
--link-color: #936039;
--redlink-color: #ba0000;
--text-color: #2F2828;
--byline-color: #ccc;
--subtle-color: #777;
--admin-blue: #332e75;
--bearcat-green: #13592e;
--awb-purple: #933b96;
--rsw-blue: #438ab6;
--osrsw-brown: #605443;
--thumb-bg: var(--body-light);
--thumb-caption-bg: var(--body-mid);
--sourceeditor-input-background: #fff;
--sourceeditor-background: var(--body-light);
--sourceeditor-background-secondary: var(--body-light);
--sourceeditor-border: var(--body-mid);
--codemirror-gutter-background: var(--body-mid);
}
@font-face {
font-family: 'Lora';
font-weight: 400 700;
font-style: normal;
font-display: swap;
src: url('filepath://Lora.woff2') format('woff2');
}
@font-face {
font-family: 'Lora';
font-weight: 400 700;
font-style: italic;
font-display: swap;
src: url('filepath://Lora-Italic.woff2') format('woff2');
}
:root {
--base-text-color: #36414f;
--base-heading-color: #444e5a;
--base-heading-border: #e4eaee;
--mw-code-background-color: #ddd4bb;
--body-background-image: url('filepath://Wiki_background.jpg');
}
#mw-page-base {
background: none;
}
.mw-body {
background-color: var(--body-main);
color: var(--text-color);
border-color: transparent;
box-shadow: 0 0 7px rgba(0, 0, 0, 0.15);
margin-top: 0;
}
h1,
h2,
h3,
h4,
h5,
h6 {
color: var(--text-color);
}
h1,
h2 {
border-color: var(--sidebar);
}
.mw-body h1,
.mw-body-content h1,
.mw-body-content h2,
.mw-body-content h3,
.mw-body-content h4,
.mw-body-content h5,
.mw-body-content h6 {
font-family: 'Lora', 'Palatino', 'Georgia', serif;
}
.mw-parser-output h2:first-of-type {
clear: left;
}
.mw-footer {
color: var(--background-text-color);
}
.mw-footer li {
color: var(--background-text-color);
}
.mw-footer a,
.mw-footer a:active,
.mw-footer a:visited {
color: var(--background-link-color);
}
::placeholder {
color: var(--subtle-color);
}
a {
color: var(--link-color);
}
a:visited,
a:active {
color: var(--link-color);
}
a.new {
color: var(--redlink-color);
}
a.new:visited {
color: var(--redlink-color);
}
.mw-parser-output a.extiw,
.mw-parser-output a.external {
color: var(--link-color);
}
.mw-parser-output a.extiw:visited,
.mw-parser-output a.external:visited,
.mw-parser-output a.extiw:active,
.mw-parser-output a.external:active {
color: var(--link-color);
}
.jsPurgeLink a.external {
color: var(--link-color);
}
:root {
--errorbox-bg: #feecea;
--errorbox-border: #ee4231;
--warningbox-bg: #fef9de;
--warningbox-border: #f9d000;
--successbox-bg: #ecf8e3;
--successbox-border: #6bc71f;
}
.mw-message-box-error,
.errorbox,
.mw-message-box-warning,
.warningbox,
.mw-message-box-success,
.successbox,
.usermessage {
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
}
.mw-message-box-error,
.errorbox {
background-color: var(--errorbox-bg);
border-color: var(--errorbox-border);
}
.mw-message-box-warning,
.warningbox,
.usermessage {
background-color: var(--warningbox-bg);
border-color: var(--warningbox-border);
}
.mw-message-box-success,
.successbox {
background-color: var(--successbox-bg);
border-color: var(--successbox-border);
}
.catlinks {
background: var(--body-light);
border: 1px solid var(--body-dark);
padding: 8px 15px;
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
}
.catlinks li {
border-color: var(--body-mid);
}
.filehistory a img,
#file img {
background: url("data:image/svg+xml,%3C%3Fxml version='1.0' encoding='UTF-8'%3F%3E%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16'%3E%3Cpath d='M0 0h8v16h8V8H0z' opacity='.13'/%3E%3C/svg%3E") repeat;
}
#file img:hover {
background: none;
}
.mw-highlight {
background: none;
}
.mw-highlight .linenos {
background-color: var(--mw-code-background-color);
color: var(--byline-color);
}
.mw-highlight a:hover .linenos,
.mw-highlight .hll a .linenos {
color: var(--text-color);
}
.mw-content-ltr.mw-highlight-lines pre,
.mw-content-ltr.content .mw-highlight-lines pre {
box-shadow: inset 2.75em 0 0 var(--mw-code-background-color);
}
#pagehistory ul {
list-style: none;
margin: 0;
}
#pagehistory li {
border: 1px solid transparent;
padding: 1px 10px;
margin: 2px 0;
}
#pagehistory li.selected {
background-color: var(--body-light);
color: inherit;
border: 1px dashed var(--body-border);
outline: none;
}
#mw-history-compare > div:first-of-type {
position: -webkit-sticky;
position: sticky;
top: 0;
background-color: var(--body-main);
border-bottom: 1px solid var(--body-dark);
padding: 0.25em 0;
}
.wgl-stickyheader #mw-history-compare > div:first-of-type {
top: 2.5rem;
}
.autocomment,
.autocomment a,
.autocomment a:visited {
color: var(--link-color);
}
li span.deleted,
span.history-deleted {
color: var(--byline-color);
}
.mw-usertoollinks-contribs-no-edits,
.mw-usertoollinks-contribs-no-edits:visited {
color: var(--redlink-color);
}
.CategoryTreeToggle {
color: var(--link-color);
}
body.wgl-stickyheader.action-view .mw-headline:target::before {
display: block;
content: '';
margin-top: -3rem;
height: 3rem;
visibility: hidden;
pointer-events: none;
}
.mw-mmv-post-image {
color: var(--text-color);
background-color: var(--body-main);
}
.mw-mmv-image-metadata {
border-top-color: var(--body-mid);
background-color: var(--body-light);
}
.mw-mmv-dialog,
.mw-mmv-dialog .mw-mmv-dialog-down-arrow,
.mw-mmv-options-dialog .mw-mmv-dialog-down-arrow {
background-color: var(--body-light);
box-shadow: none;
}
.mw-mmv-options-enable-alert {
background-color: var(--body-light);
color: var(--text-color);
}
.mw-mmv-options-dialog-header,
.mw-mmv-options-text-header,
.mw-mmv-options-text-body,
.mw-mmv-options-enable-alert,
.mw-mmv-options-dialog .mw-mmv-disable-confirmation .mw-mmv-options-dialog-header,
.mw-mmv-options-dialog .mw-mmv-disable-confirmation .mw-mmv-options-text-header {
color: var(--text-color);
}
.mw-revslider-container {
border-color: var(--sidebar);
}
.mw-revslider-slider-wrapper {
border-top-color: var(--sidebar);
}
.mw-ui-button {
background-color: var(--ooui-normal);
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
}
.mw-ui-button:not(:disabled):hover,
.mw-ui-button:not(:disabled):active {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
}
.mw-ui-button:not(:disabled):focus {
color: var(--ooui-text);
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent), inset 0 0 0 2px #fff;
}
.mw-ui-button:not(:disabled):visited {
color: var(--ooui-text);
}
.mw-ui-button.mw-ui-progressive:not(:disabled) {
background-color: var(--ooui-progressive);
color: #fff;
border-color: var(--ooui-progressive);
}
.mw-ui-button.mw-ui-progressive:not(:disabled):hover {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
}
.mw-ui-button.mw-ui-progressive:not(:disabled):focus {
box-shadow: inset 0 0 0 1px var(--ooui-accent), inset 0 0 0 2px #fff;
}
.mw-ui-button.mw-ui-progressive:not(:disabled):active,
.mw-ui-button.mw-ui-progressive:not(:disabled).is-on {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
box-shadow: none;
}
.mw-ui-button.mw-ui-destructive:not( :disabled ) {
color: #fff;
}
.mw-ui-button.mw-ui-quiet,
.mw-ui-button.mw-ui-quiet.mw-ui-progressive,
.mw-ui-button.mw-ui-quiet.mw-ui-destructive {
color: var(--text-color);
}
input[type='checkbox']:hover + .mw-ui-button.mw-ui-quiet,
input[type='checkbox']:hover + .mw-ui-button.mw-ui-quiet.mw-ui-progressive,
input[type='checkbox']:hover + .mw-ui-button.mw-ui-quiet.mw-ui-destructive,
.mw-ui-button.mw-ui-quiet:hover,
.mw-ui-button.mw-ui-quiet.mw-ui-progressive:hover,
.mw-ui-button.mw-ui-quiet.mw-ui-destructive:hover {
background-color: rgba(0, 24, 73, 0.02745098);
color: var(--text-color);
border-color: transparent;
}
input[type='checkbox']:focus + .mw-ui-button.mw-ui-quiet,
input[type='checkbox']:focus + .mw-ui-button.mw-ui-quiet.mw-ui-progressive,
input[type='checkbox']:focus + .mw-ui-button.mw-ui-quiet.mw-ui-destructive,
.mw-ui-button.mw-ui-quiet:focus,
.mw-ui-button.mw-ui-quiet.mw-ui-progressive:focus,
.mw-ui-button.mw-ui-quiet.mw-ui-destructive:focus {
color: var(--text-color);
}
input[type='checkbox']:active + .mw-ui-button.mw-ui-quiet,
input[type='checkbox']:active + .mw-ui-button.mw-ui-quiet.mw-ui-progressive,
input[type='checkbox']:active + .mw-ui-button.mw-ui-quiet.mw-ui-destructive,
.mw-ui-button.mw-ui-quiet:active,
.mw-ui-button.mw-ui-quiet.mw-ui-progressive:active,
.mw-ui-button.mw-ui-quiet.mw-ui-destructive:active {
background-color: rgba(0, 36, 73, 0.08235294);
color: var(--text-color);
border-color: #72777d;
}
.mw-ui-input {
background-color: var(--ooui-input);
color: var(--text-color);
border-color: var(--ooui-input-border);
}
.mw-ui-input:hover {
border-color: var(--ooui-input-border--hover);
}
.mw-ui-input::placeholder {
color: var(--byline-color);
}
.mw-content-ltr .redirectText li:first-child {
padding: 0;
background: 0;
}
.mw-content-ltr .redirectText li:first-child::before {
content: '';
background: currentcolor;
-webkit-mask: url("filepath://Redirect-arrow.svg") no-repeat 50% 50% / contain;
mask: url("filepath://Redirect-arrow.svg") no-repeat 50% 50% / contain;
display: inline-block;
width: 47px;
height: 20px;
}
.vector-search-box-inner {
background: var(--body-main) !important;
box-shadow: inset 0 -7px 7px -7px rgba(0, 0, 0, 0.15) !important;
}
.vector-menu-dropdown .vector-menu-heading {
color: #937040 !important;
}
.vector-menu-dropdown .vector-menu-heading:hover {
color: #937040 !important;
}
.vector-menu-dropdown .vector-menu-heading:focus {
color: #937040 !important;
}
:root {
--wikitable-header-bg: var(--body-dark);
--wikitable-border: var(--body-border);
--wikitable-bg: var(--body-light);
--wikitable-bg-lighter: #e9e3d6;
--wikitable-color: var(--text-color);
--table-na-background: rgba(255, 255, 255, 0.3);
--table-na-color: var(--subtle-color);
--table-yes-background: #c3e8a3;
--table-yes-color: #2e5e05;
--table-no-background: #fbc0ba;
--table-no-color: #801c13;
--table-maybe-background: #fcea94;
--table-maybe-color: #786300;
}
.wikitable {
background: var(--wikitable-bg);
color: var(--wikitable-color);
border-color: var(--wikitable-border);
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
}
.wikitable > tr > th,
.wikitable > tr > td,
.wikitable > * > tr > th,
.wikitable > * > tr > td {
border-color: var(--wikitable-border);
}
.wikitable > tr > th.table-noborder,
.wikitable > tr > td.table-noborder,
.wikitable > * > tr > th.table-noborder,
.wikitable > * > tr > td.table-noborder {
border-left-style: hidden;
border-right-style: hidden;
padding-left: 0;
padding-right: 0;
}
.wikitable > tr > th,
.wikitable > * > tr > th {
background-color: var(--wikitable-header-bg);
}
.tabber .wikitable {
box-shadow: none;
}
.mw_metadata td,
.mw_metadata th {
border-color: var(--wikitable-border);
}
.mw_metadata th {
background-color: var(--wikitable-header-bg);
}
.mw_metadata td {
background-color: var(--wikitable-bg);
}
.mw-datatable {
border-color: var(--wikitable-border);
}
.mw-datatable td,
.mw-datatable th {
border-color: var(--wikitable-border);
}
.mw-datatable th {
background-color: var(--wikitable-header-bg);
}
.mw-datatable td {
background-color: var(--wikitable-bg);
}
.mw-datatable tr:hover td {
background-color: var(--wikitable-bg);
}
table.alternating-rows tr:nth-child(odd),
table.alternating-cols td:nth-child(odd) {
background: var(--wikitable-alternating-bg);
}
.table-na {
background: var(--table-na-background);
color: var(--table-na-color);
vertical-align: middle;
text-align: center;
}
.table-yes {
background: var(--table-yes-background);
color: var(--table-yes-color);
}
.table-positive {
background: var(--table-yes-background);
}
.table-no {
background: var(--table-no-background);
color: var(--table-no-color);
}
.table-negative {
background: var(--table-no-background);
}
.table-maybe {
background: var(--table-maybe-background);
color: var(--table-maybe-color);
}
#mw-allmessagestable .am_actual,
#mw-allmessagestable .am_default {
background-color: var(--wikitable-bg);
}
#mw-allmessagestable .am_default:hover,
#mw-allmessagestable .am_actual:hover,
#mw-allmessagestable tbody:hover td {
background-color: var(--wikitable-bg-lighter);
}
table.wikitable td.no-cell-spacing {
padding: 0;
height: 0;
}
table.wikitable td.no-cell-spacing table {
margin: -1px;
width: calc(100% + 2px);
height: calc(100% + 2px);
}
.plainlist ol,
.plainlist ul {
margin: 0;
}
.plainlist li {
margin-bottom: 0;
list-style: none;
}
table.align-right-1 td:nth-of-type(1),
table.align-right-2 td:nth-of-type(2),
table.align-right-3 td:nth-of-type(3),
table.align-right-4 td:nth-of-type(4),
table.align-right-5 td:nth-of-type(5),
table.align-right-6 td:nth-of-type(6),
table.align-right-7 td:nth-of-type(7),
table.align-right-8 td:nth-of-type(8),
table.align-right-9 td:nth-of-type(9),
table.align-right-10 td:nth-of-type(10),
table.align-right-11 td:nth-of-type(11),
table.align-right-12 td:nth-of-type(12),
table.align-right-13 td:nth-of-type(13),
table.align-right-14 td:nth-of-type(14),
table.align-right-15 td:nth-of-type(15),
table.align-right-16 td:nth-of-type(16),
table.align-right-17 td:nth-of-type(17),
table.align-right-18 td:nth-of-type(18),
table.align-right-19 td:nth-of-type(19),
table.align-right-20 td:nth-of-type(20) {
text-align: right;
}
table.align-center-1 td:nth-of-type(1),
table.align-center-2 td:nth-of-type(2),
table.align-center-3 td:nth-of-type(3),
table.align-center-4 td:nth-of-type(4),
table.align-center-5 td:nth-of-type(5),
table.align-center-6 td:nth-of-type(6),
table.align-center-7 td:nth-of-type(7),
table.align-center-8 td:nth-of-type(8),
table.align-center-9 td:nth-of-type(9),
table.align-center-10 td:nth-of-type(10),
table.align-center-11 td:nth-of-type(11),
table.align-center-12 td:nth-of-type(12),
table.align-center-13 td:nth-of-type(13),
table.align-center-14 td:nth-of-type(14),
table.align-center-15 td:nth-of-type(15),
table.align-center-16 td:nth-of-type(16),
table.align-center-17 td:nth-of-type(17),
table.align-center-18 td:nth-of-type(18),
table.align-center-19 td:nth-of-type(19),
table.align-center-20 td:nth-of-type(20) {
text-align: center;
}
table.align-left-1 td:nth-of-type(1),
table.align-left-2 td:nth-of-type(2),
table.align-left-3 td:nth-of-type(3),
table.align-left-4 td:nth-of-type(4),
table.align-left-5 td:nth-of-type(5),
table.align-left-6 td:nth-of-type(6),
table.align-left-7 td:nth-of-type(7),
table.align-left-8 td:nth-of-type(8),
table.align-left-9 td:nth-of-type(9),
table.align-left-10 td:nth-of-type(10),
table.align-left-11 td:nth-of-type(11),
table.align-left-12 td:nth-of-type(12),
table.align-left-13 td:nth-of-type(13),
table.align-left-14 td:nth-of-type(14),
table.align-left-15 td:nth-of-type(15),
table.align-left-16 td:nth-of-type(16),
table.align-left-17 td:nth-of-type(17),
table.align-left-18 td:nth-of-type(18),
table.align-left-19 td:nth-of-type(19),
table.align-left-20 td:nth-of-type(20) {
text-align: left;
}
:root {
--diff-addedline-border-color: #438ab5;
--diff-addedline-background: #bddff2;
--diff-addedline-color: #000;
--diff-deletedline-border-color: #379541;
--diff-deletedline-background: #c1edbf;
--diff-deletedline-color: #000;
--diff-context-border-color: var(--body-mid);
--diff-context-background: var(--body-mid);
}
.diff-context {
border-color: var(--diff-context-border-color);
background: var(--diff-context-background);
color: inherit;
}
.diff-addedline {
border-color: var(--diff-addedline-border-color);
}
.diff-addedline .diffchange {
background: var(--diff-addedline-background);
color: var(--diff-addedline-color);
}
.diff-deletedline {
border-color: var(--diff-deletedline-border-color);
}
.diff-deletedline .diffchange {
background: var(--diff-deletedline-background);
color: var(--diff-deletedline-color);
}
.mw-diff-movedpara-left:after,
.mw-diff-movedpara-right:after {
color: var(--text-color);
}
.mw-notification {
background-color: var(--body-light);
border-color: var(--body-border);
color: var(--text-color);
}
.mw-echo-ui-notificationsInboxWidget-toolbarWrapper {
background: var(--body-main);
}
.mw-body-content .mw-echo-ui-datedSubGroupListWidget-title-secondary {
color: var(--byline-color);
}
.mw-echo-ui-pageNotificationsOptionWidget.oo-ui-optionWidget-selected {
background-color: var(--ooui-normal);
color: var(--ooui-accent);
}
.mw-echo-ui-pageNotificationsOptionWidget-label-count {
background-color: var(--ooui-normal);
color: var(--byline-color);
}
.oo-ui-optionWidget-selected .mw-echo-ui-pageNotificationsOptionWidget-label-count {
color: var(--ooui-accent);
}
.mw-echo-ui-pageNotificationsOptionWidget.oo-ui-optionWidget-highlighted {
background-color: var(--ooui-normal);
color: var(--text-color);
}
.mw-echo-ui-crossWikiUnreadFilterWidget {
border-color: var(--body-border);
}
.mw-echo-ui-crossWikiUnreadFilterWidget-subtitle {
color: var(--byline-color);
}
.mw-echo-ui-notificationBadgeButtonPopupWidget-popup > .oo-ui-popupWidget-popup > .oo-ui-popupWidget-head,
.mw-echo-ui-notificationBadgeButtonPopupWidget-popup > .oo-ui-popupWidget-popup > .oo-ui-popupWidget-footer {
border-color: var(--ooui-interface-border);
}
.mw-echo-ui-notificationBadgeButtonPopupWidget-popup > .oo-ui-popupWidget-popup > .oo-ui-popupWidget-footer .mw-echo-ui-notificationBadgeButtonPopupWidget-footer-buttons .oo-ui-buttonElement:last-child {
border-left-color: var(--ooui-normal-border);
}
.mw-echo-ui-notificationItemWidget {
background-color: var(--ooui-normal);
border-color: var(--ooui-normal-border);
}
.mw-echo-ui-notificationItemWidget:hover,
.mw-echo-ui-notificationItemWidget-unread:hover {
background-color: var(--ooui-normal--hover);
}
.mw-echo-ui-notificationItemWidget:last-child {
border-bottom-color: var(--ooui-normal-border);
}
.mw-echo-ui-notificationItemWidget-unread {
background-color: var(--search-box);
}
.mw-echo-ui-crossWikiNotificationItemWidget-group,
.mw-echo-ui-bundleNotificationItemWidget-group {
background-color: var(--ooui-interface);
}
.mw-echo-ui-toggleReadCircleButtonWidget-circle {
background-color: var(--ooui-progressive);
}
.mw-echo-ui-toggleReadCircleButtonWidget:hover .mw-echo-ui-toggleReadCircleButtonWidget-circle {
background-color: var(--ooui-progressive--hover);
}
.mw-echo-ui-toggleReadCircleButtonWidget-circle-unread {
background-color: var(--ooui-normal);
border-color: var(--ooui-normal-border);
}
.mw-echo-ui-notificationItemWidget-content-message-header,
.mw-echo-ui-notificationItemWidget-content-message-body,
.mw-echo-ui-menuItemWidget > .oo-ui-buttonElement-button > .oo-ui-labelElement-label,
.mw-echo-ui-notificationItemWidget-content-actions-timestamp {
color: var(--ooui-text);
}
.mw-echo-ui-bundleNotificationItemWidget-group {
background-color: var(--body-main);
}
@keyframes unseen-fadeout-to-unread {
from {
background-color: var(--wikitable-bg-lighter);
}
to {
background-color: var(--search-box);
}
}
@keyframes unseen-fadeout-to-read {
from {
background-color: var(--wikitable-bg-lighter);
}
to {
background-color: var(--body-main);
}
}
.mwe-popups {
background: var(--body-light);
}
.mwe-popups .mwe-popups-container {
color: var(--text-color);
background: var(--body-light);
}
.mwe-popups .mwe-popups-container.flipped-x-y:before,
.mwe-popups .mwe-popups-container.flipped-y:before {
border-top: none;
}
.mwe-popups .mwe-popups-container.mwe-popups-no-image-tri:before {
border-bottom: none;
}
.mwe-popups .mwe-popups-container.flipped-x-y:after,
.mwe-popups .mwe-popups-container.flipped-y:after {
border-top-color: var(--body-light);
}
.mwe-popups .mwe-popups-container.mwe-popups-no-image-tri:after {
border-bottom-color: var(--body-light);
}
.mwe-popups .mwe-popups-settings-icon:hover,
.mwe-popups .mwe-popups-settings-icon:active {
background-color: var(--ooui-normal--hover);
}
.mwe-popups .mw-ui-icon-element:not(.disabled):hover {
background: none;
}
.mwe-popups .mwe-popups-extract {
color: var(--text-color);
}
.mwe-popups .mwe-popups-extract[dir='ltr']:after {
background-image: linear-gradient(to right, rgba(49, 62, 89, 0), var(--body-light) 50%);
}
.mwe-popups-overlay {
background-color: var(--ooui-window-background);
}
#mwe-popups-settings {
background: var(--ooui-interface);
border-color: var(--ooui-interface-border);
color: var(--text-color);
}
#mwe-popups-settings header {
border-color: var(--ooui-interface-border);
}
#mwe-popups-settings main#mwe-popups-settings-form p {
color: var(--byline-color);
}
#mwe-popups-settings main#mwe-popups-settings-form form label > span {
color: var(--ooui-text);
}
:root {
--smw-ask-options-even-bg: var(--body-mid);
--smw-ask-options-odd-bg: var(--body-light);
--smw-ask-action-btn-lblue-bg: var(--body-main);
--smw-ask-action-btn-lblue-color: #000;
--smw-ask-action-btn-lblue-border-color: var(--body-light);
--smw-ask-action-btn-dblue-bg: var(--body-light);
--smw-ask-action-btn-dblue-color: #fff;
--smw-ask-action-btn-dblue-border-color: var(--button-border);
}
.smw-ask-condition fieldset,
.smw-ask-printhead fieldset {
border-color: var(--sidebar);
}
.smw-ask-search fieldset,
.smw-ask-format fieldset,
.smw-ask-options fieldset {
border-color: var(--sidebar);
}
.strike > span:before,
.strike > span:after {
background: var(--sidebar);
}
.smw-ask-options-fields tr td {
background-color: var(--smw-ask-options-even-bg);
}
.smw-ask-options-fields tr:nth-child(odd) td {
background-color: var(--smw-ask-options-odd-bg);
}
.smw-ask-action-btn.smw-ask-action-btn-lblue,
.smw-ask-action-btn.smw-ask-action-btn-lblue:hover,
.smw-ask-action-btn.smw-ask-action-btn-lblue:visited {
background-color: var(--smw-ask-action-btn-lblue-bg);
color: var(--smw-ask-action-btn-lblue-color);
border-color: var(--smw-ask-action-btn-lblue-border-color);
}
.smw-ask-action-btn.smw-ask-action-btn-dblue,
.smw-ask-action-btn.smw-ask-action-btn-dblue:hover,
.smw-ask-action-btn.smw-ask-action-btn-dblue:visited {
background-color: var(--smw-ask-action-btn-dblue-bg);
color: var(--smw-ask-action-btn-dblue-color);
border-color: var(--smw-ask-action-btn-dblue-border-color);
}
.smw-ask-query textarea,
.smw-ask-actions textarea {
background-color: var(--ooui-interface);
border-color: var(--ooui-interface-border);
color: var(--ooui-text);
}
.smw-ask-query-format select {
background-color: var(--ooui-interface);
border: 1px solid var(--ooui-interface-border);
color: var(--ooui-text);
}
.smw-ask-toplinks {
background-color: var(--body-mid);
}
.smw-ask-toplinks span.smw-icon-info {
background: none;
padding: 0 !important;
}
.smw-ask-toplinks span.smw-icon-info::before {
content: '';
background: var(--text-color);
-webkit-mask: url("data:image/svg+xml,%3C%3Fxml version='1.0' encoding='UTF-8'%3F%3E%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 20 20'%3E%3Ctitle%3Einfo%3C/title%3E%3Cpath d='M10 0C4.477 0 0 4.477 0 10s4.477 10 10 10 10-4.477 10-10S15.523 0 10 0zM9 5h2v2H9zm0 4h2v6H9z'/%3E%3C/svg%3E") no-repeat 50% 50% / contain;
mask: url("data:image/svg+xml,%3C%3Fxml version='1.0' encoding='UTF-8'%3F%3E%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 20 20'%3E%3Ctitle%3Einfo%3C/title%3E%3Cpath d='M10 0C4.477 0 0 4.477 0 10s4.477 10 10 10 10-4.477 10-10S15.523 0 10 0zM9 5h2v2H9zm0 4h2v6H9z'/%3E%3C/svg%3E") no-repeat 50% 50% / contain;
padding: 0 0 3px 18px;
}
.smw-ask-options-row-odd {
background-color: var(--body-light);
}
.smw-ask-options-row-even {
background-color: var(--body-mid);
}
#options-toggle:not(:checked) + #options-list .options-parameter-list:after {
background-image: linear-gradient(to bottom, transparent, var(--body-mid) 90%);
}
.smw-ask-button-submit input {
background-color: var(--ooui-normal);
border-color: var(--ooui-normal-border);
color: var(--text-color);
}
.smw-ask-button-submit input:hover,
.smw-ask-button-lgrey:hover {
background-color: var(--ooui-normal--hover);
border-color: var(--ooui-normal-border);
}
input.smw-ask-action-btn.smw-ask-action-btn-dblue {
background-color: var(--ooui-normal);
border-color: var(--ooui-normal-border);
color: var(--ooui-text);
}
a.smw-ask-action-btn.smw-ask-action-btn-lblue {
background-color: var(--body-mid);
border-color: var(--body-mid);
color: var(--ooui-text);
}
a.smw-ask-action-btn.smw-ask-action-btn-lblue:visited {
background-color: var(--body-mid);
border-color: var(--body-mid);
color: var(--ooui-text);
}
a.smw-ask-action-btn.smw-ask-action-btn-lblue:hover {
background-color: var(--body-mid);
border-color: var(--body-mid);
color: var(--ooui-text);
}
a.smw-ask-action-btn-lgrey {
background-color: var(--ooui-normal);
border-color: var(--ooui-normal-border);
color: var(--ooui-text);
}
a.smw-ask-action-btn-lgrey:hover {
background-color: var(--ooui-normal--hover);
border-color: var(--ooui-normal-border);
color: var(--ooui-text);
}
.smw-callout-error {
background-color: var(--errorbox-bg);
border-color: var(--errorbox-border);
}
.smw-callout-info {
background-color: var(--body-light);
border-color: var(--body-dark);
}
.smw-callout-success {
background-color: var(--successbox-bg);
border-color: var(--successbox-border);
}
.smw-callout-warning {
background-color: var(--warningbox-bg);
border-color: var(--warningbox-bg);
}
.smw-tabs input.nav-tab:checked + label.nav-label,
.smw-tabs input.nav-tab:checked + label.nav-label:hover {
color: inherit;
}
#tab-smw-property-value:checked + label.nav-label .usage-count {
color: #fff;
background-color: var(--ooui-progressive);
}
#tab-smw-property-value:checked + label.nav-label .usage-count.moderate {
color: #fff;
background-color: #b55e0c;
border-color: #b55e0c;
}
#tab-smw-property-value:checked + label.nav-label .usage-count.high {
color: #fff;
background-color: #9f261e;
border-color: #9f261e;
}
.smw-property-page-results .header-title {
background-color: var(--ooui-interface);
border-bottom-color: var(--ooui-interface-border);
color: var(--ooui-text);
}
.smw-property-page-results .value-row:hover {
background-color: var(--ooui-normal--hover);
}
.smw-property-page-results .smw-table .header-row {
color: var(--text-color);
}
.tippy-tooltip.light-border-theme {
background-color: var(--body-light);
color: var(--text-color);
}
.tippy-tooltip.light-border-theme .tippy-arrow {
border-top-color: var(--body-light);
}
.tippy-tooltip.light-border-theme .tippy-arrow:after {
border-top-color: var(--body-light);
}
.tippy-header {
background-color: var(--body-dark);
border-bottom-color: var(--body-mid);
}
.smw-ui-input-filter {
background-color: var(--ooui-interface);
border-color: var(--ooui-interface-border);
color: var(--ooui-text);
}
.smw-ui-input-filter input {
border-left-color: var(--ooui-interface-border) !important;
color: var(--ooui-text) !important;
}
.smw-ui-pagination .page-link.link-disabled {
background-color: var(--ooui-disabled);
border-color: var(--ooui-disabled-border);
color: var(--subtle-color);
}
.smw-ui-pagination .page-link {
background-color: var(--ooui-normal);
border-color: var(--ooui-normal-border);
color: var(--link-color);
}
.smw-ui-pagination .page-link:hover {
background-color: var(--ooui-normal--hover);
border-color: var(--ooui-normal-border);
color: var(--link-color);
}
.smw-ui-pagination .page-link.link-active {
color: #fff;
background-color: var(--ooui-progressive);
border-color: var(--ooui-progressive);
}
.smw-tabs input.nav-tab:checked + label.nav-label {
border-color: var(--ooui-normal-border);
}
.smw-tabs section,
.smw-tabs .subtab-content {
border-top-color: var(--ooui-normal-border);
}
.smw-column-header {
color: var(--text-color);
}
.smw-factbox {
background: var(--body-main);
border-color: transparent;
}
.mw-body .mw-indicators #mw-indicator-smw-entity-examiner.mw-indicator .smw-indicator-vertical-bar-loader {
display: none;
}
.smwb-theme-light .smwb-title,
.smwb-theme-light .smwb-center,
.smwb-theme-light .smwb-actions,
.smwb-theme-light .smwb-prophead {
background-color: var(--body-mid);
}
.smwb-theme-light .smwb-factbox {
border-left-color: var(--body-mid);
}
.smwb-theme-light .smwb-ifactbox {
border-right-color: var(--body-mid);
}
.smwb-theme-light .smwb-propval {
background-color: var(--body-light);
}
.smwb-action-separator {
border-color: var(--wikitable-border);
}
.smwb-bottom {
border-bottom: 1px solid var(--wikitable-border);
}
.smwb-ifactbox .smwb-cell,
.smwb-factbox .smwb-cell {
border-top: 1px solid var(--wikitable-border);
}
.smwb-propvalue .smwb-prophead,
.smwb-ipropvalue .smwb-prophead,
.smwb-propvalue .smwb-propval,
.smwb-ipropvalue .smwb-propval {
font-size: 0.9em;
}
:root {
--filter-black-to-link: invert(36%) sepia(58%) saturate(433%) hue-rotate(344deg) brightness(100%) contrast(91%);
}
#bodyContent span.smwbrowse a {
color: black;
background-image: url('filepath://Smwbrowse.svg');
filter: var(--filter-black-to-link);
}
#bodyContent span.smwbrowse a:hover {
color: black;
background-image: url('filepath://Smwbrowse-hover.svg');
text-decoration: underline;
}
#bodyContent span.smwsearch a {
color: black;
filter: var(--filter-black-to-link);
background-image: url('filepath://Smwsearch.svg');
}
#bodyContent span.smwsearch a:hover {
color: black;
background-image: url('filepath://Smwsearch-hover.svg');
text-decoration: underline;
}
:root {
--tabber-tab-bg: var(--body-light);
--tabber-tab-border-color: var(--body-border);
--tabber-active-tab-bg: var(--body-light);
--tabber-active-tab-color: var(--text-color);
--tabber-active-tab-hover-bg: var(--body-light);
--tabber-active-tab-hover-border-color: var(--body-border);
--tabber-active-tab-hover-color: var(--text-color);
--tabber-active-tab-border-hider-color: var(--body-light);
--tabber-inactive-tab-bg: var(--body-background-color);
--tabber-inactive-tab-border-color: var(--body-border);
--tabber-inactive-tab-color: var(--text-color);
--tabber-inactive-tab-hover-bg: var(--body-light);
--tabber-inactive-tab-hover-border-color: var(--body-border);
}
.tabber {
margin: 1em 0;
}
.tabber .tabbertab {
background-color: var(--tabber-tab-bg);
border: 1px solid var(--tabber-tab-border-color);
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
padding: 1em 1.5em;
}
ul.tabbernav {
border: none;
margin-left: 2em;
margin-bottom: 0;
margin-right: 2em;
padding: 0;
font-family: inherit;
}
ul.tabbernav li.tabberactive > a {
background-color: var(--tabber-active-tab-bg);
color: var(--tabber-active-tab-color);
border-bottom: none;
position: relative;
}
ul.tabbernav li.tabberactive > a:hover {
color: var(--tabber-active-tab-hover-color);
background-color: var(--tabber-active-tab-hover-bg);
border-color: var(--tabber-active-tab-hover-border-color);
border-bottom: none;
}
ul.tabbernav li.tabberactive > a::after {
content: '';
position: absolute;
left: 0;
right: 0;
bottom: -1px;
border-bottom: 2px solid var(--tabber-active-tab-border-hider-color);
}
ul.tabbernav li a {
background-color: var(--tabber-inactive-tab-bg);
border-bottom: transparent;
border-color: var(--tabber-inactive-tab-border-color);
color: var(--tabber-inactive-tab-color);
display: inline-block;
font-size: 110%;
padding: 0.5em 1em;
}
ul.tabbernav li a:hover {
background-color: var(--tabber-inactive-tab-hover-bg);
border-color: var(--tabber-inactive-tab-hover-border-color);
}
ul.tabbernav li a:link,
ul.tabbernav li a:visited {
color: var(--tabber-inactive-tab-color);
}
:root {
--ooui-text: var(--text-color);
--ooui-interface: var(--body-light);
--ooui-interface-border: var(--body-border);
--ooui-window-background: rgba(255, 255, 255, 0.5);
--ooui-normal: #d5c7ad;
--ooui-normal--hover: #dfd5c1;
--ooui-normal-border: #b8a282;
--ooui-progressive: #605443;
--ooui-progressive--hover: #7e6e58;
--ooui-accent: var(--link-color);
--ooui-input: #fff;
--ooui-input-border: #b8a282;
--ooui-input-border--hover: #8a724f;
--ooui-disabled: #d1cdc5;
--ooui-disabled-border: #c2b9ab;
--ooui-disabled-text: var(--subtle-color);
--ooui-pending-background-image: repeating-linear-gradient(-45deg, var(--search-box), var(--search-box) 20px, var(--body-main) 20px, var(--body-main) 30px);
}
.oo-ui-widget {
color: var(--ooui-text);
}
.oo-ui-checkboxInputWidget [type='checkbox'] + span,
.oo-ui-radioInputWidget [type='radio'] + span {
background-color: var(--ooui-input);
border-color: var(--ooui-input-border);
}
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:checked + span,
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:indeterminate + span {
background-color: var(--ooui-progressive);
border-color: var(--ooui-progressive);
}
.oo-ui-radioInputWidget.oo-ui-widget-enabled [type='radio']:checked + span {
border-color: var(--ooui-progressive);
}
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:checked:hover + span,
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:indeterminate:hover + span {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
}
.oo-ui-radioInputWidget.oo-ui-widget-enabled [type='radio']:checked:hover + span {
border-color: var(--ooui-progressive--hover);
}
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:hover + span,
.oo-ui-radioInputWidget.oo-ui-widget-enabled [type='radio']:hover + span {
border-color: var(--ooui-accent);
}
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:focus + span {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:active + span,
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:checked:active + span,
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:indeterminate:active + span {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
box-shadow: inset 0 0 0 1px var(--ooui-progressive--hover);
}
.oo-ui-radioInputWidget.oo-ui-widget-enabled [type='radio']:active + span {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
}
.oo-ui-radioInputWidget.oo-ui-widget-enabled [type='radio']:checked:active + span {
border-color: var(--ooui-progressive--hover);
box-shadow: inset 0 0 0 1px var(--ooui-progressive--hover);
}
.oo-ui-radioInputWidget.oo-ui-widget-enabled [type='radio']:checked:active + span:before {
border-color: var(--ooui-progressive--hover);
}
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:checked:focus + span,
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:indeterminate:focus + span {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent), inset 0 0 0 2px #fff;
}
.oo-ui-checkboxInputWidget [type='checkbox']:disabled + span,
.oo-ui-radioInputWidget [type='radio']:disabled + span {
background-color: var(--ooui-disabled);
border-color: var(--ooui-disabled);
}
.oo-ui-dropdownWidget-handle {
border-color: var(--ooui-normal-border);
}
.oo-ui-dropdownWidget.oo-ui-widget-enabled .oo-ui-dropdownWidget-handle {
background-color: var(--ooui-normal);
color: var(--ooui-text);
}
.oo-ui-dropdownWidget.oo-ui-widget-enabled .oo-ui-dropdownWidget-handle:hover {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
}
.oo-ui-dropdownWidget.oo-ui-widget-enabled .oo-ui-dropdownWidget-handle:active {
color: var(--ooui-text);
}
.oo-ui-dropdownWidget.oo-ui-widget-enabled .oo-ui-dropdownWidget-handle:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-dropdownWidget.oo-ui-widget-enabled.oo-ui-dropdownWidget-open .oo-ui-dropdownWidget-handle {
background-color: var(--ooui-normal--hover);
}
.oo-ui-dropdownWidget.oo-ui-widget-disabled .oo-ui-dropdownWidget-handle {
color: var(--ooui-disabled-text);
text-shadow: none;
border-color: var(--ooui-disabled-border);
background-color: var(--ooui-disabled);
}
.oo-ui-dropdownInputWidget select {
border-color: var(--ooui-normal-border);
}
.oo-ui-dropdownInputWidget option {
background-color: var(--ooui-interface);
}
.oo-ui-dropdownInputWidget.oo-ui-widget-enabled {
background-color: var(--ooui-normal);
}
.oo-ui-dropdownInputWidget.oo-ui-widget-enabled:hover {
background-color: var(--ooui-normal--hover);
}
.oo-ui-dropdownInputWidget.oo-ui-widget-enabled select {
color: var(--ooui-text);
}
.oo-ui-dropdownInputWidget.oo-ui-widget-enabled select:hover,
.oo-ui-dropdownInputWidget.oo-ui-widget-enabled select:active {
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
}
.oo-ui-dropdownInputWidget.oo-ui-widget-enabled select:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-labelWidget.oo-ui-inline-help {
color: var(--byline-color);
}
.oo-ui-menuSelectWidget {
background-color: var(--ooui-interface);
border-color: var(--ooui-interface-border);
}
.oo-ui-menuSelectWidget-frameless {
box-shadow: inset 0 -1px 0 0 var(--ooui-normal-border);
}
.oo-ui-menuSectionOptionWidget {
color: var(--byline-color);
}
.oo-ui-menuOptionWidget.oo-ui-optionWidget-highlighted,
.oo-ui-menuOptionWidget.oo-ui-optionWidget-selected {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
}
.oo-ui-menuOptionWidget.oo-ui-optionWidget-selected.oo-ui-menuOptionWidget.oo-ui-optionWidget-highlighted,
.oo-ui-menuOptionWidget.oo-ui-optionWidget-pressed.oo-ui-menuOptionWidget.oo-ui-optionWidget-highlighted {
color: var(--ooui-accent);
}
.oo-ui-menuOptionWidget.oo-ui-widget-enabled.oo-ui-optionWidget {
color: var(--ooui-text);
}
.oo-ui-messageDialog-title {
color: inherit;
}
.oo-ui-messageWidget.oo-ui-messageWidget-block.oo-ui-flaggedElement-error {
background-color: var(--errorbox-bg);
border-color: var(--errorbox-border);
}
.oo-ui-messageWidget.oo-ui-messageWidget-block.oo-ui-flaggedElement-warning {
background-color: var(--warningbox-bg);
border-color: var(--warningbox-border);
}
.oo-ui-messageWidget.oo-ui-messageWidget-block.oo-ui-flaggedElement-success {
background-color: var(--successbox-bg);
border-color: var(--successbox-border);
}
.oo-ui-messageWidget.oo-ui-messageWidget-block.oo-ui-flaggedElement-notice {
background-color: var(--messagebox-info-background);
border-color: var(--messagebox-info-border);
}
.oo-ui-messageWidget.oo-ui-flaggedElement-error:not(.oo-ui-messageWidget-block),
.oo-ui-messageWidget.oo-ui-flaggedElement-success:not(.oo-ui-messageWidget-block) {
color: var(--ooui-text);
}
.oo-ui-optionWidget.oo-ui-widget-disabled {
color: var(--ooui-disabled-text);
}
.oo-ui-outlineControlsWidget {
background-color: var(--ooui-normal);
}
.oo-ui-outlineOptionWidget.oo-ui-optionWidget-highlighted {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
}
.oo-ui-popupWidget-popup {
background-color: var(--ooui-interface);
border-color: var(--ooui-interface-border);
}
.oo-ui-popupWidget-anchored-top .oo-ui-popupWidget-anchor:after {
border-bottom-color: var(--ooui-interface);
}
.oo-ui-popupWidget-anchored-top .oo-ui-popupWidget-anchor:before {
border-bottom-color: var(--ooui-interface-border);
}
.oo-ui-popupWidget-anchored-bottom .oo-ui-popupWidget-anchor:after {
border-top-color: var(--ooui-interface);
}
.oo-ui-popupWidget-anchored-bottom .oo-ui-popupWidget-anchor:before {
border-top-color: var(--ooui-interface-border);
}
.oo-ui-popupWidget-anchored-start .oo-ui-popupWidget-anchor:after {
border-right-color: var(--ooui-interface);
}
.oo-ui-popupWidget-anchored-start .oo-ui-popupWidget-anchor:before {
border-right-color: var(--ooui-interface-border);
}
.oo-ui-popupWidget-anchored-end .oo-ui-popupWidget-anchor:after {
border-left-color: var(--ooui-interface);
}
.oo-ui-popupWidget-anchored-end .oo-ui-popupWidget-anchor:before {
border-left-color: var(--ooui-interface-border);
}
.oo-ui-searchWidget-query {
border-bottom-color: var(--ooui-interface-border);
}
.oo-ui-selectFileWidget-dropTarget {
background-color: var(--ooui-interface);
border-color: var(--ooui-interface-border);
}
.oo-ui-selectFileWidget.oo-ui-widget-enabled.oo-ui-selectFileWidget-dropTarget {
background-color: var(--ooui-interface);
}
.oo-ui-selectFileWidget.oo-ui-widget-enabled.oo-ui-selectFileWidget-dropTarget:hover {
border-color: var(--ooui-input-border--hover);
}
.oo-ui-tabOptionWidget {
color: var(--ooui-text);
}
.oo-ui-tabSelectWidget-framed .oo-ui-tabOptionWidget.oo-ui-optionWidget-selected {
background-color: var(--body-dark);
color: var(--ooui-text);
}
.oo-ui-tabSelectWidget-framed .oo-ui-tabOptionWidget.oo-ui-optionWidget-selected .oo-ui-labelElement-label {
border-bottom-color: var(--body-border);
}
.oo-ui-tabSelectWidget-framed .oo-ui-tabOptionWidget.oo-ui-widget-enabled:hover,
.oo-ui-tabSelectWidget-framed .oo-ui-tabOptionWidget.oo-ui-widget-enabled:active {
background-color: var(--body-light);
color: var(--ooui-text);
}
.oo-ui-tabSelectWidget-framed .oo-ui-tabOptionWidget.oo-ui-widget-enabled.oo-ui-optionWidget-selected:hover {
background-color: var(--body-dark);
}
.oo-ui-tabSelectWidget-frameless .oo-ui-tabOptionWidget.oo-ui-optionWidget-selected {
color: var(--ooui-progressive);
box-shadow: inset 0 -2px 0 0 var(--ooui-progressive);
}
.oo-ui-tabSelectWidget-frameless .oo-ui-tabOptionWidget.oo-ui-optionWidget-selected:hover,
.oo-ui-tabSelectWidget-frameless .oo-ui-tabOptionWidget.oo-ui-optionWidget-selected:focus {
color: var(--ooui-progressive--hover);
box-shadow: inset 0 -2px 0 0 var(--ooui-progressive--hover);
}
.oo-ui-tabSelectWidget-framed {
background: none;
border-bottom: 1px solid var(--ooui-interface-border);
}
.oo-ui-tabSelectWidget-frameless {
box-shadow: inset 0 -1px 0 0 var(--ooui-interface-border);
}
.oo-ui-tabSelectWidget-mobile {
}
.oo-ui-tabSelectWidget-mobile.oo-ui-tabSelectWidget-framed:after {
background: var(--mobile-navbox-linear-gradient);
}
.oo-ui-tabSelectWidget-mobile.oo-ui-tabSelectWidget-frameless:after {
background: var(--mobile-navbox-linear-gradient);
}
.oo-ui-tagItemWidget {
border-color: var(--ooui-normal-border);
}
.oo-ui-tagItemWidget.oo-ui-widget-enabled {
color: var(--ooui-text);
}
.oo-ui-tagItemWidget.oo-ui-widget-enabled:hover {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
}
.oo-ui-tagItemWidget.oo-ui-widget-enabled:not( .oo-ui-tagItemWidget-fixed ) {
background-color: var(--ooui-normal);
}
.oo-ui-tagItemWidget.oo-ui-widget-enabled .oo-ui-buttonElement-button:hover {
background-color: var(--ooui-normal--hover);
}
.oo-ui-tagMultiselectWidget.oo-ui-widget-enabled {
background-color: var(--ooui-interface);
}
.oo-ui-tagMultiselectWidget.oo-ui-widget-enabled.oo-ui-tagMultiselectWidget-outlined {
background-color: var(--ooui-normal);
}
.oo-ui-tagMultiselectWidget.oo-ui-widget-enabled.oo-ui-tagMultiselectWidget-outlined .oo-ui-tagItemWidget.oo-ui-widget-enabled {
background-color: var(--ooui-interface);
}
.oo-ui-textInputWidget .oo-ui-inputWidget-input {
background-color: var(--ooui-input);
color: var(--ooui-text);
border-color: var(--ooui-input-border);
}
.oo-ui-textInputWidget.oo-ui-widget-enabled .oo-ui-inputWidget-input::placeholder {
color: var(--subtle-color);
}
.oo-ui-textInputWidget.oo-ui-widget-enabled .oo-ui-inputWidget-input:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-textInputWidget.oo-ui-widget-enabled .oo-ui-inputWidget-input[readonly]:not(.oo-ui-pendingElement-pending) {
background-color: var(--ooui-disabled);
color: var(--ooui-disabled-text);
}
.oo-ui-textInputWidget.oo-ui-widget-enabled:hover .oo-ui-inputWidget-input {
border-color: var(--ooui-input-border--hover);
}
.oo-ui-textInputWidget.oo-ui-widget-enabled:hover .oo-ui-inputWidget-input:focus {
border-color: var(--ooui-accent);
}
@media screen and (min-width: 0) {
.oo-ui-textInputWidget.oo-ui-widget-enabled textarea.oo-ui-inputWidget-input:focus {
outline: 1px solid var(--ooui-accent);
}
}
.oo-ui-textInputWidget.oo-ui-widget-disabled .oo-ui-inputWidget-input {
background-color: var(--ooui-disabled);
color: var(--ooui-disabled-text);
text-shadow: none;
border-color: var(--ooui-disabled-border);
}
.oo-ui-toggleSwitchWidget {
background-color: var(--ooui-input);
border-color: var(--ooui-input-border);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled .oo-ui-toggleSwitchWidget-grip {
background-color: var(--ooui-input);
border-color: var(--ooui-input-border);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:hover {
background-color: var(--ooui-input);
border-color: var(--ooui-accent);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:hover .oo-ui-toggleSwitchWidget-grip {
background-color: var(--ooui-input);
border-color: var(--ooui-accent);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:active,
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:active:hover,
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:active:focus {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
box-shadow: inset 0 0 0 1px var(--ooui-progressive--hover);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:active .oo-ui-toggleSwitchWidget-grip,
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:active:hover .oo-ui-toggleSwitchWidget-grip,
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:active:focus .oo-ui-toggleSwitchWidget-grip {
background-color: var(--ooui-input);
border-color: var(--ooui-input);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:focus .oo-ui-toggleSwitchWidget-grip {
border-color: var(--ooui-accent);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled.oo-ui-toggleWidget-on {
background-color: var(--ooui-progressive);
border-color: var(--ooui-progressive);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled.oo-ui-toggleWidget-on .oo-ui-toggleSwitchWidget-grip {
background-color: var(--ooui-input);
border-color: var(--ooui-input);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled.oo-ui-toggleWidget-on:hover {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled.oo-ui-toggleWidget-on:active,
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled.oo-ui-toggleWidget-on:active:hover {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled.oo-ui-toggleWidget-on:focus {
border-color: var(--ooui-progressive);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled.oo-ui-toggleWidget-on:focus::before {
border-color: #fff;
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-disabled {
background-color: var(--ooui-disabled);
border-color: var(--ooui-disabled);
}
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled > .oo-ui-buttonElement-button {
color: var(--ooui-text);
}
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled > .oo-ui-buttonElement-button:hover {
color: var(--ooui-text);
}
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled > .oo-ui-buttonElement-button:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled.oo-ui-buttonElement-pressed > input.oo-ui-buttonElement-button,
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled > .oo-ui-buttonElement-button:active {
color: var(--ooui-text);
}
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button,
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button:hover {
color: var(--ooui-text);
}
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button:active,
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive.oo-ui-buttonElement-pressed > .oo-ui-buttonElement-button {
color: var(--ooui-text);
border-color: var(--ooui-text);
}
.oo-ui-buttonElement-frameless.oo-ui-widget-disabled > .oo-ui-buttonElement-button {
color: var(--ooui-disabled-text);
}
.oo-ui-buttonElement-framed.oo-ui-widget-disabled > .oo-ui-buttonElement-button {
background-color: var(--ooui-disabled);
border-color: var(--ooui-disabled-border);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled > .oo-ui-buttonElement-button {
background-color: var(--ooui-normal);
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled > .oo-ui-buttonElement-button:hover {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled > .oo-ui-buttonElement-button:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-buttonElement-active > .oo-ui-buttonElement-button {
background-color: var(--ooui-progressive--hover);
color: #fff;
border-color: var(--ooui-progressive--hover);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-buttonElement-active > .oo-ui-buttonElement-button:focus {
border-color: var(--ooui-progressive--hover);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled > .oo-ui-buttonElement-button:active,
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-buttonElement-pressed > .oo-ui-buttonElement-button {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive {
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button {
color: var(--ooui-text);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button:hover {
background-color: var(--ooui-normal--hover);
border-color: var(--ooui-progressive--hover);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-destructive > .oo-ui-buttonElement-button {
color: var(--ooui-text);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-destructive > .oo-ui-buttonElement-button:hover {
background-color: var(--ooui-normal--hover);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button {
background-color: var(--ooui-progressive);
border-color: var(--ooui-progressive);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button:hover {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent), inset 0 0 0 2px #fff;
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button:active,
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive.oo-ui-buttonElement-pressed > .oo-ui-buttonElement-button,
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive.oo-ui-buttonElement-active > .oo-ui-buttonElement-button,
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive.oo-ui-popupToolGroup-active > .oo-ui-buttonElement-button {
color: #fff;
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
}
.oo-ui-pendingElement-pending {
background-image: var(--ooui-pending-background-image);
background-size: 200%;
animation: oo-ui-pendingElement-stripes 6s linear infinite;
}
@keyframes oo-ui-pendingElement-stripes {
100% {
background-position: 100%;
}
}
.oo-ui-messageDialog-content > .oo-ui-window-foot {
outline-color: var(--ooui-interface-border);
}
.oo-ui-messageDialog-message {
color: var(--ooui-text);
}
.oo-ui-messageDialog-actions-horizontal .oo-ui-actionWidget {
border-right-color: var(--ooui-interface-border);
}
.oo-ui-messageDialog-actions-vertical .oo-ui-actionWidget {
border-bottom-color: var(--ooui-interface-border);
}
.oo-ui-processDialog-content .oo-ui-window-head,
.oo-ui-processDialog-content .oo-ui-window-foot {
outline-color: var(--ooui-interface-border);
}
.oo-ui-processDialog .oo-ui-actionWidget > .oo-ui-buttonElement-button {
border-top-color: transparent;
border-bottom-color: transparent;
}
.oo-ui-processDialog .oo-ui-actionWidget > .oo-ui-buttonElement-button:hover,
.oo-ui-processDialog .oo-ui-actionWidget > .oo-ui-buttonElement-button:active {
border-top-color: transparent;
border-bottom-color: transparent;
}
.oo-ui-processDialog .oo-ui-actionWidget:not( .oo-ui-flaggedElement-progressive ):not( .oo-ui-flaggedElement-destructive ) > .oo-ui-buttonElement-button:hover,
.oo-ui-processDialog .oo-ui-actionWidget:not( .oo-ui-flaggedElement-progressive ):not( .oo-ui-flaggedElement-destructive ) > .oo-ui-buttonElement-button:active {
border-right-color: var(--ooui-interface-border);
border-left-color: transparent;
}
.oo-ui-processDialog .oo-ui-actionWidget:not( .oo-ui-flaggedElement-progressive ):not( .oo-ui-flaggedElement-destructive ) > .oo-ui-buttonElement-button:focus {
border-color: var(--ooui-accent);
}
.oo-ui-processDialog-actions-safe .oo-ui-actionWidget > .oo-ui-buttonElement-button,
.oo-ui-processDialog-actions-other .oo-ui-actionWidget > .oo-ui-buttonElement-button {
border-right-color: var(--ooui-normal-border);
border-left-color: transparent;
}
.oo-ui-processDialog-actions-safe .oo-ui-widget-enabled.oo-ui-iconElement:not( .oo-ui-labelElement ) > .oo-ui-buttonElement-button:hover {
background-color: var(--ooui-normal--hover);
border-right-color: var(--ooui-interface-border);
}
.oo-ui-windowManager-modal > .oo-ui-dialog {
background-color: var(--ooui-window-background);
}
.oo-ui-windowManager-modal > .oo-ui-dialog > .oo-ui-window-frame {
background-color: var(--ooui-interface);
}
.oo-ui-windowManager-modal.oo-ui-windowManager-floating > .oo-ui-dialog > .oo-ui-window-frame {
border-color: var(--ooui-interface-border);
}
.oo-ui-window {
color: var(--ooui-text);
}
.oo-ui-toolbar-bar {
background-color: var(--ooui-interface);
color: var(--ooui-text);
}
.oo-ui-toolbar-position-top > .oo-ui-toolbar-bar {
border-bottom-color: var(--body-mid);
}
.oo-ui-toolbar-bar .oo-ui-bookletLayout > .oo-ui-menuLayout-menu {
border-right-color: var(--body-mid);
}
.oo-ui-tool.oo-ui-widget-enabled > .oo-ui-tool-link:hover {
background-color: var(--ooui-normal--hover);
}
.oo-ui-tool.oo-ui-widget-enabled > .oo-ui-tool-link:focus {
outline: 1px solid var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-tool.oo-ui-widget-enabled > .oo-ui-tool-link:active,
.oo-ui-tool.oo-ui-widget-enabled.oo-ui-tool-active > .oo-ui-tool-link,
.oo-ui-tool.oo-ui-widget-enabled.oo-ui-popupToolGroup-active > .oo-ui-tool-link {
background-color: var(--ooui-normal--hover);
color: var(--ooui-accent);
box-shadow: none;
}
.oo-ui-tool.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive > .oo-ui-tool-link {
background-color: var(--ooui-progressive);
}
.oo-ui-tool.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive > .oo-ui-tool-link:hover {
background-color: var(--ooui-progressive--hover);
}
.oo-ui-tool.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive > .oo-ui-tool-link:focus {
box-shadow: inset 0 0 0 1px var(--ooui-accent), inset 0 0 0 2px #fff;
}
.oo-ui-tool.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive > .oo-ui-tool-link:active,
.oo-ui-tool.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive.oo-ui-tool-active > .oo-ui-tool-link {
background-color: var(--ooui-progressive--hover);
}
.oo-ui-listToolGroup-tools .oo-ui-tool.oo-ui-widget-enabled {
background-color: var(--ooui-normal);
}
.oo-ui-listToolGroup-tools .oo-ui-tool.oo-ui-widget-enabled:hover {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
}
.oo-ui-listToolGroup-tools .oo-ui-tool-active.oo-ui-widget-enabled .oo-ui-tool-link .oo-ui-tool-title {
color: var(--ooui-progressive);
}
.oo-ui-menuToolGroup {
border-left-color: var(--body-mid);
border-right-color: var(--body-mid);
}
.oo-ui-popupToolGroup-tools {
background-color: var(--ooui-interface);
border-color: var(--body-mid);
}
.oo-ui-popupToolGroup.oo-ui-widget-enabled > .oo-ui-popupToolGroup-handle:hover {
background-color: var(--ooui-normal--hover);
}
.oo-ui-popupToolGroup.oo-ui-widget-enabled > .oo-ui-popupToolGroup-handle:focus {
outline: 1px solid var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-toolbar-actions .oo-ui-popupToolGroup.oo-ui-widget-enabled > .oo-ui-popupToolGroup-handle:hover {
border-right-color: var(--ooui-normal--hover);
}
.oo-ui-popupToolGroup-tools .oo-ui-tool.oo-ui-widget-enabled .oo-ui-tool-link:focus {
box-shadow: inset 0 0 0 2px var(--ooui-accent);
}
.oo-ui-popupToolGroup-tools .oo-ui-tool-active.oo-ui-widget-enabled .oo-ui-tool-link .oo-ui-tool-title {
color: var(--ooui-progressive);
}
.oo-ui-popupToolGroup.oo-ui-popupToolGroup-active > .oo-ui-popupToolGroup-handle {
background-color: var(--ooui-normal);
color: var(--ooui-accent);
}
.oo-ui-popupToolGroup.oo-ui-popupToolGroup-active > .oo-ui-popupToolGroup-handle:hover {
background-color: var(--ooui-normal--hover);
color: var(--ooui-accent);
}
.oo-ui-bookletLayout-outlinePanel > .oo-ui-outlineControlsWidget {
border-top-color: var(--ooui-interface-border);
}
.oo-ui-bookletLayout > .oo-ui-menuLayout-menu {
border-right-color: var(--ooui-interface-border);
}
.oo-ui-fieldLayout-disabled > .oo-ui-fieldLayout-body > .oo-ui-fieldLayout-header > .oo-ui-labelElement-label {
color: var(--ooui-disabled-text);
}
.oo-ui-panelLayout-framed {
border-color: var(--sidebar);
}
.oo-ui-icon-settings {
background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' width='20' height='20' viewBox='0 0 20 20'%3E%3Ctitle%3Esettings%3C/title%3E%3Cg transform='translate(10 10)'%3E%3Cpath id='a' d='M1.5-10h-3l-1 6.5h5m0 7h-5l1 6.5h3'/%3E%3Cuse xlink:href='%23a' transform='rotate(45)'/%3E%3Cuse xlink:href='%23a' transform='rotate(90)'/%3E%3Cuse xlink:href='%23a' transform='rotate(135)'/%3E%3C/g%3E%3Cpath d='M10 2.5a7.5 7.5 0 0 0 0 15 7.5 7.5 0 0 0 0-15v4a3.5 3.5 0 0 1 0 7 3.5 3.5 0 0 1 0-7'/%3E%3C/svg%3E");
}
.oo-ui-icon-clear {
background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 20 20'%3E%3Ctitle%3Eclear%3C/title%3E%3Cpath d='M10 0a10 10 0 1 0 10 10A10 10 0 0 0 10 0zm5.66 14.24-1.41 1.41L10 11.41l-4.24 4.25-1.42-1.42L8.59 10 4.34 5.76l1.42-1.42L10 8.59l4.24-4.24 1.41 1.41L11.41 10z'/%3E%3C/svg%3E");
}
.mw-widget-dateInputWidget-handle {
background-color: var(--ooui-input);
color: var(--ooui-text);
border-color: var(--ooui-input-border);
}
.mw-widget-dateInputWidget-calendar {
background-color: var(--ooui-interface);
}
.mw-widget-dateInputWidget.oo-ui-widget-enabled .mw-widget-dateInputWidget-handle:hover {
border-color: var(--ooui-input-border--hover);
}
.mw-widget-calendarWidget {
border-color: var(--ooui-interface-border);
}
.mw-widget-calendarWidget:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.mw-widget-calendarWidget-day,
.mw-widget-calendarWidget-day-heading {
color: var(--ooui-text);
}
.mw-widget-calendarWidget-day-additional {
color: var(--ooui-text);
opacity: 0.67;
}
.mw-widget-calendarWidget-day-today {
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.mw-widget-calendarWidget-item:hover {
background-color: var(--ooui-progressive);
}
.mw-widget-calendarWidget-item-selected {
background-color: var(--ooui-progressive--hover);
}
.mw-widgets-datetime-calendarWidget {
background-color: var(--ooui-interface);
border-color: var(--ooui-interface-border);
}
.mw-widgets-datetime-calendarWidget:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent), 0 2px 2px 0 rgba(0, 0, 0, 0.25);
}
.mw-widgets-datetime-calendarWidget-grid .mw-widgets-datetime-calendarWidget-cell.mw-widgets-datetime-calendarWidget-extra .oo-ui-buttonElement-button .oo-ui-labelElement-label {
color: var(--subtle-color);
}
.mw-widgets-datetime-calendarWidget-grid .mw-widgets-datetime-calendarWidget-cell.mw-widgets-datetime-calendarWidget-selected .oo-ui-buttonElement-button {
background-color: var(--ooui-progressive--hover);
}
.mw-widgets-datetime-dateTimeInputWidget-handle {
background-color: var(--ooui-input);
color: var(--ooui-text);
border-color: var(--ooui-input-border);
}
.mw-widgets-datetime-dateTimeInputWidget.oo-ui-widget-enabled.mw-widgets-datetime-dateTimeInputWidget-handle:hover {
border-color: var(--ooui-input-border--hover);
}
.mw-widgets-datetime-dateTimeInputWidget.oo-ui-widget-enabled:hover input,
.mw-widgets-datetime-dateTimeInputWidget.oo-ui-widget-enabled:hover textarea {
border-color: var(--ooui-input-border--hover);
}
.mw-widgets-datetime-dateTimeInputWidget.oo-ui-widget-enabled .mw-widgets-datetime-dateTimeInputWidget-editField:hover {
background-color: var(--ooui-normal);
}
.ve-activated .ve-init-mw-desktopArticleTarget-originalContent #catlinks:hover {
background: var(--ooui-normal--hover);
}
.ve-ui-overlay {
font-family: inherit;
}
.oo-ui-toolbar-position-top .ve-ui-toolbarDialog-position-above {
border-top-color: var(--body-mid);
}
.ve-ce-branchNode-blockSlug,
.ve-ce-branchNode-newSlug {
outline-color: var(--body-border);
background-color: var(--ooui-interface);
}
.ve-ui-specialCharacterPage h3 {
color: var(--byline-color);
}
.ve-ui-specialCharacterPage-character {
border-color: var(--body-mid);
}
.ve-ui-specialCharacterPage-character:hover {
border-color: var(--body-dark);
}
.ve-ce-linkAnnotation.ve-ce-annotation-active {
box-shadow: 0 0 0 1px var(--body-mid);
background: none;
}
.ve-ui-desktopContext .ve-ui-linkContextItem .ve-ui-linkContextItem-label {
border-color: var(--body-border);
}
.ve-ui-mwHelpPopupTool-version-label,
.ve-ui-mwHelpPopupTool-version-link,
.ve-ui-mwHelpPopupTool-version-date {
color: var(--byline-color);
}
.ve-ce-tableCellableNode {
border-color: var(--body-mid);
}
.ve-ce-mwReferencesListNode-muted {
color: var(--byline-color);
}
.ve-ui-mwTemplatePage-description,
.ve-ui-mwParameterPage-label,
.ve-ui-mwParameterPage-description-required,
.ve-ui-mwParameterPage-description-deprecated {
color: var(--byline-color);
}
.mw-widget-titleWidget-menu .mw-widget-titleOptionWidget-description {
color: var(--byline-color);
}
.ve-ui-mwGalleryDialog-menuLayout > .oo-ui-menuLayout-menu,
.ve-ui-mwGalleryDialog-innerMenuLayout > .oo-ui-menuLayout-menu,
.ve-ui-mwGalleryDialog .ve-ui-mwGalleryDialog-image-container,
.ve-ui-targetWidget {
border-color: var(--body-border);
}
.ve-ui-targetWidget:not(.oo-ui-pendingElement-pending) {
background-color: var(--body-main);
}
.ve-ui-mwSaveDialog {
color: var(--ooui-text);
}
.ve-ui-mwSaveDialog-options {
background-color: var(--ooui-interface);
border-color: var(--body-border);
}
.ve-ui-mwSaveDialog-summary {
background-color: var(--ooui-input);
}
.ve-ui-mwSaveDialog-editSummary-count {
border-color: var(--body-border);
}
.ve-ui-mwSaveDialog-license {
color: var(--byline-color);
}
.ve-ui-mwReferenceContextItem-muted {
color: var(--byline-color);
}
.ve-ui-mwNoticesPopupTool-items > div:not(:first-child),
.ve-ui-mwHelpPopupTool-item:not(:first-child) {
border-color: var(--body-border);
}
.ve-ui-mwTransclusionOutlineControlsWidget {
background-color: var(--ooui-interface);
border-top-color: var(--body-border);
}
.ve-ui-mwTransclusionOutlineTemplateWidget-sticky {
background-color: var(--ooui-interface);
}
.ve-ui-mwTransclusionOutlineTemplateWidget .ve-ui-mwTransclusionOutlineParameterWidget.oo-ui-optionWidget-highlighted {
color: var(--ooui-text);
}
.ve-ui-mwTransclusionOutlineTemplateWidget-no-template-parameters {
color: var(--subtle-color);
}
.ve-ui-mwParameterPage-undocumentedLabel {
color: var(--subtle-color);
}
.ve-ui-mwTwoPaneTransclusionDialogLayout > .oo-ui-menuLayout-menu {
border-right: var(--body-border);
}
.ve-ui-mwParameterPage-doc-required,
.ve-ui-mwParameterPage-doc-deprecated,
.ve-ui-mwParameterPage-inlineDescription .ve-ui-mwParameterPage-doc-example {
color: var(--byline-color);
}
.ve-ui-expandableContent-toggle {
background-color: var(--ooui-interface);
}
.ve-ui-expandableContent-fade {
background: linear-gradient(to right, rgba(255, 255, 255, 0) 0, var(--ooui-interface) 90%);
}
.ve-ui-commandHelpDialog-shortcut > kbd,
.ve-ui-commandHelpDialog-sequence > kbd {
background-color: var(--keypress-background);
color: var(--keypress-color);
border-color: var(--keypress-border);
box-shadow: none;
text-shadow: none;
}
.ve-init-mw-desktopArticleTarget-toolbarPlaceholder-floating .ve-init-mw-desktopArticleTarget-toolbarPlaceholder-bar {
background: var(--ooui-interface);
}
.ve-init-mw-desktopArticleTarget-toolbarPlaceholder-bar {
border-bottom-color: var(--body-mid);
}
figure[typeof~='mw:File/Thumb'],
figure[typeof~='mw:File/Frame'],
figure[typeof~='mw:Image/Thumb'],
figure[typeof~='mw:Video/Thumb'],
figure[typeof~='mw:Image/Frame'],
figure[typeof~='mw:Video/Frame'] {
border: none;
background-color: var(--thumb-bg);
}
figure[typeof~='mw:File/Thumb'] > a:first-child > *:first-child:not( .mw-broken-media ),
figure[typeof~='mw:File/Frame'] > a:first-child > *:first-child:not( .mw-broken-media ),
figure[typeof~='mw:Image/Thumb'] > a:first-child > *:first-child:not( .mw-broken-media ),
figure[typeof~='mw:Video/Thumb'] > a:first-child > *:first-child:not( .mw-broken-media ),
figure[typeof~='mw:Image/Frame'] > a:first-child > *:first-child:not( .mw-broken-media ),
figure[typeof~='mw:Video/Frame'] > a:first-child > *:first-child:not( .mw-broken-media ) {
border: none;
background: var(--thumb-bg);
}
figure[typeof~='mw:File/Thumb'] > figcaption,
figure[typeof~='mw:File/Frame'] > figcaption,
figure[typeof~='mw:Image/Thumb'] > figcaption,
figure[typeof~='mw:Video/Thumb'] > figcaption,
figure[typeof~='mw:Image/Frame'] > figcaption,
figure[typeof~='mw:Video/Frame'] > figcaption {
border: none;
background-color: var(--thumb-caption-bg);
padding: 4px 6px;
}
:root {
--keypress-background: #eee;
--keypress-border: #ccc;
--keypress-color: #333;
}
.archivelist {
background-color: var(--body-light);
border: solid 1px var(--body-border);
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
float: right;
margin: 5px;
padding: 5px;
text-align: center;
width: 120px;
}
.shortcut {
border: 1px solid var(--body-border);
background: var(--body-light);
float: right;
font-size: 0.8em;
margin: 0.5em 0em 0.5em 1em;
padding: 0.5em;
text-align: center;
}
.hatnote,
.seealso {
font-style: italic;
}
.hatnote i,
.seealso i {
font-style: normal;
}
div.hatnote,
div.seealso {
margin: 0.5em 1.6em;
}
div.hatnote + div.hatnote,
div.hatnote + div.seealso,
div.seealso + div.hatnote,
div.seealso + div.seealso {
margin-top: -0.5em;
}
.keypress {
background: var(--keypress-background);
color: var(--keypress-color);
font-family: inherit;
border: 1px solid var(--keypress-border);
border-radius: 2px;
font-size: 0.9em;
margin: 0 0.1em;
padding: 0.1em 0.4em;
white-space: nowrap;
}
:root {
--documentation-background: #f9fafa;
--documentation-link-color: #e4eaee;
--documentation-headers-color: #fff;
--documentation-header-background: #949eaa;
--documentation-subheader-background: #808c9a;
--documentation-border: #e4eaee;
}
.documentation {
background: var(--documentation-background);
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
margin: 1em 0;
}
.documentation pre,
.documentation code {
background-color: var(--documentation-background);
border-color: var(--documentation-border);
}
.documentation h2,
.documentation hr {
border-color: var(--documentation-border);
}
.documentation-header {
color: var(--documentation-headers-color);
background: var(--documentation-header-background);
font-weight: bold;
padding: 1em 1.5em;
}
.documentation-title {
font-size: 1.25em;
}
.documentation-subheader {
color: var(--documentation-headers-color);
background: var(--documentation-subheader-background);
padding: 0.5em 1.5em;
}
.documentation-subheader a,
.documentation-subheader a:visited,
.documentation-subheader a:active {
color: var(--documentation-link-color);
}
.documentation-documentation,
.documentation-links {
font-size: 0.85em;
}
.documentation-content {
padding: 1em 1.5em;
}
.mw-templatedata-doc-params dl:not(:empty) {
column-count: 3;
border-top: 1px solid var(--body-border);
margin-bottom: 0.5em;
}
.mw-templatedata-doc-params dt::after {
content: ":";
}
.mw-templatedata-doc-params dd,
.mw-templatedata-doc-params dt {
margin: 0.1em 2em;
min-width: auto;
}
.mw-templatedata-doc-muted {
color: var(--subtle-color);
font-style: italic;
}
:root {
--infobox-text-color: var(--text-color);
}
ol.references,
.reflist {
font-size: 90%;
}
.reflist {
list-style-type: decimal;
}
.reflist .references {
font-size: 100%;
list-style-type: inherit;
}
.reflist-lower-alpha {
list-style-type: lower-alpha;
}
ol.references li:target,
sup.reference:target {
background-color: var(--body-light);
}
.hideQuotes .refhide {
display: none;
}
:root {
--messagebox-obsolete-background: #cfcfcf;
--messagebox-obsolete-border: #464646;
--messagebox-obsolete-color: var(--text-color);
--messagebox-obsolete-link-color: #6c6c6c;
--messagebox-info-background: #ebebeb;
--messagebox-info-border: #898989;
--messagebox-info-color: var(--text-color);
--messagebox-info-link-color: #6c6c6c;
--messagebox-action-background: #c7e8fa;
--messagebox-action-border: #0b5884;
--messagebox-action-color: var(--text-color);
--messagebox-action-link-color: #03436b;
--messagebox-warn-background: #dfc0ba;
--messagebox-warn-border: #861c10;
--messagebox-warn-color: var(--text-color);
--messagebox-warn-link-color: #8e221a;
--messagebox-safe-background: #d8f0d3;
--messagebox-safe-border: #1b8408;
--messagebox-safe-color: var(--text-color);
--messagebox-safe-link-color: #1b8408;
--messagebox-disambig-background: #ebebeb;
--messagebox-disambig-border: #898989;
--messagebox-disambig-color: var(--text-color);
--messagebox-disambig-link-color: #6c6c6c;
--messagebox-discord-background: #5865f2;
--messagebox-discord-border: #4c57d0;
--messagebox-discord-link-color: #d2e5fc;
}
.mw-message-box,
.mw-message-box-error,
.mw-message-box-warning,
.mw-message-box-success,
.usermessage {
color: var(--text-color);
}
.messagebox {
width: 65%;
margin: 0.5em auto;
border-left: 15px solid;
border-color: var(--body-dark);
background-color: var(--body-light);
box-sizing: border-box;
}
.messagebox.obsolete {
background-color: var(--messagebox-obsolete-background);
border-color: var(--messagebox-obsolete-border);
color: var(--messagebox-obsolete-color);
}
.messagebox.obsolete a,
.messagebox.obsolete a:visited,
.messagebox.obsolete a:active {
color: var(--messagebox-obsolete-link-color);
}
.messagebox.info {
background-color: var(--messagebox-info-background);
border-color: var(--messagebox-info-border);
color: var(--messagebox-info-color);
}
.messagebox.info a,
.messagebox.info a:visited,
.messagebox.info a:active {
color: var(--messagebox-info-link-color);
}
.messagebox.action {
background-color: var(--messagebox-action-background);
border-color: var(--messagebox-action-border);
color: var(--messagebox-action-color);
}
.messagebox.action a,
.messagebox.action a:visited,
.messagebox.action a:active {
color: var(--messagebox-action-link-color);
}
.messagebox.warn {
background-color: var(--messagebox-warn-background);
border-color: var(--messagebox-warn-border);
color: var(--messagebox-warn-color);
}
.messagebox.warn a,
.messagebox.warn a:visited,
.messagebox.warn a:active {
color: var(--messagebox-warn-link-color);
}
.messagebox.safe {
background-color: var(--messagebox-safe-background);
border-color: var(--messagebox-safe-border);
color: var(--messagebox-safe-color);
}
.messagebox.safe a,
.messagebox.safe a:visited,
.messagebox.safe a:active {
color: var(--messagebox-safe-link-color);
}
.messagebox.disambig {
background-color: var(--messagebox-disambig-background);
border-color: var(--messagebox-disambig-border);
color: var(--messagebox-disambig-color);
}
.messagebox.disambig a,
.messagebox.disambig a:visited,
.messagebox.disambig a:active {
color: var(--messagebox-disambig-link-color);
}
.messagebox.discord {
background-color: var(--messagebox-discord-background);
border-color: var(--messagebox-discord-border);
color: #fff;
}
.messagebox.discord a,
.messagebox.discord a:visited,
.messagebox.discord a:active {
color: var(--messagebox-discord-link-color);
}
.messagebox.discord a.external,
.messagebox.discord a:visited.external,
.messagebox.discord a:active.external {
font-style: italic;
}
.messagebox.stub {
width: 40%;
}
.messagebox.hasdialogue {
padding: 0 10px;
width: auto;
}
:root {
--byline-arrow-filter: invert(29%) sepia(0%) saturate(376%) hue-rotate(172deg) brightness(87%) contrast(80%);
--tile-border-color: #cabe9b;
--tile-background-color: #f9f3eb;
--tile-link-button-color: #f5e9db;
--tile-link-button-highlight-color: #dfccb0;
--tile-dark-color: #fff;
--tile-dark-bg: #5d6773;
--tile-dark-link-color: #ccc;
--tile-dark-byline-color: rgba(255, 255, 255, 0.7);
--tile-dark-header-color: #fff;
}
.tile {
background: var(--tile-background-color);
border: 1px solid var(--tile-border-color);
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
padding: 1.5em 2em 1em;
max-width: 40em;
}
.tile h2 {
font-size: 1.4em;
font-weight: bold;
border: none;
margin: 0 0 0.4em;
}
.tile .byline + h2 {
margin-top: -0.5em;
}
.tile.dark {
color: var(--tile-dark-color);
background: var(--tile-dark-bg);
border: none;
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.3);
}
.tile.dark h2 {
color: var(--tile-dark-header-color);
}
.tile.dark a {
color: var(--tile-dark-link-color);
}
.tile.dark .byline {
color: var(--tile-dark-byline-color);
}
.byline {
font-size: 0.9em;
color: var(--byline-color);
}
.byline a {
color: var(--byline-color);
}
.tile-row {
display: flex;
flex-flow: row wrap;
margin-bottom: 1em;
}
.tile-halves {
display: flex;
flex-flow: row wrap;
border: 1px solid var(--tile-border-color);
background: var(--tile-background-color);
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
}
.tile-halves h2 {
font-size: 1.4em;
font-weight: bold;
border: none;
margin: 0 0 0.4em;
}
.tile-halves .byline + h2 {
margin-top: -0.5em;
}
.tile-top {
width: 100%;
padding: 1.3rem 1.5rem 0.6rem;
}
.tile-top.tile-image {
display: flex;
align-items: center;
background-color: var(--byline-color);
overflow: hidden;
padding: 0;
height: 13vw;
max-height: 12em;
transition: 0.4s ease-out;
}
.tile-halves:hover .tile-top.tile-image img {
transform: scale(1.1);
transition: 0.5s ease-out;
}
.tile-top.tile-image a {
width: 100%;
}
.tile-top.tile-image img {
width: 100%;
object-fit: cover;
max-height: 200px;
transition: 0.4s ease-out;
}
.tile-bottom {
background: var(--tile-background-color);
border-top: 1px solid var(--tile-border-color);
width: 100%;
padding: 1rem 1.5rem 0.6rem;
}
.tile-bottom.link-button {
align-self: flex-end;
padding: 0;
}
.tile-bottom.link-button a {
display: block;
text-align: center;
padding: 0.75em 1.5em 0.8em;
text-decoration: none;
}
.tile-bottom.read-more {
background: var(--tile-link-button-color);
transition: 0.3s ease-out;
}
.tile-bottom.read-more a {
color: var(--byline-color);
font-weight: bold;
text-align: right;
}
.tile-bottom.read-more:hover {
background: var(--tile-link-button-highlight-color);
}
.tile-bottom.read-more:hover .arrow {
transform: translateX(50%);
}
.tile-bottom.read-more .arrow {
filter: var(--byline-arrow-filter);
margin-left: 0.4em;
transition: 0.3s ease-out;
}
body.page-Main_Page.action-view .catlinks,
body.page-Main_Page.action-view #contentSub,
body.page-Main_Page.action-view #firstHeading,
body.page-Main_Page.action-view #siteNotice {
display: none;
}
body.page-Main_Page .mw-parser-output {
max-width: 75em;
margin: 0 auto;
}
body.page-Main_Page.action-view .catlinks,
body.page-Main_Page.action-view #contentSub,
body.page-Main_Page.action-view #siteNotice {
display: none;
}
.mainpage-header {
display: flex;
margin: 2.6em 1.75em 1.5em;
}
.mainpage-header .header-intro {
flex: 2;
}
.mainpage-header .header-intro h1 {
font-size: 2.5em;
font-weight: bold;
border: none;
margin: 0 0 0.15em;
}
.mainpage-header .header-intro p {
font-size: 1.1em;
line-height: 1.7em;
}
.mainpage-header .header-stats {
flex: 1;
display: flex;
justify-content: center;
align-items: center;
margin-top: -1em;
}
.mainpage-body {
display: grid;
grid-template-areas: "event event event" "update update update" "content content content" "left left right";
gap: 0.9rem;
grid-template-columns: repeat(3, 1fr);
}
.mainpage-body h2 a {
color: var(--text-color);
}
.mainpage-body .tile {
padding-left: 1.75em;
padding-right: 1.75em;
max-width: 100%;
}
.mainpage-body .tile-row {
width: 100%;
margin-bottom: 0;
}
.mainpage-body .tile-row {
display: grid;
gap: 0.9rem;
}
.mainpage-contents.tile-row {
display: flex;
}
.mainpage-contents.tile-row .tile-top {
height: 5.5rem;
}
.mainpage-left {
grid-area: left;
flex: 2;
display: flex;
flex-flow: column wrap;
}
.mainpage-left > * {
margin: 0 0 0.9rem;
}
.mainpage-right {
grid-area: right;
flex: 1;
display: flex;
flex-flow: column wrap;
}
.mainpage-right > * {
margin: 0 0 0.9rem;
}
.arrow {
background: url('filepath://White-chevron.svg') no-repeat;
display: inline-block;
height: 0.7rem;
width: 0.45rem;
vertical-align: middle;
}
.arrow.dark {
filter: invert(80%);
}
.mainpage-contents {
grid-area: content;
grid-template-columns: repeat(6, 1fr);
}
.mainpage-contents .tile-halves {
flex: 1;
}
.mainpage-contents .tile-top {
height: 4.5rem;
position: relative;
}
.mainpage-contents .tile-top.tile-image img {
height: auto;
}
.mainpage-contents h2 {
margin: 0;
padding: 0;
}
.mainpage-contents .tile-bottom.link-button a {
padding: 0.75em 0.2em;
}
.popular-pages ul {
display: grid;
grid-template-columns: repeat(3, 1fr);
grid-gap: 0.6em;
margin: 1em 0 0.7em 0;
}
.mp-popular-page-light {
display: flex;
align-items: center;
background-color: var(--button-background);
transition: 100ms;
}
.mp-popular-page-light a {
flex: 1;
display: block;
color: #fff;
font-weight: bold;
text-align: center;
text-decoration: none;
padding: 0.7em 1em;
}
.mp-popular-page-light:hover {
filter: brightness(115%);
transition: 100ms;
}
.mainpage-social {
border: none;
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.3);
}
.mainpage-social .tile-top {
display: flex;
align-items: center;
padding: 1em 1.5em;
}
.mainpage-social .tile-top a {
flex: 1;
position: relative;
text-decoration: none;
}
.mainpage-social .tile-top a:hover .arrow {
transform: translateX(50%);
}
.mainpage-social .tile-bottom {
border: none;
padding: 1em 1.75em;
}
.mainpage-social .tile-bottom p {
color: #fff;
font-weight: bold;
font-size: 0.9em;
text-align: center;
text-transform: uppercase;
letter-spacing: 0.03em;
margin: 0;
}
.mainpage-social .social-icon {
margin-right: 0.75em;
text-align: center;
width: 60px;
}
.mainpage-social .social-header {
color: #fff;
font-weight: bold;
font-size: 1.15em;
margin: 0.5em 0 -0.15em;
}
.mainpage-social .server-tagline {
color: rgba(255, 255, 255, 0.9);
margin-bottom: 0.5em;
}
.mainpage-social .arrow {
position: absolute;
top: calc(50% - .5em);
right: 0;
height: 1em;
width: 0.7em;
background-size: 0.7em 1em;
transition: 0.3s ease-out;
}
.mainpage-social.mainpage-discord .tile-top {
background: #5865f2;
}
.mainpage-social.mainpage-discord .tile-bottom {
background: #525ee0;
}
.mainpage-social.mainpage-twitter .tile-top {
background: #15202b;
}
.mainpage-social.mainpage-twitter .tile-bottom {
background: #121c26;
}
.mainpage-editing {
border: none;
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.3);
}
.mainpage-editing .tile-top {
background: #438ab5;
}
.mainpage-editing .tile-bottom {
background: #3980ab;
border: none;
padding: 0.8rem 1.5rem 0.4rem;
}
.mainpage-editing h2,
.mainpage-editing a {
color: #fff;
}
.mainpage-editing p {
color: rgba(255, 255, 255, 0.9);
}
.mainpage-editing ul {
list-style-image: url('filepath://Transparent-chevron.svg');
}
@media only screen and (max-width: 1200px) {
.mainpage-contents {
grid-template-columns: repeat(3, 1fr);
}
}
@media only screen and (max-width: 1000px) {
.mainpage-body {
grid-template-areas: "event event event" "update update update" "content content content" "left left left" "right right right";
}
.mainpage-recent-updates {
grid-template-columns: repeat(2, 1fr);
}
.mainpage-recent-updates .tile-halves:last-child {
display: none;
}
.mainpage-recent-updates .tile-halves:hover .tile-top img {
transform: scale(1.04);
}
.mainpage-recent-updates .tile-top {
height: 18vw;
min-height: 9em;
}
.mainpage-header .header-stats {
display: none;
}
.mainpage-left > *:last-child,
.mainpage-right > *:last-child {
margin-bottom: 0;
}
.popular-pages ul {
grid-template-columns: repeat(2, 1fr);
}
}
@media only screen and (max-width: 720px) {
.mainpage-recent-updates {
grid-template-columns: none;
}
.mainpage-recent-updates .tile-halves:last-child {
display: flex;
}
.mainpage-contents {
grid-template-columns: repeat(2, 1fr);
}
}
.mw-prefs-buttons {
background-color: var(--body-main);
border-top-color: var(--body-border);
box-shadow: none;
}
.mw-prefs-tabs-wrapper.oo-ui-panelLayout-framed,
.mw-prefs-tabs > .oo-ui-menuLayout-content > .oo-ui-indexLayout-stackLayout > .oo-ui-tabPanelLayout {
border-color: var(--body-border);
}
.mw-htmlform-ooui .mw-htmlform-matrix tbody tr:nth-child(even) td {
background-color: var(--body-light);
}
.mw-htmlform-ooui .mw-htmlform-matrix tbody tr:hover td {
background-color: var(--body-mid);
}
:root {
--rc-positive-color: #407813;
--rc-negative-color: #b41e0f;
}
.mw-plusminus-pos {
color: var(--rc-positive-color);
}
.mw-plusminus-neg {
color: var(--rc-negative-color);
}
.client-js .mw-recentchanges-toplinks:not(.mw-recentchanges-toplinks-collapsed) {
border-color: var(--body-border);
background-color: var(--body-light);
border-radius: 2px;
}
.mw-rcfilters-ui-filterTagMultiselectWidget-wrapper-content-title {
color: var(--text-color);
}
.mw-rcfilters-ui-filterTagMultiselectWidget-emptyFilters {
color: var(--byline-color);
}
.mw-rcfilters-ui-filterTagMultiselectWidget.oo-ui-widget-enabled .oo-ui-tagMultiselectWidget-handle {
background-color: var(--ooui-interface);
border-color: var(--ooui-interface-border);
}
.mw-rcfilters-ui-filterTagMultiselectWidget-views-select-widget.oo-ui-widget {
border-color: var(--ooui-interface-border);
}
.mw-rcfilters-collapsed .mw-rcfilters-ui-filterTagMultiselectWidget {
border-bottom-color: var(--ooui-interface-border);
}
.mw-rcfilters-ui-menuSelectWidget-footer {
background-color: var(--ooui-interface);
border-color: var(--ooui-interface-border);
}
.mw-rcfilters-ui-viewSwitchWidget label.oo-ui-labelWidget {
color: var(--byline-color);
}
.mw-rcfilters-ui-tagItemWidget-popup-content {
color: var(--ooui-text);
}
.mw-changeslist-legend,
.mw-rcfilters-ui-changesListWrapperWidget .mw-changeslist-legend {
background-color: var(--body-light);
border-color: var(--body-dark);
}
.mw-rcfilters-ui-changesListWrapperWidget-previousChangesIndicator {
border-color: var(--sidebar);
}
.client-js .mw-changeslist ul,
.client-js .mw-changeslist table.mw-enhanced-rc {
margin-left: 0;
}
.mw-rcfilters-ui-watchlistTopSectionWidget-separator {
border-color: var(--sidebar);
}
.mw-rcfilters-ui-itemMenuOptionWidget-header {
border-bottom-color: var(--ooui-interface);
background-color: var(--ooui-interface-border);
}
.mw-rcfilters-ui-itemMenuOptionWidget:not(:last-child):not(.mw-rcfilters-ui-itemMenuOptionWidget-identifier-talk) {
border-bottom-color: var(--ooui-normal-border);
}
.mw-rcfilters-ui-itemMenuOptionWidget-label-title,
.mw-rcfilters-ui-itemMenuOptionWidget-label-desc {
color: var(--text-color);
}
.mw-rcfilters-ui-filterMenuOptionWidget.oo-ui-flaggedElement-muted:not(.oo-ui-optionWidget-selected) {
background-color: var(--body-main);
}
.mw-rcfilters-ui-filterMenuOptionWidget.oo-ui-flaggedElement-muted .mw-rcfilters-ui-itemMenuOptionWidget-label-title,
.mw-rcfilters-ui-filterMenuOptionWidget.oo-ui-flaggedElement-muted .mw-rcfilters-ui-itemMenuOptionWidget-label-desc {
color: var(--subtle-color);
}
.mw-rcfilters-ui-filterMenuSectionOptionWidget {
background-color: var(--body-mid);
}
.mw-rcfilters-ui-filterMenuSectionOptionWidget-header-title.oo-ui-labelElement-label {
color: var(--ooui-text);
}
.mw-rcfilters-ui-filterMenuHeaderWidget-title {
color: var(--ooui-text);
}
.mw-rcfilters-ui-filterMenuHeaderWidget-header {
border-bottom-color: var(--ooui-interface-border);
background-color: var(--ooui-interface);
}
.mw-rcfilters-ui-itemMenuOptionWidget-view-namespaces {
border-top-color: var(--ooui-interface-border);
}
.mw-rcfilters-ui-datePopupWidget {
border-color: var(--ooui-interface-border);
}
.mw-rcfilters-ui-datePopupWidget .mw-rcfilters-ui-valuePickerWidget-title {
color: var(--byline-color);
}
.mw-rcfilters-ui-savedLinksListItemWidget-label {
color: var(--ooui-accent);
}
.client-js .mw-changeslist.mw-rcfilters-ui-changesListWrapperWidget-highlighted ul,
.client-js .mw-changeslist.mw-rcfilters-ui-changesListWrapperWidget-highlighted table.mw-enhanced-rc {
margin-left: 1.5em;
}
.page-Special_CreateAccount .mw-ui-container,
.page-Special_UserLogin .mw-ui-container {
max-width: 64rem;
margin: 0 auto;
}
.mw-number-text {
color: var(--byline-color);
}
.mw-body-content .mw-number-text h3 {
color: var(--text-color);
}
#mw-indicator-mw-helplink a {
background: none;
padding: 0;
display: flex;
align-items: center;
}
#mw-indicator-mw-helplink a::before {
content: '';
margin-right: 5px;
-webkit-mask: url("/resources/src/mediawiki.helplink/images/helpNotice.svg?46d34") no-repeat 50% 50% / contain;
mask: url("/resources/src/mediawiki.helplink/images/helpNotice.svg?46d34") no-repeat 50% 50% / contain;
background: var(--text-color);
height: 20px;
width: 20px;
}
.results-info {
color: inherit;
}
.mw-search-profile-tabs {
background-color: var(--body-mid);
border-color: transparent;
}
.search-types .current a {
color: inherit;
}
#mw-searchoptions {
background-color: var(--body-mid);
border-color: transparent;
}
#mw-searchoptions .divider {
border-color: var(--body-border);
}
#mw-searchoptions h4 {
font-family: inherit;
}
#mw-searchoptions .oo-ui-labelElement:nth-of-type(odd) {
font-weight: bold;
}
.searchresult {
line-height: 1.5;
}
.searchalttitle,
#mw-search-interwiki li {
font-size: 90%;
}
.mw-search-result-data {
color: var(--byline-color);
}
.page-Special_ListFiles a.image img {
width: inherit;
height: inherit;
}
.page-Special_ListFiles .TablePager_col_thumb {
text-align: center;
}
#editcount table[border="1"] {
background-color: var(--body-main) !important;
border-color: var(--wikitable-border) !important;
margin-top: 0.5em;
}
#editcount table[border="1"] th,
#editcount table[border="1"] td {
padding: 0.2em 0.4em;
}
#editcount table[border="1"] th {
background-color: var(--wikitable-header-bg);
border: 1px solid var(--wikitable-border);
}
#editcount table[border="1"] td {
border: 1px solid var(--wikitable-border);
}
#editcount table[border="1"] tr:nth-child(odd) {
background-color: var(--body-light);
}
.mw-echo-ui-notificationBadgeButtonPopupWidget-popup > .oo-ui-popupWidget-popup .mw-echo-ui-placeholderItemWidget {
background-color: inherit;
}
table.mw-interwikitable.body td.mw-interwikitable-local-yes {
background-color: var(--table-yes-background);
color: var(--table-yes-color);
}
.mw-protectedpages-unknown {
color: var(--byline-color);
}
.watchlistredir,
.allpagesredirect {
font-style: italic;
}
.allpagesredirect:after {
color: var(--byline-color);
content: " (redirect)";
}
.mw-apisandbox-toolbar {
background: var(--body-main);
}
.oo-ui-menuOptionWidget .mw-apisandbox-flag {
color: var(--byline-color);
}
tr.mw-abusefilter-list-disabled,
tr.mw-abusefilter-list-disabled td {
color: var(--byline-color);
}
table.mw-abuselog-details {
background: var(--wikitable-bg);
border-color: var(--wikitable-border);
}
table.mw-abuselog-details th {
background: var(--wikitable-header-bg);
}
table.mw-abuselog-details th,
table.mw-abuselog-details td {
border-color: var(--wikitable-border);
}
.mw-abusefilter-log-hidden-entry {
color: var(--subtle-color);
}
body td.mw-abusefilter-history-changed {
background: var(--table-no-background);
}
div.mw-abusefilter-editor,
#mw-abusefilter-warn-preview,
#mw-abusefilter-disallow-preview {
border-color: var(--ooui-input-border);
}
.mw-destfile-warning {
border-color: var(--warningbox-border);
color: var(--text-color);
background-color: var(--warningbox-bg);
}
span.fileinput-button {
background-color: var(--ooui-normal);
border-color: var(--ooui-normal-border);
color: var(--ooui-text);
}
ul.fileupload-results li.ful-success {
background-color: var(--successbox-bg);
}
ul.fileupload-results li.ful-success a {
color: var(--link-color);
}
ul.fileupload-results li.ful-error {
background-color: var(--errorbox-bg);
}
#t-print,
#t-permalink {
display: none;
}
#filetoc {
border-radius: 2px;
background: var(--body-mid);
border-color: transparent;
margin: 0.5em auto;
text-align: center;
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
}
li.gallerybox div.thumb {
border: none;
background-color: var(--thumb-bg);
}
.smwfact {
display: none;
}
.list-header {
background-color: var(--body-mid);
color: inherit;
}
.editOptions {
color: var(--text-color);
background-color: var(--sourceeditor-background-secondary);
border-color: var(--sourceeditor-border);
}
.mw-json th,
.mw-json td {
border-color: var(--wikitable-border);
}
.mw-json td {
background: var(--wikitable-bg);
}
.mw-json th {
background: var(--wikitable-header-bg);
}
0055e9846f58bd4e4b67ed3f8e2bef58c3fd7346
Template:Main Page/Discord
10
364
1103
652
2024-03-23T23:17:33Z
Merds
25
wikitext
text/x-wiki
<noinclude>{{/doc}}</noinclude><div class="mainpage-discord tile-halves plainlinks">
<div class="tile-top">
<div class="partner-icon">[[File:Discord logo icon.svg|40px|link=]]</div>
[https://discord.gg/xGDZskaAn9 <div class="arrow nomobile"></div><p class="server-name">Brighter Shores Community</p><p class="server-tagline">Join the community Discord server to discuss the game!</p>]
</div>
<div class="tile-bottom">
<p>Community Discord</p>
</div>
</div>
fe842dd79d9a826b23ecca53440c83dbca7c9a21
1107
1103
2024-03-24T00:13:46Z
Merds
25
wikitext
text/x-wiki
<noinclude>{{/doc}}</noinclude><div class="mainpage-social mainpage-discord tile-halves plainlinks">
<div class="tile-top">
<div class="partner-icon">[[File:Discord logo icon.svg|40px|link=]]</div>
[https://discord.gg/xGDZskaAn9 <div class="arrow nomobile"></div><p class="server-name">Brighter Shores Community</p><p class="server-tagline">Join the community Discord server to discuss the game!</p>]
</div>
<div class="tile-bottom">
<p>Community Discord</p>
</div>
</div>
e1a070f66a5e3f1f6e90d2c58ded5877afd5812f
1108
1107
2024-03-24T00:15:21Z
Merds
25
wikitext
text/x-wiki
<noinclude>{{/doc}}</noinclude><div class="mainpage-social mainpage-discord tile-halves plainlinks">
<div class="tile-top">
<div class="social-icon">[[File:Discord logo icon.svg|40px|link=]]</div>
[https://discord.gg/xGDZskaAn9 <div class="arrow nomobile"></div><p class="server-name">Brighter Shores Community</p><p class="server-tagline">Join the community Discord server to discuss the game!</p>]
</div>
<div class="tile-bottom">
<p>Community Discord</p>
</div>
</div>
75d84e093c6dc1f31ab0479efa8f29ebdd6dd750
1109
1108
2024-03-24T00:17:06Z
Merds
25
wikitext
text/x-wiki
<noinclude>{{/doc}}</noinclude><div class="mainpage-social mainpage-discord tile-halves plainlinks">
<div class="tile-top">
<div class="social-icon">[[File:Discord logo icon.svg|40px|link=]]</div>
[https://discord.gg/xGDZskaAn9 <div class="arrow nomobile"></div><p class="social-header">Brighter Shores Community</p><p class="server-tagline">Join the community Discord server to discuss the game!</p>]
</div>
<div class="tile-bottom">
<p>Community Discord</p>
</div>
</div>
f4d670d93fd2cf72beb7e6afe64a7925bd996590
MediaWiki:Common.less/mainpage.less
8
44
1104
1101
2024-03-23T23:59:43Z
Merds
25
less
less
/* ===================
MAIN PAGE
=================== */
body.page-Main_Page.action-view .catlinks,
body.page-Main_Page.action-view #contentSub,
body.page-Main_Page.action-view #firstHeading,
body.page-Main_Page.action-view #siteNotice {
display: none;
}
/* ===================
variables
=================== */
@mp-text-light: fade( @white, 90% );
@mp-gutter-width: .9rem;
/* ==========================
page-specific styles
========================== */
body.page-Main_Page {
// limit max width for readability
// don't use #mw-content-text because it includes the editform
.mw-parser-output {
max-width: 75em;
margin: 0 auto;
}
// not when editing
&.action-view {
.catlinks,
#contentSub,
// hide pagetitle in favor of .mainpage-header
// Note: as of mw1.38, this is not needed anymore
// blanking both [[MediaWiki:Mainpage-title-loggedin]] &
// [[MediaWiki:Mainpage-title]] applies an inline `display: none;`
// #firstHeading,
// anything listed in the sitenotice should already be on the main page
#siteNotice {
display: none;
}
}
}
/* ====================
general styles
==================== */
.mainpage-header {
display: flex;
margin: 2.6em 1.75em 1.5em;
.header-intro {
flex: 2;
h1 {
font-size: 2.5em;
font-weight: bold;
border: none;
margin: 0 0 .15em;
}
p {
font-size: 1.1em;
line-height: 1.7em;
}
}
.header-stats {
flex: 1;
display: flex;
justify-content: center;
align-items: center;
margin-top: -1em;
}
}
// main sections
.mainpage-body {
display: grid;
grid-template-areas:
"event event event" // for tbzr tile
"update update update"
"content content content"
"left left right";
gap: 0.9rem;
grid-template-columns: repeat(3, 1fr);
h2 a {
color: var(--text-color);
}
.tile {
padding-left: 1.75em;
padding-right: 1.75em;
max-width: 100%;
}
.tile-row {
width: 100%;
margin-bottom: 0;
}
}
.mainpage-body .tile-row {
display: grid;
gap: 0.9rem
}
/* remove this when we get a 6th thing to add on the mainpage "events" */
.mainpage-contents.tile-row {
display:flex;
.tile-top {
height: 6.5rem;
}
}
/* remove until above this line */
// left column
.mainpage-left {
grid-area: left;
flex: 2;
display: flex;
flex-flow: column wrap;
> * {
margin: 0 0 @mp-gutter-width;
}
}
// right column
.mainpage-right {
grid-area: right;
flex: 1;
display: flex;
flex-flow: column wrap;
> * {
margin: 0 0 @mp-gutter-width;
}
}
/* ====================
components
==================== */
.arrow {
background: url('filepath://White-chevron.svg') no-repeat;
display: inline-block;
height: .7rem;
width: .45rem;
vertical-align: middle;
&.dark {
filter: invert(80%);
}
}
/* =============================
section-specific styles
============================= */
/* --------------------
wiki contents
-------------------- */
@mp-contents-height: 4.5rem;
.mainpage-contents {
grid-area: content;
grid-template-columns: repeat(6, 1fr);
.tile-halves {
flex: 1;
}
.tile-top {
height: 4.5rem;
position: relative; // needed for ribbon
}
h2 {
margin: 0;
padding: 0;
}
.tile-bottom.link-button a {
padding: 0.75em 0.2em; // prevent grid gap misalignment
}
}
/* --------------------
popular pages
-------------------- */
.popular-pages ul {
display: grid;
grid-template-columns: repeat(3, 1fr);
grid-gap: .6em;
margin: 1em 0 .7em 0;
}
.mp-popular-page-light {
display: flex;
align-items: center;
background-color: var(--button-background);
transition: 100ms;
a {
flex: 1;
display: block;
color: @white;
font-weight: bold;
text-align: center;
text-decoration: none;
padding: .7em 1em;
}
&:hover {
filter: brightness(115%);
transition: 100ms;
}
}
/* --------------------
discord server
-------------------- */
.mainpage-discord {
border: none;
box-shadow: @box-shadow-dark;
.tile-top {
display: flex;
align-items: center;
background: @discord-bg;
padding: 1em 1.25em;
a {
flex: 1;
position: relative; // allow link to cover icon
text-decoration: none;
&:hover .arrow {
transform: translateX(50%);
}
}
}
.tile-bottom {
background: @discord-bg-dark;
border: none;
padding: 1em 1.25em;
p {
color: @white;
font-weight: bold;
font-size: .9em;
text-align: center;
text-transform: uppercase;
letter-spacing: .03em;
margin: 0;
}
}
.partner-icon {
margin-right: .75em;
text-align: center;
width: 60px;
}
.server-name {
color: @white;
font-weight: bold;
font-size: 1.25em;
margin: .5em 0 -0.15em;
}
.server-tagline {
color: @mp-text-light;
margin-bottom: .5em;
}
.arrow {
position: absolute;
top: ~"calc(50% - .5em)"; // center arrow on its point
right: 0;
height: 1em;
width: .7em;
background-size: .7em 1em;
transition: .3s ease-out;
}
}
/* --------------------
edit the wiki
-------------------- */
.mainpage-editing {
border: none;
box-shadow: @box-shadow-dark;
.tile-top {
background: @steel-blue;
}
.tile-bottom {
background: saturate( darken( @steel-blue, 4% ), 4% );
border: none;
padding: .8rem 1.5rem .4rem;
}
h2,
a {
color: @white;
}
p {
color: @mp-text-light;
}
ul {
list-style-image: url('filepath://Transparent-chevron.svg');
}
}
/* ==========================
media queries
========================== */
@media only screen and (max-width: @width-breakpoint-desktop-wide) {
// switch to two rows of three tiles
.mainpage-contents {
grid-template-columns: repeat(3, 1fr)
}
}
@media only screen and (max-width: @width-breakpoint-desktop) {
// mainpage-left and -right on one column now
.mainpage-body {
grid-template-areas:
"event event event"
"update update update"
"content content content"
"left left left"
"right right right";
}
.mainpage-recent-updates {
grid-template-columns: repeat(2, 1fr);
.tile-halves {
// hide third recent update
&:last-child {
display: none;
}
// zoom on hover
&:hover .tile-top img {
transform: scale(1.04);
}
}
.tile-top {
height: 18vw;
min-height: 9em;
}
}
// hide other things
.mainpage-header .header-stats {
display: none;
}
// kill margin as it duplicates grid's gap
.mainpage-left > *:last-child,
.mainpage-right > *:last-child {
margin-bottom: 0;
}
.popular-pages ul {
grid-template-columns: repeat(2, 1fr);
}
}
@media only screen and (max-width: @width-breakpoint-tablet) {
.mainpage-recent-updates {
// resulting in single column
grid-template-columns: none;
// revert display:none
.tile-halves:last-child {
display: flex;
}
}
// switch to three rows of two tiles
.mainpage-contents {
grid-template-columns: repeat(2, 1fr);
}
}
8566720c350e2a6406d6b80c83c129e4501c72f6
1105
1104
2024-03-23T23:59:58Z
Merds
25
less
less
/* ===================
MAIN PAGE
=================== */
body.page-Main_Page.action-view .catlinks,
body.page-Main_Page.action-view #contentSub,
body.page-Main_Page.action-view #firstHeading,
body.page-Main_Page.action-view #siteNotice {
display: none;
}
/* ===================
variables
=================== */
@mp-text-light: fade( @white, 90% );
@mp-gutter-width: .9rem;
/* ==========================
page-specific styles
========================== */
body.page-Main_Page {
// limit max width for readability
// don't use #mw-content-text because it includes the editform
.mw-parser-output {
max-width: 75em;
margin: 0 auto;
}
// not when editing
&.action-view {
.catlinks,
#contentSub,
// hide pagetitle in favor of .mainpage-header
// Note: as of mw1.38, this is not needed anymore
// blanking both [[MediaWiki:Mainpage-title-loggedin]] &
// [[MediaWiki:Mainpage-title]] applies an inline `display: none;`
// #firstHeading,
// anything listed in the sitenotice should already be on the main page
#siteNotice {
display: none;
}
}
}
/* ====================
general styles
==================== */
.mainpage-header {
display: flex;
margin: 2.6em 1.75em 1.5em;
.header-intro {
flex: 2;
h1 {
font-size: 2.5em;
font-weight: bold;
border: none;
margin: 0 0 .15em;
}
p {
font-size: 1.1em;
line-height: 1.7em;
}
}
.header-stats {
flex: 1;
display: flex;
justify-content: center;
align-items: center;
margin-top: -1em;
}
}
// main sections
.mainpage-body {
display: grid;
grid-template-areas:
"event event event" // for tbzr tile
"update update update"
"content content content"
"left left right";
gap: 0.9rem;
grid-template-columns: repeat(3, 1fr);
h2 a {
color: var(--text-color);
}
.tile {
padding-left: 1.75em;
padding-right: 1.75em;
max-width: 100%;
}
.tile-row {
width: 100%;
margin-bottom: 0;
}
}
.mainpage-body .tile-row {
display: grid;
gap: 0.9rem
}
/* remove this when we get a 6th thing to add on the mainpage "events" */
.mainpage-contents.tile-row {
display: flex;
.tile-top {
height: 6.5rem;
}
}
/* remove until above this line */
// left column
.mainpage-left {
grid-area: left;
flex: 2;
display: flex;
flex-flow: column wrap;
> * {
margin: 0 0 @mp-gutter-width;
}
}
// right column
.mainpage-right {
grid-area: right;
flex: 1;
display: flex;
flex-flow: column wrap;
> * {
margin: 0 0 @mp-gutter-width;
}
}
/* ====================
components
==================== */
.arrow {
background: url('filepath://White-chevron.svg') no-repeat;
display: inline-block;
height: .7rem;
width: .45rem;
vertical-align: middle;
&.dark {
filter: invert(80%);
}
}
/* =============================
section-specific styles
============================= */
/* --------------------
wiki contents
-------------------- */
@mp-contents-height: 4.5rem;
.mainpage-contents {
grid-area: content;
grid-template-columns: repeat(6, 1fr);
.tile-halves {
flex: 1;
}
.tile-top {
height: 4.5rem;
position: relative; // needed for ribbon
}
h2 {
margin: 0;
padding: 0;
}
.tile-bottom.link-button a {
padding: 0.75em 0.2em; // prevent grid gap misalignment
}
}
/* --------------------
popular pages
-------------------- */
.popular-pages ul {
display: grid;
grid-template-columns: repeat(3, 1fr);
grid-gap: .6em;
margin: 1em 0 .7em 0;
}
.mp-popular-page-light {
display: flex;
align-items: center;
background-color: var(--button-background);
transition: 100ms;
a {
flex: 1;
display: block;
color: @white;
font-weight: bold;
text-align: center;
text-decoration: none;
padding: .7em 1em;
}
&:hover {
filter: brightness(115%);
transition: 100ms;
}
}
/* --------------------
discord server
-------------------- */
.mainpage-discord {
border: none;
box-shadow: @box-shadow-dark;
.tile-top {
display: flex;
align-items: center;
background: @discord-bg;
padding: 1em 1.25em;
a {
flex: 1;
position: relative; // allow link to cover icon
text-decoration: none;
&:hover .arrow {
transform: translateX(50%);
}
}
}
.tile-bottom {
background: @discord-bg-dark;
border: none;
padding: 1em 1.25em;
p {
color: @white;
font-weight: bold;
font-size: .9em;
text-align: center;
text-transform: uppercase;
letter-spacing: .03em;
margin: 0;
}
}
.partner-icon {
margin-right: .75em;
text-align: center;
width: 60px;
}
.server-name {
color: @white;
font-weight: bold;
font-size: 1.25em;
margin: .5em 0 -0.15em;
}
.server-tagline {
color: @mp-text-light;
margin-bottom: .5em;
}
.arrow {
position: absolute;
top: ~"calc(50% - .5em)"; // center arrow on its point
right: 0;
height: 1em;
width: .7em;
background-size: .7em 1em;
transition: .3s ease-out;
}
}
/* --------------------
edit the wiki
-------------------- */
.mainpage-editing {
border: none;
box-shadow: @box-shadow-dark;
.tile-top {
background: @steel-blue;
}
.tile-bottom {
background: saturate( darken( @steel-blue, 4% ), 4% );
border: none;
padding: .8rem 1.5rem .4rem;
}
h2,
a {
color: @white;
}
p {
color: @mp-text-light;
}
ul {
list-style-image: url('filepath://Transparent-chevron.svg');
}
}
/* ==========================
media queries
========================== */
@media only screen and (max-width: @width-breakpoint-desktop-wide) {
// switch to two rows of three tiles
.mainpage-contents {
grid-template-columns: repeat(3, 1fr)
}
}
@media only screen and (max-width: @width-breakpoint-desktop) {
// mainpage-left and -right on one column now
.mainpage-body {
grid-template-areas:
"event event event"
"update update update"
"content content content"
"left left left"
"right right right";
}
.mainpage-recent-updates {
grid-template-columns: repeat(2, 1fr);
.tile-halves {
// hide third recent update
&:last-child {
display: none;
}
// zoom on hover
&:hover .tile-top img {
transform: scale(1.04);
}
}
.tile-top {
height: 18vw;
min-height: 9em;
}
}
// hide other things
.mainpage-header .header-stats {
display: none;
}
// kill margin as it duplicates grid's gap
.mainpage-left > *:last-child,
.mainpage-right > *:last-child {
margin-bottom: 0;
}
.popular-pages ul {
grid-template-columns: repeat(2, 1fr);
}
}
@media only screen and (max-width: @width-breakpoint-tablet) {
.mainpage-recent-updates {
// resulting in single column
grid-template-columns: none;
// revert display:none
.tile-halves:last-child {
display: flex;
}
}
// switch to three rows of two tiles
.mainpage-contents {
grid-template-columns: repeat(2, 1fr);
}
}
b898b61b08633a7114de4e32fa5444130ccf8011
1110
1105
2024-03-24T00:18:20Z
Merds
25
less
less
/* ===================
MAIN PAGE
=================== */
body.page-Main_Page.action-view .catlinks,
body.page-Main_Page.action-view #contentSub,
body.page-Main_Page.action-view #firstHeading,
body.page-Main_Page.action-view #siteNotice {
display: none;
}
/* ===================
variables
=================== */
@mp-text-light: fade( @white, 90% );
@mp-gutter-width: .9rem;
/* ==========================
page-specific styles
========================== */
body.page-Main_Page {
// limit max width for readability
// don't use #mw-content-text because it includes the editform
.mw-parser-output {
max-width: 75em;
margin: 0 auto;
}
// not when editing
&.action-view {
.catlinks,
#contentSub,
// hide pagetitle in favor of .mainpage-header
// Note: as of mw1.38, this is not needed anymore
// blanking both [[MediaWiki:Mainpage-title-loggedin]] &
// [[MediaWiki:Mainpage-title]] applies an inline `display: none;`
// #firstHeading,
// anything listed in the sitenotice should already be on the main page
#siteNotice {
display: none;
}
}
}
/* ====================
general styles
==================== */
.mainpage-header {
display: flex;
margin: 2.6em 1.75em 1.5em;
.header-intro {
flex: 2;
h1 {
font-size: 2.5em;
font-weight: bold;
border: none;
margin: 0 0 .15em;
}
p {
font-size: 1.1em;
line-height: 1.7em;
}
}
.header-stats {
flex: 1;
display: flex;
justify-content: center;
align-items: center;
margin-top: -1em;
}
}
// main sections
.mainpage-body {
display: grid;
grid-template-areas:
"event event event" // for tbzr tile
"update update update"
"content content content"
"left left right";
gap: 0.9rem;
grid-template-columns: repeat(3, 1fr);
h2 a {
color: var(--text-color);
}
.tile {
padding-left: 1.75em;
padding-right: 1.75em;
max-width: 100%;
}
.tile-row {
width: 100%;
margin-bottom: 0;
}
}
.mainpage-body .tile-row {
display: grid;
gap: 0.9rem
}
/* remove this when we get a 6th thing to add on the mainpage "events" */
.mainpage-contents.tile-row {
display: flex;
.tile-top {
height: 6.5rem;
}
}
/* remove until above this line */
// left column
.mainpage-left {
grid-area: left;
flex: 2;
display: flex;
flex-flow: column wrap;
> * {
margin: 0 0 @mp-gutter-width;
}
}
// right column
.mainpage-right {
grid-area: right;
flex: 1;
display: flex;
flex-flow: column wrap;
> * {
margin: 0 0 @mp-gutter-width;
}
}
/* ====================
components
==================== */
.arrow {
background: url('filepath://White-chevron.svg') no-repeat;
display: inline-block;
height: .7rem;
width: .45rem;
vertical-align: middle;
&.dark {
filter: invert(80%);
}
}
/* =============================
section-specific styles
============================= */
/* --------------------
wiki contents
-------------------- */
@mp-contents-height: 4.5rem;
.mainpage-contents {
grid-area: content;
grid-template-columns: repeat(6, 1fr);
.tile-halves {
flex: 1;
}
.tile-top {
height: 4.5rem;
position: relative; // needed for ribbon
}
h2 {
margin: 0;
padding: 0;
}
.tile-bottom.link-button a {
padding: 0.75em 0.2em; // prevent grid gap misalignment
}
}
/* --------------------
popular pages
-------------------- */
.popular-pages ul {
display: grid;
grid-template-columns: repeat(3, 1fr);
grid-gap: .6em;
margin: 1em 0 .7em 0;
}
.mp-popular-page-light {
display: flex;
align-items: center;
background-color: var(--button-background);
transition: 100ms;
a {
flex: 1;
display: block;
color: @white;
font-weight: bold;
text-align: center;
text-decoration: none;
padding: .7em 1em;
}
&:hover {
filter: brightness(115%);
transition: 100ms;
}
}
/* --------------------
discord server & twitter/X
-------------------- */
.mainpage-social {
border: none;
box-shadow: @box-shadow-dark;
.tile-top {
display: flex;
align-items: center;
padding: 1em 1.5em;
a {
flex: 1;
position: relative;
text-decoration: none;
&:hover .arrow {
transform: translateX(50%);
}
}
}
.tile-bottom {
border: none;
padding: 1em 1.75em;
p {
color: @white;
font-weight: bold;
font-size: .9em;
text-align: center;
text-transform: uppercase;
letter-spacing: .03em;
margin: 0;
}
}
.social-icon {
margin-right: .75em;
text-align: center;
width: 60px;
}
.social-header {
color: @white;
font-weight: bold;
font-size: 1.15em;
margin: .5em 0 -0.15em;
}
.server-tagline {
color: @mp-text-light;
margin-bottom: .5em;
}
.arrow {
position: absolute;
top: ~"calc(50% - .5em)"; // center arrow on its point
right: 0;
height: 1em;
width: .7em;
background-size: .7em 1em;
transition: .3s ease-out;
}
// Discord colors
&.mainpage-discord {
.tile-top {
background: @discord-bg;
}
.tile-bottom {
background: @discord-bg-dark;
}
}
// X (Twitter) colors
&.mainpage-twitter {
.tile-top {
background: rgb(21, 32, 43);
}
.tile-bottom {
background: darken(rgb(21, 32, 43), 1.5%);
}
}
}
/* --------------------
edit the wiki
-------------------- */
.mainpage-editing {
border: none;
box-shadow: @box-shadow-dark;
.tile-top {
background: @steel-blue;
}
.tile-bottom {
background: saturate( darken( @steel-blue, 4% ), 4% );
border: none;
padding: .8rem 1.5rem .4rem;
}
h2,
a {
color: @white;
}
p {
color: @mp-text-light;
}
ul {
list-style-image: url('filepath://Transparent-chevron.svg');
}
}
/* ==========================
media queries
========================== */
@media only screen and (max-width: @width-breakpoint-desktop-wide) {
// switch to two rows of three tiles
.mainpage-contents {
grid-template-columns: repeat(3, 1fr)
}
}
@media only screen and (max-width: @width-breakpoint-desktop) {
// mainpage-left and -right on one column now
.mainpage-body {
grid-template-areas:
"event event event"
"update update update"
"content content content"
"left left left"
"right right right";
}
.mainpage-recent-updates {
grid-template-columns: repeat(2, 1fr);
.tile-halves {
// hide third recent update
&:last-child {
display: none;
}
// zoom on hover
&:hover .tile-top img {
transform: scale(1.04);
}
}
.tile-top {
height: 18vw;
min-height: 9em;
}
}
// hide other things
.mainpage-header .header-stats {
display: none;
}
// kill margin as it duplicates grid's gap
.mainpage-left > *:last-child,
.mainpage-right > *:last-child {
margin-bottom: 0;
}
.popular-pages ul {
grid-template-columns: repeat(2, 1fr);
}
}
@media only screen and (max-width: @width-breakpoint-tablet) {
.mainpage-recent-updates {
// resulting in single column
grid-template-columns: none;
// revert display:none
.tile-halves:last-child {
display: flex;
}
}
// switch to three rows of two tiles
.mainpage-contents {
grid-template-columns: repeat(2, 1fr);
}
}
721027d264db0ee10e169fb9f47b2830ef5b388e
1117
1110
2024-03-24T00:58:58Z
Merds
25
less
less
/* ===================
MAIN PAGE
=================== */
body.page-Main_Page.action-view .catlinks,
body.page-Main_Page.action-view #contentSub,
body.page-Main_Page.action-view #firstHeading,
body.page-Main_Page.action-view #siteNotice {
display: none;
}
/* ===================
variables
=================== */
@mp-text-light: fade( @white, 90% );
@mp-gutter-width: .9rem;
/* ==========================
page-specific styles
========================== */
body.page-Main_Page {
// limit max width for readability
// don't use #mw-content-text because it includes the editform
.mw-parser-output {
max-width: 75em;
margin: 0 auto;
}
// not when editing
&.action-view {
.catlinks,
#contentSub,
// hide pagetitle in favor of .mainpage-header
// Note: as of mw1.38, this is not needed anymore
// blanking both [[MediaWiki:Mainpage-title-loggedin]] &
// [[MediaWiki:Mainpage-title]] applies an inline `display: none;`
// #firstHeading,
// anything listed in the sitenotice should already be on the main page
#siteNotice {
display: none;
}
}
}
/* ====================
general styles
==================== */
.mainpage-header {
display: flex;
margin: 2.6em 1.75em 1.5em;
.header-intro {
flex: 2;
h1 {
font-size: 2.5em;
font-weight: bold;
border: none;
margin: 0 0 .15em;
}
p {
font-size: 1.1em;
line-height: 1.7em;
}
}
.header-stats {
flex: 1;
display: flex;
justify-content: center;
align-items: center;
margin-top: -1em;
}
}
// main sections
.mainpage-body {
display: grid;
grid-template-areas:
"event event event" // for tbzr tile
"update update update"
"content content content"
"left left right";
gap: 0.9rem;
grid-template-columns: repeat(3, 1fr);
h2 a {
color: var(--text-color);
}
.tile {
padding-left: 1.75em;
padding-right: 1.75em;
max-width: 100%;
}
.tile-row {
width: 100%;
margin-bottom: 0;
}
}
.mainpage-body .tile-row {
display: grid;
gap: 0.9rem
}
/* remove this when we get a 6th thing to add on the mainpage "events" */
.mainpage-contents.tile-row {
display: flex;
.tile-top {
height: 5.5rem;
}
}
/* remove until above this line */
// left column
.mainpage-left {
grid-area: left;
flex: 2;
display: flex;
flex-flow: column wrap;
> * {
margin: 0 0 @mp-gutter-width;
}
}
// right column
.mainpage-right {
grid-area: right;
flex: 1;
display: flex;
flex-flow: column wrap;
> * {
margin: 0 0 @mp-gutter-width;
}
}
/* ====================
components
==================== */
.arrow {
background: url('filepath://White-chevron.svg') no-repeat;
display: inline-block;
height: .7rem;
width: .45rem;
vertical-align: middle;
&.dark {
filter: invert(80%);
}
}
/* =============================
section-specific styles
============================= */
/* --------------------
wiki contents
-------------------- */
@mp-contents-height: 4.5rem;
.mainpage-contents {
grid-area: content;
grid-template-columns: repeat(6, 1fr);
.tile-halves {
flex: 1;
}
.tile-top {
height: 4.5rem;
position: relative; // needed for ribbon
&.tile-image img {
height: auto;
}
}
h2 {
margin: 0;
padding: 0;
}
.tile-bottom.link-button a {
padding: 0.75em 0.2em; // prevent grid gap misalignment
}
}
/* --------------------
popular pages
-------------------- */
.popular-pages ul {
display: grid;
grid-template-columns: repeat(3, 1fr);
grid-gap: .6em;
margin: 1em 0 .7em 0;
}
.mp-popular-page-light {
display: flex;
align-items: center;
background-color: var(--button-background);
transition: 100ms;
a {
flex: 1;
display: block;
color: @white;
font-weight: bold;
text-align: center;
text-decoration: none;
padding: .7em 1em;
}
&:hover {
filter: brightness(115%);
transition: 100ms;
}
}
/* --------------------
discord server & twitter/X
-------------------- */
.mainpage-social {
border: none;
box-shadow: @box-shadow-dark;
.tile-top {
display: flex;
align-items: center;
padding: 1em 1.5em;
a {
flex: 1;
position: relative;
text-decoration: none;
&:hover .arrow {
transform: translateX(50%);
}
}
}
.tile-bottom {
border: none;
padding: 1em 1.75em;
p {
color: @white;
font-weight: bold;
font-size: .9em;
text-align: center;
text-transform: uppercase;
letter-spacing: .03em;
margin: 0;
}
}
.social-icon {
margin-right: .75em;
text-align: center;
width: 60px;
}
.social-header {
color: @white;
font-weight: bold;
font-size: 1.15em;
margin: .5em 0 -0.15em;
}
.server-tagline {
color: @mp-text-light;
margin-bottom: .5em;
}
.arrow {
position: absolute;
top: ~"calc(50% - .5em)"; // center arrow on its point
right: 0;
height: 1em;
width: .7em;
background-size: .7em 1em;
transition: .3s ease-out;
}
// Discord colors
&.mainpage-discord {
.tile-top {
background: @discord-bg;
}
.tile-bottom {
background: @discord-bg-dark;
}
}
// X (Twitter) colors
&.mainpage-twitter {
.tile-top {
background: rgb(21, 32, 43);
}
.tile-bottom {
background: darken(rgb(21, 32, 43), 1.5%);
}
}
}
/* --------------------
edit the wiki
-------------------- */
.mainpage-editing {
border: none;
box-shadow: @box-shadow-dark;
.tile-top {
background: @steel-blue;
}
.tile-bottom {
background: saturate( darken( @steel-blue, 4% ), 4% );
border: none;
padding: .8rem 1.5rem .4rem;
}
h2,
a {
color: @white;
}
p {
color: @mp-text-light;
}
ul {
list-style-image: url('filepath://Transparent-chevron.svg');
}
}
/* ==========================
media queries
========================== */
@media only screen and (max-width: @width-breakpoint-desktop-wide) {
// switch to two rows of three tiles
.mainpage-contents {
grid-template-columns: repeat(3, 1fr)
}
}
@media only screen and (max-width: @width-breakpoint-desktop) {
// mainpage-left and -right on one column now
.mainpage-body {
grid-template-areas:
"event event event"
"update update update"
"content content content"
"left left left"
"right right right";
}
.mainpage-recent-updates {
grid-template-columns: repeat(2, 1fr);
.tile-halves {
// hide third recent update
&:last-child {
display: none;
}
// zoom on hover
&:hover .tile-top img {
transform: scale(1.04);
}
}
.tile-top {
height: 18vw;
min-height: 9em;
}
}
// hide other things
.mainpage-header .header-stats {
display: none;
}
// kill margin as it duplicates grid's gap
.mainpage-left > *:last-child,
.mainpage-right > *:last-child {
margin-bottom: 0;
}
.popular-pages ul {
grid-template-columns: repeat(2, 1fr);
}
}
@media only screen and (max-width: @width-breakpoint-tablet) {
.mainpage-recent-updates {
// resulting in single column
grid-template-columns: none;
// revert display:none
.tile-halves:last-child {
display: flex;
}
}
// switch to three rows of two tiles
.mainpage-contents {
grid-template-columns: repeat(2, 1fr);
}
}
928fe1286f19ad5564483ab57fc8f2565a2bbeb0
1126
1117
2024-03-24T01:36:33Z
Merds
25
less
less
/* ===================
MAIN PAGE
=================== */
body.page-Main_Page.action-view .catlinks,
body.page-Main_Page.action-view #contentSub,
body.page-Main_Page.action-view #firstHeading,
body.page-Main_Page.action-view #siteNotice {
display: none;
}
/* ===================
variables
=================== */
@mp-text-light: fade( @white, 90% );
@mp-gutter-width: .9rem;
/* ==========================
page-specific styles
========================== */
body.page-Main_Page {
// limit max width for readability
// don't use #mw-content-text because it includes the editform
.mw-parser-output {
max-width: 75em;
margin: 0 auto;
}
// not when editing
&.action-view {
.catlinks,
#contentSub,
// hide pagetitle in favor of .mainpage-header
// Note: as of mw1.38, this is not needed anymore
// blanking both [[MediaWiki:Mainpage-title-loggedin]] &
// [[MediaWiki:Mainpage-title]] applies an inline `display: none;`
// #firstHeading,
// anything listed in the sitenotice should already be on the main page
#siteNotice {
display: none;
}
}
}
/* ====================
general styles
==================== */
.mainpage-header {
display: flex;
margin: 2.6em 1.75em 1.5em;
.header-intro {
flex: 2;
h1 {
font-size: 2.5em;
font-weight: bold;
border: none;
margin: 0 0 .15em;
}
p {
font-size: 1.1em;
line-height: 1.7em;
}
}
.header-stats {
flex: 1;
display: flex;
justify-content: center;
align-items: center;
margin-top: -1em;
}
}
// main sections
.mainpage-body {
display: grid;
grid-template-areas:
"event event event" // for tbzr tile
"update update update"
"content content content"
"left left right";
gap: 0.9rem;
grid-template-columns: repeat(3, 1fr);
h2 a {
color: var(--text-color);
}
.tile {
padding-left: 1.75em;
padding-right: 1.75em;
max-width: 100%;
}
.tile-row {
width: 100%;
margin-bottom: 0;
}
}
.mainpage-body .tile-row {
display: grid;
gap: 0.9rem
}
/* remove this when we get a 6th thing to add on the mainpage "events" */
.mainpage-contents.tile-row {
display: flex;
.tile-top {
height: 5.5rem;
}
}
/* remove until above this line */
// left column
.mainpage-left {
grid-area: left;
flex: 2;
display: flex;
flex-flow: column wrap;
> * {
margin: 0 0 @mp-gutter-width;
}
}
// right column
.mainpage-right {
grid-area: right;
flex: 1;
display: flex;
flex-flow: column wrap;
> * {
margin: 0 0 @mp-gutter-width;
}
}
/* ====================
components
==================== */
.arrow {
background: url('filepath://White-chevron.svg') no-repeat;
display: inline-block;
height: .7rem;
width: .45rem;
vertical-align: middle;
&.dark {
filter: invert(80%);
}
}
/* =============================
section-specific styles
============================= */
/* --------------------
wiki contents
-------------------- */
@mp-contents-height: 4.5rem;
.mainpage-contents {
grid-area: content;
grid-template-columns: repeat(6, 1fr);
.tile-halves {
flex: 1;
}
.tile-top {
height: 4.5rem;
position: relative; // needed for ribbon
&.tile-image img {
height: auto;
}
}
h2 {
margin: 0;
padding: 0;
}
.tile-bottom.link-button a {
padding: 0.75em 0.2em; // prevent grid gap misalignment
}
}
/* --------------------
popular pages
-------------------- */
.popular-pages ul {
display: grid;
grid-template-columns: repeat(3, 1fr);
grid-gap: .6em;
margin: 1em 0 .7em 0;
}
.mp-popular-page-light {
display: flex;
align-items: center;
background-color: var(--button-background);
transition: 100ms;
a {
flex: 1;
display: block;
color: @white;
font-weight: bold;
text-align: center;
text-decoration: none;
padding: .7em 1em;
}
&:hover {
filter: brightness(115%);
transition: 100ms;
}
}
/* --------------------
discord server & twitter/X
-------------------- */
.mainpage-social {
border: none;
box-shadow: @box-shadow-dark;
.tile-top {
display: flex;
align-items: center;
padding: 1em 1.5em;
a {
flex: 1;
position: relative;
text-decoration: none;
&:hover .arrow {
transform: translateX(50%);
}
}
}
.tile-bottom {
border: none;
padding: 1em 1.75em;
p {
color: @white;
font-weight: bold;
font-size: .9em;
text-align: center;
text-transform: uppercase;
letter-spacing: .03em;
margin: 0;
}
}
.social-icon {
margin-right: .75em;
text-align: center;
width: 60px;
}
.social-header {
color: @white;
font-weight: bold;
font-size: 1.15em;
margin: .5em 0 -0.15em;
}
.server-tagline {
color: @mp-text-light;
margin-bottom: .5em;
}
.arrow {
position: absolute;
top: ~"calc(50% - .5em)"; // center arrow on its point
right: 0;
height: 1em;
width: .7em;
background-size: .7em 1em;
transition: .3s ease-out;
}
// Discord colors
&.mainpage-discord {
.tile-top {
background: @discord-bg;
}
.tile-bottom {
background: @discord-bg-dark;
}
}
// X (Twitter) colors
&.mainpage-twitter {
.tile-top {
background: @twitter-bg;
}
.tile-bottom {
background: @twitter-bg-dark;
}
}
}
/* --------------------
edit the wiki
-------------------- */
.mainpage-editing {
border: none;
box-shadow: @box-shadow-dark;
.tile-top {
background: @steel-blue;
}
.tile-bottom {
background: saturate( darken( @steel-blue, 4% ), 4% );
border: none;
padding: .8rem 1.5rem .4rem;
}
h2,
a {
color: @white;
}
p {
color: @mp-text-light;
}
ul {
list-style-image: url('filepath://Transparent-chevron.svg');
}
}
/* ==========================
media queries
========================== */
@media only screen and (max-width: @width-breakpoint-desktop-wide) {
// switch to two rows of three tiles
.mainpage-contents {
grid-template-columns: repeat(3, 1fr)
}
}
@media only screen and (max-width: @width-breakpoint-desktop) {
// mainpage-left and -right on one column now
.mainpage-body {
grid-template-areas:
"event event event"
"update update update"
"content content content"
"left left left"
"right right right";
}
.mainpage-recent-updates {
grid-template-columns: repeat(2, 1fr);
.tile-halves {
// hide third recent update
&:last-child {
display: none;
}
// zoom on hover
&:hover .tile-top img {
transform: scale(1.04);
}
}
.tile-top {
height: 18vw;
min-height: 9em;
}
}
// hide other things
.mainpage-header .header-stats {
display: none;
}
// kill margin as it duplicates grid's gap
.mainpage-left > *:last-child,
.mainpage-right > *:last-child {
margin-bottom: 0;
}
.popular-pages ul {
grid-template-columns: repeat(2, 1fr);
}
}
@media only screen and (max-width: @width-breakpoint-tablet) {
.mainpage-recent-updates {
// resulting in single column
grid-template-columns: none;
// revert display:none
.tile-halves:last-child {
display: flex;
}
}
// switch to three rows of two tiles
.mainpage-contents {
grid-template-columns: repeat(2, 1fr);
}
}
637df85a856ad12f945f2cc12b3edf37f9aff91b
MediaWiki:Common.less/variables.less
8
12
1112
19
2024-03-24T00:34:39Z
Merds
25
less
less
/* ======================
THEME VARIABLES
====================== */
// colors are sorted from darkest to lightest
// See <https://davidwalsh.name/sass-color-variables-dont-suck> for naming system
// Don't change any of this unless you know what you're doing
/* ------------------
brand colors
------------------ */
// blues
@chathams-blue: #115883;
@jelly-bean: #246c97;
@steel-blue: #438ab5;
@fountain-blue: #6ba5c8;
@spindle: #c1deee;
@selago: #f6fbfe;
@nav-blue: #d8e5ff;
// gray-blues
@grey-gray: #ddd;
@river-bed: #444e5a;
@shuttle-gray: #5d6773;
@gray-chateau: #949eaa;
@loblolly: #bdc5cd;
@mystic: #e4eaee;
@black-haze: #f9fafa;
// grays
@mineshaft: #333;
@tundora: #4c4c4c;
@boulder: #777;
@silver: #ccc;
@gallery: #eee;
@alabaster: #f9f9f9;
// dark mode
@black-pearl: #071022;
@big-stone: #172136;
@cloud-burst: #222e45;
@pickled-bluewood: #313e59;
@waikawa-grey: #596e96;
@portage: #8cabe6;
// BROWN dark mode
@ebony-brown: #1b1612;
@mocha-brown: #28221d;
@cacao-brown: #312a25;
@sable-brown: #3e362f;
@driftwood-brown: #5e5248;
@taupe-brown: #736559;
@kharid-sand: #b79d7e;
@slate-grey: #98a2b6;
@ivory-white: #f4eaea;
// brighter shore colors
@mine-shaft: #2F2828;
/* -------------------
other brands
------------------- */
// Discord
@discord-bg: #5865f2;
@discord-bg-dark: #525ee0;
@discord-bg-darker: #4c57d0;
/* -------------------
status colors
------------------- */
// reds
@mocaccino: #801c13;
@old-brick: #9f261e;
@flamingo: #ee4231;
@apricot-peach: #fbc0ba;
@bridesmaid: #feecea;
// oranges
@antique-bronze: #7a3f08;
@korma: #b55e0c;
@ecstasy: #f7861b;
@corvette: #fbcfa6;
@lace: #fef0e4;
// yellows
@cinnamon: #786300;
@olive: #a48900;
@supernova: #f9d000;
@golden: #fcea94;
@half-dutch: #fef9de;
// greens
@san-felix: #2e5e05;
@la-palma: #3c780a;
@lima: #6bc71f;
@caper: #c3e8a3;
@frost: #ecf8e3;
// blues
@regal-blue: #03436b;
@venice-blue: #0b5884;
@curious-blue: #3ea6e6;
@jordy-blue: #aad9f5;
@tropical-blue: #e5f3fc;
// purples
@honey-flower: #3d276b;
@seance: #4f348b;
@medium-purple: #855cd8;
@perfume: #cfc0f0;
@heliotrope: #f0ecfa;
// pinks
@cosmic: #6d3662;
@cannon-pink: #984c89;
@lavender: #e874cf;
@cherub: #f5c8ec;
@french-lilac: #fceef9;
// other
@black: #000;
@white: #fff;
/* ----------------
shadows
---------------- */
@box-shadow: 0 .25rem .35rem -0.25rem rgba(0,0,0,.1);
@box-shadow-dark: 0 .25rem .35rem -0.25rem rgba(0,0,0,.3);
/* ---------------------
border-radius
--------------------- */
// from wmui:
// <https://github.com/wikimedia/wikimedia-ui-base/blob/master/wikimedia-ui-base.less>
@border-radius: 2px;
@border-radius-circle: 50%;
@border-radius-round: 9999px;
/* ---------------------
breakpoints
--------------------- */
// also from wmui
// mobile
@width-breakpoint-mobile: 320px;
// tablet
@width-breakpoint-tablet: 720px;
// desktop
@width-breakpoint-desktop: 1000px;
// Wider desktop
@width-breakpoint-desktop-wide: 1200px;
@width-breakpoint-desktop-extrawide: 2000px;
/* ------------------------
easing curves
<https://easings.net>
------------------------ */
@ease-out-quad: cubic-bezier(0.25, 0.46, 0.45, 0.94);
@ease-out-cubic: cubic-bezier(0.215, 0.61, 0.355, 1);
/* -----------------
typefaces
----------------- */
// imported in [[MediaWiki:Common.less/fonts.less]]
@serif-stack: 'Lora', 'Palatino', 'Georgia', serif;
@sans-serif-stack: 'Helvetica Neue', 'Arial', sans-serif;
@BODY_MAIN: var(--body-main);
@BODY_LIGHT: var(--body-light);
@BODY_MID: var(--body-mid);
@BODY_DARK: var(--body-dark);
@BODY_BORDER: var(--body-border);
@BUTTON_BORDER: var(--button-border);
@BUTTON_DARK: var(--button-dark);
@BUTTON_LIGHT: var(--button-light);
@SIDEBAR: var(--sidebar);
@SEARCH_BOX: var(--search-box);
@LINK_COLOR: var(--link-color);
@REDLINK_COLOR: var(--redlink-color);
@TEXT_COLOR: var(--text-color);
@infobox-background: @BODY_LIGHT;
@infobox-header-color: @BODY_DARK;
@infobox-border-color: @BODY_BORDER;
@infobox-subheader-color: @BODY_DARK;
5b368b6a2bb553ba65ea8772245f90071d518d37
1127
1112
2024-03-24T01:36:44Z
Merds
25
less
less
/* ======================
THEME VARIABLES
====================== */
// colors are sorted from darkest to lightest
// See <https://davidwalsh.name/sass-color-variables-dont-suck> for naming system
// Don't change any of this unless you know what you're doing
/* ------------------
brand colors
------------------ */
// blues
@chathams-blue: #115883;
@jelly-bean: #246c97;
@steel-blue: #438ab5;
@fountain-blue: #6ba5c8;
@spindle: #c1deee;
@selago: #f6fbfe;
@nav-blue: #d8e5ff;
// gray-blues
@grey-gray: #ddd;
@river-bed: #444e5a;
@shuttle-gray: #5d6773;
@gray-chateau: #949eaa;
@loblolly: #bdc5cd;
@mystic: #e4eaee;
@black-haze: #f9fafa;
// grays
@mineshaft: #333;
@tundora: #4c4c4c;
@boulder: #777;
@silver: #ccc;
@gallery: #eee;
@alabaster: #f9f9f9;
// dark mode
@black-pearl: #071022;
@big-stone: #172136;
@cloud-burst: #222e45;
@pickled-bluewood: #313e59;
@waikawa-grey: #596e96;
@portage: #8cabe6;
// BROWN dark mode
@ebony-brown: #1b1612;
@mocha-brown: #28221d;
@cacao-brown: #312a25;
@sable-brown: #3e362f;
@driftwood-brown: #5e5248;
@taupe-brown: #736559;
@kharid-sand: #b79d7e;
@slate-grey: #98a2b6;
@ivory-white: #f4eaea;
// brighter shore colors
@mine-shaft: #2F2828;
/* -------------------
other brands
------------------- */
// Discord
@discord-bg: #5865f2;
@discord-bg-dark: #525ee0;
@discord-bg-darker: #4c57d0;
// Twitter
@twitter-bg: rgb(21, 32, 43);
@twitter-bg-dark: darken(rgb(21, 32, 43), 1.5%);
/* -------------------
status colors
------------------- */
// reds
@mocaccino: #801c13;
@old-brick: #9f261e;
@flamingo: #ee4231;
@apricot-peach: #fbc0ba;
@bridesmaid: #feecea;
// oranges
@antique-bronze: #7a3f08;
@korma: #b55e0c;
@ecstasy: #f7861b;
@corvette: #fbcfa6;
@lace: #fef0e4;
// yellows
@cinnamon: #786300;
@olive: #a48900;
@supernova: #f9d000;
@golden: #fcea94;
@half-dutch: #fef9de;
// greens
@san-felix: #2e5e05;
@la-palma: #3c780a;
@lima: #6bc71f;
@caper: #c3e8a3;
@frost: #ecf8e3;
// blues
@regal-blue: #03436b;
@venice-blue: #0b5884;
@curious-blue: #3ea6e6;
@jordy-blue: #aad9f5;
@tropical-blue: #e5f3fc;
// purples
@honey-flower: #3d276b;
@seance: #4f348b;
@medium-purple: #855cd8;
@perfume: #cfc0f0;
@heliotrope: #f0ecfa;
// pinks
@cosmic: #6d3662;
@cannon-pink: #984c89;
@lavender: #e874cf;
@cherub: #f5c8ec;
@french-lilac: #fceef9;
// other
@black: #000;
@white: #fff;
/* ----------------
shadows
---------------- */
@box-shadow: 0 .25rem .35rem -0.25rem rgba(0,0,0,.1);
@box-shadow-dark: 0 .25rem .35rem -0.25rem rgba(0,0,0,.3);
/* ---------------------
border-radius
--------------------- */
// from wmui:
// <https://github.com/wikimedia/wikimedia-ui-base/blob/master/wikimedia-ui-base.less>
@border-radius: 2px;
@border-radius-circle: 50%;
@border-radius-round: 9999px;
/* ---------------------
breakpoints
--------------------- */
// also from wmui
// mobile
@width-breakpoint-mobile: 320px;
// tablet
@width-breakpoint-tablet: 720px;
// desktop
@width-breakpoint-desktop: 1000px;
// Wider desktop
@width-breakpoint-desktop-wide: 1200px;
@width-breakpoint-desktop-extrawide: 2000px;
/* ------------------------
easing curves
<https://easings.net>
------------------------ */
@ease-out-quad: cubic-bezier(0.25, 0.46, 0.45, 0.94);
@ease-out-cubic: cubic-bezier(0.215, 0.61, 0.355, 1);
/* -----------------
typefaces
----------------- */
// imported in [[MediaWiki:Common.less/fonts.less]]
@serif-stack: 'Lora', 'Palatino', 'Georgia', serif;
@sans-serif-stack: 'Helvetica Neue', 'Arial', sans-serif;
@BODY_MAIN: var(--body-main);
@BODY_LIGHT: var(--body-light);
@BODY_MID: var(--body-mid);
@BODY_DARK: var(--body-dark);
@BODY_BORDER: var(--body-border);
@BUTTON_BORDER: var(--button-border);
@BUTTON_DARK: var(--button-dark);
@BUTTON_LIGHT: var(--button-light);
@SIDEBAR: var(--sidebar);
@SEARCH_BOX: var(--search-box);
@LINK_COLOR: var(--link-color);
@REDLINK_COLOR: var(--redlink-color);
@TEXT_COLOR: var(--text-color);
@infobox-background: @BODY_LIGHT;
@infobox-header-color: @BODY_DARK;
@infobox-border-color: @BODY_BORDER;
@infobox-subheader-color: @BODY_DARK;
dcc101adea85300f14959bdd47f138fab11d16a7
MediaWiki:Common.less
8
5
1113
810
2024-03-24T00:35:19Z
Merds
25
less
less
/* =============================================================================
* This is the root Less file that is parsed to produce [[MediaWiki:Common.css]].
*
* These styles will be applied to all skins (desktop and mobile).
* -----------------------------------------------------------------------------
* Less documentation: <http://lesscss.org/features/>
* Gadget: <https://meta.weirdgloop.org/w/MediaWiki:Gadget-Less.js>
* Core Less JS: <https://meta.weirdgloop.org/w/MediaWiki:Gadget-Less-core.js>
* Non-standard mixins: <https://meta.weirdgloop.org/w/MediaWiki:Gadget-LessMixins.less>
* Online Less tester: <https://lesscss.org/less-preview/>
* ============================================================================= */
// ===== CSS Variables =====
@common: 'MediaWiki:Common.less';
:root {
--body-main: #feffff;
--body-light: #f2f2f2;
--body-mid: #d0bd97;
--body-dark: #e3e3e3;
--body-border: #000;
--body-background-color: #173a4d;
--button-background: #605443;
--button-color: @white;
--button-border: #3c352a;
--button-dark: #18140c;
--button-light: #3a301d;
--sidebar: #cfc08d;
--background-text-color: #e2dbc8;
--background-link-color: #e2bd8a;
--search-box: #efeee6;
--link-color: #936039;
--redlink-color: #ba0000;
--text-color: #2F2828; /*@mine-shaft*/
--byline-color: @silver;
--subtle-color: @boulder;
--admin-blue: #332e75;
--bearcat-green: #13592e;
--awb-purple: #933b96;
--rsw-blue: #438ab6;
--osrsw-brown: #605443;
// used for gallery & thumbs
--thumb-bg: var(--body-light);
--thumb-caption-bg: var(--body-mid);
// for sourceeditor - CodeMirror and WikiEditor's that are only available on
// desktop are also here to not fragment the vars across many files
--sourceeditor-input-background: @white;
--sourceeditor-background: var(--body-light);
--sourceeditor-background-secondary: var(--body-light); // used on .editOptions
--sourceeditor-border: var(--body-mid);
--codemirror-gutter-background: var(--body-mid);
}
// ===== Imports =====
// include fonts first
@import '@{common}/mixins.less';
@import '@{common}/fonts.less'; // Font definitions and font stack definitions
@import '@{common}/variables.less'; // Less variables
@import '@{common}/elements.less'; // HTML elements
@import '@{common}/links.less'; // Link colours
// Interface
@import '@{common}/interface.less'; // MW common elements
@import '@{common}/wikitables.less'; // .wikitable class and etc
@import '@{common}/diff.less'; // Revision differences
@import '@{common}/notifications.less';
@import '@{common}/pagepreviews.less'; // Page preview popups
@import '@{common}/smw.less'; // Semantic MediaWiki
@import '@{common}/tabber.less'; // <tabber>
@import '@{common}/ooui.less'; // OOUI Customisations
@import '@{common}/visualeditor.less'; // VisualEditor
// Templates
@import '@{common}/templates.less'; // Various templates
@import '@{common}/documentation.less'; // [[Template:Documentation]]
@import '@{common}/infobox.less'; // Infobox vars
@import '@{common}/references.less'; // <references>
@import '@{common}/messagebox.less'; // Messagebox templates
// Page specific
@import '@{common}/tiles.less'; // Main page tiles
@import '@{common}/mainpage.less'; // Main page
@import '@{common}/prefs.less'; // Wiki preferences theming
@import '@{common}/specials.less'; // Special pages
// ===== Miscellaneous =====
// hide certain links in sidebar tools
#t-print,
#t-permalink {
display: none;
}
#filetoc {
border-radius: @border-radius;
background: @BODY_MID;
border-color: transparent;
margin: 0.5em auto;
text-align: center;
box-shadow: @box-shadow;
}
// Galleries
li.gallerybox div.thumb {
border: none;
background-color: var(--thumb-bg);
}
.smwfact {
display: none;
}
// applies to mobile talk pages, and smw??
.list-header {
background-color: var(--body-mid);
color: inherit;
}
// Source editor w/o syntaxhighlight; also applies to mobile in case JS is
// turned off
.editOptions {
color: var(--text-color);
background-color: var(--sourceeditor-background-secondary);
border-color: var(--sourceeditor-border);
}
// .json pages
.mw-json {
th,
td {
border-color: var(--wikitable-border);
}
// instead of selecting `tr`, do this to avoid dealing with mw-json-* classes
td {
background: var(--wikitable-bg);
}
th {
background: var(--wikitable-header-bg);
}
}
9412be70a18fc578b51ef319fe8e1cc07a44b275
1115
1113
2024-03-24T00:51:35Z
Merds
25
less
less
/* =============================================================================
* This is the root Less file that is parsed to produce [[MediaWiki:Common.css]].
*
* These styles will be applied to all skins (desktop and mobile).
* -----------------------------------------------------------------------------
* Less documentation: <http://lesscss.org/features/>
* Gadget: <https://meta.weirdgloop.org/w/MediaWiki:Gadget-Less.js>
* Core Less JS: <https://meta.weirdgloop.org/w/MediaWiki:Gadget-Less-core.js>
* Non-standard mixins: <https://meta.weirdgloop.org/w/MediaWiki:Gadget-LessMixins.less>
* Online Less tester: <https://lesscss.org/less-preview/>
* ============================================================================= */
// ===== CSS Variables =====
@common: 'MediaWiki:Common.less';
:root {
--body-main: #feffff;
--body-light: #f2f2f2;
--body-mid: #d0bd97;
--body-dark: #e3e3e3;
--body-border: #878787;
--body-background-color: #173a4d;
--button-background: #605443;
--button-color: @white;
--button-border: #3c352a;
--button-dark: #18140c;
--button-light: #3a301d;
--sidebar: #cfc08d;
--background-text-color: #e2dbc8;
--background-link-color: #e2bd8a;
--search-box: #efeee6;
--link-color: #936039;
--redlink-color: #ba0000;
--text-color: #2F2828; /*@mine-shaft*/
--byline-color: @silver;
--subtle-color: @boulder;
--admin-blue: #332e75;
--bearcat-green: #13592e;
--awb-purple: #933b96;
--rsw-blue: #438ab6;
--osrsw-brown: #605443;
// used for gallery & thumbs
--thumb-bg: var(--body-light);
--thumb-caption-bg: var(--body-mid);
// for sourceeditor - CodeMirror and WikiEditor's that are only available on
// desktop are also here to not fragment the vars across many files
--sourceeditor-input-background: @white;
--sourceeditor-background: var(--body-light);
--sourceeditor-background-secondary: var(--body-light); // used on .editOptions
--sourceeditor-border: var(--body-mid);
--codemirror-gutter-background: var(--body-mid);
}
// ===== Imports =====
// include fonts first
@import '@{common}/mixins.less';
@import '@{common}/fonts.less'; // Font definitions and font stack definitions
@import '@{common}/variables.less'; // Less variables
@import '@{common}/elements.less'; // HTML elements
@import '@{common}/links.less'; // Link colours
// Interface
@import '@{common}/interface.less'; // MW common elements
@import '@{common}/wikitables.less'; // .wikitable class and etc
@import '@{common}/diff.less'; // Revision differences
@import '@{common}/notifications.less';
@import '@{common}/pagepreviews.less'; // Page preview popups
@import '@{common}/smw.less'; // Semantic MediaWiki
@import '@{common}/tabber.less'; // <tabber>
@import '@{common}/ooui.less'; // OOUI Customisations
@import '@{common}/visualeditor.less'; // VisualEditor
// Templates
@import '@{common}/templates.less'; // Various templates
@import '@{common}/documentation.less'; // [[Template:Documentation]]
@import '@{common}/infobox.less'; // Infobox vars
@import '@{common}/references.less'; // <references>
@import '@{common}/messagebox.less'; // Messagebox templates
// Page specific
@import '@{common}/tiles.less'; // Main page tiles
@import '@{common}/mainpage.less'; // Main page
@import '@{common}/prefs.less'; // Wiki preferences theming
@import '@{common}/specials.less'; // Special pages
// ===== Miscellaneous =====
// hide certain links in sidebar tools
#t-print,
#t-permalink {
display: none;
}
#filetoc {
border-radius: @border-radius;
background: @BODY_MID;
border-color: transparent;
margin: 0.5em auto;
text-align: center;
box-shadow: @box-shadow;
}
// Galleries
li.gallerybox div.thumb {
border: none;
background-color: var(--thumb-bg);
}
.smwfact {
display: none;
}
// applies to mobile talk pages, and smw??
.list-header {
background-color: var(--body-mid);
color: inherit;
}
// Source editor w/o syntaxhighlight; also applies to mobile in case JS is
// turned off
.editOptions {
color: var(--text-color);
background-color: var(--sourceeditor-background-secondary);
border-color: var(--sourceeditor-border);
}
// .json pages
.mw-json {
th,
td {
border-color: var(--wikitable-border);
}
// instead of selecting `tr`, do this to avoid dealing with mw-json-* classes
td {
background: var(--wikitable-bg);
}
th {
background: var(--wikitable-header-bg);
}
}
793f2999d26ef335f3178e7a9379816819e100df
Professions
0
56
1119
974
2024-03-24T01:00:13Z
Merds
25
/* Gallery */
wikitext
text/x-wiki
'''Professions''' are skills that [[player]]s can train and utilise in [[Brighter Shores]]. Most professions can either be trained by the player actively playing the game, or passively while the game is closed.
As the player progresses through the game, more professions will become available for the player to learn. Players aren't limited to once profession at a time; they can utilise multiple at once.{{CiteGeneral|url=https://www.gamesradar.com/runescape-creator-answers-our-biggest-questions-about-his-new-mmo-brighter-shores-classes-professions-monetization-and-a-ttrpg-open-world/|title=RuneScape creator answers our biggest questions about his new MMO Brighter Shores: classes, professions, monetization, and a TTRPG open world|author=Austin Wood|date=23 March 2024|accessdate=23 March 2024|archiveurl=https://archive.is/AxMwI|archivedate=23 March 2024|name=griv}}
==Passive training==
Unlike other similar MMOs, players can continue to perform certain profession-related activities while logged out of the game.
==List of professions==
{| class="wikitable"
! colspan="2" | Name !! Uses
|-
| [[File:Profession fisher.png|30px|link=Fisher]] || [[Fisher]] || Catching various [[fish]]
|-
| [[File:Profession forager.png|30px|link=Forager]] || [[Forager]] || Gathering items
|-
| || [[Chef]] || Cooking [[food]] items
|-
| || [[Woodcutter]] || Chopping down [[tree]]s
|-
| || [[Miner]] || Mining [[mineral]]s
|-
| || [[Alchemist]] || Brewing [[potion]]s
|-
| || [[Stonemason]] ||
|-
| || [[Merchant]] ||
|-
| || [[Blacksmith]] ||
|}
==Gallery==
<gallery mode="packed" heights="160">
File:Professions preview 1.jpg
File:Professions preview 2.jpg
File:Professions preview 3.jpg
</gallery>
==References==
{{Reflist}}
{{Professions}}
{{Mechanics}}
1810b84e7034b667d82a055a067aacda39d0fe86
User:Merds/Sandbox
2
652
1120
2024-03-24T01:08:51Z
Merds
25
wip
wikitext
text/x-wiki
This page contains information about the '''look of the Brighter Shores Wiki'''.
==Colours==
<div class="color-container">
<div class="color-column">
<h3>Body</h3>
<div class="color-group dark" style="background: #94866d;">
<p class="variable">--body-border</p>
<p class="hexcode">#94866d</p>
</div>
<div class="color-group" style="background: #b8a282;">
<p class="variable">--body-dark</p>
<p class="hexcode">#b8a282</p>
</div>
<div class="color-group" style="background: #d0bd97;">
<p class="variable">--body-mid</p>
<p class="hexcode">#d0bd97</p>
</div>
<div class="color-group" style="background: #d8ccb4;">
<p class="variable">--body-light</p>
<p class="hexcode">#d8ccb4</p>
</div>
<div class="color-group" style="background: #e2dbc8;">
<p class="variable">--body-main</p>
<p class="hexcode">#e2dbc8</p>
</div>
<div class="color-group" style="background: #c0a886;">
<p class="variable">--body-background-color</p>
<p class="hexcode">#c0a886</p>
</div>
</div>
349f44ca660e4c2a853033aa584e7ca39750b690
MediaWiki:Common.less/interface.less
8
16
1121
25
2024-03-24T01:28:06Z
Merds
25
less
less
/* =====================
Common MediaWiki
elements inside .mw-body
===================== */
:root {
--errorbox-bg: @bridesmaid;
--errorbox-border: @flamingo;
--warningbox-bg: @half-dutch;
--warningbox-border: @supernova;
--successbox-bg: @frost;
--successbox-border: @lima;
}
// core mw messagebox
.mw-message-box-error, .errorbox,
.mw-message-box-warning, .warningbox,
.mw-message-box-success, .successbox,
// anon talk page message alert
.usermessage {
box-shadow: @box-shadow;
}
.mw-message-box-error, .errorbox {
background-color: var(--errorbox-bg);
border-color: var(--errorbox-border);
}
.mw-message-box-warning, .warningbox,
.usermessage {
background-color: var(--warningbox-bg);
border-color: var(--warningbox-border);
}
.mw-message-box-success, .successbox {
background-color: var(--successbox-bg);
border-color: var(--successbox-border);
}
.catlinks {
background: var(--body-light);
border: 1px solid var(--body-dark);
padding: 8px 15px;
box-shadow: @box-shadow;
li {
border-color: var(--body-mid);
}
}
// checkered background in file pages
.filehistory a img,
#file img {
background: url("data:image/svg+xml,%3C%3Fxml version='1.0' encoding='UTF-8'%3F%3E%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16'%3E%3Cpath d='M0 0h8v16h8V8H0z' opacity='.13'/%3E%3C/svg%3E") repeat;
}
#file img:hover {
background: none;
}
// Prevents undesired background showing when next to expanded toc
.mw-highlight {
background: none;
.linenos {
background-color: var(--mw-code-background-color);
// line number
color: var(--byline-color);
}
// line number hover
a:hover .linenos,
.hll a .linenos {
color: var(--text-color);
}
}
.mw-content-ltr.mw-highlight-lines pre,
.mw-content-ltr.content .mw-highlight-lines pre {
box-shadow: inset 2.75em 0 0 var(--mw-code-background-color);
}
// page history
#pagehistory {
ul {
list-style: none;
margin: 0;
}
li {
border: 1px solid transparent;
padding: 1px 10px;
margin: 2px 0;
&.selected {
background-color: var(--body-light);
color: inherit;
border: 1px dashed var(--body-border);
outline: none;
}
}
}
// Sticky compare rev
#mw-history-compare > div:first-of-type {
position: -webkit-sticky;
position: sticky;
top: 0;
background-color: var(--body-main);
border-bottom: 1px solid @BODY_DARK;
padding: .25em 0;
.wgl-stickyheader & {
top: 2.5rem; // = height of stickyheader
}
}
// auto section edit summaries
.autocomment,
.autocomment a,
.autocomment a:visited {
color: var(--link-color);
}
// revdeleted logs: "(log details removed)"
li span.deleted,
span.history-deleted {
color: var(--byline-color);
}
// redlinked contribs page for users without edits
.mw-usertoollinks-contribs-no-edits,
.mw-usertoollinks-contribs-no-edits:visited {
color: var(--redlink-color);
}
.CategoryTreeToggle {
color: var(--link-color);
}
/* --------------------------------------
fix section heading being hidden
underneath sticky header
-------------------------------------- */
// technique from <https://css-tricks.com/hash-tag-links-padding/>
body.wgl-stickyheader.action-view .mw-headline:target::before {
display: block;
content: '';
margin-top: -3rem;
height: 3rem;
visibility: hidden;
pointer-events: none;
}
/* ------------------------
MultimediaViewer
------------------------*/
// main lightbox
.mw-mmv-post-image {
color: var(--text-color);
background-color: var(--body-main);
}
// metadata panel
.mw-mmv-image-metadata {
border-top-color: var(--body-mid);
background-color: var(--body-light);
}
// download box and etc
.mw-mmv-dialog,
.mw-mmv-dialog .mw-mmv-dialog-down-arrow,
.mw-mmv-options-dialog .mw-mmv-dialog-down-arrow {
background-color: var(--body-light);
box-shadow: none;
}
// activation box header
.mw-mmv-options-enable-alert {
background-color: var(--body-light);
color: var(--text-color);
}
// use consistent text color for all for simplicity
.mw-mmv-options-dialog-header,
.mw-mmv-options-text-header,
.mw-mmv-options-text-body,
// activation box
.mw-mmv-options-enable-alert,
// deactivation box
.mw-mmv-options-dialog .mw-mmv-disable-confirmation .mw-mmv-options-dialog-header,
.mw-mmv-options-dialog .mw-mmv-disable-confirmation .mw-mmv-options-text-header {
color: var(--text-color);
}
/* ------------------------
RevisionSlider
------------------------*/
.mw-revslider-container {
border-color: var(--sidebar);
}
.mw-revslider-slider-wrapper {
border-top-color: var(--sidebar);
}
/* ------------------------
mediawiki.ui
------------------------*/
.mw-ui {
&-button {
background-color: var(--ooui-normal);
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
&:not(:disabled) {
&:hover,
&:active {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
}
&:focus {
color: var(--ooui-text);
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent),inset 0 0 0 2px #fff;
}
// there's an override for it
&:visited {
color: var(--ooui-text);
}
}
&.mw-ui-progressive {
&:not(:disabled) {
background-color: var(--ooui-progressive);
color: #fff;
border-color: var(--ooui-progressive);
&:hover {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
}
&:focus {
box-shadow: inset 0 0 0 1px var(--ooui-accent),inset 0 0 0 2px #fff;
}
&:active,
&.is-on {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
box-shadow: none;
}
}
}
}
// a lot of these need to be redefined since they have the same specificity
// as the above
&-button&-destructive:not( :disabled ) {
color: #fff;
}
&-button&-quiet,
&-button&-quiet&-progressive,
&-button&-quiet&-destructive {
// background-color: transparent;
color: var(--text-color);
}
input[type='checkbox']:hover + &-button&-quiet,
input[type='checkbox']:hover + &-button&-quiet&-progressive,
input[type='checkbox']:hover + &-button&-quiet&-destructive,
&-button&-quiet:hover,
&-button&-quiet&-progressive:hover,
&-button&-quiet&-destructive:hover {
background-color: rgba(0,24,73,0.02745098);
color: var(--text-color);
border-color: transparent
}
input[type='checkbox']:focus + &-button&-quiet,
input[type='checkbox']:focus + &-button&-quiet&-progressive,
input[type='checkbox']:focus + &-button&-quiet&-destructive,
&-button&-quiet:focus,
&-button&-quiet&-progressive:focus,
&-button&-quiet&-destructive:focus {
color: var(--text-color);
// border-color: #36c;
// box-shadow: inset 0 0 0 1px #36c,inset 0 0 0 2px #fff
}
input[type='checkbox']:active + &-button&-quiet,
input[type='checkbox']:active + &-button&-quiet&-progressive,
input[type='checkbox']:active + &-button&-quiet&-destructive,
&-button&-quiet:active,
&-button&-quiet&-progressive:active,
&-button&-quiet&-destructive:active {
background-color: rgba(0,36,73,0.08235294);
color: var(--text-color);
border-color: #72777d;
// box-shadow: none
}
&-input {
background-color: var(--ooui-input);
color: var(--text-color);
border-color: var(--ooui-input-border);
&:hover {
border-color: var(--ooui-input-border--hover);
}
&::placeholder {
color: var(--byline-color);
}
}
}
/* ------------------------
Redirects
------------------------*/
// convert to mask
.mw-content-ltr .redirectText li {
&:first-child {
padding: 0;
background: 0;
&::before {
content:'';
background: currentcolor;
.mask("filepath://Redirect-arrow.svg");
display: inline-block;
width: 47px;
height: 20px;
}
}
}
/* -------------------------------------------------------------
HEADER bits because I'm not sure where I can put this
------------------------------------------------------------ */
/* Search bar
.vector-search-box-inner {
background: var(--body-main);
box-shadow: inset 0 -7px 7px -7px rgba(0,0,0,0.15);
}
/* "More" button
.vector-menu-dropdown {
.vector-menu-heading {
color: #937040;
&:hover {
color: #937040;
}
&:focus {
color: #937040;
}
}
}
877b1aee0f1faca27078ea956a4947c0ac4ce69e
1122
1121
2024-03-24T01:28:32Z
Merds
25
less
less
/* =====================
Common MediaWiki
elements inside .mw-body
===================== */
:root {
--errorbox-bg: @bridesmaid;
--errorbox-border: @flamingo;
--warningbox-bg: @half-dutch;
--warningbox-border: @supernova;
--successbox-bg: @frost;
--successbox-border: @lima;
}
// core mw messagebox
.mw-message-box-error, .errorbox,
.mw-message-box-warning, .warningbox,
.mw-message-box-success, .successbox,
// anon talk page message alert
.usermessage {
box-shadow: @box-shadow;
}
.mw-message-box-error, .errorbox {
background-color: var(--errorbox-bg);
border-color: var(--errorbox-border);
}
.mw-message-box-warning, .warningbox,
.usermessage {
background-color: var(--warningbox-bg);
border-color: var(--warningbox-border);
}
.mw-message-box-success, .successbox {
background-color: var(--successbox-bg);
border-color: var(--successbox-border);
}
.catlinks {
background: var(--body-light);
border: 1px solid var(--body-dark);
padding: 8px 15px;
box-shadow: @box-shadow;
li {
border-color: var(--body-mid);
}
}
// checkered background in file pages
.filehistory a img,
#file img {
background: url("data:image/svg+xml,%3C%3Fxml version='1.0' encoding='UTF-8'%3F%3E%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16'%3E%3Cpath d='M0 0h8v16h8V8H0z' opacity='.13'/%3E%3C/svg%3E") repeat;
}
#file img:hover {
background: none;
}
// Prevents undesired background showing when next to expanded toc
.mw-highlight {
background: none;
.linenos {
background-color: var(--mw-code-background-color);
// line number
color: var(--byline-color);
}
// line number hover
a:hover .linenos,
.hll a .linenos {
color: var(--text-color);
}
}
.mw-content-ltr.mw-highlight-lines pre,
.mw-content-ltr.content .mw-highlight-lines pre {
box-shadow: inset 2.75em 0 0 var(--mw-code-background-color);
}
// page history
#pagehistory {
ul {
list-style: none;
margin: 0;
}
li {
border: 1px solid transparent;
padding: 1px 10px;
margin: 2px 0;
&.selected {
background-color: var(--body-light);
color: inherit;
border: 1px dashed var(--body-border);
outline: none;
}
}
}
// Sticky compare rev
#mw-history-compare > div:first-of-type {
position: -webkit-sticky;
position: sticky;
top: 0;
background-color: var(--body-main);
border-bottom: 1px solid @BODY_DARK;
padding: .25em 0;
.wgl-stickyheader & {
top: 2.5rem; // = height of stickyheader
}
}
// auto section edit summaries
.autocomment,
.autocomment a,
.autocomment a:visited {
color: var(--link-color);
}
// revdeleted logs: "(log details removed)"
li span.deleted,
span.history-deleted {
color: var(--byline-color);
}
// redlinked contribs page for users without edits
.mw-usertoollinks-contribs-no-edits,
.mw-usertoollinks-contribs-no-edits:visited {
color: var(--redlink-color);
}
.CategoryTreeToggle {
color: var(--link-color);
}
/* --------------------------------------
fix section heading being hidden
underneath sticky header
-------------------------------------- */
// technique from <https://css-tricks.com/hash-tag-links-padding/>
body.wgl-stickyheader.action-view .mw-headline:target::before {
display: block;
content: '';
margin-top: -3rem;
height: 3rem;
visibility: hidden;
pointer-events: none;
}
/* ------------------------
MultimediaViewer
------------------------*/
// main lightbox
.mw-mmv-post-image {
color: var(--text-color);
background-color: var(--body-main);
}
// metadata panel
.mw-mmv-image-metadata {
border-top-color: var(--body-mid);
background-color: var(--body-light);
}
// download box and etc
.mw-mmv-dialog,
.mw-mmv-dialog .mw-mmv-dialog-down-arrow,
.mw-mmv-options-dialog .mw-mmv-dialog-down-arrow {
background-color: var(--body-light);
box-shadow: none;
}
// activation box header
.mw-mmv-options-enable-alert {
background-color: var(--body-light);
color: var(--text-color);
}
// use consistent text color for all for simplicity
.mw-mmv-options-dialog-header,
.mw-mmv-options-text-header,
.mw-mmv-options-text-body,
// activation box
.mw-mmv-options-enable-alert,
// deactivation box
.mw-mmv-options-dialog .mw-mmv-disable-confirmation .mw-mmv-options-dialog-header,
.mw-mmv-options-dialog .mw-mmv-disable-confirmation .mw-mmv-options-text-header {
color: var(--text-color);
}
/* ------------------------
RevisionSlider
------------------------*/
.mw-revslider-container {
border-color: var(--sidebar);
}
.mw-revslider-slider-wrapper {
border-top-color: var(--sidebar);
}
/* ------------------------
mediawiki.ui
------------------------*/
.mw-ui {
&-button {
background-color: var(--ooui-normal);
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
&:not(:disabled) {
&:hover,
&:active {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
}
&:focus {
color: var(--ooui-text);
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent),inset 0 0 0 2px #fff;
}
// there's an override for it
&:visited {
color: var(--ooui-text);
}
}
&.mw-ui-progressive {
&:not(:disabled) {
background-color: var(--ooui-progressive);
color: #fff;
border-color: var(--ooui-progressive);
&:hover {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
}
&:focus {
box-shadow: inset 0 0 0 1px var(--ooui-accent),inset 0 0 0 2px #fff;
}
&:active,
&.is-on {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
box-shadow: none;
}
}
}
}
// a lot of these need to be redefined since they have the same specificity
// as the above
&-button&-destructive:not( :disabled ) {
color: #fff;
}
&-button&-quiet,
&-button&-quiet&-progressive,
&-button&-quiet&-destructive {
// background-color: transparent;
color: var(--text-color);
}
input[type='checkbox']:hover + &-button&-quiet,
input[type='checkbox']:hover + &-button&-quiet&-progressive,
input[type='checkbox']:hover + &-button&-quiet&-destructive,
&-button&-quiet:hover,
&-button&-quiet&-progressive:hover,
&-button&-quiet&-destructive:hover {
background-color: rgba(0,24,73,0.02745098);
color: var(--text-color);
border-color: transparent
}
input[type='checkbox']:focus + &-button&-quiet,
input[type='checkbox']:focus + &-button&-quiet&-progressive,
input[type='checkbox']:focus + &-button&-quiet&-destructive,
&-button&-quiet:focus,
&-button&-quiet&-progressive:focus,
&-button&-quiet&-destructive:focus {
color: var(--text-color);
// border-color: #36c;
// box-shadow: inset 0 0 0 1px #36c,inset 0 0 0 2px #fff
}
input[type='checkbox']:active + &-button&-quiet,
input[type='checkbox']:active + &-button&-quiet&-progressive,
input[type='checkbox']:active + &-button&-quiet&-destructive,
&-button&-quiet:active,
&-button&-quiet&-progressive:active,
&-button&-quiet&-destructive:active {
background-color: rgba(0,36,73,0.08235294);
color: var(--text-color);
border-color: #72777d;
// box-shadow: none
}
&-input {
background-color: var(--ooui-input);
color: var(--text-color);
border-color: var(--ooui-input-border);
&:hover {
border-color: var(--ooui-input-border--hover);
}
&::placeholder {
color: var(--byline-color);
}
}
}
/* ------------------------
Redirects
------------------------*/
// convert to mask
.mw-content-ltr .redirectText li {
&:first-child {
padding: 0;
background: 0;
&::before {
content:'';
background: currentcolor;
.mask("filepath://Redirect-arrow.svg");
display: inline-block;
width: 47px;
height: 20px;
}
}
}
/* -------------------------------------------------------------
HEADER bits because I'm not sure where I can put this
------------------------------------------------------------ */
/* Search bar */
.vector-search-box-inner {
background: var(--body-main);
box-shadow: inset 0 -7px 7px -7px rgba(0,0,0,0.15);
}
/* "More" button */
.vector-menu-dropdown {
.vector-menu-heading {
color: #937040;
&:hover {
color: #937040;
}
&:focus {
color: #937040;
}
}
}
925eac044e7ed52db9e5df19cc2298e8dd7e53cc
1124
1122
2024-03-24T01:30:02Z
Merds
25
less
less
/* =====================
Common MediaWiki
elements inside .mw-body
===================== */
:root {
--errorbox-bg: @bridesmaid;
--errorbox-border: @flamingo;
--warningbox-bg: @half-dutch;
--warningbox-border: @supernova;
--successbox-bg: @frost;
--successbox-border: @lima;
}
// core mw messagebox
.mw-message-box-error, .errorbox,
.mw-message-box-warning, .warningbox,
.mw-message-box-success, .successbox,
// anon talk page message alert
.usermessage {
box-shadow: @box-shadow;
}
.mw-message-box-error, .errorbox {
background-color: var(--errorbox-bg);
border-color: var(--errorbox-border);
}
.mw-message-box-warning, .warningbox,
.usermessage {
background-color: var(--warningbox-bg);
border-color: var(--warningbox-border);
}
.mw-message-box-success, .successbox {
background-color: var(--successbox-bg);
border-color: var(--successbox-border);
}
.catlinks {
background: var(--body-light);
border: 1px solid var(--body-dark);
padding: 8px 15px;
box-shadow: @box-shadow;
li {
border-color: var(--body-mid);
}
}
// checkered background in file pages
.filehistory a img,
#file img {
background: url("data:image/svg+xml,%3C%3Fxml version='1.0' encoding='UTF-8'%3F%3E%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16'%3E%3Cpath d='M0 0h8v16h8V8H0z' opacity='.13'/%3E%3C/svg%3E") repeat;
}
#file img:hover {
background: none;
}
// Prevents undesired background showing when next to expanded toc
.mw-highlight {
background: none;
.linenos {
background-color: var(--mw-code-background-color);
// line number
color: var(--byline-color);
}
// line number hover
a:hover .linenos,
.hll a .linenos {
color: var(--text-color);
}
}
.mw-content-ltr.mw-highlight-lines pre,
.mw-content-ltr.content .mw-highlight-lines pre {
box-shadow: inset 2.75em 0 0 var(--mw-code-background-color);
}
// page history
#pagehistory {
ul {
list-style: none;
margin: 0;
}
li {
border: 1px solid transparent;
padding: 1px 10px;
margin: 2px 0;
&.selected {
background-color: var(--body-light);
color: inherit;
border: 1px dashed var(--body-border);
outline: none;
}
}
}
// Sticky compare rev
#mw-history-compare > div:first-of-type {
position: -webkit-sticky;
position: sticky;
top: 0;
background-color: var(--body-main);
border-bottom: 1px solid @BODY_DARK;
padding: .25em 0;
.wgl-stickyheader & {
top: 2.5rem; // = height of stickyheader
}
}
// auto section edit summaries
.autocomment,
.autocomment a,
.autocomment a:visited {
color: var(--link-color);
}
// revdeleted logs: "(log details removed)"
li span.deleted,
span.history-deleted {
color: var(--byline-color);
}
// redlinked contribs page for users without edits
.mw-usertoollinks-contribs-no-edits,
.mw-usertoollinks-contribs-no-edits:visited {
color: var(--redlink-color);
}
.CategoryTreeToggle {
color: var(--link-color);
}
/* --------------------------------------
fix section heading being hidden
underneath sticky header
-------------------------------------- */
// technique from <https://css-tricks.com/hash-tag-links-padding/>
body.wgl-stickyheader.action-view .mw-headline:target::before {
display: block;
content: '';
margin-top: -3rem;
height: 3rem;
visibility: hidden;
pointer-events: none;
}
/* ------------------------
MultimediaViewer
------------------------*/
// main lightbox
.mw-mmv-post-image {
color: var(--text-color);
background-color: var(--body-main);
}
// metadata panel
.mw-mmv-image-metadata {
border-top-color: var(--body-mid);
background-color: var(--body-light);
}
// download box and etc
.mw-mmv-dialog,
.mw-mmv-dialog .mw-mmv-dialog-down-arrow,
.mw-mmv-options-dialog .mw-mmv-dialog-down-arrow {
background-color: var(--body-light);
box-shadow: none;
}
// activation box header
.mw-mmv-options-enable-alert {
background-color: var(--body-light);
color: var(--text-color);
}
// use consistent text color for all for simplicity
.mw-mmv-options-dialog-header,
.mw-mmv-options-text-header,
.mw-mmv-options-text-body,
// activation box
.mw-mmv-options-enable-alert,
// deactivation box
.mw-mmv-options-dialog .mw-mmv-disable-confirmation .mw-mmv-options-dialog-header,
.mw-mmv-options-dialog .mw-mmv-disable-confirmation .mw-mmv-options-text-header {
color: var(--text-color);
}
/* ------------------------
RevisionSlider
------------------------*/
.mw-revslider-container {
border-color: var(--sidebar);
}
.mw-revslider-slider-wrapper {
border-top-color: var(--sidebar);
}
/* ------------------------
mediawiki.ui
------------------------*/
.mw-ui {
&-button {
background-color: var(--ooui-normal);
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
&:not(:disabled) {
&:hover,
&:active {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
}
&:focus {
color: var(--ooui-text);
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent),inset 0 0 0 2px #fff;
}
// there's an override for it
&:visited {
color: var(--ooui-text);
}
}
&.mw-ui-progressive {
&:not(:disabled) {
background-color: var(--ooui-progressive);
color: #fff;
border-color: var(--ooui-progressive);
&:hover {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
}
&:focus {
box-shadow: inset 0 0 0 1px var(--ooui-accent),inset 0 0 0 2px #fff;
}
&:active,
&.is-on {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
box-shadow: none;
}
}
}
}
// a lot of these need to be redefined since they have the same specificity
// as the above
&-button&-destructive:not( :disabled ) {
color: #fff;
}
&-button&-quiet,
&-button&-quiet&-progressive,
&-button&-quiet&-destructive {
// background-color: transparent;
color: var(--text-color);
}
input[type='checkbox']:hover + &-button&-quiet,
input[type='checkbox']:hover + &-button&-quiet&-progressive,
input[type='checkbox']:hover + &-button&-quiet&-destructive,
&-button&-quiet:hover,
&-button&-quiet&-progressive:hover,
&-button&-quiet&-destructive:hover {
background-color: rgba(0,24,73,0.02745098);
color: var(--text-color);
border-color: transparent
}
input[type='checkbox']:focus + &-button&-quiet,
input[type='checkbox']:focus + &-button&-quiet&-progressive,
input[type='checkbox']:focus + &-button&-quiet&-destructive,
&-button&-quiet:focus,
&-button&-quiet&-progressive:focus,
&-button&-quiet&-destructive:focus {
color: var(--text-color);
// border-color: #36c;
// box-shadow: inset 0 0 0 1px #36c,inset 0 0 0 2px #fff
}
input[type='checkbox']:active + &-button&-quiet,
input[type='checkbox']:active + &-button&-quiet&-progressive,
input[type='checkbox']:active + &-button&-quiet&-destructive,
&-button&-quiet:active,
&-button&-quiet&-progressive:active,
&-button&-quiet&-destructive:active {
background-color: rgba(0,36,73,0.08235294);
color: var(--text-color);
border-color: #72777d;
// box-shadow: none
}
&-input {
background-color: var(--ooui-input);
color: var(--text-color);
border-color: var(--ooui-input-border);
&:hover {
border-color: var(--ooui-input-border--hover);
}
&::placeholder {
color: var(--byline-color);
}
}
}
/* ------------------------
Redirects
------------------------*/
// convert to mask
.mw-content-ltr .redirectText li {
&:first-child {
padding: 0;
background: 0;
&::before {
content:'';
background: currentcolor;
.mask("filepath://Redirect-arrow.svg");
display: inline-block;
width: 47px;
height: 20px;
}
}
}
/* -------------------------------------------------------------
HEADER bits because I'm not sure where I can put this
------------------------------------------------------------ */
/* Search bar */
.vector-search-box-inner {
background: var(--body-main) !important;
box-shadow: inset 0 -7px 7px -7px rgba(0,0,0,0.15) !important;
}
/* "More" button */
.vector-menu-dropdown {
.vector-menu-heading {
color: #937040 !important;
&:hover {
color: #937040 !important;
}
&:focus {
color: #937040 !important;
}
}
}
17669e3efd89233d1cab498dccb2ffdf4e6a4044
MediaWiki:Minerva.less/mainpage.less
8
421
1128
676
2024-03-24T01:39:47Z
Merds
25
less
less
/* ===================
MAIN PAGE
=================== */
// preview the mobile main page at <https://brightershoreswiki.org/?useformat=mobile>
/* ===================
mixins
=================== */
.uppercase-heading(@text-color: var(--byline-color)) {
color: @text-color;
font-weight: bold;
text-transform: uppercase;
letter-spacing: .025em;
}
@keyframes slide-up {
from {
opacity: 0;
transform: translateY(1rem);
}
to {
opacity: 1;
transform: translateY(0);
}
}
/* ====================
general styles
==================== */
.mainpage-header {
margin: 2em 1em 0; // reduce margins
.header-intro {
@media only screen and (max-width: @width-breakpoint-desktop) {
h1 {
text-align: center;
font-size: 1.8em;
}
p {
font-size: 1em; // reset from 1.1m
}
}
}
}
.mainpage-body {
.tile-row {
// common does width: 100%
width: inherit;
}
}
.mainpage-left {
.tile {
padding: 2.5em 1.75em 2em;
h2 {
padding: 0;
margin: .65em .5em;
}
}
.tile-halves {
h2 {
padding: 0;
margin: .65em .5em;
}
}
}
/* =============================
section-specific styles
============================= */
/* --------------------
recent updates
-------------------- */
.mainpage-recent-updates {
padding: 1.5em 1em 2.5em;
&::before {
content: 'Recent updates';
display: block;
margin-left: 1.5em;
.uppercase-heading();
grid-column: ~"1 / 4";
}
.tile-halves {
display: inline-block;
width: 100%;
white-space: initial;
flex: unset;
&:nth-child(1) {
animation: .9s .2s both slide-up;
}
&:nth-child(2) {
animation: .9s .4s both slide-up;
}
&:nth-child(3) {
animation: .9s .6s both slide-up;
}
}
.tile-top {
height: 9em;
overflow: hidden;
}
.tile-bottom {
padding-bottom: .5rem;
}
.byline {
margin: 0;
& + h2 {
margin: .025em 0 0;
padding: 0;
}
}
// center recent updates for smaller widths
@media only screen and (max-width: @width-breakpoint-tablet) {
&::before {
text-align: center;
margin: 0;
grid-column: auto;
}
}
}
/* --------------------
wiki contents
-------------------- */
.mainpage-contents {
background: var(--body-mid);
padding: 55px 1em 2em 2.5em;
overflow-x: auto;
grid-template-columns: repeat(6, 1fr) !important; // shouldnt break into two
position: relative;
scroll-snap-align: center;
&::before {
content: 'Explore';
margin: 1em;
position: absolute;
top: 0;
.uppercase-heading(@text-color: inherit);
grid-column: ~"1 / 6";
}
.tile-halves {
border: none;
background: none;
box-shadow: none;
width: 200px;
}
.tile-top {
padding: 0;
height: initial;
}
.tile-bottom {
border: none;
}
h2 {
width: 100%;
}
}
/* --------------------
skills
-------------------- */
.mainpage-skills .tile-top ul {
@media only screen and (max-width: @width-breakpoint-desktop) {
margin: 0;
}
}
/* --------------------
wiki news
-------------------- */
.mainpage-wikinews {
&::before {
content: 'From the wiki';
margin-left: .75em;
.uppercase-heading();
}
}
/* --------------------
social
-------------------- */
.mainpage-social {
border: none;
margin-bottom: 0;
.tile-top {
display: flex;
align-items: center;
justify-content: center;
padding: 1em 2em;
height: 70px; // not in em because the server icon is a fixed size
.social-icon {
float: left;
margin: 0 1em 0 -1em;
width: 60px;
text-align: center;
}
.social-header {
color: @white;
font-weight: bold;
font-size: 1.25em;
margin: 0;
}
.social-tagline {
color: @mp-text-light;
margin: 0;
}
}
.tile-bottom {
border: none;
padding: 1em 2em;
p {
.uppercase-heading();
color: @white;
font-size: .9em;
text-align: center;
margin: 0;
}
}
// Discord colors
&.mainpage-discord {
.tile-top {
background: @discord-bg;
}
.tile-bottom {
background: @discord-bg-dark;
}
}
// X (Twitter) colors
&.mainpage-twitter {
.tile-top {
background: @twitter-bg;
}
.tile-bottom {
background: @twitter-bg-dark;
}
}
}
6e6aeb9af480fd103100d3a04336c453e6b49820
1129
1128
2024-03-24T01:43:03Z
Merds
25
less
less
/* ===================
MAIN PAGE
=================== */
// preview the mobile main page at <https://brightershoreswiki.org/?useformat=mobile>
/* ===================
variables
=================== */
@mp-text-light: fade( @white, 90% );
@mp-gutter-width: .9rem;
/* ===================
mixins
=================== */
.uppercase-heading(@text-color: var(--byline-color)) {
color: @text-color;
font-weight: bold;
text-transform: uppercase;
letter-spacing: .025em;
}
@keyframes slide-up {
from {
opacity: 0;
transform: translateY(1rem);
}
to {
opacity: 1;
transform: translateY(0);
}
}
/* ====================
general styles
==================== */
.mainpage-header {
margin: 2em 1em 0; // reduce margins
.header-intro {
@media only screen and (max-width: @width-breakpoint-desktop) {
h1 {
text-align: center;
font-size: 1.8em;
}
p {
font-size: 1em; // reset from 1.1m
}
}
}
}
.mainpage-body {
.tile-row {
// common does width: 100%
width: inherit;
}
}
.mainpage-left {
.tile {
padding: 2.5em 1.75em 2em;
h2 {
padding: 0;
margin: .65em .5em;
}
}
.tile-halves {
h2 {
padding: 0;
margin: .65em .5em;
}
}
}
/* =============================
section-specific styles
============================= */
/* --------------------
recent updates
-------------------- */
.mainpage-recent-updates {
padding: 1.5em 1em 2.5em;
&::before {
content: 'Recent updates';
display: block;
margin-left: 1.5em;
.uppercase-heading();
grid-column: ~"1 / 4";
}
.tile-halves {
display: inline-block;
width: 100%;
white-space: initial;
flex: unset;
&:nth-child(1) {
animation: .9s .2s both slide-up;
}
&:nth-child(2) {
animation: .9s .4s both slide-up;
}
&:nth-child(3) {
animation: .9s .6s both slide-up;
}
}
.tile-top {
height: 9em;
overflow: hidden;
}
.tile-bottom {
padding-bottom: .5rem;
}
.byline {
margin: 0;
& + h2 {
margin: .025em 0 0;
padding: 0;
}
}
// center recent updates for smaller widths
@media only screen and (max-width: @width-breakpoint-tablet) {
&::before {
text-align: center;
margin: 0;
grid-column: auto;
}
}
}
/* --------------------
wiki contents
-------------------- */
.mainpage-contents {
background: var(--body-mid);
padding: 55px 1em 2em 2.5em;
overflow-x: auto;
grid-template-columns: repeat(6, 1fr) !important; // shouldnt break into two
position: relative;
scroll-snap-align: center;
&::before {
content: 'Explore';
margin: 1em;
position: absolute;
top: 0;
.uppercase-heading(@text-color: inherit);
grid-column: ~"1 / 6";
}
.tile-halves {
border: none;
background: none;
box-shadow: none;
width: 200px;
}
.tile-top {
padding: 0;
height: initial;
}
.tile-bottom {
border: none;
}
h2 {
width: 100%;
}
}
/* --------------------
skills
-------------------- */
.mainpage-skills .tile-top ul {
@media only screen and (max-width: @width-breakpoint-desktop) {
margin: 0;
}
}
/* --------------------
wiki news
-------------------- */
.mainpage-wikinews {
&::before {
content: 'From the wiki';
margin-left: .75em;
.uppercase-heading();
}
}
/* --------------------
social
-------------------- */
.mainpage-social {
border: none;
margin-bottom: 0;
.tile-top {
display: flex;
align-items: center;
justify-content: center;
padding: 1em 2em;
height: 70px; // not in em because the server icon is a fixed size
.social-icon {
float: left;
margin: 0 1em 0 -1em;
width: 60px;
text-align: center;
}
.social-header {
color: @white;
font-weight: bold;
font-size: 1.25em;
margin: 0;
}
.social-tagline {
color: @mp-text-light;
margin: 0;
}
}
.tile-bottom {
border: none;
padding: 1em 2em;
p {
.uppercase-heading();
color: @white;
font-size: .9em;
text-align: center;
margin: 0;
}
}
// Discord colors
&.mainpage-discord {
.tile-top {
background: @discord-bg;
}
.tile-bottom {
background: @discord-bg-dark;
}
}
// X (Twitter) colors
&.mainpage-twitter {
.tile-top {
background: @twitter-bg;
}
.tile-bottom {
background: @twitter-bg-dark;
}
}
}
78303172e7876b3dfd319d550a78b5384e2a5fef
1131
1129
2024-03-24T01:55:03Z
Merds
25
less
less
/* ===================
MAIN PAGE
=================== */
// preview the mobile main page at <https://brightershoreswiki.org/?useformat=mobile>
/* ===================
variables
=================== */
@mp-text-light: fade( @white, 90% );
@mp-gutter-width: .9rem;
/* ===================
mixins
=================== */
.uppercase-heading(@text-color: var(--byline-color)) {
color: @text-color;
font-weight: bold;
text-transform: uppercase;
letter-spacing: .025em;
}
@keyframes slide-up {
from {
opacity: 0;
transform: translateY(1rem);
}
to {
opacity: 1;
transform: translateY(0);
}
}
/* ====================
general styles
==================== */
.mainpage-header {
margin: 2em 1em 0; // reduce margins
.header-intro {
@media only screen and (max-width: @width-breakpoint-desktop) {
h1 {
text-align: center;
font-size: 1.8em;
}
p {
font-size: 1em; // reset from 1.1m
}
}
}
}
.mainpage-body {
.tile-row {
// common does width: 100%
width: inherit;
}
}
.mainpage-left {
.tile {
padding: 2.5em 1.75em 2em;
h2 {
padding: 0;
margin: .65em .5em;
}
}
.tile-halves {
h2 {
padding: 0;
margin: .65em .5em;
}
}
}
/* =============================
section-specific styles
============================= */
/* --------------------
recent updates
-------------------- */
.mainpage-recent-updates {
padding: 1.5em 1em 2.5em;
&::before {
content: 'Recent updates';
display: block;
margin-left: 1.5em;
.uppercase-heading();
grid-column: ~"1 / 4";
}
.tile-halves {
display: inline-block;
width: 100%;
white-space: initial;
flex: unset;
&:nth-child(1) {
animation: .9s .2s both slide-up;
}
&:nth-child(2) {
animation: .9s .4s both slide-up;
}
&:nth-child(3) {
animation: .9s .6s both slide-up;
}
}
.tile-top {
height: 9em;
overflow: hidden;
}
.tile-bottom {
padding-bottom: .5rem;
}
.byline {
margin: 0;
& + h2 {
margin: .025em 0 0;
padding: 0;
}
}
// center recent updates for smaller widths
@media only screen and (max-width: @width-breakpoint-tablet) {
&::before {
text-align: center;
margin: 0;
grid-column: auto;
}
}
}
/* --------------------
wiki contents
-------------------- */
.mainpage-contents {
background: var(--body-mid);
padding: 55px 1em 2em 2.5em;
overflow-x: auto;
grid-template-columns: repeat(6, 1fr) !important; // shouldnt break into two
position: relative;
scroll-snap-align: center;
&::before {
content: 'Explore';
margin: 1em;
position: absolute;
top: 0;
.uppercase-heading(@text-color: inherit);
grid-column: ~"1 / 6";
}
.tile-halves {
border: none;
background: none;
box-shadow: none;
width: 200px;
}
.tile-top {
padding: 0;
height: initial;
}
.tile-bottom {
border: none;
}
h2 {
width: 100%;
}
}
/* --------------------
skills
-------------------- */
.mainpage-skills .tile-top ul {
@media only screen and (max-width: @width-breakpoint-desktop) {
margin: 0;
}
}
/* --------------------
wiki news
-------------------- */
.mainpage-wikinews {
&::before {
content: 'From the wiki';
margin-left: .75em;
.uppercase-heading();
}
}
/* --------------------
social
-------------------- */
.mainpage-social {
border: none;
margin-bottom: 0;
.tile-top {
display: flex;
align-items: center;
justify-content: center;
padding: 1em 2em;
min-height: 70px; // not in em because the server icon is a fixed size
.social-icon {
float: left;
margin: 0 1em 0 -1em;
width: 60px;
text-align: center;
}
.social-header {
color: @white;
font-weight: bold;
font-size: 1.25em;
margin: 0;
}
.social-tagline {
color: @mp-text-light;
margin: 0;
}
}
.tile-bottom {
border: none;
padding: 1em 2em;
p {
.uppercase-heading();
color: @white;
font-size: .9em;
text-align: center;
margin: 0;
}
}
// Discord colors
&.mainpage-discord {
.tile-top {
background: @discord-bg;
}
.tile-bottom {
background: @discord-bg-dark;
}
}
// X (Twitter) colors
&.mainpage-twitter {
.tile-top {
background: @twitter-bg;
}
.tile-bottom {
background: @twitter-bg-dark;
}
}
}
4aa36a6df90433314d82b24c6726c9ae8b1872a5
MediaWiki:Minerva.css
8
422
1130
677
2024-03-24T01:43:08Z
Merds
25
Updating CSS from [[MediaWiki:Minerva.less]]
css
text/css
/* <pre> */
body {
font-family: system-ui, -apple-system, Roboto, Helvetica, sans-serif;
}
@media all and (max-width: 320px) {
body {
font-size: 0.9em;
}
}
.content {
line-height: 1.7;
}
.pre-content h1,
.content h1,
.content h2 {
font-weight: bold;
}
body {
background: var(--body-background-color);
color: var(--text-color);
}
select {
color: var(--text-color);
}
a:not( [ href ] ) {
color: inherit;
}
a.external,
.mw-parser-output a.external {
background-image: var(--external-icon);
}
blockquote {
border-color: var(--body-mid);
font-family: inherit;
}
.pre-content h1 {
text-align: center;
}
.mw-parser-output h2:first-of-type {
clear: both;
}
.content .mw-parser-output > h2,
.content .section-heading {
border-color: var(--sidebar);
}
.content .mw-parser-output > h2,
.content .section-heading {
border-color: var(--sidebar);
}
.content .plainlist ol,
.content .plainlist ul {
padding: 0;
}
.content p {
margin: 0.5em 0;
}
.content hr {
background: none;
border-color: var(--sidebar);
border-style: solid;
border-width: 1px 0 0 0;
height: initial;
}
.content kbd,
.content samp {
border: none;
}
.content code,
.content pre {
background-color: var(--mw-code-background-color);
border: 1px solid var(--body-border);
}
:root {
--searchbutton-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 20 20'%3E%3Cg fill='%23000'%3E%3Cpath d='M12.2 13.6a7 7 0 1 1 1.4-1.4l5.4 5.4-1.4 1.4-5.4-5.4zM3 8a5 5 0 1 0 10 0A5 5 0 1 0 3 8z'/%3E%3C/g%3E%3C/svg%3E");
--external-icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' encoding='UTF-8'%3F%3E%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='10' viewBox='0 0 10 10'%3E%3Cg fill='%23906039'%3E%3Cpath d='M8.9 8.9H1.1V1.1h2.8V0H1.1C.5 0 0 .5 0 1.1v7.8C0 9.5.5 10 1.1 10h7.8c.6 0 1.1-.5 1.1-1.1V6.1H8.9v2.8z'/%3E%3Cpath d='M10 0H5.6l1.8 1.8L4.2 5l.8.8 3.2-3.2L10 4.4V0z'/%3E%3C/g%3E%3C/svg%3E");
}
#mw-mf-page-center {
background-color: transparent;
}
.header {
border-top: none;
}
.header-container.header-chrome {
background: var(--body-background-image) var(--body-background-color) no-repeat;
background-color: var(--body-background-color);
background-size: 900px;
box-shadow: inset 0 -1px 3px rgba(0, 0, 0, 0.1);
}
.header-container .notification-count {
border-radius: 50%;
}
.header-container .notification-count.notification-unseen {
background: none;
}
.header-container .branding-box {
opacity: 1;
}
.search-box {
text-align: right;
}
.search-box .search {
background-color: var(--search-box);
border-color: var(--search-box);
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
}
.search-box .search::placeholder {
color: var(--byline-color);
}
.client-nojs .search-box .search:focus,
.search-overlay .search-box .search:focus {
border-color: var(--link-color);
box-shadow: inset 0 0 0 1px var(--link-color), 0 1px 1px rgba(0, 0, 0, 0.05);
}
.mw-ui-background-icon-search {
background-image: var(--searchbutton-icon);
}
.overlay {
background: var(--body-main);
}
.overlay textarea {
color: var(--text-color);
}
.overlay.search-overlay {
background: var(--body-main);
}
.overlay.search-overlay .results,
.overlay.search-overlay .search-feedback {
background-color: var(--body-light);
}
.overlay.search-overlay .search-content {
border-color: var(--body-mid);
}
.overlay .license {
color: var(--base-text-color);
}
.overlay .panel {
border-color: var(--sidebar);
}
.overlay .content-header {
background-color: var(--body-light);
border-color: transparent;
}
.overlay.overlay-loading {
background: var(--ooui-window-background);
}
.overlay .overlay-content {
background: var(--body-main);
}
.page-summary h2,
.page-summary h3 {
color: var(--text-color);
}
.page-list li,
.topic-title-list li,
.site-link-list li {
border-color: var(--body-mid);
}
.overlay-enabled .overlay:not(.editor-overlay),
.overlay-enabled #mw-mf-page-center {
overflow-y: scroll;
}
.overlay-header-container,
.overlay-footer-container {
background-color: var(--body-background-color);
border-color: transparent;
}
.editor-overlay .wikitext-editor {
color: var(--text-color);
}
.editor-overlay .overlay-header {
outline-color: transparent;
}
.editor-overlay .summary-request {
color: var(--text-color);
}
.editor-overlay .editor-switcher {
border: none;
}
.action-submit .mw-editnotice .action-edit .mw-editnotice,
.action-submit .mw-editTools,
.action-edit .mw-editTools,
.action-submit .preview-limit-report-wrapper,
.action-edit .preview-limit-report-wrapper,
.action-submit .diff-otitle,
.action-edit .diff-otitle,
.action-submit .diff-ntitle,
.action-edit .diff-ntitle,
.action-submit #section_0,
.action-edit #section_0,
.action-submit #editpage-copywarn,
.action-edit #editpage-copywarn,
.action-submit #mw-anon-edit-warning,
.action-edit #mw-anon-edit-warning {
color: var(--byline-color);
}
.wikitext-editor {
background-color: var(--body-main);
}
.ve-mobile-fakeToolbar {
border: none;
}
.ve-mobile-fakeToolbar-container {
background: var(--body-background-color);
border: none;
}
.ve-mobile-fakeToolbar .mw-ui-icon-mf-spinner {
border-color: transparent;
}
.ve-ui-targetToolbar-mobile .oo-ui-toolbar-tools > .ve-ui-toolbar-group-back {
border-color: transparent;
}
.ve-ui-mobileContext {
background-color: var(--body-light);
border-color: var(--body-light);
}
.ve-ui-mobileContext .ve-ui-linearContextItem-body-action-wrapper {
border-color: var(--body-border);
}
.ve-ui-linearContextItem-foot:not(:empty) {
border-color: var(--body-border);
}
.ve-ui-mwSaveDialog-options {
backgroubd-color: var(--body-light);
border-color: var(--body-mid);
}
.page-actions-menu {
border-color: var(--sidebar);
}
#language-selector {
display: none;
}
.minerva__tab-container .minerva__tab {
color: var(--text-color);
}
.minerva__tab-container .minerva__tab.new,
.minerva__tab-container .minerva__tab.new:visited,
.minerva__tab-container .minerva__tab.new:hover,
.minerva__tab-container .minerva__tab.new:active {
color: var(--redlink-color);
}
.minerva__tab-container .minerva__tab.selected {
border-color: var(--body-border);
}
.heading-holder .tagline {
color: var(--base-heading-color);
}
.minerva-footer {
border-color: transparent;
}
.mw-footer > .post-content {
margin-top: 32px;
}
.mw-footer > .post-content > .minerva-footer-logo {
display: none;
}
.mw-footer .hlist li:after {
color: var(--background-text-color);
}
.last-modified-bar {
border-top: 1px solid;
border-color: transparent;
background: none;
color: var(--text-color);
}
.last-modified-bar a,
.last-modified-bar a:active,
.last-modified-bar a:visited,
.last-modified-bar .last-modified-text-accent {
color: var(--background-text-color);
}
.last-modified-bar.active,
.last-modified-bar.active:active,
.last-modified-bar.active:visited,
.last-modified-bar.active .last-modified-text-accent {
color: #fff;
}
.mw-ui-icon-mf-expand-gray:not(.mw-ui-icon-mf-expand-invert):before {
background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 20 20'%3E%3Ctitle%3Eexpand%3C/title%3E%3Cg fill='%2354595d'%3E%3Cpath d='M17.5 4.75l-7.5 7.5-7.5-7.5L1 6.25l9 9 9-9z'/%3E%3C/g%3E%3C/svg%3E");
}
.toggle-list__list {
background-color: var(--wikitable-bg);
}
.toggle-list-item__anchor:visited,
.toggle-list-item__anchor:active {
color: var(--base-text-color);
}
.toggle-list-item:hover {
background: var(--wikitable-bg-lighter);
}
.toggle-list-item__label {
color: var(--base-text-color);
}
.mw-ui-icon-wikimedia-search-base20:before {
background-image: url("data:image/svg+xml,%3C%3Fxml version='1.0' encoding='UTF-8'%3F%3E%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 20 20'%3E%3Ctitle%3Esearch%3C/title%3E%3Cg fill='white'%3E%3Cpath fill-rule='evenodd' d='M12.2 13.6a7 7 0 111.4-1.4l5.4 5.4-1.4 1.4-5.4-5.4zM13 8A5 5 0 113 8a5 5 0 0110 0z'/%3E%3C/g%3E%3C/svg%3E%0A");
}
.mw-ui-icon-wikimedia-menu-base20:before {
background-image: url("data:image/svg+xml,%3C%3Fxml version='1.0' encoding='UTF-8'%3F%3E%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 20 20'%3E%3Ctitle%3Emenu%3C/title%3E%3Cg fill='white'%3E%3Cpath d='M1 3v2h18V3zm0 8h18V9H1zm0 6h18v-2H1z'/%3E%3C/g%3E%3C/svg%3E%0A");
}
.mw-ui-icon-wikimedia-bellOutline-base20:before {
background-image: url("data:image/svg+xml,%3C%3Fxml version='1.0' encoding='UTF-8'%3F%3E%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 20 20'%3E%3Ctitle%3Ebell%3C/title%3E%3Cg fill='white'%3E%3Cpath d='M11.5 2.19C14.09 2.86 16 5.2 16 8v6l2 2v1H2v-1l2-2V8c0-2.8 1.91-5.14 4.5-5.81V1.5C8.5.67 9.17 0 10 0s1.5.67 1.5 1.5v.69zM10 4C7.79 4 6 5.79 6 8v7h8V8c0-2.21-1.79-4-4-4zM8 18h4c0 1.1-.9 2-2 2s-2-.9-2-2z'/%3E%3C/g%3E%3C/svg%3E%0A");
}
.mw-ui-icon-minerva-userAvatarOutline:before {
background-image: url("data:image/svg+xml,%3C%3Fxml version='1.0' encoding='UTF-8'%3F%3E%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 20 20'%3E%3Ctitle%3Euser avatar%3C/title%3E%3Cg fill='white'%3E%3Cpath d='M10 8c1.7 0 3.06-1.35 3.06-3S11.7 2 10 2 6.94 3.35 6.94 5 8.3 8 10 8zm0 2c-2.8 0-5.06-2.24-5.06-5S7.2 0 10 0s5.06 2.24 5.06 5-2.26 5-5.06 5zm-7 8h14v-1.33c0-1.75-2.31-3.56-7-3.56s-7 1.81-7 3.56V18zm7-6.89c6.66 0 9 3.33 9 5.56V20H1v-3.33c0-2.23 2.34-5.56 9-5.56z'/%3E%3C/g%3E%3C/svg%3E%0A");
}
@media all and (min-width: 1000px) {
.mw-ui-icon-with-label-desktop,
.mw-ui-icon-with-label-desktop:hover,
.mw-ui-icon-with-label-desktop:focus,
.mw-ui-icon-with-label-desktop:active,
.mw-ui-icon-with-label-desktop:visited {
color: var(--base-text-color) !important;
}
}
.header-action .mw-ui-icon-mf-close-base20:before {
background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 20 20'%3E%3Ctitle%3Eclose%3C/title%3E%3Cg fill='%23fff'%3E%3Cpath d='m4.3 2.9 12.8 12.8-1.4 1.4L2.9 4.3z'/%3E%3Cpath d='M17.1 4.3 4.3 17.1l-1.4-1.4L15.7 2.9z'/%3E%3C/g%3E%3C/svg%3E");
}
#mw-mf-page-left {
background-color: var(--body-background-color);
}
#mw-mf-page-left .secondary-action {
border-left-color: var(--body-mid);
}
#mw-mf-page-left ul li {
background-color: var(--body-main);
border-color: var(--body-mid);
}
#mw-mf-page-left ul li a {
color: var(--base-text-color);
}
#mw-mf-page-left ul li a:hover {
box-shadow: inset 4px 0 0 0 var(--link-color);
}
#mw-mf-page-left ul.hlist li a {
color: var(--background-link-color);
}
#mw-mf-page-left ul.hlist li a span {
font-size: 0.8125rem;
}
.notifications-overlay.navigation-drawer {
box-shadow: -1px 0 8px 0 rgba(0, 0, 0, 0.35);
}
.notifications-overlay .mw-echo-ui-actionMenuPopupWidget-menu {
border: none;
}
.mw-ui-anchor.mw-ui-progressive,
.mw-ui-anchor.mw-ui-progressive:active,
.mw-ui-anchor.mw-ui-progressive:hover,
.mw-ui-anchor.mw-ui-progressive:focus {
color: var(--link-color);
}
.minerva-talk-full-page-button {
background-color: var(--body-main);
border-color: var(--body-dark);
color: var(--link-color);
}
.minerva-talk-content-explained {
border-color: var(--sidebar);
color: var(--base-text-color);
}
.talk-overlay .comment .wikitext-editor {
border-color: var(--body-border);
}
.client-js .skin-minerva--talk-simplified .section-heading {
border-color: var(--sidebar);
}
.mw-notification a,
.toast a {
color: var(--link-color);
}
.drawer {
background-color: var(--body-light);
}
.drawer.references-drawer {
background-color: var(--body-light);
color: var(--text-color);
}
.drawer.references-drawer a {
color: var(--link-color);
}
.drawer.references-drawer .references-drawer__title {
color: var(--text-color);
}
.drawer.references-drawer .mw-ui-icon::before {
filter: brightness(0);
}
.cta-holder {
background: var(--body-light);
}
.cta-holder .desc {
color: var(--byline-color);
}
.mw-tag-marker {
border-color: var(--body-border);
}
.oo-ui-toolGroup {
background: var(--body-background-color);
}
.load-fail-msg {
color: var(--text-color);
}
.load-fail-msg-link a {
color: var(--link-color);
}
.image-carousel .image-loaded {
background: url("data:image/svg+xml,%3C%3Fxml version='1.0' encoding='UTF-8'%3F%3E%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16'%3E%3Cpath d='M0 0h8v16h8V8H0z' opacity='.13'/%3E%3C/svg%3E%0A") repeat;
}
.image-details {
background-color: var(--body-light);
border-color: transparent;
}
@media all and (min-width: 720px) {
.ns-special .pre-content {
background-color: transparent;
}
.ns-special .mw-body {
background: var(--body-main);
}
.ns-special .mw-body form {
background: transparent;
}
}
form.mw-mf-settings .oo-ui-fieldLayout,
form.mw-mf-settings .oo-ui-fieldLayout:first-child {
border-color: var(--body-mid);
}
.ns-special .content-header {
border-bottom-color: var(--body-dark);
}
.action-history .mw-history-compareselectedversions {
background-color: var(--body-main);
}
.action-history #pagehistory li:not(.selected) {
border-bottom-color: var(--sidebar);
}
ul.mw-contributions-list li,
ul.special li {
border-color: var(--sidebar);
}
.page-list li > a:not(.mw-ui-icon-element),
.topic-title-list li > a:not(.mw-ui-icon-element),
.site-link-list li > a:not(.mw-ui-icon-element) {
color: var(--byline-color);
}
.page-list.side-list .list-thumb,
.topic-title-list.side-list .list-thumb,
.site-link-list.side-list .list-thumb {
color: var(--text-color);
}
.page-list .info,
.topic-title-list .info,
.site-link-list .info,
.page-list .component,
.topic-title-list .component,
.site-link-list .component {
color: var(--byline-color);
}
.mw-mf-user {
color: var(--text-color);
}
.content .mw-index-pager-list-header {
background-color: var(--body-mid);
color: inherit;
font-family: inherit;
}
.diff-editfont-monospace {
font-family: monospace,monospace;
}
:root {
--diff-deletedline-background: #fbc0ba;
}
.minoredit {
background: var(--body-mid);
}
#mw-mf-diffview .mw-mf-diff-date {
color: var(--byline-color);
}
#mw-mf-diffview .mw-diff-inline-deleted del,
#mw-mf-diffview .mw-diff-inline-changed del {
background: var(--diff-deletedline-background);
color: var(--diff-deletedline-color);
border-radius: 0.33em;
}
#mw-mf-diffview .mw-diff-inline-added ins,
#mw-mf-diffview .mw-diff-inline-changed ins {
background: var(--diff-addedline-background);
color: var(--diff-addedline-color);
border-radius: 0.33em;
}
#mw-mf-diffview .mw-diff-inline-moved {
background: var(--diff-context-background);
}
#mw-mf-diffview #mw-mf-userinfo {
background: var(--body-light);
border-top-color: var(--body-border);
}
#mw-mf-diffview #mw-mf-userinfo .mw-mf-edit-count {
color: var(--text-color);
}
#mw-mf-diffview #mw-mf-userinfo .mw-mf-edit-count div {
color: var(--base-text-color);
}
.infobox {
font-size: 85%;
background-color: var(--body-light);
border: 1px solid var(--body-border);
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
table-layout: fixed;
}
.content .infobox {
display: table;
}
.content .infobox caption {
display: table-caption;
background: none;
}
.infobox .infobox-header {
color: var(--infobox-text-color);
font-size: 1.15em;
background: var(--body-dark);
padding: 0.5em 0;
text-align: center;
}
.infobox .infobox-subheader {
background: var(--body-dark);
line-height: 2em;
text-align: center;
}
.infobox .infobox-subheader a {
color: var(--infobox-text-color);
}
.infobox th:not(.infobox-nested):not(.infobox-subheader):not(.infobox-header) {
text-align: right;
vertical-align: top;
border-right: 2px solid var(--body-dark);
padding: 0.2em 0.5em;
}
.infobox caption.infobox-caption {
text-align: center;
}
.infobox td {
padding: 0.25em 0.5em;
line-height: 1.6em;
}
.infobox td.infobox-nested {
padding: 0.25em 0;
line-height: 1em;
}
.infobox .infobox-padding {
height: 0.5em;
padding: 0;
border: 0;
}
.infobox .infobox-image {
text-align: center;
}
.infobox .infobox-image.inventory-image {
height: 32px;
}
.infobox .infobox-nested {
text-align: center;
}
.infobox .infobox-nested + .infobox-nested {
border-left: 2px solid var(--body-dark);
}
.infobox .infobox-cell-hidden {
display: none;
}
.infobox .infobox-full-width-content {
max-width: 300px;
text-align: center;
overflow-x: hidden;
padding: 0;
}
.skill-info a[href$="?action=edit"] + a[href$="?action=edit"] {
display: none;
}
.infobox-buttons {
margin-top: 0.5em;
text-align: center;
}
.infobox-bottom-links {
display: none;
}
.advanced-data {
display: none;
}
@media screen and (min-width: 720px) {
.content table.infobox {
float: right;
margin-top: 0.5em;
margin-left: 1em;
width: 300px !important;
}
.content table.infobox.skill-info {
float: none;
margin: 0 0 1em 0;
}
}
.multi-infobox {
margin-top: 0.5em;
margin-bottom: 2.5em;
}
.multi-infobox .tabber {
margin: 0;
}
.multi-infobox .tabber .tabbernav {
text-align: center;
margin-left: 0;
}
.mw-body .multi-infobox .tabber .tabbertab {
padding: 5px;
}
.multi-infobox table.infobox {
margin: 0;
}
.multi-infobox .infobox-buttons {
margin-top: 0;
}
@media screen and (min-width: 720px) {
.multi-infobox {
float: right;
margin-left: 1em;
width: 300px;
}
}
.tile {
padding: 1.5em 2em 1em;
}
.tile h2 {
font-weight: 600;
border: none;
margin-top: 0.4em;
}
.tile o .byline + h2 {
margin-top: -0.5em;
}
.tile-top {
padding: 1.3rem 1.5rem 2rem;
}
.tile-bottom {
padding: 1rem 1.5rem 2rem;
}
.tile-bottom.read-more {
padding: 0;
}
.tile-bottom.read-more a {
padding: 1em 1.75em;
}
:root {
--mobile-navbox-wide-bg-color: #dcd3bf;
--mobile-navbox-linear-gradient: linear-gradient(to right, rgba(255, 255, 255, 0), var(--body-main) 95%, var(--body-main));
}
.navbox {
border: 1px solid var(--body-border);
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
font-size: 0.85em;
}
.content .navbox ul {
padding-left: 0;
}
.content .navbox ul li {
margin-bottom: 0;
}
@media screen and (max-width: 719px) {
.navbox td,
.navbox th,
.navbox tr,
.navbox tbody,
.navbox .navbox-subgroup {
display: block;
}
}
@media screen and (min-width: 720px) {
.content table.navbox,
.content .navbox table {
width: 100% !important;
}
}
.navbox .navbox-subgroup {
margin: 0;
}
.navbox .navbar {
display: none;
}
.navbox .plink-template,
.navbox img {
display: none;
}
.navbox-title {
color: var(--text-color);
background-color: var(--body-dark);
font-size: 140%;
text-align: center;
padding: 0.25em 0.85em;
}
@media screen and (min-width: 720px) {
.navbox-title {
border-bottom: 1px solid var(--body-border);
}
}
.navbox-group-title {
background-color: var(--body-mid);
text-align: left;
padding: 0.2em 0.85em;
}
@media screen and (max-width: 719px) {
.navbox-group-title {
overflow: hidden;
white-space: nowrap;
text-overflow: ellipsis;
}
}
@media screen and (min-width: 720px) {
.navbox-group-title {
border: 1px solid var(--body-border);
border-width: 0 1px 1px 0;
width: 12vw;
}
}
.navbox-group-title-hidden {
display: none;
}
.navbox-list {
padding: 0;
position: relative;
}
@media screen and (min-width: 720px) {
.navbox-list {
border-bottom: 1px solid var(--body-border);
}
}
.navbox-list ul {
display: flex;
}
@media screen and (max-width: 719px) {
.navbox-list ul {
white-space: nowrap;
overflow-x: auto;
overflow-y: hidden;
-webkit-overflow-scrolling: touch;
}
}
@media screen and (min-width: 720px) {
.navbox-list ul {
padding: 0.2em 0.85em 0.5em !important;
flex-wrap: wrap;
}
}
@media screen and (min-width: 720px) {
.navbox-list[style*="center"] ul {
justify-content: center;
}
}
.navbox-list li {
display: inline-flex;
align-items: center;
height: 3.5em;
margin: 0 0 0 0.85em;
}
@media screen and (min-width: 720px) {
.navbox-list li {
height: 2.1em;
}
.navbox-list li:first-child {
margin-left: 0;
}
}
.navbox-list li + li::before {
content: '•';
display: inline-block;
white-space: pre-wrap;
position: relative;
left: -0.425em;
color: var(--text-color);
pointer-events: none;
}
.navbox-list li + li > a + a::before {
display: none;
}
.navbox-list li:last-child {
margin-right: 2em;
}
.navbox-list::after {
content: '';
display: block;
position: absolute;
background-image: var(--mobile-navbox-linear-gradient);
height: 100%;
width: 2.5em;
top: 0;
right: 0;
pointer-events: none;
}
@media screen and (min-width: 720px) {
.navbox-list::after {
display: none;
}
}
.navbox-list.navbox-parent {
border-bottom: 0;
padding: 0;
}
.navbox-list.navbox-parent::after {
display: none;
}
.navbox-group .navbox-group .navbox-group-title {
background-color: var(--body-light);
padding: 0 0.85em 0 1.7em;
}
@media screen and (min-width: 720px) {
.navbox-group .navbox-group .navbox-group-title {
padding-left: 0.85em;
}
}
.navbox-group .navbox-group .navbox-list ul {
padding-left: 1.7em;
}
.navbox-group .navbox-group .navbox-list li {
margin-bottom: 0;
}
.navbox-group .navbox-group .navbox-list li:first-child {
margin-left: 0;
}
.navbox-group .navbox-group.navbox-group-split .navbox-list ul {
padding-left: 0.85em;
}
.navbox-group .navbox-group .navbox-group:first-child .navbox-group-title {
padding-top: 0.5em;
}
@media screen and (min-width: 720px) {
.navbox-group .navbox-group .navbox-group:first-child .navbox-group-title {
padding-top: 0;
}
}
.navbox-group .navbox-group .navbox-group .navbox-group-title {
background-color: transparent;
padding-left: 2.55em;
}
@media screen and (min-width: 720px) {
.navbox-group .navbox-group .navbox-group .navbox-group-title {
background-color: var(--mobile-navbox-wide-bg-color);
padding-left: 0.85em;
}
}
.navbox-group .navbox-group .navbox-group .navbox-list ul {
padding-left: 2.55em;
}
.navbox-group .navbox-group .navbox-group.navbox-group-split .navbox-list ul {
padding-left: 1.7em;
}
@keyframes slide-up {
from {
opacity: 0;
transform: translateY(1rem);
}
to {
opacity: 1;
transform: translateY(0);
}
}
.mainpage-header {
margin: 2em 1em 0;
}
@media only screen and (max-width: 1000px) {
.mainpage-header .header-intro h1 {
text-align: center;
font-size: 1.8em;
}
.mainpage-header .header-intro p {
font-size: 1em;
}
}
.mainpage-body .tile-row {
width: inherit;
}
.mainpage-left .tile {
padding: 2.5em 1.75em 2em;
}
.mainpage-left .tile h2 {
padding: 0;
margin: 0.65em 0.5em;
}
.mainpage-left .tile-halves h2 {
padding: 0;
margin: 0.65em 0.5em;
}
.mainpage-recent-updates {
padding: 1.5em 1em 2.5em;
}
.mainpage-recent-updates::before {
content: 'Recent updates';
display: block;
margin-left: 1.5em;
color: var(--byline-color);
font-weight: bold;
text-transform: uppercase;
letter-spacing: 0.025em;
grid-column: 1 / 4;
}
.mainpage-recent-updates .tile-halves {
display: inline-block;
width: 100%;
white-space: initial;
flex: unset;
}
.mainpage-recent-updates .tile-halves:nth-child(1) {
animation: 0.9s 0.2s both slide-up;
}
.mainpage-recent-updates .tile-halves:nth-child(2) {
animation: 0.9s 0.4s both slide-up;
}
.mainpage-recent-updates .tile-halves:nth-child(3) {
animation: 0.9s 0.6s both slide-up;
}
.mainpage-recent-updates .tile-top {
height: 9em;
overflow: hidden;
}
.mainpage-recent-updates .tile-bottom {
padding-bottom: 0.5rem;
}
.mainpage-recent-updates .byline {
margin: 0;
}
.mainpage-recent-updates .byline + h2 {
margin: 0.025em 0 0;
padding: 0;
}
@media only screen and (max-width: 720px) {
.mainpage-recent-updates::before {
text-align: center;
margin: 0;
grid-column: auto;
}
}
.mainpage-contents {
background: var(--body-mid);
padding: 55px 1em 2em 2.5em;
overflow-x: auto;
grid-template-columns: repeat(6, 1fr) !important;
position: relative;
scroll-snap-align: center;
}
.mainpage-contents::before {
content: 'Explore';
margin: 1em;
position: absolute;
top: 0;
color: inherit;
font-weight: bold;
text-transform: uppercase;
letter-spacing: 0.025em;
grid-column: 1 / 6;
}
.mainpage-contents .tile-halves {
border: none;
background: none;
box-shadow: none;
width: 200px;
}
.mainpage-contents .tile-top {
padding: 0;
height: initial;
}
.mainpage-contents .tile-bottom {
border: none;
}
.mainpage-contents h2 {
width: 100%;
}
@media only screen and (max-width: 1000px) {
.mainpage-skills .tile-top ul {
margin: 0;
}
}
.mainpage-wikinews::before {
content: 'From the wiki';
margin-left: 0.75em;
color: var(--byline-color);
font-weight: bold;
text-transform: uppercase;
letter-spacing: 0.025em;
}
.mainpage-social {
border: none;
margin-bottom: 0;
}
.mainpage-social .tile-top {
display: flex;
align-items: center;
justify-content: center;
padding: 1em 2em;
height: 70px;
}
.mainpage-social .tile-top .social-icon {
float: left;
margin: 0 1em 0 -1em;
width: 60px;
text-align: center;
}
.mainpage-social .tile-top .social-header {
color: #fff;
font-weight: bold;
font-size: 1.25em;
margin: 0;
}
.mainpage-social .tile-top .social-tagline {
color: rgba(255, 255, 255, 0.9);
margin: 0;
}
.mainpage-social .tile-bottom {
border: none;
padding: 1em 2em;
}
.mainpage-social .tile-bottom p {
color: var(--byline-color);
font-weight: bold;
text-transform: uppercase;
letter-spacing: 0.025em;
color: #fff;
font-size: 0.9em;
text-align: center;
margin: 0;
}
.mainpage-social.mainpage-discord .tile-top {
background: #5865f2;
}
.mainpage-social.mainpage-discord .tile-bottom {
background: #525ee0;
}
.mainpage-social.mainpage-twitter .tile-top {
background: #15202b;
}
.mainpage-social.mainpage-twitter .tile-bottom {
background: #121c26;
}
.wikitable {
background: none;
box-shadow: none;
}
.wikitable tbody {
background: var(--body-light);
}
.toc {
background-color: var(--body-light);
border-color: var(--body-border);
}
#filetoc li {
display: inline;
padding-right: 2em;
}
.mw-dismissable-notice-body {
margin: 0;
}
.mw-dismissable-notice-body .mw-dismissable-notice-close-parent {
border-radius: 0 !important;
font-size: 0.75em;
}
:root {
--thumb-image-background: var(--body-light);
--thumb-caption-background: var(--body-mid);
}
.content .thumbinner {
background-color: var(--thumb-bg);
}
.content .thumbimage {
border: 1px solid transparent;
border-bottom: none;
}
.content .thumbcaption {
margin: 0;
padding: 4px 6px !important;
color: inherit;
background: var(--thumb-caption-bg);
}
.content table.messagebox {
margin: 0.5em auto;
}
.content table a > img {
max-width: inherit !important;
height: inherit !important;
}
.content .infobox a > img {
max-width: 100% !important;
height: auto !important;
}
.content .infobox-bonuses a > img {
max-width: inherit !important;
height: inherit !important;
}
7c83a2b855db914b9e3c3c86197a687268fccb74
1132
1130
2024-03-24T01:55:11Z
Merds
25
Updating CSS from [[MediaWiki:Minerva.less]]
css
text/css
/* <pre> */
body {
font-family: system-ui, -apple-system, Roboto, Helvetica, sans-serif;
}
@media all and (max-width: 320px) {
body {
font-size: 0.9em;
}
}
.content {
line-height: 1.7;
}
.pre-content h1,
.content h1,
.content h2 {
font-weight: bold;
}
body {
background: var(--body-background-color);
color: var(--text-color);
}
select {
color: var(--text-color);
}
a:not( [ href ] ) {
color: inherit;
}
a.external,
.mw-parser-output a.external {
background-image: var(--external-icon);
}
blockquote {
border-color: var(--body-mid);
font-family: inherit;
}
.pre-content h1 {
text-align: center;
}
.mw-parser-output h2:first-of-type {
clear: both;
}
.content .mw-parser-output > h2,
.content .section-heading {
border-color: var(--sidebar);
}
.content .mw-parser-output > h2,
.content .section-heading {
border-color: var(--sidebar);
}
.content .plainlist ol,
.content .plainlist ul {
padding: 0;
}
.content p {
margin: 0.5em 0;
}
.content hr {
background: none;
border-color: var(--sidebar);
border-style: solid;
border-width: 1px 0 0 0;
height: initial;
}
.content kbd,
.content samp {
border: none;
}
.content code,
.content pre {
background-color: var(--mw-code-background-color);
border: 1px solid var(--body-border);
}
:root {
--searchbutton-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 20 20'%3E%3Cg fill='%23000'%3E%3Cpath d='M12.2 13.6a7 7 0 1 1 1.4-1.4l5.4 5.4-1.4 1.4-5.4-5.4zM3 8a5 5 0 1 0 10 0A5 5 0 1 0 3 8z'/%3E%3C/g%3E%3C/svg%3E");
--external-icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' encoding='UTF-8'%3F%3E%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='10' viewBox='0 0 10 10'%3E%3Cg fill='%23906039'%3E%3Cpath d='M8.9 8.9H1.1V1.1h2.8V0H1.1C.5 0 0 .5 0 1.1v7.8C0 9.5.5 10 1.1 10h7.8c.6 0 1.1-.5 1.1-1.1V6.1H8.9v2.8z'/%3E%3Cpath d='M10 0H5.6l1.8 1.8L4.2 5l.8.8 3.2-3.2L10 4.4V0z'/%3E%3C/g%3E%3C/svg%3E");
}
#mw-mf-page-center {
background-color: transparent;
}
.header {
border-top: none;
}
.header-container.header-chrome {
background: var(--body-background-image) var(--body-background-color) no-repeat;
background-color: var(--body-background-color);
background-size: 900px;
box-shadow: inset 0 -1px 3px rgba(0, 0, 0, 0.1);
}
.header-container .notification-count {
border-radius: 50%;
}
.header-container .notification-count.notification-unseen {
background: none;
}
.header-container .branding-box {
opacity: 1;
}
.search-box {
text-align: right;
}
.search-box .search {
background-color: var(--search-box);
border-color: var(--search-box);
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
}
.search-box .search::placeholder {
color: var(--byline-color);
}
.client-nojs .search-box .search:focus,
.search-overlay .search-box .search:focus {
border-color: var(--link-color);
box-shadow: inset 0 0 0 1px var(--link-color), 0 1px 1px rgba(0, 0, 0, 0.05);
}
.mw-ui-background-icon-search {
background-image: var(--searchbutton-icon);
}
.overlay {
background: var(--body-main);
}
.overlay textarea {
color: var(--text-color);
}
.overlay.search-overlay {
background: var(--body-main);
}
.overlay.search-overlay .results,
.overlay.search-overlay .search-feedback {
background-color: var(--body-light);
}
.overlay.search-overlay .search-content {
border-color: var(--body-mid);
}
.overlay .license {
color: var(--base-text-color);
}
.overlay .panel {
border-color: var(--sidebar);
}
.overlay .content-header {
background-color: var(--body-light);
border-color: transparent;
}
.overlay.overlay-loading {
background: var(--ooui-window-background);
}
.overlay .overlay-content {
background: var(--body-main);
}
.page-summary h2,
.page-summary h3 {
color: var(--text-color);
}
.page-list li,
.topic-title-list li,
.site-link-list li {
border-color: var(--body-mid);
}
.overlay-enabled .overlay:not(.editor-overlay),
.overlay-enabled #mw-mf-page-center {
overflow-y: scroll;
}
.overlay-header-container,
.overlay-footer-container {
background-color: var(--body-background-color);
border-color: transparent;
}
.editor-overlay .wikitext-editor {
color: var(--text-color);
}
.editor-overlay .overlay-header {
outline-color: transparent;
}
.editor-overlay .summary-request {
color: var(--text-color);
}
.editor-overlay .editor-switcher {
border: none;
}
.action-submit .mw-editnotice .action-edit .mw-editnotice,
.action-submit .mw-editTools,
.action-edit .mw-editTools,
.action-submit .preview-limit-report-wrapper,
.action-edit .preview-limit-report-wrapper,
.action-submit .diff-otitle,
.action-edit .diff-otitle,
.action-submit .diff-ntitle,
.action-edit .diff-ntitle,
.action-submit #section_0,
.action-edit #section_0,
.action-submit #editpage-copywarn,
.action-edit #editpage-copywarn,
.action-submit #mw-anon-edit-warning,
.action-edit #mw-anon-edit-warning {
color: var(--byline-color);
}
.wikitext-editor {
background-color: var(--body-main);
}
.ve-mobile-fakeToolbar {
border: none;
}
.ve-mobile-fakeToolbar-container {
background: var(--body-background-color);
border: none;
}
.ve-mobile-fakeToolbar .mw-ui-icon-mf-spinner {
border-color: transparent;
}
.ve-ui-targetToolbar-mobile .oo-ui-toolbar-tools > .ve-ui-toolbar-group-back {
border-color: transparent;
}
.ve-ui-mobileContext {
background-color: var(--body-light);
border-color: var(--body-light);
}
.ve-ui-mobileContext .ve-ui-linearContextItem-body-action-wrapper {
border-color: var(--body-border);
}
.ve-ui-linearContextItem-foot:not(:empty) {
border-color: var(--body-border);
}
.ve-ui-mwSaveDialog-options {
backgroubd-color: var(--body-light);
border-color: var(--body-mid);
}
.page-actions-menu {
border-color: var(--sidebar);
}
#language-selector {
display: none;
}
.minerva__tab-container .minerva__tab {
color: var(--text-color);
}
.minerva__tab-container .minerva__tab.new,
.minerva__tab-container .minerva__tab.new:visited,
.minerva__tab-container .minerva__tab.new:hover,
.minerva__tab-container .minerva__tab.new:active {
color: var(--redlink-color);
}
.minerva__tab-container .minerva__tab.selected {
border-color: var(--body-border);
}
.heading-holder .tagline {
color: var(--base-heading-color);
}
.minerva-footer {
border-color: transparent;
}
.mw-footer > .post-content {
margin-top: 32px;
}
.mw-footer > .post-content > .minerva-footer-logo {
display: none;
}
.mw-footer .hlist li:after {
color: var(--background-text-color);
}
.last-modified-bar {
border-top: 1px solid;
border-color: transparent;
background: none;
color: var(--text-color);
}
.last-modified-bar a,
.last-modified-bar a:active,
.last-modified-bar a:visited,
.last-modified-bar .last-modified-text-accent {
color: var(--background-text-color);
}
.last-modified-bar.active,
.last-modified-bar.active:active,
.last-modified-bar.active:visited,
.last-modified-bar.active .last-modified-text-accent {
color: #fff;
}
.mw-ui-icon-mf-expand-gray:not(.mw-ui-icon-mf-expand-invert):before {
background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 20 20'%3E%3Ctitle%3Eexpand%3C/title%3E%3Cg fill='%2354595d'%3E%3Cpath d='M17.5 4.75l-7.5 7.5-7.5-7.5L1 6.25l9 9 9-9z'/%3E%3C/g%3E%3C/svg%3E");
}
.toggle-list__list {
background-color: var(--wikitable-bg);
}
.toggle-list-item__anchor:visited,
.toggle-list-item__anchor:active {
color: var(--base-text-color);
}
.toggle-list-item:hover {
background: var(--wikitable-bg-lighter);
}
.toggle-list-item__label {
color: var(--base-text-color);
}
.mw-ui-icon-wikimedia-search-base20:before {
background-image: url("data:image/svg+xml,%3C%3Fxml version='1.0' encoding='UTF-8'%3F%3E%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 20 20'%3E%3Ctitle%3Esearch%3C/title%3E%3Cg fill='white'%3E%3Cpath fill-rule='evenodd' d='M12.2 13.6a7 7 0 111.4-1.4l5.4 5.4-1.4 1.4-5.4-5.4zM13 8A5 5 0 113 8a5 5 0 0110 0z'/%3E%3C/g%3E%3C/svg%3E%0A");
}
.mw-ui-icon-wikimedia-menu-base20:before {
background-image: url("data:image/svg+xml,%3C%3Fxml version='1.0' encoding='UTF-8'%3F%3E%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 20 20'%3E%3Ctitle%3Emenu%3C/title%3E%3Cg fill='white'%3E%3Cpath d='M1 3v2h18V3zm0 8h18V9H1zm0 6h18v-2H1z'/%3E%3C/g%3E%3C/svg%3E%0A");
}
.mw-ui-icon-wikimedia-bellOutline-base20:before {
background-image: url("data:image/svg+xml,%3C%3Fxml version='1.0' encoding='UTF-8'%3F%3E%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 20 20'%3E%3Ctitle%3Ebell%3C/title%3E%3Cg fill='white'%3E%3Cpath d='M11.5 2.19C14.09 2.86 16 5.2 16 8v6l2 2v1H2v-1l2-2V8c0-2.8 1.91-5.14 4.5-5.81V1.5C8.5.67 9.17 0 10 0s1.5.67 1.5 1.5v.69zM10 4C7.79 4 6 5.79 6 8v7h8V8c0-2.21-1.79-4-4-4zM8 18h4c0 1.1-.9 2-2 2s-2-.9-2-2z'/%3E%3C/g%3E%3C/svg%3E%0A");
}
.mw-ui-icon-minerva-userAvatarOutline:before {
background-image: url("data:image/svg+xml,%3C%3Fxml version='1.0' encoding='UTF-8'%3F%3E%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 20 20'%3E%3Ctitle%3Euser avatar%3C/title%3E%3Cg fill='white'%3E%3Cpath d='M10 8c1.7 0 3.06-1.35 3.06-3S11.7 2 10 2 6.94 3.35 6.94 5 8.3 8 10 8zm0 2c-2.8 0-5.06-2.24-5.06-5S7.2 0 10 0s5.06 2.24 5.06 5-2.26 5-5.06 5zm-7 8h14v-1.33c0-1.75-2.31-3.56-7-3.56s-7 1.81-7 3.56V18zm7-6.89c6.66 0 9 3.33 9 5.56V20H1v-3.33c0-2.23 2.34-5.56 9-5.56z'/%3E%3C/g%3E%3C/svg%3E%0A");
}
@media all and (min-width: 1000px) {
.mw-ui-icon-with-label-desktop,
.mw-ui-icon-with-label-desktop:hover,
.mw-ui-icon-with-label-desktop:focus,
.mw-ui-icon-with-label-desktop:active,
.mw-ui-icon-with-label-desktop:visited {
color: var(--base-text-color) !important;
}
}
.header-action .mw-ui-icon-mf-close-base20:before {
background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 20 20'%3E%3Ctitle%3Eclose%3C/title%3E%3Cg fill='%23fff'%3E%3Cpath d='m4.3 2.9 12.8 12.8-1.4 1.4L2.9 4.3z'/%3E%3Cpath d='M17.1 4.3 4.3 17.1l-1.4-1.4L15.7 2.9z'/%3E%3C/g%3E%3C/svg%3E");
}
#mw-mf-page-left {
background-color: var(--body-background-color);
}
#mw-mf-page-left .secondary-action {
border-left-color: var(--body-mid);
}
#mw-mf-page-left ul li {
background-color: var(--body-main);
border-color: var(--body-mid);
}
#mw-mf-page-left ul li a {
color: var(--base-text-color);
}
#mw-mf-page-left ul li a:hover {
box-shadow: inset 4px 0 0 0 var(--link-color);
}
#mw-mf-page-left ul.hlist li a {
color: var(--background-link-color);
}
#mw-mf-page-left ul.hlist li a span {
font-size: 0.8125rem;
}
.notifications-overlay.navigation-drawer {
box-shadow: -1px 0 8px 0 rgba(0, 0, 0, 0.35);
}
.notifications-overlay .mw-echo-ui-actionMenuPopupWidget-menu {
border: none;
}
.mw-ui-anchor.mw-ui-progressive,
.mw-ui-anchor.mw-ui-progressive:active,
.mw-ui-anchor.mw-ui-progressive:hover,
.mw-ui-anchor.mw-ui-progressive:focus {
color: var(--link-color);
}
.minerva-talk-full-page-button {
background-color: var(--body-main);
border-color: var(--body-dark);
color: var(--link-color);
}
.minerva-talk-content-explained {
border-color: var(--sidebar);
color: var(--base-text-color);
}
.talk-overlay .comment .wikitext-editor {
border-color: var(--body-border);
}
.client-js .skin-minerva--talk-simplified .section-heading {
border-color: var(--sidebar);
}
.mw-notification a,
.toast a {
color: var(--link-color);
}
.drawer {
background-color: var(--body-light);
}
.drawer.references-drawer {
background-color: var(--body-light);
color: var(--text-color);
}
.drawer.references-drawer a {
color: var(--link-color);
}
.drawer.references-drawer .references-drawer__title {
color: var(--text-color);
}
.drawer.references-drawer .mw-ui-icon::before {
filter: brightness(0);
}
.cta-holder {
background: var(--body-light);
}
.cta-holder .desc {
color: var(--byline-color);
}
.mw-tag-marker {
border-color: var(--body-border);
}
.oo-ui-toolGroup {
background: var(--body-background-color);
}
.load-fail-msg {
color: var(--text-color);
}
.load-fail-msg-link a {
color: var(--link-color);
}
.image-carousel .image-loaded {
background: url("data:image/svg+xml,%3C%3Fxml version='1.0' encoding='UTF-8'%3F%3E%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16'%3E%3Cpath d='M0 0h8v16h8V8H0z' opacity='.13'/%3E%3C/svg%3E%0A") repeat;
}
.image-details {
background-color: var(--body-light);
border-color: transparent;
}
@media all and (min-width: 720px) {
.ns-special .pre-content {
background-color: transparent;
}
.ns-special .mw-body {
background: var(--body-main);
}
.ns-special .mw-body form {
background: transparent;
}
}
form.mw-mf-settings .oo-ui-fieldLayout,
form.mw-mf-settings .oo-ui-fieldLayout:first-child {
border-color: var(--body-mid);
}
.ns-special .content-header {
border-bottom-color: var(--body-dark);
}
.action-history .mw-history-compareselectedversions {
background-color: var(--body-main);
}
.action-history #pagehistory li:not(.selected) {
border-bottom-color: var(--sidebar);
}
ul.mw-contributions-list li,
ul.special li {
border-color: var(--sidebar);
}
.page-list li > a:not(.mw-ui-icon-element),
.topic-title-list li > a:not(.mw-ui-icon-element),
.site-link-list li > a:not(.mw-ui-icon-element) {
color: var(--byline-color);
}
.page-list.side-list .list-thumb,
.topic-title-list.side-list .list-thumb,
.site-link-list.side-list .list-thumb {
color: var(--text-color);
}
.page-list .info,
.topic-title-list .info,
.site-link-list .info,
.page-list .component,
.topic-title-list .component,
.site-link-list .component {
color: var(--byline-color);
}
.mw-mf-user {
color: var(--text-color);
}
.content .mw-index-pager-list-header {
background-color: var(--body-mid);
color: inherit;
font-family: inherit;
}
.diff-editfont-monospace {
font-family: monospace,monospace;
}
:root {
--diff-deletedline-background: #fbc0ba;
}
.minoredit {
background: var(--body-mid);
}
#mw-mf-diffview .mw-mf-diff-date {
color: var(--byline-color);
}
#mw-mf-diffview .mw-diff-inline-deleted del,
#mw-mf-diffview .mw-diff-inline-changed del {
background: var(--diff-deletedline-background);
color: var(--diff-deletedline-color);
border-radius: 0.33em;
}
#mw-mf-diffview .mw-diff-inline-added ins,
#mw-mf-diffview .mw-diff-inline-changed ins {
background: var(--diff-addedline-background);
color: var(--diff-addedline-color);
border-radius: 0.33em;
}
#mw-mf-diffview .mw-diff-inline-moved {
background: var(--diff-context-background);
}
#mw-mf-diffview #mw-mf-userinfo {
background: var(--body-light);
border-top-color: var(--body-border);
}
#mw-mf-diffview #mw-mf-userinfo .mw-mf-edit-count {
color: var(--text-color);
}
#mw-mf-diffview #mw-mf-userinfo .mw-mf-edit-count div {
color: var(--base-text-color);
}
.infobox {
font-size: 85%;
background-color: var(--body-light);
border: 1px solid var(--body-border);
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
table-layout: fixed;
}
.content .infobox {
display: table;
}
.content .infobox caption {
display: table-caption;
background: none;
}
.infobox .infobox-header {
color: var(--infobox-text-color);
font-size: 1.15em;
background: var(--body-dark);
padding: 0.5em 0;
text-align: center;
}
.infobox .infobox-subheader {
background: var(--body-dark);
line-height: 2em;
text-align: center;
}
.infobox .infobox-subheader a {
color: var(--infobox-text-color);
}
.infobox th:not(.infobox-nested):not(.infobox-subheader):not(.infobox-header) {
text-align: right;
vertical-align: top;
border-right: 2px solid var(--body-dark);
padding: 0.2em 0.5em;
}
.infobox caption.infobox-caption {
text-align: center;
}
.infobox td {
padding: 0.25em 0.5em;
line-height: 1.6em;
}
.infobox td.infobox-nested {
padding: 0.25em 0;
line-height: 1em;
}
.infobox .infobox-padding {
height: 0.5em;
padding: 0;
border: 0;
}
.infobox .infobox-image {
text-align: center;
}
.infobox .infobox-image.inventory-image {
height: 32px;
}
.infobox .infobox-nested {
text-align: center;
}
.infobox .infobox-nested + .infobox-nested {
border-left: 2px solid var(--body-dark);
}
.infobox .infobox-cell-hidden {
display: none;
}
.infobox .infobox-full-width-content {
max-width: 300px;
text-align: center;
overflow-x: hidden;
padding: 0;
}
.skill-info a[href$="?action=edit"] + a[href$="?action=edit"] {
display: none;
}
.infobox-buttons {
margin-top: 0.5em;
text-align: center;
}
.infobox-bottom-links {
display: none;
}
.advanced-data {
display: none;
}
@media screen and (min-width: 720px) {
.content table.infobox {
float: right;
margin-top: 0.5em;
margin-left: 1em;
width: 300px !important;
}
.content table.infobox.skill-info {
float: none;
margin: 0 0 1em 0;
}
}
.multi-infobox {
margin-top: 0.5em;
margin-bottom: 2.5em;
}
.multi-infobox .tabber {
margin: 0;
}
.multi-infobox .tabber .tabbernav {
text-align: center;
margin-left: 0;
}
.mw-body .multi-infobox .tabber .tabbertab {
padding: 5px;
}
.multi-infobox table.infobox {
margin: 0;
}
.multi-infobox .infobox-buttons {
margin-top: 0;
}
@media screen and (min-width: 720px) {
.multi-infobox {
float: right;
margin-left: 1em;
width: 300px;
}
}
.tile {
padding: 1.5em 2em 1em;
}
.tile h2 {
font-weight: 600;
border: none;
margin-top: 0.4em;
}
.tile o .byline + h2 {
margin-top: -0.5em;
}
.tile-top {
padding: 1.3rem 1.5rem 2rem;
}
.tile-bottom {
padding: 1rem 1.5rem 2rem;
}
.tile-bottom.read-more {
padding: 0;
}
.tile-bottom.read-more a {
padding: 1em 1.75em;
}
:root {
--mobile-navbox-wide-bg-color: #dcd3bf;
--mobile-navbox-linear-gradient: linear-gradient(to right, rgba(255, 255, 255, 0), var(--body-main) 95%, var(--body-main));
}
.navbox {
border: 1px solid var(--body-border);
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
font-size: 0.85em;
}
.content .navbox ul {
padding-left: 0;
}
.content .navbox ul li {
margin-bottom: 0;
}
@media screen and (max-width: 719px) {
.navbox td,
.navbox th,
.navbox tr,
.navbox tbody,
.navbox .navbox-subgroup {
display: block;
}
}
@media screen and (min-width: 720px) {
.content table.navbox,
.content .navbox table {
width: 100% !important;
}
}
.navbox .navbox-subgroup {
margin: 0;
}
.navbox .navbar {
display: none;
}
.navbox .plink-template,
.navbox img {
display: none;
}
.navbox-title {
color: var(--text-color);
background-color: var(--body-dark);
font-size: 140%;
text-align: center;
padding: 0.25em 0.85em;
}
@media screen and (min-width: 720px) {
.navbox-title {
border-bottom: 1px solid var(--body-border);
}
}
.navbox-group-title {
background-color: var(--body-mid);
text-align: left;
padding: 0.2em 0.85em;
}
@media screen and (max-width: 719px) {
.navbox-group-title {
overflow: hidden;
white-space: nowrap;
text-overflow: ellipsis;
}
}
@media screen and (min-width: 720px) {
.navbox-group-title {
border: 1px solid var(--body-border);
border-width: 0 1px 1px 0;
width: 12vw;
}
}
.navbox-group-title-hidden {
display: none;
}
.navbox-list {
padding: 0;
position: relative;
}
@media screen and (min-width: 720px) {
.navbox-list {
border-bottom: 1px solid var(--body-border);
}
}
.navbox-list ul {
display: flex;
}
@media screen and (max-width: 719px) {
.navbox-list ul {
white-space: nowrap;
overflow-x: auto;
overflow-y: hidden;
-webkit-overflow-scrolling: touch;
}
}
@media screen and (min-width: 720px) {
.navbox-list ul {
padding: 0.2em 0.85em 0.5em !important;
flex-wrap: wrap;
}
}
@media screen and (min-width: 720px) {
.navbox-list[style*="center"] ul {
justify-content: center;
}
}
.navbox-list li {
display: inline-flex;
align-items: center;
height: 3.5em;
margin: 0 0 0 0.85em;
}
@media screen and (min-width: 720px) {
.navbox-list li {
height: 2.1em;
}
.navbox-list li:first-child {
margin-left: 0;
}
}
.navbox-list li + li::before {
content: '•';
display: inline-block;
white-space: pre-wrap;
position: relative;
left: -0.425em;
color: var(--text-color);
pointer-events: none;
}
.navbox-list li + li > a + a::before {
display: none;
}
.navbox-list li:last-child {
margin-right: 2em;
}
.navbox-list::after {
content: '';
display: block;
position: absolute;
background-image: var(--mobile-navbox-linear-gradient);
height: 100%;
width: 2.5em;
top: 0;
right: 0;
pointer-events: none;
}
@media screen and (min-width: 720px) {
.navbox-list::after {
display: none;
}
}
.navbox-list.navbox-parent {
border-bottom: 0;
padding: 0;
}
.navbox-list.navbox-parent::after {
display: none;
}
.navbox-group .navbox-group .navbox-group-title {
background-color: var(--body-light);
padding: 0 0.85em 0 1.7em;
}
@media screen and (min-width: 720px) {
.navbox-group .navbox-group .navbox-group-title {
padding-left: 0.85em;
}
}
.navbox-group .navbox-group .navbox-list ul {
padding-left: 1.7em;
}
.navbox-group .navbox-group .navbox-list li {
margin-bottom: 0;
}
.navbox-group .navbox-group .navbox-list li:first-child {
margin-left: 0;
}
.navbox-group .navbox-group.navbox-group-split .navbox-list ul {
padding-left: 0.85em;
}
.navbox-group .navbox-group .navbox-group:first-child .navbox-group-title {
padding-top: 0.5em;
}
@media screen and (min-width: 720px) {
.navbox-group .navbox-group .navbox-group:first-child .navbox-group-title {
padding-top: 0;
}
}
.navbox-group .navbox-group .navbox-group .navbox-group-title {
background-color: transparent;
padding-left: 2.55em;
}
@media screen and (min-width: 720px) {
.navbox-group .navbox-group .navbox-group .navbox-group-title {
background-color: var(--mobile-navbox-wide-bg-color);
padding-left: 0.85em;
}
}
.navbox-group .navbox-group .navbox-group .navbox-list ul {
padding-left: 2.55em;
}
.navbox-group .navbox-group .navbox-group.navbox-group-split .navbox-list ul {
padding-left: 1.7em;
}
@keyframes slide-up {
from {
opacity: 0;
transform: translateY(1rem);
}
to {
opacity: 1;
transform: translateY(0);
}
}
.mainpage-header {
margin: 2em 1em 0;
}
@media only screen and (max-width: 1000px) {
.mainpage-header .header-intro h1 {
text-align: center;
font-size: 1.8em;
}
.mainpage-header .header-intro p {
font-size: 1em;
}
}
.mainpage-body .tile-row {
width: inherit;
}
.mainpage-left .tile {
padding: 2.5em 1.75em 2em;
}
.mainpage-left .tile h2 {
padding: 0;
margin: 0.65em 0.5em;
}
.mainpage-left .tile-halves h2 {
padding: 0;
margin: 0.65em 0.5em;
}
.mainpage-recent-updates {
padding: 1.5em 1em 2.5em;
}
.mainpage-recent-updates::before {
content: 'Recent updates';
display: block;
margin-left: 1.5em;
color: var(--byline-color);
font-weight: bold;
text-transform: uppercase;
letter-spacing: 0.025em;
grid-column: 1 / 4;
}
.mainpage-recent-updates .tile-halves {
display: inline-block;
width: 100%;
white-space: initial;
flex: unset;
}
.mainpage-recent-updates .tile-halves:nth-child(1) {
animation: 0.9s 0.2s both slide-up;
}
.mainpage-recent-updates .tile-halves:nth-child(2) {
animation: 0.9s 0.4s both slide-up;
}
.mainpage-recent-updates .tile-halves:nth-child(3) {
animation: 0.9s 0.6s both slide-up;
}
.mainpage-recent-updates .tile-top {
height: 9em;
overflow: hidden;
}
.mainpage-recent-updates .tile-bottom {
padding-bottom: 0.5rem;
}
.mainpage-recent-updates .byline {
margin: 0;
}
.mainpage-recent-updates .byline + h2 {
margin: 0.025em 0 0;
padding: 0;
}
@media only screen and (max-width: 720px) {
.mainpage-recent-updates::before {
text-align: center;
margin: 0;
grid-column: auto;
}
}
.mainpage-contents {
background: var(--body-mid);
padding: 55px 1em 2em 2.5em;
overflow-x: auto;
grid-template-columns: repeat(6, 1fr) !important;
position: relative;
scroll-snap-align: center;
}
.mainpage-contents::before {
content: 'Explore';
margin: 1em;
position: absolute;
top: 0;
color: inherit;
font-weight: bold;
text-transform: uppercase;
letter-spacing: 0.025em;
grid-column: 1 / 6;
}
.mainpage-contents .tile-halves {
border: none;
background: none;
box-shadow: none;
width: 200px;
}
.mainpage-contents .tile-top {
padding: 0;
height: initial;
}
.mainpage-contents .tile-bottom {
border: none;
}
.mainpage-contents h2 {
width: 100%;
}
@media only screen and (max-width: 1000px) {
.mainpage-skills .tile-top ul {
margin: 0;
}
}
.mainpage-wikinews::before {
content: 'From the wiki';
margin-left: 0.75em;
color: var(--byline-color);
font-weight: bold;
text-transform: uppercase;
letter-spacing: 0.025em;
}
.mainpage-social {
border: none;
margin-bottom: 0;
}
.mainpage-social .tile-top {
display: flex;
align-items: center;
justify-content: center;
padding: 1em 2em;
min-height: 70px;
}
.mainpage-social .tile-top .social-icon {
float: left;
margin: 0 1em 0 -1em;
width: 60px;
text-align: center;
}
.mainpage-social .tile-top .social-header {
color: #fff;
font-weight: bold;
font-size: 1.25em;
margin: 0;
}
.mainpage-social .tile-top .social-tagline {
color: rgba(255, 255, 255, 0.9);
margin: 0;
}
.mainpage-social .tile-bottom {
border: none;
padding: 1em 2em;
}
.mainpage-social .tile-bottom p {
color: var(--byline-color);
font-weight: bold;
text-transform: uppercase;
letter-spacing: 0.025em;
color: #fff;
font-size: 0.9em;
text-align: center;
margin: 0;
}
.mainpage-social.mainpage-discord .tile-top {
background: #5865f2;
}
.mainpage-social.mainpage-discord .tile-bottom {
background: #525ee0;
}
.mainpage-social.mainpage-twitter .tile-top {
background: #15202b;
}
.mainpage-social.mainpage-twitter .tile-bottom {
background: #121c26;
}
.wikitable {
background: none;
box-shadow: none;
}
.wikitable tbody {
background: var(--body-light);
}
.toc {
background-color: var(--body-light);
border-color: var(--body-border);
}
#filetoc li {
display: inline;
padding-right: 2em;
}
.mw-dismissable-notice-body {
margin: 0;
}
.mw-dismissable-notice-body .mw-dismissable-notice-close-parent {
border-radius: 0 !important;
font-size: 0.75em;
}
:root {
--thumb-image-background: var(--body-light);
--thumb-caption-background: var(--body-mid);
}
.content .thumbinner {
background-color: var(--thumb-bg);
}
.content .thumbimage {
border: 1px solid transparent;
border-bottom: none;
}
.content .thumbcaption {
margin: 0;
padding: 4px 6px !important;
color: inherit;
background: var(--thumb-caption-bg);
}
.content table.messagebox {
margin: 0.5em auto;
}
.content table a > img {
max-width: inherit !important;
height: inherit !important;
}
.content .infobox a > img {
max-width: 100% !important;
height: auto !important;
}
.content .infobox-bonuses a > img {
max-width: inherit !important;
height: inherit !important;
}
1c209fbd5c21db419149134cacb74655aaa7e1ad
Crenopolis
0
75
1133
695
2024-03-24T04:35:58Z
Knox
49
wikitext
text/x-wiki
'''Crenopolis''' is a [[location]] that can be accessed by [[player]]s who purchase the [[Premium Pass]]. Players require access to this location to unlock [[trading]], exclusive armour dyes, and name changes.
{{Premium Pass}}
[[Category:Locations]]
4c618ac3e923e47e9ca92df0ebd116db1ea523c0
User:Mercifull
2
653
1134
2024-03-24T09:59:28Z
Mercifull
50
Created page with "Just someone who played "the other game" for more than 2 decades and become disenfranchised."
wikitext
text/x-wiki
Just someone who played "the other game" for more than 2 decades and become disenfranchised.
adb86de926fffbc7d1919b328a0a423be081eea2
Fenforge
0
129
1135
337
2024-03-24T10:01:07Z
Mercifull
50
wikitext
text/x-wiki
[[File:Fenforge logo.png|left]]
'''Fenforge''' is a cross-platform game engine that has been in continuous development by [[Fen Research]] since May [[2010]]. First used to develop ''Solstrike'' (2014) and ''Iona's Toybox'' (2021), ''[[Brighter Shores]]'' is the third game to use this engine. The engine is based on a privately developed programming language, and designed to be flexible general-purpose engine, allowing programmers to make different types of games relatively quickly.
== Other games using Fenforge ==
{| class="wikitable sortable"
|-
! Release date !! Name !! Image
|-
| || Solstrike || [[File:solstrike.png|300px]]
|-
| || Iona's Toybox || [[File:Ionas Toybox.png|300px]]
|}
[[Category:Mechanics]]
[[Category:Fen Research]]
ae234be726d955db8f091b37f92bd52bbc4c26d7
2010
0
502
1136
860
2024-03-24T10:17:39Z
ToofleBerry
6
wikitext
text/x-wiki
'''2010''' is the year of formation of [[Fen Research]].
* [[3 September]] - Fen Research was founded<ref>https://web.archive.org/web/20111201004716/http://www.fenresearch.com:80/</ref>
==References==
<references/>
{{Timeline}}
2cc4ddf9d172b0c9c0bcc5c5a0d240ddfec593f1
1147
1136
2024-03-24T10:32:42Z
ToofleBerry
6
wikitext
text/x-wiki
'''2010''' is the year of formation of [[Fen Research]].
* [[14 May]] - [https://fenresearch.com/ https://fenresearch.com/] was registered.
* [[14 May]] - [https://fenforge.com/ https://fenforge.com/] was registered.
* [[3 September]] - Fen Research was founded.<ref>https://web.archive.org/web/20111201004716/http://www.fenresearch.com:80/</ref>
==References==
<references/>
{{Timeline}}
d4797e78b5e30c76a231b55294eeabcb42372e94
2011
0
654
1137
2024-03-24T10:22:57Z
ToofleBerry
6
Created page with "'''2011'''. * [[16 September]] - The FenResearch Twitter account was created.<ref name="fenresearch.com20111201">https://web.archive.org/web/20111201004716/http://www.fenresearch.com:80/</ref> * [[19 September]] - Two job vacancies were posted, one for a sprite artist, one for a software/games developer.<ref name="fenresearch.com20111201"/> * [[10 October]] - The sprite artist vacancy was fulfilled by Greg.<ref name="fenresearch.com20111201"/> ==References== <reference..."
wikitext
text/x-wiki
'''2011'''.
* [[16 September]] - The FenResearch Twitter account was created.<ref name="fenresearch.com20111201">https://web.archive.org/web/20111201004716/http://www.fenresearch.com:80/</ref>
* [[19 September]] - Two job vacancies were posted, one for a sprite artist, one for a software/games developer.<ref name="fenresearch.com20111201"/>
* [[10 October]] - The sprite artist vacancy was fulfilled by Greg.<ref name="fenresearch.com20111201"/>
==References==
<references/>
{{Timeline}}
0a573057ed310719912b39f8ce8797879a6143dc
1145
1137
2024-03-24T10:26:10Z
ToofleBerry
6
wikitext
text/x-wiki
'''2011'''.
* [[16 September]] - The FenResearch Twitter account was created.<ref name="fenresearch.com20111201">https://web.archive.org/web/20111201004716/http://www.fenresearch.com:80/</ref>
* [[19 September]] - Two job vacancies were posted, one for a sprite artist, one for a software/games developer.<ref name="fenresearch.com20111201"/>
* [[10 October]] - The sprite artist vacancy was fulfilled by Greg.<ref name="fenresearch.com20111201"/>
* [[12 December]] - The software/games developer vacancy was fulfilled by Andy.<ref nam=e"fenresearch.com20120328">https://web.archive.org/web/20120328014925/http://www.fenresearch.com/</ref>
==References==
<references/>
{{Timeline}}
8ae816cc13cf1221197000106674e70e68221f31
1146
1145
2024-03-24T10:26:17Z
ToofleBerry
6
wikitext
text/x-wiki
'''2011'''.
* [[16 September]] - The FenResearch Twitter account was created.<ref name="fenresearch.com20111201">https://web.archive.org/web/20111201004716/http://www.fenresearch.com:80/</ref>
* [[19 September]] - Two job vacancies were posted, one for a sprite artist, one for a software/games developer.<ref name="fenresearch.com20111201"/>
* [[10 October]] - The sprite artist vacancy was fulfilled by Greg.<ref name="fenresearch.com20111201"/>
* [[12 December]] - The software/games developer vacancy was fulfilled by Andy.<ref name="fenresearch.com20120328">https://web.archive.org/web/20120328014925/http://www.fenresearch.com/</ref>
==References==
<references/>
{{Timeline}}
d4df5be57b11f802e62a60dfb8baafc7717cd512
Template:Timeline
10
490
1138
858
2024-03-24T10:23:11Z
ToofleBerry
6
wikitext
text/x-wiki
{{Navbox
|name = Timeline
|title = ''Brighter Shores'' timeline
|gtitle1 = 2010s
|group1 =
* [[2010]]
* [[2011]]
|gtitle2 = 2020s
|group2 =
* [[2024]]
|gtitle3 = Other
|group3 =
* [[Upcoming updates]]
* [[Hidden updates]]
* [[:Category:Dates in Brighter Shores|Dates in Brighter Shores]]
}}{{Ctg|Timeline}}
4900e36acf2e13a8c4de7474a6375b23c09188a1
1149
1138
2024-03-24T10:35:29Z
ToofleBerry
6
wikitext
text/x-wiki
{{Navbox
|name = Timeline
|title = ''Brighter Shores'' timeline
|gtitle1 = 2010s
|group1 =
* [[2010]]
* [[2011]]
* [[2012]]
|gtitle2 = 2020s
|group2 =
* [[2024]]
|gtitle3 = Other
|group3 =
* [[Upcoming updates]]
* [[Hidden updates]]
* [[:Category:Dates in Brighter Shores|Dates in Brighter Shores]]
}}{{Ctg|Timeline}}
9b09473c095801179c33fe33edb722048ec421c8
1151
1149
2024-03-24T10:37:23Z
ToofleBerry
6
wikitext
text/x-wiki
{{Navbox
|name = Timeline
|title = ''Brighter Shores'' timeline
|gtitle1 = 2010s
|group1 =
* [[2010]]
* [[2011]]
* [[2012]]
|gtitle2 = 2020s
|group2 =
* [[2020]]
* [[2024]]
|gtitle3 = Other
|group3 =
* [[Upcoming updates]]
* [[Hidden updates]]
* [[:Category:Dates in Brighter Shores|Dates in Brighter Shores]]
}}{{Ctg|Timeline}}
b7ef194db5e3a58728cb0dec54779e28501adb03
Coins
0
441
1139
707
2024-03-24T10:23:51Z
InvalidCards
4
Coins: Explained
wikitext
text/x-wiki
'''Coins''' are the currency of [[Brighter Shores]]. They come in three types:
* [[File:Gold coin.png|18px]] Gold coins
* [[File:Silver coin.png|18px]] Silver coins
* [[File:Bronze coin.png|18px]] Bronze coins
The three types are not separate currencies; there are 1,000 bronze coins to a silver coin, and 1,000 silver coins to a gold coin (or 1,000,000 bronze coins to a gold coin).<ref>https://web.archive.org/web/20240324102045/https://twitter.com/AndrewCGower/status/1771788649589289317</ref>
==References==
{{Reflist}}
[[Category:Items]]
9e76177cb16a4521c86f9397bb20a2ee853e1ecd
1140
1139
2024-03-24T10:24:29Z
InvalidCards
4
Missed the part where it said copper
wikitext
text/x-wiki
'''Coins''' are the currency of [[Brighter Shores]]. They come in three types:
* [[File:Gold coin.png|18px]] Gold coins
* [[File:Silver coin.png|18px]] Silver coins
* [[File:Bronze coin.png|18px]] Copper coins
The three types are not separate currencies; there are 1,000 copper coins to a silver coin, and 1,000 silver coins to a gold coin (or 1,000,000 copper coins to a gold coin).<ref>https://web.archive.org/web/20240324102045/https://twitter.com/AndrewCGower/status/1771788649589289317</ref>
==References==
{{Reflist}}
[[Category:Items]]
207adf2bb483b05d97d98b549d7839197f139a3a
1144
1140
2024-03-24T10:25:31Z
InvalidCards
4
File rename
wikitext
text/x-wiki
'''Coins''' are the currency of [[Brighter Shores]]. They come in three types:
* [[File:Gold coin.png|18px]] Gold coins
* [[File:Silver coin.png|18px]] Silver coins
* [[File:Copper coin.png|18px]] Copper coins
The three types are not separate currencies; there are 1,000 copper coins to a silver coin, and 1,000 silver coins to a gold coin (or 1,000,000 copper coins to a gold coin).<ref>https://web.archive.org/web/20240324102045/https://twitter.com/AndrewCGower/status/1771788649589289317</ref>
==References==
{{Reflist}}
[[Category:Items]]
e5c4fdedd8bddeac1528296bda4a7a71bbd9d1d5
File:Fen logo 6.png
6
655
1141
2024-03-24T10:24:43Z
ToofleBerry
6
The Fen Research logo on 28 March [[2012]]; obtained from https://web.archive.org/web/20120328015000im_/http://www.fenresearch.com/_/rsrc/1316441752680/home/fen%20logo%206.png?height=200&width=200.
wikitext
text/x-wiki
== Summary ==
The Fen Research logo on 28 March [[2012]]; obtained from https://web.archive.org/web/20120328015000im_/http://www.fenresearch.com/_/rsrc/1316441752680/home/fen%20logo%206.png?height=200&width=200.
f8693b27a14fbbe66049edde44b8cab09963c43e
File:Copper coin.png
6
439
1142
705
2024-03-24T10:24:51Z
InvalidCards
4
InvalidCards moved page [[File:Bronze coin.png]] to [[File:Copper coin.png]] without leaving a redirect: As official a name as we'll get atm
wikitext
text/x-wiki
Terrible quality icons of the coins seen in the "Choose a slot" screen from Andrew's Twitter
be204519bbf95d7ba9ff391ec9c6af2f1ea796e1
Template:Nutshell
10
485
1143
840
2024-03-24T10:25:19Z
InvalidCards
4
File rename
wikitext
text/x-wiki
{{MessageBox
|img = [[File:Copper coin.png|center|link=]]
|{{{title|This page}}} in a nutshell:
|{{#if:{{{2|}}}
|*{{{1}}}
*{{{2}}}{{#if:{{{3|}}}|
*{{{3}}}
}}|{{{1}}}}}
}}<noinclude>{{/doc}}</noinclude>
6fd94f2dddb493e8cf11afe4e9db9c44b83a8fce
2012
0
656
1148
2024-03-24T10:35:20Z
ToofleBerry
6
Created page with "'''2012'''. * [[13 March]] - [https://solstrike.com/ https://solstrike.com/], related to the first game developed using [[Fenforge]], was registered. ==References== <references/> {{Timeline}}"
wikitext
text/x-wiki
'''2012'''.
* [[13 March]] - [https://solstrike.com/ https://solstrike.com/], related to the first game developed using [[Fenforge]], was registered.
==References==
<references/>
{{Timeline}}
8262b5df63c94506de67485f38bed8eccc162149
2020
0
657
1150
2024-03-24T10:37:12Z
ToofleBerry
6
Created page with "'''2020'''. * [[29 April]] - [https://ionastoybox.com/ https://ionastoybox.com/], related to the second game developed using [[Fenforge]], was registered. ==References== <references/> {{Timeline}}"
wikitext
text/x-wiki
'''2020'''.
* [[29 April]] - [https://ionastoybox.com/ https://ionastoybox.com/], related to the second game developed using [[Fenforge]], was registered.
==References==
<references/>
{{Timeline}}
594ca8ed713e74d705fda7f389d8ef984aafdf4f
2014
0
658
1152
2024-03-24T10:42:27Z
ToofleBerry
6
Created page with "'''2014'''. * Between 4 April and 28 April - Originally intended as a test and demo of the Fenforge engine, the early access version of Solstrike, the first game developed using [[Fenforge]], was made available online<ref>https://web.archive.org/web/20140428211151/http://www.solstrike.com/#information</ref>. ==References== <references/> {{Timeline}}"
wikitext
text/x-wiki
'''2014'''.
* Between 4 April and 28 April - Originally intended as a test and demo of the Fenforge engine, the early access version of Solstrike, the first game developed using [[Fenforge]], was made available online<ref>https://web.archive.org/web/20140428211151/http://www.solstrike.com/#information</ref>.
==References==
<references/>
{{Timeline}}
eca49752515a9612eba663f8dff009a85505e027
1155
1152
2024-03-24T10:52:57Z
ToofleBerry
6
wikitext
text/x-wiki
'''2014'''.
* 5 February - A patent was filed for the client-server interaction in the [[Fenforge]] engine<ref name="patent">https://patents.google.com/patent/US9426259B2/</ref>.
* Between 4 April and 28 April - Originally intended as a test and demo of the Fenforge engine, the early access version of Solstrike, the first game developed using [[Fenforge]], was made available online<ref>https://web.archive.org/web/20140428211151/http://www.solstrike.com/#information</ref>.
==References==
<references/>
{{Timeline}}
8f29013358bba14ed85a3949914cb7a9ccda047a
1156
1155
2024-03-24T10:53:07Z
ToofleBerry
6
wikitext
text/x-wiki
'''2014'''.
* [[5 February]] - A patent was filed for the client-server interaction in the [[Fenforge]] engine<ref name="patent">https://patents.google.com/patent/US9426259B2/</ref>.
* Between 4 April and 28 April - Originally intended as a test and demo of the Fenforge engine, the early access version of Solstrike, the first game developed using [[Fenforge]], was made available online<ref>https://web.archive.org/web/20140428211151/http://www.solstrike.com/#information</ref>.
==References==
<references/>
{{Timeline}}
670e27811370a8726796a761c749ec373394831c
2010
0
502
1153
1147
2024-03-24T10:47:49Z
ToofleBerry
6
wikitext
text/x-wiki
'''2010''' is the year of formation of [[Fen Research]].
* [[14 May]] - [https://fenresearch.com/ https://fenresearch.com/] was registered.
* [[14 May]] - [https://fenforge.com/ https://fenforge.com/] was registered.
* [[16 June]] - Fen Research Ltd. was incorporated as a private company<ref>https://find-and-update.company-information.service.gov.uk/company/07285955</ref>.
* [[3 September]] - Fen Research was founded.<ref>https://web.archive.org/web/20111201004716/http://www.fenresearch.com:80/</ref>
==References==
<references/>
{{Timeline}}
ff398c388da44b1b670c8c6596355123faeb1a21
Fenforge
0
129
1154
1135
2024-03-24T10:51:47Z
ToofleBerry
6
wikitext
text/x-wiki
[[File:Fenforge logo.png|left]]
'''Fenforge''' is a cross-platform game engine that has been in continuous development by [[Fen Research]] since May [[2010]]. First used to develop ''Solstrike'' (2014) and ''Iona's Toybox'' (2021), ''[[Brighter Shores]]'' is the third game to use this engine. The engine is based on a privately developed programming language, and designed to be flexible general-purpose engine, allowing programmers to make different types of games relatively quickly.
== Other games using Fenforge ==
{| class="wikitable sortable"
|-
! Release date !! Name !! Image
|-
| || Solstrike || [[File:solstrike.png|300px]]
|-
| || Iona's Toybox || [[File:Ionas Toybox.png|300px]]
|}
== Technical details ==
The inner workings of the Fenforge engine are described in patent US9426259B2<ref name="patent">https://patents.google.com/patent/US9426259B2/</ref>.
==References ==
<references />
[[Category:Mechanics]]
[[Category:Fen Research]]
c45df85f7842bd5352fc6bd00dd5a3124cd00fb2
2016
0
659
1157
2024-03-24T10:53:37Z
ToofleBerry
6
Created page with "'''2016'''. * [[23 August]] - The patent for the client-server interaction in the [[Fenforge]] engine was granted<ref name="patent">https://patents.google.com/patent/US9426259B2/</ref>. ==References== <references/> {{Timeline}}"
wikitext
text/x-wiki
'''2016'''.
* [[23 August]] - The patent for the client-server interaction in the [[Fenforge]] engine was granted<ref name="patent">https://patents.google.com/patent/US9426259B2/</ref>.
==References==
<references/>
{{Timeline}}
03e29ff1c8fd548bad81be712c19a3c15c2d77a7
Template:Timeline
10
490
1158
1151
2024-03-24T10:53:56Z
ToofleBerry
6
wikitext
text/x-wiki
{{Navbox
|name = Timeline
|title = ''Brighter Shores'' timeline
|gtitle1 = 2010s
|group1 =
* [[2010]]
* [[2011]]
* [[2012]]
* [[2013]]
* [[2014]]
* [[2015]]
* [[2016]]
|gtitle2 = 2020s
|group2 =
* [[2020]]
* [[2024]]
|gtitle3 = Other
|group3 =
* [[Upcoming updates]]
* [[Hidden updates]]
* [[:Category:Dates in Brighter Shores|Dates in Brighter Shores]]
}}{{Ctg|Timeline}}
8644aacf82284491a1e4c8d49b3c52b824ea16a4
Professions
0
56
1159
1119
2024-03-24T11:48:00Z
Pottso
41
Spelling mistake
wikitext
text/x-wiki
'''Professions''' are skills that [[player]]s can train and utilise in [[Brighter Shores]]. Most professions can either be trained by the player actively playing the game, or passively while the game is closed.
As the player progresses through the game, more professions will become available for the player to learn. Players aren't limited to one profession at a time; they can utilise multiple at once.{{CiteGeneral|url=https://www.gamesradar.com/runescape-creator-answers-our-biggest-questions-about-his-new-mmo-brighter-shores-classes-professions-monetization-and-a-ttrpg-open-world/|title=RuneScape creator answers our biggest questions about his new MMO Brighter Shores: classes, professions, monetization, and a TTRPG open world|author=Austin Wood|date=23 March 2024|accessdate=23 March 2024|archiveurl=https://archive.is/AxMwI|archivedate=23 March 2024|name=griv}}
==Passive training==
Unlike other similar MMOs, players can continue to perform certain profession-related activities while logged out of the game.
==List of professions==
{| class="wikitable"
! colspan="2" | Name !! Uses
|-
| [[File:Profession fisher.png|30px|link=Fisher]] || [[Fisher]] || Catching various [[fish]]
|-
| [[File:Profession forager.png|30px|link=Forager]] || [[Forager]] || Gathering items
|-
| || [[Chef]] || Cooking [[food]] items
|-
| || [[Woodcutter]] || Chopping down [[tree]]s
|-
| || [[Miner]] || Mining [[mineral]]s
|-
| || [[Alchemist]] || Brewing [[potion]]s
|-
| || [[Stonemason]] ||
|-
| || [[Merchant]] ||
|-
| || [[Blacksmith]] ||
|}
==Gallery==
<gallery mode="packed" heights="160">
File:Professions preview 1.jpg
File:Professions preview 2.jpg
File:Professions preview 3.jpg
</gallery>
==References==
{{Reflist}}
{{Professions}}
{{Mechanics}}
6887a1de8b6bfca8c132ed17404908f6ef190b91
1187
1159
2024-03-24T12:46:54Z
Habblet
11
/* List of professions */
wikitext
text/x-wiki
'''Professions''' are skills that [[player]]s can train and utilise in [[Brighter Shores]]. Most professions can either be trained by the player actively playing the game, or passively while the game is closed.
As the player progresses through the game, more professions will become available for the player to learn. Players aren't limited to one profession at a time; they can utilise multiple at once.{{CiteGeneral|url=https://www.gamesradar.com/runescape-creator-answers-our-biggest-questions-about-his-new-mmo-brighter-shores-classes-professions-monetization-and-a-ttrpg-open-world/|title=RuneScape creator answers our biggest questions about his new MMO Brighter Shores: classes, professions, monetization, and a TTRPG open world|author=Austin Wood|date=23 March 2024|accessdate=23 March 2024|archiveurl=https://archive.is/AxMwI|archivedate=23 March 2024|name=griv}}
==Passive training==
Unlike other similar MMOs, players can continue to perform certain profession-related activities while logged out of the game.
==List of professions==
{| class="wikitable"
! colspan="2" | Name !! Uses
|-
| [[File:Profession fisher.png|30px|link=Fisher]] || [[Fisher]] || Catching various [[fish]]
|-
| [[File:Profession forager.png|30px|link=Forager]] || [[Forager]] || Gathering items
|-
| || [[Chef]] || Cooking [[food]] items
|-
| [[File:Woodcutter icon.png|30px|link=Woodcutter]] || [[Woodcutter]] || Chopping down [[tree]]s
|-
| || [[Miner]] || Mining [[mineral]]s
|-
| || [[Alchemist]] || Brewing [[potion]]s
|-
| || [[Stonemason]] ||
|-
| || [[Merchant]] ||
|-
| || [[Blacksmith]] ||
|}
==Gallery==
<gallery mode="packed" heights="160">
File:Professions preview 1.jpg
File:Professions preview 2.jpg
File:Professions preview 3.jpg
</gallery>
==References==
{{Reflist}}
{{Professions}}
{{Mechanics}}
3c97f64637e90758054390831225cbd0aa748724
Category:Needs image
14
660
1160
2024-03-24T12:21:53Z
Habblet
11
Created page with "{{Categoryheader|images|that need an image added}} {{Hidden category}} __HIDDENCAT__ [[Category:Maintenance categories]] __EXPECTUNUSEDCATEGORY__"
wikitext
text/x-wiki
{{Categoryheader|images|that need an image added}}
{{Hidden category}}
__HIDDENCAT__
[[Category:Maintenance categories]]
__EXPECTUNUSEDCATEGORY__
5ccc0768a0d449c8f6442ba36502c8b5544b87db
Template:Infobox Profession
10
661
1161
2024-03-24T12:23:43Z
Habblet
11
Created page with "{| class="wikitable infobox-profession" style="float:right" ! colspan="2" | {{{name|{{PAGENAME}}}}} |- | colspan="2" style="text-align:center" | {{{image|[[Special:Upload|Please upload an image!]]{{Mainonly|[[Category:Needs image]]}}}}} |- ! Release date | {{{release|Q3 [[2024]]}}} |}{{Mainonly|[[Category:Professions]]}}<noinclude>{{/doc}}</noinclude>"
wikitext
text/x-wiki
{| class="wikitable infobox-profession" style="float:right"
! colspan="2" | {{{name|{{PAGENAME}}}}}
|-
| colspan="2" style="text-align:center" | {{{image|[[Special:Upload|Please upload an image!]]{{Mainonly|[[Category:Needs image]]}}}}}
|-
! Release date
| {{{release|Q3 [[2024]]}}}
|}{{Mainonly|[[Category:Professions]]}}<noinclude>{{/doc}}</noinclude>
5492a2958a7ae1fdc6e2bcaeaa1d1821c1367087
Fisher
0
58
1162
354
2024-03-24T12:24:51Z
Habblet
11
wikitext
text/x-wiki
{{Infobox Profession
|name = Fisher
|image = [[File:Profession fisher.png|50px]]
}}
[[File:Fisher.jpg|thumb|right|A preview of a player fishing.]]
'''Fisher''' is a type of [[professions|profession]] which specialises in catching [[fish]].
{{Professions}}
991b5346d95ac0bd48f29f4716bf2d6c6f6fc13a
Forager
0
59
1163
1014
2024-03-24T12:25:16Z
Habblet
11
wikitext
text/x-wiki
{{Infobox Profession
|name = Forager
|image = [[File:Profession forager.png|50px]]
}}
[[File:Foraging.jpg|thumb|right|Some players foraging.]]
'''Forager''' is a type of [[professions|profession]].
{{Professions}}
a87138592d09d1c01520137e7606139070f1e158
1191
1163
2024-03-24T12:48:58Z
Habblet
11
wikitext
text/x-wiki
{{Infobox Profession
|name = Forager
|image = [[File:Profession forager.png|50px]]
}}
[[File:Foraging.jpg|thumb|right|Some players foraging.]]
[[File:Foraging 2.jpg|thumb|right|A player foraging.]]
'''Forager''' is a type of [[Professions|profession]].
{{Professions}}
a5756815eea8098542a41da15980d13a665aa05a
Chef
0
60
1164
400
2024-03-24T12:26:14Z
Habblet
11
wikitext
text/x-wiki
{{Infobox Profession
|name = Chef
}}
[[File:Chef.jpg|thumb|right|A player cooking [[basic bacon]].]]
'''Chef''' is a type of [[professions|profession]] which allows the [[player]] to [[cooking|cook]] many different [[food]] items.
{{Professions}}
0b70eb2f19ae328660148d3e6e9c4da4e0e38e2e
Category:Profession icons
14
662
1165
2024-03-24T12:30:42Z
Habblet
11
Created page with "{{Categoryheader|images|[[Professions|profession]] icons||}} [[Category:Professions]]"
wikitext
text/x-wiki
{{Categoryheader|images|[[Professions|profession]] icons||}}
[[Category:Professions]]
fdd647b1d3f4406f6b69d5bf44f27e40b49e1a4d
File:Woodcutter icon.png
6
663
1166
2024-03-24T12:31:35Z
Habblet
11
[[Category:Profession icons]]
wikitext
text/x-wiki
== Summary ==
[[Category:Profession icons]]
851da23e8cb4cc240ac0babb8e6c15c813c64cda
MediaWiki:Minerva.less/mainpage.less
8
421
1167
1131
2024-03-24T12:31:44Z
Merds
25
less
less
/* ===================
MAIN PAGE
=================== */
// preview the mobile main page at <https://brightershoreswiki.org/?useformat=mobile>
/* ===================
variables
=================== */
@mp-text-light: fade( @white, 90% );
@mp-gutter-width: .9rem;
/* ===================
mixins
=================== */
.uppercase-heading(@text-color: var(--byline-color)) {
color: @text-color;
font-weight: bold;
text-transform: uppercase;
letter-spacing: .025em;
}
@keyframes slide-up {
from {
opacity: 0;
transform: translateY(1rem);
}
to {
opacity: 1;
transform: translateY(0);
}
}
/* ====================
general styles
==================== */
.mainpage-header {
margin: 2em 1em 0; // reduce margins
.header-intro {
@media only screen and (max-width: @width-breakpoint-desktop) {
h1 {
text-align: center;
font-size: 1.8em;
}
p {
font-size: 1em; // reset from 1.1m
}
}
}
}
.mainpage-body {
.tile-row {
// common does width: 100%
width: inherit;
}
}
/* remove this when we get a 6th thing to add on the mainpage "events" (this counteracts the flex on desktop)*/
.mainpage-contents.tile-row {
display: inherit;
}
/* remove until above this line */
.mainpage-left {
.tile {
padding: 2.5em 1.75em 2em;
h2 {
padding: 0;
margin: .65em .5em;
}
}
.tile-halves {
h2 {
padding: 0;
margin: .65em .5em;
}
}
}
/* =============================
section-specific styles
============================= */
/* --------------------
recent updates
-------------------- */
.mainpage-recent-updates {
padding: 1.5em 1em 2.5em;
&::before {
content: 'Recent updates';
display: block;
margin-left: 1.5em;
.uppercase-heading();
grid-column: ~"1 / 4";
}
.tile-halves {
display: inline-block;
width: 100%;
white-space: initial;
flex: unset;
&:nth-child(1) {
animation: .9s .2s both slide-up;
}
&:nth-child(2) {
animation: .9s .4s both slide-up;
}
&:nth-child(3) {
animation: .9s .6s both slide-up;
}
}
.tile-top {
height: 9em;
overflow: hidden;
}
.tile-bottom {
padding-bottom: .5rem;
}
.byline {
margin: 0;
& + h2 {
margin: .025em 0 0;
padding: 0;
}
}
// center recent updates for smaller widths
@media only screen and (max-width: @width-breakpoint-tablet) {
&::before {
text-align: center;
margin: 0;
grid-column: auto;
}
}
}
/* --------------------
wiki contents
-------------------- */
.mainpage-contents {
background: var(--body-mid);
padding: 55px 1em 2em 2.5em;
overflow-x: auto;
grid-template-columns: repeat(6, 1fr) !important; // shouldnt break into two
position: relative;
scroll-snap-align: center;
&::before {
content: 'Explore';
margin: 1em;
position: absolute;
top: 0;
.uppercase-heading(@text-color: inherit);
grid-column: ~"1 / 6";
}
.tile-halves {
border: none;
background: none;
box-shadow: none;
width: 200px;
}
.tile-top {
padding: 0;
height: initial;
}
.tile-bottom {
border: none;
}
h2 {
width: 100%;
}
}
/* --------------------
skills
-------------------- */
.mainpage-skills .tile-top ul {
@media only screen and (max-width: @width-breakpoint-desktop) {
margin: 0;
}
}
/* --------------------
wiki news
-------------------- */
.mainpage-wikinews {
&::before {
content: 'From the wiki';
margin-left: .75em;
.uppercase-heading();
}
}
/* --------------------
social
-------------------- */
.mainpage-social {
border: none;
margin-bottom: 0;
.tile-top {
display: flex;
align-items: center;
justify-content: center;
padding: 1em 2em;
min-height: 70px; // not in em because the server icon is a fixed size
.social-icon {
float: left;
margin: 0 1em 0 -1em;
width: 60px;
text-align: center;
}
.social-header {
color: @white;
font-weight: bold;
font-size: 1.25em;
margin: 0;
}
.social-tagline {
color: @mp-text-light;
margin: 0;
}
}
.tile-bottom {
border: none;
padding: 1em 2em;
p {
.uppercase-heading();
color: @white;
font-size: .9em;
text-align: center;
margin: 0;
}
}
// Discord colors
&.mainpage-discord {
.tile-top {
background: @discord-bg;
}
.tile-bottom {
background: @discord-bg-dark;
}
}
// X (Twitter) colors
&.mainpage-twitter {
.tile-top {
background: @twitter-bg;
}
.tile-bottom {
background: @twitter-bg-dark;
}
}
}
6b03bf3e9ad92f5d827686de74406d50ec0dfd81
MediaWiki:Minerva.css
8
422
1168
1132
2024-03-24T12:31:49Z
Merds
25
Updating CSS from [[MediaWiki:Minerva.less]]
css
text/css
/* <pre> */
body {
font-family: system-ui, -apple-system, Roboto, Helvetica, sans-serif;
}
@media all and (max-width: 320px) {
body {
font-size: 0.9em;
}
}
.content {
line-height: 1.7;
}
.pre-content h1,
.content h1,
.content h2 {
font-weight: bold;
}
body {
background: var(--body-background-color);
color: var(--text-color);
}
select {
color: var(--text-color);
}
a:not( [ href ] ) {
color: inherit;
}
a.external,
.mw-parser-output a.external {
background-image: var(--external-icon);
}
blockquote {
border-color: var(--body-mid);
font-family: inherit;
}
.pre-content h1 {
text-align: center;
}
.mw-parser-output h2:first-of-type {
clear: both;
}
.content .mw-parser-output > h2,
.content .section-heading {
border-color: var(--sidebar);
}
.content .mw-parser-output > h2,
.content .section-heading {
border-color: var(--sidebar);
}
.content .plainlist ol,
.content .plainlist ul {
padding: 0;
}
.content p {
margin: 0.5em 0;
}
.content hr {
background: none;
border-color: var(--sidebar);
border-style: solid;
border-width: 1px 0 0 0;
height: initial;
}
.content kbd,
.content samp {
border: none;
}
.content code,
.content pre {
background-color: var(--mw-code-background-color);
border: 1px solid var(--body-border);
}
:root {
--searchbutton-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 20 20'%3E%3Cg fill='%23000'%3E%3Cpath d='M12.2 13.6a7 7 0 1 1 1.4-1.4l5.4 5.4-1.4 1.4-5.4-5.4zM3 8a5 5 0 1 0 10 0A5 5 0 1 0 3 8z'/%3E%3C/g%3E%3C/svg%3E");
--external-icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' encoding='UTF-8'%3F%3E%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='10' viewBox='0 0 10 10'%3E%3Cg fill='%23906039'%3E%3Cpath d='M8.9 8.9H1.1V1.1h2.8V0H1.1C.5 0 0 .5 0 1.1v7.8C0 9.5.5 10 1.1 10h7.8c.6 0 1.1-.5 1.1-1.1V6.1H8.9v2.8z'/%3E%3Cpath d='M10 0H5.6l1.8 1.8L4.2 5l.8.8 3.2-3.2L10 4.4V0z'/%3E%3C/g%3E%3C/svg%3E");
}
#mw-mf-page-center {
background-color: transparent;
}
.header {
border-top: none;
}
.header-container.header-chrome {
background: var(--body-background-image) var(--body-background-color) no-repeat;
background-color: var(--body-background-color);
background-size: 900px;
box-shadow: inset 0 -1px 3px rgba(0, 0, 0, 0.1);
}
.header-container .notification-count {
border-radius: 50%;
}
.header-container .notification-count.notification-unseen {
background: none;
}
.header-container .branding-box {
opacity: 1;
}
.search-box {
text-align: right;
}
.search-box .search {
background-color: var(--search-box);
border-color: var(--search-box);
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
}
.search-box .search::placeholder {
color: var(--byline-color);
}
.client-nojs .search-box .search:focus,
.search-overlay .search-box .search:focus {
border-color: var(--link-color);
box-shadow: inset 0 0 0 1px var(--link-color), 0 1px 1px rgba(0, 0, 0, 0.05);
}
.mw-ui-background-icon-search {
background-image: var(--searchbutton-icon);
}
.overlay {
background: var(--body-main);
}
.overlay textarea {
color: var(--text-color);
}
.overlay.search-overlay {
background: var(--body-main);
}
.overlay.search-overlay .results,
.overlay.search-overlay .search-feedback {
background-color: var(--body-light);
}
.overlay.search-overlay .search-content {
border-color: var(--body-mid);
}
.overlay .license {
color: var(--base-text-color);
}
.overlay .panel {
border-color: var(--sidebar);
}
.overlay .content-header {
background-color: var(--body-light);
border-color: transparent;
}
.overlay.overlay-loading {
background: var(--ooui-window-background);
}
.overlay .overlay-content {
background: var(--body-main);
}
.page-summary h2,
.page-summary h3 {
color: var(--text-color);
}
.page-list li,
.topic-title-list li,
.site-link-list li {
border-color: var(--body-mid);
}
.overlay-enabled .overlay:not(.editor-overlay),
.overlay-enabled #mw-mf-page-center {
overflow-y: scroll;
}
.overlay-header-container,
.overlay-footer-container {
background-color: var(--body-background-color);
border-color: transparent;
}
.editor-overlay .wikitext-editor {
color: var(--text-color);
}
.editor-overlay .overlay-header {
outline-color: transparent;
}
.editor-overlay .summary-request {
color: var(--text-color);
}
.editor-overlay .editor-switcher {
border: none;
}
.action-submit .mw-editnotice .action-edit .mw-editnotice,
.action-submit .mw-editTools,
.action-edit .mw-editTools,
.action-submit .preview-limit-report-wrapper,
.action-edit .preview-limit-report-wrapper,
.action-submit .diff-otitle,
.action-edit .diff-otitle,
.action-submit .diff-ntitle,
.action-edit .diff-ntitle,
.action-submit #section_0,
.action-edit #section_0,
.action-submit #editpage-copywarn,
.action-edit #editpage-copywarn,
.action-submit #mw-anon-edit-warning,
.action-edit #mw-anon-edit-warning {
color: var(--byline-color);
}
.wikitext-editor {
background-color: var(--body-main);
}
.ve-mobile-fakeToolbar {
border: none;
}
.ve-mobile-fakeToolbar-container {
background: var(--body-background-color);
border: none;
}
.ve-mobile-fakeToolbar .mw-ui-icon-mf-spinner {
border-color: transparent;
}
.ve-ui-targetToolbar-mobile .oo-ui-toolbar-tools > .ve-ui-toolbar-group-back {
border-color: transparent;
}
.ve-ui-mobileContext {
background-color: var(--body-light);
border-color: var(--body-light);
}
.ve-ui-mobileContext .ve-ui-linearContextItem-body-action-wrapper {
border-color: var(--body-border);
}
.ve-ui-linearContextItem-foot:not(:empty) {
border-color: var(--body-border);
}
.ve-ui-mwSaveDialog-options {
backgroubd-color: var(--body-light);
border-color: var(--body-mid);
}
.page-actions-menu {
border-color: var(--sidebar);
}
#language-selector {
display: none;
}
.minerva__tab-container .minerva__tab {
color: var(--text-color);
}
.minerva__tab-container .minerva__tab.new,
.minerva__tab-container .minerva__tab.new:visited,
.minerva__tab-container .minerva__tab.new:hover,
.minerva__tab-container .minerva__tab.new:active {
color: var(--redlink-color);
}
.minerva__tab-container .minerva__tab.selected {
border-color: var(--body-border);
}
.heading-holder .tagline {
color: var(--base-heading-color);
}
.minerva-footer {
border-color: transparent;
}
.mw-footer > .post-content {
margin-top: 32px;
}
.mw-footer > .post-content > .minerva-footer-logo {
display: none;
}
.mw-footer .hlist li:after {
color: var(--background-text-color);
}
.last-modified-bar {
border-top: 1px solid;
border-color: transparent;
background: none;
color: var(--text-color);
}
.last-modified-bar a,
.last-modified-bar a:active,
.last-modified-bar a:visited,
.last-modified-bar .last-modified-text-accent {
color: var(--background-text-color);
}
.last-modified-bar.active,
.last-modified-bar.active:active,
.last-modified-bar.active:visited,
.last-modified-bar.active .last-modified-text-accent {
color: #fff;
}
.mw-ui-icon-mf-expand-gray:not(.mw-ui-icon-mf-expand-invert):before {
background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 20 20'%3E%3Ctitle%3Eexpand%3C/title%3E%3Cg fill='%2354595d'%3E%3Cpath d='M17.5 4.75l-7.5 7.5-7.5-7.5L1 6.25l9 9 9-9z'/%3E%3C/g%3E%3C/svg%3E");
}
.toggle-list__list {
background-color: var(--wikitable-bg);
}
.toggle-list-item__anchor:visited,
.toggle-list-item__anchor:active {
color: var(--base-text-color);
}
.toggle-list-item:hover {
background: var(--wikitable-bg-lighter);
}
.toggle-list-item__label {
color: var(--base-text-color);
}
.mw-ui-icon-wikimedia-search-base20:before {
background-image: url("data:image/svg+xml,%3C%3Fxml version='1.0' encoding='UTF-8'%3F%3E%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 20 20'%3E%3Ctitle%3Esearch%3C/title%3E%3Cg fill='white'%3E%3Cpath fill-rule='evenodd' d='M12.2 13.6a7 7 0 111.4-1.4l5.4 5.4-1.4 1.4-5.4-5.4zM13 8A5 5 0 113 8a5 5 0 0110 0z'/%3E%3C/g%3E%3C/svg%3E%0A");
}
.mw-ui-icon-wikimedia-menu-base20:before {
background-image: url("data:image/svg+xml,%3C%3Fxml version='1.0' encoding='UTF-8'%3F%3E%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 20 20'%3E%3Ctitle%3Emenu%3C/title%3E%3Cg fill='white'%3E%3Cpath d='M1 3v2h18V3zm0 8h18V9H1zm0 6h18v-2H1z'/%3E%3C/g%3E%3C/svg%3E%0A");
}
.mw-ui-icon-wikimedia-bellOutline-base20:before {
background-image: url("data:image/svg+xml,%3C%3Fxml version='1.0' encoding='UTF-8'%3F%3E%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 20 20'%3E%3Ctitle%3Ebell%3C/title%3E%3Cg fill='white'%3E%3Cpath d='M11.5 2.19C14.09 2.86 16 5.2 16 8v6l2 2v1H2v-1l2-2V8c0-2.8 1.91-5.14 4.5-5.81V1.5C8.5.67 9.17 0 10 0s1.5.67 1.5 1.5v.69zM10 4C7.79 4 6 5.79 6 8v7h8V8c0-2.21-1.79-4-4-4zM8 18h4c0 1.1-.9 2-2 2s-2-.9-2-2z'/%3E%3C/g%3E%3C/svg%3E%0A");
}
.mw-ui-icon-minerva-userAvatarOutline:before {
background-image: url("data:image/svg+xml,%3C%3Fxml version='1.0' encoding='UTF-8'%3F%3E%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 20 20'%3E%3Ctitle%3Euser avatar%3C/title%3E%3Cg fill='white'%3E%3Cpath d='M10 8c1.7 0 3.06-1.35 3.06-3S11.7 2 10 2 6.94 3.35 6.94 5 8.3 8 10 8zm0 2c-2.8 0-5.06-2.24-5.06-5S7.2 0 10 0s5.06 2.24 5.06 5-2.26 5-5.06 5zm-7 8h14v-1.33c0-1.75-2.31-3.56-7-3.56s-7 1.81-7 3.56V18zm7-6.89c6.66 0 9 3.33 9 5.56V20H1v-3.33c0-2.23 2.34-5.56 9-5.56z'/%3E%3C/g%3E%3C/svg%3E%0A");
}
@media all and (min-width: 1000px) {
.mw-ui-icon-with-label-desktop,
.mw-ui-icon-with-label-desktop:hover,
.mw-ui-icon-with-label-desktop:focus,
.mw-ui-icon-with-label-desktop:active,
.mw-ui-icon-with-label-desktop:visited {
color: var(--base-text-color) !important;
}
}
.header-action .mw-ui-icon-mf-close-base20:before {
background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 20 20'%3E%3Ctitle%3Eclose%3C/title%3E%3Cg fill='%23fff'%3E%3Cpath d='m4.3 2.9 12.8 12.8-1.4 1.4L2.9 4.3z'/%3E%3Cpath d='M17.1 4.3 4.3 17.1l-1.4-1.4L15.7 2.9z'/%3E%3C/g%3E%3C/svg%3E");
}
#mw-mf-page-left {
background-color: var(--body-background-color);
}
#mw-mf-page-left .secondary-action {
border-left-color: var(--body-mid);
}
#mw-mf-page-left ul li {
background-color: var(--body-main);
border-color: var(--body-mid);
}
#mw-mf-page-left ul li a {
color: var(--base-text-color);
}
#mw-mf-page-left ul li a:hover {
box-shadow: inset 4px 0 0 0 var(--link-color);
}
#mw-mf-page-left ul.hlist li a {
color: var(--background-link-color);
}
#mw-mf-page-left ul.hlist li a span {
font-size: 0.8125rem;
}
.notifications-overlay.navigation-drawer {
box-shadow: -1px 0 8px 0 rgba(0, 0, 0, 0.35);
}
.notifications-overlay .mw-echo-ui-actionMenuPopupWidget-menu {
border: none;
}
.mw-ui-anchor.mw-ui-progressive,
.mw-ui-anchor.mw-ui-progressive:active,
.mw-ui-anchor.mw-ui-progressive:hover,
.mw-ui-anchor.mw-ui-progressive:focus {
color: var(--link-color);
}
.minerva-talk-full-page-button {
background-color: var(--body-main);
border-color: var(--body-dark);
color: var(--link-color);
}
.minerva-talk-content-explained {
border-color: var(--sidebar);
color: var(--base-text-color);
}
.talk-overlay .comment .wikitext-editor {
border-color: var(--body-border);
}
.client-js .skin-minerva--talk-simplified .section-heading {
border-color: var(--sidebar);
}
.mw-notification a,
.toast a {
color: var(--link-color);
}
.drawer {
background-color: var(--body-light);
}
.drawer.references-drawer {
background-color: var(--body-light);
color: var(--text-color);
}
.drawer.references-drawer a {
color: var(--link-color);
}
.drawer.references-drawer .references-drawer__title {
color: var(--text-color);
}
.drawer.references-drawer .mw-ui-icon::before {
filter: brightness(0);
}
.cta-holder {
background: var(--body-light);
}
.cta-holder .desc {
color: var(--byline-color);
}
.mw-tag-marker {
border-color: var(--body-border);
}
.oo-ui-toolGroup {
background: var(--body-background-color);
}
.load-fail-msg {
color: var(--text-color);
}
.load-fail-msg-link a {
color: var(--link-color);
}
.image-carousel .image-loaded {
background: url("data:image/svg+xml,%3C%3Fxml version='1.0' encoding='UTF-8'%3F%3E%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16'%3E%3Cpath d='M0 0h8v16h8V8H0z' opacity='.13'/%3E%3C/svg%3E%0A") repeat;
}
.image-details {
background-color: var(--body-light);
border-color: transparent;
}
@media all and (min-width: 720px) {
.ns-special .pre-content {
background-color: transparent;
}
.ns-special .mw-body {
background: var(--body-main);
}
.ns-special .mw-body form {
background: transparent;
}
}
form.mw-mf-settings .oo-ui-fieldLayout,
form.mw-mf-settings .oo-ui-fieldLayout:first-child {
border-color: var(--body-mid);
}
.ns-special .content-header {
border-bottom-color: var(--body-dark);
}
.action-history .mw-history-compareselectedversions {
background-color: var(--body-main);
}
.action-history #pagehistory li:not(.selected) {
border-bottom-color: var(--sidebar);
}
ul.mw-contributions-list li,
ul.special li {
border-color: var(--sidebar);
}
.page-list li > a:not(.mw-ui-icon-element),
.topic-title-list li > a:not(.mw-ui-icon-element),
.site-link-list li > a:not(.mw-ui-icon-element) {
color: var(--byline-color);
}
.page-list.side-list .list-thumb,
.topic-title-list.side-list .list-thumb,
.site-link-list.side-list .list-thumb {
color: var(--text-color);
}
.page-list .info,
.topic-title-list .info,
.site-link-list .info,
.page-list .component,
.topic-title-list .component,
.site-link-list .component {
color: var(--byline-color);
}
.mw-mf-user {
color: var(--text-color);
}
.content .mw-index-pager-list-header {
background-color: var(--body-mid);
color: inherit;
font-family: inherit;
}
.diff-editfont-monospace {
font-family: monospace,monospace;
}
:root {
--diff-deletedline-background: #fbc0ba;
}
.minoredit {
background: var(--body-mid);
}
#mw-mf-diffview .mw-mf-diff-date {
color: var(--byline-color);
}
#mw-mf-diffview .mw-diff-inline-deleted del,
#mw-mf-diffview .mw-diff-inline-changed del {
background: var(--diff-deletedline-background);
color: var(--diff-deletedline-color);
border-radius: 0.33em;
}
#mw-mf-diffview .mw-diff-inline-added ins,
#mw-mf-diffview .mw-diff-inline-changed ins {
background: var(--diff-addedline-background);
color: var(--diff-addedline-color);
border-radius: 0.33em;
}
#mw-mf-diffview .mw-diff-inline-moved {
background: var(--diff-context-background);
}
#mw-mf-diffview #mw-mf-userinfo {
background: var(--body-light);
border-top-color: var(--body-border);
}
#mw-mf-diffview #mw-mf-userinfo .mw-mf-edit-count {
color: var(--text-color);
}
#mw-mf-diffview #mw-mf-userinfo .mw-mf-edit-count div {
color: var(--base-text-color);
}
.infobox {
font-size: 85%;
background-color: var(--body-light);
border: 1px solid var(--body-border);
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
table-layout: fixed;
}
.content .infobox {
display: table;
}
.content .infobox caption {
display: table-caption;
background: none;
}
.infobox .infobox-header {
color: var(--infobox-text-color);
font-size: 1.15em;
background: var(--body-dark);
padding: 0.5em 0;
text-align: center;
}
.infobox .infobox-subheader {
background: var(--body-dark);
line-height: 2em;
text-align: center;
}
.infobox .infobox-subheader a {
color: var(--infobox-text-color);
}
.infobox th:not(.infobox-nested):not(.infobox-subheader):not(.infobox-header) {
text-align: right;
vertical-align: top;
border-right: 2px solid var(--body-dark);
padding: 0.2em 0.5em;
}
.infobox caption.infobox-caption {
text-align: center;
}
.infobox td {
padding: 0.25em 0.5em;
line-height: 1.6em;
}
.infobox td.infobox-nested {
padding: 0.25em 0;
line-height: 1em;
}
.infobox .infobox-padding {
height: 0.5em;
padding: 0;
border: 0;
}
.infobox .infobox-image {
text-align: center;
}
.infobox .infobox-image.inventory-image {
height: 32px;
}
.infobox .infobox-nested {
text-align: center;
}
.infobox .infobox-nested + .infobox-nested {
border-left: 2px solid var(--body-dark);
}
.infobox .infobox-cell-hidden {
display: none;
}
.infobox .infobox-full-width-content {
max-width: 300px;
text-align: center;
overflow-x: hidden;
padding: 0;
}
.skill-info a[href$="?action=edit"] + a[href$="?action=edit"] {
display: none;
}
.infobox-buttons {
margin-top: 0.5em;
text-align: center;
}
.infobox-bottom-links {
display: none;
}
.advanced-data {
display: none;
}
@media screen and (min-width: 720px) {
.content table.infobox {
float: right;
margin-top: 0.5em;
margin-left: 1em;
width: 300px !important;
}
.content table.infobox.skill-info {
float: none;
margin: 0 0 1em 0;
}
}
.multi-infobox {
margin-top: 0.5em;
margin-bottom: 2.5em;
}
.multi-infobox .tabber {
margin: 0;
}
.multi-infobox .tabber .tabbernav {
text-align: center;
margin-left: 0;
}
.mw-body .multi-infobox .tabber .tabbertab {
padding: 5px;
}
.multi-infobox table.infobox {
margin: 0;
}
.multi-infobox .infobox-buttons {
margin-top: 0;
}
@media screen and (min-width: 720px) {
.multi-infobox {
float: right;
margin-left: 1em;
width: 300px;
}
}
.tile {
padding: 1.5em 2em 1em;
}
.tile h2 {
font-weight: 600;
border: none;
margin-top: 0.4em;
}
.tile o .byline + h2 {
margin-top: -0.5em;
}
.tile-top {
padding: 1.3rem 1.5rem 2rem;
}
.tile-bottom {
padding: 1rem 1.5rem 2rem;
}
.tile-bottom.read-more {
padding: 0;
}
.tile-bottom.read-more a {
padding: 1em 1.75em;
}
:root {
--mobile-navbox-wide-bg-color: #dcd3bf;
--mobile-navbox-linear-gradient: linear-gradient(to right, rgba(255, 255, 255, 0), var(--body-main) 95%, var(--body-main));
}
.navbox {
border: 1px solid var(--body-border);
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
font-size: 0.85em;
}
.content .navbox ul {
padding-left: 0;
}
.content .navbox ul li {
margin-bottom: 0;
}
@media screen and (max-width: 719px) {
.navbox td,
.navbox th,
.navbox tr,
.navbox tbody,
.navbox .navbox-subgroup {
display: block;
}
}
@media screen and (min-width: 720px) {
.content table.navbox,
.content .navbox table {
width: 100% !important;
}
}
.navbox .navbox-subgroup {
margin: 0;
}
.navbox .navbar {
display: none;
}
.navbox .plink-template,
.navbox img {
display: none;
}
.navbox-title {
color: var(--text-color);
background-color: var(--body-dark);
font-size: 140%;
text-align: center;
padding: 0.25em 0.85em;
}
@media screen and (min-width: 720px) {
.navbox-title {
border-bottom: 1px solid var(--body-border);
}
}
.navbox-group-title {
background-color: var(--body-mid);
text-align: left;
padding: 0.2em 0.85em;
}
@media screen and (max-width: 719px) {
.navbox-group-title {
overflow: hidden;
white-space: nowrap;
text-overflow: ellipsis;
}
}
@media screen and (min-width: 720px) {
.navbox-group-title {
border: 1px solid var(--body-border);
border-width: 0 1px 1px 0;
width: 12vw;
}
}
.navbox-group-title-hidden {
display: none;
}
.navbox-list {
padding: 0;
position: relative;
}
@media screen and (min-width: 720px) {
.navbox-list {
border-bottom: 1px solid var(--body-border);
}
}
.navbox-list ul {
display: flex;
}
@media screen and (max-width: 719px) {
.navbox-list ul {
white-space: nowrap;
overflow-x: auto;
overflow-y: hidden;
-webkit-overflow-scrolling: touch;
}
}
@media screen and (min-width: 720px) {
.navbox-list ul {
padding: 0.2em 0.85em 0.5em !important;
flex-wrap: wrap;
}
}
@media screen and (min-width: 720px) {
.navbox-list[style*="center"] ul {
justify-content: center;
}
}
.navbox-list li {
display: inline-flex;
align-items: center;
height: 3.5em;
margin: 0 0 0 0.85em;
}
@media screen and (min-width: 720px) {
.navbox-list li {
height: 2.1em;
}
.navbox-list li:first-child {
margin-left: 0;
}
}
.navbox-list li + li::before {
content: '•';
display: inline-block;
white-space: pre-wrap;
position: relative;
left: -0.425em;
color: var(--text-color);
pointer-events: none;
}
.navbox-list li + li > a + a::before {
display: none;
}
.navbox-list li:last-child {
margin-right: 2em;
}
.navbox-list::after {
content: '';
display: block;
position: absolute;
background-image: var(--mobile-navbox-linear-gradient);
height: 100%;
width: 2.5em;
top: 0;
right: 0;
pointer-events: none;
}
@media screen and (min-width: 720px) {
.navbox-list::after {
display: none;
}
}
.navbox-list.navbox-parent {
border-bottom: 0;
padding: 0;
}
.navbox-list.navbox-parent::after {
display: none;
}
.navbox-group .navbox-group .navbox-group-title {
background-color: var(--body-light);
padding: 0 0.85em 0 1.7em;
}
@media screen and (min-width: 720px) {
.navbox-group .navbox-group .navbox-group-title {
padding-left: 0.85em;
}
}
.navbox-group .navbox-group .navbox-list ul {
padding-left: 1.7em;
}
.navbox-group .navbox-group .navbox-list li {
margin-bottom: 0;
}
.navbox-group .navbox-group .navbox-list li:first-child {
margin-left: 0;
}
.navbox-group .navbox-group.navbox-group-split .navbox-list ul {
padding-left: 0.85em;
}
.navbox-group .navbox-group .navbox-group:first-child .navbox-group-title {
padding-top: 0.5em;
}
@media screen and (min-width: 720px) {
.navbox-group .navbox-group .navbox-group:first-child .navbox-group-title {
padding-top: 0;
}
}
.navbox-group .navbox-group .navbox-group .navbox-group-title {
background-color: transparent;
padding-left: 2.55em;
}
@media screen and (min-width: 720px) {
.navbox-group .navbox-group .navbox-group .navbox-group-title {
background-color: var(--mobile-navbox-wide-bg-color);
padding-left: 0.85em;
}
}
.navbox-group .navbox-group .navbox-group .navbox-list ul {
padding-left: 2.55em;
}
.navbox-group .navbox-group .navbox-group.navbox-group-split .navbox-list ul {
padding-left: 1.7em;
}
@keyframes slide-up {
from {
opacity: 0;
transform: translateY(1rem);
}
to {
opacity: 1;
transform: translateY(0);
}
}
.mainpage-header {
margin: 2em 1em 0;
}
@media only screen and (max-width: 1000px) {
.mainpage-header .header-intro h1 {
text-align: center;
font-size: 1.8em;
}
.mainpage-header .header-intro p {
font-size: 1em;
}
}
.mainpage-body .tile-row {
width: inherit;
}
.mainpage-contents.tile-row {
display: inherit;
}
.mainpage-left .tile {
padding: 2.5em 1.75em 2em;
}
.mainpage-left .tile h2 {
padding: 0;
margin: 0.65em 0.5em;
}
.mainpage-left .tile-halves h2 {
padding: 0;
margin: 0.65em 0.5em;
}
.mainpage-recent-updates {
padding: 1.5em 1em 2.5em;
}
.mainpage-recent-updates::before {
content: 'Recent updates';
display: block;
margin-left: 1.5em;
color: var(--byline-color);
font-weight: bold;
text-transform: uppercase;
letter-spacing: 0.025em;
grid-column: 1 / 4;
}
.mainpage-recent-updates .tile-halves {
display: inline-block;
width: 100%;
white-space: initial;
flex: unset;
}
.mainpage-recent-updates .tile-halves:nth-child(1) {
animation: 0.9s 0.2s both slide-up;
}
.mainpage-recent-updates .tile-halves:nth-child(2) {
animation: 0.9s 0.4s both slide-up;
}
.mainpage-recent-updates .tile-halves:nth-child(3) {
animation: 0.9s 0.6s both slide-up;
}
.mainpage-recent-updates .tile-top {
height: 9em;
overflow: hidden;
}
.mainpage-recent-updates .tile-bottom {
padding-bottom: 0.5rem;
}
.mainpage-recent-updates .byline {
margin: 0;
}
.mainpage-recent-updates .byline + h2 {
margin: 0.025em 0 0;
padding: 0;
}
@media only screen and (max-width: 720px) {
.mainpage-recent-updates::before {
text-align: center;
margin: 0;
grid-column: auto;
}
}
.mainpage-contents {
background: var(--body-mid);
padding: 55px 1em 2em 2.5em;
overflow-x: auto;
grid-template-columns: repeat(6, 1fr) !important;
position: relative;
scroll-snap-align: center;
}
.mainpage-contents::before {
content: 'Explore';
margin: 1em;
position: absolute;
top: 0;
color: inherit;
font-weight: bold;
text-transform: uppercase;
letter-spacing: 0.025em;
grid-column: 1 / 6;
}
.mainpage-contents .tile-halves {
border: none;
background: none;
box-shadow: none;
width: 200px;
}
.mainpage-contents .tile-top {
padding: 0;
height: initial;
}
.mainpage-contents .tile-bottom {
border: none;
}
.mainpage-contents h2 {
width: 100%;
}
@media only screen and (max-width: 1000px) {
.mainpage-skills .tile-top ul {
margin: 0;
}
}
.mainpage-wikinews::before {
content: 'From the wiki';
margin-left: 0.75em;
color: var(--byline-color);
font-weight: bold;
text-transform: uppercase;
letter-spacing: 0.025em;
}
.mainpage-social {
border: none;
margin-bottom: 0;
}
.mainpage-social .tile-top {
display: flex;
align-items: center;
justify-content: center;
padding: 1em 2em;
min-height: 70px;
}
.mainpage-social .tile-top .social-icon {
float: left;
margin: 0 1em 0 -1em;
width: 60px;
text-align: center;
}
.mainpage-social .tile-top .social-header {
color: #fff;
font-weight: bold;
font-size: 1.25em;
margin: 0;
}
.mainpage-social .tile-top .social-tagline {
color: rgba(255, 255, 255, 0.9);
margin: 0;
}
.mainpage-social .tile-bottom {
border: none;
padding: 1em 2em;
}
.mainpage-social .tile-bottom p {
color: var(--byline-color);
font-weight: bold;
text-transform: uppercase;
letter-spacing: 0.025em;
color: #fff;
font-size: 0.9em;
text-align: center;
margin: 0;
}
.mainpage-social.mainpage-discord .tile-top {
background: #5865f2;
}
.mainpage-social.mainpage-discord .tile-bottom {
background: #525ee0;
}
.mainpage-social.mainpage-twitter .tile-top {
background: #15202b;
}
.mainpage-social.mainpage-twitter .tile-bottom {
background: #121c26;
}
.wikitable {
background: none;
box-shadow: none;
}
.wikitable tbody {
background: var(--body-light);
}
.toc {
background-color: var(--body-light);
border-color: var(--body-border);
}
#filetoc li {
display: inline;
padding-right: 2em;
}
.mw-dismissable-notice-body {
margin: 0;
}
.mw-dismissable-notice-body .mw-dismissable-notice-close-parent {
border-radius: 0 !important;
font-size: 0.75em;
}
:root {
--thumb-image-background: var(--body-light);
--thumb-caption-background: var(--body-mid);
}
.content .thumbinner {
background-color: var(--thumb-bg);
}
.content .thumbimage {
border: 1px solid transparent;
border-bottom: none;
}
.content .thumbcaption {
margin: 0;
padding: 4px 6px !important;
color: inherit;
background: var(--thumb-caption-bg);
}
.content table.messagebox {
margin: 0.5em auto;
}
.content table a > img {
max-width: inherit !important;
height: inherit !important;
}
.content .infobox a > img {
max-width: 100% !important;
height: auto !important;
}
.content .infobox-bonuses a > img {
max-width: inherit !important;
height: inherit !important;
}
c63a5b636f4c570e4cf4ddd759ff212ba168057d
File:Profession fisher.png
6
383
1169
626
2024-03-24T12:32:43Z
Habblet
11
wikitext
text/x-wiki
[[Category:Profession icons]]
6a5f2a5fa97a42981d4ef0cf8edf478f22818750
File:Profession forager.png
6
417
1170
1093
2024-03-24T12:32:46Z
Habblet
11
wikitext
text/x-wiki
[[Category:Profession icons]]
6a5f2a5fa97a42981d4ef0cf8edf478f22818750
Woodcutter
0
61
1171
361
2024-03-24T12:33:33Z
Habblet
11
wikitext
text/x-wiki
{{Infobox Profession
|name = Woodcutter
|image = [[File:Woodcutter icon.png|50px]]
}}
[[File:Woodcutter.jpg|thumb|right|A player woodcutting.]]
'''Woodcutter''' is a type of [[professions|profession]].
{{Professions}}
d72a9b42e0ca03ab42b537a7f227aaa64ec63f16
Miner
0
62
1172
218
2024-03-24T12:33:47Z
Habblet
11
wikitext
text/x-wiki
{{Infobox Profession
|name = Miner
}}
'''Miner''' is a type of [[professions|profession]] specialising in collecting [[minerals]].
{{Professions}}
9cc331ac3cc089223cb7a51ff79a8f1329e91e89
Alchemist
0
63
1173
779
2024-03-24T12:34:07Z
Habblet
11
wikitext
text/x-wiki
{{Infobox Profession
|name = Alchemist
}}
[[File:Alchemist.jpg|thumb|right|A player practicing Alchemy.]]
'''Alchemist''' is a type of [[professions|profession]].
{{Professions}}
dc4852db754e1ea4ea8d1db58898d59e0df7e7e7
Stonemason
0
64
1174
220
2024-03-24T12:34:19Z
Habblet
11
wikitext
text/x-wiki
{{Infobox Profession
|name = Stonemason
}}
'''Stonemason''' is a type of [[professions|profession]].
{{Professions}}
bd801740b1e9e3135ecc4e113490de54fe04d679
Merchant
0
65
1175
222
2024-03-24T12:34:29Z
Habblet
11
wikitext
text/x-wiki
{{Infobox Profession
|name = Merchant
}}
'''Merchant''' is a type of [[professions|profession]].
{{Professions}}
0861b6f47ec63a17d195f58803d2427491465feb
Blacksmith
0
66
1176
387
2024-03-24T12:34:46Z
Habblet
11
wikitext
text/x-wiki
{{Infobox Profession
|name = Blacksmith
}}
[[File:Blacksmith.png|thumb|right|A player smithing.]]
'''Blacksmith''' is a type of [[professions|profession]].
{{Professions}}
da6c49e8d3bb669fbaeabea8edc0ff058e8d948b
Template:Plink
10
664
1177
2024-03-24T12:35:57Z
Habblet
11
Created page with "<includeonly><span class="plink-template">[[File:{{{pic|{{{1}}}}}}.png|link={{{1}}}]]</span>[[{{{1}}}|{{{txt|{{{1}}}}}}]]</includeonly><noinclude>{{/doc}}</noinclude>"
wikitext
text/x-wiki
<includeonly><span class="plink-template">[[File:{{{pic|{{{1}}}}}}.png|link={{{1}}}]]</span>[[{{{1}}}|{{{txt|{{{1}}}}}}]]</includeonly><noinclude>{{/doc}}</noinclude>
ce86163e3d39279f62a65e8271e3a62a9e981aa6
1178
1177
2024-03-24T12:41:14Z
Habblet
11
size param
wikitext
text/x-wiki
<includeonly><span class="plink-template">[[File:{{{pic|{{{1}}}}}}.png|link={{{1}}}{{#if:{{{size|}}}|{{!}}{{{size}}}px}}]]</span>[[{{{1}}}|{{{txt|{{{1}}}}}}]]</includeonly><noinclude>{{/doc}}</noinclude>
3e1e2b964f3c42360a8bcee3a2cf5c2ac1dc0467
Template:Edit button
10
665
1179
2024-03-24T12:41:32Z
InvalidCards
4
Created page with "[{{fullurl:{{#if:{{{page|}}}|{{{page}}}|{{#if:{{{1|}}}|{{{1}}}|{{FULLPAGENAME}}}}}}|action=edit}} {{#if:{{{text|}}}|{{{text}}}|{{#if:{{{2|}}}|{{{2}}}|edit}}}}]<noinclude>{{/doc}}</noinclude>"
wikitext
text/x-wiki
[{{fullurl:{{#if:{{{page|}}}|{{{page}}}|{{#if:{{{1|}}}|{{{1}}}|{{FULLPAGENAME}}}}}}|action=edit}} {{#if:{{{text|}}}|{{{text}}}|{{#if:{{{2|}}}|{{{2}}}|edit}}}}]<noinclude>{{/doc}}</noinclude>
6859ab77d83d6c5b5ff12f1d6ac0bcd7dc96b16b
Template:Edit button/doc
10
666
1180
2024-03-24T12:41:52Z
InvalidCards
4
Created page with "{{documentation}} Creates a link to edit a page. In lua modules, use [[Module:Edit button]]. ==Usage== <pre>{{Edit button}} {{Edit button|page name}} {{Edit button|page name|alt text}} {{Edit button|page=page name|text=alt text}} </pre> ;page name The named parameter <code>page</code> or the first unnamed parameter (<code>1</code>) can be used to set the page name. Include namespaces. By default, uses the current page. ;alt text The named parameter <code>text</code..."
wikitext
text/x-wiki
{{documentation}}
Creates a link to edit a page.
In lua modules, use [[Module:Edit button]].
==Usage==
<pre>{{Edit button}}
{{Edit button|page name}}
{{Edit button|page name|alt text}}
{{Edit button|page=page name|text=alt text}}
</pre>
;page name
The named parameter <code>page</code> or the first unnamed parameter (<code>1</code>) can be used to set the page name. Include namespaces. By default, uses the current page.
;alt text
The named parameter <code>text</code> or the second unnamed parameter (<code>2</code>) can be used to set the link text. By default, uses <code>edit</code>.
{{TemplateData|<templatedata>
{
"params": {
"page": {
"aliases": [
"1"
],
"label": "Page name",
"description": "The page name to link to. Include namespace.",
"type": "wiki-page-name"
},
"text": {
"aliases": [
"2"
],
"label": "Link text",
"description": "The link text to display. Default edit.",
"default": "edit"
}
},
"description": "Creates a link to a page.",
"format": "inline"
}
</templatedata>}}
<includeonly>[[Category:Transclusion templates]]
[[Category:Link creating templates]]</includeonly>
6a710a5998fb67795f6c46f357f5b4d7b79a80ad
Template:Plink/doc
10
667
1181
2024-03-24T12:43:31Z
Habblet
11
Created page with "{{Documentation}} The '''picture link''' template creates an image and links it to the page as well as including text. This template is not intended to be commonly used in mainspace articles. It is primarily used in navboxes and tables to add images to help with navigation. In most other cases, pages should be linked with normal markup and without an image. ==Usage== <pre>{{plink|item|pic=file name|txt=text}}</pre> ==Examples== {|class="wikitable" |+ Examples !Code !..."
wikitext
text/x-wiki
{{Documentation}}
The '''picture link''' template creates an image and links it to the page as well as including text.
This template is not intended to be commonly used in mainspace articles. It is primarily used in navboxes and tables to add images to help with navigation. In most other cases, pages should be linked with normal markup and without an image.
==Usage==
<pre>{{plink|item|pic=file name|txt=text}}</pre>
==Examples==
{|class="wikitable"
|+ Examples
!Code
! style="min-width:150px;" | Produces
!Standard syntax
|-
|<code><nowiki>{{plink|Hammermage potion}}</nowiki></code>
|{{plink|Hammermage potion}}
|<code><nowiki>[[File:Hammermage potion.png|link=Hammermage potion]] [[Hammermage potion]]</nowiki></code>
|-
|<code><nowiki>{{plink|Hammermage potion|size=32}}</nowiki></code>
|{{plink|Hammermage potion|size=32}}
|<code><nowiki>[[File:Hammermage potion.png|32px|link=Hammermage potion]] [[Hammermage potion]]</nowiki></code>
|-
|<code><nowiki>{{plink|Health potion|pic=Hammermage potion}}</nowiki></code>
|{{plink|Health potion|pic=Hammermage potion}}
|<code><nowiki>[[File:Hammermage potion.png|link=Health potion]] [[Health potion]]</nowiki></code>
|-
|<code><nowiki>{{plink|Hammermage potion|txt=Potion}}</nowiki></code>
|{{plink|Hammermage potion|txt=Potion}}
|<code><nowiki>[[File:Hammermage potion.png|link=Hammermage potion]] [[Hammermage potion|Potion]]</nowiki></code>
|-
|<code><nowiki>{{plink|Health potion|pic=Hammermage potion|txt=Potion}}</nowiki></code>
|{{plink|Health potion|pic=Hammermage potion|txt=Potion}}
|<code><nowiki>[[File:Hammermage potion.png|link=Health potion]] [[Health potion|Potion]]</nowiki></code>
|}
==Parameters==
<templatedata>
{
"description": "The 'Picture Link' (plink) template is used to create item image + text links.",
"params": {
"1": {
"label": "Item",
"description": "The item to link to and display",
"type": "wiki-page-name",
"required": true
},
"pic": {
"label": "Picture",
"description": "The name of the image file; do not include 'File:' or '.png'",
"default": "First parameter",
"type": "wiki-file-name"
},
"txt": {
"label": "Text override",
"description": "Override the displayed link text.",
"default": "First parameter",
"type": "string"
},
"size": {
"label": "Size",
"description": "Sets custom size (in px).",
"type": "number"
}
}
}
</templatedata>
<includeonly>[[Category:Link creating templates|{{PAGENAME}}]]</includeonly>
aff0e74b57a720800e25e460cc8580579ec40548
Template:Infobox Profession/doc
10
668
1182
2024-03-24T12:44:29Z
Habblet
11
Created page with "{{Documentation}} ==Parameters== ===name=== The name of the profession. ===image=== The profession icon. ===release=== The release date of the profession. ==Quick copy== <pre>{{Infobox Profession |name = |image = |release = }}</pre> <includeonly>[[Category:Infobox templates]]</includeonly>"
wikitext
text/x-wiki
{{Documentation}}
==Parameters==
===name===
The name of the profession.
===image===
The profession icon.
===release===
The release date of the profession.
==Quick copy==
<pre>{{Infobox Profession
|name =
|image =
|release =
}}</pre>
<includeonly>[[Category:Infobox templates]]</includeonly>
e908dcbdc1155be650fd40be734d2917894ff78d
Category:Infobox templates
14
669
1183
2024-03-24T12:44:51Z
Habblet
11
Created page with "{{Categoryheader|templates|[[Module:Infobox|infoboxes]]||}} [[Category:Templates]]"
wikitext
text/x-wiki
{{Categoryheader|templates|[[Module:Infobox|infoboxes]]||}}
[[Category:Templates]]
fb077f2254fb3cdcc527d58417d280ef6e0b9c88
Template:Infobox Item
10
77
1184
1039
2024-03-24T12:44:55Z
InvalidCards
4
Infobox item fixes and things
wikitext
text/x-wiki
{| class="wikitable infobox-item" style="float:right"
!colspan="2"|{{{name|{{PAGENAME}}}}}
|-
|colspan="2" style="text-align:center"| {{{image|[[Special:Upload|Please upload an image!]]{{Mainonly|[[Category:Needs image]]}}}}}
|-
|<b>Release date</b>||{{{release|Q3 [[2024]]}}}
|-
|<b>Episode</b>||{{#switch:{{{episode|}}}|Hopeport=[[File:Hopeport episode icon.png|18px]] [[Hopeport]]|Hopeforest=[[File:Hopeforest episode icon.png|18px]] [[Hopeforest]]|Mine of Manbutan=[[File:Mine of Manbutan episode icon.png|18px]]|#default=[[File:Unknown episode icon.png|18px]] Unknown}}
|-
|<b>Profession</b>||{{{profession|{{Edit button|text=<b>?</b> (edit)}}}}}
|-
|<b>Value</b>||{{{value|{{Edit button|text=<b>?</b> (edit)}}}}}
|}<includeonly>{{Mainonly|[[Category:Items]]}}</includeonly>
7d603d4300dc117e756b8fa184e61b7b713f7ab2
1186
1184
2024-03-24T12:46:11Z
InvalidCards
4
Item maintenance categories
wikitext
text/x-wiki
{| class="wikitable infobox-item" style="float:right"
!colspan="2"|{{{name|{{PAGENAME}}}}}
|-
|colspan="2" style="text-align:center"| {{{image|[[Special:Upload|Please upload an image!]]{{Mainonly|[[Category:Needs image]]}}}}}
|-
|<b>Release date</b>||{{{release|Q3 [[2024]]}}}
|-
|<b>Episode</b>||{{#switch:{{{episode|}}}|Hopeport=[[File:Hopeport episode icon.png|18px]] [[Hopeport]]|Hopeforest=[[File:Hopeforest episode icon.png|18px]] [[Hopeforest]]|Mine of Manbutan=[[File:Mine of Manbutan episode icon.png|18px]]|#default=[[File:Unknown episode icon.png|18px]] Unknown}}
|-
|<b>Profession</b>||{{{profession|{{Edit button|text=<b>?</b> (edit)}}{{Mainonly|[[Category:Items needing profession]]}}}}}
|-
|<b>Value</b>||{{{value|{{Edit button|text=<b>?</b> (edit)}}{{Mainonly|[[Category:Items needing value]]}}}}}
|}<includeonly>{{Mainonly|[[Category:Items]]}}</includeonly>
f3d35df406a93ea4d0edc229de7d47315a413ec2
Coins
0
441
1185
1144
2024-03-24T12:45:48Z
BlackHawk
10
wikitext
text/x-wiki
'''Coins''' are the currency of [[Brighter Shores]]. They come in three types:
* [[File:Gold coin.png|18px]] Gold coins
* [[File:Silver coin.png|18px]] Silver coins
* [[File:Copper coin.png|18px]] Copper coins
The three types are not separate currencies; there are 1,000 copper coins to a silver coin, and 1,000 silver coins to a gold coin (or 1,000,000 copper coins to a gold coin).{{CiteTwitter|url=https://twitter.com/AndrewCGower/status/1771788649589289317|author=Andrew Gower|date=24 March 2024|accessdate=24 March 2024|archiveurl=https://archive.is/UBk1j|archivedate=24 March 2024|quote=there isnt multiple currencies. There is 1000 copper to a silver, and 1000 silver to a gold.}}
==References==
{{Reflist}}
[[Category:Items]]
f74dba2c2dc2aaeaaffd0da39450f75f152bdb59
1195
1185
2024-03-24T12:56:54Z
Habblet
11
wikitext
text/x-wiki
'''Coins''' are the currency of [[Brighter Shores]]. They come in three types:
{| class="wikitable"
! colspan="2" | Coin
! Worth in<br />copper coins
|-
| [[File:Copper coin.png|18px]]
| Copper coin
| 1
|-
| [[File:Silver coin.png|18px]]
| Silver coin
| 1,000
|-
| [[File:Gold coin.png|18px]]
| Gold coin
| 1,000,000
|}
The three types are not separate currencies; there are 1,000 copper coins to a silver coin, and 1,000 silver coins to a gold coin.{{CiteTwitter|url=https://twitter.com/AndrewCGower/status/1771788649589289317|author=Andrew Gower|date=24 March 2024|accessdate=24 March 2024|archiveurl=https://archive.is/UBk1j|archivedate=24 March 2024|quote=there isnt multiple currencies. There is 1000 copper to a silver, and 1000 silver to a gold.}}
==References==
{{Reflist}}
[[Category:Items]]
c5205d78d06b95422a7f4b8c81654d5cd0c9bf4a
Category:Items needing value
14
670
1188
2024-03-24T12:47:51Z
InvalidCards
4
Created page with "{{Categoryheader|pages|items without a value set|yes|[[Template:Infobox Item]]}} [[Category:Maintenance categories]]"
wikitext
text/x-wiki
{{Categoryheader|pages|items without a value set|yes|[[Template:Infobox Item]]}}
[[Category:Maintenance categories]]
124127ffbc3905096b97b9d87521e57158b22a81
Category:Items needing profession
14
671
1189
2024-03-24T12:48:24Z
InvalidCards
4
Created page with "{{Categoryheader|pages|items without a profession set|yes|[[Template:Infobox Item]]}} [[Category:Maintenance categories]]"
wikitext
text/x-wiki
{{Categoryheader|pages|items without a profession set|yes|[[Template:Infobox Item]]}}
[[Category:Maintenance categories]]
22638abce7503e2af9038a6e049893deaca0b0ed
File:Foraging 2.jpg
6
672
1190
2024-03-24T12:48:34Z
Habblet
11
{{Fair use|link=https://cdn.cloudflare.steamstatic.com/steam/apps/2791440/ss_d9af80b04087997cb3ed198e2fe3de4bd0b0af9b.jpg?t=1710756596}}
wikitext
text/x-wiki
== Summary ==
{{Fair use|link=https://cdn.cloudflare.steamstatic.com/steam/apps/2791440/ss_d9af80b04087997cb3ed198e2fe3de4bd0b0af9b.jpg?t=1710756596}}
cbd501dbdf15f7056a848ec7b3693e9e02e8969b
Sturlet
0
67
1192
1084
2024-03-24T12:49:38Z
InvalidCards
4
Empty infobox feels weird but that's what we have
wikitext
text/x-wiki
{{Infobox Item}}
'''Sturlet''' is a type of [[fish]] that gives 7 experience in the [[Fisher]] profession per catch.<ref>https://brightershores.com/screenshots/12_vincible.jpg</ref>
==References==
{{Reflist}}
6951a5fe690b47828ce505456c9cfd4bb0884058
Template:Professions
10
115
1193
210
2024-03-24T12:50:25Z
Habblet
11
wikitext
text/x-wiki
{{Navbox
|name = Professions
|title = [[Professions]]
|style1 = text-align:center
|group1 =
* {{plink|Fisher|pic=Profession fisher|size=28x28}}
* {{plink|Forager|pic=Profession forager|size=28x28}}
* [[Chef]]
* {{plink|Woodcutter|pic=Woodcutter icon|size=28x28}}
* [[Miner]]
* [[Alchemist]]
* [[Stonemason]]
* [[Merchant]]
* [[Blacksmith]]
}}{{Ctg|Professions}}
a2d44f7c6a032d41d8792c37f4d730bd752a6eed
Module:Param Parse
828
673
1194
2024-03-24T12:51:03Z
Gau Cho
5
Created page with "--[=[ -- Standardized functions to parse Infobox params --]=] -- <nowiki> local p = {} -- Standardized "name" function function param.name(arg) return string.match(arg or '', '%S') and arg or nil end -- Standardized "has content" function function param.has_content(arg, default) -- Return arg if any non-whitespace character is found return string.match(arg or '', '%S') and arg or default end -- Create a standardized release function, since so many pages use it..."
Scribunto
text/plain
--[=[
-- Standardized functions to parse Infobox params
--]=]
-- <nowiki>
local p = {}
-- Standardized "name" function
function param.name(arg)
return string.match(arg or '', '%S') and arg or nil
end
-- Standardized "has content" function
function param.has_content(arg, default)
-- Return arg if any non-whitespace character is found
return string.match(arg or '', '%S') and arg or default
end
-- Create a standardized release function, since so many pages use it
-- Turns release and update into a single parameter
function param.release_update(release, update)
if not Infobox.isDefined(release) then
return nil
end
if string.lower(release) == 'no' then
return 'N/A'
end
if not Infobox.isDefined(update) then
return string.format('%s (Update unknown)',release)
end
if string.lower(update) == 'no' then
return release
end
return string.format('%s ([[Update:%s|Update]])', release, update)
end
-- Standardized image function
function param.image(img)
if img and img:find('%S') then
return img
else
return nil
end
end
-- Strip the brackets from the param
function param.image_smw(img)
local _img = string.match(img, "File:.-%.png")
return _img
end
-- Standardized numbers
function param.numbers(num)
num = string.gsub(num or '',',','')
return tonumber(num)
end
return param
-- </nowiki>
9808ea74bd1286a130af7d11fb4a47da914e8c6d
User:BlackHawk/common.js
2
674
1196
2024-03-24T13:11:52Z
BlackHawk
10
Created page with "/* This imports the latest version of HotCat from Commons. HotCat is a gadget to make changes to categories much easier. Full documentation can be found at http://commons.wikimedia.org/wiki/Help:Gadget-HotCat */ mw.loader.load( '//commons.wikimedia.org/w/index.php?title=MediaWiki:Gadget-HotCat.js&action=raw&ctype=text/javascript' );"
javascript
text/javascript
/*
This imports the latest version of HotCat from Commons.
HotCat is a gadget to make changes to categories much easier.
Full documentation can be found at http://commons.wikimedia.org/wiki/Help:Gadget-HotCat
*/
mw.loader.load( '//commons.wikimedia.org/w/index.php?title=MediaWiki:Gadget-HotCat.js&action=raw&ctype=text/javascript' );
a772d8a6e7a7c4636a63f5e64b03e422da8f63d1
Category:Modules requiring modules
14
675
1197
2024-03-24T13:13:36Z
BlackHawk
10
Created page with "Modules that require other modules. [[Category:Modules]]"
wikitext
text/x-wiki
Modules that require other modules.
[[Category:Modules]]
ad65cf61cd930ea9c250eff6e2f6656c6f7e93d3
Category:Reference templates
14
676
1198
2024-03-24T13:14:10Z
BlackHawk
10
Created page with "{{Categoryheader|templates|those that are used to organise references||}} [[Category:Templates]]"
wikitext
text/x-wiki
{{Categoryheader|templates|those that are used to organise references||}}
[[Category:Templates]]
2d96223dab0a2f6cc8b94a24ef433bae3edeaaa1
Category:Template invoked modules
14
677
1199
2024-03-24T13:14:46Z
BlackHawk
10
Created page with "{{Categoryheader|modules|templates}} [[Category:Modules]]"
wikitext
text/x-wiki
{{Categoryheader|modules|templates}}
[[Category:Modules]]
7d149f1f0437556b5c969c491512c50f0325cc86
Category:Modules required by modules
14
678
1200
2024-03-24T13:15:07Z
BlackHawk
10
Created page with "Modules that are required by other modules. [[Category:Modules]]"
wikitext
text/x-wiki
Modules that are required by other modules.
[[Category:Modules]]
f78cc6bd4f2094026a9786d4e7fa78f3359d2594
Category:Link creating templates
14
679
1201
2024-03-24T13:15:34Z
BlackHawk
10
Created page with "{{Categoryheader|templates|those that create links}} [[Category:Transclusion templates]]"
wikitext
text/x-wiki
{{Categoryheader|templates|those that create links}}
[[Category:Transclusion templates]]
b19fe22a834e1f8ad80fb12e308b22f4feaad38c
Category:Unused modules
14
680
1202
2024-03-24T13:16:58Z
BlackHawk
10
Created page with "{{Categoryheader|modules|which are neither invoked by a template nor required/loaded be another module|true|{{t|DependencyList}}|related=no}} [[Category:Modules]]"
wikitext
text/x-wiki
{{Categoryheader|modules|which are neither invoked by a template nor required/loaded be another module|true|{{t|DependencyList}}|related=no}}
[[Category:Modules]]
ecaa18cc8d3da10ddb006a57f0ab15cd227d4c3e
Category:Icons
14
681
1203
2024-03-24T13:19:04Z
BlackHawk
10
Created page with "This category contains icons used in the interface, in various [[Special:Gadgets|gadgets]], and in the [[MediaWiki:Common.less|skin]]. [[Category:Brighter Shores Wiki images]]"
wikitext
text/x-wiki
This category contains icons used in the interface, in various [[Special:Gadgets|gadgets]], and in the [[MediaWiki:Common.less|skin]].
[[Category:Brighter Shores Wiki images]]
7d6c4a9ba55a83f7b647fbb4e74f31d0e2bde905
File:Redirect-arrow.svg
6
532
1204
907
2024-03-24T13:19:45Z
BlackHawk
10
wikitext
text/x-wiki
== Summary ==
{{Permanent Protection}}
{{PD}}
[[Category:Icons]]
6a294e3116c6a0030a8a345bcbf9cc3c464f7f93
Category:Logos
14
682
1205
2024-03-24T13:20:57Z
BlackHawk
10
Created page with "{{Categoryheader|pages|company logos||}} [[Category:Brighter Shores Wiki images]]"
wikitext
text/x-wiki
{{Categoryheader|pages|company logos||}}
[[Category:Brighter Shores Wiki images]]
f9c7dc62f83fa99ff50ebe80ac497ee73f062ad2
File:Wiki.png
6
53
1206
604
2024-03-24T13:22:19Z
BlackHawk
10
wikitext
text/x-wiki
{{Permanent Protection}}
[[Category:Brighter Shores Wiki images]]
[[Category:Logos]]
073ae1591e881ecf6cc72b22fc011a1771d98c18
File:Fenforge logo.png
6
96
1207
155
2024-03-24T13:24:39Z
BlackHawk
10
wikitext
text/x-wiki
{{Fair use|https://web.archive.org/web/20240113093704im_/https://www.solstrike.com/fenforge_logo.png}}
[[Category:Logos]]
7b8e0653a2634205b9aadd7effe978b979554279
File:Fen logo 6.png
6
655
1208
1141
2024-03-24T13:25:25Z
BlackHawk
10
wikitext
text/x-wiki
{{Fair use|https://web.archive.org/web/20120328015000im_/http://www.fenresearch.com/_/rsrc/1316441752680/home/fen%20logo%206.png?height=200&width=200}}
[[Category:Logos]]
5b427050138d96682a13d95e387254f8cedadad1
File:Copyright.svg
6
222
1209
898
2024-03-24T13:26:10Z
BlackHawk
10
added [[Category:Icons]] using [[Help:Gadget-HotCat|HotCat]]
wikitext
text/x-wiki
== Summary ==
{{Permanent Protection}}
{{GFDL}}
Source: modified from [http://commons.wikimedia.org/wiki/Image:Copyright-problem.svg a file on Wikimedia Commons].
[[Category:Icons]]
018999277cb5efe88c64d18a3a4fd5ad0a33d381
File:Padlock-red.svg
6
224
1210
901
2024-03-24T13:26:34Z
BlackHawk
10
added [[Category:Icons]] using [[Help:Gadget-HotCat|HotCat]]
wikitext
text/x-wiki
== Summary ==
{{Permanent Protection}}
{{PD}}
[[Category:Icons]]
3584be579b41ef6fa66b3186e1ee0a53a3042ebd
File:PD-icon.svg
6
272
1211
450
2024-03-24T13:26:39Z
BlackHawk
10
added [[Category:Icons]] using [[Help:Gadget-HotCat|HotCat]]
wikitext
text/x-wiki
== Summary ==
{{PD}}
Source: http://commons.wikimedia.org/wiki/Image:PD-icon.svg
[[Category:Icons]]
1f4e2c42d972e5126ce1e97b8fc6d69b2015692d
File:Information icon-grey.svg
6
275
1212
454
2024-03-24T13:26:47Z
BlackHawk
10
added [[Category:Icons]] using [[Help:Gadget-HotCat|HotCat]]
wikitext
text/x-wiki
== Summary ==
{{GFDL}}
[[Category:Brighter Shores Wiki images]]
[[Category:Icons]]
d7f00cfd065afab203f8643591be5b8feb29c1b8
File:Heckert GNU white.svg
6
278
1213
900
2024-03-24T13:26:53Z
BlackHawk
10
added [[Category:Icons]] using [[Help:Gadget-HotCat|HotCat]]
wikitext
text/x-wiki
== Summary ==
{{Permanent Protection}}
An image of a Gnu. Taken from Wikimedia Commons ([http://commons.wikimedia.org/wiki/Image:Heckert_GNU_white.svg description page]).
*Original author: Aurelio A. Heckert <aurium@gmail.com>
==License==
{{Copyleft}}
[[Category:Icons]]
6f2cc1cf68fba93c2ebe25dc65332c795e8b50db
File:GreenCopyleft.svg
6
284
1214
899
2024-03-24T13:26:58Z
BlackHawk
10
added [[Category:Icons]] using [[Help:Gadget-HotCat|HotCat]]
wikitext
text/x-wiki
== Summary ==
{{Permanent Protection}}
The green copyleft symbol. Obtained from Wikimedia Commons. Released into the public domain by the author.
==License==
{{PD}}
[[Category:Icons]]
17522addecd40aeae510362dbb3e508a9e6e3e71
File:Information icon.svg
6
543
1215
919
2024-03-24T13:27:16Z
BlackHawk
10
added [[Category:Icons]] using [[Help:Gadget-HotCat|HotCat]]
wikitext
text/x-wiki
== Summary ==
{{Permanent Protection}}
{{GFDL}}
[[Category:Icons]]
dea0d93b67f3fb5de475f4526c8aa4a3a33e7825
File:Cc-by new white.svg
6
539
1216
914
2024-03-24T13:27:20Z
BlackHawk
10
added [[Category:Icons]] using [[Help:Gadget-HotCat|HotCat]]
wikitext
text/x-wiki
== Summary ==
Sourced from: https://commons.wikimedia.org/wiki/File:Cc-by_new_white.svg
{{PD}}
[[Category:Icons]]
a5d97001d6fd8acf67f5b1890513d48745de4e5d
File:Discord logo icon.svg
6
363
1217
596
2024-03-24T13:27:50Z
BlackHawk
10
added [[Category:Logos]] using [[Help:Gadget-HotCat|HotCat]]
wikitext
text/x-wiki
[[Category:Logos]]
10f225c9f3296afc29aa6cbe67c454223cc655af
Adothria
0
683
1218
2024-03-24T13:42:01Z
Habblet
11
Created page with "'''Adothria''' is the world where ''[[Brighter Shores]]'' is set on.{{CiteGeneral|url=https://www.godisageek.com/2024/03/brighter-shores-is-a-new-mmorpg-coming-to-pc-and-mac/ |title=Brighter Shores is a new MMORPG coming to PC and Mac |author=Adam Cook |quote=Finding themselves in the peaceful coastal town of Hopeport, players initially take on the role of a town guard. Their role as protector, however, soon expands far beyond the town walls as they learn of a greater th..."
wikitext
text/x-wiki
'''Adothria''' is the world where ''[[Brighter Shores]]'' is set on.{{CiteGeneral|url=https://www.godisageek.com/2024/03/brighter-shores-is-a-new-mmorpg-coming-to-pc-and-mac/ |title=Brighter Shores is a new MMORPG coming to PC and Mac |author=Adam Cook |quote=Finding themselves in the peaceful coastal town of Hopeport, players initially take on the role of a town guard. Their role as protector, however, soon expands far beyond the town walls as they learn of a greater threat across the fantastical world of Adothria. |date=13 March 2024 |accessdate=24 March 2024 |archiveurl=https://archive.is/GVkr3 |archivedate=24 March 2024}}
==References==
{{Reflist}}
[[Category:Locations]]
225109875248e31e18ad68d32827ad538ef1efbd
Hopeport
0
68
1219
253
2024-03-24T13:43:42Z
Habblet
11
wikitext
text/x-wiki
'''Hopeport''' is a coastal town in [[Adothria]]. It serves as the main introductory town for new [[player]]s.{{CiteGeneral|url=https://www.godisageek.com/2024/03/brighter-shores-is-a-new-mmorpg-coming-to-pc-and-mac/ |title=Brighter Shores is a new MMORPG coming to PC and Mac |author=Adam Cook |quote=Finding themselves in the peaceful coastal town of Hopeport, players initially take on the role of a town guard. Their role as protector, however, soon expands far beyond the town walls as they learn of a greater threat across the fantastical world of Adothria. |date=13 March 2024 |accessdate=24 March 2024 |archiveurl=https://archive.is/GVkr3 |archivedate=24 March 2024}}
==Features==
* A [[Hopeport Harbor|harbor]]
==References==
{{Reflist}}
[[Category:Locations]]
[[Category:Hopeport|#]]
3da09121dbcbf664a512393057581febdf00637f
2023
0
684
1220
2024-03-24T14:04:39Z
ToofleBerry
6
Created page with "'''2016'''. * Between [[3 October]] and [[7 December]] - Service for Iona's Toybox, the second game created using the [[Fenforge]] engine, was stopped due to the time required to implement the legislation of the UK Online Safety Act<ref>https://web.archive.org/web/20231207233217/https://www.ionastoybox.com/</ref>. ==References== <references/> {{Timeline}}"
wikitext
text/x-wiki
'''2016'''.
* Between [[3 October]] and [[7 December]] - Service for Iona's Toybox, the second game created using the [[Fenforge]] engine, was stopped due to the time required to implement the legislation of the UK Online Safety Act<ref>https://web.archive.org/web/20231207233217/https://www.ionastoybox.com/</ref>.
==References==
<references/>
{{Timeline}}
91d25003acc8134c3a1ddfefc7447ede9c4a10eb
1223
1220
2024-03-24T14:05:22Z
ToofleBerry
6
wikitext
text/x-wiki
'''2023'''.
* Between [[3 October]] and [[7 December]] - Service for Iona's Toybox, the second game created using the [[Fenforge]] engine, was stopped due to the time required to implement the legislation of the UK Online Safety Act<ref>https://web.archive.org/web/20231207233217/https://www.ionastoybox.com/</ref>.
==References==
<references/>
{{Timeline}}
e63dee1cf1573875bb52cbe1c685f4ee1ff4f7c3
Trunk
0
685
1221
2024-03-24T14:05:03Z
BlackHawk
10
Created page with "A '''trunk''' is a piece of interactible scenery that can be found in [[Pirate Hideout]]. [[Category:Scenery]]"
wikitext
text/x-wiki
A '''trunk''' is a piece of interactible scenery that can be found in [[Pirate Hideout]].
[[Category:Scenery]]
9b1e0cc9ee33813a84a672f33130a57ad7c4839b
1228
1221
2024-03-24T14:07:09Z
BlackHawk
10
wikitext
text/x-wiki
[[File:Trunk.png|thumb|The trunk.]]
A '''trunk''' is a piece of interactable scenery that can be found in [[Pirate Hideout]].
[[Category:Scenery]]
901937a7c5b2be6e43373590b6d5e3e1e8b76485
1240
1228
2024-03-24T14:22:07Z
BlackHawk
10
wikitext
text/x-wiki
{{Infobox Scenery
|name = Trunk
|image = [[File:Trunk.png]]
|release =
|episode =
}}
A '''trunk''' is a piece of interactable scenery that can be found in [[Pirate Hideout]].
397936d62b7e3d1a20612d8277e097a665ec4fd5
Template:Timeline
10
490
1222
1158
2024-03-24T14:05:08Z
ToofleBerry
6
wikitext
text/x-wiki
{{Navbox
|name = Timeline
|title = ''Brighter Shores'' timeline
|gtitle1 = 2010s
|group1 =
* [[2010]]
* [[2011]]
* [[2012]]
* [[2013]]
* [[2014]]
* [[2015]]
* [[2016]]
* [[2017]]
* [[2018]]
* [[2019]]
|gtitle2 = 2020s
|group2 =
* [[2020]]
* [[2021]]
* [[2022]]
* [[2023]]
* [[2024]]
|gtitle3 = Other
|group3 =
* [[Upcoming updates]]
* [[Hidden updates]]
* [[:Category:Dates in Brighter Shores|Dates in Brighter Shores]]
}}{{Ctg|Timeline}}
4ddb662c52001bd81f29d1a142ef77dce4fa0022
Hidden updates
0
497
1224
853
2024-03-24T14:05:30Z
ToofleBerry
6
wikitext
text/x-wiki
'''Hidden updates''' are [[updates]] which are not mentioned in the ''Brighter Shores'' news. There are small updates and bug fixes which are too trivial to announce and should be documented here as they are found.
This page lists hidden updates for {{CURRENTYEAR}}.
{{Timeline}}
eff1e092f98099f0f7fcbb1724ea2a0f47a29993
Category:Dates in Brighter Shores
14
498
1225
855
2024-03-24T14:05:44Z
ToofleBerry
6
wikitext
text/x-wiki
{{Categoryheader|pages|dates in ''Brighter Shores''||static=no}}
{| class="wikitable" align="center" width="75%"
! Events in ''Brighter Shores'' listed by year
|-
| align=center | [[2010]] – [[2024]]
|}
{| class="wikitable" align="center" width="75%"
! colspan="32" | Events in ''Brighter Shores'' listed by date
|- style="font-size:75%"
|'''Jan'''
|[[1 January|1]]
|[[2 January|2]]
|[[3 January|3]]
|[[4 January|4]]
|[[5 January|5]]
|[[6 January|6]]
|[[7 January|7]]
|[[8 January|8]]
|[[9 January|9]]
|[[10 January|10]]
|[[11 January|11]]
|[[12 January|12]]
|[[13 January|13]]
|[[14 January|14]]
|[[15 January|15]]
|[[16 January|16]]
|[[17 January|17]]
|[[18 January|18]]
|[[19 January|19]]
|[[20 January|20]]
|[[21 January|21]]
|[[22 January|22]]
|[[23 January|23]]
|[[24 January|24]]
|[[25 January|25]]
|[[26 January|26]]
|[[27 January|27]]
|[[28 January|28]]
|[[29 January|29]]
|[[30 January|30]]
|[[31 January|31]]
|- style="font-size:75%"
|'''Feb'''
|[[1 February|1]]
|[[2 February|2]]
|[[3 February|3]]
|[[4 February|4]]
|[[5 February|5]]
|[[6 February|6]]
|[[7 February|7]]
|[[8 February|8]]
|[[9 February|9]]
|[[10 February|10]]
|[[11 February|11]]
|[[12 February|12]]
|[[13 February|13]]
|[[14 February|14]]
|[[15 February|15]]
|[[16 February|16]]
|[[17 February|17]]
|[[18 February|18]]
|[[19 February|19]]
|[[20 February|20]]
|[[21 February|21]]
|[[22 February|22]]
|[[23 February|23]]
|[[24 February|24]]
|[[25 February|25]]
|[[26 February|26]]
|[[27 February|27]]
|[[28 February|28]]
|[[29 February|29]]
|- style="font-size:75%"
|'''Mar'''
|[[1 March|1]]
|[[2 March|2]]
|[[3 March|3]]
|[[4 March|4]]
|[[5 March|5]]
|[[6 March|6]]
|[[7 March|7]]
|[[8 March|8]]
|[[9 March|9]]
|[[10 March|10]]
|[[11 March|11]]
|[[12 March|12]]
|[[13 March|13]]
|[[14 March|14]]
|[[15 March|15]]
|[[16 March|16]]
|[[17 March|17]]
|[[18 March|18]]
|[[19 March|19]]
|[[20 March|20]]
|[[21 March|21]]
|[[22 March|22]]
|[[23 March|23]]
|[[24 March|24]]
|[[25 March|25]]
|[[26 March|26]]
|[[27 March|27]]
|[[28 March|28]]
|[[29 March|29]]
|[[30 March|30]]
|[[31 March|31]]
|- style="font-size:75%"
|'''Apr'''
|[[1 April|1]]
|[[2 April|2]]
|[[3 April|3]]
|[[4 April|4]]
|[[5 April|5]]
|[[6 April|6]]
|[[7 April|7]]
|[[8 April|8]]
|[[9 April|9]]
|[[10 April|10]]
|[[11 April|11]]
|[[12 April|12]]
|[[13 April|13]]
|[[14 April|14]]
|[[15 April|15]]
|[[16 April|16]]
|[[17 April|17]]
|[[18 April|18]]
|[[19 April|19]]
|[[20 April|20]]
|[[21 April|21]]
|[[22 April|22]]
|[[23 April|23]]
|[[24 April|24]]
|[[25 April|25]]
|[[26 April|26]]
|[[27 April|27]]
|[[28 April|28]]
|[[29 April|29]]
|[[30 April|30]]
|- style="font-size:75%"
|'''May'''
|[[1 May|1]]
|[[2 May|2]]
|[[3 May|3]]
|[[4 May|4]]
|[[5 May|5]]
|[[6 May|6]]
|[[7 May|7]]
|[[8 May|8]]
|[[9 May|9]]
|[[10 May|10]]
|[[11 May|11]]
|[[12 May|12]]
|[[13 May|13]]
|[[14 May|14]]
|[[15 May|15]]
|[[16 May|16]]
|[[17 May|17]]
|[[18 May|18]]
|[[19 May|19]]
|[[20 May|20]]
|[[21 May|21]]
|[[22 May|22]]
|[[23 May|23]]
|[[24 May|24]]
|[[25 May|25]]
|[[26 May|26]]
|[[27 May|27]]
|[[28 May|28]]
|[[29 May|29]]
|[[30 May|30]]
|[[31 May|31]]
|- style="font-size:75%"
|'''Jun'''
|[[1 June|1]]
|[[2 June|2]]
|[[3 June|3]]
|[[4 June|4]]
|[[5 June|5]]
|[[6 June|6]]
|[[7 June|7]]
|[[8 June|8]]
|[[9 June|9]]
|[[10 June|10]]
|[[11 June|11]]
|[[12 June|12]]
|[[13 June|13]]
|[[14 June|14]]
|[[15 June|15]]
|[[16 June|16]]
|[[17 June|17]]
|[[18 June|18]]
|[[19 June|19]]
|[[20 June|20]]
|[[21 June|21]]
|[[22 June|22]]
|[[23 June|23]]
|[[24 June|24]]
|[[25 June|25]]
|[[26 June|26]]
|[[27 June|27]]
|[[28 June|28]]
|[[29 June|29]]
|[[30 June|30]]
|- style="font-size:75%"
|'''Jul'''
|[[1 July|1]]
|[[2 July|2]]
|[[3 July|3]]
|[[4 July|4]]
|[[5 July|5]]
|[[6 July|6]]
|[[7 July|7]]
|[[8 July|8]]
|[[9 July|9]]
|[[10 July|10]]
|[[11 July|11]]
|[[12 July|12]]
|[[13 July|13]]
|[[14 July|14]]
|[[15 July|15]]
|[[16 July|16]]
|[[17 July|17]]
|[[18 July|18]]
|[[19 July|19]]
|[[20 July|20]]
|[[21 July|21]]
|[[22 July|22]]
|[[23 July|23]]
|[[24 July|24]]
|[[25 July|25]]
|[[26 July|26]]
|[[27 July|27]]
|[[28 July|28]]
|[[29 July|29]]
|[[30 July|30]]
|[[31 July|31]]
|- style="font-size:75%"
|'''Aug'''
|[[1 August|1]]
|[[2 August|2]]
|[[3 August|3]]
|[[4 August|4]]
|[[5 August|5]]
|[[6 August|6]]
|[[7 August|7]]
|[[8 August|8]]
|[[9 August|9]]
|[[10 August|10]]
|[[11 August|11]]
|[[12 August|12]]
|[[13 August|13]]
|[[14 August|14]]
|[[15 August|15]]
|[[16 August|16]]
|[[17 August|17]]
|[[18 August|18]]
|[[19 August|19]]
|[[20 August|20]]
|[[21 August|21]]
|[[22 August|22]]
|[[23 August|23]]
|[[24 August|24]]
|[[25 August|25]]
|[[26 August|26]]
|[[27 August|27]]
|[[28 August|28]]
|[[29 August|29]]
|[[30 August|30]]
|[[31 August|31]]
|- style="font-size:75%"
|'''Sep'''
|[[1 September|1]]
|[[2 September|2]]
|[[3 September|3]]
|[[4 September|4]]
|[[5 September|5]]
|[[6 September|6]]
|[[7 September|7]]
|[[8 September|8]]
|[[9 September|9]]
|[[10 September|10]]
|[[11 September|11]]
|[[12 September|12]]
|[[13 September|13]]
|[[14 September|14]]
|[[15 September|15]]
|[[16 September|16]]
|[[17 September|17]]
|[[18 September|18]]
|[[19 September|19]]
|[[20 September|20]]
|[[21 September|21]]
|[[22 September|22]]
|[[23 September|23]]
|[[24 September|24]]
|[[25 September|25]]
|[[26 September|26]]
|[[27 September|27]]
|[[28 September|28]]
|[[29 September|29]]
|[[30 September|30]]
|- style="font-size:75%"
|'''Oct'''
|[[1 October|1]]
|[[2 October|2]]
|[[3 October|3]]
|[[4 October|4]]
|[[5 October|5]]
|[[6 October|6]]
|[[7 October|7]]
|[[8 October|8]]
|[[9 October|9]]
|[[10 October|10]]
|[[11 October|11]]
|[[12 October|12]]
|[[13 October|13]]
|[[14 October|14]]
|[[15 October|15]]
|[[16 October|16]]
|[[17 October|17]]
|[[18 October|18]]
|[[19 October|19]]
|[[20 October|20]]
|[[21 October|21]]
|[[22 October|22]]
|[[23 October|23]]
|[[24 October|24]]
|[[25 October|25]]
|[[26 October|26]]
|[[27 October|27]]
|[[28 October|28]]
|[[29 October|29]]
|[[30 October|30]]
|[[31 October|31]]
|- style="font-size:75%"
|'''Nov'''
|[[1 November|1]]
|[[2 November|2]]
|[[3 November|3]]
|[[4 November|4]]
|[[5 November|5]]
|[[6 November|6]]
|[[7 November|7]]
|[[8 November|8]]
|[[9 November|9]]
|[[10 November|10]]
|[[11 November|11]]
|[[12 November|12]]
|[[13 November|13]]
|[[14 November|14]]
|[[15 November|15]]
|[[16 November|16]]
|[[17 November|17]]
|[[18 November|18]]
|[[19 November|19]]
|[[20 November|20]]
|[[21 November|21]]
|[[22 November|22]]
|[[23 November|23]]
|[[24 November|24]]
|[[25 November|25]]
|[[26 November|26]]
|[[27 November|27]]
|[[28 November|28]]
|[[29 November|29]]
|[[30 November|30]]
|- style="font-size:75%"
|'''Dec'''
|[[1 December|1]]
|[[2 December|2]]
|[[3 December|3]]
|[[4 December|4]]
|[[5 December|5]]
|[[6 December|6]]
|[[7 December|7]]
|[[8 December|8]]
|[[9 December|9]]
|[[10 December|10]]
|[[11 December|11]]
|[[12 December|12]]
|[[13 December|13]]
|[[14 December|14]]
|[[15 December|15]]
|[[16 December|16]]
|[[17 December|17]]
|[[18 December|18]]
|[[19 December|19]]
|[[20 December|20]]
|[[21 December|21]]
|[[22 December|22]]
|[[23 December|23]]
|[[24 December|24]]
|[[25 December|25]]
|[[26 December|26]]
|[[27 December|27]]
|[[28 December|28]]
|[[29 December|29]]
|[[30 December|30]]
|[[31 December|31]]
|}
{{Timeline}}
[[Category:Updates]]
a2cb004c418a10bd54dde55d529eae51eec381ae
Upcoming updates
0
496
1226
852
2024-03-24T14:05:52Z
ToofleBerry
6
wikitext
text/x-wiki
{{Future}}
This page is a list of [[updates]] coming to ''[[Brighter Shores]]''.
==Schedule==
''The dates and specific order of the updates are based on official announcements and estimates from Fen Research. It is possible that an update will not be released within the listed time frame.''
===2024===
{| class="wikitable"
! colspan="2" | Timeframe
! Update
|-
| colspan="2" | Q3
| Release of ''[[Brighter Shores]]''.
|}
{{Timeline}}
97b99e82945c6c92f0c976315ce13cbbd592bccc
File:Trunk.png
6
686
1227
2024-03-24T14:06:15Z
BlackHawk
10
wikitext
text/x-wiki
da39a3ee5e6b4b0d3255bfef95601890afd80709
1231
1227
2024-03-24T14:07:46Z
BlackHawk
10
wikitext
text/x-wiki
[[Category:Scenery images]]
4211c47bd425933fe892ec95a0e868286d7edfca
Category:Scenery
14
687
1229
2024-03-24T14:07:25Z
BlackHawk
10
Created page with "{{Categoryheader|pages|scenery}} [[Category:Content]]"
wikitext
text/x-wiki
{{Categoryheader|pages|scenery}}
[[Category:Content]]
b518647b6e1cd0e6f6a286fb9e4fb64a8de00b7e
File:Fr logo 1440w.png
6
688
1230
2024-03-24T14:07:29Z
ToofleBerry
6
Obtained from https://web.archive.org/web/20240313195951im_/https://www.fenresearch.com/fr_logo_1440w.png
[[Category:Logos]]
wikitext
text/x-wiki
== Summary ==
Obtained from https://web.archive.org/web/20240313195951im_/https://www.fenresearch.com/fr_logo_1440w.png
[[Category:Logos]]
cd5e91c72bd41cf0479238505506a2f6cce7b140
Category:Item images
14
641
1232
1061
2024-03-24T14:08:45Z
BlackHawk
10
wikitext
text/x-wiki
{{Categoryheader|images|item images with no particular subcategory||}}
[[Category:Images]]
[[Category:Items]]
e23d006848a138e7f21e75d421ec0175a937b104
Category:Scenery images
14
689
1233
2024-03-24T14:09:04Z
BlackHawk
10
Created page with "{{Categoryheader|images|scenery images with no particular subcategory||}} [[Category:Images]] [[Category:Scenery]]"
wikitext
text/x-wiki
{{Categoryheader|images|scenery images with no particular subcategory||}}
[[Category:Images]]
[[Category:Scenery]]
350e51237c7668955b741ca50fefc04538d02d5e
Module:Param Parse
828
673
1234
1194
2024-03-24T14:11:21Z
Gau Cho
5
Scribunto
text/plain
--[=[
-- Standardized functions to parse Infobox params
--]=]
-- <nowiki>
local param = {}
-- Standardized "name" function
function param.name(arg)
return string.match(arg or '', '%S') and arg or nil
end
-- Standardized "has content" function
function param.has_content(arg, default)
-- Return arg if any non-whitespace character is found
return string.match(arg or '', '%S') and arg or default
end
-- Create a standardized release function, since so many pages use it
-- Turns release and update into a single parameter
function param.release_update(release, update)
if not Infobox.isDefined(release) then
return nil
end
if string.lower(release) == 'no' then
return 'N/A'
end
if not Infobox.isDefined(update) then
return string.format('%s (Update unknown)',release)
end
if string.lower(update) == 'no' then
return release
end
return string.format('%s ([[Update:%s|Update]])', release, update)
end
-- Standardized image function
function param.image(img)
if img and img:find('%S') then
return img
else
return nil
end
end
-- Strip the brackets from the param
function param.image_smw(img)
local _img = string.match(img, "File:.-%.png")
return _img
end
-- Standardized numbers
function param.numbers(num)
num = string.gsub(num or '',',','')
return tonumber(num)
end
return param
-- </nowiki>
c4ad0c490f050eae2886d4a77cbf54f9d4dec72a
Template:Infobox Scenery
10
690
1235
2024-03-24T14:11:58Z
BlackHawk
10
Created page with "{| class="wikitable infobox-scenery" style="float:right" !colspan="2"|{{{name|{{PAGENAME}}}}} |- |colspan="2" style="text-align:center"| {{{image|[[Special:Upload|Please upload an image!]]{{Mainonly|[[Category:Needs image]]}}}}} |- |<b>Release date</b>||{{{release|Q3 [[2024]]}}} |- |<b>Episode</b>||{{#switch:{{{episode|}}}|Hopeport=[[File:Hopeport episode icon.png|18px]] [[Hopeport]]|Hopeforest=[[File:Hopeforest episode icon.png|18px]] [[Hopeforest]]|Mine of Manbutan=F..."
wikitext
text/x-wiki
{| class="wikitable infobox-scenery" style="float:right"
!colspan="2"|{{{name|{{PAGENAME}}}}}
|-
|colspan="2" style="text-align:center"| {{{image|[[Special:Upload|Please upload an image!]]{{Mainonly|[[Category:Needs image]]}}}}}
|-
|<b>Release date</b>||{{{release|Q3 [[2024]]}}}
|-
|<b>Episode</b>||{{#switch:{{{episode|}}}|Hopeport=[[File:Hopeport episode icon.png|18px]] [[Hopeport]]|Hopeforest=[[File:Hopeforest episode icon.png|18px]] [[Hopeforest]]|Mine of Manbutan=[[File:Mine of Manbutan episode icon.png|18px]]|#default=[[File:Unknown episode icon.png|18px]] Unknown}}
|}<includeonly>{{Mainonly|[[Category:Scenery]]}}</includeonly>
661f615f08f1402eafc15991bb2ee7b69ef0d7ce
1237
1235
2024-03-24T14:14:34Z
BlackHawk
10
wikitext
text/x-wiki
{| class="wikitable infobox-scenery" style="float:right"
!colspan="2"|{{{name|{{PAGENAME}}}}}
|-
|colspan="2" style="text-align:center"| {{#if:{{{image|}}}|{{{image}}}|[[Special:Upload|Please upload an image!]]{{Mainonly|[[Category:Needs image]]}}}}
|-
|<b>Release date</b>||{{{release|Q3 [[2024]]}}}
|-
|<b>Episode</b>||{{#switch:{{{episode|}}}|Hopeport=[[File:Hopeport episode icon.png|18px]] [[Hopeport]]|Hopeforest=[[File:Hopeforest episode icon.png|18px]] [[Hopeforest]]|Mine of Manbutan=[[File:Mine of Manbutan episode icon.png|18px]]|#default=[[File:Unknown episode icon.png|18px]] Unknown}}
|}<includeonly>{{Mainonly|[[Category:Scenery]]}}</includeonly>
bacec8520a05757ad12efbc71877e6675136f72a
1239
1237
2024-03-24T14:20:57Z
BlackHawk
10
wikitext
text/x-wiki
{| class="wikitable infobox-scenery" style="float:right"
!colspan="2"| {{#if:{{{name|}}}|{{{name}}}|{{PAGENAME}}}}
|-
|colspan="2" style="text-align:center"| {{#if:{{{image|}}}|{{{image}}}|[[Special:Upload|Please upload an image!]]{{Mainonly|[[Category:Needs image]]}}}}
|-
|<b>Release date</b>||{{#if:{{{release|}}}|{{{release}}}|Q3 [[2024]]}}
|-
|<b>Episode</b>||{{#switch:{{{episode|}}}|Hopeport=[[File:Hopeport episode icon.png|18px]] [[Hopeport]]|Hopeforest=[[File:Hopeforest episode icon.png|18px]] [[Hopeforest]]|Mine of Manbutan=[[File:Mine of Manbutan episode icon.png|18px]]|#default=[[File:Unknown episode icon.png|18px]] Unknown}}
|}<includeonly>{{Mainonly|[[Category:Scenery]]}}</includeonly>
23b376e62e12da7f1bcfb386105b6cfc24b78c94
1245
1239
2024-03-24T14:27:30Z
BlackHawk
10
wikitext
text/x-wiki
{| class="wikitable infobox-scenery" style="float:right"
!colspan="2"| {{#if:{{{name|}}}|{{{name}}}|{{PAGENAME}}}}
|-
|colspan="2" style="text-align:center"| {{#if:{{{image|}}}|{{{image}}}|[[Special:Upload|Please upload an image!]]{{Mainonly|[[Category:Needs image]]}}}}
|-
|<b>Release date</b>||{{#if:{{{release|}}}|{{{release}}}|Q3 [[2024]]}}
|-
|<b>Episode</b>||{{#switch:{{{episode|}}}|Hopeport=[[File:Hopeport episode icon.png|18px]] [[Hopeport]]|Hopeforest=[[File:Hopeforest episode icon.png|18px]] [[Hopeforest]]|Mine of Manbutan=[[File:Mine of Manbutan episode icon.png|18px]]|#default=[[File:Unknown episode icon.png|18px]] Unknown}}
|}{{Mainonly|[[Category:Scenery]]}}<noinclude>{{/doc}}</noinclude>
58949b72e77aa33ec3d0c64952ebf1d458c4efa9
File:Fen research logo.png
6
691
1236
2024-03-24T14:12:27Z
ToofleBerry
6
Obtained from https://web.archive.org/web/20130401171902im_/http://www.fenresearch.com/_/rsrc/1335457756451/index2/fen_research_logo.png?height=237&width=216
[[Category:Logos]]
wikitext
text/x-wiki
== Summary ==
Obtained from https://web.archive.org/web/20130401171902im_/http://www.fenresearch.com/_/rsrc/1335457756451/index2/fen_research_logo.png?height=237&width=216
[[Category:Logos]]
9988a310bab34c3c7d68426dfb72aa843fd821f5
Template:Infobox Item
10
77
1238
1186
2024-03-24T14:15:34Z
BlackHawk
10
wikitext
text/x-wiki
{| class="wikitable infobox-item" style="float:right"
!colspan="2"|{{{name|{{PAGENAME}}}}}
|-
|colspan="2" style="text-align:center"| {{#if:{{{image|}}}|{{{image}}}|[[Special:Upload|Please upload an image!]]{{Mainonly|[[Category:Needs image]]}}}}
|-
|<b>Release date</b>||{{{release|Q3 [[2024]]}}}
|-
|<b>Episode</b>||{{#switch:{{{episode|}}}|Hopeport=[[File:Hopeport episode icon.png|18px]] [[Hopeport]]|Hopeforest=[[File:Hopeforest episode icon.png|18px]] [[Hopeforest]]|Mine of Manbutan=[[File:Mine of Manbutan episode icon.png|18px]]|#default=[[File:Unknown episode icon.png|18px]] Unknown}}
|-
|<b>Profession</b>||{{{profession|{{Edit button|text=<b>?</b> (edit)}}{{Mainonly|[[Category:Items needing profession]]}}}}}
|-
|<b>Value</b>||{{{value|{{Edit button|text=<b>?</b> (edit)}}{{Mainonly|[[Category:Items needing value]]}}}}}
|}<includeonly>{{Mainonly|[[Category:Items]]}}</includeonly>
901027b68d7164b9173e11a89f058e606051a46d
1241
1238
2024-03-24T14:24:04Z
BlackHawk
10
wikitext
text/x-wiki
{| class="wikitable infobox-item" style="float:right"
!colspan="2"| {{#if:{{{name|}}}|{{{name}}}|{{PAGENAME}}}}
|-
|colspan="2" style="text-align:center"| {{#if:{{{image|}}}|{{{image}}}|[[Special:Upload|Please upload an image!]]{{Mainonly|[[Category:Needs image]]}}}}
|-
|<b>Release date</b>||{{#if:{{{release|}}}|{{{release}}}|Q3 [[2024]]}}
|-
|<b>Episode</b>||{{#switch:{{{episode|}}}|Hopeport=[[File:Hopeport episode icon.png|18px]] [[Hopeport]]|Hopeforest=[[File:Hopeforest episode icon.png|18px]] [[Hopeforest]]|Mine of Manbutan=[[File:Mine of Manbutan episode icon.png|18px]]|#default=[[File:Unknown episode icon.png|18px]] Unknown}}
|-
|<b>Profession</b>||{{#if:{{{profession|}}}|{{{profession}}}|{{Edit button|text=<b>?</b> (edit)}}{{Mainonly|[[Category:Items needing profession]]}}}}
|-
|<b>Value</b>||{{#if:{{{value|}}}|{{{value}}}|{{Edit button|text=<b>?</b> (edit)}}{{Mainonly|[[Category:Items needing value]]}}}}
|}<includeonly>{{Mainonly|[[Category:Items]]}}</includeonly>
03282298561979458b2abd38451abf4cd30c26c8
1243
1241
2024-03-24T14:26:56Z
BlackHawk
10
wikitext
text/x-wiki
{| class="wikitable infobox-item" style="float:right"
!colspan="2"| {{#if:{{{name|}}}|{{{name}}}|{{PAGENAME}}}}
|-
|colspan="2" style="text-align:center"| {{#if:{{{image|}}}|{{{image}}}|[[Special:Upload|Please upload an image!]]{{Mainonly|[[Category:Needs image]]}}}}
|-
|<b>Release date</b>||{{#if:{{{release|}}}|{{{release}}}|Q3 [[2024]]}}
|-
|<b>Episode</b>||{{#switch:{{{episode|}}}|Hopeport=[[File:Hopeport episode icon.png|18px]] [[Hopeport]]|Hopeforest=[[File:Hopeforest episode icon.png|18px]] [[Hopeforest]]|Mine of Manbutan=[[File:Mine of Manbutan episode icon.png|18px]]|#default=[[File:Unknown episode icon.png|18px]] Unknown}}
|-
|<b>Profession</b>||{{#if:{{{profession|}}}|{{{profession}}}|{{Edit button|text=<b>?</b> (edit)}}{{Mainonly|[[Category:Items needing profession]]}}}}
|-
|<b>Value</b>||{{#if:{{{value|}}}|{{{value}}}|{{Edit button|text=<b>?</b> (edit)}}{{Mainonly|[[Category:Items needing value]]}}}}
|}{{Mainonly|[[Category:Items]]}}<noinclude>{{/doc}}</noinclude>
a6602e79b2739b09ae4374387568fdc1313aaaca
Template:Infobox Profession
10
661
1242
1161
2024-03-24T14:25:10Z
BlackHawk
10
wikitext
text/x-wiki
{| class="wikitable infobox-profession" style="float:right"
! colspan="2" | {{#if:{{{name|}}}|{{{name}}}|{{PAGENAME}}}}
|-
| colspan="2" style="text-align:center" | {{#if:{{{image|}}}|{{{image}}}|[[Special:Upload|Please upload an image!]]{{Mainonly|[[Category:Needs image]]}}}}
|-
! Release date
| {{{release|Q3 [[2024]]}}}
|}{{Mainonly|[[Category:Professions]]}}<noinclude>{{/doc}}</noinclude>
0c0cc008259cc09a7833e58439f6b896e0212bf8
Module:Infobox
828
102
1244
866
2024-03-24T14:27:03Z
Gau Cho
5
Replaced content with "--[=[ -- For documentation, see [[Module:Infobox/doc]] --]=] -- <nowiki> local Infobox = {} --[[ Infobox class -- args : parameters from frame to pass through -- Sets a meta table and creates a <div> tag wrapper -- other fields are initialized in other functions --]] function Infobox.new(args) local obj = setmetatable({ args = args, -- parameters (uncleaned) params = {}, -- param definition infobox_name = nil, -- template name }, Infobox) r..."
Scribunto
text/plain
--[=[
-- For documentation, see [[Module:Infobox/doc]]
--]=]
-- <nowiki>
local Infobox = {}
--[[
Infobox class
-- args : parameters from frame to pass through
-- Sets a meta table and creates a <div> tag wrapper
-- other fields are initialized in other functions
--]]
function Infobox.new(args)
local obj = setmetatable({
args = args, -- parameters (uncleaned)
params = {}, -- param definition
infobox_name = nil, -- template name
},
Infobox)
return obj
end
-- Defines an infobox name ({{Template:arg}})
-- Used to create a link at the bottom of pages and for css
function Infobox:define_name(arg)
self.infobox_name = arg
end
--[[
Function for defining parameters
-- name : parameter name
-- func : function to define param, defaults to looking at blanks
DO NOT DEFINE VERSION HERE
USE :maxVersion()
Can be used any number of times for efficient definition
--]]
function Infobox:define_params(...)
for _, v in ipairs(...) do
-- For every parameter, store its corresponding function to self.params
if v.name then
local param = {}
-- Copy the function
if type(v.func) == 'function' or type(v.func) == 'table' then
param.func = v.func
end
-- If smw_property is defined, then use smw_func, or default to func if it is not defined
if v.smw_property and type(v.smw_property == 'string') then
param.smw_property = v.smw_property
if type(v.smw_func) == 'function' or type(v.smw_func) == 'table' then
param.smw_func = v.smw_func
else
param.smw_func = param.func
end
end
self.params[v.name] = param
end
end
end
function Infobox.param(paramname)
param = {
property = 'Param',
name = paramname,
}
return param
end
function Infobox.raw_param(paramname)
param = {
property = 'Raw Param',
name = paramname,
}
return param
end
return Infobox
d4ca6a97cbebfc7bc079746b64fa626ac5e7000d
File:Combat.jpg
6
626
1246
612
2024-03-24T14:32:02Z
Merds
25
wikitext
text/x-wiki
{{Fair use|link=https://cdn.cloudflare.steamstatic.com/steam/apps/2791440/ss_a67ce8ed2d32a531442c893007a881215c4648b8.jpg?t=1710756596}}
bbfdf4d1042d50f5b2d5236b49bd7b2bfd24c93f
1249
1025
2024-03-24T14:32:44Z
Merds
25
Merds moved page [[File:Combat 2.jpg]] to [[File:Combat.jpg]] without leaving a redirect
wikitext
text/x-wiki
== Summary ==
{{Fair use|link=https://cdn.cloudflare.steamstatic.com/steam/apps/2791440/ss_a67ce8ed2d32a531442c893007a881215c4648b8.jpg?t=1710756596}}
f2da26bdcf62a64e1ae9e8a8ab4c5c03f2f13294
Combat
0
191
1247
1099
2024-03-24T14:32:26Z
Merds
25
wikitext
text/x-wiki
[[File:Equipment.jpg|thumb|right|A preview of player in combat.]]
[[File:Combat.jpg|thumb|right|Another preview of player in combat.]]
[[File:Combat actions interface.png|thumb|The combat actions interface.]]
'''Combat''' is a mechanic in [[Brighter Shores]] in which several [[player]]s or [[monsters]] fight. Depending on the [[class]] that is being used, player combat can utilise melee, ranged, or magic.
[[Special attacks]] are a feature of the combat system.
{{Mechanics}}
994d3e71a257544642e0695bb070e2619fc0f6f3
Template:Infobox Scenery/doc
10
692
1248
2024-03-24T14:32:29Z
BlackHawk
10
Created page with "{{Documentation}} ==Parameters== ===name=== The name of the scenery. ===image=== The image of the scenery. ===release=== The release date of the scenery. ===episode=== The episode of the scenery. One of: * Hopeport * Hopeforest * Mine of Manbutan ==Quick copy== <pre>{{Infobox Scenery |name = |image = |release = |episode = }}</pre> <includeonly>[[Category:Infobox templates]]</includeonly>"
wikitext
text/x-wiki
{{Documentation}}
==Parameters==
===name===
The name of the scenery.
===image===
The image of the scenery.
===release===
The release date of the scenery.
===episode===
The episode of the scenery.
One of:
* Hopeport
* Hopeforest
* Mine of Manbutan
==Quick copy==
<pre>{{Infobox Scenery
|name =
|image =
|release =
|episode =
}}</pre>
<includeonly>[[Category:Infobox templates]]</includeonly>
5afc15f2d02320876b4bc89ff2ba759e6419684d
Template:Infobox Item/doc
10
694
1250
2024-03-24T14:34:03Z
BlackHawk
10
Created page with "{{Documentation}} ==Parameters== ===name=== The name of the item. ===image=== The image of the item. ===release=== The release date of the item. ===episode=== The episode of the item. One of: * Hopeport * Hopeforest * Mine of Manbutan ===profession=== The profession of the item. ===value=== The value of the item. ==Quick copy== <pre>{{Infobox Item |name = |image = |release = |episode = |profession = |value = }}</pre> <includeonly>Category:Infobox templat..."
wikitext
text/x-wiki
{{Documentation}}
==Parameters==
===name===
The name of the item.
===image===
The image of the item.
===release===
The release date of the item.
===episode===
The episode of the item.
One of:
* Hopeport
* Hopeforest
* Mine of Manbutan
===profession===
The profession of the item.
===value===
The value of the item.
==Quick copy==
<pre>{{Infobox Item
|name =
|image =
|release =
|episode =
|profession =
|value =
}}</pre>
<includeonly>[[Category:Infobox templates]]</includeonly>
469932b7480acbff1cdf745d64e65b5008a0a3ca
Module:DependencyList
828
231
1251
405
2024-03-24T14:41:21Z
Merds
25
new icon @Gau
Scribunto
text/plain
local p = {}
local libraryUtil = require( 'libraryUtil' )
local arr = require( 'Module:Array' )
local yn = require( 'Module:Yesno' )
local param = require( 'Module:Paramtest' )
local dpl = require( 'Module:DPLlua' )
local tooltip = require( 'Module:Tooltip' )
local moduleIsUsed = false
local COLLAPSE_LIST_LENGTH_THRESHOLD = 5
local MAX_DYNAMIC_REQUIRE_LIST_LENGTH = 30
local dynamicRequireListQueryCache = {}
local builtins = {
["libraryUtil"] = {
link = "mw:Special:MyLanguage/Extension:Scribunto/Lua reference manual#libraryUtil",
categories = {},
},
["strict"] = {
link = "mw:Special:MyLanguage/Extension:Scribunto/Lua reference manual#strict",
categories = { "Strict mode modules" },
},
}
--- Used in case 'require( varName )' is found. Attempts to find a string value stored in 'varName'.
---@param content string The content of the module to search in
---@param varName string
---@return string
local function substVarValue( content, varName )
local res = content:match( varName .. '%s*=%s*(%b""%s-%.*)' ) or content:match( varName .. "%s*=%s*(%b''%s-%.*)" ) or ''
if res:find( '^(["\'])[Mm]odule:[%S]+%1' ) and not res:find( '%.%.' ) and not res:find( '%%%a' ) then
return mw.text.trim( res )
else
return ''
end
end
---@param capture string
---@param content string The content of the module to search in
---@return string
local function extractModuleName( capture, content )
capture = capture:gsub( '^%(%s*(.-)%s*%)$', '%1' )
if capture:find( '^(["\']).-%1$' ) then -- Check if it is already a pure string
return capture
elseif capture:find( '^[%a_][%w_]*$' ) then -- Check if if is a single variable
return substVarValue( content, capture )
end
return capture
end
---@param str string
---@return string
local function formatPageName( str )
local name = mw.text.trim(str)
:gsub( '^([\'\"])(.-)%1$', '%2' ) -- Only remove quotes at start and end of string if both are the same type
:gsub( '_', ' ' )
:gsub( '^.', string.upper )
:gsub( ':.', string.upper )
return name
end
---@param str string
---@param allowBuiltins? boolean
---@return string
local function formatModuleName( str, allowBuiltins )
if allowBuiltins then
local name = mw.text.trim(str)
-- Only remove quotes at start and end of string if both are the same type
:gsub([[^(['"])(.-)%1$]], '%2')
if builtins[name] then
return name
end
end
local module = formatPageName( str )
if not string.find( module, '^[Mm]odule:' ) then
module = 'Module:' .. module
end
return module
end
local function dualGmatch( str, pat1, pat2 )
local f1 = string.gmatch( str, pat1 )
if pat2 then
local f2 = string.gmatch( str, pat2 )
return function()
return f1() or f2()
end
else
return f1
end
end
local function isDynamicPath( str )
return string.find( str, '%.%.' ) or string.find( str, '%%%a' )
end
--- Used in case a construct like 'require( "Module:wowee/" .. isTheBest )' is found.
--- Will return a list of pages which satisfy this pattern where 'isTheBest' can take any value.
---@param query string
---@return string[]
local function getDynamicRequireList( query )
if query:find( '%.%.' ) then
query = mw.text.split( query, '..', true )
query = arr.map( query, function(x) return mw.text.trim(x) end )
query = arr.map( query, function(x) return (x:match('^[\'\"](.-)[\'\"]$') or '%') end )
query = table.concat( query )
else
local _, _query = query:match( '(["\'])(.-)%1' )
query = _query:gsub( '%%%a', '%%' )
end
query = query:gsub( '^[Mm]odule:', '' )
if query:find( '^[Ee]xchange/' ) or query:find( '^[Dd]ata/' ) then
return { 'Module:' .. query } -- This format will later be used by formatDynamicQueryLink()
end
if dynamicRequireListQueryCache[ query ] then
return dynamicRequireListQueryCache[ query ]
end
local list = dpl.ask{
namespace = 'Module',
titlematch = query,
nottitlematch = '%/doc|'..query..'/%',
distinct = 'strict',
ignorecase = true,
ordermethod = 'title',
count = MAX_DYNAMIC_REQUIRE_LIST_LENGTH + 1,
skipthispage = 'no',
allowcachedresults = true,
cacheperiod = 604800 -- One week
}
if #list > MAX_DYNAMIC_REQUIRE_LIST_LENGTH then
list = { 'Module:' .. query }
end
dynamicRequireListQueryCache[ query ] = list
return list
end
--- Returns a list of modules loaded and required by module 'moduleName'.
---@param moduleName string
---@param searchForUsedTemplates? boolean
---@return table<string, string[]>
local function getRequireList( moduleName, searchForUsedTemplates )
local content = mw.title.new( moduleName ):getContent()
local requireList = arr{}
local loadDataList = arr{}
local loadJsonDataList = arr{}
local usedTemplateList = arr{}
local dynamicRequirelist = arr{}
local dynamicLoadDataList = arr{}
local dynamicLoadJsonDataList = arr{}
local extraCategories = arr{}
assert( content ~= nil, string.format( '%s does not exist', moduleName ) )
content = content:gsub( '%-%-%[(=-)%[.-%]%1%]', '' ):gsub( '%-%-[^\n]*', '' ) -- Strip comments
local function getList( pat1, pat2, list, dynList )
for match in dualGmatch( content, pat1, pat2 ) do
match = mw.text.trim( match )
local name = extractModuleName( match, content )
if isDynamicPath( name ) then
dynList:insert( getDynamicRequireList( name ), true )
elseif name ~= '' then
name = formatModuleName( name, true )
table.insert( list, name )
if builtins[name] then
extraCategories = extraCategories:insert( builtins[name].categories, true )
end
end
end
end
getList( 'require%s*(%b())', 'require%s*((["\'])%s*[Mm]odule:.-%2)', requireList, dynamicRequirelist )
getList( 'mw%.loadData%s*(%b())', 'mw%.loadData%s*((["\'])%s*[Mm]odule:.-%2)', loadDataList, dynamicLoadDataList )
getList( 'mw%.loadJsonData%s*(%b())', 'mw%.loadJsonData%s*((["\'])%s*[Mm]odule:.-%2)', loadJsonDataList, dynamicLoadJsonDataList )
getList( 'pcall%s*%(%s*require%s*,([^%),]+)', nil, requireList, dynamicRequirelist )
getList( 'pcall%s*%(%s*mw%.loadData%s*,([^%),]+)', nil, loadDataList, dynamicLoadDataList )
getList( 'pcall%s*%(%s*mw%.loadJsonData%s*,([^%),]+)', nil, loadJsonDataList, dynamicLoadJsonDataList )
if searchForUsedTemplates then
for preprocess in string.gmatch( content, ':preprocess%s*(%b())' ) do
local function recursiveGMatch( str, pat )
local list = {}
local i = 0
repeat
for match in string.gmatch( list[i] or str, pat ) do
table.insert( list, match )
end
i = i + 1
until i > #list or i > 100
i = 0
return function()
i = i + 1
return list[i]
end
end
for template in recursiveGMatch( preprocess, '{(%b{})}' ) do
local name = string.match( template, '{(.-)[|{}]' )
if name ~= '' then
if name:find( ':' ) then
local ns = name:match( '^(.-):' )
if arr.contains( {'', 'template', 'calculator', 'user'}, ns:lower() ) then
table.insert( usedTemplateList, name )
elseif ns == ns:upper() then
table.insert( usedTemplateList, ns ) -- Probably a magic word
end
else
if name:match( '^%u+$' ) or name == '!' then
table.insert( usedTemplateList, name ) -- Probably a magic word
else
table.insert( usedTemplateList, 'Template:'..name )
end
end
end
end
end
end
requireList = requireList .. dynamicRequirelist
requireList = requireList:unique()
loadDataList = loadDataList .. dynamicLoadDataList
loadDataList = loadDataList:unique()
loadJsonDataList = loadJsonDataList .. dynamicLoadJsonDataList
usedTemplateList = usedTemplateList:unique()
extraCategories = extraCategories:unique()
table.sort( requireList )
table.sort( loadDataList )
table.sort( loadJsonDataList )
table.sort( usedTemplateList )
table.sort( extraCategories )
return {
requireList = requireList,
loadDataList = loadDataList,
loadJsonDataList = loadJsonDataList,
usedTemplateList = usedTemplateList,
extraCategories = extraCategories
}
end
--- Returns a list with module and function names used in all '{{#Invoke:moduleName|funcName}}' found on page 'templateName'.
---@param templateName string
---@return table<string, string>[]
local function getInvokeCallList( templateName )
local content = mw.title.new( templateName ):getContent()
local invokeList = {}
assert( content ~= nil, string.format( '%s does not exist', templateName ) )
for moduleName, funcName in string.gmatch( content, '{{[{|safeubt:}]-#[Ii]nvoke:([^|]+)|([^}|]+)[^}]*}}' ) do
moduleName = formatModuleName( moduleName )
funcName = mw.text.trim( funcName )
if string.find( funcName, '^{{{' ) then
funcName = funcName .. '}}}'
end
table.insert( invokeList, {moduleName=moduleName, funcName=funcName} )
end
-- For form calcs invoking the module directly
for config in dualGmatch( content, '<pre%s+class%s*=%s*["\']jcConfig["\'](.-)</pre>', '{{[Ff]orm calculator%s*|(.+)}}' ) do
local moduleName = string.match( config, 'module%s*=%s*(.-)[\n|]' )
if param.has_content( moduleName ) then
moduleName = formatModuleName( moduleName )
local funcName = string.match( config, 'modulefunc%s*=%s*(.-)[\n|]' ) or 'main'
table.insert( invokeList, {moduleName=moduleName, funcName=funcName} )
end
end
invokeList = arr.unique( invokeList, function(x) return x.moduleName..x.funcName end )
table.sort( invokeList, function(x, y) return x.moduleName..x.funcName < y.moduleName..y.funcName end )
return invokeList
end
---@param pageName string
---@param addCategories boolean
---@return string
local function messageBoxUnused( pageName, addCategories )
local html = mw.html.create( 'table' ):addClass( 'messagebox obsolete plainlinks' )
html:tag( 'td' )
:attr( 'width', '40xp' )
:wikitext( '[[File:Hourglass (historical).png|center|30px|link=]]' )
:done()
:tag( 'td' )
:wikitext( "'''This module is unused.'''" )
:tag( 'div' )
:css{ ['font-size']='0.85em', ['line-height']='1.45em' }
:wikitext( string.format( 'This module is neither invoked by a template nor required/loaded by another module. If this is in error, make sure to add <code>{{[[Template:Documentation|Documentation]]}}</code>/<code>{{[[Template:No documentation|No documentation]]}}</code> to the calling template\'s or parent\'s module documentation.', pageName ) )
:wikitext( addCategories and '[[Category:Unused modules]]' or '' )
:done()
:done()
return tostring( html )
end
local function collapseList( list, id, listType )
local text = string.format( '%d %s', #list, listType )
local button = tooltip._span{ name=id, alt=text }
list = arr.map( list, function(x) return '\n# '..x end )
local content = tooltip._div{ name=id, content='\n'..table.concat( list )..'\n\n' }
return { tostring( button ) .. tostring( content ) }
end
--- Creates a link to [[Special:Search]] showing all pages found by getDynamicRequireList() in case it found more than MAX_DYNAMIC_REQUIRE_LIST_LENGTH pages.
---@param query string @This will be in a format like 'Module:Wowee/%' or 'Module:Wowee/%/data'
---@return string
local function formatDynamicQueryLink( query )
local prefix = query:match( '^([^/]+)' )
local linkText = query:gsub( '%%', '< ... >' )
query = query:gsub( '^Module:', '' )
query = query:gsub( '([^/]+)/?', function ( match )
if match == '%' then
return '\\/[^\\/]+'
else
return '\\/"' .. match .. '"'
end
end )
query = query:gsub( '^\\/', '' )
query = string.format(
'intitle:/%s%s/i -intitle:/%s\\/""/i -intitle:doc prefix:"%s"',
query,
query:find( '"$' ) and '' or '""',
query,
prefix
)
return string.format( '<span class="plainlinks">[%s %s]</span>', tostring( mw.uri.fullUrl( 'Special:Search', { search = query } ) ), linkText )
end
---@param templateName string
---@param addCategories boolean
---@param invokeList table<string, string>[] @This is the list returned by getInvokeCallList()
---@return string
local function formatInvokeCallList( templateName, addCategories, invokeList )
local category = addCategories and '[[Category:Lua-based templates]]' or ''
local res = {}
for _, item in ipairs( invokeList ) do
table.insert( res, string.format(
"<div class='seealso'>'''%s''' invokes function '''%s''' in [[%s]] using [[Brighter Shores:Lua|Lua]].</div>",
templateName,
item.funcName,
item.moduleName
) )
end
if #invokeList > 0 then
table.insert( res, category )
end
return table.concat( res )
end
---@param moduleName string
---@param addCategories boolean
---@param whatLinksHere string @A list generated by a dpl of pages in the Template or Calculator namespace which link to moduleName.
---@return string
local function formatInvokedByList( moduleName, addCategories, whatLinksHere )
local function lcfirst( str )
return string.gsub( str, '^[Mm]odule:.', string.lower )
end
local templateData = arr.map( whatLinksHere, function(x) return {templateName=x, invokeList=getInvokeCallList(x)} end )
templateData = arr.filter( templateData, function(x)
return arr.any( x.invokeList, function(y)
return lcfirst(y.moduleName) == lcfirst(moduleName)
end )
end )
local invokedByList = {}
for _, template in ipairs( templateData ) do
for _, invoke in ipairs( template.invokeList ) do
table.insert( invokedByList, string.format( "function '''%s''' is invoked by [[%s]]", invoke.funcName, template.templateName ) )
end
end
table.sort( invokedByList)
local res = {}
if #invokedByList > COLLAPSE_LIST_LENGTH_THRESHOLD then
table.insert( res, string.format(
"<div class='seealso'>'''%s''' is invoked by %s.</div>",
moduleName,
collapseList( invokedByList, 'invokedBy', 'templates' )[1]
) )
else
for _, item in ipairs( invokedByList ) do
table.insert( res, string.format(
"<div class='seealso'>'''%s's''' %s.</div>",
moduleName,
item
) )
end
end
if #templateData > 0 then
moduleIsUsed = true
table.insert( res, (addCategories and '[[Category:Template invoked modules]]' or '') )
end
return table.concat( res )
end
---@param moduleName string
---@param addCategories boolean
---@param whatLinksHere string @A list generated by a dpl of pages in the Module namespace which link to moduleName.
---@return string
local function formatRequiredByList( moduleName, addCategories, whatLinksHere )
local childModuleData = arr.map( whatLinksHere, function ( title )
local lists = getRequireList( title )
return {name=title, requireList=lists.requireList, loadDataList=lists.loadDataList .. lists.loadJsonDataList}
end )
local requiredByList = arr.map( childModuleData, function ( item )
if arr.any( item.requireList, function(x) return x:lower()==moduleName:lower() end ) then
if item.name:find( '%%' ) then
return formatDynamicQueryLink( item.name )
else
return '[[' .. item.name .. ']]'
end
end
end )
local loadedByList = arr.map( childModuleData, function ( item )
if arr.any( item.loadDataList, function(x) return x:lower()==moduleName:lower() end ) then
if item.name:find( '%%' ) then
return formatDynamicQueryLink( item.name )
else
return '[[' .. item.name .. ']]'
end
end
end )
if #requiredByList > 0 or #loadedByList > 0 then
moduleIsUsed = true
end
if #requiredByList > COLLAPSE_LIST_LENGTH_THRESHOLD then
requiredByList = collapseList( requiredByList, 'requiredBy', 'modules' )
end
if #loadedByList > COLLAPSE_LIST_LENGTH_THRESHOLD then
loadedByList = collapseList( loadedByList, 'loadedBy', 'modules' )
end
local res = {}
for _, requiredByModuleName in ipairs( requiredByList ) do
table.insert( res, string.format(
"<div class='seealso'>'''%s''' is required by %s.</div>",
moduleName,
requiredByModuleName
) )
end
if #requiredByList > 0 then
table.insert( res, (addCategories and '[[Category:Modules required by modules]]' or '') )
end
for _, loadedByModuleName in ipairs( loadedByList ) do
table.insert( res, string.format(
"<div class='seealso'>'''%s''' is loaded by %s.</div>",
moduleName,
loadedByModuleName
) )
end
if #loadedByList > 0 then
table.insert( res, (addCategories and '[[Category:Module data]]' or '') )
end
return table.concat( res )
end
local function formatImportList( currentPageName, moduleList, id, message, category )
if #moduleList > COLLAPSE_LIST_LENGTH_THRESHOLD then
moduleList = collapseList( moduleList, id, 'modules' )
end
local res = arr.map( moduleList, function( moduleName )
return '<div class="seealso">' .. string.format( message, currentPageName, moduleName ) .. '</div>'
end )
if #moduleList > 0 and category then
table.insert( res, string.format( '[[Category:%s]]', category ) )
end
return table.concat( res )
end
local function formatUsedTemplatesList( currentPageName, addCategories, usedTemplateList )
local res = {}
if #usedTemplateList > COLLAPSE_LIST_LENGTH_THRESHOLD then
usedTemplateList = collapseList( usedTemplateList, 'usedTemplates', 'templates' )
end
for _, templateName in ipairs( usedTemplateList ) do
table.insert( res, string.format(
"<div class='seealso'>'''%s''' transcludes %s using <samp>frame:preprocess()</samp>.</div>",
currentPageName,
templateName
) )
end
return table.concat( res )
end
function p.main( frame )
local args = frame:getParent().args
return p._main( args[1], args.category, args.isUsed )
end
---@param currentPageName string|nil
---@param addCategories boolean|string|nil
---@return string
function p._main( currentPageName, addCategories, isUsed )
libraryUtil.checkType( 'Module:RequireList._main', 1, currentPageName, 'string', true )
libraryUtil.checkTypeMulti( 'Module:RequireList._main', 2, addCategories, {'boolean', 'string', 'nil'} )
libraryUtil.checkTypeMulti( 'Module:RequireList._main', 3, isUsed, {'boolean', 'string', 'nil'} )
local title = mw.title.getCurrentTitle()
-- Leave early if not in module, template or calculator namespace or if module is part of exchange or data groups
if param.is_empty( currentPageName ) and (
( not arr.contains( {'Module', 'Template', 'Calculator'}, title.nsText ) ) or
( title.nsText == 'Module' and ( arr.contains( {'Exchange', 'Exchange historical', 'Data'}, title.text:match( '^(.-)/' ) ) ) )
) then
return ''
end
currentPageName = param.default_to( currentPageName, title.fullText )
currentPageName = string.gsub( currentPageName, '/[Dd]oc$', '' )
currentPageName = formatPageName( currentPageName )
addCategories = yn( param.default_to( addCategories, title.subpageText~='doc' ) )
moduleIsUsed = yn( param.default_to( isUsed, false ) )
if title.text:lower():find( 'sandbox' ) then
moduleIsUsed = true -- Don't show sandbox modules as unused
end
if currentPageName:find( '^Template:' ) or currentPageName:find( '^Calculator:' ) then
local invokeList = getInvokeCallList( currentPageName )
return formatInvokeCallList(currentPageName, addCategories, invokeList)
end
local whatTemplatesLinkHere, whatModulesLinkHere = dpl.ask( {
namespace = 'Template|Calculator',
linksto = currentPageName,
distinct = 'strict',
ignorecase = true,
ordermethod = 'title',
allowcachedresults = true,
cacheperiod = 604800 -- One week
}, {
namespace = 'Module',
linksto = currentPageName,
nottitlematch = '%/doc|Exchange/%|Exchange historical/%|Data/%|' .. currentPageName:gsub( 'Module:', '' ),
distinct = 'strict',
ignorecase = true,
ordermethod = 'title',
allowcachedresults = true,
cacheperiod = 604800 -- One week
} )
local lists = getRequireList( currentPageName, true )
local requireList = arr.map( lists.requireList, function ( moduleName )
if moduleName:find( '%%' ) then
return formatDynamicQueryLink( moduleName )
elseif builtins[moduleName] then
return '[[' .. builtins[moduleName].link .. '|' .. moduleName .. ']]'
else
return '[[' .. moduleName .. ']]'
end
end )
local loadDataList = arr.map( lists.loadDataList, function ( moduleName )
if moduleName:find( '%%' ) then
return formatDynamicQueryLink( moduleName )
else
return '[[' .. moduleName .. ']]'
end
end )
local loadJsonDataList = arr.map( lists.loadJsonDataList, function ( moduleName )
if moduleName:find( '%%' ) then
return formatDynamicQueryLink( moduleName )
else
return '[[' .. moduleName .. ']]'
end
end )
local usedTemplateList = arr.map( lists.usedTemplateList, function( templateName )
if string.find( templateName, ':' ) then -- Real templates are prefixed by a namespace, magic words are not
return '[['..templateName..']]'
else
return "'''{{"..templateName.."}}'''" -- Magic words don't have a page so make them bold instead
end
end )
local res = {}
table.insert( res, formatInvokedByList( currentPageName, addCategories, whatTemplatesLinkHere ) )
table.insert( res, formatImportList( currentPageName, requireList, 'require', "'''%s''' requires %s.", addCategories and 'Modules requiring modules' ) )
table.insert( res, formatImportList( currentPageName, loadDataList, 'loadData', "'''%s''' loads data from %s.", addCategories and 'Modules using data' ) )
table.insert( res, formatImportList( currentPageName, loadJsonDataList, 'loadJsonData', "'''%s''' loads data from %s.", addCategories and 'Modules using data' ) )
table.insert( res, formatUsedTemplatesList( currentPageName, addCategories, usedTemplateList ) )
table.insert( res, formatRequiredByList( currentPageName, addCategories, whatModulesLinkHere ) )
if addCategories then
local extraCategories = arr.map( lists.extraCategories, function( categoryName )
return "[[Category:" .. categoryName .. "]]"
end )
table.insert( res, table.concat( extraCategories ) )
end
if not moduleIsUsed then
table.insert( res, 1, messageBoxUnused( currentPageName:gsub( 'Module:', '' ), addCategories ) )
end
return table.concat( res )
end
return p
515022de5a245324f86fe1d3800de5d876075ca1
File:Hourglass (historical).png
6
695
1252
2024-03-24T14:41:32Z
Merds
25
Uploaded with [[mw:Special:MyLanguage/Extension:SimpleBatchUpload|SimpleBatchUpload]]
wikitext
text/x-wiki
da39a3ee5e6b4b0d3255bfef95601890afd80709
1254
1252
2024-03-24T14:43:43Z
Merds
25
Merds uploaded a new version of [[File:Hourglass (historical).png]]
wikitext
text/x-wiki
da39a3ee5e6b4b0d3255bfef95601890afd80709
1255
1254
2024-03-24T14:43:53Z
Merds
25
Merds reverted [[File:Hourglass (historical).png]] to an old version
wikitext
text/x-wiki
da39a3ee5e6b4b0d3255bfef95601890afd80709
1259
1255
2024-03-24T14:47:56Z
Merds
25
Merds uploaded a new version of [[File:Hourglass (historical).png]]
wikitext
text/x-wiki
da39a3ee5e6b4b0d3255bfef95601890afd80709
1260
1259
2024-03-24T14:54:56Z
Merds
25
Merds uploaded a new version of [[File:Hourglass (historical).png]]
wikitext
text/x-wiki
da39a3ee5e6b4b0d3255bfef95601890afd80709
1263
1260
2024-03-24T15:09:06Z
Merds
25
Merds uploaded a new version of [[File:Hourglass (historical).png]]
wikitext
text/x-wiki
da39a3ee5e6b4b0d3255bfef95601890afd80709
Trunk
0
685
1253
1240
2024-03-24T14:43:38Z
BlackHawk
10
wikitext
text/x-wiki
{{Infobox Scenery
|name = Trunk
|image = [[File:Trunk.png]]
|release =
|episode =
}}
A '''trunk''' is a piece of interactable scenery that can be found in [[Pirate Hideout]].{{CiteTwitter|url=https://twitter.com/AndrewCGower/status/1769048510177948004|author=Andrew Gower|date=16 March 2024|accessdate=24 March 2024|archiveurl=https://archive.is/whgCd|archivedate=24 March 2024|quote=}}
==References==
{{Reflist}}
8ce20875a76db2fc6acfa94da66072e06d725353
File:Old trunk.png
6
696
1256
2024-03-24T14:47:02Z
BlackHawk
10
wikitext
text/x-wiki
da39a3ee5e6b4b0d3255bfef95601890afd80709
1257
1256
2024-03-24T14:47:15Z
BlackHawk
10
wikitext
text/x-wiki
[[Category:Scenery images]]
4211c47bd425933fe892ec95a0e868286d7edfca
Old trunk
0
697
1258
2024-03-24T14:47:24Z
BlackHawk
10
Created page with "{{Infobox Scenery |name = Old trunk |image = [[File:Old trunk.png]] |release = |episode = }} A '''old trunk''' is a piece of interactable scenery that can be found in [[Pirate Hideout]].{{CiteTwitter|url=https://twitter.com/AndrewCGower/status/1769048510177948004|author=Andrew Gower|date=16 March 2024|accessdate=24 March 2024|archiveurl=https://archive.is/whgCd|archivedate=24 March 2024|quote=}} ==References== {{Reflist}}"
wikitext
text/x-wiki
{{Infobox Scenery
|name = Old trunk
|image = [[File:Old trunk.png]]
|release =
|episode =
}}
A '''old trunk''' is a piece of interactable scenery that can be found in [[Pirate Hideout]].{{CiteTwitter|url=https://twitter.com/AndrewCGower/status/1769048510177948004|author=Andrew Gower|date=16 March 2024|accessdate=24 March 2024|archiveurl=https://archive.is/whgCd|archivedate=24 March 2024|quote=}}
==References==
{{Reflist}}
b9a91a5abd0b689771df4bc86d74c80b8ec50b52
Template:Infobox Scenery
10
690
1261
1245
2024-03-24T15:02:43Z
InvalidCards
4
wikitext
text/x-wiki
{| class="wikitable infobox-scenery" style="float:right"
!colspan="2"| {{#if:{{{name|}}}|{{{name}}}|{{PAGENAME}}}}
|-
|colspan="2" style="text-align:center"| {{#if:{{{image|}}}|{{{image}}}|[[Special:Upload|Please upload an image!]]{{Mainonly|[[Category:Needs image]]}}}}
|-
|<b>Release date</b>||{{#if:{{{release|}}}|{{{release}}}|Q3 [[2024]]}}
|-
|<b>Episode</b>||{{#switch:{{{episode|}}}|Hopeport=[[File:Hopeport episode icon.png|18px]] [[Hopeport]]|Hopeforest=[[File:Hopeforest episode icon.png|18px]] [[Hopeforest]]|Mine of Manbutan=[[File:Mine of Manbutan episode icon.png|18px]]|#default=[[File:Unknown episode icon.png|18px]] Unknown}}
|}{{Mainonly|[[Category:Scenery]]}}<noinclude>{{clear}}{{/doc}}</noinclude>
f042f8bb11c4dd50541d1a126c149758dc3d9389
Template:Infobox Item
10
77
1262
1243
2024-03-24T15:03:00Z
InvalidCards
4
wikitext
text/x-wiki
{| class="wikitable infobox-item" style="float:right"
!colspan="2"| {{#if:{{{name|}}}|{{{name}}}|{{PAGENAME}}}}
|-
|colspan="2" style="text-align:center"| {{#if:{{{image|}}}|{{{image}}}|[[Special:Upload|Please upload an image!]]{{Mainonly|[[Category:Needs image]]}}}}
|-
|<b>Release date</b>||{{#if:{{{release|}}}|{{{release}}}|Q3 [[2024]]}}
|-
|<b>Episode</b>||{{#switch:{{{episode|}}}|Hopeport=[[File:Hopeport episode icon.png|18px]] [[Hopeport]]|Hopeforest=[[File:Hopeforest episode icon.png|18px]] [[Hopeforest]]|Mine of Manbutan=[[File:Mine of Manbutan episode icon.png|18px]]|#default=[[File:Unknown episode icon.png|18px]] Unknown}}
|-
|<b>Profession</b>||{{#if:{{{profession|}}}|{{{profession}}}|{{Edit button|text=<b>?</b> (edit)}}{{Mainonly|[[Category:Items needing profession]]}}}}
|-
|<b>Value</b>||{{#if:{{{value|}}}|{{{value}}}|{{Edit button|text=<b>?</b> (edit)}}{{Mainonly|[[Category:Items needing value]]}}}}
|}{{Mainonly|[[Category:Items]]}}<noinclude>{{clear}}{{/doc}}</noinclude>
752284047d129e66d0e8de5c2621f6e10946fbf8
Module:SMW Utils
828
698
1264
2024-03-24T15:45:38Z
Gau Cho
5
Created page with "-- Helpers functions for SMW local p = {} --[[ Returns a boolean, whether the provided string is a valid subobject name Invalid subobject names are: '', '0', and any string with a '.' in the first 5 characters --]] function p.valid_subobject_name(arg) if arg == '0' or arg == '' then return false end if mw.ustring.find(mw.ustring.sub(arg, 1, 5), '.', 1, true) then return false end return true end return p"
Scribunto
text/plain
-- Helpers functions for SMW
local p = {}
--[[
Returns a boolean, whether the provided string is a valid subobject name
Invalid subobject names are: '', '0', and any string with a '.' in the first 5 characters
--]]
function p.valid_subobject_name(arg)
if arg == '0' or arg == '' then
return false
end
if mw.ustring.find(mw.ustring.sub(arg, 1, 5), '.', 1, true) then
return false
end
return true
end
return p
6687154ef61d2e2cdb36d476f6f3bb80aae3a500
Module:Infobox
828
102
1265
1244
2024-03-24T15:58:14Z
Gau Cho
5
Scribunto
text/plain
--[=[
-- For documentation, see [[Module:Infobox/doc]]
--]=]
-- <nowiki>
local smw = require('Module:SMW Utils')
local Infobox = {}
Infobox.__index = Infobox
--[[
Infobox class
-- args : parameters from frame to pass through
-- Sets a meta table and creates a <div> tag wrapper
-- other fields are initialized in other functions
--]]
function Infobox.new(args)
local obj = setmetatable({
args = args, -- parameters (uncleaned)
infobox_name = nil, -- template name
param_names = {}, -- ordered param list
params = {}, -- param definitions
versions = nil, -- number of versions
version_names = {}, -- title of each version (for selection and SMW)
errors = {} -- list of errors
},
Infobox)
obj:parse_versions()
return obj
end
-- Defines an infobox name ({{Template:arg}})
-- Used to create a link at the bottom of pages and for css
function Infobox:define_name(arg)
self.infobox_name = arg
end
--[[
Function for defining parameters
-- name : parameter name
-- func : function to define param, defaults to looking at blanks
DO NOT DEFINE VERSION HERE
USE :maxVersion()
Can be used any number of times for efficient definition
--]]
function Infobox:define_params(...)
for _, v in ipairs(...) do
-- For every parameter, store its corresponding function to self.params
if v.name then
local param = {}
-- Copy the function
if type(v.func) == 'function' or type(v.func) == 'table' then
param.func = v.func
end
-- If smw_property is defined, then use smw_func, or default to func if it is not defined
if v.smw_property and type(v.smw_property == 'string') then
param.smw_property = v.smw_property
if type(v.smw_func) == 'function' or type(v.smw_func) == 'table' then
param.smw_func = v.smw_func
else
param.smw_func = param.func
end
end
self.params[v.name] = param
table.insert(self.param_names, v.name)
end
end
return self
end
--[[
Counts the number of versions in the infobox
Also validates the names of all the versions to be valid SMW subobjects
--]]
function Infobox:parse_versions()
-- Count the versions
local i = 1
while self.args['version'..i] do
-- Validate and register the version name
local version_name = self.args['version'..i]
if not smw.valid_subobject_name(version_name) then
table.insert(self.errors, 'Invalid Version Name (must not be "0", "" or contain a "." in the first 5 characters): version'..i..'='..version_name)
version_name = '###'..i..'_'..version_name
end
table.insert(self.version_names, version_name)
i = i + 1
end
self.versions = i - 1
end
function Infobox.param(paramname)
param = {
property = 'Param',
name = paramname,
}
return param
end
function Infobox.raw_param(paramname)
param = {
property = 'Raw Param',
name = paramname,
}
return param
end
function Infobox:dump()
mw.log(mw.dumpObject(self))
end
return Infobox
e42a8272cc1ea73a0d60d47fc983b31f550927e7
1296
1265
2024-03-24T22:26:49Z
Gau Cho
5
WIP
Scribunto
text/plain
--[=[
-- For documentation, see [[Module:Infobox/doc]]
--]=]
-- <nowiki>
-- Edit button for unknown params
local editbutton = require('Module:Edit button')
local edit = editbutton("'''?''' (edit)")
local Infobox = {}
Infobox.__index = Infobox
--[[
Infobox class
-- infobox_name: the name of the infobox
-- args : parameters from frame to pass through
-- Special args: version, default_version
-- Sets a meta table and creates a <div> tag wrapper
-- other fields are initialized in other functions
--]]
function Infobox.new(infobox_name, args)
local obj = setmetatable({
args_raw = args, -- parameters (uncleaned)
args_parsed = {}, -- parsed parameters
args_smw = {}, -- parameters parsed for smw
infobox_name = nil, -- template name
param_names = {}, -- ordered param list
params = {}, -- param definitions
default_version = 1, -- default version to populate the infobox
versions = nil, -- number of versions
version_names = {}, -- title of each version (for selection and SMW)
rtable = nil, -- infobox table to return at the end
switch_datatable = nil, -- datatable for javascript for switch infoboxes
errors = {}, -- list of errors
},
Infobox)
obj.infobox_name = mw.ustring.gsub(infobox_name, '%s', '_')
obj:parse_versions()
obj:create()
return obj
end
--[[
Function for defining parameters
-- name : parameter name
-- func : function to define param, defaults to looking at blanks
DO NOT DEFINE VERSION HERE
USE :maxVersion()
Can be used any number of times for efficient definition
--]]
function Infobox:define_params(...)
for _, v in ipairs(...) do
-- For every parameter, store its corresponding function to self.params
if v.name then
local param = {}
-- Copy the function
if type(v.func) == 'function' or type(v.func) == 'table' then
param.func = v.func
end
-- If smw_property is defined, then use smw_func, or default to func if it is not defined
if v.smw_property then
param.smw_property = v.smw_property
if type(v.smw_func) == 'function' or type(v.smw_func) == 'table' then
param.smw_func = v.smw_func
else
param.smw_func = param.func
end
end
self.params[v.name] = param
table.insert(self.param_names, v.name)
end
end
self:parse_params()
return self
end
--[[
Counts the number of versions in the infobox, and populates version_names
--]]
function Infobox:parse_versions()
-- Count the versions
local i = 1
while self.args_raw['version'..i] do
table.insert(self.version_names, self.args_raw['version'..i])
i = i + 1
end
self.versions = i - 1
-- Handle the no version case - might have a custom version_name
if self.versions == 0 then
table.insert(self.version_names, self.args_raw['version'] or 'DEFAULT')
end
if self.versions == 1 then
table.insert(self.errors, 'There should be multiple versions or no versions. If defining a custom version name for a single entry, use "version=Name" instead of "version1=Name".')
self.versions = 0
end
if self.args_raw['default_version'] then
self.default_version = tonumber(self.args_raw['default_version'])
end
end
--[[
Fetches a param value. If the value is nil, will return the default value instead
-- arg: a table generated from Infobox:param(), Infobox:raw_param() or Infobox:smw_param(), or else
-- version: '' for default, or else a number
--]]
function Infobox:get_param(arg, version)
if version == 0 then
version = ''
end
if type(arg) == 'table' then
local value = self[arg.property][arg.param_name..version]
if value == nil then -- Try to get default value if it exists
value = self[arg.property][arg.param_name]
end
return value
end
-- Other (int, string)
return arg
end
--[[
Calculates the parsed value of a param
-- param_name : string, name of the param
-- version : 0/'' for default, or else a number
-- smw : boolean, whether to use the smw function or default function
--]]
function Infobox:parse_param(param_name, version, smw)
if version == 0 then
version = ''
end
-- use func or smw_func depending on smw argument
local param = self.params[param_name]
local func = smw and param.smw_func or param.func
-- call functions by passing the param_name
if type(func) == 'function' then
return func(self:get_param(self.raw_param(param_name), version))
-- call tables by grabbing the function and reading the param arguments
elseif type(func) == 'table' then
local func_name = func.name
local func_params = func.params
local func_fetched_params = {}
for _, func_param in ipairs(func_params) do
table.insert(func_fetched_params, self:get_param(func_param, version))
end
return func_name(unpack(func_fetched_params))
else
table.insert(self.errors, 'Invalid param definition for '..param_name)
end
end
function Infobox:parse_params()
-- Calculate the param value for all params and all versions
for _, param_name in ipairs(self.param_names) do
for version=0,self.versions do
if version == 0 then
version = '' -- default version
end
-- Only get the parsed value if the raw value is defined
if self.args_raw[param_name..version] then
self.args_parsed[param_name..version] = self:parse_param(param_name, version, false)
if self.params[param_name].smw_property then
self.args_smw[param_name..version] = self:parse_param(param_name, version, true)
end
end
end
end
end
function Infobox.param(param_name)
param = {
property = 'args_parsed',
param_name = param_name,
}
return param
end
function Infobox.raw_param(param_name)
param = {
property = 'args_raw',
param_name = param_name,
}
return param
end
function Infobox.smw_param(param_name)
param = {
property = 'args_smw',
param_name = param_name,
}
return param
end
-----------
-- Table --
-----------
function Infobox:create()
-- Create infobox table
self.rtable = mw.html.create('table')
:addClass('plainlinks')
:addClass('infobox')
:addClass('infobox-'..self.infobox_name)
-- Add necessary class if switch infobox
if self.versions > 1 then
self.rtable:addClass('infobox-switch')
self.switch_datatable = mw.html.create('div')
:addClass('infobox-switch-resources')
:addClass('infobox-resources-'..self.infobox_name)
:addClass('hidden')
self.switch_datatable:tag('span'):wikitext('Versions: '..self.versions)
self.switch_datatable:tag('span'):wikitext('Default version: '..self.default_version)
end
end
--[[
Add parameters functions
All parameters should be tables
The first parameter defines the type of cell to create
-- tag = 'th' or 'td'
The second parameter defines what is inside the tag
-- content = string or Infobox.param
Additional named parameters can be used to add any styling or attributes
-- attr : mw.html:attr({ arg1 = '1', ... })
-- css : mw.html:css({ arg1 = '1', ...)
-- class : mw.html:addClass('arg')
---- class also supports a table of values, even though mw.html:addClass() does not
-- rowspan : mw.html:attr('rowspan',arg)
-- colspan : mw.html:attr('colspan',arg)
-- title : mw.html:attr('title',arg)
Example:
ipsobox:addRow( { 'th' , 'Header', title = 'Title' },
{ 'argh', 'arg1', class = 'parameter' } })
produces:
<tr><th title="Title">Header</th><th class="parameter">args.arg1</th></tr>
adding it to the infobox table of ipsobox
Cells defined as 'argh' and 'argd' will automatically have data-attr-param="" added, and defined as the passed argument if the infobox in creation is defined as a switch infobox
The row itself may be modified with metadata using the named index "addClass'
-- addClass : mw.html:addClass('arg')
-- this function currently only supports a single string
--]]
function Infobox:add_switch_data(content)
-- Only check for params if there are multiple versions
if self.versions <= 1 then
return false
end
if type(content) ~= 'table' then
return false
end
-- Only if the data varies between the different versions
local first_value = self:get_param(cell_params.content, 1)
local all_same = true
for version=2, self.versions do
if first_value ~= self:get_param(cell_params.content, version) then
all_same = false
break
end
end
if all_same then
return false
end
-- Let's build the datatable
-- Prepend raw_ or smw_ if not a parsed argument
local name = content.param_name
if content.property == 'args_raw' then
name = 'raw_' + name
end
if content.property == 'args_smw' then
name = 'smw_' + name
end
data_param = self.switch_datatable:tag('span'):attr('data-attr-param', name)
-- Add each version to the datatable
for version=1, self.versions do
text = self:get_param(content, version)
if text == nil then
text = edit
end
data_param:tag('span'):attr('data-attr-index', version):wikitext(text)
end
-- return the 'data-attr-param' name
return name
end
function Infobox:add_row(...)
-- New row to add
local args = ...
local _row = self.rtable:tag('tr')
-- For each member of tags
for _, v in ipairs(args) do
local _cell = _row:tag(v.tag)
-- mw.html:attr() and mw.html:css() both accept table input
-- colspan, rowspan, title will be quick ways to access attr
-- these functions also do all the necessary work
if v.attr then
_cell:attr(v.attr)
end
if v.colspan then
_cell:attr('colspan',v.colspan)
end
if v.rowspan then
_cell:attr('rowspan',v.rowspan)
end
if v.title then
_cell:attr('title',v.title)
end
if v.css then
_cell:css(v.css)
end
-- if class is a string, it can be added directly
-- if a table, add every value
-- mw.html:addClass() doesn't function with tables
-- so iterate over the class names here and add them individually
if v.class then
if type(v.class) == 'string' then
_cell:addClass(v.class)
elseif type(v.class) == 'table' then
for _, w in ipairs(v.class) do
_cell:addClass(w)
end
end
end
-- Make sure that all params are only called from Infobox.param(), and not raw_param() nor smw_param()
if type(v.content) == 'table' and v.content.property ~= 'args_parsed' then
table.insert(table.errors, 'Only Infobox.param() can be used in addRow, not Infobox.raw_param() nor Infobox.smw_param()! '..mw.dumpObject(args))
end
content = Infobox:get_param(v.content, self.default_version)
if content == nil then
content = edit
end
_cell:wikitext(content)
-- Add the switch data if multiple values exist
data_attr_param = add_switch_data(v.content)
if data_attr_param then
_cell:attr('data-attr-param', data_attr_param)
end
end
-- allow classes to be defined on the whole row
if args.addClass then
_row:addClass(args.addClass)
end
return self
end
-- Override tostring
function Infobox:tostring()
-- If not finished, finish
if not self.__finished then
self:finish()
end
error_text = ''
if #self.errors > 0 then
for _, v in ipairs(self.errors) do
error_text = error_text..'<span class="mw-message-box-error">'..v..'</span>'
end
end
return tostring(self.rtable) .. tostring(self.switch_datatable) .. tostring(error_text)
end
function Infobox:dump()
mw.log(mw.dumpObject(self))
end
return Infobox
bf3cec542076037576cbb3f1de6c6545138366c9
1297
1296
2024-03-25T02:55:34Z
Gau Cho
5
Barebones functional infobox module, WIP
Scribunto
text/plain
--[=[
-- For documentation, see [[Module:Infobox/doc]]
--]=]
-- <nowiki>
-- Edit button for unknown params
local editbutton = require('Module:Edit button')
local edit = editbutton("'''?''' (edit)")
local Infobox = {}
Infobox.__index = Infobox
--[[
Infobox class
-- infobox_name: the name of the infobox
-- args : parameters from frame to pass through
-- Special args: version, default_version
-- Sets a meta table and creates a <div> tag wrapper
-- other fields are initialized in other functions
--]]
function Infobox.new(infobox_name, args)
local obj = setmetatable({
args_raw = args, -- parameters (uncleaned)
args_parsed = {}, -- parsed parameters
args_smw = {}, -- parameters parsed for smw
infobox_name = nil, -- template name
param_names = {}, -- ordered param list
params = {}, -- param definitions
default_version = 1, -- default version to populate the infobox
versions = nil, -- number of versions
version_names = {}, -- title of each version (for selection and SMW)
rtable = nil, -- infobox table to return at the end
switch_datatable = nil, -- datatable for javascript for switch infoboxes
errors = {}, -- list of errors
},
Infobox)
obj.infobox_name = mw.ustring.gsub(infobox_name, '%s', '_')
obj:parse_versions()
obj:create()
return obj
end
--[[
Function for defining parameters
-- name : parameter name
-- func : function to define param, defaults to looking at blanks
DO NOT DEFINE VERSION HERE
USE :maxVersion()
Can be used any number of times for efficient definition
--]]
function Infobox:define_params(...)
for _, v in ipairs(...) do
-- For every parameter, store its corresponding function to self.params
if v.name then
local param = {}
-- Copy the function
if type(v.func) == 'function' or type(v.func) == 'table' then
param.func = v.func
end
-- If smw_property is defined, then use smw_func, or default to func if it is not defined
if v.smw_property then
param.smw_property = v.smw_property
if type(v.smw_func) == 'function' or type(v.smw_func) == 'table' then
param.smw_func = v.smw_func
else
param.smw_func = param.func
end
end
self.params[v.name] = param
table.insert(self.param_names, v.name)
end
end
self:parse_params()
return self
end
--[[
Counts the number of versions in the infobox, and populates version_names
--]]
function Infobox:parse_versions()
-- Count the versions
local i = 1
while self.args_raw['version'..i] do
table.insert(self.version_names, self.args_raw['version'..i])
i = i + 1
end
self.versions = i - 1
-- Handle the no version case - might have a custom version_name
if self.versions == 0 then
table.insert(self.version_names, self.args_raw['version'] or 'DEFAULT')
end
if self.versions == 1 then
table.insert(self.errors, 'There should be multiple versions or no versions. If defining a custom version name for a single entry, use "version=Name" instead of "version1=Name".')
self.versions = 0
end
if self.args_raw['default_version'] then
self.default_version = tonumber(self.args_raw['default_version'])
end
end
--[[
Fetches a param value. If the value is nil, will return the default value instead
-- arg: a table generated from Infobox:param(), Infobox:raw_param() or Infobox:smw_param(), or else
-- version: '' for default, or else a number
--]]
function Infobox:get_param(arg, version)
if version == 0 then
version = ''
end
if type(arg) == 'table' then
local value = self[arg.property][arg.param_name..version]
if value == nil then -- Try to get default value if it exists
value = self[arg.property][arg.param_name]
end
return value
end
-- Other (int, string)
return arg
end
--[[
Calculates the parsed value of a param
-- param_name : string, name of the param
-- version : 0/'' for default, or else a number
-- smw : boolean, whether to use the smw function or default function
--]]
function Infobox:parse_param(param_name, version, smw)
if version == 0 then
version = ''
end
-- use func or smw_func depending on smw argument
local param = self.params[param_name]
local func = smw and param.smw_func or param.func
-- call functions by passing the param_name
if type(func) == 'function' then
return func(self:get_param(self.raw_param(param_name), version))
-- call tables by grabbing the function and reading the param arguments
elseif type(func) == 'table' then
local func_name = func.name
local func_params = func.params
local func_fetched_params = {}
for _, func_param in ipairs(func_params) do
table.insert(func_fetched_params, self:get_param(func_param, version))
end
return func_name(unpack(func_fetched_params))
else
table.insert(self.errors, 'Invalid param definition for '..param_name)
end
end
function Infobox:parse_params()
-- Calculate the param value for all params and all versions
for _, param_name in ipairs(self.param_names) do
for version=0,self.versions do
if version == 0 then
version = '' -- default version
end
-- Only get the parsed value if the raw value is defined
if self.args_raw[param_name..version] then
self.args_parsed[param_name..version] = self:parse_param(param_name, version, false)
if self.params[param_name].smw_property then
self.args_smw[param_name..version] = self:parse_param(param_name, version, true)
end
end
end
end
end
function Infobox.param(param_name)
param = {
property = 'args_parsed',
param_name = param_name,
}
return param
end
function Infobox.raw_param(param_name)
param = {
property = 'args_raw',
param_name = param_name,
}
return param
end
function Infobox.smw_param(param_name)
param = {
property = 'args_smw',
param_name = param_name,
}
return param
end
-----------
-- Table --
-----------
function Infobox:create()
-- Create infobox table
self.rtable = mw.html.create('table')
:addClass('plainlinks')
:addClass('infobox')
:addClass('infobox-'..self.infobox_name)
-- Add necessary class if switch infobox
if self.versions > 1 then
self.rtable:addClass('infobox-switch')
self.switch_datatable = mw.html.create('div')
:addClass('infobox-switch-resources')
:addClass('infobox-resources-'..self.infobox_name)
:addClass('hidden')
self.switch_datatable:tag('span'):wikitext('Versions: '..self.versions)
self.switch_datatable:tag('span'):wikitext('Default version: '..self.default_version)
end
return self
end
--[[
Add parameters functions
All parameters should be tables
The first parameter defines the type of cell to create
-- tag = 'th' or 'td'
The second parameter defines what is inside the tag
-- content = string or Infobox.param
Additional named parameters can be used to add any styling or attributes
-- attr : mw.html:attr({ arg1 = '1', ... })
-- css : mw.html:css({ arg1 = '1', ...)
-- class : mw.html:addClass('arg')
---- class also supports a table of values, even though mw.html:addClass() does not
-- rowspan : mw.html:attr('rowspan',arg)
-- colspan : mw.html:attr('colspan',arg)
-- title : mw.html:attr('title',arg)
Example:
ipsobox:addRow( { 'th' , 'Header', title = 'Title' },
{ 'argh', 'arg1', class = 'parameter' } })
produces:
<tr><th title="Title">Header</th><th class="parameter">args.arg1</th></tr>
adding it to the infobox table of ipsobox
Cells defined as 'argh' and 'argd' will automatically have data-attr-param="" added, and defined as the passed argument if the infobox in creation is defined as a switch infobox
The row itself may be modified with metadata using the named index "addClass'
-- addClass : mw.html:addClass('arg')
-- this function currently only supports a single string
--]]
function Infobox:add_switch_data(content)
-- Only check for params if there are multiple versions
if self.versions <= 1 then
return false
end
if type(content) ~= 'table' then
return false
end
-- Only if the data varies between the different versions
local first_value = self:get_param(cell_params.content, 1)
local all_same = true
for version=2, self.versions do
if first_value ~= self:get_param(cell_params.content, version) then
all_same = false
break
end
end
if all_same then
return false
end
-- Let's build the datatable
-- Prepend raw__ or smw$<__ if not a parsed argument
local name = content.param_name
if content.property == 'args_raw' then
name = 'raw__' + name
end
if content.property == 'args_smw' then
name = 'smw__' + name
end
data_param = self.switch_datatable:tag('span'):attr('data-attr-param', name)
-- Add each version to the datatable
for version=1, self.versions do
text = self:get_param(content, version)
if text == nil then
text = edit
end
data_param:tag('span'):attr('data-attr-index', version):wikitext(text)
end
-- return the 'data-attr-param' name
return name
end
function Infobox:add_row(...)
-- New row to add
local args = ...
local _row = self.rtable:tag('tr')
-- For each member of tags
for _, v in ipairs(args) do
local _cell = _row:tag(v.tag)
-- mw.html:attr() and mw.html:css() both accept table input
-- colspan, rowspan, title will be quick ways to access attr
-- these functions also do all the necessary work
if v.attr then
_cell:attr(v.attr)
end
if v.colspan then
_cell:attr('colspan',v.colspan)
end
if v.rowspan then
_cell:attr('rowspan',v.rowspan)
end
if v.title then
_cell:attr('title',v.title)
end
if v.css then
_cell:css(v.css)
end
-- if class is a string, it can be added directly
-- if a table, add every value
-- mw.html:addClass() doesn't function with tables
-- so iterate over the class names here and add them individually
if v.class then
if type(v.class) == 'string' then
_cell:addClass(v.class)
elseif type(v.class) == 'table' then
for _, w in ipairs(v.class) do
_cell:addClass(w)
end
end
end
local content = Infobox:get_param(v.content, self.default_version)
if content == nil then
content = edit
end
_cell:wikitext(content)
-- Add the switch data if multiple values exist
data_attr_param = self:add_switch_data(v.content)
if data_attr_param then
_cell:attr('data-attr-param', data_attr_param)
end
end
-- allow classes to be defined on the whole row
if args.addClass then
_row:addClass(args.addClass)
end
return self
end
-- Override tostring
function Infobox:tostring()
error_text = ''
if #self.errors > 0 then
for _, v in ipairs(self.errors) do
error_text = error_text..'<span class="mw-message-box-error">'..v..'</span>'
end
end
return tostring(self.rtable) .. tostring(self.switch_datatable) .. tostring(error_text)
end
function Infobox:dump()
mw.log(mw.dumpObject(self))
mw.log(tostring(self))
end
return Infobox
a7f8cd9260ae4128e327fe6134eecd9ee35b3bb1
File:Hammermage icon.svg
6
473
1266
1096
2024-03-24T16:33:55Z
Merds
25
Merds uploaded a new version of [[File:Hammermage icon.svg]]
wikitext
text/x-wiki
da39a3ee5e6b4b0d3255bfef95601890afd80709
1267
1266
2024-03-24T16:37:15Z
Merds
25
Merds uploaded a new version of [[File:Hammermage icon.svg]]
wikitext
text/x-wiki
da39a3ee5e6b4b0d3255bfef95601890afd80709
File:Cryoknight icon.svg
6
472
1268
1097
2024-03-24T16:37:50Z
Merds
25
Merds uploaded a new version of [[File:Cryoknight icon.svg]]
wikitext
text/x-wiki
da39a3ee5e6b4b0d3255bfef95601890afd80709
File:Guardian icon.svg
6
474
1269
1094
2024-03-24T16:37:54Z
Merds
25
Merds uploaded a new version of [[File:Guardian icon.svg]]
wikitext
text/x-wiki
da39a3ee5e6b4b0d3255bfef95601890afd80709
Hammermage potion
0
632
1270
1082
2024-03-24T16:41:00Z
InvalidCards
4
wikitext
text/x-wiki
{{Unofficial name}}
{{Infobox Item
|image=[[File:Hammermage potion.png|50px]]
|episode=Hopeport
|profession=Alchemist
|value=330
}}
The '''Hammermage potion''' is a type of [[potion]].<ref>https://brightershores.com/screenshots/09_himatik_ruins.jpg</ref>
==References==
{{Reflist}}
[[Category:Potions]]
31e3e8edb3b603b3411f32f65c102d9fda4d38fc
Template:Detailed item license
10
699
1271
2024-03-24T16:46:43Z
Merds
25
Created page with "{{License | type = [[:Category:Detailed item images|Detailed item]] | typeid = detailed-item-license | subject = {{#if:{{{1|}}}|[[{{#replace:{{#replace:{{{1}}}|]|}}|[|}}]]|{{unknown}}}} | datatype = item-id | datavalue = {{{id|}}} }}{{PreloadPage}}{{Fileonly| [[Category:Detailed item images]] {{#if:{{{id|}}}||[[Category:Detailed item images without ID]]}} {{Image categories|{{{1}}}}} {{MultiID|Item ID (Image)|{{{id|}}}|noall=y|cat=n}} }}<noinclude>{{/doc}}</noinclude>"
wikitext
text/x-wiki
{{License
| type = [[:Category:Detailed item images|Detailed item]]
| typeid = detailed-item-license
| subject = {{#if:{{{1|}}}|[[{{#replace:{{#replace:{{{1}}}|]|}}|[|}}]]|{{unknown}}}}
| datatype = item-id
| datavalue = {{{id|}}}
}}{{PreloadPage}}{{Fileonly|
[[Category:Detailed item images]]
{{#if:{{{id|}}}||[[Category:Detailed item images without ID]]}}
{{Image categories|{{{1}}}}}
{{MultiID|Item ID (Image)|{{{id|}}}|noall=y|cat=n}}
}}<noinclude>{{/doc}}</noinclude>
bf309335a7063fb5b0553a04bd386885a1c2ffdb
Template:Detailed item license/doc
10
700
1272
2024-03-24T16:47:55Z
Merds
25
Created page with "{{Documentation}} The template should be added to pages of [[:Category:Detailed item images|Detailed item images]]. <pre>{{DII license|Name of item|id=ID of the item}}</pre> To automatically include the name of a subject, the following can be used (change 11 to the number of characters to be removed): <pre>{{DII license|{{subst:#sub:{{subst:PAGENAME}}|0|-11}}|id=}}</pre> <includeonly>[[Category:Copyright templates|{{PAGENAME}}]]</includeonly>"
wikitext
text/x-wiki
{{Documentation}}
The template should be added to pages of [[:Category:Detailed item images|Detailed item images]].
<pre>{{DII license|Name of item|id=ID of the item}}</pre>
To automatically include the name of a subject, the following can be used (change 11 to the number of characters to be removed):
<pre>{{DII license|{{subst:#sub:{{subst:PAGENAME}}|0|-11}}|id=}}</pre>
<includeonly>[[Category:Copyright templates|{{PAGENAME}}]]</includeonly>
47836568f38ebe49d0ccb1010d1ec30ceb29c64b
Category:Detailed item images
14
701
1273
2024-03-24T16:49:36Z
Merds
25
Created page with "{{Categoryheader|images|detailed items|yes|[[Template:Detailed item license]]}} {{Category ABC}} [[Category:Item images]]"
wikitext
text/x-wiki
{{Categoryheader|images|detailed items|yes|[[Template:Detailed item license]]}}
{{Category ABC}}
[[Category:Item images]]
566ad615a5813fc5ba26902ccd9c5de203909697
Template:DII license
10
702
1274
2024-03-24T16:50:18Z
Merds
25
Redirected page to [[Template:Detailed item license]]
wikitext
text/x-wiki
#REDIRECT [[Template:Detailed item license]]
1453d60f561b27a3571f044ae105e61048135e0e
Template:Category ABC
10
703
1275
2024-03-24T16:51:33Z
Merds
25
Created page with "<div class="tile" role="navigation" id="toc" style="text-align: center; margin: 1.5em auto; padding: 1em 2em; width: fit-content; max-width: initial"> '''Jump to'''<br> [[:{{FULLPAGENAME}}|Start]] {{*}} [{{fullurl:{{FULLPAGENAME}}|pagefrom=A}} A] {{*}} [{{fullurl:{{FULLPAGENAME}}|pagefrom=B}} B] {{*}} [{{fullurl:{{FULLPAGENAME}}|pagefrom=C}} C] {{*}} [{{fullurl:{{FULLPAGENAME}}|pagefrom=D}} D] {{*}} [{{fullurl:{{FULLPAGENAME}}|pagefrom=E}} E] {{*}} [{{fullurl:{{FULLPAGEN..."
wikitext
text/x-wiki
<div class="tile" role="navigation" id="toc" style="text-align: center; margin: 1.5em auto; padding: 1em 2em; width: fit-content; max-width: initial">
'''Jump to'''<br>
[[:{{FULLPAGENAME}}|Start]] {{*}}
[{{fullurl:{{FULLPAGENAME}}|pagefrom=A}} A] {{*}}
[{{fullurl:{{FULLPAGENAME}}|pagefrom=B}} B] {{*}}
[{{fullurl:{{FULLPAGENAME}}|pagefrom=C}} C] {{*}}
[{{fullurl:{{FULLPAGENAME}}|pagefrom=D}} D] {{*}}
[{{fullurl:{{FULLPAGENAME}}|pagefrom=E}} E] {{*}}
[{{fullurl:{{FULLPAGENAME}}|pagefrom=F}} F] {{*}}
[{{fullurl:{{FULLPAGENAME}}|pagefrom=G}} G] {{*}}
[{{fullurl:{{FULLPAGENAME}}|pagefrom=H}} H] {{*}}
[{{fullurl:{{FULLPAGENAME}}|pagefrom=I}} I] {{*}}
[{{fullurl:{{FULLPAGENAME}}|pagefrom=J}} J] {{*}}
[{{fullurl:{{FULLPAGENAME}}|pagefrom=K}} K] {{*}}
[{{fullurl:{{FULLPAGENAME}}|pagefrom=L}} L] {{*}}
[{{fullurl:{{FULLPAGENAME}}|pagefrom=M}} M] {{*}}
[{{fullurl:{{FULLPAGENAME}}|pagefrom=N}} N] {{*}}
[{{fullurl:{{FULLPAGENAME}}|pagefrom=O}} O] {{*}}
[{{fullurl:{{FULLPAGENAME}}|pagefrom=P}} P] {{*}}
[{{fullurl:{{FULLPAGENAME}}|pagefrom=Q}} Q] {{*}}
[{{fullurl:{{FULLPAGENAME}}|pagefrom=R}} R] {{*}}
[{{fullurl:{{FULLPAGENAME}}|pagefrom=S}} S] {{*}}
[{{fullurl:{{FULLPAGENAME}}|pagefrom=T}} T] {{*}}
[{{fullurl:{{FULLPAGENAME}}|pagefrom=U}} U] {{*}}
[{{fullurl:{{FULLPAGENAME}}|pagefrom=V}} V] {{*}}
[{{fullurl:{{FULLPAGENAME}}|pagefrom=W}} W] {{*}}
[{{fullurl:{{FULLPAGENAME}}|pagefrom=X}} X] {{*}}
[{{fullurl:{{FULLPAGENAME}}|pagefrom=Y}} Y] {{*}}
[{{fullurl:{{FULLPAGENAME}}|pagefrom=Z}} Z]
</div><noinclude>{{/doc}}</noinclude>
b5323f486a32f895884531a7abdab73475f418c1
Template:Category ABC/doc
10
704
1276
2024-03-24T16:52:57Z
Merds
25
Created page with "{{Documentation}} This template displays a navigation bar to sort through larger categories. ==Usage== This template can be used by entering the following onto a relevant page. <pre>{{Category ABC}}</pre> {{TemplateData|<templatedata> { "params": {}, "description": "This template displays a navigation bar to sort through larger categories.", "format": "inline" } </templatedata> }} <includeonly>[[Category:Navigational templates|{{PAGENAME}}]]</includeonly>"
wikitext
text/x-wiki
{{Documentation}}
This template displays a navigation bar to sort through larger categories.
==Usage==
This template can be used by entering the following onto a relevant page.
<pre>{{Category ABC}}</pre>
{{TemplateData|<templatedata>
{
"params": {},
"description": "This template displays a navigation bar to sort through larger categories.",
"format": "inline"
}
</templatedata>
}}
<includeonly>[[Category:Navigational templates|{{PAGENAME}}]]</includeonly>
6f4297cdc47c6045403f06b49efc7178c0d42e76
Template:License
10
705
1277
2024-03-24T16:56:07Z
Merds
25
Created page with "{| class="messagebox file" {{#if:{{{typeid|}}}|id="{{{typeid}}}"|}} {{#if:{{{datavalue|}}}|data-{{{datatype|}}}="{{{datavalue}}}"|}} | width="40px" | [[File:Copyright.svg|40px|center|link=]] | '''This is licensed media of a copyrighted computer game.'''<br><!-- --><div style="font-size:0.85em; line-height:1.4em"><!-- -->'''Type:''' {{{type}}}<br><!-- -->'''Subject:''' {{{subject}}}<br><!-- -->{{#if:{{{datavalue|}}}|'''{{#if:{{{dataprefix|}}}|{{ucfirst:{{{dataprefix}}}}}&..."
wikitext
text/x-wiki
{| class="messagebox file" {{#if:{{{typeid|}}}|id="{{{typeid}}}"|}} {{#if:{{{datavalue|}}}|data-{{{datatype|}}}="{{{datavalue}}}"|}}
| width="40px" | [[File:Copyright.svg|40px|center|link=]]
| '''This is licensed media of a copyrighted computer game.'''<br><!--
--><div style="font-size:0.85em; line-height:1.4em"><!--
-->'''Type:''' {{{type}}}<br><!--
-->'''Subject:''' {{{subject}}}<br><!--
-->{{#if:{{{datavalue|}}}|'''{{#if:{{{dataprefix|}}}|{{ucfirst:{{{dataprefix}}}}} }}ID:''' {{{datavalue}}}<br>}}<!--
-->''{{{text|This file is taken from [https://https://brightershores.com Brightershores.com].}}}''<!--
--></div>
|}<noinclude>{{/doc}}</noinclude>
15d895b36301a3c30863581014cfaaab5d21d140
Template:License/doc
10
706
1278
2024-03-24T16:56:38Z
Merds
25
Created page with "{{Documentation}} This is the parent template for file licenses. ==Usage== <pre>{{License |type = type |typeid = ID to add to the wrapping HTML element (optional) |subject = subject |datatype = create a "data-<datatype>" HTML element attribute (optional) |datavalue = value to assign to the "data-<datatype>" attribute (optional) |dataprefix = text to be shown before the "ID:" parameter label (optional) }}</pre> Typically subject will default to ''Unknown'' or link to the..."
wikitext
text/x-wiki
{{Documentation}}
This is the parent template for file licenses.
==Usage==
<pre>{{License
|type = type
|typeid = ID to add to the wrapping HTML element (optional)
|subject = subject
|datatype = create a "data-<datatype>" HTML element attribute (optional)
|datavalue = value to assign to the "data-<datatype>" attribute (optional)
|dataprefix = text to be shown before the "ID:" parameter label (optional)
}}</pre>
Typically subject will default to ''Unknown'' or link to the subject, but the implementation is left to the individual template to alter as required.
Typically, the type of ID given in <code>datavalue</code> can be determined based on the <code>type</code> license type. For licenses where that may not be true (e.g. the ID could refer to the ID of an item and its inventory icon ''or'' the ID could refer to a sprite), <code>dataprefix</code> may be specified to prepend clarifying text (e.g. "Sprite" or "Item") to the "ID:" label.
<includeonly>[[Category:Copyright templates]]</includeonly>
5eac6659869343c87d097617bf44f5cabb10a6f8
Template:Unknown
10
707
1279
2024-03-24T16:57:34Z
Merds
25
Created page with "<includeonly>Unknown{{#if:{{{1|}}}| {{{1}}}}} <span class="small plainlinks">[{{fullurl:{{FULLPAGENAME}}|action=edit}} (edit)]</span></includeonly><noinclude>{{/doc}}</noinclude>"
wikitext
text/x-wiki
<includeonly>Unknown{{#if:{{{1|}}}| {{{1}}}}} <span class="small plainlinks">[{{fullurl:{{FULLPAGENAME}}|action=edit}} (edit)]</span></includeonly><noinclude>{{/doc}}</noinclude>
7cf0ceddc595b5c6953c4d52aa7f4cd8c3bfccf8
Template:Unknown/doc
10
708
1280
2024-03-24T16:57:46Z
Merds
25
Created page with "{{documentation}} This template can be used in infoboxes to display "Unknown" with the link to edit the page. ==Usage== This template can be used by entering the following onto a relevant page. An unnamed parameter can be used to add text after ''Unknown''. <pre>{{Unknown}}</pre> {{Unknown}} <includeonly>[[Category:Transclusion templates|{{PAGENAME}}]]</includeonly>"
wikitext
text/x-wiki
{{documentation}}
This template can be used in infoboxes to display "Unknown" with the link to edit the page.
==Usage==
This template can be used by entering the following onto a relevant page. An unnamed parameter can be used to add text after ''Unknown''.
<pre>{{Unknown}}</pre>
{{Unknown}}
<includeonly>[[Category:Transclusion templates|{{PAGENAME}}]]</includeonly>
248df72688f96a98360773f75a2bb0eae9b3bcdc
Template:PreloadPage
10
709
1281
2024-03-24T16:58:27Z
Merds
25
Created page with "<onlyinclude>{{#ifeq:{{NAMESPACE}}|Template|{{#ifeq:{{lc:{{#sub:{{PAGENAME}}|-7}}}}|preload|{{clear}}<br /><hr />This page is a preload template. Simply click one of the template preloads from the menu in the editor and its contents will be placed on the page that you are editing. More info on preloads can be found at this [[Template:PreloadPage/doc|documentation page]].[[Category:Preload templates]]}}}}</onlyinclude> {{/doc}} [[Category:Maintenance templates]]"
wikitext
text/x-wiki
<onlyinclude>{{#ifeq:{{NAMESPACE}}|Template|{{#ifeq:{{lc:{{#sub:{{PAGENAME}}|-7}}}}|preload|{{clear}}<br /><hr />This page is a preload template. Simply click one of the template preloads from the menu in the editor and its contents will be placed on the page that you are editing.
More info on preloads can be found at this [[Template:PreloadPage/doc|documentation page]].[[Category:Preload templates]]}}}}</onlyinclude>
{{/doc}}
[[Category:Maintenance templates]]
b4f4ab01e45e1ccf918fc22ebfb57341c6685e3e
Template:PreloadPage/doc
10
710
1282
2024-03-24T16:58:48Z
Merds
25
Created page with "{{Documentation}} This template is mainly for the sake of categorising preload templates. Place the code on the parent template and make sure that it is part of the transclusion (it cannot be within no include tags or outside includeonly). The template works by allowing the categories to be transcluded only on template:namespace pages that end with the word preload. It works because the preload templates actually use the template's code itself within them. <pre> {{Prelo..."
wikitext
text/x-wiki
{{Documentation}}
This template is mainly for the sake of categorising preload templates. Place the code on the parent template and make sure that it is part of the transclusion (it cannot be within no include tags or outside includeonly). The template works by allowing the categories to be transcluded only on template:namespace pages that end with the word preload. It works because the preload templates actually use the template's code itself within them.
<pre>
{{PreloadPage}}
</pre>
All preload pages are listed below by dynamic page list (meaning that it does not need to be updated manually); however, for the preload to be available, [[Template:Stdpreloads]] '''will''' need to be updated manually. After which, you should clear your cache to allow the change to be visible
{{MediaWiki:Clearyourcache}}
----
;There are currently {{PAGESINCAT:Preload templates}} preload templates
<DPL>
namespace = Template
titlematch = %/preload|%/Preload
category = Preload_templates
replaceintitle = %/preload%,
ordermethod = title
columns = 3
format = ,\n,*[[%PAGE%|%TITLE%]]
</DPL>
{{#if:<references />}}
<includeonly>[[Category:Main page templates]]</includeonly>
ba48dd2903b9a9ff761fc740a60c198b00eec45d
File:Cryoknight icon detail.png
6
711
1283
2024-03-24T17:00:48Z
Merds
25
{{DII license|Cryoknight}}
wikitext
text/x-wiki
== Summary ==
{{DII license|Cryoknight}}
212d81b1a09287a855af2f8cc23fbabcfd6b3f0a
1284
1283
2024-03-24T17:01:10Z
Merds
25
Merds moved page [[File:CRYOKNIGHT icon detail.png]] to [[File:Cryoknight icon detail.png]] without leaving a redirect
wikitext
text/x-wiki
== Summary ==
{{DII license|Cryoknight}}
212d81b1a09287a855af2f8cc23fbabcfd6b3f0a
Cryoknight
0
69
1285
815
2024-03-24T17:01:19Z
Merds
25
wikitext
text/x-wiki
[[File:Cryoknight icon detail.png|left|100px]]
'''Cryoknight''' ([[File:Cryoknight icon.svg|18px]]) is a [[faction]] which specialises in using melee weapons in [[combat]].
{{Classes}}
870157b83b057085a95d716fcc8fc1ee99ee1fb2
Guardian
0
70
1286
816
2024-03-24T17:02:17Z
Merds
25
wikitext
text/x-wiki
[[File:Guardian icon detail.png|100px|left]]
'''Guardian''' ([[File:Guardian icon.svg|18px]]) is a [[faction]] which specialises in using ranged weapons in [[combat]].
{{Classes}}
1b755e0c6b6e970cf8e1232b64ebf7edc40b3c8b
Hammermage
0
71
1287
817
2024-03-24T17:02:22Z
Merds
25
wikitext
text/x-wiki
[[File:Guardian icon detail.png|100px|left]]
'''Hammermage''' ([[File:Hammermage icon.svg|18px]]) is a [[faction]] which specialises in using magic weapons in [[combat]].
{{Classes}}
6d6c65c1a8ba6fc4ee96e6715b34914f988dcbca
1288
1287
2024-03-24T17:02:27Z
Merds
25
wikitext
text/x-wiki
[[File:Hammermage icon detail.png|100px|left]]
'''Hammermage''' ([[File:Hammermage icon.svg|18px]]) is a [[faction]] which specialises in using magic weapons in [[combat]].
{{Classes}}
ea04fefe5bd44d26f5cc43f516374fd722cf4bd8
File:Hammermage icon detail.png
6
712
1289
2024-03-24T17:02:49Z
Merds
25
{{DII license|Hammermage}}
wikitext
text/x-wiki
== Summary ==
{{DII license|Hammermage}}
da2a92cb52ff35a99e6898fc0079909eb4f6fbd7
File:Guardian icon detail.png
6
713
1290
2024-03-24T17:03:12Z
Merds
25
{{DII license|Guardian}}
wikitext
text/x-wiki
== Summary ==
{{DII license|Guardian}}
8cc15c6048a628034954f9c8c1642bac330c274d
Template:Main Page/Discord
10
364
1291
1109
2024-03-24T17:24:57Z
Jayden
3
wikitext
text/x-wiki
<noinclude>{{/doc}}</noinclude><div class="mainpage-social mainpage-discord tile-halves plainlinks">
<div class="tile-top">
<div class="social-icon">[[File:Discord logo icon.svg|40px|link=]]</div>
[https://discord.gg/T8hfvcd2Vp <div class="arrow nomobile"></div><p class="social-header">Brighter Shores Wiki</p><p class="server-tagline">Join our server!</p>]
</div>
<div class="tile-bottom">
<p>Official Wiki Discord</p>
</div>
</div>
c46e3e2ce8a87d4f5f33461da54100c497f33c26
1292
1291
2024-03-24T19:29:59Z
Jayden
3
wikitext
text/x-wiki
<noinclude>{{/doc}}</noinclude><div class="mainpage-social mainpage-discord tile-halves plainlinks">
<div class="tile-top">
<div class="social-icon">[[File:Discord logo icon.svg|40px|link=]]</div>
[https://discord.gg/T8hfvcd2Vp <div class="arrow nomobile"></div><p class="social-header">Brighter Shores Wiki</p><p class="server-tagline">Join our server!</p>]
</div>
<div class="tile-bottom">
<p>Wiki Discord</p>
</div>
</div>
353cbfbefdaf1ca0221043f85b4ef5dd7bd1de9c
Template:Main Page/Header
10
45
1293
421
2024-03-24T20:52:11Z
Merds
25
!
wikitext
text/x-wiki
<div class="mainpage-header">
<div class="header-intro">
<h1>Welcome to the Brighter Shores Wiki!</h1>
<p>We are the wiki for ''[[Brighter Shores]]'', an upcoming medieval MMORPG developed by [[Andrew Gower]], featuring hundreds of hours of gameplay.</p>
</div>
<div class="header-stats plainlist nomobile">
<ul>
<li>Number of articles: '''{{NUMBEROFARTICLES}}'''</li>
<li>Number of files: '''{{NUMBEROFFILES}}'''</li>
<li>Number of active users: '''{{NUMBEROFACTIVEUSERS}}'''</li>
<li>Number of edits: '''{{NUMBEROFEDITS}}'''</li>
</ul>
</div>
</div>
b2be346edde5bf0881ae0f27c4bc7b9943c47f5e
File:White-chevron.svg
6
714
1294
2024-03-24T20:55:09Z
Merds
25
wikitext
text/x-wiki
da39a3ee5e6b4b0d3255bfef95601890afd80709
Brighter Shores:Orphanage
4
368
1295
685
2024-03-24T20:57:03Z
Merds
25
/* UI Icons */
wikitext
text/x-wiki
{{Otheruses|orphaned pages, templates, and files|the policy on article ownership|Brighter Shores:Ownership}}
{{Shortcut|BS:ORPHAN|BS:O}}
'''Brighter Shores:Orphanage''' is a place where '''orphaned pages and files''' are "stored" to prevent them from appearing in [[Special:LonelyPages]] and [[Special:UnusedFiles]]. <span style="color:red; font-weight:bold">Pages (or images) should not be linked here just because they appear in these special pages, but linked because they are "orphans".</span> (See the definition of "orphan" below.)
==What is an orphan?==
There are several factors that can classify an article as an orphan:
*'''Orphan:''' An article with '''<span style="color:red">fewer than three</span>''' incoming links which meet the criteria for linking below.
*'''Isolated article:''' An article that cannot be reached via a series of links from the [[Brighter Shores Wiki|Main Page]].
*'''Walled garden:''' A group of articles that link to each other, but have few or no links to them from any other Brighter Shores Wiki articles. In effect, that group is orphaned. Theoretically, a walled garden could have numerous articles if they all link to each other but no others link to them.
*'''Orphaned project page:''' A project page (starting with "Brighter Shores:") with few or no links from other project pages. Essays are most likely to be orphaned.
*'''Orphaned image:''' An image not used on Brighter Shores Wiki directly.
==What is the problem with an orphaned article?==
'''A company with no advertising will not be known to others, and as a result, will get few if any customers.'''
Likewise, orphaned articles, since they have few links to them from other pages, are difficult to find, and are most likely to be found only by chance. Because of this, few people know they exist, and therefore, they get less readership and improvement from those who would be able to improve them.
In particular, if the topic is more obscure, this may make it difficult for many to locate. If not for links to a page, the only way such an article can be found is by a person who knows the topic entering it into Brighter Shores Wiki or doing a web search, browsing a category in which it is contained, looking at the edit history of a contributor to the page, or having it show up as a random article.
==Criteria==
An article is orphaned if '''<span style="color:red">fewer than three</span>''' other articles link to it. '''Currently our priority is to focus on orphans with NO incoming links at all.'''
For the purposes of the strict definition, the following pages do not count toward the three incoming links:
*Disambiguation pages
*Redirects
*Lists
*Discussion pages of articles
*Pages outside of article space
Ideally, except for disambiguation links, '''disambiguation pages should be orphaned'''. The only pages that should link to them are articles bearing the title (via templates such as [[Template:Redirect]]) and "See also" sections of other disambiguation pages (when separate disambiguation pages are created due to long length or variances in the titles).
==List of orphaned articles==
A list of orphaned articles can be found at [[Special:LonelyPages]]
{{Construction}}
==Disambiguation pages==
{{Main|/Disambiguation pages}}
'''Disambiguation pages''' are created in order to resolve conflicts in article titles that occur when a single term can be associated with more than one topic, making that term likely to be the natural title for more than one article. In other words, disambiguations are paths leading to different articles which could, in principle, have the same title.
==Templates==
A list of orphaned templates can be found here: [[Special:UnusedTemplates]]
===Signatures===
Orphaned signatures can be found here: [[Template:Signatures/List]]
===Miscellaneous templates===
Miscellaneous orphaned templates can be found here: [[Brighter Shores:Orphanage/Templates]]
==Gallery of orphaned files==
{{incomplete|Compile all orphaned files, and explain their uses.}}
Some files may appear in the [[Special:UnusedFiles|Unused Files]] list if they are not directly used in an article. These files are considered '''orphaned files'''.
===General===
<gallery orientation=landscape>
Wiki@2x.png
</gallery>
===UI Icons===
UI Icons
<gallery>
Section anchor light.svg|Anchor icon for section headers
White-chevron.svg
</gallery>
[[Category:Brighter Shores Wiki community]]
c212ca0a0920f26a1059f9a41aa767f62c34e24f
Strength Cryonae
0
647
1298
1077
2024-03-25T07:22:39Z
BlackHawk
10
wikitext
text/x-wiki
{{Unofficial name}}
{{Infobox Item
|name =
|image = [[File:Cryoknight potion.png]]
|release =
|profession = Alchemist
|value =
}}
'''Cryoknight potions''' are a type of [[potion]].<ref>https://brightershores.com/screenshots/03_shade_combat.jpg</ref>
==References==
{{Reflist}}
[[Category:Potions]]
c1a25567af4984a93091e18745fc3d6829e59a78
Health potion
0
645
1299
1078
2024-03-25T07:23:36Z
BlackHawk
10
wikitext
text/x-wiki
{{Unofficial name}}
{{Infobox Item
|name =
|image = [[File:Health potion.png]]
|release =
|profession = Alchemist
|value =
}}
'''Health potions''' are a type of [[potion]]<ref>https://brightershores.com/screenshots/03_shade_combat.jpg</ref>, most likely used to restore one's health in [[combat]].
==References==
{{Reflist}}
[[Category:Potions]]
f4738a9c1bec35280aa2c28cbf5535eab5bb74c9
Merchant potion
0
636
1300
1081
2024-03-25T07:24:29Z
BlackHawk
10
wikitext
text/x-wiki
{{Unofficial name}}
{{Infobox Item
|name =
|image = [[File:Merchant potion.png]]
|release =
|episode = Hopeport
|profession = [[Alchemist]]
|value = 18
}}
The '''Merchant potion''' is a type of [[potion]].<ref>https://brightershores.com/screenshots/09_himatik_ruins.jpg</ref>
==References==
{{Reflist}}
[[Category:Potions]]
75a814fb5695bd57848774ce49dab5c920263647
Coif
0
634
1301
1079
2024-03-25T07:25:18Z
BlackHawk
10
wikitext
text/x-wiki
{{Unofficial name}}
{{Infobox Item
|name =
|image = [[File:Coif.png]]
|release =
|profession = Combat
|value = 0
}}
The '''coif''' is a piece of equipment worn on the head.<ref>https://brightershores.com/screenshots/09_himatik_ruins.jpg</ref>
==References==
{{Reflist}}
[[Category:Equipment]]
f7a3393974574846f4749a523af8f493bd5e3bfe
Template:Clean image
10
715
1302
2024-03-25T07:29:49Z
BlackHawk
10
Created page with "{{#invoke:clean image|main}}<noinclude>{{/doc}}</noinclude>"
wikitext
text/x-wiki
{{#invoke:clean image|main}}<noinclude>{{/doc}}</noinclude>
07c84bc099180a1b2d1a8ffac09545d99bb39e90
File:Basic bacon.png
6
392
1303
1067
2024-03-25T07:31:23Z
BlackHawk
10
BlackHawk moved page [[File:Item basic bacon.png]] to [[File:Basic bacon.png]] without leaving a redirect
wikitext
text/x-wiki
[[Category:Food images]]
c2551224a66dc9773d5073bd42696054240bf631
Template:Clean image/doc
10
716
1304
2024-03-25T07:31:31Z
BlackHawk
10
Created page with "{{Documentation}} Cleans and formats an input image. This removes the following things if present: * <code><nowiki>[[File:</nowiki></code> * <code><nowiki>]]</nowiki></code> * <code><nowiki>|</nowiki></code> and <code><nowiki>{{!}}</nowiki></code>, and everything following the first of these until the end Then it re-packages the image into a new file container, with specified height, width, and link. The <code>frameless</code> modifier is used, which prevents the image..."
wikitext
text/x-wiki
{{Documentation}}
Cleans and formats an input image. This removes the following things if present:
* <code><nowiki>[[File:</nowiki></code>
* <code><nowiki>]]</nowiki></code>
* <code><nowiki>|</nowiki></code> and <code><nowiki>{{!}}</nowiki></code>, and everything following the first of these until the end
Then it re-packages the image into a new file container, with specified height, width, and link. The <code>frameless</code> modifier is used, which prevents the image being resized larger than its actual dimensions.
==Usage==
<pre>{{clean image
|file = wikitext to be cleaned; this should usually be a template parameter (e.g. |file={{{image}}}); required
|width = width of image; no default; exclude 'px'
|height = height of image; no default; exclude 'px'; can be combined with width
|link = link to apply to image; no default (will link to file page); setting to no will suppress normal link
|align = alignment of image; left, center, right; no default
}}</pre>
===Examples===
To be practical the results will be as if <code><nowiki>|image=[[File:Basic bacon.png|100px|link=abyssal whip]]</nowiki></code> as the input.
{| class="wikitable"
! Example
! Code
! Result
! Notes
|
|-
| Just clean
| <pre>{{clean image|file={{{image}}}}}</pre>
| {{clean image|file=[[File:Basic bacon.png|100px|link=abyssal whip]]}}
| Should result in
<pre>[[File:{FILENAME}]]</pre>
Note that it links to the file page as a normal image does.
|-
| Clean + width
| <pre>{{clean image|file={{{image}}}|width=50}}</pre>
| {{clean image|file=[[File:Basic bacon.png|100px|link=abyssal whip]]|width=50}}
| Should result in
<pre>[[File:{FILENAME}|{WIDTH}px]]</pre>
|-
| Clean + height
| <pre>{{clean image|file={{{image}}}|height=20}}</pre>
| {{clean image|file=[[File:Basic bacon.png|100px|link=abyssal whip]]|height=20}}
| Should result in
<pre>[[File:{FILENAME}|x{HEIGHT}px]]</pre>
Remember that height parameters on images are maximum height limits and won't make an image bigger (without a width set).
|-
| Clean + width + height
| <pre>{{clean image|file={{{image}}}|width=44|height=20}}
{{clean image|file={{{image}}}|width=11|height=50}}
{{clean image|file={{{image}}}|width=66|height=66}}</pre>
|<poem>{{clean image|file=[[File:Basic bacon.png|100px|link=abyssal whip]]|width=44|height=20}}
{{clean image|file=[[File:Basic bacon.png|100px|link=abyssal whip]]|width=11|height=50}}
{{clean image|file=[[File:Basic bacon.png|100px|link=abyssal whip]]|width=66|height=60}}</poem>
| Should result in
<pre>[[File:{FILENAME}|{WIDTH}x{HEIGHT}px]]</pre>
Remember that height is still a maximum limit here. The size will be {WIDTH}px wide unless this makes the height more than {HEIGHT}px, in which case it is sized down to {HEIGHT}px tall. Aspect ratio is always kept.
Basic bacon.png is 22px wide and 30px tall. In the first use it is trying to resize to twice as wide but the maximum height of 20px forces it to resize down to 15x20px. The second use it successfully resizes down to half as wide, 11x15px. The third use is trying to go thrice as wide but the height limit only allows it to go twice as tall, so is 44x60px.
|-
| Clean + link
| <pre>{{clean image|file={{{image}}}|link=Weird gloop}}</pre>
| {{clean image|file=[[File:Basic bacon.png|100px|link=abyssal whip]]|link=Weird gloop}}
| Should result in
<pre>[[File:{FILENAME}|link={LINK}]]</pre>
|-
| Clean + link suppress
| <pre>{{clean image|file={{{image}}}|link=no}}</pre>
| {{clean image|file=[[File:Basic bacon.png|100px|link=abyssal whip]]|link=no}}
| Should result in
<pre>[[File:{FILENAME}|link=]]</pre>
|-
| Clean + alignment
| <pre>{{clean image|file={{{image}}}|align=right}}</pre>
| {{clean image|file=[[File:Basic bacon.png]]|align=right}}
| Should result in
<pre>[[File:{FILENAME}|align=right]]</pre>
|}
<includeonly>[[Category:Formatting templates]]</includeonly>
1cc7bbc62f4b8b4652d4f52f7344a6ba3baff6cb
Module:Clean image
828
717
1305
2024-03-25T07:31:57Z
BlackHawk
10
Created page with "-- <nowiki> -- Removes 'File:' prefix, just in case -- Replace {{!}} with | instead of preprocessing -- Turn into a nice wiki file link local hc = require('Module:Paramtest').has_content local p = {} p.main = function(frame) local args = frame:getParent().args local clean = { file = args.file or args[1], width = args.width or args[2], height = args.height or args[3], link = args.link or args[4], align = args.align or args[5] } return p.clean(clean) end p.c..."
Scribunto
text/plain
-- <nowiki>
-- Removes 'File:' prefix, just in case
-- Replace {{!}} with | instead of preprocessing
-- Turn into a nice wiki file link
local hc = require('Module:Paramtest').has_content
local p = {}
p.main = function(frame)
local args = frame:getParent().args
local clean = {
file = args.file or args[1],
width = args.width or args[2],
height = args.height or args[3],
link = args.link or args[4],
align = args.align or args[5]
}
return p.clean(clean)
end
p.clean = function(args)
local file = args.file
if not hc(file) or (file and (file:lower() == 'no' or file == '')) then
return ''
end
local height, width = '',''
if hc(args.height) then
height = 'x'..args.height
end
if hc(args.width) then
width = args.width
end
local size = ''
if width ~= '' or height ~= '' then
size = string.format('|%s%spx', width, height)
end
local link = ''
if hc(args.link) then
if args.link == 'no' then
link = '|link='
else
link = '|link='..args.link
end
end
local alignment = ''
local align = args.align
if align and (align:lower() == 'left' or align:lower() == 'center' or align:lower() == 'right') then
alignment = string.format('|%s', align)
end
file = file:gsub('%[',''):gsub('%]',''):gsub('[Ff]ile:',''):gsub('{{!}}','|')
-- enforce max height and width
file = mw.text.split(file, '|')
file = string.format('%s%s%s%s',file[1], size, link, alignment)
return '[[File:'..file..'|frameless]]'
end
return p
-- </nowiki>
96e41aadbf560674ee5e4b963ae72c7df482eb6e
Module:Clean image/doc
828
718
1306
2024-03-25T07:32:54Z
BlackHawk
10
Created page with "{{Documentation}} Cleans an input image to prevent double linking. {{Helper module |name=Clean image |fname1=<nowiki>clean{ file = [string|'no'], width = [string|nil], height = [string|nil], link = [string|nil], align = [string|nil] }</nowiki> |ftype1=table |fuse1=Used to clean up user input; extracts only the file name of the input and returns its own formatted link. Input is a table with fields: * <code>file</code> - t..."
wikitext
text/x-wiki
{{Documentation}}
Cleans an input image to prevent double linking.
{{Helper module
|name=Clean image
|fname1=<nowiki>clean{ file = [string|'no'], width = [string|nil], height = [string|nil], link = [string|nil], align = [string|nil] }</nowiki>
|ftype1=table
|fuse1=Used to clean up user input; extracts only the file name of the input and returns its own formatted link.
Input is a table with fields:
* <code>file</code> - the full wikitext to be cleaned. All processing is skipped if file is empty or is the string <code>no</code>.
* <code>width</code> - width to resize the file to; no default
* <code>height</code> - height to resize the file to, can be combined with width; no default
* <code>link</code> - what page to link the file to; no default (file will link to file page), <code>no</code> to link to nothing
* <code>align</code> - alignment for the image; <code>left, center, right</code>; no default
|example=
<syntaxhighlight lang='lua'>
local cleanImage = require( 'Module:Clean image' ).clean
mw.log( cleanImage{ file = '[[File:Basic bacon.png|link=Basic bacon|200px]]' } ) --> '[[File:Basic bacon.png|frameless]]'
</syntaxhighlight>
}}
4f0641e8d6406e4c37cad9809831cb837619c4f5
Template:Infobox Item
10
77
1307
1262
2024-03-25T07:36:05Z
BlackHawk
10
wikitext
text/x-wiki
{| class="wikitable infobox-item" style="float:right"
!colspan="2"| {{#if:{{{name|}}}|{{{name}}}|{{PAGENAME}}}}
|-
|colspan="2" style="text-align:center"| {{#if:{{{image|}}}|{{clean image|file={{{image}}}}}|[[Special:Upload|Please upload an image!]]{{Mainonly|[[Category:Needs image]]}}}}
|-
|<b>Release date</b>||{{#if:{{{release|}}}|{{{release}}}|Q3 [[2024]]}}
|-
|<b>Episode</b>||{{#switch:{{{episode|}}}|Hopeport=[[File:Hopeport episode icon.png|18px]] [[Hopeport]]|Hopeforest=[[File:Hopeforest episode icon.png|18px]] [[Hopeforest]]|Mine of Manbutan=[[File:Mine of Manbutan episode icon.png|18px]]|#default=[[File:Unknown episode icon.png|18px]] Unknown}}
|-
|<b>Profession</b>||{{#if:{{{profession|}}}|{{{profession}}}|{{Edit button|text=<b>?</b> (edit)}}{{Mainonly|[[Category:Items needing profession]]}}}}
|-
|<b>Value</b>||{{#if:{{{value|}}}|{{{value}}}|{{Edit button|text=<b>?</b> (edit)}}{{Mainonly|[[Category:Items needing value]]}}}}
|}{{Mainonly|[[Category:Items]]}}<noinclude>{{clear}}{{/doc}}</noinclude>
51d15661205607407d83310f7e77f268044b2f80
Template:Infobox Profession
10
661
1308
1242
2024-03-25T07:36:16Z
BlackHawk
10
wikitext
text/x-wiki
{| class="wikitable infobox-profession" style="float:right"
! colspan="2" | {{#if:{{{name|}}}|{{{name}}}|{{PAGENAME}}}}
|-
| colspan="2" style="text-align:center" | {{#if:{{{image|}}}|{{clean image|file={{{image}}}}}|[[Special:Upload|Please upload an image!]]{{Mainonly|[[Category:Needs image]]}}}}
|-
! Release date
| {{{release|Q3 [[2024]]}}}
|}{{Mainonly|[[Category:Professions]]}}<noinclude>{{/doc}}</noinclude>
318ec39279e5017441bedf21cc55a6716949826f
Template:Infobox Scenery
10
690
1309
1261
2024-03-25T07:36:24Z
BlackHawk
10
wikitext
text/x-wiki
{| class="wikitable infobox-scenery" style="float:right"
!colspan="2"| {{#if:{{{name|}}}|{{{name}}}|{{PAGENAME}}}}
|-
|colspan="2" style="text-align:center"| {{#if:{{{image|}}}|{{clean image|file={{{image}}}}}|[[Special:Upload|Please upload an image!]]{{Mainonly|[[Category:Needs image]]}}}}
|-
|<b>Release date</b>||{{#if:{{{release|}}}|{{{release}}}|Q3 [[2024]]}}
|-
|<b>Episode</b>||{{#switch:{{{episode|}}}|Hopeport=[[File:Hopeport episode icon.png|18px]] [[Hopeport]]|Hopeforest=[[File:Hopeforest episode icon.png|18px]] [[Hopeforest]]|Mine of Manbutan=[[File:Mine of Manbutan episode icon.png|18px]]|#default=[[File:Unknown episode icon.png|18px]] Unknown}}
|}{{Mainonly|[[Category:Scenery]]}}<noinclude>{{clear}}{{/doc}}</noinclude>
e06a351d90f74fe9ec06a2b8805fb809ff1165ed
Trunk
0
685
1310
1253
2024-03-25T07:36:43Z
BlackHawk
10
wikitext
text/x-wiki
{{Infobox Scenery
|name = Trunk
|image = Trunk.png
|release =
|episode =
}}
A '''trunk''' is a piece of interactable scenery that can be found in [[Pirate Hideout]].{{CiteTwitter|url=https://twitter.com/AndrewCGower/status/1769048510177948004|author=Andrew Gower|date=16 March 2024|accessdate=24 March 2024|archiveurl=https://archive.is/whgCd|archivedate=24 March 2024|quote=}}
==References==
{{Reflist}}
d4f1385f661eed0d04a337f508e396030079e38a
Old trunk
0
697
1311
1258
2024-03-25T07:36:55Z
BlackHawk
10
wikitext
text/x-wiki
{{Infobox Scenery
|name = Old trunk
|image = Old trunk.png
|release =
|episode =
}}
A '''old trunk''' is a piece of interactable scenery that can be found in [[Pirate Hideout]].{{CiteTwitter|url=https://twitter.com/AndrewCGower/status/1769048510177948004|author=Andrew Gower|date=16 March 2024|accessdate=24 March 2024|archiveurl=https://archive.is/whgCd|archivedate=24 March 2024|quote=}}
==References==
{{Reflist}}
90edbd0fad48700d1d03de320a3f570a81dfef06
Basic bacon
0
84
1312
1086
2024-03-25T07:37:42Z
BlackHawk
10
wikitext
text/x-wiki
{{Unofficial name}}
{{Infobox Item
|name = Basic bacon
|image = Basic bacon.png
|release =
|episode =
|profession = [[Chef]]
|value =
}}
'''Basic bacon''' is a food that can be created using the [[Chef]] profession. It can be obtained by frying [[raw basic bacon]] in a kitchen.<ref>https://brightershores.com/screenshots/02_cooking.jpg</ref>
==References==
{{Reflist}}
[[Category:Food]]
c9f6f6257591ef6a6778aa2ae47d963e6604d722
Branch
0
464
1313
1080
2024-03-25T07:38:13Z
BlackHawk
10
wikitext
text/x-wiki
{{Unofficial name}}
{{Infobox Item
|name = Branch
|image = Branch.png
|release =
|episode = Hopeforest
|profession = [[Woodcutter]]
|value = 48
}}
'''Branches''' can be collected by the [[Woodcutter]] [[profession]] in [[Hopeforest]].<ref>https://brightershores.com/screenshots/09_himatik_ruins.jpg</ref>
==References==
{{Reflist}}
dc749909b1fd6031ed8f699556de97450c2d03cc
Coif
0
634
1314
1301
2024-03-25T07:38:32Z
BlackHawk
10
wikitext
text/x-wiki
{{Unofficial name}}
{{Infobox Item
|name =
|image = Coif.png
|release =
|profession = Combat
|value = 0
}}
The '''coif''' is a piece of equipment worn on the head.<ref>https://brightershores.com/screenshots/09_himatik_ruins.jpg</ref>
==References==
{{Reflist}}
[[Category:Equipment]]
77aa5cd1c299c089efecfad2ba90ddf6931ca81a
Strength Cryonae
0
647
1315
1298
2024-03-25T07:38:55Z
BlackHawk
10
wikitext
text/x-wiki
{{Unofficial name}}
{{Infobox Item
|name =
|image = Cryoknight potion.png
|release =
|profession = Alchemist
|value =
}}
'''Cryoknight potions''' are a type of [[potion]].<ref>https://brightershores.com/screenshots/03_shade_combat.jpg</ref>
==References==
{{Reflist}}
[[Category:Potions]]
e197997d08b8dcd44f963b2ac32028726799a0e7
Hammermage potion
0
632
1316
1270
2024-03-25T07:39:37Z
BlackHawk
10
wikitext
text/x-wiki
{{Unofficial name}}
{{Infobox Item
|name =
|image = Hammermage potion.png
|release =
|episode = Hopeport
|profession = Alchemist
|value = 330
}}
The '''Hammermage potion''' is a type of [[potion]].<ref>https://brightershores.com/screenshots/09_himatik_ruins.jpg</ref>
==References==
{{Reflist}}
[[Category:Potions]]
067e306d49abff1de76689374f25159300ec0a1a
Health potion
0
645
1317
1299
2024-03-25T07:40:06Z
BlackHawk
10
wikitext
text/x-wiki
{{Unofficial name}}
{{Infobox Item
|name =
|image = Health potion.png
|release =
|profession = Alchemist
|value =
}}
'''Health potions''' are a type of [[potion]]<ref>https://brightershores.com/screenshots/03_shade_combat.jpg</ref>, most likely used to restore one's health in [[combat]].
==References==
{{Reflist}}
[[Category:Potions]]
cd183842dba9f5c4d29f40aff664194a13dc76ff
Merchant potion
0
636
1318
1300
2024-03-25T07:40:20Z
BlackHawk
10
wikitext
text/x-wiki
{{Unofficial name}}
{{Infobox Item
|name =
|image = Merchant potion.png
|release =
|episode = Hopeport
|profession = [[Alchemist]]
|value = 18
}}
The '''Merchant potion''' is a type of [[potion]].<ref>https://brightershores.com/screenshots/09_himatik_ruins.jpg</ref>
==References==
{{Reflist}}
[[Category:Potions]]
76b442558d49291b7a3fb3087c6200dfc2d89748
Miner potion
0
465
1319
1083
2024-03-25T07:40:44Z
BlackHawk
10
wikitext
text/x-wiki
{{Unofficial name}}
{{Infobox Item
|name =
|image = Miner potion.png
|release =
|episode = Hopeport
|profession = [[Alchemist]]
|value = 16
}}
'''Miner potions''' are a type of [[potion]].<ref>https://brightershores.com/screenshots/09_himatik_ruins.jpg</ref>
==References==
{{Reflist}}
[[Category:Potions]]
3496c1a3bba70d144c400b0be19d71248964159d
File:Raw basic bacon.png
6
398
1320
1076
2024-03-25T07:41:06Z
BlackHawk
10
BlackHawk moved page [[File:Item raw basic bacon.png]] to [[File:Raw basic bacon.png]] without leaving a redirect
wikitext
text/x-wiki
[[Category:Food images]]
c2551224a66dc9773d5073bd42696054240bf631
Raw basic bacon
0
478
1321
1085
2024-03-25T07:41:39Z
BlackHawk
10
wikitext
text/x-wiki
{{Unofficial name}}
{{Infobox Item
|name = Raw basic bacon
|image = Raw basic bacon.png
|release =
|episode =
|profession = [[Chef]]
|value =
}}
'''Raw basic bacon''' is an item that can be fried to [[basic bacon]] using the [[Chef]] profession.<ref>https://brightershores.com/screenshots/02_cooking.jpg</ref>
==References==
{{Reflist}}
[[Category:Food]]
e0f844e7debec74989c7d25c70b6e1ca7126f04d
Sturlet
0
67
1322
1192
2024-03-25T07:42:28Z
BlackHawk
10
wikitext
text/x-wiki
{{Infobox Item
|name =
|image =
|release =
|episode =
|profession =
|value =
}}
'''Sturlet''' is a type of [[fish]] that gives 7 experience in the [[Fisher]] profession per catch.<ref>https://brightershores.com/screenshots/12_vincible.jpg</ref>
==References==
{{Reflist}}
92232e435a1ddc95d4277a494de175afb8335b13
Template:Infobox NPC
10
719
1323
2024-03-25T13:53:19Z
BlackHawk
10
Created page with "{| class="wikitable infobox-npc" style="float:right" !colspan="2"| {{#if:{{{name|}}}|{{{name}}}|{{PAGENAME}}}} |- |colspan="2" style="text-align:center"| {{#if:{{{image|}}}|{{clean image|file={{{image}}}}}|[[Special:Upload|Please upload an image!]]{{Mainonly|[[Category:Needs image]]}}}} |- |<b>Release date</b>||{{#if:{{{release|}}}|{{{release}}}|Q3 [[2024]]}} |- |<b>Episode</b>||{{#switch:{{{episode|}}}|Hopeport=[[File:Hopeport episode icon.png|18px]] [[Hopeport]]|Hopefo..."
wikitext
text/x-wiki
{| class="wikitable infobox-npc" style="float:right"
!colspan="2"| {{#if:{{{name|}}}|{{{name}}}|{{PAGENAME}}}}
|-
|colspan="2" style="text-align:center"| {{#if:{{{image|}}}|{{clean image|file={{{image}}}}}|[[Special:Upload|Please upload an image!]]{{Mainonly|[[Category:Needs image]]}}}}
|-
|<b>Release date</b>||{{#if:{{{release|}}}|{{{release}}}|Q3 [[2024]]}}
|-
|<b>Episode</b>||{{#switch:{{{episode|}}}|Hopeport=[[File:Hopeport episode icon.png|18px]] [[Hopeport]]|Hopeforest=[[File:Hopeforest episode icon.png|18px]] [[Hopeforest]]|Mine of Manbutan=[[File:Mine of Manbutan episode icon.png|18px]]|#default=[[File:Unknown episode icon.png|18px]] Unknown}}
|-
|<b>Profession</b>||{{#if:{{{profession|}}}|{{{profession}}}|{{Edit button|text=<b>?</b> (edit)}}{{Mainonly|[[Category:Items needing profession]]}}}}
|}{{Mainonly|[[Category:Non-player characters]]}}<noinclude>{{clear}}{{/doc}}</noinclude>
8aeefdf94f084bd1f42fb1d260945b956e0a751a
1329
1323
2024-03-25T13:58:51Z
BlackHawk
10
wikitext
text/x-wiki
{| class="wikitable infobox-npc" style="float:right"
!colspan="2"| {{#if:{{{name|}}}|{{{name}}}|{{PAGENAME}}}}
|-
|colspan="2" style="text-align:center"| {{#if:{{{image|}}}|{{clean image|file={{{image}}}}}|[[Special:Upload|Please upload an image!]]{{Mainonly|[[Category:Needs image]]}}}}
|-
|<b>Release date</b>||{{#if:{{{release|}}}|{{{release}}}|Q3 [[2024]]}}
|-
|<b>Episode</b>||{{#switch:{{{episode|}}}|Hopeport=[[File:Hopeport episode icon.png|18px]] [[Hopeport]]|Hopeforest=[[File:Hopeforest episode icon.png|18px]] [[Hopeforest]]|Mine of Manbutan=[[File:Mine of Manbutan episode icon.png|18px]]|#default=[[File:Unknown episode icon.png|18px]] Unknown}}
|-
|<b>Profession</b>||{{#if:{{{profession|}}}|{{{profession}}}|{{Edit button|text=<b>?</b> (edit)}}{{Mainonly|[[Category:Non-player characters needing profession]]}}}}
|}{{Mainonly|[[Category:Non-player characters]]}}<noinclude>{{clear}}{{/doc}}</noinclude>
9bb9dff15ee293d25f5fcaa08d427ce243b5de12
1330
1329
2024-03-25T14:00:27Z
BlackHawk
10
wikitext
text/x-wiki
{| class="wikitable infobox-npc" style="float:right"
!colspan="2"| {{#if:{{{name|}}}|{{{name}}}|{{PAGENAME}}}}
|-
|colspan="2" style="text-align:center"| {{#if:{{{image|}}}|{{clean image|file={{{image}}}}}|[[Special:Upload|Please upload an image!]]{{Mainonly|[[Category:Needs image]]}}}}
|-
|<b>Release date</b>||{{#if:{{{release|}}}|{{{release}}}|Q3 [[2024]]}}
|-
|<b>Episode</b>||{{#switch:{{{episode|}}}|Hopeport=[[File:Hopeport episode icon.png|18px]] [[Hopeport]]|Hopeforest=[[File:Hopeforest episode icon.png|18px]] [[Hopeforest]]|Mine of Manbutan=[[File:Mine of Manbutan episode icon.png|18px]]|#default=[[File:Unknown episode icon.png|18px]] Unknown}}
|-
{{#if:{{{profession|}}}|
{{!}} colspan="2" align="center" {{!}} {{{profession}}}}}
|}{{Mainonly|[[Category:Non-player characters]]}}<noinclude>{{clear}}{{/doc}}</noinclude>
345c9266a10133cde879fb9728c7d13c67e1e041
Template:Infobox NPC/doc
10
720
1324
2024-03-25T13:54:06Z
BlackHawk
10
Created page with "{{Documentation}} ==Parameters== ===name=== The name of the NPC. ===image=== The image of the NPC. ===release=== The release date of the NPC. ===episode=== The episode of the NPC. One of: * Hopeport * Hopeforest * Mine of Manbutan ===profession=== The profession of the NPC. ==Quick copy== <pre>{{Infobox NPC |name = |image = |release = |episode = |profession = }}</pre> <includeonly>[[Category:Infobox templates]]</includeonly>"
wikitext
text/x-wiki
{{Documentation}}
==Parameters==
===name===
The name of the NPC.
===image===
The image of the NPC.
===release===
The release date of the NPC.
===episode===
The episode of the NPC.
One of:
* Hopeport
* Hopeforest
* Mine of Manbutan
===profession===
The profession of the NPC.
==Quick copy==
<pre>{{Infobox NPC
|name =
|image =
|release =
|episode =
|profession =
}}</pre>
<includeonly>[[Category:Infobox templates]]</includeonly>
1f6a706e97134214f88568a1f67a5bb55513bed4
Gurnard
0
444
1325
721
2024-03-25T13:56:22Z
BlackHawk
10
wikitext
text/x-wiki
{{Infobox NPC
|name = Gurnard
|image =
|release =
|episode =
|profession = [[Fisher]]
}}
'''Gurnards''' are a type of [[fish]]. The Yellowtail variant can be found in the [[Pirate Hideout]].
==Variants==
* Yellowtail
3e432496956781386c861b1c9a5199f4addf834b
Category:Non-player characters
14
130
1326
235
2024-03-25T13:56:38Z
BlackHawk
10
BlackHawk moved page [[Category:NPCs]] to [[Category:Non-player characters]] without leaving a redirect
wikitext
text/x-wiki
{{Categoryheader|pages|non-player characters}}
[[Category:Content]]
655e8f5d30399163f0b4ca926887fbfa3fff768d
Fire toad
0
721
1327
2024-03-25T13:57:05Z
Logg
52
redirect
wikitext
text/x-wiki
#REDIRECT [[Firetoad]]
10fc7742746eb2fa0f2fca843f37fdac90c4bd19
Barricade guard
0
475
1328
1088
2024-03-25T13:58:17Z
BlackHawk
10
wikitext
text/x-wiki
{{Infobox NPC
|name = Barricade guard
|image =
|release =
|episode =
|profession =
}}
'''Barricade guard''' is an NPC that guards the [[Barricades]]. The player must talk to [[Captain Jal Degreene]] as part of a quest in order to be allowed through. If the player attempts to pass the barricades before talking with Captain Jal Degreene, the guard will say "Yeah, like I said, it's not safe. You'll have to get permission from Captain Jal Degreene if you want in."
e437541f153d11d5a594d9120d4202818d5fe9b1
Captain Jal Degreene
0
431
1331
923
2024-03-25T14:01:27Z
BlackHawk
10
wikitext
text/x-wiki
{{Infobox NPC
|name = Captain Jal Degreene
|image =
|release =
|episode =
|profession =
}}
'''Captain Jal Degreene''' is an NPC. In the Main Story, the Player needs clearance from him to get access into the Mine Entrance.
1a8db28ba3914d796e487908be60ced30fada44f
Lani
0
93
1332
234
2024-03-25T14:01:42Z
BlackHawk
10
wikitext
text/x-wiki
{{Infobox NPC
|name = Lani
|image =
|release =
|episode =
|profession =
}}
'''Lani''' is the owner of [[Lani's Curiosities]].
664c750fb932195350f8e7bb0f66f8da1ee59276
Melv
0
87
1333
239
2024-03-25T14:01:58Z
BlackHawk
10
wikitext
text/x-wiki
{{Infobox NPC
|name = Melv
|image =
|release =
|episode =
|profession =
}}
'''Melv''' is the shop owner of [[Melv's Fishing Supplies]].
6f1bd61fc44b85d03f5de4a9c813a05290c048a9
Template:CiteTwitter
10
196
1334
343
2024-03-25T14:38:51Z
Logg
52
"reference template" category
wikitext
text/x-wiki
<includeonly>{{#invoke:References|twitterref}}</includeonly><noinclude>{{/doc}}[[Category:Reference templates]]</noinclude>
8065194c9f941e352de73ee8422d1e959e521799
Firetoad
0
186
1335
326
2024-03-25T14:39:27Z
Logg
52
So you want to join the Hopeport town guard? Then here's what you need to know: we're not just about fighting firetoads...!
wikitext
text/x-wiki
{{Unofficial name}}
{{Infobox NPC
|name = Firetoad
|image = [[File:Firetoad.png]]
|release = Q3 2024
|episode = Hopeport
|profession =
}}
'''Firetoads''' are monsters found in caves. The Hopeport town guard fights firetoads regularly, to the point where it might at first glance be mistaken that that is all they do.{{CiteVideo|author=FenResearch|title=Brighter Shores Trailer|url=https://www.youtube.com/watch?v=7lolGQaorPo|timestamp=00:01 - 00:09|date=13 May, 2024|site=Youtube|name=Original Brighter Shores Trailer}}
Being that players first enter the game as members of the Hopeport town guard, it is anticipated that fighting firetoads will be one of the most common ways that players initially improve their combat abilities.
==Trivia==
* Firetoads were the first named monsters to be presented to players, in the original trailer for the game.<ref name="Original Brighter Shores Trailer"/>
==References==
{{reflist}}
[[Category:Monsters]]
696af2a0f245496b8bd7a325ea579af03977384a
1337
1335
2024-03-25T14:53:42Z
Logg
52
Firetoads attack every 2.5 seconds. I counted frames for both the top toad & the toad to its right. In the 60 frame per second trailer video, the number of frames between attacks is exactly 150.
wikitext
text/x-wiki
{{Unofficial name}}
{{Infobox NPC
|name = Firetoad
|image = [[File:Firetoad.png]]
|release = Q3 2024
|episode = Hopeport
|profession =
}}
'''Firetoads''' are monsters found in caves. The Hopeport town guard fights firetoads regularly, to the point where it might at first glance be mistaken that that is all they do.{{CiteVideo|author=FenResearch|title=Brighter Shores Trailer|url=https://www.youtube.com/watch?v=7lolGQaorPo|timestamp=00:01 - 00:09|date=13 May, 2024|site=Youtube|name=Original Brighter Shores Trailer}}
Being that players first enter the game as members of the Hopeport town guard, it is anticipated that fighting firetoads will be one of the most common ways that players initially improve their combat abilities.
As their name implies, firetoads attack with fire, which is a long-range attack with a constant speed, independent of distance to target. Firetoads can use their fire attack every 2.5 seconds.
==Trivia==
* Firetoads were the first named monsters to be presented to players, in the original trailer for the game.<ref name="Original Brighter Shores Trailer"/>
==References==
{{reflist}}
[[Category:Monsters]]
e107f0605e7c7123b4aac6d40e549a48c0dd45cd
1339
1337
2024-03-25T15:00:36Z
Logg
52
firetoad gallery
wikitext
text/x-wiki
{{Unofficial name}}
{{Infobox NPC
|name = Firetoad
|image = [[File:Firetoad.png]]
|release = Q3 2024
|episode = Hopeport
|profession =
}}
'''Firetoads''' are monsters found in caves. The Hopeport town guard fights firetoads regularly, to the point where it might at first glance be mistaken that that is all they do.{{CiteVideo|author=FenResearch|title=Brighter Shores Trailer|url=https://www.youtube.com/watch?v=7lolGQaorPo|timestamp=00:01 - 00:09|date=13 May, 2024|site=Youtube|name=Original Brighter Shores Trailer}}
Being that players first enter the game as members of the Hopeport town guard, it is anticipated that fighting firetoads will be one of the most common ways that players initially improve their combat abilities.
As their name implies, firetoads attack with fire, which is a long-range attack with a constant speed, independent of distance to target. Firetoads can use their fire attack every 2.5 seconds.
==Gallery==
<gallery>
Firetoads Trailer.jpg | Firetoads as shown in the original trailer for Brighter Shores.
</gallery>
==Trivia==
* Firetoads were the first named monsters to be presented to players, in the original trailer for the game.<ref name="Original Brighter Shores Trailer"/>
==References==
{{reflist}}
[[Category:Monsters]]
4865b8a77a06776fa933502542e73d8094c718e9
Template:CiteVideo
10
722
1336
2024-03-25T14:40:04Z
Logg
52
Created page with "<includeonly>{{#invoke:References|videoref}}</includeonly><noinclude>{{/doc}}[[Category:Reference templates]]</noinclude>"
wikitext
text/x-wiki
<includeonly>{{#invoke:References|videoref}}</includeonly><noinclude>{{/doc}}[[Category:Reference templates]]</noinclude>
d7b2cf6d24aeac363b963aea4799b5622804a530
File:Firetoads Trailer.jpg
6
723
1338
2024-03-25T14:59:29Z
Logg
52
First appearance of Firetoads, from https://www.youtube.com/watch?v=7lolGQaorPo
wikitext
text/x-wiki
== Summary ==
First appearance of Firetoads, from https://www.youtube.com/watch?v=7lolGQaorPo
4c9ef7097f22618e398f40f699f53e3caf7c5086
File:Firetoad.png
6
724
1340
2024-03-25T15:06:47Z
Logg
52
wikitext
text/x-wiki
da39a3ee5e6b4b0d3255bfef95601890afd80709
Yellowtail Gurnard
0
449
1341
726
2024-03-25T16:33:46Z
BlackHawk
10
Redirected page to [[Gurnard]]
wikitext
text/x-wiki
#REDIRECT [[Gurnard]]
f5c85bd9d9fc9e069e762051b11ee333cd249be2
User:Logg
2
725
1342
2024-03-25T16:49:32Z
Logg
52
Created page with "I'm Logg, currently looking forward to exploring the world of Brighter Shores. I've been a fan of the Gowers' games for over 20 years. I particularly enjoyed Flea Circus, which I deobbed [https://github.com/Hubcapp/fleacircus2000-deob here]. I'm also an administrator on the ''RuneScape Classic'' Wiki, you can see my userpage [https://classic.runescape.wiki/User:Logg there]."
wikitext
text/x-wiki
I'm Logg, currently looking forward to exploring the world of Brighter Shores.
I've been a fan of the Gowers' games for over 20 years. I particularly enjoyed Flea Circus, which I deobbed [https://github.com/Hubcapp/fleacircus2000-deob here].
I'm also an administrator on the ''RuneScape Classic'' Wiki, you can see my userpage [https://classic.runescape.wiki/User:Logg there].
c86fa91b545305e03c3af39a5fb51b32d748b03e
Monsters
0
377
1343
717
2024-03-25T17:58:20Z
Logg
52
Firetoad belongs on top
wikitext
text/x-wiki
'''Monsters''' are creatures in [[Brighter Shores]] that can be attacked. They are fought in [[combat]] for their loot, including valuable currency items.
There are many monsters in Brighter Shores, including:
* [[Firetoad]]
* [[Punkupine]]
* [[Slime Fiend]]
* [[Mawchest]]
* [[Wailing Shade]]
* [[Sneaky Thief]]
* [[Yellowtail Gurnard]]
* [[Grumpy Pirate]]
[[Category:Monsters]]
{{Mechanics}}
122d41ea695c897be642b5948321de0115e38612
1349
1343
2024-03-25T19:03:16Z
ToofleBerry
6
Alphabetize.
wikitext
text/x-wiki
'''Monsters''' are creatures in [[Brighter Shores]] that can be attacked. They are fought in [[combat]] for their loot, including valuable currency items.
There are many monsters in Brighter Shores, including:
* [[Firetoad]]
* [[Grumpy Pirate]]
* [[Mawchest]]
* [[Punkupine]]
* [[Slime Fiend]]
* [[Sneaky Thief]]
* [[Wailing Shade]]
* [[Yellowtail Gurnard]]
[[Category:Monsters]]
{{Mechanics}}
ee46ff9c52c78289ed44809474ac10100193185b
Template:Transparency
10
726
1344
2024-03-25T19:00:34Z
ToofleBerry
6
Modified version from https://oldschool.runescape.wiki/w/Template:Transparency
wikitext
text/x-wiki
<includeonly>{| class="messagebox file"
|<div style="font-size:140%; text-align:center">[[File:Transparent.svg|40px|Mock-up of an image needing transparency.]]</div> || '''This image needs transparency.'''<span style="font-size:0.85em"><br clear="all" />Certain images on the Brighter Shores Wiki normally have transparent backgrounds. This image, however, does not. Please upload a new version of this image with transparency. See our [[Brighter Shores:Images and media policy|images and media policy]] for more information.{{#if: {{{1|}}} |<br />Notable, small spots that also need transparency are: '''{{{1|}}}'''| }}</span>
|}{{Fileonly|[[Category:Images needing transparency]]}}</includeonly><noinclude>{{/doc}}</noinclude>
001dceb39233084634d9ef405b9061650b8cd8ab
File:Transparent.svg
6
727
1345
2024-03-25T19:01:21Z
ToofleBerry
6
{{Permanent Protection}}
Icon to be used on [[:Template:Transparency]].
{{GFDL}}
wikitext
text/x-wiki
== Summary ==
{{Permanent Protection}}
Icon to be used on [[:Template:Transparency]].
{{GFDL}}
bb8379f19e6088f0707695c919597b93b9b8b85f
1348
1345
2024-03-25T19:02:20Z
BlackHawk
10
added [[Category:Icons]] using [[Help:Gadget-HotCat|HotCat]]
wikitext
text/x-wiki
== Summary ==
{{Permanent Protection}}
Icon to be used on [[:Template:Transparency]].
{{GFDL}}
[[Category:Icons]]
91bcd07c5a9e318054dffb15cb290d64ad327cf4
Template:Transparency/doc
10
728
1346
2024-03-25T19:01:48Z
ToofleBerry
6
Created page with "{{documentation}} This template displays a notification that transparency is going to be added to an image. The [[:Category:Images needing transparency]] will be added to the page. ==Usage== {{T|Transparency}} ==Examples== {{T|Transparency}} {{Transparency}} ==Parameters== <templatedata> { "description": "", "params": { } } </templatedata> <includeonly>[[Category:Image templates|{{PAGENAME}}]]</includeonly>"
wikitext
text/x-wiki
{{documentation}}
This template displays a notification that transparency is going to be added to an image. The [[:Category:Images needing transparency]] will be added to the page.
==Usage==
{{T|Transparency}}
==Examples==
{{T|Transparency}}
{{Transparency}}
==Parameters==
<templatedata>
{
"description": "",
"params": {
}
}
</templatedata>
<includeonly>[[Category:Image templates|{{PAGENAME}}]]</includeonly>
e43718a395e97579fcf2ca5bbd9bae8c158ee2db
Category:Images needing transparency
14
729
1347
2024-03-25T19:02:10Z
ToofleBerry
6
Created page with "{{Categoryheader|images|that need [[wikipedia:Transparency (graphic)|transparency]] added|yes|[[Template:Transparency]]}} [[Category:Maintenance categories]] __EXPECTUNUSEDCATEGORY__"
wikitext
text/x-wiki
{{Categoryheader|images|that need [[wikipedia:Transparency (graphic)|transparency]] added|yes|[[Template:Transparency]]}}
[[Category:Maintenance categories]]
__EXPECTUNUSEDCATEGORY__
87d888ae124692ab055e03e9d47b50f1dc6fec0c
File:Cryoknight potion.png
6
648
1350
1074
2024-03-25T19:04:58Z
ToofleBerry
6
wikitext
text/x-wiki
{{Transparency}}
== Summary ==
[[Category:Potion images]]
f9c1c2822d82368653bb196a5bd1431e096cf925
File:Hammermage potion.png
6
633
1351
1053
2024-03-25T19:05:11Z
ToofleBerry
6
Transparency needed.
wikitext
text/x-wiki
{{Transparency}}
[[Category:Potion images]]
376dd24b9050af743ffdd1b06a93cbee2621c131
File:Health potion.png
6
646
1352
1071
2024-03-25T19:05:19Z
ToofleBerry
6
Transparency needed.
wikitext
text/x-wiki
{{Transparency}}
== Summary ==
[[Category:Potion images]]
f9c1c2822d82368653bb196a5bd1431e096cf925
File:Merchant potion.png
6
637
1353
1055
2024-03-25T19:05:26Z
ToofleBerry
6
Transparency needed.
wikitext
text/x-wiki
{{Transparency}}
[[Category:Potion images]]
376dd24b9050af743ffdd1b06a93cbee2621c131
File:Miner potion.png
6
467
1354
1056
2024-03-25T19:05:34Z
ToofleBerry
6
Transparency needed.
wikitext
text/x-wiki
{{Transparency}}
[[Category:Potion images]]
f9a641b1e332f09765eddb6b339bbbdbf9680bab
File:Coif.png
6
635
1355
1063
2024-03-25T19:06:03Z
ToofleBerry
6
wikitext
text/x-wiki
{{Transparency}}
[[Category:Equipment images]]
97290063d01509323b496ae9a91a00bba30774f9
File:Crossbow.png
6
730
1356
2024-03-25T19:12:08Z
ToofleBerry
6
{{Transparency}}
Derivative from https://brightershores.com/screenshots/03_shade_combat.jpg.
wikitext
text/x-wiki
== Summary ==
{{Transparency}}
Derivative from https://brightershores.com/screenshots/03_shade_combat.jpg.
7789ea1a9c0a707a3a9d10e7abf942fd96802e01
1358
1356
2024-03-25T19:14:10Z
ToofleBerry
6
wikitext
text/x-wiki
== Summary ==
{{Transparency}}
Derivative from https://brightershores.com/screenshots/03_shade_combat.jpg.
[[Category:Equipment images]]
efd0c43b6fa2a7da4c70430cfcac5260efbf7140
Crossbow
0
192
1357
339
2024-03-25T19:13:54Z
ToofleBerry
6
wikitext
text/x-wiki
{{Unofficial name}}
{{Infobox Item
|name =
|image = Crossbow.png
|release =
|episode =
|profession = Combat
|value = 0
}}
'''Crossbows''' are a type of [[weapon]] in [[Brighter Shores]], typically utilised by the [[guardian]] class.
==References==
{{Reflist}}
[[Category:Equipment]]
f96b9209ee450d08e2bea0b31ab14e50e4e5e268
File:Mace.png
6
731
1359
2024-03-25T19:16:29Z
ToofleBerry
6
{{Transparency}}
Derivative from https://brightershores.com/screenshots/03_shade_combat.jpg.
[[Category:Equipment images]]
wikitext
text/x-wiki
== Summary ==
{{Transparency}}
Derivative from https://brightershores.com/screenshots/03_shade_combat.jpg.
[[Category:Equipment images]]
efd0c43b6fa2a7da4c70430cfcac5260efbf7140
File:Staff.png
6
732
1360
2024-03-25T19:16:59Z
ToofleBerry
6
{{Transparency}}
Derivative from https://brightershores.com/screenshots/03_shade_combat.jpg.
[[Category:Equipment images]]
wikitext
text/x-wiki
== Summary ==
{{Transparency}}
Derivative from https://brightershores.com/screenshots/03_shade_combat.jpg.
[[Category:Equipment images]]
efd0c43b6fa2a7da4c70430cfcac5260efbf7140
Staff
0
733
1361
2024-03-25T19:18:03Z
ToofleBerry
6
Created page with "{{Unofficial name}} {{Infobox Item |name = |image = Staff.png |release = |episode = |profession = Combat |value = }} A '''staff''' is a type of [[weapon]] in [[Brighter Shores]]. ==References== {{Reflist}} [[Category:Equipment]]"
wikitext
text/x-wiki
{{Unofficial name}}
{{Infobox Item
|name =
|image = Staff.png
|release =
|episode =
|profession = Combat
|value =
}}
A '''staff''' is a type of [[weapon]] in [[Brighter Shores]].
==References==
{{Reflist}}
[[Category:Equipment]]
8f1337ab30cd21cc85cad71fffd4d0c834aac6d2
1362
1361
2024-03-25T19:18:18Z
ToofleBerry
6
wikitext
text/x-wiki
{{Unofficial name}}
{{Infobox Item
|name =
|image = Staff.png
|release =
|episode =
|profession = Combat
|value =
}}
A '''staff''' is a type of [[weapon]] in [[Brighter Shores]]<ref>https://brightershores.com/screenshots/03_shade_combat.jpg</ref>.
==References==
{{Reflist}}
[[Category:Equipment]]
841f829cee7e092eac13efa2c79dfc757d4538c9
Mace
0
734
1363
2024-03-25T19:18:37Z
ToofleBerry
6
Created page with "{{Unofficial name}} {{Infobox Item |name = |image = Mace.png |release = |episode = |profession = Combat |value = }} A '''mace''' is a type of [[weapon]] in [[Brighter Shores]]<ref>https://brightershores.com/screenshots/03_shade_combat.jpg</ref>. ==References== {{Reflist}} [[Category:Equipment]]"
wikitext
text/x-wiki
{{Unofficial name}}
{{Infobox Item
|name =
|image = Mace.png
|release =
|episode =
|profession = Combat
|value =
}}
A '''mace''' is a type of [[weapon]] in [[Brighter Shores]]<ref>https://brightershores.com/screenshots/03_shade_combat.jpg</ref>.
==References==
{{Reflist}}
[[Category:Equipment]]
30b0a01a0bc292563628f5715595430388f5d1b0
1366
1363
2024-03-25T19:23:28Z
ToofleBerry
6
Added equipped image.
wikitext
text/x-wiki
{{Unofficial name}}
{{Infobox Item
|name =
|image = Mace.png
|release =
|episode =
|profession = Combat
|value =
}}
A '''mace''' is a type of [[weapon]] in [[Brighter Shores]]<ref>https://brightershores.com/screenshots/03_shade_combat.jpg</ref>.
[[File:Mace equipped.png|200px|left|A player with a mace equipped.]]
==References==
{{Reflist}}
[[Category:Equipment]]
3cd494f87d980daa1b27a011b0960f6a68b40024
File:Mace equipped.png
6
735
1364
2024-03-25T19:21:53Z
ToofleBerry
6
{{Transparency}}
Derivative from https://brightershores.com/screenshots/03_shade_combat.jpg.
[[Category:Worn equipment images]]
wikitext
text/x-wiki
== Summary ==
{{Transparency}}
Derivative from https://brightershores.com/screenshots/03_shade_combat.jpg.
[[Category:Worn equipment images]]
d407cc191956530c9acbfc207ca76c340e95d004
1365
1364
2024-03-25T19:22:17Z
ToofleBerry
6
ToofleBerry moved page [[File:Item mace equipped.png]] to [[File:Mace equipped.png]] without leaving a redirect
wikitext
text/x-wiki
== Summary ==
{{Transparency}}
Derivative from https://brightershores.com/screenshots/03_shade_combat.jpg.
[[Category:Worn equipment images]]
d407cc191956530c9acbfc207ca76c340e95d004
File:Profession alchemist.png
6
736
1367
2024-03-25T19:28:03Z
ToofleBerry
6
{{Transparency}}
Derivative from https://brightershores.com/screenshots/09_himatik_ruins.jpg.
[[Category:Profession icons]]
wikitext
text/x-wiki
== Summary ==
{{Transparency}}
Derivative from https://brightershores.com/screenshots/09_himatik_ruins.jpg.
[[Category:Profession icons]]
4a4019ac14eec4a5867530fce33e8536cd3b2b81
1368
1367
2024-03-25T19:28:11Z
ToofleBerry
6
wikitext
text/x-wiki
== Summary ==
Derivative from https://brightershores.com/screenshots/09_himatik_ruins.jpg.
[[Category:Profession icons]]
a065329f7d726072a0e3f5135ca44e6be4fac44e
Professions
0
56
1369
1187
2024-03-25T19:28:38Z
ToofleBerry
6
wikitext
text/x-wiki
'''Professions''' are skills that [[player]]s can train and utilise in [[Brighter Shores]]. Most professions can either be trained by the player actively playing the game, or passively while the game is closed.
As the player progresses through the game, more professions will become available for the player to learn. Players aren't limited to one profession at a time; they can utilise multiple at once.{{CiteGeneral|url=https://www.gamesradar.com/runescape-creator-answers-our-biggest-questions-about-his-new-mmo-brighter-shores-classes-professions-monetization-and-a-ttrpg-open-world/|title=RuneScape creator answers our biggest questions about his new MMO Brighter Shores: classes, professions, monetization, and a TTRPG open world|author=Austin Wood|date=23 March 2024|accessdate=23 March 2024|archiveurl=https://archive.is/AxMwI|archivedate=23 March 2024|name=griv}}
==Passive training==
Unlike other similar MMOs, players can continue to perform certain profession-related activities while logged out of the game.
==List of professions==
{| class="wikitable"
! colspan="2" | Name !! Uses
|-
| [[File:Profession fisher.png|30px|link=Fisher]] || [[Fisher]] || Catching various [[fish]]
|-
| [[File:Profession forager.png|30px|link=Forager]] || [[Forager]] || Gathering items
|-
| || [[Chef]] || Cooking [[food]] items
|-
| [[File:Woodcutter icon.png|30px|link=Woodcutter]] || [[Woodcutter]] || Chopping down [[tree]]s
|-
| || [[Miner]] || Mining [[mineral]]s
|-
| [[File:Alchemist icon.png|30px|link=Alchemist]] || [[Alchemist]] || Brewing [[potion]]s
|-
| || [[Stonemason]] ||
|-
| || [[Merchant]] ||
|-
| || [[Blacksmith]] ||
|}
==Gallery==
<gallery mode="packed" heights="160">
File:Professions preview 1.jpg
File:Professions preview 2.jpg
File:Professions preview 3.jpg
</gallery>
==References==
{{Reflist}}
{{Professions}}
{{Mechanics}}
538c2b73d8ba505513186c40d369e7ed487208cb
1370
1369
2024-03-25T19:28:51Z
ToofleBerry
6
wikitext
text/x-wiki
'''Professions''' are skills that [[player]]s can train and utilise in [[Brighter Shores]]. Most professions can either be trained by the player actively playing the game, or passively while the game is closed.
As the player progresses through the game, more professions will become available for the player to learn. Players aren't limited to one profession at a time; they can utilise multiple at once.{{CiteGeneral|url=https://www.gamesradar.com/runescape-creator-answers-our-biggest-questions-about-his-new-mmo-brighter-shores-classes-professions-monetization-and-a-ttrpg-open-world/|title=RuneScape creator answers our biggest questions about his new MMO Brighter Shores: classes, professions, monetization, and a TTRPG open world|author=Austin Wood|date=23 March 2024|accessdate=23 March 2024|archiveurl=https://archive.is/AxMwI|archivedate=23 March 2024|name=griv}}
==Passive training==
Unlike other similar MMOs, players can continue to perform certain profession-related activities while logged out of the game.
==List of professions==
{| class="wikitable"
! colspan="2" | Name !! Uses
|-
| [[File:Profession fisher.png|30px|link=Fisher]] || [[Fisher]] || Catching various [[fish]]
|-
| [[File:Profession forager.png|30px|link=Forager]] || [[Forager]] || Gathering items
|-
| || [[Chef]] || Cooking [[food]] items
|-
| [[File:Woodcutter icon.png|30px|link=Woodcutter]] || [[Woodcutter]] || Chopping down [[tree]]s
|-
| || [[Miner]] || Mining [[mineral]]s
|-
| [[File:Profession alchemist.png|30px|link=Alchemist]] || [[Alchemist]] || Brewing [[potion]]s
|-
| || [[Stonemason]] ||
|-
| || [[Merchant]] ||
|-
| || [[Blacksmith]] ||
|}
==Gallery==
<gallery mode="packed" heights="160">
File:Professions preview 1.jpg
File:Professions preview 2.jpg
File:Professions preview 3.jpg
</gallery>
==References==
{{Reflist}}
{{Professions}}
{{Mechanics}}
39be8206c6a6ef2a78d402d5d8fdf2469ccd5dea
File:Log.png
6
737
1372
2024-03-25T19:32:55Z
ToofleBerry
6
{{Transparency}}
Derivative from https://brightershores.com/screenshots/09_himatik_ruins.jpg.
[[Category:Item images]]
wikitext
text/x-wiki
== Summary ==
{{Transparency}}
Derivative from https://brightershores.com/screenshots/09_himatik_ruins.jpg.
[[Category:Item images]]
9539efc2f76d9c14eb57a0a46911745bb9583405
File:Log basket.png
6
738
1373
2024-03-25T19:33:19Z
ToofleBerry
6
{{Transparency}}
Derivative from https://brightershores.com/screenshots/09_himatik_ruins.jpg.
[[Category:Item images]]
wikitext
text/x-wiki
== Summary ==
{{Transparency}}
Derivative from https://brightershores.com/screenshots/09_himatik_ruins.jpg.
[[Category:Item images]]
9539efc2f76d9c14eb57a0a46911745bb9583405
File:Sword.png
6
739
1374
2024-03-25T19:33:49Z
ToofleBerry
6
{{Transparency}}
Derivative from https://brightershores.com/screenshots/09_himatik_ruins.jpg.
[[Category:Equipment images]]
wikitext
text/x-wiki
== Summary ==
{{Transparency}}
Derivative from https://brightershores.com/screenshots/09_himatik_ruins.jpg.
[[Category:Equipment images]]
d8f86345b82132b6d2bf82675e4f6d8b3c07f303
File:Iron platebody.png
6
740
1375
2024-03-25T19:34:08Z
ToofleBerry
6
{{Transparency}}
Derivative from https://brightershores.com/screenshots/09_himatik_ruins.jpg.
[[Category:Equipment images]]
wikitext
text/x-wiki
== Summary ==
{{Transparency}}
Derivative from https://brightershores.com/screenshots/09_himatik_ruins.jpg.
[[Category:Equipment images]]
d8f86345b82132b6d2bf82675e4f6d8b3c07f303
File:Iron legs.png
6
741
1376
2024-03-25T19:34:21Z
ToofleBerry
6
{{Transparency}}
Derivative from https://brightershores.com/screenshots/09_himatik_ruins.jpg.
[[Category:Equipment images]]
wikitext
text/x-wiki
== Summary ==
{{Transparency}}
Derivative from https://brightershores.com/screenshots/09_himatik_ruins.jpg.
[[Category:Equipment images]]
d8f86345b82132b6d2bf82675e4f6d8b3c07f303
File:Bronze legs.png
6
742
1377
2024-03-25T19:34:35Z
ToofleBerry
6
{{Transparency}}
Derivative from https://brightershores.com/screenshots/09_himatik_ruins.jpg.
[[Category:Equipment images]]
wikitext
text/x-wiki
== Summary ==
{{Transparency}}
Derivative from https://brightershores.com/screenshots/09_himatik_ruins.jpg.
[[Category:Equipment images]]
d8f86345b82132b6d2bf82675e4f6d8b3c07f303
Brighter Shores:Sandbox
4
743
1378
2024-03-25T19:34:40Z
InvalidCards
4
That was not good
wikitext
text/x-wiki
<!--DO NOT CHANGE--><noinclude>{{Sandboxheader}}</noinclude><!--DO NOT CHANGE-->
<!-------------------Please edit below this line, thank you-------------------->
1c7910d7437178736e747e02e118b03b4f7a4590
File:Shield.png
6
744
1379
2024-03-25T19:34:49Z
ToofleBerry
6
{{Transparency}}
Derivative from https://brightershores.com/screenshots/09_himatik_ruins.jpg.
[[Category:Equipment images]]
wikitext
text/x-wiki
== Summary ==
{{Transparency}}
Derivative from https://brightershores.com/screenshots/09_himatik_ruins.jpg.
[[Category:Equipment images]]
d8f86345b82132b6d2bf82675e4f6d8b3c07f303
File:Steel legs.png
6
745
1380
2024-03-25T19:35:05Z
ToofleBerry
6
{{Transparency}}
Derivative from https://brightershores.com/screenshots/09_himatik_ruins.jpg.
[[Category:Equipment images]]
wikitext
text/x-wiki
== Summary ==
{{Transparency}}
Derivative from https://brightershores.com/screenshots/09_himatik_ruins.jpg.
[[Category:Equipment images]]
d8f86345b82132b6d2bf82675e4f6d8b3c07f303
File:Skeleton platebody.png
6
746
1381
2024-03-25T19:35:20Z
ToofleBerry
6
{{Transparency}}
Derivative from https://brightershores.com/screenshots/09_himatik_ruins.jpg.
[[Category:Equipment images]]
wikitext
text/x-wiki
== Summary ==
{{Transparency}}
Derivative from https://brightershores.com/screenshots/09_himatik_ruins.jpg.
[[Category:Equipment images]]
d8f86345b82132b6d2bf82675e4f6d8b3c07f303
2021
0
747
1382
2024-03-25T19:54:32Z
ToofleBerry
6
Created page with "'''2021'''. * [[4 March]] - Work on the new graphics engine was completed.{{CiteTwitter|author=@AndrewCGower|url=https://twitter.com/AndrewCGower/status/1367436063388684289|date=4 March 2021|archiveurl=https://archive.is/MTzFC|archivedate=25 March 2024|quote=Phew! The new graphics engine I first started way back on 30-jun-2017 is *finally* done and live today! Now I can focus my full attention on new game. I am bad at estimating how long things take, but never imagined..."
wikitext
text/x-wiki
'''2021'''.
* [[4 March]] - Work on the new graphics engine was completed.{{CiteTwitter|author=@AndrewCGower|url=https://twitter.com/AndrewCGower/status/1367436063388684289|date=4 March 2021|archiveurl=https://archive.is/MTzFC|archivedate=25 March 2024|quote=Phew! The new graphics engine I first started way back on 30-jun-2017 is *finally* done and live today! Now I can focus my full attention on new game. I am bad at estimating how long things take, but never imagined it would take that long! Really happy with the result at least.}}.
==References==
<references/>
{{Timeline}}
18a01b5d5122e93ec65b66fb7c74b0f44571f536
2017
0
748
1383
2024-03-25T19:54:51Z
ToofleBerry
6
Created page with "'''2017'''. * [[30 June]] - Work on a new graphics engine was started.{{CiteTwitter|author=@AndrewCGower|url=https://twitter.com/AndrewCGower/status/1367436063388684289|date=4 March 2021|archiveurl=https://archive.is/MTzFC|archivedate=25 March 2024|quote=Phew! The new graphics engine I first started way back on 30-jun-2017 is *finally* done and live today! Now I can focus my full attention on new game. I am bad at estimating how long things take, but never imagined it w..."
wikitext
text/x-wiki
'''2017'''.
* [[30 June]] - Work on a new graphics engine was started.{{CiteTwitter|author=@AndrewCGower|url=https://twitter.com/AndrewCGower/status/1367436063388684289|date=4 March 2021|archiveurl=https://archive.is/MTzFC|archivedate=25 March 2024|quote=Phew! The new graphics engine I first started way back on 30-jun-2017 is *finally* done and live today! Now I can focus my full attention on new game. I am bad at estimating how long things take, but never imagined it would take that long! Really happy with the result at least.}}.
==References==
<references/>
{{Timeline}}
eecaae5b20311b7ba055ac1ab76d6a7ca1e916bd
1384
1383
2024-03-25T19:57:07Z
ToofleBerry
6
wikitext
text/x-wiki
'''2017'''.
* [[11 April]] - 3D support was added to [[Fenforge]]. {{CiteTwitter|author=@AndrewCGower|url=https://twitter.com/AndrewCGower/status/851827853859618817|date=11 April 2017|archiveurl=https://archive.is/0AECg|archivedate=25 March 2024|quote=I have finally started adding 3d support to my new game engine. Its taken about a month, but it can now load and render a model! woohoo!}}.
* [[30 June]] - Work on a new graphics engine was started.{{CiteTwitter|author=@AndrewCGower|url=https://twitter.com/AndrewCGower/status/1367436063388684289|date=4 March 2021|archiveurl=https://archive.is/MTzFC|archivedate=25 March 2024|quote=Phew! The new graphics engine I first started way back on 30-jun-2017 is *finally* done and live today! Now I can focus my full attention on new game. I am bad at estimating how long things take, but never imagined it would take that long! Really happy with the result at least.}}.
==References==
<references/>
{{Timeline}}
0466fa81e8b749929555a48bbcbf470afca2d134
2019
0
749
1385
2024-03-25T20:02:17Z
ToofleBerry
6
Created page with "'''2019'''. * Before [[12 May]] - The new graphics engine was 'done', and integration of the engine into [[Fenforge]] started.{{CiteTwitter|author=@AndrewCGower|url=https://twitter.com/AndrewCGower/status/1127683846089080834|date=12 May 2019|archiveurl=https://archive.is/nmXAN|archivedate=25 March 2024|quote=Progress update: still working on my new game engine full time (40+ hours a week). New graphics engine is ‘done’. We are now integrating it in to our programming..."
wikitext
text/x-wiki
'''2019'''.
* Before [[12 May]] - The new graphics engine was 'done', and integration of the engine into [[Fenforge]] started.{{CiteTwitter|author=@AndrewCGower|url=https://twitter.com/AndrewCGower/status/1127683846089080834|date=12 May 2019|archiveurl=https://archive.is/nmXAN|archivedate=25 March 2024|quote=Progress update: still working on my new game engine full time (40+ hours a week). New graphics engine is ‘done’. We are now integrating it in to our programming language, which involves making some pretty big upgrades to the language to support it. Taking time to get it right!}}.
==References==
<references/>
{{Timeline}}
397e720e596dba815200ca3becb67aba3283c214
Factions
0
72
1386
969
2024-03-25T20:59:07Z
Reed
53
/* Factions */
wikitext
text/x-wiki
[[File:Factions.jpg|thumb|right|Examples of the three factions.]]
{{Quote2|You will discover powerful magic sources and become one of the legendary classes of old: Cryoknight, Guardian or Hammermage. Which is fortunate, because something is corrupting the deepest reaches of the nearby Hopeforest, and only through the strength of your new-found powers will you be able to deal with it.|Official website{{CiteGeneral|url=https://brightershores.com|title=Official Brighter Shores website|date=23 March 2024|accessdate=23 March 2024|archiveurl=https://archive.is/BaZ8w|archivedate=23 March 2024}}}}
'''Factions''' in [[Brighter Shores]] allow the [[player]] to specialise in using a specific [[combat]] style, though all factions have access to melee, range and magic.
==Factions==
* The [[Cryoknight]] ([[File:Cryoknight icon.svg|18px]]) faction is focused on melee combat, using weapons like [[sword]]s alongside a [[shield]].
* [[Guardian]]s ([[File:Guardian icon.svg|18px]]) use ranged combat, preferring to wield weapons like [[crossbow]]s.
* The [[Hammermage]] ([[File:Hammermage icon.svg|18px]]) faction fights using a mix of melee and magic.
==References==
{{Reflist}}
{{Factions}}
{{Mechanics}}
28ab1de59a46edc04c331802d6fb0afe6a816b8c
1390
1386
2024-03-25T21:17:39Z
Reed
53
wikitext
text/x-wiki
[[File:Factions.jpg|thumb|right|Examples of the three factions.]]
{{Quote2|You will discover powerful magic sources and become one of the legendary classes of old: Cryoknight, Guardian or Hammermage. Which is fortunate, because something is corrupting the deepest reaches of the nearby Hopeforest, and only through the strength of your new-found powers will you be able to deal with it.|Official website{{CiteGeneral|url=https://brightershores.com|title=Official Brighter Shores website|date=23 March 2024|accessdate=23 March 2024|archiveurl=https://archive.is/BaZ8w|archivedate=23 March 2024}}}}
'''Factions''' in [[Brighter Shores]] allow the [[player]] to specialise in using a specific [[combat]] style, though all factions have access to [[melee]], [[range]] and [[magic]].
==Factions==
* The [[Cryoknight]] ([[File:Cryoknight icon.svg|18px]]) faction is focused on melee combat, using weapons like [[sword]]s alongside a [[shield]].
* [[Guardian]]s ([[File:Guardian icon.svg|18px]]) use ranged combat, preferring to wield weapons like [[crossbow]]s.
* The [[Hammermage]] ([[File:Hammermage icon.svg|18px]]) faction fights using a mix of melee and magic.
==References==
{{Reflist}}
{{Factions}}
{{Mechanics}}
4397a611f3d06215e20291bf5bd1152a2103cc9a
1392
1390
2024-03-25T21:28:35Z
Reed
53
wikitext
text/x-wiki
[[File:Factions.jpg|thumb|right|Examples of the three factions.]]
{{Quote2|You will discover powerful magic sources and become one of the legendary classes of old: Cryoknight, Guardian or Hammermage. Which is fortunate, because something is corrupting the deepest reaches of the nearby Hopeforest, and only through the strength of your new-found powers will you be able to deal with it.|Official website{{CiteGeneral|url=https://brightershores.com|title=Official Brighter Shores website|date=23 March 2024|accessdate=23 March 2024|archiveurl=https://archive.is/BaZ8w|archivedate=23 March 2024}}}}
'''Factions''' in [[Brighter Shores]] allow the [[player]] to specialise in using a specific [[combat]] style, though all factions have access to [[melee]], [[ranged]] and [[magic]].
==Factions==
* The [[Cryoknight]] ([[File:Cryoknight icon.svg|18px]]) faction is focused on melee combat, using weapons like [[sword]]s alongside a [[shield]].
* [[Guardian]]s ([[File:Guardian icon.svg|18px]]) use ranged combat, preferring to wield weapons like [[crossbow]]s.
* The [[Hammermage]] ([[File:Hammermage icon.svg|18px]]) faction fights using a mix of melee and magic.
==References==
{{Reflist}}
{{Factions}}
{{Mechanics}}
93d3251888c94829018f747351b765467e714673
1393
1392
2024-03-25T21:43:51Z
Reed
53
I did want you to have to make a decision. You don't have to make it at the very beginning, because personally I hate it when you start playing a game and the very first thing they ask you is an absolutely critical decision, when you have absolutely no idea how you're going to make it. Here you start off as a guard and you actually make your way into the game before you have to choose your character class.
wikitext
text/x-wiki
[[File:Factions.jpg|thumb|right|Examples of the three factions.]]
{{Quote2|You will discover powerful magic sources and become one of the legendary classes of old: Cryoknight, Guardian or Hammermage. Which is fortunate, because something is corrupting the deepest reaches of the nearby Hopeforest, and only through the strength of your new-found powers will you be able to deal with it.|Official website{{CiteGeneral|url=https://brightershores.com|title=Official Brighter Shores website|date=23 March 2024|accessdate=23 March 2024|archiveurl=https://archive.is/BaZ8w|archivedate=23 March 2024}}}}
'''Factions''' in [[Brighter Shores]] allow the [[player]] to specialise in using a specific [[combat]] style, though all factions have access to [[melee]], [[ranged]] and [[magic]]. Players start off as a guard with the option to choose between being a [[Cryoknight]], [[Guardian]] or [[Hammermage]].
==Factions==
* The [[Cryoknight]] ([[File:Cryoknight icon.svg|18px]]) faction is focused on melee combat, using weapons like [[sword]]s alongside a [[shield]].
* [[Guardian]]s ([[File:Guardian icon.svg|18px]]) use ranged combat, preferring to wield weapons like [[crossbow]]s.
* The [[Hammermage]] ([[File:Hammermage icon.svg|18px]]) faction fights using a mix of melee and magic.
==References==
{{Reflist}}
{{Factions}}
{{Mechanics}}
885d6edf897cadc1b67d1cc656d7737eebd5eeb4
Cryoknight
0
69
1387
1285
2024-03-25T21:00:15Z
Reed
53
wikitext
text/x-wiki
[[File:Cryoknight icon detail.png|left|100px]]
'''Cryoknight''' ([[File:Cryoknight icon.svg|18px]]) is a [[faction]] which specialises in using melee weapons in [[combat]] and has access to ice magic.
{{Classes}}
279dc7a1ca0785efe6e15024b9e75e7da9cf68ca
Guardian
0
70
1388
1286
2024-03-25T21:00:39Z
Reed
53
wikitext
text/x-wiki
[[File:Guardian icon detail.png|100px|left]]
'''Guardian''' ([[File:Guardian icon.svg|18px]]) is a [[faction]] which specialises in using ranged weapons in [[combat]] and has access to nature magic.
{{Classes}}
3e9acfab4a366186ec6087cdf57d99f4f5f886b2
Hammermage
0
71
1389
1288
2024-03-25T21:00:58Z
Reed
53
wikitext
text/x-wiki
[[File:Hammermage icon detail.png|100px|left]]
'''Hammermage''' ([[File:Hammermage icon.svg|18px]]) is a [[faction]] which specialises in using magic weapons in [[combat]] and has access to storm magic.
{{Classes}}
b41235bdacd318eaf7aa9a35715341ef9919d863
Combat
0
191
1391
1247
2024-03-25T21:27:11Z
Reed
53
Andrew Gower - 'And all three characters can do magic. That's one thing I should probably mention. So it's not like one is magic and one isn't magic; they've got different types of magic. So the Cryoknights have got ice magic, the Guardians have got nature magic, and the Hammer Mages have got sort of storm magic. They can all do range, they can all do melee.'
wikitext
text/x-wiki
[[File:Equipment.jpg|thumb|right|A preview of player in combat.]]
[[File:Combat.jpg|thumb|right|Another preview of player in combat.]]
[[File:Combat actions interface.png|thumb|The combat actions interface.]]
'''Combat''' is a mechanic in [[Brighter Shores]] in which several [[player]]s or [[monsters]] fight. All [[factions]] have access to [[melee]] and [[ranged]] combat styles, with each class having a unique type of [[magic]].
[[Special attacks]] are a feature of the combat system.
{{Mechanics}}
df5552720a8cbf8fed099392649702e7d00b1e56
Module:Infobox
828
102
1394
1297
2024-03-25T22:05:05Z
Gau Cho
5
WIP - everything except categories is done, but module is untested
Scribunto
text/plain
--[=[
-- For documentation, see [[Module:Infobox/doc]]
--]=]
-- <nowiki>
-- Edit button for unknown params
local editbutton = require('Module:Edit button')
local edit = editbutton("'''?''' (edit)")
local pagename = mw.title.getCurrentTitle().fullText
local Infobox = {}
Infobox.__index = Infobox
--[[
Infobox class
-- infobox_name: the name of the infobox
-- args : parameters from frame to pass through
-- Special args: version, default_version
-- Sets a meta table and creates a <div> tag wrapper
-- other fields are initialized in other functions
--]]
function Infobox.new(args, config)
local obj = setmetatable({
args_raw = args, -- parameters (uncleaned)
args_parsed = {}, -- parsed parameters
args_smw = {}, -- parameters parsed for smw
infobox_name = nil, -- template name
param_names = {}, -- ordered param list
params = {}, -- param definitions
max_buttons = 6, -- If there are more buttons than the max, the buttons will become a dropdown menu
default_version = 1, -- default version to populate the infobox
versions = nil, -- number of versions
version_names = {'INFOBOX_ERROR'}, -- title of each version (for selection and SMW); version_name[0] should not be used (base index should be 1)
rtable = nil, -- infobox table to return at the end
switch_datatable = nil, -- datatable for javascript for switch infoboxes
errors = {}, -- list of errors
},
Infobox)
obj:config(config)
obj:parse_versions()
obj:create()
return obj
end
function Infobox:config(...)
for k, v in pairs(...) do
if k == 'infobox_name' then
self.infobox_name = mw.ustring.gsub(v, '%s', '_')
elseif k == 'max_buttons' then
self.max_buttons = tonumber(v)
end
end
if self.infobox_name == nil then
table.insert(self.errors, 'infobox_name needs to be defined in Infobox.new()\'s config!')
end
return self
end
--[[
Function for defining parameters
-- name : parameter name
-- func : function to define param, defaults to looking at blanks
DO NOT DEFINE VERSION HERE
USE :maxVersion()
Can be used any number of times for efficient definition
--]]
function Infobox:define_params(...)
for _, v in ipairs(...) do
-- For every parameter, store its corresponding function to self.params
if v.name then
local param = {}
-- Copy the function
if type(v.func) == 'function' or type(v.func) == 'table' then
param.func = v.func
end
-- If smw_property is defined, then use smw_func, or default to func if it is not defined
if v.smw_property then
param.smw_property = v.smw_property
if type(v.smw_func) == 'function' or type(v.smw_func) == 'table' then
param.smw_func = v.smw_func
else
param.smw_func = param.func
end
end
self.params[v.name] = param
table.insert(self.param_names, v.name)
end
end
self:parse_params()
--self:parse_categories()
return self
end
--[[
Counts the number of versions in the infobox, and populates version_names
--]]
function Infobox:parse_versions()
-- Count the versions
local i = 1
while self.args_raw['version'..i] do
table.insert(self.version_names, self.args_raw['version'..i])
i = i + 1
end
self.versions = i - 1
-- Handle the no version case - might have a custom version_name
if self.versions == 0 then
table.insert(self.version_names, self.args_raw['version'] or 'DEFAULT')
end
if self.versions == 1 then
table.insert(self.errors, 'There should be multiple versions or no versions. If defining a custom version name for a single entry, use "version=Name" instead of "version1=Name".')
self.versions = 0
end
if self.args_raw['default_version'] then
self.default_version = tonumber(self.args_raw['default_version'])
if self.default_version > self.versions then -- Make sure the default version exists
self.default_version = 1
end
end
end
-- Value is not defined if "action=edit" exists in string, otherwise
-- value is defined if not nil and non-empty string
function Infobox.is_value_defined(value)
if value == nil then
return false
end
if type(value) ~= 'string' then
return true
end
if value:find('action=edit') then
return false
end
if value:find('%S') then
return true
end
return false
end
--[[
Checks to see if a param is defined.
Returns 0 if param is never defined. Returns 1 if param is defined for some versions. Returns 2 if param is defined for all versions.
-- param: a table generated from Infobox:param(), Infobox:raw_param() or Infobox:smw_param()
]]
function Infobox:is_param_defined(param)
local undefined = 0
local defined = 0
for version = 1, self.versions do
local value = self:get_param(param, version)
if self.is_value_defined(value) then
defined = 1
else
undefined = 1
end
end
return 1 + defined - undefined
end
--[[
Fetches a param value. If the value is nil, will return the default value instead
-- arg: a table generated from Infobox:param(), Infobox:raw_param() or Infobox:smw_param(), or else
-- version: '' for default, or else a number
--]]
function Infobox:get_param(arg, version)
if version == 0 then
version = ''
end
if type(arg) == 'table' then
local value = self[arg.property][arg.param_name..version]
if value == nil then -- Try to get default value if it exists
value = self[arg.property][arg.param_name]
end
return value
end
-- Other (int, string)
return arg
end
--[[
Calculates the parsed value of a param
-- param_name : string, name of the param
-- version : 0/'' for default, or else a number
-- smw : boolean, whether to use the smw function or default function
--]]
function Infobox:parse_param(param_name, version, smw)
if version == 0 then
version = ''
end
-- use func or smw_func depending on smw argument
local param = self.params[param_name]
local func = smw and param.smw_func or param.func
-- call functions by passing the param_name
if type(func) == 'function' then
return func(self:get_param(self.raw_param(param_name), version))
-- call tables by grabbing the function and reading the param arguments
elseif type(func) == 'table' then
local func_name = func.name
local func_params = func.params
local func_fetched_params = {}
for _, func_param in ipairs(func_params) do
table.insert(func_fetched_params, self:get_param(func_param, version))
end
return func_name(unpack(func_fetched_params))
else
table.insert(self.errors, 'Invalid param definition for '..param_name)
end
end
function Infobox:parse_params()
-- Calculate the param value for all params and all versions
for _, param_name in ipairs(self.param_names) do
for version=0, self.versions do
if version == 0 then
version = '' -- default version
end
-- Only get the parsed value if the raw value is defined
if self.args_raw[param_name..version] then
self.args_parsed[param_name..version] = self:parse_param(param_name, version, false)
-- Only get the smw value if smw_property is defined
if self.params[param_name].smw_property then
self.args_smw[param_name..version] = self:parse_param(param_name, version, true)
end
end
end
end
end
function Infobox:store_smw()
-- Abort if not in mainspace
if mw.title.getCurrentTitle().namespace ~= 0 then
return false
end
-- Store a subobject for each version
for version=1, self.versions do
-- Reminder - subobject name cannot have a . in the first 5 characters
local subobject_name = 'Infobox.'..pagename..'#'..self.version_names[version]
local subobject = {}
-- Store each param that has smw_property defined and has a defined value
for _, param_name in ipairs(self.param_names) do
local property = self.params[param_name].smw_property
if property then
value = self:get_param(self.smw_param(param_name), version)
if self.is_value_defined(value) then
subobject[property] = value
end
end
end
local result = mw.smw.subobject(subobject, subobject_name)
if result ~= true then
table.insert(self.errors, 'SMW error: '..result.error)
end
end
return true
end
function Infobox.param(param_name)
param = {
property = 'args_parsed',
param_name = param_name,
}
return param
end
function Infobox.raw_param(param_name)
param = {
property = 'args_raw',
param_name = param_name,
}
return param
end
function Infobox.smw_param(param_name)
param = {
property = 'args_smw',
param_name = param_name,
}
return param
end
-----------
-- Table --
-----------
function Infobox:buttons()
if self.versions < 2 then
return
end
local buttons = self.rtable:tag('caption')
:tag('div')
:addClass('infobox-buttons')
:attr('data-default-version', self.default_version)
-- Dropdown list instead of buttons
if self.versions > self.max_buttons then
buttons:addClass('infobox-buttons-select')
end
for version=1, self.versions do
buttons:tag('span')
:attr('data-switch-index', version)
:attr('data-switch-anchor', '#'..self.version_names[version])
:addClass('button')
:wikitext(self.version_names[version])
end
end
function Infobox:create()
-- Create infobox table
self.rtable = mw.html.create('table')
:addClass('plainlinks')
:addClass('infobox')
:addClass('infobox-'..self.infobox_name)
-- Add necessary class if switch infobox
if self.versions > 1 then
self.rtable:addClass('infobox-switch')
self.switch_datatable = mw.html.create('div')
:addClass('infobox-switch-resources')
:addClass('infobox-resources-'..self.infobox_name)
:addClass('hidden')
self.switch_datatable:tag('span'):wikitext('Versions: '..self.versions)
self.switch_datatable:tag('span'):wikitext('Default version: '..self.default_version)
self:buttons()
end
return self
end
function Infobox:add_switch_data(content)
-- Only check for params if there are multiple versions
if self.versions <= 1 then
return false
end
if type(content) ~= 'table' then
return false
end
-- Only if the data varies between the different versions
local first_value = self:get_param(cell_params.content, 1)
local all_same = true
for version=2, self.versions do
if first_value ~= self:get_param(cell_params.content, version) then
all_same = false
break
end
end
if all_same then
return false
end
-- Let's build the datatable
-- Prepend raw__ or smw$__ if not a parsed argument
local name = content.param_name
if content.property == 'args_raw' then
name = 'raw__' + name
end
if content.property == 'args_smw' then
name = 'smw__' + name
end
data_param = self.switch_datatable:tag('span'):attr('data-attr-param', name)
-- Add each version to the datatable
for version=1, self.versions do
text = self:get_param(content, version)
if text == nil then
text = edit
end
data_param:tag('span'):attr('data-attr-index', version):wikitext(text)
end
-- return the 'data-attr-param' name
return name
end
--[[
Add parameters functions
All parameters should be tables
The first parameter defines the type of cell to create
-- tag = 'th' or 'td'
The second parameter defines what is inside the tag
-- content = string or Infobox.param
Additional named parameters can be used to add any styling or attributes
-- attr : mw.html:attr({ arg1 = '1', ... })
-- css : mw.html:css({ arg1 = '1', ...)
-- class : mw.html:addClass('arg') (common class: infobox-subheader)
---- class also supports a table of values, even though mw.html:addClass() does not
-- rowspan : mw.html:attr('rowspan',arg)
-- colspan : mw.html:attr('colspan',arg)
-- title : mw.html:attr('title',arg)
Example:
ipsobox:addRow( { 'th' , 'Header', title = 'Title' },
{ 'argh', 'arg1', class = 'parameter' } })
produces:
<tr><th title="Title">Header</th><th class="parameter">args.arg1</th></tr>
adding it to the infobox table of ipsobox
Cells defined as 'argh' and 'argd' will automatically have data-attr-param="" added, and defined as the passed argument if the infobox in creation is defined as a switch infobox
The row itself may be modified with metadata using the named index "addClass'
-- addClass : mw.html:addClass('arg')
-- this function currently only supports a single string
--]]
function Infobox:add_row(...)
-- New row to add
local args = ...
local _row = self.rtable:tag('tr')
-- For each member of tags
for _, v in ipairs(args) do
local _cell = _row:tag(v.tag)
-- mw.html:attr() and mw.html:css() both accept table input
-- colspan, rowspan, title will be quick ways to access attr
-- these functions also do all the necessary work
if v.attr then
_cell:attr(v.attr)
end
if v.colspan then
_cell:attr('colspan',v.colspan)
end
if v.rowspan then
_cell:attr('rowspan',v.rowspan)
end
if v.title then
_cell:attr('title',v.title)
end
if v.css then
_cell:css(v.css)
end
-- if class is a string, it can be added directly
-- if a table, add every value
-- mw.html:addClass() doesn't function with tables
-- so iterate over the class names here and add them individually
if v.class then
if type(v.class) == 'string' then
_cell:addClass(v.class)
elseif type(v.class) == 'table' then
for _, w in ipairs(v.class) do
_cell:addClass(w)
end
end
end
local content = Infobox:get_param(v.content, self.default_version)
if content == nil then
content = edit
end
_cell:wikitext(content)
-- Add the switch data if multiple values exist
data_attr_param = self:add_switch_data(v.content)
if data_attr_param then
_cell:attr('data-attr-param', data_attr_param)
end
end
-- allow classes to be defined on the whole row
if args.addClass then
_row:addClass(args.addClass)
end
return self
end
--[[
-- adds a blank row of padding spanning the given number of columns
--]]
function Infobox:pad(colspan, class)
local tr = self:tag('tr')
:tag('td'):attr('colspan', colspan or 1):addClass('infobox-padding')
if class then
tr:addClass(class)
end
return self
end
-- addClass
function Infobox:addClass(arg)
self.rtable:addClass(arg)
return self
end
-- Override tostring
function Infobox:tostring()
error_text = ''
if #self.errors > 0 then
for _, v in ipairs(self.errors) do
error_text = error_text..'<span class="mw-message-box-error">'..v..'</span>'
end
end
return tostring(self.rtable) .. tostring(self.switch_datatable) .. tostring(error_text)
end
function Infobox:dump()
mw.log(mw.dumpObject(self))
mw.log(tostring(self))
end
return Infobox
3701cede86db40d56bd173a17a28884cfff09786
1395
1394
2024-03-26T02:22:02Z
Gau Cho
5
Fix tabs
Scribunto
text/plain
--[=[
-- For documentation, see [[Module:Infobox/doc]]
--]=]
-- <nowiki>
-- Edit button for unknown params
local editbutton = require('Module:Edit button')
local edit = editbutton("'''?''' (edit)")
local pagename = mw.title.getCurrentTitle().fullText
local Infobox = {}
Infobox.__index = Infobox
--[[
Infobox class
-- infobox_name: the name of the infobox
-- args : parameters from frame to pass through
-- Special args: version, default_version
-- Sets a meta table and creates a <div> tag wrapper
-- other fields are initialized in other functions
--]]
function Infobox.new(config, params, args)
local obj = setmetatable({
args_raw = args, -- parameters (uncleaned)
args_parsed = {}, -- parsed parameters
args_smw = {}, -- parameters parsed for smw
infobox_name = nil, -- template name
param_names = {}, -- ordered param list
params = {}, -- param definitions
max_buttons = 6, -- If there are more buttons than the max, the buttons will become a dropdown menu
default_version = 1, -- default version to populate the infobox
versions = nil, -- number of versions
version_names = {'INFOBOX_ERROR'}, -- title of each version (for selection and SMW); version_name[0] should not be used (base index should be 1)
rtable = nil, -- infobox table to return at the end
switch_datatable = nil, -- datatable for javascript for switch infoboxes
errors = {}, -- list of errors
},
Infobox)
obj:config(config)
obj:parse_versions()
obj:create()
obj:define_params(params)
return obj
end
function Infobox:config(...)
for k, v in pairs(...) do
if k == 'infobox_name' then
self.infobox_name = mw.ustring.gsub(v, '%s', '_')
elseif k == 'max_buttons' then
self.max_buttons = tonumber(v)
end
end
if self.infobox_name == nil then
table.insert(self.errors, 'infobox_name needs to be defined in Infobox.new()\'s config!')
end
return self
end
--[[
Function for defining parameters
-- name : parameter name
-- func : function to define param, defaults to looking at blanks
DO NOT DEFINE VERSION HERE
USE :maxVersion()
Can be used any number of times for efficient definition
--]]
function Infobox:define_params(...)
for _, v in ipairs(...) do
-- For every parameter, store its corresponding function to self.params
if v.name then
local param = {}
-- Copy the function
if type(v.func) == 'function' or type(v.func) == 'table' then
param.func = v.func
end
-- If smw_property is defined, then use smw_func, or default to func if it is not defined
if v.smw_property then
param.smw_property = v.smw_property
if type(v.smw_func) == 'function' or type(v.smw_func) == 'table' then
param.smw_func = v.smw_func
else
param.smw_func = param.func
end
end
self.params[v.name] = param
table.insert(self.param_names, v.name)
end
end
self:parse_params()
--self:parse_categories()
return self
end
--[[
Counts the number of versions in the infobox, and populates version_names
--]]
function Infobox:parse_versions()
-- Count the versions
local i = 1
while self.args_raw['version'..i] do
table.insert(self.version_names, self.args_raw['version'..i])
i = i + 1
end
self.versions = i - 1
-- Handle the no version case - might have a custom version_name
if self.versions == 0 then
table.insert(self.version_names, self.args_raw['version'] or 'DEFAULT')
end
if self.versions == 1 then
table.insert(self.errors, 'There should be multiple versions or no versions. If defining a custom version name for a single entry, use "version=Name" instead of "version1=Name".')
self.versions = 0
end
if self.args_raw['default_version'] then
self.default_version = tonumber(self.args_raw['default_version'])
if self.default_version > self.versions then -- Make sure the default version exists
self.default_version = 1
end
end
end
-- Value is not defined if "action=edit" exists in string, otherwise
-- value is defined if not nil and non-empty string
function Infobox.is_value_defined(value)
if value == nil then
return false
end
if type(value) ~= 'string' then
return true
end
if value:find('action=edit') then
return false
end
if value:find('%S') then
return true
end
return false
end
--[[
Checks to see if a param is defined.
Returns 0 if param is never defined. Returns 1 if param is defined for some versions. Returns 2 if param is defined for all versions.
-- param: a table generated from Infobox:param(), Infobox:raw_param() or Infobox:smw_param()
]]
function Infobox:is_param_defined(param)
local undefined = 0
local defined = 0
for version = 1, self.versions do
local value = self:get_param(param, version)
if self.is_value_defined(value) then
defined = 1
else
undefined = 1
end
end
return 1 + defined - undefined
end
--[[
Fetches a param value. If the value is nil, will return the default value instead
-- arg: a table generated from Infobox:param(), Infobox:raw_param() or Infobox:smw_param(), or else
-- version: '' for default, or else a number
--]]
function Infobox:get_param(arg, version)
if version == 0 then
version = ''
end
if type(arg) == 'table' then
local value = self[arg.property][arg.param_name..version]
if value == nil then -- Try to get default value if it exists
value = self[arg.property][arg.param_name]
end
return value
end
-- Other (int, string)
return arg
end
--[[
Calculates the parsed value of a param
-- param_name : string, name of the param
-- version : 0/'' for default, or else a number
-- smw : boolean, whether to use the smw function or default function
--]]
function Infobox:parse_param(param_name, version, smw)
if version == 0 then
version = ''
end
-- use func or smw_func depending on smw argument
local param = self.params[param_name]
local func = smw and param.smw_func or param.func
-- call functions by passing the param_name
if type(func) == 'function' then
return func(self:get_param(self.raw_param(param_name), version))
-- call tables by grabbing the function and reading the param arguments
elseif type(func) == 'table' then
local func_name = func.name
local func_params = func.params
local func_fetched_params = {}
for _, func_param in ipairs(func_params) do
table.insert(func_fetched_params, self:get_param(func_param, version))
end
return func_name(unpack(func_fetched_params))
else
table.insert(self.errors, 'Invalid param definition for '..param_name)
end
end
function Infobox:parse_params()
-- Calculate the param value for all params and all versions
for _, param_name in ipairs(self.param_names) do
for version=0, self.versions do
if version == 0 then
version = '' -- default version
end
-- Only get the parsed value if the raw value is defined
if self.args_raw[param_name..version] then
self.args_parsed[param_name..version] = self:parse_param(param_name, version, false)
-- Only get the smw value if smw_property is defined
if self.params[param_name].smw_property then
self.args_smw[param_name..version] = self:parse_param(param_name, version, true)
end
end
end
end
end
function Infobox:store_smw()
-- Abort if not in mainspace
if mw.title.getCurrentTitle().namespace ~= 0 then
return false
end
-- Store a subobject for each version
for version=1, self.versions do
-- Reminder - subobject name cannot have a . in the first 5 characters
local subobject_name = 'Infobox.'..pagename..'#'..self.version_names[version]
local subobject = {}
-- Store each param that has smw_property defined and has a defined value
for _, param_name in ipairs(self.param_names) do
local property = self.params[param_name].smw_property
if property then
value = self:get_param(self.smw_param(param_name), version)
if self.is_value_defined(value) then
subobject[property] = value
end
end
end
local result = mw.smw.subobject(subobject, subobject_name)
if result ~= true then
table.insert(self.errors, 'SMW error: '..result.error)
end
end
return true
end
function Infobox.param(param_name)
param = {
property = 'args_parsed',
param_name = param_name,
}
return param
end
function Infobox.raw_param(param_name)
param = {
property = 'args_raw',
param_name = param_name,
}
return param
end
function Infobox.smw_param(param_name)
param = {
property = 'args_smw',
param_name = param_name,
}
return param
end
-----------
-- Table --
-----------
function Infobox:buttons()
if self.versions < 2 then
return
end
local buttons = self.rtable:tag('caption')
:tag('div')
:addClass('infobox-buttons')
:attr('data-default-version', self.default_version)
-- Dropdown list instead of buttons
if self.versions > self.max_buttons then
buttons:addClass('infobox-buttons-select')
end
for version=1, self.versions do
buttons:tag('span')
:attr('data-switch-index', version)
:attr('data-switch-anchor', '#'..self.version_names[version])
:addClass('button')
:wikitext(self.version_names[version])
end
end
function Infobox:create()
-- Create infobox table
self.rtable = mw.html.create('table')
:addClass('plainlinks')
:addClass('infobox')
:addClass('infobox-'..self.infobox_name)
-- Add necessary class if switch infobox
if self.versions > 1 then
self.rtable:addClass('infobox-switch')
self.switch_datatable = mw.html.create('div')
:addClass('infobox-switch-resources')
:addClass('infobox-resources-'..self.infobox_name)
:addClass('hidden')
self.switch_datatable:tag('span'):wikitext('Versions: '..self.versions)
self.switch_datatable:tag('span'):wikitext('Default version: '..self.default_version)
self:buttons()
end
return self
end
function Infobox:add_switch_data(content)
-- Only check for params if there are multiple versions
if self.versions <= 1 then
return false
end
if type(content) ~= 'table' then
return false
end
-- Only if the data varies between the different versions
local first_value = self:get_param(cell_params.content, 1)
local all_same = true
for version=2, self.versions do
if first_value ~= self:get_param(cell_params.content, version) then
all_same = false
break
end
end
if all_same then
return false
end
-- Let's build the datatable
-- Prepend raw__ or smw$__ if not a parsed argument
local name = content.param_name
if content.property == 'args_raw' then
name = 'raw__' + name
end
if content.property == 'args_smw' then
name = 'smw__' + name
end
data_param = self.switch_datatable:tag('span'):attr('data-attr-param', name)
-- Add each version to the datatable
for version=1, self.versions do
text = self:get_param(content, version)
if text == nil then
text = edit
end
data_param:tag('span'):attr('data-attr-index', version):wikitext(text)
end
-- return the 'data-attr-param' name
return name
end
--[[
Add parameters functions
All parameters should be tables
The first parameter defines the type of cell to create
-- tag = 'th' or 'td'
The second parameter defines what is inside the tag
-- content = string or Infobox.param
Additional named parameters can be used to add any styling or attributes
-- attr : mw.html:attr({ arg1 = '1', ... })
-- css : mw.html:css({ arg1 = '1', ...)
-- class : mw.html:addClass('arg') (common class: infobox-subheader)
---- class also supports a table of values, even though mw.html:addClass() does not
-- rowspan : mw.html:attr('rowspan',arg)
-- colspan : mw.html:attr('colspan',arg)
-- title : mw.html:attr('title',arg)
Example:
ipsobox:addRow( { 'th' , 'Header', title = 'Title' },
{ 'argh', 'arg1', class = 'parameter' } })
produces:
<tr><th title="Title">Header</th><th class="parameter">args.arg1</th></tr>
adding it to the infobox table of ipsobox
Cells defined as 'argh' and 'argd' will automatically have data-attr-param="" added, and defined as the passed argument if the infobox in creation is defined as a switch infobox
The row itself may be modified with metadata using the named index "addClass'
-- addClass : mw.html:addClass('arg')
-- this function currently only supports a single string
--]]
function Infobox:add_row(...)
-- New row to add
local args = ...
local _row = self.rtable:tag('tr')
-- For each member of tags
for _, v in ipairs(args) do
local _cell = _row:tag(v.tag)
-- mw.html:attr() and mw.html:css() both accept table input
-- colspan, rowspan, title will be quick ways to access attr
-- these functions also do all the necessary work
if v.attr then
_cell:attr(v.attr)
end
if v.colspan then
_cell:attr('colspan',v.colspan)
end
if v.rowspan then
_cell:attr('rowspan',v.rowspan)
end
if v.title then
_cell:attr('title',v.title)
end
if v.css then
_cell:css(v.css)
end
-- if class is a string, it can be added directly
-- if a table, add every value
-- mw.html:addClass() doesn't function with tables
-- so iterate over the class names here and add them individually
if v.class then
if type(v.class) == 'string' then
_cell:addClass(v.class)
elseif type(v.class) == 'table' then
for _, w in ipairs(v.class) do
_cell:addClass(w)
end
end
end
local content = Infobox:get_param(v.content, self.default_version)
if content == nil then
content = edit
end
_cell:wikitext(content)
-- Add the switch data if multiple values exist
data_attr_param = self:add_switch_data(v.content)
if data_attr_param then
_cell:attr('data-attr-param', data_attr_param)
end
end
-- allow classes to be defined on the whole row
if args.addClass then
_row:addClass(args.addClass)
end
return self
end
--[[
-- adds a blank row of padding spanning the given number of columns
--]]
function Infobox:pad(colspan, class)
local tr = self:tag('tr')
:tag('td'):attr('colspan', colspan or 1):addClass('infobox-padding')
if class then
tr:addClass(class)
end
return self
end
-- addClass
function Infobox:addClass(arg)
self.rtable:addClass(arg)
return self
end
-- Override tostring
function Infobox:tostring()
error_text = ''
if #self.errors > 0 then
for _, v in ipairs(self.errors) do
error_text = error_text..'<span class="mw-message-box-error">'..v..'</span>'
end
end
return tostring(self.rtable) .. tostring(self.switch_datatable) .. tostring(error_text)
end
function Infobox:dump()
mw.log(mw.dumpObject(self))
mw.log(tostring(self))
end
return Infobox
c3b6b3db13eb54c482f793ab4c480d202fe2402f
Log
0
750
1396
2024-03-26T06:26:57Z
ToofleBerry
6
Created page with "{{Unofficial name}} {{Infobox Item |name = |image = Log.png |release = Q3 [[2024]] |episode = Hopeforest |profession = Woodcutter |value = 48 }} '''Log'''<ref>https://brightershores.com/screenshots/09_himatik_ruins.jpg</ref>. ==References== {{Reflist}} [[Category:Items]]"
wikitext
text/x-wiki
{{Unofficial name}}
{{Infobox Item
|name =
|image = Log.png
|release = Q3 [[2024]]
|episode = Hopeforest
|profession = Woodcutter
|value = 48
}}
'''Log'''<ref>https://brightershores.com/screenshots/09_himatik_ruins.jpg</ref>.
==References==
{{Reflist}}
[[Category:Items]]
1c13990fa3f64b137bb7bf022367f903c9949ba7
Log basket
0
751
1397
2024-03-26T06:27:39Z
ToofleBerry
6
Created page with "{{Unofficial name}} {{Infobox Item |name = |image = Log basket.png |release = Q3 [[2024]] |episode = Hopeforest |profession = Woodcutter |value = 22 }} '''Log basket'''<ref>https://brightershores.com/screenshots/09_himatik_ruins.jpg</ref>. ==References== {{Reflist}} [[Category:Items]]"
wikitext
text/x-wiki
{{Unofficial name}}
{{Infobox Item
|name =
|image = Log basket.png
|release = Q3 [[2024]]
|episode = Hopeforest
|profession = Woodcutter
|value = 22
}}
'''Log basket'''<ref>https://brightershores.com/screenshots/09_himatik_ruins.jpg</ref>.
==References==
{{Reflist}}
[[Category:Items]]
c60818376c792e4a8ea7e3898ae5cc8a944a795e
Sword
0
193
1398
340
2024-03-26T06:28:30Z
ToofleBerry
6
wikitext
text/x-wiki
{{Unofficial name}}
{{Infobox Item
|name =
|image = Sword.png
|release = Q3 [[2024]]
|episode = Unknown
|profession = Combat
|value = 50
}}
'''Swords'''<ref>https://brightershores.com/screenshots/09_himatik_ruins.jpg</ref> are a type of [[weapon]] in [[Brighter Shores]], typically utilised by the [[cryoknight]] class.
==References==
{{Reflist}}
[[Category:Items]]
f3a8d2ce274673fcd4cef7c265f63ff28a806cdb
Iron platebody
0
752
1399
2024-03-26T06:29:11Z
ToofleBerry
6
Created page with "{{Unofficial name}} {{Infobox Item |name = |image = Iron platebody.png |release = Q3 [[2024]] |episode = Unknown |profession = Combat |value = 50 }} '''Iron platebody'''<ref>https://brightershores.com/screenshots/09_himatik_ruins.jpg</ref>. ==References== {{Reflist}} [[Category:Items]]"
wikitext
text/x-wiki
{{Unofficial name}}
{{Infobox Item
|name =
|image = Iron platebody.png
|release = Q3 [[2024]]
|episode = Unknown
|profession = Combat
|value = 50
}}
'''Iron platebody'''<ref>https://brightershores.com/screenshots/09_himatik_ruins.jpg</ref>.
==References==
{{Reflist}}
[[Category:Items]]
e7070b07223e99af603ae5a3d0911c11c44de833
Iron legs
0
753
1400
2024-03-26T06:29:34Z
ToofleBerry
6
Created page with "{{Unofficial name}} {{Infobox Item |name = |image = Iron legs.png |release = Q3 [[2024]] |episode = Unknown |profession = Combat |value = 50 }} '''Iron legs'''<ref>https://brightershores.com/screenshots/09_himatik_ruins.jpg</ref>. ==References== {{Reflist}} [[Category:Items]]"
wikitext
text/x-wiki
{{Unofficial name}}
{{Infobox Item
|name =
|image = Iron legs.png
|release = Q3 [[2024]]
|episode = Unknown
|profession = Combat
|value = 50
}}
'''Iron legs'''<ref>https://brightershores.com/screenshots/09_himatik_ruins.jpg</ref>.
==References==
{{Reflist}}
[[Category:Items]]
1744d2a5de4232b1579b96b49b6d6c48cd3b3fe5
Bronze legs
0
754
1401
2024-03-26T06:29:59Z
ToofleBerry
6
Created page with "{{Unofficial name}} {{Infobox Item |name = |image = Bronze legs.png |release = Q3 [[2024]] |episode = Unknown |profession = Combat |value = 50 }} '''Bronze legs'''<ref>https://brightershores.com/screenshots/09_himatik_ruins.jpg</ref>. ==References== {{Reflist}} [[Category:Items]]"
wikitext
text/x-wiki
{{Unofficial name}}
{{Infobox Item
|name =
|image = Bronze legs.png
|release = Q3 [[2024]]
|episode = Unknown
|profession = Combat
|value = 50
}}
'''Bronze legs'''<ref>https://brightershores.com/screenshots/09_himatik_ruins.jpg</ref>.
==References==
{{Reflist}}
[[Category:Items]]
85d6f5aa5fecb29c0691cf984bfe59c49a318da0
Shield
0
755
1402
2024-03-26T06:30:35Z
ToofleBerry
6
Created page with "{{Unofficial name}} {{Infobox Item |name = |image = Shield.png |release = Q3 [[2024]] |episode = Hopeport |profession = Combat |value = 50 }} '''Shield'''<ref>https://brightershores.com/screenshots/09_himatik_ruins.jpg</ref>. ==References== {{Reflist}} [[Category:Items]]"
wikitext
text/x-wiki
{{Unofficial name}}
{{Infobox Item
|name =
|image = Shield.png
|release = Q3 [[2024]]
|episode = Hopeport
|profession = Combat
|value = 50
}}
'''Shield'''<ref>https://brightershores.com/screenshots/09_himatik_ruins.jpg</ref>.
==References==
{{Reflist}}
[[Category:Items]]
ad92d4c173679cea8c2e163be648757876350458
Steel legs
0
756
1403
2024-03-26T06:31:48Z
ToofleBerry
6
Created page with "{{Unofficial name}} {{Infobox Item |name = |image = Steel legs.png |release = Q3 [[2024]] |episode = Mine of Mantuban |profession = Combat |value = 200 }} '''Steel legs'''<ref>https://brightershores.com/screenshots/09_himatik_ruins.jpg</ref>. ==References== {{Reflist}} [[Category:Items]]"
wikitext
text/x-wiki
{{Unofficial name}}
{{Infobox Item
|name =
|image = Steel legs.png
|release = Q3 [[2024]]
|episode = Mine of Mantuban
|profession = Combat
|value = 200
}}
'''Steel legs'''<ref>https://brightershores.com/screenshots/09_himatik_ruins.jpg</ref>.
==References==
{{Reflist}}
[[Category:Items]]
264992d9090ddcab251cff36bcc156afcf68e6a2
1415
1403
2024-03-26T06:37:53Z
ToofleBerry
6
wikitext
text/x-wiki
{{Unofficial name}}
{{Infobox Item
|name =
|image = Steel legs.png
|release = Q3 [[2024]]
|episode = Mine of Mantuban
|profession = Combat
|value = 200
}}
'''Steel legs'''<ref>https://brightershores.com/screenshots/09_himatik_ruins.jpg</ref>.
==References==
{{Reflist}}
[[Category:Items]]
[[Category:Equipment]]
e63116b9e279d20de9128c7db8fb6db08d7a79d1
1446
1415
2024-03-26T07:21:38Z
BlackHawk
10
wikitext
text/x-wiki
{{Unofficial name}}
{{Infobox Item
|name =
|image = Steel legs.png
|premium = Yes
|release = Q3 [[2024]]
|episode = Mine of Mantuban
|profession = Combat
|value = 200
}}
'''Steel legs'''<ref>https://brightershores.com/screenshots/09_himatik_ruins.jpg</ref>.
==References==
{{Reflist}}
[[Category:Items]]
[[Category:Equipment]]
54a2d5c962a85cf4c90e2510f30b59290d42f696
Skeleton platebody
0
757
1404
2024-03-26T06:32:14Z
ToofleBerry
6
Created page with "{{Unofficial name}} {{Infobox Item |name = |image = Skeleton platebody.png |release = Q3 [[2024]] |episode = Mine of Mantuban |profession = Combat |value = 100 }} '''Skeleton platebody'''<ref>https://brightershores.com/screenshots/09_himatik_ruins.jpg</ref>. ==References== {{Reflist}} [[Category:Items]]"
wikitext
text/x-wiki
{{Unofficial name}}
{{Infobox Item
|name =
|image = Skeleton platebody.png
|release = Q3 [[2024]]
|episode = Mine of Mantuban
|profession = Combat
|value = 100
}}
'''Skeleton platebody'''<ref>https://brightershores.com/screenshots/09_himatik_ruins.jpg</ref>.
==References==
{{Reflist}}
[[Category:Items]]
db50dd64df054508ada24f861bd7a84445397d12
1413
1404
2024-03-26T06:37:38Z
ToofleBerry
6
wikitext
text/x-wiki
{{Unofficial name}}
{{Infobox Item
|name =
|image = Skeleton platebody.png
|release = Q3 [[2024]]
|episode = Mine of Mantuban
|profession = Combat
|value = 100
}}
'''Skeleton platebody'''<ref>https://brightershores.com/screenshots/09_himatik_ruins.jpg</ref>.
==References==
{{Reflist}}
[[Category:Items]]
[[Category:Equipment]]
7f7ba25b38ec5b8a1e6dce59ded180d369b79215
1451
1413
2024-03-26T07:24:06Z
BlackHawk
10
wikitext
text/x-wiki
{{Unofficial name}}
{{Infobox Item
|name =
|image = Skeleton platebody.png
|premium = Yes
|release = Q3 [[2024]]
|episode = Mine of Mantuban
|profession = Combat
|value = 100
}}
'''Skeleton platebody'''<ref>https://brightershores.com/screenshots/09_himatik_ruins.jpg</ref>.
==References==
{{Reflist}}
[[Category:Items]]
[[Category:Equipment]]
04ce10407bdd95a9cd1ca75f75221669d2733af7
Template:Infobox Item
10
77
1405
1307
2024-03-26T06:33:45Z
ToofleBerry
6
Manbutan -> Mantuban.
wikitext
text/x-wiki
{| class="wikitable infobox-item" style="float:right"
!colspan="2"| {{#if:{{{name|}}}|{{{name}}}|{{PAGENAME}}}}
|-
|colspan="2" style="text-align:center"| {{#if:{{{image|}}}|{{clean image|file={{{image}}}}}|[[Special:Upload|Please upload an image!]]{{Mainonly|[[Category:Needs image]]}}}}
|-
|<b>Release date</b>||{{#if:{{{release|}}}|{{{release}}}|Q3 [[2024]]}}
|-
|<b>Episode</b>||{{#switch:{{{episode|}}}|Hopeport=[[File:Hopeport episode icon.png|18px]] [[Hopeport]]|Hopeforest=[[File:Hopeforest episode icon.png|18px]] [[Hopeforest]]|Mine of Mantuban=[[File:Mine of Mantuban episode icon.png|18px]]|#default=[[File:Unknown episode icon.png|18px]] Unknown}}
|-
|<b>Profession</b>||{{#if:{{{profession|}}}|{{{profession}}}|{{Edit button|text=<b>?</b> (edit)}}{{Mainonly|[[Category:Items needing profession]]}}}}
|-
|<b>Value</b>||{{#if:{{{value|}}}|{{{value}}}|{{Edit button|text=<b>?</b> (edit)}}{{Mainonly|[[Category:Items needing value]]}}}}
|}{{Mainonly|[[Category:Items]]}}<noinclude>{{clear}}{{/doc}}</noinclude>
f3eebbc550c3f88bae2831bccdcc7a36b8bfbb91
1406
1405
2024-03-26T06:34:24Z
ToofleBerry
6
wikitext
text/x-wiki
{| class="wikitable infobox-item" style="float:right"
!colspan="2"| {{#if:{{{name|}}}|{{{name}}}|{{PAGENAME}}}}
|-
|colspan="2" style="text-align:center"| {{#if:{{{image|}}}|{{clean image|file={{{image}}}}}|[[Special:Upload|Please upload an image!]]{{Mainonly|[[Category:Needs image]]}}}}
|-
|<b>Release date</b>||{{#if:{{{release|}}}|{{{release}}}|Q3 [[2024]]}}
|-
|<b>Episode</b>||{{#switch:{{{episode|}}}|Hopeport=[[File:Hopeport episode icon.png|18px]] [[Hopeport]]|Hopeforest=[[File:Hopeforest episode icon.png|18px]] [[Hopeforest]]|Mine of Mantuban=[[File:Mine of Mantuban episode icon.png|18px]] [[Mine of Mantuban]]|#default=[[File:Unknown episode icon.png|18px]] Unknown}}
|-
|<b>Profession</b>||{{#if:{{{profession|}}}|{{{profession}}}|{{Edit button|text=<b>?</b> (edit)}}{{Mainonly|[[Category:Items needing profession]]}}}}
|-
|<b>Value</b>||{{#if:{{{value|}}}|{{{value}}}|{{Edit button|text=<b>?</b> (edit)}}{{Mainonly|[[Category:Items needing value]]}}}}
|}{{Mainonly|[[Category:Items]]}}<noinclude>{{clear}}{{/doc}}</noinclude>
48ee82ad746f10eba09afdf01ab51bb3548df8e2
1407
1406
2024-03-26T06:35:01Z
ToofleBerry
6
Added episode categories.
wikitext
text/x-wiki
{| class="wikitable infobox-item" style="float:right"
!colspan="2"| {{#if:{{{name|}}}|{{{name}}}|{{PAGENAME}}}}
|-
|colspan="2" style="text-align:center"| {{#if:{{{image|}}}|{{clean image|file={{{image}}}}}|[[Special:Upload|Please upload an image!]]{{Mainonly|[[Category:Needs image]]}}}}
|-
|<b>Release date</b>||{{#if:{{{release|}}}|{{{release}}}|Q3 [[2024]]}}
|-
|<b>Episode</b>||{{#switch:{{{episode|}}}|Hopeport=[[File:Hopeport episode icon.png|18px]] [[Hopeport]][[Category:Hopeport]]|Hopeforest=[[File:Hopeforest episode icon.png|18px]] [[Hopeforest]][[Category:Hopeforest]]|Mine of Mantuban=[[File:Mine of Mantuban episode icon.png|18px]] [[Mine of Mantuban]][[Category:Mine of Mantuban]]|#default=[[File:Unknown episode icon.png|18px]] Unknown}}
|-
|<b>Profession</b>||{{#if:{{{profession|}}}|{{{profession}}}|{{Edit button|text=<b>?</b> (edit)}}{{Mainonly|[[Category:Items needing profession]]}}}}
|-
|<b>Value</b>||{{#if:{{{value|}}}|{{{value}}}|{{Edit button|text=<b>?</b> (edit)}}{{Mainonly|[[Category:Items needing value]]}}}}
|}{{Mainonly|[[Category:Items]]}}<noinclude>{{clear}}{{/doc}}</noinclude>
110b29fe363bd7f30ac12107f723bc46da4ac51e
1422
1407
2024-03-26T06:48:56Z
ToofleBerry
6
Added "Premium Pass" category to Mine of Mantuban items.
wikitext
text/x-wiki
{| class="wikitable infobox-item" style="float:right"
!colspan="2"| {{#if:{{{name|}}}|{{{name}}}|{{PAGENAME}}}}
|-
|colspan="2" style="text-align:center"| {{#if:{{{image|}}}|{{clean image|file={{{image}}}}}|[[Special:Upload|Please upload an image!]]{{Mainonly|[[Category:Needs image]]}}}}
|-
|<b>Release date</b>||{{#if:{{{release|}}}|{{{release}}}|Q3 [[2024]]}}
|-
|<b>Episode</b>||{{#switch:{{{episode|}}}|Hopeport=[[File:Hopeport episode icon.png|18px]] [[Hopeport]][[Category:Hopeport]]|Hopeforest=[[File:Hopeforest episode icon.png|18px]] [[Hopeforest]][[Category:Hopeforest]]|Mine of Mantuban=[[File:Mine of Mantuban episode icon.png|18px]] [[Mine of Mantuban]][[Category:Mine of Mantuban]][[Category:Premium_Pass]]|#default=[[File:Unknown episode icon.png|18px]] Unknown}}
|-
|<b>Profession</b>||{{#if:{{{profession|}}}|{{{profession}}}|{{Edit button|text=<b>?</b> (edit)}}{{Mainonly|[[Category:Items needing profession]]}}}}
|-
|<b>Value</b>||{{#if:{{{value|}}}|{{{value}}}|{{Edit button|text=<b>?</b> (edit)}}{{Mainonly|[[Category:Items needing value]]}}}}
|}{{Mainonly|[[Category:Items]]}}<noinclude>{{clear}}{{/doc}}</noinclude>
26e037d7c8927c519250e6eb57333c93e7690d33
1438
1422
2024-03-26T07:17:24Z
ToofleBerry
6
wikitext
text/x-wiki
{| class="wikitable infobox-item" style="float:right"
!colspan="2"| {{#if:{{{name|}}}|{{{name}}}|{{PAGENAME}}}}
|-
|colspan="2" style="text-align:center"| {{#if:{{{image|}}}|{{clean image|file={{{image}}}}}|[[Special:Upload|Please upload an image!]]{{Mainonly|[[Category:Needs image]]}}}}
|-
|<b>Release date</b>||{{#if:{{{release|}}}|{{{release}}}|Q3 [[2024]]}}
|-
|<b>Episode</b>||{{#switch:{{{episode|}}}|Hopeport=[[File:Hopeport episode icon.png|18px]] [[Hopeport]][[Category:Hopeport]]|Hopeforest=[[File:Hopeforest episode icon.png|18px]] [[Hopeforest]][[Category:Hopeforest]]|Mine of Mantuban=[[File:Mine of Mantuban episode icon.png|18px]] [[Mine of Mantuban]][[Category:Mine of Mantuban]][[Category:Premium_Pass]]|Crenopolis=[[File:Crenopolis episode icon.png|18px]] [[Crenopolis]][[Category:Crenopolis]][[Category:Premium_Pass]]|#default=[[File:Unknown episode icon.png|18px]] Unknown}}
|-
|<b>Profession</b>||{{#if:{{{profession|}}}|{{{profession}}}|{{Edit button|text=<b>?</b> (edit)}}{{Mainonly|[[Category:Items needing profession]]}}}}
|-
|<b>Value</b>||{{#if:{{{value|}}}|{{{value}}}|{{Edit button|text=<b>?</b> (edit)}}{{Mainonly|[[Category:Items needing value]]}}}}
|}{{Mainonly|[[Category:Items]]}}<noinclude>{{clear}}{{/doc}}</noinclude>
780cf1fb70cfb170f4ffe7ebfeac0c0992d3b5c3
1441
1438
2024-03-26T07:19:33Z
BlackHawk
10
wikitext
text/x-wiki
{| class="wikitable infobox-item" style="float:right"
! colspan="2" | {{#if:{{{name|}}}|{{{name}}}|{{PAGENAME}}}}
|-
| colspan="2" style="text-align:center" | {{#if:{{{image|}}}|{{clean image|file={{{image}}}}}|[[Special:Upload|Please upload an image!]]{{Mainonly|[[Category:Needs image]]}}}}
|-
| <b>Release date</b> || {{#if:{{{release|}}}|{{{release}}}|Q3 [[2024]]}}
|-
| <b>Premium</b> || {{#switch:{{lc:{{{premium|}}}}}|yes=Yes{{Mainonly|[[Category:Premium items]]}}|no=No|#default={{Edit button|text=<b>?</b> (edit)}}{{Mainonly|[[Category:Needs premium status]]}}}}
|-
| <b>Episode</b> || {{#switch:{{{episode|}}}|Hopeport=[[File:Hopeport episode icon.png|18px]] [[Hopeport]][[Category:Hopeport]]|Hopeforest=[[File:Hopeforest episode icon.png|18px]] [[Hopeforest]][[Category:Hopeforest]]|Mine of Mantuban=[[File:Mine of Mantuban episode icon.png|18px]] [[Mine of Mantuban]][[Category:Mine of Mantuban]]|Crenopolis=[[File:Crenopolis episode icon.png|18px]] [[Crenopolis]][[Category:Crenopolis]]|#default=[[File:Unknown episode icon.png|18px]] Unknown}}
|-
| <b>Profession</b> || {{#if:{{{profession|}}}|{{{profession}}}|{{Edit button|text=<b>?</b> (edit)}}{{Mainonly|[[Category:Items needing profession]]}}}}
|-
| <b>Value</b> || {{#if:{{{value|}}}|{{{value}}}|{{Edit button|text=<b>?</b> (edit)}}{{Mainonly|[[Category:Items needing value]]}}}}
|}{{Mainonly|[[Category:Items]]}}<noinclude>{{clear}}{{/doc}}</noinclude>
57783f12feca5d2f455865812bb1a243593dab57
Category:Mine of Mantuban
14
758
1408
2024-03-26T06:35:33Z
ToofleBerry
6
Created page with "[[Category:Episodes]]"
wikitext
text/x-wiki
[[Category:Episodes]]
4866d4b9c488a487bbc66a72d44f5151cf0ac1ed
1409
1408
2024-03-26T06:36:36Z
ToofleBerry
6
wikitext
text/x-wiki
[[Category:Locations]]
3c87035104589422729b1e55f5f98737a79ffb3d
Bronze legs
0
754
1410
1401
2024-03-26T06:37:27Z
ToofleBerry
6
wikitext
text/x-wiki
{{Unofficial name}}
{{Infobox Item
|name =
|image = Bronze legs.png
|release = Q3 [[2024]]
|episode = Unknown
|profession = Combat
|value = 50
}}
'''Bronze legs'''<ref>https://brightershores.com/screenshots/09_himatik_ruins.jpg</ref>.
==References==
{{Reflist}}
[[Category:Items]]
[[Category:Equipment]]
c25301e46e2fc0b900d99a51f35995c74e0eb7d7
Iron legs
0
753
1411
1400
2024-03-26T06:37:30Z
ToofleBerry
6
wikitext
text/x-wiki
{{Unofficial name}}
{{Infobox Item
|name =
|image = Iron legs.png
|release = Q3 [[2024]]
|episode = Unknown
|profession = Combat
|value = 50
}}
'''Iron legs'''<ref>https://brightershores.com/screenshots/09_himatik_ruins.jpg</ref>.
==References==
{{Reflist}}
[[Category:Items]]
[[Category:Equipment]]
4b3b97ed15b108b8d908cbaa53519c7e0b0162c7
Iron platebody
0
752
1412
1399
2024-03-26T06:37:34Z
ToofleBerry
6
wikitext
text/x-wiki
{{Unofficial name}}
{{Infobox Item
|name =
|image = Iron platebody.png
|release = Q3 [[2024]]
|episode = Unknown
|profession = Combat
|value = 50
}}
'''Iron platebody'''<ref>https://brightershores.com/screenshots/09_himatik_ruins.jpg</ref>.
==References==
{{Reflist}}
[[Category:Items]]
[[Category:Equipment]]
35614e2f9b7002c24394d269396af13a522bf46b
Staff
0
733
1414
1362
2024-03-26T06:37:48Z
ToofleBerry
6
wikitext
text/x-wiki
{{Unofficial name}}
{{Infobox Item
|name =
|image = Staff.png
|release =
|episode =
|profession = Combat
|value =
}}
A '''staff''' is a type of [[weapon]] in [[Brighter Shores]]<ref>https://brightershores.com/screenshots/03_shade_combat.jpg</ref>.
==References==
{{Reflist}}
[[Category:Items]]
[[Category:Equipment]]
fb51975d0019c606d7cade41f6f700cb662b6665
Sword
0
193
1416
1398
2024-03-26T06:37:58Z
ToofleBerry
6
wikitext
text/x-wiki
{{Unofficial name}}
{{Infobox Item
|name =
|image = Sword.png
|release = Q3 [[2024]]
|episode = Unknown
|profession = Combat
|value = 50
}}
'''Swords'''<ref>https://brightershores.com/screenshots/09_himatik_ruins.jpg</ref> are a type of [[weapon]] in [[Brighter Shores]], typically utilised by the [[cryoknight]] class.
==References==
{{Reflist}}
[[Category:Items]]
[[Category:Equipment]]
3749e921ce381acb8d601ece662149b0d72f0482
Shield
0
755
1417
1402
2024-03-26T06:38:01Z
ToofleBerry
6
wikitext
text/x-wiki
{{Unofficial name}}
{{Infobox Item
|name =
|image = Shield.png
|release = Q3 [[2024]]
|episode = Hopeport
|profession = Combat
|value = 50
}}
'''Shield'''<ref>https://brightershores.com/screenshots/09_himatik_ruins.jpg</ref>.
==References==
{{Reflist}}
[[Category:Items]]
[[Category:Equipment]]
a28574fed66c1401d051a73e065b860192edc10c
Monsters
0
377
1418
1349
2024-03-26T06:42:12Z
BlackHawk
10
wikitext
text/x-wiki
'''Monsters''' are creatures in [[Brighter Shores]] that can be attacked. They are fought in [[combat]] for their loot, including valuable currency items.
There are many monsters in Brighter Shores, including:
* [[Firetoad]]
* [[Grumpy Pirate]]
* [[Gurnard]]
* [[Mawchest]]
* [[Punkupine]]
* [[Slime Fiend]]
* [[Sneaky Thief]]
* [[Wailing Shade]]
{{Mechanics}}
[[Category:Monsters]]
9bc70f4b35f006a8c4999cc354ad827f083f6755
Template:Infobox NPC
10
719
1419
1330
2024-03-26T06:45:46Z
BlackHawk
10
wikitext
text/x-wiki
{| class="wikitable infobox-npc" style="float:right"
!colspan="2"| {{#if:{{{name|}}}|{{{name}}}|{{PAGENAME}}}}
|-
|colspan="2" style="text-align:center"| {{#if:{{{image|}}}|{{clean image|file={{{image}}}}}|[[Special:Upload|Please upload an image!]]{{Mainonly|[[Category:Needs image]]}}}}
|-
|<b>Release date</b>||{{#if:{{{release|}}}|{{{release}}}|Q3 [[2024]]}}
|-
|<b>Episode</b>||{{#switch:{{{episode|}}}|Hopeport=[[File:Hopeport episode icon.png|18px]] [[Hopeport]]|Hopeforest=[[File:Hopeforest episode icon.png|18px]] [[Hopeforest]]|Mine of Manbutan=[[File:Mine of Manbutan episode icon.png|18px]]|#default=[[File:Unknown episode icon.png|18px]] Unknown}}
|-
{{#if:{{{profession|}}}|
! Profession
{{!}}{{{profession}}}
{{!}}-}}
|}{{Mainonly|[[Category:Non-player characters]]}}<noinclude>{{clear}}{{/doc}}</noinclude>
07086a1bc43674ea2b1722b5bd262f42cd85a509
1420
1419
2024-03-26T06:46:21Z
BlackHawk
10
wikitext
text/x-wiki
{| class="wikitable infobox-npc" style="float:right"
!colspan="2"| {{#if:{{{name|}}}|{{{name}}}|{{PAGENAME}}}}
|-
|colspan="2" style="text-align:center"| {{#if:{{{image|}}}|{{clean image|file={{{image}}}}}|[[Special:Upload|Please upload an image!]]{{Mainonly|[[Category:Needs image]]}}}}
|-
|<b>Release date</b>||{{#if:{{{release|}}}|{{{release}}}|Q3 [[2024]]}}
|-
|<b>Episode</b>||{{#switch:{{{episode|}}}|Hopeport=[[File:Hopeport episode icon.png|18px]] [[Hopeport]]|Hopeforest=[[File:Hopeforest episode icon.png|18px]] [[Hopeforest]]|Mine of Manbutan=[[File:Mine of Manbutan episode icon.png|18px]]|#default=[[File:Unknown episode icon.png|18px]] Unknown}}
|-
{{#if:{{{profession|}}}|
| <b>Profession</b>
{{!}}{{{profession}}}
{{!}}-}}
|}{{Mainonly|[[Category:Non-player characters]]}}<noinclude>{{clear}}{{/doc}}</noinclude>
93f1c25839b0cd3833e35c4f73ce7aea346a966d
1421
1420
2024-03-26T06:46:53Z
BlackHawk
10
wikitext
text/x-wiki
{| class="wikitable infobox-npc" style="float:right"
!colspan="2"| {{#if:{{{name|}}}|{{{name}}}|{{PAGENAME}}}}
|-
|colspan="2" style="text-align:center"| {{#if:{{{image|}}}|{{clean image|file={{{image}}}}}|[[Special:Upload|Please upload an image!]]{{Mainonly|[[Category:Needs image]]}}}}
|-
|<b>Release date</b>||{{#if:{{{release|}}}|{{{release}}}|Q3 [[2024]]}}
|-
|<b>Episode</b>||{{#switch:{{{episode|}}}|Hopeport=[[File:Hopeport episode icon.png|18px]] [[Hopeport]]|Hopeforest=[[File:Hopeforest episode icon.png|18px]] [[Hopeforest]]|Mine of Manbutan=[[File:Mine of Manbutan episode icon.png|18px]]|#default=[[File:Unknown episode icon.png|18px]] Unknown}}
|-
{{#if:{{{profession|}}}|
{{!}} <b>Profession</b>
{{!}}{{{profession}}}
{{!}}-}}
|}{{Mainonly|[[Category:Non-player characters]]}}<noinclude>{{clear}}{{/doc}}</noinclude>
866d2ad3192e7b0d863c424db30d806bf8a1173f
1425
1421
2024-03-26T06:52:11Z
BlackHawk
10
wikitext
text/x-wiki
{| class="wikitable infobox-npc" style="float:right"
!colspan="2"| {{#if:{{{name|}}}|{{{name}}}|{{PAGENAME}}}}
|-
|colspan="2" style="text-align:center"| {{#if:{{{image|}}}|{{clean image|file={{{image}}}}}|[[Special:Upload|Please upload an image!]]{{Mainonly|[[Category:Needs image]]}}}}
|-
|<b>Release date</b>||{{#if:{{{release|}}}|{{{release}}}|Q3 [[2024]]}}
|-
|<b>Episode</b>||{{#switch:{{{episode|}}}|Hopeport=[[File:Hopeport episode icon.png|18px]] [[Hopeport]]|Hopeforest=[[File:Hopeforest episode icon.png|18px]] [[Hopeforest]]|Mine of Manbutan=[[File:Mine of Manbutan episode icon.png|18px]]|#default=[[File:Unknown episode icon.png|18px]] Unknown}}
|-
{{#if:{{{profession|}}}|
{{!}} <b>Profession</b>
{{!}}{{{profession}}}
{{!}}-}}
{{#if:{{{shop|}}}|
{{!}} <b>Shop</b>
{{!}}{{{shop}}}
{{!}}-}}
|}{{Mainonly|[[Category:Non-player characters]]}}<noinclude>{{clear}}{{/doc}}</noinclude>
f8f1ad48c4cc8ff18c1549c095baa88b5b272595
1428
1425
2024-03-26T06:53:50Z
ToofleBerry
6
Added categories, corrected Mantuban typo.
wikitext
text/x-wiki
{| class="wikitable infobox-npc" style="float:right"
!colspan="2"| {{#if:{{{name|}}}|{{{name}}}|{{PAGENAME}}}}
|-
|colspan="2" style="text-align:center"| {{#if:{{{image|}}}|{{clean image|file={{{image}}}}}|[[Special:Upload|Please upload an image!]]{{Mainonly|[[Category:Needs image]]}}}}
|-
|<b>Release date</b>||{{#if:{{{release|}}}|{{{release}}}|Q3 [[2024]]}}
|-
|<b>Episode</b>||{{#switch:{{{episode|}}}|Hopeport=[[File:Hopeport episode icon.png|18px]] [[Hopeport]][[Category:Hopeport]]|Hopeforest=[[File:Hopeforest episode icon.png|18px]] [[Hopeforest]][[Category:Hopeforest]]|Mine of Mantuban=[[File:Mine of Mantuban episode icon.png|18px]][[Category:Mine of Mantuban]][[Category:Premium_Pass]]|#default=[[File:Unknown episode icon.png|18px]] Unknown}}
|-
{{#if:{{{profession|}}}|
{{!}} <b>Profession</b>
{{!}}{{{profession}}}
{{!}}-}}
{{#if:{{{shop|}}}|
{{!}} <b>Shop</b>
{{!}}{{{shop}}}
{{!}}-}}
|}{{Mainonly|[[Category:Non-player characters]]}}<noinclude>{{clear}}{{/doc}}</noinclude>
2df7505f730b7b813b8ceb084610db07afaed32f
1439
1428
2024-03-26T07:17:44Z
ToofleBerry
6
Added Crenopolis.
wikitext
text/x-wiki
{| class="wikitable infobox-npc" style="float:right"
!colspan="2"| {{#if:{{{name|}}}|{{{name}}}|{{PAGENAME}}}}
|-
|colspan="2" style="text-align:center"| {{#if:{{{image|}}}|{{clean image|file={{{image}}}}}|[[Special:Upload|Please upload an image!]]{{Mainonly|[[Category:Needs image]]}}}}
|-
|<b>Release date</b>||{{#if:{{{release|}}}|{{{release}}}|Q3 [[2024]]}}
|-
|<b>Episode</b>||{{#switch:{{{episode|}}}|Hopeport=[[File:Hopeport episode icon.png|18px]] [[Hopeport]][[Category:Hopeport]]|Hopeforest=[[File:Hopeforest episode icon.png|18px]] [[Hopeforest]][[Category:Hopeforest]]|Mine of Mantuban=[[File:Mine of Mantuban episode icon.png|18px]][[Category:Mine of Mantuban]][[Category:Premium_Pass]]|Crenopolis=[[File:Crenopolis episode icon.png|18px]] [[Crenopolis]][[Category:Crenopolis]][[Category:Premium_Pass]]|#default=[[File:Unknown episode icon.png|18px]] Unknown}}
|-
{{#if:{{{profession|}}}|
{{!}} <b>Profession</b>
{{!}}{{{profession}}}
{{!}}-}}
{{#if:{{{shop|}}}|
{{!}} <b>Shop</b>
{{!}}{{{shop}}}
{{!}}-}}
|}{{Mainonly|[[Category:Non-player characters]]}}<noinclude>{{clear}}{{/doc}}</noinclude>
20b2ed56087237b63840501502fff62e14700c9e
Gurnard
0
444
1423
1325
2024-03-26T06:49:29Z
BlackHawk
10
wikitext
text/x-wiki
{{Infobox NPC
|name = Gurnard
|image =
|release =
|episode =
|profession = [[Fisher]]
}}
'''Gurnards''' are a type of [[fish]]. The Yellowtail variant can be found in the [[Pirate Hideout]].{{CiteTwitter|url=https://twitter.com/AndrewCGower/status/1769048510177948004|author=Andrew Gower|date=16 March 2024|accessdate=22 March 2024|archiveurl=https://archive.is/whgCd|archivedate=22 March 2024|quote=}}
==Variants==
* Yellowtail
==References==
{{Reflist}}
9a55f27b84302f31fb95e3b48755bf50ca05059c
Category:Hopeforest
14
759
1424
2024-03-26T06:51:08Z
BlackHawk
10
Created page with "{{Categoryheader|pages|[[Hopeforest]]}} [[Category:Locations]]"
wikitext
text/x-wiki
{{Categoryheader|pages|[[Hopeforest]]}}
[[Category:Locations]]
9736d35ed59db9d0ae160b5486d3202aa33d2200
Template:Infobox NPC/doc
10
720
1426
1324
2024-03-26T06:52:31Z
BlackHawk
10
wikitext
text/x-wiki
{{Documentation}}
==Parameters==
===name===
The name of the NPC.
===image===
The image of the NPC.
===release===
The release date of the NPC.
===episode===
The episode of the NPC.
One of:
* Hopeport
* Hopeforest
* Mine of Manbutan
===profession===
The profession of the NPC.
===shop===
The shop of the NPC.
==Quick copy==
<pre>{{Infobox NPC
|name =
|image =
|release =
|episode =
|profession =
|shop =
}}</pre>
<includeonly>[[Category:Infobox templates]]</includeonly>
707321c50b169a7b22be698ef9d61e654a566cdf
1433
1426
2024-03-26T07:11:36Z
InvalidCards
4
tuba
wikitext
text/x-wiki
{{Documentation}}
==Parameters==
===name===
The name of the NPC.
===image===
The image of the NPC.
===release===
The release date of the NPC.
===episode===
The episode of the NPC.
One of:
* Hopeport
* Hopeforest
* Mine of Mantuban
===profession===
The profession of the NPC.
===shop===
The shop of the NPC.
==Quick copy==
<pre>{{Infobox NPC
|name =
|image =
|release =
|episode =
|profession =
|shop =
}}</pre>
<includeonly>[[Category:Infobox templates]]</includeonly>
a25636111946ddf0f27b4cd6b3f02e08d8222e64
Lani
0
93
1427
1332
2024-03-26T06:53:22Z
BlackHawk
10
wikitext
text/x-wiki
{{Infobox NPC
|name = Lani
|image =
|release =
|episode =
|profession =
|shop = [[Lani's Curiosities]]
}}
'''Lani''' is the owner of [[Lani's Curiosities]].
ad37f253dea6671c8bd532ea2511b4165650c1c5
Melv
0
87
1429
1333
2024-03-26T06:53:55Z
BlackHawk
10
wikitext
text/x-wiki
{{Infobox NPC
|name = Melv
|image =
|release =
|episode =
|profession =
|shop = [[Melv's Fishing Supplies]]
}}
'''Melv''' is the shop owner of [[Melv's Fishing Supplies]].
e0835083fd2b62e630f15ee0a4cd056137a10cd8
File:Sense.png
6
760
1430
2024-03-26T06:58:57Z
BlackHawk
10
wikitext
text/x-wiki
da39a3ee5e6b4b0d3255bfef95601890afd80709
Sense
0
317
1431
513
2024-03-26T06:59:08Z
BlackHawk
10
wikitext
text/x-wiki
[[File:Sense.png|left]]
'''Sense''' is a [[spell]] that [[player]]s can use to detect monsters and objects around them. After casting it, entities in a small area around the player will have tooltips and nameplates displaying their name and information about them.{{CiteTwitter|url=https://twitter.com/AndrewCGower/status/1769048510177948004|author=Andrew Gower|date=16 March 2024|accessdate=22 March 2024|archiveurl=https://archive.is/whgCd|archivedate=22 March 2024|quote=Once you learn the sense spell you can highlight everything interactive nearby. No more hunting around for small items!}}
==References==
{{Reflist}}
aec247837d7a8a15ec210cefa4a857e2ac32fd4c
1432
1431
2024-03-26T06:59:54Z
ToofleBerry
6
Added category "Spells".
wikitext
text/x-wiki
[[File:Sense.png|left]]
'''Sense''' is a [[spell]] that [[player]]s can use to detect monsters and objects around them. After casting it, entities in a small area around the player will have tooltips and nameplates displaying their name and information about them.{{CiteTwitter|url=https://twitter.com/AndrewCGower/status/1769048510177948004|author=Andrew Gower|date=16 March 2024|accessdate=22 March 2024|archiveurl=https://archive.is/whgCd|archivedate=22 March 2024|quote=Once you learn the sense spell you can highlight everything interactive nearby. No more hunting around for small items!}}
==References==
{{Reflist}}
[[Category:Spells]]
4defe4104f83b572a5a79689b241dcf3955152bb
Template:Infobox Item/doc
10
694
1434
1250
2024-03-26T07:12:18Z
ToofleBerry
6
Tuba
wikitext
text/x-wiki
{{Documentation}}
==Parameters==
===name===
The name of the item.
===image===
The image of the item.
===release===
The release date of the item.
===episode===
The episode of the item.
One of:
* Hopeport
* Hopeforest
* Mine of Mantuban
===profession===
The profession of the item.
===value===
The value of the item.
==Quick copy==
<pre>{{Infobox Item
|name =
|image =
|release =
|episode =
|profession =
|value =
}}</pre>
<includeonly>[[Category:Infobox templates]]</includeonly>
59b8e4768c6f80c52dd3f8a5b46cb86e9c0c03a2
1443
1434
2024-03-26T07:20:48Z
BlackHawk
10
wikitext
text/x-wiki
{{Documentation}}
==Parameters==
===name===
The name of the item.
===image===
The image of the item.
===release===
The release date of the item.
===premium===
Whether or not this item is requires a [[premium pass]].
===episode===
The episode of the item.
One of:
* Hopeport
* Hopeforest
* Mine of Mantuban
===profession===
The profession of the item.
===value===
The value of the item.
==Quick copy==
<pre>{{Infobox Item
|name =
|image =
|release =
|episode =
|profession =
|value =
}}</pre>
<includeonly>[[Category:Infobox templates]]</includeonly>
3e1b960749020b5c1e01c621bdf03a1ccce8bab2
1444
1443
2024-03-26T07:21:05Z
BlackHawk
10
wikitext
text/x-wiki
{{Documentation}}
==Parameters==
===name===
The name of the item.
===image===
The image of the item.
===release===
The release date of the item.
===premium===
Whether or not this item is requires a [[premium pass]].
===episode===
The episode of the item.
One of:
* Hopeport
* Hopeforest
* Mine of Mantuban
===profession===
The profession of the item.
===value===
The value of the item.
==Quick copy==
<pre>{{Infobox Item
|name =
|image =
|release =
|premium =
|episode =
|profession =
|value =
}}</pre>
<includeonly>[[Category:Infobox templates]]</includeonly>
bd981c0f0b114a1015a8e400e16edb0e6374600d
Template:Infobox Scenery/doc
10
692
1435
1248
2024-03-26T07:12:52Z
ToofleBerry
6
Tuba.
wikitext
text/x-wiki
{{Documentation}}
==Parameters==
===name===
The name of the scenery.
===image===
The image of the scenery.
===release===
The release date of the scenery.
===episode===
The episode of the scenery.
One of:
* Hopeport
* Hopeforest
* Mine of Mantuban
==Quick copy==
<pre>{{Infobox Scenery
|name =
|image =
|release =
|episode =
}}</pre>
<includeonly>[[Category:Infobox templates]]</includeonly>
a6a657429c1bf457306e035d341d28ea92f181dc
Template:Infobox Scenery
10
690
1436
1309
2024-03-26T07:13:05Z
ToofleBerry
6
Tuba.
wikitext
text/x-wiki
{| class="wikitable infobox-scenery" style="float:right"
!colspan="2"| {{#if:{{{name|}}}|{{{name}}}|{{PAGENAME}}}}
|-
|colspan="2" style="text-align:center"| {{#if:{{{image|}}}|{{clean image|file={{{image}}}}}|[[Special:Upload|Please upload an image!]]{{Mainonly|[[Category:Needs image]]}}}}
|-
|<b>Release date</b>||{{#if:{{{release|}}}|{{{release}}}|Q3 [[2024]]}}
|-
|<b>Episode</b>||{{#switch:{{{episode|}}}|Hopeport=[[File:Hopeport episode icon.png|18px]] [[Hopeport]]|Hopeforest=[[File:Hopeforest episode icon.png|18px]] [[Hopeforest]]|Mine of Mantuban=[[File:Mine of Mantuban episode icon.png|18px]]|#default=[[File:Unknown episode icon.png|18px]] Unknown}}
|}{{Mainonly|[[Category:Scenery]]}}<noinclude>{{clear}}{{/doc}}</noinclude>
c448dd6e1081de44f57fce220a9cd39cc861cf9e
File:Crenopolis episode icon.png
6
761
1437
2024-03-26T07:16:46Z
ToofleBerry
6
{{Transparency}}
Derivative from https://brightershores.com/20240313/tier_comparison_table.png
wikitext
text/x-wiki
== Summary ==
{{Transparency}}
Derivative from https://brightershores.com/20240313/tier_comparison_table.png
f7cda1b9d2381bd78d8c768860cf42bfea676450
Category:Crenopolis
14
762
1440
2024-03-26T07:19:28Z
ToofleBerry
6
Created page with "[[Category:Locations]]"
wikitext
text/x-wiki
[[Category:Locations]]
3c87035104589422729b1e55f5f98737a79ffb3d
Premium pass
0
763
1442
2024-03-26T07:20:43Z
BlackHawk
10
Redirected page to [[Premium Pass]]
wikitext
text/x-wiki
#REDIRECT [[Premium Pass]]
bf43d4c5096a873a9dbfe78f0c617b2e6ff6d2df
Members
0
764
1445
2024-03-26T07:21:11Z
ToofleBerry
6
Redirected page to [[Premium Pass]]
wikitext
text/x-wiki
#REDIRECT [[Premium Pass]]
bf43d4c5096a873a9dbfe78f0c617b2e6ff6d2df
Alchemist
0
63
1447
1173
2024-03-26T07:22:15Z
ToofleBerry
6
wikitext
text/x-wiki
{{Infobox Profession
|name = Alchemist
|image = [[File:Profession alchemist.png|50px]]
}}
[[File:Alchemist.jpg|thumb|right|A player practicing Alchemy.]]
'''Alchemist''' is a type of [[professions|profession]].
{{Professions}}
2baa03b6ec0b924df49e9ffb23cb5027ae079cac
Template:Professions
10
115
1448
1193
2024-03-26T07:22:38Z
ToofleBerry
6
wikitext
text/x-wiki
{{Navbox
|name = Professions
|title = [[Professions]]
|style1 = text-align:center
|group1 =
* {{plink|Fisher|pic=Profession fisher|size=28x28}}
* {{plink|Forager|pic=Profession forager|size=28x28}}
* [[Chef]]
* {{plink|Woodcutter|pic=Woodcutter icon|size=28x28}}
* [[Miner]]
* {{plink|Alchemist|pic=Profession alchemist|size=28x28}}
* [[Stonemason]]
* [[Merchant]]
* [[Blacksmith]]
}}{{Ctg|Professions}}
48f3237355f4d6e469215e51c8beb50096ff6420
Category:Premium items
14
765
1449
2024-03-26T07:22:50Z
BlackHawk
10
Created page with "{{categoryheader|pages and images|premium items}} {{Category ABC}} [[Category:Items]]"
wikitext
text/x-wiki
{{categoryheader|pages and images|premium items}}
{{Category ABC}}
[[Category:Items]]
5bcf44681f156a8f6004268d0bb2449d5959f021
Category:Needs premium status
14
766
1450
2024-03-26T07:23:32Z
BlackHawk
10
Created page with "{{Categoryheader|pages|pages that needs the premium status added|yes|infoboxes that need the premium status parameter filled}} {{Hidden category}} [[Category:Needs information]] [[Category:Maintenance categories]] __EXPECTUNUSEDCATEGORY__"
wikitext
text/x-wiki
{{Categoryheader|pages|pages that needs the premium status added|yes|infoboxes that need the premium status parameter filled}}
{{Hidden category}}
[[Category:Needs information]]
[[Category:Maintenance categories]]
__EXPECTUNUSEDCATEGORY__
52dd19fed350d2e84155d3fd35b0ec49a26fd925
Category:Needs information
14
767
1452
2024-03-26T07:24:44Z
BlackHawk
10
Created page with "{{Categoryheader|pages|page that needs information added|yes|any infobox with a parameter not filled in}} {{Hidden category}} [[Category:Maintenance categories]]"
wikitext
text/x-wiki
{{Categoryheader|pages|page that needs information added|yes|any infobox with a parameter not filled in}}
{{Hidden category}}
[[Category:Maintenance categories]]
37e7dc8b4e6953da6068c1244d1fb2fd14553d12
Category:Premium items
14
765
1453
1449
2024-03-26T07:26:29Z
BlackHawk
10
wikitext
text/x-wiki
{{categoryheader|pages and images|premium items}}
{{Category ABC}}
[[Category:Items]]
[[Category:Premium Pass]]
b283cb87265a0c8cc9558d844ac579a1003ffed4
Template:Infobox NPC
10
719
1454
1439
2024-03-26T07:40:17Z
BlackHawk
10
wikitext
text/x-wiki
{| class="wikitable infobox-npc" style="float:right"
! colspan="2" | {{#if:{{{name|}}}|{{{name}}}|{{PAGENAME}}}}
|-
|colspan="2" style="text-align:center" | {{#if:{{{image|}}}|{{clean image|file={{{image}}}}}|[[Special:Upload|Please upload an image!]]{{Mainonly|[[Category:Needs image]]}}}}
|-
| <b>Release date</b> || {{#if:{{{release|}}}|{{{release}}}|Q3 [[2024]]}}
|-
| <b>Premium</b> || {{#switch:{{lc:{{{premium|}}}}}|yes=Yes{{Mainonly|[[Category:Premium non-player characters]]}}|no=No|#default={{Edit button|text=<b>?</b> (edit)}}{{Mainonly|[[Category:Needs premium status]]}}}}
|-
| <b>Episode</b> || {{#switch:{{{episode|}}}|Hopeport=[[File:Hopeport episode icon.png|18px]] [[Hopeport]][[Category:Hopeport]]|Hopeforest=[[File:Hopeforest episode icon.png|18px]] [[Hopeforest]][[Category:Hopeforest]]|Mine of Mantuban=[[File:Mine of Mantuban episode icon.png|18px]] [[Mine of Mantuban]][[Category:Mine of Mantuban]]|Crenopolis=[[File:Crenopolis episode icon.png|18px]] [[Crenopolis]][[Category:Crenopolis]]|#default=[[File:Unknown episode icon.png|18px]] Unknown}}
|-
{{#if:{{{profession|}}}|
{{!}} <b>Profession</b>
{{!}}{{{profession}}}
{{!}}-}}
{{#if:{{{shop|}}}|
{{!}} <b>Shop</b>
{{!}}{{{shop}}}
{{!}}-}}
|}{{Mainonly|[[Category:Non-player characters]]}}<noinclude>{{clear}}{{/doc}}</noinclude>
2d9f21044b7cc186c5250266da07071b7b6b2c94
Template:Infobox NPC/doc
10
720
1455
1433
2024-03-26T07:41:01Z
BlackHawk
10
wikitext
text/x-wiki
{{Documentation}}
==Parameters==
===name===
The name of the NPC.
===image===
The image of the NPC.
===release===
The release date of the NPC.
===premium===
Whether or not this NPC requires a premium pass.
===episode===
The episode of the NPC.
One of:
* Hopeport
* Hopeforest
* Mine of Mantuban
===profession===
The profession of the NPC.
===shop===
The shop of the NPC.
==Quick copy==
<pre>{{Infobox NPC
|name =
|image =
|release =
|premium =
|episode =
|profession =
|shop =
}}</pre>
<includeonly>[[Category:Infobox templates]]</includeonly>
a4a63146309f277ce5454bc852d08ed049e1616a
1459
1455
2024-03-26T07:45:40Z
BlackHawk
10
wikitext
text/x-wiki
{{Documentation}}
==Parameters==
===name===
The name of the NPC.
===image===
The image of the NPC.
===release===
The release date of the NPC.
===premium===
Whether or not this NPC requires a [[premium pass]].
===episode===
The episode of the NPC.
One of:
* Hopeport
* Hopeforest
* Mine of Mantuban
===profession===
The profession of the NPC.
===shop===
The shop of the NPC.
==Quick copy==
<pre>{{Infobox NPC
|name =
|image =
|release =
|premium =
|episode =
|profession =
|shop =
}}</pre>
<includeonly>[[Category:Infobox templates]]</includeonly>
e5bd8cf0ac8e37b46cdc9006109243da6d8791b4
1462
1459
2024-03-26T07:48:39Z
BlackHawk
10
wikitext
text/x-wiki
{{Documentation}}
==Parameters==
===name===
The name of the NPC.
===image===
The image of the NPC.
===release===
The release date of the NPC.
===premium===
Whether or not this NPC requires a [[premium pass]].
===episode===
The episode of the NPC.
One of:
* Hopeport
* Hopeforest
* Mine of Mantuban
* Crenopolis
===profession===
The profession of the NPC.
===shop===
The shop of the NPC.
==Quick copy==
<pre>{{Infobox NPC
|name =
|image =
|release =
|premium =
|episode =
|profession =
|shop =
}}</pre>
<includeonly>[[Category:Infobox templates]]</includeonly>
e7886a5c5f65263590fe8d4758df4936793a3933
Category:Premium non-player characters
14
768
1456
2024-03-26T07:42:33Z
BlackHawk
10
Created page with "{{categoryheader|pages and images|premium non-player characters}} {{Category ABC}} [[Category:Non-player characters]] [[Category:Premium Pass]]"
wikitext
text/x-wiki
{{categoryheader|pages and images|premium non-player characters}}
{{Category ABC}}
[[Category:Non-player characters]]
[[Category:Premium Pass]]
50e6819626a217e5f268a1ec4237645007434406
Template:Infobox Profession
10
661
1457
1308
2024-03-26T07:44:36Z
BlackHawk
10
wikitext
text/x-wiki
{| class="wikitable infobox-profession" style="float:right"
! colspan="2" | {{#if:{{{name|}}}|{{{name}}}|{{PAGENAME}}}}
|-
| colspan="2" style="text-align:center" | {{#if:{{{image|}}}|{{clean image|file={{{image}}}}}|[[Special:Upload|Please upload an image!]]{{Mainonly|[[Category:Needs image]]}}}}
|-
| <b>Release date</b> || {{#if:{{{release|}}}|{{{release}}}|Q3 [[2024]]}}
|-
| <b>Premium</b> || {{#switch:{{lc:{{{premium|}}}}}|yes=Yes{{Mainonly|[[Category:Premium professions]]}}|no=No|#default={{Edit button|text=<b>?</b> (edit)}}{{Mainonly|[[Category:Needs premium status]]}}}}
|}{{Mainonly|[[Category:Professions]]}}<noinclude>{{/doc}}</noinclude>
e24401055d878984b897d7ea1087c1c16bbaad74
Template:Infobox Profession/doc
10
668
1458
1182
2024-03-26T07:45:27Z
BlackHawk
10
wikitext
text/x-wiki
{{Documentation}}
==Parameters==
===name===
The name of the profession.
===image===
The profession icon.
===release===
The release date of the profession.
===premium===
Whether or not this profession is requires a [[premium pass]].
==Quick copy==
<pre>{{Infobox Profession
|name =
|image =
|release =
|premium =
}}</pre>
<includeonly>[[Category:Infobox templates]]</includeonly>
7b07dd87c83b79e55a05edb59797f0cccf125dfa
Category:Premium professions
14
769
1460
2024-03-26T07:47:04Z
BlackHawk
10
Created page with "{{categoryheader|pages and images|premium professions}} {{Category ABC}} [[Category:Professions]] [[Category:Premium Pass]]"
wikitext
text/x-wiki
{{categoryheader|pages and images|premium professions}}
{{Category ABC}}
[[Category:Professions]]
[[Category:Premium Pass]]
ad0f1bd79a6d3c77fa1495471ea5d02b11bb12a6
Template:Infobox Item/doc
10
694
1461
1444
2024-03-26T07:48:27Z
BlackHawk
10
wikitext
text/x-wiki
{{Documentation}}
==Parameters==
===name===
The name of the item.
===image===
The image of the item.
===release===
The release date of the item.
===premium===
Whether or not this item is requires a [[premium pass]].
===episode===
The episode of the item.
One of:
* Hopeport
* Hopeforest
* Mine of Mantuban
* Crenopolis
===profession===
The profession of the item.
===value===
The value of the item.
==Quick copy==
<pre>{{Infobox Item
|name =
|image =
|release =
|premium =
|episode =
|profession =
|value =
}}</pre>
<includeonly>[[Category:Infobox templates]]</includeonly>
cf5c82024d328accd6afe2e3ddac10193f422609
1464
1461
2024-03-26T07:51:16Z
BlackHawk
10
wikitext
text/x-wiki
{{Documentation}}
==Parameters==
===name===
The name of the item.
===image===
The image of the item.
===release===
The release date of the item.
===premium===
Whether or not this item requires a [[premium pass]].
===episode===
The episode of the item.
One of:
* Hopeport
* Hopeforest
* Mine of Mantuban
* Crenopolis
===profession===
The profession of the item.
===value===
The value of the item.
==Quick copy==
<pre>{{Infobox Item
|name =
|image =
|release =
|premium =
|episode =
|profession =
|value =
}}</pre>
<includeonly>[[Category:Infobox templates]]</includeonly>
6169ceb1d0e8e8c060c4c0aa525c913b40a878d0
Template:Infobox Scenery
10
690
1463
1436
2024-03-26T07:50:31Z
BlackHawk
10
wikitext
text/x-wiki
{| class="wikitable infobox-scenery" style="float:right"
!colspan="2" | {{#if:{{{name|}}}|{{{name}}}|{{PAGENAME}}}}
|-
|colspan="2" style="text-align:center" | {{#if:{{{image|}}}|{{clean image|file={{{image}}}}}|[[Special:Upload|Please upload an image!]]{{Mainonly|[[Category:Needs image]]}}}}
|-
| <b>Release date</b> || {{#if:{{{release|}}}|{{{release}}}|Q3 [[2024]]}}
|-
| <b>Premium</b> || {{#switch:{{lc:{{{premium|}}}}}|yes=Yes{{Mainonly|[[Category:Premium scenery]]}}|no=No|#default={{Edit button|text=<b>?</b> (edit)}}{{Mainonly|[[Category:Needs premium status]]}}}}
|-
| <b>Episode</b> || {{#switch:{{{episode|}}}|Hopeport=[[File:Hopeport episode icon.png|18px]] [[Hopeport]][[Category:Hopeport]]|Hopeforest=[[File:Hopeforest episode icon.png|18px]] [[Hopeforest]][[Category:Hopeforest]]|Mine of Mantuban=[[File:Mine of Mantuban episode icon.png|18px]] [[Mine of Mantuban]][[Category:Mine of Mantuban]]|Crenopolis=[[File:Crenopolis episode icon.png|18px]] [[Crenopolis]][[Category:Crenopolis]]|#default=[[File:Unknown episode icon.png|18px]] Unknown}}
|}{{Mainonly|[[Category:Scenery]]}}<noinclude>{{clear}}{{/doc}}</noinclude>
4fc57e9d1be3e2838331fca431ee992211fa7f2e
Template:Infobox Scenery/doc
10
692
1465
1435
2024-03-26T07:51:23Z
BlackHawk
10
wikitext
text/x-wiki
{{Documentation}}
==Parameters==
===name===
The name of the scenery.
===image===
The image of the scenery.
===release===
The release date of the scenery.
===premium===
Whether or not this scenery requires a [[premium pass]].
===episode===
The episode of the scenery.
One of:
* Hopeport
* Hopeforest
* Mine of Mantuban
* Crenopolis
==Quick copy==
<pre>{{Infobox Scenery
|name =
|image =
|release =
|premium =
|episode =
}}</pre>
<includeonly>[[Category:Infobox templates]]</includeonly>
69b1165e20ed7cb883576ab68b122038b5665fbd
Category:Premium scenery
14
770
1466
2024-03-26T07:52:17Z
BlackHawk
10
Created page with "{{categoryheader|pages and images|premium scenery}} {{Category ABC}} [[Category:Scenery]] [[Category:Premium Pass]]"
wikitext
text/x-wiki
{{categoryheader|pages and images|premium scenery}}
{{Category ABC}}
[[Category:Scenery]]
[[Category:Premium Pass]]
d2402876bc3155c64b81dc12fb965306054a8364
Template:Infobox Location
10
771
1467
2024-03-26T09:01:56Z
BlackHawk
10
Created page with "{| class="wikitable infobox-location" style="float:right" ! colspan="2" | {{#if:{{{name|}}}|{{{name}}}|{{PAGENAME}}}} |- |colspan="2" style="text-align:center" | {{#if:{{{image|}}}|{{clean image|file={{{image}}}}}|[[Special:Upload|Please upload an image!]]{{Mainonly|[[Category:Needs image]]}}}} |- | <b>Release date</b> || {{#if:{{{release|}}}|{{{release}}}|Q3 [[2024]]}} |- | <b>Premium</b> || {{#switch:{{lc:{{{premium|}}}}}|yes=Yes{{Mainonly|[[Category:Premium locations]..."
wikitext
text/x-wiki
{| class="wikitable infobox-location" style="float:right"
! colspan="2" | {{#if:{{{name|}}}|{{{name}}}|{{PAGENAME}}}}
|-
|colspan="2" style="text-align:center" | {{#if:{{{image|}}}|{{clean image|file={{{image}}}}}|[[Special:Upload|Please upload an image!]]{{Mainonly|[[Category:Needs image]]}}}}
|-
| <b>Release date</b> || {{#if:{{{release|}}}|{{{release}}}|Q3 [[2024]]}}
|-
| <b>Premium</b> || {{#switch:{{lc:{{{premium|}}}}}|yes=Yes{{Mainonly|[[Category:Premium locations]]}}|no=No|#default={{Edit button|text=<b>?</b> (edit)}}{{Mainonly|[[Category:Needs premium status]]}}}}
|-
| <b>Episode</b> || {{#switch:{{{episode|}}}|Hopeport=[[File:Hopeport episode icon.png|18px]] [[Hopeport]][[Category:Hopeport]]|Hopeforest=[[File:Hopeforest episode icon.png|18px]] [[Hopeforest]][[Category:Hopeforest]]|Mine of Mantuban=[[File:Mine of Mantuban episode icon.png|18px]] [[Mine of Mantuban]][[Category:Mine of Mantuban]]|Crenopolis=[[File:Crenopolis episode icon.png|18px]] [[Crenopolis]][[Category:Crenopolis]]|#default=[[File:Unknown episode icon.png|18px]] Unknown}}
|}{{Mainonly|[[Category:Locations]]}}<noinclude>{{clear}}{{/doc}}</noinclude>
9edcda936e70d12420ba106d3a4a541d3ab119aa
Template:Infobox Location/doc
10
772
1468
2024-03-26T09:02:29Z
BlackHawk
10
Created page with "{{Documentation}} ==Parameters== ===name=== The name of the location. ===image=== The image of the location. ===release=== The release date of the location. ===premium=== Whether or not this location requires a [[premium pass]]. ===episode=== The episode of the location. One of: * Hopeport * Hopeforest * Mine of Mantuban * Crenopolis ==Quick copy== <pre>{{Infobox Location |name = |image = |release = |premium = |episode = }}</pre> <includeonly>Category:Info..."
wikitext
text/x-wiki
{{Documentation}}
==Parameters==
===name===
The name of the location.
===image===
The image of the location.
===release===
The release date of the location.
===premium===
Whether or not this location requires a [[premium pass]].
===episode===
The episode of the location.
One of:
* Hopeport
* Hopeforest
* Mine of Mantuban
* Crenopolis
==Quick copy==
<pre>{{Infobox Location
|name =
|image =
|release =
|premium =
|episode =
}}</pre>
<includeonly>[[Category:Infobox templates]]</includeonly>
975f38969305e983d97c6b902c23211a41926334
Barricades
0
79
1469
367
2024-03-26T09:03:52Z
BlackHawk
10
wikitext
text/x-wiki
{{Infobox Location
|name = Barricades
|image = Barricades.jpg
|release =
|premium =
|episode =
}}
The '''Barricades''' is a location that leads into the [[Mine Entrance]], which is guarded by a [[barricade guard]]. The player must talk to [[Captain Jal Degreene]] as part of a quest in order to be allowed through.
3e76e3a5898ac88003abce2f898c0b28024fad41
Category:Premium locations
14
773
1470
2024-03-26T09:04:21Z
BlackHawk
10
Created page with "{{categoryheader|pages and images|premium locations}} {{Category ABC}} [[Category:Locations]] [[Category:Premium Pass]]"
wikitext
text/x-wiki
{{categoryheader|pages and images|premium locations}}
{{Category ABC}}
[[Category:Locations]]
[[Category:Premium Pass]]
ea1f4c96f342cecbf590dae61d5c324dc36483e3
Bone Vats
0
81
1471
363
2024-03-26T09:07:50Z
BlackHawk
10
wikitext
text/x-wiki
{{Infobox Location
|name = Bone Vats
|image = Bone Vats.jpg
|release =
|premium =
|episode =
}}
The '''Bone Vats''' is a location where players can craft items using bones.
890bc9fde9a40ed82bafa1c41eea2257ea7adf3d
Cliffside Path
0
83
1472
316
2024-03-26T09:08:29Z
BlackHawk
10
wikitext
text/x-wiki
{{Infobox Location
|name = Cliffside Path
|image = Cliffside Path.jpg
|release =
|premium =
|episode =
}}
The '''Cliffside Path''' is a location. It is a wooded path, inhabited by giant spiders, with large cobwebs strewn about.
99feb8046b00b9725ba5af0fe5f602bd93ecbf8b
Crenopolis
0
75
1473
1133
2024-03-26T09:09:29Z
BlackHawk
10
wikitext
text/x-wiki
{{Infobox Location
|name = Crenopolis
|image =
|release =
|premium = Yes
|episode = Crenopolis
}}
'''Crenopolis''' is a [[location]] that can be accessed by [[player]]s who purchase the [[Premium Pass]]. Players require access to this location to unlock [[trading]], exclusive armour dyes, and name changes.
{{Premium Pass}}
d5ecde5dc9a7715878e93827189ea9b35a3054d4
Goblin Marketplace
0
82
1474
359
2024-03-26T09:09:56Z
BlackHawk
10
wikitext
text/x-wiki
{{Infobox Location
|name = Goblin Marketplace
|image = Goblin Marketplace.jpg
|release =
|premium =
|episode =
}}
The '''Goblin Marketplace''' is a location where [[goblin]]s sell their wares.
d45942b78551346533ab93053d3f848ec8b3d868
Professions
0
56
1475
1370
2024-03-26T09:16:31Z
ToofleBerry
6
/* Gallery */
wikitext
text/x-wiki
'''Professions''' are skills that [[player]]s can train and utilise in [[Brighter Shores]]. Most professions can either be trained by the player actively playing the game, or passively while the game is closed.
As the player progresses through the game, more professions will become available for the player to learn. Players aren't limited to one profession at a time; they can utilise multiple at once.{{CiteGeneral|url=https://www.gamesradar.com/runescape-creator-answers-our-biggest-questions-about-his-new-mmo-brighter-shores-classes-professions-monetization-and-a-ttrpg-open-world/|title=RuneScape creator answers our biggest questions about his new MMO Brighter Shores: classes, professions, monetization, and a TTRPG open world|author=Austin Wood|date=23 March 2024|accessdate=23 March 2024|archiveurl=https://archive.is/AxMwI|archivedate=23 March 2024|name=griv}}
==Passive training==
Unlike other similar MMOs, players can continue to perform certain profession-related activities while logged out of the game.
==List of professions==
{| class="wikitable"
! colspan="2" | Name !! Uses
|-
| [[File:Profession fisher.png|30px|link=Fisher]] || [[Fisher]] || Catching various [[fish]]
|-
| [[File:Profession forager.png|30px|link=Forager]] || [[Forager]] || Gathering items
|-
| || [[Chef]] || Cooking [[food]] items
|-
| [[File:Woodcutter icon.png|30px|link=Woodcutter]] || [[Woodcutter]] || Chopping down [[tree]]s
|-
| || [[Miner]] || Mining [[mineral]]s
|-
| [[File:Profession alchemist.png|30px|link=Alchemist]] || [[Alchemist]] || Brewing [[potion]]s
|-
| || [[Stonemason]] ||
|-
| || [[Merchant]] ||
|-
| || [[Blacksmith]] ||
|}
==Gallery==
<gallery mode="packed" heights="160">
File:Professions preview 1.jpg|Fisher, Forager, Chef
File:Professions preview 2.jpg|Woodcutter, Miner, Alchemist
File:Professions preview 3.jpg|Stonemason, Merchant, Blacksmith
</gallery>
==References==
{{Reflist}}
{{Professions}}
{{Mechanics}}
56b6530e734c4f8c15d8b41aa848e68ceb68c790
Hopeforest
0
73
1476
230
2024-03-26T09:24:06Z
BlackHawk
10
wikitext
text/x-wiki
{{Infobox Location
|name = Hopeforest
|image =
|release =
|premium = No
|episode = Hopeforest
}}
'''Hopeforest''' is a forest [[Locations|area]] that contains [[monster]]s, accessible to all [[player]]s.
62da8d121dbca3458bf20ceceaa85704592f051e
Hopeport
0
68
1477
1219
2024-03-26T09:24:47Z
BlackHawk
10
wikitext
text/x-wiki
{{Infobox Location
|name = Hopeport
|image =
|release =
|premium = No
|episode = Hopeport
}}
'''Hopeport''' is a coastal town in [[Adothria]]. It serves as the main introductory town for new [[player]]s.{{CiteGeneral|url=https://www.godisageek.com/2024/03/brighter-shores-is-a-new-mmorpg-coming-to-pc-and-mac/ |title=Brighter Shores is a new MMORPG coming to PC and Mac |author=Adam Cook |quote=Finding themselves in the peaceful coastal town of Hopeport, players initially take on the role of a town guard. Their role as protector, however, soon expands far beyond the town walls as they learn of a greater threat across the fantastical world of Adothria. |date=13 March 2024 |accessdate=24 March 2024 |archiveurl=https://archive.is/GVkr3 |archivedate=24 March 2024}}
==Features==
* A [[Hopeport Harbor|harbor]]
==References==
{{Reflist}}
269137367c61db8809d4757533a2af90697f264a
Hopeport Obelisk
0
97
1478
551
2024-03-26T09:25:13Z
BlackHawk
10
wikitext
text/x-wiki
{{Infobox Location
|name = Hopeport Obelisk
|image =
|release =
|premium = No
|episode = Hopeport
}}
The '''Hopeport Obelisk''' is a location near [[Hopeport]]. It is likely that it will be used as a fast travel location.
==Trivia==
* Hopeport Obelisk is featured in the ''[[Brighter Shores]]'' logo.
34aab267aa246f3d3b70c7b1668618b67f20b889
1479
1478
2024-03-26T09:25:35Z
BlackHawk
10
wikitext
text/x-wiki
{{Infobox Location
|name = Hopeport Obelisk
|image = Hopeport Obelisk.jpg
|release =
|premium = No
|episode = Hopeport
}}
The '''Hopeport Obelisk''' is a location near [[Hopeport]]. It is likely that it will be used as a fast travel location.
==Trivia==
* Hopeport Obelisk is featured in the ''[[Brighter Shores]]'' logo.
b9870da761ad73558d68e3dcd03742b684549585
Leech Pools
0
78
1480
369
2024-03-26T09:25:59Z
BlackHawk
10
wikitext
text/x-wiki
{{Infobox Location
|name = Leech Pools
|image = Leech Pools.jpg
|release =
|premium =
|episode =
}}
The '''Leech Pools''' is a watery cave system.
6d603c0405a80a88ce9b752869a17ec3e19d4714
Mine of Mantuban
0
74
1481
781
2024-03-26T09:26:22Z
BlackHawk
10
wikitext
text/x-wiki
{{Infobox Location
|name = Mine of Mantuban
|image =
|release =
|premium = Yes
|episode = Mine of Mantuban
}}
'''Mine of Mantuban''' is a [[location]] that can be accessed by [[player]]s who purchase the [[Premium Pass]].
{{Premium Pass}}
be372346d6cbc311e0613201883ed706588d76fd
Pirate Hideout
0
442
1482
732
2024-03-26T09:26:42Z
BlackHawk
10
wikitext
text/x-wiki
{{Infobox Location
|name = Pirate Hideout
|image =
|release =
|premium =
|episode =
}}
The '''Pirate Hideout''' is a [[location]]. It contains [[Gurnard]]s, [[Pirate]]s, [[Limpet]]s, [[Wrack]]s, and a few interactable scenery items.
c21bca78828dd7033659df254c17780ff922b402
Quiet Grove
0
101
1483
378
2024-03-26T09:27:09Z
BlackHawk
10
wikitext
text/x-wiki
{{Infobox Location
|name = Quiet Grove
|image = Quiet Grove.jpg
|release =
|premium =
|episode =
}}
The '''Quiet Grove''' is a location. It has an entrance to a mine.
a85541947b36673ae95b551089243aaa5fa18f8d
Southeast Sewer
0
88
1484
380
2024-03-26T09:27:25Z
BlackHawk
10
wikitext
text/x-wiki
{{Infobox Location
|name = Southeast Sewer
|image = Southeast Sewer.jpg
|release =
|premium =
|episode =
}}
The '''Southeast Sewer''' is a location.
522750e3a6b6603f8b2d05b0b30be48f75674e1f
Tanners Road
0
80
1485
365
2024-03-26T09:27:53Z
BlackHawk
10
wikitext
text/x-wiki
{{Infobox Location
|name = Tanners Road
|image = Tanners Road.jpg
|release =
|premium = No
|episode = Hopeport
}}
'''Tanners Road''' is a road in [[Hopeport]]. It features various market stalls.
711a520f7f389722a00f34a076c878011e896cce
Truck Cave
0
94
1486
350
2024-03-26T09:28:14Z
BlackHawk
10
wikitext
text/x-wiki
{{Infobox Location
|name = Truck Cave
|image = Truck Cave.jpg
|release =
|premium =
|episode =
}}
The '''Truck Cave''' is a cave filled with minecart rails.
b9a888072d0b3ab96e50116cf7fdb41eb00cb4bc
Factions
0
72
1487
1393
2024-03-26T09:29:10Z
BlackHawk
10
wikitext
text/x-wiki
[[File:Factions.jpg|thumb|right|Examples of the three factions.]]
'''Factions''' in [[Brighter Shores]] allow the [[player]] to specialise in using a specific [[combat]] style, though all factions have access to [[melee]], [[ranged]] and [[magic]]. Players start off as a guard with the option to choose between being a [[Cryoknight]], [[Guardian]] or [[Hammermage]].
{{Quote2|You will discover powerful magic sources and become one of the legendary classes of old: Cryoknight, Guardian or Hammermage. Which is fortunate, because something is corrupting the deepest reaches of the nearby Hopeforest, and only through the strength of your new-found powers will you be able to deal with it.|Official website{{CiteGeneral|url=https://brightershores.com|title=Official Brighter Shores website|date=23 March 2024|accessdate=23 March 2024|archiveurl=https://archive.is/BaZ8w|archivedate=23 March 2024}}}}
==Factions==
* The [[Cryoknight]] ([[File:Cryoknight icon.svg|18px]]) faction is focused on melee combat, using weapons like [[sword]]s alongside a [[shield]].
* [[Guardian]]s ([[File:Guardian icon.svg|18px]]) use ranged combat, preferring to wield weapons like [[crossbow]]s.
* The [[Hammermage]] ([[File:Hammermage icon.svg|18px]]) faction fights using a mix of melee and magic.
==References==
{{Reflist}}
{{Factions}}
{{Mechanics}}
ef360eb6a3df3c4cae8ddbed657fec01ee00d7b2
Locations
0
366
1488
775
2024-03-26T14:39:59Z
Wolaznik
8
Quiet Grove
wikitext
text/x-wiki
'''Locations''' are places that exist in the [[Brighter Shores]] game world.
==Locations==
* [[Hopeport]]
* [[Hopeforest]]
* [[Mine of Mantuban]]
* [[Quiet Grove]]
* [[Crenopolis]]
[[Category:Locations|*]]
1f890eb6aff548eb411bdbdf2bd45d2f96497d81
Module:Infobox
828
102
1489
1395
2024-03-26T15:48:41Z
Gau Cho
5
Clean up, annotated. Finalized, hopefully not many bugs
Scribunto
text/plain
--[=[
-- For documentation, see [[Module:Infobox/doc]]
--]=]
-- <nowiki>
-- Edit button for unknown params
local editbutton = require('Module:Edit button')
local Infobox = {}
Infobox.__index = Infobox
--[[
Infobox class
-- config: table containing configuration parameters
-- params : definitions for each used value
-- args : values passed from the Template
---- the following values are treated specially: default_version, version, version1, version2...
--]]
function Infobox.new(config, params, args)
local obj = setmetatable({
args_raw = args, -- parameters (uncleaned)
args_parsed = {}, -- parsed parameters
args_smw = {}, -- parameters parsed for smw
infobox_name = nil, -- template name
param_names = {}, -- ordered param list
params = {}, -- param definitions
max_buttons = 6, -- If there are more buttons than the max, the buttons will become a dropdown menu
default_version = 1, -- default version to populate the infobox
versions = nil, -- number of versions
version_names = {}, -- title of each version (for selection and SMW)
rtable = nil, -- infobox table to return at the end
switch_datatable = nil, -- datatable for javascript for switch infoboxes
categories = {}, -- set of categories
errors = {}, -- list of errors
__smw_debug = {}, -- debug data for smw subobjects
},
Infobox)
-- Step 1, setup config vars and count the versions
obj:config(config)
obj:parse_versions()
-- Step 2, process the params
obj:define_params(params)
obj:parse_params()
-- Table
obj:table_header()
obj:buttons()
-- Misc
obj:store_smw()
obj:parse_categories()
return obj
end
--[[
Refers to a param after being processed by the validating func
Used in add_row(), define_params() and is_param_defined()
--]]
function Infobox.param(param_name)
param = {
property = 'args_parsed',
param_name = param_name,
}
return param
end
--[[
Refers to a param in raw form as passed from the Template
Used in add_row(), define_params() and is_param_defined()
--]]
function Infobox.raw_param(param_name)
param = {
property = 'args_raw',
param_name = param_name,
}
return param
end
--[[
Refers to a param after being processed by the validating smw_func
Used in add_row(), define_params() and is_param_defined()
--]]
function Infobox.smw_param(param_name)
param = {
property = 'args_smw',
param_name = param_name,
}
return param
end
--[[
Checks to see if a param is defined.
-- param: Infobox.param(name), Infobox.raw_param(name) or Infobox.smw_param(name)
Returns 0 if param is never defined
1 if param is defined for a fraction of the versions
2 if param is defined for all versions
]]
function Infobox:is_param_defined(param)
local undefined = 0
local defined = 0
for version = 1, self.versions do
local value = self:get_param(param, version)
if value ~= nil then
defined = 1
else
undefined = 1
end
end
return 1 + defined - undefined
end
--[[
Adds a row to the infobox table
Parameter should be a table of cells, where each cell is a table with the following arguments:
-- tag : 'td' or 'th'
-- content : a string or Infobox.param(name), Infobox.raw_param(name), Infobox.smw_param(name)
-- attr (optional) : mw.html:attr({ arg1 = '1', ... })
-- css (optional) : mw.html:css({ arg1 = '1', ...)
-- class (optional) : mw.html:addClass('arg')
---- class also supports a table of values, even though mw.html:addClass() does not
---- common classes: infobox-subheader
-- rowspan (optional) : mw.html:attr('rowspan',arg)
-- colspan (optional) : mw.html:attr('colspan',arg)
-- title (optional) : mw.html:attr('title',arg)
The row itself may be assigned a single class by setting the value of the key addClass
-- addClass : mw.html:addClass('arg')
-- this function currently only supports a single string
--]]
function Infobox:add_row(...)
local args = ...
local _row = self.rtable:tag('tr')
-- For each cell
for _, v in ipairs(args) do
local _cell = _row:tag(v.tag)
-- Optional parameters
if v.attr then
_cell:attr(v.attr)
end
if v.colspan then
_cell:attr('colspan',v.colspan)
end
if v.rowspan then
_cell:attr('rowspan',v.rowspan)
end
if v.title then
_cell:attr('title',v.title)
end
if v.css then
_cell:css(v.css)
end
if v.class then
if type(v.class) == 'string' then
_cell:addClass(v.class)
-- mw.html:addClass() doesn't function with tables, add in a loop
elseif type(v.class) == 'table' then
for _, w in ipairs(v.class) do
_cell:addClass(w)
end
end
end
-- Populate the cell contents
local content = self:get_param(v.content, self.default_version)
if content == nil then
content = self.params[v.content.param_name].empty
end
_cell:wikitext(content)
-- Add the switch data if multiple values exist
data_attr_param = self:add_switch_data(v.content)
if data_attr_param then
_cell:attr('data-attr-param', data_attr_param)
end
end
-- allow classes to be defined on the whole row
if args.addClass then
_row:addClass(args.addClass)
end
return self
end
--[[
Adds a blank row of padding spanning the given number of columns
--]]
function Infobox:pad(colspan, class)
local tr = self:tag('tr'):tag('td'):attr('colspan', colspan or 1):addClass('infobox-padding')
if class then
tr:addClass(class)
end
return self
end
--[[
Adds a class to the table as a whole
--]]
function Infobox:addClass(arg)
self.rtable:addClass(arg)
return self
end
--[[
Setup config values
-- config: table containing configuration parameters
---- infobox_name = mandatory unique identifier for this infobox, used for css
---- max_buttuons = max number of switch buttons before using a dropdown list instead
--]]
function Infobox:config(config)
for k, v in pairs(config) do
if k == 'infobox_name' then
self.infobox_name = mw.ustring.gsub(v, '%s', '_')
elseif k == 'max_buttons' then
self.max_buttons = tonumber(v)
end
end
if self.infobox_name == nil then
table.insert(self.errors, 'infobox_name needs to be defined in Infobox.new()\'s config!')
end
return self
end
--[[
Counts the number of versions in the infobox
Populates Infobox.version_names
Sets Infobox.default_version
--]]
function Infobox:parse_versions()
-- Count the versions and setup self.version_names
local i = 1
while self.args_raw['version'..i] do
table.insert(self.version_names, self.args_raw['version'..i])
i = i + 1
end
self.versions = i - 1
-- Handle the no version case - check for a custom version_name
if self.versions == 0 then
table.insert(self.version_names, self.args_raw['version'] or 'DEFAULT')
end
-- Should either have 0 or 2+ versions
if self.versions == 1 then
table.insert(self.errors, 'There should be multiple versions or no versions. If defining a custom version name for a single entry, use "version=Name" instead of "version1=Name".')
self.versions = 0
end
-- Check for a default_version
if self.args_raw['default_version'] then
self.default_version = tonumber(self.args_raw['default_version'])
if self.default_version > self.versions then -- Make sure the default version exists
self.default_version = 1
end
end
end
--[[
Define all used parameters (except for default_version/version)
-- name : parameter name as used in the Template
-- func : function to validate and process the Template argument
-- If func is a function, will call func(Infobox.raw_param(name))
-- If func is a table, contains the following key-value pairs:
---- name : function
---- params : list of arguments to pass to the function (use Infobox.raw_param(),
---- Infobox.param() and Infobox.smw_param() to use arguments)
-- empty (optional) : text to display in the infobox if func returns nil, defaults to "? (edit)"
-- category_never : category to add if func returns nil for all versions
-- category_partial : category to add if func returns nil for some versions, but a value for other versions
-- category_incomplete : category to add if func returns nil for at least 1 version (i.e. category_never and category_partial combined)
-- category_complete : category to add if func returns a value for all versions
-- smw_property (optional) : if this string is defined, the parameter will be saved into smw
-- smw_func (optional) : function to validate and process the Template argument to save into smw
-- func is used by default if smw_func is not defined
--]]
function Infobox:define_params(...)
-- For every parameter, store its corresponding function to self.params
for _, v in ipairs(...) do
if v.name then
local param = {}
-- Copy the function
if type(v.func) == 'function' or type(v.func) == 'table' then
param.func = v.func
end
-- If smw_property is defined, then use smw_func, or default to func if it is not defined
if v.smw_property then
param.smw_property = v.smw_property
if type(v.smw_func) == 'function' or type(v.smw_func) == 'table' then
param.smw_func = v.smw_func
else
param.smw_func = param.func
end
end
-- If empty is not defined, default message is "? (edit)"
param.empty = v.empty or editbutton("'''?''' (edit)")
-- Get the category names
param.category_never = v.category_never
param.category_partial = v.category_partial
param.category_incomplete = v.category_incomplete
param.category_complete = v.category_complete
-- Store the param
self.params[v.name] = param
table.insert(self.param_names, v.name)
end
end
return self
end
--[[
Fetches a param value. If the value is nil, will return the default value instead
-- arg: a non-table value (string, number, etc), or Infobox.param(name), Infobox.raw_param(name), Infobox.smw_param(name)
-- version: 0/'' for default, or else a number
Returns arg if a constant
param value (or default value) if Infobox.param(name), Infobox.raw_param(name), Infobox.smw_param(name)
--]]
function Infobox:get_param(arg, version)
if version == 0 then
version = ''
end
-- Handle Infobox.param(), Infobox.raw_param(), Infobox.smw_param()
if type(arg) == 'table' then
local value = self[arg.property][arg.param_name..version]
-- If nil, grab default value (which could be nil as well)
if value == nil then
value = self[arg.property][arg.param_name]
end
return value
end
-- Everything else passes through unmodified (string, number, etc)
return arg
end
--[[
Calculates the parsed value of a param
-- param_name : param_name as a string
-- version : 0/'' for default, or else a number
-- smw : boolean, will use smw_func if true, or func is false
--]]
function Infobox:parse_param(param_name, version, smw)
if version == 0 then
version = ''
end
-- use func or smw_func depending on smw argument
local param = self.params[param_name]
local func = smw and param.smw_func or param.func
-- call functions by passing the param_name
if type(func) == 'function' then
return func(self:get_param(self.raw_param(param_name), version))
-- call tables by grabbing the function and reading the param arguments
elseif type(func) == 'table' then
local func_name = func.name
local func_params = func.params
local func_fetched_params = {}
for _, func_param in ipairs(func_params) do
table.insert(func_fetched_params, self:get_param(func_param, version))
end
return func_name(unpack(func_fetched_params))
else
table.insert(self.errors, 'Invalid param definition for '..param_name)
end
end
--[[
Parses all the param values (args_parsed and args_smw)
--]]
function Infobox:parse_params()
-- Calculate the param value for all params and all versions
for _, param_name in ipairs(self.param_names) do
for version=0, self.versions do
if version == 0 then
version = ''
end
-- get the parsed value
self.args_parsed[param_name..version] = self:parse_param(param_name, version, false)
-- Only get the smw value if smw_property is defined
if self.params[param_name].smw_property then
self.args_smw[param_name..version] = self:parse_param(param_name, version, true)
end
end
end
end
--[[
Creates the table header
--]]
function Infobox:table_header()
-- Create infobox table
self.rtable = mw.html.create('table')
:addClass('plainlinks')
:addClass('infobox')
:addClass('infobox-'..self.infobox_name)
-- Create the switch datatable if multiple versions
if self.versions > 1 then
self.rtable:addClass('infobox-switch')
self.switch_datatable = mw.html.create('div')
:addClass('infobox-switch-resources')
:addClass('infobox-resources-'..self.infobox_name)
:addClass('hidden')
self.switch_datatable:tag('span'):wikitext('Versions: '..self.versions)
self.switch_datatable:tag('span'):wikitext('Default version: '..self.default_version)
end
return self
end
--[[
If multiple versions exist, creates a set of buttons for switching
-- self.max_buttons : if the number of versions exceeds this value, a dropdown will be created instead
--]]
function Infobox:buttons()
if self.versions < 2 then
return
end
-- Button caption
local buttons = self.rtable:tag('caption')
:tag('div')
:addClass('infobox-buttons')
:attr('data-default-version', self.default_version)
-- Dropdown list instead of buttons if too many versions
if self.versions > self.max_buttons then
buttons:addClass('infobox-buttons-select')
end
-- Create all the buttons
for version=1, self.versions do
buttons:tag('span')
:attr('data-switch-index', version)
:attr('data-switch-anchor', '#'..self.version_names[version])
:addClass('button')
:wikitext(self.version_names[version])
end
end
--[[
For each version, stores a subobject for all params that have smw_property defined
--]]
function Infobox:store_smw()
for version=1, self.versions do
-- Generate a subobject name
-- Reminder - subobject name cannot have a . in the first 5 characters
local subobject_name = 'Infobox.'..mw.title.getCurrentTitle().fullText..'#'..self.version_names[version]
-- Store each param that has smw_property defined and is not nil
local subobject = {}
for _, param_name in ipairs(self.param_names) do
local property = self.params[param_name].smw_property
if property then
value = self:get_param(self.smw_param(param_name), version)
if value ~= nil then
subobject[property] = value
end
end
end
-- Keep a copy for debugging
self.__smw_debug[subobject_name] = subobject
-- Save subobjects if not in mainspace
if mw.title.getCurrentTitle():inNamespace(0) then
local result = mw.smw.subobject(subobject, subobject_name)
if result ~= true then
table.insert(self.errors, 'SMW error: '..result.error)
end
end
end
end
--[[
Automatically add categories for each param as defined in define_params()
--]]
function Infobox:parse_categories()
for _, param_name in ipairs(self.param_names) do
local param = self.params[param_name]
local defined = self:is_param_defined(Infobox.param(param_name))
if defined == 0 and param.category_never then
self.categories[param.category_never] = 1
end
if defined == 1 and param.category_partial then
self.categories[param.category_partial] = 1
end
if defined < 2 and param.category_incomplete then
self.categories[param.category_incomplete] = 1
end
if defined == 2 and param.category_complete then
self.categories[param.category_complete] = 1
end
end
end
--[[
When a parameter is added into the table, add the alternative versions' data into the switch datatable
-- content : a non-table value (string, number, etc), or Infobox.param(name), Infobox.raw_param(name), Infobox.smw_param(name)
Returns the name of the parameter in the tag 'data-attr-param'
--]]
function Infobox:add_switch_data(content)
if self.versions <= 1 then
return false
end
-- Only needed for non-constant params
if type(content) ~= 'table' then
return false
end
-- Only needed if the param changes value between different versions
local first_value = self:get_param(content, 1)
local all_same = true
for version=2, self.versions do
if first_value ~= self:get_param(content, version) then
all_same = false
break
end
end
if all_same then
return false
end
-- Let's build the datatable
-- datum name: Prepend raw__ or smw__ if not a parsed argument
local name = content.param_name
if content.property == 'args_raw' then
name = 'raw__' + name
end
if content.property == 'args_smw' then
name = 'smw__' + name
end
data_param = self.switch_datatable:tag('span'):attr('data-attr-param', name)
-- Add each version to the datatable
for version=1, self.versions do
text = self:get_param(content, version)
if text == nil then
text = self.params[content.param_name].empty
end
data_param:tag('span'):attr('data-attr-index', version):wikitext(text)
end
-- return the 'data-attr-param' name
return name
end
--[[
Override tostring
--]]
function Infobox:__tostring()
-- Create error messages
local error_text = ''
for _, v in ipairs(self.errors) do
error_text = error_text..'<span class="mw-message-box-error">'..v..'</span>'
end
-- Create categories
local category_text = ''
for key, _ in pairs(self.categories) do
category_text = category_text..'[[Category:'..key..']]'
end
return tostring(self.rtable) .. tostring(self.switch_datatable) .. error_text .. category_text
end
--[[
Debug function
--]]
function Infobox:dump()
-- Temporarily detach the metatable so we don't override tostring anymore, allowing us to use dumpObject
setmetatable(self, nil)
mw.log(mw.dumpObject(self))
setmetatable(self, Infobox)
mw.log(tostring(self))
end
return Infobox
e6883bf7660b0101d1d9fd9e821700c21865cff5
1503
1489
2024-03-26T17:53:04Z
Gau Cho
5
Infobox:pad bugfix
Scribunto
text/plain
--[=[
-- For documentation, see [[Module:Infobox/doc]]
--]=]
-- <nowiki>
-- Edit button for unknown params
local editbutton = require('Module:Edit button')
local Infobox = {}
Infobox.__index = Infobox
--[[
Infobox class
-- config: table containing configuration parameters
-- params : definitions for each used value
-- args : values passed from the Template
---- the following values are treated specially: default_version, version, version1, version2...
--]]
function Infobox.new(config, params, args)
local obj = setmetatable({
args_raw = args, -- parameters (uncleaned)
args_parsed = {}, -- parsed parameters
args_smw = {}, -- parameters parsed for smw
infobox_name = nil, -- template name
param_names = {}, -- ordered param list
params = {}, -- param definitions
max_buttons = 6, -- If there are more buttons than the max, the buttons will become a dropdown menu
default_version = 1, -- default version to populate the infobox
versions = nil, -- number of versions
version_names = {}, -- title of each version (for selection and SMW)
rtable = nil, -- infobox table to return at the end
switch_datatable = nil, -- datatable for javascript for switch infoboxes
categories = {}, -- set of categories
errors = {}, -- list of errors
__smw_debug = {}, -- debug data for smw subobjects
},
Infobox)
-- Step 1, setup config vars and count the versions
obj:config(config)
obj:parse_versions()
-- Step 2, process the params
obj:define_params(params)
obj:parse_params()
-- Table
obj:table_header()
obj:buttons()
-- Misc
obj:store_smw()
obj:parse_categories()
return obj
end
--[[
Refers to a param after being processed by the validating func
Used in add_row(), define_params() and is_param_defined()
--]]
function Infobox.param(param_name)
param = {
property = 'args_parsed',
param_name = param_name,
}
return param
end
--[[
Refers to a param in raw form as passed from the Template
Used in add_row(), define_params() and is_param_defined()
--]]
function Infobox.raw_param(param_name)
param = {
property = 'args_raw',
param_name = param_name,
}
return param
end
--[[
Refers to a param after being processed by the validating smw_func
Used in add_row(), define_params() and is_param_defined()
--]]
function Infobox.smw_param(param_name)
param = {
property = 'args_smw',
param_name = param_name,
}
return param
end
--[[
Checks to see if a param is defined.
-- param: Infobox.param(name), Infobox.raw_param(name) or Infobox.smw_param(name)
Returns 0 if param is never defined
1 if param is defined for a fraction of the versions
2 if param is defined for all versions
]]
function Infobox:is_param_defined(param)
local undefined = 0
local defined = 0
for version = 1, self.versions do
local value = self:get_param(param, version)
if value ~= nil then
defined = 1
else
undefined = 1
end
end
return 1 + defined - undefined
end
--[[
Adds a row to the infobox table
Parameter should be a table of cells, where each cell is a table with the following arguments:
-- tag : 'td' or 'th'
-- content : a string or Infobox.param(name), Infobox.raw_param(name), Infobox.smw_param(name)
-- attr (optional) : mw.html:attr({ arg1 = '1', ... })
-- css (optional) : mw.html:css({ arg1 = '1', ...)
-- class (optional) : mw.html:addClass('arg')
---- class also supports a table of values, even though mw.html:addClass() does not
---- common classes: infobox-subheader
-- rowspan (optional) : mw.html:attr('rowspan',arg)
-- colspan (optional) : mw.html:attr('colspan',arg)
-- title (optional) : mw.html:attr('title',arg)
The row itself may be assigned a single class by setting the value of the key addClass
-- addClass : mw.html:addClass('arg')
-- this function currently only supports a single string
--]]
function Infobox:add_row(...)
local args = ...
local _row = self.rtable:tag('tr')
-- For each cell
for _, v in ipairs(args) do
local _cell = _row:tag(v.tag)
-- Optional parameters
if v.attr then
_cell:attr(v.attr)
end
if v.colspan then
_cell:attr('colspan',v.colspan)
end
if v.rowspan then
_cell:attr('rowspan',v.rowspan)
end
if v.title then
_cell:attr('title',v.title)
end
if v.css then
_cell:css(v.css)
end
if v.class then
if type(v.class) == 'string' then
_cell:addClass(v.class)
-- mw.html:addClass() doesn't function with tables, add in a loop
elseif type(v.class) == 'table' then
for _, w in ipairs(v.class) do
_cell:addClass(w)
end
end
end
-- Populate the cell contents
local content = self:get_param(v.content, self.default_version)
if content == nil then
content = self.params[v.content.param_name].empty
end
_cell:wikitext(content)
-- Add the switch data if multiple values exist
data_attr_param = self:add_switch_data(v.content)
if data_attr_param then
_cell:attr('data-attr-param', data_attr_param)
end
end
-- allow classes to be defined on the whole row
if args.addClass then
_row:addClass(args.addClass)
end
return self
end
--[[
Adds a blank row of padding spanning the given number of columns
--]]
function Infobox:pad(colspan, class)
local tr = self.rtable:tag('tr'):tag('td'):attr('colspan', colspan or 1):addClass('infobox-padding')
if class then
tr:addClass(class)
end
return self
end
--[[
Adds a class to the table as a whole
--]]
function Infobox:addClass(arg)
self.rtable:addClass(arg)
return self
end
--[[
Setup config values
-- config: table containing configuration parameters
---- infobox_name = mandatory unique identifier for this infobox, used for css
---- max_buttuons = max number of switch buttons before using a dropdown list instead
--]]
function Infobox:config(config)
for k, v in pairs(config) do
if k == 'infobox_name' then
self.infobox_name = mw.ustring.gsub(v, '%s', '_')
elseif k == 'max_buttons' then
self.max_buttons = tonumber(v)
end
end
if self.infobox_name == nil then
table.insert(self.errors, 'infobox_name needs to be defined in Infobox.new()\'s config!')
end
return self
end
--[[
Counts the number of versions in the infobox
Populates Infobox.version_names
Sets Infobox.default_version
--]]
function Infobox:parse_versions()
-- Count the versions and setup self.version_names
local i = 1
while self.args_raw['version'..i] do
table.insert(self.version_names, self.args_raw['version'..i])
i = i + 1
end
self.versions = i - 1
-- Handle the no version case - check for a custom version_name
if self.versions == 0 then
table.insert(self.version_names, self.args_raw['version'] or 'DEFAULT')
end
-- Should either have 0 or 2+ versions
if self.versions == 1 then
table.insert(self.errors, 'There should be multiple versions or no versions. If defining a custom version name for a single entry, use "version=Name" instead of "version1=Name".')
self.versions = 0
end
-- Check for a default_version
if self.args_raw['default_version'] then
self.default_version = tonumber(self.args_raw['default_version'])
if self.default_version > self.versions then -- Make sure the default version exists
self.default_version = 1
end
end
end
--[[
Define all used parameters (except for default_version/version)
-- name : parameter name as used in the Template
-- func : function to validate and process the Template argument
-- If func is a function, will call func(Infobox.raw_param(name))
-- If func is a table, contains the following key-value pairs:
---- name : function
---- params : list of arguments to pass to the function (use Infobox.raw_param(),
---- Infobox.param() and Infobox.smw_param() to use arguments)
-- empty (optional) : text to display in the infobox if func returns nil, defaults to "? (edit)"
-- category_never : category to add if func returns nil for all versions
-- category_partial : category to add if func returns nil for some versions, but a value for other versions
-- category_incomplete : category to add if func returns nil for at least 1 version (i.e. category_never and category_partial combined)
-- category_complete : category to add if func returns a value for all versions
-- smw_property (optional) : if this string is defined, the parameter will be saved into smw
-- smw_func (optional) : function to validate and process the Template argument to save into smw
-- func is used by default if smw_func is not defined
--]]
function Infobox:define_params(...)
-- For every parameter, store its corresponding function to self.params
for _, v in ipairs(...) do
if v.name then
local param = {}
-- Copy the function
if type(v.func) == 'function' or type(v.func) == 'table' then
param.func = v.func
end
-- If smw_property is defined, then use smw_func, or default to func if it is not defined
if v.smw_property then
param.smw_property = v.smw_property
if type(v.smw_func) == 'function' or type(v.smw_func) == 'table' then
param.smw_func = v.smw_func
else
param.smw_func = param.func
end
end
-- If empty is not defined, default message is "? (edit)"
param.empty = v.empty or editbutton("'''?''' (edit)")
-- Get the category names
param.category_never = v.category_never
param.category_partial = v.category_partial
param.category_incomplete = v.category_incomplete
param.category_complete = v.category_complete
-- Store the param
self.params[v.name] = param
table.insert(self.param_names, v.name)
end
end
return self
end
--[[
Fetches a param value. If the value is nil, will return the default value instead
-- arg: a non-table value (string, number, etc), or Infobox.param(name), Infobox.raw_param(name), Infobox.smw_param(name)
-- version: 0/'' for default, or else a number
Returns arg if a constant
param value (or default value) if Infobox.param(name), Infobox.raw_param(name), Infobox.smw_param(name)
--]]
function Infobox:get_param(arg, version)
if version == 0 then
version = ''
end
-- Handle Infobox.param(), Infobox.raw_param(), Infobox.smw_param()
if type(arg) == 'table' then
local value = self[arg.property][arg.param_name..version]
-- If nil, grab default value (which could be nil as well)
if value == nil then
value = self[arg.property][arg.param_name]
end
return value
end
-- Everything else passes through unmodified (string, number, etc)
return arg
end
--[[
Calculates the parsed value of a param
-- param_name : param_name as a string
-- version : 0/'' for default, or else a number
-- smw : boolean, will use smw_func if true, or func is false
--]]
function Infobox:parse_param(param_name, version, smw)
if version == 0 then
version = ''
end
-- use func or smw_func depending on smw argument
local param = self.params[param_name]
local func = smw and param.smw_func or param.func
-- call functions by passing the param_name
if type(func) == 'function' then
return func(self:get_param(self.raw_param(param_name), version))
-- call tables by grabbing the function and reading the param arguments
elseif type(func) == 'table' then
local func_name = func.name
local func_params = func.params
local func_fetched_params = {}
for _, func_param in ipairs(func_params) do
table.insert(func_fetched_params, self:get_param(func_param, version))
end
return func_name(unpack(func_fetched_params))
else
table.insert(self.errors, 'Invalid param definition for '..param_name)
end
end
--[[
Parses all the param values (args_parsed and args_smw)
--]]
function Infobox:parse_params()
-- Calculate the param value for all params and all versions
for _, param_name in ipairs(self.param_names) do
for version=0, self.versions do
if version == 0 then
version = ''
end
-- get the parsed value
self.args_parsed[param_name..version] = self:parse_param(param_name, version, false)
-- Only get the smw value if smw_property is defined
if self.params[param_name].smw_property then
self.args_smw[param_name..version] = self:parse_param(param_name, version, true)
end
end
end
end
--[[
Creates the table header
--]]
function Infobox:table_header()
-- Create infobox table
self.rtable = mw.html.create('table')
:addClass('plainlinks')
:addClass('infobox')
:addClass('infobox-'..self.infobox_name)
-- Create the switch datatable if multiple versions
if self.versions > 1 then
self.rtable:addClass('infobox-switch')
self.switch_datatable = mw.html.create('div')
:addClass('infobox-switch-resources')
:addClass('infobox-resources-'..self.infobox_name)
:addClass('hidden')
self.switch_datatable:tag('span'):wikitext('Versions: '..self.versions)
self.switch_datatable:tag('span'):wikitext('Default version: '..self.default_version)
end
return self
end
--[[
If multiple versions exist, creates a set of buttons for switching
-- self.max_buttons : if the number of versions exceeds this value, a dropdown will be created instead
--]]
function Infobox:buttons()
if self.versions < 2 then
return
end
-- Button caption
local buttons = self.rtable:tag('caption')
:tag('div')
:addClass('infobox-buttons')
:attr('data-default-version', self.default_version)
-- Dropdown list instead of buttons if too many versions
if self.versions > self.max_buttons then
buttons:addClass('infobox-buttons-select')
end
-- Create all the buttons
for version=1, self.versions do
buttons:tag('span')
:attr('data-switch-index', version)
:attr('data-switch-anchor', '#'..self.version_names[version])
:addClass('button')
:wikitext(self.version_names[version])
end
end
--[[
For each version, stores a subobject for all params that have smw_property defined
--]]
function Infobox:store_smw()
for version=1, self.versions do
-- Generate a subobject name
-- Reminder - subobject name cannot have a . in the first 5 characters
local subobject_name = 'Infobox.'..mw.title.getCurrentTitle().fullText..'#'..self.version_names[version]
-- Store each param that has smw_property defined and is not nil
local subobject = {}
for _, param_name in ipairs(self.param_names) do
local property = self.params[param_name].smw_property
if property then
value = self:get_param(self.smw_param(param_name), version)
if value ~= nil then
subobject[property] = value
end
end
end
-- Keep a copy for debugging
self.__smw_debug[subobject_name] = subobject
-- Save subobjects if not in mainspace
if mw.title.getCurrentTitle():inNamespace(0) then
local result = mw.smw.subobject(subobject, subobject_name)
if result ~= true then
table.insert(self.errors, 'SMW error: '..result.error)
end
end
end
end
--[[
Automatically add categories for each param as defined in define_params()
--]]
function Infobox:parse_categories()
for _, param_name in ipairs(self.param_names) do
local param = self.params[param_name]
local defined = self:is_param_defined(Infobox.param(param_name))
if defined == 0 and param.category_never then
self.categories[param.category_never] = 1
end
if defined == 1 and param.category_partial then
self.categories[param.category_partial] = 1
end
if defined < 2 and param.category_incomplete then
self.categories[param.category_incomplete] = 1
end
if defined == 2 and param.category_complete then
self.categories[param.category_complete] = 1
end
end
end
--[[
When a parameter is added into the table, add the alternative versions' data into the switch datatable
-- content : a non-table value (string, number, etc), or Infobox.param(name), Infobox.raw_param(name), Infobox.smw_param(name)
Returns the name of the parameter in the tag 'data-attr-param'
--]]
function Infobox:add_switch_data(content)
if self.versions <= 1 then
return false
end
-- Only needed for non-constant params
if type(content) ~= 'table' then
return false
end
-- Only needed if the param changes value between different versions
local first_value = self:get_param(content, 1)
local all_same = true
for version=2, self.versions do
if first_value ~= self:get_param(content, version) then
all_same = false
break
end
end
if all_same then
return false
end
-- Let's build the datatable
-- datum name: Prepend raw__ or smw__ if not a parsed argument
local name = content.param_name
if content.property == 'args_raw' then
name = 'raw__' + name
end
if content.property == 'args_smw' then
name = 'smw__' + name
end
data_param = self.switch_datatable:tag('span'):attr('data-attr-param', name)
-- Add each version to the datatable
for version=1, self.versions do
text = self:get_param(content, version)
if text == nil then
text = self.params[content.param_name].empty
end
data_param:tag('span'):attr('data-attr-index', version):wikitext(text)
end
-- return the 'data-attr-param' name
return name
end
--[[
Override tostring
--]]
function Infobox:__tostring()
-- Create error messages
local error_text = ''
for _, v in ipairs(self.errors) do
error_text = error_text..'<span class="mw-message-box-error">'..v..'</span>'
end
-- Create categories
local category_text = ''
for key, _ in pairs(self.categories) do
category_text = category_text..'[[Category:'..key..']]'
end
return tostring(self.rtable) .. tostring(self.switch_datatable) .. error_text .. category_text
end
--[[
Debug function
--]]
function Infobox:dump()
-- Temporarily detach the metatable so we don't override tostring anymore, allowing us to use dumpObject
setmetatable(self, nil)
mw.log(mw.dumpObject(self))
setmetatable(self, Infobox)
mw.log(tostring(self))
end
return Infobox
f75f549e4c089e89f7d5a31b686c0a9e18b5c83b
Module:Infobox/doc
828
504
1490
936
2024-03-26T16:54:33Z
Gau Cho
5
wikitext
text/x-wiki
{{documentation}}
{{ToC|right}}
==Creating a template step-by-step==
===Import Module:Infobox and Module:Param Parse===
<syntaxhighlight lang="lua">
local Infobox = require('Module:Infobox')
local parse = require('Module:Param Parse')
</syntaxhighlight>
===Unpack the frame arguments from the Template===
<syntaxhighlight lang="lua">
function p.main(frame)
local args = frame:getParent().args
...
</syntaxhighlight>
===Setup the Module config settings===
<syntaxhighlight lang="lua">
local config = {
infobox_name = 'Scenery',
}
</syntaxhighlight>
===Map your arguments to parsing functions===
{{Main|Module:Param Parse}}
Use the functions in [[Module:Param Parse]] to validate and format the data.
<syntaxhighlight lang="lua">
local params = {
{name = 'name', func = parse.has_content, smw_property = 'Name'},
{name = 'image', func = parse.image, smw_property = 'Image', smw_func = parse.image_smw, category_incomplete = 'Scenery missing Image'},
{name = 'examine', func = parse.has_content},
{name = 'episode', func = parse.episode, smw_property = 'Episode', smw_func = parse.episode_smw, category_incomplete = 'Scenery missing Episode'},
...
}
</syntaxhighlight>
===Define an Infobox object===
{{Main|Module:Infobox#new}}
<syntaxhighlight lang="lua">
local infobox = Infobox.new(config, params, args)
</syntaxhighlight>
===Create your table===
{{Main|Module:Infobox#create}}
<syntaxhighlight lang="lua">
infobox
:add_row{
{tag='th', content=Infobox.param('name'), class='infobox.subheader', colspan='2'},
}
:add_row{
{tag='td', content=Infobox.param('image'), colspan='2'},
}
:pad(2)
:add_row{
{tag='td', content='[[Examine]]'},
{tag='td', content=Infobox.param('examine')},
}
:add_row{
{tag='td', content='[[Episode]]'},
{tag='td', content=Infobox.param('episode')},
}
...
</syntaxhighlight>
===You're done!===
<syntaxhighlight lang="lua">
return infobox
end
</syntaxhighlight>
==Functions==
=== Referring to params ===
Each parameter can have a different value for each version. In addition, there are 3 different representations of each value. Therefore, a parameter must be accessed via one of the 3 helper functions:
{| class="wikitable"
! helper function
! example
! explanation
|-
| Infobox.raw_param(name)
| "1000"
| Raw value as passed by the Template
|-
| Infobox.param(name)
| "1,000"
| Value formatted for display in the Infobox
|-
| Infobox.smw_param(name)
| 1000
| Value formatted to be saved as an SMW property
|}
=== Infobox.new(config, params, args) ===
Creates a new infobox. Automatically parses the arguments, creates SMW subobjects and adds categories.
<syntaxhighlight lang="lua">
local infobox = Infobox.new(config, params, args)
</syntaxhighlight>
==== config ====
There are only 2 parameters for config
<syntaxhighlight lang="lua">
local config = {
infobox_name = 'Scenery', -- mandatory unique identifier for css
max_buttons = 6, -- optional, defaults to 6, max number of switch buttons before using a dropdown list instead
}
</syntaxhighlight>
==== params ====
A list of parameters to be processed by the Infobox module
<syntaxhighlight lang="lua">
local params = {
{ name = <param>, func = <func>, ... },
...
}
</syntaxhighlight>
{| class="wikitable"
! key
! value
|-
| name
| parameter name as used in the Template
|-
| func
| A function in [[Module:Param Parse]] to validate and process the Template argument. You can also use a local function, but this is not recommended.
If func is a function, will call func(Infobox.raw_param(name)):
<syntaxhighlight lang="lua">
{name = <param>, func = <func>, ... },
</syntaxhighlight>
If func is a table, it takes the following parameters:
<syntaxhighlight lang="lua">
{name = <param>, func = { name = <func>, params = <func_params>}, ... },
</syntaxhighlight>
{| class="wikitable"
| name
| function in [[Module:Param Parse]]
|-
| params
| a list of parameters to pass the the function, in the form of constants, or Infobox.raw_param(name), Infobox.param(name), Infobox.smw_param(name)
|}
|-
| empty (optional)
| text to display in the infobox if func returns nil; defaults to "? (edit)"
|-
| category_never (optional)
| category to add if func returns nil for all versions
|-
| category_partial (optional)
| ategory to add if func returns nil for some versions, but a value for other versions
|-
| category_incomplete (optional)
| category to add if func returns nil for at least 1 version (i.e. category_never and category_partial combined)
|-
| category_complete (optional)
| category to add if func returns a value for all versions
|-
| smw_property (optional)
| if this string is defined, the parameter will be saved into SMW
|-
| smw_func (optional)
| function to validate and process the Template argument to save into SMW. func is used by default if smw_func is not defined
|}
==== args ====
Arguments passed via the Template
<syntaxhighlight lang="lua">
local args = frame:getParent().args
</syntaxhighlight>
=== infobox:is_param_defined(param) ===
Used to conditionally display a line in the infobox
<syntaxhighlight lang="lua">
infobox:add_row{
{tag='th', content=Infobox.param('name'), class='infobox.subheader', colspan='2'},
}
if infobox:is_param_defined(Infobox.param('owner')) > 0 then
infobox:add_row{
{tag='td', content='[[Owner]]'},
{tag='td', content=Infobox.param('owner')},
}
end
</syntaxhighlight>
{| class="wikitable"
| param
| a parameter referenced via Infobox.raw_param(name), Infobox.param(name) or Infobox.smw_param(name)
|-
| Returns
| 0 if param is never defined
1 if param is defined for a fraction of the versions
2 if param is defined for all versions
|}
=== Infobox:add_row(...) ===
Adds a row to the infobox table. Parameter should be a table of cells:
<syntaxhighlight lang="lua">
infobox:add_row{
{tag='td', content='[[Cell1]]', ...},
{tag='td', content=Infobox.param('param'), ...},
{tag='td', content='[[Cell3]]', ...},
...
addClass = 'row-class'
}
</syntaxhighlight>
Each cell should have a set of key-values, of which only the tag and content are mandatory:
{| class="wikitable"
! key
! value
|-
| tag
| 'td' or 'th'
|-
| content
| a string or Infobox.param(name), Infobox.raw_param(name), Infobox.smw_param(name)
|-
| attr (optional)
| a table of attributes to add to the cell
mw.html:attr({ arg1 = '1', ... })
|-
| css (optional)
| a table of css to add to the cell
mw.html:css({ arg1 = '1', ... })
|-
| class (optional)
| a string with a class to add, or a table of classes to add. '''infobox-subheader''' is commonly used.
mw.html:addClass(...)
|-
| rowspan (optional)
| Set the cell rowspan
mw.html:attr('rowspan',arg)
|-
| rowspan (optional)
| Set the cell colspan
mw.html:attr('colspan',arg)
|-
| title (optional)
| Set the cell title
mw.html:attr('title',arg)
|}
=== Infobox:pad(colspan, class) ===
Adds a blank row of padding spanning the given number of columns. Will always add the class infobox-padding, but can optionally add another class:
<syntaxhighlight lang="lua">
infobox:pad("10", class=<class>)
</syntaxhighlight>
=== Infobox:addClass(class) ===
Adds a class to the entire table
<syntaxhighlight lang="lua">
infobox:addClass(class)
</syntaxhighlight>
e503d0d4b1f8d28a7f479298ff4f3665d6a0e06f
1493
1490
2024-03-26T17:19:50Z
Gau Cho
5
Typo
wikitext
text/x-wiki
{{documentation}}
{{ToC|right}}
==Creating a template step-by-step==
===Import Module:Infobox and Module:Param Parse===
<syntaxhighlight lang="lua">
local Infobox = require('Module:Infobox')
local parse = require('Module:Param Parse')
</syntaxhighlight>
===Unpack the frame arguments from the Template===
<syntaxhighlight lang="lua">
function p.main(frame)
local args = frame:getParent().args
...
</syntaxhighlight>
===Setup the Module config settings===
<syntaxhighlight lang="lua">
local config = {
infobox_name = 'Scenery',
}
</syntaxhighlight>
===Map your arguments to parsing functions===
{{Main|Module:Param Parse}}
Use the functions in [[Module:Param Parse]] to validate and format the data.
<syntaxhighlight lang="lua">
local params = {
{name = 'name', func = parse.has_content, smw_property = 'Name'},
{name = 'image', func = parse.image, smw_property = 'Image', smw_func = parse.image_smw, category_incomplete = 'Scenery missing Image'},
{name = 'examine', func = parse.has_content},
{name = 'episode', func = parse.episode, smw_property = 'Episode', smw_func = parse.episode_smw, category_incomplete = 'Scenery missing Episode'},
...
}
</syntaxhighlight>
===Define an Infobox object===
{{Main|Module:Infobox#new}}
<syntaxhighlight lang="lua">
local infobox = Infobox.new(config, params, args)
</syntaxhighlight>
===Create your table===
{{Main|Module:Infobox#create}}
<syntaxhighlight lang="lua">
infobox
:add_row{
{tag='th', content=Infobox.param('name'), class='infobox.subheader', colspan='2'},
}
:add_row{
{tag='td', content=Infobox.param('image'), colspan='2'},
}
:pad(2)
:add_row{
{tag='td', content='[[Examine]]'},
{tag='td', content=Infobox.param('examine')},
}
:add_row{
{tag='td', content='[[Episode]]'},
{tag='td', content=Infobox.param('episode')},
}
...
</syntaxhighlight>
===You're done!===
<syntaxhighlight lang="lua">
return infobox
end
</syntaxhighlight>
==Functions==
=== Referring to params ===
Each parameter can have a different value for each version. In addition, there are 3 different representations of each value. Therefore, a parameter must be accessed via one of the 3 helper functions:
{| class="wikitable"
! helper function
! example
! explanation
|-
| Infobox.raw_param(name)
| "1000"
| Raw value as passed by the Template
|-
| Infobox.param(name)
| "1,000"
| Value formatted for display in the Infobox
|-
| Infobox.smw_param(name)
| 1000
| Value formatted to be saved as an SMW property
|}
=== Infobox.new(config, params, args) ===
Creates a new infobox. Automatically parses the arguments, creates SMW subobjects and adds categories.
<syntaxhighlight lang="lua">
local infobox = Infobox.new(config, params, args)
</syntaxhighlight>
==== config ====
There are only 2 parameters for config
<syntaxhighlight lang="lua">
local config = {
infobox_name = 'Scenery', -- mandatory unique identifier for css
max_buttons = 6, -- optional, defaults to 6, max number of switch buttons before using a dropdown list instead
}
</syntaxhighlight>
==== params ====
A list of parameters to be processed by the Infobox module
<syntaxhighlight lang="lua">
local params = {
{ name = <param>, func = <func>, ... },
...
}
</syntaxhighlight>
{| class="wikitable"
! key
! value
|-
| name
| parameter name as used in the Template
|-
| func
| A function in [[Module:Param Parse]] to validate and process the Template argument. You can also use a local function, but this is not recommended.
If func is a function, will call func(Infobox.raw_param(name)):
<syntaxhighlight lang="lua">
{name = <param>, func = <func>, ... },
</syntaxhighlight>
If func is a table, it takes the following parameters:
<syntaxhighlight lang="lua">
{name = <param>, func = { name = <func>, params = <func_params>}, ... },
</syntaxhighlight>
{| class="wikitable"
| name
| function in [[Module:Param Parse]]
|-
| params
| a list of parameters to pass the the function, in the form of constants, or Infobox.raw_param(name), Infobox.param(name), Infobox.smw_param(name)
|}
|-
| empty (optional)
| text to display in the infobox if func returns nil; defaults to "? (edit)"
|-
| category_never (optional)
| category to add if func returns nil for all versions
|-
| category_partial (optional)
| category to add if func returns nil for some versions, but a value for other versions
|-
| category_incomplete (optional)
| category to add if func returns nil for at least 1 version (i.e. category_never and category_partial combined)
|-
| category_complete (optional)
| category to add if func returns a value for all versions
|-
| smw_property (optional)
| if this string is defined, the parameter will be saved into SMW
|-
| smw_func (optional)
| function to validate and process the Template argument to save into SMW. func is used by default if smw_func is not defined
|}
==== args ====
Arguments passed via the Template
<syntaxhighlight lang="lua">
local args = frame:getParent().args
</syntaxhighlight>
=== infobox:is_param_defined(param) ===
Used to conditionally display a line in the infobox
<syntaxhighlight lang="lua">
infobox:add_row{
{tag='th', content=Infobox.param('name'), class='infobox.subheader', colspan='2'},
}
if infobox:is_param_defined(Infobox.param('owner')) > 0 then
infobox:add_row{
{tag='td', content='[[Owner]]'},
{tag='td', content=Infobox.param('owner')},
}
end
</syntaxhighlight>
{| class="wikitable"
| param
| a parameter referenced via Infobox.raw_param(name), Infobox.param(name) or Infobox.smw_param(name)
|-
| Returns
| 0 if param is never defined
1 if param is defined for a fraction of the versions
2 if param is defined for all versions
|}
=== Infobox:add_row(...) ===
Adds a row to the infobox table. Parameter should be a table of cells:
<syntaxhighlight lang="lua">
infobox:add_row{
{tag='td', content='[[Cell1]]', ...},
{tag='td', content=Infobox.param('param'), ...},
{tag='td', content='[[Cell3]]', ...},
...
addClass = 'row-class'
}
</syntaxhighlight>
Each cell should have a set of key-values, of which only the tag and content are mandatory:
{| class="wikitable"
! key
! value
|-
| tag
| 'td' or 'th'
|-
| content
| a string or Infobox.param(name), Infobox.raw_param(name), Infobox.smw_param(name)
|-
| attr (optional)
| a table of attributes to add to the cell
mw.html:attr({ arg1 = '1', ... })
|-
| css (optional)
| a table of css to add to the cell
mw.html:css({ arg1 = '1', ... })
|-
| class (optional)
| a string with a class to add, or a table of classes to add. '''infobox-subheader''' is commonly used.
mw.html:addClass(...)
|-
| rowspan (optional)
| Set the cell rowspan
mw.html:attr('rowspan',arg)
|-
| rowspan (optional)
| Set the cell colspan
mw.html:attr('colspan',arg)
|-
| title (optional)
| Set the cell title
mw.html:attr('title',arg)
|}
=== Infobox:pad(colspan, class) ===
Adds a blank row of padding spanning the given number of columns. Will always add the class infobox-padding, but can optionally add another class:
<syntaxhighlight lang="lua">
infobox:pad("10", class=<class>)
</syntaxhighlight>
=== Infobox:addClass(class) ===
Adds a class to the entire table
<syntaxhighlight lang="lua">
infobox:addClass(class)
</syntaxhighlight>
0f49b28ccd1dfa6e5d9b28d01a1367497ebb08b2
1502
1493
2024-03-26T17:51:36Z
Gau Cho
5
add local p = {}
wikitext
text/x-wiki
{{documentation}}
{{ToC|right}}
==Creating a template step-by-step==
===Import Module:Infobox and Module:Param Parse===
<syntaxhighlight lang="lua">
local Infobox = require('Module:Infobox')
local parse = require('Module:Param Parse')
</syntaxhighlight>
===Unpack the frame arguments from the Template===
<syntaxhighlight lang="lua">
local p = {}
function p.main(frame)
local args = frame:getParent().args
...
</syntaxhighlight>
===Setup the Module config settings===
<syntaxhighlight lang="lua">
local config = {
infobox_name = 'Scenery',
}
</syntaxhighlight>
===Map your arguments to parsing functions===
{{Main|Module:Param Parse}}
Use the functions in [[Module:Param Parse]] to validate and format the data.
<syntaxhighlight lang="lua">
local params = {
{name = 'name', func = parse.has_content, smw_property = 'Name'},
{name = 'image', func = parse.image, smw_property = 'Image', smw_func = parse.image_smw, category_incomplete = 'Scenery missing Image'},
{name = 'examine', func = parse.has_content},
{name = 'episode', func = parse.episode, smw_property = 'Episode', smw_func = parse.episode_smw, category_incomplete = 'Scenery missing Episode'},
...
}
</syntaxhighlight>
===Define an Infobox object===
{{Main|Module:Infobox#new}}
<syntaxhighlight lang="lua">
local infobox = Infobox.new(config, params, args)
</syntaxhighlight>
===Create your table===
{{Main|Module:Infobox#create}}
<syntaxhighlight lang="lua">
infobox
:add_row{
{tag='th', content=Infobox.param('name'), class='infobox.subheader', colspan='2'},
}
:add_row{
{tag='td', content=Infobox.param('image'), colspan='2'},
}
:pad(2)
:add_row{
{tag='td', content='[[Examine]]'},
{tag='td', content=Infobox.param('examine')},
}
:add_row{
{tag='td', content='[[Episode]]'},
{tag='td', content=Infobox.param('episode')},
}
...
</syntaxhighlight>
===You're done!===
<syntaxhighlight lang="lua">
return infobox
end
return p
</syntaxhighlight>
==Functions==
=== Referring to params ===
Each parameter can have a different value for each version. In addition, there are 3 different representations of each value. Therefore, a parameter must be accessed via one of the 3 helper functions:
{| class="wikitable"
! helper function
! example
! explanation
|-
| Infobox.raw_param(name)
| "1000"
| Raw value as passed by the Template
|-
| Infobox.param(name)
| "1,000"
| Value formatted for display in the Infobox
|-
| Infobox.smw_param(name)
| 1000
| Value formatted to be saved as an SMW property
|}
=== Infobox.new(config, params, args) ===
Creates a new infobox. Automatically parses the arguments, creates SMW subobjects and adds categories.
<syntaxhighlight lang="lua">
local infobox = Infobox.new(config, params, args)
</syntaxhighlight>
==== config ====
There are only 2 parameters for config
<syntaxhighlight lang="lua">
local config = {
infobox_name = 'Scenery', -- mandatory unique identifier for css
max_buttons = 6, -- optional, defaults to 6, max number of switch buttons before using a dropdown list instead
}
</syntaxhighlight>
==== params ====
A list of parameters to be processed by the Infobox module
<syntaxhighlight lang="lua">
local params = {
{ name = <param>, func = <func>, ... },
...
}
</syntaxhighlight>
{| class="wikitable"
! key
! value
|-
| name
| parameter name as used in the Template
|-
| func
| A function in [[Module:Param Parse]] to validate and process the Template argument. You can also use a local function, but this is not recommended.
If func is a function, will call func(Infobox.raw_param(name)):
<syntaxhighlight lang="lua">
{name = <param>, func = <func>, ... },
</syntaxhighlight>
If func is a table, it takes the following parameters:
<syntaxhighlight lang="lua">
{name = <param>, func = { name = <func>, params = <func_params>}, ... },
</syntaxhighlight>
{| class="wikitable"
| name
| function in [[Module:Param Parse]]
|-
| params
| a list of parameters to pass the the function, in the form of constants, or Infobox.raw_param(name), Infobox.param(name), Infobox.smw_param(name)
|}
|-
| empty (optional)
| text to display in the infobox if func returns nil; defaults to "? (edit)"
|-
| category_never (optional)
| category to add if func returns nil for all versions
|-
| category_partial (optional)
| category to add if func returns nil for some versions, but a value for other versions
|-
| category_incomplete (optional)
| category to add if func returns nil for at least 1 version (i.e. category_never and category_partial combined)
|-
| category_complete (optional)
| category to add if func returns a value for all versions
|-
| smw_property (optional)
| if this string is defined, the parameter will be saved into SMW
|-
| smw_func (optional)
| function to validate and process the Template argument to save into SMW. func is used by default if smw_func is not defined
|}
==== args ====
Arguments passed via the Template
<syntaxhighlight lang="lua">
local args = frame:getParent().args
</syntaxhighlight>
=== infobox:is_param_defined(param) ===
Used to conditionally display a line in the infobox
<syntaxhighlight lang="lua">
infobox:add_row{
{tag='th', content=Infobox.param('name'), class='infobox.subheader', colspan='2'},
}
if infobox:is_param_defined(Infobox.param('owner')) > 0 then
infobox:add_row{
{tag='td', content='[[Owner]]'},
{tag='td', content=Infobox.param('owner')},
}
end
</syntaxhighlight>
{| class="wikitable"
| param
| a parameter referenced via Infobox.raw_param(name), Infobox.param(name) or Infobox.smw_param(name)
|-
| Returns
| 0 if param is never defined
1 if param is defined for a fraction of the versions
2 if param is defined for all versions
|}
=== Infobox:add_row(...) ===
Adds a row to the infobox table. Parameter should be a table of cells:
<syntaxhighlight lang="lua">
infobox:add_row{
{tag='td', content='[[Cell1]]', ...},
{tag='td', content=Infobox.param('param'), ...},
{tag='td', content='[[Cell3]]', ...},
...
addClass = 'row-class'
}
</syntaxhighlight>
Each cell should have a set of key-values, of which only the tag and content are mandatory:
{| class="wikitable"
! key
! value
|-
| tag
| 'td' or 'th'
|-
| content
| a string or Infobox.param(name), Infobox.raw_param(name), Infobox.smw_param(name)
|-
| attr (optional)
| a table of attributes to add to the cell
mw.html:attr({ arg1 = '1', ... })
|-
| css (optional)
| a table of css to add to the cell
mw.html:css({ arg1 = '1', ... })
|-
| class (optional)
| a string with a class to add, or a table of classes to add. '''infobox-subheader''' is commonly used.
mw.html:addClass(...)
|-
| rowspan (optional)
| Set the cell rowspan
mw.html:attr('rowspan',arg)
|-
| rowspan (optional)
| Set the cell colspan
mw.html:attr('colspan',arg)
|-
| title (optional)
| Set the cell title
mw.html:attr('title',arg)
|}
=== Infobox:pad(colspan, class) ===
Adds a blank row of padding spanning the given number of columns. Will always add the class infobox-padding, but can optionally add another class:
<syntaxhighlight lang="lua">
infobox:pad("10", class=<class>)
</syntaxhighlight>
=== Infobox:addClass(class) ===
Adds a class to the entire table
<syntaxhighlight lang="lua">
infobox:addClass(class)
</syntaxhighlight>
6db311226eedba38b1f6c27fabfe858d5539f21f
Firetoad
0
186
1491
1339
2024-03-26T17:18:05Z
Logg
52
Firetoads are free for all players (since they are in Hopeport)
wikitext
text/x-wiki
{{Unofficial name}}
{{Infobox NPC
|name = Firetoad
|image = [[File:Firetoad.png]]
|release = Q3 2024
|episode = Hopeport
|premium = No
|profession =
}}
'''Firetoads''' are monsters found in caves. The Hopeport town guard fights firetoads regularly, to the point where it might at first glance be mistaken that that is all they do.{{CiteVideo|author=FenResearch|title=Brighter Shores Trailer|url=https://www.youtube.com/watch?v=7lolGQaorPo|timestamp=00:01 - 00:09|date=13 May, 2024|site=Youtube|name=Original Brighter Shores Trailer}}
Being that players first enter the game as members of the Hopeport town guard, it is anticipated that fighting firetoads will be one of the most common ways that players initially improve their combat abilities.
As their name implies, firetoads attack with fire, which is a long-range attack with a constant speed, independent of distance to target. Firetoads can use their fire attack every 2.5 seconds.
==Gallery==
<gallery>
Firetoads Trailer.jpg | Firetoads as shown in the original trailer for Brighter Shores.
</gallery>
==Trivia==
* Firetoads were the first named monsters to be presented to players, in the original trailer for the game.<ref name="Original Brighter Shores Trailer"/>
==References==
{{reflist}}
[[Category:Monsters]]
6eb1e10a8ebfd7973b2395e46f7f33d32d3ef2cc
Module:Sandbox
828
774
1492
2024-03-26T17:19:21Z
BlackHawk
10
Created page with "local p = {} function p.main() return "Hello world!" end return p"
Scribunto
text/plain
local p = {}
function p.main()
return "Hello world!"
end
return p
e970862d67384d892b32e61b28b689863efc8bba
Module:Sandbox/doc
828
775
1494
2024-03-26T17:20:34Z
BlackHawk
10
Created page with "{{Documentation|isUsed=true}} '''This is the general purpose sandbox for lua modules.''' It can be used to test changes to existing modules, prototype new modules, experimenting with lua features, or for any other purpose. Much like [[Brighter Shores:Sandbox]], this page is free to edit for all - if you want to use code personally or for long periods without others editing it, make a personal module sandbox at <code>Module:Sandbox/User:{{USERNAME}}</code> or subpages of..."
wikitext
text/x-wiki
{{Documentation|isUsed=true}}
'''This is the general purpose sandbox for lua modules.''' It can be used to test changes to existing modules, prototype new modules, experimenting with lua features, or for any other purpose.
Much like [[Brighter Shores:Sandbox]], this page is free to edit for all - if you want to use code personally or for long periods without others editing it, make a personal module sandbox at <code>Module:Sandbox/User:{{USERNAME}}</code> or subpages of that.
Invocations of this sandbox and personal sandboxes should be kept in userspace. If the module is intended for use in other namespaces, it should be moved out of the sandbox into a normal module and template.
See [[Special:PrefixIndex/Module:Sandbox/]] for a list of all user sandboxes.
b338f48cb30d2f0d20c99e1dddf7737651ca5ac7
Template:Sandbox
10
776
1495
2024-03-26T17:21:38Z
BlackHawk
10
Created page with "<includeonly>{{#invoke:Sandbox|main}}</includeonly><noinclude>{{/doc}}</noinclude>"
wikitext
text/x-wiki
<includeonly>{{#invoke:Sandbox|main}}</includeonly><noinclude>{{/doc}}</noinclude>
b0eb3417fe9fade11672134533777e2098f4ea9f
Template:Sandbox/doc
10
777
1496
2024-03-26T17:22:12Z
BlackHawk
10
Created page with "{{Documentation}} This is a sandbox template that you can use to test template transclusion and [[Brighter Shores:Template policy|template documentation]]. <span style="display:none">{{Sandbox}}</span> <includeonly>[[Category:Transclusion templates]]</includeonly>"
wikitext
text/x-wiki
{{Documentation}}
This is a sandbox template that you can use to test template transclusion and [[Brighter Shores:Template policy|template documentation]].
<span style="display:none">{{Sandbox}}</span>
<includeonly>[[Category:Transclusion templates]]</includeonly>
47bf7162f37ab74e9804765f054d2b83db49c66c
Module:Sandbox/User:BlackHawk/Infobox Profession
828
779
1498
2024-03-26T17:31:55Z
BlackHawk
10
Created page with "local Infobox = require('Module:Infobox') local parse = require('Module:Param Parse') function p.main(frame) local args = frame:getParent().args local config = { infobox_name = 'Scenery', } local params = { {name = 'name', func = parse.has_content, smw_property = 'Name'}, {name = 'image', func = parse.image, smw_property = 'Image', smw_func = parse.image_smw, category_incomplete = 'Needs image'}, {name = 'release', func = parse.has_content}, {name = 'p..."
Scribunto
text/plain
local Infobox = require('Module:Infobox')
local parse = require('Module:Param Parse')
function p.main(frame)
local args = frame:getParent().args
local config = {
infobox_name = 'Scenery',
}
local params = {
{name = 'name', func = parse.has_content, smw_property = 'Name'},
{name = 'image', func = parse.image, smw_property = 'Image', smw_func = parse.image_smw, category_incomplete = 'Needs image'},
{name = 'release', func = parse.has_content},
{name = 'premium', func = parse.has_content, smw_property = 'Premium', smw_func = parse.premium_smw, category_incomplete = 'Needs premium status'},
}
local infobox = Infobox.new(config, params, args)
infobox
:add_row{
{tag='th', content=Infobox.param('name'), class='infobox.subheader', colspan='2'},
}
:add_row{
{tag='td', content=Infobox.param('image'), colspan='2'},
}
:pad(2)
:add_row{
{tag='td', content='Release'},
{tag='td', content=Infobox.param('release')},
}
:add_row{
{tag='td', content='[[Premium Pass|Premium]]'},
{tag='td', content=Infobox.param('premium')},
}
return infobox
end
bea463703e9a67a803e43993a754b54182ef1e3e
1499
1498
2024-03-26T17:32:03Z
BlackHawk
10
Scribunto
text/plain
local Infobox = require('Module:Infobox')
local parse = require('Module:Param Parse')
function p.main(frame)
local args = frame:getParent().args
local config = {
infobox_name = 'Profession',
}
local params = {
{name = 'name', func = parse.has_content, smw_property = 'Name'},
{name = 'image', func = parse.image, smw_property = 'Image', smw_func = parse.image_smw, category_incomplete = 'Needs image'},
{name = 'release', func = parse.has_content},
{name = 'premium', func = parse.has_content, smw_property = 'Premium', smw_func = parse.premium_smw, category_incomplete = 'Needs premium status'},
}
local infobox = Infobox.new(config, params, args)
infobox
:add_row{
{tag='th', content=Infobox.param('name'), class='infobox.subheader', colspan='2'},
}
:add_row{
{tag='td', content=Infobox.param('image'), colspan='2'},
}
:pad(2)
:add_row{
{tag='td', content='Release'},
{tag='td', content=Infobox.param('release')},
}
:add_row{
{tag='td', content='[[Premium Pass|Premium]]'},
{tag='td', content=Infobox.param('premium')},
}
return infobox
end
a800892bbaba3fe3a95c6943d01893b893a897d7
1501
1499
2024-03-26T17:39:55Z
BlackHawk
10
Scribunto
text/plain
-- Module for [[Template:Infobox Profession]]
-- Test changes using [[Module:Infobox Profession/sandbox]] [[Template:Infobox Profession/sandbox]]
local p = {}
local Infobox = require('Module:Infobox')
local parse = require('Module:Param Parse')
function p.main(frame)
local args = frame:getParent().args
local config = {
infobox_name = 'Profession',
}
local params = {
{name = 'name', func = parse.has_content, smw_property = 'Name'},
{name = 'image', func = parse.image, smw_property = 'Image', smw_func = parse.image_smw, category_incomplete = 'Needs image'},
{name = 'release', func = parse.has_content},
{name = 'premium', func = parse.has_content, smw_property = 'Premium', smw_func = parse.premium_smw, category_incomplete = 'Needs premium status'},
}
local infobox = Infobox.new(config, params, args)
infobox
:add_row{
{tag='th', content=Infobox.param('name'), class='infobox.subheader', colspan='2'},
}
:add_row{
{tag='td', content=Infobox.param('image'), colspan='2'},
}
:pad(2)
:add_row{
{tag='td', content='Release'},
{tag='td', content=Infobox.param('release')},
}
:add_row{
{tag='td', content='[[Premium Pass|Premium]]'},
{tag='td', content=Infobox.param('premium')},
}
return infobox
end
return p
de291276231409416ec7cdacffa0a1312dd123b8
User:BlackHawk/Sandbox
2
780
1500
2024-03-26T17:33:29Z
BlackHawk
10
Created page with "{{User:BlackHawk/Infobox Profession |name = Fisher |image = [[File:Profession fisher.png|50px]] |release = |premium = }}"
wikitext
text/x-wiki
{{User:BlackHawk/Infobox Profession
|name = Fisher
|image = [[File:Profession fisher.png|50px]]
|release =
|premium =
}}
66effedcbcf3ff92fc258a76b9afbf640b8cce84
Module:Infobox
828
102
1504
1503
2024-03-26T17:55:05Z
Gau Cho
5
switch_datatable defaults to '' instead of nil
Scribunto
text/plain
--[=[
-- For documentation, see [[Module:Infobox/doc]]
--]=]
-- <nowiki>
-- Edit button for unknown params
local editbutton = require('Module:Edit button')
local Infobox = {}
Infobox.__index = Infobox
--[[
Infobox class
-- config: table containing configuration parameters
-- params : definitions for each used value
-- args : values passed from the Template
---- the following values are treated specially: default_version, version, version1, version2...
--]]
function Infobox.new(config, params, args)
local obj = setmetatable({
args_raw = args, -- parameters (uncleaned)
args_parsed = {}, -- parsed parameters
args_smw = {}, -- parameters parsed for smw
infobox_name = nil, -- template name
param_names = {}, -- ordered param list
params = {}, -- param definitions
max_buttons = 6, -- If there are more buttons than the max, the buttons will become a dropdown menu
default_version = 1, -- default version to populate the infobox
versions = nil, -- number of versions
version_names = {}, -- title of each version (for selection and SMW)
rtable = nil, -- infobox table to return at the end
switch_datatable = '', -- datatable for javascript for switch infoboxes
categories = {}, -- set of categories
errors = {}, -- list of errors
__smw_debug = {}, -- debug data for smw subobjects
},
Infobox)
-- Step 1, setup config vars and count the versions
obj:config(config)
obj:parse_versions()
-- Step 2, process the params
obj:define_params(params)
obj:parse_params()
-- Table
obj:table_header()
obj:buttons()
-- Misc
obj:store_smw()
obj:parse_categories()
return obj
end
--[[
Refers to a param after being processed by the validating func
Used in add_row(), define_params() and is_param_defined()
--]]
function Infobox.param(param_name)
param = {
property = 'args_parsed',
param_name = param_name,
}
return param
end
--[[
Refers to a param in raw form as passed from the Template
Used in add_row(), define_params() and is_param_defined()
--]]
function Infobox.raw_param(param_name)
param = {
property = 'args_raw',
param_name = param_name,
}
return param
end
--[[
Refers to a param after being processed by the validating smw_func
Used in add_row(), define_params() and is_param_defined()
--]]
function Infobox.smw_param(param_name)
param = {
property = 'args_smw',
param_name = param_name,
}
return param
end
--[[
Checks to see if a param is defined.
-- param: Infobox.param(name), Infobox.raw_param(name) or Infobox.smw_param(name)
Returns 0 if param is never defined
1 if param is defined for a fraction of the versions
2 if param is defined for all versions
]]
function Infobox:is_param_defined(param)
local undefined = 0
local defined = 0
for version = 1, self.versions do
local value = self:get_param(param, version)
if value ~= nil then
defined = 1
else
undefined = 1
end
end
return 1 + defined - undefined
end
--[[
Adds a row to the infobox table
Parameter should be a table of cells, where each cell is a table with the following arguments:
-- tag : 'td' or 'th'
-- content : a string or Infobox.param(name), Infobox.raw_param(name), Infobox.smw_param(name)
-- attr (optional) : mw.html:attr({ arg1 = '1', ... })
-- css (optional) : mw.html:css({ arg1 = '1', ...)
-- class (optional) : mw.html:addClass('arg')
---- class also supports a table of values, even though mw.html:addClass() does not
---- common classes: infobox-subheader
-- rowspan (optional) : mw.html:attr('rowspan',arg)
-- colspan (optional) : mw.html:attr('colspan',arg)
-- title (optional) : mw.html:attr('title',arg)
The row itself may be assigned a single class by setting the value of the key addClass
-- addClass : mw.html:addClass('arg')
-- this function currently only supports a single string
--]]
function Infobox:add_row(...)
local args = ...
local _row = self.rtable:tag('tr')
-- For each cell
for _, v in ipairs(args) do
local _cell = _row:tag(v.tag)
-- Optional parameters
if v.attr then
_cell:attr(v.attr)
end
if v.colspan then
_cell:attr('colspan',v.colspan)
end
if v.rowspan then
_cell:attr('rowspan',v.rowspan)
end
if v.title then
_cell:attr('title',v.title)
end
if v.css then
_cell:css(v.css)
end
if v.class then
if type(v.class) == 'string' then
_cell:addClass(v.class)
-- mw.html:addClass() doesn't function with tables, add in a loop
elseif type(v.class) == 'table' then
for _, w in ipairs(v.class) do
_cell:addClass(w)
end
end
end
-- Populate the cell contents
local content = self:get_param(v.content, self.default_version)
if content == nil then
content = self.params[v.content.param_name].empty
end
_cell:wikitext(content)
-- Add the switch data if multiple values exist
data_attr_param = self:add_switch_data(v.content)
if data_attr_param then
_cell:attr('data-attr-param', data_attr_param)
end
end
-- allow classes to be defined on the whole row
if args.addClass then
_row:addClass(args.addClass)
end
return self
end
--[[
Adds a blank row of padding spanning the given number of columns
--]]
function Infobox:pad(colspan, class)
local tr = self.rtable:tag('tr'):tag('td'):attr('colspan', colspan or 1):addClass('infobox-padding')
if class then
tr:addClass(class)
end
return self
end
--[[
Adds a class to the table as a whole
--]]
function Infobox:addClass(arg)
self.rtable:addClass(arg)
return self
end
--[[
Setup config values
-- config: table containing configuration parameters
---- infobox_name = mandatory unique identifier for this infobox, used for css
---- max_buttuons = max number of switch buttons before using a dropdown list instead
--]]
function Infobox:config(config)
for k, v in pairs(config) do
if k == 'infobox_name' then
self.infobox_name = mw.ustring.gsub(v, '%s', '_')
elseif k == 'max_buttons' then
self.max_buttons = tonumber(v)
end
end
if self.infobox_name == nil then
table.insert(self.errors, 'infobox_name needs to be defined in Infobox.new()\'s config!')
end
return self
end
--[[
Counts the number of versions in the infobox
Populates Infobox.version_names
Sets Infobox.default_version
--]]
function Infobox:parse_versions()
-- Count the versions and setup self.version_names
local i = 1
while self.args_raw['version'..i] do
table.insert(self.version_names, self.args_raw['version'..i])
i = i + 1
end
self.versions = i - 1
-- Handle the no version case - check for a custom version_name
if self.versions == 0 then
table.insert(self.version_names, self.args_raw['version'] or 'DEFAULT')
end
-- Should either have 0 or 2+ versions
if self.versions == 1 then
table.insert(self.errors, 'There should be multiple versions or no versions. If defining a custom version name for a single entry, use "version=Name" instead of "version1=Name".')
self.versions = 0
end
-- Check for a default_version
if self.args_raw['default_version'] then
self.default_version = tonumber(self.args_raw['default_version'])
if self.default_version > self.versions then -- Make sure the default version exists
self.default_version = 1
end
end
end
--[[
Define all used parameters (except for default_version/version)
-- name : parameter name as used in the Template
-- func : function to validate and process the Template argument
-- If func is a function, will call func(Infobox.raw_param(name))
-- If func is a table, contains the following key-value pairs:
---- name : function
---- params : list of arguments to pass to the function (use Infobox.raw_param(),
---- Infobox.param() and Infobox.smw_param() to use arguments)
-- empty (optional) : text to display in the infobox if func returns nil, defaults to "? (edit)"
-- category_never : category to add if func returns nil for all versions
-- category_partial : category to add if func returns nil for some versions, but a value for other versions
-- category_incomplete : category to add if func returns nil for at least 1 version (i.e. category_never and category_partial combined)
-- category_complete : category to add if func returns a value for all versions
-- smw_property (optional) : if this string is defined, the parameter will be saved into smw
-- smw_func (optional) : function to validate and process the Template argument to save into smw
-- func is used by default if smw_func is not defined
--]]
function Infobox:define_params(...)
-- For every parameter, store its corresponding function to self.params
for _, v in ipairs(...) do
if v.name then
local param = {}
-- Copy the function
if type(v.func) == 'function' or type(v.func) == 'table' then
param.func = v.func
end
-- If smw_property is defined, then use smw_func, or default to func if it is not defined
if v.smw_property then
param.smw_property = v.smw_property
if type(v.smw_func) == 'function' or type(v.smw_func) == 'table' then
param.smw_func = v.smw_func
else
param.smw_func = param.func
end
end
-- If empty is not defined, default message is "? (edit)"
param.empty = v.empty or editbutton("'''?''' (edit)")
-- Get the category names
param.category_never = v.category_never
param.category_partial = v.category_partial
param.category_incomplete = v.category_incomplete
param.category_complete = v.category_complete
-- Store the param
self.params[v.name] = param
table.insert(self.param_names, v.name)
end
end
return self
end
--[[
Fetches a param value. If the value is nil, will return the default value instead
-- arg: a non-table value (string, number, etc), or Infobox.param(name), Infobox.raw_param(name), Infobox.smw_param(name)
-- version: 0/'' for default, or else a number
Returns arg if a constant
param value (or default value) if Infobox.param(name), Infobox.raw_param(name), Infobox.smw_param(name)
--]]
function Infobox:get_param(arg, version)
if version == 0 then
version = ''
end
-- Handle Infobox.param(), Infobox.raw_param(), Infobox.smw_param()
if type(arg) == 'table' then
local value = self[arg.property][arg.param_name..version]
-- If nil, grab default value (which could be nil as well)
if value == nil then
value = self[arg.property][arg.param_name]
end
return value
end
-- Everything else passes through unmodified (string, number, etc)
return arg
end
--[[
Calculates the parsed value of a param
-- param_name : param_name as a string
-- version : 0/'' for default, or else a number
-- smw : boolean, will use smw_func if true, or func is false
--]]
function Infobox:parse_param(param_name, version, smw)
if version == 0 then
version = ''
end
-- use func or smw_func depending on smw argument
local param = self.params[param_name]
local func = smw and param.smw_func or param.func
-- call functions by passing the param_name
if type(func) == 'function' then
return func(self:get_param(self.raw_param(param_name), version))
-- call tables by grabbing the function and reading the param arguments
elseif type(func) == 'table' then
local func_name = func.name
local func_params = func.params
local func_fetched_params = {}
for _, func_param in ipairs(func_params) do
table.insert(func_fetched_params, self:get_param(func_param, version))
end
return func_name(unpack(func_fetched_params))
else
table.insert(self.errors, 'Invalid param definition for '..param_name)
end
end
--[[
Parses all the param values (args_parsed and args_smw)
--]]
function Infobox:parse_params()
-- Calculate the param value for all params and all versions
for _, param_name in ipairs(self.param_names) do
for version=0, self.versions do
if version == 0 then
version = ''
end
-- get the parsed value
self.args_parsed[param_name..version] = self:parse_param(param_name, version, false)
-- Only get the smw value if smw_property is defined
if self.params[param_name].smw_property then
self.args_smw[param_name..version] = self:parse_param(param_name, version, true)
end
end
end
end
--[[
Creates the table header
--]]
function Infobox:table_header()
-- Create infobox table
self.rtable = mw.html.create('table')
:addClass('plainlinks')
:addClass('infobox')
:addClass('infobox-'..self.infobox_name)
-- Create the switch datatable if multiple versions
if self.versions > 1 then
self.rtable:addClass('infobox-switch')
self.switch_datatable = mw.html.create('div')
:addClass('infobox-switch-resources')
:addClass('infobox-resources-'..self.infobox_name)
:addClass('hidden')
self.switch_datatable:tag('span'):wikitext('Versions: '..self.versions)
self.switch_datatable:tag('span'):wikitext('Default version: '..self.default_version)
end
return self
end
--[[
If multiple versions exist, creates a set of buttons for switching
-- self.max_buttons : if the number of versions exceeds this value, a dropdown will be created instead
--]]
function Infobox:buttons()
if self.versions < 2 then
return
end
-- Button caption
local buttons = self.rtable:tag('caption')
:tag('div')
:addClass('infobox-buttons')
:attr('data-default-version', self.default_version)
-- Dropdown list instead of buttons if too many versions
if self.versions > self.max_buttons then
buttons:addClass('infobox-buttons-select')
end
-- Create all the buttons
for version=1, self.versions do
buttons:tag('span')
:attr('data-switch-index', version)
:attr('data-switch-anchor', '#'..self.version_names[version])
:addClass('button')
:wikitext(self.version_names[version])
end
end
--[[
For each version, stores a subobject for all params that have smw_property defined
--]]
function Infobox:store_smw()
for version=1, self.versions do
-- Generate a subobject name
-- Reminder - subobject name cannot have a . in the first 5 characters
local subobject_name = 'Infobox.'..mw.title.getCurrentTitle().fullText..'#'..self.version_names[version]
-- Store each param that has smw_property defined and is not nil
local subobject = {}
for _, param_name in ipairs(self.param_names) do
local property = self.params[param_name].smw_property
if property then
value = self:get_param(self.smw_param(param_name), version)
if value ~= nil then
subobject[property] = value
end
end
end
-- Keep a copy for debugging
self.__smw_debug[subobject_name] = subobject
-- Save subobjects if not in mainspace
if mw.title.getCurrentTitle():inNamespace(0) then
local result = mw.smw.subobject(subobject, subobject_name)
if result ~= true then
table.insert(self.errors, 'SMW error: '..result.error)
end
end
end
end
--[[
Automatically add categories for each param as defined in define_params()
--]]
function Infobox:parse_categories()
for _, param_name in ipairs(self.param_names) do
local param = self.params[param_name]
local defined = self:is_param_defined(Infobox.param(param_name))
if defined == 0 and param.category_never then
self.categories[param.category_never] = 1
end
if defined == 1 and param.category_partial then
self.categories[param.category_partial] = 1
end
if defined < 2 and param.category_incomplete then
self.categories[param.category_incomplete] = 1
end
if defined == 2 and param.category_complete then
self.categories[param.category_complete] = 1
end
end
end
--[[
When a parameter is added into the table, add the alternative versions' data into the switch datatable
-- content : a non-table value (string, number, etc), or Infobox.param(name), Infobox.raw_param(name), Infobox.smw_param(name)
Returns the name of the parameter in the tag 'data-attr-param'
--]]
function Infobox:add_switch_data(content)
if self.versions <= 1 then
return false
end
-- Only needed for non-constant params
if type(content) ~= 'table' then
return false
end
-- Only needed if the param changes value between different versions
local first_value = self:get_param(content, 1)
local all_same = true
for version=2, self.versions do
if first_value ~= self:get_param(content, version) then
all_same = false
break
end
end
if all_same then
return false
end
-- Let's build the datatable
-- datum name: Prepend raw__ or smw__ if not a parsed argument
local name = content.param_name
if content.property == 'args_raw' then
name = 'raw__' + name
end
if content.property == 'args_smw' then
name = 'smw__' + name
end
data_param = self.switch_datatable:tag('span'):attr('data-attr-param', name)
-- Add each version to the datatable
for version=1, self.versions do
text = self:get_param(content, version)
if text == nil then
text = self.params[content.param_name].empty
end
data_param:tag('span'):attr('data-attr-index', version):wikitext(text)
end
-- return the 'data-attr-param' name
return name
end
--[[
Override tostring
--]]
function Infobox:__tostring()
-- Create error messages
local error_text = ''
for _, v in ipairs(self.errors) do
error_text = error_text..'<span class="mw-message-box-error">'..v..'</span>'
end
-- Create categories
local category_text = ''
for key, _ in pairs(self.categories) do
category_text = category_text..'[[Category:'..key..']]'
end
return tostring(self.rtable) .. tostring(self.switch_datatable) .. error_text .. category_text
end
--[[
Debug function
--]]
function Infobox:dump()
-- Temporarily detach the metatable so we don't override tostring anymore, allowing us to use dumpObject
setmetatable(self, nil)
mw.log(mw.dumpObject(self))
setmetatable(self, Infobox)
mw.log(tostring(self))
end
return Infobox
c6399b9b7849b45a0542429a62080ea8bb9e60d7
Module:Param Parse
828
673
1505
1234
2024-03-26T18:11:05Z
Gau Cho
5
Cleaning up module, and adding episode
Scribunto
text/plain
--[=[
-- Standardized functions to parse Infobox params
--]=]
-- <nowiki>
local param = {}
-- Standardized "has content" function
function param.has_content(arg, default)
-- Return arg if any non-whitespace character is found
return string.match(arg or '', '%S') and arg or nil
end
-- Standardized image function
function param.image(img)
if img and img:find('%S') then
return img
end
return nil
end
function param.image_smw(img)
return string.match(img, "File:.-%.png")
end
-- Standardized numbers
function param.numbers(num)
num = string.gsub(num or '',',','')
return tonumber(num)
end
-- Episode
local valid_episodes = {['Hopeport'] = 1, ['Hopeforest'] = 1, ['Mine of Mantuban'] = 1, ['Crenopolis'] = 1}
function param.episode(episode)
if valid_episodes[episode] then
return '[[File:'..episode..' episode icon.png|18px]]'
end
return nil
end
function param.episode_smw(episode)
if valid_episodes[episode] then
return episode
end
return nil
end
return param
-- </nowiki>
dc5d0522d48437e8cf12c644423f43c8c933e6b4
1506
1505
2024-03-26T18:12:22Z
Gau Cho
5
Scribunto
text/plain
--[=[
-- Standardized functions to parse Infobox params
--]=]
-- <nowiki>
local param = {}
-- Standardized "has content" function
function param.has_content(arg)
-- Return arg if any non-whitespace character is found
return string.match(arg or '', '%S') and arg or nil
end
-- Standardized image function
function param.image(img)
if img and img:find('%S') then
return img
end
return nil
end
function param.image_smw(img)
return string.match(img, "File:.-%.png")
end
-- Standardized numbers
function param.numbers(num)
num = string.gsub(num or '',',','')
return tonumber(num)
end
-- Episode
local valid_episodes = {['Hopeport'] = 1, ['Hopeforest'] = 1, ['Mine of Mantuban'] = 1, ['Crenopolis'] = 1}
function param.episode(episode)
if valid_episodes[episode] then
return '[[File:'..episode..' episode icon.png|18px]]'
end
return nil
end
function param.episode_smw(episode)
if valid_episodes[episode] then
return episode
end
return nil
end
return param
-- </nowiki>
376c007a405a85b6801800e77c9894624d8ecd33
1507
1506
2024-03-26T18:16:09Z
Gau Cho
5
Scribunto
text/plain
--[=[
-- Standardized functions to parse Infobox params
--]=]
-- <nowiki>
local param = {}
-- Standardized "has content" function
function param.has_content(arg)
-- Return arg if any non-whitespace character is found
return string.match(arg or '', '%S') and arg or nil
end
-- Standardized image function
function param.image(img)
if img and img:find('%S') then
return img
end
return nil
end
function param.image_smw(img)
return string.match(img, "File:.-%.png")
end
-- Standardized numbers
function param.number(num)
num = string.gsub(num or '',',','')
return tonumber(num)
end
-- Episode
local valid_episodes = {['Hopeport'] = 1, ['Hopeforest'] = 1, ['Mine of Mantuban'] = 1, ['Crenopolis'] = 1}
function param.episode(episode)
if valid_episodes[episode] then
return '[[File:'..episode..' episode icon.png|18px]]'
end
return nil
end
function param.episode_smw(episode)
if valid_episodes[episode] then
return episode
end
return nil
end
return param
-- </nowiki>
b3327d037b2270e3c238aaa549fcfeb89dc64427
1508
1507
2024-03-26T18:17:39Z
Gau Cho
5
Scribunto
text/plain
--[=[
-- Standardized functions to parse Infobox params
--]=]
-- <nowiki>
local param = {}
-- Standardized "has content" function
function param.has_content(arg)
-- Return arg if any non-whitespace character is found
return string.match(arg or '', '%S') and arg or nil
end
-- Standardized image function
function param.image(img)
if img and img:find('%S') then
return img
end
return nil
end
function param.image_smw(img)
return string.match(img, "File:.-%.png")
end
-- Standardized numbers
function param.number(num)
num = string.gsub(num or '',',','')
return tonumber(num)
end
-- Episode
local valid_episodes = {['Hopeport'] = 1, ['Hopeforest'] = 1, ['Mine of Mantuban'] = 1, ['Crenopolis'] = 1}
function param.episode(episode)
if valid_episodes[episode] then
return '[[File:'..episode..' episode icon.png|18px]] '..'[['..episode..']]'
end
return nil
end
function param.episode_smw(episode)
if valid_episodes[episode] then
return episode
end
return nil
end
return param
-- </nowiki>
a98c57384311d81bb1be23411be4b35cbc90834d
1509
1508
2024-03-26T18:18:19Z
Gau Cho
5
Scribunto
text/plain
--[=[
-- Standardized functions to parse Infobox params
--]=]
-- <nowiki>
local param = {}
-- Standardized "has content" function
function param.has_content(arg)
-- Return arg if any non-whitespace character is found
return string.match(arg or '', '%S') and arg or nil
end
-- Standardized image function
function param.image(img)
if img and img:find('%S') then
return img
end
return nil
end
function param.image_smw(img)
return string.match(img, "File:.-%.png")
end
-- Standardized numbers
function param.number(num)
num = string.gsub(num or '',',','')
return tonumber(num)
end
-- Episode
local valid_episodes = {['Hopeport'] = 1, ['Hopeforest'] = 1, ['Mine of Mantuban'] = 1, ['Crenopolis'] = 1}
function param.episode(episode)
if valid_episodes[episode] then
return '[[File:'..episode..' episode icon.png|18px]] [['..episode..']]'
end
return nil
end
function param.episode_smw(episode)
if valid_episodes[episode] then
return episode
end
return nil
end
return param
-- </nowiki>
35bb5f7ac47135b2ba7b8f379c4fd6bd0c1b725c
1511
1509
2024-03-26T18:26:56Z
Gau Cho
5
Scribunto
text/plain
--[=[
-- Standardized functions to parse Infobox params
--]=]
-- <nowiki>
local parse = {}
-- Standardized "has content" function
function parse.has_content(arg)
-- Return arg if any non-whitespace character is found
return string.match(arg or '', '%S') and arg or nil
end
-- Standardized image function
function parse.image(img)
if img and img:find('%S') then
return img
end
return nil
end
function parse.image_smw(img)
return string.match(img, "File:.-%.png")
end
-- Standardized numbers
function parse.number(num)
num = string.gsub(num or '',',','')
return tonumber(num)
end
-- Episode
local valid_episodes = {['Hopeport'] = 1, ['Hopeforest'] = 1, ['Mine of Mantuban'] = 1, ['Crenopolis'] = 1}
function parse.episode(episode)
if valid_episodes[episode] then
return '[[File:'..episode..' episode icon.png|18px]] [['..episode..']]'
end
return nil
end
function parse.episode_smw(episode)
if valid_episodes[episode] then
return episode
end
return nil
end
return parse
-- </nowiki>
e1b877819728913960e0d7138fb7e8d060d1de31
Module:Param Parse/doc
828
781
1510
2024-03-26T18:18:53Z
Gau Cho
5
Created page with "These functions are used to validate and format information passed into an Infobox. See [[Module:Infobox]] for details and instructions on creating an Infobox. If the information is missing or not valid, the functions here should return nil. Here is a summary of all the functions: {| class="wikitable" ! function name ! explanation |- | has_content(arg) | Returns arg if any non-whitespace character is found in the string. |- | image(img) | Returns img if any non-whitespa..."
wikitext
text/x-wiki
These functions are used to validate and format information passed into an Infobox. See [[Module:Infobox]] for details and instructions on creating an Infobox. If the information is missing or not valid, the functions here should return nil.
Here is a summary of all the functions:
{| class="wikitable"
! function name
! explanation
|-
| has_content(arg)
| Returns arg if any non-whitespace character is found in the string.
|-
| image(img)
| Returns img if any non-whitespace character is found in the string.
|-
| image_smw(img)
| Searches for and returns "File:___.png"
|-
| number(num)
| Removes any commas and parses the string as a number
|-
| episode(episode)
| Returns a plink of the episode, e.g. [[File:Hopeport episode icon.png|18px]] [[Hopeport]]'
|-
| episode_smw(episode)
| Returns the name of the episode if valid
|}
0246c3a35021abec4d282574cd8c7c5d902dd830
1515
1510
2024-03-26T19:16:15Z
Gau Cho
5
Add {{documentation}}
wikitext
text/x-wiki
{{documentation}}
These functions are used to validate and format information passed into an Infobox. See [[Module:Infobox]] for details and instructions on creating an Infobox. If the information is missing or not valid, the functions here should return nil.
Here is a summary of all the functions:
{| class="wikitable"
! function name
! explanation
|-
| has_content(arg)
| Returns arg if any non-whitespace character is found in the string.
|-
| image(img)
| Returns img if any non-whitespace character is found in the string.
|-
| image_smw(img)
| Searches for and returns "File:___.png"
|-
| number(num)
| Removes any commas and parses the string as a number
|-
| episode(episode)
| Returns a plink of the episode, e.g. [[File:Hopeport episode icon.png|18px]] [[Hopeport]]
|-
| episode_smw(episode)
| Returns the name of the episode if valid
|}
6e273292387f169683ee3aed6a801799796bfa11
Sandbox
0
782
1512
2024-03-26T18:29:38Z
Gau Cho
5
Mainspace SMW test
wikitext
text/x-wiki
{{User:BlackHawk/Infobox Profession
|version1 = Normal
|version2 = Uber
|name = Fisher
|name2 = UberFisher
|image = [[File:Profession fisher.png|50px]]
|release =
|premium =
}}
fe19a17c6d5f70a259e2bc7d50ae16ce9a1c748d
1513
1512
2024-03-26T18:32:47Z
Gau Cho
5
#REDIRECT[[Brighter Shores:Sandbox]]
wikitext
text/x-wiki
#REDIRECT[[Brighter Shores:Sandbox]]
bbc83d4d6875c20c4b9c1b35e7ab2454c17ef6c6
User:Gau Cho
2
104
1514
269
2024-03-26T18:35:37Z
Gau Cho
5
wikitext
text/x-wiki
{{User:BlackHawk/Infobox Profession
|version1 = Sad
|version2 = Normal
|version3 = Uber
|name1 = Sad Fisher
|name2 = Fisher
|name3 = UberFisher
|image = [[File:Profession fisher.png|50px]]
|release =
|premium =
}}
619152c4b421a0232388793a1ef275e0974f73bd
User:Gau Cho/2
2
783
1516
2024-03-26T22:44:59Z
Gau Cho
5
Created page with "{{User:BlackHawk/Infobox Profession |version1 = Sad |version2 = Normal |version3 = Uber |version4 = Uber2 |version5 = Uber3 |version6 = Uber4 |version7 = Uber5 |name1 = Sad Fisher |name2 = Fisher |name3 = UberFisher |name = NeglectedFisher |image = [[File:Profession fisher.png|50px]] |release = |premium = }}"
wikitext
text/x-wiki
{{User:BlackHawk/Infobox Profession
|version1 = Sad
|version2 = Normal
|version3 = Uber
|version4 = Uber2
|version5 = Uber3
|version6 = Uber4
|version7 = Uber5
|name1 = Sad Fisher
|name2 = Fisher
|name3 = UberFisher
|name = NeglectedFisher
|image = [[File:Profession fisher.png|50px]]
|release =
|premium =
}}
569749c6f486e6e1eabc00aa3fdaacff72cb6977
Module:Sandbox/User:BlackHawk/Infobox Profession
828
779
1517
1501
2024-03-26T22:48:27Z
Gau Cho
5
Sorry BlackHawk, destroying your module for science
Scribunto
text/plain
-- Module for [[Template:Infobox Profession]]
-- Test changes using [[Module:Infobox Profession/sandbox]] [[Template:Infobox Profession/sandbox]]
local p = {}
local Infobox = require('Module:Infobox')
local parse = require('Module:Param Parse')
function p.main(frame)
local args = frame:getParent().args
local config = {
infobox_name = 'Profession',
}
local params = {
{name = 'name', func = parse.has_content, smw_property = 'Name'},
{name = 'image', func = parse.image, smw_property = 'Image', smw_func = parse.image_smw, category_incomplete = 'Needs image'},
{name = 'release', func = parse.has_content},
{name = 'premium', func = parse.has_content, smw_property = 'Premium', smw_func = parse.premium_smw, category_incomplete = 'Needs premium status'},
}
local infobox = Infobox.new(config, params, args)
infobox
:add_row{
{tag='th', content=Infobox.param('name'), class='infobox.subheader', colspan='2'},
}
:add_row{
{tag='td', content=Infobox.param('image'), colspan='2'},
}
:pad(2)
:add_row{
{tag='td', content='Release'},
{tag='td', content=Infobox.param('release')},
}
:add_row{
{tag='td', content='[[Premium Pass|Premium]]'},
{tag='td', content=Infobox.param('premium')},
}
:add_row{
{tag='td', content='[[Premium Pass|Premium]]'},
{tag='td', content=Infobox.param('premium')},
}
:add_row{
{tag='td', content='[[Premium Pass|Premium]]'},
{tag='td', content=Infobox.param('premium')},
}
:add_row{
{tag='td', content='[[Premium Pass|Premium]]'},
{tag='td', content=Infobox.param('premium')},
}
:add_row{
addClass = 'infobox.subheader',
{tag='td', content='ROW CLASS for some reason'},
{tag='td', content=Infobox.param('premium')},
}
:add_row{
{tag='td', content='[[Premium Pass|Premium]]'},
{tag='td', content=Infobox.param('premium')},
}
:add_row{
{tag='td', content='[[Premium Pass|Premium]]'},
{tag='td', content=Infobox.param('premium')},
}
:add_row{
{tag='th', content='TH for some reason'},
{tag='th', content=Infobox.param('premium')},
}
return infobox
end
return p
ca8bd037f59f3ba580b69170280499134811db88
1518
1517
2024-03-26T22:49:44Z
Gau Cho
5
Scribunto
text/plain
-- Module for [[Template:Infobox Profession]]
-- Test changes using [[Module:Infobox Profession/sandbox]] [[Template:Infobox Profession/sandbox]]
local p = {}
local Infobox = require('Module:Infobox')
local parse = require('Module:Param Parse')
function p.main(frame)
local args = frame:getParent().args
local config = {
infobox_name = 'Profession',
}
local params = {
{name = 'name', func = parse.has_content, smw_property = 'Name'},
{name = 'image', func = parse.image, smw_property = 'Image', smw_func = parse.image_smw, category_incomplete = 'Needs image'},
{name = 'release', func = parse.has_content},
{name = 'premium', func = parse.has_content, smw_property = 'Premium', smw_func = parse.premium_smw, category_incomplete = 'Needs premium status'},
}
local infobox = Infobox.new(config, params, args)
infobox
:add_row{
{tag='th', content=Infobox.param('name'), class='infobox.subheader', colspan='2'},
}
:add_row{
{tag='td', content=Infobox.param('image'), colspan='2'},
}
:pad(2)
:add_row{
{tag='td', content='Release'},
{tag='td', content=Infobox.param('release')},
}
:add_row{
{tag='td', content='[[Premium Pass|Premium]]'},
{tag='td', content=Infobox.param('premium')},
}
:add_row{
{tag='td', content='[[Premium Pass|Premium]]'},
{tag='td', content=Infobox.param('premium')},
}
:add_row{
{tag='td', content='[[Premium Pass|Premium]]'},
{tag='td', content=Infobox.param('premium')},
}
:add_row{
{tag='td', content='[[Premium Pass|Premium]]'},
{tag='td', content=Infobox.param('premium')},
}
:add_row{
addClass = 'infobox.subheader',
{tag='td', content='ROW CLASS SUBHEADER', colspan='2'},
{tag='td', content=Infobox.param('premium')},
}
:add_row{
{tag='td', content='[[Premium Pass|Premium]]'},
{tag='td', content=Infobox.param('premium')},
}
:add_row{
{tag='td', content='[[Premium Pass|Premium]]'},
{tag='td', content=Infobox.param('premium')},
}
:add_row{
{tag='th', content='TH for some reason'},
{tag='th', content=Infobox.param('premium')},
}
:add_row{
{tag='td', content='[[Premium Pass|Premium]]'},
{tag='td', content=Infobox.param('premium')},
}
:add_row{
{tag='td', content='[[Premium Pass|Premium]]'},
{tag='td', content=Infobox.param('premium')},
}
return infobox
end
return p
4f6d10636295764a5c63b1840917c2bdab75fdb1
1519
1518
2024-03-26T22:51:21Z
Gau Cho
5
Scribunto
text/plain
-- Module for [[Template:Infobox Profession]]
-- Test changes using [[Module:Infobox Profession/sandbox]] [[Template:Infobox Profession/sandbox]]
local p = {}
local Infobox = require('Module:Infobox')
local parse = require('Module:Param Parse')
function p.main(frame)
local args = frame:getParent().args
local config = {
infobox_name = 'Profession',
}
local params = {
{name = 'name', func = parse.has_content, smw_property = 'Name'},
{name = 'image', func = parse.image, smw_property = 'Image', smw_func = parse.image_smw, category_incomplete = 'Needs image'},
{name = 'release', func = parse.has_content},
{name = 'premium', func = parse.has_content, smw_property = 'Premium', smw_func = parse.premium_smw, category_incomplete = 'Needs premium status'},
}
local infobox = Infobox.new(config, params, args)
infobox
:add_row{
{tag='th', content=Infobox.param('name'), class='infobox.subheader', colspan='2'},
}
:add_row{
{tag='td', content=Infobox.param('image'), colspan='2'},
}
:pad(2)
:add_row{
{tag='td', content='Release'},
{tag='td', content=Infobox.param('release')},
}
:add_row{
{tag='td', content='[[Premium Pass|Premium]]'},
{tag='td', content=Infobox.param('premium')},
}
:add_row{
{tag='td', content='[[Premium Pass|Premium]]'},
{tag='td', content=Infobox.param('premium')},
}
:add_row{
{tag='td', content='[[Premium Pass|Premium]]'},
{tag='td', content=Infobox.param('premium')},
}
:add_row{
{tag='td', content='[[Premium Pass|Premium]]'},
{tag='td', content=Infobox.param('premium')},
}
:add_row{
addClass = 'infobox.subheader',
{tag='td', content='ROW CLASS SUBHEADER', colspan='2'},
}
:add_row{
{tag='td', content='[[Premium Pass|Premium]]'},
{tag='td', content=Infobox.param('premium')},
}
:add_row{
{tag='td', content='[[Premium Pass|Premium]]'},
{tag='td', content=Infobox.param('premium')},
}
:add_row{
{tag='th', content='TH for some reason'},
{tag='th', content=Infobox.param('premium')},
}
:add_row{
{tag='td', content='[[Premium Pass|Premium]]'},
{tag='td', content=Infobox.param('premium')},
}
:add_row{
{tag='td', content='[[Premium Pass|Premium]]'},
{tag='td', content=Infobox.param('premium')},
}
return infobox
end
return p
6735caa992d2276d9001d64ed0b3a8e36ddc9802
1532
1519
2024-03-27T00:15:37Z
Merds
25
Scribunto
text/plain
-- Module for [[Template:Infobox Profession]]
-- Test changes using [[Module:Infobox Profession/sandbox]] [[Template:Infobox Profession/sandbox]]
local p = {}
local Infobox = require('Module:Infobox')
local parse = require('Module:Param Parse')
function p.main(frame)
local args = frame:getParent().args
local config = {
infobox_name = 'Profession',
}
local params = {
{name = 'name', func = parse.has_content, smw_property = 'Name'},
{name = 'image', func = parse.image, smw_property = 'Image', smw_func = parse.image_smw, category_incomplete = 'Needs image'},
{name = 'release', func = parse.has_content},
{name = 'premium', func = parse.has_content, smw_property = 'Premium', smw_func = parse.premium_smw, category_incomplete = 'Needs premium status'},
}
local infobox = Infobox.new(config, params, args)
infobox
:add_row{
{tag='th', content=Infobox.param('name'), class='infobox.subheader', colspan='2'},
}
:add_row{
{tag='td', content=Infobox.param('image'), class='infobox.image', colspan='2'},
}
:pad(2)
:add_row{
{tag='td', content='Release'},
{tag='td', content=Infobox.param('release')},
}
:add_row{
{tag='td', content='[[Premium Pass|Premium]]'},
{tag='td', content=Infobox.param('premium')},
}
:add_row{
{tag='td', content='[[Premium Pass|Premium]]'},
{tag='td', content=Infobox.param('premium')},
}
:add_row{
{tag='td', content='[[Premium Pass|Premium]]'},
{tag='td', content=Infobox.param('premium')},
}
:add_row{
{tag='td', content='[[Premium Pass|Premium]]'},
{tag='td', content=Infobox.param('premium')},
}
:add_row{
addClass = 'infobox.subheader',
{tag='td', content='ROW CLASS SUBHEADER', colspan='2'},
}
:add_row{
{tag='td', content='[[Premium Pass|Premium]]'},
{tag='td', content=Infobox.param('premium')},
}
:add_row{
{tag='td', content='[[Premium Pass|Premium]]'},
{tag='td', content=Infobox.param('premium')},
}
:add_row{
{tag='th', content='TH for some reason'},
{tag='th', content=Infobox.param('premium')},
}
:add_row{
{tag='td', content='[[Premium Pass|Premium]]'},
{tag='td', content=Infobox.param('premium')},
}
:add_row{
{tag='td', content='[[Premium Pass|Premium]]'},
{tag='td', content=Infobox.param('premium')},
}
return infobox
end
return p
67699896a3d64bfbe8fcfd26c92200c7f8a38c9d
1535
1532
2024-03-27T00:26:34Z
Merds
25
Scribunto
text/plain
-- Module for [[Template:Infobox Profession]]
-- Test changes using [[Module:Infobox Profession/sandbox]] [[Template:Infobox Profession/sandbox]]
local p = {}
local Infobox = require('Module:Infobox')
local parse = require('Module:Param Parse')
function p.main(frame)
local args = frame:getParent().args
local config = {
infobox_name = 'Profession',
}
local params = {
{name = 'name', func = parse.has_content, smw_property = 'Name'},
{name = 'image', func = parse.image, smw_property = 'Image', smw_func = parse.image_smw, category_incomplete = 'Needs image'},
{name = 'release', func = parse.has_content},
{name = 'premium', func = parse.has_content, smw_property = 'Premium', smw_func = parse.premium_smw, category_incomplete = 'Needs premium status'},
}
local infobox = Infobox.new(config, params, args)
infobox
:add_row{
{tag='th', content=Infobox.param('name'), class='infobox.subheader', colspan='2'},
}
:add_row{
{tag='td', content=Infobox.param('image'), class='infobox.image', colspan='2'},
}
:pad(2)
:add_row{
{tag='th', content='Release', colspan="6"},
{tag='td', content=Infobox.param('release'), colspan="14"},
}
:add_row{
{tag='th', content='[[Premium Pass|Premium]]', colspan="6"},
{tag='td', content=Infobox.param('premium'), colspan="14"},
}
:add_row{
{tag='th', content='[[Premium Pass|Premium]]', colspan="6"},
{tag='td', content=Infobox.param('premium'), colspan="14"},
}
:add_row{
{tag='th', content='[[Premium Pass|Premium]]', colspan="6"},
{tag='td', content=Infobox.param('premium'), colspan="14"},
}
:add_row{
{tag='th', content='[[Premium Pass|Premium]]', colspan="6"},
{tag='td', content=Infobox.param('premium'), colspan="14"},
}
:add_row{
addClass = 'infobox.subheader',
{tag='td', content='ROW CLASS SUBHEADER', colspan='2'},
}
:add_row{
{tag='th', content='[[Premium Pass|Premium]]', colspan="6"},
{tag='td', content=Infobox.param('premium'), colspan="14"},
}
:add_row{
{tag='th', content='[[Premium Pass|Premium]]', colspan="6"},
{tag='td', content=Infobox.param('premium'), colspan="14"},
}
:add_row{
{tag='th', content='[[Premium Pass|Premium]]', colspan="6"},
{tag='td', content=Infobox.param('premium'), colspan="14"},
}
:add_row{
{tag='th', content='[[Premium Pass|Premium]]', colspan="6"},
{tag='td', content=Infobox.param('premium'), colspan="14"},
}
return infobox
end
return p
c61098eedb79ae64a52449e51f0828872bce53bd
1536
1535
2024-03-27T00:27:33Z
Merds
25
Scribunto
text/plain
-- Module for [[Template:Infobox Profession]]
-- Test changes using [[Module:Infobox Profession/sandbox]] [[Template:Infobox Profession/sandbox]]
local p = {}
local Infobox = require('Module:Infobox')
local parse = require('Module:Param Parse')
function p.main(frame)
local args = frame:getParent().args
local config = {
infobox_name = 'Profession',
}
local params = {
{name = 'name', func = parse.has_content, smw_property = 'Name'},
{name = 'image', func = parse.image, smw_property = 'Image', smw_func = parse.image_smw, category_incomplete = 'Needs image'},
{name = 'release', func = parse.has_content},
{name = 'premium', func = parse.has_content, smw_property = 'Premium', smw_func = parse.premium_smw, category_incomplete = 'Needs premium status'},
}
local infobox = Infobox.new(config, params, args)
infobox
:add_row{
{tag='th', content=Infobox.param('name'), class='infobox.subheader', colspan='20'},
}
:add_row{
{tag='td', content=Infobox.param('image'), class='infobox.image', colspan='20'},
}
:pad(2)
:add_row{
{tag='th', content='Release', colspan="6"},
{tag='td', content=Infobox.param('release'), colspan="14"},
}
:add_row{
{tag='th', content='[[Premium Pass|Premium]]', colspan="6"},
{tag='td', content=Infobox.param('premium'), colspan="14"},
}
:add_row{
{tag='th', content='[[Premium Pass|Premium]]', colspan="6"},
{tag='td', content=Infobox.param('premium'), colspan="14"},
}
:add_row{
{tag='th', content='[[Premium Pass|Premium]]', colspan="6"},
{tag='td', content=Infobox.param('premium'), colspan="14"},
}
:add_row{
{tag='th', content='[[Premium Pass|Premium]]', colspan="6"},
{tag='td', content=Infobox.param('premium'), colspan="14"},
}
:add_row{
addClass = 'infobox.subheader',
{tag='td', content='ROW CLASS SUBHEADER', colspan='20'},
}
:add_row{
{tag='th', content='[[Premium Pass|Premium]]', colspan="6"},
{tag='td', content=Infobox.param('premium'), colspan="14"},
}
:add_row{
{tag='th', content='[[Premium Pass|Premium]]', colspan="6"},
{tag='td', content=Infobox.param('premium'), colspan="14"},
}
:add_row{
{tag='th', content='[[Premium Pass|Premium]]', colspan="6"},
{tag='td', content=Infobox.param('premium'), colspan="14"},
}
:add_row{
{tag='th', content='[[Premium Pass|Premium]]', colspan="6"},
{tag='td', content=Infobox.param('premium'), colspan="14"},
}
return infobox
end
return p
05942fa3df30235d2f21283777d2575010f505c8
1537
1536
2024-03-27T00:27:55Z
Merds
25
Scribunto
text/plain
-- Module for [[Template:Infobox Profession]]
-- Test changes using [[Module:Infobox Profession/sandbox]] [[Template:Infobox Profession/sandbox]]
local p = {}
local Infobox = require('Module:Infobox')
local parse = require('Module:Param Parse')
function p.main(frame)
local args = frame:getParent().args
local config = {
infobox_name = 'Profession',
}
local params = {
{name = 'name', func = parse.has_content, smw_property = 'Name'},
{name = 'image', func = parse.image, smw_property = 'Image', smw_func = parse.image_smw, category_incomplete = 'Needs image'},
{name = 'release', func = parse.has_content},
{name = 'premium', func = parse.has_content, smw_property = 'Premium', smw_func = parse.premium_smw, category_incomplete = 'Needs premium status'},
}
local infobox = Infobox.new(config, params, args)
infobox
:add_row{
{tag='th', content=Infobox.param('name'), class='infobox.subheader', colspan='20'},
}
:add_row{
{tag='td', content=Infobox.param('image'), class='infobox.image', colspan='20'},
}
:pad(20)
:add_row{
{tag='th', content='Release', colspan="6"},
{tag='td', content=Infobox.param('release'), colspan="14"},
}
:add_row{
{tag='th', content='[[Premium Pass|Premium]]', colspan="6"},
{tag='td', content=Infobox.param('premium'), colspan="14"},
}
:add_row{
{tag='th', content='[[Premium Pass|Premium]]', colspan="6"},
{tag='td', content=Infobox.param('premium'), colspan="14"},
}
:add_row{
{tag='th', content='[[Premium Pass|Premium]]', colspan="6"},
{tag='td', content=Infobox.param('premium'), colspan="14"},
}
:add_row{
{tag='th', content='[[Premium Pass|Premium]]', colspan="6"},
{tag='td', content=Infobox.param('premium'), colspan="14"},
}
:add_row{
addClass = 'infobox.subheader',
{tag='td', content='ROW CLASS SUBHEADER', colspan='20'},
}
:add_row{
{tag='th', content='[[Premium Pass|Premium]]', colspan="6"},
{tag='td', content=Infobox.param('premium'), colspan="14"},
}
:add_row{
{tag='th', content='[[Premium Pass|Premium]]', colspan="6"},
{tag='td', content=Infobox.param('premium'), colspan="14"},
}
:add_row{
{tag='th', content='[[Premium Pass|Premium]]', colspan="6"},
{tag='td', content=Infobox.param('premium'), colspan="14"},
}
:add_row{
{tag='th', content='[[Premium Pass|Premium]]', colspan="6"},
{tag='td', content=Infobox.param('premium'), colspan="14"},
}
return infobox
end
return p
c3a5ef8b49b190fe3e3d4301c544c2e5d18d75fe
1538
1537
2024-03-27T00:30:42Z
Merds
25
Scribunto
text/plain
-- Module for [[Template:Infobox Profession]]
-- Test changes using [[Module:Infobox Profession/sandbox]] [[Template:Infobox Profession/sandbox]]
local p = {}
local Infobox = require('Module:Infobox')
local parse = require('Module:Param Parse')
function p.main(frame)
local args = frame:getParent().args
local config = {
infobox_name = 'Profession',
}
local params = {
{name = 'name', func = parse.has_content, smw_property = 'Name'},
{name = 'image', func = parse.image, smw_property = 'Image', smw_func = parse.image_smw, category_incomplete = 'Needs image'},
{name = 'release', func = parse.has_content},
{name = 'premium', func = parse.has_content, smw_property = 'Premium', smw_func = parse.premium_smw, category_incomplete = 'Needs premium status'},
}
local infobox = Infobox.new(config, params, args)
infobox
:add_row{
{tag='th', content=Infobox.param('name'), class='infobox-subheader', colspan='20'},
}
:add_row{
{tag='td', content=Infobox.param('image'), class='infobox-image', colspan='20'},
}
:pad(20)
:add_row{
{tag='th', content='Release', colspan="6"},
{tag='td', content=Infobox.param('release'), colspan="14"},
}
:add_row{
{tag='th', content='[[Premium Pass|Premium]]', colspan="6"},
{tag='td', content=Infobox.param('premium'), colspan="14"},
}
:add_row{
{tag='th', content='[[Premium Pass|Premium]]', colspan="6"},
{tag='td', content=Infobox.param('premium'), colspan="14"},
}
:add_row{
{tag='th', content='[[Premium Pass|Premium]]', colspan="6"},
{tag='td', content=Infobox.param('premium'), colspan="14"},
}
:add_row{
{tag='th', content='[[Premium Pass|Premium]]', colspan="6"},
{tag='td', content=Infobox.param('premium'), colspan="14"},
}
:add_row{
addClass = 'infobox.subheader',
{tag='td', content='ROW CLASS SUBHEADER', colspan='20'},
}
:add_row{
{tag='th', content='[[Premium Pass|Premium]]', colspan="6"},
{tag='td', content=Infobox.param('premium'), colspan="14"},
}
:add_row{
{tag='th', content='[[Premium Pass|Premium]]', colspan="6"},
{tag='td', content=Infobox.param('premium'), colspan="14"},
}
:add_row{
{tag='th', content='[[Premium Pass|Premium]]', colspan="6"},
{tag='td', content=Infobox.param('premium'), colspan="14"},
}
:add_row{
{tag='th', content='[[Premium Pass|Premium]]', colspan="6"},
{tag='td', content=Infobox.param('premium'), colspan="14"},
}
return infobox
end
return p
8397dc1b63dc30acbb4abd02ba98f53d2b44e895
1541
1538
2024-03-27T00:41:41Z
Merds
25
Scribunto
text/plain
-- Module for [[Template:Infobox Profession]]
-- Test changes using [[Module:Infobox Profession/sandbox]] [[Template:Infobox Profession/sandbox]]
local p = {}
local Infobox = require('Module:Infobox')
local parse = require('Module:Param Parse')
function p.main(frame)
local args = frame:getParent().args
local config = {
infobox_name = 'Profession',
}
local params = {
{name = 'name', func = parse.has_content, smw_property = 'Name'},
{name = 'image', func = parse.image, smw_property = 'Image', smw_func = parse.image_smw, category_incomplete = 'Needs image'},
{name = 'release', func = parse.has_content},
{name = 'premium', func = parse.has_content, smw_property = 'Premium', smw_func = parse.premium_smw, category_incomplete = 'Needs premium status'},
}
local infobox = Infobox.new(config, params, args)
infobox
:add_row{
{tag='th', content=Infobox.param('name'), class='infobox-header', colspan='20'},
}
:add_row{
{tag='td', content=Infobox.param('image'), class='infobox-image', colspan='20'},
}
:pad(20)
:add_row{
{tag='th', content='Release', colspan="6"},
{tag='td', content=Infobox.param('release'), colspan="14"},
}
:add_row{
{tag='th', content='[[Premium Pass|Premium]]', colspan="6"},
{tag='td', content=Infobox.param('premium'), colspan="14"},
}
:add_row{
{tag='th', content='[[Premium Pass|Premium]]', colspan="6"},
{tag='td', content=Infobox.param('premium'), colspan="14"},
}
:add_row{
{tag='th', content='[[Premium Pass|Premium]]', colspan="6"},
{tag='td', content=Infobox.param('premium'), colspan="14"},
}
:add_row{
{tag='th', content='[[Premium Pass|Premium]]', colspan="6"},
{tag='td', content=Infobox.param('premium'), colspan="14"},
}
:add_row{
addClass = 'infobox-subheader',
{tag='td', content='ROW CLASS SUBHEADER', colspan='20'},
}
:add_row{
{tag='th', content='[[Premium Pass|Premium]]', colspan="6"},
{tag='td', content=Infobox.param('premium'), colspan="14"},
}
:add_row{
{tag='th', content='[[Premium Pass|Premium]]', colspan="6"},
{tag='td', content=Infobox.param('premium'), colspan="14"},
}
:add_row{
{tag='th', content='[[Premium Pass|Premium]]', colspan="6"},
{tag='td', content=Infobox.param('premium'), colspan="14"},
}
:add_row{
{tag='th', content='[[Premium Pass|Premium]]', colspan="6"},
{tag='td', content=Infobox.param('premium'), colspan="14"},
}
return infobox
end
return p
3ad7e196105ec0718735d5019c2f275e662c8367
User:Merds/common.css
2
784
1520
2024-03-26T23:24:22Z
Merds
25
Created page with "/*<syntaxhighlight lang="css">*/ @import url("/w/User:Merds/CSS/Infobox.css?action=raw&ctype=text/css"); /*</syntaxhighlight>*/"
css
text/css
/*<syntaxhighlight lang="css">*/
@import url("/w/User:Merds/CSS/Infobox.css?action=raw&ctype=text/css");
/*</syntaxhighlight>*/
74d47220e0f295c70f705ce0da4ed69d8f759c09
1523
1520
2024-03-26T23:28:52Z
Merds
25
Merds moved page [[User:Merds/Common.css]] to [[User:Merds/common.css]] without leaving a redirect
css
text/css
/*<syntaxhighlight lang="css">*/
@import url("/w/User:Merds/CSS/Infobox.css?action=raw&ctype=text/css");
/*</syntaxhighlight>*/
74d47220e0f295c70f705ce0da4ed69d8f759c09
User:Merds/CSS/Infobox.css
2
785
1521
2024-03-26T23:24:30Z
Merds
25
Created page with "a"
css
text/css
a
86f7e437faa5a7fce15d1ddcb9eaeaea377667b8
1522
1521
2024-03-26T23:28:14Z
Merds
25
test
css
text/css
/*<syntaxhighlight lang="css">*/
.infobox {
background: red;
}
/*</syntaxhighlight>*/
91a147114399de68cc795a5a5c31fb5ba70b5326
1524
1522
2024-03-26T23:30:46Z
Merds
25
css
text/css
/*<syntaxhighlight lang="css">*/
.infobox {
font-size: .85em;
width: 300px;
border-collapse: collapse;
float: right;
table-layout: fixed;
}
/*</syntaxhighlight>*/
0a49686263adb74e27bf4c175c3bb9abd93d95c1
1525
1524
2024-03-26T23:37:44Z
Merds
25
css
text/css
/*<syntaxhighlight lang="css">*/
.infobox {
font-size: .85em;
width: 300px;
border-collapse: collapse;
float: right;
table-layout: fixed;
}
.infobox tbody {
border: 1px solid #e6d7c6;
}
.infobox * > tr:nth-child(odd) {
background: #e5d7c4;
}
.infobox * > tr:nth-child(even) {
background: #fff8ee;
}
.infobox-image {
text-align: center;
}
/*</syntaxhighlight>*/
b7997e5497ee93e099de0b86e373d85bf8ad6a7b
1526
1525
2024-03-26T23:38:35Z
Merds
25
css
text/css
/*<syntaxhighlight lang="css">*/
.infobox {
font-size: .85em;
width: 300px;
border-collapse: collapse;
float: right;
table-layout: fixed;
}
.infobox .infobox-buttons {
display: flex;
flex-wrap: wrap;
justify-content: center;
grid-gap: 3px;
margin-bottom: 3px;
}
.infobox tbody {
border: 1px solid #e6d7c6;
}
.infobox * > tr:nth-child(odd) {
background: #e5d7c4;
}
.infobox * > tr:nth-child(even) {
background: #fff8ee;
}
.infobox-image {
text-align: center;
}
/*</syntaxhighlight>*/
468a72977446a1a3a21059b3d47e8ebf8435e9bf
1527
1526
2024-03-26T23:42:20Z
Merds
25
css
text/css
/*<syntaxhighlight lang="css">*/
.infobox {
font-size: .85em;
width: 300px;
border-collapse: collapse;
float: right;
table-layout: fixed;
}
.infobox .infobox-buttons {
display: flex;
flex-wrap: wrap;
justify-content: center;
grid-gap: 3px;
margin-bottom: 3px;
}
.infobox .infobox-buttons span.button {
background: #e6d7c6;;
padding: 0 5px;
font-weight: bold;
}
.infobox tbody {
border: 1px solid #e6d7c6;
}
.infobox * > tr:nth-child(odd) {
background: #e5d7c4;
}
.infobox * > tr:nth-child(even) {
background: #fff8ee;
}
.infobox-image {
text-align: center;
}
/*</syntaxhighlight>*/
3045f11f7b3a2d78f0e110b10840191754886846
1528
1527
2024-03-26T23:52:26Z
Merds
25
css
text/css
/*<syntaxhighlight lang="css">*/
.infobox {
font-size: .85em;
width: 300px;
border-collapse: collapse;
float: right;
table-layout: fixed;
}
.infobox .infobox-buttons {
display: flex;
flex-wrap: wrap;
justify-content: center;
grid-gap: 3px;
margin-bottom: 3px;
}
.infobox .infobox-buttons span.button {
background: #e6d7c6;;
padding: 0 5px;
font-weight: bold;
}
.infobox tbody {
border: 1px solid #e6d7c6;
}
.infobox tr > td {
padding: 0 10px;
}
.infobox * > tr:nth-child(odd) {
background: #e5d7c4;
}
.infobox * > tr:nth-child(even) {
background: #fff8ee;
}
.infobox-image {
text-align: center;
}
/*</syntaxhighlight>*/
5499085b909d959dcb0a5c37235af8b4135ebdd3
1529
1528
2024-03-27T00:05:42Z
Merds
25
css
text/css
/*<syntaxhighlight lang="css">*/
.infobox {
font-size: .85em;
width: 300px;
border-collapse: collapse;
float: right;
table-layout: fixed;
}
.infobox .infobox-buttons {
display: flex;
flex-wrap: wrap;
justify-content: center;
grid-gap: 3px;
margin-bottom: 3px;
flex: 1 1 20%;
max-width: 20%;
}
.infobox .infobox-buttons span.button {
background: #e6d7c6;;
padding: 0 5px;
font-weight: bold;
}
.infobox tbody {
border: 1px solid #e6d7c6;
}
.infobox tr > td {
padding: 0 10px;
}
.infobox * > tr:nth-child(odd) {
background: #e5d7c4;
}
.infobox * > tr:nth-child(even) {
background: #fff8ee;
}
.infobox .infobox-image {
text-align: center;
}
/*</syntaxhighlight>*/
49f25bd8c14d4befb85d747c43fbdde2bd4f6f19
1530
1529
2024-03-27T00:12:11Z
Merds
25
css
text/css
/*<syntaxhighlight lang="css">*/
.infobox {
font-size: .85em;
width: 300px;
border-collapse: collapse;
float: right;
table-layout: fixed;
}
.infobox .infobox-buttons {
display: flex;
flex-wrap: wrap;
justify-content: center;
grid-gap: 3px;
margin-bottom: 3px;
}
.infobox .infobox-buttons span.button {
background: #e6d7c6;;
padding: 0 5px;
font-weight: bold;
flex: 1 1 20%;
max-width: 20%;
}
.infobox tbody {
border: 1px solid #e6d7c6;
}
.infobox tr > td {
padding: 0 10px;
}
.infobox * > tr:nth-child(odd) {
background: #e5d7c4;
}
.infobox * > tr:nth-child(even) {
background: #fff8ee;
}
.infobox .infobox-image {
text-align: center;
}
/*</syntaxhighlight>*/
cd9c5feb64f2395b5339e22215f0896c1ad333b2
1531
1530
2024-03-27T00:13:22Z
Merds
25
css
text/css
/*<syntaxhighlight lang="css">*/
.infobox {
font-size: .85em;
width: 300px;
border-collapse: collapse;
float: right;
table-layout: fixed;
}
.infobox .infobox-buttons {
display: flex;
flex-wrap: wrap;
justify-content: center;
grid-gap: 3px;
margin-bottom: 3px;
}
.infobox .infobox-buttons span.button {
background: #e6d7c6;;
padding: 0 5px;
font-weight: bold;
flex: 1 1 20%;
max-width: 20%;
}
.infobox tbody {
border: 1px solid #e6d7c6;
}
.infobox tr > td {
padding: 0 10px;
}
.infobox * > tr:nth-child(odd) {
background: #e5d7c4;
}
.infobox * > tr:nth-child(even) {
background: #fff8ee;
}
.infobox .infobox-image {
text-align: center;
}
/*Hide*/
.hidden {
display: none;
}
/*</syntaxhighlight>*/
b01da4248d42bda1f4377fc39b4a5fc729c8d703
1533
1531
2024-03-27T00:16:48Z
Merds
25
css
text/css
/*<syntaxhighlight lang="css">*/
.infobox {
font-size: .85em;
width: 300px;
border-collapse: collapse;
float: right;
table-layout: fixed;
}
.infobox .infobox-buttons {
display: flex;
flex-wrap: wrap;
justify-content: center;
grid-gap: 3px;
margin-bottom: 3px;
}
.infobox .infobox-buttons .button {
background: #e6d7c6;;
padding: 0 5px;
font-weight: bold;
flex: 1 1 20%;
max-width: 20%;
}
.infobox tbody {
border: 1px solid #e6d7c6;
}
.infobox tr > td {
padding: 0 10px;
}
.infobox * > tr:nth-child(odd) {
background: #e5d7c4;
}
.infobox * > tr:nth-child(even) {
background: #fff8ee;
}
.infobox .infobox-image {
text-align: center;
}
/*Hide*/
.hidden {
display: none;
}
/*</syntaxhighlight>*/
8f43b60fc899bfeff5d8f645a86c1c5a0f75500c
1534
1533
2024-03-27T00:19:27Z
Merds
25
css
text/css
/*<syntaxhighlight lang="css">*/
.infobox {
font-size: .85em;
width: 300px;
border-collapse: collapse;
float: right;
table-layout: fixed;
}
.infobox .infobox-buttons {
display: flex;
flex-wrap: wrap;
justify-content: center;
grid-gap: 3px;
margin-bottom: 3px;
}
.infobox .infobox-buttons .button {
background: #e6d7c6;;
padding: 0 5px;
font-weight: bold;
flex: 1 1 20%;
max-width: 20%;
}
.infobox tbody {
border: 1px solid #e6d7c6;
}
.infobox tr > td {
padding: 3px 10px;
}
.infobox * > tr:nth-child(odd) {
background: #e5d7c4;
}
.infobox * > tr:nth-child(even) {
background: #fff8ee;
}
.infobox .infobox-image {
text-align: center;
}
/*Hide*/
.hidden {
display: none;
}
/*</syntaxhighlight>*/
cf3217ef7b65cf5ac2976c86949de11974d9f54e
1539
1534
2024-03-27T00:34:58Z
Merds
25
css
text/css
/*<syntaxhighlight lang="css">*/
.infobox {
font-size: .85em;
width: 300px;
border-collapse: collapse;
float: right;
table-layout: fixed;
}
.infobox .infobox-buttons {
display: flex;
flex-wrap: wrap;
justify-content: center;
grid-gap: 3px;
margin-bottom: 3px;
}
.infobox .infobox-buttons .button {
background: #e6d7c6;;
padding: 0 5px;
font-weight: bold;
flex: 1 1 20%;
max-width: 20%;
}
.infobox tbody {
border: 1px solid #e6d7c6;
background: #fff8ee;
}
.infobox .infobox-image {
text-align: center;
}
.infobox tr > td:not(.infobox-padding) {
padding: 3px 10px;
}
.infobox th:not(.infobox-header):not(.infobox-subheader):not(.infobox-nested) {
border-right: 2px solid #e7d7c7;
}
/*Hide*/
.hidden {
display: none;
}
/*</syntaxhighlight>*/
f19410d8374745373e22fc9cafc833e2592b8060
1540
1539
2024-03-27T00:39:44Z
Merds
25
css
text/css
/*<syntaxhighlight lang="css">*/
/* variables */
:root {
--table-header: #e7d7c7;
--table-body: #fff8ee;
}
.infobox {
font-size: .85em;
width: 300px;
border-collapse: collapse;
float: right;
table-layout: fixed;
}
.infobox .infobox-buttons {
display: flex;
flex-wrap: wrap;
justify-content: center;
grid-gap: 3px;
margin-bottom: 3px;
}
.infobox .infobox-buttons .button {
background: var(--table-header);
padding: 0 5px;
font-weight: bold;
flex: 1 1 20%;
max-width: 20%;
}
.infobox tbody {
border: 1px solid var(--table-header);
background: var(--table-body);
}
.infobox .infobox-subheader {
background: var(--table-header);
}
.infobox .infobox-image {
text-align: center;
}
.infobox .infobox-padding {
backgound: var(--table-body);
}
.infobox tr > td:not(.infobox-padding) {
padding: 3px 10px;
}
.infobox th:not(.infobox-header):not(.infobox-subheader):not(.infobox-nested) {
border-right: 2px solid var(--table-header);
}
/*Hide*/
.hidden {
display: none;
}
/*</syntaxhighlight>*/
6ac113aee2244f06a03ebaba16b31ea9ef5a28ac
1542
1540
2024-03-27T00:42:15Z
Merds
25
css
text/css
/*<syntaxhighlight lang="css">*/
/* variables */
:root {
--table-header: #e7d7c7;
--table-body: #fff8ee;
}
.infobox {
font-size: .85em;
width: 300px;
border-collapse: collapse;
float: right;
table-layout: fixed;
}
.infobox .infobox-buttons {
display: flex;
flex-wrap: wrap;
justify-content: center;
grid-gap: 3px;
margin-bottom: 3px;
}
.infobox .infobox-buttons .button {
background: var(--table-header);
padding: 0 5px;
font-weight: bold;
flex: 1 1 20%;
max-width: 20%;
}
.infobox tbody {
border: 1px solid var(--table-header);
background: var(--table-body);
}
.infobox .infobox-header, .infobox .infobox-subheader {
background: var(--table-header);
}
.infobox .infobox-header {
font-size: 1.15em;
}
.infobox .infobox-image {
text-align: center;
}
.infobox .infobox-padding {
backgound: var(--table-body);
}
.infobox tr > td:not(.infobox-padding) {
padding: 3px 10px;
}
.infobox th:not(.infobox-header):not(.infobox-subheader):not(.infobox-nested) {
border-right: 2px solid var(--table-header);
}
/*Hide*/
.hidden {
display: none;
}
/*</syntaxhighlight>*/
29358e3873d85acac67b0118ffea8026932a554e
1543
1542
2024-03-27T00:46:00Z
Merds
25
css
text/css
/*<syntaxhighlight lang="css">*/
/* variables */
:root {
--table-header: #e7d7c7;
--table-body: #fff8ee;
}
.infobox {
font-size: .85em;
width: 300px;
border-collapse: collapse;
float: right;
table-layout: fixed;
}
.infobox .infobox-buttons {
display: flex;
flex-wrap: wrap;
justify-content: center;
grid-gap: 3px;
margin-bottom: 3px;
}
.infobox .infobox-buttons .button {
background: var(--table-header);
padding: 0 5px;
font-weight: bold;
flex: 1 1 20%;
max-width: 20%;
}
.infobox tbody {
border: 1px solid var(--table-header);
background: var(--table-body);
}
.infobox .infobox-header, .infobox .infobox-subheader {
background: var(--table-header);
font-weight: bold;
text-align: center;
}
.infobox .infobox-header {
font-size: 1.15em;
}
.infobox .infobox-image {
text-align: center;
}
.infobox .infobox-padding {
backgound: var(--table-body);
}
.infobox tr > td:not(.infobox-padding) {
padding: 3px 10px;
}
.infobox th:not(.infobox-header):not(.infobox-subheader):not(.infobox-nested) {
border-right: 2px solid var(--table-header);
}
/*Hide*/
.hidden {
display: none;
}
/*</syntaxhighlight>*/
5785cf6add18d78712e190cf4c929a7e80c56745
1544
1543
2024-03-27T00:47:14Z
Merds
25
css
text/css
/*<syntaxhighlight lang="css">*/
/* variables */
:root {
--table-header: #e7d7c7;
--table-body: #fff8ee;
}
.infobox {
font-size: .85em;
width: 300px;
border-collapse: collapse;
float: right;
table-layout: fixed;
}
.infobox .infobox-buttons {
display: flex;
flex-wrap: wrap;
justify-content: center;
grid-gap: 3px;
margin-bottom: 3px;
}
.infobox .infobox-buttons .button {
background: var(--table-header);
padding: 0 5px;
font-weight: bold;
flex: 1 1 20%;
max-width: 20%;
}
.infobox tbody {
border: 1px solid var(--table-header);
background: var(--table-body);
}
.infobox .infobox-header, .infobox .infobox-subheader {
background: var(--table-header);
font-weight: bold;
text-align: center;
}
.infobox .infobox-header {
font-size: 1.15em;
}
.infobox .infobox-image {
text-align: center;
}
.infobox .infobox-padding {
backgound: var(--table-body);
}
.infobox tr > td:not(.infobox-padding) {
padding: 3px 10px;
}
.infobox th:not(.infobox-header):not(.infobox-subheader):not(.infobox-nested) {
border-right: 2px solid var(--table-header);
text-align: right;
padding: 3px 10px;
}
/*Hide*/
.hidden {
display: none;
}
/*</syntaxhighlight>*/
8ffa6b878334e4036f20d9e026436471dc48705c
1545
1544
2024-03-27T00:50:51Z
Merds
25
css
text/css
/*<syntaxhighlight lang="css">*/
/* variables */
:root {
--table-header: #e7d7c7;
--table-body: #fff8ee;
}
.infobox {
font-size: .85em;
width: 300px;
border-collapse: collapse;
float: right;
table-layout: fixed;
}
.infobox .infobox-buttons {
display: flex;
flex-wrap: wrap;
justify-content: center;
grid-gap: 3px;
margin-bottom: 3px;
}
.infobox .infobox-buttons .button {
background: var(--table-header);
padding: 0 5px;
font-weight: bold;
flex: 1 1 20%;
max-width: 20%;
}
.infobox tbody {
border: 1px solid var(--table-header);
background: var(--table-body);
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(231, 215, 199, 0.5);
}
.infobox .infobox-header, .infobox .infobox-subheader {
background: var(--table-header);
font-weight: bold;
text-align: center;
}
.infobox .infobox-header {
font-size: 1.15em;
}
.infobox .infobox-image {
text-align: center;
}
.infobox .infobox-padding {
backgound: var(--table-body);
}
.infobox tr > td:not(.infobox-padding) {
padding: 3px 10px;
}
.infobox th:not(.infobox-header):not(.infobox-subheader):not(.infobox-nested) {
border-right: 2px solid var(--table-header);
text-align: right;
padding: 3px 10px;
}
/*Hide*/
.hidden {
display: none;
}
/*</syntaxhighlight>*/
3ff128717c9940ec919552a7e2fe61d1d91b2d48
1546
1545
2024-03-27T00:53:47Z
Merds
25
css
text/css
/*<syntaxhighlight lang="css">*/
/* variables */
:root {
--table-header: #c1906e;
--table-subheader: #e7d7c7;
--table-body: #fff8ee;
}
.infobox {
font-size: .85em;
width: 300px;
border-collapse: collapse;
float: right;
table-layout: fixed;
}
.infobox .infobox-buttons {
display: flex;
flex-wrap: wrap;
justify-content: center;
grid-gap: 3px;
margin-bottom: 3px;
}
.infobox .infobox-buttons .button {
background: var(--table-header);
padding: 0 5px;
font-weight: bold;
flex: 1 1 20%;
max-width: 20%;
}
.infobox tbody {
border: 1px solid var(--table-subheader);
background: var(--table-body);
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(231, 215, 199, 0.5);
}
.infobox .infobox-header {
background: var(--table-header);
font-weight: bold;
text-align: center;
}
.infobox .infobox-subheader {
background: var(--table-subheader);
font-weight: bold;
text-align: center;
}
.infobox .infobox-header {
font-size: 1.15em;
}
.infobox .infobox-image {
text-align: center;
}
.infobox .infobox-padding {
backgound: var(--table-body);
}
.infobox tr > td:not(.infobox-padding) {
padding: 3px 10px;
}
.infobox th:not(.infobox-header):not(.infobox-subheader):not(.infobox-nested) {
border-right: 2px solid var(--table-dubheader);
text-align: right;
padding: 3px 10px;
}
/*Hide*/
.hidden {
display: none;
}
/*</syntaxhighlight>*/
9fe33b6a7fb7ab21339f074271090176f211580d
1547
1546
2024-03-27T00:54:23Z
Merds
25
css
text/css
/*<syntaxhighlight lang="css">*/
/* variables */
:root {
--table-header: #c1906e;
--table-subheader: #e7d7c7;
--table-body: #fff8ee;
}
.infobox {
font-size: .85em;
width: 300px;
border-collapse: collapse;
float: right;
table-layout: fixed;
}
.infobox .infobox-buttons {
display: flex;
flex-wrap: wrap;
justify-content: center;
grid-gap: 3px;
margin-bottom: 3px;
}
.infobox .infobox-buttons .button {
background: var(--table-header);
padding: 0 5px;
font-weight: bold;
flex: 1 1 20%;
max-width: 20%;
}
.infobox tbody {
border: 1px solid var(--table-subheader);
background: var(--table-body);
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(231, 215, 199, 0.5);
}
.infobox .infobox-header {
background: var(--table-header);
font-weight: bold;
text-align: center;
color: white;
}
.infobox .infobox-subheader {
background: var(--table-subheader);
font-weight: bold;
text-align: center;
color: white;
}
.infobox .infobox-header {
font-size: 1.15em;
}
.infobox .infobox-image {
text-align: center;
}
.infobox .infobox-padding {
backgound: var(--table-body);
}
.infobox tr > td:not(.infobox-padding) {
padding: 3px 10px;
}
.infobox th:not(.infobox-header):not(.infobox-subheader):not(.infobox-nested) {
border-right: 2px solid var(--table-dubheader);
text-align: right;
padding: 3px 10px;
}
/*Hide*/
.hidden {
display: none;
}
/*</syntaxhighlight>*/
a8643e57d8b50e77c12179dccb308ac181802d6f
1548
1547
2024-03-27T00:55:54Z
Merds
25
css
text/css
/*<syntaxhighlight lang="css">*/
/* variables */
:root {
--table-header: #c1906e;
--table-subheader: #e7d7c7;
--table-body: #fff8ee;
--table-border: #e9d8cc;
}
.infobox {
font-size: .85em;
width: 300px;
border-collapse: collapse;
float: right;
table-layout: fixed;
}
.infobox .infobox-buttons {
display: flex;
flex-wrap: wrap;
justify-content: center;
grid-gap: 3px;
margin-bottom: 3px;
}
.infobox .infobox-buttons .button {
background: var(--table-header);
padding: 0 5px;
font-weight: bold;
flex: 1 1 20%;
max-width: 20%;
}
.infobox tbody {
border: 1px solid var(--table-border);
background: var(--table-body);
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(231, 215, 199, 0.5);
}
.infobox .infobox-header {
background: var(--table-header);
font-weight: bold;
text-align: center;
color: white;
}
.infobox .infobox-subheader {
background: var(--table-subheader);
font-weight: bold;
text-align: center;
color: white;
}
.infobox .infobox-header {
font-size: 1.15em;
}
.infobox .infobox-image {
text-align: center;
}
.infobox .infobox-padding {
backgound: var(--table-body);
}
.infobox tr > td:not(.infobox-padding) {
padding: 3px 10px;
}
.infobox th:not(.infobox-header):not(.infobox-subheader):not(.infobox-nested) {
border-right: 2px solid var(--table-dubheader);
text-align: right;
padding: 3px 10px;
}
/*Hide*/
.hidden {
display: none;
}
/*</syntaxhighlight>*/
27f4128cd3094da1aba4535fe2ea6f3aa21fb422
1549
1548
2024-03-27T00:56:38Z
Merds
25
css
text/css
/*<syntaxhighlight lang="css">*/
/* variables */
:root {
--table-header: #c1906e;
--table-subheader: #e7d7c7;
--table-body: #fff8ee;
--table-border: #e9d8cc;
}
.infobox {
font-size: .85em;
width: 300px;
border-collapse: collapse;
float: right;
table-layout: fixed;
}
.infobox .infobox-buttons {
display: flex;
flex-wrap: wrap;
justify-content: center;
grid-gap: 3px;
margin-bottom: 3px;
color: white;
}
.infobox .infobox-buttons .button {
background: var(--table-header);
padding: 0 5px;
font-weight: bold;
flex: 1 1 20%;
max-width: 20%;
}
.infobox tbody {
border: 1px solid var(--table-border);
background: var(--table-body);
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(231, 215, 199, 0.5);
}
.infobox .infobox-header {
background: var(--table-header);
font-weight: bold;
text-align: center;
color: white;
}
.infobox .infobox-subheader {
background: var(--table-subheader);
font-weight: bold;
text-align: center;
color: white;
}
.infobox .infobox-header {
font-size: 1.15em;
}
.infobox .infobox-image {
text-align: center;
}
.infobox .infobox-padding {
backgound: var(--table-body);
}
.infobox tr > td:not(.infobox-padding) {
padding: 3px 10px;
}
.infobox th:not(.infobox-header):not(.infobox-subheader):not(.infobox-nested) {
border-right: 2px solid var(--table-dubheader);
text-align: right;
padding: 3px 10px;
}
/*Hide*/
.hidden {
display: none;
}
/*</syntaxhighlight>*/
21699868aae2fbb5b6358b1dded6440d0994b79e
1550
1549
2024-03-27T00:56:56Z
Merds
25
css
text/css
/*<syntaxhighlight lang="css">*/
/* variables */
:root {
--table-header: #c1906e;
--table-subheader: #e7d7c7;
--table-body: #fff8ee;
--table-border: #e9d8cc;
}
.infobox {
font-size: .85em;
width: 300px;
border-collapse: collapse;
float: right;
table-layout: fixed;
}
.infobox .infobox-buttons {
display: flex;
flex-wrap: wrap;
justify-content: center;
grid-gap: 3px;
margin-bottom: 3px;
}
.infobox .infobox-buttons .button {
background: var(--table-header);
padding: 0 5px;
font-weight: bold;
flex: 1 1 20%;
max-width: 20%;
color: white;
}
.infobox tbody {
border: 1px solid var(--table-border);
background: var(--table-body);
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(231, 215, 199, 0.5);
}
.infobox .infobox-header {
background: var(--table-header);
font-weight: bold;
text-align: center;
color: white;
}
.infobox .infobox-subheader {
background: var(--table-subheader);
font-weight: bold;
text-align: center;
color: white;
}
.infobox .infobox-header {
font-size: 1.15em;
}
.infobox .infobox-image {
text-align: center;
}
.infobox .infobox-padding {
backgound: var(--table-body);
}
.infobox tr > td:not(.infobox-padding) {
padding: 3px 10px;
}
.infobox th:not(.infobox-header):not(.infobox-subheader):not(.infobox-nested) {
border-right: 2px solid var(--table-dubheader);
text-align: right;
padding: 3px 10px;
}
/*Hide*/
.hidden {
display: none;
}
/*</syntaxhighlight>*/
02859344f30946ba8ec53d659493389a33ec0351
1551
1550
2024-03-27T00:58:51Z
Merds
25
css
text/css
/*<syntaxhighlight lang="css">*/
/* variables */
:root {
--table-header: #c1906e;
--table-subheader: #e7d7c7;
--table-body: #fff8ee;
--table-border: #e9d8cc;
}
.infobox {
font-size: .85em;
width: 300px;
border-collapse: collapse;
float: right;
table-layout: fixed;
}
.infobox .infobox-buttons {
display: flex;
flex-wrap: wrap;
justify-content: center;
grid-gap: 3px;
margin-bottom: 3px;
}
.infobox .infobox-buttons .button {
background: var(--table-header);
padding: 0 5px;
font-weight: bold;
flex: 1 1 20%;
max-width: 20%;
color: white;
}
.infobox tbody {
border: 1px solid var(--table-border);
background: var(--table-body);
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(231, 215, 199, 0.5);
}
.infobox .infobox-header {
background: var(--table-header);
font-weight: bold;
text-align: center;
color: white;
}
.infobox .infobox-header {
font-size: 1.15em;
}
.infobox .infobox-image {
text-align: center;
background: var(--body-main);
}
.infobox .infobox-subheader {
background: var(--table-subheader);
font-weight: bold;
text-align: center;
color: white;
}
.infobox .infobox-padding {
backgound: var(--table-body);
}
.infobox tr > td:not(.infobox-padding) {
padding: 3px 10px;
}
.infobox th:not(.infobox-header):not(.infobox-subheader):not(.infobox-nested) {
border-right: 2px solid var(--table-dubheader);
text-align: right;
padding: 3px 10px;
}
/*Hide*/
.hidden {
display: none;
}
/*</syntaxhighlight>*/
80528c0937ebb5b6e124c9c60519c8f5586b4a3b
1552
1551
2024-03-27T01:01:16Z
Merds
25
css
text/css
/*<syntaxhighlight lang="css">*/
/* variables */
:root {
--table-header: #b1886f;
--table-subheader: #d1b9ad;
--table-body: #fff8ee;
--table-border: #e9d8cc;
}
.infobox {
font-size: .85em;
width: 300px;
border-collapse: collapse;
float: right;
table-layout: fixed;
}
.infobox .infobox-buttons {
display: flex;
flex-wrap: wrap;
justify-content: center;
grid-gap: 3px;
margin-bottom: 3px;
}
.infobox .infobox-buttons .button {
background: var(--table-header);
padding: 0 5px;
font-weight: bold;
flex: 1 1 20%;
max-width: 20%;
color: white;
}
.infobox tbody {
border: 1px solid var(--table-border);
background: var(--table-body);
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(231, 215, 199, 0.5);
}
.infobox .infobox-header {
background: var(--table-header);
font-weight: bold;
text-align: center;
color: white;
}
.infobox .infobox-header {
font-size: 1.15em;
}
.infobox .infobox-image {
text-align: center;
background: var(--body-main);
}
.infobox .infobox-subheader {
background: var(--table-subheader);
font-weight: bold;
text-align: center;
color: white;
}
.infobox .infobox-padding {
backgound: var(--table-body);
}
.infobox tr > td:not(.infobox-padding) {
padding: 3px 10px;
}
.infobox th:not(.infobox-header):not(.infobox-subheader):not(.infobox-nested) {
border-right: 2px solid var(--table-dubheader);
text-align: right;
padding: 3px 10px;
}
/*Hide*/
.hidden {
display: none;
}
/*</syntaxhighlight>*/
922809f49d0474698285b202a4fc0faacc1cefff
1553
1552
2024-03-27T01:01:35Z
Merds
25
css
text/css
/*<syntaxhighlight lang="css">*/
/* variables */
:root {
--table-header: #b1886f;
--table-subheader: #d1b9ad;
--table-body: #fff8ee;
--table-border: #e9d8cc;
}
.infobox {
font-size: .85em;
width: 300px;
border-collapse: collapse;
float: right;
table-layout: fixed;
}
.infobox .infobox-buttons {
display: flex;
flex-wrap: wrap;
justify-content: center;
grid-gap: 3px;
margin-bottom: 3px;
}
.infobox .infobox-buttons .button {
background: var(--table-header);
padding: 0 5px;
font-weight: bold;
flex: 1 1 20%;
max-width: 20%;
color: white;
}
.infobox tbody {
border: 1px solid var(--table-border);
background: var(--table-body);
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(231, 215, 199, 0.5);
}
.infobox .infobox-header {
background: var(--table-header);
font-weight: bold;
text-align: center;
color: white;
}
.infobox .infobox-header {
font-size: 1.15em;
}
.infobox .infobox-image {
text-align: center;
background: var(--body-main);
}
.infobox .infobox-subheader {
background: var(--table-subheader);
font-weight: bold;
text-align: center;
color: white;
}
.infobox .infobox-padding {
backgound: var(--table-body);
}
.infobox tr > td:not(.infobox-padding) {
padding: 3px 10px;
}
.infobox th:not(.infobox-header):not(.infobox-subheader):not(.infobox-nested) {
border-right: 2px solid var(--table-subheader);
text-align: right;
padding: 3px 10px;
}
/*Hide*/
.hidden {
display: none;
}
/*</syntaxhighlight>*/
58b3c750b6a9d4e12fd93773d4e12951302d9c8a
Module:Sandbox/User:BlackHawk/Infobox Profession
828
779
1554
1541
2024-03-27T01:06:38Z
Merds
25
Scribunto
text/plain
-- Module for [[Template:Infobox Profession]]
-- Test changes using [[Module:Infobox Profession/sandbox]] [[Template:Infobox Profession/sandbox]]
local p = {}
local Infobox = require('Module:Infobox')
local parse = require('Module:Param Parse')
function p.main(frame)
local args = frame:getParent().args
local config = {
infobox_name = 'Profession',
}
local params = {
{name = 'name', func = parse.has_content, smw_property = 'Name'},
{name = 'image', func = parse.image, smw_property = 'Image', smw_func = parse.image_smw, category_incomplete = 'Needs image'},
{name = 'release', func = parse.has_content},
{name = 'premium', func = parse.has_content, smw_property = 'Premium', smw_func = parse.premium_smw, category_incomplete = 'Needs premium status'},
}
local infobox = Infobox.new(config, params, args)
infobox
:add_row{
{tag='th', content=Infobox.param('name'), class='infobox-header', colspan='20'},
}
:add_row{
{tag='td', content=Infobox.param('image'), class='infobox-image', colspan='20'},
}
:pad(20)
:add_row{
{tag='th', content='Release', colspan="6"},
{tag='td', content=Infobox.param('release'), colspan="14"},
}
:add_row{
{tag='th', content='[[Premium Pass|Premium]]', colspan="6"},
{tag='td', content=Infobox.param('premium'), colspan="14"},
}
:add_row{
{tag='th', content='[[Premium Pass|Premium]]', colspan="6"},
{tag='td', content=Infobox.param('premium'), colspan="14"},
}
:add_row{
{tag='th', content='[[Premium Pass|Premium]]', colspan="6"},
{tag='td', content=Infobox.param('premium'), colspan="14"},
}
:add_row{
{tag='th', content='[[Premium Pass|Premium]]', colspan="6"},
{tag='td', content=Infobox.param('premium'), colspan="14"},
}
:pad(20)
:add_row{
addClass = 'infobox-subheader',
{tag='td', content='ROW CLASS SUBHEADER', colspan='20'},
}
:add_row{
{tag='th', content='[[Premium Pass|Premium]]', colspan="6"},
{tag='td', content=Infobox.param('premium'), colspan="14"},
}
:add_row{
{tag='th', content='[[Premium Pass|Premium]]', colspan="6"},
{tag='td', content=Infobox.param('premium'), colspan="14"},
}
:add_row{
{tag='th', content='[[Premium Pass|Premium]]', colspan="6"},
{tag='td', content=Infobox.param('premium'), colspan="14"},
}
:add_row{
{tag='th', content='[[Premium Pass|Premium]]', colspan="6"},
{tag='td', content=Infobox.param('premium'), colspan="14"},
}
return infobox
end
return p
295d0c67ad448f246bebdce10e2615f7f8948f82
1555
1554
2024-03-27T01:07:14Z
Merds
25
Scribunto
text/plain
-- Module for [[Template:Infobox Profession]]
-- Test changes using [[Module:Infobox Profession/sandbox]] [[Template:Infobox Profession/sandbox]]
local p = {}
local Infobox = require('Module:Infobox')
local parse = require('Module:Param Parse')
function p.main(frame)
local args = frame:getParent().args
local config = {
infobox_name = 'Profession',
}
local params = {
{name = 'name', func = parse.has_content, smw_property = 'Name'},
{name = 'image', func = parse.image, smw_property = 'Image', smw_func = parse.image_smw, category_incomplete = 'Needs image'},
{name = 'release', func = parse.has_content},
{name = 'premium', func = parse.has_content, smw_property = 'Premium', smw_func = parse.premium_smw, category_incomplete = 'Needs premium status'},
}
local infobox = Infobox.new(config, params, args)
infobox
:add_row{
{tag='th', content=Infobox.param('name'), class='infobox-header', colspan='20'},
}
:add_row{
{tag='td', content=Infobox.param('image'), class='infobox-image', colspan='20'},
}
:add_row{
{tag='th', content='Release', colspan="6"},
{tag='td', content=Infobox.param('release'), colspan="14"},
}
:add_row{
{tag='th', content='[[Premium Pass|Premium]]', colspan="6"},
{tag='td', content=Infobox.param('premium'), colspan="14"},
}
:add_row{
{tag='th', content='[[Premium Pass|Premium]]', colspan="6"},
{tag='td', content=Infobox.param('premium'), colspan="14"},
}
:add_row{
{tag='th', content='[[Premium Pass|Premium]]', colspan="6"},
{tag='td', content=Infobox.param('premium'), colspan="14"},
}
:add_row{
{tag='th', content='[[Premium Pass|Premium]]', colspan="6"},
{tag='td', content=Infobox.param('premium'), colspan="14"},
}
:pad(20)
:add_row{
addClass = 'infobox-subheader',
{tag='td', content='ROW CLASS SUBHEADER', colspan='20'},
}
:add_row{
{tag='th', content='[[Premium Pass|Premium]]', colspan="6"},
{tag='td', content=Infobox.param('premium'), colspan="14"},
}
:add_row{
{tag='th', content='[[Premium Pass|Premium]]', colspan="6"},
{tag='td', content=Infobox.param('premium'), colspan="14"},
}
:add_row{
{tag='th', content='[[Premium Pass|Premium]]', colspan="6"},
{tag='td', content=Infobox.param('premium'), colspan="14"},
}
:add_row{
{tag='th', content='[[Premium Pass|Premium]]', colspan="6"},
{tag='td', content=Infobox.param('premium'), colspan="14"},
}
:pad(20)
return infobox
end
return p
febcf15b1fe144926bb9755512a51cb3f53a488c
1556
1555
2024-03-27T01:12:05Z
Merds
25
Scribunto
text/plain
-- Module for [[Template:Infobox Profession]]
-- Test changes using [[Module:Infobox Profession/sandbox]] [[Template:Infobox Profession/sandbox]]
local p = {}
local Infobox = require('Module:Infobox')
local parse = require('Module:Param Parse')
function p.main(frame)
local args = frame:getParent().args
local config = {
infobox_name = 'Profession',
}
local params = {
{name = 'name', func = parse.has_content, smw_property = 'Name'},
{name = 'image', func = parse.image, smw_property = 'Image', smw_func = parse.image_smw, category_incomplete = 'Needs image'},
{name = 'release', func = parse.has_content},
{name = 'premium', func = parse.has_content, smw_property = 'Premium', smw_func = parse.premium_smw, category_incomplete = 'Needs premium status'},
}
local infobox = Infobox.new(config, params, args)
infobox
:add_row{
{tag='th', content=Infobox.param('name'), class='infobox-header', colspan='20'},
}
:add_row{
{tag='td', content=Infobox.param('image'), class='infobox-image', colspan='20'},
}
:add_row{
{tag='th', content='Release', colspan="6"},
{tag='td', content=Infobox.param('release'), colspan="14"},
}
:add_row{
{tag='th', content='[[Premium Pass|Premium]]', colspan="6"},
{tag='td', content=Infobox.param('premium'), colspan="14"},
}
:add_row{
{tag='th', content='[[Premium Pass|Premium]]', colspan="6"},
{tag='td', content=Infobox.param('premium'), colspan="14"},
}
:add_row{
{tag='th', content='[[Premium Pass|Premium]]', colspan="6"},
{tag='td', content=Infobox.param('premium'), colspan="14"},
}
:add_row{
{tag='th', content='[[Premium Pass|Premium]]', colspan="6"},
{tag='td', content=Infobox.param('premium'), colspan="14"},
}
:pad(20)
:add_row{
{tag='td', content='Subheader', class='infobox-header', colspan='20'},
}
:add_row{
{tag='th', content='[[Premium Pass|Premium]]', colspan="6"},
{tag='td', content=Infobox.param('premium'), colspan="14"},
}
:add_row{
{tag='th', content='[[Premium Pass|Premium]]', colspan="6"},
{tag='td', content=Infobox.param('premium'), colspan="14"},
}
:add_row{
{tag='th', content='[[Premium Pass|Premium]]', colspan="6"},
{tag='td', content=Infobox.param('premium'), colspan="14"},
}
:add_row{
{tag='th', content='[[Premium Pass|Premium]]', colspan="6"},
{tag='td', content=Infobox.param('premium'), colspan="14"},
}
:pad(20)
return infobox
end
return p
59609463c01f4c6e69fbc1ca62d3e4d2e97c0592
1558
1556
2024-03-27T01:14:51Z
Merds
25
Scribunto
text/plain
-- Module for [[Template:Infobox Profession]]
-- Test changes using [[Module:Infobox Profession/sandbox]] [[Template:Infobox Profession/sandbox]]
local p = {}
local Infobox = require('Module:Infobox')
local parse = require('Module:Param Parse')
function p.main(frame)
local args = frame:getParent().args
local config = {
infobox_name = 'Profession',
}
local params = {
{name = 'name', func = parse.has_content, smw_property = 'Name'},
{name = 'image', func = parse.image, smw_property = 'Image', smw_func = parse.image_smw, category_incomplete = 'Needs image'},
{name = 'release', func = parse.has_content},
{name = 'premium', func = parse.has_content, smw_property = 'Premium', smw_func = parse.premium_smw, category_incomplete = 'Needs premium status'},
}
local infobox = Infobox.new(config, params, args)
infobox
:add_row{
{tag='th', content=Infobox.param('name'), class='infobox-header', colspan='20'},
}
:add_row{
{tag='td', content=Infobox.param('image'), class='infobox-image', colspan='20'},
}
:add_row{
{tag='th', content='Release', colspan="6"},
{tag='td', content=Infobox.param('release'), colspan="14"},
}
:add_row{
{tag='th', content='[[Premium Pass|Premium]]', colspan="6"},
{tag='td', content=Infobox.param('premium'), colspan="14"},
}
:add_row{
{tag='th', content='[[Premium Pass|Premium]]', colspan="6"},
{tag='td', content=Infobox.param('premium'), colspan="14"},
}
:add_row{
{tag='th', content='[[Premium Pass|Premium]]', colspan="6"},
{tag='td', content=Infobox.param('premium'), colspan="14"},
}
:add_row{
{tag='th', content='[[Premium Pass|Premium]]', colspan="6"},
{tag='td', content=Infobox.param('premium'), colspan="14"},
}
:pad(20)
:add_row{
{tag='td', content='Subheader', class='infobox-subheader', colspan='20'},
}
:add_row{
{tag='th', content='[[Premium Pass|Premium]]', colspan="6"},
{tag='td', content=Infobox.param('premium'), colspan="14"},
}
:add_row{
{tag='th', content='[[Premium Pass|Premium]]', colspan="6"},
{tag='td', content=Infobox.param('premium'), colspan="14"},
}
:add_row{
{tag='th', content='[[Premium Pass|Premium]]', colspan="6"},
{tag='td', content=Infobox.param('premium'), colspan="14"},
}
:add_row{
{tag='th', content='[[Premium Pass|Premium]]', colspan="6"},
{tag='td', content=Infobox.param('premium'), colspan="14"},
}
:pad(20)
return infobox
end
return p
40997490c94ad88fc6c6fd3d57d8213b37abb1d8
User:Merds/CSS/Infobox.css
2
785
1557
1553
2024-03-27T01:14:09Z
Merds
25
css
text/css
/*<syntaxhighlight lang="css">*/
/* variables */
:root {
--table-header: #b1886f;
--table-subheader: #d1b9ad;
--table-body: #fff8ee;
--table-border: #e9d8cc;
}
.infobox {
font-size: .85em;
width: 300px;
border-collapse: collapse;
float: right;
table-layout: fixed;
}
.infobox .infobox-buttons {
display: flex;
flex-wrap: wrap;
justify-content: center;
grid-gap: 3px;
margin-bottom: 3px;
}
.infobox .infobox-buttons .button {
background: var(--table-header);
padding: 0 5px;
font-weight: bold;
flex: 1 1 20%;
max-width: 20%;
color: white;
}
.infobox tbody {
border: 1px solid var(--table-border);
background: var(--table-body);
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(231, 215, 199, 0.5);
}
.infobox .infobox-header {
background: var(--table-header);
font-weight: bold;
text-align: center;
color: white;
padding: 0.5em 0;
line-height: 1.4em;
}
.infobox .infobox-header {
font-size: 1.15em;
}
.infobox .infobox-image {
text-align: center;
background: var(--body-main);
}
.infobox .infobox-subheader {
background: var(--table-subheader);
font-weight: bold;
text-align: center;
color: white;
}
.infobox .infobox-padding {
backgound: var(--table-body);
}
.infobox tr td:not(.infobox-padding) {
padding: 0.2em 0.5em;
}
.infobox th:not(.infobox-header):not(.infobox-subheader):not(.infobox-nested) {
border-right: 2px solid var(--table-subheader);
text-align: right;
padding: 0.2em 0.5em;
}
/*Hide*/
.hidden {
display: none;
}
/*</syntaxhighlight>*/
6a8cb8dfe907f2c3fb88db434a5f0f6ee9ac25be
1559
1557
2024-03-27T01:16:34Z
Merds
25
css
text/css
/*<syntaxhighlight lang="css">*/
/* variables */
:root {
--table-header: #b1886f;
--table-subheader: #d1b9ad;
--table-body: #fff8ee;
--table-border: #e9d8cc;
}
.infobox {
font-size: .85em;
width: 300px;
border-collapse: collapse;
float: right;
table-layout: fixed;
}
.infobox .infobox-buttons {
display: flex;
flex-wrap: wrap;
justify-content: center;
grid-gap: 3px;
margin-bottom: 3px;
}
.infobox .infobox-buttons .button {
background: var(--table-header);
padding: 0 5px;
font-weight: bold;
flex: 1 1 20%;
max-width: 20%;
color: white;
}
.infobox tbody {
border: 1px solid var(--table-border);
background: var(--table-body);
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(231, 215, 199, 0.5);
}
.infobox .infobox-header {
background: var(--table-header);
padding: 0.5em 0;
text-align: center;
color: white;
font-size: 1.15em;
font-weight: bold;
line-height: 1.4em;
}
.infobox .infobox-image {
text-align: center;
background: var(--body-main);
}
.infobox .infobox-subheader {
background: var(--table-subheader);
font-weight: bold;
text-align: center;
color: white;
}
.infobox .infobox-padding {
backgound: var(--table-body);
}
.infobox tr td:not(.infobox-padding) {
padding: 0.2em 0.5em;
}
.infobox th:not(.infobox-header):not(.infobox-subheader):not(.infobox-nested) {
border-right: 2px solid var(--table-subheader);
text-align: right;
padding: 0.2em 0.5em;
}
/*Hide*/
.hidden {
display: none;
}
/*</syntaxhighlight>*/
8bdb9892f2b4b2fa8b6a29a56c1c7e9f676c2e70
1560
1559
2024-03-27T01:18:07Z
Merds
25
css
text/css
/*<syntaxhighlight lang="css">*/
/* variables */
:root {
--table-header: #b1886f;
--table-subheader: #d1b9ad;
--table-body: #fff8ee;
--table-border: #e9d8cc;
}
.infobox {
font-size: .85em;
width: 300px;
border-collapse: collapse;
float: right;
table-layout: fixed;
margin: 0.5em 0 1em 1em;
}
.infobox .infobox-buttons {
display: flex;
flex-wrap: wrap;
justify-content: center;
grid-gap: 3px;
margin-bottom: 3px;
}
.infobox .infobox-buttons .button {
background: var(--table-header);
padding: 0 5px;
font-weight: bold;
flex: 1 1 20%;
max-width: 20%;
color: white;
}
.infobox tbody {
border: 1px solid var(--table-border);
background: var(--table-body);
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(231, 215, 199, 0.5);
}
.infobox .infobox-header {
background: var(--table-header);
padding: 0.5em 0;
text-align: center;
color: white;
font-size: 1.15em;
font-weight: bold;
line-height: 1.4em;
}
.infobox .infobox-image {
text-align: center;
background: var(--body-main);
}
.infobox .infobox-subheader {
background: var(--table-subheader);
font-weight: bold;
text-align: center;
color: white;
}
.infobox .infobox-padding {
backgound: var(--table-body);
}
.infobox tr td:not(.infobox-padding) {
padding: 0.2em 0.5em;
}
.infobox th:not(.infobox-header):not(.infobox-subheader):not(.infobox-nested) {
border-right: 2px solid var(--table-subheader);
text-align: right;
padding: 0.2em 0.5em;
}
/*Hide*/
.hidden {
display: none;
}
/*</syntaxhighlight>*/
3470db77aa6dcd5a3ca2631aaad5eaa4c88bb2a7
MediaWiki:Common.less/infobox.less
8
26
1561
35
2024-03-27T01:20:54Z
Merds
25
less
less
:root {
--infobox-text-color: var(--text-color);
--table-header: #b1886f;
--table-subheader: #d1b9ad;
--table-body: #fff8ee;
--table-border: #e9d8cc;
}
/* Infobox */
.infobox {
font-size: .85em;
width: 300px;
border-collapse: collapse;
float: right;
table-layout: fixed;
margin: 0.5em 0 1em 1em;
}
.infobox .infobox-buttons {
display: flex;
flex-wrap: wrap;
justify-content: center;
grid-gap: 3px;
margin-bottom: 3px;
}
.infobox .infobox-buttons .button {
background: var(--table-header);
padding: 0 5px;
font-weight: bold;
flex: 1 1 20%;
max-width: 20%;
color: white;
}
.infobox tbody {
border: 1px solid var(--table-border);
background: var(--table-body);
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(231, 215, 199, 0.5);
}
.infobox .infobox-header {
background: var(--table-header);
padding: 0.5em 0;
text-align: center;
color: white;
font-size: 1.15em;
font-weight: bold;
line-height: 1.4em;
}
.infobox .infobox-image {
text-align: center;
background: var(--body-main);
}
.infobox .infobox-subheader {
background: var(--table-subheader);
font-weight: bold;
text-align: center;
color: white;
}
.infobox .infobox-padding {
backgound: var(--table-body);
}
.infobox tr td:not(.infobox-padding) {
padding: 0.2em 0.5em;
}
.infobox th:not(.infobox-header):not(.infobox-subheader):not(.infobox-nested) {
border-right: 2px solid var(--table-subheader);
text-align: right;
padding: 0.2em 0.5em;
}
/*Hide*/
.hidden {
display: none;
}
bfc66c513c7b7f6059c873e7f4fce272f8538235
1562
1561
2024-03-27T01:23:27Z
Merds
25
less
less
:root {
--infobox-text-color: var(--text-color);
--table-header: #b1886f;
--table-subheader: #d1b9ad;
--table-body: #fff8ee;
--table-border: #e9d8cc;
}
/* Infobox */
.infobox {
font-size: .85em;
width: 300px;
border-collapse: collapse;
float: right;
table-layout: fixed;
margin: 0.5em 0 1em 1em;
.infobox-buttons {
display: flex;
flex-wrap: wrap;
justify-content: center;
grid-gap: 3px;
margin-bottom: 3px;
.button {
background: var(--table-header);
padding: 0 5px;
font-weight: bold;
flex: 1 1 20%;
max-width: 20%;
color: @color_1;
}
}
tbody {
border: 1px solid var(--table-border);
background: var(--table-body);
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(231, 215, 199, 0.5);
}
.infobox-header {
background: var(--table-header);
padding: 0.5em 0;
text-align: center;
color: @color_1;
font-size: 1.15em;
font-weight: bold;
line-height: 1.4em;
}
.infobox-image {
text-align: center;
background: var(--body-main);
}
.infobox-subheader {
background: var(--table-subheader);
font-weight: bold;
text-align: center;
color: @color_1;
}
.infobox-padding {
backgound: var(--table-body);
}
tr td &:not(.infobox-padding) {
padding: 0.2em 0.5em;
}
th &:not(.infobox-header) &:not(.infobox-subheader) &:not(.infobox-nested) {
border-right: 2px solid var(--table-subheader);
text-align: right;
padding: 0.2em 0.5em;
}
}
.hidden {
display: none;
}
e37584a8a61f0b66b13b5e0f336c21e389057fd8
1566
1562
2024-03-27T01:40:37Z
Merds
25
less
less
:root {
--infobox-text-color: var(--text-color);
--table-header: #b1886f;
--table-subheader: #d1b9ad;
--table-body: #fff8ee;
--table-border: #e9d8cc;
}
/* Infobox */
.infobox {
font-size: .85em;
width: 300px;
border-collapse: collapse;
float: right;
table-layout: fixed;
margin: 0.5em 0 1em 1em;
.infobox-buttons {
display: flex;
flex-wrap: wrap;
justify-content: center;
grid-gap: 3px;
margin-bottom: 3px;
.button {
background: var(--table-header);
padding: 0 5px;
font-weight: bold;
flex: 1 1 20%;
max-width: 20%;
color: @color_1;
}
}
tbody {
border: 1px solid var(--table-border);
background: var(--table-body);
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(231, 215, 199, 0.5);
}
.infobox-header {
background: var(--table-header);
padding: 0.5em 0;
text-align: center;
color: @white;
font-size: 1.15em;
font-weight: bold;
line-height: 1.4em;
}
.infobox-image {
text-align: center;
background: var(--body-main);
}
.infobox-subheader {
background: var(--table-subheader);
font-weight: bold;
text-align: center;
color: @color_1;
}
.infobox-padding {
backgound: var(--table-body);
}
tr td &:not(.infobox-padding) {
padding: 0.2em 0.5em;
}
th &:not(.infobox-header) &:not(.infobox-subheader) &:not(.infobox-nested) {
border-right: 2px solid var(--table-subheader);
text-align: right;
padding: 0.2em 0.5em;
}
}
.hidden {
display: none;
}
53f66028d4748fd5b9643e77441006e73112a788
1567
1566
2024-03-27T01:41:57Z
Merds
25
less
less
:root {
--infobox-text-color: var(--text-color);
--table-header: #b1886f;
--table-subheader: #d1b9ad;
--table-body: #fff8ee;
--table-border: #e9d8cc;
}
/* Infobox */
.infobox {
font-size: .85em;
width: 300px;
border-collapse: collapse;
float: right;
table-layout: fixed;
margin: 0.5em 0 1em 1em;
.infobox-buttons {
display: flex;
flex-wrap: wrap;
justify-content: center;
grid-gap: 3px;
margin-bottom: 3px;
.button {
background: var(--table-header);
padding: 0 5px;
font-weight: bold;
flex: 1 1 20%;
max-width: 20%;
color: @white;
}
}
tbody {
border: 1px solid var(--table-border);
background: var(--table-body);
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(231, 215, 199, 0.5);
}
.infobox-header {
background: var(--table-header);
padding: 0.5em 0;
text-align: center;
color: @white;
font-size: 1.15em;
font-weight: bold;
line-height: 1.4em;
}
.infobox-image {
text-align: center;
background: var(--body-main);
}
.infobox-subheader {
background: var(--table-subheader);
font-weight: bold;
text-align: center;
color: @color_1;
}
.infobox-padding {
backgound: var(--table-body);
}
tr td &:not(.infobox-padding) {
padding: 0.2em 0.5em;
}
th &:not(.infobox-header) &:not(.infobox-subheader) &:not(.infobox-nested) {
border-right: 2px solid var(--table-subheader);
text-align: right;
padding: 0.2em 0.5em;
}
}
.hidden {
display: none;
}
7433e39de965faade1d2fa6b3416857f76f5c010
1568
1567
2024-03-27T01:42:22Z
Merds
25
less
less
:root {
--infobox-text-color: var(--text-color);
--table-header: #b1886f;
--table-subheader: #d1b9ad;
--table-body: #fff8ee;
--table-border: #e9d8cc;
}
/* Infobox */
.infobox {
font-size: .85em;
width: 300px;
border-collapse: collapse;
float: right;
table-layout: fixed;
margin: 0.5em 0 1em 1em;
.infobox-buttons {
display: flex;
flex-wrap: wrap;
justify-content: center;
grid-gap: 3px;
margin-bottom: 3px;
.button {
background: var(--table-header);
padding: 0 5px;
font-weight: bold;
flex: 1 1 20%;
max-width: 20%;
color: @white;
}
}
tbody {
border: 1px solid var(--table-border);
background: var(--table-body);
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(231, 215, 199, 0.5);
}
.infobox-header {
background: var(--table-header);
padding: 0.5em 0;
text-align: center;
color: @white;
font-size: 1.15em;
font-weight: bold;
line-height: 1.4em;
}
.infobox-image {
text-align: center;
background: var(--body-main);
}
.infobox-subheader {
background: var(--table-subheader);
font-weight: bold;
text-align: center;
color: @white;
}
.infobox-padding {
backgound: var(--table-body);
}
tr td &:not(.infobox-padding) {
padding: 0.2em 0.5em;
}
th &:not(.infobox-header) &:not(.infobox-subheader) &:not(.infobox-nested) {
border-right: 2px solid var(--table-subheader);
text-align: right;
padding: 0.2em 0.5em;
}
}
.hidden {
display: none;
}
8836c53eb8d53ec04910deb5a3cad1769d086efe
1573
1568
2024-03-27T09:23:28Z
Merds
25
less
less
:root {
--infobox-text-color: var(--text-color);
--table-header: #b1886f;
--table-subheader: #d1b9ad;
--table-body: #fff8ee;
--table-border: #e9d8cc;
}
/* Infobox */
.infobox {
font-size: .85em;
width: 300px;
border-collapse: collapse;
float: right;
table-layout: fixed;
margin: 0.5em 0 1em 1em;
.infobox-buttons {
display: flex;
flex-wrap: wrap;
justify-content: center;
grid-gap: 3px;
margin-bottom: 3px;
.button {
background: var(--table-header);
padding: 0 5px;
font-weight: bold;
flex: 1 1 20%;
max-width: 20%;
color: @white;
}
}
tbody {
border: 1px solid var(--table-border);
background: var(--table-body);
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(231, 215, 199, 0.5);
}
.infobox-header {
background: var(--table-header);
padding: 0.5em 0;
text-align: center;
color: @white;
font-size: 1.15em;
font-weight: bold;
line-height: 1.4em;
}
.infobox-image {
text-align: center;
background: var(--body-main);
}
.infobox-subheader {
background: var(--table-subheader);
font-weight: bold;
text-align: center;
color: @white;
}
.infobox-padding {
backgound: var(--table-body);
}
tr td:not(.infobox-padding) {
padding: 0.2em 0.5em;
}
th:not(.infobox-header):not(.infobox-subheader):not(.infobox-nested) {
border-right: 2px solid var(--table-subheader);
text-align: right;
padding: 0.2em 0.5em;
}
}
.hidden {
display: none;
}
43e005a663a2ad0cd2280e44de2854f1307e03a9
User:Merds/common.css
2
784
1563
1523
2024-03-27T01:24:12Z
Merds
25
css
text/css
/*<syntaxhighlight lang="css">*/
/*@import url("/w/User:Merds/CSS/Infobox.css?action=raw&ctype=text/css");*/
/*</syntaxhighlight>*/
79bc067c29534c908c60c64bdd69610fda26beb3
MediaWiki:Common.less/wikitables.less
8
17
1564
26
2024-03-27T01:39:11Z
Merds
25
less
less
:root {
--wikitable-header-bg: @BODY_DARK;
--wikitable-border: @BODY_BORDER;
--wikitable-bg: @BODY_LIGHT;
--wikitable-bg-lighter: #e9e3d6; // lighten(@wikitable-bg, 10%); Used on hover effect
--wikitable-color: @TEXT_COLOR;
--table-na-background: fade(@white, 30);
--table-na-color: var(--subtle-color);
--table-yes-background: @caper;
--table-yes-color: @san-felix;
--table-no-background: @apricot-peach;
--table-no-color: @mocaccino;
--table-maybe-background: @golden;
--table-maybe-color: @cinnamon;
}
// Brown-ify defaults
.wikitable {
background: var(--wikitable-bg);
color: var(--wikitable-color);
border-color: var(--wikitable-border);
box-shadow: @box-shadow;
// All cells borders
> tr > th,
> tr > td,
> * > tr > th,
> * > tr > td {
border-color: var(--wikitable-border);
// Template:NoBorder
&.table-noborder {
border-left-style: hidden;
border-right-style: hidden;
padding-left: 0;
padding-right: 0;
}
}
// All header cells bg
> tr > th,
> * > tr > th {
background-color: var(--wikitable-header-bg);
color: @white;
}
// Already in a box
.tabber & {
box-shadow: none;
}
}
// Metadata tables, allmessages, etc
.mw_metadata {
td,
th {
border-color: var(--wikitable-border);
}
th {
background-color: var(--wikitable-header-bg);
}
td {
background-color: var(--wikitable-bg);
}
}
// Special:AllPages, BlockList, etc
.mw-datatable {
border-color: var(--wikitable-border);
td,
th {
border-color: var(--wikitable-border);
}
// cells
th {
background-color: var(--wikitable-header-bg);
}
// headers
td {
background-color: var(--wikitable-bg);
}
// on hover on both cells
tr:hover td {
background-color: var(--wikitable-bg);
}
}
// alternating colours (similar to spreadsheets)
table.alternating-rows tr:nth-child(odd),
table.alternating-cols td:nth-child(odd) {
background: var(--wikitable-alternating-bg);
}
// Template:NA
.table-na {
background: var(--table-na-background);
color: var(--table-na-color);
vertical-align: middle;
text-align: center;
}
// Template:Yes
.table-yes {
background: var(--table-yes-background);
color: var(--table-yes-color);
}
.table-positive {
background: var(--table-yes-background);
}
// Template:No
.table-no {
background: var(--table-no-background);
color: var(--table-no-color);
}
.table-negative {
background: var(--table-no-background);
}
// Template:Maybe
.table-maybe {
background: var(--table-maybe-background);
color: var(--table-maybe-color);
}
// Special:AllMessages
#mw-allmessagestable {
.am_actual,
.am_default {
background-color: var(--wikitable-bg);
}
.am_default:hover,
.am_actual:hover,
tbody:hover td {
background-color: var(--wikitable-bg-lighter);
}
}
// For tables within tables, to make them take up the full space of a cell
table.wikitable td.no-cell-spacing {
padding: 0;
height: 0; // actual height is overridden by content height, but this allows height:100% to stretch to full td height
table {
margin: -1px; // collapse borders with parent td
width: calc(100% + 2px);
height: calc(100% + 2px);
}
}
// used on mmg table and similar
// to hide bullet points
.plainlist {
ol,
ul {
margin: 0;
}
li {
margin-bottom: 0; // might make lists slightly clamped tho
list-style: none;
}
}
/* table alignment help */
/* nth td from the left is right-aligned - ths are ignored */
table.align-right-1 td:nth-of-type(1),
table.align-right-2 td:nth-of-type(2),
table.align-right-3 td:nth-of-type(3),
table.align-right-4 td:nth-of-type(4),
table.align-right-5 td:nth-of-type(5),
table.align-right-6 td:nth-of-type(6),
table.align-right-7 td:nth-of-type(7),
table.align-right-8 td:nth-of-type(8),
table.align-right-9 td:nth-of-type(9),
table.align-right-10 td:nth-of-type(10),
table.align-right-11 td:nth-of-type(11),
table.align-right-12 td:nth-of-type(12),
table.align-right-13 td:nth-of-type(13),
table.align-right-14 td:nth-of-type(14),
table.align-right-15 td:nth-of-type(15),
table.align-right-16 td:nth-of-type(16),
table.align-right-17 td:nth-of-type(17),
table.align-right-18 td:nth-of-type(18),
table.align-right-19 td:nth-of-type(19),
table.align-right-20 td:nth-of-type(20) {
text-align: right;
}
/* center */
table.align-center-1 td:nth-of-type(1),
table.align-center-2 td:nth-of-type(2),
table.align-center-3 td:nth-of-type(3),
table.align-center-4 td:nth-of-type(4),
table.align-center-5 td:nth-of-type(5),
table.align-center-6 td:nth-of-type(6),
table.align-center-7 td:nth-of-type(7),
table.align-center-8 td:nth-of-type(8),
table.align-center-9 td:nth-of-type(9),
table.align-center-10 td:nth-of-type(10),
table.align-center-11 td:nth-of-type(11),
table.align-center-12 td:nth-of-type(12),
table.align-center-13 td:nth-of-type(13),
table.align-center-14 td:nth-of-type(14),
table.align-center-15 td:nth-of-type(15),
table.align-center-16 td:nth-of-type(16),
table.align-center-17 td:nth-of-type(17),
table.align-center-18 td:nth-of-type(18),
table.align-center-19 td:nth-of-type(19),
table.align-center-20 td:nth-of-type(20) {
text-align: center;
}
/* left */
table.align-left-1 td:nth-of-type(1),
table.align-left-2 td:nth-of-type(2),
table.align-left-3 td:nth-of-type(3),
table.align-left-4 td:nth-of-type(4),
table.align-left-5 td:nth-of-type(5),
table.align-left-6 td:nth-of-type(6),
table.align-left-7 td:nth-of-type(7),
table.align-left-8 td:nth-of-type(8),
table.align-left-9 td:nth-of-type(9),
table.align-left-10 td:nth-of-type(10),
table.align-left-11 td:nth-of-type(11),
table.align-left-12 td:nth-of-type(12),
table.align-left-13 td:nth-of-type(13),
table.align-left-14 td:nth-of-type(14),
table.align-left-15 td:nth-of-type(15),
table.align-left-16 td:nth-of-type(16),
table.align-left-17 td:nth-of-type(17),
table.align-left-18 td:nth-of-type(18),
table.align-left-19 td:nth-of-type(19),
table.align-left-20 td:nth-of-type(20) {
text-align: left;
}
e2b4e19ba7d1801b72009e6882585b29235e457c
MediaWiki:Common.less
8
5
1565
1115
2024-03-27T01:39:18Z
Merds
25
less
less
/* =============================================================================
* This is the root Less file that is parsed to produce [[MediaWiki:Common.css]].
*
* These styles will be applied to all skins (desktop and mobile).
* -----------------------------------------------------------------------------
* Less documentation: <http://lesscss.org/features/>
* Gadget: <https://meta.weirdgloop.org/w/MediaWiki:Gadget-Less.js>
* Core Less JS: <https://meta.weirdgloop.org/w/MediaWiki:Gadget-Less-core.js>
* Non-standard mixins: <https://meta.weirdgloop.org/w/MediaWiki:Gadget-LessMixins.less>
* Online Less tester: <https://lesscss.org/less-preview/>
* ============================================================================= */
// ===== CSS Variables =====
@common: 'MediaWiki:Common.less';
:root {
--body-main: #feffff;
--body-light: #fff8ee; /* old #f2f2f2 */
--body-mid: #d0bd97;
--body-dark: #b1886f; /* old #e3e3e3 */
--body-border: #d1b9ad; /* old #878787 */
--body-background-color: #173a4d;
--button-background: #605443;
--button-color: @white;
--button-border: #3c352a;
--button-dark: #18140c;
--button-light: #3a301d;
--sidebar: #cfc08d;
--background-text-color: #e2dbc8;
--background-link-color: #e2bd8a;
--search-box: #efeee6;
--link-color: #936039;
--redlink-color: #ba0000;
--text-color: #2F2828; /*@mine-shaft*/
--byline-color: @silver;
--subtle-color: @boulder;
--admin-blue: #332e75;
--bearcat-green: #13592e;
--awb-purple: #933b96;
--rsw-blue: #438ab6;
--osrsw-brown: #605443;
// used for gallery & thumbs
--thumb-bg: var(--body-light);
--thumb-caption-bg: var(--body-mid);
// for sourceeditor - CodeMirror and WikiEditor's that are only available on
// desktop are also here to not fragment the vars across many files
--sourceeditor-input-background: @white;
--sourceeditor-background: var(--body-light);
--sourceeditor-background-secondary: var(--body-light); // used on .editOptions
--sourceeditor-border: var(--body-mid);
--codemirror-gutter-background: var(--body-mid);
}
// ===== Imports =====
// include fonts first
@import '@{common}/mixins.less';
@import '@{common}/fonts.less'; // Font definitions and font stack definitions
@import '@{common}/variables.less'; // Less variables
@import '@{common}/elements.less'; // HTML elements
@import '@{common}/links.less'; // Link colours
// Interface
@import '@{common}/interface.less'; // MW common elements
@import '@{common}/wikitables.less'; // .wikitable class and etc
@import '@{common}/diff.less'; // Revision differences
@import '@{common}/notifications.less';
@import '@{common}/pagepreviews.less'; // Page preview popups
@import '@{common}/smw.less'; // Semantic MediaWiki
@import '@{common}/tabber.less'; // <tabber>
@import '@{common}/ooui.less'; // OOUI Customisations
@import '@{common}/visualeditor.less'; // VisualEditor
// Templates
@import '@{common}/templates.less'; // Various templates
@import '@{common}/documentation.less'; // [[Template:Documentation]]
@import '@{common}/infobox.less'; // Infobox vars
@import '@{common}/references.less'; // <references>
@import '@{common}/messagebox.less'; // Messagebox templates
// Page specific
@import '@{common}/tiles.less'; // Main page tiles
@import '@{common}/mainpage.less'; // Main page
@import '@{common}/prefs.less'; // Wiki preferences theming
@import '@{common}/specials.less'; // Special pages
// ===== Miscellaneous =====
// hide certain links in sidebar tools
#t-print,
#t-permalink {
display: none;
}
#filetoc {
border-radius: @border-radius;
background: @BODY_MID;
border-color: transparent;
margin: 0.5em auto;
text-align: center;
box-shadow: @box-shadow;
}
// Galleries
li.gallerybox div.thumb {
border: none;
background-color: var(--thumb-bg);
}
.smwfact {
display: none;
}
// applies to mobile talk pages, and smw??
.list-header {
background-color: var(--body-mid);
color: inherit;
}
// Source editor w/o syntaxhighlight; also applies to mobile in case JS is
// turned off
.editOptions {
color: var(--text-color);
background-color: var(--sourceeditor-background-secondary);
border-color: var(--sourceeditor-border);
}
// .json pages
.mw-json {
th,
td {
border-color: var(--wikitable-border);
}
// instead of selecting `tr`, do this to avoid dealing with mw-json-* classes
td {
background: var(--wikitable-bg);
}
th {
background: var(--wikitable-header-bg);
}
}
2ed3e06275091e3b6ee21e63d7eab0991ca5f049
1576
1565
2024-03-27T11:42:34Z
Merds
25
less
less
/* =============================================================================
* This is the root Less file that is parsed to produce [[MediaWiki:Common.css]].
*
* These styles will be applied to all skins (desktop and mobile).
* -----------------------------------------------------------------------------
* Less documentation: <http://lesscss.org/features/>
* Gadget: <https://meta.weirdgloop.org/w/MediaWiki:Gadget-Less.js>
* Core Less JS: <https://meta.weirdgloop.org/w/MediaWiki:Gadget-Less-core.js>
* Non-standard mixins: <https://meta.weirdgloop.org/w/MediaWiki:Gadget-LessMixins.less>
* Online Less tester: <https://lesscss.org/less-preview/>
* ============================================================================= */
// ===== CSS Variables =====
@common: 'MediaWiki:Common.less';
:root {
--body-main: #feffff;
--body-light: #fff8ee; /* old #f2f2f2 */
--body-mid: #d0bd97;
--body-dark: #b1886f; /* old #e3e3e3 */
--body-border: #d1b9ad; /* old #878787 */
--body-background-color: #173a4d;
--button-background: #605443;
--button-color: @white;
--button-border: #3c352a;
--button-dark: #18140c;
--button-light: #3a301d;
--sidebar: #cfc08d;
--background-text-color: #e2dbc8;
--background-link-color: #e2bd8a;
--search-box: #efeee6;
--link-color: #936039;
--redlink-color: #ba0000;
--text-color: #2F2828; /*@mine-shaft*/
--byline-color: @silver;
--subtle-color: @boulder;
--admin-blue: #332e75;
--bearcat-green: #13592e;
--awb-purple: #933b96;
--rsw-blue: #438ab6;
--osrsw-brown: #605443;
// used for gallery & thumbs
--thumb-bg: var(--body-light);
--thumb-caption-bg: var(--body-mid);
// for sourceeditor - CodeMirror and WikiEditor's that are only available on
// desktop are also here to not fragment the vars across many files
--sourceeditor-input-background: @white;
--sourceeditor-background: var(--body-light);
--sourceeditor-background-secondary: var(--body-light); // used on .editOptions
--sourceeditor-border: var(--body-mid);
--codemirror-gutter-background: var(--body-mid);
}
// ===== Imports =====
// include fonts first
@import '@{common}/mixins.less';
@import '@{common}/fonts.less'; // Font definitions and font stack definitions
@import '@{common}/variables.less'; // Less variables
@import '@{common}/elements.less'; // HTML elements
@import '@{common}/links.less'; // Link colours
// Interface
@import '@{common}/interface.less'; // MW common elements
@import '@{common}/wikitables.less'; // .wikitable class and etc
@import '@{common}/diff.less'; // Revision differences
@import '@{common}/notifications.less';
@import '@{common}/pagepreviews.less'; // Page preview popups
@import '@{common}/smw.less'; // Semantic MediaWiki
@import '@{common}/tabber.less'; // <tabber>
@import '@{common}/ooui.less'; // OOUI Customisations
@import '@{common}/visualeditor.less'; // VisualEditor
// Templates
@import '@{common}/templates.less'; // Various templates
@import '@{common}/documentation.less'; // [[Template:Documentation]]
@import '@{common}/infobox.less'; // Infobox vars
@import '@{common}/references.less'; // <references>
@import '@{common}/messagebox.less'; // Messagebox templates
// Page specific
@import '@{common}/tiles.less'; // Main page tiles
@import '@{common}/mainpage.less'; // Main page
@import '@{common}/prefs.less'; // Wiki preferences theming
@import '@{common}/specials.less'; // Special pages
@import '@{common}/bstheme.less'; // [[BS:THEME]]
// ===== Miscellaneous =====
// hide certain links in sidebar tools
#t-print,
#t-permalink {
display: none;
}
#filetoc {
border-radius: @border-radius;
background: @BODY_MID;
border-color: transparent;
margin: 0.5em auto;
text-align: center;
box-shadow: @box-shadow;
}
// Galleries
li.gallerybox div.thumb {
border: none;
background-color: var(--thumb-bg);
}
.smwfact {
display: none;
}
// applies to mobile talk pages, and smw??
.list-header {
background-color: var(--body-mid);
color: inherit;
}
// Source editor w/o syntaxhighlight; also applies to mobile in case JS is
// turned off
.editOptions {
color: var(--text-color);
background-color: var(--sourceeditor-background-secondary);
border-color: var(--sourceeditor-border);
}
// .json pages
.mw-json {
th,
td {
border-color: var(--wikitable-border);
}
// instead of selecting `tr`, do this to avoid dealing with mw-json-* classes
td {
background: var(--wikitable-bg);
}
th {
background: var(--wikitable-header-bg);
}
}
ed4ea9d226322da131a02e90c48c0eb604a81093
1578
1576
2024-03-27T11:50:34Z
Merds
25
less
less
/* =============================================================================
* This is the root Less file that is parsed to produce [[MediaWiki:Common.css]].
*
* These styles will be applied to all skins (desktop and mobile).
* -----------------------------------------------------------------------------
* Less documentation: <http://lesscss.org/features/>
* Gadget: <https://meta.weirdgloop.org/w/MediaWiki:Gadget-Less.js>
* Core Less JS: <https://meta.weirdgloop.org/w/MediaWiki:Gadget-Less-core.js>
* Non-standard mixins: <https://meta.weirdgloop.org/w/MediaWiki:Gadget-LessMixins.less>
* Online Less tester: <https://lesscss.org/less-preview/>
* ============================================================================= */
// ===== CSS Variables =====
@common: 'MediaWiki:Common.less';
:root {
--body-main: #feffff;
--body-light: #fff8ee; /* old #f2f2f2 */
--body-mid: #BF9D88; /* old #d0bd97; */
--body-dark: #b1886f; /* old #e3e3e3 */
--body-border: #d1b9ad; /* old #878787 */
--body-background-color: #173a4d;
--button-background: #605443;
--button-color: @white;
--button-border: #3c352a;
--button-dark: #18140c;
--button-light: #3a301d;
--sidebar: #cfc08d;
--background-text-color: #e2dbc8;
--background-link-color: #e2bd8a;
--search-box: #efeee6;
--link-color: #936039;
--redlink-color: #ba0000;
--text-color: #2F2828; /*@mine-shaft*/
--byline-color: @silver;
--subtle-color: @boulder;
--admin-blue: #332e75;
--bearcat-green: #13592e;
--awb-purple: #933b96;
--rsw-blue: #438ab6;
--osrsw-brown: #605443;
// used for gallery & thumbs
--thumb-bg: var(--body-light);
--thumb-caption-bg: var(--body-mid);
// for sourceeditor - CodeMirror and WikiEditor's that are only available on
// desktop are also here to not fragment the vars across many files
--sourceeditor-input-background: @white;
--sourceeditor-background: var(--body-light);
--sourceeditor-background-secondary: var(--body-light); // used on .editOptions
--sourceeditor-border: var(--body-mid);
--codemirror-gutter-background: var(--body-mid);
}
// ===== Imports =====
// include fonts first
@import '@{common}/mixins.less';
@import '@{common}/fonts.less'; // Font definitions and font stack definitions
@import '@{common}/variables.less'; // Less variables
@import '@{common}/elements.less'; // HTML elements
@import '@{common}/links.less'; // Link colours
// Interface
@import '@{common}/interface.less'; // MW common elements
@import '@{common}/wikitables.less'; // .wikitable class and etc
@import '@{common}/diff.less'; // Revision differences
@import '@{common}/notifications.less';
@import '@{common}/pagepreviews.less'; // Page preview popups
@import '@{common}/smw.less'; // Semantic MediaWiki
@import '@{common}/tabber.less'; // <tabber>
@import '@{common}/ooui.less'; // OOUI Customisations
@import '@{common}/visualeditor.less'; // VisualEditor
// Templates
@import '@{common}/templates.less'; // Various templates
@import '@{common}/documentation.less'; // [[Template:Documentation]]
@import '@{common}/infobox.less'; // Infobox vars
@import '@{common}/references.less'; // <references>
@import '@{common}/messagebox.less'; // Messagebox templates
// Page specific
@import '@{common}/tiles.less'; // Main page tiles
@import '@{common}/mainpage.less'; // Main page
@import '@{common}/prefs.less'; // Wiki preferences theming
@import '@{common}/specials.less'; // Special pages
@import '@{common}/bstheme.less'; // [[BS:THEME]]
// ===== Miscellaneous =====
// hide certain links in sidebar tools
#t-print,
#t-permalink {
display: none;
}
#filetoc {
border-radius: @border-radius;
background: @BODY_MID;
border-color: transparent;
margin: 0.5em auto;
text-align: center;
box-shadow: @box-shadow;
}
// Galleries
li.gallerybox div.thumb {
border: none;
background-color: var(--thumb-bg);
}
.smwfact {
display: none;
}
// applies to mobile talk pages, and smw??
.list-header {
background-color: var(--body-mid);
color: inherit;
}
// Source editor w/o syntaxhighlight; also applies to mobile in case JS is
// turned off
.editOptions {
color: var(--text-color);
background-color: var(--sourceeditor-background-secondary);
border-color: var(--sourceeditor-border);
}
// .json pages
.mw-json {
th,
td {
border-color: var(--wikitable-border);
}
// instead of selecting `tr`, do this to avoid dealing with mw-json-* classes
td {
background: var(--wikitable-bg);
}
th {
background: var(--wikitable-header-bg);
}
}
332c9006d30c9e519ded2b542674a6f16094f274
1581
1578
2024-03-27T11:57:29Z
Merds
25
less
less
/* =============================================================================
* This is the root Less file that is parsed to produce [[MediaWiki:Common.css]].
*
* These styles will be applied to all skins (desktop and mobile).
* -----------------------------------------------------------------------------
* Less documentation: <http://lesscss.org/features/>
* Gadget: <https://meta.weirdgloop.org/w/MediaWiki:Gadget-Less.js>
* Core Less JS: <https://meta.weirdgloop.org/w/MediaWiki:Gadget-Less-core.js>
* Non-standard mixins: <https://meta.weirdgloop.org/w/MediaWiki:Gadget-LessMixins.less>
* Online Less tester: <https://lesscss.org/less-preview/>
* ============================================================================= */
// ===== CSS Variables =====
@common: 'MediaWiki:Common.less';
:root {
--body-main: #feffff;
--body-light: #fff8ee; /* old #f2f2f2 */
--body-mid: #d1b9ad; /* old #d0bd97; */
--body-dark: #b1886f; /* old #e3e3e3 */
--body-border: #d1b9ad; /* old #878787 */
--body-background-color: #173a4d;
--button-background: #605443;
--button-color: @white;
--button-border: #3c352a;
--button-dark: #18140c;
--button-light: #3a301d;
--sidebar: #cfc08d;
--background-text-color: #e2dbc8;
--background-link-color: #e2bd8a;
--search-box: #efeee6;
--link-color: #936039;
--redlink-color: #ba0000;
--text-color: #2F2828; /*@mine-shaft*/
--byline-color: @silver;
--subtle-color: @boulder;
--admin-blue: #332e75;
--bearcat-green: #13592e;
--awb-purple: #933b96;
--rsw-blue: #438ab6;
--osrsw-brown: #605443;
// used for gallery & thumbs
--thumb-bg: var(--body-light);
--thumb-caption-bg: var(--body-mid);
// for sourceeditor - CodeMirror and WikiEditor's that are only available on
// desktop are also here to not fragment the vars across many files
--sourceeditor-input-background: @white;
--sourceeditor-background: var(--body-light);
--sourceeditor-background-secondary: var(--body-light); // used on .editOptions
--sourceeditor-border: var(--body-mid);
--codemirror-gutter-background: var(--body-mid);
}
// ===== Imports =====
// include fonts first
@import '@{common}/mixins.less';
@import '@{common}/fonts.less'; // Font definitions and font stack definitions
@import '@{common}/variables.less'; // Less variables
@import '@{common}/elements.less'; // HTML elements
@import '@{common}/links.less'; // Link colours
// Interface
@import '@{common}/interface.less'; // MW common elements
@import '@{common}/wikitables.less'; // .wikitable class and etc
@import '@{common}/diff.less'; // Revision differences
@import '@{common}/notifications.less';
@import '@{common}/pagepreviews.less'; // Page preview popups
@import '@{common}/smw.less'; // Semantic MediaWiki
@import '@{common}/tabber.less'; // <tabber>
@import '@{common}/ooui.less'; // OOUI Customisations
@import '@{common}/visualeditor.less'; // VisualEditor
// Templates
@import '@{common}/templates.less'; // Various templates
@import '@{common}/documentation.less'; // [[Template:Documentation]]
@import '@{common}/infobox.less'; // Infobox vars
@import '@{common}/references.less'; // <references>
@import '@{common}/messagebox.less'; // Messagebox templates
// Page specific
@import '@{common}/tiles.less'; // Main page tiles
@import '@{common}/mainpage.less'; // Main page
@import '@{common}/prefs.less'; // Wiki preferences theming
@import '@{common}/specials.less'; // Special pages
@import '@{common}/bstheme.less'; // [[BS:THEME]]
// ===== Miscellaneous =====
// hide certain links in sidebar tools
#t-print,
#t-permalink {
display: none;
}
#filetoc {
border-radius: @border-radius;
background: @BODY_MID;
border-color: transparent;
margin: 0.5em auto;
text-align: center;
box-shadow: @box-shadow;
}
// Galleries
li.gallerybox div.thumb {
border: none;
background-color: var(--thumb-bg);
}
.smwfact {
display: none;
}
// applies to mobile talk pages, and smw??
.list-header {
background-color: var(--body-mid);
color: inherit;
}
// Source editor w/o syntaxhighlight; also applies to mobile in case JS is
// turned off
.editOptions {
color: var(--text-color);
background-color: var(--sourceeditor-background-secondary);
border-color: var(--sourceeditor-border);
}
// .json pages
.mw-json {
th,
td {
border-color: var(--wikitable-border);
}
// instead of selecting `tr`, do this to avoid dealing with mw-json-* classes
td {
background: var(--wikitable-bg);
}
th {
background: var(--wikitable-header-bg);
}
}
71e60df244d29d84a2f525000b19aff170be58fd
1584
1581
2024-03-27T14:29:44Z
Merds
25
less
less
/* =============================================================================
* This is the root Less file that is parsed to produce [[MediaWiki:Common.css]].
*
* These styles will be applied to all skins (desktop and mobile).
* -----------------------------------------------------------------------------
* Less documentation: <http://lesscss.org/features/>
* Gadget: <https://meta.weirdgloop.org/w/MediaWiki:Gadget-Less.js>
* Core Less JS: <https://meta.weirdgloop.org/w/MediaWiki:Gadget-Less-core.js>
* Non-standard mixins: <https://meta.weirdgloop.org/w/MediaWiki:Gadget-LessMixins.less>
* Online Less tester: <https://lesscss.org/less-preview/>
* ============================================================================= */
// ===== CSS Variables =====
@common: 'MediaWiki:Common.less';
:root {
--body-main: #feffff;
--body-light: #fff8ee; /* old #f2f2f2 */
--body-mid: #d1b9ad; /* old #d0bd97; */
--body-dark: #b1886f; /* old #e3e3e3 */
--body-border: #e9d8cc; /* old #878787 */
--body-background-color: #173a4d;
--button-background: #605443;
--button-color: @white;
--button-border: #3c352a;
--button-dark: #18140c;
--button-light: #3a301d;
--sidebar: #cfc08d;
--background-text-color: #e2dbc8;
--background-link-color: #e2bd8a;
--search-box: #efeee6;
--link-color: #936039;
--redlink-color: #ba0000;
--text-color: #2F2828; /*@mine-shaft*/
--byline-color: @silver;
--subtle-color: @boulder;
--admin-blue: #332e75;
--bearcat-green: #13592e;
--awb-purple: #933b96;
--rsw-blue: #438ab6;
--osrsw-brown: #605443;
// used for gallery & thumbs
--thumb-bg: var(--body-light);
--thumb-caption-bg: var(--body-mid);
// for sourceeditor - CodeMirror and WikiEditor's that are only available on
// desktop are also here to not fragment the vars across many files
--sourceeditor-input-background: @white;
--sourceeditor-background: var(--body-light);
--sourceeditor-background-secondary: var(--body-light); // used on .editOptions
--sourceeditor-border: var(--body-mid);
--codemirror-gutter-background: var(--body-mid);
}
// ===== Imports =====
// include fonts first
@import '@{common}/mixins.less';
@import '@{common}/fonts.less'; // Font definitions and font stack definitions
@import '@{common}/variables.less'; // Less variables
@import '@{common}/elements.less'; // HTML elements
@import '@{common}/links.less'; // Link colours
// Interface
@import '@{common}/interface.less'; // MW common elements
@import '@{common}/wikitables.less'; // .wikitable class and etc
@import '@{common}/diff.less'; // Revision differences
@import '@{common}/notifications.less';
@import '@{common}/pagepreviews.less'; // Page preview popups
@import '@{common}/smw.less'; // Semantic MediaWiki
@import '@{common}/tabber.less'; // <tabber>
@import '@{common}/ooui.less'; // OOUI Customisations
@import '@{common}/visualeditor.less'; // VisualEditor
// Templates
@import '@{common}/templates.less'; // Various templates
@import '@{common}/documentation.less'; // [[Template:Documentation]]
@import '@{common}/infobox.less'; // Infobox vars
@import '@{common}/references.less'; // <references>
@import '@{common}/messagebox.less'; // Messagebox templates
// Page specific
@import '@{common}/tiles.less'; // Main page tiles
@import '@{common}/mainpage.less'; // Main page
@import '@{common}/prefs.less'; // Wiki preferences theming
@import '@{common}/specials.less'; // Special pages
@import '@{common}/bstheme.less'; // [[BS:THEME]]
// ===== Miscellaneous =====
// hide certain links in sidebar tools
#t-print,
#t-permalink {
display: none;
}
#filetoc {
border-radius: @border-radius;
background: @BODY_MID;
border-color: transparent;
margin: 0.5em auto;
text-align: center;
box-shadow: @box-shadow;
}
// Galleries
li.gallerybox div.thumb {
border: none;
background-color: var(--thumb-bg);
}
.smwfact {
display: none;
}
// applies to mobile talk pages, and smw??
.list-header {
background-color: var(--body-mid);
color: inherit;
}
// Source editor w/o syntaxhighlight; also applies to mobile in case JS is
// turned off
.editOptions {
color: var(--text-color);
background-color: var(--sourceeditor-background-secondary);
border-color: var(--sourceeditor-border);
}
// .json pages
.mw-json {
th,
td {
border-color: var(--wikitable-border);
}
// instead of selecting `tr`, do this to avoid dealing with mw-json-* classes
td {
background: var(--wikitable-bg);
}
th {
background: var(--wikitable-header-bg);
}
}
02fb5b698f5a9f2f18c7e3ea268d3f6eb45e126d
MediaWiki:Common.css
8
30
1569
1125
2024-03-27T01:42:29Z
Merds
25
Updating CSS from [[MediaWiki:Common.less]]
css
text/css
/* <pre> */
:root {
--body-main: #feffff;
--body-light: #fff8ee;
--body-mid: #d0bd97;
--body-dark: #b1886f;
--body-border: #d1b9ad;
--body-background-color: #173a4d;
--button-background: #605443;
--button-color: #fff;
--button-border: #3c352a;
--button-dark: #18140c;
--button-light: #3a301d;
--sidebar: #cfc08d;
--background-text-color: #e2dbc8;
--background-link-color: #e2bd8a;
--search-box: #efeee6;
--link-color: #936039;
--redlink-color: #ba0000;
--text-color: #2F2828;
--byline-color: #ccc;
--subtle-color: #777;
--admin-blue: #332e75;
--bearcat-green: #13592e;
--awb-purple: #933b96;
--rsw-blue: #438ab6;
--osrsw-brown: #605443;
--thumb-bg: var(--body-light);
--thumb-caption-bg: var(--body-mid);
--sourceeditor-input-background: #fff;
--sourceeditor-background: var(--body-light);
--sourceeditor-background-secondary: var(--body-light);
--sourceeditor-border: var(--body-mid);
--codemirror-gutter-background: var(--body-mid);
}
@font-face {
font-family: 'Lora';
font-weight: 400 700;
font-style: normal;
font-display: swap;
src: url('filepath://Lora.woff2') format('woff2');
}
@font-face {
font-family: 'Lora';
font-weight: 400 700;
font-style: italic;
font-display: swap;
src: url('filepath://Lora-Italic.woff2') format('woff2');
}
:root {
--base-text-color: #36414f;
--base-heading-color: #444e5a;
--base-heading-border: #e4eaee;
--mw-code-background-color: #ddd4bb;
--body-background-image: url('filepath://Wiki_background.jpg');
}
#mw-page-base {
background: none;
}
.mw-body {
background-color: var(--body-main);
color: var(--text-color);
border-color: transparent;
box-shadow: 0 0 7px rgba(0, 0, 0, 0.15);
margin-top: 0;
}
h1,
h2,
h3,
h4,
h5,
h6 {
color: var(--text-color);
}
h1,
h2 {
border-color: var(--sidebar);
}
.mw-body h1,
.mw-body-content h1,
.mw-body-content h2,
.mw-body-content h3,
.mw-body-content h4,
.mw-body-content h5,
.mw-body-content h6 {
font-family: 'Lora', 'Palatino', 'Georgia', serif;
}
.mw-parser-output h2:first-of-type {
clear: left;
}
.mw-footer {
color: var(--background-text-color);
}
.mw-footer li {
color: var(--background-text-color);
}
.mw-footer a,
.mw-footer a:active,
.mw-footer a:visited {
color: var(--background-link-color);
}
::placeholder {
color: var(--subtle-color);
}
a {
color: var(--link-color);
}
a:visited,
a:active {
color: var(--link-color);
}
a.new {
color: var(--redlink-color);
}
a.new:visited {
color: var(--redlink-color);
}
.mw-parser-output a.extiw,
.mw-parser-output a.external {
color: var(--link-color);
}
.mw-parser-output a.extiw:visited,
.mw-parser-output a.external:visited,
.mw-parser-output a.extiw:active,
.mw-parser-output a.external:active {
color: var(--link-color);
}
.jsPurgeLink a.external {
color: var(--link-color);
}
:root {
--errorbox-bg: #feecea;
--errorbox-border: #ee4231;
--warningbox-bg: #fef9de;
--warningbox-border: #f9d000;
--successbox-bg: #ecf8e3;
--successbox-border: #6bc71f;
}
.mw-message-box-error,
.errorbox,
.mw-message-box-warning,
.warningbox,
.mw-message-box-success,
.successbox,
.usermessage {
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
}
.mw-message-box-error,
.errorbox {
background-color: var(--errorbox-bg);
border-color: var(--errorbox-border);
}
.mw-message-box-warning,
.warningbox,
.usermessage {
background-color: var(--warningbox-bg);
border-color: var(--warningbox-border);
}
.mw-message-box-success,
.successbox {
background-color: var(--successbox-bg);
border-color: var(--successbox-border);
}
.catlinks {
background: var(--body-light);
border: 1px solid var(--body-dark);
padding: 8px 15px;
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
}
.catlinks li {
border-color: var(--body-mid);
}
.filehistory a img,
#file img {
background: url("data:image/svg+xml,%3C%3Fxml version='1.0' encoding='UTF-8'%3F%3E%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16'%3E%3Cpath d='M0 0h8v16h8V8H0z' opacity='.13'/%3E%3C/svg%3E") repeat;
}
#file img:hover {
background: none;
}
.mw-highlight {
background: none;
}
.mw-highlight .linenos {
background-color: var(--mw-code-background-color);
color: var(--byline-color);
}
.mw-highlight a:hover .linenos,
.mw-highlight .hll a .linenos {
color: var(--text-color);
}
.mw-content-ltr.mw-highlight-lines pre,
.mw-content-ltr.content .mw-highlight-lines pre {
box-shadow: inset 2.75em 0 0 var(--mw-code-background-color);
}
#pagehistory ul {
list-style: none;
margin: 0;
}
#pagehistory li {
border: 1px solid transparent;
padding: 1px 10px;
margin: 2px 0;
}
#pagehistory li.selected {
background-color: var(--body-light);
color: inherit;
border: 1px dashed var(--body-border);
outline: none;
}
#mw-history-compare > div:first-of-type {
position: -webkit-sticky;
position: sticky;
top: 0;
background-color: var(--body-main);
border-bottom: 1px solid var(--body-dark);
padding: 0.25em 0;
}
.wgl-stickyheader #mw-history-compare > div:first-of-type {
top: 2.5rem;
}
.autocomment,
.autocomment a,
.autocomment a:visited {
color: var(--link-color);
}
li span.deleted,
span.history-deleted {
color: var(--byline-color);
}
.mw-usertoollinks-contribs-no-edits,
.mw-usertoollinks-contribs-no-edits:visited {
color: var(--redlink-color);
}
.CategoryTreeToggle {
color: var(--link-color);
}
body.wgl-stickyheader.action-view .mw-headline:target::before {
display: block;
content: '';
margin-top: -3rem;
height: 3rem;
visibility: hidden;
pointer-events: none;
}
.mw-mmv-post-image {
color: var(--text-color);
background-color: var(--body-main);
}
.mw-mmv-image-metadata {
border-top-color: var(--body-mid);
background-color: var(--body-light);
}
.mw-mmv-dialog,
.mw-mmv-dialog .mw-mmv-dialog-down-arrow,
.mw-mmv-options-dialog .mw-mmv-dialog-down-arrow {
background-color: var(--body-light);
box-shadow: none;
}
.mw-mmv-options-enable-alert {
background-color: var(--body-light);
color: var(--text-color);
}
.mw-mmv-options-dialog-header,
.mw-mmv-options-text-header,
.mw-mmv-options-text-body,
.mw-mmv-options-enable-alert,
.mw-mmv-options-dialog .mw-mmv-disable-confirmation .mw-mmv-options-dialog-header,
.mw-mmv-options-dialog .mw-mmv-disable-confirmation .mw-mmv-options-text-header {
color: var(--text-color);
}
.mw-revslider-container {
border-color: var(--sidebar);
}
.mw-revslider-slider-wrapper {
border-top-color: var(--sidebar);
}
.mw-ui-button {
background-color: var(--ooui-normal);
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
}
.mw-ui-button:not(:disabled):hover,
.mw-ui-button:not(:disabled):active {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
}
.mw-ui-button:not(:disabled):focus {
color: var(--ooui-text);
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent), inset 0 0 0 2px #fff;
}
.mw-ui-button:not(:disabled):visited {
color: var(--ooui-text);
}
.mw-ui-button.mw-ui-progressive:not(:disabled) {
background-color: var(--ooui-progressive);
color: #fff;
border-color: var(--ooui-progressive);
}
.mw-ui-button.mw-ui-progressive:not(:disabled):hover {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
}
.mw-ui-button.mw-ui-progressive:not(:disabled):focus {
box-shadow: inset 0 0 0 1px var(--ooui-accent), inset 0 0 0 2px #fff;
}
.mw-ui-button.mw-ui-progressive:not(:disabled):active,
.mw-ui-button.mw-ui-progressive:not(:disabled).is-on {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
box-shadow: none;
}
.mw-ui-button.mw-ui-destructive:not( :disabled ) {
color: #fff;
}
.mw-ui-button.mw-ui-quiet,
.mw-ui-button.mw-ui-quiet.mw-ui-progressive,
.mw-ui-button.mw-ui-quiet.mw-ui-destructive {
color: var(--text-color);
}
input[type='checkbox']:hover + .mw-ui-button.mw-ui-quiet,
input[type='checkbox']:hover + .mw-ui-button.mw-ui-quiet.mw-ui-progressive,
input[type='checkbox']:hover + .mw-ui-button.mw-ui-quiet.mw-ui-destructive,
.mw-ui-button.mw-ui-quiet:hover,
.mw-ui-button.mw-ui-quiet.mw-ui-progressive:hover,
.mw-ui-button.mw-ui-quiet.mw-ui-destructive:hover {
background-color: rgba(0, 24, 73, 0.02745098);
color: var(--text-color);
border-color: transparent;
}
input[type='checkbox']:focus + .mw-ui-button.mw-ui-quiet,
input[type='checkbox']:focus + .mw-ui-button.mw-ui-quiet.mw-ui-progressive,
input[type='checkbox']:focus + .mw-ui-button.mw-ui-quiet.mw-ui-destructive,
.mw-ui-button.mw-ui-quiet:focus,
.mw-ui-button.mw-ui-quiet.mw-ui-progressive:focus,
.mw-ui-button.mw-ui-quiet.mw-ui-destructive:focus {
color: var(--text-color);
}
input[type='checkbox']:active + .mw-ui-button.mw-ui-quiet,
input[type='checkbox']:active + .mw-ui-button.mw-ui-quiet.mw-ui-progressive,
input[type='checkbox']:active + .mw-ui-button.mw-ui-quiet.mw-ui-destructive,
.mw-ui-button.mw-ui-quiet:active,
.mw-ui-button.mw-ui-quiet.mw-ui-progressive:active,
.mw-ui-button.mw-ui-quiet.mw-ui-destructive:active {
background-color: rgba(0, 36, 73, 0.08235294);
color: var(--text-color);
border-color: #72777d;
}
.mw-ui-input {
background-color: var(--ooui-input);
color: var(--text-color);
border-color: var(--ooui-input-border);
}
.mw-ui-input:hover {
border-color: var(--ooui-input-border--hover);
}
.mw-ui-input::placeholder {
color: var(--byline-color);
}
.mw-content-ltr .redirectText li:first-child {
padding: 0;
background: 0;
}
.mw-content-ltr .redirectText li:first-child::before {
content: '';
background: currentcolor;
-webkit-mask: url("filepath://Redirect-arrow.svg") no-repeat 50% 50% / contain;
mask: url("filepath://Redirect-arrow.svg") no-repeat 50% 50% / contain;
display: inline-block;
width: 47px;
height: 20px;
}
.vector-search-box-inner {
background: var(--body-main) !important;
box-shadow: inset 0 -7px 7px -7px rgba(0, 0, 0, 0.15) !important;
}
.vector-menu-dropdown .vector-menu-heading {
color: #937040 !important;
}
.vector-menu-dropdown .vector-menu-heading:hover {
color: #937040 !important;
}
.vector-menu-dropdown .vector-menu-heading:focus {
color: #937040 !important;
}
:root {
--wikitable-header-bg: var(--body-dark);
--wikitable-border: var(--body-border);
--wikitable-bg: var(--body-light);
--wikitable-bg-lighter: #e9e3d6;
--wikitable-color: var(--text-color);
--table-na-background: rgba(255, 255, 255, 0.3);
--table-na-color: var(--subtle-color);
--table-yes-background: #c3e8a3;
--table-yes-color: #2e5e05;
--table-no-background: #fbc0ba;
--table-no-color: #801c13;
--table-maybe-background: #fcea94;
--table-maybe-color: #786300;
}
.wikitable {
background: var(--wikitable-bg);
color: var(--wikitable-color);
border-color: var(--wikitable-border);
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
}
.wikitable > tr > th,
.wikitable > tr > td,
.wikitable > * > tr > th,
.wikitable > * > tr > td {
border-color: var(--wikitable-border);
}
.wikitable > tr > th.table-noborder,
.wikitable > tr > td.table-noborder,
.wikitable > * > tr > th.table-noborder,
.wikitable > * > tr > td.table-noborder {
border-left-style: hidden;
border-right-style: hidden;
padding-left: 0;
padding-right: 0;
}
.wikitable > tr > th,
.wikitable > * > tr > th {
background-color: var(--wikitable-header-bg);
color: #fff;
}
.tabber .wikitable {
box-shadow: none;
}
.mw_metadata td,
.mw_metadata th {
border-color: var(--wikitable-border);
}
.mw_metadata th {
background-color: var(--wikitable-header-bg);
}
.mw_metadata td {
background-color: var(--wikitable-bg);
}
.mw-datatable {
border-color: var(--wikitable-border);
}
.mw-datatable td,
.mw-datatable th {
border-color: var(--wikitable-border);
}
.mw-datatable th {
background-color: var(--wikitable-header-bg);
}
.mw-datatable td {
background-color: var(--wikitable-bg);
}
.mw-datatable tr:hover td {
background-color: var(--wikitable-bg);
}
table.alternating-rows tr:nth-child(odd),
table.alternating-cols td:nth-child(odd) {
background: var(--wikitable-alternating-bg);
}
.table-na {
background: var(--table-na-background);
color: var(--table-na-color);
vertical-align: middle;
text-align: center;
}
.table-yes {
background: var(--table-yes-background);
color: var(--table-yes-color);
}
.table-positive {
background: var(--table-yes-background);
}
.table-no {
background: var(--table-no-background);
color: var(--table-no-color);
}
.table-negative {
background: var(--table-no-background);
}
.table-maybe {
background: var(--table-maybe-background);
color: var(--table-maybe-color);
}
#mw-allmessagestable .am_actual,
#mw-allmessagestable .am_default {
background-color: var(--wikitable-bg);
}
#mw-allmessagestable .am_default:hover,
#mw-allmessagestable .am_actual:hover,
#mw-allmessagestable tbody:hover td {
background-color: var(--wikitable-bg-lighter);
}
table.wikitable td.no-cell-spacing {
padding: 0;
height: 0;
}
table.wikitable td.no-cell-spacing table {
margin: -1px;
width: calc(100% + 2px);
height: calc(100% + 2px);
}
.plainlist ol,
.plainlist ul {
margin: 0;
}
.plainlist li {
margin-bottom: 0;
list-style: none;
}
table.align-right-1 td:nth-of-type(1),
table.align-right-2 td:nth-of-type(2),
table.align-right-3 td:nth-of-type(3),
table.align-right-4 td:nth-of-type(4),
table.align-right-5 td:nth-of-type(5),
table.align-right-6 td:nth-of-type(6),
table.align-right-7 td:nth-of-type(7),
table.align-right-8 td:nth-of-type(8),
table.align-right-9 td:nth-of-type(9),
table.align-right-10 td:nth-of-type(10),
table.align-right-11 td:nth-of-type(11),
table.align-right-12 td:nth-of-type(12),
table.align-right-13 td:nth-of-type(13),
table.align-right-14 td:nth-of-type(14),
table.align-right-15 td:nth-of-type(15),
table.align-right-16 td:nth-of-type(16),
table.align-right-17 td:nth-of-type(17),
table.align-right-18 td:nth-of-type(18),
table.align-right-19 td:nth-of-type(19),
table.align-right-20 td:nth-of-type(20) {
text-align: right;
}
table.align-center-1 td:nth-of-type(1),
table.align-center-2 td:nth-of-type(2),
table.align-center-3 td:nth-of-type(3),
table.align-center-4 td:nth-of-type(4),
table.align-center-5 td:nth-of-type(5),
table.align-center-6 td:nth-of-type(6),
table.align-center-7 td:nth-of-type(7),
table.align-center-8 td:nth-of-type(8),
table.align-center-9 td:nth-of-type(9),
table.align-center-10 td:nth-of-type(10),
table.align-center-11 td:nth-of-type(11),
table.align-center-12 td:nth-of-type(12),
table.align-center-13 td:nth-of-type(13),
table.align-center-14 td:nth-of-type(14),
table.align-center-15 td:nth-of-type(15),
table.align-center-16 td:nth-of-type(16),
table.align-center-17 td:nth-of-type(17),
table.align-center-18 td:nth-of-type(18),
table.align-center-19 td:nth-of-type(19),
table.align-center-20 td:nth-of-type(20) {
text-align: center;
}
table.align-left-1 td:nth-of-type(1),
table.align-left-2 td:nth-of-type(2),
table.align-left-3 td:nth-of-type(3),
table.align-left-4 td:nth-of-type(4),
table.align-left-5 td:nth-of-type(5),
table.align-left-6 td:nth-of-type(6),
table.align-left-7 td:nth-of-type(7),
table.align-left-8 td:nth-of-type(8),
table.align-left-9 td:nth-of-type(9),
table.align-left-10 td:nth-of-type(10),
table.align-left-11 td:nth-of-type(11),
table.align-left-12 td:nth-of-type(12),
table.align-left-13 td:nth-of-type(13),
table.align-left-14 td:nth-of-type(14),
table.align-left-15 td:nth-of-type(15),
table.align-left-16 td:nth-of-type(16),
table.align-left-17 td:nth-of-type(17),
table.align-left-18 td:nth-of-type(18),
table.align-left-19 td:nth-of-type(19),
table.align-left-20 td:nth-of-type(20) {
text-align: left;
}
:root {
--diff-addedline-border-color: #438ab5;
--diff-addedline-background: #bddff2;
--diff-addedline-color: #000;
--diff-deletedline-border-color: #379541;
--diff-deletedline-background: #c1edbf;
--diff-deletedline-color: #000;
--diff-context-border-color: var(--body-mid);
--diff-context-background: var(--body-mid);
}
.diff-context {
border-color: var(--diff-context-border-color);
background: var(--diff-context-background);
color: inherit;
}
.diff-addedline {
border-color: var(--diff-addedline-border-color);
}
.diff-addedline .diffchange {
background: var(--diff-addedline-background);
color: var(--diff-addedline-color);
}
.diff-deletedline {
border-color: var(--diff-deletedline-border-color);
}
.diff-deletedline .diffchange {
background: var(--diff-deletedline-background);
color: var(--diff-deletedline-color);
}
.mw-diff-movedpara-left:after,
.mw-diff-movedpara-right:after {
color: var(--text-color);
}
.mw-notification {
background-color: var(--body-light);
border-color: var(--body-border);
color: var(--text-color);
}
.mw-echo-ui-notificationsInboxWidget-toolbarWrapper {
background: var(--body-main);
}
.mw-body-content .mw-echo-ui-datedSubGroupListWidget-title-secondary {
color: var(--byline-color);
}
.mw-echo-ui-pageNotificationsOptionWidget.oo-ui-optionWidget-selected {
background-color: var(--ooui-normal);
color: var(--ooui-accent);
}
.mw-echo-ui-pageNotificationsOptionWidget-label-count {
background-color: var(--ooui-normal);
color: var(--byline-color);
}
.oo-ui-optionWidget-selected .mw-echo-ui-pageNotificationsOptionWidget-label-count {
color: var(--ooui-accent);
}
.mw-echo-ui-pageNotificationsOptionWidget.oo-ui-optionWidget-highlighted {
background-color: var(--ooui-normal);
color: var(--text-color);
}
.mw-echo-ui-crossWikiUnreadFilterWidget {
border-color: var(--body-border);
}
.mw-echo-ui-crossWikiUnreadFilterWidget-subtitle {
color: var(--byline-color);
}
.mw-echo-ui-notificationBadgeButtonPopupWidget-popup > .oo-ui-popupWidget-popup > .oo-ui-popupWidget-head,
.mw-echo-ui-notificationBadgeButtonPopupWidget-popup > .oo-ui-popupWidget-popup > .oo-ui-popupWidget-footer {
border-color: var(--ooui-interface-border);
}
.mw-echo-ui-notificationBadgeButtonPopupWidget-popup > .oo-ui-popupWidget-popup > .oo-ui-popupWidget-footer .mw-echo-ui-notificationBadgeButtonPopupWidget-footer-buttons .oo-ui-buttonElement:last-child {
border-left-color: var(--ooui-normal-border);
}
.mw-echo-ui-notificationItemWidget {
background-color: var(--ooui-normal);
border-color: var(--ooui-normal-border);
}
.mw-echo-ui-notificationItemWidget:hover,
.mw-echo-ui-notificationItemWidget-unread:hover {
background-color: var(--ooui-normal--hover);
}
.mw-echo-ui-notificationItemWidget:last-child {
border-bottom-color: var(--ooui-normal-border);
}
.mw-echo-ui-notificationItemWidget-unread {
background-color: var(--search-box);
}
.mw-echo-ui-crossWikiNotificationItemWidget-group,
.mw-echo-ui-bundleNotificationItemWidget-group {
background-color: var(--ooui-interface);
}
.mw-echo-ui-toggleReadCircleButtonWidget-circle {
background-color: var(--ooui-progressive);
}
.mw-echo-ui-toggleReadCircleButtonWidget:hover .mw-echo-ui-toggleReadCircleButtonWidget-circle {
background-color: var(--ooui-progressive--hover);
}
.mw-echo-ui-toggleReadCircleButtonWidget-circle-unread {
background-color: var(--ooui-normal);
border-color: var(--ooui-normal-border);
}
.mw-echo-ui-notificationItemWidget-content-message-header,
.mw-echo-ui-notificationItemWidget-content-message-body,
.mw-echo-ui-menuItemWidget > .oo-ui-buttonElement-button > .oo-ui-labelElement-label,
.mw-echo-ui-notificationItemWidget-content-actions-timestamp {
color: var(--ooui-text);
}
.mw-echo-ui-bundleNotificationItemWidget-group {
background-color: var(--body-main);
}
@keyframes unseen-fadeout-to-unread {
from {
background-color: var(--wikitable-bg-lighter);
}
to {
background-color: var(--search-box);
}
}
@keyframes unseen-fadeout-to-read {
from {
background-color: var(--wikitable-bg-lighter);
}
to {
background-color: var(--body-main);
}
}
.mwe-popups {
background: var(--body-light);
}
.mwe-popups .mwe-popups-container {
color: var(--text-color);
background: var(--body-light);
}
.mwe-popups .mwe-popups-container.flipped-x-y:before,
.mwe-popups .mwe-popups-container.flipped-y:before {
border-top: none;
}
.mwe-popups .mwe-popups-container.mwe-popups-no-image-tri:before {
border-bottom: none;
}
.mwe-popups .mwe-popups-container.flipped-x-y:after,
.mwe-popups .mwe-popups-container.flipped-y:after {
border-top-color: var(--body-light);
}
.mwe-popups .mwe-popups-container.mwe-popups-no-image-tri:after {
border-bottom-color: var(--body-light);
}
.mwe-popups .mwe-popups-settings-icon:hover,
.mwe-popups .mwe-popups-settings-icon:active {
background-color: var(--ooui-normal--hover);
}
.mwe-popups .mw-ui-icon-element:not(.disabled):hover {
background: none;
}
.mwe-popups .mwe-popups-extract {
color: var(--text-color);
}
.mwe-popups .mwe-popups-extract[dir='ltr']:after {
background-image: linear-gradient(to right, rgba(49, 62, 89, 0), var(--body-light) 50%);
}
.mwe-popups-overlay {
background-color: var(--ooui-window-background);
}
#mwe-popups-settings {
background: var(--ooui-interface);
border-color: var(--ooui-interface-border);
color: var(--text-color);
}
#mwe-popups-settings header {
border-color: var(--ooui-interface-border);
}
#mwe-popups-settings main#mwe-popups-settings-form p {
color: var(--byline-color);
}
#mwe-popups-settings main#mwe-popups-settings-form form label > span {
color: var(--ooui-text);
}
:root {
--smw-ask-options-even-bg: var(--body-mid);
--smw-ask-options-odd-bg: var(--body-light);
--smw-ask-action-btn-lblue-bg: var(--body-main);
--smw-ask-action-btn-lblue-color: #000;
--smw-ask-action-btn-lblue-border-color: var(--body-light);
--smw-ask-action-btn-dblue-bg: var(--body-light);
--smw-ask-action-btn-dblue-color: #fff;
--smw-ask-action-btn-dblue-border-color: var(--button-border);
}
.smw-ask-condition fieldset,
.smw-ask-printhead fieldset {
border-color: var(--sidebar);
}
.smw-ask-search fieldset,
.smw-ask-format fieldset,
.smw-ask-options fieldset {
border-color: var(--sidebar);
}
.strike > span:before,
.strike > span:after {
background: var(--sidebar);
}
.smw-ask-options-fields tr td {
background-color: var(--smw-ask-options-even-bg);
}
.smw-ask-options-fields tr:nth-child(odd) td {
background-color: var(--smw-ask-options-odd-bg);
}
.smw-ask-action-btn.smw-ask-action-btn-lblue,
.smw-ask-action-btn.smw-ask-action-btn-lblue:hover,
.smw-ask-action-btn.smw-ask-action-btn-lblue:visited {
background-color: var(--smw-ask-action-btn-lblue-bg);
color: var(--smw-ask-action-btn-lblue-color);
border-color: var(--smw-ask-action-btn-lblue-border-color);
}
.smw-ask-action-btn.smw-ask-action-btn-dblue,
.smw-ask-action-btn.smw-ask-action-btn-dblue:hover,
.smw-ask-action-btn.smw-ask-action-btn-dblue:visited {
background-color: var(--smw-ask-action-btn-dblue-bg);
color: var(--smw-ask-action-btn-dblue-color);
border-color: var(--smw-ask-action-btn-dblue-border-color);
}
.smw-ask-query textarea,
.smw-ask-actions textarea {
background-color: var(--ooui-interface);
border-color: var(--ooui-interface-border);
color: var(--ooui-text);
}
.smw-ask-query-format select {
background-color: var(--ooui-interface);
border: 1px solid var(--ooui-interface-border);
color: var(--ooui-text);
}
.smw-ask-toplinks {
background-color: var(--body-mid);
}
.smw-ask-toplinks span.smw-icon-info {
background: none;
padding: 0 !important;
}
.smw-ask-toplinks span.smw-icon-info::before {
content: '';
background: var(--text-color);
-webkit-mask: url("data:image/svg+xml,%3C%3Fxml version='1.0' encoding='UTF-8'%3F%3E%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 20 20'%3E%3Ctitle%3Einfo%3C/title%3E%3Cpath d='M10 0C4.477 0 0 4.477 0 10s4.477 10 10 10 10-4.477 10-10S15.523 0 10 0zM9 5h2v2H9zm0 4h2v6H9z'/%3E%3C/svg%3E") no-repeat 50% 50% / contain;
mask: url("data:image/svg+xml,%3C%3Fxml version='1.0' encoding='UTF-8'%3F%3E%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 20 20'%3E%3Ctitle%3Einfo%3C/title%3E%3Cpath d='M10 0C4.477 0 0 4.477 0 10s4.477 10 10 10 10-4.477 10-10S15.523 0 10 0zM9 5h2v2H9zm0 4h2v6H9z'/%3E%3C/svg%3E") no-repeat 50% 50% / contain;
padding: 0 0 3px 18px;
}
.smw-ask-options-row-odd {
background-color: var(--body-light);
}
.smw-ask-options-row-even {
background-color: var(--body-mid);
}
#options-toggle:not(:checked) + #options-list .options-parameter-list:after {
background-image: linear-gradient(to bottom, transparent, var(--body-mid) 90%);
}
.smw-ask-button-submit input {
background-color: var(--ooui-normal);
border-color: var(--ooui-normal-border);
color: var(--text-color);
}
.smw-ask-button-submit input:hover,
.smw-ask-button-lgrey:hover {
background-color: var(--ooui-normal--hover);
border-color: var(--ooui-normal-border);
}
input.smw-ask-action-btn.smw-ask-action-btn-dblue {
background-color: var(--ooui-normal);
border-color: var(--ooui-normal-border);
color: var(--ooui-text);
}
a.smw-ask-action-btn.smw-ask-action-btn-lblue {
background-color: var(--body-mid);
border-color: var(--body-mid);
color: var(--ooui-text);
}
a.smw-ask-action-btn.smw-ask-action-btn-lblue:visited {
background-color: var(--body-mid);
border-color: var(--body-mid);
color: var(--ooui-text);
}
a.smw-ask-action-btn.smw-ask-action-btn-lblue:hover {
background-color: var(--body-mid);
border-color: var(--body-mid);
color: var(--ooui-text);
}
a.smw-ask-action-btn-lgrey {
background-color: var(--ooui-normal);
border-color: var(--ooui-normal-border);
color: var(--ooui-text);
}
a.smw-ask-action-btn-lgrey:hover {
background-color: var(--ooui-normal--hover);
border-color: var(--ooui-normal-border);
color: var(--ooui-text);
}
.smw-callout-error {
background-color: var(--errorbox-bg);
border-color: var(--errorbox-border);
}
.smw-callout-info {
background-color: var(--body-light);
border-color: var(--body-dark);
}
.smw-callout-success {
background-color: var(--successbox-bg);
border-color: var(--successbox-border);
}
.smw-callout-warning {
background-color: var(--warningbox-bg);
border-color: var(--warningbox-bg);
}
.smw-tabs input.nav-tab:checked + label.nav-label,
.smw-tabs input.nav-tab:checked + label.nav-label:hover {
color: inherit;
}
#tab-smw-property-value:checked + label.nav-label .usage-count {
color: #fff;
background-color: var(--ooui-progressive);
}
#tab-smw-property-value:checked + label.nav-label .usage-count.moderate {
color: #fff;
background-color: #b55e0c;
border-color: #b55e0c;
}
#tab-smw-property-value:checked + label.nav-label .usage-count.high {
color: #fff;
background-color: #9f261e;
border-color: #9f261e;
}
.smw-property-page-results .header-title {
background-color: var(--ooui-interface);
border-bottom-color: var(--ooui-interface-border);
color: var(--ooui-text);
}
.smw-property-page-results .value-row:hover {
background-color: var(--ooui-normal--hover);
}
.smw-property-page-results .smw-table .header-row {
color: var(--text-color);
}
.tippy-tooltip.light-border-theme {
background-color: var(--body-light);
color: var(--text-color);
}
.tippy-tooltip.light-border-theme .tippy-arrow {
border-top-color: var(--body-light);
}
.tippy-tooltip.light-border-theme .tippy-arrow:after {
border-top-color: var(--body-light);
}
.tippy-header {
background-color: var(--body-dark);
border-bottom-color: var(--body-mid);
}
.smw-ui-input-filter {
background-color: var(--ooui-interface);
border-color: var(--ooui-interface-border);
color: var(--ooui-text);
}
.smw-ui-input-filter input {
border-left-color: var(--ooui-interface-border) !important;
color: var(--ooui-text) !important;
}
.smw-ui-pagination .page-link.link-disabled {
background-color: var(--ooui-disabled);
border-color: var(--ooui-disabled-border);
color: var(--subtle-color);
}
.smw-ui-pagination .page-link {
background-color: var(--ooui-normal);
border-color: var(--ooui-normal-border);
color: var(--link-color);
}
.smw-ui-pagination .page-link:hover {
background-color: var(--ooui-normal--hover);
border-color: var(--ooui-normal-border);
color: var(--link-color);
}
.smw-ui-pagination .page-link.link-active {
color: #fff;
background-color: var(--ooui-progressive);
border-color: var(--ooui-progressive);
}
.smw-tabs input.nav-tab:checked + label.nav-label {
border-color: var(--ooui-normal-border);
}
.smw-tabs section,
.smw-tabs .subtab-content {
border-top-color: var(--ooui-normal-border);
}
.smw-column-header {
color: var(--text-color);
}
.smw-factbox {
background: var(--body-main);
border-color: transparent;
}
.mw-body .mw-indicators #mw-indicator-smw-entity-examiner.mw-indicator .smw-indicator-vertical-bar-loader {
display: none;
}
.smwb-theme-light .smwb-title,
.smwb-theme-light .smwb-center,
.smwb-theme-light .smwb-actions,
.smwb-theme-light .smwb-prophead {
background-color: var(--body-mid);
}
.smwb-theme-light .smwb-factbox {
border-left-color: var(--body-mid);
}
.smwb-theme-light .smwb-ifactbox {
border-right-color: var(--body-mid);
}
.smwb-theme-light .smwb-propval {
background-color: var(--body-light);
}
.smwb-action-separator {
border-color: var(--wikitable-border);
}
.smwb-bottom {
border-bottom: 1px solid var(--wikitable-border);
}
.smwb-ifactbox .smwb-cell,
.smwb-factbox .smwb-cell {
border-top: 1px solid var(--wikitable-border);
}
.smwb-propvalue .smwb-prophead,
.smwb-ipropvalue .smwb-prophead,
.smwb-propvalue .smwb-propval,
.smwb-ipropvalue .smwb-propval {
font-size: 0.9em;
}
:root {
--filter-black-to-link: invert(36%) sepia(58%) saturate(433%) hue-rotate(344deg) brightness(100%) contrast(91%);
}
#bodyContent span.smwbrowse a {
color: black;
background-image: url('filepath://Smwbrowse.svg');
filter: var(--filter-black-to-link);
}
#bodyContent span.smwbrowse a:hover {
color: black;
background-image: url('filepath://Smwbrowse-hover.svg');
text-decoration: underline;
}
#bodyContent span.smwsearch a {
color: black;
filter: var(--filter-black-to-link);
background-image: url('filepath://Smwsearch.svg');
}
#bodyContent span.smwsearch a:hover {
color: black;
background-image: url('filepath://Smwsearch-hover.svg');
text-decoration: underline;
}
:root {
--tabber-tab-bg: var(--body-light);
--tabber-tab-border-color: var(--body-border);
--tabber-active-tab-bg: var(--body-light);
--tabber-active-tab-color: var(--text-color);
--tabber-active-tab-hover-bg: var(--body-light);
--tabber-active-tab-hover-border-color: var(--body-border);
--tabber-active-tab-hover-color: var(--text-color);
--tabber-active-tab-border-hider-color: var(--body-light);
--tabber-inactive-tab-bg: var(--body-background-color);
--tabber-inactive-tab-border-color: var(--body-border);
--tabber-inactive-tab-color: var(--text-color);
--tabber-inactive-tab-hover-bg: var(--body-light);
--tabber-inactive-tab-hover-border-color: var(--body-border);
}
.tabber {
margin: 1em 0;
}
.tabber .tabbertab {
background-color: var(--tabber-tab-bg);
border: 1px solid var(--tabber-tab-border-color);
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
padding: 1em 1.5em;
}
ul.tabbernav {
border: none;
margin-left: 2em;
margin-bottom: 0;
margin-right: 2em;
padding: 0;
font-family: inherit;
}
ul.tabbernav li.tabberactive > a {
background-color: var(--tabber-active-tab-bg);
color: var(--tabber-active-tab-color);
border-bottom: none;
position: relative;
}
ul.tabbernav li.tabberactive > a:hover {
color: var(--tabber-active-tab-hover-color);
background-color: var(--tabber-active-tab-hover-bg);
border-color: var(--tabber-active-tab-hover-border-color);
border-bottom: none;
}
ul.tabbernav li.tabberactive > a::after {
content: '';
position: absolute;
left: 0;
right: 0;
bottom: -1px;
border-bottom: 2px solid var(--tabber-active-tab-border-hider-color);
}
ul.tabbernav li a {
background-color: var(--tabber-inactive-tab-bg);
border-bottom: transparent;
border-color: var(--tabber-inactive-tab-border-color);
color: var(--tabber-inactive-tab-color);
display: inline-block;
font-size: 110%;
padding: 0.5em 1em;
}
ul.tabbernav li a:hover {
background-color: var(--tabber-inactive-tab-hover-bg);
border-color: var(--tabber-inactive-tab-hover-border-color);
}
ul.tabbernav li a:link,
ul.tabbernav li a:visited {
color: var(--tabber-inactive-tab-color);
}
:root {
--ooui-text: var(--text-color);
--ooui-interface: var(--body-light);
--ooui-interface-border: var(--body-border);
--ooui-window-background: rgba(255, 255, 255, 0.5);
--ooui-normal: #d5c7ad;
--ooui-normal--hover: #dfd5c1;
--ooui-normal-border: #b8a282;
--ooui-progressive: #605443;
--ooui-progressive--hover: #7e6e58;
--ooui-accent: var(--link-color);
--ooui-input: #fff;
--ooui-input-border: #b8a282;
--ooui-input-border--hover: #8a724f;
--ooui-disabled: #d1cdc5;
--ooui-disabled-border: #c2b9ab;
--ooui-disabled-text: var(--subtle-color);
--ooui-pending-background-image: repeating-linear-gradient(-45deg, var(--search-box), var(--search-box) 20px, var(--body-main) 20px, var(--body-main) 30px);
}
.oo-ui-widget {
color: var(--ooui-text);
}
.oo-ui-checkboxInputWidget [type='checkbox'] + span,
.oo-ui-radioInputWidget [type='radio'] + span {
background-color: var(--ooui-input);
border-color: var(--ooui-input-border);
}
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:checked + span,
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:indeterminate + span {
background-color: var(--ooui-progressive);
border-color: var(--ooui-progressive);
}
.oo-ui-radioInputWidget.oo-ui-widget-enabled [type='radio']:checked + span {
border-color: var(--ooui-progressive);
}
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:checked:hover + span,
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:indeterminate:hover + span {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
}
.oo-ui-radioInputWidget.oo-ui-widget-enabled [type='radio']:checked:hover + span {
border-color: var(--ooui-progressive--hover);
}
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:hover + span,
.oo-ui-radioInputWidget.oo-ui-widget-enabled [type='radio']:hover + span {
border-color: var(--ooui-accent);
}
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:focus + span {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:active + span,
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:checked:active + span,
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:indeterminate:active + span {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
box-shadow: inset 0 0 0 1px var(--ooui-progressive--hover);
}
.oo-ui-radioInputWidget.oo-ui-widget-enabled [type='radio']:active + span {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
}
.oo-ui-radioInputWidget.oo-ui-widget-enabled [type='radio']:checked:active + span {
border-color: var(--ooui-progressive--hover);
box-shadow: inset 0 0 0 1px var(--ooui-progressive--hover);
}
.oo-ui-radioInputWidget.oo-ui-widget-enabled [type='radio']:checked:active + span:before {
border-color: var(--ooui-progressive--hover);
}
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:checked:focus + span,
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:indeterminate:focus + span {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent), inset 0 0 0 2px #fff;
}
.oo-ui-checkboxInputWidget [type='checkbox']:disabled + span,
.oo-ui-radioInputWidget [type='radio']:disabled + span {
background-color: var(--ooui-disabled);
border-color: var(--ooui-disabled);
}
.oo-ui-dropdownWidget-handle {
border-color: var(--ooui-normal-border);
}
.oo-ui-dropdownWidget.oo-ui-widget-enabled .oo-ui-dropdownWidget-handle {
background-color: var(--ooui-normal);
color: var(--ooui-text);
}
.oo-ui-dropdownWidget.oo-ui-widget-enabled .oo-ui-dropdownWidget-handle:hover {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
}
.oo-ui-dropdownWidget.oo-ui-widget-enabled .oo-ui-dropdownWidget-handle:active {
color: var(--ooui-text);
}
.oo-ui-dropdownWidget.oo-ui-widget-enabled .oo-ui-dropdownWidget-handle:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-dropdownWidget.oo-ui-widget-enabled.oo-ui-dropdownWidget-open .oo-ui-dropdownWidget-handle {
background-color: var(--ooui-normal--hover);
}
.oo-ui-dropdownWidget.oo-ui-widget-disabled .oo-ui-dropdownWidget-handle {
color: var(--ooui-disabled-text);
text-shadow: none;
border-color: var(--ooui-disabled-border);
background-color: var(--ooui-disabled);
}
.oo-ui-dropdownInputWidget select {
border-color: var(--ooui-normal-border);
}
.oo-ui-dropdownInputWidget option {
background-color: var(--ooui-interface);
}
.oo-ui-dropdownInputWidget.oo-ui-widget-enabled {
background-color: var(--ooui-normal);
}
.oo-ui-dropdownInputWidget.oo-ui-widget-enabled:hover {
background-color: var(--ooui-normal--hover);
}
.oo-ui-dropdownInputWidget.oo-ui-widget-enabled select {
color: var(--ooui-text);
}
.oo-ui-dropdownInputWidget.oo-ui-widget-enabled select:hover,
.oo-ui-dropdownInputWidget.oo-ui-widget-enabled select:active {
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
}
.oo-ui-dropdownInputWidget.oo-ui-widget-enabled select:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-labelWidget.oo-ui-inline-help {
color: var(--byline-color);
}
.oo-ui-menuSelectWidget {
background-color: var(--ooui-interface);
border-color: var(--ooui-interface-border);
}
.oo-ui-menuSelectWidget-frameless {
box-shadow: inset 0 -1px 0 0 var(--ooui-normal-border);
}
.oo-ui-menuSectionOptionWidget {
color: var(--byline-color);
}
.oo-ui-menuOptionWidget.oo-ui-optionWidget-highlighted,
.oo-ui-menuOptionWidget.oo-ui-optionWidget-selected {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
}
.oo-ui-menuOptionWidget.oo-ui-optionWidget-selected.oo-ui-menuOptionWidget.oo-ui-optionWidget-highlighted,
.oo-ui-menuOptionWidget.oo-ui-optionWidget-pressed.oo-ui-menuOptionWidget.oo-ui-optionWidget-highlighted {
color: var(--ooui-accent);
}
.oo-ui-menuOptionWidget.oo-ui-widget-enabled.oo-ui-optionWidget {
color: var(--ooui-text);
}
.oo-ui-messageDialog-title {
color: inherit;
}
.oo-ui-messageWidget.oo-ui-messageWidget-block.oo-ui-flaggedElement-error {
background-color: var(--errorbox-bg);
border-color: var(--errorbox-border);
}
.oo-ui-messageWidget.oo-ui-messageWidget-block.oo-ui-flaggedElement-warning {
background-color: var(--warningbox-bg);
border-color: var(--warningbox-border);
}
.oo-ui-messageWidget.oo-ui-messageWidget-block.oo-ui-flaggedElement-success {
background-color: var(--successbox-bg);
border-color: var(--successbox-border);
}
.oo-ui-messageWidget.oo-ui-messageWidget-block.oo-ui-flaggedElement-notice {
background-color: var(--messagebox-info-background);
border-color: var(--messagebox-info-border);
}
.oo-ui-messageWidget.oo-ui-flaggedElement-error:not(.oo-ui-messageWidget-block),
.oo-ui-messageWidget.oo-ui-flaggedElement-success:not(.oo-ui-messageWidget-block) {
color: var(--ooui-text);
}
.oo-ui-optionWidget.oo-ui-widget-disabled {
color: var(--ooui-disabled-text);
}
.oo-ui-outlineControlsWidget {
background-color: var(--ooui-normal);
}
.oo-ui-outlineOptionWidget.oo-ui-optionWidget-highlighted {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
}
.oo-ui-popupWidget-popup {
background-color: var(--ooui-interface);
border-color: var(--ooui-interface-border);
}
.oo-ui-popupWidget-anchored-top .oo-ui-popupWidget-anchor:after {
border-bottom-color: var(--ooui-interface);
}
.oo-ui-popupWidget-anchored-top .oo-ui-popupWidget-anchor:before {
border-bottom-color: var(--ooui-interface-border);
}
.oo-ui-popupWidget-anchored-bottom .oo-ui-popupWidget-anchor:after {
border-top-color: var(--ooui-interface);
}
.oo-ui-popupWidget-anchored-bottom .oo-ui-popupWidget-anchor:before {
border-top-color: var(--ooui-interface-border);
}
.oo-ui-popupWidget-anchored-start .oo-ui-popupWidget-anchor:after {
border-right-color: var(--ooui-interface);
}
.oo-ui-popupWidget-anchored-start .oo-ui-popupWidget-anchor:before {
border-right-color: var(--ooui-interface-border);
}
.oo-ui-popupWidget-anchored-end .oo-ui-popupWidget-anchor:after {
border-left-color: var(--ooui-interface);
}
.oo-ui-popupWidget-anchored-end .oo-ui-popupWidget-anchor:before {
border-left-color: var(--ooui-interface-border);
}
.oo-ui-searchWidget-query {
border-bottom-color: var(--ooui-interface-border);
}
.oo-ui-selectFileWidget-dropTarget {
background-color: var(--ooui-interface);
border-color: var(--ooui-interface-border);
}
.oo-ui-selectFileWidget.oo-ui-widget-enabled.oo-ui-selectFileWidget-dropTarget {
background-color: var(--ooui-interface);
}
.oo-ui-selectFileWidget.oo-ui-widget-enabled.oo-ui-selectFileWidget-dropTarget:hover {
border-color: var(--ooui-input-border--hover);
}
.oo-ui-tabOptionWidget {
color: var(--ooui-text);
}
.oo-ui-tabSelectWidget-framed .oo-ui-tabOptionWidget.oo-ui-optionWidget-selected {
background-color: var(--body-dark);
color: var(--ooui-text);
}
.oo-ui-tabSelectWidget-framed .oo-ui-tabOptionWidget.oo-ui-optionWidget-selected .oo-ui-labelElement-label {
border-bottom-color: var(--body-border);
}
.oo-ui-tabSelectWidget-framed .oo-ui-tabOptionWidget.oo-ui-widget-enabled:hover,
.oo-ui-tabSelectWidget-framed .oo-ui-tabOptionWidget.oo-ui-widget-enabled:active {
background-color: var(--body-light);
color: var(--ooui-text);
}
.oo-ui-tabSelectWidget-framed .oo-ui-tabOptionWidget.oo-ui-widget-enabled.oo-ui-optionWidget-selected:hover {
background-color: var(--body-dark);
}
.oo-ui-tabSelectWidget-frameless .oo-ui-tabOptionWidget.oo-ui-optionWidget-selected {
color: var(--ooui-progressive);
box-shadow: inset 0 -2px 0 0 var(--ooui-progressive);
}
.oo-ui-tabSelectWidget-frameless .oo-ui-tabOptionWidget.oo-ui-optionWidget-selected:hover,
.oo-ui-tabSelectWidget-frameless .oo-ui-tabOptionWidget.oo-ui-optionWidget-selected:focus {
color: var(--ooui-progressive--hover);
box-shadow: inset 0 -2px 0 0 var(--ooui-progressive--hover);
}
.oo-ui-tabSelectWidget-framed {
background: none;
border-bottom: 1px solid var(--ooui-interface-border);
}
.oo-ui-tabSelectWidget-frameless {
box-shadow: inset 0 -1px 0 0 var(--ooui-interface-border);
}
.oo-ui-tabSelectWidget-mobile {
}
.oo-ui-tabSelectWidget-mobile.oo-ui-tabSelectWidget-framed:after {
background: var(--mobile-navbox-linear-gradient);
}
.oo-ui-tabSelectWidget-mobile.oo-ui-tabSelectWidget-frameless:after {
background: var(--mobile-navbox-linear-gradient);
}
.oo-ui-tagItemWidget {
border-color: var(--ooui-normal-border);
}
.oo-ui-tagItemWidget.oo-ui-widget-enabled {
color: var(--ooui-text);
}
.oo-ui-tagItemWidget.oo-ui-widget-enabled:hover {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
}
.oo-ui-tagItemWidget.oo-ui-widget-enabled:not( .oo-ui-tagItemWidget-fixed ) {
background-color: var(--ooui-normal);
}
.oo-ui-tagItemWidget.oo-ui-widget-enabled .oo-ui-buttonElement-button:hover {
background-color: var(--ooui-normal--hover);
}
.oo-ui-tagMultiselectWidget.oo-ui-widget-enabled {
background-color: var(--ooui-interface);
}
.oo-ui-tagMultiselectWidget.oo-ui-widget-enabled.oo-ui-tagMultiselectWidget-outlined {
background-color: var(--ooui-normal);
}
.oo-ui-tagMultiselectWidget.oo-ui-widget-enabled.oo-ui-tagMultiselectWidget-outlined .oo-ui-tagItemWidget.oo-ui-widget-enabled {
background-color: var(--ooui-interface);
}
.oo-ui-textInputWidget .oo-ui-inputWidget-input {
background-color: var(--ooui-input);
color: var(--ooui-text);
border-color: var(--ooui-input-border);
}
.oo-ui-textInputWidget.oo-ui-widget-enabled .oo-ui-inputWidget-input::placeholder {
color: var(--subtle-color);
}
.oo-ui-textInputWidget.oo-ui-widget-enabled .oo-ui-inputWidget-input:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-textInputWidget.oo-ui-widget-enabled .oo-ui-inputWidget-input[readonly]:not(.oo-ui-pendingElement-pending) {
background-color: var(--ooui-disabled);
color: var(--ooui-disabled-text);
}
.oo-ui-textInputWidget.oo-ui-widget-enabled:hover .oo-ui-inputWidget-input {
border-color: var(--ooui-input-border--hover);
}
.oo-ui-textInputWidget.oo-ui-widget-enabled:hover .oo-ui-inputWidget-input:focus {
border-color: var(--ooui-accent);
}
@media screen and (min-width: 0) {
.oo-ui-textInputWidget.oo-ui-widget-enabled textarea.oo-ui-inputWidget-input:focus {
outline: 1px solid var(--ooui-accent);
}
}
.oo-ui-textInputWidget.oo-ui-widget-disabled .oo-ui-inputWidget-input {
background-color: var(--ooui-disabled);
color: var(--ooui-disabled-text);
text-shadow: none;
border-color: var(--ooui-disabled-border);
}
.oo-ui-toggleSwitchWidget {
background-color: var(--ooui-input);
border-color: var(--ooui-input-border);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled .oo-ui-toggleSwitchWidget-grip {
background-color: var(--ooui-input);
border-color: var(--ooui-input-border);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:hover {
background-color: var(--ooui-input);
border-color: var(--ooui-accent);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:hover .oo-ui-toggleSwitchWidget-grip {
background-color: var(--ooui-input);
border-color: var(--ooui-accent);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:active,
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:active:hover,
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:active:focus {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
box-shadow: inset 0 0 0 1px var(--ooui-progressive--hover);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:active .oo-ui-toggleSwitchWidget-grip,
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:active:hover .oo-ui-toggleSwitchWidget-grip,
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:active:focus .oo-ui-toggleSwitchWidget-grip {
background-color: var(--ooui-input);
border-color: var(--ooui-input);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:focus .oo-ui-toggleSwitchWidget-grip {
border-color: var(--ooui-accent);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled.oo-ui-toggleWidget-on {
background-color: var(--ooui-progressive);
border-color: var(--ooui-progressive);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled.oo-ui-toggleWidget-on .oo-ui-toggleSwitchWidget-grip {
background-color: var(--ooui-input);
border-color: var(--ooui-input);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled.oo-ui-toggleWidget-on:hover {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled.oo-ui-toggleWidget-on:active,
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled.oo-ui-toggleWidget-on:active:hover {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled.oo-ui-toggleWidget-on:focus {
border-color: var(--ooui-progressive);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled.oo-ui-toggleWidget-on:focus::before {
border-color: #fff;
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-disabled {
background-color: var(--ooui-disabled);
border-color: var(--ooui-disabled);
}
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled > .oo-ui-buttonElement-button {
color: var(--ooui-text);
}
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled > .oo-ui-buttonElement-button:hover {
color: var(--ooui-text);
}
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled > .oo-ui-buttonElement-button:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled.oo-ui-buttonElement-pressed > input.oo-ui-buttonElement-button,
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled > .oo-ui-buttonElement-button:active {
color: var(--ooui-text);
}
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button,
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button:hover {
color: var(--ooui-text);
}
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button:active,
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive.oo-ui-buttonElement-pressed > .oo-ui-buttonElement-button {
color: var(--ooui-text);
border-color: var(--ooui-text);
}
.oo-ui-buttonElement-frameless.oo-ui-widget-disabled > .oo-ui-buttonElement-button {
color: var(--ooui-disabled-text);
}
.oo-ui-buttonElement-framed.oo-ui-widget-disabled > .oo-ui-buttonElement-button {
background-color: var(--ooui-disabled);
border-color: var(--ooui-disabled-border);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled > .oo-ui-buttonElement-button {
background-color: var(--ooui-normal);
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled > .oo-ui-buttonElement-button:hover {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled > .oo-ui-buttonElement-button:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-buttonElement-active > .oo-ui-buttonElement-button {
background-color: var(--ooui-progressive--hover);
color: #fff;
border-color: var(--ooui-progressive--hover);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-buttonElement-active > .oo-ui-buttonElement-button:focus {
border-color: var(--ooui-progressive--hover);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled > .oo-ui-buttonElement-button:active,
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-buttonElement-pressed > .oo-ui-buttonElement-button {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive {
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button {
color: var(--ooui-text);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button:hover {
background-color: var(--ooui-normal--hover);
border-color: var(--ooui-progressive--hover);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-destructive > .oo-ui-buttonElement-button {
color: var(--ooui-text);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-destructive > .oo-ui-buttonElement-button:hover {
background-color: var(--ooui-normal--hover);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button {
background-color: var(--ooui-progressive);
border-color: var(--ooui-progressive);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button:hover {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent), inset 0 0 0 2px #fff;
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button:active,
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive.oo-ui-buttonElement-pressed > .oo-ui-buttonElement-button,
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive.oo-ui-buttonElement-active > .oo-ui-buttonElement-button,
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive.oo-ui-popupToolGroup-active > .oo-ui-buttonElement-button {
color: #fff;
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
}
.oo-ui-pendingElement-pending {
background-image: var(--ooui-pending-background-image);
background-size: 200%;
animation: oo-ui-pendingElement-stripes 6s linear infinite;
}
@keyframes oo-ui-pendingElement-stripes {
100% {
background-position: 100%;
}
}
.oo-ui-messageDialog-content > .oo-ui-window-foot {
outline-color: var(--ooui-interface-border);
}
.oo-ui-messageDialog-message {
color: var(--ooui-text);
}
.oo-ui-messageDialog-actions-horizontal .oo-ui-actionWidget {
border-right-color: var(--ooui-interface-border);
}
.oo-ui-messageDialog-actions-vertical .oo-ui-actionWidget {
border-bottom-color: var(--ooui-interface-border);
}
.oo-ui-processDialog-content .oo-ui-window-head,
.oo-ui-processDialog-content .oo-ui-window-foot {
outline-color: var(--ooui-interface-border);
}
.oo-ui-processDialog .oo-ui-actionWidget > .oo-ui-buttonElement-button {
border-top-color: transparent;
border-bottom-color: transparent;
}
.oo-ui-processDialog .oo-ui-actionWidget > .oo-ui-buttonElement-button:hover,
.oo-ui-processDialog .oo-ui-actionWidget > .oo-ui-buttonElement-button:active {
border-top-color: transparent;
border-bottom-color: transparent;
}
.oo-ui-processDialog .oo-ui-actionWidget:not( .oo-ui-flaggedElement-progressive ):not( .oo-ui-flaggedElement-destructive ) > .oo-ui-buttonElement-button:hover,
.oo-ui-processDialog .oo-ui-actionWidget:not( .oo-ui-flaggedElement-progressive ):not( .oo-ui-flaggedElement-destructive ) > .oo-ui-buttonElement-button:active {
border-right-color: var(--ooui-interface-border);
border-left-color: transparent;
}
.oo-ui-processDialog .oo-ui-actionWidget:not( .oo-ui-flaggedElement-progressive ):not( .oo-ui-flaggedElement-destructive ) > .oo-ui-buttonElement-button:focus {
border-color: var(--ooui-accent);
}
.oo-ui-processDialog-actions-safe .oo-ui-actionWidget > .oo-ui-buttonElement-button,
.oo-ui-processDialog-actions-other .oo-ui-actionWidget > .oo-ui-buttonElement-button {
border-right-color: var(--ooui-normal-border);
border-left-color: transparent;
}
.oo-ui-processDialog-actions-safe .oo-ui-widget-enabled.oo-ui-iconElement:not( .oo-ui-labelElement ) > .oo-ui-buttonElement-button:hover {
background-color: var(--ooui-normal--hover);
border-right-color: var(--ooui-interface-border);
}
.oo-ui-windowManager-modal > .oo-ui-dialog {
background-color: var(--ooui-window-background);
}
.oo-ui-windowManager-modal > .oo-ui-dialog > .oo-ui-window-frame {
background-color: var(--ooui-interface);
}
.oo-ui-windowManager-modal.oo-ui-windowManager-floating > .oo-ui-dialog > .oo-ui-window-frame {
border-color: var(--ooui-interface-border);
}
.oo-ui-window {
color: var(--ooui-text);
}
.oo-ui-toolbar-bar {
background-color: var(--ooui-interface);
color: var(--ooui-text);
}
.oo-ui-toolbar-position-top > .oo-ui-toolbar-bar {
border-bottom-color: var(--body-mid);
}
.oo-ui-toolbar-bar .oo-ui-bookletLayout > .oo-ui-menuLayout-menu {
border-right-color: var(--body-mid);
}
.oo-ui-tool.oo-ui-widget-enabled > .oo-ui-tool-link:hover {
background-color: var(--ooui-normal--hover);
}
.oo-ui-tool.oo-ui-widget-enabled > .oo-ui-tool-link:focus {
outline: 1px solid var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-tool.oo-ui-widget-enabled > .oo-ui-tool-link:active,
.oo-ui-tool.oo-ui-widget-enabled.oo-ui-tool-active > .oo-ui-tool-link,
.oo-ui-tool.oo-ui-widget-enabled.oo-ui-popupToolGroup-active > .oo-ui-tool-link {
background-color: var(--ooui-normal--hover);
color: var(--ooui-accent);
box-shadow: none;
}
.oo-ui-tool.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive > .oo-ui-tool-link {
background-color: var(--ooui-progressive);
}
.oo-ui-tool.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive > .oo-ui-tool-link:hover {
background-color: var(--ooui-progressive--hover);
}
.oo-ui-tool.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive > .oo-ui-tool-link:focus {
box-shadow: inset 0 0 0 1px var(--ooui-accent), inset 0 0 0 2px #fff;
}
.oo-ui-tool.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive > .oo-ui-tool-link:active,
.oo-ui-tool.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive.oo-ui-tool-active > .oo-ui-tool-link {
background-color: var(--ooui-progressive--hover);
}
.oo-ui-listToolGroup-tools .oo-ui-tool.oo-ui-widget-enabled {
background-color: var(--ooui-normal);
}
.oo-ui-listToolGroup-tools .oo-ui-tool.oo-ui-widget-enabled:hover {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
}
.oo-ui-listToolGroup-tools .oo-ui-tool-active.oo-ui-widget-enabled .oo-ui-tool-link .oo-ui-tool-title {
color: var(--ooui-progressive);
}
.oo-ui-menuToolGroup {
border-left-color: var(--body-mid);
border-right-color: var(--body-mid);
}
.oo-ui-popupToolGroup-tools {
background-color: var(--ooui-interface);
border-color: var(--body-mid);
}
.oo-ui-popupToolGroup.oo-ui-widget-enabled > .oo-ui-popupToolGroup-handle:hover {
background-color: var(--ooui-normal--hover);
}
.oo-ui-popupToolGroup.oo-ui-widget-enabled > .oo-ui-popupToolGroup-handle:focus {
outline: 1px solid var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-toolbar-actions .oo-ui-popupToolGroup.oo-ui-widget-enabled > .oo-ui-popupToolGroup-handle:hover {
border-right-color: var(--ooui-normal--hover);
}
.oo-ui-popupToolGroup-tools .oo-ui-tool.oo-ui-widget-enabled .oo-ui-tool-link:focus {
box-shadow: inset 0 0 0 2px var(--ooui-accent);
}
.oo-ui-popupToolGroup-tools .oo-ui-tool-active.oo-ui-widget-enabled .oo-ui-tool-link .oo-ui-tool-title {
color: var(--ooui-progressive);
}
.oo-ui-popupToolGroup.oo-ui-popupToolGroup-active > .oo-ui-popupToolGroup-handle {
background-color: var(--ooui-normal);
color: var(--ooui-accent);
}
.oo-ui-popupToolGroup.oo-ui-popupToolGroup-active > .oo-ui-popupToolGroup-handle:hover {
background-color: var(--ooui-normal--hover);
color: var(--ooui-accent);
}
.oo-ui-bookletLayout-outlinePanel > .oo-ui-outlineControlsWidget {
border-top-color: var(--ooui-interface-border);
}
.oo-ui-bookletLayout > .oo-ui-menuLayout-menu {
border-right-color: var(--ooui-interface-border);
}
.oo-ui-fieldLayout-disabled > .oo-ui-fieldLayout-body > .oo-ui-fieldLayout-header > .oo-ui-labelElement-label {
color: var(--ooui-disabled-text);
}
.oo-ui-panelLayout-framed {
border-color: var(--sidebar);
}
.oo-ui-icon-settings {
background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' width='20' height='20' viewBox='0 0 20 20'%3E%3Ctitle%3Esettings%3C/title%3E%3Cg transform='translate(10 10)'%3E%3Cpath id='a' d='M1.5-10h-3l-1 6.5h5m0 7h-5l1 6.5h3'/%3E%3Cuse xlink:href='%23a' transform='rotate(45)'/%3E%3Cuse xlink:href='%23a' transform='rotate(90)'/%3E%3Cuse xlink:href='%23a' transform='rotate(135)'/%3E%3C/g%3E%3Cpath d='M10 2.5a7.5 7.5 0 0 0 0 15 7.5 7.5 0 0 0 0-15v4a3.5 3.5 0 0 1 0 7 3.5 3.5 0 0 1 0-7'/%3E%3C/svg%3E");
}
.oo-ui-icon-clear {
background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 20 20'%3E%3Ctitle%3Eclear%3C/title%3E%3Cpath d='M10 0a10 10 0 1 0 10 10A10 10 0 0 0 10 0zm5.66 14.24-1.41 1.41L10 11.41l-4.24 4.25-1.42-1.42L8.59 10 4.34 5.76l1.42-1.42L10 8.59l4.24-4.24 1.41 1.41L11.41 10z'/%3E%3C/svg%3E");
}
.mw-widget-dateInputWidget-handle {
background-color: var(--ooui-input);
color: var(--ooui-text);
border-color: var(--ooui-input-border);
}
.mw-widget-dateInputWidget-calendar {
background-color: var(--ooui-interface);
}
.mw-widget-dateInputWidget.oo-ui-widget-enabled .mw-widget-dateInputWidget-handle:hover {
border-color: var(--ooui-input-border--hover);
}
.mw-widget-calendarWidget {
border-color: var(--ooui-interface-border);
}
.mw-widget-calendarWidget:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.mw-widget-calendarWidget-day,
.mw-widget-calendarWidget-day-heading {
color: var(--ooui-text);
}
.mw-widget-calendarWidget-day-additional {
color: var(--ooui-text);
opacity: 0.67;
}
.mw-widget-calendarWidget-day-today {
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.mw-widget-calendarWidget-item:hover {
background-color: var(--ooui-progressive);
}
.mw-widget-calendarWidget-item-selected {
background-color: var(--ooui-progressive--hover);
}
.mw-widgets-datetime-calendarWidget {
background-color: var(--ooui-interface);
border-color: var(--ooui-interface-border);
}
.mw-widgets-datetime-calendarWidget:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent), 0 2px 2px 0 rgba(0, 0, 0, 0.25);
}
.mw-widgets-datetime-calendarWidget-grid .mw-widgets-datetime-calendarWidget-cell.mw-widgets-datetime-calendarWidget-extra .oo-ui-buttonElement-button .oo-ui-labelElement-label {
color: var(--subtle-color);
}
.mw-widgets-datetime-calendarWidget-grid .mw-widgets-datetime-calendarWidget-cell.mw-widgets-datetime-calendarWidget-selected .oo-ui-buttonElement-button {
background-color: var(--ooui-progressive--hover);
}
.mw-widgets-datetime-dateTimeInputWidget-handle {
background-color: var(--ooui-input);
color: var(--ooui-text);
border-color: var(--ooui-input-border);
}
.mw-widgets-datetime-dateTimeInputWidget.oo-ui-widget-enabled.mw-widgets-datetime-dateTimeInputWidget-handle:hover {
border-color: var(--ooui-input-border--hover);
}
.mw-widgets-datetime-dateTimeInputWidget.oo-ui-widget-enabled:hover input,
.mw-widgets-datetime-dateTimeInputWidget.oo-ui-widget-enabled:hover textarea {
border-color: var(--ooui-input-border--hover);
}
.mw-widgets-datetime-dateTimeInputWidget.oo-ui-widget-enabled .mw-widgets-datetime-dateTimeInputWidget-editField:hover {
background-color: var(--ooui-normal);
}
.ve-activated .ve-init-mw-desktopArticleTarget-originalContent #catlinks:hover {
background: var(--ooui-normal--hover);
}
.ve-ui-overlay {
font-family: inherit;
}
.oo-ui-toolbar-position-top .ve-ui-toolbarDialog-position-above {
border-top-color: var(--body-mid);
}
.ve-ce-branchNode-blockSlug,
.ve-ce-branchNode-newSlug {
outline-color: var(--body-border);
background-color: var(--ooui-interface);
}
.ve-ui-specialCharacterPage h3 {
color: var(--byline-color);
}
.ve-ui-specialCharacterPage-character {
border-color: var(--body-mid);
}
.ve-ui-specialCharacterPage-character:hover {
border-color: var(--body-dark);
}
.ve-ce-linkAnnotation.ve-ce-annotation-active {
box-shadow: 0 0 0 1px var(--body-mid);
background: none;
}
.ve-ui-desktopContext .ve-ui-linkContextItem .ve-ui-linkContextItem-label {
border-color: var(--body-border);
}
.ve-ui-mwHelpPopupTool-version-label,
.ve-ui-mwHelpPopupTool-version-link,
.ve-ui-mwHelpPopupTool-version-date {
color: var(--byline-color);
}
.ve-ce-tableCellableNode {
border-color: var(--body-mid);
}
.ve-ce-mwReferencesListNode-muted {
color: var(--byline-color);
}
.ve-ui-mwTemplatePage-description,
.ve-ui-mwParameterPage-label,
.ve-ui-mwParameterPage-description-required,
.ve-ui-mwParameterPage-description-deprecated {
color: var(--byline-color);
}
.mw-widget-titleWidget-menu .mw-widget-titleOptionWidget-description {
color: var(--byline-color);
}
.ve-ui-mwGalleryDialog-menuLayout > .oo-ui-menuLayout-menu,
.ve-ui-mwGalleryDialog-innerMenuLayout > .oo-ui-menuLayout-menu,
.ve-ui-mwGalleryDialog .ve-ui-mwGalleryDialog-image-container,
.ve-ui-targetWidget {
border-color: var(--body-border);
}
.ve-ui-targetWidget:not(.oo-ui-pendingElement-pending) {
background-color: var(--body-main);
}
.ve-ui-mwSaveDialog {
color: var(--ooui-text);
}
.ve-ui-mwSaveDialog-options {
background-color: var(--ooui-interface);
border-color: var(--body-border);
}
.ve-ui-mwSaveDialog-summary {
background-color: var(--ooui-input);
}
.ve-ui-mwSaveDialog-editSummary-count {
border-color: var(--body-border);
}
.ve-ui-mwSaveDialog-license {
color: var(--byline-color);
}
.ve-ui-mwReferenceContextItem-muted {
color: var(--byline-color);
}
.ve-ui-mwNoticesPopupTool-items > div:not(:first-child),
.ve-ui-mwHelpPopupTool-item:not(:first-child) {
border-color: var(--body-border);
}
.ve-ui-mwTransclusionOutlineControlsWidget {
background-color: var(--ooui-interface);
border-top-color: var(--body-border);
}
.ve-ui-mwTransclusionOutlineTemplateWidget-sticky {
background-color: var(--ooui-interface);
}
.ve-ui-mwTransclusionOutlineTemplateWidget .ve-ui-mwTransclusionOutlineParameterWidget.oo-ui-optionWidget-highlighted {
color: var(--ooui-text);
}
.ve-ui-mwTransclusionOutlineTemplateWidget-no-template-parameters {
color: var(--subtle-color);
}
.ve-ui-mwParameterPage-undocumentedLabel {
color: var(--subtle-color);
}
.ve-ui-mwTwoPaneTransclusionDialogLayout > .oo-ui-menuLayout-menu {
border-right: var(--body-border);
}
.ve-ui-mwParameterPage-doc-required,
.ve-ui-mwParameterPage-doc-deprecated,
.ve-ui-mwParameterPage-inlineDescription .ve-ui-mwParameterPage-doc-example {
color: var(--byline-color);
}
.ve-ui-expandableContent-toggle {
background-color: var(--ooui-interface);
}
.ve-ui-expandableContent-fade {
background: linear-gradient(to right, rgba(255, 255, 255, 0) 0, var(--ooui-interface) 90%);
}
.ve-ui-commandHelpDialog-shortcut > kbd,
.ve-ui-commandHelpDialog-sequence > kbd {
background-color: var(--keypress-background);
color: var(--keypress-color);
border-color: var(--keypress-border);
box-shadow: none;
text-shadow: none;
}
.ve-init-mw-desktopArticleTarget-toolbarPlaceholder-floating .ve-init-mw-desktopArticleTarget-toolbarPlaceholder-bar {
background: var(--ooui-interface);
}
.ve-init-mw-desktopArticleTarget-toolbarPlaceholder-bar {
border-bottom-color: var(--body-mid);
}
figure[typeof~='mw:File/Thumb'],
figure[typeof~='mw:File/Frame'],
figure[typeof~='mw:Image/Thumb'],
figure[typeof~='mw:Video/Thumb'],
figure[typeof~='mw:Image/Frame'],
figure[typeof~='mw:Video/Frame'] {
border: none;
background-color: var(--thumb-bg);
}
figure[typeof~='mw:File/Thumb'] > a:first-child > *:first-child:not( .mw-broken-media ),
figure[typeof~='mw:File/Frame'] > a:first-child > *:first-child:not( .mw-broken-media ),
figure[typeof~='mw:Image/Thumb'] > a:first-child > *:first-child:not( .mw-broken-media ),
figure[typeof~='mw:Video/Thumb'] > a:first-child > *:first-child:not( .mw-broken-media ),
figure[typeof~='mw:Image/Frame'] > a:first-child > *:first-child:not( .mw-broken-media ),
figure[typeof~='mw:Video/Frame'] > a:first-child > *:first-child:not( .mw-broken-media ) {
border: none;
background: var(--thumb-bg);
}
figure[typeof~='mw:File/Thumb'] > figcaption,
figure[typeof~='mw:File/Frame'] > figcaption,
figure[typeof~='mw:Image/Thumb'] > figcaption,
figure[typeof~='mw:Video/Thumb'] > figcaption,
figure[typeof~='mw:Image/Frame'] > figcaption,
figure[typeof~='mw:Video/Frame'] > figcaption {
border: none;
background-color: var(--thumb-caption-bg);
padding: 4px 6px;
}
:root {
--keypress-background: #eee;
--keypress-border: #ccc;
--keypress-color: #333;
}
.archivelist {
background-color: var(--body-light);
border: solid 1px var(--body-border);
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
float: right;
margin: 5px;
padding: 5px;
text-align: center;
width: 120px;
}
.shortcut {
border: 1px solid var(--body-border);
background: var(--body-light);
float: right;
font-size: 0.8em;
margin: 0.5em 0em 0.5em 1em;
padding: 0.5em;
text-align: center;
}
.hatnote,
.seealso {
font-style: italic;
}
.hatnote i,
.seealso i {
font-style: normal;
}
div.hatnote,
div.seealso {
margin: 0.5em 1.6em;
}
div.hatnote + div.hatnote,
div.hatnote + div.seealso,
div.seealso + div.hatnote,
div.seealso + div.seealso {
margin-top: -0.5em;
}
.keypress {
background: var(--keypress-background);
color: var(--keypress-color);
font-family: inherit;
border: 1px solid var(--keypress-border);
border-radius: 2px;
font-size: 0.9em;
margin: 0 0.1em;
padding: 0.1em 0.4em;
white-space: nowrap;
}
:root {
--documentation-background: #f9fafa;
--documentation-link-color: #e4eaee;
--documentation-headers-color: #fff;
--documentation-header-background: #949eaa;
--documentation-subheader-background: #808c9a;
--documentation-border: #e4eaee;
}
.documentation {
background: var(--documentation-background);
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
margin: 1em 0;
}
.documentation pre,
.documentation code {
background-color: var(--documentation-background);
border-color: var(--documentation-border);
}
.documentation h2,
.documentation hr {
border-color: var(--documentation-border);
}
.documentation-header {
color: var(--documentation-headers-color);
background: var(--documentation-header-background);
font-weight: bold;
padding: 1em 1.5em;
}
.documentation-title {
font-size: 1.25em;
}
.documentation-subheader {
color: var(--documentation-headers-color);
background: var(--documentation-subheader-background);
padding: 0.5em 1.5em;
}
.documentation-subheader a,
.documentation-subheader a:visited,
.documentation-subheader a:active {
color: var(--documentation-link-color);
}
.documentation-documentation,
.documentation-links {
font-size: 0.85em;
}
.documentation-content {
padding: 1em 1.5em;
}
.mw-templatedata-doc-params dl:not(:empty) {
column-count: 3;
border-top: 1px solid var(--body-border);
margin-bottom: 0.5em;
}
.mw-templatedata-doc-params dt::after {
content: ":";
}
.mw-templatedata-doc-params dd,
.mw-templatedata-doc-params dt {
margin: 0.1em 2em;
min-width: auto;
}
.mw-templatedata-doc-muted {
color: var(--subtle-color);
font-style: italic;
}
:root {
--infobox-text-color: var(--text-color);
--table-header: #b1886f;
--table-subheader: #d1b9ad;
--table-body: #fff8ee;
--table-border: #e9d8cc;
}
.infobox {
font-size: 0.85em;
width: 300px;
border-collapse: collapse;
float: right;
table-layout: fixed;
margin: 0.5em 0 1em 1em;
}
.infobox .infobox-buttons {
display: flex;
flex-wrap: wrap;
justify-content: center;
grid-gap: 3px;
margin-bottom: 3px;
}
.infobox .infobox-buttons .button {
background: var(--table-header);
padding: 0 5px;
font-weight: bold;
flex: 1 1 20%;
max-width: 20%;
color: #fff;
}
.infobox tbody {
border: 1px solid var(--table-border);
background: var(--table-body);
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(231, 215, 199, 0.5);
}
.infobox .infobox-header {
background: var(--table-header);
padding: 0.5em 0;
text-align: center;
color: #fff;
font-size: 1.15em;
font-weight: bold;
line-height: 1.4em;
}
.infobox .infobox-image {
text-align: center;
background: var(--body-main);
}
.infobox .infobox-subheader {
background: var(--table-subheader);
font-weight: bold;
text-align: center;
color: #fff;
}
.infobox .infobox-padding {
backgound: var(--table-body);
}
tr td .infobox:not(.infobox-padding) {
padding: 0.2em 0.5em;
}
th .infobox:not(.infobox-header) .infobox:not(.infobox-subheader) .infobox:not(.infobox-nested) {
border-right: 2px solid var(--table-subheader);
text-align: right;
padding: 0.2em 0.5em;
}
.hidden {
display: none;
}
ol.references,
.reflist {
font-size: 90%;
}
.reflist {
list-style-type: decimal;
}
.reflist .references {
font-size: 100%;
list-style-type: inherit;
}
.reflist-lower-alpha {
list-style-type: lower-alpha;
}
ol.references li:target,
sup.reference:target {
background-color: var(--body-light);
}
.hideQuotes .refhide {
display: none;
}
:root {
--messagebox-obsolete-background: #cfcfcf;
--messagebox-obsolete-border: #464646;
--messagebox-obsolete-color: var(--text-color);
--messagebox-obsolete-link-color: #6c6c6c;
--messagebox-info-background: #ebebeb;
--messagebox-info-border: #898989;
--messagebox-info-color: var(--text-color);
--messagebox-info-link-color: #6c6c6c;
--messagebox-action-background: #c7e8fa;
--messagebox-action-border: #0b5884;
--messagebox-action-color: var(--text-color);
--messagebox-action-link-color: #03436b;
--messagebox-warn-background: #dfc0ba;
--messagebox-warn-border: #861c10;
--messagebox-warn-color: var(--text-color);
--messagebox-warn-link-color: #8e221a;
--messagebox-safe-background: #d8f0d3;
--messagebox-safe-border: #1b8408;
--messagebox-safe-color: var(--text-color);
--messagebox-safe-link-color: #1b8408;
--messagebox-disambig-background: #ebebeb;
--messagebox-disambig-border: #898989;
--messagebox-disambig-color: var(--text-color);
--messagebox-disambig-link-color: #6c6c6c;
--messagebox-discord-background: #5865f2;
--messagebox-discord-border: #4c57d0;
--messagebox-discord-link-color: #d2e5fc;
}
.mw-message-box,
.mw-message-box-error,
.mw-message-box-warning,
.mw-message-box-success,
.usermessage {
color: var(--text-color);
}
.messagebox {
width: 65%;
margin: 0.5em auto;
border-left: 15px solid;
border-color: var(--body-dark);
background-color: var(--body-light);
box-sizing: border-box;
}
.messagebox.obsolete {
background-color: var(--messagebox-obsolete-background);
border-color: var(--messagebox-obsolete-border);
color: var(--messagebox-obsolete-color);
}
.messagebox.obsolete a,
.messagebox.obsolete a:visited,
.messagebox.obsolete a:active {
color: var(--messagebox-obsolete-link-color);
}
.messagebox.info {
background-color: var(--messagebox-info-background);
border-color: var(--messagebox-info-border);
color: var(--messagebox-info-color);
}
.messagebox.info a,
.messagebox.info a:visited,
.messagebox.info a:active {
color: var(--messagebox-info-link-color);
}
.messagebox.action {
background-color: var(--messagebox-action-background);
border-color: var(--messagebox-action-border);
color: var(--messagebox-action-color);
}
.messagebox.action a,
.messagebox.action a:visited,
.messagebox.action a:active {
color: var(--messagebox-action-link-color);
}
.messagebox.warn {
background-color: var(--messagebox-warn-background);
border-color: var(--messagebox-warn-border);
color: var(--messagebox-warn-color);
}
.messagebox.warn a,
.messagebox.warn a:visited,
.messagebox.warn a:active {
color: var(--messagebox-warn-link-color);
}
.messagebox.safe {
background-color: var(--messagebox-safe-background);
border-color: var(--messagebox-safe-border);
color: var(--messagebox-safe-color);
}
.messagebox.safe a,
.messagebox.safe a:visited,
.messagebox.safe a:active {
color: var(--messagebox-safe-link-color);
}
.messagebox.disambig {
background-color: var(--messagebox-disambig-background);
border-color: var(--messagebox-disambig-border);
color: var(--messagebox-disambig-color);
}
.messagebox.disambig a,
.messagebox.disambig a:visited,
.messagebox.disambig a:active {
color: var(--messagebox-disambig-link-color);
}
.messagebox.discord {
background-color: var(--messagebox-discord-background);
border-color: var(--messagebox-discord-border);
color: #fff;
}
.messagebox.discord a,
.messagebox.discord a:visited,
.messagebox.discord a:active {
color: var(--messagebox-discord-link-color);
}
.messagebox.discord a.external,
.messagebox.discord a:visited.external,
.messagebox.discord a:active.external {
font-style: italic;
}
.messagebox.stub {
width: 40%;
}
.messagebox.hasdialogue {
padding: 0 10px;
width: auto;
}
:root {
--byline-arrow-filter: invert(29%) sepia(0%) saturate(376%) hue-rotate(172deg) brightness(87%) contrast(80%);
--tile-border-color: #cabe9b;
--tile-background-color: #f9f3eb;
--tile-link-button-color: #f5e9db;
--tile-link-button-highlight-color: #dfccb0;
--tile-dark-color: #fff;
--tile-dark-bg: #5d6773;
--tile-dark-link-color: #ccc;
--tile-dark-byline-color: rgba(255, 255, 255, 0.7);
--tile-dark-header-color: #fff;
}
.tile {
background: var(--tile-background-color);
border: 1px solid var(--tile-border-color);
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
padding: 1.5em 2em 1em;
max-width: 40em;
}
.tile h2 {
font-size: 1.4em;
font-weight: bold;
border: none;
margin: 0 0 0.4em;
}
.tile .byline + h2 {
margin-top: -0.5em;
}
.tile.dark {
color: var(--tile-dark-color);
background: var(--tile-dark-bg);
border: none;
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.3);
}
.tile.dark h2 {
color: var(--tile-dark-header-color);
}
.tile.dark a {
color: var(--tile-dark-link-color);
}
.tile.dark .byline {
color: var(--tile-dark-byline-color);
}
.byline {
font-size: 0.9em;
color: var(--byline-color);
}
.byline a {
color: var(--byline-color);
}
.tile-row {
display: flex;
flex-flow: row wrap;
margin-bottom: 1em;
}
.tile-halves {
display: flex;
flex-flow: row wrap;
border: 1px solid var(--tile-border-color);
background: var(--tile-background-color);
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
}
.tile-halves h2 {
font-size: 1.4em;
font-weight: bold;
border: none;
margin: 0 0 0.4em;
}
.tile-halves .byline + h2 {
margin-top: -0.5em;
}
.tile-top {
width: 100%;
padding: 1.3rem 1.5rem 0.6rem;
}
.tile-top.tile-image {
display: flex;
align-items: center;
background-color: var(--byline-color);
overflow: hidden;
padding: 0;
height: 13vw;
max-height: 12em;
transition: 0.4s ease-out;
}
.tile-halves:hover .tile-top.tile-image img {
transform: scale(1.1);
transition: 0.5s ease-out;
}
.tile-top.tile-image a {
width: 100%;
}
.tile-top.tile-image img {
width: 100%;
object-fit: cover;
max-height: 200px;
transition: 0.4s ease-out;
}
.tile-bottom {
background: var(--tile-background-color);
border-top: 1px solid var(--tile-border-color);
width: 100%;
padding: 1rem 1.5rem 0.6rem;
}
.tile-bottom.link-button {
align-self: flex-end;
padding: 0;
}
.tile-bottom.link-button a {
display: block;
text-align: center;
padding: 0.75em 1.5em 0.8em;
text-decoration: none;
}
.tile-bottom.read-more {
background: var(--tile-link-button-color);
transition: 0.3s ease-out;
}
.tile-bottom.read-more a {
color: var(--byline-color);
font-weight: bold;
text-align: right;
}
.tile-bottom.read-more:hover {
background: var(--tile-link-button-highlight-color);
}
.tile-bottom.read-more:hover .arrow {
transform: translateX(50%);
}
.tile-bottom.read-more .arrow {
filter: var(--byline-arrow-filter);
margin-left: 0.4em;
transition: 0.3s ease-out;
}
body.page-Main_Page.action-view .catlinks,
body.page-Main_Page.action-view #contentSub,
body.page-Main_Page.action-view #firstHeading,
body.page-Main_Page.action-view #siteNotice {
display: none;
}
body.page-Main_Page .mw-parser-output {
max-width: 75em;
margin: 0 auto;
}
body.page-Main_Page.action-view .catlinks,
body.page-Main_Page.action-view #contentSub,
body.page-Main_Page.action-view #siteNotice {
display: none;
}
.mainpage-header {
display: flex;
margin: 2.6em 1.75em 1.5em;
}
.mainpage-header .header-intro {
flex: 2;
}
.mainpage-header .header-intro h1 {
font-size: 2.5em;
font-weight: bold;
border: none;
margin: 0 0 0.15em;
}
.mainpage-header .header-intro p {
font-size: 1.1em;
line-height: 1.7em;
}
.mainpage-header .header-stats {
flex: 1;
display: flex;
justify-content: center;
align-items: center;
margin-top: -1em;
}
.mainpage-body {
display: grid;
grid-template-areas: "event event event" "update update update" "content content content" "left left right";
gap: 0.9rem;
grid-template-columns: repeat(3, 1fr);
}
.mainpage-body h2 a {
color: var(--text-color);
}
.mainpage-body .tile {
padding-left: 1.75em;
padding-right: 1.75em;
max-width: 100%;
}
.mainpage-body .tile-row {
width: 100%;
margin-bottom: 0;
}
.mainpage-body .tile-row {
display: grid;
gap: 0.9rem;
}
.mainpage-contents.tile-row {
display: flex;
}
.mainpage-contents.tile-row .tile-top {
height: 5.5rem;
}
.mainpage-left {
grid-area: left;
flex: 2;
display: flex;
flex-flow: column wrap;
}
.mainpage-left > * {
margin: 0 0 0.9rem;
}
.mainpage-right {
grid-area: right;
flex: 1;
display: flex;
flex-flow: column wrap;
}
.mainpage-right > * {
margin: 0 0 0.9rem;
}
.arrow {
background: url('filepath://White-chevron.svg') no-repeat;
display: inline-block;
height: 0.7rem;
width: 0.45rem;
vertical-align: middle;
}
.arrow.dark {
filter: invert(80%);
}
.mainpage-contents {
grid-area: content;
grid-template-columns: repeat(6, 1fr);
}
.mainpage-contents .tile-halves {
flex: 1;
}
.mainpage-contents .tile-top {
height: 4.5rem;
position: relative;
}
.mainpage-contents .tile-top.tile-image img {
height: auto;
}
.mainpage-contents h2 {
margin: 0;
padding: 0;
}
.mainpage-contents .tile-bottom.link-button a {
padding: 0.75em 0.2em;
}
.popular-pages ul {
display: grid;
grid-template-columns: repeat(3, 1fr);
grid-gap: 0.6em;
margin: 1em 0 0.7em 0;
}
.mp-popular-page-light {
display: flex;
align-items: center;
background-color: var(--button-background);
transition: 100ms;
}
.mp-popular-page-light a {
flex: 1;
display: block;
color: #fff;
font-weight: bold;
text-align: center;
text-decoration: none;
padding: 0.7em 1em;
}
.mp-popular-page-light:hover {
filter: brightness(115%);
transition: 100ms;
}
.mainpage-social {
border: none;
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.3);
}
.mainpage-social .tile-top {
display: flex;
align-items: center;
padding: 1em 1.5em;
}
.mainpage-social .tile-top a {
flex: 1;
position: relative;
text-decoration: none;
}
.mainpage-social .tile-top a:hover .arrow {
transform: translateX(50%);
}
.mainpage-social .tile-bottom {
border: none;
padding: 1em 1.75em;
}
.mainpage-social .tile-bottom p {
color: #fff;
font-weight: bold;
font-size: 0.9em;
text-align: center;
text-transform: uppercase;
letter-spacing: 0.03em;
margin: 0;
}
.mainpage-social .social-icon {
margin-right: 0.75em;
text-align: center;
width: 60px;
}
.mainpage-social .social-header {
color: #fff;
font-weight: bold;
font-size: 1.15em;
margin: 0.5em 0 -0.15em;
}
.mainpage-social .server-tagline {
color: rgba(255, 255, 255, 0.9);
margin-bottom: 0.5em;
}
.mainpage-social .arrow {
position: absolute;
top: calc(50% - .5em);
right: 0;
height: 1em;
width: 0.7em;
background-size: 0.7em 1em;
transition: 0.3s ease-out;
}
.mainpage-social.mainpage-discord .tile-top {
background: #5865f2;
}
.mainpage-social.mainpage-discord .tile-bottom {
background: #525ee0;
}
.mainpage-social.mainpage-twitter .tile-top {
background: #15202b;
}
.mainpage-social.mainpage-twitter .tile-bottom {
background: #121c26;
}
.mainpage-editing {
border: none;
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.3);
}
.mainpage-editing .tile-top {
background: #438ab5;
}
.mainpage-editing .tile-bottom {
background: #3980ab;
border: none;
padding: 0.8rem 1.5rem 0.4rem;
}
.mainpage-editing h2,
.mainpage-editing a {
color: #fff;
}
.mainpage-editing p {
color: rgba(255, 255, 255, 0.9);
}
.mainpage-editing ul {
list-style-image: url('filepath://Transparent-chevron.svg');
}
@media only screen and (max-width: 1200px) {
.mainpage-contents {
grid-template-columns: repeat(3, 1fr);
}
}
@media only screen and (max-width: 1000px) {
.mainpage-body {
grid-template-areas: "event event event" "update update update" "content content content" "left left left" "right right right";
}
.mainpage-recent-updates {
grid-template-columns: repeat(2, 1fr);
}
.mainpage-recent-updates .tile-halves:last-child {
display: none;
}
.mainpage-recent-updates .tile-halves:hover .tile-top img {
transform: scale(1.04);
}
.mainpage-recent-updates .tile-top {
height: 18vw;
min-height: 9em;
}
.mainpage-header .header-stats {
display: none;
}
.mainpage-left > *:last-child,
.mainpage-right > *:last-child {
margin-bottom: 0;
}
.popular-pages ul {
grid-template-columns: repeat(2, 1fr);
}
}
@media only screen and (max-width: 720px) {
.mainpage-recent-updates {
grid-template-columns: none;
}
.mainpage-recent-updates .tile-halves:last-child {
display: flex;
}
.mainpage-contents {
grid-template-columns: repeat(2, 1fr);
}
}
.mw-prefs-buttons {
background-color: var(--body-main);
border-top-color: var(--body-border);
box-shadow: none;
}
.mw-prefs-tabs-wrapper.oo-ui-panelLayout-framed,
.mw-prefs-tabs > .oo-ui-menuLayout-content > .oo-ui-indexLayout-stackLayout > .oo-ui-tabPanelLayout {
border-color: var(--body-border);
}
.mw-htmlform-ooui .mw-htmlform-matrix tbody tr:nth-child(even) td {
background-color: var(--body-light);
}
.mw-htmlform-ooui .mw-htmlform-matrix tbody tr:hover td {
background-color: var(--body-mid);
}
:root {
--rc-positive-color: #407813;
--rc-negative-color: #b41e0f;
}
.mw-plusminus-pos {
color: var(--rc-positive-color);
}
.mw-plusminus-neg {
color: var(--rc-negative-color);
}
.client-js .mw-recentchanges-toplinks:not(.mw-recentchanges-toplinks-collapsed) {
border-color: var(--body-border);
background-color: var(--body-light);
border-radius: 2px;
}
.mw-rcfilters-ui-filterTagMultiselectWidget-wrapper-content-title {
color: var(--text-color);
}
.mw-rcfilters-ui-filterTagMultiselectWidget-emptyFilters {
color: var(--byline-color);
}
.mw-rcfilters-ui-filterTagMultiselectWidget.oo-ui-widget-enabled .oo-ui-tagMultiselectWidget-handle {
background-color: var(--ooui-interface);
border-color: var(--ooui-interface-border);
}
.mw-rcfilters-ui-filterTagMultiselectWidget-views-select-widget.oo-ui-widget {
border-color: var(--ooui-interface-border);
}
.mw-rcfilters-collapsed .mw-rcfilters-ui-filterTagMultiselectWidget {
border-bottom-color: var(--ooui-interface-border);
}
.mw-rcfilters-ui-menuSelectWidget-footer {
background-color: var(--ooui-interface);
border-color: var(--ooui-interface-border);
}
.mw-rcfilters-ui-viewSwitchWidget label.oo-ui-labelWidget {
color: var(--byline-color);
}
.mw-rcfilters-ui-tagItemWidget-popup-content {
color: var(--ooui-text);
}
.mw-changeslist-legend,
.mw-rcfilters-ui-changesListWrapperWidget .mw-changeslist-legend {
background-color: var(--body-light);
border-color: var(--body-dark);
}
.mw-rcfilters-ui-changesListWrapperWidget-previousChangesIndicator {
border-color: var(--sidebar);
}
.client-js .mw-changeslist ul,
.client-js .mw-changeslist table.mw-enhanced-rc {
margin-left: 0;
}
.mw-rcfilters-ui-watchlistTopSectionWidget-separator {
border-color: var(--sidebar);
}
.mw-rcfilters-ui-itemMenuOptionWidget-header {
border-bottom-color: var(--ooui-interface);
background-color: var(--ooui-interface-border);
}
.mw-rcfilters-ui-itemMenuOptionWidget:not(:last-child):not(.mw-rcfilters-ui-itemMenuOptionWidget-identifier-talk) {
border-bottom-color: var(--ooui-normal-border);
}
.mw-rcfilters-ui-itemMenuOptionWidget-label-title,
.mw-rcfilters-ui-itemMenuOptionWidget-label-desc {
color: var(--text-color);
}
.mw-rcfilters-ui-filterMenuOptionWidget.oo-ui-flaggedElement-muted:not(.oo-ui-optionWidget-selected) {
background-color: var(--body-main);
}
.mw-rcfilters-ui-filterMenuOptionWidget.oo-ui-flaggedElement-muted .mw-rcfilters-ui-itemMenuOptionWidget-label-title,
.mw-rcfilters-ui-filterMenuOptionWidget.oo-ui-flaggedElement-muted .mw-rcfilters-ui-itemMenuOptionWidget-label-desc {
color: var(--subtle-color);
}
.mw-rcfilters-ui-filterMenuSectionOptionWidget {
background-color: var(--body-mid);
}
.mw-rcfilters-ui-filterMenuSectionOptionWidget-header-title.oo-ui-labelElement-label {
color: var(--ooui-text);
}
.mw-rcfilters-ui-filterMenuHeaderWidget-title {
color: var(--ooui-text);
}
.mw-rcfilters-ui-filterMenuHeaderWidget-header {
border-bottom-color: var(--ooui-interface-border);
background-color: var(--ooui-interface);
}
.mw-rcfilters-ui-itemMenuOptionWidget-view-namespaces {
border-top-color: var(--ooui-interface-border);
}
.mw-rcfilters-ui-datePopupWidget {
border-color: var(--ooui-interface-border);
}
.mw-rcfilters-ui-datePopupWidget .mw-rcfilters-ui-valuePickerWidget-title {
color: var(--byline-color);
}
.mw-rcfilters-ui-savedLinksListItemWidget-label {
color: var(--ooui-accent);
}
.client-js .mw-changeslist.mw-rcfilters-ui-changesListWrapperWidget-highlighted ul,
.client-js .mw-changeslist.mw-rcfilters-ui-changesListWrapperWidget-highlighted table.mw-enhanced-rc {
margin-left: 1.5em;
}
.page-Special_CreateAccount .mw-ui-container,
.page-Special_UserLogin .mw-ui-container {
max-width: 64rem;
margin: 0 auto;
}
.mw-number-text {
color: var(--byline-color);
}
.mw-body-content .mw-number-text h3 {
color: var(--text-color);
}
#mw-indicator-mw-helplink a {
background: none;
padding: 0;
display: flex;
align-items: center;
}
#mw-indicator-mw-helplink a::before {
content: '';
margin-right: 5px;
-webkit-mask: url("/resources/src/mediawiki.helplink/images/helpNotice.svg?46d34") no-repeat 50% 50% / contain;
mask: url("/resources/src/mediawiki.helplink/images/helpNotice.svg?46d34") no-repeat 50% 50% / contain;
background: var(--text-color);
height: 20px;
width: 20px;
}
.results-info {
color: inherit;
}
.mw-search-profile-tabs {
background-color: var(--body-mid);
border-color: transparent;
}
.search-types .current a {
color: inherit;
}
#mw-searchoptions {
background-color: var(--body-mid);
border-color: transparent;
}
#mw-searchoptions .divider {
border-color: var(--body-border);
}
#mw-searchoptions h4 {
font-family: inherit;
}
#mw-searchoptions .oo-ui-labelElement:nth-of-type(odd) {
font-weight: bold;
}
.searchresult {
line-height: 1.5;
}
.searchalttitle,
#mw-search-interwiki li {
font-size: 90%;
}
.mw-search-result-data {
color: var(--byline-color);
}
.page-Special_ListFiles a.image img {
width: inherit;
height: inherit;
}
.page-Special_ListFiles .TablePager_col_thumb {
text-align: center;
}
#editcount table[border="1"] {
background-color: var(--body-main) !important;
border-color: var(--wikitable-border) !important;
margin-top: 0.5em;
}
#editcount table[border="1"] th,
#editcount table[border="1"] td {
padding: 0.2em 0.4em;
}
#editcount table[border="1"] th {
background-color: var(--wikitable-header-bg);
border: 1px solid var(--wikitable-border);
}
#editcount table[border="1"] td {
border: 1px solid var(--wikitable-border);
}
#editcount table[border="1"] tr:nth-child(odd) {
background-color: var(--body-light);
}
.mw-echo-ui-notificationBadgeButtonPopupWidget-popup > .oo-ui-popupWidget-popup .mw-echo-ui-placeholderItemWidget {
background-color: inherit;
}
table.mw-interwikitable.body td.mw-interwikitable-local-yes {
background-color: var(--table-yes-background);
color: var(--table-yes-color);
}
.mw-protectedpages-unknown {
color: var(--byline-color);
}
.watchlistredir,
.allpagesredirect {
font-style: italic;
}
.allpagesredirect:after {
color: var(--byline-color);
content: " (redirect)";
}
.mw-apisandbox-toolbar {
background: var(--body-main);
}
.oo-ui-menuOptionWidget .mw-apisandbox-flag {
color: var(--byline-color);
}
tr.mw-abusefilter-list-disabled,
tr.mw-abusefilter-list-disabled td {
color: var(--byline-color);
}
table.mw-abuselog-details {
background: var(--wikitable-bg);
border-color: var(--wikitable-border);
}
table.mw-abuselog-details th {
background: var(--wikitable-header-bg);
}
table.mw-abuselog-details th,
table.mw-abuselog-details td {
border-color: var(--wikitable-border);
}
.mw-abusefilter-log-hidden-entry {
color: var(--subtle-color);
}
body td.mw-abusefilter-history-changed {
background: var(--table-no-background);
}
div.mw-abusefilter-editor,
#mw-abusefilter-warn-preview,
#mw-abusefilter-disallow-preview {
border-color: var(--ooui-input-border);
}
.mw-destfile-warning {
border-color: var(--warningbox-border);
color: var(--text-color);
background-color: var(--warningbox-bg);
}
span.fileinput-button {
background-color: var(--ooui-normal);
border-color: var(--ooui-normal-border);
color: var(--ooui-text);
}
ul.fileupload-results li.ful-success {
background-color: var(--successbox-bg);
}
ul.fileupload-results li.ful-success a {
color: var(--link-color);
}
ul.fileupload-results li.ful-error {
background-color: var(--errorbox-bg);
}
#t-print,
#t-permalink {
display: none;
}
#filetoc {
border-radius: 2px;
background: var(--body-mid);
border-color: transparent;
margin: 0.5em auto;
text-align: center;
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
}
li.gallerybox div.thumb {
border: none;
background-color: var(--thumb-bg);
}
.smwfact {
display: none;
}
.list-header {
background-color: var(--body-mid);
color: inherit;
}
.editOptions {
color: var(--text-color);
background-color: var(--sourceeditor-background-secondary);
border-color: var(--sourceeditor-border);
}
.mw-json th,
.mw-json td {
border-color: var(--wikitable-border);
}
.mw-json td {
background: var(--wikitable-bg);
}
.mw-json th {
background: var(--wikitable-header-bg);
}
65babffab1a71018fb15a89113d7ee06c6eeb3b7
1572
1569
2024-03-27T01:59:24Z
Merds
25
Updating CSS from [[MediaWiki:Common.less]]
css
text/css
/* <pre> */
:root {
--body-main: #feffff;
--body-light: #fff8ee;
--body-mid: #d0bd97;
--body-dark: #b1886f;
--body-border: #d1b9ad;
--body-background-color: #173a4d;
--button-background: #605443;
--button-color: #fff;
--button-border: #3c352a;
--button-dark: #18140c;
--button-light: #3a301d;
--sidebar: #cfc08d;
--background-text-color: #e2dbc8;
--background-link-color: #e2bd8a;
--search-box: #efeee6;
--link-color: #936039;
--redlink-color: #ba0000;
--text-color: #2F2828;
--byline-color: #ccc;
--subtle-color: #777;
--admin-blue: #332e75;
--bearcat-green: #13592e;
--awb-purple: #933b96;
--rsw-blue: #438ab6;
--osrsw-brown: #605443;
--thumb-bg: var(--body-light);
--thumb-caption-bg: var(--body-mid);
--sourceeditor-input-background: #fff;
--sourceeditor-background: var(--body-light);
--sourceeditor-background-secondary: var(--body-light);
--sourceeditor-border: var(--body-mid);
--codemirror-gutter-background: var(--body-mid);
}
@font-face {
font-family: 'Lora';
font-weight: 400 700;
font-style: normal;
font-display: swap;
src: url('filepath://Lora.woff2') format('woff2');
}
@font-face {
font-family: 'Lora';
font-weight: 400 700;
font-style: italic;
font-display: swap;
src: url('filepath://Lora-Italic.woff2') format('woff2');
}
:root {
--base-text-color: #36414f;
--base-heading-color: #444e5a;
--base-heading-border: #e4eaee;
--mw-code-background-color: #ddd4bb;
--body-background-image: url('filepath://Wiki_background.jpg');
}
#mw-page-base {
background: none;
}
.mw-body {
background-color: var(--body-main);
color: var(--text-color);
border-color: transparent;
box-shadow: 0 0 7px rgba(0, 0, 0, 0.15);
margin-top: 0;
}
h1,
h2,
h3,
h4,
h5,
h6 {
color: var(--text-color);
}
h1,
h2 {
border-color: var(--sidebar);
}
.mw-body h1,
.mw-body-content h1,
.mw-body-content h2,
.mw-body-content h3,
.mw-body-content h4,
.mw-body-content h5,
.mw-body-content h6 {
font-family: 'Lora', 'Palatino', 'Georgia', serif;
}
.mw-parser-output h2:first-of-type {
clear: left;
}
.mw-footer {
color: var(--background-text-color);
}
.mw-footer li {
color: var(--background-text-color);
}
.mw-footer a,
.mw-footer a:active,
.mw-footer a:visited {
color: var(--background-link-color);
}
::placeholder {
color: var(--subtle-color);
}
a {
color: var(--link-color);
}
a:visited,
a:active {
color: var(--link-color);
}
a.new {
color: var(--redlink-color);
}
a.new:visited {
color: var(--redlink-color);
}
.mw-parser-output a.extiw,
.mw-parser-output a.external {
color: var(--link-color);
}
.mw-parser-output a.extiw:visited,
.mw-parser-output a.external:visited,
.mw-parser-output a.extiw:active,
.mw-parser-output a.external:active {
color: var(--link-color);
}
.jsPurgeLink a.external {
color: var(--link-color);
}
:root {
--errorbox-bg: #feecea;
--errorbox-border: #ee4231;
--warningbox-bg: #fef9de;
--warningbox-border: #f9d000;
--successbox-bg: #ecf8e3;
--successbox-border: #6bc71f;
}
.mw-message-box-error,
.errorbox,
.mw-message-box-warning,
.warningbox,
.mw-message-box-success,
.successbox,
.usermessage {
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
}
.mw-message-box-error,
.errorbox {
background-color: var(--errorbox-bg);
border-color: var(--errorbox-border);
}
.mw-message-box-warning,
.warningbox,
.usermessage {
background-color: var(--warningbox-bg);
border-color: var(--warningbox-border);
}
.mw-message-box-success,
.successbox {
background-color: var(--successbox-bg);
border-color: var(--successbox-border);
}
.catlinks {
background: var(--body-light);
border: 1px solid var(--body-dark);
padding: 8px 15px;
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
}
.catlinks li {
border-color: var(--body-mid);
}
.filehistory a img,
#file img {
background: url("data:image/svg+xml,%3C%3Fxml version='1.0' encoding='UTF-8'%3F%3E%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16'%3E%3Cpath d='M0 0h8v16h8V8H0z' opacity='.13'/%3E%3C/svg%3E") repeat;
}
#file img:hover {
background: none;
}
.mw-highlight {
background: none;
}
.mw-highlight .linenos {
background-color: var(--mw-code-background-color);
color: var(--byline-color);
}
.mw-highlight a:hover .linenos,
.mw-highlight .hll a .linenos {
color: var(--text-color);
}
.mw-content-ltr.mw-highlight-lines pre,
.mw-content-ltr.content .mw-highlight-lines pre {
box-shadow: inset 2.75em 0 0 var(--mw-code-background-color);
}
#pagehistory ul {
list-style: none;
margin: 0;
}
#pagehistory li {
border: 1px solid transparent;
padding: 1px 10px;
margin: 2px 0;
}
#pagehistory li.selected {
background-color: var(--body-light);
color: inherit;
border: 1px dashed var(--body-border);
outline: none;
}
#mw-history-compare > div:first-of-type {
position: -webkit-sticky;
position: sticky;
top: 0;
background-color: var(--body-main);
border-bottom: 1px solid var(--body-dark);
padding: 0.25em 0;
}
.wgl-stickyheader #mw-history-compare > div:first-of-type {
top: 2.5rem;
}
.autocomment,
.autocomment a,
.autocomment a:visited {
color: var(--link-color);
}
li span.deleted,
span.history-deleted {
color: var(--byline-color);
}
.mw-usertoollinks-contribs-no-edits,
.mw-usertoollinks-contribs-no-edits:visited {
color: var(--redlink-color);
}
.CategoryTreeToggle {
color: var(--link-color);
}
body.wgl-stickyheader.action-view .mw-headline:target::before {
display: block;
content: '';
margin-top: -3rem;
height: 3rem;
visibility: hidden;
pointer-events: none;
}
.mw-mmv-post-image {
color: var(--text-color);
background-color: var(--body-main);
}
.mw-mmv-image-metadata {
border-top-color: var(--body-mid);
background-color: var(--body-light);
}
.mw-mmv-dialog,
.mw-mmv-dialog .mw-mmv-dialog-down-arrow,
.mw-mmv-options-dialog .mw-mmv-dialog-down-arrow {
background-color: var(--body-light);
box-shadow: none;
}
.mw-mmv-options-enable-alert {
background-color: var(--body-light);
color: var(--text-color);
}
.mw-mmv-options-dialog-header,
.mw-mmv-options-text-header,
.mw-mmv-options-text-body,
.mw-mmv-options-enable-alert,
.mw-mmv-options-dialog .mw-mmv-disable-confirmation .mw-mmv-options-dialog-header,
.mw-mmv-options-dialog .mw-mmv-disable-confirmation .mw-mmv-options-text-header {
color: var(--text-color);
}
.mw-revslider-container {
border-color: var(--sidebar);
}
.mw-revslider-slider-wrapper {
border-top-color: var(--sidebar);
}
.mw-ui-button {
background-color: var(--ooui-normal);
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
}
.mw-ui-button:not(:disabled):hover,
.mw-ui-button:not(:disabled):active {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
}
.mw-ui-button:not(:disabled):focus {
color: var(--ooui-text);
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent), inset 0 0 0 2px #fff;
}
.mw-ui-button:not(:disabled):visited {
color: var(--ooui-text);
}
.mw-ui-button.mw-ui-progressive:not(:disabled) {
background-color: var(--ooui-progressive);
color: #fff;
border-color: var(--ooui-progressive);
}
.mw-ui-button.mw-ui-progressive:not(:disabled):hover {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
}
.mw-ui-button.mw-ui-progressive:not(:disabled):focus {
box-shadow: inset 0 0 0 1px var(--ooui-accent), inset 0 0 0 2px #fff;
}
.mw-ui-button.mw-ui-progressive:not(:disabled):active,
.mw-ui-button.mw-ui-progressive:not(:disabled).is-on {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
box-shadow: none;
}
.mw-ui-button.mw-ui-destructive:not( :disabled ) {
color: #fff;
}
.mw-ui-button.mw-ui-quiet,
.mw-ui-button.mw-ui-quiet.mw-ui-progressive,
.mw-ui-button.mw-ui-quiet.mw-ui-destructive {
color: var(--text-color);
}
input[type='checkbox']:hover + .mw-ui-button.mw-ui-quiet,
input[type='checkbox']:hover + .mw-ui-button.mw-ui-quiet.mw-ui-progressive,
input[type='checkbox']:hover + .mw-ui-button.mw-ui-quiet.mw-ui-destructive,
.mw-ui-button.mw-ui-quiet:hover,
.mw-ui-button.mw-ui-quiet.mw-ui-progressive:hover,
.mw-ui-button.mw-ui-quiet.mw-ui-destructive:hover {
background-color: rgba(0, 24, 73, 0.02745098);
color: var(--text-color);
border-color: transparent;
}
input[type='checkbox']:focus + .mw-ui-button.mw-ui-quiet,
input[type='checkbox']:focus + .mw-ui-button.mw-ui-quiet.mw-ui-progressive,
input[type='checkbox']:focus + .mw-ui-button.mw-ui-quiet.mw-ui-destructive,
.mw-ui-button.mw-ui-quiet:focus,
.mw-ui-button.mw-ui-quiet.mw-ui-progressive:focus,
.mw-ui-button.mw-ui-quiet.mw-ui-destructive:focus {
color: var(--text-color);
}
input[type='checkbox']:active + .mw-ui-button.mw-ui-quiet,
input[type='checkbox']:active + .mw-ui-button.mw-ui-quiet.mw-ui-progressive,
input[type='checkbox']:active + .mw-ui-button.mw-ui-quiet.mw-ui-destructive,
.mw-ui-button.mw-ui-quiet:active,
.mw-ui-button.mw-ui-quiet.mw-ui-progressive:active,
.mw-ui-button.mw-ui-quiet.mw-ui-destructive:active {
background-color: rgba(0, 36, 73, 0.08235294);
color: var(--text-color);
border-color: #72777d;
}
.mw-ui-input {
background-color: var(--ooui-input);
color: var(--text-color);
border-color: var(--ooui-input-border);
}
.mw-ui-input:hover {
border-color: var(--ooui-input-border--hover);
}
.mw-ui-input::placeholder {
color: var(--byline-color);
}
.mw-content-ltr .redirectText li:first-child {
padding: 0;
background: 0;
}
.mw-content-ltr .redirectText li:first-child::before {
content: '';
background: currentcolor;
-webkit-mask: url("filepath://Redirect-arrow.svg") no-repeat 50% 50% / contain;
mask: url("filepath://Redirect-arrow.svg") no-repeat 50% 50% / contain;
display: inline-block;
width: 47px;
height: 20px;
}
.vector-search-box-inner {
background: var(--body-main) !important;
box-shadow: inset 0 -7px 7px -7px rgba(0, 0, 0, 0.15) !important;
}
.vector-menu-dropdown .vector-menu-heading {
color: #937040 !important;
}
.vector-menu-dropdown .vector-menu-heading:hover {
color: #937040 !important;
}
.vector-menu-dropdown .vector-menu-heading:focus {
color: #937040 !important;
}
:root {
--wikitable-header-bg: var(--body-dark);
--wikitable-border: var(--body-border);
--wikitable-bg: var(--body-light);
--wikitable-bg-lighter: #e9e3d6;
--wikitable-color: var(--text-color);
--table-na-background: rgba(255, 255, 255, 0.3);
--table-na-color: var(--subtle-color);
--table-yes-background: #c3e8a3;
--table-yes-color: #2e5e05;
--table-no-background: #fbc0ba;
--table-no-color: #801c13;
--table-maybe-background: #fcea94;
--table-maybe-color: #786300;
}
.wikitable {
background: var(--wikitable-bg);
color: var(--wikitable-color);
border-color: var(--wikitable-border);
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
}
.wikitable > tr > th,
.wikitable > tr > td,
.wikitable > * > tr > th,
.wikitable > * > tr > td {
border-color: var(--wikitable-border);
}
.wikitable > tr > th.table-noborder,
.wikitable > tr > td.table-noborder,
.wikitable > * > tr > th.table-noborder,
.wikitable > * > tr > td.table-noborder {
border-left-style: hidden;
border-right-style: hidden;
padding-left: 0;
padding-right: 0;
}
.wikitable > tr > th,
.wikitable > * > tr > th {
background-color: var(--wikitable-header-bg);
color: #fff;
}
.tabber .wikitable {
box-shadow: none;
}
.mw_metadata td,
.mw_metadata th {
border-color: var(--wikitable-border);
}
.mw_metadata th {
background-color: var(--wikitable-header-bg);
}
.mw_metadata td {
background-color: var(--wikitable-bg);
}
.mw-datatable {
border-color: var(--wikitable-border);
}
.mw-datatable td,
.mw-datatable th {
border-color: var(--wikitable-border);
}
.mw-datatable th {
background-color: var(--wikitable-header-bg);
}
.mw-datatable td {
background-color: var(--wikitable-bg);
}
.mw-datatable tr:hover td {
background-color: var(--wikitable-bg);
}
table.alternating-rows tr:nth-child(odd),
table.alternating-cols td:nth-child(odd) {
background: var(--wikitable-alternating-bg);
}
.table-na {
background: var(--table-na-background);
color: var(--table-na-color);
vertical-align: middle;
text-align: center;
}
.table-yes {
background: var(--table-yes-background);
color: var(--table-yes-color);
}
.table-positive {
background: var(--table-yes-background);
}
.table-no {
background: var(--table-no-background);
color: var(--table-no-color);
}
.table-negative {
background: var(--table-no-background);
}
.table-maybe {
background: var(--table-maybe-background);
color: var(--table-maybe-color);
}
#mw-allmessagestable .am_actual,
#mw-allmessagestable .am_default {
background-color: var(--wikitable-bg);
}
#mw-allmessagestable .am_default:hover,
#mw-allmessagestable .am_actual:hover,
#mw-allmessagestable tbody:hover td {
background-color: var(--wikitable-bg-lighter);
}
table.wikitable td.no-cell-spacing {
padding: 0;
height: 0;
}
table.wikitable td.no-cell-spacing table {
margin: -1px;
width: calc(100% + 2px);
height: calc(100% + 2px);
}
.plainlist ol,
.plainlist ul {
margin: 0;
}
.plainlist li {
margin-bottom: 0;
list-style: none;
}
table.align-right-1 td:nth-of-type(1),
table.align-right-2 td:nth-of-type(2),
table.align-right-3 td:nth-of-type(3),
table.align-right-4 td:nth-of-type(4),
table.align-right-5 td:nth-of-type(5),
table.align-right-6 td:nth-of-type(6),
table.align-right-7 td:nth-of-type(7),
table.align-right-8 td:nth-of-type(8),
table.align-right-9 td:nth-of-type(9),
table.align-right-10 td:nth-of-type(10),
table.align-right-11 td:nth-of-type(11),
table.align-right-12 td:nth-of-type(12),
table.align-right-13 td:nth-of-type(13),
table.align-right-14 td:nth-of-type(14),
table.align-right-15 td:nth-of-type(15),
table.align-right-16 td:nth-of-type(16),
table.align-right-17 td:nth-of-type(17),
table.align-right-18 td:nth-of-type(18),
table.align-right-19 td:nth-of-type(19),
table.align-right-20 td:nth-of-type(20) {
text-align: right;
}
table.align-center-1 td:nth-of-type(1),
table.align-center-2 td:nth-of-type(2),
table.align-center-3 td:nth-of-type(3),
table.align-center-4 td:nth-of-type(4),
table.align-center-5 td:nth-of-type(5),
table.align-center-6 td:nth-of-type(6),
table.align-center-7 td:nth-of-type(7),
table.align-center-8 td:nth-of-type(8),
table.align-center-9 td:nth-of-type(9),
table.align-center-10 td:nth-of-type(10),
table.align-center-11 td:nth-of-type(11),
table.align-center-12 td:nth-of-type(12),
table.align-center-13 td:nth-of-type(13),
table.align-center-14 td:nth-of-type(14),
table.align-center-15 td:nth-of-type(15),
table.align-center-16 td:nth-of-type(16),
table.align-center-17 td:nth-of-type(17),
table.align-center-18 td:nth-of-type(18),
table.align-center-19 td:nth-of-type(19),
table.align-center-20 td:nth-of-type(20) {
text-align: center;
}
table.align-left-1 td:nth-of-type(1),
table.align-left-2 td:nth-of-type(2),
table.align-left-3 td:nth-of-type(3),
table.align-left-4 td:nth-of-type(4),
table.align-left-5 td:nth-of-type(5),
table.align-left-6 td:nth-of-type(6),
table.align-left-7 td:nth-of-type(7),
table.align-left-8 td:nth-of-type(8),
table.align-left-9 td:nth-of-type(9),
table.align-left-10 td:nth-of-type(10),
table.align-left-11 td:nth-of-type(11),
table.align-left-12 td:nth-of-type(12),
table.align-left-13 td:nth-of-type(13),
table.align-left-14 td:nth-of-type(14),
table.align-left-15 td:nth-of-type(15),
table.align-left-16 td:nth-of-type(16),
table.align-left-17 td:nth-of-type(17),
table.align-left-18 td:nth-of-type(18),
table.align-left-19 td:nth-of-type(19),
table.align-left-20 td:nth-of-type(20) {
text-align: left;
}
:root {
--diff-addedline-border-color: #438ab5;
--diff-addedline-background: #bddff2;
--diff-addedline-color: #000;
--diff-deletedline-border-color: #379541;
--diff-deletedline-background: #c1edbf;
--diff-deletedline-color: #000;
--diff-context-border-color: var(--body-mid);
--diff-context-background: var(--body-mid);
}
.diff-context {
border-color: var(--diff-context-border-color);
background: var(--diff-context-background);
color: inherit;
}
.diff-addedline {
border-color: var(--diff-addedline-border-color);
}
.diff-addedline .diffchange {
background: var(--diff-addedline-background);
color: var(--diff-addedline-color);
}
.diff-deletedline {
border-color: var(--diff-deletedline-border-color);
}
.diff-deletedline .diffchange {
background: var(--diff-deletedline-background);
color: var(--diff-deletedline-color);
}
.mw-diff-movedpara-left:after,
.mw-diff-movedpara-right:after {
color: var(--text-color);
}
.mw-notification {
background-color: var(--body-light);
border-color: var(--body-border);
color: var(--text-color);
}
.mw-echo-ui-notificationsInboxWidget-toolbarWrapper {
background: var(--body-main);
}
.mw-body-content .mw-echo-ui-datedSubGroupListWidget-title-secondary {
color: var(--byline-color);
}
.mw-echo-ui-pageNotificationsOptionWidget.oo-ui-optionWidget-selected {
background-color: var(--ooui-normal);
color: var(--ooui-accent);
}
.mw-echo-ui-pageNotificationsOptionWidget-label-count {
background-color: var(--ooui-normal);
color: var(--byline-color);
}
.oo-ui-optionWidget-selected .mw-echo-ui-pageNotificationsOptionWidget-label-count {
color: var(--ooui-accent);
}
.mw-echo-ui-pageNotificationsOptionWidget.oo-ui-optionWidget-highlighted {
background-color: var(--ooui-normal);
color: var(--text-color);
}
.mw-echo-ui-crossWikiUnreadFilterWidget {
border-color: var(--body-border);
}
.mw-echo-ui-crossWikiUnreadFilterWidget-subtitle {
color: var(--byline-color);
}
.mw-echo-ui-notificationBadgeButtonPopupWidget-popup > .oo-ui-popupWidget-popup > .oo-ui-popupWidget-head,
.mw-echo-ui-notificationBadgeButtonPopupWidget-popup > .oo-ui-popupWidget-popup > .oo-ui-popupWidget-footer {
border-color: var(--ooui-interface-border);
}
.mw-echo-ui-notificationBadgeButtonPopupWidget-popup > .oo-ui-popupWidget-popup > .oo-ui-popupWidget-footer .mw-echo-ui-notificationBadgeButtonPopupWidget-footer-buttons .oo-ui-buttonElement:last-child {
border-left-color: var(--ooui-normal-border);
}
.mw-echo-ui-notificationItemWidget {
background-color: var(--ooui-normal);
border-color: var(--ooui-normal-border);
}
.mw-echo-ui-notificationItemWidget:hover,
.mw-echo-ui-notificationItemWidget-unread:hover {
background-color: var(--ooui-normal--hover);
}
.mw-echo-ui-notificationItemWidget:last-child {
border-bottom-color: var(--ooui-normal-border);
}
.mw-echo-ui-notificationItemWidget-unread {
background-color: var(--search-box);
}
.mw-echo-ui-crossWikiNotificationItemWidget-group,
.mw-echo-ui-bundleNotificationItemWidget-group {
background-color: var(--ooui-interface);
}
.mw-echo-ui-toggleReadCircleButtonWidget-circle {
background-color: var(--ooui-progressive);
}
.mw-echo-ui-toggleReadCircleButtonWidget:hover .mw-echo-ui-toggleReadCircleButtonWidget-circle {
background-color: var(--ooui-progressive--hover);
}
.mw-echo-ui-toggleReadCircleButtonWidget-circle-unread {
background-color: var(--ooui-normal);
border-color: var(--ooui-normal-border);
}
.mw-echo-ui-notificationItemWidget-content-message-header,
.mw-echo-ui-notificationItemWidget-content-message-body,
.mw-echo-ui-menuItemWidget > .oo-ui-buttonElement-button > .oo-ui-labelElement-label,
.mw-echo-ui-notificationItemWidget-content-actions-timestamp {
color: var(--ooui-text);
}
.mw-echo-ui-bundleNotificationItemWidget-group {
background-color: var(--body-main);
}
@keyframes unseen-fadeout-to-unread {
from {
background-color: var(--wikitable-bg-lighter);
}
to {
background-color: var(--search-box);
}
}
@keyframes unseen-fadeout-to-read {
from {
background-color: var(--wikitable-bg-lighter);
}
to {
background-color: var(--body-main);
}
}
.mwe-popups {
background: var(--body-light);
}
.mwe-popups .mwe-popups-container {
color: var(--text-color);
background: var(--body-light);
}
.mwe-popups .mwe-popups-container.flipped-x-y:before,
.mwe-popups .mwe-popups-container.flipped-y:before {
border-top: none;
}
.mwe-popups .mwe-popups-container.mwe-popups-no-image-tri:before {
border-bottom: none;
}
.mwe-popups .mwe-popups-container.flipped-x-y:after,
.mwe-popups .mwe-popups-container.flipped-y:after {
border-top-color: var(--body-light);
}
.mwe-popups .mwe-popups-container.mwe-popups-no-image-tri:after {
border-bottom-color: var(--body-light);
}
.mwe-popups .mwe-popups-settings-icon:hover,
.mwe-popups .mwe-popups-settings-icon:active {
background-color: var(--ooui-normal--hover);
}
.mwe-popups .mw-ui-icon-element:not(.disabled):hover {
background: none;
}
.mwe-popups .mwe-popups-extract {
color: var(--text-color);
}
.mwe-popups .mwe-popups-extract[dir='ltr']:after {
background-image: linear-gradient(to right, rgba(49, 62, 89, 0), var(--body-light) 50%);
}
.mwe-popups-overlay {
background-color: var(--ooui-window-background);
}
#mwe-popups-settings {
background: var(--ooui-interface);
border-color: var(--ooui-interface-border);
color: var(--text-color);
}
#mwe-popups-settings header {
border-color: var(--ooui-interface-border);
}
#mwe-popups-settings main#mwe-popups-settings-form p {
color: var(--byline-color);
}
#mwe-popups-settings main#mwe-popups-settings-form form label > span {
color: var(--ooui-text);
}
:root {
--smw-ask-options-even-bg: var(--body-mid);
--smw-ask-options-odd-bg: var(--body-light);
--smw-ask-action-btn-lblue-bg: var(--body-main);
--smw-ask-action-btn-lblue-color: #000;
--smw-ask-action-btn-lblue-border-color: var(--body-light);
--smw-ask-action-btn-dblue-bg: var(--body-light);
--smw-ask-action-btn-dblue-color: #fff;
--smw-ask-action-btn-dblue-border-color: var(--button-border);
}
.smw-ask-condition fieldset,
.smw-ask-printhead fieldset {
border-color: var(--sidebar);
}
.smw-ask-search fieldset,
.smw-ask-format fieldset,
.smw-ask-options fieldset {
border-color: var(--sidebar);
}
.strike > span:before,
.strike > span:after {
background: var(--sidebar);
}
.smw-ask-options-fields tr td {
background-color: var(--smw-ask-options-even-bg);
}
.smw-ask-options-fields tr:nth-child(odd) td {
background-color: var(--smw-ask-options-odd-bg);
}
.smw-ask-action-btn.smw-ask-action-btn-lblue,
.smw-ask-action-btn.smw-ask-action-btn-lblue:hover,
.smw-ask-action-btn.smw-ask-action-btn-lblue:visited {
background-color: var(--smw-ask-action-btn-lblue-bg);
color: var(--smw-ask-action-btn-lblue-color);
border-color: var(--smw-ask-action-btn-lblue-border-color);
}
.smw-ask-action-btn.smw-ask-action-btn-dblue,
.smw-ask-action-btn.smw-ask-action-btn-dblue:hover,
.smw-ask-action-btn.smw-ask-action-btn-dblue:visited {
background-color: var(--smw-ask-action-btn-dblue-bg);
color: var(--smw-ask-action-btn-dblue-color);
border-color: var(--smw-ask-action-btn-dblue-border-color);
}
.smw-ask-query textarea,
.smw-ask-actions textarea {
background-color: var(--ooui-interface);
border-color: var(--ooui-interface-border);
color: var(--ooui-text);
}
.smw-ask-query-format select {
background-color: var(--ooui-interface);
border: 1px solid var(--ooui-interface-border);
color: var(--ooui-text);
}
.smw-ask-toplinks {
background-color: var(--body-mid);
}
.smw-ask-toplinks span.smw-icon-info {
background: none;
padding: 0 !important;
}
.smw-ask-toplinks span.smw-icon-info::before {
content: '';
background: var(--text-color);
-webkit-mask: url("data:image/svg+xml,%3C%3Fxml version='1.0' encoding='UTF-8'%3F%3E%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 20 20'%3E%3Ctitle%3Einfo%3C/title%3E%3Cpath d='M10 0C4.477 0 0 4.477 0 10s4.477 10 10 10 10-4.477 10-10S15.523 0 10 0zM9 5h2v2H9zm0 4h2v6H9z'/%3E%3C/svg%3E") no-repeat 50% 50% / contain;
mask: url("data:image/svg+xml,%3C%3Fxml version='1.0' encoding='UTF-8'%3F%3E%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 20 20'%3E%3Ctitle%3Einfo%3C/title%3E%3Cpath d='M10 0C4.477 0 0 4.477 0 10s4.477 10 10 10 10-4.477 10-10S15.523 0 10 0zM9 5h2v2H9zm0 4h2v6H9z'/%3E%3C/svg%3E") no-repeat 50% 50% / contain;
padding: 0 0 3px 18px;
}
.smw-ask-options-row-odd {
background-color: var(--body-light);
}
.smw-ask-options-row-even {
background-color: var(--body-mid);
}
#options-toggle:not(:checked) + #options-list .options-parameter-list:after {
background-image: linear-gradient(to bottom, transparent, var(--body-mid) 90%);
}
.smw-ask-button-submit input {
background-color: var(--ooui-normal);
border-color: var(--ooui-normal-border);
color: var(--text-color);
}
.smw-ask-button-submit input:hover,
.smw-ask-button-lgrey:hover {
background-color: var(--ooui-normal--hover);
border-color: var(--ooui-normal-border);
}
input.smw-ask-action-btn.smw-ask-action-btn-dblue {
background-color: var(--ooui-normal);
border-color: var(--ooui-normal-border);
color: var(--ooui-text);
}
a.smw-ask-action-btn.smw-ask-action-btn-lblue {
background-color: var(--body-mid);
border-color: var(--body-mid);
color: var(--ooui-text);
}
a.smw-ask-action-btn.smw-ask-action-btn-lblue:visited {
background-color: var(--body-mid);
border-color: var(--body-mid);
color: var(--ooui-text);
}
a.smw-ask-action-btn.smw-ask-action-btn-lblue:hover {
background-color: var(--body-mid);
border-color: var(--body-mid);
color: var(--ooui-text);
}
a.smw-ask-action-btn-lgrey {
background-color: var(--ooui-normal);
border-color: var(--ooui-normal-border);
color: var(--ooui-text);
}
a.smw-ask-action-btn-lgrey:hover {
background-color: var(--ooui-normal--hover);
border-color: var(--ooui-normal-border);
color: var(--ooui-text);
}
.smw-callout-error {
background-color: var(--errorbox-bg);
border-color: var(--errorbox-border);
}
.smw-callout-info {
background-color: var(--body-light);
border-color: var(--body-dark);
}
.smw-callout-success {
background-color: var(--successbox-bg);
border-color: var(--successbox-border);
}
.smw-callout-warning {
background-color: var(--warningbox-bg);
border-color: var(--warningbox-bg);
}
.smw-tabs input.nav-tab:checked + label.nav-label,
.smw-tabs input.nav-tab:checked + label.nav-label:hover {
color: inherit;
}
#tab-smw-property-value:checked + label.nav-label .usage-count {
color: #fff;
background-color: var(--ooui-progressive);
}
#tab-smw-property-value:checked + label.nav-label .usage-count.moderate {
color: #fff;
background-color: #b55e0c;
border-color: #b55e0c;
}
#tab-smw-property-value:checked + label.nav-label .usage-count.high {
color: #fff;
background-color: #9f261e;
border-color: #9f261e;
}
.smw-property-page-results .header-title {
background-color: var(--ooui-interface);
border-bottom-color: var(--ooui-interface-border);
color: var(--ooui-text);
}
.smw-property-page-results .value-row:hover {
background-color: var(--ooui-normal--hover);
}
.smw-property-page-results .smw-table .header-row {
color: var(--text-color);
}
.tippy-tooltip.light-border-theme {
background-color: var(--body-light);
color: var(--text-color);
}
.tippy-tooltip.light-border-theme .tippy-arrow {
border-top-color: var(--body-light);
}
.tippy-tooltip.light-border-theme .tippy-arrow:after {
border-top-color: var(--body-light);
}
.tippy-header {
background-color: var(--body-dark);
border-bottom-color: var(--body-mid);
}
.smw-ui-input-filter {
background-color: var(--ooui-interface);
border-color: var(--ooui-interface-border);
color: var(--ooui-text);
}
.smw-ui-input-filter input {
border-left-color: var(--ooui-interface-border) !important;
color: var(--ooui-text) !important;
}
.smw-ui-pagination .page-link.link-disabled {
background-color: var(--ooui-disabled);
border-color: var(--ooui-disabled-border);
color: var(--subtle-color);
}
.smw-ui-pagination .page-link {
background-color: var(--ooui-normal);
border-color: var(--ooui-normal-border);
color: var(--link-color);
}
.smw-ui-pagination .page-link:hover {
background-color: var(--ooui-normal--hover);
border-color: var(--ooui-normal-border);
color: var(--link-color);
}
.smw-ui-pagination .page-link.link-active {
color: #fff;
background-color: var(--ooui-progressive);
border-color: var(--ooui-progressive);
}
.smw-tabs input.nav-tab:checked + label.nav-label {
border-color: var(--ooui-normal-border);
}
.smw-tabs section,
.smw-tabs .subtab-content {
border-top-color: var(--ooui-normal-border);
}
.smw-column-header {
color: var(--text-color);
}
.smw-factbox {
background: var(--body-main);
border-color: transparent;
}
.mw-body .mw-indicators #mw-indicator-smw-entity-examiner.mw-indicator .smw-indicator-vertical-bar-loader {
display: none;
}
.smwb-theme-light .smwb-title,
.smwb-theme-light .smwb-center,
.smwb-theme-light .smwb-actions,
.smwb-theme-light .smwb-prophead {
background-color: var(--body-mid);
}
.smwb-theme-light .smwb-factbox {
border-left-color: var(--body-mid);
}
.smwb-theme-light .smwb-ifactbox {
border-right-color: var(--body-mid);
}
.smwb-theme-light .smwb-propval {
background-color: var(--body-light);
}
.smwb-action-separator {
border-color: var(--wikitable-border);
}
.smwb-bottom {
border-bottom: 1px solid var(--wikitable-border);
}
.smwb-ifactbox .smwb-cell,
.smwb-factbox .smwb-cell {
border-top: 1px solid var(--wikitable-border);
}
.smwb-propvalue .smwb-prophead,
.smwb-ipropvalue .smwb-prophead,
.smwb-propvalue .smwb-propval,
.smwb-ipropvalue .smwb-propval {
font-size: 0.9em;
}
:root {
--filter-black-to-link: invert(36%) sepia(58%) saturate(433%) hue-rotate(344deg) brightness(100%) contrast(91%);
}
#bodyContent span.smwbrowse a {
color: black;
background-image: url('filepath://Smwbrowse.svg');
filter: var(--filter-black-to-link);
}
#bodyContent span.smwbrowse a:hover {
color: black;
background-image: url('filepath://Smwbrowse-hover.svg');
text-decoration: underline;
}
#bodyContent span.smwsearch a {
color: black;
filter: var(--filter-black-to-link);
background-image: url('filepath://Smwsearch.svg');
}
#bodyContent span.smwsearch a:hover {
color: black;
background-image: url('filepath://Smwsearch-hover.svg');
text-decoration: underline;
}
:root {
--tabber-tab-bg: var(--body-light);
--tabber-tab-border-color: var(--body-border);
--tabber-active-tab-bg: var(--body-light);
--tabber-active-tab-color: var(--text-color);
--tabber-active-tab-hover-bg: var(--body-light);
--tabber-active-tab-hover-border-color: var(--body-border);
--tabber-active-tab-hover-color: var(--text-color);
--tabber-active-tab-border-hider-color: var(--body-light);
--tabber-inactive-tab-bg: var(--body-background-color);
--tabber-inactive-tab-border-color: var(--body-border);
--tabber-inactive-tab-color: var(--text-color);
--tabber-inactive-tab-hover-bg: var(--body-light);
--tabber-inactive-tab-hover-border-color: var(--body-border);
}
.tabber {
margin: 1em 0;
}
.tabber .tabbertab {
background-color: var(--tabber-tab-bg);
border: 1px solid var(--tabber-tab-border-color);
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
padding: 1em 1.5em;
}
ul.tabbernav {
border: none;
margin-left: 2em;
margin-bottom: 0;
margin-right: 2em;
padding: 0;
font-family: inherit;
}
ul.tabbernav li.tabberactive > a {
background-color: var(--tabber-active-tab-bg);
color: var(--tabber-active-tab-color);
border-bottom: none;
position: relative;
}
ul.tabbernav li.tabberactive > a:hover {
color: var(--tabber-active-tab-hover-color);
background-color: var(--tabber-active-tab-hover-bg);
border-color: var(--tabber-active-tab-hover-border-color);
border-bottom: none;
}
ul.tabbernav li.tabberactive > a::after {
content: '';
position: absolute;
left: 0;
right: 0;
bottom: -1px;
border-bottom: 2px solid var(--tabber-active-tab-border-hider-color);
}
ul.tabbernav li a {
background-color: var(--tabber-inactive-tab-bg);
border-bottom: transparent;
border-color: var(--tabber-inactive-tab-border-color);
color: var(--tabber-inactive-tab-color);
display: inline-block;
font-size: 110%;
padding: 0.5em 1em;
}
ul.tabbernav li a:hover {
background-color: var(--tabber-inactive-tab-hover-bg);
border-color: var(--tabber-inactive-tab-hover-border-color);
}
ul.tabbernav li a:link,
ul.tabbernav li a:visited {
color: var(--tabber-inactive-tab-color);
}
:root {
--ooui-text: var(--text-color);
--ooui-interface: var(--body-light);
--ooui-interface-border: var(--body-border);
--ooui-window-background: rgba(255, 255, 255, 0.5);
--ooui-normal: #d5c7ad;
--ooui-normal--hover: #dfd5c1;
--ooui-normal-border: #b8a282;
--ooui-progressive: #605443;
--ooui-progressive--hover: #7e6e58;
--ooui-accent: var(--link-color);
--ooui-input: #fff;
--ooui-input-border: #b8a282;
--ooui-input-border--hover: #8a724f;
--ooui-disabled: #d1cdc5;
--ooui-disabled-border: #c2b9ab;
--ooui-disabled-text: var(--subtle-color);
--ooui-pending-background-image: repeating-linear-gradient(-45deg, var(--search-box), var(--search-box) 20px, var(--body-main) 20px, var(--body-main) 30px);
}
.oo-ui-widget {
color: var(--ooui-text);
}
.oo-ui-checkboxInputWidget [type='checkbox'] + span,
.oo-ui-radioInputWidget [type='radio'] + span {
background-color: var(--ooui-input);
border-color: var(--ooui-input-border);
}
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:checked + span,
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:indeterminate + span {
background-color: var(--ooui-progressive);
border-color: var(--ooui-progressive);
}
.oo-ui-radioInputWidget.oo-ui-widget-enabled [type='radio']:checked + span {
border-color: var(--ooui-progressive);
}
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:checked:hover + span,
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:indeterminate:hover + span {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
}
.oo-ui-radioInputWidget.oo-ui-widget-enabled [type='radio']:checked:hover + span {
border-color: var(--ooui-progressive--hover);
}
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:hover + span,
.oo-ui-radioInputWidget.oo-ui-widget-enabled [type='radio']:hover + span {
border-color: var(--ooui-accent);
}
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:focus + span {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:active + span,
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:checked:active + span,
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:indeterminate:active + span {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
box-shadow: inset 0 0 0 1px var(--ooui-progressive--hover);
}
.oo-ui-radioInputWidget.oo-ui-widget-enabled [type='radio']:active + span {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
}
.oo-ui-radioInputWidget.oo-ui-widget-enabled [type='radio']:checked:active + span {
border-color: var(--ooui-progressive--hover);
box-shadow: inset 0 0 0 1px var(--ooui-progressive--hover);
}
.oo-ui-radioInputWidget.oo-ui-widget-enabled [type='radio']:checked:active + span:before {
border-color: var(--ooui-progressive--hover);
}
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:checked:focus + span,
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:indeterminate:focus + span {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent), inset 0 0 0 2px #fff;
}
.oo-ui-checkboxInputWidget [type='checkbox']:disabled + span,
.oo-ui-radioInputWidget [type='radio']:disabled + span {
background-color: var(--ooui-disabled);
border-color: var(--ooui-disabled);
}
.oo-ui-dropdownWidget-handle {
border-color: var(--ooui-normal-border);
}
.oo-ui-dropdownWidget.oo-ui-widget-enabled .oo-ui-dropdownWidget-handle {
background-color: var(--ooui-normal);
color: var(--ooui-text);
}
.oo-ui-dropdownWidget.oo-ui-widget-enabled .oo-ui-dropdownWidget-handle:hover {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
}
.oo-ui-dropdownWidget.oo-ui-widget-enabled .oo-ui-dropdownWidget-handle:active {
color: var(--ooui-text);
}
.oo-ui-dropdownWidget.oo-ui-widget-enabled .oo-ui-dropdownWidget-handle:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-dropdownWidget.oo-ui-widget-enabled.oo-ui-dropdownWidget-open .oo-ui-dropdownWidget-handle {
background-color: var(--ooui-normal--hover);
}
.oo-ui-dropdownWidget.oo-ui-widget-disabled .oo-ui-dropdownWidget-handle {
color: var(--ooui-disabled-text);
text-shadow: none;
border-color: var(--ooui-disabled-border);
background-color: var(--ooui-disabled);
}
.oo-ui-dropdownInputWidget select {
border-color: var(--ooui-normal-border);
}
.oo-ui-dropdownInputWidget option {
background-color: var(--ooui-interface);
}
.oo-ui-dropdownInputWidget.oo-ui-widget-enabled {
background-color: var(--ooui-normal);
}
.oo-ui-dropdownInputWidget.oo-ui-widget-enabled:hover {
background-color: var(--ooui-normal--hover);
}
.oo-ui-dropdownInputWidget.oo-ui-widget-enabled select {
color: var(--ooui-text);
}
.oo-ui-dropdownInputWidget.oo-ui-widget-enabled select:hover,
.oo-ui-dropdownInputWidget.oo-ui-widget-enabled select:active {
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
}
.oo-ui-dropdownInputWidget.oo-ui-widget-enabled select:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-labelWidget.oo-ui-inline-help {
color: var(--byline-color);
}
.oo-ui-menuSelectWidget {
background-color: var(--ooui-interface);
border-color: var(--ooui-interface-border);
}
.oo-ui-menuSelectWidget-frameless {
box-shadow: inset 0 -1px 0 0 var(--ooui-normal-border);
}
.oo-ui-menuSectionOptionWidget {
color: var(--byline-color);
}
.oo-ui-menuOptionWidget.oo-ui-optionWidget-highlighted,
.oo-ui-menuOptionWidget.oo-ui-optionWidget-selected {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
}
.oo-ui-menuOptionWidget.oo-ui-optionWidget-selected.oo-ui-menuOptionWidget.oo-ui-optionWidget-highlighted,
.oo-ui-menuOptionWidget.oo-ui-optionWidget-pressed.oo-ui-menuOptionWidget.oo-ui-optionWidget-highlighted {
color: var(--ooui-accent);
}
.oo-ui-menuOptionWidget.oo-ui-widget-enabled.oo-ui-optionWidget {
color: var(--ooui-text);
}
.oo-ui-messageDialog-title {
color: inherit;
}
.oo-ui-messageWidget.oo-ui-messageWidget-block.oo-ui-flaggedElement-error {
background-color: var(--errorbox-bg);
border-color: var(--errorbox-border);
}
.oo-ui-messageWidget.oo-ui-messageWidget-block.oo-ui-flaggedElement-warning {
background-color: var(--warningbox-bg);
border-color: var(--warningbox-border);
}
.oo-ui-messageWidget.oo-ui-messageWidget-block.oo-ui-flaggedElement-success {
background-color: var(--successbox-bg);
border-color: var(--successbox-border);
}
.oo-ui-messageWidget.oo-ui-messageWidget-block.oo-ui-flaggedElement-notice {
background-color: var(--messagebox-info-background);
border-color: var(--messagebox-info-border);
}
.oo-ui-messageWidget.oo-ui-flaggedElement-error:not(.oo-ui-messageWidget-block),
.oo-ui-messageWidget.oo-ui-flaggedElement-success:not(.oo-ui-messageWidget-block) {
color: var(--ooui-text);
}
.oo-ui-optionWidget.oo-ui-widget-disabled {
color: var(--ooui-disabled-text);
}
.oo-ui-outlineControlsWidget {
background-color: var(--ooui-normal);
}
.oo-ui-outlineOptionWidget.oo-ui-optionWidget-highlighted {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
}
.oo-ui-popupWidget-popup {
background-color: var(--ooui-interface);
border-color: var(--ooui-interface-border);
}
.oo-ui-popupWidget-anchored-top .oo-ui-popupWidget-anchor:after {
border-bottom-color: var(--ooui-interface);
}
.oo-ui-popupWidget-anchored-top .oo-ui-popupWidget-anchor:before {
border-bottom-color: var(--ooui-interface-border);
}
.oo-ui-popupWidget-anchored-bottom .oo-ui-popupWidget-anchor:after {
border-top-color: var(--ooui-interface);
}
.oo-ui-popupWidget-anchored-bottom .oo-ui-popupWidget-anchor:before {
border-top-color: var(--ooui-interface-border);
}
.oo-ui-popupWidget-anchored-start .oo-ui-popupWidget-anchor:after {
border-right-color: var(--ooui-interface);
}
.oo-ui-popupWidget-anchored-start .oo-ui-popupWidget-anchor:before {
border-right-color: var(--ooui-interface-border);
}
.oo-ui-popupWidget-anchored-end .oo-ui-popupWidget-anchor:after {
border-left-color: var(--ooui-interface);
}
.oo-ui-popupWidget-anchored-end .oo-ui-popupWidget-anchor:before {
border-left-color: var(--ooui-interface-border);
}
.oo-ui-searchWidget-query {
border-bottom-color: var(--ooui-interface-border);
}
.oo-ui-selectFileWidget-dropTarget {
background-color: var(--ooui-interface);
border-color: var(--ooui-interface-border);
}
.oo-ui-selectFileWidget.oo-ui-widget-enabled.oo-ui-selectFileWidget-dropTarget {
background-color: var(--ooui-interface);
}
.oo-ui-selectFileWidget.oo-ui-widget-enabled.oo-ui-selectFileWidget-dropTarget:hover {
border-color: var(--ooui-input-border--hover);
}
.oo-ui-tabOptionWidget {
color: var(--ooui-text);
}
.oo-ui-tabSelectWidget-framed .oo-ui-tabOptionWidget.oo-ui-optionWidget-selected {
background-color: var(--body-dark);
color: var(--ooui-text);
}
.oo-ui-tabSelectWidget-framed .oo-ui-tabOptionWidget.oo-ui-optionWidget-selected .oo-ui-labelElement-label {
border-bottom-color: var(--body-border);
}
.oo-ui-tabSelectWidget-framed .oo-ui-tabOptionWidget.oo-ui-widget-enabled:hover,
.oo-ui-tabSelectWidget-framed .oo-ui-tabOptionWidget.oo-ui-widget-enabled:active {
background-color: var(--body-light);
color: var(--ooui-text);
}
.oo-ui-tabSelectWidget-framed .oo-ui-tabOptionWidget.oo-ui-widget-enabled.oo-ui-optionWidget-selected:hover {
background-color: var(--body-dark);
}
.oo-ui-tabSelectWidget-frameless .oo-ui-tabOptionWidget.oo-ui-optionWidget-selected {
color: var(--ooui-progressive);
box-shadow: inset 0 -2px 0 0 var(--ooui-progressive);
}
.oo-ui-tabSelectWidget-frameless .oo-ui-tabOptionWidget.oo-ui-optionWidget-selected:hover,
.oo-ui-tabSelectWidget-frameless .oo-ui-tabOptionWidget.oo-ui-optionWidget-selected:focus {
color: var(--ooui-progressive--hover);
box-shadow: inset 0 -2px 0 0 var(--ooui-progressive--hover);
}
.oo-ui-tabSelectWidget-framed {
background: none;
border-bottom: 1px solid var(--ooui-interface-border);
}
.oo-ui-tabSelectWidget-frameless {
box-shadow: inset 0 -1px 0 0 var(--ooui-interface-border);
}
.oo-ui-tabSelectWidget-mobile {
}
.oo-ui-tabSelectWidget-mobile.oo-ui-tabSelectWidget-framed:after {
background: var(--mobile-navbox-linear-gradient);
}
.oo-ui-tabSelectWidget-mobile.oo-ui-tabSelectWidget-frameless:after {
background: var(--mobile-navbox-linear-gradient);
}
.oo-ui-tagItemWidget {
border-color: var(--ooui-normal-border);
}
.oo-ui-tagItemWidget.oo-ui-widget-enabled {
color: var(--ooui-text);
}
.oo-ui-tagItemWidget.oo-ui-widget-enabled:hover {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
}
.oo-ui-tagItemWidget.oo-ui-widget-enabled:not( .oo-ui-tagItemWidget-fixed ) {
background-color: var(--ooui-normal);
}
.oo-ui-tagItemWidget.oo-ui-widget-enabled .oo-ui-buttonElement-button:hover {
background-color: var(--ooui-normal--hover);
}
.oo-ui-tagMultiselectWidget.oo-ui-widget-enabled {
background-color: var(--ooui-interface);
}
.oo-ui-tagMultiselectWidget.oo-ui-widget-enabled.oo-ui-tagMultiselectWidget-outlined {
background-color: var(--ooui-normal);
}
.oo-ui-tagMultiselectWidget.oo-ui-widget-enabled.oo-ui-tagMultiselectWidget-outlined .oo-ui-tagItemWidget.oo-ui-widget-enabled {
background-color: var(--ooui-interface);
}
.oo-ui-textInputWidget .oo-ui-inputWidget-input {
background-color: var(--ooui-input);
color: var(--ooui-text);
border-color: var(--ooui-input-border);
}
.oo-ui-textInputWidget.oo-ui-widget-enabled .oo-ui-inputWidget-input::placeholder {
color: var(--subtle-color);
}
.oo-ui-textInputWidget.oo-ui-widget-enabled .oo-ui-inputWidget-input:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-textInputWidget.oo-ui-widget-enabled .oo-ui-inputWidget-input[readonly]:not(.oo-ui-pendingElement-pending) {
background-color: var(--ooui-disabled);
color: var(--ooui-disabled-text);
}
.oo-ui-textInputWidget.oo-ui-widget-enabled:hover .oo-ui-inputWidget-input {
border-color: var(--ooui-input-border--hover);
}
.oo-ui-textInputWidget.oo-ui-widget-enabled:hover .oo-ui-inputWidget-input:focus {
border-color: var(--ooui-accent);
}
@media screen and (min-width: 0) {
.oo-ui-textInputWidget.oo-ui-widget-enabled textarea.oo-ui-inputWidget-input:focus {
outline: 1px solid var(--ooui-accent);
}
}
.oo-ui-textInputWidget.oo-ui-widget-disabled .oo-ui-inputWidget-input {
background-color: var(--ooui-disabled);
color: var(--ooui-disabled-text);
text-shadow: none;
border-color: var(--ooui-disabled-border);
}
.oo-ui-toggleSwitchWidget {
background-color: var(--ooui-input);
border-color: var(--ooui-input-border);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled .oo-ui-toggleSwitchWidget-grip {
background-color: var(--ooui-input);
border-color: var(--ooui-input-border);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:hover {
background-color: var(--ooui-input);
border-color: var(--ooui-accent);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:hover .oo-ui-toggleSwitchWidget-grip {
background-color: var(--ooui-input);
border-color: var(--ooui-accent);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:active,
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:active:hover,
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:active:focus {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
box-shadow: inset 0 0 0 1px var(--ooui-progressive--hover);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:active .oo-ui-toggleSwitchWidget-grip,
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:active:hover .oo-ui-toggleSwitchWidget-grip,
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:active:focus .oo-ui-toggleSwitchWidget-grip {
background-color: var(--ooui-input);
border-color: var(--ooui-input);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:focus .oo-ui-toggleSwitchWidget-grip {
border-color: var(--ooui-accent);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled.oo-ui-toggleWidget-on {
background-color: var(--ooui-progressive);
border-color: var(--ooui-progressive);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled.oo-ui-toggleWidget-on .oo-ui-toggleSwitchWidget-grip {
background-color: var(--ooui-input);
border-color: var(--ooui-input);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled.oo-ui-toggleWidget-on:hover {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled.oo-ui-toggleWidget-on:active,
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled.oo-ui-toggleWidget-on:active:hover {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled.oo-ui-toggleWidget-on:focus {
border-color: var(--ooui-progressive);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled.oo-ui-toggleWidget-on:focus::before {
border-color: #fff;
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-disabled {
background-color: var(--ooui-disabled);
border-color: var(--ooui-disabled);
}
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled > .oo-ui-buttonElement-button {
color: var(--ooui-text);
}
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled > .oo-ui-buttonElement-button:hover {
color: var(--ooui-text);
}
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled > .oo-ui-buttonElement-button:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled.oo-ui-buttonElement-pressed > input.oo-ui-buttonElement-button,
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled > .oo-ui-buttonElement-button:active {
color: var(--ooui-text);
}
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button,
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button:hover {
color: var(--ooui-text);
}
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button:active,
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive.oo-ui-buttonElement-pressed > .oo-ui-buttonElement-button {
color: var(--ooui-text);
border-color: var(--ooui-text);
}
.oo-ui-buttonElement-frameless.oo-ui-widget-disabled > .oo-ui-buttonElement-button {
color: var(--ooui-disabled-text);
}
.oo-ui-buttonElement-framed.oo-ui-widget-disabled > .oo-ui-buttonElement-button {
background-color: var(--ooui-disabled);
border-color: var(--ooui-disabled-border);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled > .oo-ui-buttonElement-button {
background-color: var(--ooui-normal);
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled > .oo-ui-buttonElement-button:hover {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled > .oo-ui-buttonElement-button:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-buttonElement-active > .oo-ui-buttonElement-button {
background-color: var(--ooui-progressive--hover);
color: #fff;
border-color: var(--ooui-progressive--hover);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-buttonElement-active > .oo-ui-buttonElement-button:focus {
border-color: var(--ooui-progressive--hover);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled > .oo-ui-buttonElement-button:active,
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-buttonElement-pressed > .oo-ui-buttonElement-button {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive {
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button {
color: var(--ooui-text);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button:hover {
background-color: var(--ooui-normal--hover);
border-color: var(--ooui-progressive--hover);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-destructive > .oo-ui-buttonElement-button {
color: var(--ooui-text);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-destructive > .oo-ui-buttonElement-button:hover {
background-color: var(--ooui-normal--hover);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button {
background-color: var(--ooui-progressive);
border-color: var(--ooui-progressive);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button:hover {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent), inset 0 0 0 2px #fff;
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button:active,
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive.oo-ui-buttonElement-pressed > .oo-ui-buttonElement-button,
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive.oo-ui-buttonElement-active > .oo-ui-buttonElement-button,
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive.oo-ui-popupToolGroup-active > .oo-ui-buttonElement-button {
color: #fff;
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
}
.oo-ui-pendingElement-pending {
background-image: var(--ooui-pending-background-image);
background-size: 200%;
animation: oo-ui-pendingElement-stripes 6s linear infinite;
}
@keyframes oo-ui-pendingElement-stripes {
100% {
background-position: 100%;
}
}
.oo-ui-messageDialog-content > .oo-ui-window-foot {
outline-color: var(--ooui-interface-border);
}
.oo-ui-messageDialog-message {
color: var(--ooui-text);
}
.oo-ui-messageDialog-actions-horizontal .oo-ui-actionWidget {
border-right-color: var(--ooui-interface-border);
}
.oo-ui-messageDialog-actions-vertical .oo-ui-actionWidget {
border-bottom-color: var(--ooui-interface-border);
}
.oo-ui-processDialog-content .oo-ui-window-head,
.oo-ui-processDialog-content .oo-ui-window-foot {
outline-color: var(--ooui-interface-border);
}
.oo-ui-processDialog .oo-ui-actionWidget > .oo-ui-buttonElement-button {
border-top-color: transparent;
border-bottom-color: transparent;
}
.oo-ui-processDialog .oo-ui-actionWidget > .oo-ui-buttonElement-button:hover,
.oo-ui-processDialog .oo-ui-actionWidget > .oo-ui-buttonElement-button:active {
border-top-color: transparent;
border-bottom-color: transparent;
}
.oo-ui-processDialog .oo-ui-actionWidget:not( .oo-ui-flaggedElement-progressive ):not( .oo-ui-flaggedElement-destructive ) > .oo-ui-buttonElement-button:hover,
.oo-ui-processDialog .oo-ui-actionWidget:not( .oo-ui-flaggedElement-progressive ):not( .oo-ui-flaggedElement-destructive ) > .oo-ui-buttonElement-button:active {
border-right-color: var(--ooui-interface-border);
border-left-color: transparent;
}
.oo-ui-processDialog .oo-ui-actionWidget:not( .oo-ui-flaggedElement-progressive ):not( .oo-ui-flaggedElement-destructive ) > .oo-ui-buttonElement-button:focus {
border-color: var(--ooui-accent);
}
.oo-ui-processDialog-actions-safe .oo-ui-actionWidget > .oo-ui-buttonElement-button,
.oo-ui-processDialog-actions-other .oo-ui-actionWidget > .oo-ui-buttonElement-button {
border-right-color: var(--ooui-normal-border);
border-left-color: transparent;
}
.oo-ui-processDialog-actions-safe .oo-ui-widget-enabled.oo-ui-iconElement:not( .oo-ui-labelElement ) > .oo-ui-buttonElement-button:hover {
background-color: var(--ooui-normal--hover);
border-right-color: var(--ooui-interface-border);
}
.oo-ui-windowManager-modal > .oo-ui-dialog {
background-color: var(--ooui-window-background);
}
.oo-ui-windowManager-modal > .oo-ui-dialog > .oo-ui-window-frame {
background-color: var(--ooui-interface);
}
.oo-ui-windowManager-modal.oo-ui-windowManager-floating > .oo-ui-dialog > .oo-ui-window-frame {
border-color: var(--ooui-interface-border);
}
.oo-ui-window {
color: var(--ooui-text);
}
.oo-ui-toolbar-bar {
background-color: var(--ooui-interface);
color: var(--ooui-text);
}
.oo-ui-toolbar-position-top > .oo-ui-toolbar-bar {
border-bottom-color: var(--body-mid);
}
.oo-ui-toolbar-bar .oo-ui-bookletLayout > .oo-ui-menuLayout-menu {
border-right-color: var(--body-mid);
}
.oo-ui-tool.oo-ui-widget-enabled > .oo-ui-tool-link:hover {
background-color: var(--ooui-normal--hover);
}
.oo-ui-tool.oo-ui-widget-enabled > .oo-ui-tool-link:focus {
outline: 1px solid var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-tool.oo-ui-widget-enabled > .oo-ui-tool-link:active,
.oo-ui-tool.oo-ui-widget-enabled.oo-ui-tool-active > .oo-ui-tool-link,
.oo-ui-tool.oo-ui-widget-enabled.oo-ui-popupToolGroup-active > .oo-ui-tool-link {
background-color: var(--ooui-normal--hover);
color: var(--ooui-accent);
box-shadow: none;
}
.oo-ui-tool.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive > .oo-ui-tool-link {
background-color: var(--ooui-progressive);
}
.oo-ui-tool.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive > .oo-ui-tool-link:hover {
background-color: var(--ooui-progressive--hover);
}
.oo-ui-tool.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive > .oo-ui-tool-link:focus {
box-shadow: inset 0 0 0 1px var(--ooui-accent), inset 0 0 0 2px #fff;
}
.oo-ui-tool.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive > .oo-ui-tool-link:active,
.oo-ui-tool.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive.oo-ui-tool-active > .oo-ui-tool-link {
background-color: var(--ooui-progressive--hover);
}
.oo-ui-listToolGroup-tools .oo-ui-tool.oo-ui-widget-enabled {
background-color: var(--ooui-normal);
}
.oo-ui-listToolGroup-tools .oo-ui-tool.oo-ui-widget-enabled:hover {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
}
.oo-ui-listToolGroup-tools .oo-ui-tool-active.oo-ui-widget-enabled .oo-ui-tool-link .oo-ui-tool-title {
color: var(--ooui-progressive);
}
.oo-ui-menuToolGroup {
border-left-color: var(--body-mid);
border-right-color: var(--body-mid);
}
.oo-ui-popupToolGroup-tools {
background-color: var(--ooui-interface);
border-color: var(--body-mid);
}
.oo-ui-popupToolGroup.oo-ui-widget-enabled > .oo-ui-popupToolGroup-handle:hover {
background-color: var(--ooui-normal--hover);
}
.oo-ui-popupToolGroup.oo-ui-widget-enabled > .oo-ui-popupToolGroup-handle:focus {
outline: 1px solid var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-toolbar-actions .oo-ui-popupToolGroup.oo-ui-widget-enabled > .oo-ui-popupToolGroup-handle:hover {
border-right-color: var(--ooui-normal--hover);
}
.oo-ui-popupToolGroup-tools .oo-ui-tool.oo-ui-widget-enabled .oo-ui-tool-link:focus {
box-shadow: inset 0 0 0 2px var(--ooui-accent);
}
.oo-ui-popupToolGroup-tools .oo-ui-tool-active.oo-ui-widget-enabled .oo-ui-tool-link .oo-ui-tool-title {
color: var(--ooui-progressive);
}
.oo-ui-popupToolGroup.oo-ui-popupToolGroup-active > .oo-ui-popupToolGroup-handle {
background-color: var(--ooui-normal);
color: var(--ooui-accent);
}
.oo-ui-popupToolGroup.oo-ui-popupToolGroup-active > .oo-ui-popupToolGroup-handle:hover {
background-color: var(--ooui-normal--hover);
color: var(--ooui-accent);
}
.oo-ui-bookletLayout-outlinePanel > .oo-ui-outlineControlsWidget {
border-top-color: var(--ooui-interface-border);
}
.oo-ui-bookletLayout > .oo-ui-menuLayout-menu {
border-right-color: var(--ooui-interface-border);
}
.oo-ui-fieldLayout-disabled > .oo-ui-fieldLayout-body > .oo-ui-fieldLayout-header > .oo-ui-labelElement-label {
color: var(--ooui-disabled-text);
}
.oo-ui-panelLayout-framed {
border-color: var(--sidebar);
}
.oo-ui-icon-settings {
background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' width='20' height='20' viewBox='0 0 20 20'%3E%3Ctitle%3Esettings%3C/title%3E%3Cg transform='translate(10 10)'%3E%3Cpath id='a' d='M1.5-10h-3l-1 6.5h5m0 7h-5l1 6.5h3'/%3E%3Cuse xlink:href='%23a' transform='rotate(45)'/%3E%3Cuse xlink:href='%23a' transform='rotate(90)'/%3E%3Cuse xlink:href='%23a' transform='rotate(135)'/%3E%3C/g%3E%3Cpath d='M10 2.5a7.5 7.5 0 0 0 0 15 7.5 7.5 0 0 0 0-15v4a3.5 3.5 0 0 1 0 7 3.5 3.5 0 0 1 0-7'/%3E%3C/svg%3E");
}
.oo-ui-icon-clear {
background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 20 20'%3E%3Ctitle%3Eclear%3C/title%3E%3Cpath d='M10 0a10 10 0 1 0 10 10A10 10 0 0 0 10 0zm5.66 14.24-1.41 1.41L10 11.41l-4.24 4.25-1.42-1.42L8.59 10 4.34 5.76l1.42-1.42L10 8.59l4.24-4.24 1.41 1.41L11.41 10z'/%3E%3C/svg%3E");
}
.mw-widget-dateInputWidget-handle {
background-color: var(--ooui-input);
color: var(--ooui-text);
border-color: var(--ooui-input-border);
}
.mw-widget-dateInputWidget-calendar {
background-color: var(--ooui-interface);
}
.mw-widget-dateInputWidget.oo-ui-widget-enabled .mw-widget-dateInputWidget-handle:hover {
border-color: var(--ooui-input-border--hover);
}
.mw-widget-calendarWidget {
border-color: var(--ooui-interface-border);
}
.mw-widget-calendarWidget:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.mw-widget-calendarWidget-day,
.mw-widget-calendarWidget-day-heading {
color: var(--ooui-text);
}
.mw-widget-calendarWidget-day-additional {
color: var(--ooui-text);
opacity: 0.67;
}
.mw-widget-calendarWidget-day-today {
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.mw-widget-calendarWidget-item:hover {
background-color: var(--ooui-progressive);
}
.mw-widget-calendarWidget-item-selected {
background-color: var(--ooui-progressive--hover);
}
.mw-widgets-datetime-calendarWidget {
background-color: var(--ooui-interface);
border-color: var(--ooui-interface-border);
}
.mw-widgets-datetime-calendarWidget:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent), 0 2px 2px 0 rgba(0, 0, 0, 0.25);
}
.mw-widgets-datetime-calendarWidget-grid .mw-widgets-datetime-calendarWidget-cell.mw-widgets-datetime-calendarWidget-extra .oo-ui-buttonElement-button .oo-ui-labelElement-label {
color: var(--subtle-color);
}
.mw-widgets-datetime-calendarWidget-grid .mw-widgets-datetime-calendarWidget-cell.mw-widgets-datetime-calendarWidget-selected .oo-ui-buttonElement-button {
background-color: var(--ooui-progressive--hover);
}
.mw-widgets-datetime-dateTimeInputWidget-handle {
background-color: var(--ooui-input);
color: var(--ooui-text);
border-color: var(--ooui-input-border);
}
.mw-widgets-datetime-dateTimeInputWidget.oo-ui-widget-enabled.mw-widgets-datetime-dateTimeInputWidget-handle:hover {
border-color: var(--ooui-input-border--hover);
}
.mw-widgets-datetime-dateTimeInputWidget.oo-ui-widget-enabled:hover input,
.mw-widgets-datetime-dateTimeInputWidget.oo-ui-widget-enabled:hover textarea {
border-color: var(--ooui-input-border--hover);
}
.mw-widgets-datetime-dateTimeInputWidget.oo-ui-widget-enabled .mw-widgets-datetime-dateTimeInputWidget-editField:hover {
background-color: var(--ooui-normal);
}
.ve-activated .ve-init-mw-desktopArticleTarget-originalContent #catlinks:hover {
background: var(--ooui-normal--hover);
}
.ve-ui-overlay {
font-family: inherit;
}
.oo-ui-toolbar-position-top .ve-ui-toolbarDialog-position-above {
border-top-color: var(--body-mid);
}
.ve-ce-branchNode-blockSlug,
.ve-ce-branchNode-newSlug {
outline-color: var(--body-border);
background-color: var(--ooui-interface);
}
.ve-ui-specialCharacterPage h3 {
color: var(--byline-color);
}
.ve-ui-specialCharacterPage-character {
border-color: var(--body-mid);
}
.ve-ui-specialCharacterPage-character:hover {
border-color: var(--body-dark);
}
.ve-ce-linkAnnotation.ve-ce-annotation-active {
box-shadow: 0 0 0 1px var(--body-mid);
background: none;
}
.ve-ui-desktopContext .ve-ui-linkContextItem .ve-ui-linkContextItem-label {
border-color: var(--body-border);
}
.ve-ui-mwHelpPopupTool-version-label,
.ve-ui-mwHelpPopupTool-version-link,
.ve-ui-mwHelpPopupTool-version-date {
color: var(--byline-color);
}
.ve-ce-tableCellableNode {
border-color: var(--body-mid);
}
.ve-ce-mwReferencesListNode-muted {
color: var(--byline-color);
}
.ve-ui-mwTemplatePage-description,
.ve-ui-mwParameterPage-label,
.ve-ui-mwParameterPage-description-required,
.ve-ui-mwParameterPage-description-deprecated {
color: var(--byline-color);
}
.mw-widget-titleWidget-menu .mw-widget-titleOptionWidget-description {
color: var(--byline-color);
}
.ve-ui-mwGalleryDialog-menuLayout > .oo-ui-menuLayout-menu,
.ve-ui-mwGalleryDialog-innerMenuLayout > .oo-ui-menuLayout-menu,
.ve-ui-mwGalleryDialog .ve-ui-mwGalleryDialog-image-container,
.ve-ui-targetWidget {
border-color: var(--body-border);
}
.ve-ui-targetWidget:not(.oo-ui-pendingElement-pending) {
background-color: var(--body-main);
}
.ve-ui-mwSaveDialog {
color: var(--ooui-text);
}
.ve-ui-mwSaveDialog-options {
background-color: var(--ooui-interface);
border-color: var(--body-border);
}
.ve-ui-mwSaveDialog-summary {
background-color: var(--ooui-input);
}
.ve-ui-mwSaveDialog-editSummary-count {
border-color: var(--body-border);
}
.ve-ui-mwSaveDialog-license {
color: var(--byline-color);
}
.ve-ui-mwReferenceContextItem-muted {
color: var(--byline-color);
}
.ve-ui-mwNoticesPopupTool-items > div:not(:first-child),
.ve-ui-mwHelpPopupTool-item:not(:first-child) {
border-color: var(--body-border);
}
.ve-ui-mwTransclusionOutlineControlsWidget {
background-color: var(--ooui-interface);
border-top-color: var(--body-border);
}
.ve-ui-mwTransclusionOutlineTemplateWidget-sticky {
background-color: var(--ooui-interface);
}
.ve-ui-mwTransclusionOutlineTemplateWidget .ve-ui-mwTransclusionOutlineParameterWidget.oo-ui-optionWidget-highlighted {
color: var(--ooui-text);
}
.ve-ui-mwTransclusionOutlineTemplateWidget-no-template-parameters {
color: var(--subtle-color);
}
.ve-ui-mwParameterPage-undocumentedLabel {
color: var(--subtle-color);
}
.ve-ui-mwTwoPaneTransclusionDialogLayout > .oo-ui-menuLayout-menu {
border-right: var(--body-border);
}
.ve-ui-mwParameterPage-doc-required,
.ve-ui-mwParameterPage-doc-deprecated,
.ve-ui-mwParameterPage-inlineDescription .ve-ui-mwParameterPage-doc-example {
color: var(--byline-color);
}
.ve-ui-expandableContent-toggle {
background-color: var(--ooui-interface);
}
.ve-ui-expandableContent-fade {
background: linear-gradient(to right, rgba(255, 255, 255, 0) 0, var(--ooui-interface) 90%);
}
.ve-ui-commandHelpDialog-shortcut > kbd,
.ve-ui-commandHelpDialog-sequence > kbd {
background-color: var(--keypress-background);
color: var(--keypress-color);
border-color: var(--keypress-border);
box-shadow: none;
text-shadow: none;
}
.ve-init-mw-desktopArticleTarget-toolbarPlaceholder-floating .ve-init-mw-desktopArticleTarget-toolbarPlaceholder-bar {
background: var(--ooui-interface);
}
.ve-init-mw-desktopArticleTarget-toolbarPlaceholder-bar {
border-bottom-color: var(--body-mid);
}
figure[typeof~='mw:File/Thumb'],
figure[typeof~='mw:File/Frame'],
figure[typeof~='mw:Image/Thumb'],
figure[typeof~='mw:Video/Thumb'],
figure[typeof~='mw:Image/Frame'],
figure[typeof~='mw:Video/Frame'] {
border: none;
background-color: var(--thumb-bg);
}
figure[typeof~='mw:File/Thumb'] > a:first-child > *:first-child:not( .mw-broken-media ),
figure[typeof~='mw:File/Frame'] > a:first-child > *:first-child:not( .mw-broken-media ),
figure[typeof~='mw:Image/Thumb'] > a:first-child > *:first-child:not( .mw-broken-media ),
figure[typeof~='mw:Video/Thumb'] > a:first-child > *:first-child:not( .mw-broken-media ),
figure[typeof~='mw:Image/Frame'] > a:first-child > *:first-child:not( .mw-broken-media ),
figure[typeof~='mw:Video/Frame'] > a:first-child > *:first-child:not( .mw-broken-media ) {
border: none;
background: var(--thumb-bg);
}
figure[typeof~='mw:File/Thumb'] > figcaption,
figure[typeof~='mw:File/Frame'] > figcaption,
figure[typeof~='mw:Image/Thumb'] > figcaption,
figure[typeof~='mw:Video/Thumb'] > figcaption,
figure[typeof~='mw:Image/Frame'] > figcaption,
figure[typeof~='mw:Video/Frame'] > figcaption {
border: none;
background-color: var(--thumb-caption-bg);
padding: 4px 6px;
}
:root {
--keypress-background: #eee;
--keypress-border: #ccc;
--keypress-color: #333;
}
.archivelist {
background-color: var(--body-light);
border: solid 1px var(--body-border);
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
float: right;
margin: 5px;
padding: 5px;
text-align: center;
width: 120px;
}
.shortcut {
border: 1px solid var(--body-border);
background: var(--body-light);
float: right;
font-size: 0.8em;
margin: 0.5em 0em 0.5em 1em;
padding: 0.5em;
text-align: center;
}
.hatnote,
.seealso {
font-style: italic;
}
.hatnote i,
.seealso i {
font-style: normal;
}
div.hatnote,
div.seealso {
margin: 0.5em 1.6em;
}
div.hatnote + div.hatnote,
div.hatnote + div.seealso,
div.seealso + div.hatnote,
div.seealso + div.seealso {
margin-top: -0.5em;
}
.keypress {
background: var(--keypress-background);
color: var(--keypress-color);
font-family: inherit;
border: 1px solid var(--keypress-border);
border-radius: 2px;
font-size: 0.9em;
margin: 0 0.1em;
padding: 0.1em 0.4em;
white-space: nowrap;
}
:root {
--documentation-background: #f9fafa;
--documentation-link-color: #e4eaee;
--documentation-headers-color: #fff;
--documentation-header-background: #949eaa;
--documentation-subheader-background: #808c9a;
--documentation-border: #e4eaee;
}
.documentation {
background: var(--documentation-background);
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
margin: 1em 0;
}
.documentation pre,
.documentation code {
background-color: var(--documentation-background);
border-color: var(--documentation-border);
}
.documentation h2,
.documentation hr {
border-color: var(--documentation-border);
}
.documentation-header {
color: var(--documentation-headers-color);
background: var(--documentation-header-background);
font-weight: bold;
padding: 1em 1.5em;
}
.documentation-title {
font-size: 1.25em;
}
.documentation-subheader {
color: var(--documentation-headers-color);
background: var(--documentation-subheader-background);
padding: 0.5em 1.5em;
}
.documentation-subheader a,
.documentation-subheader a:visited,
.documentation-subheader a:active {
color: var(--documentation-link-color);
}
.documentation-documentation,
.documentation-links {
font-size: 0.85em;
}
.documentation-content {
padding: 1em 1.5em;
}
.mw-templatedata-doc-params dl:not(:empty) {
column-count: 3;
border-top: 1px solid var(--body-border);
margin-bottom: 0.5em;
}
.mw-templatedata-doc-params dt::after {
content: ":";
}
.mw-templatedata-doc-params dd,
.mw-templatedata-doc-params dt {
margin: 0.1em 2em;
min-width: auto;
}
.mw-templatedata-doc-muted {
color: var(--subtle-color);
font-style: italic;
}
:root {
--infobox-text-color: var(--text-color);
--table-header: #b1886f;
--table-subheader: #d1b9ad;
--table-body: #fff8ee;
--table-border: #e9d8cc;
}
.infobox {
font-size: 0.85em;
width: 300px;
border-collapse: collapse;
float: right;
table-layout: fixed;
margin: 0.5em 0 1em 1em;
}
.infobox .infobox-buttons {
display: flex;
flex-wrap: wrap;
justify-content: center;
grid-gap: 3px;
margin-bottom: 3px;
}
.infobox .infobox-buttons .button {
background: var(--table-header);
padding: 0 5px;
font-weight: bold;
flex: 1 1 20%;
max-width: 20%;
color: #fff;
}
.infobox tbody {
border: 1px solid var(--table-border);
background: var(--table-body);
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(231, 215, 199, 0.5);
}
.infobox .infobox-header {
background: var(--table-header);
padding: 0.5em 0;
text-align: center;
color: #fff;
font-size: 1.15em;
font-weight: bold;
line-height: 1.4em;
}
.infobox .infobox-image {
text-align: center;
background: var(--body-main);
}
.infobox .infobox-subheader {
background: var(--table-subheader);
font-weight: bold;
text-align: center;
color: #fff;
}
.infobox .infobox-padding {
backgound: var(--table-body);
}
tr td .infobox:not(.infobox-padding) {
padding: 0.2em 0.5em;
}
th .infobox:not(.infobox-header) .infobox:not(.infobox-subheader) .infobox:not(.infobox-nested) {
border-right: 2px solid var(--table-subheader);
text-align: right;
padding: 0.2em 0.5em;
}
.hidden {
display: none;
}
ol.references,
.reflist {
font-size: 90%;
}
.reflist {
list-style-type: decimal;
}
.reflist .references {
font-size: 100%;
list-style-type: inherit;
}
.reflist-lower-alpha {
list-style-type: lower-alpha;
}
ol.references li:target,
sup.reference:target {
background-color: var(--body-light);
}
.hideQuotes .refhide {
display: none;
}
:root {
--messagebox-obsolete-background: #cfcfcf;
--messagebox-obsolete-border: #464646;
--messagebox-obsolete-color: var(--text-color);
--messagebox-obsolete-link-color: #6c6c6c;
--messagebox-info-background: #ebebeb;
--messagebox-info-border: #898989;
--messagebox-info-color: var(--text-color);
--messagebox-info-link-color: #6c6c6c;
--messagebox-action-background: #c7e8fa;
--messagebox-action-border: #0b5884;
--messagebox-action-color: var(--text-color);
--messagebox-action-link-color: #03436b;
--messagebox-warn-background: #dfc0ba;
--messagebox-warn-border: #861c10;
--messagebox-warn-color: var(--text-color);
--messagebox-warn-link-color: #8e221a;
--messagebox-safe-background: #d8f0d3;
--messagebox-safe-border: #1b8408;
--messagebox-safe-color: var(--text-color);
--messagebox-safe-link-color: #1b8408;
--messagebox-disambig-background: #ebebeb;
--messagebox-disambig-border: #898989;
--messagebox-disambig-color: var(--text-color);
--messagebox-disambig-link-color: #6c6c6c;
--messagebox-discord-background: #5865f2;
--messagebox-discord-border: #4c57d0;
--messagebox-discord-link-color: #d2e5fc;
}
.mw-message-box,
.mw-message-box-error,
.mw-message-box-warning,
.mw-message-box-success,
.usermessage {
color: var(--text-color);
}
.messagebox {
width: 65%;
margin: 0.5em auto;
border-left: 15px solid;
border-color: var(--body-dark);
background-color: var(--body-light);
box-sizing: border-box;
}
.messagebox.obsolete {
background-color: var(--messagebox-obsolete-background);
border-color: var(--messagebox-obsolete-border);
color: var(--messagebox-obsolete-color);
}
.messagebox.obsolete a,
.messagebox.obsolete a:visited,
.messagebox.obsolete a:active {
color: var(--messagebox-obsolete-link-color);
}
.messagebox.info {
background-color: var(--messagebox-info-background);
border-color: var(--messagebox-info-border);
color: var(--messagebox-info-color);
}
.messagebox.info a,
.messagebox.info a:visited,
.messagebox.info a:active {
color: var(--messagebox-info-link-color);
}
.messagebox.action {
background-color: var(--messagebox-action-background);
border-color: var(--messagebox-action-border);
color: var(--messagebox-action-color);
}
.messagebox.action a,
.messagebox.action a:visited,
.messagebox.action a:active {
color: var(--messagebox-action-link-color);
}
.messagebox.warn {
background-color: var(--messagebox-warn-background);
border-color: var(--messagebox-warn-border);
color: var(--messagebox-warn-color);
}
.messagebox.warn a,
.messagebox.warn a:visited,
.messagebox.warn a:active {
color: var(--messagebox-warn-link-color);
}
.messagebox.safe {
background-color: var(--messagebox-safe-background);
border-color: var(--messagebox-safe-border);
color: var(--messagebox-safe-color);
}
.messagebox.safe a,
.messagebox.safe a:visited,
.messagebox.safe a:active {
color: var(--messagebox-safe-link-color);
}
.messagebox.disambig {
background-color: var(--messagebox-disambig-background);
border-color: var(--messagebox-disambig-border);
color: var(--messagebox-disambig-color);
}
.messagebox.disambig a,
.messagebox.disambig a:visited,
.messagebox.disambig a:active {
color: var(--messagebox-disambig-link-color);
}
.messagebox.discord {
background-color: var(--messagebox-discord-background);
border-color: var(--messagebox-discord-border);
color: #fff;
}
.messagebox.discord a,
.messagebox.discord a:visited,
.messagebox.discord a:active {
color: var(--messagebox-discord-link-color);
}
.messagebox.discord a.external,
.messagebox.discord a:visited.external,
.messagebox.discord a:active.external {
font-style: italic;
}
.messagebox.stub {
width: 40%;
}
.messagebox.hasdialogue {
padding: 0 10px;
width: auto;
}
:root {
--byline-arrow-filter: invert(29%) sepia(0%) saturate(376%) hue-rotate(172deg) brightness(87%) contrast(80%);
--tile-border-color: var(--body-border);
--tile-background-color: var(--body-light);
--tile-link-button-color: #f5e9db;
--tile-link-button-highlight-color: #dfccb0;
--tile-dark-color: #fff;
--tile-dark-bg: #5d6773;
--tile-dark-link-color: #ccc;
--tile-dark-byline-color: rgba(255, 255, 255, 0.7);
--tile-dark-header-color: #fff;
}
.tile {
background: var(--tile-background-color);
border: 1px solid var(--tile-border-color);
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
padding: 1.5em 2em 1em;
max-width: 40em;
}
.tile h2 {
font-size: 1.4em;
font-weight: bold;
border: none;
margin: 0 0 0.4em;
}
.tile .byline + h2 {
margin-top: -0.5em;
}
.tile.dark {
color: var(--tile-dark-color);
background: var(--tile-dark-bg);
border: none;
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.3);
}
.tile.dark h2 {
color: var(--tile-dark-header-color);
}
.tile.dark a {
color: var(--tile-dark-link-color);
}
.tile.dark .byline {
color: var(--tile-dark-byline-color);
}
.byline {
font-size: 0.9em;
color: var(--byline-color);
}
.byline a {
color: var(--byline-color);
}
.tile-row {
display: flex;
flex-flow: row wrap;
margin-bottom: 1em;
}
.tile-halves {
display: flex;
flex-flow: row wrap;
border: 1px solid var(--tile-border-color);
background: var(--tile-background-color);
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
}
.tile-halves h2 {
font-size: 1.4em;
font-weight: bold;
border: none;
margin: 0 0 0.4em;
}
.tile-halves .byline + h2 {
margin-top: -0.5em;
}
.tile-top {
width: 100%;
padding: 1.3rem 1.5rem 0.6rem;
}
.tile-top.tile-image {
display: flex;
align-items: center;
background-color: var(--byline-color);
overflow: hidden;
padding: 0;
height: 13vw;
max-height: 12em;
transition: 0.4s ease-out;
}
.tile-halves:hover .tile-top.tile-image img {
transform: scale(1.1);
transition: 0.5s ease-out;
}
.tile-top.tile-image a {
width: 100%;
}
.tile-top.tile-image img {
width: 100%;
object-fit: cover;
max-height: 200px;
transition: 0.4s ease-out;
}
.tile-bottom {
background: var(--tile-background-color);
border-top: 1px solid var(--tile-border-color);
width: 100%;
padding: 1rem 1.5rem 0.6rem;
}
.tile-bottom.link-button {
align-self: flex-end;
padding: 0;
}
.tile-bottom.link-button a {
display: block;
text-align: center;
padding: 0.75em 1.5em 0.8em;
text-decoration: none;
}
.tile-bottom.read-more {
background: var(--tile-link-button-color);
transition: 0.3s ease-out;
}
.tile-bottom.read-more a {
color: var(--byline-color);
font-weight: bold;
text-align: right;
}
.tile-bottom.read-more:hover {
background: var(--tile-link-button-highlight-color);
}
.tile-bottom.read-more:hover .arrow {
transform: translateX(50%);
}
.tile-bottom.read-more .arrow {
filter: var(--byline-arrow-filter);
margin-left: 0.4em;
transition: 0.3s ease-out;
}
body.page-Main_Page.action-view .catlinks,
body.page-Main_Page.action-view #contentSub,
body.page-Main_Page.action-view #firstHeading,
body.page-Main_Page.action-view #siteNotice {
display: none;
}
body.page-Main_Page .mw-parser-output {
max-width: 75em;
margin: 0 auto;
}
body.page-Main_Page.action-view .catlinks,
body.page-Main_Page.action-view #contentSub,
body.page-Main_Page.action-view #siteNotice {
display: none;
}
.mainpage-header {
display: flex;
margin: 2.6em 1.75em 1.5em;
}
.mainpage-header .header-intro {
flex: 2;
}
.mainpage-header .header-intro h1 {
font-size: 2.5em;
font-weight: bold;
border: none;
margin: 0 0 0.15em;
}
.mainpage-header .header-intro p {
font-size: 1.1em;
line-height: 1.7em;
}
.mainpage-header .header-stats {
flex: 1;
display: flex;
justify-content: center;
align-items: center;
margin-top: -1em;
}
.mainpage-body {
display: grid;
grid-template-areas: "event event event" "update update update" "content content content" "left left right";
gap: 0.9rem;
grid-template-columns: repeat(3, 1fr);
}
.mainpage-body h2 a {
color: var(--text-color);
}
.mainpage-body .tile {
padding-left: 1.75em;
padding-right: 1.75em;
max-width: 100%;
}
.mainpage-body .tile-row {
width: 100%;
margin-bottom: 0;
}
.mainpage-body .tile-row {
display: grid;
gap: 0.9rem;
}
.mainpage-contents.tile-row {
display: flex;
}
.mainpage-contents.tile-row .tile-top {
height: 5.5rem;
}
.mainpage-left {
grid-area: left;
flex: 2;
display: flex;
flex-flow: column wrap;
}
.mainpage-left > * {
margin: 0 0 0.9rem;
}
.mainpage-right {
grid-area: right;
flex: 1;
display: flex;
flex-flow: column wrap;
}
.mainpage-right > * {
margin: 0 0 0.9rem;
}
.arrow {
background: url('filepath://White-chevron.svg') no-repeat;
display: inline-block;
height: 0.7rem;
width: 0.45rem;
vertical-align: middle;
}
.arrow.dark {
filter: invert(80%);
}
.mainpage-contents {
grid-area: content;
grid-template-columns: repeat(6, 1fr);
}
.mainpage-contents .tile-halves {
flex: 1;
}
.mainpage-contents .tile-top {
height: 4.5rem;
position: relative;
}
.mainpage-contents .tile-top.tile-image img {
height: auto;
}
.mainpage-contents h2 {
margin: 0;
padding: 0;
}
.mainpage-contents .tile-bottom.link-button a {
padding: 0.75em 0.2em;
}
.popular-pages ul {
display: grid;
grid-template-columns: repeat(3, 1fr);
grid-gap: 0.6em;
margin: 1em 0 0.7em 0;
}
.mp-popular-page-light {
display: flex;
align-items: center;
background-color: var(--button-background);
transition: 100ms;
}
.mp-popular-page-light a {
flex: 1;
display: block;
color: #fff;
font-weight: bold;
text-align: center;
text-decoration: none;
padding: 0.7em 1em;
}
.mp-popular-page-light:hover {
filter: brightness(115%);
transition: 100ms;
}
.mainpage-social {
border: none;
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.3);
}
.mainpage-social .tile-top {
display: flex;
align-items: center;
padding: 1em 1.5em;
}
.mainpage-social .tile-top a {
flex: 1;
position: relative;
text-decoration: none;
}
.mainpage-social .tile-top a:hover .arrow {
transform: translateX(50%);
}
.mainpage-social .tile-bottom {
border: none;
padding: 1em 1.75em;
}
.mainpage-social .tile-bottom p {
color: #fff;
font-weight: bold;
font-size: 0.9em;
text-align: center;
text-transform: uppercase;
letter-spacing: 0.03em;
margin: 0;
}
.mainpage-social .social-icon {
margin-right: 0.75em;
text-align: center;
width: 60px;
}
.mainpage-social .social-header {
color: #fff;
font-weight: bold;
font-size: 1.15em;
margin: 0.5em 0 -0.15em;
}
.mainpage-social .server-tagline {
color: rgba(255, 255, 255, 0.9);
margin-bottom: 0.5em;
}
.mainpage-social .arrow {
position: absolute;
top: calc(50% - .5em);
right: 0;
height: 1em;
width: 0.7em;
background-size: 0.7em 1em;
transition: 0.3s ease-out;
}
.mainpage-social.mainpage-discord .tile-top {
background: #5865f2;
}
.mainpage-social.mainpage-discord .tile-bottom {
background: #525ee0;
}
.mainpage-social.mainpage-twitter .tile-top {
background: #15202b;
}
.mainpage-social.mainpage-twitter .tile-bottom {
background: #121c26;
}
.mainpage-editing {
border: none;
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.3);
}
.mainpage-editing .tile-top {
background: #438ab5;
}
.mainpage-editing .tile-bottom {
background: #3980ab;
border: none;
padding: 0.8rem 1.5rem 0.4rem;
}
.mainpage-editing h2,
.mainpage-editing a {
color: #fff;
}
.mainpage-editing p {
color: rgba(255, 255, 255, 0.9);
}
.mainpage-editing ul {
list-style-image: url('filepath://Transparent-chevron.svg');
}
@media only screen and (max-width: 1200px) {
.mainpage-contents {
grid-template-columns: repeat(3, 1fr);
}
}
@media only screen and (max-width: 1000px) {
.mainpage-body {
grid-template-areas: "event event event" "update update update" "content content content" "left left left" "right right right";
}
.mainpage-recent-updates {
grid-template-columns: repeat(2, 1fr);
}
.mainpage-recent-updates .tile-halves:last-child {
display: none;
}
.mainpage-recent-updates .tile-halves:hover .tile-top img {
transform: scale(1.04);
}
.mainpage-recent-updates .tile-top {
height: 18vw;
min-height: 9em;
}
.mainpage-header .header-stats {
display: none;
}
.mainpage-left > *:last-child,
.mainpage-right > *:last-child {
margin-bottom: 0;
}
.popular-pages ul {
grid-template-columns: repeat(2, 1fr);
}
}
@media only screen and (max-width: 720px) {
.mainpage-recent-updates {
grid-template-columns: none;
}
.mainpage-recent-updates .tile-halves:last-child {
display: flex;
}
.mainpage-contents {
grid-template-columns: repeat(2, 1fr);
}
}
.mw-prefs-buttons {
background-color: var(--body-main);
border-top-color: var(--body-border);
box-shadow: none;
}
.mw-prefs-tabs-wrapper.oo-ui-panelLayout-framed,
.mw-prefs-tabs > .oo-ui-menuLayout-content > .oo-ui-indexLayout-stackLayout > .oo-ui-tabPanelLayout {
border-color: var(--body-border);
}
.mw-htmlform-ooui .mw-htmlform-matrix tbody tr:nth-child(even) td {
background-color: var(--body-light);
}
.mw-htmlform-ooui .mw-htmlform-matrix tbody tr:hover td {
background-color: var(--body-mid);
}
:root {
--rc-positive-color: #407813;
--rc-negative-color: #b41e0f;
}
.mw-plusminus-pos {
color: var(--rc-positive-color);
}
.mw-plusminus-neg {
color: var(--rc-negative-color);
}
.client-js .mw-recentchanges-toplinks:not(.mw-recentchanges-toplinks-collapsed) {
border-color: var(--body-border);
background-color: var(--body-light);
border-radius: 2px;
}
.mw-rcfilters-ui-filterTagMultiselectWidget-wrapper-content-title {
color: var(--text-color);
}
.mw-rcfilters-ui-filterTagMultiselectWidget-emptyFilters {
color: var(--byline-color);
}
.mw-rcfilters-ui-filterTagMultiselectWidget.oo-ui-widget-enabled .oo-ui-tagMultiselectWidget-handle {
background-color: var(--ooui-interface);
border-color: var(--ooui-interface-border);
}
.mw-rcfilters-ui-filterTagMultiselectWidget-views-select-widget.oo-ui-widget {
border-color: var(--ooui-interface-border);
}
.mw-rcfilters-collapsed .mw-rcfilters-ui-filterTagMultiselectWidget {
border-bottom-color: var(--ooui-interface-border);
}
.mw-rcfilters-ui-menuSelectWidget-footer {
background-color: var(--ooui-interface);
border-color: var(--ooui-interface-border);
}
.mw-rcfilters-ui-viewSwitchWidget label.oo-ui-labelWidget {
color: var(--byline-color);
}
.mw-rcfilters-ui-tagItemWidget-popup-content {
color: var(--ooui-text);
}
.mw-changeslist-legend,
.mw-rcfilters-ui-changesListWrapperWidget .mw-changeslist-legend {
background-color: var(--body-light);
border-color: var(--body-dark);
}
.mw-rcfilters-ui-changesListWrapperWidget-previousChangesIndicator {
border-color: var(--sidebar);
}
.client-js .mw-changeslist ul,
.client-js .mw-changeslist table.mw-enhanced-rc {
margin-left: 0;
}
.mw-rcfilters-ui-watchlistTopSectionWidget-separator {
border-color: var(--sidebar);
}
.mw-rcfilters-ui-itemMenuOptionWidget-header {
border-bottom-color: var(--ooui-interface);
background-color: var(--ooui-interface-border);
}
.mw-rcfilters-ui-itemMenuOptionWidget:not(:last-child):not(.mw-rcfilters-ui-itemMenuOptionWidget-identifier-talk) {
border-bottom-color: var(--ooui-normal-border);
}
.mw-rcfilters-ui-itemMenuOptionWidget-label-title,
.mw-rcfilters-ui-itemMenuOptionWidget-label-desc {
color: var(--text-color);
}
.mw-rcfilters-ui-filterMenuOptionWidget.oo-ui-flaggedElement-muted:not(.oo-ui-optionWidget-selected) {
background-color: var(--body-main);
}
.mw-rcfilters-ui-filterMenuOptionWidget.oo-ui-flaggedElement-muted .mw-rcfilters-ui-itemMenuOptionWidget-label-title,
.mw-rcfilters-ui-filterMenuOptionWidget.oo-ui-flaggedElement-muted .mw-rcfilters-ui-itemMenuOptionWidget-label-desc {
color: var(--subtle-color);
}
.mw-rcfilters-ui-filterMenuSectionOptionWidget {
background-color: var(--body-mid);
}
.mw-rcfilters-ui-filterMenuSectionOptionWidget-header-title.oo-ui-labelElement-label {
color: var(--ooui-text);
}
.mw-rcfilters-ui-filterMenuHeaderWidget-title {
color: var(--ooui-text);
}
.mw-rcfilters-ui-filterMenuHeaderWidget-header {
border-bottom-color: var(--ooui-interface-border);
background-color: var(--ooui-interface);
}
.mw-rcfilters-ui-itemMenuOptionWidget-view-namespaces {
border-top-color: var(--ooui-interface-border);
}
.mw-rcfilters-ui-datePopupWidget {
border-color: var(--ooui-interface-border);
}
.mw-rcfilters-ui-datePopupWidget .mw-rcfilters-ui-valuePickerWidget-title {
color: var(--byline-color);
}
.mw-rcfilters-ui-savedLinksListItemWidget-label {
color: var(--ooui-accent);
}
.client-js .mw-changeslist.mw-rcfilters-ui-changesListWrapperWidget-highlighted ul,
.client-js .mw-changeslist.mw-rcfilters-ui-changesListWrapperWidget-highlighted table.mw-enhanced-rc {
margin-left: 1.5em;
}
.page-Special_CreateAccount .mw-ui-container,
.page-Special_UserLogin .mw-ui-container {
max-width: 64rem;
margin: 0 auto;
}
.mw-number-text {
color: var(--byline-color);
}
.mw-body-content .mw-number-text h3 {
color: var(--text-color);
}
#mw-indicator-mw-helplink a {
background: none;
padding: 0;
display: flex;
align-items: center;
}
#mw-indicator-mw-helplink a::before {
content: '';
margin-right: 5px;
-webkit-mask: url("/resources/src/mediawiki.helplink/images/helpNotice.svg?46d34") no-repeat 50% 50% / contain;
mask: url("/resources/src/mediawiki.helplink/images/helpNotice.svg?46d34") no-repeat 50% 50% / contain;
background: var(--text-color);
height: 20px;
width: 20px;
}
.results-info {
color: inherit;
}
.mw-search-profile-tabs {
background-color: var(--body-mid);
border-color: transparent;
}
.search-types .current a {
color: inherit;
}
#mw-searchoptions {
background-color: var(--body-mid);
border-color: transparent;
}
#mw-searchoptions .divider {
border-color: var(--body-border);
}
#mw-searchoptions h4 {
font-family: inherit;
}
#mw-searchoptions .oo-ui-labelElement:nth-of-type(odd) {
font-weight: bold;
}
.searchresult {
line-height: 1.5;
}
.searchalttitle,
#mw-search-interwiki li {
font-size: 90%;
}
.mw-search-result-data {
color: var(--byline-color);
}
.page-Special_ListFiles a.image img {
width: inherit;
height: inherit;
}
.page-Special_ListFiles .TablePager_col_thumb {
text-align: center;
}
#editcount table[border="1"] {
background-color: var(--body-main) !important;
border-color: var(--wikitable-border) !important;
margin-top: 0.5em;
}
#editcount table[border="1"] th,
#editcount table[border="1"] td {
padding: 0.2em 0.4em;
}
#editcount table[border="1"] th {
background-color: var(--wikitable-header-bg);
border: 1px solid var(--wikitable-border);
}
#editcount table[border="1"] td {
border: 1px solid var(--wikitable-border);
}
#editcount table[border="1"] tr:nth-child(odd) {
background-color: var(--body-light);
}
.mw-echo-ui-notificationBadgeButtonPopupWidget-popup > .oo-ui-popupWidget-popup .mw-echo-ui-placeholderItemWidget {
background-color: inherit;
}
table.mw-interwikitable.body td.mw-interwikitable-local-yes {
background-color: var(--table-yes-background);
color: var(--table-yes-color);
}
.mw-protectedpages-unknown {
color: var(--byline-color);
}
.watchlistredir,
.allpagesredirect {
font-style: italic;
}
.allpagesredirect:after {
color: var(--byline-color);
content: " (redirect)";
}
.mw-apisandbox-toolbar {
background: var(--body-main);
}
.oo-ui-menuOptionWidget .mw-apisandbox-flag {
color: var(--byline-color);
}
tr.mw-abusefilter-list-disabled,
tr.mw-abusefilter-list-disabled td {
color: var(--byline-color);
}
table.mw-abuselog-details {
background: var(--wikitable-bg);
border-color: var(--wikitable-border);
}
table.mw-abuselog-details th {
background: var(--wikitable-header-bg);
}
table.mw-abuselog-details th,
table.mw-abuselog-details td {
border-color: var(--wikitable-border);
}
.mw-abusefilter-log-hidden-entry {
color: var(--subtle-color);
}
body td.mw-abusefilter-history-changed {
background: var(--table-no-background);
}
div.mw-abusefilter-editor,
#mw-abusefilter-warn-preview,
#mw-abusefilter-disallow-preview {
border-color: var(--ooui-input-border);
}
.mw-destfile-warning {
border-color: var(--warningbox-border);
color: var(--text-color);
background-color: var(--warningbox-bg);
}
span.fileinput-button {
background-color: var(--ooui-normal);
border-color: var(--ooui-normal-border);
color: var(--ooui-text);
}
ul.fileupload-results li.ful-success {
background-color: var(--successbox-bg);
}
ul.fileupload-results li.ful-success a {
color: var(--link-color);
}
ul.fileupload-results li.ful-error {
background-color: var(--errorbox-bg);
}
#t-print,
#t-permalink {
display: none;
}
#filetoc {
border-radius: 2px;
background: var(--body-mid);
border-color: transparent;
margin: 0.5em auto;
text-align: center;
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
}
li.gallerybox div.thumb {
border: none;
background-color: var(--thumb-bg);
}
.smwfact {
display: none;
}
.list-header {
background-color: var(--body-mid);
color: inherit;
}
.editOptions {
color: var(--text-color);
background-color: var(--sourceeditor-background-secondary);
border-color: var(--sourceeditor-border);
}
.mw-json th,
.mw-json td {
border-color: var(--wikitable-border);
}
.mw-json td {
background: var(--wikitable-bg);
}
.mw-json th {
background: var(--wikitable-header-bg);
}
fdcb852a140b6a5ac5928cd344f6061938e8d028
1574
1572
2024-03-27T09:23:37Z
Merds
25
Updating CSS from [[MediaWiki:Common.less]]
css
text/css
/* <pre> */
:root {
--body-main: #feffff;
--body-light: #fff8ee;
--body-mid: #d0bd97;
--body-dark: #b1886f;
--body-border: #d1b9ad;
--body-background-color: #173a4d;
--button-background: #605443;
--button-color: #fff;
--button-border: #3c352a;
--button-dark: #18140c;
--button-light: #3a301d;
--sidebar: #cfc08d;
--background-text-color: #e2dbc8;
--background-link-color: #e2bd8a;
--search-box: #efeee6;
--link-color: #936039;
--redlink-color: #ba0000;
--text-color: #2F2828;
--byline-color: #ccc;
--subtle-color: #777;
--admin-blue: #332e75;
--bearcat-green: #13592e;
--awb-purple: #933b96;
--rsw-blue: #438ab6;
--osrsw-brown: #605443;
--thumb-bg: var(--body-light);
--thumb-caption-bg: var(--body-mid);
--sourceeditor-input-background: #fff;
--sourceeditor-background: var(--body-light);
--sourceeditor-background-secondary: var(--body-light);
--sourceeditor-border: var(--body-mid);
--codemirror-gutter-background: var(--body-mid);
}
@font-face {
font-family: 'Lora';
font-weight: 400 700;
font-style: normal;
font-display: swap;
src: url('filepath://Lora.woff2') format('woff2');
}
@font-face {
font-family: 'Lora';
font-weight: 400 700;
font-style: italic;
font-display: swap;
src: url('filepath://Lora-Italic.woff2') format('woff2');
}
:root {
--base-text-color: #36414f;
--base-heading-color: #444e5a;
--base-heading-border: #e4eaee;
--mw-code-background-color: #ddd4bb;
--body-background-image: url('filepath://Wiki_background.jpg');
}
#mw-page-base {
background: none;
}
.mw-body {
background-color: var(--body-main);
color: var(--text-color);
border-color: transparent;
box-shadow: 0 0 7px rgba(0, 0, 0, 0.15);
margin-top: 0;
}
h1,
h2,
h3,
h4,
h5,
h6 {
color: var(--text-color);
}
h1,
h2 {
border-color: var(--sidebar);
}
.mw-body h1,
.mw-body-content h1,
.mw-body-content h2,
.mw-body-content h3,
.mw-body-content h4,
.mw-body-content h5,
.mw-body-content h6 {
font-family: 'Lora', 'Palatino', 'Georgia', serif;
}
.mw-parser-output h2:first-of-type {
clear: left;
}
.mw-footer {
color: var(--background-text-color);
}
.mw-footer li {
color: var(--background-text-color);
}
.mw-footer a,
.mw-footer a:active,
.mw-footer a:visited {
color: var(--background-link-color);
}
::placeholder {
color: var(--subtle-color);
}
a {
color: var(--link-color);
}
a:visited,
a:active {
color: var(--link-color);
}
a.new {
color: var(--redlink-color);
}
a.new:visited {
color: var(--redlink-color);
}
.mw-parser-output a.extiw,
.mw-parser-output a.external {
color: var(--link-color);
}
.mw-parser-output a.extiw:visited,
.mw-parser-output a.external:visited,
.mw-parser-output a.extiw:active,
.mw-parser-output a.external:active {
color: var(--link-color);
}
.jsPurgeLink a.external {
color: var(--link-color);
}
:root {
--errorbox-bg: #feecea;
--errorbox-border: #ee4231;
--warningbox-bg: #fef9de;
--warningbox-border: #f9d000;
--successbox-bg: #ecf8e3;
--successbox-border: #6bc71f;
}
.mw-message-box-error,
.errorbox,
.mw-message-box-warning,
.warningbox,
.mw-message-box-success,
.successbox,
.usermessage {
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
}
.mw-message-box-error,
.errorbox {
background-color: var(--errorbox-bg);
border-color: var(--errorbox-border);
}
.mw-message-box-warning,
.warningbox,
.usermessage {
background-color: var(--warningbox-bg);
border-color: var(--warningbox-border);
}
.mw-message-box-success,
.successbox {
background-color: var(--successbox-bg);
border-color: var(--successbox-border);
}
.catlinks {
background: var(--body-light);
border: 1px solid var(--body-dark);
padding: 8px 15px;
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
}
.catlinks li {
border-color: var(--body-mid);
}
.filehistory a img,
#file img {
background: url("data:image/svg+xml,%3C%3Fxml version='1.0' encoding='UTF-8'%3F%3E%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16'%3E%3Cpath d='M0 0h8v16h8V8H0z' opacity='.13'/%3E%3C/svg%3E") repeat;
}
#file img:hover {
background: none;
}
.mw-highlight {
background: none;
}
.mw-highlight .linenos {
background-color: var(--mw-code-background-color);
color: var(--byline-color);
}
.mw-highlight a:hover .linenos,
.mw-highlight .hll a .linenos {
color: var(--text-color);
}
.mw-content-ltr.mw-highlight-lines pre,
.mw-content-ltr.content .mw-highlight-lines pre {
box-shadow: inset 2.75em 0 0 var(--mw-code-background-color);
}
#pagehistory ul {
list-style: none;
margin: 0;
}
#pagehistory li {
border: 1px solid transparent;
padding: 1px 10px;
margin: 2px 0;
}
#pagehistory li.selected {
background-color: var(--body-light);
color: inherit;
border: 1px dashed var(--body-border);
outline: none;
}
#mw-history-compare > div:first-of-type {
position: -webkit-sticky;
position: sticky;
top: 0;
background-color: var(--body-main);
border-bottom: 1px solid var(--body-dark);
padding: 0.25em 0;
}
.wgl-stickyheader #mw-history-compare > div:first-of-type {
top: 2.5rem;
}
.autocomment,
.autocomment a,
.autocomment a:visited {
color: var(--link-color);
}
li span.deleted,
span.history-deleted {
color: var(--byline-color);
}
.mw-usertoollinks-contribs-no-edits,
.mw-usertoollinks-contribs-no-edits:visited {
color: var(--redlink-color);
}
.CategoryTreeToggle {
color: var(--link-color);
}
body.wgl-stickyheader.action-view .mw-headline:target::before {
display: block;
content: '';
margin-top: -3rem;
height: 3rem;
visibility: hidden;
pointer-events: none;
}
.mw-mmv-post-image {
color: var(--text-color);
background-color: var(--body-main);
}
.mw-mmv-image-metadata {
border-top-color: var(--body-mid);
background-color: var(--body-light);
}
.mw-mmv-dialog,
.mw-mmv-dialog .mw-mmv-dialog-down-arrow,
.mw-mmv-options-dialog .mw-mmv-dialog-down-arrow {
background-color: var(--body-light);
box-shadow: none;
}
.mw-mmv-options-enable-alert {
background-color: var(--body-light);
color: var(--text-color);
}
.mw-mmv-options-dialog-header,
.mw-mmv-options-text-header,
.mw-mmv-options-text-body,
.mw-mmv-options-enable-alert,
.mw-mmv-options-dialog .mw-mmv-disable-confirmation .mw-mmv-options-dialog-header,
.mw-mmv-options-dialog .mw-mmv-disable-confirmation .mw-mmv-options-text-header {
color: var(--text-color);
}
.mw-revslider-container {
border-color: var(--sidebar);
}
.mw-revslider-slider-wrapper {
border-top-color: var(--sidebar);
}
.mw-ui-button {
background-color: var(--ooui-normal);
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
}
.mw-ui-button:not(:disabled):hover,
.mw-ui-button:not(:disabled):active {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
}
.mw-ui-button:not(:disabled):focus {
color: var(--ooui-text);
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent), inset 0 0 0 2px #fff;
}
.mw-ui-button:not(:disabled):visited {
color: var(--ooui-text);
}
.mw-ui-button.mw-ui-progressive:not(:disabled) {
background-color: var(--ooui-progressive);
color: #fff;
border-color: var(--ooui-progressive);
}
.mw-ui-button.mw-ui-progressive:not(:disabled):hover {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
}
.mw-ui-button.mw-ui-progressive:not(:disabled):focus {
box-shadow: inset 0 0 0 1px var(--ooui-accent), inset 0 0 0 2px #fff;
}
.mw-ui-button.mw-ui-progressive:not(:disabled):active,
.mw-ui-button.mw-ui-progressive:not(:disabled).is-on {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
box-shadow: none;
}
.mw-ui-button.mw-ui-destructive:not( :disabled ) {
color: #fff;
}
.mw-ui-button.mw-ui-quiet,
.mw-ui-button.mw-ui-quiet.mw-ui-progressive,
.mw-ui-button.mw-ui-quiet.mw-ui-destructive {
color: var(--text-color);
}
input[type='checkbox']:hover + .mw-ui-button.mw-ui-quiet,
input[type='checkbox']:hover + .mw-ui-button.mw-ui-quiet.mw-ui-progressive,
input[type='checkbox']:hover + .mw-ui-button.mw-ui-quiet.mw-ui-destructive,
.mw-ui-button.mw-ui-quiet:hover,
.mw-ui-button.mw-ui-quiet.mw-ui-progressive:hover,
.mw-ui-button.mw-ui-quiet.mw-ui-destructive:hover {
background-color: rgba(0, 24, 73, 0.02745098);
color: var(--text-color);
border-color: transparent;
}
input[type='checkbox']:focus + .mw-ui-button.mw-ui-quiet,
input[type='checkbox']:focus + .mw-ui-button.mw-ui-quiet.mw-ui-progressive,
input[type='checkbox']:focus + .mw-ui-button.mw-ui-quiet.mw-ui-destructive,
.mw-ui-button.mw-ui-quiet:focus,
.mw-ui-button.mw-ui-quiet.mw-ui-progressive:focus,
.mw-ui-button.mw-ui-quiet.mw-ui-destructive:focus {
color: var(--text-color);
}
input[type='checkbox']:active + .mw-ui-button.mw-ui-quiet,
input[type='checkbox']:active + .mw-ui-button.mw-ui-quiet.mw-ui-progressive,
input[type='checkbox']:active + .mw-ui-button.mw-ui-quiet.mw-ui-destructive,
.mw-ui-button.mw-ui-quiet:active,
.mw-ui-button.mw-ui-quiet.mw-ui-progressive:active,
.mw-ui-button.mw-ui-quiet.mw-ui-destructive:active {
background-color: rgba(0, 36, 73, 0.08235294);
color: var(--text-color);
border-color: #72777d;
}
.mw-ui-input {
background-color: var(--ooui-input);
color: var(--text-color);
border-color: var(--ooui-input-border);
}
.mw-ui-input:hover {
border-color: var(--ooui-input-border--hover);
}
.mw-ui-input::placeholder {
color: var(--byline-color);
}
.mw-content-ltr .redirectText li:first-child {
padding: 0;
background: 0;
}
.mw-content-ltr .redirectText li:first-child::before {
content: '';
background: currentcolor;
-webkit-mask: url("filepath://Redirect-arrow.svg") no-repeat 50% 50% / contain;
mask: url("filepath://Redirect-arrow.svg") no-repeat 50% 50% / contain;
display: inline-block;
width: 47px;
height: 20px;
}
.vector-search-box-inner {
background: var(--body-main) !important;
box-shadow: inset 0 -7px 7px -7px rgba(0, 0, 0, 0.15) !important;
}
.vector-menu-dropdown .vector-menu-heading {
color: #937040 !important;
}
.vector-menu-dropdown .vector-menu-heading:hover {
color: #937040 !important;
}
.vector-menu-dropdown .vector-menu-heading:focus {
color: #937040 !important;
}
:root {
--wikitable-header-bg: var(--body-dark);
--wikitable-border: var(--body-border);
--wikitable-bg: var(--body-light);
--wikitable-bg-lighter: #e9e3d6;
--wikitable-color: var(--text-color);
--table-na-background: rgba(255, 255, 255, 0.3);
--table-na-color: var(--subtle-color);
--table-yes-background: #c3e8a3;
--table-yes-color: #2e5e05;
--table-no-background: #fbc0ba;
--table-no-color: #801c13;
--table-maybe-background: #fcea94;
--table-maybe-color: #786300;
}
.wikitable {
background: var(--wikitable-bg);
color: var(--wikitable-color);
border-color: var(--wikitable-border);
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
}
.wikitable > tr > th,
.wikitable > tr > td,
.wikitable > * > tr > th,
.wikitable > * > tr > td {
border-color: var(--wikitable-border);
}
.wikitable > tr > th.table-noborder,
.wikitable > tr > td.table-noborder,
.wikitable > * > tr > th.table-noborder,
.wikitable > * > tr > td.table-noborder {
border-left-style: hidden;
border-right-style: hidden;
padding-left: 0;
padding-right: 0;
}
.wikitable > tr > th,
.wikitable > * > tr > th {
background-color: var(--wikitable-header-bg);
color: #fff;
}
.tabber .wikitable {
box-shadow: none;
}
.mw_metadata td,
.mw_metadata th {
border-color: var(--wikitable-border);
}
.mw_metadata th {
background-color: var(--wikitable-header-bg);
}
.mw_metadata td {
background-color: var(--wikitable-bg);
}
.mw-datatable {
border-color: var(--wikitable-border);
}
.mw-datatable td,
.mw-datatable th {
border-color: var(--wikitable-border);
}
.mw-datatable th {
background-color: var(--wikitable-header-bg);
}
.mw-datatable td {
background-color: var(--wikitable-bg);
}
.mw-datatable tr:hover td {
background-color: var(--wikitable-bg);
}
table.alternating-rows tr:nth-child(odd),
table.alternating-cols td:nth-child(odd) {
background: var(--wikitable-alternating-bg);
}
.table-na {
background: var(--table-na-background);
color: var(--table-na-color);
vertical-align: middle;
text-align: center;
}
.table-yes {
background: var(--table-yes-background);
color: var(--table-yes-color);
}
.table-positive {
background: var(--table-yes-background);
}
.table-no {
background: var(--table-no-background);
color: var(--table-no-color);
}
.table-negative {
background: var(--table-no-background);
}
.table-maybe {
background: var(--table-maybe-background);
color: var(--table-maybe-color);
}
#mw-allmessagestable .am_actual,
#mw-allmessagestable .am_default {
background-color: var(--wikitable-bg);
}
#mw-allmessagestable .am_default:hover,
#mw-allmessagestable .am_actual:hover,
#mw-allmessagestable tbody:hover td {
background-color: var(--wikitable-bg-lighter);
}
table.wikitable td.no-cell-spacing {
padding: 0;
height: 0;
}
table.wikitable td.no-cell-spacing table {
margin: -1px;
width: calc(100% + 2px);
height: calc(100% + 2px);
}
.plainlist ol,
.plainlist ul {
margin: 0;
}
.plainlist li {
margin-bottom: 0;
list-style: none;
}
table.align-right-1 td:nth-of-type(1),
table.align-right-2 td:nth-of-type(2),
table.align-right-3 td:nth-of-type(3),
table.align-right-4 td:nth-of-type(4),
table.align-right-5 td:nth-of-type(5),
table.align-right-6 td:nth-of-type(6),
table.align-right-7 td:nth-of-type(7),
table.align-right-8 td:nth-of-type(8),
table.align-right-9 td:nth-of-type(9),
table.align-right-10 td:nth-of-type(10),
table.align-right-11 td:nth-of-type(11),
table.align-right-12 td:nth-of-type(12),
table.align-right-13 td:nth-of-type(13),
table.align-right-14 td:nth-of-type(14),
table.align-right-15 td:nth-of-type(15),
table.align-right-16 td:nth-of-type(16),
table.align-right-17 td:nth-of-type(17),
table.align-right-18 td:nth-of-type(18),
table.align-right-19 td:nth-of-type(19),
table.align-right-20 td:nth-of-type(20) {
text-align: right;
}
table.align-center-1 td:nth-of-type(1),
table.align-center-2 td:nth-of-type(2),
table.align-center-3 td:nth-of-type(3),
table.align-center-4 td:nth-of-type(4),
table.align-center-5 td:nth-of-type(5),
table.align-center-6 td:nth-of-type(6),
table.align-center-7 td:nth-of-type(7),
table.align-center-8 td:nth-of-type(8),
table.align-center-9 td:nth-of-type(9),
table.align-center-10 td:nth-of-type(10),
table.align-center-11 td:nth-of-type(11),
table.align-center-12 td:nth-of-type(12),
table.align-center-13 td:nth-of-type(13),
table.align-center-14 td:nth-of-type(14),
table.align-center-15 td:nth-of-type(15),
table.align-center-16 td:nth-of-type(16),
table.align-center-17 td:nth-of-type(17),
table.align-center-18 td:nth-of-type(18),
table.align-center-19 td:nth-of-type(19),
table.align-center-20 td:nth-of-type(20) {
text-align: center;
}
table.align-left-1 td:nth-of-type(1),
table.align-left-2 td:nth-of-type(2),
table.align-left-3 td:nth-of-type(3),
table.align-left-4 td:nth-of-type(4),
table.align-left-5 td:nth-of-type(5),
table.align-left-6 td:nth-of-type(6),
table.align-left-7 td:nth-of-type(7),
table.align-left-8 td:nth-of-type(8),
table.align-left-9 td:nth-of-type(9),
table.align-left-10 td:nth-of-type(10),
table.align-left-11 td:nth-of-type(11),
table.align-left-12 td:nth-of-type(12),
table.align-left-13 td:nth-of-type(13),
table.align-left-14 td:nth-of-type(14),
table.align-left-15 td:nth-of-type(15),
table.align-left-16 td:nth-of-type(16),
table.align-left-17 td:nth-of-type(17),
table.align-left-18 td:nth-of-type(18),
table.align-left-19 td:nth-of-type(19),
table.align-left-20 td:nth-of-type(20) {
text-align: left;
}
:root {
--diff-addedline-border-color: #438ab5;
--diff-addedline-background: #bddff2;
--diff-addedline-color: #000;
--diff-deletedline-border-color: #379541;
--diff-deletedline-background: #c1edbf;
--diff-deletedline-color: #000;
--diff-context-border-color: var(--body-mid);
--diff-context-background: var(--body-mid);
}
.diff-context {
border-color: var(--diff-context-border-color);
background: var(--diff-context-background);
color: inherit;
}
.diff-addedline {
border-color: var(--diff-addedline-border-color);
}
.diff-addedline .diffchange {
background: var(--diff-addedline-background);
color: var(--diff-addedline-color);
}
.diff-deletedline {
border-color: var(--diff-deletedline-border-color);
}
.diff-deletedline .diffchange {
background: var(--diff-deletedline-background);
color: var(--diff-deletedline-color);
}
.mw-diff-movedpara-left:after,
.mw-diff-movedpara-right:after {
color: var(--text-color);
}
.mw-notification {
background-color: var(--body-light);
border-color: var(--body-border);
color: var(--text-color);
}
.mw-echo-ui-notificationsInboxWidget-toolbarWrapper {
background: var(--body-main);
}
.mw-body-content .mw-echo-ui-datedSubGroupListWidget-title-secondary {
color: var(--byline-color);
}
.mw-echo-ui-pageNotificationsOptionWidget.oo-ui-optionWidget-selected {
background-color: var(--ooui-normal);
color: var(--ooui-accent);
}
.mw-echo-ui-pageNotificationsOptionWidget-label-count {
background-color: var(--ooui-normal);
color: var(--byline-color);
}
.oo-ui-optionWidget-selected .mw-echo-ui-pageNotificationsOptionWidget-label-count {
color: var(--ooui-accent);
}
.mw-echo-ui-pageNotificationsOptionWidget.oo-ui-optionWidget-highlighted {
background-color: var(--ooui-normal);
color: var(--text-color);
}
.mw-echo-ui-crossWikiUnreadFilterWidget {
border-color: var(--body-border);
}
.mw-echo-ui-crossWikiUnreadFilterWidget-subtitle {
color: var(--byline-color);
}
.mw-echo-ui-notificationBadgeButtonPopupWidget-popup > .oo-ui-popupWidget-popup > .oo-ui-popupWidget-head,
.mw-echo-ui-notificationBadgeButtonPopupWidget-popup > .oo-ui-popupWidget-popup > .oo-ui-popupWidget-footer {
border-color: var(--ooui-interface-border);
}
.mw-echo-ui-notificationBadgeButtonPopupWidget-popup > .oo-ui-popupWidget-popup > .oo-ui-popupWidget-footer .mw-echo-ui-notificationBadgeButtonPopupWidget-footer-buttons .oo-ui-buttonElement:last-child {
border-left-color: var(--ooui-normal-border);
}
.mw-echo-ui-notificationItemWidget {
background-color: var(--ooui-normal);
border-color: var(--ooui-normal-border);
}
.mw-echo-ui-notificationItemWidget:hover,
.mw-echo-ui-notificationItemWidget-unread:hover {
background-color: var(--ooui-normal--hover);
}
.mw-echo-ui-notificationItemWidget:last-child {
border-bottom-color: var(--ooui-normal-border);
}
.mw-echo-ui-notificationItemWidget-unread {
background-color: var(--search-box);
}
.mw-echo-ui-crossWikiNotificationItemWidget-group,
.mw-echo-ui-bundleNotificationItemWidget-group {
background-color: var(--ooui-interface);
}
.mw-echo-ui-toggleReadCircleButtonWidget-circle {
background-color: var(--ooui-progressive);
}
.mw-echo-ui-toggleReadCircleButtonWidget:hover .mw-echo-ui-toggleReadCircleButtonWidget-circle {
background-color: var(--ooui-progressive--hover);
}
.mw-echo-ui-toggleReadCircleButtonWidget-circle-unread {
background-color: var(--ooui-normal);
border-color: var(--ooui-normal-border);
}
.mw-echo-ui-notificationItemWidget-content-message-header,
.mw-echo-ui-notificationItemWidget-content-message-body,
.mw-echo-ui-menuItemWidget > .oo-ui-buttonElement-button > .oo-ui-labelElement-label,
.mw-echo-ui-notificationItemWidget-content-actions-timestamp {
color: var(--ooui-text);
}
.mw-echo-ui-bundleNotificationItemWidget-group {
background-color: var(--body-main);
}
@keyframes unseen-fadeout-to-unread {
from {
background-color: var(--wikitable-bg-lighter);
}
to {
background-color: var(--search-box);
}
}
@keyframes unseen-fadeout-to-read {
from {
background-color: var(--wikitable-bg-lighter);
}
to {
background-color: var(--body-main);
}
}
.mwe-popups {
background: var(--body-light);
}
.mwe-popups .mwe-popups-container {
color: var(--text-color);
background: var(--body-light);
}
.mwe-popups .mwe-popups-container.flipped-x-y:before,
.mwe-popups .mwe-popups-container.flipped-y:before {
border-top: none;
}
.mwe-popups .mwe-popups-container.mwe-popups-no-image-tri:before {
border-bottom: none;
}
.mwe-popups .mwe-popups-container.flipped-x-y:after,
.mwe-popups .mwe-popups-container.flipped-y:after {
border-top-color: var(--body-light);
}
.mwe-popups .mwe-popups-container.mwe-popups-no-image-tri:after {
border-bottom-color: var(--body-light);
}
.mwe-popups .mwe-popups-settings-icon:hover,
.mwe-popups .mwe-popups-settings-icon:active {
background-color: var(--ooui-normal--hover);
}
.mwe-popups .mw-ui-icon-element:not(.disabled):hover {
background: none;
}
.mwe-popups .mwe-popups-extract {
color: var(--text-color);
}
.mwe-popups .mwe-popups-extract[dir='ltr']:after {
background-image: linear-gradient(to right, rgba(49, 62, 89, 0), var(--body-light) 50%);
}
.mwe-popups-overlay {
background-color: var(--ooui-window-background);
}
#mwe-popups-settings {
background: var(--ooui-interface);
border-color: var(--ooui-interface-border);
color: var(--text-color);
}
#mwe-popups-settings header {
border-color: var(--ooui-interface-border);
}
#mwe-popups-settings main#mwe-popups-settings-form p {
color: var(--byline-color);
}
#mwe-popups-settings main#mwe-popups-settings-form form label > span {
color: var(--ooui-text);
}
:root {
--smw-ask-options-even-bg: var(--body-mid);
--smw-ask-options-odd-bg: var(--body-light);
--smw-ask-action-btn-lblue-bg: var(--body-main);
--smw-ask-action-btn-lblue-color: #000;
--smw-ask-action-btn-lblue-border-color: var(--body-light);
--smw-ask-action-btn-dblue-bg: var(--body-light);
--smw-ask-action-btn-dblue-color: #fff;
--smw-ask-action-btn-dblue-border-color: var(--button-border);
}
.smw-ask-condition fieldset,
.smw-ask-printhead fieldset {
border-color: var(--sidebar);
}
.smw-ask-search fieldset,
.smw-ask-format fieldset,
.smw-ask-options fieldset {
border-color: var(--sidebar);
}
.strike > span:before,
.strike > span:after {
background: var(--sidebar);
}
.smw-ask-options-fields tr td {
background-color: var(--smw-ask-options-even-bg);
}
.smw-ask-options-fields tr:nth-child(odd) td {
background-color: var(--smw-ask-options-odd-bg);
}
.smw-ask-action-btn.smw-ask-action-btn-lblue,
.smw-ask-action-btn.smw-ask-action-btn-lblue:hover,
.smw-ask-action-btn.smw-ask-action-btn-lblue:visited {
background-color: var(--smw-ask-action-btn-lblue-bg);
color: var(--smw-ask-action-btn-lblue-color);
border-color: var(--smw-ask-action-btn-lblue-border-color);
}
.smw-ask-action-btn.smw-ask-action-btn-dblue,
.smw-ask-action-btn.smw-ask-action-btn-dblue:hover,
.smw-ask-action-btn.smw-ask-action-btn-dblue:visited {
background-color: var(--smw-ask-action-btn-dblue-bg);
color: var(--smw-ask-action-btn-dblue-color);
border-color: var(--smw-ask-action-btn-dblue-border-color);
}
.smw-ask-query textarea,
.smw-ask-actions textarea {
background-color: var(--ooui-interface);
border-color: var(--ooui-interface-border);
color: var(--ooui-text);
}
.smw-ask-query-format select {
background-color: var(--ooui-interface);
border: 1px solid var(--ooui-interface-border);
color: var(--ooui-text);
}
.smw-ask-toplinks {
background-color: var(--body-mid);
}
.smw-ask-toplinks span.smw-icon-info {
background: none;
padding: 0 !important;
}
.smw-ask-toplinks span.smw-icon-info::before {
content: '';
background: var(--text-color);
-webkit-mask: url("data:image/svg+xml,%3C%3Fxml version='1.0' encoding='UTF-8'%3F%3E%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 20 20'%3E%3Ctitle%3Einfo%3C/title%3E%3Cpath d='M10 0C4.477 0 0 4.477 0 10s4.477 10 10 10 10-4.477 10-10S15.523 0 10 0zM9 5h2v2H9zm0 4h2v6H9z'/%3E%3C/svg%3E") no-repeat 50% 50% / contain;
mask: url("data:image/svg+xml,%3C%3Fxml version='1.0' encoding='UTF-8'%3F%3E%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 20 20'%3E%3Ctitle%3Einfo%3C/title%3E%3Cpath d='M10 0C4.477 0 0 4.477 0 10s4.477 10 10 10 10-4.477 10-10S15.523 0 10 0zM9 5h2v2H9zm0 4h2v6H9z'/%3E%3C/svg%3E") no-repeat 50% 50% / contain;
padding: 0 0 3px 18px;
}
.smw-ask-options-row-odd {
background-color: var(--body-light);
}
.smw-ask-options-row-even {
background-color: var(--body-mid);
}
#options-toggle:not(:checked) + #options-list .options-parameter-list:after {
background-image: linear-gradient(to bottom, transparent, var(--body-mid) 90%);
}
.smw-ask-button-submit input {
background-color: var(--ooui-normal);
border-color: var(--ooui-normal-border);
color: var(--text-color);
}
.smw-ask-button-submit input:hover,
.smw-ask-button-lgrey:hover {
background-color: var(--ooui-normal--hover);
border-color: var(--ooui-normal-border);
}
input.smw-ask-action-btn.smw-ask-action-btn-dblue {
background-color: var(--ooui-normal);
border-color: var(--ooui-normal-border);
color: var(--ooui-text);
}
a.smw-ask-action-btn.smw-ask-action-btn-lblue {
background-color: var(--body-mid);
border-color: var(--body-mid);
color: var(--ooui-text);
}
a.smw-ask-action-btn.smw-ask-action-btn-lblue:visited {
background-color: var(--body-mid);
border-color: var(--body-mid);
color: var(--ooui-text);
}
a.smw-ask-action-btn.smw-ask-action-btn-lblue:hover {
background-color: var(--body-mid);
border-color: var(--body-mid);
color: var(--ooui-text);
}
a.smw-ask-action-btn-lgrey {
background-color: var(--ooui-normal);
border-color: var(--ooui-normal-border);
color: var(--ooui-text);
}
a.smw-ask-action-btn-lgrey:hover {
background-color: var(--ooui-normal--hover);
border-color: var(--ooui-normal-border);
color: var(--ooui-text);
}
.smw-callout-error {
background-color: var(--errorbox-bg);
border-color: var(--errorbox-border);
}
.smw-callout-info {
background-color: var(--body-light);
border-color: var(--body-dark);
}
.smw-callout-success {
background-color: var(--successbox-bg);
border-color: var(--successbox-border);
}
.smw-callout-warning {
background-color: var(--warningbox-bg);
border-color: var(--warningbox-bg);
}
.smw-tabs input.nav-tab:checked + label.nav-label,
.smw-tabs input.nav-tab:checked + label.nav-label:hover {
color: inherit;
}
#tab-smw-property-value:checked + label.nav-label .usage-count {
color: #fff;
background-color: var(--ooui-progressive);
}
#tab-smw-property-value:checked + label.nav-label .usage-count.moderate {
color: #fff;
background-color: #b55e0c;
border-color: #b55e0c;
}
#tab-smw-property-value:checked + label.nav-label .usage-count.high {
color: #fff;
background-color: #9f261e;
border-color: #9f261e;
}
.smw-property-page-results .header-title {
background-color: var(--ooui-interface);
border-bottom-color: var(--ooui-interface-border);
color: var(--ooui-text);
}
.smw-property-page-results .value-row:hover {
background-color: var(--ooui-normal--hover);
}
.smw-property-page-results .smw-table .header-row {
color: var(--text-color);
}
.tippy-tooltip.light-border-theme {
background-color: var(--body-light);
color: var(--text-color);
}
.tippy-tooltip.light-border-theme .tippy-arrow {
border-top-color: var(--body-light);
}
.tippy-tooltip.light-border-theme .tippy-arrow:after {
border-top-color: var(--body-light);
}
.tippy-header {
background-color: var(--body-dark);
border-bottom-color: var(--body-mid);
}
.smw-ui-input-filter {
background-color: var(--ooui-interface);
border-color: var(--ooui-interface-border);
color: var(--ooui-text);
}
.smw-ui-input-filter input {
border-left-color: var(--ooui-interface-border) !important;
color: var(--ooui-text) !important;
}
.smw-ui-pagination .page-link.link-disabled {
background-color: var(--ooui-disabled);
border-color: var(--ooui-disabled-border);
color: var(--subtle-color);
}
.smw-ui-pagination .page-link {
background-color: var(--ooui-normal);
border-color: var(--ooui-normal-border);
color: var(--link-color);
}
.smw-ui-pagination .page-link:hover {
background-color: var(--ooui-normal--hover);
border-color: var(--ooui-normal-border);
color: var(--link-color);
}
.smw-ui-pagination .page-link.link-active {
color: #fff;
background-color: var(--ooui-progressive);
border-color: var(--ooui-progressive);
}
.smw-tabs input.nav-tab:checked + label.nav-label {
border-color: var(--ooui-normal-border);
}
.smw-tabs section,
.smw-tabs .subtab-content {
border-top-color: var(--ooui-normal-border);
}
.smw-column-header {
color: var(--text-color);
}
.smw-factbox {
background: var(--body-main);
border-color: transparent;
}
.mw-body .mw-indicators #mw-indicator-smw-entity-examiner.mw-indicator .smw-indicator-vertical-bar-loader {
display: none;
}
.smwb-theme-light .smwb-title,
.smwb-theme-light .smwb-center,
.smwb-theme-light .smwb-actions,
.smwb-theme-light .smwb-prophead {
background-color: var(--body-mid);
}
.smwb-theme-light .smwb-factbox {
border-left-color: var(--body-mid);
}
.smwb-theme-light .smwb-ifactbox {
border-right-color: var(--body-mid);
}
.smwb-theme-light .smwb-propval {
background-color: var(--body-light);
}
.smwb-action-separator {
border-color: var(--wikitable-border);
}
.smwb-bottom {
border-bottom: 1px solid var(--wikitable-border);
}
.smwb-ifactbox .smwb-cell,
.smwb-factbox .smwb-cell {
border-top: 1px solid var(--wikitable-border);
}
.smwb-propvalue .smwb-prophead,
.smwb-ipropvalue .smwb-prophead,
.smwb-propvalue .smwb-propval,
.smwb-ipropvalue .smwb-propval {
font-size: 0.9em;
}
:root {
--filter-black-to-link: invert(36%) sepia(58%) saturate(433%) hue-rotate(344deg) brightness(100%) contrast(91%);
}
#bodyContent span.smwbrowse a {
color: black;
background-image: url('filepath://Smwbrowse.svg');
filter: var(--filter-black-to-link);
}
#bodyContent span.smwbrowse a:hover {
color: black;
background-image: url('filepath://Smwbrowse-hover.svg');
text-decoration: underline;
}
#bodyContent span.smwsearch a {
color: black;
filter: var(--filter-black-to-link);
background-image: url('filepath://Smwsearch.svg');
}
#bodyContent span.smwsearch a:hover {
color: black;
background-image: url('filepath://Smwsearch-hover.svg');
text-decoration: underline;
}
:root {
--tabber-tab-bg: var(--body-light);
--tabber-tab-border-color: var(--body-border);
--tabber-active-tab-bg: var(--body-light);
--tabber-active-tab-color: var(--text-color);
--tabber-active-tab-hover-bg: var(--body-light);
--tabber-active-tab-hover-border-color: var(--body-border);
--tabber-active-tab-hover-color: var(--text-color);
--tabber-active-tab-border-hider-color: var(--body-light);
--tabber-inactive-tab-bg: var(--body-background-color);
--tabber-inactive-tab-border-color: var(--body-border);
--tabber-inactive-tab-color: var(--text-color);
--tabber-inactive-tab-hover-bg: var(--body-light);
--tabber-inactive-tab-hover-border-color: var(--body-border);
}
.tabber {
margin: 1em 0;
}
.tabber .tabbertab {
background-color: var(--tabber-tab-bg);
border: 1px solid var(--tabber-tab-border-color);
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
padding: 1em 1.5em;
}
ul.tabbernav {
border: none;
margin-left: 2em;
margin-bottom: 0;
margin-right: 2em;
padding: 0;
font-family: inherit;
}
ul.tabbernav li.tabberactive > a {
background-color: var(--tabber-active-tab-bg);
color: var(--tabber-active-tab-color);
border-bottom: none;
position: relative;
}
ul.tabbernav li.tabberactive > a:hover {
color: var(--tabber-active-tab-hover-color);
background-color: var(--tabber-active-tab-hover-bg);
border-color: var(--tabber-active-tab-hover-border-color);
border-bottom: none;
}
ul.tabbernav li.tabberactive > a::after {
content: '';
position: absolute;
left: 0;
right: 0;
bottom: -1px;
border-bottom: 2px solid var(--tabber-active-tab-border-hider-color);
}
ul.tabbernav li a {
background-color: var(--tabber-inactive-tab-bg);
border-bottom: transparent;
border-color: var(--tabber-inactive-tab-border-color);
color: var(--tabber-inactive-tab-color);
display: inline-block;
font-size: 110%;
padding: 0.5em 1em;
}
ul.tabbernav li a:hover {
background-color: var(--tabber-inactive-tab-hover-bg);
border-color: var(--tabber-inactive-tab-hover-border-color);
}
ul.tabbernav li a:link,
ul.tabbernav li a:visited {
color: var(--tabber-inactive-tab-color);
}
:root {
--ooui-text: var(--text-color);
--ooui-interface: var(--body-light);
--ooui-interface-border: var(--body-border);
--ooui-window-background: rgba(255, 255, 255, 0.5);
--ooui-normal: #d5c7ad;
--ooui-normal--hover: #dfd5c1;
--ooui-normal-border: #b8a282;
--ooui-progressive: #605443;
--ooui-progressive--hover: #7e6e58;
--ooui-accent: var(--link-color);
--ooui-input: #fff;
--ooui-input-border: #b8a282;
--ooui-input-border--hover: #8a724f;
--ooui-disabled: #d1cdc5;
--ooui-disabled-border: #c2b9ab;
--ooui-disabled-text: var(--subtle-color);
--ooui-pending-background-image: repeating-linear-gradient(-45deg, var(--search-box), var(--search-box) 20px, var(--body-main) 20px, var(--body-main) 30px);
}
.oo-ui-widget {
color: var(--ooui-text);
}
.oo-ui-checkboxInputWidget [type='checkbox'] + span,
.oo-ui-radioInputWidget [type='radio'] + span {
background-color: var(--ooui-input);
border-color: var(--ooui-input-border);
}
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:checked + span,
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:indeterminate + span {
background-color: var(--ooui-progressive);
border-color: var(--ooui-progressive);
}
.oo-ui-radioInputWidget.oo-ui-widget-enabled [type='radio']:checked + span {
border-color: var(--ooui-progressive);
}
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:checked:hover + span,
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:indeterminate:hover + span {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
}
.oo-ui-radioInputWidget.oo-ui-widget-enabled [type='radio']:checked:hover + span {
border-color: var(--ooui-progressive--hover);
}
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:hover + span,
.oo-ui-radioInputWidget.oo-ui-widget-enabled [type='radio']:hover + span {
border-color: var(--ooui-accent);
}
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:focus + span {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:active + span,
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:checked:active + span,
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:indeterminate:active + span {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
box-shadow: inset 0 0 0 1px var(--ooui-progressive--hover);
}
.oo-ui-radioInputWidget.oo-ui-widget-enabled [type='radio']:active + span {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
}
.oo-ui-radioInputWidget.oo-ui-widget-enabled [type='radio']:checked:active + span {
border-color: var(--ooui-progressive--hover);
box-shadow: inset 0 0 0 1px var(--ooui-progressive--hover);
}
.oo-ui-radioInputWidget.oo-ui-widget-enabled [type='radio']:checked:active + span:before {
border-color: var(--ooui-progressive--hover);
}
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:checked:focus + span,
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:indeterminate:focus + span {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent), inset 0 0 0 2px #fff;
}
.oo-ui-checkboxInputWidget [type='checkbox']:disabled + span,
.oo-ui-radioInputWidget [type='radio']:disabled + span {
background-color: var(--ooui-disabled);
border-color: var(--ooui-disabled);
}
.oo-ui-dropdownWidget-handle {
border-color: var(--ooui-normal-border);
}
.oo-ui-dropdownWidget.oo-ui-widget-enabled .oo-ui-dropdownWidget-handle {
background-color: var(--ooui-normal);
color: var(--ooui-text);
}
.oo-ui-dropdownWidget.oo-ui-widget-enabled .oo-ui-dropdownWidget-handle:hover {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
}
.oo-ui-dropdownWidget.oo-ui-widget-enabled .oo-ui-dropdownWidget-handle:active {
color: var(--ooui-text);
}
.oo-ui-dropdownWidget.oo-ui-widget-enabled .oo-ui-dropdownWidget-handle:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-dropdownWidget.oo-ui-widget-enabled.oo-ui-dropdownWidget-open .oo-ui-dropdownWidget-handle {
background-color: var(--ooui-normal--hover);
}
.oo-ui-dropdownWidget.oo-ui-widget-disabled .oo-ui-dropdownWidget-handle {
color: var(--ooui-disabled-text);
text-shadow: none;
border-color: var(--ooui-disabled-border);
background-color: var(--ooui-disabled);
}
.oo-ui-dropdownInputWidget select {
border-color: var(--ooui-normal-border);
}
.oo-ui-dropdownInputWidget option {
background-color: var(--ooui-interface);
}
.oo-ui-dropdownInputWidget.oo-ui-widget-enabled {
background-color: var(--ooui-normal);
}
.oo-ui-dropdownInputWidget.oo-ui-widget-enabled:hover {
background-color: var(--ooui-normal--hover);
}
.oo-ui-dropdownInputWidget.oo-ui-widget-enabled select {
color: var(--ooui-text);
}
.oo-ui-dropdownInputWidget.oo-ui-widget-enabled select:hover,
.oo-ui-dropdownInputWidget.oo-ui-widget-enabled select:active {
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
}
.oo-ui-dropdownInputWidget.oo-ui-widget-enabled select:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-labelWidget.oo-ui-inline-help {
color: var(--byline-color);
}
.oo-ui-menuSelectWidget {
background-color: var(--ooui-interface);
border-color: var(--ooui-interface-border);
}
.oo-ui-menuSelectWidget-frameless {
box-shadow: inset 0 -1px 0 0 var(--ooui-normal-border);
}
.oo-ui-menuSectionOptionWidget {
color: var(--byline-color);
}
.oo-ui-menuOptionWidget.oo-ui-optionWidget-highlighted,
.oo-ui-menuOptionWidget.oo-ui-optionWidget-selected {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
}
.oo-ui-menuOptionWidget.oo-ui-optionWidget-selected.oo-ui-menuOptionWidget.oo-ui-optionWidget-highlighted,
.oo-ui-menuOptionWidget.oo-ui-optionWidget-pressed.oo-ui-menuOptionWidget.oo-ui-optionWidget-highlighted {
color: var(--ooui-accent);
}
.oo-ui-menuOptionWidget.oo-ui-widget-enabled.oo-ui-optionWidget {
color: var(--ooui-text);
}
.oo-ui-messageDialog-title {
color: inherit;
}
.oo-ui-messageWidget.oo-ui-messageWidget-block.oo-ui-flaggedElement-error {
background-color: var(--errorbox-bg);
border-color: var(--errorbox-border);
}
.oo-ui-messageWidget.oo-ui-messageWidget-block.oo-ui-flaggedElement-warning {
background-color: var(--warningbox-bg);
border-color: var(--warningbox-border);
}
.oo-ui-messageWidget.oo-ui-messageWidget-block.oo-ui-flaggedElement-success {
background-color: var(--successbox-bg);
border-color: var(--successbox-border);
}
.oo-ui-messageWidget.oo-ui-messageWidget-block.oo-ui-flaggedElement-notice {
background-color: var(--messagebox-info-background);
border-color: var(--messagebox-info-border);
}
.oo-ui-messageWidget.oo-ui-flaggedElement-error:not(.oo-ui-messageWidget-block),
.oo-ui-messageWidget.oo-ui-flaggedElement-success:not(.oo-ui-messageWidget-block) {
color: var(--ooui-text);
}
.oo-ui-optionWidget.oo-ui-widget-disabled {
color: var(--ooui-disabled-text);
}
.oo-ui-outlineControlsWidget {
background-color: var(--ooui-normal);
}
.oo-ui-outlineOptionWidget.oo-ui-optionWidget-highlighted {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
}
.oo-ui-popupWidget-popup {
background-color: var(--ooui-interface);
border-color: var(--ooui-interface-border);
}
.oo-ui-popupWidget-anchored-top .oo-ui-popupWidget-anchor:after {
border-bottom-color: var(--ooui-interface);
}
.oo-ui-popupWidget-anchored-top .oo-ui-popupWidget-anchor:before {
border-bottom-color: var(--ooui-interface-border);
}
.oo-ui-popupWidget-anchored-bottom .oo-ui-popupWidget-anchor:after {
border-top-color: var(--ooui-interface);
}
.oo-ui-popupWidget-anchored-bottom .oo-ui-popupWidget-anchor:before {
border-top-color: var(--ooui-interface-border);
}
.oo-ui-popupWidget-anchored-start .oo-ui-popupWidget-anchor:after {
border-right-color: var(--ooui-interface);
}
.oo-ui-popupWidget-anchored-start .oo-ui-popupWidget-anchor:before {
border-right-color: var(--ooui-interface-border);
}
.oo-ui-popupWidget-anchored-end .oo-ui-popupWidget-anchor:after {
border-left-color: var(--ooui-interface);
}
.oo-ui-popupWidget-anchored-end .oo-ui-popupWidget-anchor:before {
border-left-color: var(--ooui-interface-border);
}
.oo-ui-searchWidget-query {
border-bottom-color: var(--ooui-interface-border);
}
.oo-ui-selectFileWidget-dropTarget {
background-color: var(--ooui-interface);
border-color: var(--ooui-interface-border);
}
.oo-ui-selectFileWidget.oo-ui-widget-enabled.oo-ui-selectFileWidget-dropTarget {
background-color: var(--ooui-interface);
}
.oo-ui-selectFileWidget.oo-ui-widget-enabled.oo-ui-selectFileWidget-dropTarget:hover {
border-color: var(--ooui-input-border--hover);
}
.oo-ui-tabOptionWidget {
color: var(--ooui-text);
}
.oo-ui-tabSelectWidget-framed .oo-ui-tabOptionWidget.oo-ui-optionWidget-selected {
background-color: var(--body-dark);
color: var(--ooui-text);
}
.oo-ui-tabSelectWidget-framed .oo-ui-tabOptionWidget.oo-ui-optionWidget-selected .oo-ui-labelElement-label {
border-bottom-color: var(--body-border);
}
.oo-ui-tabSelectWidget-framed .oo-ui-tabOptionWidget.oo-ui-widget-enabled:hover,
.oo-ui-tabSelectWidget-framed .oo-ui-tabOptionWidget.oo-ui-widget-enabled:active {
background-color: var(--body-light);
color: var(--ooui-text);
}
.oo-ui-tabSelectWidget-framed .oo-ui-tabOptionWidget.oo-ui-widget-enabled.oo-ui-optionWidget-selected:hover {
background-color: var(--body-dark);
}
.oo-ui-tabSelectWidget-frameless .oo-ui-tabOptionWidget.oo-ui-optionWidget-selected {
color: var(--ooui-progressive);
box-shadow: inset 0 -2px 0 0 var(--ooui-progressive);
}
.oo-ui-tabSelectWidget-frameless .oo-ui-tabOptionWidget.oo-ui-optionWidget-selected:hover,
.oo-ui-tabSelectWidget-frameless .oo-ui-tabOptionWidget.oo-ui-optionWidget-selected:focus {
color: var(--ooui-progressive--hover);
box-shadow: inset 0 -2px 0 0 var(--ooui-progressive--hover);
}
.oo-ui-tabSelectWidget-framed {
background: none;
border-bottom: 1px solid var(--ooui-interface-border);
}
.oo-ui-tabSelectWidget-frameless {
box-shadow: inset 0 -1px 0 0 var(--ooui-interface-border);
}
.oo-ui-tabSelectWidget-mobile {
}
.oo-ui-tabSelectWidget-mobile.oo-ui-tabSelectWidget-framed:after {
background: var(--mobile-navbox-linear-gradient);
}
.oo-ui-tabSelectWidget-mobile.oo-ui-tabSelectWidget-frameless:after {
background: var(--mobile-navbox-linear-gradient);
}
.oo-ui-tagItemWidget {
border-color: var(--ooui-normal-border);
}
.oo-ui-tagItemWidget.oo-ui-widget-enabled {
color: var(--ooui-text);
}
.oo-ui-tagItemWidget.oo-ui-widget-enabled:hover {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
}
.oo-ui-tagItemWidget.oo-ui-widget-enabled:not( .oo-ui-tagItemWidget-fixed ) {
background-color: var(--ooui-normal);
}
.oo-ui-tagItemWidget.oo-ui-widget-enabled .oo-ui-buttonElement-button:hover {
background-color: var(--ooui-normal--hover);
}
.oo-ui-tagMultiselectWidget.oo-ui-widget-enabled {
background-color: var(--ooui-interface);
}
.oo-ui-tagMultiselectWidget.oo-ui-widget-enabled.oo-ui-tagMultiselectWidget-outlined {
background-color: var(--ooui-normal);
}
.oo-ui-tagMultiselectWidget.oo-ui-widget-enabled.oo-ui-tagMultiselectWidget-outlined .oo-ui-tagItemWidget.oo-ui-widget-enabled {
background-color: var(--ooui-interface);
}
.oo-ui-textInputWidget .oo-ui-inputWidget-input {
background-color: var(--ooui-input);
color: var(--ooui-text);
border-color: var(--ooui-input-border);
}
.oo-ui-textInputWidget.oo-ui-widget-enabled .oo-ui-inputWidget-input::placeholder {
color: var(--subtle-color);
}
.oo-ui-textInputWidget.oo-ui-widget-enabled .oo-ui-inputWidget-input:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-textInputWidget.oo-ui-widget-enabled .oo-ui-inputWidget-input[readonly]:not(.oo-ui-pendingElement-pending) {
background-color: var(--ooui-disabled);
color: var(--ooui-disabled-text);
}
.oo-ui-textInputWidget.oo-ui-widget-enabled:hover .oo-ui-inputWidget-input {
border-color: var(--ooui-input-border--hover);
}
.oo-ui-textInputWidget.oo-ui-widget-enabled:hover .oo-ui-inputWidget-input:focus {
border-color: var(--ooui-accent);
}
@media screen and (min-width: 0) {
.oo-ui-textInputWidget.oo-ui-widget-enabled textarea.oo-ui-inputWidget-input:focus {
outline: 1px solid var(--ooui-accent);
}
}
.oo-ui-textInputWidget.oo-ui-widget-disabled .oo-ui-inputWidget-input {
background-color: var(--ooui-disabled);
color: var(--ooui-disabled-text);
text-shadow: none;
border-color: var(--ooui-disabled-border);
}
.oo-ui-toggleSwitchWidget {
background-color: var(--ooui-input);
border-color: var(--ooui-input-border);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled .oo-ui-toggleSwitchWidget-grip {
background-color: var(--ooui-input);
border-color: var(--ooui-input-border);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:hover {
background-color: var(--ooui-input);
border-color: var(--ooui-accent);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:hover .oo-ui-toggleSwitchWidget-grip {
background-color: var(--ooui-input);
border-color: var(--ooui-accent);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:active,
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:active:hover,
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:active:focus {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
box-shadow: inset 0 0 0 1px var(--ooui-progressive--hover);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:active .oo-ui-toggleSwitchWidget-grip,
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:active:hover .oo-ui-toggleSwitchWidget-grip,
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:active:focus .oo-ui-toggleSwitchWidget-grip {
background-color: var(--ooui-input);
border-color: var(--ooui-input);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:focus .oo-ui-toggleSwitchWidget-grip {
border-color: var(--ooui-accent);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled.oo-ui-toggleWidget-on {
background-color: var(--ooui-progressive);
border-color: var(--ooui-progressive);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled.oo-ui-toggleWidget-on .oo-ui-toggleSwitchWidget-grip {
background-color: var(--ooui-input);
border-color: var(--ooui-input);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled.oo-ui-toggleWidget-on:hover {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled.oo-ui-toggleWidget-on:active,
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled.oo-ui-toggleWidget-on:active:hover {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled.oo-ui-toggleWidget-on:focus {
border-color: var(--ooui-progressive);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled.oo-ui-toggleWidget-on:focus::before {
border-color: #fff;
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-disabled {
background-color: var(--ooui-disabled);
border-color: var(--ooui-disabled);
}
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled > .oo-ui-buttonElement-button {
color: var(--ooui-text);
}
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled > .oo-ui-buttonElement-button:hover {
color: var(--ooui-text);
}
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled > .oo-ui-buttonElement-button:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled.oo-ui-buttonElement-pressed > input.oo-ui-buttonElement-button,
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled > .oo-ui-buttonElement-button:active {
color: var(--ooui-text);
}
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button,
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button:hover {
color: var(--ooui-text);
}
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button:active,
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive.oo-ui-buttonElement-pressed > .oo-ui-buttonElement-button {
color: var(--ooui-text);
border-color: var(--ooui-text);
}
.oo-ui-buttonElement-frameless.oo-ui-widget-disabled > .oo-ui-buttonElement-button {
color: var(--ooui-disabled-text);
}
.oo-ui-buttonElement-framed.oo-ui-widget-disabled > .oo-ui-buttonElement-button {
background-color: var(--ooui-disabled);
border-color: var(--ooui-disabled-border);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled > .oo-ui-buttonElement-button {
background-color: var(--ooui-normal);
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled > .oo-ui-buttonElement-button:hover {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled > .oo-ui-buttonElement-button:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-buttonElement-active > .oo-ui-buttonElement-button {
background-color: var(--ooui-progressive--hover);
color: #fff;
border-color: var(--ooui-progressive--hover);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-buttonElement-active > .oo-ui-buttonElement-button:focus {
border-color: var(--ooui-progressive--hover);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled > .oo-ui-buttonElement-button:active,
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-buttonElement-pressed > .oo-ui-buttonElement-button {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive {
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button {
color: var(--ooui-text);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button:hover {
background-color: var(--ooui-normal--hover);
border-color: var(--ooui-progressive--hover);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-destructive > .oo-ui-buttonElement-button {
color: var(--ooui-text);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-destructive > .oo-ui-buttonElement-button:hover {
background-color: var(--ooui-normal--hover);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button {
background-color: var(--ooui-progressive);
border-color: var(--ooui-progressive);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button:hover {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent), inset 0 0 0 2px #fff;
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button:active,
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive.oo-ui-buttonElement-pressed > .oo-ui-buttonElement-button,
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive.oo-ui-buttonElement-active > .oo-ui-buttonElement-button,
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive.oo-ui-popupToolGroup-active > .oo-ui-buttonElement-button {
color: #fff;
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
}
.oo-ui-pendingElement-pending {
background-image: var(--ooui-pending-background-image);
background-size: 200%;
animation: oo-ui-pendingElement-stripes 6s linear infinite;
}
@keyframes oo-ui-pendingElement-stripes {
100% {
background-position: 100%;
}
}
.oo-ui-messageDialog-content > .oo-ui-window-foot {
outline-color: var(--ooui-interface-border);
}
.oo-ui-messageDialog-message {
color: var(--ooui-text);
}
.oo-ui-messageDialog-actions-horizontal .oo-ui-actionWidget {
border-right-color: var(--ooui-interface-border);
}
.oo-ui-messageDialog-actions-vertical .oo-ui-actionWidget {
border-bottom-color: var(--ooui-interface-border);
}
.oo-ui-processDialog-content .oo-ui-window-head,
.oo-ui-processDialog-content .oo-ui-window-foot {
outline-color: var(--ooui-interface-border);
}
.oo-ui-processDialog .oo-ui-actionWidget > .oo-ui-buttonElement-button {
border-top-color: transparent;
border-bottom-color: transparent;
}
.oo-ui-processDialog .oo-ui-actionWidget > .oo-ui-buttonElement-button:hover,
.oo-ui-processDialog .oo-ui-actionWidget > .oo-ui-buttonElement-button:active {
border-top-color: transparent;
border-bottom-color: transparent;
}
.oo-ui-processDialog .oo-ui-actionWidget:not( .oo-ui-flaggedElement-progressive ):not( .oo-ui-flaggedElement-destructive ) > .oo-ui-buttonElement-button:hover,
.oo-ui-processDialog .oo-ui-actionWidget:not( .oo-ui-flaggedElement-progressive ):not( .oo-ui-flaggedElement-destructive ) > .oo-ui-buttonElement-button:active {
border-right-color: var(--ooui-interface-border);
border-left-color: transparent;
}
.oo-ui-processDialog .oo-ui-actionWidget:not( .oo-ui-flaggedElement-progressive ):not( .oo-ui-flaggedElement-destructive ) > .oo-ui-buttonElement-button:focus {
border-color: var(--ooui-accent);
}
.oo-ui-processDialog-actions-safe .oo-ui-actionWidget > .oo-ui-buttonElement-button,
.oo-ui-processDialog-actions-other .oo-ui-actionWidget > .oo-ui-buttonElement-button {
border-right-color: var(--ooui-normal-border);
border-left-color: transparent;
}
.oo-ui-processDialog-actions-safe .oo-ui-widget-enabled.oo-ui-iconElement:not( .oo-ui-labelElement ) > .oo-ui-buttonElement-button:hover {
background-color: var(--ooui-normal--hover);
border-right-color: var(--ooui-interface-border);
}
.oo-ui-windowManager-modal > .oo-ui-dialog {
background-color: var(--ooui-window-background);
}
.oo-ui-windowManager-modal > .oo-ui-dialog > .oo-ui-window-frame {
background-color: var(--ooui-interface);
}
.oo-ui-windowManager-modal.oo-ui-windowManager-floating > .oo-ui-dialog > .oo-ui-window-frame {
border-color: var(--ooui-interface-border);
}
.oo-ui-window {
color: var(--ooui-text);
}
.oo-ui-toolbar-bar {
background-color: var(--ooui-interface);
color: var(--ooui-text);
}
.oo-ui-toolbar-position-top > .oo-ui-toolbar-bar {
border-bottom-color: var(--body-mid);
}
.oo-ui-toolbar-bar .oo-ui-bookletLayout > .oo-ui-menuLayout-menu {
border-right-color: var(--body-mid);
}
.oo-ui-tool.oo-ui-widget-enabled > .oo-ui-tool-link:hover {
background-color: var(--ooui-normal--hover);
}
.oo-ui-tool.oo-ui-widget-enabled > .oo-ui-tool-link:focus {
outline: 1px solid var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-tool.oo-ui-widget-enabled > .oo-ui-tool-link:active,
.oo-ui-tool.oo-ui-widget-enabled.oo-ui-tool-active > .oo-ui-tool-link,
.oo-ui-tool.oo-ui-widget-enabled.oo-ui-popupToolGroup-active > .oo-ui-tool-link {
background-color: var(--ooui-normal--hover);
color: var(--ooui-accent);
box-shadow: none;
}
.oo-ui-tool.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive > .oo-ui-tool-link {
background-color: var(--ooui-progressive);
}
.oo-ui-tool.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive > .oo-ui-tool-link:hover {
background-color: var(--ooui-progressive--hover);
}
.oo-ui-tool.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive > .oo-ui-tool-link:focus {
box-shadow: inset 0 0 0 1px var(--ooui-accent), inset 0 0 0 2px #fff;
}
.oo-ui-tool.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive > .oo-ui-tool-link:active,
.oo-ui-tool.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive.oo-ui-tool-active > .oo-ui-tool-link {
background-color: var(--ooui-progressive--hover);
}
.oo-ui-listToolGroup-tools .oo-ui-tool.oo-ui-widget-enabled {
background-color: var(--ooui-normal);
}
.oo-ui-listToolGroup-tools .oo-ui-tool.oo-ui-widget-enabled:hover {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
}
.oo-ui-listToolGroup-tools .oo-ui-tool-active.oo-ui-widget-enabled .oo-ui-tool-link .oo-ui-tool-title {
color: var(--ooui-progressive);
}
.oo-ui-menuToolGroup {
border-left-color: var(--body-mid);
border-right-color: var(--body-mid);
}
.oo-ui-popupToolGroup-tools {
background-color: var(--ooui-interface);
border-color: var(--body-mid);
}
.oo-ui-popupToolGroup.oo-ui-widget-enabled > .oo-ui-popupToolGroup-handle:hover {
background-color: var(--ooui-normal--hover);
}
.oo-ui-popupToolGroup.oo-ui-widget-enabled > .oo-ui-popupToolGroup-handle:focus {
outline: 1px solid var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-toolbar-actions .oo-ui-popupToolGroup.oo-ui-widget-enabled > .oo-ui-popupToolGroup-handle:hover {
border-right-color: var(--ooui-normal--hover);
}
.oo-ui-popupToolGroup-tools .oo-ui-tool.oo-ui-widget-enabled .oo-ui-tool-link:focus {
box-shadow: inset 0 0 0 2px var(--ooui-accent);
}
.oo-ui-popupToolGroup-tools .oo-ui-tool-active.oo-ui-widget-enabled .oo-ui-tool-link .oo-ui-tool-title {
color: var(--ooui-progressive);
}
.oo-ui-popupToolGroup.oo-ui-popupToolGroup-active > .oo-ui-popupToolGroup-handle {
background-color: var(--ooui-normal);
color: var(--ooui-accent);
}
.oo-ui-popupToolGroup.oo-ui-popupToolGroup-active > .oo-ui-popupToolGroup-handle:hover {
background-color: var(--ooui-normal--hover);
color: var(--ooui-accent);
}
.oo-ui-bookletLayout-outlinePanel > .oo-ui-outlineControlsWidget {
border-top-color: var(--ooui-interface-border);
}
.oo-ui-bookletLayout > .oo-ui-menuLayout-menu {
border-right-color: var(--ooui-interface-border);
}
.oo-ui-fieldLayout-disabled > .oo-ui-fieldLayout-body > .oo-ui-fieldLayout-header > .oo-ui-labelElement-label {
color: var(--ooui-disabled-text);
}
.oo-ui-panelLayout-framed {
border-color: var(--sidebar);
}
.oo-ui-icon-settings {
background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' width='20' height='20' viewBox='0 0 20 20'%3E%3Ctitle%3Esettings%3C/title%3E%3Cg transform='translate(10 10)'%3E%3Cpath id='a' d='M1.5-10h-3l-1 6.5h5m0 7h-5l1 6.5h3'/%3E%3Cuse xlink:href='%23a' transform='rotate(45)'/%3E%3Cuse xlink:href='%23a' transform='rotate(90)'/%3E%3Cuse xlink:href='%23a' transform='rotate(135)'/%3E%3C/g%3E%3Cpath d='M10 2.5a7.5 7.5 0 0 0 0 15 7.5 7.5 0 0 0 0-15v4a3.5 3.5 0 0 1 0 7 3.5 3.5 0 0 1 0-7'/%3E%3C/svg%3E");
}
.oo-ui-icon-clear {
background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 20 20'%3E%3Ctitle%3Eclear%3C/title%3E%3Cpath d='M10 0a10 10 0 1 0 10 10A10 10 0 0 0 10 0zm5.66 14.24-1.41 1.41L10 11.41l-4.24 4.25-1.42-1.42L8.59 10 4.34 5.76l1.42-1.42L10 8.59l4.24-4.24 1.41 1.41L11.41 10z'/%3E%3C/svg%3E");
}
.mw-widget-dateInputWidget-handle {
background-color: var(--ooui-input);
color: var(--ooui-text);
border-color: var(--ooui-input-border);
}
.mw-widget-dateInputWidget-calendar {
background-color: var(--ooui-interface);
}
.mw-widget-dateInputWidget.oo-ui-widget-enabled .mw-widget-dateInputWidget-handle:hover {
border-color: var(--ooui-input-border--hover);
}
.mw-widget-calendarWidget {
border-color: var(--ooui-interface-border);
}
.mw-widget-calendarWidget:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.mw-widget-calendarWidget-day,
.mw-widget-calendarWidget-day-heading {
color: var(--ooui-text);
}
.mw-widget-calendarWidget-day-additional {
color: var(--ooui-text);
opacity: 0.67;
}
.mw-widget-calendarWidget-day-today {
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.mw-widget-calendarWidget-item:hover {
background-color: var(--ooui-progressive);
}
.mw-widget-calendarWidget-item-selected {
background-color: var(--ooui-progressive--hover);
}
.mw-widgets-datetime-calendarWidget {
background-color: var(--ooui-interface);
border-color: var(--ooui-interface-border);
}
.mw-widgets-datetime-calendarWidget:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent), 0 2px 2px 0 rgba(0, 0, 0, 0.25);
}
.mw-widgets-datetime-calendarWidget-grid .mw-widgets-datetime-calendarWidget-cell.mw-widgets-datetime-calendarWidget-extra .oo-ui-buttonElement-button .oo-ui-labelElement-label {
color: var(--subtle-color);
}
.mw-widgets-datetime-calendarWidget-grid .mw-widgets-datetime-calendarWidget-cell.mw-widgets-datetime-calendarWidget-selected .oo-ui-buttonElement-button {
background-color: var(--ooui-progressive--hover);
}
.mw-widgets-datetime-dateTimeInputWidget-handle {
background-color: var(--ooui-input);
color: var(--ooui-text);
border-color: var(--ooui-input-border);
}
.mw-widgets-datetime-dateTimeInputWidget.oo-ui-widget-enabled.mw-widgets-datetime-dateTimeInputWidget-handle:hover {
border-color: var(--ooui-input-border--hover);
}
.mw-widgets-datetime-dateTimeInputWidget.oo-ui-widget-enabled:hover input,
.mw-widgets-datetime-dateTimeInputWidget.oo-ui-widget-enabled:hover textarea {
border-color: var(--ooui-input-border--hover);
}
.mw-widgets-datetime-dateTimeInputWidget.oo-ui-widget-enabled .mw-widgets-datetime-dateTimeInputWidget-editField:hover {
background-color: var(--ooui-normal);
}
.ve-activated .ve-init-mw-desktopArticleTarget-originalContent #catlinks:hover {
background: var(--ooui-normal--hover);
}
.ve-ui-overlay {
font-family: inherit;
}
.oo-ui-toolbar-position-top .ve-ui-toolbarDialog-position-above {
border-top-color: var(--body-mid);
}
.ve-ce-branchNode-blockSlug,
.ve-ce-branchNode-newSlug {
outline-color: var(--body-border);
background-color: var(--ooui-interface);
}
.ve-ui-specialCharacterPage h3 {
color: var(--byline-color);
}
.ve-ui-specialCharacterPage-character {
border-color: var(--body-mid);
}
.ve-ui-specialCharacterPage-character:hover {
border-color: var(--body-dark);
}
.ve-ce-linkAnnotation.ve-ce-annotation-active {
box-shadow: 0 0 0 1px var(--body-mid);
background: none;
}
.ve-ui-desktopContext .ve-ui-linkContextItem .ve-ui-linkContextItem-label {
border-color: var(--body-border);
}
.ve-ui-mwHelpPopupTool-version-label,
.ve-ui-mwHelpPopupTool-version-link,
.ve-ui-mwHelpPopupTool-version-date {
color: var(--byline-color);
}
.ve-ce-tableCellableNode {
border-color: var(--body-mid);
}
.ve-ce-mwReferencesListNode-muted {
color: var(--byline-color);
}
.ve-ui-mwTemplatePage-description,
.ve-ui-mwParameterPage-label,
.ve-ui-mwParameterPage-description-required,
.ve-ui-mwParameterPage-description-deprecated {
color: var(--byline-color);
}
.mw-widget-titleWidget-menu .mw-widget-titleOptionWidget-description {
color: var(--byline-color);
}
.ve-ui-mwGalleryDialog-menuLayout > .oo-ui-menuLayout-menu,
.ve-ui-mwGalleryDialog-innerMenuLayout > .oo-ui-menuLayout-menu,
.ve-ui-mwGalleryDialog .ve-ui-mwGalleryDialog-image-container,
.ve-ui-targetWidget {
border-color: var(--body-border);
}
.ve-ui-targetWidget:not(.oo-ui-pendingElement-pending) {
background-color: var(--body-main);
}
.ve-ui-mwSaveDialog {
color: var(--ooui-text);
}
.ve-ui-mwSaveDialog-options {
background-color: var(--ooui-interface);
border-color: var(--body-border);
}
.ve-ui-mwSaveDialog-summary {
background-color: var(--ooui-input);
}
.ve-ui-mwSaveDialog-editSummary-count {
border-color: var(--body-border);
}
.ve-ui-mwSaveDialog-license {
color: var(--byline-color);
}
.ve-ui-mwReferenceContextItem-muted {
color: var(--byline-color);
}
.ve-ui-mwNoticesPopupTool-items > div:not(:first-child),
.ve-ui-mwHelpPopupTool-item:not(:first-child) {
border-color: var(--body-border);
}
.ve-ui-mwTransclusionOutlineControlsWidget {
background-color: var(--ooui-interface);
border-top-color: var(--body-border);
}
.ve-ui-mwTransclusionOutlineTemplateWidget-sticky {
background-color: var(--ooui-interface);
}
.ve-ui-mwTransclusionOutlineTemplateWidget .ve-ui-mwTransclusionOutlineParameterWidget.oo-ui-optionWidget-highlighted {
color: var(--ooui-text);
}
.ve-ui-mwTransclusionOutlineTemplateWidget-no-template-parameters {
color: var(--subtle-color);
}
.ve-ui-mwParameterPage-undocumentedLabel {
color: var(--subtle-color);
}
.ve-ui-mwTwoPaneTransclusionDialogLayout > .oo-ui-menuLayout-menu {
border-right: var(--body-border);
}
.ve-ui-mwParameterPage-doc-required,
.ve-ui-mwParameterPage-doc-deprecated,
.ve-ui-mwParameterPage-inlineDescription .ve-ui-mwParameterPage-doc-example {
color: var(--byline-color);
}
.ve-ui-expandableContent-toggle {
background-color: var(--ooui-interface);
}
.ve-ui-expandableContent-fade {
background: linear-gradient(to right, rgba(255, 255, 255, 0) 0, var(--ooui-interface) 90%);
}
.ve-ui-commandHelpDialog-shortcut > kbd,
.ve-ui-commandHelpDialog-sequence > kbd {
background-color: var(--keypress-background);
color: var(--keypress-color);
border-color: var(--keypress-border);
box-shadow: none;
text-shadow: none;
}
.ve-init-mw-desktopArticleTarget-toolbarPlaceholder-floating .ve-init-mw-desktopArticleTarget-toolbarPlaceholder-bar {
background: var(--ooui-interface);
}
.ve-init-mw-desktopArticleTarget-toolbarPlaceholder-bar {
border-bottom-color: var(--body-mid);
}
figure[typeof~='mw:File/Thumb'],
figure[typeof~='mw:File/Frame'],
figure[typeof~='mw:Image/Thumb'],
figure[typeof~='mw:Video/Thumb'],
figure[typeof~='mw:Image/Frame'],
figure[typeof~='mw:Video/Frame'] {
border: none;
background-color: var(--thumb-bg);
}
figure[typeof~='mw:File/Thumb'] > a:first-child > *:first-child:not( .mw-broken-media ),
figure[typeof~='mw:File/Frame'] > a:first-child > *:first-child:not( .mw-broken-media ),
figure[typeof~='mw:Image/Thumb'] > a:first-child > *:first-child:not( .mw-broken-media ),
figure[typeof~='mw:Video/Thumb'] > a:first-child > *:first-child:not( .mw-broken-media ),
figure[typeof~='mw:Image/Frame'] > a:first-child > *:first-child:not( .mw-broken-media ),
figure[typeof~='mw:Video/Frame'] > a:first-child > *:first-child:not( .mw-broken-media ) {
border: none;
background: var(--thumb-bg);
}
figure[typeof~='mw:File/Thumb'] > figcaption,
figure[typeof~='mw:File/Frame'] > figcaption,
figure[typeof~='mw:Image/Thumb'] > figcaption,
figure[typeof~='mw:Video/Thumb'] > figcaption,
figure[typeof~='mw:Image/Frame'] > figcaption,
figure[typeof~='mw:Video/Frame'] > figcaption {
border: none;
background-color: var(--thumb-caption-bg);
padding: 4px 6px;
}
:root {
--keypress-background: #eee;
--keypress-border: #ccc;
--keypress-color: #333;
}
.archivelist {
background-color: var(--body-light);
border: solid 1px var(--body-border);
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
float: right;
margin: 5px;
padding: 5px;
text-align: center;
width: 120px;
}
.shortcut {
border: 1px solid var(--body-border);
background: var(--body-light);
float: right;
font-size: 0.8em;
margin: 0.5em 0em 0.5em 1em;
padding: 0.5em;
text-align: center;
}
.hatnote,
.seealso {
font-style: italic;
}
.hatnote i,
.seealso i {
font-style: normal;
}
div.hatnote,
div.seealso {
margin: 0.5em 1.6em;
}
div.hatnote + div.hatnote,
div.hatnote + div.seealso,
div.seealso + div.hatnote,
div.seealso + div.seealso {
margin-top: -0.5em;
}
.keypress {
background: var(--keypress-background);
color: var(--keypress-color);
font-family: inherit;
border: 1px solid var(--keypress-border);
border-radius: 2px;
font-size: 0.9em;
margin: 0 0.1em;
padding: 0.1em 0.4em;
white-space: nowrap;
}
:root {
--documentation-background: #f9fafa;
--documentation-link-color: #e4eaee;
--documentation-headers-color: #fff;
--documentation-header-background: #949eaa;
--documentation-subheader-background: #808c9a;
--documentation-border: #e4eaee;
}
.documentation {
background: var(--documentation-background);
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
margin: 1em 0;
}
.documentation pre,
.documentation code {
background-color: var(--documentation-background);
border-color: var(--documentation-border);
}
.documentation h2,
.documentation hr {
border-color: var(--documentation-border);
}
.documentation-header {
color: var(--documentation-headers-color);
background: var(--documentation-header-background);
font-weight: bold;
padding: 1em 1.5em;
}
.documentation-title {
font-size: 1.25em;
}
.documentation-subheader {
color: var(--documentation-headers-color);
background: var(--documentation-subheader-background);
padding: 0.5em 1.5em;
}
.documentation-subheader a,
.documentation-subheader a:visited,
.documentation-subheader a:active {
color: var(--documentation-link-color);
}
.documentation-documentation,
.documentation-links {
font-size: 0.85em;
}
.documentation-content {
padding: 1em 1.5em;
}
.mw-templatedata-doc-params dl:not(:empty) {
column-count: 3;
border-top: 1px solid var(--body-border);
margin-bottom: 0.5em;
}
.mw-templatedata-doc-params dt::after {
content: ":";
}
.mw-templatedata-doc-params dd,
.mw-templatedata-doc-params dt {
margin: 0.1em 2em;
min-width: auto;
}
.mw-templatedata-doc-muted {
color: var(--subtle-color);
font-style: italic;
}
:root {
--infobox-text-color: var(--text-color);
--table-header: #b1886f;
--table-subheader: #d1b9ad;
--table-body: #fff8ee;
--table-border: #e9d8cc;
}
.infobox {
font-size: 0.85em;
width: 300px;
border-collapse: collapse;
float: right;
table-layout: fixed;
margin: 0.5em 0 1em 1em;
}
.infobox .infobox-buttons {
display: flex;
flex-wrap: wrap;
justify-content: center;
grid-gap: 3px;
margin-bottom: 3px;
}
.infobox .infobox-buttons .button {
background: var(--table-header);
padding: 0 5px;
font-weight: bold;
flex: 1 1 20%;
max-width: 20%;
color: #fff;
}
.infobox tbody {
border: 1px solid var(--table-border);
background: var(--table-body);
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(231, 215, 199, 0.5);
}
.infobox .infobox-header {
background: var(--table-header);
padding: 0.5em 0;
text-align: center;
color: #fff;
font-size: 1.15em;
font-weight: bold;
line-height: 1.4em;
}
.infobox .infobox-image {
text-align: center;
background: var(--body-main);
}
.infobox .infobox-subheader {
background: var(--table-subheader);
font-weight: bold;
text-align: center;
color: #fff;
}
.infobox .infobox-padding {
backgound: var(--table-body);
}
.infobox tr td:not(.infobox-padding) {
padding: 0.2em 0.5em;
}
.infobox th:not(.infobox-header):not(.infobox-subheader):not(.infobox-nested) {
border-right: 2px solid var(--table-subheader);
text-align: right;
padding: 0.2em 0.5em;
}
.hidden {
display: none;
}
ol.references,
.reflist {
font-size: 90%;
}
.reflist {
list-style-type: decimal;
}
.reflist .references {
font-size: 100%;
list-style-type: inherit;
}
.reflist-lower-alpha {
list-style-type: lower-alpha;
}
ol.references li:target,
sup.reference:target {
background-color: var(--body-light);
}
.hideQuotes .refhide {
display: none;
}
:root {
--messagebox-obsolete-background: #cfcfcf;
--messagebox-obsolete-border: #464646;
--messagebox-obsolete-color: var(--text-color);
--messagebox-obsolete-link-color: #6c6c6c;
--messagebox-info-background: #ebebeb;
--messagebox-info-border: #898989;
--messagebox-info-color: var(--text-color);
--messagebox-info-link-color: #6c6c6c;
--messagebox-action-background: #c7e8fa;
--messagebox-action-border: #0b5884;
--messagebox-action-color: var(--text-color);
--messagebox-action-link-color: #03436b;
--messagebox-warn-background: #dfc0ba;
--messagebox-warn-border: #861c10;
--messagebox-warn-color: var(--text-color);
--messagebox-warn-link-color: #8e221a;
--messagebox-safe-background: #d8f0d3;
--messagebox-safe-border: #1b8408;
--messagebox-safe-color: var(--text-color);
--messagebox-safe-link-color: #1b8408;
--messagebox-disambig-background: #ebebeb;
--messagebox-disambig-border: #898989;
--messagebox-disambig-color: var(--text-color);
--messagebox-disambig-link-color: #6c6c6c;
--messagebox-discord-background: #5865f2;
--messagebox-discord-border: #4c57d0;
--messagebox-discord-link-color: #d2e5fc;
}
.mw-message-box,
.mw-message-box-error,
.mw-message-box-warning,
.mw-message-box-success,
.usermessage {
color: var(--text-color);
}
.messagebox {
width: 65%;
margin: 0.5em auto;
border-left: 15px solid;
border-color: var(--body-dark);
background-color: var(--body-light);
box-sizing: border-box;
}
.messagebox.obsolete {
background-color: var(--messagebox-obsolete-background);
border-color: var(--messagebox-obsolete-border);
color: var(--messagebox-obsolete-color);
}
.messagebox.obsolete a,
.messagebox.obsolete a:visited,
.messagebox.obsolete a:active {
color: var(--messagebox-obsolete-link-color);
}
.messagebox.info {
background-color: var(--messagebox-info-background);
border-color: var(--messagebox-info-border);
color: var(--messagebox-info-color);
}
.messagebox.info a,
.messagebox.info a:visited,
.messagebox.info a:active {
color: var(--messagebox-info-link-color);
}
.messagebox.action {
background-color: var(--messagebox-action-background);
border-color: var(--messagebox-action-border);
color: var(--messagebox-action-color);
}
.messagebox.action a,
.messagebox.action a:visited,
.messagebox.action a:active {
color: var(--messagebox-action-link-color);
}
.messagebox.warn {
background-color: var(--messagebox-warn-background);
border-color: var(--messagebox-warn-border);
color: var(--messagebox-warn-color);
}
.messagebox.warn a,
.messagebox.warn a:visited,
.messagebox.warn a:active {
color: var(--messagebox-warn-link-color);
}
.messagebox.safe {
background-color: var(--messagebox-safe-background);
border-color: var(--messagebox-safe-border);
color: var(--messagebox-safe-color);
}
.messagebox.safe a,
.messagebox.safe a:visited,
.messagebox.safe a:active {
color: var(--messagebox-safe-link-color);
}
.messagebox.disambig {
background-color: var(--messagebox-disambig-background);
border-color: var(--messagebox-disambig-border);
color: var(--messagebox-disambig-color);
}
.messagebox.disambig a,
.messagebox.disambig a:visited,
.messagebox.disambig a:active {
color: var(--messagebox-disambig-link-color);
}
.messagebox.discord {
background-color: var(--messagebox-discord-background);
border-color: var(--messagebox-discord-border);
color: #fff;
}
.messagebox.discord a,
.messagebox.discord a:visited,
.messagebox.discord a:active {
color: var(--messagebox-discord-link-color);
}
.messagebox.discord a.external,
.messagebox.discord a:visited.external,
.messagebox.discord a:active.external {
font-style: italic;
}
.messagebox.stub {
width: 40%;
}
.messagebox.hasdialogue {
padding: 0 10px;
width: auto;
}
:root {
--byline-arrow-filter: invert(29%) sepia(0%) saturate(376%) hue-rotate(172deg) brightness(87%) contrast(80%);
--tile-border-color: var(--body-border);
--tile-background-color: var(--body-light);
--tile-link-button-color: #f5e9db;
--tile-link-button-highlight-color: #dfccb0;
--tile-dark-color: #fff;
--tile-dark-bg: #5d6773;
--tile-dark-link-color: #ccc;
--tile-dark-byline-color: rgba(255, 255, 255, 0.7);
--tile-dark-header-color: #fff;
}
.tile {
background: var(--tile-background-color);
border: 1px solid var(--tile-border-color);
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
padding: 1.5em 2em 1em;
max-width: 40em;
}
.tile h2 {
font-size: 1.4em;
font-weight: bold;
border: none;
margin: 0 0 0.4em;
}
.tile .byline + h2 {
margin-top: -0.5em;
}
.tile.dark {
color: var(--tile-dark-color);
background: var(--tile-dark-bg);
border: none;
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.3);
}
.tile.dark h2 {
color: var(--tile-dark-header-color);
}
.tile.dark a {
color: var(--tile-dark-link-color);
}
.tile.dark .byline {
color: var(--tile-dark-byline-color);
}
.byline {
font-size: 0.9em;
color: var(--byline-color);
}
.byline a {
color: var(--byline-color);
}
.tile-row {
display: flex;
flex-flow: row wrap;
margin-bottom: 1em;
}
.tile-halves {
display: flex;
flex-flow: row wrap;
border: 1px solid var(--tile-border-color);
background: var(--tile-background-color);
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
}
.tile-halves h2 {
font-size: 1.4em;
font-weight: bold;
border: none;
margin: 0 0 0.4em;
}
.tile-halves .byline + h2 {
margin-top: -0.5em;
}
.tile-top {
width: 100%;
padding: 1.3rem 1.5rem 0.6rem;
}
.tile-top.tile-image {
display: flex;
align-items: center;
background-color: var(--byline-color);
overflow: hidden;
padding: 0;
height: 13vw;
max-height: 12em;
transition: 0.4s ease-out;
}
.tile-halves:hover .tile-top.tile-image img {
transform: scale(1.1);
transition: 0.5s ease-out;
}
.tile-top.tile-image a {
width: 100%;
}
.tile-top.tile-image img {
width: 100%;
object-fit: cover;
max-height: 200px;
transition: 0.4s ease-out;
}
.tile-bottom {
background: var(--tile-background-color);
border-top: 1px solid var(--tile-border-color);
width: 100%;
padding: 1rem 1.5rem 0.6rem;
}
.tile-bottom.link-button {
align-self: flex-end;
padding: 0;
}
.tile-bottom.link-button a {
display: block;
text-align: center;
padding: 0.75em 1.5em 0.8em;
text-decoration: none;
}
.tile-bottom.read-more {
background: var(--tile-link-button-color);
transition: 0.3s ease-out;
}
.tile-bottom.read-more a {
color: var(--byline-color);
font-weight: bold;
text-align: right;
}
.tile-bottom.read-more:hover {
background: var(--tile-link-button-highlight-color);
}
.tile-bottom.read-more:hover .arrow {
transform: translateX(50%);
}
.tile-bottom.read-more .arrow {
filter: var(--byline-arrow-filter);
margin-left: 0.4em;
transition: 0.3s ease-out;
}
body.page-Main_Page.action-view .catlinks,
body.page-Main_Page.action-view #contentSub,
body.page-Main_Page.action-view #firstHeading,
body.page-Main_Page.action-view #siteNotice {
display: none;
}
body.page-Main_Page .mw-parser-output {
max-width: 75em;
margin: 0 auto;
}
body.page-Main_Page.action-view .catlinks,
body.page-Main_Page.action-view #contentSub,
body.page-Main_Page.action-view #siteNotice {
display: none;
}
.mainpage-header {
display: flex;
margin: 2.6em 1.75em 1.5em;
}
.mainpage-header .header-intro {
flex: 2;
}
.mainpage-header .header-intro h1 {
font-size: 2.5em;
font-weight: bold;
border: none;
margin: 0 0 0.15em;
}
.mainpage-header .header-intro p {
font-size: 1.1em;
line-height: 1.7em;
}
.mainpage-header .header-stats {
flex: 1;
display: flex;
justify-content: center;
align-items: center;
margin-top: -1em;
}
.mainpage-body {
display: grid;
grid-template-areas: "event event event" "update update update" "content content content" "left left right";
gap: 0.9rem;
grid-template-columns: repeat(3, 1fr);
}
.mainpage-body h2 a {
color: var(--text-color);
}
.mainpage-body .tile {
padding-left: 1.75em;
padding-right: 1.75em;
max-width: 100%;
}
.mainpage-body .tile-row {
width: 100%;
margin-bottom: 0;
}
.mainpage-body .tile-row {
display: grid;
gap: 0.9rem;
}
.mainpage-contents.tile-row {
display: flex;
}
.mainpage-contents.tile-row .tile-top {
height: 5.5rem;
}
.mainpage-left {
grid-area: left;
flex: 2;
display: flex;
flex-flow: column wrap;
}
.mainpage-left > * {
margin: 0 0 0.9rem;
}
.mainpage-right {
grid-area: right;
flex: 1;
display: flex;
flex-flow: column wrap;
}
.mainpage-right > * {
margin: 0 0 0.9rem;
}
.arrow {
background: url('filepath://White-chevron.svg') no-repeat;
display: inline-block;
height: 0.7rem;
width: 0.45rem;
vertical-align: middle;
}
.arrow.dark {
filter: invert(80%);
}
.mainpage-contents {
grid-area: content;
grid-template-columns: repeat(6, 1fr);
}
.mainpage-contents .tile-halves {
flex: 1;
}
.mainpage-contents .tile-top {
height: 4.5rem;
position: relative;
}
.mainpage-contents .tile-top.tile-image img {
height: auto;
}
.mainpage-contents h2 {
margin: 0;
padding: 0;
}
.mainpage-contents .tile-bottom.link-button a {
padding: 0.75em 0.2em;
}
.popular-pages ul {
display: grid;
grid-template-columns: repeat(3, 1fr);
grid-gap: 0.6em;
margin: 1em 0 0.7em 0;
}
.mp-popular-page-light {
display: flex;
align-items: center;
background-color: var(--button-background);
transition: 100ms;
}
.mp-popular-page-light a {
flex: 1;
display: block;
color: #fff;
font-weight: bold;
text-align: center;
text-decoration: none;
padding: 0.7em 1em;
}
.mp-popular-page-light:hover {
filter: brightness(115%);
transition: 100ms;
}
.mainpage-social {
border: none;
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.3);
}
.mainpage-social .tile-top {
display: flex;
align-items: center;
padding: 1em 1.5em;
}
.mainpage-social .tile-top a {
flex: 1;
position: relative;
text-decoration: none;
}
.mainpage-social .tile-top a:hover .arrow {
transform: translateX(50%);
}
.mainpage-social .tile-bottom {
border: none;
padding: 1em 1.75em;
}
.mainpage-social .tile-bottom p {
color: #fff;
font-weight: bold;
font-size: 0.9em;
text-align: center;
text-transform: uppercase;
letter-spacing: 0.03em;
margin: 0;
}
.mainpage-social .social-icon {
margin-right: 0.75em;
text-align: center;
width: 60px;
}
.mainpage-social .social-header {
color: #fff;
font-weight: bold;
font-size: 1.15em;
margin: 0.5em 0 -0.15em;
}
.mainpage-social .server-tagline {
color: rgba(255, 255, 255, 0.9);
margin-bottom: 0.5em;
}
.mainpage-social .arrow {
position: absolute;
top: calc(50% - .5em);
right: 0;
height: 1em;
width: 0.7em;
background-size: 0.7em 1em;
transition: 0.3s ease-out;
}
.mainpage-social.mainpage-discord .tile-top {
background: #5865f2;
}
.mainpage-social.mainpage-discord .tile-bottom {
background: #525ee0;
}
.mainpage-social.mainpage-twitter .tile-top {
background: #15202b;
}
.mainpage-social.mainpage-twitter .tile-bottom {
background: #121c26;
}
.mainpage-editing {
border: none;
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.3);
}
.mainpage-editing .tile-top {
background: #438ab5;
}
.mainpage-editing .tile-bottom {
background: #3980ab;
border: none;
padding: 0.8rem 1.5rem 0.4rem;
}
.mainpage-editing h2,
.mainpage-editing a {
color: #fff;
}
.mainpage-editing p {
color: rgba(255, 255, 255, 0.9);
}
.mainpage-editing ul {
list-style-image: url('filepath://Transparent-chevron.svg');
}
@media only screen and (max-width: 1200px) {
.mainpage-contents {
grid-template-columns: repeat(3, 1fr);
}
}
@media only screen and (max-width: 1000px) {
.mainpage-body {
grid-template-areas: "event event event" "update update update" "content content content" "left left left" "right right right";
}
.mainpage-recent-updates {
grid-template-columns: repeat(2, 1fr);
}
.mainpage-recent-updates .tile-halves:last-child {
display: none;
}
.mainpage-recent-updates .tile-halves:hover .tile-top img {
transform: scale(1.04);
}
.mainpage-recent-updates .tile-top {
height: 18vw;
min-height: 9em;
}
.mainpage-header .header-stats {
display: none;
}
.mainpage-left > *:last-child,
.mainpage-right > *:last-child {
margin-bottom: 0;
}
.popular-pages ul {
grid-template-columns: repeat(2, 1fr);
}
}
@media only screen and (max-width: 720px) {
.mainpage-recent-updates {
grid-template-columns: none;
}
.mainpage-recent-updates .tile-halves:last-child {
display: flex;
}
.mainpage-contents {
grid-template-columns: repeat(2, 1fr);
}
}
.mw-prefs-buttons {
background-color: var(--body-main);
border-top-color: var(--body-border);
box-shadow: none;
}
.mw-prefs-tabs-wrapper.oo-ui-panelLayout-framed,
.mw-prefs-tabs > .oo-ui-menuLayout-content > .oo-ui-indexLayout-stackLayout > .oo-ui-tabPanelLayout {
border-color: var(--body-border);
}
.mw-htmlform-ooui .mw-htmlform-matrix tbody tr:nth-child(even) td {
background-color: var(--body-light);
}
.mw-htmlform-ooui .mw-htmlform-matrix tbody tr:hover td {
background-color: var(--body-mid);
}
:root {
--rc-positive-color: #407813;
--rc-negative-color: #b41e0f;
}
.mw-plusminus-pos {
color: var(--rc-positive-color);
}
.mw-plusminus-neg {
color: var(--rc-negative-color);
}
.client-js .mw-recentchanges-toplinks:not(.mw-recentchanges-toplinks-collapsed) {
border-color: var(--body-border);
background-color: var(--body-light);
border-radius: 2px;
}
.mw-rcfilters-ui-filterTagMultiselectWidget-wrapper-content-title {
color: var(--text-color);
}
.mw-rcfilters-ui-filterTagMultiselectWidget-emptyFilters {
color: var(--byline-color);
}
.mw-rcfilters-ui-filterTagMultiselectWidget.oo-ui-widget-enabled .oo-ui-tagMultiselectWidget-handle {
background-color: var(--ooui-interface);
border-color: var(--ooui-interface-border);
}
.mw-rcfilters-ui-filterTagMultiselectWidget-views-select-widget.oo-ui-widget {
border-color: var(--ooui-interface-border);
}
.mw-rcfilters-collapsed .mw-rcfilters-ui-filterTagMultiselectWidget {
border-bottom-color: var(--ooui-interface-border);
}
.mw-rcfilters-ui-menuSelectWidget-footer {
background-color: var(--ooui-interface);
border-color: var(--ooui-interface-border);
}
.mw-rcfilters-ui-viewSwitchWidget label.oo-ui-labelWidget {
color: var(--byline-color);
}
.mw-rcfilters-ui-tagItemWidget-popup-content {
color: var(--ooui-text);
}
.mw-changeslist-legend,
.mw-rcfilters-ui-changesListWrapperWidget .mw-changeslist-legend {
background-color: var(--body-light);
border-color: var(--body-dark);
}
.mw-rcfilters-ui-changesListWrapperWidget-previousChangesIndicator {
border-color: var(--sidebar);
}
.client-js .mw-changeslist ul,
.client-js .mw-changeslist table.mw-enhanced-rc {
margin-left: 0;
}
.mw-rcfilters-ui-watchlistTopSectionWidget-separator {
border-color: var(--sidebar);
}
.mw-rcfilters-ui-itemMenuOptionWidget-header {
border-bottom-color: var(--ooui-interface);
background-color: var(--ooui-interface-border);
}
.mw-rcfilters-ui-itemMenuOptionWidget:not(:last-child):not(.mw-rcfilters-ui-itemMenuOptionWidget-identifier-talk) {
border-bottom-color: var(--ooui-normal-border);
}
.mw-rcfilters-ui-itemMenuOptionWidget-label-title,
.mw-rcfilters-ui-itemMenuOptionWidget-label-desc {
color: var(--text-color);
}
.mw-rcfilters-ui-filterMenuOptionWidget.oo-ui-flaggedElement-muted:not(.oo-ui-optionWidget-selected) {
background-color: var(--body-main);
}
.mw-rcfilters-ui-filterMenuOptionWidget.oo-ui-flaggedElement-muted .mw-rcfilters-ui-itemMenuOptionWidget-label-title,
.mw-rcfilters-ui-filterMenuOptionWidget.oo-ui-flaggedElement-muted .mw-rcfilters-ui-itemMenuOptionWidget-label-desc {
color: var(--subtle-color);
}
.mw-rcfilters-ui-filterMenuSectionOptionWidget {
background-color: var(--body-mid);
}
.mw-rcfilters-ui-filterMenuSectionOptionWidget-header-title.oo-ui-labelElement-label {
color: var(--ooui-text);
}
.mw-rcfilters-ui-filterMenuHeaderWidget-title {
color: var(--ooui-text);
}
.mw-rcfilters-ui-filterMenuHeaderWidget-header {
border-bottom-color: var(--ooui-interface-border);
background-color: var(--ooui-interface);
}
.mw-rcfilters-ui-itemMenuOptionWidget-view-namespaces {
border-top-color: var(--ooui-interface-border);
}
.mw-rcfilters-ui-datePopupWidget {
border-color: var(--ooui-interface-border);
}
.mw-rcfilters-ui-datePopupWidget .mw-rcfilters-ui-valuePickerWidget-title {
color: var(--byline-color);
}
.mw-rcfilters-ui-savedLinksListItemWidget-label {
color: var(--ooui-accent);
}
.client-js .mw-changeslist.mw-rcfilters-ui-changesListWrapperWidget-highlighted ul,
.client-js .mw-changeslist.mw-rcfilters-ui-changesListWrapperWidget-highlighted table.mw-enhanced-rc {
margin-left: 1.5em;
}
.page-Special_CreateAccount .mw-ui-container,
.page-Special_UserLogin .mw-ui-container {
max-width: 64rem;
margin: 0 auto;
}
.mw-number-text {
color: var(--byline-color);
}
.mw-body-content .mw-number-text h3 {
color: var(--text-color);
}
#mw-indicator-mw-helplink a {
background: none;
padding: 0;
display: flex;
align-items: center;
}
#mw-indicator-mw-helplink a::before {
content: '';
margin-right: 5px;
-webkit-mask: url("/resources/src/mediawiki.helplink/images/helpNotice.svg?46d34") no-repeat 50% 50% / contain;
mask: url("/resources/src/mediawiki.helplink/images/helpNotice.svg?46d34") no-repeat 50% 50% / contain;
background: var(--text-color);
height: 20px;
width: 20px;
}
.results-info {
color: inherit;
}
.mw-search-profile-tabs {
background-color: var(--body-mid);
border-color: transparent;
}
.search-types .current a {
color: inherit;
}
#mw-searchoptions {
background-color: var(--body-mid);
border-color: transparent;
}
#mw-searchoptions .divider {
border-color: var(--body-border);
}
#mw-searchoptions h4 {
font-family: inherit;
}
#mw-searchoptions .oo-ui-labelElement:nth-of-type(odd) {
font-weight: bold;
}
.searchresult {
line-height: 1.5;
}
.searchalttitle,
#mw-search-interwiki li {
font-size: 90%;
}
.mw-search-result-data {
color: var(--byline-color);
}
.page-Special_ListFiles a.image img {
width: inherit;
height: inherit;
}
.page-Special_ListFiles .TablePager_col_thumb {
text-align: center;
}
#editcount table[border="1"] {
background-color: var(--body-main) !important;
border-color: var(--wikitable-border) !important;
margin-top: 0.5em;
}
#editcount table[border="1"] th,
#editcount table[border="1"] td {
padding: 0.2em 0.4em;
}
#editcount table[border="1"] th {
background-color: var(--wikitable-header-bg);
border: 1px solid var(--wikitable-border);
}
#editcount table[border="1"] td {
border: 1px solid var(--wikitable-border);
}
#editcount table[border="1"] tr:nth-child(odd) {
background-color: var(--body-light);
}
.mw-echo-ui-notificationBadgeButtonPopupWidget-popup > .oo-ui-popupWidget-popup .mw-echo-ui-placeholderItemWidget {
background-color: inherit;
}
table.mw-interwikitable.body td.mw-interwikitable-local-yes {
background-color: var(--table-yes-background);
color: var(--table-yes-color);
}
.mw-protectedpages-unknown {
color: var(--byline-color);
}
.watchlistredir,
.allpagesredirect {
font-style: italic;
}
.allpagesredirect:after {
color: var(--byline-color);
content: " (redirect)";
}
.mw-apisandbox-toolbar {
background: var(--body-main);
}
.oo-ui-menuOptionWidget .mw-apisandbox-flag {
color: var(--byline-color);
}
tr.mw-abusefilter-list-disabled,
tr.mw-abusefilter-list-disabled td {
color: var(--byline-color);
}
table.mw-abuselog-details {
background: var(--wikitable-bg);
border-color: var(--wikitable-border);
}
table.mw-abuselog-details th {
background: var(--wikitable-header-bg);
}
table.mw-abuselog-details th,
table.mw-abuselog-details td {
border-color: var(--wikitable-border);
}
.mw-abusefilter-log-hidden-entry {
color: var(--subtle-color);
}
body td.mw-abusefilter-history-changed {
background: var(--table-no-background);
}
div.mw-abusefilter-editor,
#mw-abusefilter-warn-preview,
#mw-abusefilter-disallow-preview {
border-color: var(--ooui-input-border);
}
.mw-destfile-warning {
border-color: var(--warningbox-border);
color: var(--text-color);
background-color: var(--warningbox-bg);
}
span.fileinput-button {
background-color: var(--ooui-normal);
border-color: var(--ooui-normal-border);
color: var(--ooui-text);
}
ul.fileupload-results li.ful-success {
background-color: var(--successbox-bg);
}
ul.fileupload-results li.ful-success a {
color: var(--link-color);
}
ul.fileupload-results li.ful-error {
background-color: var(--errorbox-bg);
}
#t-print,
#t-permalink {
display: none;
}
#filetoc {
border-radius: 2px;
background: var(--body-mid);
border-color: transparent;
margin: 0.5em auto;
text-align: center;
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
}
li.gallerybox div.thumb {
border: none;
background-color: var(--thumb-bg);
}
.smwfact {
display: none;
}
.list-header {
background-color: var(--body-mid);
color: inherit;
}
.editOptions {
color: var(--text-color);
background-color: var(--sourceeditor-background-secondary);
border-color: var(--sourceeditor-border);
}
.mw-json th,
.mw-json td {
border-color: var(--wikitable-border);
}
.mw-json td {
background: var(--wikitable-bg);
}
.mw-json th {
background: var(--wikitable-header-bg);
}
38aec50995729429baa39504f16b1cfd58366798
1577
1574
2024-03-27T11:42:57Z
Merds
25
Updating CSS from [[MediaWiki:Common.less]]
css
text/css
/* <pre> */
:root {
--body-main: #feffff;
--body-light: #fff8ee;
--body-mid: #d0bd97;
--body-dark: #b1886f;
--body-border: #d1b9ad;
--body-background-color: #173a4d;
--button-background: #605443;
--button-color: #fff;
--button-border: #3c352a;
--button-dark: #18140c;
--button-light: #3a301d;
--sidebar: #cfc08d;
--background-text-color: #e2dbc8;
--background-link-color: #e2bd8a;
--search-box: #efeee6;
--link-color: #936039;
--redlink-color: #ba0000;
--text-color: #2F2828;
--byline-color: #ccc;
--subtle-color: #777;
--admin-blue: #332e75;
--bearcat-green: #13592e;
--awb-purple: #933b96;
--rsw-blue: #438ab6;
--osrsw-brown: #605443;
--thumb-bg: var(--body-light);
--thumb-caption-bg: var(--body-mid);
--sourceeditor-input-background: #fff;
--sourceeditor-background: var(--body-light);
--sourceeditor-background-secondary: var(--body-light);
--sourceeditor-border: var(--body-mid);
--codemirror-gutter-background: var(--body-mid);
}
@font-face {
font-family: 'Lora';
font-weight: 400 700;
font-style: normal;
font-display: swap;
src: url('filepath://Lora.woff2') format('woff2');
}
@font-face {
font-family: 'Lora';
font-weight: 400 700;
font-style: italic;
font-display: swap;
src: url('filepath://Lora-Italic.woff2') format('woff2');
}
:root {
--base-text-color: #36414f;
--base-heading-color: #444e5a;
--base-heading-border: #e4eaee;
--mw-code-background-color: #ddd4bb;
--body-background-image: url('filepath://Wiki_background.jpg');
}
#mw-page-base {
background: none;
}
.mw-body {
background-color: var(--body-main);
color: var(--text-color);
border-color: transparent;
box-shadow: 0 0 7px rgba(0, 0, 0, 0.15);
margin-top: 0;
}
h1,
h2,
h3,
h4,
h5,
h6 {
color: var(--text-color);
}
h1,
h2 {
border-color: var(--sidebar);
}
.mw-body h1,
.mw-body-content h1,
.mw-body-content h2,
.mw-body-content h3,
.mw-body-content h4,
.mw-body-content h5,
.mw-body-content h6 {
font-family: 'Lora', 'Palatino', 'Georgia', serif;
}
.mw-parser-output h2:first-of-type {
clear: left;
}
.mw-footer {
color: var(--background-text-color);
}
.mw-footer li {
color: var(--background-text-color);
}
.mw-footer a,
.mw-footer a:active,
.mw-footer a:visited {
color: var(--background-link-color);
}
::placeholder {
color: var(--subtle-color);
}
a {
color: var(--link-color);
}
a:visited,
a:active {
color: var(--link-color);
}
a.new {
color: var(--redlink-color);
}
a.new:visited {
color: var(--redlink-color);
}
.mw-parser-output a.extiw,
.mw-parser-output a.external {
color: var(--link-color);
}
.mw-parser-output a.extiw:visited,
.mw-parser-output a.external:visited,
.mw-parser-output a.extiw:active,
.mw-parser-output a.external:active {
color: var(--link-color);
}
.jsPurgeLink a.external {
color: var(--link-color);
}
:root {
--errorbox-bg: #feecea;
--errorbox-border: #ee4231;
--warningbox-bg: #fef9de;
--warningbox-border: #f9d000;
--successbox-bg: #ecf8e3;
--successbox-border: #6bc71f;
}
.mw-message-box-error,
.errorbox,
.mw-message-box-warning,
.warningbox,
.mw-message-box-success,
.successbox,
.usermessage {
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
}
.mw-message-box-error,
.errorbox {
background-color: var(--errorbox-bg);
border-color: var(--errorbox-border);
}
.mw-message-box-warning,
.warningbox,
.usermessage {
background-color: var(--warningbox-bg);
border-color: var(--warningbox-border);
}
.mw-message-box-success,
.successbox {
background-color: var(--successbox-bg);
border-color: var(--successbox-border);
}
.catlinks {
background: var(--body-light);
border: 1px solid var(--body-dark);
padding: 8px 15px;
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
}
.catlinks li {
border-color: var(--body-mid);
}
.filehistory a img,
#file img {
background: url("data:image/svg+xml,%3C%3Fxml version='1.0' encoding='UTF-8'%3F%3E%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16'%3E%3Cpath d='M0 0h8v16h8V8H0z' opacity='.13'/%3E%3C/svg%3E") repeat;
}
#file img:hover {
background: none;
}
.mw-highlight {
background: none;
}
.mw-highlight .linenos {
background-color: var(--mw-code-background-color);
color: var(--byline-color);
}
.mw-highlight a:hover .linenos,
.mw-highlight .hll a .linenos {
color: var(--text-color);
}
.mw-content-ltr.mw-highlight-lines pre,
.mw-content-ltr.content .mw-highlight-lines pre {
box-shadow: inset 2.75em 0 0 var(--mw-code-background-color);
}
#pagehistory ul {
list-style: none;
margin: 0;
}
#pagehistory li {
border: 1px solid transparent;
padding: 1px 10px;
margin: 2px 0;
}
#pagehistory li.selected {
background-color: var(--body-light);
color: inherit;
border: 1px dashed var(--body-border);
outline: none;
}
#mw-history-compare > div:first-of-type {
position: -webkit-sticky;
position: sticky;
top: 0;
background-color: var(--body-main);
border-bottom: 1px solid var(--body-dark);
padding: 0.25em 0;
}
.wgl-stickyheader #mw-history-compare > div:first-of-type {
top: 2.5rem;
}
.autocomment,
.autocomment a,
.autocomment a:visited {
color: var(--link-color);
}
li span.deleted,
span.history-deleted {
color: var(--byline-color);
}
.mw-usertoollinks-contribs-no-edits,
.mw-usertoollinks-contribs-no-edits:visited {
color: var(--redlink-color);
}
.CategoryTreeToggle {
color: var(--link-color);
}
body.wgl-stickyheader.action-view .mw-headline:target::before {
display: block;
content: '';
margin-top: -3rem;
height: 3rem;
visibility: hidden;
pointer-events: none;
}
.mw-mmv-post-image {
color: var(--text-color);
background-color: var(--body-main);
}
.mw-mmv-image-metadata {
border-top-color: var(--body-mid);
background-color: var(--body-light);
}
.mw-mmv-dialog,
.mw-mmv-dialog .mw-mmv-dialog-down-arrow,
.mw-mmv-options-dialog .mw-mmv-dialog-down-arrow {
background-color: var(--body-light);
box-shadow: none;
}
.mw-mmv-options-enable-alert {
background-color: var(--body-light);
color: var(--text-color);
}
.mw-mmv-options-dialog-header,
.mw-mmv-options-text-header,
.mw-mmv-options-text-body,
.mw-mmv-options-enable-alert,
.mw-mmv-options-dialog .mw-mmv-disable-confirmation .mw-mmv-options-dialog-header,
.mw-mmv-options-dialog .mw-mmv-disable-confirmation .mw-mmv-options-text-header {
color: var(--text-color);
}
.mw-revslider-container {
border-color: var(--sidebar);
}
.mw-revslider-slider-wrapper {
border-top-color: var(--sidebar);
}
.mw-ui-button {
background-color: var(--ooui-normal);
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
}
.mw-ui-button:not(:disabled):hover,
.mw-ui-button:not(:disabled):active {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
}
.mw-ui-button:not(:disabled):focus {
color: var(--ooui-text);
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent), inset 0 0 0 2px #fff;
}
.mw-ui-button:not(:disabled):visited {
color: var(--ooui-text);
}
.mw-ui-button.mw-ui-progressive:not(:disabled) {
background-color: var(--ooui-progressive);
color: #fff;
border-color: var(--ooui-progressive);
}
.mw-ui-button.mw-ui-progressive:not(:disabled):hover {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
}
.mw-ui-button.mw-ui-progressive:not(:disabled):focus {
box-shadow: inset 0 0 0 1px var(--ooui-accent), inset 0 0 0 2px #fff;
}
.mw-ui-button.mw-ui-progressive:not(:disabled):active,
.mw-ui-button.mw-ui-progressive:not(:disabled).is-on {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
box-shadow: none;
}
.mw-ui-button.mw-ui-destructive:not( :disabled ) {
color: #fff;
}
.mw-ui-button.mw-ui-quiet,
.mw-ui-button.mw-ui-quiet.mw-ui-progressive,
.mw-ui-button.mw-ui-quiet.mw-ui-destructive {
color: var(--text-color);
}
input[type='checkbox']:hover + .mw-ui-button.mw-ui-quiet,
input[type='checkbox']:hover + .mw-ui-button.mw-ui-quiet.mw-ui-progressive,
input[type='checkbox']:hover + .mw-ui-button.mw-ui-quiet.mw-ui-destructive,
.mw-ui-button.mw-ui-quiet:hover,
.mw-ui-button.mw-ui-quiet.mw-ui-progressive:hover,
.mw-ui-button.mw-ui-quiet.mw-ui-destructive:hover {
background-color: rgba(0, 24, 73, 0.02745098);
color: var(--text-color);
border-color: transparent;
}
input[type='checkbox']:focus + .mw-ui-button.mw-ui-quiet,
input[type='checkbox']:focus + .mw-ui-button.mw-ui-quiet.mw-ui-progressive,
input[type='checkbox']:focus + .mw-ui-button.mw-ui-quiet.mw-ui-destructive,
.mw-ui-button.mw-ui-quiet:focus,
.mw-ui-button.mw-ui-quiet.mw-ui-progressive:focus,
.mw-ui-button.mw-ui-quiet.mw-ui-destructive:focus {
color: var(--text-color);
}
input[type='checkbox']:active + .mw-ui-button.mw-ui-quiet,
input[type='checkbox']:active + .mw-ui-button.mw-ui-quiet.mw-ui-progressive,
input[type='checkbox']:active + .mw-ui-button.mw-ui-quiet.mw-ui-destructive,
.mw-ui-button.mw-ui-quiet:active,
.mw-ui-button.mw-ui-quiet.mw-ui-progressive:active,
.mw-ui-button.mw-ui-quiet.mw-ui-destructive:active {
background-color: rgba(0, 36, 73, 0.08235294);
color: var(--text-color);
border-color: #72777d;
}
.mw-ui-input {
background-color: var(--ooui-input);
color: var(--text-color);
border-color: var(--ooui-input-border);
}
.mw-ui-input:hover {
border-color: var(--ooui-input-border--hover);
}
.mw-ui-input::placeholder {
color: var(--byline-color);
}
.mw-content-ltr .redirectText li:first-child {
padding: 0;
background: 0;
}
.mw-content-ltr .redirectText li:first-child::before {
content: '';
background: currentcolor;
-webkit-mask: url("filepath://Redirect-arrow.svg") no-repeat 50% 50% / contain;
mask: url("filepath://Redirect-arrow.svg") no-repeat 50% 50% / contain;
display: inline-block;
width: 47px;
height: 20px;
}
.vector-search-box-inner {
background: var(--body-main) !important;
box-shadow: inset 0 -7px 7px -7px rgba(0, 0, 0, 0.15) !important;
}
.vector-menu-dropdown .vector-menu-heading {
color: #937040 !important;
}
.vector-menu-dropdown .vector-menu-heading:hover {
color: #937040 !important;
}
.vector-menu-dropdown .vector-menu-heading:focus {
color: #937040 !important;
}
:root {
--wikitable-header-bg: var(--body-dark);
--wikitable-border: var(--body-border);
--wikitable-bg: var(--body-light);
--wikitable-bg-lighter: #e9e3d6;
--wikitable-color: var(--text-color);
--table-na-background: rgba(255, 255, 255, 0.3);
--table-na-color: var(--subtle-color);
--table-yes-background: #c3e8a3;
--table-yes-color: #2e5e05;
--table-no-background: #fbc0ba;
--table-no-color: #801c13;
--table-maybe-background: #fcea94;
--table-maybe-color: #786300;
}
.wikitable {
background: var(--wikitable-bg);
color: var(--wikitable-color);
border-color: var(--wikitable-border);
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
}
.wikitable > tr > th,
.wikitable > tr > td,
.wikitable > * > tr > th,
.wikitable > * > tr > td {
border-color: var(--wikitable-border);
}
.wikitable > tr > th.table-noborder,
.wikitable > tr > td.table-noborder,
.wikitable > * > tr > th.table-noborder,
.wikitable > * > tr > td.table-noborder {
border-left-style: hidden;
border-right-style: hidden;
padding-left: 0;
padding-right: 0;
}
.wikitable > tr > th,
.wikitable > * > tr > th {
background-color: var(--wikitable-header-bg);
color: #fff;
}
.tabber .wikitable {
box-shadow: none;
}
.mw_metadata td,
.mw_metadata th {
border-color: var(--wikitable-border);
}
.mw_metadata th {
background-color: var(--wikitable-header-bg);
}
.mw_metadata td {
background-color: var(--wikitable-bg);
}
.mw-datatable {
border-color: var(--wikitable-border);
}
.mw-datatable td,
.mw-datatable th {
border-color: var(--wikitable-border);
}
.mw-datatable th {
background-color: var(--wikitable-header-bg);
}
.mw-datatable td {
background-color: var(--wikitable-bg);
}
.mw-datatable tr:hover td {
background-color: var(--wikitable-bg);
}
table.alternating-rows tr:nth-child(odd),
table.alternating-cols td:nth-child(odd) {
background: var(--wikitable-alternating-bg);
}
.table-na {
background: var(--table-na-background);
color: var(--table-na-color);
vertical-align: middle;
text-align: center;
}
.table-yes {
background: var(--table-yes-background);
color: var(--table-yes-color);
}
.table-positive {
background: var(--table-yes-background);
}
.table-no {
background: var(--table-no-background);
color: var(--table-no-color);
}
.table-negative {
background: var(--table-no-background);
}
.table-maybe {
background: var(--table-maybe-background);
color: var(--table-maybe-color);
}
#mw-allmessagestable .am_actual,
#mw-allmessagestable .am_default {
background-color: var(--wikitable-bg);
}
#mw-allmessagestable .am_default:hover,
#mw-allmessagestable .am_actual:hover,
#mw-allmessagestable tbody:hover td {
background-color: var(--wikitable-bg-lighter);
}
table.wikitable td.no-cell-spacing {
padding: 0;
height: 0;
}
table.wikitable td.no-cell-spacing table {
margin: -1px;
width: calc(100% + 2px);
height: calc(100% + 2px);
}
.plainlist ol,
.plainlist ul {
margin: 0;
}
.plainlist li {
margin-bottom: 0;
list-style: none;
}
table.align-right-1 td:nth-of-type(1),
table.align-right-2 td:nth-of-type(2),
table.align-right-3 td:nth-of-type(3),
table.align-right-4 td:nth-of-type(4),
table.align-right-5 td:nth-of-type(5),
table.align-right-6 td:nth-of-type(6),
table.align-right-7 td:nth-of-type(7),
table.align-right-8 td:nth-of-type(8),
table.align-right-9 td:nth-of-type(9),
table.align-right-10 td:nth-of-type(10),
table.align-right-11 td:nth-of-type(11),
table.align-right-12 td:nth-of-type(12),
table.align-right-13 td:nth-of-type(13),
table.align-right-14 td:nth-of-type(14),
table.align-right-15 td:nth-of-type(15),
table.align-right-16 td:nth-of-type(16),
table.align-right-17 td:nth-of-type(17),
table.align-right-18 td:nth-of-type(18),
table.align-right-19 td:nth-of-type(19),
table.align-right-20 td:nth-of-type(20) {
text-align: right;
}
table.align-center-1 td:nth-of-type(1),
table.align-center-2 td:nth-of-type(2),
table.align-center-3 td:nth-of-type(3),
table.align-center-4 td:nth-of-type(4),
table.align-center-5 td:nth-of-type(5),
table.align-center-6 td:nth-of-type(6),
table.align-center-7 td:nth-of-type(7),
table.align-center-8 td:nth-of-type(8),
table.align-center-9 td:nth-of-type(9),
table.align-center-10 td:nth-of-type(10),
table.align-center-11 td:nth-of-type(11),
table.align-center-12 td:nth-of-type(12),
table.align-center-13 td:nth-of-type(13),
table.align-center-14 td:nth-of-type(14),
table.align-center-15 td:nth-of-type(15),
table.align-center-16 td:nth-of-type(16),
table.align-center-17 td:nth-of-type(17),
table.align-center-18 td:nth-of-type(18),
table.align-center-19 td:nth-of-type(19),
table.align-center-20 td:nth-of-type(20) {
text-align: center;
}
table.align-left-1 td:nth-of-type(1),
table.align-left-2 td:nth-of-type(2),
table.align-left-3 td:nth-of-type(3),
table.align-left-4 td:nth-of-type(4),
table.align-left-5 td:nth-of-type(5),
table.align-left-6 td:nth-of-type(6),
table.align-left-7 td:nth-of-type(7),
table.align-left-8 td:nth-of-type(8),
table.align-left-9 td:nth-of-type(9),
table.align-left-10 td:nth-of-type(10),
table.align-left-11 td:nth-of-type(11),
table.align-left-12 td:nth-of-type(12),
table.align-left-13 td:nth-of-type(13),
table.align-left-14 td:nth-of-type(14),
table.align-left-15 td:nth-of-type(15),
table.align-left-16 td:nth-of-type(16),
table.align-left-17 td:nth-of-type(17),
table.align-left-18 td:nth-of-type(18),
table.align-left-19 td:nth-of-type(19),
table.align-left-20 td:nth-of-type(20) {
text-align: left;
}
:root {
--diff-addedline-border-color: #438ab5;
--diff-addedline-background: #bddff2;
--diff-addedline-color: #000;
--diff-deletedline-border-color: #379541;
--diff-deletedline-background: #c1edbf;
--diff-deletedline-color: #000;
--diff-context-border-color: var(--body-mid);
--diff-context-background: var(--body-mid);
}
.diff-context {
border-color: var(--diff-context-border-color);
background: var(--diff-context-background);
color: inherit;
}
.diff-addedline {
border-color: var(--diff-addedline-border-color);
}
.diff-addedline .diffchange {
background: var(--diff-addedline-background);
color: var(--diff-addedline-color);
}
.diff-deletedline {
border-color: var(--diff-deletedline-border-color);
}
.diff-deletedline .diffchange {
background: var(--diff-deletedline-background);
color: var(--diff-deletedline-color);
}
.mw-diff-movedpara-left:after,
.mw-diff-movedpara-right:after {
color: var(--text-color);
}
.mw-notification {
background-color: var(--body-light);
border-color: var(--body-border);
color: var(--text-color);
}
.mw-echo-ui-notificationsInboxWidget-toolbarWrapper {
background: var(--body-main);
}
.mw-body-content .mw-echo-ui-datedSubGroupListWidget-title-secondary {
color: var(--byline-color);
}
.mw-echo-ui-pageNotificationsOptionWidget.oo-ui-optionWidget-selected {
background-color: var(--ooui-normal);
color: var(--ooui-accent);
}
.mw-echo-ui-pageNotificationsOptionWidget-label-count {
background-color: var(--ooui-normal);
color: var(--byline-color);
}
.oo-ui-optionWidget-selected .mw-echo-ui-pageNotificationsOptionWidget-label-count {
color: var(--ooui-accent);
}
.mw-echo-ui-pageNotificationsOptionWidget.oo-ui-optionWidget-highlighted {
background-color: var(--ooui-normal);
color: var(--text-color);
}
.mw-echo-ui-crossWikiUnreadFilterWidget {
border-color: var(--body-border);
}
.mw-echo-ui-crossWikiUnreadFilterWidget-subtitle {
color: var(--byline-color);
}
.mw-echo-ui-notificationBadgeButtonPopupWidget-popup > .oo-ui-popupWidget-popup > .oo-ui-popupWidget-head,
.mw-echo-ui-notificationBadgeButtonPopupWidget-popup > .oo-ui-popupWidget-popup > .oo-ui-popupWidget-footer {
border-color: var(--ooui-interface-border);
}
.mw-echo-ui-notificationBadgeButtonPopupWidget-popup > .oo-ui-popupWidget-popup > .oo-ui-popupWidget-footer .mw-echo-ui-notificationBadgeButtonPopupWidget-footer-buttons .oo-ui-buttonElement:last-child {
border-left-color: var(--ooui-normal-border);
}
.mw-echo-ui-notificationItemWidget {
background-color: var(--ooui-normal);
border-color: var(--ooui-normal-border);
}
.mw-echo-ui-notificationItemWidget:hover,
.mw-echo-ui-notificationItemWidget-unread:hover {
background-color: var(--ooui-normal--hover);
}
.mw-echo-ui-notificationItemWidget:last-child {
border-bottom-color: var(--ooui-normal-border);
}
.mw-echo-ui-notificationItemWidget-unread {
background-color: var(--search-box);
}
.mw-echo-ui-crossWikiNotificationItemWidget-group,
.mw-echo-ui-bundleNotificationItemWidget-group {
background-color: var(--ooui-interface);
}
.mw-echo-ui-toggleReadCircleButtonWidget-circle {
background-color: var(--ooui-progressive);
}
.mw-echo-ui-toggleReadCircleButtonWidget:hover .mw-echo-ui-toggleReadCircleButtonWidget-circle {
background-color: var(--ooui-progressive--hover);
}
.mw-echo-ui-toggleReadCircleButtonWidget-circle-unread {
background-color: var(--ooui-normal);
border-color: var(--ooui-normal-border);
}
.mw-echo-ui-notificationItemWidget-content-message-header,
.mw-echo-ui-notificationItemWidget-content-message-body,
.mw-echo-ui-menuItemWidget > .oo-ui-buttonElement-button > .oo-ui-labelElement-label,
.mw-echo-ui-notificationItemWidget-content-actions-timestamp {
color: var(--ooui-text);
}
.mw-echo-ui-bundleNotificationItemWidget-group {
background-color: var(--body-main);
}
@keyframes unseen-fadeout-to-unread {
from {
background-color: var(--wikitable-bg-lighter);
}
to {
background-color: var(--search-box);
}
}
@keyframes unseen-fadeout-to-read {
from {
background-color: var(--wikitable-bg-lighter);
}
to {
background-color: var(--body-main);
}
}
.mwe-popups {
background: var(--body-light);
}
.mwe-popups .mwe-popups-container {
color: var(--text-color);
background: var(--body-light);
}
.mwe-popups .mwe-popups-container.flipped-x-y:before,
.mwe-popups .mwe-popups-container.flipped-y:before {
border-top: none;
}
.mwe-popups .mwe-popups-container.mwe-popups-no-image-tri:before {
border-bottom: none;
}
.mwe-popups .mwe-popups-container.flipped-x-y:after,
.mwe-popups .mwe-popups-container.flipped-y:after {
border-top-color: var(--body-light);
}
.mwe-popups .mwe-popups-container.mwe-popups-no-image-tri:after {
border-bottom-color: var(--body-light);
}
.mwe-popups .mwe-popups-settings-icon:hover,
.mwe-popups .mwe-popups-settings-icon:active {
background-color: var(--ooui-normal--hover);
}
.mwe-popups .mw-ui-icon-element:not(.disabled):hover {
background: none;
}
.mwe-popups .mwe-popups-extract {
color: var(--text-color);
}
.mwe-popups .mwe-popups-extract[dir='ltr']:after {
background-image: linear-gradient(to right, rgba(49, 62, 89, 0), var(--body-light) 50%);
}
.mwe-popups-overlay {
background-color: var(--ooui-window-background);
}
#mwe-popups-settings {
background: var(--ooui-interface);
border-color: var(--ooui-interface-border);
color: var(--text-color);
}
#mwe-popups-settings header {
border-color: var(--ooui-interface-border);
}
#mwe-popups-settings main#mwe-popups-settings-form p {
color: var(--byline-color);
}
#mwe-popups-settings main#mwe-popups-settings-form form label > span {
color: var(--ooui-text);
}
:root {
--smw-ask-options-even-bg: var(--body-mid);
--smw-ask-options-odd-bg: var(--body-light);
--smw-ask-action-btn-lblue-bg: var(--body-main);
--smw-ask-action-btn-lblue-color: #000;
--smw-ask-action-btn-lblue-border-color: var(--body-light);
--smw-ask-action-btn-dblue-bg: var(--body-light);
--smw-ask-action-btn-dblue-color: #fff;
--smw-ask-action-btn-dblue-border-color: var(--button-border);
}
.smw-ask-condition fieldset,
.smw-ask-printhead fieldset {
border-color: var(--sidebar);
}
.smw-ask-search fieldset,
.smw-ask-format fieldset,
.smw-ask-options fieldset {
border-color: var(--sidebar);
}
.strike > span:before,
.strike > span:after {
background: var(--sidebar);
}
.smw-ask-options-fields tr td {
background-color: var(--smw-ask-options-even-bg);
}
.smw-ask-options-fields tr:nth-child(odd) td {
background-color: var(--smw-ask-options-odd-bg);
}
.smw-ask-action-btn.smw-ask-action-btn-lblue,
.smw-ask-action-btn.smw-ask-action-btn-lblue:hover,
.smw-ask-action-btn.smw-ask-action-btn-lblue:visited {
background-color: var(--smw-ask-action-btn-lblue-bg);
color: var(--smw-ask-action-btn-lblue-color);
border-color: var(--smw-ask-action-btn-lblue-border-color);
}
.smw-ask-action-btn.smw-ask-action-btn-dblue,
.smw-ask-action-btn.smw-ask-action-btn-dblue:hover,
.smw-ask-action-btn.smw-ask-action-btn-dblue:visited {
background-color: var(--smw-ask-action-btn-dblue-bg);
color: var(--smw-ask-action-btn-dblue-color);
border-color: var(--smw-ask-action-btn-dblue-border-color);
}
.smw-ask-query textarea,
.smw-ask-actions textarea {
background-color: var(--ooui-interface);
border-color: var(--ooui-interface-border);
color: var(--ooui-text);
}
.smw-ask-query-format select {
background-color: var(--ooui-interface);
border: 1px solid var(--ooui-interface-border);
color: var(--ooui-text);
}
.smw-ask-toplinks {
background-color: var(--body-mid);
}
.smw-ask-toplinks span.smw-icon-info {
background: none;
padding: 0 !important;
}
.smw-ask-toplinks span.smw-icon-info::before {
content: '';
background: var(--text-color);
-webkit-mask: url("data:image/svg+xml,%3C%3Fxml version='1.0' encoding='UTF-8'%3F%3E%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 20 20'%3E%3Ctitle%3Einfo%3C/title%3E%3Cpath d='M10 0C4.477 0 0 4.477 0 10s4.477 10 10 10 10-4.477 10-10S15.523 0 10 0zM9 5h2v2H9zm0 4h2v6H9z'/%3E%3C/svg%3E") no-repeat 50% 50% / contain;
mask: url("data:image/svg+xml,%3C%3Fxml version='1.0' encoding='UTF-8'%3F%3E%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 20 20'%3E%3Ctitle%3Einfo%3C/title%3E%3Cpath d='M10 0C4.477 0 0 4.477 0 10s4.477 10 10 10 10-4.477 10-10S15.523 0 10 0zM9 5h2v2H9zm0 4h2v6H9z'/%3E%3C/svg%3E") no-repeat 50% 50% / contain;
padding: 0 0 3px 18px;
}
.smw-ask-options-row-odd {
background-color: var(--body-light);
}
.smw-ask-options-row-even {
background-color: var(--body-mid);
}
#options-toggle:not(:checked) + #options-list .options-parameter-list:after {
background-image: linear-gradient(to bottom, transparent, var(--body-mid) 90%);
}
.smw-ask-button-submit input {
background-color: var(--ooui-normal);
border-color: var(--ooui-normal-border);
color: var(--text-color);
}
.smw-ask-button-submit input:hover,
.smw-ask-button-lgrey:hover {
background-color: var(--ooui-normal--hover);
border-color: var(--ooui-normal-border);
}
input.smw-ask-action-btn.smw-ask-action-btn-dblue {
background-color: var(--ooui-normal);
border-color: var(--ooui-normal-border);
color: var(--ooui-text);
}
a.smw-ask-action-btn.smw-ask-action-btn-lblue {
background-color: var(--body-mid);
border-color: var(--body-mid);
color: var(--ooui-text);
}
a.smw-ask-action-btn.smw-ask-action-btn-lblue:visited {
background-color: var(--body-mid);
border-color: var(--body-mid);
color: var(--ooui-text);
}
a.smw-ask-action-btn.smw-ask-action-btn-lblue:hover {
background-color: var(--body-mid);
border-color: var(--body-mid);
color: var(--ooui-text);
}
a.smw-ask-action-btn-lgrey {
background-color: var(--ooui-normal);
border-color: var(--ooui-normal-border);
color: var(--ooui-text);
}
a.smw-ask-action-btn-lgrey:hover {
background-color: var(--ooui-normal--hover);
border-color: var(--ooui-normal-border);
color: var(--ooui-text);
}
.smw-callout-error {
background-color: var(--errorbox-bg);
border-color: var(--errorbox-border);
}
.smw-callout-info {
background-color: var(--body-light);
border-color: var(--body-dark);
}
.smw-callout-success {
background-color: var(--successbox-bg);
border-color: var(--successbox-border);
}
.smw-callout-warning {
background-color: var(--warningbox-bg);
border-color: var(--warningbox-bg);
}
.smw-tabs input.nav-tab:checked + label.nav-label,
.smw-tabs input.nav-tab:checked + label.nav-label:hover {
color: inherit;
}
#tab-smw-property-value:checked + label.nav-label .usage-count {
color: #fff;
background-color: var(--ooui-progressive);
}
#tab-smw-property-value:checked + label.nav-label .usage-count.moderate {
color: #fff;
background-color: #b55e0c;
border-color: #b55e0c;
}
#tab-smw-property-value:checked + label.nav-label .usage-count.high {
color: #fff;
background-color: #9f261e;
border-color: #9f261e;
}
.smw-property-page-results .header-title {
background-color: var(--ooui-interface);
border-bottom-color: var(--ooui-interface-border);
color: var(--ooui-text);
}
.smw-property-page-results .value-row:hover {
background-color: var(--ooui-normal--hover);
}
.smw-property-page-results .smw-table .header-row {
color: var(--text-color);
}
.tippy-tooltip.light-border-theme {
background-color: var(--body-light);
color: var(--text-color);
}
.tippy-tooltip.light-border-theme .tippy-arrow {
border-top-color: var(--body-light);
}
.tippy-tooltip.light-border-theme .tippy-arrow:after {
border-top-color: var(--body-light);
}
.tippy-header {
background-color: var(--body-dark);
border-bottom-color: var(--body-mid);
}
.smw-ui-input-filter {
background-color: var(--ooui-interface);
border-color: var(--ooui-interface-border);
color: var(--ooui-text);
}
.smw-ui-input-filter input {
border-left-color: var(--ooui-interface-border) !important;
color: var(--ooui-text) !important;
}
.smw-ui-pagination .page-link.link-disabled {
background-color: var(--ooui-disabled);
border-color: var(--ooui-disabled-border);
color: var(--subtle-color);
}
.smw-ui-pagination .page-link {
background-color: var(--ooui-normal);
border-color: var(--ooui-normal-border);
color: var(--link-color);
}
.smw-ui-pagination .page-link:hover {
background-color: var(--ooui-normal--hover);
border-color: var(--ooui-normal-border);
color: var(--link-color);
}
.smw-ui-pagination .page-link.link-active {
color: #fff;
background-color: var(--ooui-progressive);
border-color: var(--ooui-progressive);
}
.smw-tabs input.nav-tab:checked + label.nav-label {
border-color: var(--ooui-normal-border);
}
.smw-tabs section,
.smw-tabs .subtab-content {
border-top-color: var(--ooui-normal-border);
}
.smw-column-header {
color: var(--text-color);
}
.smw-factbox {
background: var(--body-main);
border-color: transparent;
}
.mw-body .mw-indicators #mw-indicator-smw-entity-examiner.mw-indicator .smw-indicator-vertical-bar-loader {
display: none;
}
.smwb-theme-light .smwb-title,
.smwb-theme-light .smwb-center,
.smwb-theme-light .smwb-actions,
.smwb-theme-light .smwb-prophead {
background-color: var(--body-mid);
}
.smwb-theme-light .smwb-factbox {
border-left-color: var(--body-mid);
}
.smwb-theme-light .smwb-ifactbox {
border-right-color: var(--body-mid);
}
.smwb-theme-light .smwb-propval {
background-color: var(--body-light);
}
.smwb-action-separator {
border-color: var(--wikitable-border);
}
.smwb-bottom {
border-bottom: 1px solid var(--wikitable-border);
}
.smwb-ifactbox .smwb-cell,
.smwb-factbox .smwb-cell {
border-top: 1px solid var(--wikitable-border);
}
.smwb-propvalue .smwb-prophead,
.smwb-ipropvalue .smwb-prophead,
.smwb-propvalue .smwb-propval,
.smwb-ipropvalue .smwb-propval {
font-size: 0.9em;
}
:root {
--filter-black-to-link: invert(36%) sepia(58%) saturate(433%) hue-rotate(344deg) brightness(100%) contrast(91%);
}
#bodyContent span.smwbrowse a {
color: black;
background-image: url('filepath://Smwbrowse.svg');
filter: var(--filter-black-to-link);
}
#bodyContent span.smwbrowse a:hover {
color: black;
background-image: url('filepath://Smwbrowse-hover.svg');
text-decoration: underline;
}
#bodyContent span.smwsearch a {
color: black;
filter: var(--filter-black-to-link);
background-image: url('filepath://Smwsearch.svg');
}
#bodyContent span.smwsearch a:hover {
color: black;
background-image: url('filepath://Smwsearch-hover.svg');
text-decoration: underline;
}
:root {
--tabber-tab-bg: var(--body-light);
--tabber-tab-border-color: var(--body-border);
--tabber-active-tab-bg: var(--body-light);
--tabber-active-tab-color: var(--text-color);
--tabber-active-tab-hover-bg: var(--body-light);
--tabber-active-tab-hover-border-color: var(--body-border);
--tabber-active-tab-hover-color: var(--text-color);
--tabber-active-tab-border-hider-color: var(--body-light);
--tabber-inactive-tab-bg: var(--body-background-color);
--tabber-inactive-tab-border-color: var(--body-border);
--tabber-inactive-tab-color: var(--text-color);
--tabber-inactive-tab-hover-bg: var(--body-light);
--tabber-inactive-tab-hover-border-color: var(--body-border);
}
.tabber {
margin: 1em 0;
}
.tabber .tabbertab {
background-color: var(--tabber-tab-bg);
border: 1px solid var(--tabber-tab-border-color);
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
padding: 1em 1.5em;
}
ul.tabbernav {
border: none;
margin-left: 2em;
margin-bottom: 0;
margin-right: 2em;
padding: 0;
font-family: inherit;
}
ul.tabbernav li.tabberactive > a {
background-color: var(--tabber-active-tab-bg);
color: var(--tabber-active-tab-color);
border-bottom: none;
position: relative;
}
ul.tabbernav li.tabberactive > a:hover {
color: var(--tabber-active-tab-hover-color);
background-color: var(--tabber-active-tab-hover-bg);
border-color: var(--tabber-active-tab-hover-border-color);
border-bottom: none;
}
ul.tabbernav li.tabberactive > a::after {
content: '';
position: absolute;
left: 0;
right: 0;
bottom: -1px;
border-bottom: 2px solid var(--tabber-active-tab-border-hider-color);
}
ul.tabbernav li a {
background-color: var(--tabber-inactive-tab-bg);
border-bottom: transparent;
border-color: var(--tabber-inactive-tab-border-color);
color: var(--tabber-inactive-tab-color);
display: inline-block;
font-size: 110%;
padding: 0.5em 1em;
}
ul.tabbernav li a:hover {
background-color: var(--tabber-inactive-tab-hover-bg);
border-color: var(--tabber-inactive-tab-hover-border-color);
}
ul.tabbernav li a:link,
ul.tabbernav li a:visited {
color: var(--tabber-inactive-tab-color);
}
:root {
--ooui-text: var(--text-color);
--ooui-interface: var(--body-light);
--ooui-interface-border: var(--body-border);
--ooui-window-background: rgba(255, 255, 255, 0.5);
--ooui-normal: #d5c7ad;
--ooui-normal--hover: #dfd5c1;
--ooui-normal-border: #b8a282;
--ooui-progressive: #605443;
--ooui-progressive--hover: #7e6e58;
--ooui-accent: var(--link-color);
--ooui-input: #fff;
--ooui-input-border: #b8a282;
--ooui-input-border--hover: #8a724f;
--ooui-disabled: #d1cdc5;
--ooui-disabled-border: #c2b9ab;
--ooui-disabled-text: var(--subtle-color);
--ooui-pending-background-image: repeating-linear-gradient(-45deg, var(--search-box), var(--search-box) 20px, var(--body-main) 20px, var(--body-main) 30px);
}
.oo-ui-widget {
color: var(--ooui-text);
}
.oo-ui-checkboxInputWidget [type='checkbox'] + span,
.oo-ui-radioInputWidget [type='radio'] + span {
background-color: var(--ooui-input);
border-color: var(--ooui-input-border);
}
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:checked + span,
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:indeterminate + span {
background-color: var(--ooui-progressive);
border-color: var(--ooui-progressive);
}
.oo-ui-radioInputWidget.oo-ui-widget-enabled [type='radio']:checked + span {
border-color: var(--ooui-progressive);
}
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:checked:hover + span,
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:indeterminate:hover + span {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
}
.oo-ui-radioInputWidget.oo-ui-widget-enabled [type='radio']:checked:hover + span {
border-color: var(--ooui-progressive--hover);
}
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:hover + span,
.oo-ui-radioInputWidget.oo-ui-widget-enabled [type='radio']:hover + span {
border-color: var(--ooui-accent);
}
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:focus + span {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:active + span,
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:checked:active + span,
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:indeterminate:active + span {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
box-shadow: inset 0 0 0 1px var(--ooui-progressive--hover);
}
.oo-ui-radioInputWidget.oo-ui-widget-enabled [type='radio']:active + span {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
}
.oo-ui-radioInputWidget.oo-ui-widget-enabled [type='radio']:checked:active + span {
border-color: var(--ooui-progressive--hover);
box-shadow: inset 0 0 0 1px var(--ooui-progressive--hover);
}
.oo-ui-radioInputWidget.oo-ui-widget-enabled [type='radio']:checked:active + span:before {
border-color: var(--ooui-progressive--hover);
}
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:checked:focus + span,
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:indeterminate:focus + span {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent), inset 0 0 0 2px #fff;
}
.oo-ui-checkboxInputWidget [type='checkbox']:disabled + span,
.oo-ui-radioInputWidget [type='radio']:disabled + span {
background-color: var(--ooui-disabled);
border-color: var(--ooui-disabled);
}
.oo-ui-dropdownWidget-handle {
border-color: var(--ooui-normal-border);
}
.oo-ui-dropdownWidget.oo-ui-widget-enabled .oo-ui-dropdownWidget-handle {
background-color: var(--ooui-normal);
color: var(--ooui-text);
}
.oo-ui-dropdownWidget.oo-ui-widget-enabled .oo-ui-dropdownWidget-handle:hover {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
}
.oo-ui-dropdownWidget.oo-ui-widget-enabled .oo-ui-dropdownWidget-handle:active {
color: var(--ooui-text);
}
.oo-ui-dropdownWidget.oo-ui-widget-enabled .oo-ui-dropdownWidget-handle:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-dropdownWidget.oo-ui-widget-enabled.oo-ui-dropdownWidget-open .oo-ui-dropdownWidget-handle {
background-color: var(--ooui-normal--hover);
}
.oo-ui-dropdownWidget.oo-ui-widget-disabled .oo-ui-dropdownWidget-handle {
color: var(--ooui-disabled-text);
text-shadow: none;
border-color: var(--ooui-disabled-border);
background-color: var(--ooui-disabled);
}
.oo-ui-dropdownInputWidget select {
border-color: var(--ooui-normal-border);
}
.oo-ui-dropdownInputWidget option {
background-color: var(--ooui-interface);
}
.oo-ui-dropdownInputWidget.oo-ui-widget-enabled {
background-color: var(--ooui-normal);
}
.oo-ui-dropdownInputWidget.oo-ui-widget-enabled:hover {
background-color: var(--ooui-normal--hover);
}
.oo-ui-dropdownInputWidget.oo-ui-widget-enabled select {
color: var(--ooui-text);
}
.oo-ui-dropdownInputWidget.oo-ui-widget-enabled select:hover,
.oo-ui-dropdownInputWidget.oo-ui-widget-enabled select:active {
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
}
.oo-ui-dropdownInputWidget.oo-ui-widget-enabled select:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-labelWidget.oo-ui-inline-help {
color: var(--byline-color);
}
.oo-ui-menuSelectWidget {
background-color: var(--ooui-interface);
border-color: var(--ooui-interface-border);
}
.oo-ui-menuSelectWidget-frameless {
box-shadow: inset 0 -1px 0 0 var(--ooui-normal-border);
}
.oo-ui-menuSectionOptionWidget {
color: var(--byline-color);
}
.oo-ui-menuOptionWidget.oo-ui-optionWidget-highlighted,
.oo-ui-menuOptionWidget.oo-ui-optionWidget-selected {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
}
.oo-ui-menuOptionWidget.oo-ui-optionWidget-selected.oo-ui-menuOptionWidget.oo-ui-optionWidget-highlighted,
.oo-ui-menuOptionWidget.oo-ui-optionWidget-pressed.oo-ui-menuOptionWidget.oo-ui-optionWidget-highlighted {
color: var(--ooui-accent);
}
.oo-ui-menuOptionWidget.oo-ui-widget-enabled.oo-ui-optionWidget {
color: var(--ooui-text);
}
.oo-ui-messageDialog-title {
color: inherit;
}
.oo-ui-messageWidget.oo-ui-messageWidget-block.oo-ui-flaggedElement-error {
background-color: var(--errorbox-bg);
border-color: var(--errorbox-border);
}
.oo-ui-messageWidget.oo-ui-messageWidget-block.oo-ui-flaggedElement-warning {
background-color: var(--warningbox-bg);
border-color: var(--warningbox-border);
}
.oo-ui-messageWidget.oo-ui-messageWidget-block.oo-ui-flaggedElement-success {
background-color: var(--successbox-bg);
border-color: var(--successbox-border);
}
.oo-ui-messageWidget.oo-ui-messageWidget-block.oo-ui-flaggedElement-notice {
background-color: var(--messagebox-info-background);
border-color: var(--messagebox-info-border);
}
.oo-ui-messageWidget.oo-ui-flaggedElement-error:not(.oo-ui-messageWidget-block),
.oo-ui-messageWidget.oo-ui-flaggedElement-success:not(.oo-ui-messageWidget-block) {
color: var(--ooui-text);
}
.oo-ui-optionWidget.oo-ui-widget-disabled {
color: var(--ooui-disabled-text);
}
.oo-ui-outlineControlsWidget {
background-color: var(--ooui-normal);
}
.oo-ui-outlineOptionWidget.oo-ui-optionWidget-highlighted {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
}
.oo-ui-popupWidget-popup {
background-color: var(--ooui-interface);
border-color: var(--ooui-interface-border);
}
.oo-ui-popupWidget-anchored-top .oo-ui-popupWidget-anchor:after {
border-bottom-color: var(--ooui-interface);
}
.oo-ui-popupWidget-anchored-top .oo-ui-popupWidget-anchor:before {
border-bottom-color: var(--ooui-interface-border);
}
.oo-ui-popupWidget-anchored-bottom .oo-ui-popupWidget-anchor:after {
border-top-color: var(--ooui-interface);
}
.oo-ui-popupWidget-anchored-bottom .oo-ui-popupWidget-anchor:before {
border-top-color: var(--ooui-interface-border);
}
.oo-ui-popupWidget-anchored-start .oo-ui-popupWidget-anchor:after {
border-right-color: var(--ooui-interface);
}
.oo-ui-popupWidget-anchored-start .oo-ui-popupWidget-anchor:before {
border-right-color: var(--ooui-interface-border);
}
.oo-ui-popupWidget-anchored-end .oo-ui-popupWidget-anchor:after {
border-left-color: var(--ooui-interface);
}
.oo-ui-popupWidget-anchored-end .oo-ui-popupWidget-anchor:before {
border-left-color: var(--ooui-interface-border);
}
.oo-ui-searchWidget-query {
border-bottom-color: var(--ooui-interface-border);
}
.oo-ui-selectFileWidget-dropTarget {
background-color: var(--ooui-interface);
border-color: var(--ooui-interface-border);
}
.oo-ui-selectFileWidget.oo-ui-widget-enabled.oo-ui-selectFileWidget-dropTarget {
background-color: var(--ooui-interface);
}
.oo-ui-selectFileWidget.oo-ui-widget-enabled.oo-ui-selectFileWidget-dropTarget:hover {
border-color: var(--ooui-input-border--hover);
}
.oo-ui-tabOptionWidget {
color: var(--ooui-text);
}
.oo-ui-tabSelectWidget-framed .oo-ui-tabOptionWidget.oo-ui-optionWidget-selected {
background-color: var(--body-dark);
color: var(--ooui-text);
}
.oo-ui-tabSelectWidget-framed .oo-ui-tabOptionWidget.oo-ui-optionWidget-selected .oo-ui-labelElement-label {
border-bottom-color: var(--body-border);
}
.oo-ui-tabSelectWidget-framed .oo-ui-tabOptionWidget.oo-ui-widget-enabled:hover,
.oo-ui-tabSelectWidget-framed .oo-ui-tabOptionWidget.oo-ui-widget-enabled:active {
background-color: var(--body-light);
color: var(--ooui-text);
}
.oo-ui-tabSelectWidget-framed .oo-ui-tabOptionWidget.oo-ui-widget-enabled.oo-ui-optionWidget-selected:hover {
background-color: var(--body-dark);
}
.oo-ui-tabSelectWidget-frameless .oo-ui-tabOptionWidget.oo-ui-optionWidget-selected {
color: var(--ooui-progressive);
box-shadow: inset 0 -2px 0 0 var(--ooui-progressive);
}
.oo-ui-tabSelectWidget-frameless .oo-ui-tabOptionWidget.oo-ui-optionWidget-selected:hover,
.oo-ui-tabSelectWidget-frameless .oo-ui-tabOptionWidget.oo-ui-optionWidget-selected:focus {
color: var(--ooui-progressive--hover);
box-shadow: inset 0 -2px 0 0 var(--ooui-progressive--hover);
}
.oo-ui-tabSelectWidget-framed {
background: none;
border-bottom: 1px solid var(--ooui-interface-border);
}
.oo-ui-tabSelectWidget-frameless {
box-shadow: inset 0 -1px 0 0 var(--ooui-interface-border);
}
.oo-ui-tabSelectWidget-mobile {
}
.oo-ui-tabSelectWidget-mobile.oo-ui-tabSelectWidget-framed:after {
background: var(--mobile-navbox-linear-gradient);
}
.oo-ui-tabSelectWidget-mobile.oo-ui-tabSelectWidget-frameless:after {
background: var(--mobile-navbox-linear-gradient);
}
.oo-ui-tagItemWidget {
border-color: var(--ooui-normal-border);
}
.oo-ui-tagItemWidget.oo-ui-widget-enabled {
color: var(--ooui-text);
}
.oo-ui-tagItemWidget.oo-ui-widget-enabled:hover {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
}
.oo-ui-tagItemWidget.oo-ui-widget-enabled:not( .oo-ui-tagItemWidget-fixed ) {
background-color: var(--ooui-normal);
}
.oo-ui-tagItemWidget.oo-ui-widget-enabled .oo-ui-buttonElement-button:hover {
background-color: var(--ooui-normal--hover);
}
.oo-ui-tagMultiselectWidget.oo-ui-widget-enabled {
background-color: var(--ooui-interface);
}
.oo-ui-tagMultiselectWidget.oo-ui-widget-enabled.oo-ui-tagMultiselectWidget-outlined {
background-color: var(--ooui-normal);
}
.oo-ui-tagMultiselectWidget.oo-ui-widget-enabled.oo-ui-tagMultiselectWidget-outlined .oo-ui-tagItemWidget.oo-ui-widget-enabled {
background-color: var(--ooui-interface);
}
.oo-ui-textInputWidget .oo-ui-inputWidget-input {
background-color: var(--ooui-input);
color: var(--ooui-text);
border-color: var(--ooui-input-border);
}
.oo-ui-textInputWidget.oo-ui-widget-enabled .oo-ui-inputWidget-input::placeholder {
color: var(--subtle-color);
}
.oo-ui-textInputWidget.oo-ui-widget-enabled .oo-ui-inputWidget-input:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-textInputWidget.oo-ui-widget-enabled .oo-ui-inputWidget-input[readonly]:not(.oo-ui-pendingElement-pending) {
background-color: var(--ooui-disabled);
color: var(--ooui-disabled-text);
}
.oo-ui-textInputWidget.oo-ui-widget-enabled:hover .oo-ui-inputWidget-input {
border-color: var(--ooui-input-border--hover);
}
.oo-ui-textInputWidget.oo-ui-widget-enabled:hover .oo-ui-inputWidget-input:focus {
border-color: var(--ooui-accent);
}
@media screen and (min-width: 0) {
.oo-ui-textInputWidget.oo-ui-widget-enabled textarea.oo-ui-inputWidget-input:focus {
outline: 1px solid var(--ooui-accent);
}
}
.oo-ui-textInputWidget.oo-ui-widget-disabled .oo-ui-inputWidget-input {
background-color: var(--ooui-disabled);
color: var(--ooui-disabled-text);
text-shadow: none;
border-color: var(--ooui-disabled-border);
}
.oo-ui-toggleSwitchWidget {
background-color: var(--ooui-input);
border-color: var(--ooui-input-border);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled .oo-ui-toggleSwitchWidget-grip {
background-color: var(--ooui-input);
border-color: var(--ooui-input-border);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:hover {
background-color: var(--ooui-input);
border-color: var(--ooui-accent);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:hover .oo-ui-toggleSwitchWidget-grip {
background-color: var(--ooui-input);
border-color: var(--ooui-accent);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:active,
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:active:hover,
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:active:focus {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
box-shadow: inset 0 0 0 1px var(--ooui-progressive--hover);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:active .oo-ui-toggleSwitchWidget-grip,
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:active:hover .oo-ui-toggleSwitchWidget-grip,
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:active:focus .oo-ui-toggleSwitchWidget-grip {
background-color: var(--ooui-input);
border-color: var(--ooui-input);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:focus .oo-ui-toggleSwitchWidget-grip {
border-color: var(--ooui-accent);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled.oo-ui-toggleWidget-on {
background-color: var(--ooui-progressive);
border-color: var(--ooui-progressive);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled.oo-ui-toggleWidget-on .oo-ui-toggleSwitchWidget-grip {
background-color: var(--ooui-input);
border-color: var(--ooui-input);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled.oo-ui-toggleWidget-on:hover {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled.oo-ui-toggleWidget-on:active,
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled.oo-ui-toggleWidget-on:active:hover {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled.oo-ui-toggleWidget-on:focus {
border-color: var(--ooui-progressive);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled.oo-ui-toggleWidget-on:focus::before {
border-color: #fff;
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-disabled {
background-color: var(--ooui-disabled);
border-color: var(--ooui-disabled);
}
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled > .oo-ui-buttonElement-button {
color: var(--ooui-text);
}
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled > .oo-ui-buttonElement-button:hover {
color: var(--ooui-text);
}
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled > .oo-ui-buttonElement-button:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled.oo-ui-buttonElement-pressed > input.oo-ui-buttonElement-button,
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled > .oo-ui-buttonElement-button:active {
color: var(--ooui-text);
}
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button,
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button:hover {
color: var(--ooui-text);
}
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button:active,
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive.oo-ui-buttonElement-pressed > .oo-ui-buttonElement-button {
color: var(--ooui-text);
border-color: var(--ooui-text);
}
.oo-ui-buttonElement-frameless.oo-ui-widget-disabled > .oo-ui-buttonElement-button {
color: var(--ooui-disabled-text);
}
.oo-ui-buttonElement-framed.oo-ui-widget-disabled > .oo-ui-buttonElement-button {
background-color: var(--ooui-disabled);
border-color: var(--ooui-disabled-border);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled > .oo-ui-buttonElement-button {
background-color: var(--ooui-normal);
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled > .oo-ui-buttonElement-button:hover {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled > .oo-ui-buttonElement-button:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-buttonElement-active > .oo-ui-buttonElement-button {
background-color: var(--ooui-progressive--hover);
color: #fff;
border-color: var(--ooui-progressive--hover);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-buttonElement-active > .oo-ui-buttonElement-button:focus {
border-color: var(--ooui-progressive--hover);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled > .oo-ui-buttonElement-button:active,
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-buttonElement-pressed > .oo-ui-buttonElement-button {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive {
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button {
color: var(--ooui-text);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button:hover {
background-color: var(--ooui-normal--hover);
border-color: var(--ooui-progressive--hover);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-destructive > .oo-ui-buttonElement-button {
color: var(--ooui-text);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-destructive > .oo-ui-buttonElement-button:hover {
background-color: var(--ooui-normal--hover);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button {
background-color: var(--ooui-progressive);
border-color: var(--ooui-progressive);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button:hover {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent), inset 0 0 0 2px #fff;
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button:active,
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive.oo-ui-buttonElement-pressed > .oo-ui-buttonElement-button,
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive.oo-ui-buttonElement-active > .oo-ui-buttonElement-button,
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive.oo-ui-popupToolGroup-active > .oo-ui-buttonElement-button {
color: #fff;
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
}
.oo-ui-pendingElement-pending {
background-image: var(--ooui-pending-background-image);
background-size: 200%;
animation: oo-ui-pendingElement-stripes 6s linear infinite;
}
@keyframes oo-ui-pendingElement-stripes {
100% {
background-position: 100%;
}
}
.oo-ui-messageDialog-content > .oo-ui-window-foot {
outline-color: var(--ooui-interface-border);
}
.oo-ui-messageDialog-message {
color: var(--ooui-text);
}
.oo-ui-messageDialog-actions-horizontal .oo-ui-actionWidget {
border-right-color: var(--ooui-interface-border);
}
.oo-ui-messageDialog-actions-vertical .oo-ui-actionWidget {
border-bottom-color: var(--ooui-interface-border);
}
.oo-ui-processDialog-content .oo-ui-window-head,
.oo-ui-processDialog-content .oo-ui-window-foot {
outline-color: var(--ooui-interface-border);
}
.oo-ui-processDialog .oo-ui-actionWidget > .oo-ui-buttonElement-button {
border-top-color: transparent;
border-bottom-color: transparent;
}
.oo-ui-processDialog .oo-ui-actionWidget > .oo-ui-buttonElement-button:hover,
.oo-ui-processDialog .oo-ui-actionWidget > .oo-ui-buttonElement-button:active {
border-top-color: transparent;
border-bottom-color: transparent;
}
.oo-ui-processDialog .oo-ui-actionWidget:not( .oo-ui-flaggedElement-progressive ):not( .oo-ui-flaggedElement-destructive ) > .oo-ui-buttonElement-button:hover,
.oo-ui-processDialog .oo-ui-actionWidget:not( .oo-ui-flaggedElement-progressive ):not( .oo-ui-flaggedElement-destructive ) > .oo-ui-buttonElement-button:active {
border-right-color: var(--ooui-interface-border);
border-left-color: transparent;
}
.oo-ui-processDialog .oo-ui-actionWidget:not( .oo-ui-flaggedElement-progressive ):not( .oo-ui-flaggedElement-destructive ) > .oo-ui-buttonElement-button:focus {
border-color: var(--ooui-accent);
}
.oo-ui-processDialog-actions-safe .oo-ui-actionWidget > .oo-ui-buttonElement-button,
.oo-ui-processDialog-actions-other .oo-ui-actionWidget > .oo-ui-buttonElement-button {
border-right-color: var(--ooui-normal-border);
border-left-color: transparent;
}
.oo-ui-processDialog-actions-safe .oo-ui-widget-enabled.oo-ui-iconElement:not( .oo-ui-labelElement ) > .oo-ui-buttonElement-button:hover {
background-color: var(--ooui-normal--hover);
border-right-color: var(--ooui-interface-border);
}
.oo-ui-windowManager-modal > .oo-ui-dialog {
background-color: var(--ooui-window-background);
}
.oo-ui-windowManager-modal > .oo-ui-dialog > .oo-ui-window-frame {
background-color: var(--ooui-interface);
}
.oo-ui-windowManager-modal.oo-ui-windowManager-floating > .oo-ui-dialog > .oo-ui-window-frame {
border-color: var(--ooui-interface-border);
}
.oo-ui-window {
color: var(--ooui-text);
}
.oo-ui-toolbar-bar {
background-color: var(--ooui-interface);
color: var(--ooui-text);
}
.oo-ui-toolbar-position-top > .oo-ui-toolbar-bar {
border-bottom-color: var(--body-mid);
}
.oo-ui-toolbar-bar .oo-ui-bookletLayout > .oo-ui-menuLayout-menu {
border-right-color: var(--body-mid);
}
.oo-ui-tool.oo-ui-widget-enabled > .oo-ui-tool-link:hover {
background-color: var(--ooui-normal--hover);
}
.oo-ui-tool.oo-ui-widget-enabled > .oo-ui-tool-link:focus {
outline: 1px solid var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-tool.oo-ui-widget-enabled > .oo-ui-tool-link:active,
.oo-ui-tool.oo-ui-widget-enabled.oo-ui-tool-active > .oo-ui-tool-link,
.oo-ui-tool.oo-ui-widget-enabled.oo-ui-popupToolGroup-active > .oo-ui-tool-link {
background-color: var(--ooui-normal--hover);
color: var(--ooui-accent);
box-shadow: none;
}
.oo-ui-tool.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive > .oo-ui-tool-link {
background-color: var(--ooui-progressive);
}
.oo-ui-tool.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive > .oo-ui-tool-link:hover {
background-color: var(--ooui-progressive--hover);
}
.oo-ui-tool.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive > .oo-ui-tool-link:focus {
box-shadow: inset 0 0 0 1px var(--ooui-accent), inset 0 0 0 2px #fff;
}
.oo-ui-tool.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive > .oo-ui-tool-link:active,
.oo-ui-tool.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive.oo-ui-tool-active > .oo-ui-tool-link {
background-color: var(--ooui-progressive--hover);
}
.oo-ui-listToolGroup-tools .oo-ui-tool.oo-ui-widget-enabled {
background-color: var(--ooui-normal);
}
.oo-ui-listToolGroup-tools .oo-ui-tool.oo-ui-widget-enabled:hover {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
}
.oo-ui-listToolGroup-tools .oo-ui-tool-active.oo-ui-widget-enabled .oo-ui-tool-link .oo-ui-tool-title {
color: var(--ooui-progressive);
}
.oo-ui-menuToolGroup {
border-left-color: var(--body-mid);
border-right-color: var(--body-mid);
}
.oo-ui-popupToolGroup-tools {
background-color: var(--ooui-interface);
border-color: var(--body-mid);
}
.oo-ui-popupToolGroup.oo-ui-widget-enabled > .oo-ui-popupToolGroup-handle:hover {
background-color: var(--ooui-normal--hover);
}
.oo-ui-popupToolGroup.oo-ui-widget-enabled > .oo-ui-popupToolGroup-handle:focus {
outline: 1px solid var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-toolbar-actions .oo-ui-popupToolGroup.oo-ui-widget-enabled > .oo-ui-popupToolGroup-handle:hover {
border-right-color: var(--ooui-normal--hover);
}
.oo-ui-popupToolGroup-tools .oo-ui-tool.oo-ui-widget-enabled .oo-ui-tool-link:focus {
box-shadow: inset 0 0 0 2px var(--ooui-accent);
}
.oo-ui-popupToolGroup-tools .oo-ui-tool-active.oo-ui-widget-enabled .oo-ui-tool-link .oo-ui-tool-title {
color: var(--ooui-progressive);
}
.oo-ui-popupToolGroup.oo-ui-popupToolGroup-active > .oo-ui-popupToolGroup-handle {
background-color: var(--ooui-normal);
color: var(--ooui-accent);
}
.oo-ui-popupToolGroup.oo-ui-popupToolGroup-active > .oo-ui-popupToolGroup-handle:hover {
background-color: var(--ooui-normal--hover);
color: var(--ooui-accent);
}
.oo-ui-bookletLayout-outlinePanel > .oo-ui-outlineControlsWidget {
border-top-color: var(--ooui-interface-border);
}
.oo-ui-bookletLayout > .oo-ui-menuLayout-menu {
border-right-color: var(--ooui-interface-border);
}
.oo-ui-fieldLayout-disabled > .oo-ui-fieldLayout-body > .oo-ui-fieldLayout-header > .oo-ui-labelElement-label {
color: var(--ooui-disabled-text);
}
.oo-ui-panelLayout-framed {
border-color: var(--sidebar);
}
.oo-ui-icon-settings {
background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' width='20' height='20' viewBox='0 0 20 20'%3E%3Ctitle%3Esettings%3C/title%3E%3Cg transform='translate(10 10)'%3E%3Cpath id='a' d='M1.5-10h-3l-1 6.5h5m0 7h-5l1 6.5h3'/%3E%3Cuse xlink:href='%23a' transform='rotate(45)'/%3E%3Cuse xlink:href='%23a' transform='rotate(90)'/%3E%3Cuse xlink:href='%23a' transform='rotate(135)'/%3E%3C/g%3E%3Cpath d='M10 2.5a7.5 7.5 0 0 0 0 15 7.5 7.5 0 0 0 0-15v4a3.5 3.5 0 0 1 0 7 3.5 3.5 0 0 1 0-7'/%3E%3C/svg%3E");
}
.oo-ui-icon-clear {
background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 20 20'%3E%3Ctitle%3Eclear%3C/title%3E%3Cpath d='M10 0a10 10 0 1 0 10 10A10 10 0 0 0 10 0zm5.66 14.24-1.41 1.41L10 11.41l-4.24 4.25-1.42-1.42L8.59 10 4.34 5.76l1.42-1.42L10 8.59l4.24-4.24 1.41 1.41L11.41 10z'/%3E%3C/svg%3E");
}
.mw-widget-dateInputWidget-handle {
background-color: var(--ooui-input);
color: var(--ooui-text);
border-color: var(--ooui-input-border);
}
.mw-widget-dateInputWidget-calendar {
background-color: var(--ooui-interface);
}
.mw-widget-dateInputWidget.oo-ui-widget-enabled .mw-widget-dateInputWidget-handle:hover {
border-color: var(--ooui-input-border--hover);
}
.mw-widget-calendarWidget {
border-color: var(--ooui-interface-border);
}
.mw-widget-calendarWidget:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.mw-widget-calendarWidget-day,
.mw-widget-calendarWidget-day-heading {
color: var(--ooui-text);
}
.mw-widget-calendarWidget-day-additional {
color: var(--ooui-text);
opacity: 0.67;
}
.mw-widget-calendarWidget-day-today {
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.mw-widget-calendarWidget-item:hover {
background-color: var(--ooui-progressive);
}
.mw-widget-calendarWidget-item-selected {
background-color: var(--ooui-progressive--hover);
}
.mw-widgets-datetime-calendarWidget {
background-color: var(--ooui-interface);
border-color: var(--ooui-interface-border);
}
.mw-widgets-datetime-calendarWidget:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent), 0 2px 2px 0 rgba(0, 0, 0, 0.25);
}
.mw-widgets-datetime-calendarWidget-grid .mw-widgets-datetime-calendarWidget-cell.mw-widgets-datetime-calendarWidget-extra .oo-ui-buttonElement-button .oo-ui-labelElement-label {
color: var(--subtle-color);
}
.mw-widgets-datetime-calendarWidget-grid .mw-widgets-datetime-calendarWidget-cell.mw-widgets-datetime-calendarWidget-selected .oo-ui-buttonElement-button {
background-color: var(--ooui-progressive--hover);
}
.mw-widgets-datetime-dateTimeInputWidget-handle {
background-color: var(--ooui-input);
color: var(--ooui-text);
border-color: var(--ooui-input-border);
}
.mw-widgets-datetime-dateTimeInputWidget.oo-ui-widget-enabled.mw-widgets-datetime-dateTimeInputWidget-handle:hover {
border-color: var(--ooui-input-border--hover);
}
.mw-widgets-datetime-dateTimeInputWidget.oo-ui-widget-enabled:hover input,
.mw-widgets-datetime-dateTimeInputWidget.oo-ui-widget-enabled:hover textarea {
border-color: var(--ooui-input-border--hover);
}
.mw-widgets-datetime-dateTimeInputWidget.oo-ui-widget-enabled .mw-widgets-datetime-dateTimeInputWidget-editField:hover {
background-color: var(--ooui-normal);
}
.ve-activated .ve-init-mw-desktopArticleTarget-originalContent #catlinks:hover {
background: var(--ooui-normal--hover);
}
.ve-ui-overlay {
font-family: inherit;
}
.oo-ui-toolbar-position-top .ve-ui-toolbarDialog-position-above {
border-top-color: var(--body-mid);
}
.ve-ce-branchNode-blockSlug,
.ve-ce-branchNode-newSlug {
outline-color: var(--body-border);
background-color: var(--ooui-interface);
}
.ve-ui-specialCharacterPage h3 {
color: var(--byline-color);
}
.ve-ui-specialCharacterPage-character {
border-color: var(--body-mid);
}
.ve-ui-specialCharacterPage-character:hover {
border-color: var(--body-dark);
}
.ve-ce-linkAnnotation.ve-ce-annotation-active {
box-shadow: 0 0 0 1px var(--body-mid);
background: none;
}
.ve-ui-desktopContext .ve-ui-linkContextItem .ve-ui-linkContextItem-label {
border-color: var(--body-border);
}
.ve-ui-mwHelpPopupTool-version-label,
.ve-ui-mwHelpPopupTool-version-link,
.ve-ui-mwHelpPopupTool-version-date {
color: var(--byline-color);
}
.ve-ce-tableCellableNode {
border-color: var(--body-mid);
}
.ve-ce-mwReferencesListNode-muted {
color: var(--byline-color);
}
.ve-ui-mwTemplatePage-description,
.ve-ui-mwParameterPage-label,
.ve-ui-mwParameterPage-description-required,
.ve-ui-mwParameterPage-description-deprecated {
color: var(--byline-color);
}
.mw-widget-titleWidget-menu .mw-widget-titleOptionWidget-description {
color: var(--byline-color);
}
.ve-ui-mwGalleryDialog-menuLayout > .oo-ui-menuLayout-menu,
.ve-ui-mwGalleryDialog-innerMenuLayout > .oo-ui-menuLayout-menu,
.ve-ui-mwGalleryDialog .ve-ui-mwGalleryDialog-image-container,
.ve-ui-targetWidget {
border-color: var(--body-border);
}
.ve-ui-targetWidget:not(.oo-ui-pendingElement-pending) {
background-color: var(--body-main);
}
.ve-ui-mwSaveDialog {
color: var(--ooui-text);
}
.ve-ui-mwSaveDialog-options {
background-color: var(--ooui-interface);
border-color: var(--body-border);
}
.ve-ui-mwSaveDialog-summary {
background-color: var(--ooui-input);
}
.ve-ui-mwSaveDialog-editSummary-count {
border-color: var(--body-border);
}
.ve-ui-mwSaveDialog-license {
color: var(--byline-color);
}
.ve-ui-mwReferenceContextItem-muted {
color: var(--byline-color);
}
.ve-ui-mwNoticesPopupTool-items > div:not(:first-child),
.ve-ui-mwHelpPopupTool-item:not(:first-child) {
border-color: var(--body-border);
}
.ve-ui-mwTransclusionOutlineControlsWidget {
background-color: var(--ooui-interface);
border-top-color: var(--body-border);
}
.ve-ui-mwTransclusionOutlineTemplateWidget-sticky {
background-color: var(--ooui-interface);
}
.ve-ui-mwTransclusionOutlineTemplateWidget .ve-ui-mwTransclusionOutlineParameterWidget.oo-ui-optionWidget-highlighted {
color: var(--ooui-text);
}
.ve-ui-mwTransclusionOutlineTemplateWidget-no-template-parameters {
color: var(--subtle-color);
}
.ve-ui-mwParameterPage-undocumentedLabel {
color: var(--subtle-color);
}
.ve-ui-mwTwoPaneTransclusionDialogLayout > .oo-ui-menuLayout-menu {
border-right: var(--body-border);
}
.ve-ui-mwParameterPage-doc-required,
.ve-ui-mwParameterPage-doc-deprecated,
.ve-ui-mwParameterPage-inlineDescription .ve-ui-mwParameterPage-doc-example {
color: var(--byline-color);
}
.ve-ui-expandableContent-toggle {
background-color: var(--ooui-interface);
}
.ve-ui-expandableContent-fade {
background: linear-gradient(to right, rgba(255, 255, 255, 0) 0, var(--ooui-interface) 90%);
}
.ve-ui-commandHelpDialog-shortcut > kbd,
.ve-ui-commandHelpDialog-sequence > kbd {
background-color: var(--keypress-background);
color: var(--keypress-color);
border-color: var(--keypress-border);
box-shadow: none;
text-shadow: none;
}
.ve-init-mw-desktopArticleTarget-toolbarPlaceholder-floating .ve-init-mw-desktopArticleTarget-toolbarPlaceholder-bar {
background: var(--ooui-interface);
}
.ve-init-mw-desktopArticleTarget-toolbarPlaceholder-bar {
border-bottom-color: var(--body-mid);
}
figure[typeof~='mw:File/Thumb'],
figure[typeof~='mw:File/Frame'],
figure[typeof~='mw:Image/Thumb'],
figure[typeof~='mw:Video/Thumb'],
figure[typeof~='mw:Image/Frame'],
figure[typeof~='mw:Video/Frame'] {
border: none;
background-color: var(--thumb-bg);
}
figure[typeof~='mw:File/Thumb'] > a:first-child > *:first-child:not( .mw-broken-media ),
figure[typeof~='mw:File/Frame'] > a:first-child > *:first-child:not( .mw-broken-media ),
figure[typeof~='mw:Image/Thumb'] > a:first-child > *:first-child:not( .mw-broken-media ),
figure[typeof~='mw:Video/Thumb'] > a:first-child > *:first-child:not( .mw-broken-media ),
figure[typeof~='mw:Image/Frame'] > a:first-child > *:first-child:not( .mw-broken-media ),
figure[typeof~='mw:Video/Frame'] > a:first-child > *:first-child:not( .mw-broken-media ) {
border: none;
background: var(--thumb-bg);
}
figure[typeof~='mw:File/Thumb'] > figcaption,
figure[typeof~='mw:File/Frame'] > figcaption,
figure[typeof~='mw:Image/Thumb'] > figcaption,
figure[typeof~='mw:Video/Thumb'] > figcaption,
figure[typeof~='mw:Image/Frame'] > figcaption,
figure[typeof~='mw:Video/Frame'] > figcaption {
border: none;
background-color: var(--thumb-caption-bg);
padding: 4px 6px;
}
:root {
--keypress-background: #eee;
--keypress-border: #ccc;
--keypress-color: #333;
}
.archivelist {
background-color: var(--body-light);
border: solid 1px var(--body-border);
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
float: right;
margin: 5px;
padding: 5px;
text-align: center;
width: 120px;
}
.shortcut {
border: 1px solid var(--body-border);
background: var(--body-light);
float: right;
font-size: 0.8em;
margin: 0.5em 0em 0.5em 1em;
padding: 0.5em;
text-align: center;
}
.hatnote,
.seealso {
font-style: italic;
}
.hatnote i,
.seealso i {
font-style: normal;
}
div.hatnote,
div.seealso {
margin: 0.5em 1.6em;
}
div.hatnote + div.hatnote,
div.hatnote + div.seealso,
div.seealso + div.hatnote,
div.seealso + div.seealso {
margin-top: -0.5em;
}
.keypress {
background: var(--keypress-background);
color: var(--keypress-color);
font-family: inherit;
border: 1px solid var(--keypress-border);
border-radius: 2px;
font-size: 0.9em;
margin: 0 0.1em;
padding: 0.1em 0.4em;
white-space: nowrap;
}
:root {
--documentation-background: #f9fafa;
--documentation-link-color: #e4eaee;
--documentation-headers-color: #fff;
--documentation-header-background: #949eaa;
--documentation-subheader-background: #808c9a;
--documentation-border: #e4eaee;
}
.documentation {
background: var(--documentation-background);
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
margin: 1em 0;
}
.documentation pre,
.documentation code {
background-color: var(--documentation-background);
border-color: var(--documentation-border);
}
.documentation h2,
.documentation hr {
border-color: var(--documentation-border);
}
.documentation-header {
color: var(--documentation-headers-color);
background: var(--documentation-header-background);
font-weight: bold;
padding: 1em 1.5em;
}
.documentation-title {
font-size: 1.25em;
}
.documentation-subheader {
color: var(--documentation-headers-color);
background: var(--documentation-subheader-background);
padding: 0.5em 1.5em;
}
.documentation-subheader a,
.documentation-subheader a:visited,
.documentation-subheader a:active {
color: var(--documentation-link-color);
}
.documentation-documentation,
.documentation-links {
font-size: 0.85em;
}
.documentation-content {
padding: 1em 1.5em;
}
.mw-templatedata-doc-params dl:not(:empty) {
column-count: 3;
border-top: 1px solid var(--body-border);
margin-bottom: 0.5em;
}
.mw-templatedata-doc-params dt::after {
content: ":";
}
.mw-templatedata-doc-params dd,
.mw-templatedata-doc-params dt {
margin: 0.1em 2em;
min-width: auto;
}
.mw-templatedata-doc-muted {
color: var(--subtle-color);
font-style: italic;
}
:root {
--infobox-text-color: var(--text-color);
--table-header: #b1886f;
--table-subheader: #d1b9ad;
--table-body: #fff8ee;
--table-border: #e9d8cc;
}
.infobox {
font-size: 0.85em;
width: 300px;
border-collapse: collapse;
float: right;
table-layout: fixed;
margin: 0.5em 0 1em 1em;
}
.infobox .infobox-buttons {
display: flex;
flex-wrap: wrap;
justify-content: center;
grid-gap: 3px;
margin-bottom: 3px;
}
.infobox .infobox-buttons .button {
background: var(--table-header);
padding: 0 5px;
font-weight: bold;
flex: 1 1 20%;
max-width: 20%;
color: #fff;
}
.infobox tbody {
border: 1px solid var(--table-border);
background: var(--table-body);
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(231, 215, 199, 0.5);
}
.infobox .infobox-header {
background: var(--table-header);
padding: 0.5em 0;
text-align: center;
color: #fff;
font-size: 1.15em;
font-weight: bold;
line-height: 1.4em;
}
.infobox .infobox-image {
text-align: center;
background: var(--body-main);
}
.infobox .infobox-subheader {
background: var(--table-subheader);
font-weight: bold;
text-align: center;
color: #fff;
}
.infobox .infobox-padding {
backgound: var(--table-body);
}
.infobox tr td:not(.infobox-padding) {
padding: 0.2em 0.5em;
}
.infobox th:not(.infobox-header):not(.infobox-subheader):not(.infobox-nested) {
border-right: 2px solid var(--table-subheader);
text-align: right;
padding: 0.2em 0.5em;
}
.hidden {
display: none;
}
ol.references,
.reflist {
font-size: 90%;
}
.reflist {
list-style-type: decimal;
}
.reflist .references {
font-size: 100%;
list-style-type: inherit;
}
.reflist-lower-alpha {
list-style-type: lower-alpha;
}
ol.references li:target,
sup.reference:target {
background-color: var(--body-light);
}
.hideQuotes .refhide {
display: none;
}
:root {
--messagebox-obsolete-background: #cfcfcf;
--messagebox-obsolete-border: #464646;
--messagebox-obsolete-color: var(--text-color);
--messagebox-obsolete-link-color: #6c6c6c;
--messagebox-info-background: #ebebeb;
--messagebox-info-border: #898989;
--messagebox-info-color: var(--text-color);
--messagebox-info-link-color: #6c6c6c;
--messagebox-action-background: #c7e8fa;
--messagebox-action-border: #0b5884;
--messagebox-action-color: var(--text-color);
--messagebox-action-link-color: #03436b;
--messagebox-warn-background: #dfc0ba;
--messagebox-warn-border: #861c10;
--messagebox-warn-color: var(--text-color);
--messagebox-warn-link-color: #8e221a;
--messagebox-safe-background: #d8f0d3;
--messagebox-safe-border: #1b8408;
--messagebox-safe-color: var(--text-color);
--messagebox-safe-link-color: #1b8408;
--messagebox-disambig-background: #ebebeb;
--messagebox-disambig-border: #898989;
--messagebox-disambig-color: var(--text-color);
--messagebox-disambig-link-color: #6c6c6c;
--messagebox-discord-background: #5865f2;
--messagebox-discord-border: #4c57d0;
--messagebox-discord-link-color: #d2e5fc;
}
.mw-message-box,
.mw-message-box-error,
.mw-message-box-warning,
.mw-message-box-success,
.usermessage {
color: var(--text-color);
}
.messagebox {
width: 65%;
margin: 0.5em auto;
border-left: 15px solid;
border-color: var(--body-dark);
background-color: var(--body-light);
box-sizing: border-box;
}
.messagebox.obsolete {
background-color: var(--messagebox-obsolete-background);
border-color: var(--messagebox-obsolete-border);
color: var(--messagebox-obsolete-color);
}
.messagebox.obsolete a,
.messagebox.obsolete a:visited,
.messagebox.obsolete a:active {
color: var(--messagebox-obsolete-link-color);
}
.messagebox.info {
background-color: var(--messagebox-info-background);
border-color: var(--messagebox-info-border);
color: var(--messagebox-info-color);
}
.messagebox.info a,
.messagebox.info a:visited,
.messagebox.info a:active {
color: var(--messagebox-info-link-color);
}
.messagebox.action {
background-color: var(--messagebox-action-background);
border-color: var(--messagebox-action-border);
color: var(--messagebox-action-color);
}
.messagebox.action a,
.messagebox.action a:visited,
.messagebox.action a:active {
color: var(--messagebox-action-link-color);
}
.messagebox.warn {
background-color: var(--messagebox-warn-background);
border-color: var(--messagebox-warn-border);
color: var(--messagebox-warn-color);
}
.messagebox.warn a,
.messagebox.warn a:visited,
.messagebox.warn a:active {
color: var(--messagebox-warn-link-color);
}
.messagebox.safe {
background-color: var(--messagebox-safe-background);
border-color: var(--messagebox-safe-border);
color: var(--messagebox-safe-color);
}
.messagebox.safe a,
.messagebox.safe a:visited,
.messagebox.safe a:active {
color: var(--messagebox-safe-link-color);
}
.messagebox.disambig {
background-color: var(--messagebox-disambig-background);
border-color: var(--messagebox-disambig-border);
color: var(--messagebox-disambig-color);
}
.messagebox.disambig a,
.messagebox.disambig a:visited,
.messagebox.disambig a:active {
color: var(--messagebox-disambig-link-color);
}
.messagebox.discord {
background-color: var(--messagebox-discord-background);
border-color: var(--messagebox-discord-border);
color: #fff;
}
.messagebox.discord a,
.messagebox.discord a:visited,
.messagebox.discord a:active {
color: var(--messagebox-discord-link-color);
}
.messagebox.discord a.external,
.messagebox.discord a:visited.external,
.messagebox.discord a:active.external {
font-style: italic;
}
.messagebox.stub {
width: 40%;
}
.messagebox.hasdialogue {
padding: 0 10px;
width: auto;
}
:root {
--byline-arrow-filter: invert(29%) sepia(0%) saturate(376%) hue-rotate(172deg) brightness(87%) contrast(80%);
--tile-border-color: var(--body-border);
--tile-background-color: var(--body-light);
--tile-link-button-color: #f5e9db;
--tile-link-button-highlight-color: #dfccb0;
--tile-dark-color: #fff;
--tile-dark-bg: #5d6773;
--tile-dark-link-color: #ccc;
--tile-dark-byline-color: rgba(255, 255, 255, 0.7);
--tile-dark-header-color: #fff;
}
.tile {
background: var(--tile-background-color);
border: 1px solid var(--tile-border-color);
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
padding: 1.5em 2em 1em;
max-width: 40em;
}
.tile h2 {
font-size: 1.4em;
font-weight: bold;
border: none;
margin: 0 0 0.4em;
}
.tile .byline + h2 {
margin-top: -0.5em;
}
.tile.dark {
color: var(--tile-dark-color);
background: var(--tile-dark-bg);
border: none;
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.3);
}
.tile.dark h2 {
color: var(--tile-dark-header-color);
}
.tile.dark a {
color: var(--tile-dark-link-color);
}
.tile.dark .byline {
color: var(--tile-dark-byline-color);
}
.byline {
font-size: 0.9em;
color: var(--byline-color);
}
.byline a {
color: var(--byline-color);
}
.tile-row {
display: flex;
flex-flow: row wrap;
margin-bottom: 1em;
}
.tile-halves {
display: flex;
flex-flow: row wrap;
border: 1px solid var(--tile-border-color);
background: var(--tile-background-color);
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
}
.tile-halves h2 {
font-size: 1.4em;
font-weight: bold;
border: none;
margin: 0 0 0.4em;
}
.tile-halves .byline + h2 {
margin-top: -0.5em;
}
.tile-top {
width: 100%;
padding: 1.3rem 1.5rem 0.6rem;
}
.tile-top.tile-image {
display: flex;
align-items: center;
background-color: var(--byline-color);
overflow: hidden;
padding: 0;
height: 13vw;
max-height: 12em;
transition: 0.4s ease-out;
}
.tile-halves:hover .tile-top.tile-image img {
transform: scale(1.1);
transition: 0.5s ease-out;
}
.tile-top.tile-image a {
width: 100%;
}
.tile-top.tile-image img {
width: 100%;
object-fit: cover;
max-height: 200px;
transition: 0.4s ease-out;
}
.tile-bottom {
background: var(--tile-background-color);
border-top: 1px solid var(--tile-border-color);
width: 100%;
padding: 1rem 1.5rem 0.6rem;
}
.tile-bottom.link-button {
align-self: flex-end;
padding: 0;
}
.tile-bottom.link-button a {
display: block;
text-align: center;
padding: 0.75em 1.5em 0.8em;
text-decoration: none;
}
.tile-bottom.read-more {
background: var(--tile-link-button-color);
transition: 0.3s ease-out;
}
.tile-bottom.read-more a {
color: var(--byline-color);
font-weight: bold;
text-align: right;
}
.tile-bottom.read-more:hover {
background: var(--tile-link-button-highlight-color);
}
.tile-bottom.read-more:hover .arrow {
transform: translateX(50%);
}
.tile-bottom.read-more .arrow {
filter: var(--byline-arrow-filter);
margin-left: 0.4em;
transition: 0.3s ease-out;
}
body.page-Main_Page.action-view .catlinks,
body.page-Main_Page.action-view #contentSub,
body.page-Main_Page.action-view #firstHeading,
body.page-Main_Page.action-view #siteNotice {
display: none;
}
body.page-Main_Page .mw-parser-output {
max-width: 75em;
margin: 0 auto;
}
body.page-Main_Page.action-view .catlinks,
body.page-Main_Page.action-view #contentSub,
body.page-Main_Page.action-view #siteNotice {
display: none;
}
.mainpage-header {
display: flex;
margin: 2.6em 1.75em 1.5em;
}
.mainpage-header .header-intro {
flex: 2;
}
.mainpage-header .header-intro h1 {
font-size: 2.5em;
font-weight: bold;
border: none;
margin: 0 0 0.15em;
}
.mainpage-header .header-intro p {
font-size: 1.1em;
line-height: 1.7em;
}
.mainpage-header .header-stats {
flex: 1;
display: flex;
justify-content: center;
align-items: center;
margin-top: -1em;
}
.mainpage-body {
display: grid;
grid-template-areas: "event event event" "update update update" "content content content" "left left right";
gap: 0.9rem;
grid-template-columns: repeat(3, 1fr);
}
.mainpage-body h2 a {
color: var(--text-color);
}
.mainpage-body .tile {
padding-left: 1.75em;
padding-right: 1.75em;
max-width: 100%;
}
.mainpage-body .tile-row {
width: 100%;
margin-bottom: 0;
}
.mainpage-body .tile-row {
display: grid;
gap: 0.9rem;
}
.mainpage-contents.tile-row {
display: flex;
}
.mainpage-contents.tile-row .tile-top {
height: 5.5rem;
}
.mainpage-left {
grid-area: left;
flex: 2;
display: flex;
flex-flow: column wrap;
}
.mainpage-left > * {
margin: 0 0 0.9rem;
}
.mainpage-right {
grid-area: right;
flex: 1;
display: flex;
flex-flow: column wrap;
}
.mainpage-right > * {
margin: 0 0 0.9rem;
}
.arrow {
background: url('filepath://White-chevron.svg') no-repeat;
display: inline-block;
height: 0.7rem;
width: 0.45rem;
vertical-align: middle;
}
.arrow.dark {
filter: invert(80%);
}
.mainpage-contents {
grid-area: content;
grid-template-columns: repeat(6, 1fr);
}
.mainpage-contents .tile-halves {
flex: 1;
}
.mainpage-contents .tile-top {
height: 4.5rem;
position: relative;
}
.mainpage-contents .tile-top.tile-image img {
height: auto;
}
.mainpage-contents h2 {
margin: 0;
padding: 0;
}
.mainpage-contents .tile-bottom.link-button a {
padding: 0.75em 0.2em;
}
.popular-pages ul {
display: grid;
grid-template-columns: repeat(3, 1fr);
grid-gap: 0.6em;
margin: 1em 0 0.7em 0;
}
.mp-popular-page-light {
display: flex;
align-items: center;
background-color: var(--button-background);
transition: 100ms;
}
.mp-popular-page-light a {
flex: 1;
display: block;
color: #fff;
font-weight: bold;
text-align: center;
text-decoration: none;
padding: 0.7em 1em;
}
.mp-popular-page-light:hover {
filter: brightness(115%);
transition: 100ms;
}
.mainpage-social {
border: none;
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.3);
}
.mainpage-social .tile-top {
display: flex;
align-items: center;
padding: 1em 1.5em;
}
.mainpage-social .tile-top a {
flex: 1;
position: relative;
text-decoration: none;
}
.mainpage-social .tile-top a:hover .arrow {
transform: translateX(50%);
}
.mainpage-social .tile-bottom {
border: none;
padding: 1em 1.75em;
}
.mainpage-social .tile-bottom p {
color: #fff;
font-weight: bold;
font-size: 0.9em;
text-align: center;
text-transform: uppercase;
letter-spacing: 0.03em;
margin: 0;
}
.mainpage-social .social-icon {
margin-right: 0.75em;
text-align: center;
width: 60px;
}
.mainpage-social .social-header {
color: #fff;
font-weight: bold;
font-size: 1.15em;
margin: 0.5em 0 -0.15em;
}
.mainpage-social .server-tagline {
color: rgba(255, 255, 255, 0.9);
margin-bottom: 0.5em;
}
.mainpage-social .arrow {
position: absolute;
top: calc(50% - .5em);
right: 0;
height: 1em;
width: 0.7em;
background-size: 0.7em 1em;
transition: 0.3s ease-out;
}
.mainpage-social.mainpage-discord .tile-top {
background: #5865f2;
}
.mainpage-social.mainpage-discord .tile-bottom {
background: #525ee0;
}
.mainpage-social.mainpage-twitter .tile-top {
background: #15202b;
}
.mainpage-social.mainpage-twitter .tile-bottom {
background: #121c26;
}
.mainpage-editing {
border: none;
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.3);
}
.mainpage-editing .tile-top {
background: #438ab5;
}
.mainpage-editing .tile-bottom {
background: #3980ab;
border: none;
padding: 0.8rem 1.5rem 0.4rem;
}
.mainpage-editing h2,
.mainpage-editing a {
color: #fff;
}
.mainpage-editing p {
color: rgba(255, 255, 255, 0.9);
}
.mainpage-editing ul {
list-style-image: url('filepath://Transparent-chevron.svg');
}
@media only screen and (max-width: 1200px) {
.mainpage-contents {
grid-template-columns: repeat(3, 1fr);
}
}
@media only screen and (max-width: 1000px) {
.mainpage-body {
grid-template-areas: "event event event" "update update update" "content content content" "left left left" "right right right";
}
.mainpage-recent-updates {
grid-template-columns: repeat(2, 1fr);
}
.mainpage-recent-updates .tile-halves:last-child {
display: none;
}
.mainpage-recent-updates .tile-halves:hover .tile-top img {
transform: scale(1.04);
}
.mainpage-recent-updates .tile-top {
height: 18vw;
min-height: 9em;
}
.mainpage-header .header-stats {
display: none;
}
.mainpage-left > *:last-child,
.mainpage-right > *:last-child {
margin-bottom: 0;
}
.popular-pages ul {
grid-template-columns: repeat(2, 1fr);
}
}
@media only screen and (max-width: 720px) {
.mainpage-recent-updates {
grid-template-columns: none;
}
.mainpage-recent-updates .tile-halves:last-child {
display: flex;
}
.mainpage-contents {
grid-template-columns: repeat(2, 1fr);
}
}
.mw-prefs-buttons {
background-color: var(--body-main);
border-top-color: var(--body-border);
box-shadow: none;
}
.mw-prefs-tabs-wrapper.oo-ui-panelLayout-framed,
.mw-prefs-tabs > .oo-ui-menuLayout-content > .oo-ui-indexLayout-stackLayout > .oo-ui-tabPanelLayout {
border-color: var(--body-border);
}
.mw-htmlform-ooui .mw-htmlform-matrix tbody tr:nth-child(even) td {
background-color: var(--body-light);
}
.mw-htmlform-ooui .mw-htmlform-matrix tbody tr:hover td {
background-color: var(--body-mid);
}
:root {
--rc-positive-color: #407813;
--rc-negative-color: #b41e0f;
}
.mw-plusminus-pos {
color: var(--rc-positive-color);
}
.mw-plusminus-neg {
color: var(--rc-negative-color);
}
.client-js .mw-recentchanges-toplinks:not(.mw-recentchanges-toplinks-collapsed) {
border-color: var(--body-border);
background-color: var(--body-light);
border-radius: 2px;
}
.mw-rcfilters-ui-filterTagMultiselectWidget-wrapper-content-title {
color: var(--text-color);
}
.mw-rcfilters-ui-filterTagMultiselectWidget-emptyFilters {
color: var(--byline-color);
}
.mw-rcfilters-ui-filterTagMultiselectWidget.oo-ui-widget-enabled .oo-ui-tagMultiselectWidget-handle {
background-color: var(--ooui-interface);
border-color: var(--ooui-interface-border);
}
.mw-rcfilters-ui-filterTagMultiselectWidget-views-select-widget.oo-ui-widget {
border-color: var(--ooui-interface-border);
}
.mw-rcfilters-collapsed .mw-rcfilters-ui-filterTagMultiselectWidget {
border-bottom-color: var(--ooui-interface-border);
}
.mw-rcfilters-ui-menuSelectWidget-footer {
background-color: var(--ooui-interface);
border-color: var(--ooui-interface-border);
}
.mw-rcfilters-ui-viewSwitchWidget label.oo-ui-labelWidget {
color: var(--byline-color);
}
.mw-rcfilters-ui-tagItemWidget-popup-content {
color: var(--ooui-text);
}
.mw-changeslist-legend,
.mw-rcfilters-ui-changesListWrapperWidget .mw-changeslist-legend {
background-color: var(--body-light);
border-color: var(--body-dark);
}
.mw-rcfilters-ui-changesListWrapperWidget-previousChangesIndicator {
border-color: var(--sidebar);
}
.client-js .mw-changeslist ul,
.client-js .mw-changeslist table.mw-enhanced-rc {
margin-left: 0;
}
.mw-rcfilters-ui-watchlistTopSectionWidget-separator {
border-color: var(--sidebar);
}
.mw-rcfilters-ui-itemMenuOptionWidget-header {
border-bottom-color: var(--ooui-interface);
background-color: var(--ooui-interface-border);
}
.mw-rcfilters-ui-itemMenuOptionWidget:not(:last-child):not(.mw-rcfilters-ui-itemMenuOptionWidget-identifier-talk) {
border-bottom-color: var(--ooui-normal-border);
}
.mw-rcfilters-ui-itemMenuOptionWidget-label-title,
.mw-rcfilters-ui-itemMenuOptionWidget-label-desc {
color: var(--text-color);
}
.mw-rcfilters-ui-filterMenuOptionWidget.oo-ui-flaggedElement-muted:not(.oo-ui-optionWidget-selected) {
background-color: var(--body-main);
}
.mw-rcfilters-ui-filterMenuOptionWidget.oo-ui-flaggedElement-muted .mw-rcfilters-ui-itemMenuOptionWidget-label-title,
.mw-rcfilters-ui-filterMenuOptionWidget.oo-ui-flaggedElement-muted .mw-rcfilters-ui-itemMenuOptionWidget-label-desc {
color: var(--subtle-color);
}
.mw-rcfilters-ui-filterMenuSectionOptionWidget {
background-color: var(--body-mid);
}
.mw-rcfilters-ui-filterMenuSectionOptionWidget-header-title.oo-ui-labelElement-label {
color: var(--ooui-text);
}
.mw-rcfilters-ui-filterMenuHeaderWidget-title {
color: var(--ooui-text);
}
.mw-rcfilters-ui-filterMenuHeaderWidget-header {
border-bottom-color: var(--ooui-interface-border);
background-color: var(--ooui-interface);
}
.mw-rcfilters-ui-itemMenuOptionWidget-view-namespaces {
border-top-color: var(--ooui-interface-border);
}
.mw-rcfilters-ui-datePopupWidget {
border-color: var(--ooui-interface-border);
}
.mw-rcfilters-ui-datePopupWidget .mw-rcfilters-ui-valuePickerWidget-title {
color: var(--byline-color);
}
.mw-rcfilters-ui-savedLinksListItemWidget-label {
color: var(--ooui-accent);
}
.client-js .mw-changeslist.mw-rcfilters-ui-changesListWrapperWidget-highlighted ul,
.client-js .mw-changeslist.mw-rcfilters-ui-changesListWrapperWidget-highlighted table.mw-enhanced-rc {
margin-left: 1.5em;
}
.page-Special_CreateAccount .mw-ui-container,
.page-Special_UserLogin .mw-ui-container {
max-width: 64rem;
margin: 0 auto;
}
.mw-number-text {
color: var(--byline-color);
}
.mw-body-content .mw-number-text h3 {
color: var(--text-color);
}
#mw-indicator-mw-helplink a {
background: none;
padding: 0;
display: flex;
align-items: center;
}
#mw-indicator-mw-helplink a::before {
content: '';
margin-right: 5px;
-webkit-mask: url("/resources/src/mediawiki.helplink/images/helpNotice.svg?46d34") no-repeat 50% 50% / contain;
mask: url("/resources/src/mediawiki.helplink/images/helpNotice.svg?46d34") no-repeat 50% 50% / contain;
background: var(--text-color);
height: 20px;
width: 20px;
}
.results-info {
color: inherit;
}
.mw-search-profile-tabs {
background-color: var(--body-mid);
border-color: transparent;
}
.search-types .current a {
color: inherit;
}
#mw-searchoptions {
background-color: var(--body-mid);
border-color: transparent;
}
#mw-searchoptions .divider {
border-color: var(--body-border);
}
#mw-searchoptions h4 {
font-family: inherit;
}
#mw-searchoptions .oo-ui-labelElement:nth-of-type(odd) {
font-weight: bold;
}
.searchresult {
line-height: 1.5;
}
.searchalttitle,
#mw-search-interwiki li {
font-size: 90%;
}
.mw-search-result-data {
color: var(--byline-color);
}
.page-Special_ListFiles a.image img {
width: inherit;
height: inherit;
}
.page-Special_ListFiles .TablePager_col_thumb {
text-align: center;
}
#editcount table[border="1"] {
background-color: var(--body-main) !important;
border-color: var(--wikitable-border) !important;
margin-top: 0.5em;
}
#editcount table[border="1"] th,
#editcount table[border="1"] td {
padding: 0.2em 0.4em;
}
#editcount table[border="1"] th {
background-color: var(--wikitable-header-bg);
border: 1px solid var(--wikitable-border);
}
#editcount table[border="1"] td {
border: 1px solid var(--wikitable-border);
}
#editcount table[border="1"] tr:nth-child(odd) {
background-color: var(--body-light);
}
.mw-echo-ui-notificationBadgeButtonPopupWidget-popup > .oo-ui-popupWidget-popup .mw-echo-ui-placeholderItemWidget {
background-color: inherit;
}
table.mw-interwikitable.body td.mw-interwikitable-local-yes {
background-color: var(--table-yes-background);
color: var(--table-yes-color);
}
.mw-protectedpages-unknown {
color: var(--byline-color);
}
.watchlistredir,
.allpagesredirect {
font-style: italic;
}
.allpagesredirect:after {
color: var(--byline-color);
content: " (redirect)";
}
.mw-apisandbox-toolbar {
background: var(--body-main);
}
.oo-ui-menuOptionWidget .mw-apisandbox-flag {
color: var(--byline-color);
}
tr.mw-abusefilter-list-disabled,
tr.mw-abusefilter-list-disabled td {
color: var(--byline-color);
}
table.mw-abuselog-details {
background: var(--wikitable-bg);
border-color: var(--wikitable-border);
}
table.mw-abuselog-details th {
background: var(--wikitable-header-bg);
}
table.mw-abuselog-details th,
table.mw-abuselog-details td {
border-color: var(--wikitable-border);
}
.mw-abusefilter-log-hidden-entry {
color: var(--subtle-color);
}
body td.mw-abusefilter-history-changed {
background: var(--table-no-background);
}
div.mw-abusefilter-editor,
#mw-abusefilter-warn-preview,
#mw-abusefilter-disallow-preview {
border-color: var(--ooui-input-border);
}
.mw-destfile-warning {
border-color: var(--warningbox-border);
color: var(--text-color);
background-color: var(--warningbox-bg);
}
span.fileinput-button {
background-color: var(--ooui-normal);
border-color: var(--ooui-normal-border);
color: var(--ooui-text);
}
ul.fileupload-results li.ful-success {
background-color: var(--successbox-bg);
}
ul.fileupload-results li.ful-success a {
color: var(--link-color);
}
ul.fileupload-results li.ful-error {
background-color: var(--errorbox-bg);
}
.color-container {
display: flex;
margin: 2em auto;
width: 80%;
max-width: 60em;
}
.color-column {
flex: 1;
margin-right: 1em;
}
.color-column:last-child {
margin-right: 0;
}
.color-column h3 {
padding: 0;
}
.color-group {
color: #333;
padding: 1em 1.5em;
transition: 0.2s ease-out;
}
.color-group:hover {
transform: scale(1.03);
}
.color-group.dark {
color: #fff;
}
.color-group .variable,
.color-group .hexcode {
font-family: monospace;
font-size: 1.1em;
-webkit-user-select: all;
-moz-user-select: all;
-ms-user-select: all;
user-select: all;
margin: 0;
}
body.wgl-readermode .color-group .variable,
body.wgl-readermode .color-group .hexcode {
font-size: inherit;
}
.color-group .variable {
font-weight: bold;
}
#t-print,
#t-permalink {
display: none;
}
#filetoc {
border-radius: 2px;
background: var(--body-mid);
border-color: transparent;
margin: 0.5em auto;
text-align: center;
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
}
li.gallerybox div.thumb {
border: none;
background-color: var(--thumb-bg);
}
.smwfact {
display: none;
}
.list-header {
background-color: var(--body-mid);
color: inherit;
}
.editOptions {
color: var(--text-color);
background-color: var(--sourceeditor-background-secondary);
border-color: var(--sourceeditor-border);
}
.mw-json th,
.mw-json td {
border-color: var(--wikitable-border);
}
.mw-json td {
background: var(--wikitable-bg);
}
.mw-json th {
background: var(--wikitable-header-bg);
}
8afb8a1483314e3cebd366ee9fad5caea727de43
1582
1577
2024-03-27T11:57:35Z
Merds
25
Updating CSS from [[MediaWiki:Common.less]]
css
text/css
/* <pre> */
:root {
--body-main: #feffff;
--body-light: #fff8ee;
--body-mid: #d1b9ad;
--body-dark: #b1886f;
--body-border: #d1b9ad;
--body-background-color: #173a4d;
--button-background: #605443;
--button-color: #fff;
--button-border: #3c352a;
--button-dark: #18140c;
--button-light: #3a301d;
--sidebar: #cfc08d;
--background-text-color: #e2dbc8;
--background-link-color: #e2bd8a;
--search-box: #efeee6;
--link-color: #936039;
--redlink-color: #ba0000;
--text-color: #2F2828;
--byline-color: #ccc;
--subtle-color: #777;
--admin-blue: #332e75;
--bearcat-green: #13592e;
--awb-purple: #933b96;
--rsw-blue: #438ab6;
--osrsw-brown: #605443;
--thumb-bg: var(--body-light);
--thumb-caption-bg: var(--body-mid);
--sourceeditor-input-background: #fff;
--sourceeditor-background: var(--body-light);
--sourceeditor-background-secondary: var(--body-light);
--sourceeditor-border: var(--body-mid);
--codemirror-gutter-background: var(--body-mid);
}
@font-face {
font-family: 'Lora';
font-weight: 400 700;
font-style: normal;
font-display: swap;
src: url('filepath://Lora.woff2') format('woff2');
}
@font-face {
font-family: 'Lora';
font-weight: 400 700;
font-style: italic;
font-display: swap;
src: url('filepath://Lora-Italic.woff2') format('woff2');
}
:root {
--base-text-color: #36414f;
--base-heading-color: #444e5a;
--base-heading-border: #e4eaee;
--mw-code-background-color: #ddd4bb;
--body-background-image: url('filepath://Wiki_background.jpg');
}
#mw-page-base {
background: none;
}
.mw-body {
background-color: var(--body-main);
color: var(--text-color);
border-color: transparent;
box-shadow: 0 0 7px rgba(0, 0, 0, 0.15);
margin-top: 0;
}
h1,
h2,
h3,
h4,
h5,
h6 {
color: var(--text-color);
}
h1,
h2 {
border-color: var(--sidebar);
}
.mw-body h1,
.mw-body-content h1,
.mw-body-content h2,
.mw-body-content h3,
.mw-body-content h4,
.mw-body-content h5,
.mw-body-content h6 {
font-family: 'Lora', 'Palatino', 'Georgia', serif;
}
.mw-parser-output h2:first-of-type {
clear: left;
}
.mw-footer {
color: var(--background-text-color);
}
.mw-footer li {
color: var(--background-text-color);
}
.mw-footer a,
.mw-footer a:active,
.mw-footer a:visited {
color: var(--background-link-color);
}
::placeholder {
color: var(--subtle-color);
}
a {
color: var(--link-color);
}
a:visited,
a:active {
color: var(--link-color);
}
a.new {
color: var(--redlink-color);
}
a.new:visited {
color: var(--redlink-color);
}
.mw-parser-output a.extiw,
.mw-parser-output a.external {
color: var(--link-color);
}
.mw-parser-output a.extiw:visited,
.mw-parser-output a.external:visited,
.mw-parser-output a.extiw:active,
.mw-parser-output a.external:active {
color: var(--link-color);
}
.jsPurgeLink a.external {
color: var(--link-color);
}
:root {
--errorbox-bg: #feecea;
--errorbox-border: #ee4231;
--warningbox-bg: #fef9de;
--warningbox-border: #f9d000;
--successbox-bg: #ecf8e3;
--successbox-border: #6bc71f;
}
.mw-message-box-error,
.errorbox,
.mw-message-box-warning,
.warningbox,
.mw-message-box-success,
.successbox,
.usermessage {
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
}
.mw-message-box-error,
.errorbox {
background-color: var(--errorbox-bg);
border-color: var(--errorbox-border);
}
.mw-message-box-warning,
.warningbox,
.usermessage {
background-color: var(--warningbox-bg);
border-color: var(--warningbox-border);
}
.mw-message-box-success,
.successbox {
background-color: var(--successbox-bg);
border-color: var(--successbox-border);
}
.catlinks {
background: var(--body-light);
border: 1px solid var(--body-dark);
padding: 8px 15px;
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
}
.catlinks li {
border-color: var(--body-mid);
}
.filehistory a img,
#file img {
background: url("data:image/svg+xml,%3C%3Fxml version='1.0' encoding='UTF-8'%3F%3E%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16'%3E%3Cpath d='M0 0h8v16h8V8H0z' opacity='.13'/%3E%3C/svg%3E") repeat;
}
#file img:hover {
background: none;
}
.mw-highlight {
background: none;
}
.mw-highlight .linenos {
background-color: var(--mw-code-background-color);
color: var(--byline-color);
}
.mw-highlight a:hover .linenos,
.mw-highlight .hll a .linenos {
color: var(--text-color);
}
.mw-content-ltr.mw-highlight-lines pre,
.mw-content-ltr.content .mw-highlight-lines pre {
box-shadow: inset 2.75em 0 0 var(--mw-code-background-color);
}
#pagehistory ul {
list-style: none;
margin: 0;
}
#pagehistory li {
border: 1px solid transparent;
padding: 1px 10px;
margin: 2px 0;
}
#pagehistory li.selected {
background-color: var(--body-light);
color: inherit;
border: 1px dashed var(--body-border);
outline: none;
}
#mw-history-compare > div:first-of-type {
position: -webkit-sticky;
position: sticky;
top: 0;
background-color: var(--body-main);
border-bottom: 1px solid var(--body-dark);
padding: 0.25em 0;
}
.wgl-stickyheader #mw-history-compare > div:first-of-type {
top: 2.5rem;
}
.autocomment,
.autocomment a,
.autocomment a:visited {
color: var(--link-color);
}
li span.deleted,
span.history-deleted {
color: var(--byline-color);
}
.mw-usertoollinks-contribs-no-edits,
.mw-usertoollinks-contribs-no-edits:visited {
color: var(--redlink-color);
}
.CategoryTreeToggle {
color: var(--link-color);
}
body.wgl-stickyheader.action-view .mw-headline:target::before {
display: block;
content: '';
margin-top: -3rem;
height: 3rem;
visibility: hidden;
pointer-events: none;
}
.mw-mmv-post-image {
color: var(--text-color);
background-color: var(--body-main);
}
.mw-mmv-image-metadata {
border-top-color: var(--body-mid);
background-color: var(--body-light);
}
.mw-mmv-dialog,
.mw-mmv-dialog .mw-mmv-dialog-down-arrow,
.mw-mmv-options-dialog .mw-mmv-dialog-down-arrow {
background-color: var(--body-light);
box-shadow: none;
}
.mw-mmv-options-enable-alert {
background-color: var(--body-light);
color: var(--text-color);
}
.mw-mmv-options-dialog-header,
.mw-mmv-options-text-header,
.mw-mmv-options-text-body,
.mw-mmv-options-enable-alert,
.mw-mmv-options-dialog .mw-mmv-disable-confirmation .mw-mmv-options-dialog-header,
.mw-mmv-options-dialog .mw-mmv-disable-confirmation .mw-mmv-options-text-header {
color: var(--text-color);
}
.mw-revslider-container {
border-color: var(--sidebar);
}
.mw-revslider-slider-wrapper {
border-top-color: var(--sidebar);
}
.mw-ui-button {
background-color: var(--ooui-normal);
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
}
.mw-ui-button:not(:disabled):hover,
.mw-ui-button:not(:disabled):active {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
}
.mw-ui-button:not(:disabled):focus {
color: var(--ooui-text);
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent), inset 0 0 0 2px #fff;
}
.mw-ui-button:not(:disabled):visited {
color: var(--ooui-text);
}
.mw-ui-button.mw-ui-progressive:not(:disabled) {
background-color: var(--ooui-progressive);
color: #fff;
border-color: var(--ooui-progressive);
}
.mw-ui-button.mw-ui-progressive:not(:disabled):hover {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
}
.mw-ui-button.mw-ui-progressive:not(:disabled):focus {
box-shadow: inset 0 0 0 1px var(--ooui-accent), inset 0 0 0 2px #fff;
}
.mw-ui-button.mw-ui-progressive:not(:disabled):active,
.mw-ui-button.mw-ui-progressive:not(:disabled).is-on {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
box-shadow: none;
}
.mw-ui-button.mw-ui-destructive:not( :disabled ) {
color: #fff;
}
.mw-ui-button.mw-ui-quiet,
.mw-ui-button.mw-ui-quiet.mw-ui-progressive,
.mw-ui-button.mw-ui-quiet.mw-ui-destructive {
color: var(--text-color);
}
input[type='checkbox']:hover + .mw-ui-button.mw-ui-quiet,
input[type='checkbox']:hover + .mw-ui-button.mw-ui-quiet.mw-ui-progressive,
input[type='checkbox']:hover + .mw-ui-button.mw-ui-quiet.mw-ui-destructive,
.mw-ui-button.mw-ui-quiet:hover,
.mw-ui-button.mw-ui-quiet.mw-ui-progressive:hover,
.mw-ui-button.mw-ui-quiet.mw-ui-destructive:hover {
background-color: rgba(0, 24, 73, 0.02745098);
color: var(--text-color);
border-color: transparent;
}
input[type='checkbox']:focus + .mw-ui-button.mw-ui-quiet,
input[type='checkbox']:focus + .mw-ui-button.mw-ui-quiet.mw-ui-progressive,
input[type='checkbox']:focus + .mw-ui-button.mw-ui-quiet.mw-ui-destructive,
.mw-ui-button.mw-ui-quiet:focus,
.mw-ui-button.mw-ui-quiet.mw-ui-progressive:focus,
.mw-ui-button.mw-ui-quiet.mw-ui-destructive:focus {
color: var(--text-color);
}
input[type='checkbox']:active + .mw-ui-button.mw-ui-quiet,
input[type='checkbox']:active + .mw-ui-button.mw-ui-quiet.mw-ui-progressive,
input[type='checkbox']:active + .mw-ui-button.mw-ui-quiet.mw-ui-destructive,
.mw-ui-button.mw-ui-quiet:active,
.mw-ui-button.mw-ui-quiet.mw-ui-progressive:active,
.mw-ui-button.mw-ui-quiet.mw-ui-destructive:active {
background-color: rgba(0, 36, 73, 0.08235294);
color: var(--text-color);
border-color: #72777d;
}
.mw-ui-input {
background-color: var(--ooui-input);
color: var(--text-color);
border-color: var(--ooui-input-border);
}
.mw-ui-input:hover {
border-color: var(--ooui-input-border--hover);
}
.mw-ui-input::placeholder {
color: var(--byline-color);
}
.mw-content-ltr .redirectText li:first-child {
padding: 0;
background: 0;
}
.mw-content-ltr .redirectText li:first-child::before {
content: '';
background: currentcolor;
-webkit-mask: url("filepath://Redirect-arrow.svg") no-repeat 50% 50% / contain;
mask: url("filepath://Redirect-arrow.svg") no-repeat 50% 50% / contain;
display: inline-block;
width: 47px;
height: 20px;
}
.vector-search-box-inner {
background: var(--body-main) !important;
box-shadow: inset 0 -7px 7px -7px rgba(0, 0, 0, 0.15) !important;
}
.vector-menu-dropdown .vector-menu-heading {
color: #937040 !important;
}
.vector-menu-dropdown .vector-menu-heading:hover {
color: #937040 !important;
}
.vector-menu-dropdown .vector-menu-heading:focus {
color: #937040 !important;
}
:root {
--wikitable-header-bg: var(--body-dark);
--wikitable-border: var(--body-border);
--wikitable-bg: var(--body-light);
--wikitable-bg-lighter: #e9e3d6;
--wikitable-color: var(--text-color);
--table-na-background: rgba(255, 255, 255, 0.3);
--table-na-color: var(--subtle-color);
--table-yes-background: #c3e8a3;
--table-yes-color: #2e5e05;
--table-no-background: #fbc0ba;
--table-no-color: #801c13;
--table-maybe-background: #fcea94;
--table-maybe-color: #786300;
}
.wikitable {
background: var(--wikitable-bg);
color: var(--wikitable-color);
border-color: var(--wikitable-border);
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
}
.wikitable > tr > th,
.wikitable > tr > td,
.wikitable > * > tr > th,
.wikitable > * > tr > td {
border-color: var(--wikitable-border);
}
.wikitable > tr > th.table-noborder,
.wikitable > tr > td.table-noborder,
.wikitable > * > tr > th.table-noborder,
.wikitable > * > tr > td.table-noborder {
border-left-style: hidden;
border-right-style: hidden;
padding-left: 0;
padding-right: 0;
}
.wikitable > tr > th,
.wikitable > * > tr > th {
background-color: var(--wikitable-header-bg);
color: #fff;
}
.tabber .wikitable {
box-shadow: none;
}
.mw_metadata td,
.mw_metadata th {
border-color: var(--wikitable-border);
}
.mw_metadata th {
background-color: var(--wikitable-header-bg);
}
.mw_metadata td {
background-color: var(--wikitable-bg);
}
.mw-datatable {
border-color: var(--wikitable-border);
}
.mw-datatable td,
.mw-datatable th {
border-color: var(--wikitable-border);
}
.mw-datatable th {
background-color: var(--wikitable-header-bg);
}
.mw-datatable td {
background-color: var(--wikitable-bg);
}
.mw-datatable tr:hover td {
background-color: var(--wikitable-bg);
}
table.alternating-rows tr:nth-child(odd),
table.alternating-cols td:nth-child(odd) {
background: var(--wikitable-alternating-bg);
}
.table-na {
background: var(--table-na-background);
color: var(--table-na-color);
vertical-align: middle;
text-align: center;
}
.table-yes {
background: var(--table-yes-background);
color: var(--table-yes-color);
}
.table-positive {
background: var(--table-yes-background);
}
.table-no {
background: var(--table-no-background);
color: var(--table-no-color);
}
.table-negative {
background: var(--table-no-background);
}
.table-maybe {
background: var(--table-maybe-background);
color: var(--table-maybe-color);
}
#mw-allmessagestable .am_actual,
#mw-allmessagestable .am_default {
background-color: var(--wikitable-bg);
}
#mw-allmessagestable .am_default:hover,
#mw-allmessagestable .am_actual:hover,
#mw-allmessagestable tbody:hover td {
background-color: var(--wikitable-bg-lighter);
}
table.wikitable td.no-cell-spacing {
padding: 0;
height: 0;
}
table.wikitable td.no-cell-spacing table {
margin: -1px;
width: calc(100% + 2px);
height: calc(100% + 2px);
}
.plainlist ol,
.plainlist ul {
margin: 0;
}
.plainlist li {
margin-bottom: 0;
list-style: none;
}
table.align-right-1 td:nth-of-type(1),
table.align-right-2 td:nth-of-type(2),
table.align-right-3 td:nth-of-type(3),
table.align-right-4 td:nth-of-type(4),
table.align-right-5 td:nth-of-type(5),
table.align-right-6 td:nth-of-type(6),
table.align-right-7 td:nth-of-type(7),
table.align-right-8 td:nth-of-type(8),
table.align-right-9 td:nth-of-type(9),
table.align-right-10 td:nth-of-type(10),
table.align-right-11 td:nth-of-type(11),
table.align-right-12 td:nth-of-type(12),
table.align-right-13 td:nth-of-type(13),
table.align-right-14 td:nth-of-type(14),
table.align-right-15 td:nth-of-type(15),
table.align-right-16 td:nth-of-type(16),
table.align-right-17 td:nth-of-type(17),
table.align-right-18 td:nth-of-type(18),
table.align-right-19 td:nth-of-type(19),
table.align-right-20 td:nth-of-type(20) {
text-align: right;
}
table.align-center-1 td:nth-of-type(1),
table.align-center-2 td:nth-of-type(2),
table.align-center-3 td:nth-of-type(3),
table.align-center-4 td:nth-of-type(4),
table.align-center-5 td:nth-of-type(5),
table.align-center-6 td:nth-of-type(6),
table.align-center-7 td:nth-of-type(7),
table.align-center-8 td:nth-of-type(8),
table.align-center-9 td:nth-of-type(9),
table.align-center-10 td:nth-of-type(10),
table.align-center-11 td:nth-of-type(11),
table.align-center-12 td:nth-of-type(12),
table.align-center-13 td:nth-of-type(13),
table.align-center-14 td:nth-of-type(14),
table.align-center-15 td:nth-of-type(15),
table.align-center-16 td:nth-of-type(16),
table.align-center-17 td:nth-of-type(17),
table.align-center-18 td:nth-of-type(18),
table.align-center-19 td:nth-of-type(19),
table.align-center-20 td:nth-of-type(20) {
text-align: center;
}
table.align-left-1 td:nth-of-type(1),
table.align-left-2 td:nth-of-type(2),
table.align-left-3 td:nth-of-type(3),
table.align-left-4 td:nth-of-type(4),
table.align-left-5 td:nth-of-type(5),
table.align-left-6 td:nth-of-type(6),
table.align-left-7 td:nth-of-type(7),
table.align-left-8 td:nth-of-type(8),
table.align-left-9 td:nth-of-type(9),
table.align-left-10 td:nth-of-type(10),
table.align-left-11 td:nth-of-type(11),
table.align-left-12 td:nth-of-type(12),
table.align-left-13 td:nth-of-type(13),
table.align-left-14 td:nth-of-type(14),
table.align-left-15 td:nth-of-type(15),
table.align-left-16 td:nth-of-type(16),
table.align-left-17 td:nth-of-type(17),
table.align-left-18 td:nth-of-type(18),
table.align-left-19 td:nth-of-type(19),
table.align-left-20 td:nth-of-type(20) {
text-align: left;
}
:root {
--diff-addedline-border-color: #438ab5;
--diff-addedline-background: #bddff2;
--diff-addedline-color: #000;
--diff-deletedline-border-color: #379541;
--diff-deletedline-background: #c1edbf;
--diff-deletedline-color: #000;
--diff-context-border-color: var(--body-mid);
--diff-context-background: var(--body-mid);
}
.diff-context {
border-color: var(--diff-context-border-color);
background: var(--diff-context-background);
color: inherit;
}
.diff-addedline {
border-color: var(--diff-addedline-border-color);
}
.diff-addedline .diffchange {
background: var(--diff-addedline-background);
color: var(--diff-addedline-color);
}
.diff-deletedline {
border-color: var(--diff-deletedline-border-color);
}
.diff-deletedline .diffchange {
background: var(--diff-deletedline-background);
color: var(--diff-deletedline-color);
}
.mw-diff-movedpara-left:after,
.mw-diff-movedpara-right:after {
color: var(--text-color);
}
.mw-notification {
background-color: var(--body-light);
border-color: var(--body-border);
color: var(--text-color);
}
.mw-echo-ui-notificationsInboxWidget-toolbarWrapper {
background: var(--body-main);
}
.mw-body-content .mw-echo-ui-datedSubGroupListWidget-title-secondary {
color: var(--byline-color);
}
.mw-echo-ui-pageNotificationsOptionWidget.oo-ui-optionWidget-selected {
background-color: var(--ooui-normal);
color: var(--ooui-accent);
}
.mw-echo-ui-pageNotificationsOptionWidget-label-count {
background-color: var(--ooui-normal);
color: var(--byline-color);
}
.oo-ui-optionWidget-selected .mw-echo-ui-pageNotificationsOptionWidget-label-count {
color: var(--ooui-accent);
}
.mw-echo-ui-pageNotificationsOptionWidget.oo-ui-optionWidget-highlighted {
background-color: var(--ooui-normal);
color: var(--text-color);
}
.mw-echo-ui-crossWikiUnreadFilterWidget {
border-color: var(--body-border);
}
.mw-echo-ui-crossWikiUnreadFilterWidget-subtitle {
color: var(--byline-color);
}
.mw-echo-ui-notificationBadgeButtonPopupWidget-popup > .oo-ui-popupWidget-popup > .oo-ui-popupWidget-head,
.mw-echo-ui-notificationBadgeButtonPopupWidget-popup > .oo-ui-popupWidget-popup > .oo-ui-popupWidget-footer {
border-color: var(--ooui-interface-border);
}
.mw-echo-ui-notificationBadgeButtonPopupWidget-popup > .oo-ui-popupWidget-popup > .oo-ui-popupWidget-footer .mw-echo-ui-notificationBadgeButtonPopupWidget-footer-buttons .oo-ui-buttonElement:last-child {
border-left-color: var(--ooui-normal-border);
}
.mw-echo-ui-notificationItemWidget {
background-color: var(--ooui-normal);
border-color: var(--ooui-normal-border);
}
.mw-echo-ui-notificationItemWidget:hover,
.mw-echo-ui-notificationItemWidget-unread:hover {
background-color: var(--ooui-normal--hover);
}
.mw-echo-ui-notificationItemWidget:last-child {
border-bottom-color: var(--ooui-normal-border);
}
.mw-echo-ui-notificationItemWidget-unread {
background-color: var(--search-box);
}
.mw-echo-ui-crossWikiNotificationItemWidget-group,
.mw-echo-ui-bundleNotificationItemWidget-group {
background-color: var(--ooui-interface);
}
.mw-echo-ui-toggleReadCircleButtonWidget-circle {
background-color: var(--ooui-progressive);
}
.mw-echo-ui-toggleReadCircleButtonWidget:hover .mw-echo-ui-toggleReadCircleButtonWidget-circle {
background-color: var(--ooui-progressive--hover);
}
.mw-echo-ui-toggleReadCircleButtonWidget-circle-unread {
background-color: var(--ooui-normal);
border-color: var(--ooui-normal-border);
}
.mw-echo-ui-notificationItemWidget-content-message-header,
.mw-echo-ui-notificationItemWidget-content-message-body,
.mw-echo-ui-menuItemWidget > .oo-ui-buttonElement-button > .oo-ui-labelElement-label,
.mw-echo-ui-notificationItemWidget-content-actions-timestamp {
color: var(--ooui-text);
}
.mw-echo-ui-bundleNotificationItemWidget-group {
background-color: var(--body-main);
}
@keyframes unseen-fadeout-to-unread {
from {
background-color: var(--wikitable-bg-lighter);
}
to {
background-color: var(--search-box);
}
}
@keyframes unseen-fadeout-to-read {
from {
background-color: var(--wikitable-bg-lighter);
}
to {
background-color: var(--body-main);
}
}
.mwe-popups {
background: var(--body-light);
}
.mwe-popups .mwe-popups-container {
color: var(--text-color);
background: var(--body-light);
}
.mwe-popups .mwe-popups-container.flipped-x-y:before,
.mwe-popups .mwe-popups-container.flipped-y:before {
border-top: none;
}
.mwe-popups .mwe-popups-container.mwe-popups-no-image-tri:before {
border-bottom: none;
}
.mwe-popups .mwe-popups-container.flipped-x-y:after,
.mwe-popups .mwe-popups-container.flipped-y:after {
border-top-color: var(--body-light);
}
.mwe-popups .mwe-popups-container.mwe-popups-no-image-tri:after {
border-bottom-color: var(--body-light);
}
.mwe-popups .mwe-popups-settings-icon:hover,
.mwe-popups .mwe-popups-settings-icon:active {
background-color: var(--ooui-normal--hover);
}
.mwe-popups .mw-ui-icon-element:not(.disabled):hover {
background: none;
}
.mwe-popups .mwe-popups-extract {
color: var(--text-color);
}
.mwe-popups .mwe-popups-extract[dir='ltr']:after {
background-image: linear-gradient(to right, rgba(49, 62, 89, 0), var(--body-light) 50%);
}
.mwe-popups-overlay {
background-color: var(--ooui-window-background);
}
#mwe-popups-settings {
background: var(--ooui-interface);
border-color: var(--ooui-interface-border);
color: var(--text-color);
}
#mwe-popups-settings header {
border-color: var(--ooui-interface-border);
}
#mwe-popups-settings main#mwe-popups-settings-form p {
color: var(--byline-color);
}
#mwe-popups-settings main#mwe-popups-settings-form form label > span {
color: var(--ooui-text);
}
:root {
--smw-ask-options-even-bg: var(--body-mid);
--smw-ask-options-odd-bg: var(--body-light);
--smw-ask-action-btn-lblue-bg: var(--body-main);
--smw-ask-action-btn-lblue-color: #000;
--smw-ask-action-btn-lblue-border-color: var(--body-light);
--smw-ask-action-btn-dblue-bg: var(--body-light);
--smw-ask-action-btn-dblue-color: #fff;
--smw-ask-action-btn-dblue-border-color: var(--button-border);
}
.smw-ask-condition fieldset,
.smw-ask-printhead fieldset {
border-color: var(--sidebar);
}
.smw-ask-search fieldset,
.smw-ask-format fieldset,
.smw-ask-options fieldset {
border-color: var(--sidebar);
}
.strike > span:before,
.strike > span:after {
background: var(--sidebar);
}
.smw-ask-options-fields tr td {
background-color: var(--smw-ask-options-even-bg);
}
.smw-ask-options-fields tr:nth-child(odd) td {
background-color: var(--smw-ask-options-odd-bg);
}
.smw-ask-action-btn.smw-ask-action-btn-lblue,
.smw-ask-action-btn.smw-ask-action-btn-lblue:hover,
.smw-ask-action-btn.smw-ask-action-btn-lblue:visited {
background-color: var(--smw-ask-action-btn-lblue-bg);
color: var(--smw-ask-action-btn-lblue-color);
border-color: var(--smw-ask-action-btn-lblue-border-color);
}
.smw-ask-action-btn.smw-ask-action-btn-dblue,
.smw-ask-action-btn.smw-ask-action-btn-dblue:hover,
.smw-ask-action-btn.smw-ask-action-btn-dblue:visited {
background-color: var(--smw-ask-action-btn-dblue-bg);
color: var(--smw-ask-action-btn-dblue-color);
border-color: var(--smw-ask-action-btn-dblue-border-color);
}
.smw-ask-query textarea,
.smw-ask-actions textarea {
background-color: var(--ooui-interface);
border-color: var(--ooui-interface-border);
color: var(--ooui-text);
}
.smw-ask-query-format select {
background-color: var(--ooui-interface);
border: 1px solid var(--ooui-interface-border);
color: var(--ooui-text);
}
.smw-ask-toplinks {
background-color: var(--body-mid);
}
.smw-ask-toplinks span.smw-icon-info {
background: none;
padding: 0 !important;
}
.smw-ask-toplinks span.smw-icon-info::before {
content: '';
background: var(--text-color);
-webkit-mask: url("data:image/svg+xml,%3C%3Fxml version='1.0' encoding='UTF-8'%3F%3E%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 20 20'%3E%3Ctitle%3Einfo%3C/title%3E%3Cpath d='M10 0C4.477 0 0 4.477 0 10s4.477 10 10 10 10-4.477 10-10S15.523 0 10 0zM9 5h2v2H9zm0 4h2v6H9z'/%3E%3C/svg%3E") no-repeat 50% 50% / contain;
mask: url("data:image/svg+xml,%3C%3Fxml version='1.0' encoding='UTF-8'%3F%3E%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 20 20'%3E%3Ctitle%3Einfo%3C/title%3E%3Cpath d='M10 0C4.477 0 0 4.477 0 10s4.477 10 10 10 10-4.477 10-10S15.523 0 10 0zM9 5h2v2H9zm0 4h2v6H9z'/%3E%3C/svg%3E") no-repeat 50% 50% / contain;
padding: 0 0 3px 18px;
}
.smw-ask-options-row-odd {
background-color: var(--body-light);
}
.smw-ask-options-row-even {
background-color: var(--body-mid);
}
#options-toggle:not(:checked) + #options-list .options-parameter-list:after {
background-image: linear-gradient(to bottom, transparent, var(--body-mid) 90%);
}
.smw-ask-button-submit input {
background-color: var(--ooui-normal);
border-color: var(--ooui-normal-border);
color: var(--text-color);
}
.smw-ask-button-submit input:hover,
.smw-ask-button-lgrey:hover {
background-color: var(--ooui-normal--hover);
border-color: var(--ooui-normal-border);
}
input.smw-ask-action-btn.smw-ask-action-btn-dblue {
background-color: var(--ooui-normal);
border-color: var(--ooui-normal-border);
color: var(--ooui-text);
}
a.smw-ask-action-btn.smw-ask-action-btn-lblue {
background-color: var(--body-mid);
border-color: var(--body-mid);
color: var(--ooui-text);
}
a.smw-ask-action-btn.smw-ask-action-btn-lblue:visited {
background-color: var(--body-mid);
border-color: var(--body-mid);
color: var(--ooui-text);
}
a.smw-ask-action-btn.smw-ask-action-btn-lblue:hover {
background-color: var(--body-mid);
border-color: var(--body-mid);
color: var(--ooui-text);
}
a.smw-ask-action-btn-lgrey {
background-color: var(--ooui-normal);
border-color: var(--ooui-normal-border);
color: var(--ooui-text);
}
a.smw-ask-action-btn-lgrey:hover {
background-color: var(--ooui-normal--hover);
border-color: var(--ooui-normal-border);
color: var(--ooui-text);
}
.smw-callout-error {
background-color: var(--errorbox-bg);
border-color: var(--errorbox-border);
}
.smw-callout-info {
background-color: var(--body-light);
border-color: var(--body-dark);
}
.smw-callout-success {
background-color: var(--successbox-bg);
border-color: var(--successbox-border);
}
.smw-callout-warning {
background-color: var(--warningbox-bg);
border-color: var(--warningbox-bg);
}
.smw-tabs input.nav-tab:checked + label.nav-label,
.smw-tabs input.nav-tab:checked + label.nav-label:hover {
color: inherit;
}
#tab-smw-property-value:checked + label.nav-label .usage-count {
color: #fff;
background-color: var(--ooui-progressive);
}
#tab-smw-property-value:checked + label.nav-label .usage-count.moderate {
color: #fff;
background-color: #b55e0c;
border-color: #b55e0c;
}
#tab-smw-property-value:checked + label.nav-label .usage-count.high {
color: #fff;
background-color: #9f261e;
border-color: #9f261e;
}
.smw-property-page-results .header-title {
background-color: var(--ooui-interface);
border-bottom-color: var(--ooui-interface-border);
color: var(--ooui-text);
}
.smw-property-page-results .value-row:hover {
background-color: var(--ooui-normal--hover);
}
.smw-property-page-results .smw-table .header-row {
color: var(--text-color);
}
.tippy-tooltip.light-border-theme {
background-color: var(--body-light);
color: var(--text-color);
}
.tippy-tooltip.light-border-theme .tippy-arrow {
border-top-color: var(--body-light);
}
.tippy-tooltip.light-border-theme .tippy-arrow:after {
border-top-color: var(--body-light);
}
.tippy-header {
background-color: var(--body-dark);
border-bottom-color: var(--body-mid);
}
.smw-ui-input-filter {
background-color: var(--ooui-interface);
border-color: var(--ooui-interface-border);
color: var(--ooui-text);
}
.smw-ui-input-filter input {
border-left-color: var(--ooui-interface-border) !important;
color: var(--ooui-text) !important;
}
.smw-ui-pagination .page-link.link-disabled {
background-color: var(--ooui-disabled);
border-color: var(--ooui-disabled-border);
color: var(--subtle-color);
}
.smw-ui-pagination .page-link {
background-color: var(--ooui-normal);
border-color: var(--ooui-normal-border);
color: var(--link-color);
}
.smw-ui-pagination .page-link:hover {
background-color: var(--ooui-normal--hover);
border-color: var(--ooui-normal-border);
color: var(--link-color);
}
.smw-ui-pagination .page-link.link-active {
color: #fff;
background-color: var(--ooui-progressive);
border-color: var(--ooui-progressive);
}
.smw-tabs input.nav-tab:checked + label.nav-label {
border-color: var(--ooui-normal-border);
}
.smw-tabs section,
.smw-tabs .subtab-content {
border-top-color: var(--ooui-normal-border);
}
.smw-column-header {
color: var(--text-color);
}
.smw-factbox {
background: var(--body-main);
border-color: transparent;
}
.mw-body .mw-indicators #mw-indicator-smw-entity-examiner.mw-indicator .smw-indicator-vertical-bar-loader {
display: none;
}
.smwb-theme-light .smwb-title,
.smwb-theme-light .smwb-center,
.smwb-theme-light .smwb-actions,
.smwb-theme-light .smwb-prophead {
background-color: var(--body-mid);
}
.smwb-theme-light .smwb-factbox {
border-left-color: var(--body-mid);
}
.smwb-theme-light .smwb-ifactbox {
border-right-color: var(--body-mid);
}
.smwb-theme-light .smwb-propval {
background-color: var(--body-light);
}
.smwb-action-separator {
border-color: var(--wikitable-border);
}
.smwb-bottom {
border-bottom: 1px solid var(--wikitable-border);
}
.smwb-ifactbox .smwb-cell,
.smwb-factbox .smwb-cell {
border-top: 1px solid var(--wikitable-border);
}
.smwb-propvalue .smwb-prophead,
.smwb-ipropvalue .smwb-prophead,
.smwb-propvalue .smwb-propval,
.smwb-ipropvalue .smwb-propval {
font-size: 0.9em;
}
:root {
--filter-black-to-link: invert(36%) sepia(58%) saturate(433%) hue-rotate(344deg) brightness(100%) contrast(91%);
}
#bodyContent span.smwbrowse a {
color: black;
background-image: url('filepath://Smwbrowse.svg');
filter: var(--filter-black-to-link);
}
#bodyContent span.smwbrowse a:hover {
color: black;
background-image: url('filepath://Smwbrowse-hover.svg');
text-decoration: underline;
}
#bodyContent span.smwsearch a {
color: black;
filter: var(--filter-black-to-link);
background-image: url('filepath://Smwsearch.svg');
}
#bodyContent span.smwsearch a:hover {
color: black;
background-image: url('filepath://Smwsearch-hover.svg');
text-decoration: underline;
}
:root {
--tabber-tab-bg: var(--body-light);
--tabber-tab-border-color: var(--body-border);
--tabber-active-tab-bg: var(--body-light);
--tabber-active-tab-color: var(--text-color);
--tabber-active-tab-hover-bg: var(--body-light);
--tabber-active-tab-hover-border-color: var(--body-border);
--tabber-active-tab-hover-color: var(--text-color);
--tabber-active-tab-border-hider-color: var(--body-light);
--tabber-inactive-tab-bg: var(--body-background-color);
--tabber-inactive-tab-border-color: var(--body-border);
--tabber-inactive-tab-color: var(--text-color);
--tabber-inactive-tab-hover-bg: var(--body-light);
--tabber-inactive-tab-hover-border-color: var(--body-border);
}
.tabber {
margin: 1em 0;
}
.tabber .tabbertab {
background-color: var(--tabber-tab-bg);
border: 1px solid var(--tabber-tab-border-color);
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
padding: 1em 1.5em;
}
ul.tabbernav {
border: none;
margin-left: 2em;
margin-bottom: 0;
margin-right: 2em;
padding: 0;
font-family: inherit;
}
ul.tabbernav li.tabberactive > a {
background-color: var(--tabber-active-tab-bg);
color: var(--tabber-active-tab-color);
border-bottom: none;
position: relative;
}
ul.tabbernav li.tabberactive > a:hover {
color: var(--tabber-active-tab-hover-color);
background-color: var(--tabber-active-tab-hover-bg);
border-color: var(--tabber-active-tab-hover-border-color);
border-bottom: none;
}
ul.tabbernav li.tabberactive > a::after {
content: '';
position: absolute;
left: 0;
right: 0;
bottom: -1px;
border-bottom: 2px solid var(--tabber-active-tab-border-hider-color);
}
ul.tabbernav li a {
background-color: var(--tabber-inactive-tab-bg);
border-bottom: transparent;
border-color: var(--tabber-inactive-tab-border-color);
color: var(--tabber-inactive-tab-color);
display: inline-block;
font-size: 110%;
padding: 0.5em 1em;
}
ul.tabbernav li a:hover {
background-color: var(--tabber-inactive-tab-hover-bg);
border-color: var(--tabber-inactive-tab-hover-border-color);
}
ul.tabbernav li a:link,
ul.tabbernav li a:visited {
color: var(--tabber-inactive-tab-color);
}
:root {
--ooui-text: var(--text-color);
--ooui-interface: var(--body-light);
--ooui-interface-border: var(--body-border);
--ooui-window-background: rgba(255, 255, 255, 0.5);
--ooui-normal: #d5c7ad;
--ooui-normal--hover: #dfd5c1;
--ooui-normal-border: #b8a282;
--ooui-progressive: #605443;
--ooui-progressive--hover: #7e6e58;
--ooui-accent: var(--link-color);
--ooui-input: #fff;
--ooui-input-border: #b8a282;
--ooui-input-border--hover: #8a724f;
--ooui-disabled: #d1cdc5;
--ooui-disabled-border: #c2b9ab;
--ooui-disabled-text: var(--subtle-color);
--ooui-pending-background-image: repeating-linear-gradient(-45deg, var(--search-box), var(--search-box) 20px, var(--body-main) 20px, var(--body-main) 30px);
}
.oo-ui-widget {
color: var(--ooui-text);
}
.oo-ui-checkboxInputWidget [type='checkbox'] + span,
.oo-ui-radioInputWidget [type='radio'] + span {
background-color: var(--ooui-input);
border-color: var(--ooui-input-border);
}
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:checked + span,
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:indeterminate + span {
background-color: var(--ooui-progressive);
border-color: var(--ooui-progressive);
}
.oo-ui-radioInputWidget.oo-ui-widget-enabled [type='radio']:checked + span {
border-color: var(--ooui-progressive);
}
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:checked:hover + span,
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:indeterminate:hover + span {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
}
.oo-ui-radioInputWidget.oo-ui-widget-enabled [type='radio']:checked:hover + span {
border-color: var(--ooui-progressive--hover);
}
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:hover + span,
.oo-ui-radioInputWidget.oo-ui-widget-enabled [type='radio']:hover + span {
border-color: var(--ooui-accent);
}
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:focus + span {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:active + span,
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:checked:active + span,
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:indeterminate:active + span {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
box-shadow: inset 0 0 0 1px var(--ooui-progressive--hover);
}
.oo-ui-radioInputWidget.oo-ui-widget-enabled [type='radio']:active + span {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
}
.oo-ui-radioInputWidget.oo-ui-widget-enabled [type='radio']:checked:active + span {
border-color: var(--ooui-progressive--hover);
box-shadow: inset 0 0 0 1px var(--ooui-progressive--hover);
}
.oo-ui-radioInputWidget.oo-ui-widget-enabled [type='radio']:checked:active + span:before {
border-color: var(--ooui-progressive--hover);
}
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:checked:focus + span,
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:indeterminate:focus + span {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent), inset 0 0 0 2px #fff;
}
.oo-ui-checkboxInputWidget [type='checkbox']:disabled + span,
.oo-ui-radioInputWidget [type='radio']:disabled + span {
background-color: var(--ooui-disabled);
border-color: var(--ooui-disabled);
}
.oo-ui-dropdownWidget-handle {
border-color: var(--ooui-normal-border);
}
.oo-ui-dropdownWidget.oo-ui-widget-enabled .oo-ui-dropdownWidget-handle {
background-color: var(--ooui-normal);
color: var(--ooui-text);
}
.oo-ui-dropdownWidget.oo-ui-widget-enabled .oo-ui-dropdownWidget-handle:hover {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
}
.oo-ui-dropdownWidget.oo-ui-widget-enabled .oo-ui-dropdownWidget-handle:active {
color: var(--ooui-text);
}
.oo-ui-dropdownWidget.oo-ui-widget-enabled .oo-ui-dropdownWidget-handle:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-dropdownWidget.oo-ui-widget-enabled.oo-ui-dropdownWidget-open .oo-ui-dropdownWidget-handle {
background-color: var(--ooui-normal--hover);
}
.oo-ui-dropdownWidget.oo-ui-widget-disabled .oo-ui-dropdownWidget-handle {
color: var(--ooui-disabled-text);
text-shadow: none;
border-color: var(--ooui-disabled-border);
background-color: var(--ooui-disabled);
}
.oo-ui-dropdownInputWidget select {
border-color: var(--ooui-normal-border);
}
.oo-ui-dropdownInputWidget option {
background-color: var(--ooui-interface);
}
.oo-ui-dropdownInputWidget.oo-ui-widget-enabled {
background-color: var(--ooui-normal);
}
.oo-ui-dropdownInputWidget.oo-ui-widget-enabled:hover {
background-color: var(--ooui-normal--hover);
}
.oo-ui-dropdownInputWidget.oo-ui-widget-enabled select {
color: var(--ooui-text);
}
.oo-ui-dropdownInputWidget.oo-ui-widget-enabled select:hover,
.oo-ui-dropdownInputWidget.oo-ui-widget-enabled select:active {
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
}
.oo-ui-dropdownInputWidget.oo-ui-widget-enabled select:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-labelWidget.oo-ui-inline-help {
color: var(--byline-color);
}
.oo-ui-menuSelectWidget {
background-color: var(--ooui-interface);
border-color: var(--ooui-interface-border);
}
.oo-ui-menuSelectWidget-frameless {
box-shadow: inset 0 -1px 0 0 var(--ooui-normal-border);
}
.oo-ui-menuSectionOptionWidget {
color: var(--byline-color);
}
.oo-ui-menuOptionWidget.oo-ui-optionWidget-highlighted,
.oo-ui-menuOptionWidget.oo-ui-optionWidget-selected {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
}
.oo-ui-menuOptionWidget.oo-ui-optionWidget-selected.oo-ui-menuOptionWidget.oo-ui-optionWidget-highlighted,
.oo-ui-menuOptionWidget.oo-ui-optionWidget-pressed.oo-ui-menuOptionWidget.oo-ui-optionWidget-highlighted {
color: var(--ooui-accent);
}
.oo-ui-menuOptionWidget.oo-ui-widget-enabled.oo-ui-optionWidget {
color: var(--ooui-text);
}
.oo-ui-messageDialog-title {
color: inherit;
}
.oo-ui-messageWidget.oo-ui-messageWidget-block.oo-ui-flaggedElement-error {
background-color: var(--errorbox-bg);
border-color: var(--errorbox-border);
}
.oo-ui-messageWidget.oo-ui-messageWidget-block.oo-ui-flaggedElement-warning {
background-color: var(--warningbox-bg);
border-color: var(--warningbox-border);
}
.oo-ui-messageWidget.oo-ui-messageWidget-block.oo-ui-flaggedElement-success {
background-color: var(--successbox-bg);
border-color: var(--successbox-border);
}
.oo-ui-messageWidget.oo-ui-messageWidget-block.oo-ui-flaggedElement-notice {
background-color: var(--messagebox-info-background);
border-color: var(--messagebox-info-border);
}
.oo-ui-messageWidget.oo-ui-flaggedElement-error:not(.oo-ui-messageWidget-block),
.oo-ui-messageWidget.oo-ui-flaggedElement-success:not(.oo-ui-messageWidget-block) {
color: var(--ooui-text);
}
.oo-ui-optionWidget.oo-ui-widget-disabled {
color: var(--ooui-disabled-text);
}
.oo-ui-outlineControlsWidget {
background-color: var(--ooui-normal);
}
.oo-ui-outlineOptionWidget.oo-ui-optionWidget-highlighted {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
}
.oo-ui-popupWidget-popup {
background-color: var(--ooui-interface);
border-color: var(--ooui-interface-border);
}
.oo-ui-popupWidget-anchored-top .oo-ui-popupWidget-anchor:after {
border-bottom-color: var(--ooui-interface);
}
.oo-ui-popupWidget-anchored-top .oo-ui-popupWidget-anchor:before {
border-bottom-color: var(--ooui-interface-border);
}
.oo-ui-popupWidget-anchored-bottom .oo-ui-popupWidget-anchor:after {
border-top-color: var(--ooui-interface);
}
.oo-ui-popupWidget-anchored-bottom .oo-ui-popupWidget-anchor:before {
border-top-color: var(--ooui-interface-border);
}
.oo-ui-popupWidget-anchored-start .oo-ui-popupWidget-anchor:after {
border-right-color: var(--ooui-interface);
}
.oo-ui-popupWidget-anchored-start .oo-ui-popupWidget-anchor:before {
border-right-color: var(--ooui-interface-border);
}
.oo-ui-popupWidget-anchored-end .oo-ui-popupWidget-anchor:after {
border-left-color: var(--ooui-interface);
}
.oo-ui-popupWidget-anchored-end .oo-ui-popupWidget-anchor:before {
border-left-color: var(--ooui-interface-border);
}
.oo-ui-searchWidget-query {
border-bottom-color: var(--ooui-interface-border);
}
.oo-ui-selectFileWidget-dropTarget {
background-color: var(--ooui-interface);
border-color: var(--ooui-interface-border);
}
.oo-ui-selectFileWidget.oo-ui-widget-enabled.oo-ui-selectFileWidget-dropTarget {
background-color: var(--ooui-interface);
}
.oo-ui-selectFileWidget.oo-ui-widget-enabled.oo-ui-selectFileWidget-dropTarget:hover {
border-color: var(--ooui-input-border--hover);
}
.oo-ui-tabOptionWidget {
color: var(--ooui-text);
}
.oo-ui-tabSelectWidget-framed .oo-ui-tabOptionWidget.oo-ui-optionWidget-selected {
background-color: var(--body-dark);
color: var(--ooui-text);
}
.oo-ui-tabSelectWidget-framed .oo-ui-tabOptionWidget.oo-ui-optionWidget-selected .oo-ui-labelElement-label {
border-bottom-color: var(--body-border);
}
.oo-ui-tabSelectWidget-framed .oo-ui-tabOptionWidget.oo-ui-widget-enabled:hover,
.oo-ui-tabSelectWidget-framed .oo-ui-tabOptionWidget.oo-ui-widget-enabled:active {
background-color: var(--body-light);
color: var(--ooui-text);
}
.oo-ui-tabSelectWidget-framed .oo-ui-tabOptionWidget.oo-ui-widget-enabled.oo-ui-optionWidget-selected:hover {
background-color: var(--body-dark);
}
.oo-ui-tabSelectWidget-frameless .oo-ui-tabOptionWidget.oo-ui-optionWidget-selected {
color: var(--ooui-progressive);
box-shadow: inset 0 -2px 0 0 var(--ooui-progressive);
}
.oo-ui-tabSelectWidget-frameless .oo-ui-tabOptionWidget.oo-ui-optionWidget-selected:hover,
.oo-ui-tabSelectWidget-frameless .oo-ui-tabOptionWidget.oo-ui-optionWidget-selected:focus {
color: var(--ooui-progressive--hover);
box-shadow: inset 0 -2px 0 0 var(--ooui-progressive--hover);
}
.oo-ui-tabSelectWidget-framed {
background: none;
border-bottom: 1px solid var(--ooui-interface-border);
}
.oo-ui-tabSelectWidget-frameless {
box-shadow: inset 0 -1px 0 0 var(--ooui-interface-border);
}
.oo-ui-tabSelectWidget-mobile {
}
.oo-ui-tabSelectWidget-mobile.oo-ui-tabSelectWidget-framed:after {
background: var(--mobile-navbox-linear-gradient);
}
.oo-ui-tabSelectWidget-mobile.oo-ui-tabSelectWidget-frameless:after {
background: var(--mobile-navbox-linear-gradient);
}
.oo-ui-tagItemWidget {
border-color: var(--ooui-normal-border);
}
.oo-ui-tagItemWidget.oo-ui-widget-enabled {
color: var(--ooui-text);
}
.oo-ui-tagItemWidget.oo-ui-widget-enabled:hover {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
}
.oo-ui-tagItemWidget.oo-ui-widget-enabled:not( .oo-ui-tagItemWidget-fixed ) {
background-color: var(--ooui-normal);
}
.oo-ui-tagItemWidget.oo-ui-widget-enabled .oo-ui-buttonElement-button:hover {
background-color: var(--ooui-normal--hover);
}
.oo-ui-tagMultiselectWidget.oo-ui-widget-enabled {
background-color: var(--ooui-interface);
}
.oo-ui-tagMultiselectWidget.oo-ui-widget-enabled.oo-ui-tagMultiselectWidget-outlined {
background-color: var(--ooui-normal);
}
.oo-ui-tagMultiselectWidget.oo-ui-widget-enabled.oo-ui-tagMultiselectWidget-outlined .oo-ui-tagItemWidget.oo-ui-widget-enabled {
background-color: var(--ooui-interface);
}
.oo-ui-textInputWidget .oo-ui-inputWidget-input {
background-color: var(--ooui-input);
color: var(--ooui-text);
border-color: var(--ooui-input-border);
}
.oo-ui-textInputWidget.oo-ui-widget-enabled .oo-ui-inputWidget-input::placeholder {
color: var(--subtle-color);
}
.oo-ui-textInputWidget.oo-ui-widget-enabled .oo-ui-inputWidget-input:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-textInputWidget.oo-ui-widget-enabled .oo-ui-inputWidget-input[readonly]:not(.oo-ui-pendingElement-pending) {
background-color: var(--ooui-disabled);
color: var(--ooui-disabled-text);
}
.oo-ui-textInputWidget.oo-ui-widget-enabled:hover .oo-ui-inputWidget-input {
border-color: var(--ooui-input-border--hover);
}
.oo-ui-textInputWidget.oo-ui-widget-enabled:hover .oo-ui-inputWidget-input:focus {
border-color: var(--ooui-accent);
}
@media screen and (min-width: 0) {
.oo-ui-textInputWidget.oo-ui-widget-enabled textarea.oo-ui-inputWidget-input:focus {
outline: 1px solid var(--ooui-accent);
}
}
.oo-ui-textInputWidget.oo-ui-widget-disabled .oo-ui-inputWidget-input {
background-color: var(--ooui-disabled);
color: var(--ooui-disabled-text);
text-shadow: none;
border-color: var(--ooui-disabled-border);
}
.oo-ui-toggleSwitchWidget {
background-color: var(--ooui-input);
border-color: var(--ooui-input-border);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled .oo-ui-toggleSwitchWidget-grip {
background-color: var(--ooui-input);
border-color: var(--ooui-input-border);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:hover {
background-color: var(--ooui-input);
border-color: var(--ooui-accent);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:hover .oo-ui-toggleSwitchWidget-grip {
background-color: var(--ooui-input);
border-color: var(--ooui-accent);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:active,
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:active:hover,
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:active:focus {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
box-shadow: inset 0 0 0 1px var(--ooui-progressive--hover);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:active .oo-ui-toggleSwitchWidget-grip,
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:active:hover .oo-ui-toggleSwitchWidget-grip,
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:active:focus .oo-ui-toggleSwitchWidget-grip {
background-color: var(--ooui-input);
border-color: var(--ooui-input);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:focus .oo-ui-toggleSwitchWidget-grip {
border-color: var(--ooui-accent);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled.oo-ui-toggleWidget-on {
background-color: var(--ooui-progressive);
border-color: var(--ooui-progressive);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled.oo-ui-toggleWidget-on .oo-ui-toggleSwitchWidget-grip {
background-color: var(--ooui-input);
border-color: var(--ooui-input);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled.oo-ui-toggleWidget-on:hover {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled.oo-ui-toggleWidget-on:active,
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled.oo-ui-toggleWidget-on:active:hover {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled.oo-ui-toggleWidget-on:focus {
border-color: var(--ooui-progressive);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled.oo-ui-toggleWidget-on:focus::before {
border-color: #fff;
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-disabled {
background-color: var(--ooui-disabled);
border-color: var(--ooui-disabled);
}
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled > .oo-ui-buttonElement-button {
color: var(--ooui-text);
}
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled > .oo-ui-buttonElement-button:hover {
color: var(--ooui-text);
}
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled > .oo-ui-buttonElement-button:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled.oo-ui-buttonElement-pressed > input.oo-ui-buttonElement-button,
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled > .oo-ui-buttonElement-button:active {
color: var(--ooui-text);
}
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button,
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button:hover {
color: var(--ooui-text);
}
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button:active,
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive.oo-ui-buttonElement-pressed > .oo-ui-buttonElement-button {
color: var(--ooui-text);
border-color: var(--ooui-text);
}
.oo-ui-buttonElement-frameless.oo-ui-widget-disabled > .oo-ui-buttonElement-button {
color: var(--ooui-disabled-text);
}
.oo-ui-buttonElement-framed.oo-ui-widget-disabled > .oo-ui-buttonElement-button {
background-color: var(--ooui-disabled);
border-color: var(--ooui-disabled-border);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled > .oo-ui-buttonElement-button {
background-color: var(--ooui-normal);
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled > .oo-ui-buttonElement-button:hover {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled > .oo-ui-buttonElement-button:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-buttonElement-active > .oo-ui-buttonElement-button {
background-color: var(--ooui-progressive--hover);
color: #fff;
border-color: var(--ooui-progressive--hover);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-buttonElement-active > .oo-ui-buttonElement-button:focus {
border-color: var(--ooui-progressive--hover);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled > .oo-ui-buttonElement-button:active,
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-buttonElement-pressed > .oo-ui-buttonElement-button {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive {
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button {
color: var(--ooui-text);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button:hover {
background-color: var(--ooui-normal--hover);
border-color: var(--ooui-progressive--hover);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-destructive > .oo-ui-buttonElement-button {
color: var(--ooui-text);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-destructive > .oo-ui-buttonElement-button:hover {
background-color: var(--ooui-normal--hover);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button {
background-color: var(--ooui-progressive);
border-color: var(--ooui-progressive);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button:hover {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent), inset 0 0 0 2px #fff;
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button:active,
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive.oo-ui-buttonElement-pressed > .oo-ui-buttonElement-button,
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive.oo-ui-buttonElement-active > .oo-ui-buttonElement-button,
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive.oo-ui-popupToolGroup-active > .oo-ui-buttonElement-button {
color: #fff;
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
}
.oo-ui-pendingElement-pending {
background-image: var(--ooui-pending-background-image);
background-size: 200%;
animation: oo-ui-pendingElement-stripes 6s linear infinite;
}
@keyframes oo-ui-pendingElement-stripes {
100% {
background-position: 100%;
}
}
.oo-ui-messageDialog-content > .oo-ui-window-foot {
outline-color: var(--ooui-interface-border);
}
.oo-ui-messageDialog-message {
color: var(--ooui-text);
}
.oo-ui-messageDialog-actions-horizontal .oo-ui-actionWidget {
border-right-color: var(--ooui-interface-border);
}
.oo-ui-messageDialog-actions-vertical .oo-ui-actionWidget {
border-bottom-color: var(--ooui-interface-border);
}
.oo-ui-processDialog-content .oo-ui-window-head,
.oo-ui-processDialog-content .oo-ui-window-foot {
outline-color: var(--ooui-interface-border);
}
.oo-ui-processDialog .oo-ui-actionWidget > .oo-ui-buttonElement-button {
border-top-color: transparent;
border-bottom-color: transparent;
}
.oo-ui-processDialog .oo-ui-actionWidget > .oo-ui-buttonElement-button:hover,
.oo-ui-processDialog .oo-ui-actionWidget > .oo-ui-buttonElement-button:active {
border-top-color: transparent;
border-bottom-color: transparent;
}
.oo-ui-processDialog .oo-ui-actionWidget:not( .oo-ui-flaggedElement-progressive ):not( .oo-ui-flaggedElement-destructive ) > .oo-ui-buttonElement-button:hover,
.oo-ui-processDialog .oo-ui-actionWidget:not( .oo-ui-flaggedElement-progressive ):not( .oo-ui-flaggedElement-destructive ) > .oo-ui-buttonElement-button:active {
border-right-color: var(--ooui-interface-border);
border-left-color: transparent;
}
.oo-ui-processDialog .oo-ui-actionWidget:not( .oo-ui-flaggedElement-progressive ):not( .oo-ui-flaggedElement-destructive ) > .oo-ui-buttonElement-button:focus {
border-color: var(--ooui-accent);
}
.oo-ui-processDialog-actions-safe .oo-ui-actionWidget > .oo-ui-buttonElement-button,
.oo-ui-processDialog-actions-other .oo-ui-actionWidget > .oo-ui-buttonElement-button {
border-right-color: var(--ooui-normal-border);
border-left-color: transparent;
}
.oo-ui-processDialog-actions-safe .oo-ui-widget-enabled.oo-ui-iconElement:not( .oo-ui-labelElement ) > .oo-ui-buttonElement-button:hover {
background-color: var(--ooui-normal--hover);
border-right-color: var(--ooui-interface-border);
}
.oo-ui-windowManager-modal > .oo-ui-dialog {
background-color: var(--ooui-window-background);
}
.oo-ui-windowManager-modal > .oo-ui-dialog > .oo-ui-window-frame {
background-color: var(--ooui-interface);
}
.oo-ui-windowManager-modal.oo-ui-windowManager-floating > .oo-ui-dialog > .oo-ui-window-frame {
border-color: var(--ooui-interface-border);
}
.oo-ui-window {
color: var(--ooui-text);
}
.oo-ui-toolbar-bar {
background-color: var(--ooui-interface);
color: var(--ooui-text);
}
.oo-ui-toolbar-position-top > .oo-ui-toolbar-bar {
border-bottom-color: var(--body-mid);
}
.oo-ui-toolbar-bar .oo-ui-bookletLayout > .oo-ui-menuLayout-menu {
border-right-color: var(--body-mid);
}
.oo-ui-tool.oo-ui-widget-enabled > .oo-ui-tool-link:hover {
background-color: var(--ooui-normal--hover);
}
.oo-ui-tool.oo-ui-widget-enabled > .oo-ui-tool-link:focus {
outline: 1px solid var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-tool.oo-ui-widget-enabled > .oo-ui-tool-link:active,
.oo-ui-tool.oo-ui-widget-enabled.oo-ui-tool-active > .oo-ui-tool-link,
.oo-ui-tool.oo-ui-widget-enabled.oo-ui-popupToolGroup-active > .oo-ui-tool-link {
background-color: var(--ooui-normal--hover);
color: var(--ooui-accent);
box-shadow: none;
}
.oo-ui-tool.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive > .oo-ui-tool-link {
background-color: var(--ooui-progressive);
}
.oo-ui-tool.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive > .oo-ui-tool-link:hover {
background-color: var(--ooui-progressive--hover);
}
.oo-ui-tool.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive > .oo-ui-tool-link:focus {
box-shadow: inset 0 0 0 1px var(--ooui-accent), inset 0 0 0 2px #fff;
}
.oo-ui-tool.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive > .oo-ui-tool-link:active,
.oo-ui-tool.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive.oo-ui-tool-active > .oo-ui-tool-link {
background-color: var(--ooui-progressive--hover);
}
.oo-ui-listToolGroup-tools .oo-ui-tool.oo-ui-widget-enabled {
background-color: var(--ooui-normal);
}
.oo-ui-listToolGroup-tools .oo-ui-tool.oo-ui-widget-enabled:hover {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
}
.oo-ui-listToolGroup-tools .oo-ui-tool-active.oo-ui-widget-enabled .oo-ui-tool-link .oo-ui-tool-title {
color: var(--ooui-progressive);
}
.oo-ui-menuToolGroup {
border-left-color: var(--body-mid);
border-right-color: var(--body-mid);
}
.oo-ui-popupToolGroup-tools {
background-color: var(--ooui-interface);
border-color: var(--body-mid);
}
.oo-ui-popupToolGroup.oo-ui-widget-enabled > .oo-ui-popupToolGroup-handle:hover {
background-color: var(--ooui-normal--hover);
}
.oo-ui-popupToolGroup.oo-ui-widget-enabled > .oo-ui-popupToolGroup-handle:focus {
outline: 1px solid var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-toolbar-actions .oo-ui-popupToolGroup.oo-ui-widget-enabled > .oo-ui-popupToolGroup-handle:hover {
border-right-color: var(--ooui-normal--hover);
}
.oo-ui-popupToolGroup-tools .oo-ui-tool.oo-ui-widget-enabled .oo-ui-tool-link:focus {
box-shadow: inset 0 0 0 2px var(--ooui-accent);
}
.oo-ui-popupToolGroup-tools .oo-ui-tool-active.oo-ui-widget-enabled .oo-ui-tool-link .oo-ui-tool-title {
color: var(--ooui-progressive);
}
.oo-ui-popupToolGroup.oo-ui-popupToolGroup-active > .oo-ui-popupToolGroup-handle {
background-color: var(--ooui-normal);
color: var(--ooui-accent);
}
.oo-ui-popupToolGroup.oo-ui-popupToolGroup-active > .oo-ui-popupToolGroup-handle:hover {
background-color: var(--ooui-normal--hover);
color: var(--ooui-accent);
}
.oo-ui-bookletLayout-outlinePanel > .oo-ui-outlineControlsWidget {
border-top-color: var(--ooui-interface-border);
}
.oo-ui-bookletLayout > .oo-ui-menuLayout-menu {
border-right-color: var(--ooui-interface-border);
}
.oo-ui-fieldLayout-disabled > .oo-ui-fieldLayout-body > .oo-ui-fieldLayout-header > .oo-ui-labelElement-label {
color: var(--ooui-disabled-text);
}
.oo-ui-panelLayout-framed {
border-color: var(--sidebar);
}
.oo-ui-icon-settings {
background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' width='20' height='20' viewBox='0 0 20 20'%3E%3Ctitle%3Esettings%3C/title%3E%3Cg transform='translate(10 10)'%3E%3Cpath id='a' d='M1.5-10h-3l-1 6.5h5m0 7h-5l1 6.5h3'/%3E%3Cuse xlink:href='%23a' transform='rotate(45)'/%3E%3Cuse xlink:href='%23a' transform='rotate(90)'/%3E%3Cuse xlink:href='%23a' transform='rotate(135)'/%3E%3C/g%3E%3Cpath d='M10 2.5a7.5 7.5 0 0 0 0 15 7.5 7.5 0 0 0 0-15v4a3.5 3.5 0 0 1 0 7 3.5 3.5 0 0 1 0-7'/%3E%3C/svg%3E");
}
.oo-ui-icon-clear {
background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 20 20'%3E%3Ctitle%3Eclear%3C/title%3E%3Cpath d='M10 0a10 10 0 1 0 10 10A10 10 0 0 0 10 0zm5.66 14.24-1.41 1.41L10 11.41l-4.24 4.25-1.42-1.42L8.59 10 4.34 5.76l1.42-1.42L10 8.59l4.24-4.24 1.41 1.41L11.41 10z'/%3E%3C/svg%3E");
}
.mw-widget-dateInputWidget-handle {
background-color: var(--ooui-input);
color: var(--ooui-text);
border-color: var(--ooui-input-border);
}
.mw-widget-dateInputWidget-calendar {
background-color: var(--ooui-interface);
}
.mw-widget-dateInputWidget.oo-ui-widget-enabled .mw-widget-dateInputWidget-handle:hover {
border-color: var(--ooui-input-border--hover);
}
.mw-widget-calendarWidget {
border-color: var(--ooui-interface-border);
}
.mw-widget-calendarWidget:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.mw-widget-calendarWidget-day,
.mw-widget-calendarWidget-day-heading {
color: var(--ooui-text);
}
.mw-widget-calendarWidget-day-additional {
color: var(--ooui-text);
opacity: 0.67;
}
.mw-widget-calendarWidget-day-today {
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.mw-widget-calendarWidget-item:hover {
background-color: var(--ooui-progressive);
}
.mw-widget-calendarWidget-item-selected {
background-color: var(--ooui-progressive--hover);
}
.mw-widgets-datetime-calendarWidget {
background-color: var(--ooui-interface);
border-color: var(--ooui-interface-border);
}
.mw-widgets-datetime-calendarWidget:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent), 0 2px 2px 0 rgba(0, 0, 0, 0.25);
}
.mw-widgets-datetime-calendarWidget-grid .mw-widgets-datetime-calendarWidget-cell.mw-widgets-datetime-calendarWidget-extra .oo-ui-buttonElement-button .oo-ui-labelElement-label {
color: var(--subtle-color);
}
.mw-widgets-datetime-calendarWidget-grid .mw-widgets-datetime-calendarWidget-cell.mw-widgets-datetime-calendarWidget-selected .oo-ui-buttonElement-button {
background-color: var(--ooui-progressive--hover);
}
.mw-widgets-datetime-dateTimeInputWidget-handle {
background-color: var(--ooui-input);
color: var(--ooui-text);
border-color: var(--ooui-input-border);
}
.mw-widgets-datetime-dateTimeInputWidget.oo-ui-widget-enabled.mw-widgets-datetime-dateTimeInputWidget-handle:hover {
border-color: var(--ooui-input-border--hover);
}
.mw-widgets-datetime-dateTimeInputWidget.oo-ui-widget-enabled:hover input,
.mw-widgets-datetime-dateTimeInputWidget.oo-ui-widget-enabled:hover textarea {
border-color: var(--ooui-input-border--hover);
}
.mw-widgets-datetime-dateTimeInputWidget.oo-ui-widget-enabled .mw-widgets-datetime-dateTimeInputWidget-editField:hover {
background-color: var(--ooui-normal);
}
.ve-activated .ve-init-mw-desktopArticleTarget-originalContent #catlinks:hover {
background: var(--ooui-normal--hover);
}
.ve-ui-overlay {
font-family: inherit;
}
.oo-ui-toolbar-position-top .ve-ui-toolbarDialog-position-above {
border-top-color: var(--body-mid);
}
.ve-ce-branchNode-blockSlug,
.ve-ce-branchNode-newSlug {
outline-color: var(--body-border);
background-color: var(--ooui-interface);
}
.ve-ui-specialCharacterPage h3 {
color: var(--byline-color);
}
.ve-ui-specialCharacterPage-character {
border-color: var(--body-mid);
}
.ve-ui-specialCharacterPage-character:hover {
border-color: var(--body-dark);
}
.ve-ce-linkAnnotation.ve-ce-annotation-active {
box-shadow: 0 0 0 1px var(--body-mid);
background: none;
}
.ve-ui-desktopContext .ve-ui-linkContextItem .ve-ui-linkContextItem-label {
border-color: var(--body-border);
}
.ve-ui-mwHelpPopupTool-version-label,
.ve-ui-mwHelpPopupTool-version-link,
.ve-ui-mwHelpPopupTool-version-date {
color: var(--byline-color);
}
.ve-ce-tableCellableNode {
border-color: var(--body-mid);
}
.ve-ce-mwReferencesListNode-muted {
color: var(--byline-color);
}
.ve-ui-mwTemplatePage-description,
.ve-ui-mwParameterPage-label,
.ve-ui-mwParameterPage-description-required,
.ve-ui-mwParameterPage-description-deprecated {
color: var(--byline-color);
}
.mw-widget-titleWidget-menu .mw-widget-titleOptionWidget-description {
color: var(--byline-color);
}
.ve-ui-mwGalleryDialog-menuLayout > .oo-ui-menuLayout-menu,
.ve-ui-mwGalleryDialog-innerMenuLayout > .oo-ui-menuLayout-menu,
.ve-ui-mwGalleryDialog .ve-ui-mwGalleryDialog-image-container,
.ve-ui-targetWidget {
border-color: var(--body-border);
}
.ve-ui-targetWidget:not(.oo-ui-pendingElement-pending) {
background-color: var(--body-main);
}
.ve-ui-mwSaveDialog {
color: var(--ooui-text);
}
.ve-ui-mwSaveDialog-options {
background-color: var(--ooui-interface);
border-color: var(--body-border);
}
.ve-ui-mwSaveDialog-summary {
background-color: var(--ooui-input);
}
.ve-ui-mwSaveDialog-editSummary-count {
border-color: var(--body-border);
}
.ve-ui-mwSaveDialog-license {
color: var(--byline-color);
}
.ve-ui-mwReferenceContextItem-muted {
color: var(--byline-color);
}
.ve-ui-mwNoticesPopupTool-items > div:not(:first-child),
.ve-ui-mwHelpPopupTool-item:not(:first-child) {
border-color: var(--body-border);
}
.ve-ui-mwTransclusionOutlineControlsWidget {
background-color: var(--ooui-interface);
border-top-color: var(--body-border);
}
.ve-ui-mwTransclusionOutlineTemplateWidget-sticky {
background-color: var(--ooui-interface);
}
.ve-ui-mwTransclusionOutlineTemplateWidget .ve-ui-mwTransclusionOutlineParameterWidget.oo-ui-optionWidget-highlighted {
color: var(--ooui-text);
}
.ve-ui-mwTransclusionOutlineTemplateWidget-no-template-parameters {
color: var(--subtle-color);
}
.ve-ui-mwParameterPage-undocumentedLabel {
color: var(--subtle-color);
}
.ve-ui-mwTwoPaneTransclusionDialogLayout > .oo-ui-menuLayout-menu {
border-right: var(--body-border);
}
.ve-ui-mwParameterPage-doc-required,
.ve-ui-mwParameterPage-doc-deprecated,
.ve-ui-mwParameterPage-inlineDescription .ve-ui-mwParameterPage-doc-example {
color: var(--byline-color);
}
.ve-ui-expandableContent-toggle {
background-color: var(--ooui-interface);
}
.ve-ui-expandableContent-fade {
background: linear-gradient(to right, rgba(255, 255, 255, 0) 0, var(--ooui-interface) 90%);
}
.ve-ui-commandHelpDialog-shortcut > kbd,
.ve-ui-commandHelpDialog-sequence > kbd {
background-color: var(--keypress-background);
color: var(--keypress-color);
border-color: var(--keypress-border);
box-shadow: none;
text-shadow: none;
}
.ve-init-mw-desktopArticleTarget-toolbarPlaceholder-floating .ve-init-mw-desktopArticleTarget-toolbarPlaceholder-bar {
background: var(--ooui-interface);
}
.ve-init-mw-desktopArticleTarget-toolbarPlaceholder-bar {
border-bottom-color: var(--body-mid);
}
figure[typeof~='mw:File/Thumb'],
figure[typeof~='mw:File/Frame'],
figure[typeof~='mw:Image/Thumb'],
figure[typeof~='mw:Video/Thumb'],
figure[typeof~='mw:Image/Frame'],
figure[typeof~='mw:Video/Frame'] {
border: none;
background-color: var(--thumb-bg);
}
figure[typeof~='mw:File/Thumb'] > a:first-child > *:first-child:not( .mw-broken-media ),
figure[typeof~='mw:File/Frame'] > a:first-child > *:first-child:not( .mw-broken-media ),
figure[typeof~='mw:Image/Thumb'] > a:first-child > *:first-child:not( .mw-broken-media ),
figure[typeof~='mw:Video/Thumb'] > a:first-child > *:first-child:not( .mw-broken-media ),
figure[typeof~='mw:Image/Frame'] > a:first-child > *:first-child:not( .mw-broken-media ),
figure[typeof~='mw:Video/Frame'] > a:first-child > *:first-child:not( .mw-broken-media ) {
border: none;
background: var(--thumb-bg);
}
figure[typeof~='mw:File/Thumb'] > figcaption,
figure[typeof~='mw:File/Frame'] > figcaption,
figure[typeof~='mw:Image/Thumb'] > figcaption,
figure[typeof~='mw:Video/Thumb'] > figcaption,
figure[typeof~='mw:Image/Frame'] > figcaption,
figure[typeof~='mw:Video/Frame'] > figcaption {
border: none;
background-color: var(--thumb-caption-bg);
padding: 4px 6px;
}
:root {
--keypress-background: #eee;
--keypress-border: #ccc;
--keypress-color: #333;
}
.archivelist {
background-color: var(--body-light);
border: solid 1px var(--body-border);
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
float: right;
margin: 5px;
padding: 5px;
text-align: center;
width: 120px;
}
.shortcut {
border: 1px solid var(--body-border);
background: var(--body-light);
float: right;
font-size: 0.8em;
margin: 0.5em 0em 0.5em 1em;
padding: 0.5em;
text-align: center;
}
.hatnote,
.seealso {
font-style: italic;
}
.hatnote i,
.seealso i {
font-style: normal;
}
div.hatnote,
div.seealso {
margin: 0.5em 1.6em;
}
div.hatnote + div.hatnote,
div.hatnote + div.seealso,
div.seealso + div.hatnote,
div.seealso + div.seealso {
margin-top: -0.5em;
}
.keypress {
background: var(--keypress-background);
color: var(--keypress-color);
font-family: inherit;
border: 1px solid var(--keypress-border);
border-radius: 2px;
font-size: 0.9em;
margin: 0 0.1em;
padding: 0.1em 0.4em;
white-space: nowrap;
}
:root {
--documentation-background: #f9fafa;
--documentation-link-color: #e4eaee;
--documentation-headers-color: #fff;
--documentation-header-background: #949eaa;
--documentation-subheader-background: #808c9a;
--documentation-border: #e4eaee;
}
.documentation {
background: var(--documentation-background);
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
margin: 1em 0;
}
.documentation pre,
.documentation code {
background-color: var(--documentation-background);
border-color: var(--documentation-border);
}
.documentation h2,
.documentation hr {
border-color: var(--documentation-border);
}
.documentation-header {
color: var(--documentation-headers-color);
background: var(--documentation-header-background);
font-weight: bold;
padding: 1em 1.5em;
}
.documentation-title {
font-size: 1.25em;
}
.documentation-subheader {
color: var(--documentation-headers-color);
background: var(--documentation-subheader-background);
padding: 0.5em 1.5em;
}
.documentation-subheader a,
.documentation-subheader a:visited,
.documentation-subheader a:active {
color: var(--documentation-link-color);
}
.documentation-documentation,
.documentation-links {
font-size: 0.85em;
}
.documentation-content {
padding: 1em 1.5em;
}
.mw-templatedata-doc-params dl:not(:empty) {
column-count: 3;
border-top: 1px solid var(--body-border);
margin-bottom: 0.5em;
}
.mw-templatedata-doc-params dt::after {
content: ":";
}
.mw-templatedata-doc-params dd,
.mw-templatedata-doc-params dt {
margin: 0.1em 2em;
min-width: auto;
}
.mw-templatedata-doc-muted {
color: var(--subtle-color);
font-style: italic;
}
:root {
--infobox-text-color: var(--text-color);
--table-header: #b1886f;
--table-subheader: #d1b9ad;
--table-body: #fff8ee;
--table-border: #e9d8cc;
}
.infobox {
font-size: 0.85em;
width: 300px;
border-collapse: collapse;
float: right;
table-layout: fixed;
margin: 0.5em 0 1em 1em;
}
.infobox .infobox-buttons {
display: flex;
flex-wrap: wrap;
justify-content: center;
grid-gap: 3px;
margin-bottom: 3px;
}
.infobox .infobox-buttons .button {
background: var(--table-header);
padding: 0 5px;
font-weight: bold;
flex: 1 1 20%;
max-width: 20%;
color: #fff;
}
.infobox tbody {
border: 1px solid var(--table-border);
background: var(--table-body);
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(231, 215, 199, 0.5);
}
.infobox .infobox-header {
background: var(--table-header);
padding: 0.5em 0;
text-align: center;
color: #fff;
font-size: 1.15em;
font-weight: bold;
line-height: 1.4em;
}
.infobox .infobox-image {
text-align: center;
background: var(--body-main);
}
.infobox .infobox-subheader {
background: var(--table-subheader);
font-weight: bold;
text-align: center;
color: #fff;
}
.infobox .infobox-padding {
backgound: var(--table-body);
}
.infobox tr td:not(.infobox-padding) {
padding: 0.2em 0.5em;
}
.infobox th:not(.infobox-header):not(.infobox-subheader):not(.infobox-nested) {
border-right: 2px solid var(--table-subheader);
text-align: right;
padding: 0.2em 0.5em;
}
.hidden {
display: none;
}
ol.references,
.reflist {
font-size: 90%;
}
.reflist {
list-style-type: decimal;
}
.reflist .references {
font-size: 100%;
list-style-type: inherit;
}
.reflist-lower-alpha {
list-style-type: lower-alpha;
}
ol.references li:target,
sup.reference:target {
background-color: var(--body-light);
}
.hideQuotes .refhide {
display: none;
}
:root {
--messagebox-obsolete-background: #cfcfcf;
--messagebox-obsolete-border: #464646;
--messagebox-obsolete-color: var(--text-color);
--messagebox-obsolete-link-color: #6c6c6c;
--messagebox-info-background: #ebebeb;
--messagebox-info-border: #898989;
--messagebox-info-color: var(--text-color);
--messagebox-info-link-color: #6c6c6c;
--messagebox-action-background: #c7e8fa;
--messagebox-action-border: #0b5884;
--messagebox-action-color: var(--text-color);
--messagebox-action-link-color: #03436b;
--messagebox-warn-background: #dfc0ba;
--messagebox-warn-border: #861c10;
--messagebox-warn-color: var(--text-color);
--messagebox-warn-link-color: #8e221a;
--messagebox-safe-background: #d8f0d3;
--messagebox-safe-border: #1b8408;
--messagebox-safe-color: var(--text-color);
--messagebox-safe-link-color: #1b8408;
--messagebox-disambig-background: #ebebeb;
--messagebox-disambig-border: #898989;
--messagebox-disambig-color: var(--text-color);
--messagebox-disambig-link-color: #6c6c6c;
--messagebox-discord-background: #5865f2;
--messagebox-discord-border: #4c57d0;
--messagebox-discord-link-color: #d2e5fc;
}
.mw-message-box,
.mw-message-box-error,
.mw-message-box-warning,
.mw-message-box-success,
.usermessage {
color: var(--text-color);
}
.messagebox {
width: 65%;
margin: 0.5em auto;
border-left: 15px solid;
border-color: var(--body-dark);
background-color: var(--body-light);
box-sizing: border-box;
}
.messagebox.obsolete {
background-color: var(--messagebox-obsolete-background);
border-color: var(--messagebox-obsolete-border);
color: var(--messagebox-obsolete-color);
}
.messagebox.obsolete a,
.messagebox.obsolete a:visited,
.messagebox.obsolete a:active {
color: var(--messagebox-obsolete-link-color);
}
.messagebox.info {
background-color: var(--messagebox-info-background);
border-color: var(--messagebox-info-border);
color: var(--messagebox-info-color);
}
.messagebox.info a,
.messagebox.info a:visited,
.messagebox.info a:active {
color: var(--messagebox-info-link-color);
}
.messagebox.action {
background-color: var(--messagebox-action-background);
border-color: var(--messagebox-action-border);
color: var(--messagebox-action-color);
}
.messagebox.action a,
.messagebox.action a:visited,
.messagebox.action a:active {
color: var(--messagebox-action-link-color);
}
.messagebox.warn {
background-color: var(--messagebox-warn-background);
border-color: var(--messagebox-warn-border);
color: var(--messagebox-warn-color);
}
.messagebox.warn a,
.messagebox.warn a:visited,
.messagebox.warn a:active {
color: var(--messagebox-warn-link-color);
}
.messagebox.safe {
background-color: var(--messagebox-safe-background);
border-color: var(--messagebox-safe-border);
color: var(--messagebox-safe-color);
}
.messagebox.safe a,
.messagebox.safe a:visited,
.messagebox.safe a:active {
color: var(--messagebox-safe-link-color);
}
.messagebox.disambig {
background-color: var(--messagebox-disambig-background);
border-color: var(--messagebox-disambig-border);
color: var(--messagebox-disambig-color);
}
.messagebox.disambig a,
.messagebox.disambig a:visited,
.messagebox.disambig a:active {
color: var(--messagebox-disambig-link-color);
}
.messagebox.discord {
background-color: var(--messagebox-discord-background);
border-color: var(--messagebox-discord-border);
color: #fff;
}
.messagebox.discord a,
.messagebox.discord a:visited,
.messagebox.discord a:active {
color: var(--messagebox-discord-link-color);
}
.messagebox.discord a.external,
.messagebox.discord a:visited.external,
.messagebox.discord a:active.external {
font-style: italic;
}
.messagebox.stub {
width: 40%;
}
.messagebox.hasdialogue {
padding: 0 10px;
width: auto;
}
:root {
--byline-arrow-filter: invert(29%) sepia(0%) saturate(376%) hue-rotate(172deg) brightness(87%) contrast(80%);
--tile-border-color: var(--body-border);
--tile-background-color: var(--body-light);
--tile-link-button-color: #f5e9db;
--tile-link-button-highlight-color: #dfccb0;
--tile-dark-color: #fff;
--tile-dark-bg: #5d6773;
--tile-dark-link-color: #ccc;
--tile-dark-byline-color: rgba(255, 255, 255, 0.7);
--tile-dark-header-color: #fff;
}
.tile {
background: var(--tile-background-color);
border: 1px solid var(--tile-border-color);
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
padding: 1.5em 2em 1em;
max-width: 40em;
}
.tile h2 {
font-size: 1.4em;
font-weight: bold;
border: none;
margin: 0 0 0.4em;
}
.tile .byline + h2 {
margin-top: -0.5em;
}
.tile.dark {
color: var(--tile-dark-color);
background: var(--tile-dark-bg);
border: none;
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.3);
}
.tile.dark h2 {
color: var(--tile-dark-header-color);
}
.tile.dark a {
color: var(--tile-dark-link-color);
}
.tile.dark .byline {
color: var(--tile-dark-byline-color);
}
.byline {
font-size: 0.9em;
color: var(--byline-color);
}
.byline a {
color: var(--byline-color);
}
.tile-row {
display: flex;
flex-flow: row wrap;
margin-bottom: 1em;
}
.tile-halves {
display: flex;
flex-flow: row wrap;
border: 1px solid var(--tile-border-color);
background: var(--tile-background-color);
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
}
.tile-halves h2 {
font-size: 1.4em;
font-weight: bold;
border: none;
margin: 0 0 0.4em;
}
.tile-halves .byline + h2 {
margin-top: -0.5em;
}
.tile-top {
width: 100%;
padding: 1.3rem 1.5rem 0.6rem;
}
.tile-top.tile-image {
display: flex;
align-items: center;
background-color: var(--byline-color);
overflow: hidden;
padding: 0;
height: 13vw;
max-height: 12em;
transition: 0.4s ease-out;
}
.tile-halves:hover .tile-top.tile-image img {
transform: scale(1.1);
transition: 0.5s ease-out;
}
.tile-top.tile-image a {
width: 100%;
}
.tile-top.tile-image img {
width: 100%;
object-fit: cover;
max-height: 200px;
transition: 0.4s ease-out;
}
.tile-bottom {
background: var(--tile-background-color);
border-top: 1px solid var(--tile-border-color);
width: 100%;
padding: 1rem 1.5rem 0.6rem;
}
.tile-bottom.link-button {
align-self: flex-end;
padding: 0;
}
.tile-bottom.link-button a {
display: block;
text-align: center;
padding: 0.75em 1.5em 0.8em;
text-decoration: none;
}
.tile-bottom.read-more {
background: var(--tile-link-button-color);
transition: 0.3s ease-out;
}
.tile-bottom.read-more a {
color: var(--byline-color);
font-weight: bold;
text-align: right;
}
.tile-bottom.read-more:hover {
background: var(--tile-link-button-highlight-color);
}
.tile-bottom.read-more:hover .arrow {
transform: translateX(50%);
}
.tile-bottom.read-more .arrow {
filter: var(--byline-arrow-filter);
margin-left: 0.4em;
transition: 0.3s ease-out;
}
body.page-Main_Page.action-view .catlinks,
body.page-Main_Page.action-view #contentSub,
body.page-Main_Page.action-view #firstHeading,
body.page-Main_Page.action-view #siteNotice {
display: none;
}
body.page-Main_Page .mw-parser-output {
max-width: 75em;
margin: 0 auto;
}
body.page-Main_Page.action-view .catlinks,
body.page-Main_Page.action-view #contentSub,
body.page-Main_Page.action-view #siteNotice {
display: none;
}
.mainpage-header {
display: flex;
margin: 2.6em 1.75em 1.5em;
}
.mainpage-header .header-intro {
flex: 2;
}
.mainpage-header .header-intro h1 {
font-size: 2.5em;
font-weight: bold;
border: none;
margin: 0 0 0.15em;
}
.mainpage-header .header-intro p {
font-size: 1.1em;
line-height: 1.7em;
}
.mainpage-header .header-stats {
flex: 1;
display: flex;
justify-content: center;
align-items: center;
margin-top: -1em;
}
.mainpage-body {
display: grid;
grid-template-areas: "event event event" "update update update" "content content content" "left left right";
gap: 0.9rem;
grid-template-columns: repeat(3, 1fr);
}
.mainpage-body h2 a {
color: var(--text-color);
}
.mainpage-body .tile {
padding-left: 1.75em;
padding-right: 1.75em;
max-width: 100%;
}
.mainpage-body .tile-row {
width: 100%;
margin-bottom: 0;
}
.mainpage-body .tile-row {
display: grid;
gap: 0.9rem;
}
.mainpage-contents.tile-row {
display: flex;
}
.mainpage-contents.tile-row .tile-top {
height: 5.5rem;
}
.mainpage-left {
grid-area: left;
flex: 2;
display: flex;
flex-flow: column wrap;
}
.mainpage-left > * {
margin: 0 0 0.9rem;
}
.mainpage-right {
grid-area: right;
flex: 1;
display: flex;
flex-flow: column wrap;
}
.mainpage-right > * {
margin: 0 0 0.9rem;
}
.arrow {
background: url('filepath://White-chevron.svg') no-repeat;
display: inline-block;
height: 0.7rem;
width: 0.45rem;
vertical-align: middle;
}
.arrow.dark {
filter: invert(80%);
}
.mainpage-contents {
grid-area: content;
grid-template-columns: repeat(6, 1fr);
}
.mainpage-contents .tile-halves {
flex: 1;
}
.mainpage-contents .tile-top {
height: 4.5rem;
position: relative;
}
.mainpage-contents .tile-top.tile-image img {
height: auto;
}
.mainpage-contents h2 {
margin: 0;
padding: 0;
}
.mainpage-contents .tile-bottom.link-button a {
padding: 0.75em 0.2em;
}
.popular-pages ul {
display: grid;
grid-template-columns: repeat(3, 1fr);
grid-gap: 0.6em;
margin: 1em 0 0.7em 0;
}
.mp-popular-page-light {
display: flex;
align-items: center;
background-color: var(--button-background);
transition: 100ms;
}
.mp-popular-page-light a {
flex: 1;
display: block;
color: #fff;
font-weight: bold;
text-align: center;
text-decoration: none;
padding: 0.7em 1em;
}
.mp-popular-page-light:hover {
filter: brightness(115%);
transition: 100ms;
}
.mainpage-social {
border: none;
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.3);
}
.mainpage-social .tile-top {
display: flex;
align-items: center;
padding: 1em 1.5em;
}
.mainpage-social .tile-top a {
flex: 1;
position: relative;
text-decoration: none;
}
.mainpage-social .tile-top a:hover .arrow {
transform: translateX(50%);
}
.mainpage-social .tile-bottom {
border: none;
padding: 1em 1.75em;
}
.mainpage-social .tile-bottom p {
color: #fff;
font-weight: bold;
font-size: 0.9em;
text-align: center;
text-transform: uppercase;
letter-spacing: 0.03em;
margin: 0;
}
.mainpage-social .social-icon {
margin-right: 0.75em;
text-align: center;
width: 60px;
}
.mainpage-social .social-header {
color: #fff;
font-weight: bold;
font-size: 1.15em;
margin: 0.5em 0 -0.15em;
}
.mainpage-social .server-tagline {
color: rgba(255, 255, 255, 0.9);
margin-bottom: 0.5em;
}
.mainpage-social .arrow {
position: absolute;
top: calc(50% - .5em);
right: 0;
height: 1em;
width: 0.7em;
background-size: 0.7em 1em;
transition: 0.3s ease-out;
}
.mainpage-social.mainpage-discord .tile-top {
background: #5865f2;
}
.mainpage-social.mainpage-discord .tile-bottom {
background: #525ee0;
}
.mainpage-social.mainpage-twitter .tile-top {
background: #15202b;
}
.mainpage-social.mainpage-twitter .tile-bottom {
background: #121c26;
}
.mainpage-editing {
border: none;
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.3);
}
.mainpage-editing .tile-top {
background: #438ab5;
}
.mainpage-editing .tile-bottom {
background: #3980ab;
border: none;
padding: 0.8rem 1.5rem 0.4rem;
}
.mainpage-editing h2,
.mainpage-editing a {
color: #fff;
}
.mainpage-editing p {
color: rgba(255, 255, 255, 0.9);
}
.mainpage-editing ul {
list-style-image: url('filepath://Transparent-chevron.svg');
}
@media only screen and (max-width: 1200px) {
.mainpage-contents {
grid-template-columns: repeat(3, 1fr);
}
}
@media only screen and (max-width: 1000px) {
.mainpage-body {
grid-template-areas: "event event event" "update update update" "content content content" "left left left" "right right right";
}
.mainpage-recent-updates {
grid-template-columns: repeat(2, 1fr);
}
.mainpage-recent-updates .tile-halves:last-child {
display: none;
}
.mainpage-recent-updates .tile-halves:hover .tile-top img {
transform: scale(1.04);
}
.mainpage-recent-updates .tile-top {
height: 18vw;
min-height: 9em;
}
.mainpage-header .header-stats {
display: none;
}
.mainpage-left > *:last-child,
.mainpage-right > *:last-child {
margin-bottom: 0;
}
.popular-pages ul {
grid-template-columns: repeat(2, 1fr);
}
}
@media only screen and (max-width: 720px) {
.mainpage-recent-updates {
grid-template-columns: none;
}
.mainpage-recent-updates .tile-halves:last-child {
display: flex;
}
.mainpage-contents {
grid-template-columns: repeat(2, 1fr);
}
}
.mw-prefs-buttons {
background-color: var(--body-main);
border-top-color: var(--body-border);
box-shadow: none;
}
.mw-prefs-tabs-wrapper.oo-ui-panelLayout-framed,
.mw-prefs-tabs > .oo-ui-menuLayout-content > .oo-ui-indexLayout-stackLayout > .oo-ui-tabPanelLayout {
border-color: var(--body-border);
}
.mw-htmlform-ooui .mw-htmlform-matrix tbody tr:nth-child(even) td {
background-color: var(--body-light);
}
.mw-htmlform-ooui .mw-htmlform-matrix tbody tr:hover td {
background-color: var(--body-mid);
}
:root {
--rc-positive-color: #407813;
--rc-negative-color: #b41e0f;
}
.mw-plusminus-pos {
color: var(--rc-positive-color);
}
.mw-plusminus-neg {
color: var(--rc-negative-color);
}
.client-js .mw-recentchanges-toplinks:not(.mw-recentchanges-toplinks-collapsed) {
border-color: var(--body-border);
background-color: var(--body-light);
border-radius: 2px;
}
.mw-rcfilters-ui-filterTagMultiselectWidget-wrapper-content-title {
color: var(--text-color);
}
.mw-rcfilters-ui-filterTagMultiselectWidget-emptyFilters {
color: var(--byline-color);
}
.mw-rcfilters-ui-filterTagMultiselectWidget.oo-ui-widget-enabled .oo-ui-tagMultiselectWidget-handle {
background-color: var(--ooui-interface);
border-color: var(--ooui-interface-border);
}
.mw-rcfilters-ui-filterTagMultiselectWidget-views-select-widget.oo-ui-widget {
border-color: var(--ooui-interface-border);
}
.mw-rcfilters-collapsed .mw-rcfilters-ui-filterTagMultiselectWidget {
border-bottom-color: var(--ooui-interface-border);
}
.mw-rcfilters-ui-menuSelectWidget-footer {
background-color: var(--ooui-interface);
border-color: var(--ooui-interface-border);
}
.mw-rcfilters-ui-viewSwitchWidget label.oo-ui-labelWidget {
color: var(--byline-color);
}
.mw-rcfilters-ui-tagItemWidget-popup-content {
color: var(--ooui-text);
}
.mw-changeslist-legend,
.mw-rcfilters-ui-changesListWrapperWidget .mw-changeslist-legend {
background-color: var(--body-light);
border-color: var(--body-dark);
}
.mw-rcfilters-ui-changesListWrapperWidget-previousChangesIndicator {
border-color: var(--sidebar);
}
.client-js .mw-changeslist ul,
.client-js .mw-changeslist table.mw-enhanced-rc {
margin-left: 0;
}
.mw-rcfilters-ui-watchlistTopSectionWidget-separator {
border-color: var(--sidebar);
}
.mw-rcfilters-ui-itemMenuOptionWidget-header {
border-bottom-color: var(--ooui-interface);
background-color: var(--ooui-interface-border);
}
.mw-rcfilters-ui-itemMenuOptionWidget:not(:last-child):not(.mw-rcfilters-ui-itemMenuOptionWidget-identifier-talk) {
border-bottom-color: var(--ooui-normal-border);
}
.mw-rcfilters-ui-itemMenuOptionWidget-label-title,
.mw-rcfilters-ui-itemMenuOptionWidget-label-desc {
color: var(--text-color);
}
.mw-rcfilters-ui-filterMenuOptionWidget.oo-ui-flaggedElement-muted:not(.oo-ui-optionWidget-selected) {
background-color: var(--body-main);
}
.mw-rcfilters-ui-filterMenuOptionWidget.oo-ui-flaggedElement-muted .mw-rcfilters-ui-itemMenuOptionWidget-label-title,
.mw-rcfilters-ui-filterMenuOptionWidget.oo-ui-flaggedElement-muted .mw-rcfilters-ui-itemMenuOptionWidget-label-desc {
color: var(--subtle-color);
}
.mw-rcfilters-ui-filterMenuSectionOptionWidget {
background-color: var(--body-mid);
}
.mw-rcfilters-ui-filterMenuSectionOptionWidget-header-title.oo-ui-labelElement-label {
color: var(--ooui-text);
}
.mw-rcfilters-ui-filterMenuHeaderWidget-title {
color: var(--ooui-text);
}
.mw-rcfilters-ui-filterMenuHeaderWidget-header {
border-bottom-color: var(--ooui-interface-border);
background-color: var(--ooui-interface);
}
.mw-rcfilters-ui-itemMenuOptionWidget-view-namespaces {
border-top-color: var(--ooui-interface-border);
}
.mw-rcfilters-ui-datePopupWidget {
border-color: var(--ooui-interface-border);
}
.mw-rcfilters-ui-datePopupWidget .mw-rcfilters-ui-valuePickerWidget-title {
color: var(--byline-color);
}
.mw-rcfilters-ui-savedLinksListItemWidget-label {
color: var(--ooui-accent);
}
.client-js .mw-changeslist.mw-rcfilters-ui-changesListWrapperWidget-highlighted ul,
.client-js .mw-changeslist.mw-rcfilters-ui-changesListWrapperWidget-highlighted table.mw-enhanced-rc {
margin-left: 1.5em;
}
.page-Special_CreateAccount .mw-ui-container,
.page-Special_UserLogin .mw-ui-container {
max-width: 64rem;
margin: 0 auto;
}
.mw-number-text {
color: var(--byline-color);
}
.mw-body-content .mw-number-text h3 {
color: var(--text-color);
}
#mw-indicator-mw-helplink a {
background: none;
padding: 0;
display: flex;
align-items: center;
}
#mw-indicator-mw-helplink a::before {
content: '';
margin-right: 5px;
-webkit-mask: url("/resources/src/mediawiki.helplink/images/helpNotice.svg?46d34") no-repeat 50% 50% / contain;
mask: url("/resources/src/mediawiki.helplink/images/helpNotice.svg?46d34") no-repeat 50% 50% / contain;
background: var(--text-color);
height: 20px;
width: 20px;
}
.results-info {
color: inherit;
}
.mw-search-profile-tabs {
background-color: var(--body-mid);
border-color: transparent;
}
.search-types .current a {
color: inherit;
}
#mw-searchoptions {
background-color: var(--body-mid);
border-color: transparent;
}
#mw-searchoptions .divider {
border-color: var(--body-border);
}
#mw-searchoptions h4 {
font-family: inherit;
}
#mw-searchoptions .oo-ui-labelElement:nth-of-type(odd) {
font-weight: bold;
}
.searchresult {
line-height: 1.5;
}
.searchalttitle,
#mw-search-interwiki li {
font-size: 90%;
}
.mw-search-result-data {
color: var(--byline-color);
}
.page-Special_ListFiles a.image img {
width: inherit;
height: inherit;
}
.page-Special_ListFiles .TablePager_col_thumb {
text-align: center;
}
#editcount table[border="1"] {
background-color: var(--body-main) !important;
border-color: var(--wikitable-border) !important;
margin-top: 0.5em;
}
#editcount table[border="1"] th,
#editcount table[border="1"] td {
padding: 0.2em 0.4em;
}
#editcount table[border="1"] th {
background-color: var(--wikitable-header-bg);
border: 1px solid var(--wikitable-border);
}
#editcount table[border="1"] td {
border: 1px solid var(--wikitable-border);
}
#editcount table[border="1"] tr:nth-child(odd) {
background-color: var(--body-light);
}
.mw-echo-ui-notificationBadgeButtonPopupWidget-popup > .oo-ui-popupWidget-popup .mw-echo-ui-placeholderItemWidget {
background-color: inherit;
}
table.mw-interwikitable.body td.mw-interwikitable-local-yes {
background-color: var(--table-yes-background);
color: var(--table-yes-color);
}
.mw-protectedpages-unknown {
color: var(--byline-color);
}
.watchlistredir,
.allpagesredirect {
font-style: italic;
}
.allpagesredirect:after {
color: var(--byline-color);
content: " (redirect)";
}
.mw-apisandbox-toolbar {
background: var(--body-main);
}
.oo-ui-menuOptionWidget .mw-apisandbox-flag {
color: var(--byline-color);
}
tr.mw-abusefilter-list-disabled,
tr.mw-abusefilter-list-disabled td {
color: var(--byline-color);
}
table.mw-abuselog-details {
background: var(--wikitable-bg);
border-color: var(--wikitable-border);
}
table.mw-abuselog-details th {
background: var(--wikitable-header-bg);
}
table.mw-abuselog-details th,
table.mw-abuselog-details td {
border-color: var(--wikitable-border);
}
.mw-abusefilter-log-hidden-entry {
color: var(--subtle-color);
}
body td.mw-abusefilter-history-changed {
background: var(--table-no-background);
}
div.mw-abusefilter-editor,
#mw-abusefilter-warn-preview,
#mw-abusefilter-disallow-preview {
border-color: var(--ooui-input-border);
}
.mw-destfile-warning {
border-color: var(--warningbox-border);
color: var(--text-color);
background-color: var(--warningbox-bg);
}
span.fileinput-button {
background-color: var(--ooui-normal);
border-color: var(--ooui-normal-border);
color: var(--ooui-text);
}
ul.fileupload-results li.ful-success {
background-color: var(--successbox-bg);
}
ul.fileupload-results li.ful-success a {
color: var(--link-color);
}
ul.fileupload-results li.ful-error {
background-color: var(--errorbox-bg);
}
.color-container {
display: flex;
margin: 2em auto;
width: 80%;
max-width: 60em;
}
.color-column {
flex: 1;
margin-right: 1em;
}
.color-column:last-child {
margin-right: 0;
}
.color-column h3 {
padding: 0;
}
.color-group {
color: #333;
padding: 1em 1.5em;
transition: 0.2s ease-out;
}
.color-group:hover {
transform: scale(1.03);
}
.color-group.dark {
color: #fff;
}
.color-group .variable,
.color-group .hexcode {
font-family: monospace;
font-size: 1.1em;
-webkit-user-select: all;
-moz-user-select: all;
-ms-user-select: all;
user-select: all;
margin: 0;
}
body.wgl-readermode .color-group .variable,
body.wgl-readermode .color-group .hexcode {
font-size: inherit;
}
.color-group .variable {
font-weight: bold;
}
#t-print,
#t-permalink {
display: none;
}
#filetoc {
border-radius: 2px;
background: var(--body-mid);
border-color: transparent;
margin: 0.5em auto;
text-align: center;
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
}
li.gallerybox div.thumb {
border: none;
background-color: var(--thumb-bg);
}
.smwfact {
display: none;
}
.list-header {
background-color: var(--body-mid);
color: inherit;
}
.editOptions {
color: var(--text-color);
background-color: var(--sourceeditor-background-secondary);
border-color: var(--sourceeditor-border);
}
.mw-json th,
.mw-json td {
border-color: var(--wikitable-border);
}
.mw-json td {
background: var(--wikitable-bg);
}
.mw-json th {
background: var(--wikitable-header-bg);
}
85c28133f80358999a13e9251dfc4eda1cb3ae8f
1585
1582
2024-03-27T14:29:52Z
Merds
25
Updating CSS from [[MediaWiki:Common.less]]
css
text/css
/* <pre> */
:root {
--body-main: #feffff;
--body-light: #fff8ee;
--body-mid: #d1b9ad;
--body-dark: #b1886f;
--body-border: #e9d8cc;
--body-background-color: #173a4d;
--button-background: #605443;
--button-color: #fff;
--button-border: #3c352a;
--button-dark: #18140c;
--button-light: #3a301d;
--sidebar: #cfc08d;
--background-text-color: #e2dbc8;
--background-link-color: #e2bd8a;
--search-box: #efeee6;
--link-color: #936039;
--redlink-color: #ba0000;
--text-color: #2F2828;
--byline-color: #ccc;
--subtle-color: #777;
--admin-blue: #332e75;
--bearcat-green: #13592e;
--awb-purple: #933b96;
--rsw-blue: #438ab6;
--osrsw-brown: #605443;
--thumb-bg: var(--body-light);
--thumb-caption-bg: var(--body-mid);
--sourceeditor-input-background: #fff;
--sourceeditor-background: var(--body-light);
--sourceeditor-background-secondary: var(--body-light);
--sourceeditor-border: var(--body-mid);
--codemirror-gutter-background: var(--body-mid);
}
@font-face {
font-family: 'Lora';
font-weight: 400 700;
font-style: normal;
font-display: swap;
src: url('filepath://Lora.woff2') format('woff2');
}
@font-face {
font-family: 'Lora';
font-weight: 400 700;
font-style: italic;
font-display: swap;
src: url('filepath://Lora-Italic.woff2') format('woff2');
}
:root {
--base-text-color: #36414f;
--base-heading-color: #444e5a;
--base-heading-border: #e4eaee;
--mw-code-background-color: #ddd4bb;
--body-background-image: url('filepath://Wiki_background.jpg');
}
#mw-page-base {
background: none;
}
.mw-body {
background-color: var(--body-main);
color: var(--text-color);
border-color: transparent;
box-shadow: 0 0 7px rgba(0, 0, 0, 0.15);
margin-top: 0;
}
h1,
h2,
h3,
h4,
h5,
h6 {
color: var(--text-color);
}
h1,
h2 {
border-color: var(--sidebar);
}
.mw-body h1,
.mw-body-content h1,
.mw-body-content h2,
.mw-body-content h3,
.mw-body-content h4,
.mw-body-content h5,
.mw-body-content h6 {
font-family: 'Lora', 'Palatino', 'Georgia', serif;
}
.mw-parser-output h2:first-of-type {
clear: left;
}
.mw-footer {
color: var(--background-text-color);
}
.mw-footer li {
color: var(--background-text-color);
}
.mw-footer a,
.mw-footer a:active,
.mw-footer a:visited {
color: var(--background-link-color);
}
::placeholder {
color: var(--subtle-color);
}
a {
color: var(--link-color);
}
a:visited,
a:active {
color: var(--link-color);
}
a.new {
color: var(--redlink-color);
}
a.new:visited {
color: var(--redlink-color);
}
.mw-parser-output a.extiw,
.mw-parser-output a.external {
color: var(--link-color);
}
.mw-parser-output a.extiw:visited,
.mw-parser-output a.external:visited,
.mw-parser-output a.extiw:active,
.mw-parser-output a.external:active {
color: var(--link-color);
}
.jsPurgeLink a.external {
color: var(--link-color);
}
:root {
--errorbox-bg: #feecea;
--errorbox-border: #ee4231;
--warningbox-bg: #fef9de;
--warningbox-border: #f9d000;
--successbox-bg: #ecf8e3;
--successbox-border: #6bc71f;
}
.mw-message-box-error,
.errorbox,
.mw-message-box-warning,
.warningbox,
.mw-message-box-success,
.successbox,
.usermessage {
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
}
.mw-message-box-error,
.errorbox {
background-color: var(--errorbox-bg);
border-color: var(--errorbox-border);
}
.mw-message-box-warning,
.warningbox,
.usermessage {
background-color: var(--warningbox-bg);
border-color: var(--warningbox-border);
}
.mw-message-box-success,
.successbox {
background-color: var(--successbox-bg);
border-color: var(--successbox-border);
}
.catlinks {
background: var(--body-light);
border: 1px solid var(--body-dark);
padding: 8px 15px;
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
}
.catlinks li {
border-color: var(--body-mid);
}
.filehistory a img,
#file img {
background: url("data:image/svg+xml,%3C%3Fxml version='1.0' encoding='UTF-8'%3F%3E%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16'%3E%3Cpath d='M0 0h8v16h8V8H0z' opacity='.13'/%3E%3C/svg%3E") repeat;
}
#file img:hover {
background: none;
}
.mw-highlight {
background: none;
}
.mw-highlight .linenos {
background-color: var(--mw-code-background-color);
color: var(--byline-color);
}
.mw-highlight a:hover .linenos,
.mw-highlight .hll a .linenos {
color: var(--text-color);
}
.mw-content-ltr.mw-highlight-lines pre,
.mw-content-ltr.content .mw-highlight-lines pre {
box-shadow: inset 2.75em 0 0 var(--mw-code-background-color);
}
#pagehistory ul {
list-style: none;
margin: 0;
}
#pagehistory li {
border: 1px solid transparent;
padding: 1px 10px;
margin: 2px 0;
}
#pagehistory li.selected {
background-color: var(--body-light);
color: inherit;
border: 1px dashed var(--body-border);
outline: none;
}
#mw-history-compare > div:first-of-type {
position: -webkit-sticky;
position: sticky;
top: 0;
background-color: var(--body-main);
border-bottom: 1px solid var(--body-dark);
padding: 0.25em 0;
}
.wgl-stickyheader #mw-history-compare > div:first-of-type {
top: 2.5rem;
}
.autocomment,
.autocomment a,
.autocomment a:visited {
color: var(--link-color);
}
li span.deleted,
span.history-deleted {
color: var(--byline-color);
}
.mw-usertoollinks-contribs-no-edits,
.mw-usertoollinks-contribs-no-edits:visited {
color: var(--redlink-color);
}
.CategoryTreeToggle {
color: var(--link-color);
}
body.wgl-stickyheader.action-view .mw-headline:target::before {
display: block;
content: '';
margin-top: -3rem;
height: 3rem;
visibility: hidden;
pointer-events: none;
}
.mw-mmv-post-image {
color: var(--text-color);
background-color: var(--body-main);
}
.mw-mmv-image-metadata {
border-top-color: var(--body-mid);
background-color: var(--body-light);
}
.mw-mmv-dialog,
.mw-mmv-dialog .mw-mmv-dialog-down-arrow,
.mw-mmv-options-dialog .mw-mmv-dialog-down-arrow {
background-color: var(--body-light);
box-shadow: none;
}
.mw-mmv-options-enable-alert {
background-color: var(--body-light);
color: var(--text-color);
}
.mw-mmv-options-dialog-header,
.mw-mmv-options-text-header,
.mw-mmv-options-text-body,
.mw-mmv-options-enable-alert,
.mw-mmv-options-dialog .mw-mmv-disable-confirmation .mw-mmv-options-dialog-header,
.mw-mmv-options-dialog .mw-mmv-disable-confirmation .mw-mmv-options-text-header {
color: var(--text-color);
}
.mw-revslider-container {
border-color: var(--sidebar);
}
.mw-revslider-slider-wrapper {
border-top-color: var(--sidebar);
}
.mw-ui-button {
background-color: var(--ooui-normal);
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
}
.mw-ui-button:not(:disabled):hover,
.mw-ui-button:not(:disabled):active {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
}
.mw-ui-button:not(:disabled):focus {
color: var(--ooui-text);
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent), inset 0 0 0 2px #fff;
}
.mw-ui-button:not(:disabled):visited {
color: var(--ooui-text);
}
.mw-ui-button.mw-ui-progressive:not(:disabled) {
background-color: var(--ooui-progressive);
color: #fff;
border-color: var(--ooui-progressive);
}
.mw-ui-button.mw-ui-progressive:not(:disabled):hover {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
}
.mw-ui-button.mw-ui-progressive:not(:disabled):focus {
box-shadow: inset 0 0 0 1px var(--ooui-accent), inset 0 0 0 2px #fff;
}
.mw-ui-button.mw-ui-progressive:not(:disabled):active,
.mw-ui-button.mw-ui-progressive:not(:disabled).is-on {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
box-shadow: none;
}
.mw-ui-button.mw-ui-destructive:not( :disabled ) {
color: #fff;
}
.mw-ui-button.mw-ui-quiet,
.mw-ui-button.mw-ui-quiet.mw-ui-progressive,
.mw-ui-button.mw-ui-quiet.mw-ui-destructive {
color: var(--text-color);
}
input[type='checkbox']:hover + .mw-ui-button.mw-ui-quiet,
input[type='checkbox']:hover + .mw-ui-button.mw-ui-quiet.mw-ui-progressive,
input[type='checkbox']:hover + .mw-ui-button.mw-ui-quiet.mw-ui-destructive,
.mw-ui-button.mw-ui-quiet:hover,
.mw-ui-button.mw-ui-quiet.mw-ui-progressive:hover,
.mw-ui-button.mw-ui-quiet.mw-ui-destructive:hover {
background-color: rgba(0, 24, 73, 0.02745098);
color: var(--text-color);
border-color: transparent;
}
input[type='checkbox']:focus + .mw-ui-button.mw-ui-quiet,
input[type='checkbox']:focus + .mw-ui-button.mw-ui-quiet.mw-ui-progressive,
input[type='checkbox']:focus + .mw-ui-button.mw-ui-quiet.mw-ui-destructive,
.mw-ui-button.mw-ui-quiet:focus,
.mw-ui-button.mw-ui-quiet.mw-ui-progressive:focus,
.mw-ui-button.mw-ui-quiet.mw-ui-destructive:focus {
color: var(--text-color);
}
input[type='checkbox']:active + .mw-ui-button.mw-ui-quiet,
input[type='checkbox']:active + .mw-ui-button.mw-ui-quiet.mw-ui-progressive,
input[type='checkbox']:active + .mw-ui-button.mw-ui-quiet.mw-ui-destructive,
.mw-ui-button.mw-ui-quiet:active,
.mw-ui-button.mw-ui-quiet.mw-ui-progressive:active,
.mw-ui-button.mw-ui-quiet.mw-ui-destructive:active {
background-color: rgba(0, 36, 73, 0.08235294);
color: var(--text-color);
border-color: #72777d;
}
.mw-ui-input {
background-color: var(--ooui-input);
color: var(--text-color);
border-color: var(--ooui-input-border);
}
.mw-ui-input:hover {
border-color: var(--ooui-input-border--hover);
}
.mw-ui-input::placeholder {
color: var(--byline-color);
}
.mw-content-ltr .redirectText li:first-child {
padding: 0;
background: 0;
}
.mw-content-ltr .redirectText li:first-child::before {
content: '';
background: currentcolor;
-webkit-mask: url("filepath://Redirect-arrow.svg") no-repeat 50% 50% / contain;
mask: url("filepath://Redirect-arrow.svg") no-repeat 50% 50% / contain;
display: inline-block;
width: 47px;
height: 20px;
}
.vector-search-box-inner {
background: var(--body-main) !important;
box-shadow: inset 0 -7px 7px -7px rgba(0, 0, 0, 0.15) !important;
}
.vector-menu-dropdown .vector-menu-heading {
color: #937040 !important;
}
.vector-menu-dropdown .vector-menu-heading:hover {
color: #937040 !important;
}
.vector-menu-dropdown .vector-menu-heading:focus {
color: #937040 !important;
}
:root {
--wikitable-header-bg: var(--body-dark);
--wikitable-border: var(--body-border);
--wikitable-bg: var(--body-light);
--wikitable-bg-lighter: #e9e3d6;
--wikitable-color: var(--text-color);
--table-na-background: rgba(255, 255, 255, 0.3);
--table-na-color: var(--subtle-color);
--table-yes-background: #c3e8a3;
--table-yes-color: #2e5e05;
--table-no-background: #fbc0ba;
--table-no-color: #801c13;
--table-maybe-background: #fcea94;
--table-maybe-color: #786300;
}
.wikitable {
background: var(--wikitable-bg);
color: var(--wikitable-color);
border-color: var(--wikitable-border);
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
}
.wikitable > tr > th,
.wikitable > tr > td,
.wikitable > * > tr > th,
.wikitable > * > tr > td {
border-color: var(--wikitable-border);
}
.wikitable > tr > th.table-noborder,
.wikitable > tr > td.table-noborder,
.wikitable > * > tr > th.table-noborder,
.wikitable > * > tr > td.table-noborder {
border-left-style: hidden;
border-right-style: hidden;
padding-left: 0;
padding-right: 0;
}
.wikitable > tr > th,
.wikitable > * > tr > th {
background-color: var(--wikitable-header-bg);
color: #fff;
}
.tabber .wikitable {
box-shadow: none;
}
.mw_metadata td,
.mw_metadata th {
border-color: var(--wikitable-border);
}
.mw_metadata th {
background-color: var(--wikitable-header-bg);
}
.mw_metadata td {
background-color: var(--wikitable-bg);
}
.mw-datatable {
border-color: var(--wikitable-border);
}
.mw-datatable td,
.mw-datatable th {
border-color: var(--wikitable-border);
}
.mw-datatable th {
background-color: var(--wikitable-header-bg);
}
.mw-datatable td {
background-color: var(--wikitable-bg);
}
.mw-datatable tr:hover td {
background-color: var(--wikitable-bg);
}
table.alternating-rows tr:nth-child(odd),
table.alternating-cols td:nth-child(odd) {
background: var(--wikitable-alternating-bg);
}
.table-na {
background: var(--table-na-background);
color: var(--table-na-color);
vertical-align: middle;
text-align: center;
}
.table-yes {
background: var(--table-yes-background);
color: var(--table-yes-color);
}
.table-positive {
background: var(--table-yes-background);
}
.table-no {
background: var(--table-no-background);
color: var(--table-no-color);
}
.table-negative {
background: var(--table-no-background);
}
.table-maybe {
background: var(--table-maybe-background);
color: var(--table-maybe-color);
}
#mw-allmessagestable .am_actual,
#mw-allmessagestable .am_default {
background-color: var(--wikitable-bg);
}
#mw-allmessagestable .am_default:hover,
#mw-allmessagestable .am_actual:hover,
#mw-allmessagestable tbody:hover td {
background-color: var(--wikitable-bg-lighter);
}
table.wikitable td.no-cell-spacing {
padding: 0;
height: 0;
}
table.wikitable td.no-cell-spacing table {
margin: -1px;
width: calc(100% + 2px);
height: calc(100% + 2px);
}
.plainlist ol,
.plainlist ul {
margin: 0;
}
.plainlist li {
margin-bottom: 0;
list-style: none;
}
table.align-right-1 td:nth-of-type(1),
table.align-right-2 td:nth-of-type(2),
table.align-right-3 td:nth-of-type(3),
table.align-right-4 td:nth-of-type(4),
table.align-right-5 td:nth-of-type(5),
table.align-right-6 td:nth-of-type(6),
table.align-right-7 td:nth-of-type(7),
table.align-right-8 td:nth-of-type(8),
table.align-right-9 td:nth-of-type(9),
table.align-right-10 td:nth-of-type(10),
table.align-right-11 td:nth-of-type(11),
table.align-right-12 td:nth-of-type(12),
table.align-right-13 td:nth-of-type(13),
table.align-right-14 td:nth-of-type(14),
table.align-right-15 td:nth-of-type(15),
table.align-right-16 td:nth-of-type(16),
table.align-right-17 td:nth-of-type(17),
table.align-right-18 td:nth-of-type(18),
table.align-right-19 td:nth-of-type(19),
table.align-right-20 td:nth-of-type(20) {
text-align: right;
}
table.align-center-1 td:nth-of-type(1),
table.align-center-2 td:nth-of-type(2),
table.align-center-3 td:nth-of-type(3),
table.align-center-4 td:nth-of-type(4),
table.align-center-5 td:nth-of-type(5),
table.align-center-6 td:nth-of-type(6),
table.align-center-7 td:nth-of-type(7),
table.align-center-8 td:nth-of-type(8),
table.align-center-9 td:nth-of-type(9),
table.align-center-10 td:nth-of-type(10),
table.align-center-11 td:nth-of-type(11),
table.align-center-12 td:nth-of-type(12),
table.align-center-13 td:nth-of-type(13),
table.align-center-14 td:nth-of-type(14),
table.align-center-15 td:nth-of-type(15),
table.align-center-16 td:nth-of-type(16),
table.align-center-17 td:nth-of-type(17),
table.align-center-18 td:nth-of-type(18),
table.align-center-19 td:nth-of-type(19),
table.align-center-20 td:nth-of-type(20) {
text-align: center;
}
table.align-left-1 td:nth-of-type(1),
table.align-left-2 td:nth-of-type(2),
table.align-left-3 td:nth-of-type(3),
table.align-left-4 td:nth-of-type(4),
table.align-left-5 td:nth-of-type(5),
table.align-left-6 td:nth-of-type(6),
table.align-left-7 td:nth-of-type(7),
table.align-left-8 td:nth-of-type(8),
table.align-left-9 td:nth-of-type(9),
table.align-left-10 td:nth-of-type(10),
table.align-left-11 td:nth-of-type(11),
table.align-left-12 td:nth-of-type(12),
table.align-left-13 td:nth-of-type(13),
table.align-left-14 td:nth-of-type(14),
table.align-left-15 td:nth-of-type(15),
table.align-left-16 td:nth-of-type(16),
table.align-left-17 td:nth-of-type(17),
table.align-left-18 td:nth-of-type(18),
table.align-left-19 td:nth-of-type(19),
table.align-left-20 td:nth-of-type(20) {
text-align: left;
}
:root {
--diff-addedline-border-color: #438ab5;
--diff-addedline-background: #bddff2;
--diff-addedline-color: #000;
--diff-deletedline-border-color: #379541;
--diff-deletedline-background: #c1edbf;
--diff-deletedline-color: #000;
--diff-context-border-color: var(--body-mid);
--diff-context-background: var(--body-mid);
}
.diff-context {
border-color: var(--diff-context-border-color);
background: var(--diff-context-background);
color: inherit;
}
.diff-addedline {
border-color: var(--diff-addedline-border-color);
}
.diff-addedline .diffchange {
background: var(--diff-addedline-background);
color: var(--diff-addedline-color);
}
.diff-deletedline {
border-color: var(--diff-deletedline-border-color);
}
.diff-deletedline .diffchange {
background: var(--diff-deletedline-background);
color: var(--diff-deletedline-color);
}
.mw-diff-movedpara-left:after,
.mw-diff-movedpara-right:after {
color: var(--text-color);
}
.mw-notification {
background-color: var(--body-light);
border-color: var(--body-border);
color: var(--text-color);
}
.mw-echo-ui-notificationsInboxWidget-toolbarWrapper {
background: var(--body-main);
}
.mw-body-content .mw-echo-ui-datedSubGroupListWidget-title-secondary {
color: var(--byline-color);
}
.mw-echo-ui-pageNotificationsOptionWidget.oo-ui-optionWidget-selected {
background-color: var(--ooui-normal);
color: var(--ooui-accent);
}
.mw-echo-ui-pageNotificationsOptionWidget-label-count {
background-color: var(--ooui-normal);
color: var(--byline-color);
}
.oo-ui-optionWidget-selected .mw-echo-ui-pageNotificationsOptionWidget-label-count {
color: var(--ooui-accent);
}
.mw-echo-ui-pageNotificationsOptionWidget.oo-ui-optionWidget-highlighted {
background-color: var(--ooui-normal);
color: var(--text-color);
}
.mw-echo-ui-crossWikiUnreadFilterWidget {
border-color: var(--body-border);
}
.mw-echo-ui-crossWikiUnreadFilterWidget-subtitle {
color: var(--byline-color);
}
.mw-echo-ui-notificationBadgeButtonPopupWidget-popup > .oo-ui-popupWidget-popup > .oo-ui-popupWidget-head,
.mw-echo-ui-notificationBadgeButtonPopupWidget-popup > .oo-ui-popupWidget-popup > .oo-ui-popupWidget-footer {
border-color: var(--ooui-interface-border);
}
.mw-echo-ui-notificationBadgeButtonPopupWidget-popup > .oo-ui-popupWidget-popup > .oo-ui-popupWidget-footer .mw-echo-ui-notificationBadgeButtonPopupWidget-footer-buttons .oo-ui-buttonElement:last-child {
border-left-color: var(--ooui-normal-border);
}
.mw-echo-ui-notificationItemWidget {
background-color: var(--ooui-normal);
border-color: var(--ooui-normal-border);
}
.mw-echo-ui-notificationItemWidget:hover,
.mw-echo-ui-notificationItemWidget-unread:hover {
background-color: var(--ooui-normal--hover);
}
.mw-echo-ui-notificationItemWidget:last-child {
border-bottom-color: var(--ooui-normal-border);
}
.mw-echo-ui-notificationItemWidget-unread {
background-color: var(--search-box);
}
.mw-echo-ui-crossWikiNotificationItemWidget-group,
.mw-echo-ui-bundleNotificationItemWidget-group {
background-color: var(--ooui-interface);
}
.mw-echo-ui-toggleReadCircleButtonWidget-circle {
background-color: var(--ooui-progressive);
}
.mw-echo-ui-toggleReadCircleButtonWidget:hover .mw-echo-ui-toggleReadCircleButtonWidget-circle {
background-color: var(--ooui-progressive--hover);
}
.mw-echo-ui-toggleReadCircleButtonWidget-circle-unread {
background-color: var(--ooui-normal);
border-color: var(--ooui-normal-border);
}
.mw-echo-ui-notificationItemWidget-content-message-header,
.mw-echo-ui-notificationItemWidget-content-message-body,
.mw-echo-ui-menuItemWidget > .oo-ui-buttonElement-button > .oo-ui-labelElement-label,
.mw-echo-ui-notificationItemWidget-content-actions-timestamp {
color: var(--ooui-text);
}
.mw-echo-ui-bundleNotificationItemWidget-group {
background-color: var(--body-main);
}
@keyframes unseen-fadeout-to-unread {
from {
background-color: var(--wikitable-bg-lighter);
}
to {
background-color: var(--search-box);
}
}
@keyframes unseen-fadeout-to-read {
from {
background-color: var(--wikitable-bg-lighter);
}
to {
background-color: var(--body-main);
}
}
.mwe-popups {
background: var(--body-light);
}
.mwe-popups .mwe-popups-container {
color: var(--text-color);
background: var(--body-light);
}
.mwe-popups .mwe-popups-container.flipped-x-y:before,
.mwe-popups .mwe-popups-container.flipped-y:before {
border-top: none;
}
.mwe-popups .mwe-popups-container.mwe-popups-no-image-tri:before {
border-bottom: none;
}
.mwe-popups .mwe-popups-container.flipped-x-y:after,
.mwe-popups .mwe-popups-container.flipped-y:after {
border-top-color: var(--body-light);
}
.mwe-popups .mwe-popups-container.mwe-popups-no-image-tri:after {
border-bottom-color: var(--body-light);
}
.mwe-popups .mwe-popups-settings-icon:hover,
.mwe-popups .mwe-popups-settings-icon:active {
background-color: var(--ooui-normal--hover);
}
.mwe-popups .mw-ui-icon-element:not(.disabled):hover {
background: none;
}
.mwe-popups .mwe-popups-extract {
color: var(--text-color);
}
.mwe-popups .mwe-popups-extract[dir='ltr']:after {
background-image: linear-gradient(to right, rgba(49, 62, 89, 0), var(--body-light) 50%);
}
.mwe-popups-overlay {
background-color: var(--ooui-window-background);
}
#mwe-popups-settings {
background: var(--ooui-interface);
border-color: var(--ooui-interface-border);
color: var(--text-color);
}
#mwe-popups-settings header {
border-color: var(--ooui-interface-border);
}
#mwe-popups-settings main#mwe-popups-settings-form p {
color: var(--byline-color);
}
#mwe-popups-settings main#mwe-popups-settings-form form label > span {
color: var(--ooui-text);
}
:root {
--smw-ask-options-even-bg: var(--body-mid);
--smw-ask-options-odd-bg: var(--body-light);
--smw-ask-action-btn-lblue-bg: var(--body-main);
--smw-ask-action-btn-lblue-color: #000;
--smw-ask-action-btn-lblue-border-color: var(--body-light);
--smw-ask-action-btn-dblue-bg: var(--body-light);
--smw-ask-action-btn-dblue-color: #fff;
--smw-ask-action-btn-dblue-border-color: var(--button-border);
}
.smw-ask-condition fieldset,
.smw-ask-printhead fieldset {
border-color: var(--sidebar);
}
.smw-ask-search fieldset,
.smw-ask-format fieldset,
.smw-ask-options fieldset {
border-color: var(--sidebar);
}
.strike > span:before,
.strike > span:after {
background: var(--sidebar);
}
.smw-ask-options-fields tr td {
background-color: var(--smw-ask-options-even-bg);
}
.smw-ask-options-fields tr:nth-child(odd) td {
background-color: var(--smw-ask-options-odd-bg);
}
.smw-ask-action-btn.smw-ask-action-btn-lblue,
.smw-ask-action-btn.smw-ask-action-btn-lblue:hover,
.smw-ask-action-btn.smw-ask-action-btn-lblue:visited {
background-color: var(--smw-ask-action-btn-lblue-bg);
color: var(--smw-ask-action-btn-lblue-color);
border-color: var(--smw-ask-action-btn-lblue-border-color);
}
.smw-ask-action-btn.smw-ask-action-btn-dblue,
.smw-ask-action-btn.smw-ask-action-btn-dblue:hover,
.smw-ask-action-btn.smw-ask-action-btn-dblue:visited {
background-color: var(--smw-ask-action-btn-dblue-bg);
color: var(--smw-ask-action-btn-dblue-color);
border-color: var(--smw-ask-action-btn-dblue-border-color);
}
.smw-ask-query textarea,
.smw-ask-actions textarea {
background-color: var(--ooui-interface);
border-color: var(--ooui-interface-border);
color: var(--ooui-text);
}
.smw-ask-query-format select {
background-color: var(--ooui-interface);
border: 1px solid var(--ooui-interface-border);
color: var(--ooui-text);
}
.smw-ask-toplinks {
background-color: var(--body-mid);
}
.smw-ask-toplinks span.smw-icon-info {
background: none;
padding: 0 !important;
}
.smw-ask-toplinks span.smw-icon-info::before {
content: '';
background: var(--text-color);
-webkit-mask: url("data:image/svg+xml,%3C%3Fxml version='1.0' encoding='UTF-8'%3F%3E%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 20 20'%3E%3Ctitle%3Einfo%3C/title%3E%3Cpath d='M10 0C4.477 0 0 4.477 0 10s4.477 10 10 10 10-4.477 10-10S15.523 0 10 0zM9 5h2v2H9zm0 4h2v6H9z'/%3E%3C/svg%3E") no-repeat 50% 50% / contain;
mask: url("data:image/svg+xml,%3C%3Fxml version='1.0' encoding='UTF-8'%3F%3E%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 20 20'%3E%3Ctitle%3Einfo%3C/title%3E%3Cpath d='M10 0C4.477 0 0 4.477 0 10s4.477 10 10 10 10-4.477 10-10S15.523 0 10 0zM9 5h2v2H9zm0 4h2v6H9z'/%3E%3C/svg%3E") no-repeat 50% 50% / contain;
padding: 0 0 3px 18px;
}
.smw-ask-options-row-odd {
background-color: var(--body-light);
}
.smw-ask-options-row-even {
background-color: var(--body-mid);
}
#options-toggle:not(:checked) + #options-list .options-parameter-list:after {
background-image: linear-gradient(to bottom, transparent, var(--body-mid) 90%);
}
.smw-ask-button-submit input {
background-color: var(--ooui-normal);
border-color: var(--ooui-normal-border);
color: var(--text-color);
}
.smw-ask-button-submit input:hover,
.smw-ask-button-lgrey:hover {
background-color: var(--ooui-normal--hover);
border-color: var(--ooui-normal-border);
}
input.smw-ask-action-btn.smw-ask-action-btn-dblue {
background-color: var(--ooui-normal);
border-color: var(--ooui-normal-border);
color: var(--ooui-text);
}
a.smw-ask-action-btn.smw-ask-action-btn-lblue {
background-color: var(--body-mid);
border-color: var(--body-mid);
color: var(--ooui-text);
}
a.smw-ask-action-btn.smw-ask-action-btn-lblue:visited {
background-color: var(--body-mid);
border-color: var(--body-mid);
color: var(--ooui-text);
}
a.smw-ask-action-btn.smw-ask-action-btn-lblue:hover {
background-color: var(--body-mid);
border-color: var(--body-mid);
color: var(--ooui-text);
}
a.smw-ask-action-btn-lgrey {
background-color: var(--ooui-normal);
border-color: var(--ooui-normal-border);
color: var(--ooui-text);
}
a.smw-ask-action-btn-lgrey:hover {
background-color: var(--ooui-normal--hover);
border-color: var(--ooui-normal-border);
color: var(--ooui-text);
}
.smw-callout-error {
background-color: var(--errorbox-bg);
border-color: var(--errorbox-border);
}
.smw-callout-info {
background-color: var(--body-light);
border-color: var(--body-dark);
}
.smw-callout-success {
background-color: var(--successbox-bg);
border-color: var(--successbox-border);
}
.smw-callout-warning {
background-color: var(--warningbox-bg);
border-color: var(--warningbox-bg);
}
.smw-tabs input.nav-tab:checked + label.nav-label,
.smw-tabs input.nav-tab:checked + label.nav-label:hover {
color: inherit;
}
#tab-smw-property-value:checked + label.nav-label .usage-count {
color: #fff;
background-color: var(--ooui-progressive);
}
#tab-smw-property-value:checked + label.nav-label .usage-count.moderate {
color: #fff;
background-color: #b55e0c;
border-color: #b55e0c;
}
#tab-smw-property-value:checked + label.nav-label .usage-count.high {
color: #fff;
background-color: #9f261e;
border-color: #9f261e;
}
.smw-property-page-results .header-title {
background-color: var(--ooui-interface);
border-bottom-color: var(--ooui-interface-border);
color: var(--ooui-text);
}
.smw-property-page-results .value-row:hover {
background-color: var(--ooui-normal--hover);
}
.smw-property-page-results .smw-table .header-row {
color: var(--text-color);
}
.tippy-tooltip.light-border-theme {
background-color: var(--body-light);
color: var(--text-color);
}
.tippy-tooltip.light-border-theme .tippy-arrow {
border-top-color: var(--body-light);
}
.tippy-tooltip.light-border-theme .tippy-arrow:after {
border-top-color: var(--body-light);
}
.tippy-header {
background-color: var(--body-dark);
border-bottom-color: var(--body-mid);
}
.smw-ui-input-filter {
background-color: var(--ooui-interface);
border-color: var(--ooui-interface-border);
color: var(--ooui-text);
}
.smw-ui-input-filter input {
border-left-color: var(--ooui-interface-border) !important;
color: var(--ooui-text) !important;
}
.smw-ui-pagination .page-link.link-disabled {
background-color: var(--ooui-disabled);
border-color: var(--ooui-disabled-border);
color: var(--subtle-color);
}
.smw-ui-pagination .page-link {
background-color: var(--ooui-normal);
border-color: var(--ooui-normal-border);
color: var(--link-color);
}
.smw-ui-pagination .page-link:hover {
background-color: var(--ooui-normal--hover);
border-color: var(--ooui-normal-border);
color: var(--link-color);
}
.smw-ui-pagination .page-link.link-active {
color: #fff;
background-color: var(--ooui-progressive);
border-color: var(--ooui-progressive);
}
.smw-tabs input.nav-tab:checked + label.nav-label {
border-color: var(--ooui-normal-border);
}
.smw-tabs section,
.smw-tabs .subtab-content {
border-top-color: var(--ooui-normal-border);
}
.smw-column-header {
color: var(--text-color);
}
.smw-factbox {
background: var(--body-main);
border-color: transparent;
}
.mw-body .mw-indicators #mw-indicator-smw-entity-examiner.mw-indicator .smw-indicator-vertical-bar-loader {
display: none;
}
.smwb-theme-light .smwb-title,
.smwb-theme-light .smwb-center,
.smwb-theme-light .smwb-actions,
.smwb-theme-light .smwb-prophead {
background-color: var(--body-mid);
}
.smwb-theme-light .smwb-factbox {
border-left-color: var(--body-mid);
}
.smwb-theme-light .smwb-ifactbox {
border-right-color: var(--body-mid);
}
.smwb-theme-light .smwb-propval {
background-color: var(--body-light);
}
.smwb-action-separator {
border-color: var(--wikitable-border);
}
.smwb-bottom {
border-bottom: 1px solid var(--wikitable-border);
}
.smwb-ifactbox .smwb-cell,
.smwb-factbox .smwb-cell {
border-top: 1px solid var(--wikitable-border);
}
.smwb-propvalue .smwb-prophead,
.smwb-ipropvalue .smwb-prophead,
.smwb-propvalue .smwb-propval,
.smwb-ipropvalue .smwb-propval {
font-size: 0.9em;
}
:root {
--filter-black-to-link: invert(36%) sepia(58%) saturate(433%) hue-rotate(344deg) brightness(100%) contrast(91%);
}
#bodyContent span.smwbrowse a {
color: black;
background-image: url('filepath://Smwbrowse.svg');
filter: var(--filter-black-to-link);
}
#bodyContent span.smwbrowse a:hover {
color: black;
background-image: url('filepath://Smwbrowse-hover.svg');
text-decoration: underline;
}
#bodyContent span.smwsearch a {
color: black;
filter: var(--filter-black-to-link);
background-image: url('filepath://Smwsearch.svg');
}
#bodyContent span.smwsearch a:hover {
color: black;
background-image: url('filepath://Smwsearch-hover.svg');
text-decoration: underline;
}
:root {
--tabber-tab-bg: var(--body-light);
--tabber-tab-border-color: var(--body-border);
--tabber-active-tab-bg: var(--body-light);
--tabber-active-tab-color: var(--text-color);
--tabber-active-tab-hover-bg: var(--body-light);
--tabber-active-tab-hover-border-color: var(--body-border);
--tabber-active-tab-hover-color: var(--text-color);
--tabber-active-tab-border-hider-color: var(--body-light);
--tabber-inactive-tab-bg: var(--body-background-color);
--tabber-inactive-tab-border-color: var(--body-border);
--tabber-inactive-tab-color: var(--text-color);
--tabber-inactive-tab-hover-bg: var(--body-light);
--tabber-inactive-tab-hover-border-color: var(--body-border);
}
.tabber {
margin: 1em 0;
}
.tabber .tabbertab {
background-color: var(--tabber-tab-bg);
border: 1px solid var(--tabber-tab-border-color);
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
padding: 1em 1.5em;
}
ul.tabbernav {
border: none;
margin-left: 2em;
margin-bottom: 0;
margin-right: 2em;
padding: 0;
font-family: inherit;
}
ul.tabbernav li.tabberactive > a {
background-color: var(--tabber-active-tab-bg);
color: var(--tabber-active-tab-color);
border-bottom: none;
position: relative;
}
ul.tabbernav li.tabberactive > a:hover {
color: var(--tabber-active-tab-hover-color);
background-color: var(--tabber-active-tab-hover-bg);
border-color: var(--tabber-active-tab-hover-border-color);
border-bottom: none;
}
ul.tabbernav li.tabberactive > a::after {
content: '';
position: absolute;
left: 0;
right: 0;
bottom: -1px;
border-bottom: 2px solid var(--tabber-active-tab-border-hider-color);
}
ul.tabbernav li a {
background-color: var(--tabber-inactive-tab-bg);
border-bottom: transparent;
border-color: var(--tabber-inactive-tab-border-color);
color: var(--tabber-inactive-tab-color);
display: inline-block;
font-size: 110%;
padding: 0.5em 1em;
}
ul.tabbernav li a:hover {
background-color: var(--tabber-inactive-tab-hover-bg);
border-color: var(--tabber-inactive-tab-hover-border-color);
}
ul.tabbernav li a:link,
ul.tabbernav li a:visited {
color: var(--tabber-inactive-tab-color);
}
:root {
--ooui-text: var(--text-color);
--ooui-interface: var(--body-light);
--ooui-interface-border: var(--body-border);
--ooui-window-background: rgba(255, 255, 255, 0.5);
--ooui-normal: #d5c7ad;
--ooui-normal--hover: #dfd5c1;
--ooui-normal-border: #b8a282;
--ooui-progressive: #605443;
--ooui-progressive--hover: #7e6e58;
--ooui-accent: var(--link-color);
--ooui-input: #fff;
--ooui-input-border: #b8a282;
--ooui-input-border--hover: #8a724f;
--ooui-disabled: #d1cdc5;
--ooui-disabled-border: #c2b9ab;
--ooui-disabled-text: var(--subtle-color);
--ooui-pending-background-image: repeating-linear-gradient(-45deg, var(--search-box), var(--search-box) 20px, var(--body-main) 20px, var(--body-main) 30px);
}
.oo-ui-widget {
color: var(--ooui-text);
}
.oo-ui-checkboxInputWidget [type='checkbox'] + span,
.oo-ui-radioInputWidget [type='radio'] + span {
background-color: var(--ooui-input);
border-color: var(--ooui-input-border);
}
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:checked + span,
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:indeterminate + span {
background-color: var(--ooui-progressive);
border-color: var(--ooui-progressive);
}
.oo-ui-radioInputWidget.oo-ui-widget-enabled [type='radio']:checked + span {
border-color: var(--ooui-progressive);
}
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:checked:hover + span,
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:indeterminate:hover + span {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
}
.oo-ui-radioInputWidget.oo-ui-widget-enabled [type='radio']:checked:hover + span {
border-color: var(--ooui-progressive--hover);
}
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:hover + span,
.oo-ui-radioInputWidget.oo-ui-widget-enabled [type='radio']:hover + span {
border-color: var(--ooui-accent);
}
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:focus + span {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:active + span,
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:checked:active + span,
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:indeterminate:active + span {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
box-shadow: inset 0 0 0 1px var(--ooui-progressive--hover);
}
.oo-ui-radioInputWidget.oo-ui-widget-enabled [type='radio']:active + span {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
}
.oo-ui-radioInputWidget.oo-ui-widget-enabled [type='radio']:checked:active + span {
border-color: var(--ooui-progressive--hover);
box-shadow: inset 0 0 0 1px var(--ooui-progressive--hover);
}
.oo-ui-radioInputWidget.oo-ui-widget-enabled [type='radio']:checked:active + span:before {
border-color: var(--ooui-progressive--hover);
}
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:checked:focus + span,
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:indeterminate:focus + span {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent), inset 0 0 0 2px #fff;
}
.oo-ui-checkboxInputWidget [type='checkbox']:disabled + span,
.oo-ui-radioInputWidget [type='radio']:disabled + span {
background-color: var(--ooui-disabled);
border-color: var(--ooui-disabled);
}
.oo-ui-dropdownWidget-handle {
border-color: var(--ooui-normal-border);
}
.oo-ui-dropdownWidget.oo-ui-widget-enabled .oo-ui-dropdownWidget-handle {
background-color: var(--ooui-normal);
color: var(--ooui-text);
}
.oo-ui-dropdownWidget.oo-ui-widget-enabled .oo-ui-dropdownWidget-handle:hover {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
}
.oo-ui-dropdownWidget.oo-ui-widget-enabled .oo-ui-dropdownWidget-handle:active {
color: var(--ooui-text);
}
.oo-ui-dropdownWidget.oo-ui-widget-enabled .oo-ui-dropdownWidget-handle:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-dropdownWidget.oo-ui-widget-enabled.oo-ui-dropdownWidget-open .oo-ui-dropdownWidget-handle {
background-color: var(--ooui-normal--hover);
}
.oo-ui-dropdownWidget.oo-ui-widget-disabled .oo-ui-dropdownWidget-handle {
color: var(--ooui-disabled-text);
text-shadow: none;
border-color: var(--ooui-disabled-border);
background-color: var(--ooui-disabled);
}
.oo-ui-dropdownInputWidget select {
border-color: var(--ooui-normal-border);
}
.oo-ui-dropdownInputWidget option {
background-color: var(--ooui-interface);
}
.oo-ui-dropdownInputWidget.oo-ui-widget-enabled {
background-color: var(--ooui-normal);
}
.oo-ui-dropdownInputWidget.oo-ui-widget-enabled:hover {
background-color: var(--ooui-normal--hover);
}
.oo-ui-dropdownInputWidget.oo-ui-widget-enabled select {
color: var(--ooui-text);
}
.oo-ui-dropdownInputWidget.oo-ui-widget-enabled select:hover,
.oo-ui-dropdownInputWidget.oo-ui-widget-enabled select:active {
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
}
.oo-ui-dropdownInputWidget.oo-ui-widget-enabled select:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-labelWidget.oo-ui-inline-help {
color: var(--byline-color);
}
.oo-ui-menuSelectWidget {
background-color: var(--ooui-interface);
border-color: var(--ooui-interface-border);
}
.oo-ui-menuSelectWidget-frameless {
box-shadow: inset 0 -1px 0 0 var(--ooui-normal-border);
}
.oo-ui-menuSectionOptionWidget {
color: var(--byline-color);
}
.oo-ui-menuOptionWidget.oo-ui-optionWidget-highlighted,
.oo-ui-menuOptionWidget.oo-ui-optionWidget-selected {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
}
.oo-ui-menuOptionWidget.oo-ui-optionWidget-selected.oo-ui-menuOptionWidget.oo-ui-optionWidget-highlighted,
.oo-ui-menuOptionWidget.oo-ui-optionWidget-pressed.oo-ui-menuOptionWidget.oo-ui-optionWidget-highlighted {
color: var(--ooui-accent);
}
.oo-ui-menuOptionWidget.oo-ui-widget-enabled.oo-ui-optionWidget {
color: var(--ooui-text);
}
.oo-ui-messageDialog-title {
color: inherit;
}
.oo-ui-messageWidget.oo-ui-messageWidget-block.oo-ui-flaggedElement-error {
background-color: var(--errorbox-bg);
border-color: var(--errorbox-border);
}
.oo-ui-messageWidget.oo-ui-messageWidget-block.oo-ui-flaggedElement-warning {
background-color: var(--warningbox-bg);
border-color: var(--warningbox-border);
}
.oo-ui-messageWidget.oo-ui-messageWidget-block.oo-ui-flaggedElement-success {
background-color: var(--successbox-bg);
border-color: var(--successbox-border);
}
.oo-ui-messageWidget.oo-ui-messageWidget-block.oo-ui-flaggedElement-notice {
background-color: var(--messagebox-info-background);
border-color: var(--messagebox-info-border);
}
.oo-ui-messageWidget.oo-ui-flaggedElement-error:not(.oo-ui-messageWidget-block),
.oo-ui-messageWidget.oo-ui-flaggedElement-success:not(.oo-ui-messageWidget-block) {
color: var(--ooui-text);
}
.oo-ui-optionWidget.oo-ui-widget-disabled {
color: var(--ooui-disabled-text);
}
.oo-ui-outlineControlsWidget {
background-color: var(--ooui-normal);
}
.oo-ui-outlineOptionWidget.oo-ui-optionWidget-highlighted {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
}
.oo-ui-popupWidget-popup {
background-color: var(--ooui-interface);
border-color: var(--ooui-interface-border);
}
.oo-ui-popupWidget-anchored-top .oo-ui-popupWidget-anchor:after {
border-bottom-color: var(--ooui-interface);
}
.oo-ui-popupWidget-anchored-top .oo-ui-popupWidget-anchor:before {
border-bottom-color: var(--ooui-interface-border);
}
.oo-ui-popupWidget-anchored-bottom .oo-ui-popupWidget-anchor:after {
border-top-color: var(--ooui-interface);
}
.oo-ui-popupWidget-anchored-bottom .oo-ui-popupWidget-anchor:before {
border-top-color: var(--ooui-interface-border);
}
.oo-ui-popupWidget-anchored-start .oo-ui-popupWidget-anchor:after {
border-right-color: var(--ooui-interface);
}
.oo-ui-popupWidget-anchored-start .oo-ui-popupWidget-anchor:before {
border-right-color: var(--ooui-interface-border);
}
.oo-ui-popupWidget-anchored-end .oo-ui-popupWidget-anchor:after {
border-left-color: var(--ooui-interface);
}
.oo-ui-popupWidget-anchored-end .oo-ui-popupWidget-anchor:before {
border-left-color: var(--ooui-interface-border);
}
.oo-ui-searchWidget-query {
border-bottom-color: var(--ooui-interface-border);
}
.oo-ui-selectFileWidget-dropTarget {
background-color: var(--ooui-interface);
border-color: var(--ooui-interface-border);
}
.oo-ui-selectFileWidget.oo-ui-widget-enabled.oo-ui-selectFileWidget-dropTarget {
background-color: var(--ooui-interface);
}
.oo-ui-selectFileWidget.oo-ui-widget-enabled.oo-ui-selectFileWidget-dropTarget:hover {
border-color: var(--ooui-input-border--hover);
}
.oo-ui-tabOptionWidget {
color: var(--ooui-text);
}
.oo-ui-tabSelectWidget-framed .oo-ui-tabOptionWidget.oo-ui-optionWidget-selected {
background-color: var(--body-dark);
color: var(--ooui-text);
}
.oo-ui-tabSelectWidget-framed .oo-ui-tabOptionWidget.oo-ui-optionWidget-selected .oo-ui-labelElement-label {
border-bottom-color: var(--body-border);
}
.oo-ui-tabSelectWidget-framed .oo-ui-tabOptionWidget.oo-ui-widget-enabled:hover,
.oo-ui-tabSelectWidget-framed .oo-ui-tabOptionWidget.oo-ui-widget-enabled:active {
background-color: var(--body-light);
color: var(--ooui-text);
}
.oo-ui-tabSelectWidget-framed .oo-ui-tabOptionWidget.oo-ui-widget-enabled.oo-ui-optionWidget-selected:hover {
background-color: var(--body-dark);
}
.oo-ui-tabSelectWidget-frameless .oo-ui-tabOptionWidget.oo-ui-optionWidget-selected {
color: var(--ooui-progressive);
box-shadow: inset 0 -2px 0 0 var(--ooui-progressive);
}
.oo-ui-tabSelectWidget-frameless .oo-ui-tabOptionWidget.oo-ui-optionWidget-selected:hover,
.oo-ui-tabSelectWidget-frameless .oo-ui-tabOptionWidget.oo-ui-optionWidget-selected:focus {
color: var(--ooui-progressive--hover);
box-shadow: inset 0 -2px 0 0 var(--ooui-progressive--hover);
}
.oo-ui-tabSelectWidget-framed {
background: none;
border-bottom: 1px solid var(--ooui-interface-border);
}
.oo-ui-tabSelectWidget-frameless {
box-shadow: inset 0 -1px 0 0 var(--ooui-interface-border);
}
.oo-ui-tabSelectWidget-mobile {
}
.oo-ui-tabSelectWidget-mobile.oo-ui-tabSelectWidget-framed:after {
background: var(--mobile-navbox-linear-gradient);
}
.oo-ui-tabSelectWidget-mobile.oo-ui-tabSelectWidget-frameless:after {
background: var(--mobile-navbox-linear-gradient);
}
.oo-ui-tagItemWidget {
border-color: var(--ooui-normal-border);
}
.oo-ui-tagItemWidget.oo-ui-widget-enabled {
color: var(--ooui-text);
}
.oo-ui-tagItemWidget.oo-ui-widget-enabled:hover {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
}
.oo-ui-tagItemWidget.oo-ui-widget-enabled:not( .oo-ui-tagItemWidget-fixed ) {
background-color: var(--ooui-normal);
}
.oo-ui-tagItemWidget.oo-ui-widget-enabled .oo-ui-buttonElement-button:hover {
background-color: var(--ooui-normal--hover);
}
.oo-ui-tagMultiselectWidget.oo-ui-widget-enabled {
background-color: var(--ooui-interface);
}
.oo-ui-tagMultiselectWidget.oo-ui-widget-enabled.oo-ui-tagMultiselectWidget-outlined {
background-color: var(--ooui-normal);
}
.oo-ui-tagMultiselectWidget.oo-ui-widget-enabled.oo-ui-tagMultiselectWidget-outlined .oo-ui-tagItemWidget.oo-ui-widget-enabled {
background-color: var(--ooui-interface);
}
.oo-ui-textInputWidget .oo-ui-inputWidget-input {
background-color: var(--ooui-input);
color: var(--ooui-text);
border-color: var(--ooui-input-border);
}
.oo-ui-textInputWidget.oo-ui-widget-enabled .oo-ui-inputWidget-input::placeholder {
color: var(--subtle-color);
}
.oo-ui-textInputWidget.oo-ui-widget-enabled .oo-ui-inputWidget-input:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-textInputWidget.oo-ui-widget-enabled .oo-ui-inputWidget-input[readonly]:not(.oo-ui-pendingElement-pending) {
background-color: var(--ooui-disabled);
color: var(--ooui-disabled-text);
}
.oo-ui-textInputWidget.oo-ui-widget-enabled:hover .oo-ui-inputWidget-input {
border-color: var(--ooui-input-border--hover);
}
.oo-ui-textInputWidget.oo-ui-widget-enabled:hover .oo-ui-inputWidget-input:focus {
border-color: var(--ooui-accent);
}
@media screen and (min-width: 0) {
.oo-ui-textInputWidget.oo-ui-widget-enabled textarea.oo-ui-inputWidget-input:focus {
outline: 1px solid var(--ooui-accent);
}
}
.oo-ui-textInputWidget.oo-ui-widget-disabled .oo-ui-inputWidget-input {
background-color: var(--ooui-disabled);
color: var(--ooui-disabled-text);
text-shadow: none;
border-color: var(--ooui-disabled-border);
}
.oo-ui-toggleSwitchWidget {
background-color: var(--ooui-input);
border-color: var(--ooui-input-border);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled .oo-ui-toggleSwitchWidget-grip {
background-color: var(--ooui-input);
border-color: var(--ooui-input-border);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:hover {
background-color: var(--ooui-input);
border-color: var(--ooui-accent);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:hover .oo-ui-toggleSwitchWidget-grip {
background-color: var(--ooui-input);
border-color: var(--ooui-accent);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:active,
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:active:hover,
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:active:focus {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
box-shadow: inset 0 0 0 1px var(--ooui-progressive--hover);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:active .oo-ui-toggleSwitchWidget-grip,
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:active:hover .oo-ui-toggleSwitchWidget-grip,
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:active:focus .oo-ui-toggleSwitchWidget-grip {
background-color: var(--ooui-input);
border-color: var(--ooui-input);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:focus .oo-ui-toggleSwitchWidget-grip {
border-color: var(--ooui-accent);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled.oo-ui-toggleWidget-on {
background-color: var(--ooui-progressive);
border-color: var(--ooui-progressive);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled.oo-ui-toggleWidget-on .oo-ui-toggleSwitchWidget-grip {
background-color: var(--ooui-input);
border-color: var(--ooui-input);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled.oo-ui-toggleWidget-on:hover {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled.oo-ui-toggleWidget-on:active,
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled.oo-ui-toggleWidget-on:active:hover {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled.oo-ui-toggleWidget-on:focus {
border-color: var(--ooui-progressive);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled.oo-ui-toggleWidget-on:focus::before {
border-color: #fff;
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-disabled {
background-color: var(--ooui-disabled);
border-color: var(--ooui-disabled);
}
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled > .oo-ui-buttonElement-button {
color: var(--ooui-text);
}
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled > .oo-ui-buttonElement-button:hover {
color: var(--ooui-text);
}
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled > .oo-ui-buttonElement-button:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled.oo-ui-buttonElement-pressed > input.oo-ui-buttonElement-button,
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled > .oo-ui-buttonElement-button:active {
color: var(--ooui-text);
}
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button,
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button:hover {
color: var(--ooui-text);
}
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button:active,
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive.oo-ui-buttonElement-pressed > .oo-ui-buttonElement-button {
color: var(--ooui-text);
border-color: var(--ooui-text);
}
.oo-ui-buttonElement-frameless.oo-ui-widget-disabled > .oo-ui-buttonElement-button {
color: var(--ooui-disabled-text);
}
.oo-ui-buttonElement-framed.oo-ui-widget-disabled > .oo-ui-buttonElement-button {
background-color: var(--ooui-disabled);
border-color: var(--ooui-disabled-border);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled > .oo-ui-buttonElement-button {
background-color: var(--ooui-normal);
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled > .oo-ui-buttonElement-button:hover {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled > .oo-ui-buttonElement-button:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-buttonElement-active > .oo-ui-buttonElement-button {
background-color: var(--ooui-progressive--hover);
color: #fff;
border-color: var(--ooui-progressive--hover);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-buttonElement-active > .oo-ui-buttonElement-button:focus {
border-color: var(--ooui-progressive--hover);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled > .oo-ui-buttonElement-button:active,
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-buttonElement-pressed > .oo-ui-buttonElement-button {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive {
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button {
color: var(--ooui-text);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button:hover {
background-color: var(--ooui-normal--hover);
border-color: var(--ooui-progressive--hover);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-destructive > .oo-ui-buttonElement-button {
color: var(--ooui-text);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-destructive > .oo-ui-buttonElement-button:hover {
background-color: var(--ooui-normal--hover);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button {
background-color: var(--ooui-progressive);
border-color: var(--ooui-progressive);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button:hover {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent), inset 0 0 0 2px #fff;
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button:active,
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive.oo-ui-buttonElement-pressed > .oo-ui-buttonElement-button,
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive.oo-ui-buttonElement-active > .oo-ui-buttonElement-button,
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive.oo-ui-popupToolGroup-active > .oo-ui-buttonElement-button {
color: #fff;
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
}
.oo-ui-pendingElement-pending {
background-image: var(--ooui-pending-background-image);
background-size: 200%;
animation: oo-ui-pendingElement-stripes 6s linear infinite;
}
@keyframes oo-ui-pendingElement-stripes {
100% {
background-position: 100%;
}
}
.oo-ui-messageDialog-content > .oo-ui-window-foot {
outline-color: var(--ooui-interface-border);
}
.oo-ui-messageDialog-message {
color: var(--ooui-text);
}
.oo-ui-messageDialog-actions-horizontal .oo-ui-actionWidget {
border-right-color: var(--ooui-interface-border);
}
.oo-ui-messageDialog-actions-vertical .oo-ui-actionWidget {
border-bottom-color: var(--ooui-interface-border);
}
.oo-ui-processDialog-content .oo-ui-window-head,
.oo-ui-processDialog-content .oo-ui-window-foot {
outline-color: var(--ooui-interface-border);
}
.oo-ui-processDialog .oo-ui-actionWidget > .oo-ui-buttonElement-button {
border-top-color: transparent;
border-bottom-color: transparent;
}
.oo-ui-processDialog .oo-ui-actionWidget > .oo-ui-buttonElement-button:hover,
.oo-ui-processDialog .oo-ui-actionWidget > .oo-ui-buttonElement-button:active {
border-top-color: transparent;
border-bottom-color: transparent;
}
.oo-ui-processDialog .oo-ui-actionWidget:not( .oo-ui-flaggedElement-progressive ):not( .oo-ui-flaggedElement-destructive ) > .oo-ui-buttonElement-button:hover,
.oo-ui-processDialog .oo-ui-actionWidget:not( .oo-ui-flaggedElement-progressive ):not( .oo-ui-flaggedElement-destructive ) > .oo-ui-buttonElement-button:active {
border-right-color: var(--ooui-interface-border);
border-left-color: transparent;
}
.oo-ui-processDialog .oo-ui-actionWidget:not( .oo-ui-flaggedElement-progressive ):not( .oo-ui-flaggedElement-destructive ) > .oo-ui-buttonElement-button:focus {
border-color: var(--ooui-accent);
}
.oo-ui-processDialog-actions-safe .oo-ui-actionWidget > .oo-ui-buttonElement-button,
.oo-ui-processDialog-actions-other .oo-ui-actionWidget > .oo-ui-buttonElement-button {
border-right-color: var(--ooui-normal-border);
border-left-color: transparent;
}
.oo-ui-processDialog-actions-safe .oo-ui-widget-enabled.oo-ui-iconElement:not( .oo-ui-labelElement ) > .oo-ui-buttonElement-button:hover {
background-color: var(--ooui-normal--hover);
border-right-color: var(--ooui-interface-border);
}
.oo-ui-windowManager-modal > .oo-ui-dialog {
background-color: var(--ooui-window-background);
}
.oo-ui-windowManager-modal > .oo-ui-dialog > .oo-ui-window-frame {
background-color: var(--ooui-interface);
}
.oo-ui-windowManager-modal.oo-ui-windowManager-floating > .oo-ui-dialog > .oo-ui-window-frame {
border-color: var(--ooui-interface-border);
}
.oo-ui-window {
color: var(--ooui-text);
}
.oo-ui-toolbar-bar {
background-color: var(--ooui-interface);
color: var(--ooui-text);
}
.oo-ui-toolbar-position-top > .oo-ui-toolbar-bar {
border-bottom-color: var(--body-mid);
}
.oo-ui-toolbar-bar .oo-ui-bookletLayout > .oo-ui-menuLayout-menu {
border-right-color: var(--body-mid);
}
.oo-ui-tool.oo-ui-widget-enabled > .oo-ui-tool-link:hover {
background-color: var(--ooui-normal--hover);
}
.oo-ui-tool.oo-ui-widget-enabled > .oo-ui-tool-link:focus {
outline: 1px solid var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-tool.oo-ui-widget-enabled > .oo-ui-tool-link:active,
.oo-ui-tool.oo-ui-widget-enabled.oo-ui-tool-active > .oo-ui-tool-link,
.oo-ui-tool.oo-ui-widget-enabled.oo-ui-popupToolGroup-active > .oo-ui-tool-link {
background-color: var(--ooui-normal--hover);
color: var(--ooui-accent);
box-shadow: none;
}
.oo-ui-tool.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive > .oo-ui-tool-link {
background-color: var(--ooui-progressive);
}
.oo-ui-tool.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive > .oo-ui-tool-link:hover {
background-color: var(--ooui-progressive--hover);
}
.oo-ui-tool.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive > .oo-ui-tool-link:focus {
box-shadow: inset 0 0 0 1px var(--ooui-accent), inset 0 0 0 2px #fff;
}
.oo-ui-tool.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive > .oo-ui-tool-link:active,
.oo-ui-tool.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive.oo-ui-tool-active > .oo-ui-tool-link {
background-color: var(--ooui-progressive--hover);
}
.oo-ui-listToolGroup-tools .oo-ui-tool.oo-ui-widget-enabled {
background-color: var(--ooui-normal);
}
.oo-ui-listToolGroup-tools .oo-ui-tool.oo-ui-widget-enabled:hover {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
}
.oo-ui-listToolGroup-tools .oo-ui-tool-active.oo-ui-widget-enabled .oo-ui-tool-link .oo-ui-tool-title {
color: var(--ooui-progressive);
}
.oo-ui-menuToolGroup {
border-left-color: var(--body-mid);
border-right-color: var(--body-mid);
}
.oo-ui-popupToolGroup-tools {
background-color: var(--ooui-interface);
border-color: var(--body-mid);
}
.oo-ui-popupToolGroup.oo-ui-widget-enabled > .oo-ui-popupToolGroup-handle:hover {
background-color: var(--ooui-normal--hover);
}
.oo-ui-popupToolGroup.oo-ui-widget-enabled > .oo-ui-popupToolGroup-handle:focus {
outline: 1px solid var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-toolbar-actions .oo-ui-popupToolGroup.oo-ui-widget-enabled > .oo-ui-popupToolGroup-handle:hover {
border-right-color: var(--ooui-normal--hover);
}
.oo-ui-popupToolGroup-tools .oo-ui-tool.oo-ui-widget-enabled .oo-ui-tool-link:focus {
box-shadow: inset 0 0 0 2px var(--ooui-accent);
}
.oo-ui-popupToolGroup-tools .oo-ui-tool-active.oo-ui-widget-enabled .oo-ui-tool-link .oo-ui-tool-title {
color: var(--ooui-progressive);
}
.oo-ui-popupToolGroup.oo-ui-popupToolGroup-active > .oo-ui-popupToolGroup-handle {
background-color: var(--ooui-normal);
color: var(--ooui-accent);
}
.oo-ui-popupToolGroup.oo-ui-popupToolGroup-active > .oo-ui-popupToolGroup-handle:hover {
background-color: var(--ooui-normal--hover);
color: var(--ooui-accent);
}
.oo-ui-bookletLayout-outlinePanel > .oo-ui-outlineControlsWidget {
border-top-color: var(--ooui-interface-border);
}
.oo-ui-bookletLayout > .oo-ui-menuLayout-menu {
border-right-color: var(--ooui-interface-border);
}
.oo-ui-fieldLayout-disabled > .oo-ui-fieldLayout-body > .oo-ui-fieldLayout-header > .oo-ui-labelElement-label {
color: var(--ooui-disabled-text);
}
.oo-ui-panelLayout-framed {
border-color: var(--sidebar);
}
.oo-ui-icon-settings {
background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' width='20' height='20' viewBox='0 0 20 20'%3E%3Ctitle%3Esettings%3C/title%3E%3Cg transform='translate(10 10)'%3E%3Cpath id='a' d='M1.5-10h-3l-1 6.5h5m0 7h-5l1 6.5h3'/%3E%3Cuse xlink:href='%23a' transform='rotate(45)'/%3E%3Cuse xlink:href='%23a' transform='rotate(90)'/%3E%3Cuse xlink:href='%23a' transform='rotate(135)'/%3E%3C/g%3E%3Cpath d='M10 2.5a7.5 7.5 0 0 0 0 15 7.5 7.5 0 0 0 0-15v4a3.5 3.5 0 0 1 0 7 3.5 3.5 0 0 1 0-7'/%3E%3C/svg%3E");
}
.oo-ui-icon-clear {
background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 20 20'%3E%3Ctitle%3Eclear%3C/title%3E%3Cpath d='M10 0a10 10 0 1 0 10 10A10 10 0 0 0 10 0zm5.66 14.24-1.41 1.41L10 11.41l-4.24 4.25-1.42-1.42L8.59 10 4.34 5.76l1.42-1.42L10 8.59l4.24-4.24 1.41 1.41L11.41 10z'/%3E%3C/svg%3E");
}
.mw-widget-dateInputWidget-handle {
background-color: var(--ooui-input);
color: var(--ooui-text);
border-color: var(--ooui-input-border);
}
.mw-widget-dateInputWidget-calendar {
background-color: var(--ooui-interface);
}
.mw-widget-dateInputWidget.oo-ui-widget-enabled .mw-widget-dateInputWidget-handle:hover {
border-color: var(--ooui-input-border--hover);
}
.mw-widget-calendarWidget {
border-color: var(--ooui-interface-border);
}
.mw-widget-calendarWidget:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.mw-widget-calendarWidget-day,
.mw-widget-calendarWidget-day-heading {
color: var(--ooui-text);
}
.mw-widget-calendarWidget-day-additional {
color: var(--ooui-text);
opacity: 0.67;
}
.mw-widget-calendarWidget-day-today {
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.mw-widget-calendarWidget-item:hover {
background-color: var(--ooui-progressive);
}
.mw-widget-calendarWidget-item-selected {
background-color: var(--ooui-progressive--hover);
}
.mw-widgets-datetime-calendarWidget {
background-color: var(--ooui-interface);
border-color: var(--ooui-interface-border);
}
.mw-widgets-datetime-calendarWidget:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent), 0 2px 2px 0 rgba(0, 0, 0, 0.25);
}
.mw-widgets-datetime-calendarWidget-grid .mw-widgets-datetime-calendarWidget-cell.mw-widgets-datetime-calendarWidget-extra .oo-ui-buttonElement-button .oo-ui-labelElement-label {
color: var(--subtle-color);
}
.mw-widgets-datetime-calendarWidget-grid .mw-widgets-datetime-calendarWidget-cell.mw-widgets-datetime-calendarWidget-selected .oo-ui-buttonElement-button {
background-color: var(--ooui-progressive--hover);
}
.mw-widgets-datetime-dateTimeInputWidget-handle {
background-color: var(--ooui-input);
color: var(--ooui-text);
border-color: var(--ooui-input-border);
}
.mw-widgets-datetime-dateTimeInputWidget.oo-ui-widget-enabled.mw-widgets-datetime-dateTimeInputWidget-handle:hover {
border-color: var(--ooui-input-border--hover);
}
.mw-widgets-datetime-dateTimeInputWidget.oo-ui-widget-enabled:hover input,
.mw-widgets-datetime-dateTimeInputWidget.oo-ui-widget-enabled:hover textarea {
border-color: var(--ooui-input-border--hover);
}
.mw-widgets-datetime-dateTimeInputWidget.oo-ui-widget-enabled .mw-widgets-datetime-dateTimeInputWidget-editField:hover {
background-color: var(--ooui-normal);
}
.ve-activated .ve-init-mw-desktopArticleTarget-originalContent #catlinks:hover {
background: var(--ooui-normal--hover);
}
.ve-ui-overlay {
font-family: inherit;
}
.oo-ui-toolbar-position-top .ve-ui-toolbarDialog-position-above {
border-top-color: var(--body-mid);
}
.ve-ce-branchNode-blockSlug,
.ve-ce-branchNode-newSlug {
outline-color: var(--body-border);
background-color: var(--ooui-interface);
}
.ve-ui-specialCharacterPage h3 {
color: var(--byline-color);
}
.ve-ui-specialCharacterPage-character {
border-color: var(--body-mid);
}
.ve-ui-specialCharacterPage-character:hover {
border-color: var(--body-dark);
}
.ve-ce-linkAnnotation.ve-ce-annotation-active {
box-shadow: 0 0 0 1px var(--body-mid);
background: none;
}
.ve-ui-desktopContext .ve-ui-linkContextItem .ve-ui-linkContextItem-label {
border-color: var(--body-border);
}
.ve-ui-mwHelpPopupTool-version-label,
.ve-ui-mwHelpPopupTool-version-link,
.ve-ui-mwHelpPopupTool-version-date {
color: var(--byline-color);
}
.ve-ce-tableCellableNode {
border-color: var(--body-mid);
}
.ve-ce-mwReferencesListNode-muted {
color: var(--byline-color);
}
.ve-ui-mwTemplatePage-description,
.ve-ui-mwParameterPage-label,
.ve-ui-mwParameterPage-description-required,
.ve-ui-mwParameterPage-description-deprecated {
color: var(--byline-color);
}
.mw-widget-titleWidget-menu .mw-widget-titleOptionWidget-description {
color: var(--byline-color);
}
.ve-ui-mwGalleryDialog-menuLayout > .oo-ui-menuLayout-menu,
.ve-ui-mwGalleryDialog-innerMenuLayout > .oo-ui-menuLayout-menu,
.ve-ui-mwGalleryDialog .ve-ui-mwGalleryDialog-image-container,
.ve-ui-targetWidget {
border-color: var(--body-border);
}
.ve-ui-targetWidget:not(.oo-ui-pendingElement-pending) {
background-color: var(--body-main);
}
.ve-ui-mwSaveDialog {
color: var(--ooui-text);
}
.ve-ui-mwSaveDialog-options {
background-color: var(--ooui-interface);
border-color: var(--body-border);
}
.ve-ui-mwSaveDialog-summary {
background-color: var(--ooui-input);
}
.ve-ui-mwSaveDialog-editSummary-count {
border-color: var(--body-border);
}
.ve-ui-mwSaveDialog-license {
color: var(--byline-color);
}
.ve-ui-mwReferenceContextItem-muted {
color: var(--byline-color);
}
.ve-ui-mwNoticesPopupTool-items > div:not(:first-child),
.ve-ui-mwHelpPopupTool-item:not(:first-child) {
border-color: var(--body-border);
}
.ve-ui-mwTransclusionOutlineControlsWidget {
background-color: var(--ooui-interface);
border-top-color: var(--body-border);
}
.ve-ui-mwTransclusionOutlineTemplateWidget-sticky {
background-color: var(--ooui-interface);
}
.ve-ui-mwTransclusionOutlineTemplateWidget .ve-ui-mwTransclusionOutlineParameterWidget.oo-ui-optionWidget-highlighted {
color: var(--ooui-text);
}
.ve-ui-mwTransclusionOutlineTemplateWidget-no-template-parameters {
color: var(--subtle-color);
}
.ve-ui-mwParameterPage-undocumentedLabel {
color: var(--subtle-color);
}
.ve-ui-mwTwoPaneTransclusionDialogLayout > .oo-ui-menuLayout-menu {
border-right: var(--body-border);
}
.ve-ui-mwParameterPage-doc-required,
.ve-ui-mwParameterPage-doc-deprecated,
.ve-ui-mwParameterPage-inlineDescription .ve-ui-mwParameterPage-doc-example {
color: var(--byline-color);
}
.ve-ui-expandableContent-toggle {
background-color: var(--ooui-interface);
}
.ve-ui-expandableContent-fade {
background: linear-gradient(to right, rgba(255, 255, 255, 0) 0, var(--ooui-interface) 90%);
}
.ve-ui-commandHelpDialog-shortcut > kbd,
.ve-ui-commandHelpDialog-sequence > kbd {
background-color: var(--keypress-background);
color: var(--keypress-color);
border-color: var(--keypress-border);
box-shadow: none;
text-shadow: none;
}
.ve-init-mw-desktopArticleTarget-toolbarPlaceholder-floating .ve-init-mw-desktopArticleTarget-toolbarPlaceholder-bar {
background: var(--ooui-interface);
}
.ve-init-mw-desktopArticleTarget-toolbarPlaceholder-bar {
border-bottom-color: var(--body-mid);
}
figure[typeof~='mw:File/Thumb'],
figure[typeof~='mw:File/Frame'],
figure[typeof~='mw:Image/Thumb'],
figure[typeof~='mw:Video/Thumb'],
figure[typeof~='mw:Image/Frame'],
figure[typeof~='mw:Video/Frame'] {
border: none;
background-color: var(--thumb-bg);
}
figure[typeof~='mw:File/Thumb'] > a:first-child > *:first-child:not( .mw-broken-media ),
figure[typeof~='mw:File/Frame'] > a:first-child > *:first-child:not( .mw-broken-media ),
figure[typeof~='mw:Image/Thumb'] > a:first-child > *:first-child:not( .mw-broken-media ),
figure[typeof~='mw:Video/Thumb'] > a:first-child > *:first-child:not( .mw-broken-media ),
figure[typeof~='mw:Image/Frame'] > a:first-child > *:first-child:not( .mw-broken-media ),
figure[typeof~='mw:Video/Frame'] > a:first-child > *:first-child:not( .mw-broken-media ) {
border: none;
background: var(--thumb-bg);
}
figure[typeof~='mw:File/Thumb'] > figcaption,
figure[typeof~='mw:File/Frame'] > figcaption,
figure[typeof~='mw:Image/Thumb'] > figcaption,
figure[typeof~='mw:Video/Thumb'] > figcaption,
figure[typeof~='mw:Image/Frame'] > figcaption,
figure[typeof~='mw:Video/Frame'] > figcaption {
border: none;
background-color: var(--thumb-caption-bg);
padding: 4px 6px;
}
:root {
--keypress-background: #eee;
--keypress-border: #ccc;
--keypress-color: #333;
}
.archivelist {
background-color: var(--body-light);
border: solid 1px var(--body-border);
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
float: right;
margin: 5px;
padding: 5px;
text-align: center;
width: 120px;
}
.shortcut {
border: 1px solid var(--body-border);
background: var(--body-light);
float: right;
font-size: 0.8em;
margin: 0.5em 0em 0.5em 1em;
padding: 0.5em;
text-align: center;
}
.hatnote,
.seealso {
font-style: italic;
}
.hatnote i,
.seealso i {
font-style: normal;
}
div.hatnote,
div.seealso {
margin: 0.5em 1.6em;
}
div.hatnote + div.hatnote,
div.hatnote + div.seealso,
div.seealso + div.hatnote,
div.seealso + div.seealso {
margin-top: -0.5em;
}
.keypress {
background: var(--keypress-background);
color: var(--keypress-color);
font-family: inherit;
border: 1px solid var(--keypress-border);
border-radius: 2px;
font-size: 0.9em;
margin: 0 0.1em;
padding: 0.1em 0.4em;
white-space: nowrap;
}
:root {
--documentation-background: #f9fafa;
--documentation-link-color: #e4eaee;
--documentation-headers-color: #fff;
--documentation-header-background: #949eaa;
--documentation-subheader-background: #808c9a;
--documentation-border: #e4eaee;
}
.documentation {
background: var(--documentation-background);
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
margin: 1em 0;
}
.documentation pre,
.documentation code {
background-color: var(--documentation-background);
border-color: var(--documentation-border);
}
.documentation h2,
.documentation hr {
border-color: var(--documentation-border);
}
.documentation-header {
color: var(--documentation-headers-color);
background: var(--documentation-header-background);
font-weight: bold;
padding: 1em 1.5em;
}
.documentation-title {
font-size: 1.25em;
}
.documentation-subheader {
color: var(--documentation-headers-color);
background: var(--documentation-subheader-background);
padding: 0.5em 1.5em;
}
.documentation-subheader a,
.documentation-subheader a:visited,
.documentation-subheader a:active {
color: var(--documentation-link-color);
}
.documentation-documentation,
.documentation-links {
font-size: 0.85em;
}
.documentation-content {
padding: 1em 1.5em;
}
.mw-templatedata-doc-params dl:not(:empty) {
column-count: 3;
border-top: 1px solid var(--body-border);
margin-bottom: 0.5em;
}
.mw-templatedata-doc-params dt::after {
content: ":";
}
.mw-templatedata-doc-params dd,
.mw-templatedata-doc-params dt {
margin: 0.1em 2em;
min-width: auto;
}
.mw-templatedata-doc-muted {
color: var(--subtle-color);
font-style: italic;
}
:root {
--infobox-text-color: var(--text-color);
--table-header: #b1886f;
--table-subheader: #d1b9ad;
--table-body: #fff8ee;
--table-border: #e9d8cc;
}
.infobox {
font-size: 0.85em;
width: 300px;
border-collapse: collapse;
float: right;
table-layout: fixed;
margin: 0.5em 0 1em 1em;
}
.infobox .infobox-buttons {
display: flex;
flex-wrap: wrap;
justify-content: center;
grid-gap: 3px;
margin-bottom: 3px;
}
.infobox .infobox-buttons .button {
background: var(--table-header);
padding: 0 5px;
font-weight: bold;
flex: 1 1 20%;
max-width: 20%;
color: #fff;
}
.infobox tbody {
border: 1px solid var(--table-border);
background: var(--table-body);
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(231, 215, 199, 0.5);
}
.infobox .infobox-header {
background: var(--table-header);
padding: 0.5em 0;
text-align: center;
color: #fff;
font-size: 1.15em;
font-weight: bold;
line-height: 1.4em;
}
.infobox .infobox-image {
text-align: center;
background: var(--body-main);
}
.infobox .infobox-subheader {
background: var(--table-subheader);
font-weight: bold;
text-align: center;
color: #fff;
}
.infobox .infobox-padding {
backgound: var(--table-body);
}
.infobox tr td:not(.infobox-padding) {
padding: 0.2em 0.5em;
}
.infobox th:not(.infobox-header):not(.infobox-subheader):not(.infobox-nested) {
border-right: 2px solid var(--table-subheader);
text-align: right;
padding: 0.2em 0.5em;
}
.hidden {
display: none;
}
ol.references,
.reflist {
font-size: 90%;
}
.reflist {
list-style-type: decimal;
}
.reflist .references {
font-size: 100%;
list-style-type: inherit;
}
.reflist-lower-alpha {
list-style-type: lower-alpha;
}
ol.references li:target,
sup.reference:target {
background-color: var(--body-light);
}
.hideQuotes .refhide {
display: none;
}
:root {
--messagebox-obsolete-background: #cfcfcf;
--messagebox-obsolete-border: #464646;
--messagebox-obsolete-color: var(--text-color);
--messagebox-obsolete-link-color: #6c6c6c;
--messagebox-info-background: #ebebeb;
--messagebox-info-border: #898989;
--messagebox-info-color: var(--text-color);
--messagebox-info-link-color: #6c6c6c;
--messagebox-action-background: #c7e8fa;
--messagebox-action-border: #0b5884;
--messagebox-action-color: var(--text-color);
--messagebox-action-link-color: #03436b;
--messagebox-warn-background: #dfc0ba;
--messagebox-warn-border: #861c10;
--messagebox-warn-color: var(--text-color);
--messagebox-warn-link-color: #8e221a;
--messagebox-safe-background: #d8f0d3;
--messagebox-safe-border: #1b8408;
--messagebox-safe-color: var(--text-color);
--messagebox-safe-link-color: #1b8408;
--messagebox-disambig-background: #ebebeb;
--messagebox-disambig-border: #898989;
--messagebox-disambig-color: var(--text-color);
--messagebox-disambig-link-color: #6c6c6c;
--messagebox-discord-background: #5865f2;
--messagebox-discord-border: #4c57d0;
--messagebox-discord-link-color: #d2e5fc;
}
.mw-message-box,
.mw-message-box-error,
.mw-message-box-warning,
.mw-message-box-success,
.usermessage {
color: var(--text-color);
}
.messagebox {
width: 65%;
margin: 0.5em auto;
border-left: 15px solid;
border-color: var(--body-dark);
background-color: var(--body-light);
box-sizing: border-box;
}
.messagebox.obsolete {
background-color: var(--messagebox-obsolete-background);
border-color: var(--messagebox-obsolete-border);
color: var(--messagebox-obsolete-color);
}
.messagebox.obsolete a,
.messagebox.obsolete a:visited,
.messagebox.obsolete a:active {
color: var(--messagebox-obsolete-link-color);
}
.messagebox.info {
background-color: var(--messagebox-info-background);
border-color: var(--messagebox-info-border);
color: var(--messagebox-info-color);
}
.messagebox.info a,
.messagebox.info a:visited,
.messagebox.info a:active {
color: var(--messagebox-info-link-color);
}
.messagebox.action {
background-color: var(--messagebox-action-background);
border-color: var(--messagebox-action-border);
color: var(--messagebox-action-color);
}
.messagebox.action a,
.messagebox.action a:visited,
.messagebox.action a:active {
color: var(--messagebox-action-link-color);
}
.messagebox.warn {
background-color: var(--messagebox-warn-background);
border-color: var(--messagebox-warn-border);
color: var(--messagebox-warn-color);
}
.messagebox.warn a,
.messagebox.warn a:visited,
.messagebox.warn a:active {
color: var(--messagebox-warn-link-color);
}
.messagebox.safe {
background-color: var(--messagebox-safe-background);
border-color: var(--messagebox-safe-border);
color: var(--messagebox-safe-color);
}
.messagebox.safe a,
.messagebox.safe a:visited,
.messagebox.safe a:active {
color: var(--messagebox-safe-link-color);
}
.messagebox.disambig {
background-color: var(--messagebox-disambig-background);
border-color: var(--messagebox-disambig-border);
color: var(--messagebox-disambig-color);
}
.messagebox.disambig a,
.messagebox.disambig a:visited,
.messagebox.disambig a:active {
color: var(--messagebox-disambig-link-color);
}
.messagebox.discord {
background-color: var(--messagebox-discord-background);
border-color: var(--messagebox-discord-border);
color: #fff;
}
.messagebox.discord a,
.messagebox.discord a:visited,
.messagebox.discord a:active {
color: var(--messagebox-discord-link-color);
}
.messagebox.discord a.external,
.messagebox.discord a:visited.external,
.messagebox.discord a:active.external {
font-style: italic;
}
.messagebox.stub {
width: 40%;
}
.messagebox.hasdialogue {
padding: 0 10px;
width: auto;
}
:root {
--byline-arrow-filter: invert(29%) sepia(0%) saturate(376%) hue-rotate(172deg) brightness(87%) contrast(80%);
--tile-border-color: var(--body-border);
--tile-background-color: var(--body-light);
--tile-link-button-color: #f5e9db;
--tile-link-button-highlight-color: #dfccb0;
--tile-dark-color: #fff;
--tile-dark-bg: #5d6773;
--tile-dark-link-color: #ccc;
--tile-dark-byline-color: rgba(255, 255, 255, 0.7);
--tile-dark-header-color: #fff;
}
.tile {
background: var(--tile-background-color);
border: 1px solid var(--tile-border-color);
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
padding: 1.5em 2em 1em;
max-width: 40em;
}
.tile h2 {
font-size: 1.4em;
font-weight: bold;
border: none;
margin: 0 0 0.4em;
}
.tile .byline + h2 {
margin-top: -0.5em;
}
.tile.dark {
color: var(--tile-dark-color);
background: var(--tile-dark-bg);
border: none;
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.3);
}
.tile.dark h2 {
color: var(--tile-dark-header-color);
}
.tile.dark a {
color: var(--tile-dark-link-color);
}
.tile.dark .byline {
color: var(--tile-dark-byline-color);
}
.byline {
font-size: 0.9em;
color: var(--byline-color);
}
.byline a {
color: var(--byline-color);
}
.tile-row {
display: flex;
flex-flow: row wrap;
margin-bottom: 1em;
}
.tile-halves {
display: flex;
flex-flow: row wrap;
border: 1px solid var(--tile-border-color);
background: var(--tile-background-color);
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
}
.tile-halves h2 {
font-size: 1.4em;
font-weight: bold;
border: none;
margin: 0 0 0.4em;
}
.tile-halves .byline + h2 {
margin-top: -0.5em;
}
.tile-top {
width: 100%;
padding: 1.3rem 1.5rem 0.6rem;
}
.tile-top.tile-image {
display: flex;
align-items: center;
background-color: var(--byline-color);
overflow: hidden;
padding: 0;
height: 13vw;
max-height: 12em;
transition: 0.4s ease-out;
}
.tile-halves:hover .tile-top.tile-image img {
transform: scale(1.1);
transition: 0.5s ease-out;
}
.tile-top.tile-image a {
width: 100%;
}
.tile-top.tile-image img {
width: 100%;
object-fit: cover;
max-height: 200px;
transition: 0.4s ease-out;
}
.tile-bottom {
background: var(--tile-background-color);
border-top: 1px solid var(--tile-border-color);
width: 100%;
padding: 1rem 1.5rem 0.6rem;
}
.tile-bottom.link-button {
align-self: flex-end;
padding: 0;
}
.tile-bottom.link-button a {
display: block;
text-align: center;
padding: 0.75em 1.5em 0.8em;
text-decoration: none;
}
.tile-bottom.read-more {
background: var(--tile-link-button-color);
transition: 0.3s ease-out;
}
.tile-bottom.read-more a {
color: var(--byline-color);
font-weight: bold;
text-align: right;
}
.tile-bottom.read-more:hover {
background: var(--tile-link-button-highlight-color);
}
.tile-bottom.read-more:hover .arrow {
transform: translateX(50%);
}
.tile-bottom.read-more .arrow {
filter: var(--byline-arrow-filter);
margin-left: 0.4em;
transition: 0.3s ease-out;
}
body.page-Main_Page.action-view .catlinks,
body.page-Main_Page.action-view #contentSub,
body.page-Main_Page.action-view #firstHeading,
body.page-Main_Page.action-view #siteNotice {
display: none;
}
body.page-Main_Page .mw-parser-output {
max-width: 75em;
margin: 0 auto;
}
body.page-Main_Page.action-view .catlinks,
body.page-Main_Page.action-view #contentSub,
body.page-Main_Page.action-view #siteNotice {
display: none;
}
.mainpage-header {
display: flex;
margin: 2.6em 1.75em 1.5em;
}
.mainpage-header .header-intro {
flex: 2;
}
.mainpage-header .header-intro h1 {
font-size: 2.5em;
font-weight: bold;
border: none;
margin: 0 0 0.15em;
}
.mainpage-header .header-intro p {
font-size: 1.1em;
line-height: 1.7em;
}
.mainpage-header .header-stats {
flex: 1;
display: flex;
justify-content: center;
align-items: center;
margin-top: -1em;
}
.mainpage-body {
display: grid;
grid-template-areas: "event event event" "update update update" "content content content" "left left right";
gap: 0.9rem;
grid-template-columns: repeat(3, 1fr);
}
.mainpage-body h2 a {
color: var(--text-color);
}
.mainpage-body .tile {
padding-left: 1.75em;
padding-right: 1.75em;
max-width: 100%;
}
.mainpage-body .tile-row {
width: 100%;
margin-bottom: 0;
}
.mainpage-body .tile-row {
display: grid;
gap: 0.9rem;
}
.mainpage-contents.tile-row {
display: flex;
}
.mainpage-contents.tile-row .tile-top {
height: 5.5rem;
}
.mainpage-left {
grid-area: left;
flex: 2;
display: flex;
flex-flow: column wrap;
}
.mainpage-left > * {
margin: 0 0 0.9rem;
}
.mainpage-right {
grid-area: right;
flex: 1;
display: flex;
flex-flow: column wrap;
}
.mainpage-right > * {
margin: 0 0 0.9rem;
}
.arrow {
background: url('filepath://White-chevron.svg') no-repeat;
display: inline-block;
height: 0.7rem;
width: 0.45rem;
vertical-align: middle;
}
.arrow.dark {
filter: invert(80%);
}
.mainpage-contents {
grid-area: content;
grid-template-columns: repeat(6, 1fr);
}
.mainpage-contents .tile-halves {
flex: 1;
}
.mainpage-contents .tile-top {
height: 4.5rem;
position: relative;
}
.mainpage-contents .tile-top.tile-image img {
height: auto;
}
.mainpage-contents h2 {
margin: 0;
padding: 0;
}
.mainpage-contents .tile-bottom.link-button a {
padding: 0.75em 0.2em;
}
.popular-pages ul {
display: grid;
grid-template-columns: repeat(3, 1fr);
grid-gap: 0.6em;
margin: 1em 0 0.7em 0;
}
.mp-popular-page-light {
display: flex;
align-items: center;
background-color: var(--button-background);
transition: 100ms;
}
.mp-popular-page-light a {
flex: 1;
display: block;
color: #fff;
font-weight: bold;
text-align: center;
text-decoration: none;
padding: 0.7em 1em;
}
.mp-popular-page-light:hover {
filter: brightness(115%);
transition: 100ms;
}
.mainpage-social {
border: none;
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.3);
}
.mainpage-social .tile-top {
display: flex;
align-items: center;
padding: 1em 1.5em;
}
.mainpage-social .tile-top a {
flex: 1;
position: relative;
text-decoration: none;
}
.mainpage-social .tile-top a:hover .arrow {
transform: translateX(50%);
}
.mainpage-social .tile-bottom {
border: none;
padding: 1em 1.75em;
}
.mainpage-social .tile-bottom p {
color: #fff;
font-weight: bold;
font-size: 0.9em;
text-align: center;
text-transform: uppercase;
letter-spacing: 0.03em;
margin: 0;
}
.mainpage-social .social-icon {
margin-right: 0.75em;
text-align: center;
width: 60px;
}
.mainpage-social .social-header {
color: #fff;
font-weight: bold;
font-size: 1.15em;
margin: 0.5em 0 -0.15em;
}
.mainpage-social .server-tagline {
color: rgba(255, 255, 255, 0.9);
margin-bottom: 0.5em;
}
.mainpage-social .arrow {
position: absolute;
top: calc(50% - .5em);
right: 0;
height: 1em;
width: 0.7em;
background-size: 0.7em 1em;
transition: 0.3s ease-out;
}
.mainpage-social.mainpage-discord .tile-top {
background: #5865f2;
}
.mainpage-social.mainpage-discord .tile-bottom {
background: #525ee0;
}
.mainpage-social.mainpage-twitter .tile-top {
background: #15202b;
}
.mainpage-social.mainpage-twitter .tile-bottom {
background: #121c26;
}
.mainpage-editing {
border: none;
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.3);
}
.mainpage-editing .tile-top {
background: #438ab5;
}
.mainpage-editing .tile-bottom {
background: #3980ab;
border: none;
padding: 0.8rem 1.5rem 0.4rem;
}
.mainpage-editing h2,
.mainpage-editing a {
color: #fff;
}
.mainpage-editing p {
color: rgba(255, 255, 255, 0.9);
}
.mainpage-editing ul {
list-style-image: url('filepath://Transparent-chevron.svg');
}
@media only screen and (max-width: 1200px) {
.mainpage-contents {
grid-template-columns: repeat(3, 1fr);
}
}
@media only screen and (max-width: 1000px) {
.mainpage-body {
grid-template-areas: "event event event" "update update update" "content content content" "left left left" "right right right";
}
.mainpage-recent-updates {
grid-template-columns: repeat(2, 1fr);
}
.mainpage-recent-updates .tile-halves:last-child {
display: none;
}
.mainpage-recent-updates .tile-halves:hover .tile-top img {
transform: scale(1.04);
}
.mainpage-recent-updates .tile-top {
height: 18vw;
min-height: 9em;
}
.mainpage-header .header-stats {
display: none;
}
.mainpage-left > *:last-child,
.mainpage-right > *:last-child {
margin-bottom: 0;
}
.popular-pages ul {
grid-template-columns: repeat(2, 1fr);
}
}
@media only screen and (max-width: 720px) {
.mainpage-recent-updates {
grid-template-columns: none;
}
.mainpage-recent-updates .tile-halves:last-child {
display: flex;
}
.mainpage-contents {
grid-template-columns: repeat(2, 1fr);
}
}
.mw-prefs-buttons {
background-color: var(--body-main);
border-top-color: var(--body-border);
box-shadow: none;
}
.mw-prefs-tabs-wrapper.oo-ui-panelLayout-framed,
.mw-prefs-tabs > .oo-ui-menuLayout-content > .oo-ui-indexLayout-stackLayout > .oo-ui-tabPanelLayout {
border-color: var(--body-border);
}
.mw-htmlform-ooui .mw-htmlform-matrix tbody tr:nth-child(even) td {
background-color: var(--body-light);
}
.mw-htmlform-ooui .mw-htmlform-matrix tbody tr:hover td {
background-color: var(--body-mid);
}
:root {
--rc-positive-color: #407813;
--rc-negative-color: #b41e0f;
}
.mw-plusminus-pos {
color: var(--rc-positive-color);
}
.mw-plusminus-neg {
color: var(--rc-negative-color);
}
.client-js .mw-recentchanges-toplinks:not(.mw-recentchanges-toplinks-collapsed) {
border-color: var(--body-border);
background-color: var(--body-light);
border-radius: 2px;
}
.mw-rcfilters-ui-filterTagMultiselectWidget-wrapper-content-title {
color: var(--text-color);
}
.mw-rcfilters-ui-filterTagMultiselectWidget-emptyFilters {
color: var(--byline-color);
}
.mw-rcfilters-ui-filterTagMultiselectWidget.oo-ui-widget-enabled .oo-ui-tagMultiselectWidget-handle {
background-color: var(--ooui-interface);
border-color: var(--ooui-interface-border);
}
.mw-rcfilters-ui-filterTagMultiselectWidget-views-select-widget.oo-ui-widget {
border-color: var(--ooui-interface-border);
}
.mw-rcfilters-collapsed .mw-rcfilters-ui-filterTagMultiselectWidget {
border-bottom-color: var(--ooui-interface-border);
}
.mw-rcfilters-ui-menuSelectWidget-footer {
background-color: var(--ooui-interface);
border-color: var(--ooui-interface-border);
}
.mw-rcfilters-ui-viewSwitchWidget label.oo-ui-labelWidget {
color: var(--byline-color);
}
.mw-rcfilters-ui-tagItemWidget-popup-content {
color: var(--ooui-text);
}
.mw-changeslist-legend,
.mw-rcfilters-ui-changesListWrapperWidget .mw-changeslist-legend {
background-color: var(--body-light);
border-color: var(--body-dark);
}
.mw-rcfilters-ui-changesListWrapperWidget-previousChangesIndicator {
border-color: var(--sidebar);
}
.client-js .mw-changeslist ul,
.client-js .mw-changeslist table.mw-enhanced-rc {
margin-left: 0;
}
.mw-rcfilters-ui-watchlistTopSectionWidget-separator {
border-color: var(--sidebar);
}
.mw-rcfilters-ui-itemMenuOptionWidget-header {
border-bottom-color: var(--ooui-interface);
background-color: var(--ooui-interface-border);
}
.mw-rcfilters-ui-itemMenuOptionWidget:not(:last-child):not(.mw-rcfilters-ui-itemMenuOptionWidget-identifier-talk) {
border-bottom-color: var(--ooui-normal-border);
}
.mw-rcfilters-ui-itemMenuOptionWidget-label-title,
.mw-rcfilters-ui-itemMenuOptionWidget-label-desc {
color: var(--text-color);
}
.mw-rcfilters-ui-filterMenuOptionWidget.oo-ui-flaggedElement-muted:not(.oo-ui-optionWidget-selected) {
background-color: var(--body-main);
}
.mw-rcfilters-ui-filterMenuOptionWidget.oo-ui-flaggedElement-muted .mw-rcfilters-ui-itemMenuOptionWidget-label-title,
.mw-rcfilters-ui-filterMenuOptionWidget.oo-ui-flaggedElement-muted .mw-rcfilters-ui-itemMenuOptionWidget-label-desc {
color: var(--subtle-color);
}
.mw-rcfilters-ui-filterMenuSectionOptionWidget {
background-color: var(--body-mid);
}
.mw-rcfilters-ui-filterMenuSectionOptionWidget-header-title.oo-ui-labelElement-label {
color: var(--ooui-text);
}
.mw-rcfilters-ui-filterMenuHeaderWidget-title {
color: var(--ooui-text);
}
.mw-rcfilters-ui-filterMenuHeaderWidget-header {
border-bottom-color: var(--ooui-interface-border);
background-color: var(--ooui-interface);
}
.mw-rcfilters-ui-itemMenuOptionWidget-view-namespaces {
border-top-color: var(--ooui-interface-border);
}
.mw-rcfilters-ui-datePopupWidget {
border-color: var(--ooui-interface-border);
}
.mw-rcfilters-ui-datePopupWidget .mw-rcfilters-ui-valuePickerWidget-title {
color: var(--byline-color);
}
.mw-rcfilters-ui-savedLinksListItemWidget-label {
color: var(--ooui-accent);
}
.client-js .mw-changeslist.mw-rcfilters-ui-changesListWrapperWidget-highlighted ul,
.client-js .mw-changeslist.mw-rcfilters-ui-changesListWrapperWidget-highlighted table.mw-enhanced-rc {
margin-left: 1.5em;
}
.page-Special_CreateAccount .mw-ui-container,
.page-Special_UserLogin .mw-ui-container {
max-width: 64rem;
margin: 0 auto;
}
.mw-number-text {
color: var(--byline-color);
}
.mw-body-content .mw-number-text h3 {
color: var(--text-color);
}
#mw-indicator-mw-helplink a {
background: none;
padding: 0;
display: flex;
align-items: center;
}
#mw-indicator-mw-helplink a::before {
content: '';
margin-right: 5px;
-webkit-mask: url("/resources/src/mediawiki.helplink/images/helpNotice.svg?46d34") no-repeat 50% 50% / contain;
mask: url("/resources/src/mediawiki.helplink/images/helpNotice.svg?46d34") no-repeat 50% 50% / contain;
background: var(--text-color);
height: 20px;
width: 20px;
}
.results-info {
color: inherit;
}
.mw-search-profile-tabs {
background-color: var(--body-mid);
border-color: transparent;
}
.search-types .current a {
color: inherit;
}
#mw-searchoptions {
background-color: var(--body-mid);
border-color: transparent;
}
#mw-searchoptions .divider {
border-color: var(--body-border);
}
#mw-searchoptions h4 {
font-family: inherit;
}
#mw-searchoptions .oo-ui-labelElement:nth-of-type(odd) {
font-weight: bold;
}
.searchresult {
line-height: 1.5;
}
.searchalttitle,
#mw-search-interwiki li {
font-size: 90%;
}
.mw-search-result-data {
color: var(--byline-color);
}
.page-Special_ListFiles a.image img {
width: inherit;
height: inherit;
}
.page-Special_ListFiles .TablePager_col_thumb {
text-align: center;
}
#editcount table[border="1"] {
background-color: var(--body-main) !important;
border-color: var(--wikitable-border) !important;
margin-top: 0.5em;
}
#editcount table[border="1"] th,
#editcount table[border="1"] td {
padding: 0.2em 0.4em;
}
#editcount table[border="1"] th {
background-color: var(--wikitable-header-bg);
border: 1px solid var(--wikitable-border);
}
#editcount table[border="1"] td {
border: 1px solid var(--wikitable-border);
}
#editcount table[border="1"] tr:nth-child(odd) {
background-color: var(--body-light);
}
.mw-echo-ui-notificationBadgeButtonPopupWidget-popup > .oo-ui-popupWidget-popup .mw-echo-ui-placeholderItemWidget {
background-color: inherit;
}
table.mw-interwikitable.body td.mw-interwikitable-local-yes {
background-color: var(--table-yes-background);
color: var(--table-yes-color);
}
.mw-protectedpages-unknown {
color: var(--byline-color);
}
.watchlistredir,
.allpagesredirect {
font-style: italic;
}
.allpagesredirect:after {
color: var(--byline-color);
content: " (redirect)";
}
.mw-apisandbox-toolbar {
background: var(--body-main);
}
.oo-ui-menuOptionWidget .mw-apisandbox-flag {
color: var(--byline-color);
}
tr.mw-abusefilter-list-disabled,
tr.mw-abusefilter-list-disabled td {
color: var(--byline-color);
}
table.mw-abuselog-details {
background: var(--wikitable-bg);
border-color: var(--wikitable-border);
}
table.mw-abuselog-details th {
background: var(--wikitable-header-bg);
}
table.mw-abuselog-details th,
table.mw-abuselog-details td {
border-color: var(--wikitable-border);
}
.mw-abusefilter-log-hidden-entry {
color: var(--subtle-color);
}
body td.mw-abusefilter-history-changed {
background: var(--table-no-background);
}
div.mw-abusefilter-editor,
#mw-abusefilter-warn-preview,
#mw-abusefilter-disallow-preview {
border-color: var(--ooui-input-border);
}
.mw-destfile-warning {
border-color: var(--warningbox-border);
color: var(--text-color);
background-color: var(--warningbox-bg);
}
span.fileinput-button {
background-color: var(--ooui-normal);
border-color: var(--ooui-normal-border);
color: var(--ooui-text);
}
ul.fileupload-results li.ful-success {
background-color: var(--successbox-bg);
}
ul.fileupload-results li.ful-success a {
color: var(--link-color);
}
ul.fileupload-results li.ful-error {
background-color: var(--errorbox-bg);
}
.color-container {
display: flex;
margin: 2em auto;
width: 80%;
max-width: 60em;
}
.color-column {
flex: 1;
margin-right: 1em;
}
.color-column:last-child {
margin-right: 0;
}
.color-column h3 {
padding: 0;
}
.color-group {
color: #333;
padding: 1em 1.5em;
transition: 0.2s ease-out;
}
.color-group:hover {
transform: scale(1.03);
}
.color-group.dark {
color: #fff;
}
.color-group .variable,
.color-group .hexcode {
font-family: monospace;
font-size: 1.1em;
-webkit-user-select: all;
-moz-user-select: all;
-ms-user-select: all;
user-select: all;
margin: 0;
}
body.wgl-readermode .color-group .variable,
body.wgl-readermode .color-group .hexcode {
font-size: inherit;
}
.color-group .variable {
font-weight: bold;
}
#t-print,
#t-permalink {
display: none;
}
#filetoc {
border-radius: 2px;
background: var(--body-mid);
border-color: transparent;
margin: 0.5em auto;
text-align: center;
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
}
li.gallerybox div.thumb {
border: none;
background-color: var(--thumb-bg);
}
.smwfact {
display: none;
}
.list-header {
background-color: var(--body-mid);
color: inherit;
}
.editOptions {
color: var(--text-color);
background-color: var(--sourceeditor-background-secondary);
border-color: var(--sourceeditor-border);
}
.mw-json th,
.mw-json td {
border-color: var(--wikitable-border);
}
.mw-json td {
background: var(--wikitable-bg);
}
.mw-json th {
background: var(--wikitable-header-bg);
}
63e99e4cc90e936f4a94c7b06835828d2e8596e5
MediaWiki:Common.less/tiles.less
8
50
1570
78
2024-03-27T01:56:26Z
Merds
25
less
less
/* ---------------------
tiles
--------------------- */
// mainpage.less relies on this; check before changing anything
:root {
--byline-arrow-filter: invert(29%) sepia(0%) saturate(376%) hue-rotate(172deg) brightness(87%) contrast(80%); // match --byline-color
--tile-border-color: @BODY-BORDER;
--tile-background-color: @BODY-LIGHT;
--tile-link-button-color: #f5e9db;
--tile-link-button-highlight-color: saturate( darken( #e2d2ba, 2.5% ), 2% );
--tile-dark-color: @white;
--tile-dark-bg: @shuttle-gray;
--tile-dark-link-color: #ccc;
--tile-dark-byline-color: fade( @white, 70% );
--tile-dark-header-color: @white;
}
.tile {
background: var(--tile-background-color);
border: 1px solid var(--tile-border-color);
box-shadow: @box-shadow;
padding: 1.5em 2em 1em;
max-width: 40em;
h2 {
font-size: 1.4em;
font-weight: bold;
border: none;
margin: 0 0 .4em;
}
// reduce spacing when byline and heading appear together
// (which should be the only way bylines appear)
.byline + h2 {
margin-top: -0.5em;
}
&.dark {
color: var(--tile-dark-color);
background: var(--tile-dark-bg);
border: none;
box-shadow: @box-shadow-dark;
h2 {
color: var(--tile-dark-header-color);
}
a {
color: var(--tile-dark-link-color);
}
.byline {
color: var(--tile-dark-byline-color);
}
}
}
.byline {
font-size: .9em;
color: var(--byline-color);
a {
color: var(--byline-color);
}
}
/* ---------------------
tile halves
--------------------- */
// contains .tile or .tile-halves
.tile-row {
display: flex;
flex-flow: row wrap;
margin-bottom: 1em;
}
.tile-halves {
display: flex;
flex-flow: row wrap;
border: 1px solid var(--tile-border-color);
background: var(--tile-background-color);
box-shadow: @box-shadow;
h2 {
font-size: 1.4em;
font-weight: bold;
border: none;
margin: 0 0 .4em;
}
.byline + h2 {
margin-top: -0.5em;
}
}
// goes inside .tile-halves
.tile-top {
width: 100%;
padding: 1.3rem 1.5rem .6rem;
&.tile-image {
display: flex;
align-items: center; // vertically center images
background-color: var(--byline-color);
overflow: hidden;
padding: 0;
height: 13vw;
max-height: 12em;
transition: .4s ease-out;
.tile-halves:hover & img {
transform: scale(1.1);
transition: .5s ease-out;
}
a {
width: 100%;
}
img {
width: 100%;
object-fit: cover;
max-height: 200px;
transition: .4s ease-out;
}
}
}
// goes inside .tile-halves
.tile-bottom {
background: var(--tile-background-color);
border-top: 1px solid var(--tile-border-color);
width: 100%;
padding: 1rem 1.5rem .6rem;
&.link-button {
align-self: flex-end; // have link stick to the bottom
padding: 0;
a {
display: block;
text-align: center;
padding: .75em 1.5em .8em;
text-decoration: none;
}
}
// must be used in conjunction with .link-button
&.read-more {
background: var(--tile-link-button-color);
transition: .3s ease-out;
a {
color: var(--byline-color);
font-weight: bold;
text-align: right;
}
&:hover {
background: var(--tile-link-button-highlight-color);
.arrow {
transform: translateX(50%);
}
}
.arrow {
filter: var(--byline-arrow-filter);
margin-left: .4em;
transition: .3s ease-out;
}
}
}
0611e5ea643a6e0321724ef1847b413690cf976d
1571
1570
2024-03-27T01:59:14Z
Merds
25
less
less
/* ---------------------
tiles
--------------------- */
// mainpage.less relies on this; check before changing anything
:root {
--byline-arrow-filter: invert(29%) sepia(0%) saturate(376%) hue-rotate(172deg) brightness(87%) contrast(80%); // match --byline-color
--tile-border-color: @BODY_BORDER;
--tile-background-color: @BODY_LIGHT;
--tile-link-button-color: #f5e9db;
--tile-link-button-highlight-color: saturate( darken( #e2d2ba, 2.5% ), 2% );
--tile-dark-color: @white;
--tile-dark-bg: @shuttle-gray;
--tile-dark-link-color: #ccc;
--tile-dark-byline-color: fade( @white, 70% );
--tile-dark-header-color: @white;
}
.tile {
background: var(--tile-background-color);
border: 1px solid var(--tile-border-color);
box-shadow: @box-shadow;
padding: 1.5em 2em 1em;
max-width: 40em;
h2 {
font-size: 1.4em;
font-weight: bold;
border: none;
margin: 0 0 .4em;
}
// reduce spacing when byline and heading appear together
// (which should be the only way bylines appear)
.byline + h2 {
margin-top: -0.5em;
}
&.dark {
color: var(--tile-dark-color);
background: var(--tile-dark-bg);
border: none;
box-shadow: @box-shadow-dark;
h2 {
color: var(--tile-dark-header-color);
}
a {
color: var(--tile-dark-link-color);
}
.byline {
color: var(--tile-dark-byline-color);
}
}
}
.byline {
font-size: .9em;
color: var(--byline-color);
a {
color: var(--byline-color);
}
}
/* ---------------------
tile halves
--------------------- */
// contains .tile or .tile-halves
.tile-row {
display: flex;
flex-flow: row wrap;
margin-bottom: 1em;
}
.tile-halves {
display: flex;
flex-flow: row wrap;
border: 1px solid var(--tile-border-color);
background: var(--tile-background-color);
box-shadow: @box-shadow;
h2 {
font-size: 1.4em;
font-weight: bold;
border: none;
margin: 0 0 .4em;
}
.byline + h2 {
margin-top: -0.5em;
}
}
// goes inside .tile-halves
.tile-top {
width: 100%;
padding: 1.3rem 1.5rem .6rem;
&.tile-image {
display: flex;
align-items: center; // vertically center images
background-color: var(--byline-color);
overflow: hidden;
padding: 0;
height: 13vw;
max-height: 12em;
transition: .4s ease-out;
.tile-halves:hover & img {
transform: scale(1.1);
transition: .5s ease-out;
}
a {
width: 100%;
}
img {
width: 100%;
object-fit: cover;
max-height: 200px;
transition: .4s ease-out;
}
}
}
// goes inside .tile-halves
.tile-bottom {
background: var(--tile-background-color);
border-top: 1px solid var(--tile-border-color);
width: 100%;
padding: 1rem 1.5rem .6rem;
&.link-button {
align-self: flex-end; // have link stick to the bottom
padding: 0;
a {
display: block;
text-align: center;
padding: .75em 1.5em .8em;
text-decoration: none;
}
}
// must be used in conjunction with .link-button
&.read-more {
background: var(--tile-link-button-color);
transition: .3s ease-out;
a {
color: var(--byline-color);
font-weight: bold;
text-align: right;
}
&:hover {
background: var(--tile-link-button-highlight-color);
.arrow {
transform: translateX(50%);
}
}
.arrow {
filter: var(--byline-arrow-filter);
margin-left: .4em;
transition: .3s ease-out;
}
}
}
3a1b228e15190df7436186c77b2a53cdf11d3382
MediaWiki:Common.less/bstheme.less
8
786
1575
2024-03-27T11:41:40Z
Merds
25
prep
less
less
// <pre>
/* ===========================
[[Brighter Shores:Theme]]
=========================== */
.color-container {
display: flex;
margin: 2em auto;
width: 80%;
max-width: 60em;
}
.color-column {
flex: 1;
margin-right: 1em;
&:last-child {
margin-right: 0;
}
h3 {
padding: 0;
}
}
.color-group {
color: @mineshaft;
padding: 1em 1.5em;
transition: .2s ease-out;
&:hover {
transform: scale(1.03);
}
&.dark {
color: @white;
}
.variable,
.hexcode {
font-family: monospace;
font-size: 1.1em;
.user-select( all );
margin: 0;
// @pickled-bluewood doesn't fit on one line
body.wgl-readermode & {
font-size: inherit;
}
}
.variable {
font-weight: bold;
}
}
/*
// hide examples from appearing in toc
.page-RuneScape_Theme #toc a[href^="#The_quick_brown_fox"] {
display: none;
}
*/
c8d43bd202c797239ed6a3df76dcde28cb30db53
User:Merds/Sandbox
2
652
1579
1120
2024-03-27T11:50:39Z
Merds
25
/* Colours */
wikitext
text/x-wiki
This page contains information about the '''look of the Brighter Shores Wiki'''.
==Colours==
<div class="color-container">
<div class="color-column">
<h3>Body</h3>
<div class="color-group" style="background: #d1b9ad;">
<p class="variable">--body-border</p>
<p class="hexcode">#d1b9ad</p>
</div>
<div class="color-group-dark" style="background: #b1886f;">
<p class="variable">--body-dark</p>
<p class="hexcode">#b1886f</p>
</div>
<div class="color-group" style="background: #BF9D88;">
<p class="variable">--body-mid</p>
<p class="hexcode">#BF9D88</p>
</div>
<div class="color-group" style="background: #fff8ee;">
<p class="variable">--body-light</p>
<p class="hexcode">#fff8ee</p>
</div>
<div class="color-group" style="background: #feffff;">
<p class="variable">--body-main</p>
<p class="hexcode">#feffff</p>
</div>
<div class="color-group-dark" style="background: #173a4d;">
<p class="variable">--body-background-color</p>
<p class="hexcode">#173a4d</p>
</div>
</div>
5c0222a33da78d4a022e4ec287c3aa9bad09f92d
1580
1579
2024-03-27T11:56:52Z
Merds
25
WIP, colors are NOT final
wikitext
text/x-wiki
This page contains information about the '''look of the Brighter Shores Wiki'''.
==Colours==
<div class="color-container">
<div class="color-column">
<h3>Body</h3>
<div class="color-group" style="background: #d1b9ad;">
<p class="variable">--body-border</p>
<p class="hexcode">#d1b9ad</p>
</div>
<div class="color-group dark" style="background: #b1886f;">
<p class="variable">--body-dark</p>
<p class="hexcode">#b1886f</p>
</div>
<div class="color-group" style="background: #d1b9ad;">
<p class="variable">--body-mid</p>
<p class="hexcode">#d1b9ad</p>
</div>
<div class="color-group" style="background: #fff8ee;">
<p class="variable">--body-light</p>
<p class="hexcode">#fff8ee</p>
</div>
<div class="color-group" style="background: #feffff;">
<p class="variable">--body-main</p>
<p class="hexcode">#feffff</p>
</div>
<div class="color-group dark" style="background: #173a4d;">
<p class="variable">--body-background-color</p>
<p class="hexcode">#173a4d</p>
</div>
</div>
f3a886831377341897bd9373451085ac16e318e4
1583
1580
2024-03-27T14:27:56Z
Merds
25
wikitext
text/x-wiki
This page contains information about the '''look of the Brighter Shores Wiki'''.
==Colours==
<div class="color-container">
<div class="color-column">
<h3>Body</h3>
<div class="color-group" style="background: #e9d8cc;">
<p class="variable">--body-border</p>
<p class="hexcode">#e9d8cc</p>
</div>
<div class="color-group dark" style="background: #b1886f;">
<p class="variable">--body-dark</p>
<p class="hexcode">#b1886f</p>
</div>
<div class="color-group" style="background: #d1b9ad;">
<p class="variable">--body-mid</p>
<p class="hexcode">#d1b9ad</p>
</div>
<div class="color-group" style="background: #fff8ee;">
<p class="variable">--body-light</p>
<p class="hexcode">#fff8ee</p>
</div>
<div class="color-group" style="background: #feffff;">
<p class="variable">--body-main</p>
<p class="hexcode">#feffff</p>
</div>
<div class="color-group dark" style="background: #173a4d;">
<p class="variable">--body-background-color</p>
<p class="hexcode">#173a4d</p>
</div>
</div>
fe2fa95da706f0cfc4789680ce9eb941849e672e
Template:Incomplete
10
423
1586
678
2024-03-27T16:09:49Z
Merds
25
wikitext
text/x-wiki
{{MessageBox
|img = [[File:Raw basic bacon.png|32px|centre|link=]]
|This {{PageType}} or section is incomplete and could do with improvement.
|2={{#if:{{{1|}}}|Reason: ''{{{1}}}''<br />}}You can discuss this issue on the [{{fullurl:{{TALKPAGENAME}}}} talk page] or <span class="plainlinks">[{{fullurl:{{NAMESPACE}}:{{PAGENAME}}|action=edit}} edit]</span> this {{PageType}} to improve it.
}}<includeonly>{{#ifeq:{{{nocat|}}}|yes||{{#if:{{{1|}}}|{{#ifeq:{{NAMESPACE}}|{{ns:Transcript}}|[[Category:Incomplete transcripts]]|[[Category:Incomplete articles]]}}|[[Category:Incomplete without reason]]}}}}</includeonly><noinclude>{{/doc}}</noinclude>
afcd6963876d2581492efb0e9cadce01a3efeadc
Disambiguation
0
787
1587
2024-03-27T16:10:57Z
Merds
25
Redirected page to [[Category:Disambiguation]]
wikitext
text/x-wiki
#REDIRECT [[Category:Disambiguation]]
1399f637191e4c2008b1788566212667d0f847d8
Module:Infobox
828
102
1588
1504
2024-03-27T19:36:47Z
Gau Cho
5
Dropdown list support
Scribunto
text/plain
--[=[
-- For documentation, see [[Module:Infobox/doc]]
--]=]
-- <nowiki>
-- Edit button for unknown params
local editbutton = require('Module:Edit button')
local Infobox = {}
Infobox.__index = Infobox
--[[
Infobox class
-- config: table containing configuration parameters
-- params : definitions for each used value
-- args : values passed from the Template
---- the following values are treated specially: default_version, version, version1, version2...
--]]
function Infobox.new(config, params, args)
local obj = setmetatable({
args_raw = args, -- parameters (uncleaned)
args_parsed = {}, -- parsed parameters
args_smw = {}, -- parameters parsed for smw
infobox_name = nil, -- template name
param_names = {}, -- ordered param list
params = {}, -- param definitions
max_buttons = 6, -- If there are more buttons than the max, the buttons will become a dropdown menu
default_version = 1, -- default version to populate the infobox
versions = nil, -- number of versions
version_names = {}, -- title of each version (for selection and SMW)
rtable = nil, -- infobox table to return at the end
switch_datatable = '', -- datatable for javascript for switch infoboxes
categories = {}, -- set of categories
errors = {}, -- list of errors
__smw_debug = {}, -- debug data for smw subobjects
},
Infobox)
-- Step 1, setup config vars and count the versions
obj:config(config)
obj:parse_versions()
-- Step 2, process the params
obj:define_params(params)
obj:parse_params()
-- Table
obj:table_header()
obj:buttons()
-- Misc
obj:store_smw()
obj:parse_categories()
return obj
end
--[[
Refers to a param after being processed by the validating func
Used in add_row(), define_params() and is_param_defined()
--]]
function Infobox.param(param_name)
param = {
property = 'args_parsed',
param_name = param_name,
}
return param
end
--[[
Refers to a param in raw form as passed from the Template
Used in add_row(), define_params() and is_param_defined()
--]]
function Infobox.raw_param(param_name)
param = {
property = 'args_raw',
param_name = param_name,
}
return param
end
--[[
Refers to a param after being processed by the validating smw_func
Used in add_row(), define_params() and is_param_defined()
--]]
function Infobox.smw_param(param_name)
param = {
property = 'args_smw',
param_name = param_name,
}
return param
end
--[[
Checks to see if a param is defined.
-- param: Infobox.param(name), Infobox.raw_param(name) or Infobox.smw_param(name)
Returns 0 if param is never defined
1 if param is defined for a fraction of the versions
2 if param is defined for all versions
]]
function Infobox:is_param_defined(param)
local undefined = 0
local defined = 0
for version = 1, self.versions do
local value = self:get_param(param, version)
if value ~= nil then
defined = 1
else
undefined = 1
end
end
return 1 + defined - undefined
end
--[[
Adds a row to the infobox table
Parameter should be a table of cells, where each cell is a table with the following arguments:
-- tag : 'td' or 'th'
-- content : a string or Infobox.param(name), Infobox.raw_param(name), Infobox.smw_param(name)
-- attr (optional) : mw.html:attr({ arg1 = '1', ... })
-- css (optional) : mw.html:css({ arg1 = '1', ...)
-- class (optional) : mw.html:addClass('arg')
---- class also supports a table of values, even though mw.html:addClass() does not
---- common classes: infobox-subheader
-- rowspan (optional) : mw.html:attr('rowspan',arg)
-- colspan (optional) : mw.html:attr('colspan',arg)
-- title (optional) : mw.html:attr('title',arg)
The row itself may be assigned a single class by setting the value of the key addClass
-- addClass : mw.html:addClass('arg')
-- this function currently only supports a single string
--]]
function Infobox:add_row(...)
local args = ...
local _row = self.rtable:tag('tr')
-- For each cell
for _, v in ipairs(args) do
local _cell = _row:tag(v.tag)
-- Optional parameters
if v.attr then
_cell:attr(v.attr)
end
if v.colspan then
_cell:attr('colspan',v.colspan)
end
if v.rowspan then
_cell:attr('rowspan',v.rowspan)
end
if v.title then
_cell:attr('title',v.title)
end
if v.css then
_cell:css(v.css)
end
if v.class then
if type(v.class) == 'string' then
_cell:addClass(v.class)
-- mw.html:addClass() doesn't function with tables, add in a loop
elseif type(v.class) == 'table' then
for _, w in ipairs(v.class) do
_cell:addClass(w)
end
end
end
-- Populate the cell contents
local content = self:get_param(v.content, self.default_version)
if content == nil then
content = self.params[v.content.param_name].empty
end
_cell:wikitext(content)
-- Add the switch data if multiple values exist
data_attr_param = self:add_switch_data(v.content)
if data_attr_param then
_cell:attr('data-attr-param', data_attr_param)
end
end
-- allow classes to be defined on the whole row
if args.addClass then
_row:addClass(args.addClass)
end
return self
end
--[[
Adds a blank row of padding spanning the given number of columns
--]]
function Infobox:pad(colspan, class)
local tr = self.rtable:tag('tr'):tag('td'):attr('colspan', colspan or 1):addClass('infobox-padding')
if class then
tr:addClass(class)
end
return self
end
--[[
Adds a class to the table as a whole
--]]
function Infobox:addClass(arg)
self.rtable:addClass(arg)
return self
end
--[[
Setup config values
-- config: table containing configuration parameters
---- infobox_name = mandatory unique identifier for this infobox, used for css
---- max_buttuons = max number of switch buttons before using a dropdown list instead
--]]
function Infobox:config(config)
for k, v in pairs(config) do
if k == 'infobox_name' then
self.infobox_name = mw.ustring.gsub(v, '%s', '_')
elseif k == 'max_buttons' then
self.max_buttons = tonumber(v)
end
end
if self.infobox_name == nil then
table.insert(self.errors, 'infobox_name needs to be defined in Infobox.new()\'s config!')
end
return self
end
--[[
Counts the number of versions in the infobox
Populates Infobox.version_names
Sets Infobox.default_version
--]]
function Infobox:parse_versions()
-- Count the versions and setup self.version_names
local i = 1
while self.args_raw['version'..i] do
table.insert(self.version_names, self.args_raw['version'..i])
i = i + 1
end
self.versions = i - 1
-- Handle the no version case - check for a custom version_name
if self.versions == 0 then
table.insert(self.version_names, self.args_raw['version'] or 'DEFAULT')
end
-- Should either have 0 or 2+ versions
if self.versions == 1 then
table.insert(self.errors, 'There should be multiple versions or no versions. If defining a custom version name for a single entry, use "version=Name" instead of "version1=Name".')
self.versions = 0
end
-- Check for a default_version
if self.args_raw['default_version'] then
self.default_version = tonumber(self.args_raw['default_version'])
if self.default_version > self.versions then -- Make sure the default version exists
self.default_version = 1
end
end
end
--[[
Define all used parameters (except for default_version/version)
-- name : parameter name as used in the Template
-- func : function to validate and process the Template argument
-- If func is a function, will call func(Infobox.raw_param(name))
-- If func is a table, contains the following key-value pairs:
---- name : function
---- params : list of arguments to pass to the function (use Infobox.raw_param(),
---- Infobox.param() and Infobox.smw_param() to use arguments)
-- empty (optional) : text to display in the infobox if func returns nil, defaults to "? (edit)"
-- category_never : category to add if func returns nil for all versions
-- category_partial : category to add if func returns nil for some versions, but a value for other versions
-- category_incomplete : category to add if func returns nil for at least 1 version (i.e. category_never and category_partial combined)
-- category_complete : category to add if func returns a value for all versions
-- smw_property (optional) : if this string is defined, the parameter will be saved into smw
-- smw_func (optional) : function to validate and process the Template argument to save into smw
-- func is used by default if smw_func is not defined
--]]
function Infobox:define_params(...)
-- For every parameter, store its corresponding function to self.params
for _, v in ipairs(...) do
if v.name then
local param = {}
-- Copy the function
if type(v.func) == 'function' or type(v.func) == 'table' then
param.func = v.func
end
-- If smw_property is defined, then use smw_func, or default to func if it is not defined
if v.smw_property then
param.smw_property = v.smw_property
if type(v.smw_func) == 'function' or type(v.smw_func) == 'table' then
param.smw_func = v.smw_func
else
param.smw_func = param.func
end
end
-- If empty is not defined, default message is "? (edit)"
param.empty = v.empty or editbutton("'''?''' (edit)")
-- Get the category names
param.category_never = v.category_never
param.category_partial = v.category_partial
param.category_incomplete = v.category_incomplete
param.category_complete = v.category_complete
-- Store the param
self.params[v.name] = param
table.insert(self.param_names, v.name)
end
end
return self
end
--[[
Fetches a param value. If the value is nil, will return the default value instead
-- arg: a non-table value (string, number, etc), or Infobox.param(name), Infobox.raw_param(name), Infobox.smw_param(name)
-- version: 0/'' for default, or else a number
Returns arg if a constant
param value (or default value) if Infobox.param(name), Infobox.raw_param(name), Infobox.smw_param(name)
--]]
function Infobox:get_param(arg, version)
if version == 0 then
version = ''
end
-- Handle Infobox.param(), Infobox.raw_param(), Infobox.smw_param()
if type(arg) == 'table' then
local value = self[arg.property][arg.param_name..version]
-- If nil, grab default value (which could be nil as well)
if value == nil then
value = self[arg.property][arg.param_name]
end
return value
end
-- Everything else passes through unmodified (string, number, etc)
return arg
end
--[[
Calculates the parsed value of a param
-- param_name : param_name as a string
-- version : 0/'' for default, or else a number
-- smw : boolean, will use smw_func if true, or func is false
--]]
function Infobox:parse_param(param_name, version, smw)
if version == 0 then
version = ''
end
-- use func or smw_func depending on smw argument
local param = self.params[param_name]
local func = smw and param.smw_func or param.func
-- call functions by passing the param_name
if type(func) == 'function' then
return func(self:get_param(self.raw_param(param_name), version))
-- call tables by grabbing the function and reading the param arguments
elseif type(func) == 'table' then
local func_name = func.name
local func_params = func.params
local func_fetched_params = {}
for _, func_param in ipairs(func_params) do
table.insert(func_fetched_params, self:get_param(func_param, version))
end
return func_name(unpack(func_fetched_params))
else
table.insert(self.errors, 'Invalid param definition for '..param_name)
end
end
--[[
Parses all the param values (args_parsed and args_smw)
--]]
function Infobox:parse_params()
-- Calculate the param value for all params and all versions
for _, param_name in ipairs(self.param_names) do
for version=0, self.versions do
if version == 0 then
version = ''
end
-- get the parsed value
self.args_parsed[param_name..version] = self:parse_param(param_name, version, false)
-- Only get the smw value if smw_property is defined
if self.params[param_name].smw_property then
self.args_smw[param_name..version] = self:parse_param(param_name, version, true)
end
end
end
end
--[[
Creates the table header
--]]
function Infobox:table_header()
-- Create infobox table
self.rtable = mw.html.create('table')
:addClass('plainlinks')
:addClass('infobox')
:addClass('infobox-'..self.infobox_name)
-- Create the switch datatable if multiple versions
if self.versions > 1 then
self.rtable:addClass('infobox-switch')
self.switch_datatable = mw.html.create('div')
:addClass('infobox-switch-resources')
:addClass('infobox-resources-'..self.infobox_name)
:addClass('hidden')
self.switch_datatable:tag('span'):wikitext('Versions: '..self.versions)
self.switch_datatable:tag('span'):wikitext('Default version: '..self.default_version)
end
return self
end
--[[
If multiple versions exist, creates a set of buttons for switching
-- self.max_buttons : if the number of versions exceeds this value, a dropdown will be created instead
--]]
function Infobox:buttons()
if self.versions < 2 then
return
end
-- Button caption
local buttons = self.rtable:tag('caption')
:tag('div')
:addClass('infobox-buttons')
:attr('data-default-version', self.default_version)
if self.versions > self.max_buttons then
-- Dropdown list instead of buttons if too many versions
local select = buttons:tag('select'):addClass('infobox-buttons-select')
for version=1, self.versions do
select:tag('option')
:attr('value', version)
:attr('data-switch-index', version)
:attr('data-switch-anchor', '#'..self.version_names[version])
:wikitext(self.version_names[version])
end
else
-- Individual buttons if not too many versions
for version=1, self.versions do
buttons:tag('span')
:attr('data-switch-index', version)
:attr('data-switch-anchor', '#'..self.version_names[version])
:addClass('button')
:wikitext(self.version_names[version])
end
end
end
--[[
For each version, stores a subobject for all params that have smw_property defined
--]]
function Infobox:store_smw()
for version=1, self.versions do
-- Generate a subobject name
-- Reminder - subobject name cannot have a . in the first 5 characters
local subobject_name = 'Infobox.'..mw.title.getCurrentTitle().fullText..'#'..self.version_names[version]
-- Store each param that has smw_property defined and is not nil
local subobject = {}
for _, param_name in ipairs(self.param_names) do
local property = self.params[param_name].smw_property
if property then
value = self:get_param(self.smw_param(param_name), version)
if value ~= nil then
subobject[property] = value
end
end
end
-- Keep a copy for debugging
self.__smw_debug[subobject_name] = subobject
-- Save subobjects if not in mainspace
if mw.title.getCurrentTitle():inNamespace(0) then
local result = mw.smw.subobject(subobject, subobject_name)
if result ~= true then
table.insert(self.errors, 'SMW error: '..result.error)
end
end
end
end
--[[
Automatically add categories for each param as defined in define_params()
--]]
function Infobox:parse_categories()
for _, param_name in ipairs(self.param_names) do
local param = self.params[param_name]
local defined = self:is_param_defined(Infobox.param(param_name))
if defined == 0 and param.category_never then
self.categories[param.category_never] = 1
end
if defined == 1 and param.category_partial then
self.categories[param.category_partial] = 1
end
if defined < 2 and param.category_incomplete then
self.categories[param.category_incomplete] = 1
end
if defined == 2 and param.category_complete then
self.categories[param.category_complete] = 1
end
end
end
--[[
When a parameter is added into the table, add the alternative versions' data into the switch datatable
-- content : a non-table value (string, number, etc), or Infobox.param(name), Infobox.raw_param(name), Infobox.smw_param(name)
Returns the name of the parameter in the tag 'data-attr-param'
--]]
function Infobox:add_switch_data(content)
if self.versions <= 1 then
return false
end
-- Only needed for non-constant params
if type(content) ~= 'table' then
return false
end
-- Only needed if the param changes value between different versions
local first_value = self:get_param(content, 1)
local all_same = true
for version=2, self.versions do
if first_value ~= self:get_param(content, version) then
all_same = false
break
end
end
if all_same then
return false
end
-- Let's build the datatable
-- datum name: Prepend raw__ or smw__ if not a parsed argument
local name = content.param_name
if content.property == 'args_raw' then
name = 'raw__' + name
end
if content.property == 'args_smw' then
name = 'smw__' + name
end
data_param = self.switch_datatable:tag('span'):attr('data-attr-param', name)
-- Add each version to the datatable
for version=1, self.versions do
text = self:get_param(content, version)
if text == nil then
text = self.params[content.param_name].empty
end
data_param:tag('span'):attr('data-attr-index', version):wikitext(text)
end
-- return the 'data-attr-param' name
return name
end
--[[
Override tostring
--]]
function Infobox:__tostring()
-- Create error messages
local error_text = ''
for _, v in ipairs(self.errors) do
error_text = error_text..'<span class="mw-message-box-error">'..v..'</span>'
end
-- Create categories
local category_text = ''
for key, _ in pairs(self.categories) do
category_text = category_text..'[[Category:'..key..']]'
end
return tostring(self.rtable) .. tostring(self.switch_datatable) .. error_text .. category_text
end
--[[
Debug function
--]]
function Infobox:dump()
-- Temporarily detach the metatable so we don't override tostring anymore, allowing us to use dumpObject
setmetatable(self, nil)
mw.log(mw.dumpObject(self))
setmetatable(self, Infobox)
mw.log(tostring(self))
end
return Infobox
900bd686cb0d73fac2450ff705b63e29a86b5535
1589
1588
2024-03-27T19:40:57Z
Gau Cho
5
Scribunto
text/plain
--[=[
-- For documentation, see [[Module:Infobox/doc]]
--]=]
-- <nowiki>
-- Edit button for unknown params
local editbutton = require('Module:Edit button')
local Infobox = {}
Infobox.__index = Infobox
--[[
Infobox class
-- config: table containing configuration parameters
-- params : definitions for each used value
-- args : values passed from the Template
---- the following values are treated specially: default_version, version, version1, version2...
--]]
function Infobox.new(config, params, args)
local obj = setmetatable({
args_raw = args, -- parameters (uncleaned)
args_parsed = {}, -- parsed parameters
args_smw = {}, -- parameters parsed for smw
infobox_name = nil, -- template name
param_names = {}, -- ordered param list
params = {}, -- param definitions
max_buttons = 6, -- If there are more buttons than the max, the buttons will become a dropdown menu
default_version = 1, -- default version to populate the infobox
versions = nil, -- number of versions
version_names = {}, -- title of each version (for selection and SMW)
rtable = nil, -- infobox table to return at the end
switch_datatable = '', -- datatable for javascript for switch infoboxes
categories = {}, -- set of categories
errors = {}, -- list of errors
__smw_debug = {}, -- debug data for smw subobjects
},
Infobox)
-- Step 1, setup config vars and count the versions
obj:config(config)
obj:parse_versions()
-- Step 2, process the params
obj:define_params(params)
obj:parse_params()
-- Table
obj:table_header()
obj:buttons()
-- Misc
obj:store_smw()
obj:parse_categories()
return obj
end
--[[
Refers to a param after being processed by the validating func
Used in add_row(), define_params() and is_param_defined()
--]]
function Infobox.param(param_name)
param = {
property = 'args_parsed',
param_name = param_name,
}
return param
end
--[[
Refers to a param in raw form as passed from the Template
Used in add_row(), define_params() and is_param_defined()
--]]
function Infobox.raw_param(param_name)
param = {
property = 'args_raw',
param_name = param_name,
}
return param
end
--[[
Refers to a param after being processed by the validating smw_func
Used in add_row(), define_params() and is_param_defined()
--]]
function Infobox.smw_param(param_name)
param = {
property = 'args_smw',
param_name = param_name,
}
return param
end
--[[
Checks to see if a param is defined.
-- param: Infobox.param(name), Infobox.raw_param(name) or Infobox.smw_param(name)
Returns 0 if param is never defined
1 if param is defined for a fraction of the versions
2 if param is defined for all versions
]]
function Infobox:is_param_defined(param)
local undefined = 0
local defined = 0
for version = 1, self.versions do
local value = self:get_param(param, version)
if value ~= nil then
defined = 1
else
undefined = 1
end
end
return 1 + defined - undefined
end
--[[
Adds a row to the infobox table
Parameter should be a table of cells, where each cell is a table with the following arguments:
-- tag : 'td' or 'th'
-- content : a string or Infobox.param(name), Infobox.raw_param(name), Infobox.smw_param(name)
-- attr (optional) : mw.html:attr({ arg1 = '1', ... })
-- css (optional) : mw.html:css({ arg1 = '1', ...)
-- class (optional) : mw.html:addClass('arg')
---- class also supports a table of values, even though mw.html:addClass() does not
---- common classes: infobox-subheader
-- rowspan (optional) : mw.html:attr('rowspan',arg)
-- colspan (optional) : mw.html:attr('colspan',arg)
-- title (optional) : mw.html:attr('title',arg)
The row itself may be assigned a single class by setting the value of the key addClass
-- addClass : mw.html:addClass('arg')
-- this function currently only supports a single string
--]]
function Infobox:add_row(...)
local args = ...
local _row = self.rtable:tag('tr')
-- For each cell
for _, v in ipairs(args) do
local _cell = _row:tag(v.tag)
-- Optional parameters
if v.attr then
_cell:attr(v.attr)
end
if v.colspan then
_cell:attr('colspan',v.colspan)
end
if v.rowspan then
_cell:attr('rowspan',v.rowspan)
end
if v.title then
_cell:attr('title',v.title)
end
if v.css then
_cell:css(v.css)
end
if v.class then
if type(v.class) == 'string' then
_cell:addClass(v.class)
-- mw.html:addClass() doesn't function with tables, add in a loop
elseif type(v.class) == 'table' then
for _, w in ipairs(v.class) do
_cell:addClass(w)
end
end
end
-- Populate the cell contents
local content = self:get_param(v.content, self.default_version)
if content == nil then
content = self.params[v.content.param_name].empty
end
_cell:wikitext(content)
-- Add the switch data if multiple values exist
data_attr_param = self:add_switch_data(v.content)
if data_attr_param then
_cell:attr('data-attr-param', data_attr_param)
end
end
-- allow classes to be defined on the whole row
if args.addClass then
_row:addClass(args.addClass)
end
return self
end
--[[
Adds a blank row of padding spanning the given number of columns
--]]
function Infobox:pad(colspan, class)
local tr = self.rtable:tag('tr'):tag('td'):attr('colspan', colspan or 1):addClass('infobox-padding')
if class then
tr:addClass(class)
end
return self
end
--[[
Adds a class to the table as a whole
--]]
function Infobox:addClass(arg)
self.rtable:addClass(arg)
return self
end
--[[
Setup config values
-- config: table containing configuration parameters
---- infobox_name = mandatory unique identifier for this infobox, used for css
---- max_buttuons = max number of switch buttons before using a dropdown list instead
--]]
function Infobox:config(config)
for k, v in pairs(config) do
if k == 'infobox_name' then
self.infobox_name = mw.ustring.gsub(v, '%s', '_')
elseif k == 'max_buttons' then
self.max_buttons = tonumber(v)
end
end
if self.infobox_name == nil then
table.insert(self.errors, 'infobox_name needs to be defined in Infobox.new()\'s config!')
end
return self
end
--[[
Counts the number of versions in the infobox
Populates Infobox.version_names
Sets Infobox.default_version
--]]
function Infobox:parse_versions()
-- Count the versions and setup self.version_names
local i = 1
while self.args_raw['version'..i] do
table.insert(self.version_names, self.args_raw['version'..i])
i = i + 1
end
self.versions = i - 1
-- Handle the no version case - check for a custom version_name
if self.versions == 0 then
table.insert(self.version_names, self.args_raw['version'] or 'DEFAULT')
end
-- Should either have 0 or 2+ versions
if self.versions == 1 then
table.insert(self.errors, 'There should be multiple versions or no versions. If defining a custom version name for a single entry, use "version=Name" instead of "version1=Name".')
self.versions = 0
end
-- Check for a default_version
if self.args_raw['default_version'] then
self.default_version = tonumber(self.args_raw['default_version'])
if self.default_version > self.versions then -- Make sure the default version exists
self.default_version = 1
end
end
end
--[[
Define all used parameters (except for default_version/version)
-- name : parameter name as used in the Template
-- func : function to validate and process the Template argument
-- If func is a function, will call func(Infobox.raw_param(name))
-- If func is a table, contains the following key-value pairs:
---- name : function
---- params : list of arguments to pass to the function (use Infobox.raw_param(),
---- Infobox.param() and Infobox.smw_param() to use arguments)
-- empty (optional) : text to display in the infobox if func returns nil, defaults to "? (edit)"
-- category_never : category to add if func returns nil for all versions
-- category_partial : category to add if func returns nil for some versions, but a value for other versions
-- category_incomplete : category to add if func returns nil for at least 1 version (i.e. category_never and category_partial combined)
-- category_complete : category to add if func returns a value for all versions
-- smw_property (optional) : if this string is defined, the parameter will be saved into smw
-- smw_func (optional) : function to validate and process the Template argument to save into smw
-- func is used by default if smw_func is not defined
--]]
function Infobox:define_params(...)
-- For every parameter, store its corresponding function to self.params
for _, v in ipairs(...) do
if v.name then
local param = {}
-- Copy the function
if type(v.func) == 'function' or type(v.func) == 'table' then
param.func = v.func
end
-- If smw_property is defined, then use smw_func, or default to func if it is not defined
if v.smw_property then
param.smw_property = v.smw_property
if type(v.smw_func) == 'function' or type(v.smw_func) == 'table' then
param.smw_func = v.smw_func
else
param.smw_func = param.func
end
end
-- If empty is not defined, default message is "? (edit)"
param.empty = v.empty or editbutton("'''?''' (edit)")
-- Get the category names
param.category_never = v.category_never
param.category_partial = v.category_partial
param.category_incomplete = v.category_incomplete
param.category_complete = v.category_complete
-- Store the param
self.params[v.name] = param
table.insert(self.param_names, v.name)
end
end
return self
end
--[[
Fetches a param value. If the value is nil, will return the default value instead
-- arg: a non-table value (string, number, etc), or Infobox.param(name), Infobox.raw_param(name), Infobox.smw_param(name)
-- version: 0/'' for default, or else a number
Returns arg if a constant
param value (or default value) if Infobox.param(name), Infobox.raw_param(name), Infobox.smw_param(name)
--]]
function Infobox:get_param(arg, version)
if version == 0 then
version = ''
end
-- Handle Infobox.param(), Infobox.raw_param(), Infobox.smw_param()
if type(arg) == 'table' then
local value = self[arg.property][arg.param_name..version]
-- If nil, grab default value (which could be nil as well)
if value == nil then
value = self[arg.property][arg.param_name]
end
return value
end
-- Everything else passes through unmodified (string, number, etc)
return arg
end
--[[
Calculates the parsed value of a param
-- param_name : param_name as a string
-- version : 0/'' for default, or else a number
-- smw : boolean, will use smw_func if true, or func is false
--]]
function Infobox:parse_param(param_name, version, smw)
if version == 0 then
version = ''
end
-- use func or smw_func depending on smw argument
local param = self.params[param_name]
local func = smw and param.smw_func or param.func
-- call functions by passing the param_name
if type(func) == 'function' then
return func(self:get_param(self.raw_param(param_name), version))
-- call tables by grabbing the function and reading the param arguments
elseif type(func) == 'table' then
local func_name = func.name
local func_params = func.params
local func_fetched_params = {}
for _, func_param in ipairs(func_params) do
table.insert(func_fetched_params, self:get_param(func_param, version))
end
return func_name(unpack(func_fetched_params))
else
table.insert(self.errors, 'Invalid param definition for '..param_name)
end
end
--[[
Parses all the param values (args_parsed and args_smw)
--]]
function Infobox:parse_params()
-- Calculate the param value for all params and all versions
for _, param_name in ipairs(self.param_names) do
for version=0, self.versions do
if version == 0 then
version = ''
end
-- get the parsed value
self.args_parsed[param_name..version] = self:parse_param(param_name, version, false)
-- Only get the smw value if smw_property is defined
if self.params[param_name].smw_property then
self.args_smw[param_name..version] = self:parse_param(param_name, version, true)
end
end
end
end
--[[
Creates the table header
--]]
function Infobox:table_header()
-- Create infobox table
self.rtable = mw.html.create('table')
:addClass('plainlinks')
:addClass('infobox')
:addClass('infobox-'..self.infobox_name)
-- Create the switch datatable if multiple versions
if self.versions > 1 then
self.rtable:addClass('infobox-switch')
self.switch_datatable = mw.html.create('div')
:addClass('infobox-switch-resources')
:addClass('infobox-resources-'..self.infobox_name)
:addClass('hidden')
self.switch_datatable:tag('span'):wikitext('Versions: '..self.versions)
self.switch_datatable:tag('span'):wikitext('Default version: '..self.default_version)
end
return self
end
--[[
If multiple versions exist, creates a set of buttons for switching
-- self.max_buttons : if the number of versions exceeds this value, a dropdown will be created instead
--]]
function Infobox:buttons()
if self.versions < 2 then
return
end
-- Button caption
local buttons = self.rtable:tag('caption')
:tag('div')
:addClass('infobox-buttons')
:attr('data-default-version', self.default_version)
if self.versions > self.max_buttons then
-- Dropdown list instead of buttons if too many versions
local select = buttons:tag('select')
:addClass('infobox-buttons-select')
:attr('id', 'infobox-'..self.infobox_name)
:attr('name', 'infobox-'..self.infobox_name)
for version=1, self.versions do
select:tag('option')
:attr('value', version)
:attr('data-switch-index', version)
:attr('data-switch-anchor', '#'..self.version_names[version])
:wikitext(self.version_names[version])
end
else
-- Individual buttons if not too many versions
for version=1, self.versions do
buttons:tag('span')
:attr('data-switch-index', version)
:attr('data-switch-anchor', '#'..self.version_names[version])
:addClass('button')
:wikitext(self.version_names[version])
end
end
end
--[[
For each version, stores a subobject for all params that have smw_property defined
--]]
function Infobox:store_smw()
for version=1, self.versions do
-- Generate a subobject name
-- Reminder - subobject name cannot have a . in the first 5 characters
local subobject_name = 'Infobox.'..mw.title.getCurrentTitle().fullText..'#'..self.version_names[version]
-- Store each param that has smw_property defined and is not nil
local subobject = {}
for _, param_name in ipairs(self.param_names) do
local property = self.params[param_name].smw_property
if property then
value = self:get_param(self.smw_param(param_name), version)
if value ~= nil then
subobject[property] = value
end
end
end
-- Keep a copy for debugging
self.__smw_debug[subobject_name] = subobject
-- Save subobjects if not in mainspace
if mw.title.getCurrentTitle():inNamespace(0) then
local result = mw.smw.subobject(subobject, subobject_name)
if result ~= true then
table.insert(self.errors, 'SMW error: '..result.error)
end
end
end
end
--[[
Automatically add categories for each param as defined in define_params()
--]]
function Infobox:parse_categories()
for _, param_name in ipairs(self.param_names) do
local param = self.params[param_name]
local defined = self:is_param_defined(Infobox.param(param_name))
if defined == 0 and param.category_never then
self.categories[param.category_never] = 1
end
if defined == 1 and param.category_partial then
self.categories[param.category_partial] = 1
end
if defined < 2 and param.category_incomplete then
self.categories[param.category_incomplete] = 1
end
if defined == 2 and param.category_complete then
self.categories[param.category_complete] = 1
end
end
end
--[[
When a parameter is added into the table, add the alternative versions' data into the switch datatable
-- content : a non-table value (string, number, etc), or Infobox.param(name), Infobox.raw_param(name), Infobox.smw_param(name)
Returns the name of the parameter in the tag 'data-attr-param'
--]]
function Infobox:add_switch_data(content)
if self.versions <= 1 then
return false
end
-- Only needed for non-constant params
if type(content) ~= 'table' then
return false
end
-- Only needed if the param changes value between different versions
local first_value = self:get_param(content, 1)
local all_same = true
for version=2, self.versions do
if first_value ~= self:get_param(content, version) then
all_same = false
break
end
end
if all_same then
return false
end
-- Let's build the datatable
-- datum name: Prepend raw__ or smw__ if not a parsed argument
local name = content.param_name
if content.property == 'args_raw' then
name = 'raw__' + name
end
if content.property == 'args_smw' then
name = 'smw__' + name
end
data_param = self.switch_datatable:tag('span'):attr('data-attr-param', name)
-- Add each version to the datatable
for version=1, self.versions do
text = self:get_param(content, version)
if text == nil then
text = self.params[content.param_name].empty
end
data_param:tag('span'):attr('data-attr-index', version):wikitext(text)
end
-- return the 'data-attr-param' name
return name
end
--[[
Override tostring
--]]
function Infobox:__tostring()
-- Create error messages
local error_text = ''
for _, v in ipairs(self.errors) do
error_text = error_text..'<span class="mw-message-box-error">'..v..'</span>'
end
-- Create categories
local category_text = ''
for key, _ in pairs(self.categories) do
category_text = category_text..'[[Category:'..key..']]'
end
return tostring(self.rtable) .. tostring(self.switch_datatable) .. error_text .. category_text
end
--[[
Debug function
--]]
function Infobox:dump()
-- Temporarily detach the metatable so we don't override tostring anymore, allowing us to use dumpObject
setmetatable(self, nil)
mw.log(mw.dumpObject(self))
setmetatable(self, Infobox)
mw.log(tostring(self))
end
return Infobox
6fa3ddfb37ccaf2a2d0725559c9a25303dbd7b1c
1590
1589
2024-03-27T19:43:48Z
Gau Cho
5
Undo last 2 edits, mw.html doesn't seem to support select tags
Scribunto
text/plain
--[=[
-- For documentation, see [[Module:Infobox/doc]]
--]=]
-- <nowiki>
-- Edit button for unknown params
local editbutton = require('Module:Edit button')
local Infobox = {}
Infobox.__index = Infobox
--[[
Infobox class
-- config: table containing configuration parameters
-- params : definitions for each used value
-- args : values passed from the Template
---- the following values are treated specially: default_version, version, version1, version2...
--]]
function Infobox.new(config, params, args)
local obj = setmetatable({
args_raw = args, -- parameters (uncleaned)
args_parsed = {}, -- parsed parameters
args_smw = {}, -- parameters parsed for smw
infobox_name = nil, -- template name
param_names = {}, -- ordered param list
params = {}, -- param definitions
max_buttons = 6, -- If there are more buttons than the max, the buttons will become a dropdown menu
default_version = 1, -- default version to populate the infobox
versions = nil, -- number of versions
version_names = {}, -- title of each version (for selection and SMW)
rtable = nil, -- infobox table to return at the end
switch_datatable = '', -- datatable for javascript for switch infoboxes
categories = {}, -- set of categories
errors = {}, -- list of errors
__smw_debug = {}, -- debug data for smw subobjects
},
Infobox)
-- Step 1, setup config vars and count the versions
obj:config(config)
obj:parse_versions()
-- Step 2, process the params
obj:define_params(params)
obj:parse_params()
-- Table
obj:table_header()
obj:buttons()
-- Misc
obj:store_smw()
obj:parse_categories()
return obj
end
--[[
Refers to a param after being processed by the validating func
Used in add_row(), define_params() and is_param_defined()
--]]
function Infobox.param(param_name)
param = {
property = 'args_parsed',
param_name = param_name,
}
return param
end
--[[
Refers to a param in raw form as passed from the Template
Used in add_row(), define_params() and is_param_defined()
--]]
function Infobox.raw_param(param_name)
param = {
property = 'args_raw',
param_name = param_name,
}
return param
end
--[[
Refers to a param after being processed by the validating smw_func
Used in add_row(), define_params() and is_param_defined()
--]]
function Infobox.smw_param(param_name)
param = {
property = 'args_smw',
param_name = param_name,
}
return param
end
--[[
Checks to see if a param is defined.
-- param: Infobox.param(name), Infobox.raw_param(name) or Infobox.smw_param(name)
Returns 0 if param is never defined
1 if param is defined for a fraction of the versions
2 if param is defined for all versions
]]
function Infobox:is_param_defined(param)
local undefined = 0
local defined = 0
for version = 1, self.versions do
local value = self:get_param(param, version)
if value ~= nil then
defined = 1
else
undefined = 1
end
end
return 1 + defined - undefined
end
--[[
Adds a row to the infobox table
Parameter should be a table of cells, where each cell is a table with the following arguments:
-- tag : 'td' or 'th'
-- content : a string or Infobox.param(name), Infobox.raw_param(name), Infobox.smw_param(name)
-- attr (optional) : mw.html:attr({ arg1 = '1', ... })
-- css (optional) : mw.html:css({ arg1 = '1', ...)
-- class (optional) : mw.html:addClass('arg')
---- class also supports a table of values, even though mw.html:addClass() does not
---- common classes: infobox-subheader
-- rowspan (optional) : mw.html:attr('rowspan',arg)
-- colspan (optional) : mw.html:attr('colspan',arg)
-- title (optional) : mw.html:attr('title',arg)
The row itself may be assigned a single class by setting the value of the key addClass
-- addClass : mw.html:addClass('arg')
-- this function currently only supports a single string
--]]
function Infobox:add_row(...)
local args = ...
local _row = self.rtable:tag('tr')
-- For each cell
for _, v in ipairs(args) do
local _cell = _row:tag(v.tag)
-- Optional parameters
if v.attr then
_cell:attr(v.attr)
end
if v.colspan then
_cell:attr('colspan',v.colspan)
end
if v.rowspan then
_cell:attr('rowspan',v.rowspan)
end
if v.title then
_cell:attr('title',v.title)
end
if v.css then
_cell:css(v.css)
end
if v.class then
if type(v.class) == 'string' then
_cell:addClass(v.class)
-- mw.html:addClass() doesn't function with tables, add in a loop
elseif type(v.class) == 'table' then
for _, w in ipairs(v.class) do
_cell:addClass(w)
end
end
end
-- Populate the cell contents
local content = self:get_param(v.content, self.default_version)
if content == nil then
content = self.params[v.content.param_name].empty
end
_cell:wikitext(content)
-- Add the switch data if multiple values exist
data_attr_param = self:add_switch_data(v.content)
if data_attr_param then
_cell:attr('data-attr-param', data_attr_param)
end
end
-- allow classes to be defined on the whole row
if args.addClass then
_row:addClass(args.addClass)
end
return self
end
--[[
Adds a blank row of padding spanning the given number of columns
--]]
function Infobox:pad(colspan, class)
local tr = self.rtable:tag('tr'):tag('td'):attr('colspan', colspan or 1):addClass('infobox-padding')
if class then
tr:addClass(class)
end
return self
end
--[[
Adds a class to the table as a whole
--]]
function Infobox:addClass(arg)
self.rtable:addClass(arg)
return self
end
--[[
Setup config values
-- config: table containing configuration parameters
---- infobox_name = mandatory unique identifier for this infobox, used for css
---- max_buttuons = max number of switch buttons before using a dropdown list instead
--]]
function Infobox:config(config)
for k, v in pairs(config) do
if k == 'infobox_name' then
self.infobox_name = mw.ustring.gsub(v, '%s', '_')
elseif k == 'max_buttons' then
self.max_buttons = tonumber(v)
end
end
if self.infobox_name == nil then
table.insert(self.errors, 'infobox_name needs to be defined in Infobox.new()\'s config!')
end
return self
end
--[[
Counts the number of versions in the infobox
Populates Infobox.version_names
Sets Infobox.default_version
--]]
function Infobox:parse_versions()
-- Count the versions and setup self.version_names
local i = 1
while self.args_raw['version'..i] do
table.insert(self.version_names, self.args_raw['version'..i])
i = i + 1
end
self.versions = i - 1
-- Handle the no version case - check for a custom version_name
if self.versions == 0 then
table.insert(self.version_names, self.args_raw['version'] or 'DEFAULT')
end
-- Should either have 0 or 2+ versions
if self.versions == 1 then
table.insert(self.errors, 'There should be multiple versions or no versions. If defining a custom version name for a single entry, use "version=Name" instead of "version1=Name".')
self.versions = 0
end
-- Check for a default_version
if self.args_raw['default_version'] then
self.default_version = tonumber(self.args_raw['default_version'])
if self.default_version > self.versions then -- Make sure the default version exists
self.default_version = 1
end
end
end
--[[
Define all used parameters (except for default_version/version)
-- name : parameter name as used in the Template
-- func : function to validate and process the Template argument
-- If func is a function, will call func(Infobox.raw_param(name))
-- If func is a table, contains the following key-value pairs:
---- name : function
---- params : list of arguments to pass to the function (use Infobox.raw_param(),
---- Infobox.param() and Infobox.smw_param() to use arguments)
-- empty (optional) : text to display in the infobox if func returns nil, defaults to "? (edit)"
-- category_never : category to add if func returns nil for all versions
-- category_partial : category to add if func returns nil for some versions, but a value for other versions
-- category_incomplete : category to add if func returns nil for at least 1 version (i.e. category_never and category_partial combined)
-- category_complete : category to add if func returns a value for all versions
-- smw_property (optional) : if this string is defined, the parameter will be saved into smw
-- smw_func (optional) : function to validate and process the Template argument to save into smw
-- func is used by default if smw_func is not defined
--]]
function Infobox:define_params(...)
-- For every parameter, store its corresponding function to self.params
for _, v in ipairs(...) do
if v.name then
local param = {}
-- Copy the function
if type(v.func) == 'function' or type(v.func) == 'table' then
param.func = v.func
end
-- If smw_property is defined, then use smw_func, or default to func if it is not defined
if v.smw_property then
param.smw_property = v.smw_property
if type(v.smw_func) == 'function' or type(v.smw_func) == 'table' then
param.smw_func = v.smw_func
else
param.smw_func = param.func
end
end
-- If empty is not defined, default message is "? (edit)"
param.empty = v.empty or editbutton("'''?''' (edit)")
-- Get the category names
param.category_never = v.category_never
param.category_partial = v.category_partial
param.category_incomplete = v.category_incomplete
param.category_complete = v.category_complete
-- Store the param
self.params[v.name] = param
table.insert(self.param_names, v.name)
end
end
return self
end
--[[
Fetches a param value. If the value is nil, will return the default value instead
-- arg: a non-table value (string, number, etc), or Infobox.param(name), Infobox.raw_param(name), Infobox.smw_param(name)
-- version: 0/'' for default, or else a number
Returns arg if a constant
param value (or default value) if Infobox.param(name), Infobox.raw_param(name), Infobox.smw_param(name)
--]]
function Infobox:get_param(arg, version)
if version == 0 then
version = ''
end
-- Handle Infobox.param(), Infobox.raw_param(), Infobox.smw_param()
if type(arg) == 'table' then
local value = self[arg.property][arg.param_name..version]
-- If nil, grab default value (which could be nil as well)
if value == nil then
value = self[arg.property][arg.param_name]
end
return value
end
-- Everything else passes through unmodified (string, number, etc)
return arg
end
--[[
Calculates the parsed value of a param
-- param_name : param_name as a string
-- version : 0/'' for default, or else a number
-- smw : boolean, will use smw_func if true, or func is false
--]]
function Infobox:parse_param(param_name, version, smw)
if version == 0 then
version = ''
end
-- use func or smw_func depending on smw argument
local param = self.params[param_name]
local func = smw and param.smw_func or param.func
-- call functions by passing the param_name
if type(func) == 'function' then
return func(self:get_param(self.raw_param(param_name), version))
-- call tables by grabbing the function and reading the param arguments
elseif type(func) == 'table' then
local func_name = func.name
local func_params = func.params
local func_fetched_params = {}
for _, func_param in ipairs(func_params) do
table.insert(func_fetched_params, self:get_param(func_param, version))
end
return func_name(unpack(func_fetched_params))
else
table.insert(self.errors, 'Invalid param definition for '..param_name)
end
end
--[[
Parses all the param values (args_parsed and args_smw)
--]]
function Infobox:parse_params()
-- Calculate the param value for all params and all versions
for _, param_name in ipairs(self.param_names) do
for version=0, self.versions do
if version == 0 then
version = ''
end
-- get the parsed value
self.args_parsed[param_name..version] = self:parse_param(param_name, version, false)
-- Only get the smw value if smw_property is defined
if self.params[param_name].smw_property then
self.args_smw[param_name..version] = self:parse_param(param_name, version, true)
end
end
end
end
--[[
Creates the table header
--]]
function Infobox:table_header()
-- Create infobox table
self.rtable = mw.html.create('table')
:addClass('plainlinks')
:addClass('infobox')
:addClass('infobox-'..self.infobox_name)
-- Create the switch datatable if multiple versions
if self.versions > 1 then
self.rtable:addClass('infobox-switch')
self.switch_datatable = mw.html.create('div')
:addClass('infobox-switch-resources')
:addClass('infobox-resources-'..self.infobox_name)
:addClass('hidden')
self.switch_datatable:tag('span'):wikitext('Versions: '..self.versions)
self.switch_datatable:tag('span'):wikitext('Default version: '..self.default_version)
end
return self
end
--[[
If multiple versions exist, creates a set of buttons for switching
-- self.max_buttons : if the number of versions exceeds this value, a dropdown will be created instead
--]]
function Infobox:buttons()
if self.versions < 2 then
return
end
-- Button caption
local buttons = self.rtable:tag('caption')
:tag('div')
:addClass('infobox-buttons')
:attr('data-default-version', self.default_version)
-- Dropdown list instead of buttons if too many versions
if self.versions > self.max_buttons then
buttons:addClass('infobox-buttons-select')
end
-- Create all the buttons
for version=1, self.versions do
buttons:tag('span')
:attr('data-switch-index', version)
:attr('data-switch-anchor', '#'..self.version_names[version])
:addClass('button')
:wikitext(self.version_names[version])
end
end
--[[
For each version, stores a subobject for all params that have smw_property defined
--]]
function Infobox:store_smw()
for version=1, self.versions do
-- Generate a subobject name
-- Reminder - subobject name cannot have a . in the first 5 characters
local subobject_name = 'Infobox.'..mw.title.getCurrentTitle().fullText..'#'..self.version_names[version]
-- Store each param that has smw_property defined and is not nil
local subobject = {}
for _, param_name in ipairs(self.param_names) do
local property = self.params[param_name].smw_property
if property then
value = self:get_param(self.smw_param(param_name), version)
if value ~= nil then
subobject[property] = value
end
end
end
-- Keep a copy for debugging
self.__smw_debug[subobject_name] = subobject
-- Save subobjects if not in mainspace
if mw.title.getCurrentTitle():inNamespace(0) then
local result = mw.smw.subobject(subobject, subobject_name)
if result ~= true then
table.insert(self.errors, 'SMW error: '..result.error)
end
end
end
end
--[[
Automatically add categories for each param as defined in define_params()
--]]
function Infobox:parse_categories()
for _, param_name in ipairs(self.param_names) do
local param = self.params[param_name]
local defined = self:is_param_defined(Infobox.param(param_name))
if defined == 0 and param.category_never then
self.categories[param.category_never] = 1
end
if defined == 1 and param.category_partial then
self.categories[param.category_partial] = 1
end
if defined < 2 and param.category_incomplete then
self.categories[param.category_incomplete] = 1
end
if defined == 2 and param.category_complete then
self.categories[param.category_complete] = 1
end
end
end
--[[
When a parameter is added into the table, add the alternative versions' data into the switch datatable
-- content : a non-table value (string, number, etc), or Infobox.param(name), Infobox.raw_param(name), Infobox.smw_param(name)
Returns the name of the parameter in the tag 'data-attr-param'
--]]
function Infobox:add_switch_data(content)
if self.versions <= 1 then
return false
end
-- Only needed for non-constant params
if type(content) ~= 'table' then
return false
end
-- Only needed if the param changes value between different versions
local first_value = self:get_param(content, 1)
local all_same = true
for version=2, self.versions do
if first_value ~= self:get_param(content, version) then
all_same = false
break
end
end
if all_same then
return false
end
-- Let's build the datatable
-- datum name: Prepend raw__ or smw__ if not a parsed argument
local name = content.param_name
if content.property == 'args_raw' then
name = 'raw__' + name
end
if content.property == 'args_smw' then
name = 'smw__' + name
end
data_param = self.switch_datatable:tag('span'):attr('data-attr-param', name)
-- Add each version to the datatable
for version=1, self.versions do
text = self:get_param(content, version)
if text == nil then
text = self.params[content.param_name].empty
end
data_param:tag('span'):attr('data-attr-index', version):wikitext(text)
end
-- return the 'data-attr-param' name
return name
end
--[[
Override tostring
--]]
function Infobox:__tostring()
-- Create error messages
local error_text = ''
for _, v in ipairs(self.errors) do
error_text = error_text..'<span class="mw-message-box-error">'..v..'</span>'
end
-- Create categories
local category_text = ''
for key, _ in pairs(self.categories) do
category_text = category_text..'[[Category:'..key..']]'
end
return tostring(self.rtable) .. tostring(self.switch_datatable) .. error_text .. category_text
end
--[[
Debug function
--]]
function Infobox:dump()
-- Temporarily detach the metatable so we don't override tostring anymore, allowing us to use dumpObject
setmetatable(self, nil)
mw.log(mw.dumpObject(self))
setmetatable(self, Infobox)
mw.log(tostring(self))
end
return Infobox
c6399b9b7849b45a0542429a62080ea8bb9e60d7
Module:Infobox/doc
828
504
1591
1502
2024-03-28T01:12:09Z
Gau Cho
5
Add a short explanation of version1, version2, default_version
wikitext
text/x-wiki
{{documentation}}
{{ToC|right}}
==Creating a template step-by-step==
===Import Module:Infobox and Module:Param Parse===
<syntaxhighlight lang="lua">
local Infobox = require('Module:Infobox')
local parse = require('Module:Param Parse')
</syntaxhighlight>
===Unpack the frame arguments from the Template===
<syntaxhighlight lang="lua">
local p = {}
function p.main(frame)
local args = frame:getParent().args
...
</syntaxhighlight>
===Setup the Module config settings===
<syntaxhighlight lang="lua">
local config = {
infobox_name = 'Scenery',
}
</syntaxhighlight>
===Map your arguments to parsing functions===
{{Main|Module:Param Parse}}
Use the functions in [[Module:Param Parse]] to validate and format the data.
<syntaxhighlight lang="lua">
local params = {
{name = 'name', func = parse.has_content, smw_property = 'Name'},
{name = 'image', func = parse.image, smw_property = 'Image', smw_func = parse.image_smw, category_incomplete = 'Scenery missing Image'},
{name = 'examine', func = parse.has_content},
{name = 'episode', func = parse.episode, smw_property = 'Episode', smw_func = parse.episode_smw, category_incomplete = 'Scenery missing Episode'},
...
}
</syntaxhighlight>
===Define an Infobox object===
{{Main|Module:Infobox#new}}
<syntaxhighlight lang="lua">
local infobox = Infobox.new(config, params, args)
</syntaxhighlight>
===Create your table===
{{Main|Module:Infobox#create}}
<syntaxhighlight lang="lua">
infobox
:add_row{
{tag='th', content=Infobox.param('name'), class='infobox.subheader', colspan='2'},
}
:add_row{
{tag='td', content=Infobox.param('image'), colspan='2'},
}
:pad(2)
:add_row{
{tag='td', content='[[Examine]]'},
{tag='td', content=Infobox.param('examine')},
}
:add_row{
{tag='td', content='[[Episode]]'},
{tag='td', content=Infobox.param('episode')},
}
...
</syntaxhighlight>
===You're done!===
<syntaxhighlight lang="lua">
return infobox
end
return p
</syntaxhighlight>
==Functions==
=== Referring to params ===
Each parameter can have a different value for each version. In addition, there are 3 different representations of each value. Therefore, a parameter must be accessed via one of the 3 helper functions:
{| class="wikitable"
! helper function
! example
! explanation
|-
| Infobox.raw_param(name)
| "1000"
| Raw value as passed by the Template
|-
| Infobox.param(name)
| "1,000"
| Value formatted for display in the Infobox
|-
| Infobox.smw_param(name)
| 1000
| Value formatted to be saved as an SMW property
|}
=== Special params ===
These parameters are handled specially by the module:
{| class="wikitable"
! param
! explanation
|-
| version1, version2, version3
| Button label and SMW name for each switch version of the infobox
|-
| default_version
| The default version to display when the page is loaded
|-
| version
| If there is only a single version, you can use version to set the SMW name (default SMW name is "DEFAULT")
|}
=== Infobox.new(config, params, args) ===
Creates a new infobox. Automatically parses the arguments, creates SMW subobjects and adds categories.
<syntaxhighlight lang="lua">
local infobox = Infobox.new(config, params, args)
</syntaxhighlight>
==== config ====
There are only 2 parameters for config
<syntaxhighlight lang="lua">
local config = {
infobox_name = 'Scenery', -- mandatory unique identifier for css
max_buttons = 6, -- optional, defaults to 6, max number of switch buttons before using a dropdown list instead
}
</syntaxhighlight>
==== params ====
A list of parameters to be processed by the Infobox module
<syntaxhighlight lang="lua">
local params = {
{ name = <param>, func = <func>, ... },
...
}
</syntaxhighlight>
{| class="wikitable"
! key
! value
|-
| name
| parameter name as used in the Template
|-
| func
| A function in [[Module:Param Parse]] to validate and process the Template argument. You can also use a local function, but this is not recommended.
If func is a function, will call func(Infobox.raw_param(name)):
<syntaxhighlight lang="lua">
{name = <param>, func = <func>, ... },
</syntaxhighlight>
If func is a table, it takes the following parameters:
<syntaxhighlight lang="lua">
{name = <param>, func = { name = <func>, params = <func_params>}, ... },
</syntaxhighlight>
{| class="wikitable"
| name
| function in [[Module:Param Parse]]
|-
| params
| a list of parameters to pass the the function, in the form of constants, or Infobox.raw_param(name), Infobox.param(name), Infobox.smw_param(name)
|}
|-
| empty (optional)
| text to display in the infobox if func returns nil; defaults to "? (edit)"
|-
| category_never (optional)
| category to add if func returns nil for all versions
|-
| category_partial (optional)
| category to add if func returns nil for some versions, but a value for other versions
|-
| category_incomplete (optional)
| category to add if func returns nil for at least 1 version (i.e. category_never and category_partial combined)
|-
| category_complete (optional)
| category to add if func returns a value for all versions
|-
| smw_property (optional)
| if this string is defined, the parameter will be saved into SMW
|-
| smw_func (optional)
| function to validate and process the Template argument to save into SMW. func is used by default if smw_func is not defined
|}
==== args ====
Arguments passed via the Template
<syntaxhighlight lang="lua">
local args = frame:getParent().args
</syntaxhighlight>
=== infobox:is_param_defined(param) ===
Used to conditionally display a line in the infobox
<syntaxhighlight lang="lua">
infobox:add_row{
{tag='th', content=Infobox.param('name'), class='infobox.subheader', colspan='2'},
}
if infobox:is_param_defined(Infobox.param('owner')) > 0 then
infobox:add_row{
{tag='td', content='[[Owner]]'},
{tag='td', content=Infobox.param('owner')},
}
end
</syntaxhighlight>
{| class="wikitable"
| param
| a parameter referenced via Infobox.raw_param(name), Infobox.param(name) or Infobox.smw_param(name)
|-
| Returns
| 0 if param is never defined
1 if param is defined for a fraction of the versions
2 if param is defined for all versions
|}
=== Infobox:add_row(...) ===
Adds a row to the infobox table. Parameter should be a table of cells:
<syntaxhighlight lang="lua">
infobox:add_row{
{tag='td', content='[[Cell1]]', ...},
{tag='td', content=Infobox.param('param'), ...},
{tag='td', content='[[Cell3]]', ...},
...
addClass = 'row-class'
}
</syntaxhighlight>
Each cell should have a set of key-values, of which only the tag and content are mandatory:
{| class="wikitable"
! key
! value
|-
| tag
| 'td' or 'th'
|-
| content
| a string or Infobox.param(name), Infobox.raw_param(name), Infobox.smw_param(name)
|-
| attr (optional)
| a table of attributes to add to the cell
mw.html:attr({ arg1 = '1', ... })
|-
| css (optional)
| a table of css to add to the cell
mw.html:css({ arg1 = '1', ... })
|-
| class (optional)
| a string with a class to add, or a table of classes to add. '''infobox-subheader''' is commonly used.
mw.html:addClass(...)
|-
| rowspan (optional)
| Set the cell rowspan
mw.html:attr('rowspan',arg)
|-
| rowspan (optional)
| Set the cell colspan
mw.html:attr('colspan',arg)
|-
| title (optional)
| Set the cell title
mw.html:attr('title',arg)
|}
=== Infobox:pad(colspan, class) ===
Adds a blank row of padding spanning the given number of columns. Will always add the class infobox-padding, but can optionally add another class:
<syntaxhighlight lang="lua">
infobox:pad("10", class=<class>)
</syntaxhighlight>
=== Infobox:addClass(class) ===
Adds a class to the entire table
<syntaxhighlight lang="lua">
infobox:addClass(class)
</syntaxhighlight>
092ee90b14f506a34e3f2acd67549133fd7d13b7
User:Gau Cho/2
2
783
1592
1516
2024-03-28T01:53:26Z
Gau Cho
5
wikitext
text/x-wiki
{{User:BlackHawk/Infobox Profession
|default_version = 2
|version1 = Sad
|version2 = Normal
|version3 = Uber
|version4 = Uber2
|version5 = Uber3
|version6 = Uber4
|version7 = Uber5
|name1 = Sad Fisher
|name2 = Fisher
|name3 = UberFisher
|name = NeglectedFisher
|image = [[File:Profession fisher.png|50px]]
|release =
|premium =
}}
875af1e2da23ace3e2389919a49973e896151a6b
Episodes
0
788
1593
2024-03-28T06:57:40Z
ToofleBerry
6
Created page with "'''Episodes''' are packets of content, containing new [[non-player characters]], [[profession]]s and [[room]]s, that all contribute to the main storyline of [[Brighter Shores]]. Players can unlock new episodes by progressing through the storyline. Currently, four different episodes are available. Two episodes, the [[Mine of Mantuban]] and [[Crenopolis]], can only be accessed by players who bought a [[Premium Pass]]. ==Episodes== {| class="wikitable sortable" |- ! Order..."
wikitext
text/x-wiki
'''Episodes''' are packets of content, containing new [[non-player characters]], [[profession]]s and [[room]]s, that all contribute to the main storyline of [[Brighter Shores]]. Players can unlock new episodes by progressing through the storyline. Currently, four different episodes are available. Two episodes, the [[Mine of Mantuban]] and [[Crenopolis]], can only be accessed by players who bought a [[Premium Pass]].
==Episodes==
{| class="wikitable sortable"
|-
! Order !! Name !! Release Date !! Premium Pass?
|-
| 1 || [[File:Hopeport_episode_icon.png|20px]] [[Hopeport]] || Q3 [[2024]] || No
|-
| 2 || [[File:Hopeforest_episode_icon.png|20px]] [[Hopeforest]] || Q3 [[2024]] || No
|-
| 3 || [[File:Mine_of_Mantuban_episode_icon.png|20px]] [[Mine of Mantuban]] || Q3 [[2024]] || Yes
|-
| 4 || [[File:Crenopolis_episode_icon.png|20px]] [[Crenopolis]] || Q3 [[2024]] || Yes
|}
==Trivia==
* The choice to pack content into episodes was made to make the introduction to the game more gradual and less overwhelming<ref>https://www.gamesradar.com/runescape-creator-answers-our-biggest-questions-about-his-new-mmo-brighter-shores-classes-professions-monetization-and-a-ttrpg-open-world/</ref>.
==References==
<references />
[[Category:Episodes|*]]
6885483f37790b0211a9e3ecd812361996f2eb9e
Mine of Mantuban (location)
0
789
1594
2024-03-28T07:02:54Z
ToofleBerry
6
Created page with "{{Infobox Location |name = Mine of Mantuban |image = |release = |premium = Yes |episode = Mine of Mantuban }} '''Mine of Mantuban''' is a [[location]] that can be accessed by [[player]]s who purchase the [[Premium Pass]]. {{Premium Pass}}"
wikitext
text/x-wiki
{{Infobox Location
|name = Mine of Mantuban
|image =
|release =
|premium = Yes
|episode = Mine of Mantuban
}}
'''Mine of Mantuban''' is a [[location]] that can be accessed by [[player]]s who purchase the [[Premium Pass]].
{{Premium Pass}}
be372346d6cbc311e0613201883ed706588d76fd
Mine of Mantuban (episode)
0
790
1595
2024-03-28T07:03:08Z
ToofleBerry
6
Created page with "{{Infobox Location |name = Mine of Mantuban |image = |release = |premium = Yes |episode = Mine of Mantuban }} '''Mine of Mantuban''' is an [[episode]] that can be accessed by [[player]]s who purchase the [[Premium Pass]]. {{Premium Pass}}"
wikitext
text/x-wiki
{{Infobox Location
|name = Mine of Mantuban
|image =
|release =
|premium = Yes
|episode = Mine of Mantuban
}}
'''Mine of Mantuban''' is an [[episode]] that can be accessed by [[player]]s who purchase the [[Premium Pass]].
{{Premium Pass}}
ed5be58164f6ae24a8c10ac1e1fdd1dc0b0d12f2
1597
1595
2024-03-28T07:03:48Z
ToofleBerry
6
wikitext
text/x-wiki
{{Infobox Location
|name = Mine of Mantuban
|image =
|release =
|premium = Yes
|episode = Mine of Mantuban
}}
'''Mine of Mantuban''' is an [[episodes|episode]] that can be accessed by [[player]]s who purchase the [[Premium Pass]].
{{Premium Pass}}
1d05925782860852d425e0d13decb7f450878a01
Episode
0
791
1596
2024-03-28T07:03:33Z
ToofleBerry
6
Redirected page to [[Episodes]]
wikitext
text/x-wiki
#REDIRECT [[Episodes]]
f3b77cac05c24b2648976dc8b8cce2dbc35ec090
Crenopolis (location)
0
792
1598
2024-03-28T07:04:15Z
ToofleBerry
6
Created page with "{{Infobox Location |name = Crenopolis |image = |release = |premium = Yes |episode = Crenopolis }} '''Crenopolis''' is a [[location]] that can be accessed by [[player]]s who purchase the [[Premium Pass]]. Players require access to this location to unlock [[trading]], exclusive armour dyes, and name changes. {{Premium Pass}}"
wikitext
text/x-wiki
{{Infobox Location
|name = Crenopolis
|image =
|release =
|premium = Yes
|episode = Crenopolis
}}
'''Crenopolis''' is a [[location]] that can be accessed by [[player]]s who purchase the [[Premium Pass]]. Players require access to this location to unlock [[trading]], exclusive armour dyes, and name changes.
{{Premium Pass}}
d5ecde5dc9a7715878e93827189ea9b35a3054d4
Crenopolis (episode)
0
793
1599
2024-03-28T07:04:36Z
ToofleBerry
6
Created page with "{{Infobox Location |name = Crenopolis |image = |release = |premium = Yes |episode = Crenopolis }} '''Crenopolis''' is an [[episode]] that can be accessed by [[player]]s who purchase the [[Premium Pass]]. {{Premium Pass}}"
wikitext
text/x-wiki
{{Infobox Location
|name = Crenopolis
|image =
|release =
|premium = Yes
|episode = Crenopolis
}}
'''Crenopolis''' is an [[episode]] that can be accessed by [[player]]s who purchase the [[Premium Pass]].
{{Premium Pass}}
1a1709490e27973f45eff12f2b00df4a71efb7cf
1601
1599
2024-03-28T07:05:50Z
ToofleBerry
6
ToofleBerry moved page [[Crenopolis (Episode)]] to [[Crenopolis (episode)]]
wikitext
text/x-wiki
{{Infobox Location
|name = Crenopolis
|image =
|release =
|premium = Yes
|episode = Crenopolis
}}
'''Crenopolis''' is an [[episode]] that can be accessed by [[player]]s who purchase the [[Premium Pass]].
{{Premium Pass}}
1a1709490e27973f45eff12f2b00df4a71efb7cf
Crenopolis
0
75
1600
1473
2024-03-28T07:05:41Z
ToofleBerry
6
wikitext
text/x-wiki
{{Disambig}}
'''Crenopolis''' may refer to:
* [[Crenopolis (episode)]]
* [[Crenopolis (location)]]
a1b39539841678e1c524adace9e825479bd9ecc4
Crenopolis (Episode)
0
794
1602
2024-03-28T07:05:50Z
ToofleBerry
6
ToofleBerry moved page [[Crenopolis (Episode)]] to [[Crenopolis (episode)]]
wikitext
text/x-wiki
#REDIRECT [[Crenopolis (episode)]]
a1c1e3b9694fe79c4e71ced4dcca2ed23e089fc6
Template:Premium Pass
10
165
1603
295
2024-03-28T07:06:54Z
ToofleBerry
6
wikitext
text/x-wiki
{{Navbox
|name = Premium Pass
|title = [[Premium Pass]]
|gtitle1 = Episodes
|group1 =
* [[Mine of Mantuban (episode)|Mine of Mantuban]]
* [[Crenopolis (episode)|Crenopolis]]
|gtitle1 = Locations
|group1 =
* [[Mine of Mantuban (location)|Mine of Mantuban]]
* [[Crenopolis (location)|Crenopolis]]
|gtitle2 = Other
|group2 =
* [[Trading]]
}}{{Ctg|Premium Pass}}
ffc5b8981a1389cc73de6fffe9a3b92a9f0e76fb
Template:Premium Pass
10
165
1604
1603
2024-03-28T07:07:10Z
ToofleBerry
6
wikitext
text/x-wiki
{{Navbox
|name = Premium Pass
|title = [[Premium Pass]]
|gtitle1 = Episodes
|group1 =
* [[Mine of Mantuban (episode)|Mine of Mantuban]]
* [[Crenopolis (episode)|Crenopolis]]
|gtitle2 = Locations
|group2 =
* [[Mine of Mantuban (location)|Mine of Mantuban]]
* [[Crenopolis (location)|Crenopolis]]
|gtitle3 = Other
|group3 =
* [[Trading]]
}}{{Ctg|Premium Pass}}
7e44c5dc0654a40808539b6135129a6f450a69e5
Episodes
0
788
1605
1593
2024-03-28T07:32:28Z
ToofleBerry
6
wikitext
text/x-wiki
'''Episodes''' are packets of content, containing new [[non-player characters]], [[profession]]s and [[room]]s, that all contribute to the main storyline of [[Brighter Shores]]. Players can unlock new episodes by progressing through the storyline. Currently, four different episodes are available. Two episodes, the [[Mine of Mantuban]] and [[Crenopolis]], can only be accessed by players who bought a [[Premium Pass]].
==Episodes==
{| class="wikitable sortable"
|-
! Order !! Name !! Release Date !! Premium Pass?
|-
| 1 || [[File:Hopeport_episode_icon.png|20px]] [[Hopeport (episode)|Hopeport]] || Q3 [[2024]] || No
|-
| 2 || [[File:Hopeforest_episode_icon.png|20px]] [[Hopeforest (episode)|Hopeforest]] || Q3 [[2024]] || No
|-
| 3 || [[File:Mine_of_Mantuban_episode_icon.png|20px]] [[Mine of Mantuban (episode)|Mine of Mantuban]] || Q3 [[2024]] || Yes
|-
| 4 || [[File:Crenopolis_episode_icon.png|20px]] [[Crenopolis (episode)|Crenopolis]] || Q3 [[2024]] || Yes
|}
==Trivia==
* The choice to pack content into episodes was made to make the introduction to the game more gradual and less overwhelming<ref>https://www.gamesradar.com/runescape-creator-answers-our-biggest-questions-about-his-new-mmo-brighter-shores-classes-professions-monetization-and-a-ttrpg-open-world/</ref>.
==References==
<references />
[[Category:Episodes|*]]
82467230c5afad7e9977d61b66d60b663fca91a4
Hopeforest (episode)
0
795
1606
2024-03-28T07:32:56Z
ToofleBerry
6
Created page with "{{Infobox Location |name = Hopeforest |image = |release = |premium = No |episode = Hopeforest }} '''Hopeforest''' is an episode."
wikitext
text/x-wiki
{{Infobox Location
|name = Hopeforest
|image =
|release =
|premium = No
|episode = Hopeforest
}}
'''Hopeforest''' is an episode.
5874b58d606f026060f35b46812de4981992fb81
Hopeforest (location)
0
796
1607
2024-03-28T07:33:08Z
ToofleBerry
6
Created page with "{{Infobox Location |name = Hopeforest |image = |release = |premium = No |episode = Hopeforest }} '''Hopeforest''' is a forest [[Locations|area]] that contains [[monster]]s, accessible to all [[player]]s."
wikitext
text/x-wiki
{{Infobox Location
|name = Hopeforest
|image =
|release =
|premium = No
|episode = Hopeforest
}}
'''Hopeforest''' is a forest [[Locations|area]] that contains [[monster]]s, accessible to all [[player]]s.
62da8d121dbca3458bf20ceceaa85704592f051e
Hopeforest
0
73
1608
1476
2024-03-28T07:33:28Z
ToofleBerry
6
wikitext
text/x-wiki
{{Disambig}}
'''Hopeforest''' may refer to:
* [[Hopeforest (episode)]]
* [[Hopeforest (location)]]
ccd72b9b84a48fc2f21dae5b0fb914a952fd94b7
Hopeport (episode)
0
797
1609
2024-03-28T07:34:01Z
ToofleBerry
6
Created page with "{{Infobox Location |name = Hopeport |image = |release = |premium = No |episode = Hopeport }} '''Hopeport''' is the first episode."
wikitext
text/x-wiki
{{Infobox Location
|name = Hopeport
|image =
|release =
|premium = No
|episode = Hopeport
}}
'''Hopeport''' is the first episode.
9fc9b8e4985c4996775705b00b65571484746a3b
Hopeport (location)
0
798
1610
2024-03-28T07:34:28Z
ToofleBerry
6
Created page with "{{Infobox Location |name = Hopeport |image = |release = |premium = No |episode = Hopeport }} '''Hopeport''' is a coastal town in [[Adothria]]. It serves as the main introductory town for new [[player]]s.{{CiteGeneral|url=https://www.godisageek.com/2024/03/brighter-shores-is-a-new-mmorpg-coming-to-pc-and-mac/ |title=Brighter Shores is a new MMORPG coming to PC and Mac |author=Adam Cook |quote=Finding themselves in the peaceful coastal town of Hopeport, players initially..."
wikitext
text/x-wiki
{{Infobox Location
|name = Hopeport
|image =
|release =
|premium = No
|episode = Hopeport
}}
'''Hopeport''' is a coastal town in [[Adothria]]. It serves as the main introductory town for new [[player]]s.{{CiteGeneral|url=https://www.godisageek.com/2024/03/brighter-shores-is-a-new-mmorpg-coming-to-pc-and-mac/ |title=Brighter Shores is a new MMORPG coming to PC and Mac |author=Adam Cook |quote=Finding themselves in the peaceful coastal town of Hopeport, players initially take on the role of a town guard. Their role as protector, however, soon expands far beyond the town walls as they learn of a greater threat across the fantastical world of Adothria. |date=13 March 2024 |accessdate=24 March 2024 |archiveurl=https://archive.is/GVkr3 |archivedate=24 March 2024}}
==Features==
* A [[Hopeport Harbor|harbor]]
==References==
{{Reflist}}
269137367c61db8809d4757533a2af90697f264a
Hopeport
0
68
1611
1477
2024-03-28T07:34:53Z
ToofleBerry
6
wikitext
text/x-wiki
{{Disambig}}
'''Hopeport''' may refer to:
* [[Hopeport (episode)]]
* [[Hopeport (location)]]
c76693d92302b297f83dfcde74207b19e375f3c6
User:Gau Cho
2
104
1612
1514
2024-03-28T17:35:29Z
Gau Cho
5
wikitext
text/x-wiki
{{User:BlackHawk/Infobox Profession
|version1 = Sad
|version2 = Normal
|version3 = Uber
|name1 = Sad Fisher
|name2 = Fisher
|name3 = UberFisher
|image1 = [[File:Profession fisher.png|50px]]
|image2 = [[File:Profession forager.png|50px]]
|image3 = [[File:Profession woodcutter.png|50px]]
|release =
|premium =
}}
328d670d5dad5416a9c8ce6558f0f9b4cfc27053
Module:Param Parse
828
673
1613
1511
2024-03-28T17:35:51Z
Gau Cho
5
Scribunto
text/plain
--[=[
-- Standardized functions to parse Infobox params
--]=]
-- <nowiki>
local parse = {}
-- Standardized "has content" function
function parse.has_content(arg)
-- Return arg if any non-whitespace character is found
return string.match(arg or '', '%S') and arg or nil
end
-- Standardized image function
function parse.image(img)
if img and img:find('%S') then
return img
end
return nil
end
function parse.image_smw(img)
return img and string.match(img, "File:.-%.png") or nil
end
-- Standardized numbers
function parse.number(num)
num = string.gsub(num or '',',','')
return tonumber(num)
end
-- Episode
local valid_episodes = {['Hopeport'] = 1, ['Hopeforest'] = 1, ['Mine of Mantuban'] = 1, ['Crenopolis'] = 1}
function parse.episode(episode)
if valid_episodes[episode] then
return '[[File:'..episode..' episode icon.png|18px]] [['..episode..']]'
end
return nil
end
function parse.episode_smw(episode)
if valid_episodes[episode] then
return episode
end
return nil
end
return parse
-- </nowiki>
028e88ea78e865c07e6ca69e39b15acfa334f87e
1627
1613
2024-03-29T01:12:30Z
Gau Cho
5
yes_no
Scribunto
text/plain
--[=[
-- Standardized functions to parse Infobox params
--]=]
-- <nowiki>
local parse = {}
-- Standardized "has content" function
function parse.has_content(arg)
-- Return arg if any non-whitespace character is found
return string.match(arg or '', '%S') and arg or nil
end
-- Standardized image function
function parse.image(img)
if img and img:find('%S') then
return img
end
return nil
end
function parse.image_smw(img)
return img and string.match(img, "File:.-%.png") or nil
end
-- Standardized numbers
function parse.number(num)
num = string.gsub(num or '',',','')
return tonumber(num)
end
-- Episode
local valid_episodes = {['Hopeport'] = 1, ['Hopeforest'] = 1, ['Mine of Mantuban'] = 1, ['Crenopolis'] = 1}
function parse.episode(episode)
if valid_episodes[episode] then
return '[[File:'..episode..' episode icon.png|18px]] [['..episode..']]'
end
return nil
end
function parse.episode_smw(episode)
if valid_episodes[episode] then
return episode
end
return nil
end
-- Yes/No
local yes_no = {
['Yes'] = true,
['No'] = false,
['N/A'] = 'NIL',
}
function parse.yes_no(text)
if yes_no[text] then
return text
end
return nil
end
function parse.yes_no_smw(text)
if text == 'N/A' then
return nil
end
return yes_no[text] or nil
end
-- </nowiki>
bbf7db7cc4800977cc0f489cb579584cb31502d4
1630
1627
2024-03-29T01:20:33Z
Gau Cho
5
Scribunto
text/plain
--[=[
-- Standardized functions to parse Infobox params
--]=]
-- <nowiki>
local parse = {}
-- Standardized "has content" function
function parse.has_content(arg)
-- Return arg if any non-whitespace character is found
return string.match(arg or '', '%S') and arg or nil
end
-- Standardized image function
function parse.image(img)
if img and img:find('%S') then
return img
end
return nil
end
function parse.image_smw(img)
return img and string.match(img, "File:.-%.png") or nil
end
-- Standardized numbers
function parse.number(num)
num = string.gsub(num or '',',','')
return tonumber(num)
end
-- Episode
local valid_episodes = {['Hopeport'] = 1, ['Hopeforest'] = 1, ['Mine of Mantuban'] = 1, ['Crenopolis'] = 1}
function parse.episode(episode)
if valid_episodes[episode] then
return '[[File:'..episode..' episode icon.png|18px]] [['..episode..']]'
end
return nil
end
function parse.episode_smw(episode)
if valid_episodes[episode] then
return episode
end
return nil
end
-- Yes/No
local yes_no = {
['Yes'] = true,
['No'] = false,
['N/A'] = 'NIL',
}
function parse.yes_no(text)
if yes_no[text] then
return text
end
return nil
end
function parse.yes_no_smw(text)
if text == 'N/A' then
return nil
end
return yes_no[text] or nil
end
return parse
-- </nowiki>
f93573c3658d9be096df3cc36af055af1bacea61
1631
1630
2024-03-29T01:24:24Z
Gau Cho
5
PLEASE_UPLOAD_IMAGE
Scribunto
text/plain
--[=[
-- Standardized functions to parse Infobox params
--]=]
-- <nowiki>
local parse = {}
-- Standardized "has content" function
function parse.has_content(arg)
-- Return arg if any non-whitespace character is found
return string.match(arg or '', '%S') and arg or nil
end
-- Standardized image function
parse.PLEASE_UPLOAD_IMAGE = '[[Special:Upload|Please upload an image!]]'
function parse.image(img)
if img and img:find('%S') then
return img
end
return nil
end
function parse.image_smw(img)
return img and string.match(img, "File:.-%.png") or nil
end
-- Standardized numbers
function parse.number(num)
num = string.gsub(num or '',',','')
return tonumber(num)
end
-- Episode
local valid_episodes = {['Hopeport'] = 1, ['Hopeforest'] = 1, ['Mine of Mantuban'] = 1, ['Crenopolis'] = 1}
function parse.episode(episode)
if valid_episodes[episode] then
return '[[File:'..episode..' episode icon.png|18px]] [['..episode..']]'
end
return nil
end
function parse.episode_smw(episode)
if valid_episodes[episode] then
return episode
end
return nil
end
-- Yes/No
local yes_no = {
['Yes'] = true,
['No'] = false,
['N/A'] = 'NIL',
}
function parse.yes_no(text)
if yes_no[text] then
return text
end
return nil
end
function parse.yes_no_smw(text)
if text == 'N/A' then
return nil
end
return yes_no[text] or nil
end
return parse
-- </nowiki>
b060a5f6a7ce84303cc96a6da1c3deda51604a2a
1632
1631
2024-03-29T01:33:27Z
Gau Cho
5
Undo revision 1631 by [[Special:Contributions/Gau Cho|Gau Cho]] ([[User talk:Gau Cho|talk]])
Scribunto
text/plain
--[=[
-- Standardized functions to parse Infobox params
--]=]
-- <nowiki>
local parse = {}
-- Standardized "has content" function
function parse.has_content(arg)
-- Return arg if any non-whitespace character is found
return string.match(arg or '', '%S') and arg or nil
end
-- Standardized image function
function parse.image(img)
if img and img:find('%S') then
return img
end
return nil
end
function parse.image_smw(img)
return img and string.match(img, "File:.-%.png") or nil
end
-- Standardized numbers
function parse.number(num)
num = string.gsub(num or '',',','')
return tonumber(num)
end
-- Episode
local valid_episodes = {['Hopeport'] = 1, ['Hopeforest'] = 1, ['Mine of Mantuban'] = 1, ['Crenopolis'] = 1}
function parse.episode(episode)
if valid_episodes[episode] then
return '[[File:'..episode..' episode icon.png|18px]] [['..episode..']]'
end
return nil
end
function parse.episode_smw(episode)
if valid_episodes[episode] then
return episode
end
return nil
end
-- Yes/No
local yes_no = {
['Yes'] = true,
['No'] = false,
['N/A'] = 'NIL',
}
function parse.yes_no(text)
if yes_no[text] then
return text
end
return nil
end
function parse.yes_no_smw(text)
if text == 'N/A' then
return nil
end
return yes_no[text] or nil
end
return parse
-- </nowiki>
f93573c3658d9be096df3cc36af055af1bacea61
Module:Infobox
828
102
1614
1590
2024-03-28T17:38:08Z
Gau Cho
5
Renaming attribute 'data-default-version' to 'data-default-index' for consistency
Scribunto
text/plain
--[=[
-- For documentation, see [[Module:Infobox/doc]]
--]=]
-- <nowiki>
-- Edit button for unknown params
local editbutton = require('Module:Edit button')
local Infobox = {}
Infobox.__index = Infobox
--[[
Infobox class
-- config: table containing configuration parameters
-- params : definitions for each used value
-- args : values passed from the Template
---- the following values are treated specially: default_version, version, version1, version2...
--]]
function Infobox.new(config, params, args)
local obj = setmetatable({
args_raw = args, -- parameters (uncleaned)
args_parsed = {}, -- parsed parameters
args_smw = {}, -- parameters parsed for smw
infobox_name = nil, -- template name
param_names = {}, -- ordered param list
params = {}, -- param definitions
max_buttons = 6, -- If there are more buttons than the max, the buttons will become a dropdown menu
default_version = 1, -- default version to populate the infobox
versions = nil, -- number of versions
version_names = {}, -- title of each version (for selection and SMW)
rtable = nil, -- infobox table to return at the end
switch_datatable = '', -- datatable for javascript for switch infoboxes
categories = {}, -- set of categories
errors = {}, -- list of errors
__smw_debug = {}, -- debug data for smw subobjects
},
Infobox)
-- Step 1, setup config vars and count the versions
obj:config(config)
obj:parse_versions()
-- Step 2, process the params
obj:define_params(params)
obj:parse_params()
-- Table
obj:table_header()
obj:buttons()
-- Misc
obj:store_smw()
obj:parse_categories()
return obj
end
--[[
Refers to a param after being processed by the validating func
Used in add_row(), define_params() and is_param_defined()
--]]
function Infobox.param(param_name)
param = {
property = 'args_parsed',
param_name = param_name,
}
return param
end
--[[
Refers to a param in raw form as passed from the Template
Used in add_row(), define_params() and is_param_defined()
--]]
function Infobox.raw_param(param_name)
param = {
property = 'args_raw',
param_name = param_name,
}
return param
end
--[[
Refers to a param after being processed by the validating smw_func
Used in add_row(), define_params() and is_param_defined()
--]]
function Infobox.smw_param(param_name)
param = {
property = 'args_smw',
param_name = param_name,
}
return param
end
--[[
Checks to see if a param is defined.
-- param: Infobox.param(name), Infobox.raw_param(name) or Infobox.smw_param(name)
Returns 0 if param is never defined
1 if param is defined for a fraction of the versions
2 if param is defined for all versions
]]
function Infobox:is_param_defined(param)
local undefined = 0
local defined = 0
for version = 1, self.versions do
local value = self:get_param(param, version)
if value ~= nil then
defined = 1
else
undefined = 1
end
end
return 1 + defined - undefined
end
--[[
Adds a row to the infobox table
Parameter should be a table of cells, where each cell is a table with the following arguments:
-- tag : 'td' or 'th'
-- content : a string or Infobox.param(name), Infobox.raw_param(name), Infobox.smw_param(name)
-- attr (optional) : mw.html:attr({ arg1 = '1', ... })
-- css (optional) : mw.html:css({ arg1 = '1', ...)
-- class (optional) : mw.html:addClass('arg')
---- class also supports a table of values, even though mw.html:addClass() does not
---- common classes: infobox-subheader
-- rowspan (optional) : mw.html:attr('rowspan',arg)
-- colspan (optional) : mw.html:attr('colspan',arg)
-- title (optional) : mw.html:attr('title',arg)
The row itself may be assigned a single class by setting the value of the key addClass
-- addClass : mw.html:addClass('arg')
-- this function currently only supports a single string
--]]
function Infobox:add_row(...)
local args = ...
local _row = self.rtable:tag('tr')
-- For each cell
for _, v in ipairs(args) do
local _cell = _row:tag(v.tag)
-- Optional parameters
if v.attr then
_cell:attr(v.attr)
end
if v.colspan then
_cell:attr('colspan',v.colspan)
end
if v.rowspan then
_cell:attr('rowspan',v.rowspan)
end
if v.title then
_cell:attr('title',v.title)
end
if v.css then
_cell:css(v.css)
end
if v.class then
if type(v.class) == 'string' then
_cell:addClass(v.class)
-- mw.html:addClass() doesn't function with tables, add in a loop
elseif type(v.class) == 'table' then
for _, w in ipairs(v.class) do
_cell:addClass(w)
end
end
end
-- Populate the cell contents
local content = self:get_param(v.content, self.default_version)
if content == nil then
content = self.params[v.content.param_name].empty
end
_cell:wikitext(content)
-- Add the switch data if multiple values exist
data_attr_param = self:add_switch_data(v.content)
if data_attr_param then
_cell:attr('data-attr-param', data_attr_param)
end
end
-- allow classes to be defined on the whole row
if args.addClass then
_row:addClass(args.addClass)
end
return self
end
--[[
Adds a blank row of padding spanning the given number of columns
--]]
function Infobox:pad(colspan, class)
local tr = self.rtable:tag('tr'):tag('td'):attr('colspan', colspan or 1):addClass('infobox-padding')
if class then
tr:addClass(class)
end
return self
end
--[[
Adds a class to the table as a whole
--]]
function Infobox:addClass(arg)
self.rtable:addClass(arg)
return self
end
--[[
Setup config values
-- config: table containing configuration parameters
---- infobox_name = mandatory unique identifier for this infobox, used for css
---- max_buttuons = max number of switch buttons before using a dropdown list instead
--]]
function Infobox:config(config)
for k, v in pairs(config) do
if k == 'infobox_name' then
self.infobox_name = mw.ustring.gsub(v, '%s', '_')
elseif k == 'max_buttons' then
self.max_buttons = tonumber(v)
end
end
if self.infobox_name == nil then
table.insert(self.errors, 'infobox_name needs to be defined in Infobox.new()\'s config!')
end
return self
end
--[[
Counts the number of versions in the infobox
Populates Infobox.version_names
Sets Infobox.default_version
--]]
function Infobox:parse_versions()
-- Count the versions and setup self.version_names
local i = 1
while self.args_raw['version'..i] do
table.insert(self.version_names, self.args_raw['version'..i])
i = i + 1
end
self.versions = i - 1
-- Handle the no version case - check for a custom version_name
if self.versions == 0 then
table.insert(self.version_names, self.args_raw['version'] or 'DEFAULT')
end
-- Should either have 0 or 2+ versions
if self.versions == 1 then
table.insert(self.errors, 'There should be multiple versions or no versions. If defining a custom version name for a single entry, use "version=Name" instead of "version1=Name".')
self.versions = 0
end
-- Check for a default_version
if self.args_raw['default_version'] then
self.default_version = tonumber(self.args_raw['default_version'])
if self.default_version > self.versions then -- Make sure the default version exists
self.default_version = 1
end
end
end
--[[
Define all used parameters (except for default_version/version)
-- name : parameter name as used in the Template
-- func : function to validate and process the Template argument
-- If func is a function, will call func(Infobox.raw_param(name))
-- If func is a table, contains the following key-value pairs:
---- name : function
---- params : list of arguments to pass to the function (use Infobox.raw_param(),
---- Infobox.param() and Infobox.smw_param() to use arguments)
-- empty (optional) : text to display in the infobox if func returns nil, defaults to "? (edit)"
-- category_never : category to add if func returns nil for all versions
-- category_partial : category to add if func returns nil for some versions, but a value for other versions
-- category_incomplete : category to add if func returns nil for at least 1 version (i.e. category_never and category_partial combined)
-- category_complete : category to add if func returns a value for all versions
-- smw_property (optional) : if this string is defined, the parameter will be saved into smw
-- smw_func (optional) : function to validate and process the Template argument to save into smw
-- func is used by default if smw_func is not defined
--]]
function Infobox:define_params(...)
-- For every parameter, store its corresponding function to self.params
for _, v in ipairs(...) do
if v.name then
local param = {}
-- Copy the function
if type(v.func) == 'function' or type(v.func) == 'table' then
param.func = v.func
end
-- If smw_property is defined, then use smw_func, or default to func if it is not defined
if v.smw_property then
param.smw_property = v.smw_property
if type(v.smw_func) == 'function' or type(v.smw_func) == 'table' then
param.smw_func = v.smw_func
else
param.smw_func = param.func
end
end
-- If empty is not defined, default message is "? (edit)"
param.empty = v.empty or editbutton("'''?''' (edit)")
-- Get the category names
param.category_never = v.category_never
param.category_partial = v.category_partial
param.category_incomplete = v.category_incomplete
param.category_complete = v.category_complete
-- Store the param
self.params[v.name] = param
table.insert(self.param_names, v.name)
end
end
return self
end
--[[
Fetches a param value. If the value is nil, will return the default value instead
-- arg: a non-table value (string, number, etc), or Infobox.param(name), Infobox.raw_param(name), Infobox.smw_param(name)
-- version: 0/'' for default, or else a number
Returns arg if a constant
param value (or default value) if Infobox.param(name), Infobox.raw_param(name), Infobox.smw_param(name)
--]]
function Infobox:get_param(arg, version)
if version == 0 then
version = ''
end
-- Handle Infobox.param(), Infobox.raw_param(), Infobox.smw_param()
if type(arg) == 'table' then
local value = self[arg.property][arg.param_name..version]
-- If nil, grab default value (which could be nil as well)
if value == nil then
value = self[arg.property][arg.param_name]
end
return value
end
-- Everything else passes through unmodified (string, number, etc)
return arg
end
--[[
Calculates the parsed value of a param
-- param_name : param_name as a string
-- version : 0/'' for default, or else a number
-- smw : boolean, will use smw_func if true, or func is false
--]]
function Infobox:parse_param(param_name, version, smw)
if version == 0 then
version = ''
end
-- use func or smw_func depending on smw argument
local param = self.params[param_name]
local func = smw and param.smw_func or param.func
-- call functions by passing the param_name
if type(func) == 'function' then
return func(self:get_param(self.raw_param(param_name), version))
-- call tables by grabbing the function and reading the param arguments
elseif type(func) == 'table' then
local func_name = func.name
local func_params = func.params
local func_fetched_params = {}
for _, func_param in ipairs(func_params) do
table.insert(func_fetched_params, self:get_param(func_param, version))
end
return func_name(unpack(func_fetched_params))
else
table.insert(self.errors, 'Invalid param definition for '..param_name)
end
end
--[[
Parses all the param values (args_parsed and args_smw)
--]]
function Infobox:parse_params()
-- Calculate the param value for all params and all versions
for _, param_name in ipairs(self.param_names) do
for version=0, self.versions do
if version == 0 then
version = ''
end
-- get the parsed value
self.args_parsed[param_name..version] = self:parse_param(param_name, version, false)
-- Only get the smw value if smw_property is defined
if self.params[param_name].smw_property then
self.args_smw[param_name..version] = self:parse_param(param_name, version, true)
end
end
end
end
--[[
Creates the table header
--]]
function Infobox:table_header()
-- Create infobox table
self.rtable = mw.html.create('table')
:addClass('plainlinks')
:addClass('infobox')
:addClass('infobox-'..self.infobox_name)
-- Create the switch datatable if multiple versions
if self.versions > 1 then
self.rtable:addClass('infobox-switch')
self.switch_datatable = mw.html.create('div')
:addClass('infobox-switch-resources')
:addClass('infobox-resources-'..self.infobox_name)
:addClass('hidden')
self.switch_datatable:tag('span'):wikitext('Versions: '..self.versions)
self.switch_datatable:tag('span'):wikitext('Default version: '..self.default_version)
end
return self
end
--[[
If multiple versions exist, creates a set of buttons for switching
-- self.max_buttons : if the number of versions exceeds this value, a dropdown will be created instead
--]]
function Infobox:buttons()
if self.versions < 2 then
return
end
-- Button caption
local buttons = self.rtable:tag('caption')
:tag('div')
:addClass('infobox-buttons')
:attr('data-default-index', self.default_version)
-- Dropdown list instead of buttons if too many versions
if self.versions > self.max_buttons then
buttons:addClass('infobox-buttons-select')
end
-- Create all the buttons
for version=1, self.versions do
buttons:tag('span')
:attr('data-switch-index', version)
:attr('data-switch-anchor', '#'..self.version_names[version])
:addClass('button')
:wikitext(self.version_names[version])
end
end
--[[
For each version, stores a subobject for all params that have smw_property defined
--]]
function Infobox:store_smw()
for version=1, self.versions do
-- Generate a subobject name
-- Reminder - subobject name cannot have a . in the first 5 characters
local subobject_name = 'Infobox.'..mw.title.getCurrentTitle().fullText..'#'..self.version_names[version]
-- Store each param that has smw_property defined and is not nil
local subobject = {}
for _, param_name in ipairs(self.param_names) do
local property = self.params[param_name].smw_property
if property then
value = self:get_param(self.smw_param(param_name), version)
if value ~= nil then
subobject[property] = value
end
end
end
-- Keep a copy for debugging
self.__smw_debug[subobject_name] = subobject
-- Save subobjects if not in mainspace
if mw.title.getCurrentTitle():inNamespace(0) then
local result = mw.smw.subobject(subobject, subobject_name)
if result ~= true then
table.insert(self.errors, 'SMW error: '..result.error)
end
end
end
end
--[[
Automatically add categories for each param as defined in define_params()
--]]
function Infobox:parse_categories()
for _, param_name in ipairs(self.param_names) do
local param = self.params[param_name]
local defined = self:is_param_defined(Infobox.param(param_name))
if defined == 0 and param.category_never then
self.categories[param.category_never] = 1
end
if defined == 1 and param.category_partial then
self.categories[param.category_partial] = 1
end
if defined < 2 and param.category_incomplete then
self.categories[param.category_incomplete] = 1
end
if defined == 2 and param.category_complete then
self.categories[param.category_complete] = 1
end
end
end
--[[
When a parameter is added into the table, add the alternative versions' data into the switch datatable
-- content : a non-table value (string, number, etc), or Infobox.param(name), Infobox.raw_param(name), Infobox.smw_param(name)
Returns the name of the parameter in the tag 'data-attr-param'
--]]
function Infobox:add_switch_data(content)
if self.versions <= 1 then
return false
end
-- Only needed for non-constant params
if type(content) ~= 'table' then
return false
end
-- Only needed if the param changes value between different versions
local first_value = self:get_param(content, 1)
local all_same = true
for version=2, self.versions do
if first_value ~= self:get_param(content, version) then
all_same = false
break
end
end
if all_same then
return false
end
-- Let's build the datatable
-- datum name: Prepend raw__ or smw__ if not a parsed argument
local name = content.param_name
if content.property == 'args_raw' then
name = 'raw__' + name
end
if content.property == 'args_smw' then
name = 'smw__' + name
end
data_param = self.switch_datatable:tag('span'):attr('data-attr-param', name)
-- Add each version to the datatable
for version=1, self.versions do
text = self:get_param(content, version)
if text == nil then
text = self.params[content.param_name].empty
end
data_param:tag('span'):attr('data-attr-index', version):wikitext(text)
end
-- return the 'data-attr-param' name
return name
end
--[[
Override tostring
--]]
function Infobox:__tostring()
-- Create error messages
local error_text = ''
for _, v in ipairs(self.errors) do
error_text = error_text..'<span class="mw-message-box-error">'..v..'</span>'
end
-- Create categories
local category_text = ''
for key, _ in pairs(self.categories) do
category_text = category_text..'[[Category:'..key..']]'
end
return tostring(self.rtable) .. tostring(self.switch_datatable) .. error_text .. category_text
end
--[[
Debug function
--]]
function Infobox:dump()
-- Temporarily detach the metatable so we don't override tostring anymore, allowing us to use dumpObject
setmetatable(self, nil)
mw.log(mw.dumpObject(self))
setmetatable(self, Infobox)
mw.log(tostring(self))
end
return Infobox
6b30c22cfa5cb7fa43c4348913d8895d4e4d110b
1615
1614
2024-03-28T17:38:42Z
Gau Cho
5
Removing unnecessary data in switch_datatable
Scribunto
text/plain
--[=[
-- For documentation, see [[Module:Infobox/doc]]
--]=]
-- <nowiki>
-- Edit button for unknown params
local editbutton = require('Module:Edit button')
local Infobox = {}
Infobox.__index = Infobox
--[[
Infobox class
-- config: table containing configuration parameters
-- params : definitions for each used value
-- args : values passed from the Template
---- the following values are treated specially: default_version, version, version1, version2...
--]]
function Infobox.new(config, params, args)
local obj = setmetatable({
args_raw = args, -- parameters (uncleaned)
args_parsed = {}, -- parsed parameters
args_smw = {}, -- parameters parsed for smw
infobox_name = nil, -- template name
param_names = {}, -- ordered param list
params = {}, -- param definitions
max_buttons = 6, -- If there are more buttons than the max, the buttons will become a dropdown menu
default_version = 1, -- default version to populate the infobox
versions = nil, -- number of versions
version_names = {}, -- title of each version (for selection and SMW)
rtable = nil, -- infobox table to return at the end
switch_datatable = '', -- datatable for javascript for switch infoboxes
categories = {}, -- set of categories
errors = {}, -- list of errors
__smw_debug = {}, -- debug data for smw subobjects
},
Infobox)
-- Step 1, setup config vars and count the versions
obj:config(config)
obj:parse_versions()
-- Step 2, process the params
obj:define_params(params)
obj:parse_params()
-- Table
obj:table_header()
obj:buttons()
-- Misc
obj:store_smw()
obj:parse_categories()
return obj
end
--[[
Refers to a param after being processed by the validating func
Used in add_row(), define_params() and is_param_defined()
--]]
function Infobox.param(param_name)
param = {
property = 'args_parsed',
param_name = param_name,
}
return param
end
--[[
Refers to a param in raw form as passed from the Template
Used in add_row(), define_params() and is_param_defined()
--]]
function Infobox.raw_param(param_name)
param = {
property = 'args_raw',
param_name = param_name,
}
return param
end
--[[
Refers to a param after being processed by the validating smw_func
Used in add_row(), define_params() and is_param_defined()
--]]
function Infobox.smw_param(param_name)
param = {
property = 'args_smw',
param_name = param_name,
}
return param
end
--[[
Checks to see if a param is defined.
-- param: Infobox.param(name), Infobox.raw_param(name) or Infobox.smw_param(name)
Returns 0 if param is never defined
1 if param is defined for a fraction of the versions
2 if param is defined for all versions
]]
function Infobox:is_param_defined(param)
local undefined = 0
local defined = 0
for version = 1, self.versions do
local value = self:get_param(param, version)
if value ~= nil then
defined = 1
else
undefined = 1
end
end
return 1 + defined - undefined
end
--[[
Adds a row to the infobox table
Parameter should be a table of cells, where each cell is a table with the following arguments:
-- tag : 'td' or 'th'
-- content : a string or Infobox.param(name), Infobox.raw_param(name), Infobox.smw_param(name)
-- attr (optional) : mw.html:attr({ arg1 = '1', ... })
-- css (optional) : mw.html:css({ arg1 = '1', ...)
-- class (optional) : mw.html:addClass('arg')
---- class also supports a table of values, even though mw.html:addClass() does not
---- common classes: infobox-subheader
-- rowspan (optional) : mw.html:attr('rowspan',arg)
-- colspan (optional) : mw.html:attr('colspan',arg)
-- title (optional) : mw.html:attr('title',arg)
The row itself may be assigned a single class by setting the value of the key addClass
-- addClass : mw.html:addClass('arg')
-- this function currently only supports a single string
--]]
function Infobox:add_row(...)
local args = ...
local _row = self.rtable:tag('tr')
-- For each cell
for _, v in ipairs(args) do
local _cell = _row:tag(v.tag)
-- Optional parameters
if v.attr then
_cell:attr(v.attr)
end
if v.colspan then
_cell:attr('colspan',v.colspan)
end
if v.rowspan then
_cell:attr('rowspan',v.rowspan)
end
if v.title then
_cell:attr('title',v.title)
end
if v.css then
_cell:css(v.css)
end
if v.class then
if type(v.class) == 'string' then
_cell:addClass(v.class)
-- mw.html:addClass() doesn't function with tables, add in a loop
elseif type(v.class) == 'table' then
for _, w in ipairs(v.class) do
_cell:addClass(w)
end
end
end
-- Populate the cell contents
local content = self:get_param(v.content, self.default_version)
if content == nil then
content = self.params[v.content.param_name].empty
end
_cell:wikitext(content)
-- Add the switch data if multiple values exist
data_attr_param = self:add_switch_data(v.content)
if data_attr_param then
_cell:attr('data-attr-param', data_attr_param)
end
end
-- allow classes to be defined on the whole row
if args.addClass then
_row:addClass(args.addClass)
end
return self
end
--[[
Adds a blank row of padding spanning the given number of columns
--]]
function Infobox:pad(colspan, class)
local tr = self.rtable:tag('tr'):tag('td'):attr('colspan', colspan or 1):addClass('infobox-padding')
if class then
tr:addClass(class)
end
return self
end
--[[
Adds a class to the table as a whole
--]]
function Infobox:addClass(arg)
self.rtable:addClass(arg)
return self
end
--[[
Setup config values
-- config: table containing configuration parameters
---- infobox_name = mandatory unique identifier for this infobox, used for css
---- max_buttuons = max number of switch buttons before using a dropdown list instead
--]]
function Infobox:config(config)
for k, v in pairs(config) do
if k == 'infobox_name' then
self.infobox_name = mw.ustring.gsub(v, '%s', '_')
elseif k == 'max_buttons' then
self.max_buttons = tonumber(v)
end
end
if self.infobox_name == nil then
table.insert(self.errors, 'infobox_name needs to be defined in Infobox.new()\'s config!')
end
return self
end
--[[
Counts the number of versions in the infobox
Populates Infobox.version_names
Sets Infobox.default_version
--]]
function Infobox:parse_versions()
-- Count the versions and setup self.version_names
local i = 1
while self.args_raw['version'..i] do
table.insert(self.version_names, self.args_raw['version'..i])
i = i + 1
end
self.versions = i - 1
-- Handle the no version case - check for a custom version_name
if self.versions == 0 then
table.insert(self.version_names, self.args_raw['version'] or 'DEFAULT')
end
-- Should either have 0 or 2+ versions
if self.versions == 1 then
table.insert(self.errors, 'There should be multiple versions or no versions. If defining a custom version name for a single entry, use "version=Name" instead of "version1=Name".')
self.versions = 0
end
-- Check for a default_version
if self.args_raw['default_version'] then
self.default_version = tonumber(self.args_raw['default_version'])
if self.default_version > self.versions then -- Make sure the default version exists
self.default_version = 1
end
end
end
--[[
Define all used parameters (except for default_version/version)
-- name : parameter name as used in the Template
-- func : function to validate and process the Template argument
-- If func is a function, will call func(Infobox.raw_param(name))
-- If func is a table, contains the following key-value pairs:
---- name : function
---- params : list of arguments to pass to the function (use Infobox.raw_param(),
---- Infobox.param() and Infobox.smw_param() to use arguments)
-- empty (optional) : text to display in the infobox if func returns nil, defaults to "? (edit)"
-- category_never : category to add if func returns nil for all versions
-- category_partial : category to add if func returns nil for some versions, but a value for other versions
-- category_incomplete : category to add if func returns nil for at least 1 version (i.e. category_never and category_partial combined)
-- category_complete : category to add if func returns a value for all versions
-- smw_property (optional) : if this string is defined, the parameter will be saved into smw
-- smw_func (optional) : function to validate and process the Template argument to save into smw
-- func is used by default if smw_func is not defined
--]]
function Infobox:define_params(...)
-- For every parameter, store its corresponding function to self.params
for _, v in ipairs(...) do
if v.name then
local param = {}
-- Copy the function
if type(v.func) == 'function' or type(v.func) == 'table' then
param.func = v.func
end
-- If smw_property is defined, then use smw_func, or default to func if it is not defined
if v.smw_property then
param.smw_property = v.smw_property
if type(v.smw_func) == 'function' or type(v.smw_func) == 'table' then
param.smw_func = v.smw_func
else
param.smw_func = param.func
end
end
-- If empty is not defined, default message is "? (edit)"
param.empty = v.empty or editbutton("'''?''' (edit)")
-- Get the category names
param.category_never = v.category_never
param.category_partial = v.category_partial
param.category_incomplete = v.category_incomplete
param.category_complete = v.category_complete
-- Store the param
self.params[v.name] = param
table.insert(self.param_names, v.name)
end
end
return self
end
--[[
Fetches a param value. If the value is nil, will return the default value instead
-- arg: a non-table value (string, number, etc), or Infobox.param(name), Infobox.raw_param(name), Infobox.smw_param(name)
-- version: 0/'' for default, or else a number
Returns arg if a constant
param value (or default value) if Infobox.param(name), Infobox.raw_param(name), Infobox.smw_param(name)
--]]
function Infobox:get_param(arg, version)
if version == 0 then
version = ''
end
-- Handle Infobox.param(), Infobox.raw_param(), Infobox.smw_param()
if type(arg) == 'table' then
local value = self[arg.property][arg.param_name..version]
-- If nil, grab default value (which could be nil as well)
if value == nil then
value = self[arg.property][arg.param_name]
end
return value
end
-- Everything else passes through unmodified (string, number, etc)
return arg
end
--[[
Calculates the parsed value of a param
-- param_name : param_name as a string
-- version : 0/'' for default, or else a number
-- smw : boolean, will use smw_func if true, or func is false
--]]
function Infobox:parse_param(param_name, version, smw)
if version == 0 then
version = ''
end
-- use func or smw_func depending on smw argument
local param = self.params[param_name]
local func = smw and param.smw_func or param.func
-- call functions by passing the param_name
if type(func) == 'function' then
return func(self:get_param(self.raw_param(param_name), version))
-- call tables by grabbing the function and reading the param arguments
elseif type(func) == 'table' then
local func_name = func.name
local func_params = func.params
local func_fetched_params = {}
for _, func_param in ipairs(func_params) do
table.insert(func_fetched_params, self:get_param(func_param, version))
end
return func_name(unpack(func_fetched_params))
else
table.insert(self.errors, 'Invalid param definition for '..param_name)
end
end
--[[
Parses all the param values (args_parsed and args_smw)
--]]
function Infobox:parse_params()
-- Calculate the param value for all params and all versions
for _, param_name in ipairs(self.param_names) do
for version=0, self.versions do
if version == 0 then
version = ''
end
-- get the parsed value
self.args_parsed[param_name..version] = self:parse_param(param_name, version, false)
-- Only get the smw value if smw_property is defined
if self.params[param_name].smw_property then
self.args_smw[param_name..version] = self:parse_param(param_name, version, true)
end
end
end
end
--[[
Creates the table header
--]]
function Infobox:table_header()
-- Create infobox table
self.rtable = mw.html.create('table')
:addClass('plainlinks')
:addClass('infobox')
:addClass('infobox-'..self.infobox_name)
-- Create the switch datatable if multiple versions
if self.versions > 1 then
self.rtable:addClass('infobox-switch')
self.switch_datatable = mw.html.create('div')
:addClass('infobox-switch-resources')
:addClass('infobox-resources-'..self.infobox_name)
:addClass('hidden')
end
return self
end
--[[
If multiple versions exist, creates a set of buttons for switching
-- self.max_buttons : if the number of versions exceeds this value, a dropdown will be created instead
--]]
function Infobox:buttons()
if self.versions < 2 then
return
end
-- Button caption
local buttons = self.rtable:tag('caption')
:tag('div')
:addClass('infobox-buttons')
:attr('data-default-index', self.default_version)
-- Dropdown list instead of buttons if too many versions
if self.versions > self.max_buttons then
buttons:addClass('infobox-buttons-select')
end
-- Create all the buttons
for version=1, self.versions do
buttons:tag('span')
:attr('data-switch-index', version)
:attr('data-switch-anchor', '#'..self.version_names[version])
:addClass('button')
:wikitext(self.version_names[version])
end
end
--[[
For each version, stores a subobject for all params that have smw_property defined
--]]
function Infobox:store_smw()
for version=1, self.versions do
-- Generate a subobject name
-- Reminder - subobject name cannot have a . in the first 5 characters
local subobject_name = 'Infobox.'..mw.title.getCurrentTitle().fullText..'#'..self.version_names[version]
-- Store each param that has smw_property defined and is not nil
local subobject = {}
for _, param_name in ipairs(self.param_names) do
local property = self.params[param_name].smw_property
if property then
value = self:get_param(self.smw_param(param_name), version)
if value ~= nil then
subobject[property] = value
end
end
end
-- Keep a copy for debugging
self.__smw_debug[subobject_name] = subobject
-- Save subobjects if not in mainspace
if mw.title.getCurrentTitle():inNamespace(0) then
local result = mw.smw.subobject(subobject, subobject_name)
if result ~= true then
table.insert(self.errors, 'SMW error: '..result.error)
end
end
end
end
--[[
Automatically add categories for each param as defined in define_params()
--]]
function Infobox:parse_categories()
for _, param_name in ipairs(self.param_names) do
local param = self.params[param_name]
local defined = self:is_param_defined(Infobox.param(param_name))
if defined == 0 and param.category_never then
self.categories[param.category_never] = 1
end
if defined == 1 and param.category_partial then
self.categories[param.category_partial] = 1
end
if defined < 2 and param.category_incomplete then
self.categories[param.category_incomplete] = 1
end
if defined == 2 and param.category_complete then
self.categories[param.category_complete] = 1
end
end
end
--[[
When a parameter is added into the table, add the alternative versions' data into the switch datatable
-- content : a non-table value (string, number, etc), or Infobox.param(name), Infobox.raw_param(name), Infobox.smw_param(name)
Returns the name of the parameter in the tag 'data-attr-param'
--]]
function Infobox:add_switch_data(content)
if self.versions <= 1 then
return false
end
-- Only needed for non-constant params
if type(content) ~= 'table' then
return false
end
-- Only needed if the param changes value between different versions
local first_value = self:get_param(content, 1)
local all_same = true
for version=2, self.versions do
if first_value ~= self:get_param(content, version) then
all_same = false
break
end
end
if all_same then
return false
end
-- Let's build the datatable
-- datum name: Prepend raw__ or smw__ if not a parsed argument
local name = content.param_name
if content.property == 'args_raw' then
name = 'raw__' + name
end
if content.property == 'args_smw' then
name = 'smw__' + name
end
data_param = self.switch_datatable:tag('span'):attr('data-attr-param', name)
-- Add each version to the datatable
for version=1, self.versions do
text = self:get_param(content, version)
if text == nil then
text = self.params[content.param_name].empty
end
data_param:tag('span'):attr('data-attr-index', version):wikitext(text)
end
-- return the 'data-attr-param' name
return name
end
--[[
Override tostring
--]]
function Infobox:__tostring()
-- Create error messages
local error_text = ''
for _, v in ipairs(self.errors) do
error_text = error_text..'<span class="mw-message-box-error">'..v..'</span>'
end
-- Create categories
local category_text = ''
for key, _ in pairs(self.categories) do
category_text = category_text..'[[Category:'..key..']]'
end
return tostring(self.rtable) .. tostring(self.switch_datatable) .. error_text .. category_text
end
--[[
Debug function
--]]
function Infobox:dump()
-- Temporarily detach the metatable so we don't override tostring anymore, allowing us to use dumpObject
setmetatable(self, nil)
mw.log(mw.dumpObject(self))
setmetatable(self, Infobox)
mw.log(tostring(self))
end
return Infobox
dbc4cfd21b66d13191b9e3938d64c449b2732a35
1616
1615
2024-03-28T18:10:36Z
Gau Cho
5
Hide dropdown buttons
Scribunto
text/plain
--[=[
-- For documentation, see [[Module:Infobox/doc]]
--]=]
-- <nowiki>
-- Edit button for unknown params
local editbutton = require('Module:Edit button')
local Infobox = {}
Infobox.__index = Infobox
--[[
Infobox class
-- config: table containing configuration parameters
-- params : definitions for each used value
-- args : values passed from the Template
---- the following values are treated specially: default_version, version, version1, version2...
--]]
function Infobox.new(config, params, args)
local obj = setmetatable({
args_raw = args, -- parameters (uncleaned)
args_parsed = {}, -- parsed parameters
args_smw = {}, -- parameters parsed for smw
infobox_name = nil, -- template name
param_names = {}, -- ordered param list
params = {}, -- param definitions
max_buttons = 6, -- If there are more buttons than the max, the buttons will become a dropdown menu
default_version = 1, -- default version to populate the infobox
versions = nil, -- number of versions
version_names = {}, -- title of each version (for selection and SMW)
rtable = nil, -- infobox table to return at the end
switch_datatable = '', -- datatable for javascript for switch infoboxes
categories = {}, -- set of categories
errors = {}, -- list of errors
__smw_debug = {}, -- debug data for smw subobjects
},
Infobox)
-- Step 1, setup config vars and count the versions
obj:config(config)
obj:parse_versions()
-- Step 2, process the params
obj:define_params(params)
obj:parse_params()
-- Table
obj:table_header()
obj:buttons()
-- Misc
obj:store_smw()
obj:parse_categories()
return obj
end
--[[
Refers to a param after being processed by the validating func
Used in add_row(), define_params() and is_param_defined()
--]]
function Infobox.param(param_name)
param = {
property = 'args_parsed',
param_name = param_name,
}
return param
end
--[[
Refers to a param in raw form as passed from the Template
Used in add_row(), define_params() and is_param_defined()
--]]
function Infobox.raw_param(param_name)
param = {
property = 'args_raw',
param_name = param_name,
}
return param
end
--[[
Refers to a param after being processed by the validating smw_func
Used in add_row(), define_params() and is_param_defined()
--]]
function Infobox.smw_param(param_name)
param = {
property = 'args_smw',
param_name = param_name,
}
return param
end
--[[
Checks to see if a param is defined.
-- param: Infobox.param(name), Infobox.raw_param(name) or Infobox.smw_param(name)
Returns 0 if param is never defined
1 if param is defined for a fraction of the versions
2 if param is defined for all versions
]]
function Infobox:is_param_defined(param)
local undefined = 0
local defined = 0
for version = 1, self.versions do
local value = self:get_param(param, version)
if value ~= nil then
defined = 1
else
undefined = 1
end
end
return 1 + defined - undefined
end
--[[
Adds a row to the infobox table
Parameter should be a table of cells, where each cell is a table with the following arguments:
-- tag : 'td' or 'th'
-- content : a string or Infobox.param(name), Infobox.raw_param(name), Infobox.smw_param(name)
-- attr (optional) : mw.html:attr({ arg1 = '1', ... })
-- css (optional) : mw.html:css({ arg1 = '1', ...)
-- class (optional) : mw.html:addClass('arg')
---- class also supports a table of values, even though mw.html:addClass() does not
---- common classes: infobox-subheader
-- rowspan (optional) : mw.html:attr('rowspan',arg)
-- colspan (optional) : mw.html:attr('colspan',arg)
-- title (optional) : mw.html:attr('title',arg)
The row itself may be assigned a single class by setting the value of the key addClass
-- addClass : mw.html:addClass('arg')
-- this function currently only supports a single string
--]]
function Infobox:add_row(...)
local args = ...
local _row = self.rtable:tag('tr')
-- For each cell
for _, v in ipairs(args) do
local _cell = _row:tag(v.tag)
-- Optional parameters
if v.attr then
_cell:attr(v.attr)
end
if v.colspan then
_cell:attr('colspan',v.colspan)
end
if v.rowspan then
_cell:attr('rowspan',v.rowspan)
end
if v.title then
_cell:attr('title',v.title)
end
if v.css then
_cell:css(v.css)
end
if v.class then
if type(v.class) == 'string' then
_cell:addClass(v.class)
-- mw.html:addClass() doesn't function with tables, add in a loop
elseif type(v.class) == 'table' then
for _, w in ipairs(v.class) do
_cell:addClass(w)
end
end
end
-- Populate the cell contents
local content = self:get_param(v.content, self.default_version)
if content == nil then
content = self.params[v.content.param_name].empty
end
_cell:wikitext(content)
-- Add the switch data if multiple values exist
data_attr_param = self:add_switch_data(v.content)
if data_attr_param then
_cell:attr('data-attr-param', data_attr_param)
end
end
-- allow classes to be defined on the whole row
if args.addClass then
_row:addClass(args.addClass)
end
return self
end
--[[
Adds a blank row of padding spanning the given number of columns
--]]
function Infobox:pad(colspan, class)
local tr = self.rtable:tag('tr'):tag('td'):attr('colspan', colspan or 1):addClass('infobox-padding')
if class then
tr:addClass(class)
end
return self
end
--[[
Adds a class to the table as a whole
--]]
function Infobox:addClass(arg)
self.rtable:addClass(arg)
return self
end
--[[
Setup config values
-- config: table containing configuration parameters
---- infobox_name = mandatory unique identifier for this infobox, used for css
---- max_buttuons = max number of switch buttons before using a dropdown list instead
--]]
function Infobox:config(config)
for k, v in pairs(config) do
if k == 'infobox_name' then
self.infobox_name = mw.ustring.gsub(v, '%s', '_')
elseif k == 'max_buttons' then
self.max_buttons = tonumber(v)
end
end
if self.infobox_name == nil then
table.insert(self.errors, 'infobox_name needs to be defined in Infobox.new()\'s config!')
end
return self
end
--[[
Counts the number of versions in the infobox
Populates Infobox.version_names
Sets Infobox.default_version
--]]
function Infobox:parse_versions()
-- Count the versions and setup self.version_names
local i = 1
while self.args_raw['version'..i] do
table.insert(self.version_names, self.args_raw['version'..i])
i = i + 1
end
self.versions = i - 1
-- Handle the no version case - check for a custom version_name
if self.versions == 0 then
table.insert(self.version_names, self.args_raw['version'] or 'DEFAULT')
end
-- Should either have 0 or 2+ versions
if self.versions == 1 then
table.insert(self.errors, 'There should be multiple versions or no versions. If defining a custom version name for a single entry, use "version=Name" instead of "version1=Name".')
self.versions = 0
end
-- Check for a default_version
if self.args_raw['default_version'] then
self.default_version = tonumber(self.args_raw['default_version'])
if self.default_version > self.versions then -- Make sure the default version exists
self.default_version = 1
end
end
end
--[[
Define all used parameters (except for default_version/version)
-- name : parameter name as used in the Template
-- func : function to validate and process the Template argument
-- If func is a function, will call func(Infobox.raw_param(name))
-- If func is a table, contains the following key-value pairs:
---- name : function
---- params : list of arguments to pass to the function (use Infobox.raw_param(),
---- Infobox.param() and Infobox.smw_param() to use arguments)
-- empty (optional) : text to display in the infobox if func returns nil, defaults to "? (edit)"
-- category_never : category to add if func returns nil for all versions
-- category_partial : category to add if func returns nil for some versions, but a value for other versions
-- category_incomplete : category to add if func returns nil for at least 1 version (i.e. category_never and category_partial combined)
-- category_complete : category to add if func returns a value for all versions
-- smw_property (optional) : if this string is defined, the parameter will be saved into smw
-- smw_func (optional) : function to validate and process the Template argument to save into smw
-- func is used by default if smw_func is not defined
--]]
function Infobox:define_params(...)
-- For every parameter, store its corresponding function to self.params
for _, v in ipairs(...) do
if v.name then
local param = {}
-- Copy the function
if type(v.func) == 'function' or type(v.func) == 'table' then
param.func = v.func
end
-- If smw_property is defined, then use smw_func, or default to func if it is not defined
if v.smw_property then
param.smw_property = v.smw_property
if type(v.smw_func) == 'function' or type(v.smw_func) == 'table' then
param.smw_func = v.smw_func
else
param.smw_func = param.func
end
end
-- If empty is not defined, default message is "? (edit)"
param.empty = v.empty or editbutton("'''?''' (edit)")
-- Get the category names
param.category_never = v.category_never
param.category_partial = v.category_partial
param.category_incomplete = v.category_incomplete
param.category_complete = v.category_complete
-- Store the param
self.params[v.name] = param
table.insert(self.param_names, v.name)
end
end
return self
end
--[[
Fetches a param value. If the value is nil, will return the default value instead
-- arg: a non-table value (string, number, etc), or Infobox.param(name), Infobox.raw_param(name), Infobox.smw_param(name)
-- version: 0/'' for default, or else a number
Returns arg if a constant
param value (or default value) if Infobox.param(name), Infobox.raw_param(name), Infobox.smw_param(name)
--]]
function Infobox:get_param(arg, version)
if version == 0 then
version = ''
end
-- Handle Infobox.param(), Infobox.raw_param(), Infobox.smw_param()
if type(arg) == 'table' then
local value = self[arg.property][arg.param_name..version]
-- If nil, grab default value (which could be nil as well)
if value == nil then
value = self[arg.property][arg.param_name]
end
return value
end
-- Everything else passes through unmodified (string, number, etc)
return arg
end
--[[
Calculates the parsed value of a param
-- param_name : param_name as a string
-- version : 0/'' for default, or else a number
-- smw : boolean, will use smw_func if true, or func is false
--]]
function Infobox:parse_param(param_name, version, smw)
if version == 0 then
version = ''
end
-- use func or smw_func depending on smw argument
local param = self.params[param_name]
local func = smw and param.smw_func or param.func
-- call functions by passing the param_name
if type(func) == 'function' then
return func(self:get_param(self.raw_param(param_name), version))
-- call tables by grabbing the function and reading the param arguments
elseif type(func) == 'table' then
local func_name = func.name
local func_params = func.params
local func_fetched_params = {}
for _, func_param in ipairs(func_params) do
table.insert(func_fetched_params, self:get_param(func_param, version))
end
return func_name(unpack(func_fetched_params))
else
table.insert(self.errors, 'Invalid param definition for '..param_name)
end
end
--[[
Parses all the param values (args_parsed and args_smw)
--]]
function Infobox:parse_params()
-- Calculate the param value for all params and all versions
for _, param_name in ipairs(self.param_names) do
for version=0, self.versions do
if version == 0 then
version = ''
end
-- get the parsed value
self.args_parsed[param_name..version] = self:parse_param(param_name, version, false)
-- Only get the smw value if smw_property is defined
if self.params[param_name].smw_property then
self.args_smw[param_name..version] = self:parse_param(param_name, version, true)
end
end
end
end
--[[
Creates the table header
--]]
function Infobox:table_header()
-- Create infobox table
self.rtable = mw.html.create('table')
:addClass('plainlinks')
:addClass('infobox')
:addClass('infobox-'..self.infobox_name)
-- Create the switch datatable if multiple versions
if self.versions > 1 then
self.rtable:addClass('infobox-switch')
self.switch_datatable = mw.html.create('div')
:addClass('infobox-switch-resources')
:addClass('infobox-resources-'..self.infobox_name)
:addClass('hidden')
end
return self
end
--[[
If multiple versions exist, creates a set of buttons for switching
-- self.max_buttons : if the number of versions exceeds this value, a dropdown will be created instead
--]]
function Infobox:buttons()
if self.versions < 2 then
return
end
-- Button caption
local buttons = self.rtable:tag('caption')
:tag('div')
:addClass('infobox-buttons')
:attr('data-default-index', self.default_version)
-- Dropdown list instead of buttons if too many versions
if self.versions > self.max_buttons then
buttons:addClass('infobox-buttons-select')
end
-- Create all the buttons
for version=1, self.versions do
buttons:tag('span')
:attr('data-switch-index', version)
:attr('data-switch-anchor', '#'..self.version_names[version])
:addClass('button')
:wikitext(self.version_names[version])
-- In case of dropdown list, hide the buttons as the switch gadget will convert them to a dropdown list - we can't directly create the dropdown list here as the select/option tags are rejected by wikitext
if self.versions > self.max_buttons then
buttons:addClass('hidden')
end
end
end
--[[
For each version, stores a subobject for all params that have smw_property defined
--]]
function Infobox:store_smw()
for version=1, self.versions do
-- Generate a subobject name
-- Reminder - subobject name cannot have a . in the first 5 characters
local subobject_name = 'Infobox.'..mw.title.getCurrentTitle().fullText..'#'..self.version_names[version]
-- Store each param that has smw_property defined and is not nil
local subobject = {}
for _, param_name in ipairs(self.param_names) do
local property = self.params[param_name].smw_property
if property then
value = self:get_param(self.smw_param(param_name), version)
if value ~= nil then
subobject[property] = value
end
end
end
-- Keep a copy for debugging
self.__smw_debug[subobject_name] = subobject
-- Save subobjects if not in mainspace
if mw.title.getCurrentTitle():inNamespace(0) then
local result = mw.smw.subobject(subobject, subobject_name)
if result ~= true then
table.insert(self.errors, 'SMW error: '..result.error)
end
end
end
end
--[[
Automatically add categories for each param as defined in define_params()
--]]
function Infobox:parse_categories()
for _, param_name in ipairs(self.param_names) do
local param = self.params[param_name]
local defined = self:is_param_defined(Infobox.param(param_name))
if defined == 0 and param.category_never then
self.categories[param.category_never] = 1
end
if defined == 1 and param.category_partial then
self.categories[param.category_partial] = 1
end
if defined < 2 and param.category_incomplete then
self.categories[param.category_incomplete] = 1
end
if defined == 2 and param.category_complete then
self.categories[param.category_complete] = 1
end
end
end
--[[
When a parameter is added into the table, add the alternative versions' data into the switch datatable
-- content : a non-table value (string, number, etc), or Infobox.param(name), Infobox.raw_param(name), Infobox.smw_param(name)
Returns the name of the parameter in the tag 'data-attr-param'
--]]
function Infobox:add_switch_data(content)
if self.versions <= 1 then
return false
end
-- Only needed for non-constant params
if type(content) ~= 'table' then
return false
end
-- Only needed if the param changes value between different versions
local first_value = self:get_param(content, 1)
local all_same = true
for version=2, self.versions do
if first_value ~= self:get_param(content, version) then
all_same = false
break
end
end
if all_same then
return false
end
-- Let's build the datatable
-- datum name: Prepend raw__ or smw__ if not a parsed argument
local name = content.param_name
if content.property == 'args_raw' then
name = 'raw__' + name
end
if content.property == 'args_smw' then
name = 'smw__' + name
end
data_param = self.switch_datatable:tag('span'):attr('data-attr-param', name)
-- Add each version to the datatable
for version=1, self.versions do
text = self:get_param(content, version)
if text == nil then
text = self.params[content.param_name].empty
end
data_param:tag('span'):attr('data-attr-index', version):wikitext(text)
end
-- return the 'data-attr-param' name
return name
end
--[[
Override tostring
--]]
function Infobox:__tostring()
-- Create error messages
local error_text = ''
for _, v in ipairs(self.errors) do
error_text = error_text..'<span class="mw-message-box-error">'..v..'</span>'
end
-- Create categories
local category_text = ''
for key, _ in pairs(self.categories) do
category_text = category_text..'[[Category:'..key..']]'
end
return tostring(self.rtable) .. tostring(self.switch_datatable) .. error_text .. category_text
end
--[[
Debug function
--]]
function Infobox:dump()
-- Temporarily detach the metatable so we don't override tostring anymore, allowing us to use dumpObject
setmetatable(self, nil)
mw.log(mw.dumpObject(self))
setmetatable(self, Infobox)
mw.log(tostring(self))
end
return Infobox
ca9a3cd0aaa2c0b8e4273d7a1248d6167ef07c93
1621
1616
2024-03-28T18:55:45Z
Gau Cho
5
Fix hidden bug
Scribunto
text/plain
--[=[
-- For documentation, see [[Module:Infobox/doc]]
--]=]
-- <nowiki>
-- Edit button for unknown params
local editbutton = require('Module:Edit button')
local Infobox = {}
Infobox.__index = Infobox
--[[
Infobox class
-- config: table containing configuration parameters
-- params : definitions for each used value
-- args : values passed from the Template
---- the following values are treated specially: default_version, version, version1, version2...
--]]
function Infobox.new(config, params, args)
local obj = setmetatable({
args_raw = args, -- parameters (uncleaned)
args_parsed = {}, -- parsed parameters
args_smw = {}, -- parameters parsed for smw
infobox_name = nil, -- template name
param_names = {}, -- ordered param list
params = {}, -- param definitions
max_buttons = 6, -- If there are more buttons than the max, the buttons will become a dropdown menu
default_version = 1, -- default version to populate the infobox
versions = nil, -- number of versions
version_names = {}, -- title of each version (for selection and SMW)
rtable = nil, -- infobox table to return at the end
switch_datatable = '', -- datatable for javascript for switch infoboxes
categories = {}, -- set of categories
errors = {}, -- list of errors
__smw_debug = {}, -- debug data for smw subobjects
},
Infobox)
-- Step 1, setup config vars and count the versions
obj:config(config)
obj:parse_versions()
-- Step 2, process the params
obj:define_params(params)
obj:parse_params()
-- Table
obj:table_header()
obj:buttons()
-- Misc
obj:store_smw()
obj:parse_categories()
return obj
end
--[[
Refers to a param after being processed by the validating func
Used in add_row(), define_params() and is_param_defined()
--]]
function Infobox.param(param_name)
param = {
property = 'args_parsed',
param_name = param_name,
}
return param
end
--[[
Refers to a param in raw form as passed from the Template
Used in add_row(), define_params() and is_param_defined()
--]]
function Infobox.raw_param(param_name)
param = {
property = 'args_raw',
param_name = param_name,
}
return param
end
--[[
Refers to a param after being processed by the validating smw_func
Used in add_row(), define_params() and is_param_defined()
--]]
function Infobox.smw_param(param_name)
param = {
property = 'args_smw',
param_name = param_name,
}
return param
end
--[[
Checks to see if a param is defined.
-- param: Infobox.param(name), Infobox.raw_param(name) or Infobox.smw_param(name)
Returns 0 if param is never defined
1 if param is defined for a fraction of the versions
2 if param is defined for all versions
]]
function Infobox:is_param_defined(param)
local undefined = 0
local defined = 0
for version = 1, self.versions do
local value = self:get_param(param, version)
if value ~= nil then
defined = 1
else
undefined = 1
end
end
return 1 + defined - undefined
end
--[[
Adds a row to the infobox table
Parameter should be a table of cells, where each cell is a table with the following arguments:
-- tag : 'td' or 'th'
-- content : a string or Infobox.param(name), Infobox.raw_param(name), Infobox.smw_param(name)
-- attr (optional) : mw.html:attr({ arg1 = '1', ... })
-- css (optional) : mw.html:css({ arg1 = '1', ...)
-- class (optional) : mw.html:addClass('arg')
---- class also supports a table of values, even though mw.html:addClass() does not
---- common classes: infobox-subheader
-- rowspan (optional) : mw.html:attr('rowspan',arg)
-- colspan (optional) : mw.html:attr('colspan',arg)
-- title (optional) : mw.html:attr('title',arg)
The row itself may be assigned a single class by setting the value of the key addClass
-- addClass : mw.html:addClass('arg')
-- this function currently only supports a single string
--]]
function Infobox:add_row(...)
local args = ...
local _row = self.rtable:tag('tr')
-- For each cell
for _, v in ipairs(args) do
local _cell = _row:tag(v.tag)
-- Optional parameters
if v.attr then
_cell:attr(v.attr)
end
if v.colspan then
_cell:attr('colspan',v.colspan)
end
if v.rowspan then
_cell:attr('rowspan',v.rowspan)
end
if v.title then
_cell:attr('title',v.title)
end
if v.css then
_cell:css(v.css)
end
if v.class then
if type(v.class) == 'string' then
_cell:addClass(v.class)
-- mw.html:addClass() doesn't function with tables, add in a loop
elseif type(v.class) == 'table' then
for _, w in ipairs(v.class) do
_cell:addClass(w)
end
end
end
-- Populate the cell contents
local content = self:get_param(v.content, self.default_version)
if content == nil then
content = self.params[v.content.param_name].empty
end
_cell:wikitext(content)
-- Add the switch data if multiple values exist
data_attr_param = self:add_switch_data(v.content)
if data_attr_param then
_cell:attr('data-attr-param', data_attr_param)
end
end
-- allow classes to be defined on the whole row
if args.addClass then
_row:addClass(args.addClass)
end
return self
end
--[[
Adds a blank row of padding spanning the given number of columns
--]]
function Infobox:pad(colspan, class)
local tr = self.rtable:tag('tr'):tag('td'):attr('colspan', colspan or 1):addClass('infobox-padding')
if class then
tr:addClass(class)
end
return self
end
--[[
Adds a class to the table as a whole
--]]
function Infobox:addClass(arg)
self.rtable:addClass(arg)
return self
end
--[[
Setup config values
-- config: table containing configuration parameters
---- infobox_name = mandatory unique identifier for this infobox, used for css
---- max_buttuons = max number of switch buttons before using a dropdown list instead
--]]
function Infobox:config(config)
for k, v in pairs(config) do
if k == 'infobox_name' then
self.infobox_name = mw.ustring.gsub(v, '%s', '_')
elseif k == 'max_buttons' then
self.max_buttons = tonumber(v)
end
end
if self.infobox_name == nil then
table.insert(self.errors, 'infobox_name needs to be defined in Infobox.new()\'s config!')
end
return self
end
--[[
Counts the number of versions in the infobox
Populates Infobox.version_names
Sets Infobox.default_version
--]]
function Infobox:parse_versions()
-- Count the versions and setup self.version_names
local i = 1
while self.args_raw['version'..i] do
table.insert(self.version_names, self.args_raw['version'..i])
i = i + 1
end
self.versions = i - 1
-- Handle the no version case - check for a custom version_name
if self.versions == 0 then
table.insert(self.version_names, self.args_raw['version'] or 'DEFAULT')
end
-- Should either have 0 or 2+ versions
if self.versions == 1 then
table.insert(self.errors, 'There should be multiple versions or no versions. If defining a custom version name for a single entry, use "version=Name" instead of "version1=Name".')
self.versions = 0
end
-- Check for a default_version
if self.args_raw['default_version'] then
self.default_version = tonumber(self.args_raw['default_version'])
if self.default_version > self.versions then -- Make sure the default version exists
self.default_version = 1
end
end
end
--[[
Define all used parameters (except for default_version/version)
-- name : parameter name as used in the Template
-- func : function to validate and process the Template argument
-- If func is a function, will call func(Infobox.raw_param(name))
-- If func is a table, contains the following key-value pairs:
---- name : function
---- params : list of arguments to pass to the function (use Infobox.raw_param(),
---- Infobox.param() and Infobox.smw_param() to use arguments)
-- empty (optional) : text to display in the infobox if func returns nil, defaults to "? (edit)"
-- category_never : category to add if func returns nil for all versions
-- category_partial : category to add if func returns nil for some versions, but a value for other versions
-- category_incomplete : category to add if func returns nil for at least 1 version (i.e. category_never and category_partial combined)
-- category_complete : category to add if func returns a value for all versions
-- smw_property (optional) : if this string is defined, the parameter will be saved into smw
-- smw_func (optional) : function to validate and process the Template argument to save into smw
-- func is used by default if smw_func is not defined
--]]
function Infobox:define_params(...)
-- For every parameter, store its corresponding function to self.params
for _, v in ipairs(...) do
if v.name then
local param = {}
-- Copy the function
if type(v.func) == 'function' or type(v.func) == 'table' then
param.func = v.func
end
-- If smw_property is defined, then use smw_func, or default to func if it is not defined
if v.smw_property then
param.smw_property = v.smw_property
if type(v.smw_func) == 'function' or type(v.smw_func) == 'table' then
param.smw_func = v.smw_func
else
param.smw_func = param.func
end
end
-- If empty is not defined, default message is "? (edit)"
param.empty = v.empty or editbutton("'''?''' (edit)")
-- Get the category names
param.category_never = v.category_never
param.category_partial = v.category_partial
param.category_incomplete = v.category_incomplete
param.category_complete = v.category_complete
-- Store the param
self.params[v.name] = param
table.insert(self.param_names, v.name)
end
end
return self
end
--[[
Fetches a param value. If the value is nil, will return the default value instead
-- arg: a non-table value (string, number, etc), or Infobox.param(name), Infobox.raw_param(name), Infobox.smw_param(name)
-- version: 0/'' for default, or else a number
Returns arg if a constant
param value (or default value) if Infobox.param(name), Infobox.raw_param(name), Infobox.smw_param(name)
--]]
function Infobox:get_param(arg, version)
if version == 0 then
version = ''
end
-- Handle Infobox.param(), Infobox.raw_param(), Infobox.smw_param()
if type(arg) == 'table' then
local value = self[arg.property][arg.param_name..version]
-- If nil, grab default value (which could be nil as well)
if value == nil then
value = self[arg.property][arg.param_name]
end
return value
end
-- Everything else passes through unmodified (string, number, etc)
return arg
end
--[[
Calculates the parsed value of a param
-- param_name : param_name as a string
-- version : 0/'' for default, or else a number
-- smw : boolean, will use smw_func if true, or func is false
--]]
function Infobox:parse_param(param_name, version, smw)
if version == 0 then
version = ''
end
-- use func or smw_func depending on smw argument
local param = self.params[param_name]
local func = smw and param.smw_func or param.func
-- call functions by passing the param_name
if type(func) == 'function' then
return func(self:get_param(self.raw_param(param_name), version))
-- call tables by grabbing the function and reading the param arguments
elseif type(func) == 'table' then
local func_name = func.name
local func_params = func.params
local func_fetched_params = {}
for _, func_param in ipairs(func_params) do
table.insert(func_fetched_params, self:get_param(func_param, version))
end
return func_name(unpack(func_fetched_params))
else
table.insert(self.errors, 'Invalid param definition for '..param_name)
end
end
--[[
Parses all the param values (args_parsed and args_smw)
--]]
function Infobox:parse_params()
-- Calculate the param value for all params and all versions
for _, param_name in ipairs(self.param_names) do
for version=0, self.versions do
if version == 0 then
version = ''
end
-- get the parsed value
self.args_parsed[param_name..version] = self:parse_param(param_name, version, false)
-- Only get the smw value if smw_property is defined
if self.params[param_name].smw_property then
self.args_smw[param_name..version] = self:parse_param(param_name, version, true)
end
end
end
end
--[[
Creates the table header
--]]
function Infobox:table_header()
-- Create infobox table
self.rtable = mw.html.create('table')
:addClass('plainlinks')
:addClass('infobox')
:addClass('infobox-'..self.infobox_name)
-- Create the switch datatable if multiple versions
if self.versions > 1 then
self.rtable:addClass('infobox-switch')
self.switch_datatable = mw.html.create('div')
:addClass('infobox-switch-resources')
:addClass('infobox-resources-'..self.infobox_name)
:addClass('hidden')
end
return self
end
--[[
If multiple versions exist, creates a set of buttons for switching
-- self.max_buttons : if the number of versions exceeds this value, a dropdown will be created instead
--]]
function Infobox:buttons()
if self.versions < 2 then
return
end
-- Button caption
local buttons = self.rtable:tag('caption')
:tag('div')
:addClass('infobox-buttons')
:attr('data-default-index', self.default_version)
-- Dropdown list instead of buttons if too many versions
if self.versions > self.max_buttons then
buttons:addClass('infobox-buttons-select')
end
-- Create all the buttons
for version=1, self.versions do
local button = buttons:tag('span')
:attr('data-switch-index', version)
:attr('data-switch-anchor', '#'..self.version_names[version])
:addClass('button')
:wikitext(self.version_names[version])
-- In case of dropdown list, hide the buttons as the switch gadget will convert them to a dropdown list - we can't directly create the dropdown list here as the select/option tags are rejected by wikitext
if self.versions > self.max_buttons then
button:addClass('hidden')
end
end
end
--[[
For each version, stores a subobject for all params that have smw_property defined
--]]
function Infobox:store_smw()
for version=1, self.versions do
-- Generate a subobject name
-- Reminder - subobject name cannot have a . in the first 5 characters
local subobject_name = 'Infobox.'..mw.title.getCurrentTitle().fullText..'#'..self.version_names[version]
-- Store each param that has smw_property defined and is not nil
local subobject = {}
for _, param_name in ipairs(self.param_names) do
local property = self.params[param_name].smw_property
if property then
value = self:get_param(self.smw_param(param_name), version)
if value ~= nil then
subobject[property] = value
end
end
end
-- Keep a copy for debugging
self.__smw_debug[subobject_name] = subobject
-- Save subobjects if not in mainspace
if mw.title.getCurrentTitle():inNamespace(0) then
local result = mw.smw.subobject(subobject, subobject_name)
if result ~= true then
table.insert(self.errors, 'SMW error: '..result.error)
end
end
end
end
--[[
Automatically add categories for each param as defined in define_params()
--]]
function Infobox:parse_categories()
for _, param_name in ipairs(self.param_names) do
local param = self.params[param_name]
local defined = self:is_param_defined(Infobox.param(param_name))
if defined == 0 and param.category_never then
self.categories[param.category_never] = 1
end
if defined == 1 and param.category_partial then
self.categories[param.category_partial] = 1
end
if defined < 2 and param.category_incomplete then
self.categories[param.category_incomplete] = 1
end
if defined == 2 and param.category_complete then
self.categories[param.category_complete] = 1
end
end
end
--[[
When a parameter is added into the table, add the alternative versions' data into the switch datatable
-- content : a non-table value (string, number, etc), or Infobox.param(name), Infobox.raw_param(name), Infobox.smw_param(name)
Returns the name of the parameter in the tag 'data-attr-param'
--]]
function Infobox:add_switch_data(content)
if self.versions <= 1 then
return false
end
-- Only needed for non-constant params
if type(content) ~= 'table' then
return false
end
-- Only needed if the param changes value between different versions
local first_value = self:get_param(content, 1)
local all_same = true
for version=2, self.versions do
if first_value ~= self:get_param(content, version) then
all_same = false
break
end
end
if all_same then
return false
end
-- Let's build the datatable
-- datum name: Prepend raw__ or smw__ if not a parsed argument
local name = content.param_name
if content.property == 'args_raw' then
name = 'raw__' + name
end
if content.property == 'args_smw' then
name = 'smw__' + name
end
data_param = self.switch_datatable:tag('span'):attr('data-attr-param', name)
-- Add each version to the datatable
for version=1, self.versions do
text = self:get_param(content, version)
if text == nil then
text = self.params[content.param_name].empty
end
data_param:tag('span'):attr('data-attr-index', version):wikitext(text)
end
-- return the 'data-attr-param' name
return name
end
--[[
Override tostring
--]]
function Infobox:__tostring()
-- Create error messages
local error_text = ''
for _, v in ipairs(self.errors) do
error_text = error_text..'<span class="mw-message-box-error">'..v..'</span>'
end
-- Create categories
local category_text = ''
for key, _ in pairs(self.categories) do
category_text = category_text..'[[Category:'..key..']]'
end
return tostring(self.rtable) .. tostring(self.switch_datatable) .. error_text .. category_text
end
--[[
Debug function
--]]
function Infobox:dump()
-- Temporarily detach the metatable so we don't override tostring anymore, allowing us to use dumpObject
setmetatable(self, nil)
mw.log(mw.dumpObject(self))
setmetatable(self, Infobox)
mw.log(tostring(self))
end
return Infobox
818bbf8eb3c4e138ce83ecfc5d21281b5288d307
1634
1621
2024-03-29T01:47:17Z
Gau Cho
5
Fix smw bug for single-versioned infoboxes
Scribunto
text/plain
--[=[
-- For documentation, see [[Module:Infobox/doc]]
--]=]
-- <nowiki>
-- Edit button for unknown params
local editbutton = require('Module:Edit button')
local Infobox = {}
Infobox.__index = Infobox
--[[
Infobox class
-- config: table containing configuration parameters
-- params : definitions for each used value
-- args : values passed from the Template
---- the following values are treated specially: default_version, version, version1, version2...
--]]
function Infobox.new(config, params, args)
local obj = setmetatable({
args_raw = args, -- parameters (uncleaned)
args_parsed = {}, -- parsed parameters
args_smw = {}, -- parameters parsed for smw
infobox_name = nil, -- template name
param_names = {}, -- ordered param list
params = {}, -- param definitions
max_buttons = 6, -- If there are more buttons than the max, the buttons will become a dropdown menu
default_version = 1, -- default version to populate the infobox
versions = nil, -- number of versions
version_names = {}, -- title of each version (for selection and SMW)
rtable = nil, -- infobox table to return at the end
switch_datatable = '', -- datatable for javascript for switch infoboxes
categories = {}, -- set of categories
errors = {}, -- list of errors
__smw_debug = {}, -- debug data for smw subobjects
},
Infobox)
-- Step 1, setup config vars and count the versions
obj:config(config)
obj:parse_versions()
-- Step 2, process the params
obj:define_params(params)
obj:parse_params()
-- Table
obj:table_header()
obj:buttons()
-- Misc
obj:store_smw()
obj:parse_categories()
return obj
end
--[[
Refers to a param after being processed by the validating func
Used in add_row(), define_params() and is_param_defined()
--]]
function Infobox.param(param_name)
param = {
property = 'args_parsed',
param_name = param_name,
}
return param
end
--[[
Refers to a param in raw form as passed from the Template
Used in add_row(), define_params() and is_param_defined()
--]]
function Infobox.raw_param(param_name)
param = {
property = 'args_raw',
param_name = param_name,
}
return param
end
--[[
Refers to a param after being processed by the validating smw_func
Used in add_row(), define_params() and is_param_defined()
--]]
function Infobox.smw_param(param_name)
param = {
property = 'args_smw',
param_name = param_name,
}
return param
end
--[[
Checks to see if a param is defined.
-- param: Infobox.param(name), Infobox.raw_param(name) or Infobox.smw_param(name)
Returns 0 if param is never defined
1 if param is defined for a fraction of the versions
2 if param is defined for all versions
]]
function Infobox:is_param_defined(param)
local undefined = 0
local defined = 0
for version = 1, self.versions do
local value = self:get_param(param, version)
if value ~= nil then
defined = 1
else
undefined = 1
end
end
return 1 + defined - undefined
end
--[[
Adds a row to the infobox table
Parameter should be a table of cells, where each cell is a table with the following arguments:
-- tag : 'td' or 'th'
-- content : a string or Infobox.param(name), Infobox.raw_param(name), Infobox.smw_param(name)
-- attr (optional) : mw.html:attr({ arg1 = '1', ... })
-- css (optional) : mw.html:css({ arg1 = '1', ...)
-- class (optional) : mw.html:addClass('arg')
---- class also supports a table of values, even though mw.html:addClass() does not
---- common classes: infobox-subheader
-- rowspan (optional) : mw.html:attr('rowspan',arg)
-- colspan (optional) : mw.html:attr('colspan',arg)
-- title (optional) : mw.html:attr('title',arg)
The row itself may be assigned a single class by setting the value of the key addClass
-- addClass : mw.html:addClass('arg')
-- this function currently only supports a single string
--]]
function Infobox:add_row(...)
local args = ...
local _row = self.rtable:tag('tr')
-- For each cell
for _, v in ipairs(args) do
local _cell = _row:tag(v.tag)
-- Optional parameters
if v.attr then
_cell:attr(v.attr)
end
if v.colspan then
_cell:attr('colspan',v.colspan)
end
if v.rowspan then
_cell:attr('rowspan',v.rowspan)
end
if v.title then
_cell:attr('title',v.title)
end
if v.css then
_cell:css(v.css)
end
if v.class then
if type(v.class) == 'string' then
_cell:addClass(v.class)
-- mw.html:addClass() doesn't function with tables, add in a loop
elseif type(v.class) == 'table' then
for _, w in ipairs(v.class) do
_cell:addClass(w)
end
end
end
-- Populate the cell contents
local content = self:get_param(v.content, self.default_version)
if content == nil then
content = self.params[v.content.param_name].empty
end
_cell:wikitext(content)
-- Add the switch data if multiple values exist
data_attr_param = self:add_switch_data(v.content)
if data_attr_param then
_cell:attr('data-attr-param', data_attr_param)
end
end
-- allow classes to be defined on the whole row
if args.addClass then
_row:addClass(args.addClass)
end
return self
end
--[[
Adds a blank row of padding spanning the given number of columns
--]]
function Infobox:pad(colspan, class)
local tr = self.rtable:tag('tr'):tag('td'):attr('colspan', colspan or 1):addClass('infobox-padding')
if class then
tr:addClass(class)
end
return self
end
--[[
Adds a class to the table as a whole
--]]
function Infobox:addClass(arg)
self.rtable:addClass(arg)
return self
end
--[[
Setup config values
-- config: table containing configuration parameters
---- infobox_name = mandatory unique identifier for this infobox, used for css
---- max_buttuons = max number of switch buttons before using a dropdown list instead
--]]
function Infobox:config(config)
for k, v in pairs(config) do
if k == 'infobox_name' then
self.infobox_name = mw.ustring.gsub(v, '%s', '_')
elseif k == 'max_buttons' then
self.max_buttons = tonumber(v)
end
end
if self.infobox_name == nil then
table.insert(self.errors, 'infobox_name needs to be defined in Infobox.new()\'s config!')
end
return self
end
--[[
Counts the number of versions in the infobox
Populates Infobox.version_names
Sets Infobox.default_version
--]]
function Infobox:parse_versions()
-- Count the versions and setup self.version_names
local i = 1
while self.args_raw['version'..i] do
table.insert(self.version_names, self.args_raw['version'..i])
i = i + 1
end
self.versions = i - 1
-- Handle the no version case - check for a custom version_name
if self.versions == 0 then
table.insert(self.version_names, self.args_raw['version'] or 'DEFAULT')
end
-- Should either have 0 or 2+ versions
if self.versions == 1 then
table.insert(self.errors, 'There should be multiple versions or no versions. If defining a custom version name for a single entry, use "version=Name" instead of "version1=Name".')
self.versions = 0
end
-- Check for a default_version
if self.args_raw['default_version'] then
self.default_version = tonumber(self.args_raw['default_version'])
if self.default_version > self.versions then -- Make sure the default version exists
self.default_version = 1
end
end
end
--[[
Define all used parameters (except for default_version/version)
-- name : parameter name as used in the Template
-- func : function to validate and process the Template argument
-- If func is a function, will call func(Infobox.raw_param(name))
-- If func is a table, contains the following key-value pairs:
---- name : function
---- params : list of arguments to pass to the function (use Infobox.raw_param(),
---- Infobox.param() and Infobox.smw_param() to use arguments)
-- empty (optional) : text to display in the infobox if func returns nil, defaults to "? (edit)"
-- category_never : category to add if func returns nil for all versions
-- category_partial : category to add if func returns nil for some versions, but a value for other versions
-- category_incomplete : category to add if func returns nil for at least 1 version (i.e. category_never and category_partial combined)
-- category_complete : category to add if func returns a value for all versions
-- smw_property (optional) : if this string is defined, the parameter will be saved into smw
-- smw_func (optional) : function to validate and process the Template argument to save into smw
-- func is used by default if smw_func is not defined
--]]
function Infobox:define_params(...)
-- For every parameter, store its corresponding function to self.params
for _, v in ipairs(...) do
if v.name then
local param = {}
-- Copy the function
if type(v.func) == 'function' or type(v.func) == 'table' then
param.func = v.func
end
-- If smw_property is defined, then use smw_func, or default to func if it is not defined
if v.smw_property then
param.smw_property = v.smw_property
if type(v.smw_func) == 'function' or type(v.smw_func) == 'table' then
param.smw_func = v.smw_func
else
param.smw_func = param.func
end
end
-- If empty is not defined, default message is "? (edit)"
param.empty = v.empty or editbutton("'''?''' (edit)")
-- Get the category names
param.category_never = v.category_never
param.category_partial = v.category_partial
param.category_incomplete = v.category_incomplete
param.category_complete = v.category_complete
-- Store the param
self.params[v.name] = param
table.insert(self.param_names, v.name)
end
end
return self
end
--[[
Fetches a param value. If the value is nil, will return the default value instead
-- arg: a non-table value (string, number, etc), or Infobox.param(name), Infobox.raw_param(name), Infobox.smw_param(name)
-- version: 0/'' for default, or else a number
Returns arg if a constant
param value (or default value) if Infobox.param(name), Infobox.raw_param(name), Infobox.smw_param(name)
--]]
function Infobox:get_param(arg, version)
if version == 0 then
version = ''
end
-- Handle Infobox.param(), Infobox.raw_param(), Infobox.smw_param()
if type(arg) == 'table' then
local value = self[arg.property][arg.param_name..version]
-- If nil, grab default value (which could be nil as well)
if value == nil then
value = self[arg.property][arg.param_name]
end
return value
end
-- Everything else passes through unmodified (string, number, etc)
return arg
end
--[[
Calculates the parsed value of a param
-- param_name : param_name as a string
-- version : 0/'' for default, or else a number
-- smw : boolean, will use smw_func if true, or func is false
--]]
function Infobox:parse_param(param_name, version, smw)
if version == 0 then
version = ''
end
-- use func or smw_func depending on smw argument
local param = self.params[param_name]
local func = smw and param.smw_func or param.func
-- call functions by passing the param_name
if type(func) == 'function' then
return func(self:get_param(self.raw_param(param_name), version))
-- call tables by grabbing the function and reading the param arguments
elseif type(func) == 'table' then
local func_name = func.name
local func_params = func.params
local func_fetched_params = {}
for _, func_param in ipairs(func_params) do
table.insert(func_fetched_params, self:get_param(func_param, version))
end
return func_name(unpack(func_fetched_params))
else
table.insert(self.errors, 'Invalid param definition for '..param_name)
end
end
--[[
Parses all the param values (args_parsed and args_smw)
--]]
function Infobox:parse_params()
-- Calculate the param value for all params and all versions
for _, param_name in ipairs(self.param_names) do
for version=0, self.versions do
if version == 0 then
version = ''
end
-- get the parsed value
self.args_parsed[param_name..version] = self:parse_param(param_name, version, false)
-- Only get the smw value if smw_property is defined
if self.params[param_name].smw_property then
self.args_smw[param_name..version] = self:parse_param(param_name, version, true)
end
end
end
end
--[[
Creates the table header
--]]
function Infobox:table_header()
-- Create infobox table
self.rtable = mw.html.create('table')
:addClass('plainlinks')
:addClass('infobox')
:addClass('infobox-'..self.infobox_name)
-- Create the switch datatable if multiple versions
if self.versions > 1 then
self.rtable:addClass('infobox-switch')
self.switch_datatable = mw.html.create('div')
:addClass('infobox-switch-resources')
:addClass('infobox-resources-'..self.infobox_name)
:addClass('hidden')
end
return self
end
--[[
If multiple versions exist, creates a set of buttons for switching
-- self.max_buttons : if the number of versions exceeds this value, a dropdown will be created instead
--]]
function Infobox:buttons()
if self.versions < 2 then
return
end
-- Button caption
local buttons = self.rtable:tag('caption')
:tag('div')
:addClass('infobox-buttons')
:attr('data-default-index', self.default_version)
-- Dropdown list instead of buttons if too many versions
if self.versions > self.max_buttons then
buttons:addClass('infobox-buttons-select')
end
-- Create all the buttons
for version=1, self.versions do
local button = buttons:tag('span')
:attr('data-switch-index', version)
:attr('data-switch-anchor', '#'..self.version_names[version])
:addClass('button')
:wikitext(self.version_names[version])
-- In case of dropdown list, hide the buttons as the switch gadget will convert them to a dropdown list - we can't directly create the dropdown list here as the select/option tags are rejected by wikitext
if self.versions > self.max_buttons then
button:addClass('hidden')
end
end
end
--[[
For each version, stores a subobject for all params that have smw_property defined
--]]
function Infobox:store_smw()
local versions = (self.versions > 1) and self.versions or 1 -- Grab versions, but convert 0 -> 1
for version=1, versions do
-- Generate a subobject name
-- Reminder - subobject name cannot have a . in the first 5 characters
local subobject_name = 'Infobox.'..mw.title.getCurrentTitle().fullText..'#'..self.version_names[version]
-- Store each param that has smw_property defined and is not nil
local subobject = {}
for _, param_name in ipairs(self.param_names) do
local property = self.params[param_name].smw_property
if property then
value = self:get_param(self.smw_param(param_name), version)
if value ~= nil then
subobject[property] = value
end
end
end
-- Keep a copy for debugging
self.__smw_debug[subobject_name] = subobject
-- Save subobjects if not in mainspace
if mw.title.getCurrentTitle():inNamespace(0) then
local result = mw.smw.subobject(subobject, subobject_name)
if result ~= true then
table.insert(self.errors, 'SMW error: '..result.error)
end
end
end
end
--[[
Automatically add categories for each param as defined in define_params()
--]]
function Infobox:parse_categories()
for _, param_name in ipairs(self.param_names) do
local param = self.params[param_name]
local defined = self:is_param_defined(Infobox.param(param_name))
if defined == 0 and param.category_never then
self.categories[param.category_never] = 1
end
if defined == 1 and param.category_partial then
self.categories[param.category_partial] = 1
end
if defined < 2 and param.category_incomplete then
self.categories[param.category_incomplete] = 1
end
if defined == 2 and param.category_complete then
self.categories[param.category_complete] = 1
end
end
end
--[[
When a parameter is added into the table, add the alternative versions' data into the switch datatable
-- content : a non-table value (string, number, etc), or Infobox.param(name), Infobox.raw_param(name), Infobox.smw_param(name)
Returns the name of the parameter in the tag 'data-attr-param'
--]]
function Infobox:add_switch_data(content)
if self.versions <= 1 then
return false
end
-- Only needed for non-constant params
if type(content) ~= 'table' then
return false
end
-- Only needed if the param changes value between different versions
local first_value = self:get_param(content, 1)
local all_same = true
for version=2, self.versions do
if first_value ~= self:get_param(content, version) then
all_same = false
break
end
end
if all_same then
return false
end
-- Let's build the datatable
-- datum name: Prepend raw__ or smw__ if not a parsed argument
local name = content.param_name
if content.property == 'args_raw' then
name = 'raw__' + name
end
if content.property == 'args_smw' then
name = 'smw__' + name
end
data_param = self.switch_datatable:tag('span'):attr('data-attr-param', name)
-- Add each version to the datatable
for version=1, self.versions do
text = self:get_param(content, version)
if text == nil then
text = self.params[content.param_name].empty
end
data_param:tag('span'):attr('data-attr-index', version):wikitext(text)
end
-- return the 'data-attr-param' name
return name
end
--[[
Override tostring
--]]
function Infobox:__tostring()
-- Create error messages
local error_text = ''
for _, v in ipairs(self.errors) do
error_text = error_text..'<span class="mw-message-box-error">'..v..'</span>'
end
-- Create categories
local category_text = ''
for key, _ in pairs(self.categories) do
category_text = category_text..'[[Category:'..key..']]'
end
return tostring(self.rtable) .. tostring(self.switch_datatable) .. error_text .. category_text
end
--[[
Debug function
--]]
function Infobox:dump()
-- Temporarily detach the metatable so we don't override tostring anymore, allowing us to use dumpObject
setmetatable(self, nil)
mw.log(mw.dumpObject(self))
setmetatable(self, Infobox)
mw.log(tostring(self))
end
return Infobox
e9fcee540dc9198ea1b15dcf8c784acac24fbbb4
MediaWiki:Gadgets-definition
8
6
1617
1010
2024-03-28T18:38:31Z
Gau Cho
5
Remove all the gadgets that were nuked by Cook
wikitext
text/x-wiki
This page contains the definitions for all gadgets on the wiki. In most cases, code that could be placed in Common.js should be made into a module here instead for granularity and better support for mobile, etc.
Edits to this page should be done with care. When targeting a gadget for mobile, ensure that the gadget '''works''' on mobile properly by debugging it on mobile devices. Some mobile devices do not allow JavaScript to run, or do not run it by default, so there should always be a fallback option for those that do not have JS enabled. For scripts that are intended for use on a lot of pages, it may be a good idea to propose it on the [[Forum:Forum Grove|Yew Grove]] first. Gadgets which can be enabled/disabled by the user (on [[Special:Preferences#mw-prefsection-gadgets|Special:Preferences]]) should have a description created on ''Mediawiki:Gadget-gadgetname''.
==Core==
* autocollapse[ResourceLoader|type=general|default|hidden|dependencies=mediawiki.Uri]|autocollapse.js
* autosort[ResourceLoader|type=general|dependencies=ext.gadget.bsw-util,ext.gadget.highlightTable|targets=desktop,mobile|default]|autosort.js
* bsw-util[ResourceLoader|dependencies=mediawiki.util|targets=desktop,mobile|type=general|default|hidden]|bsw-util.js
* Less[ResourceLoader|rights=editinterface|dependencies=mediawiki.api|type=general|default|hidden]|Less.js
* navboxToggle[ResourceLoader|targets=mobile|dependencies=ext.gadget.bsw-util|type=general|default|hidden]|navboxToggle.js
* tooltips[ResourceLoader|type=general|default|hidden]|tooltips.js
* uncheckfileredirects[ResourceLoader|type=general|rights=suppressredirect|default|hidden]|UncheckFileRedirect.js
==Tools==
* contributions[ResourceLoader|type=general|default|dependencies=ext.gadget.bsw-util]|contributions.js
* dropdown[ResourceLoader|type=general|dependencies=mediawiki.util,mediawiki.api|default]|dropdown.js
* editCount[ResourceLoader|type=general|dependencies=ext.gadget.bsw-util]|editCount.js
* newPage[ResourceLoader|default|type=general|dependencies=ext.gadget.bsw-util|rights=createpage]|newPage.js
* purge[ResourceLoader|default|type=general|dependencies=ext.gadget.bsw-util,ext.smw.purge,mediawiki.api|hidden]|purge.js
* QuickDiff[ResourceLoader|type=general|dependencies=mediawiki.Uri,mediawiki.util]|QDmodal.js|QuickDiff.js|QDmodal.css
* scribunto-console[ResourceLoader|actions=edit|type=general|default]|scribunto-console.js
* scribunto-console-core[ResourceLoader|type=general|hidden]|scribunto-console-core.js|scribunto-console.css
* sectionAnchors[ResourceLoader|type=general|default]|sectionAnchors.js|sectionAnchors.css
==Appearance==
* markblocked[ResourceLoader|type=general]|markblocked.js
* readableHistory[ResourceLoader|type=general|actions=history]|readableHistory.js|readableHistory.css
* readableRC[ResourceLoader|type=general]|readableRC.js
* readableRC-core[ResourceLoader|type=general|dependencies=oojs-ui-core|hidden]|readableRC-core.js|readableRC-core.css
==Other==
* gadgetLinks[ResourceLoader|type=general|default]|gadgetLinks.js
a40d2add8b7af680f45ae55ec10b8acc30ed4eb8
1618
1617
2024-03-28T18:39:11Z
Gau Cho
5
Remove ext.gadget.highlightTable dependancy from autosort, as highlightTable doesn't exist
wikitext
text/x-wiki
This page contains the definitions for all gadgets on the wiki. In most cases, code that could be placed in Common.js should be made into a module here instead for granularity and better support for mobile, etc.
Edits to this page should be done with care. When targeting a gadget for mobile, ensure that the gadget '''works''' on mobile properly by debugging it on mobile devices. Some mobile devices do not allow JavaScript to run, or do not run it by default, so there should always be a fallback option for those that do not have JS enabled. For scripts that are intended for use on a lot of pages, it may be a good idea to propose it on the [[Forum:Forum Grove|Yew Grove]] first. Gadgets which can be enabled/disabled by the user (on [[Special:Preferences#mw-prefsection-gadgets|Special:Preferences]]) should have a description created on ''Mediawiki:Gadget-gadgetname''.
==Core==
* autocollapse[ResourceLoader|type=general|default|hidden|dependencies=mediawiki.Uri]|autocollapse.js
* autosort[ResourceLoader|type=general|dependencies=ext.gadget.bsw-util|targets=desktop,mobile|default]|autosort.js
* bsw-util[ResourceLoader|dependencies=mediawiki.util|targets=desktop,mobile|type=general|default|hidden]|bsw-util.js
* Less[ResourceLoader|rights=editinterface|dependencies=mediawiki.api|type=general|default|hidden]|Less.js
* navboxToggle[ResourceLoader|targets=mobile|dependencies=ext.gadget.bsw-util|type=general|default|hidden]|navboxToggle.js
* tooltips[ResourceLoader|type=general|default|hidden]|tooltips.js
* uncheckfileredirects[ResourceLoader|type=general|rights=suppressredirect|default|hidden]|UncheckFileRedirect.js
==Tools==
* contributions[ResourceLoader|type=general|default|dependencies=ext.gadget.bsw-util]|contributions.js
* dropdown[ResourceLoader|type=general|dependencies=mediawiki.util,mediawiki.api|default]|dropdown.js
* editCount[ResourceLoader|type=general|dependencies=ext.gadget.bsw-util]|editCount.js
* newPage[ResourceLoader|default|type=general|dependencies=ext.gadget.bsw-util|rights=createpage]|newPage.js
* purge[ResourceLoader|default|type=general|dependencies=ext.gadget.bsw-util,ext.smw.purge,mediawiki.api|hidden]|purge.js
* QuickDiff[ResourceLoader|type=general|dependencies=mediawiki.Uri,mediawiki.util]|QDmodal.js|QuickDiff.js|QDmodal.css
* scribunto-console[ResourceLoader|actions=edit|type=general|default]|scribunto-console.js
* scribunto-console-core[ResourceLoader|type=general|hidden]|scribunto-console-core.js|scribunto-console.css
* sectionAnchors[ResourceLoader|type=general|default]|sectionAnchors.js|sectionAnchors.css
==Appearance==
* markblocked[ResourceLoader|type=general]|markblocked.js
* readableHistory[ResourceLoader|type=general|actions=history]|readableHistory.js|readableHistory.css
* readableRC[ResourceLoader|type=general]|readableRC.js
* readableRC-core[ResourceLoader|type=general|dependencies=oojs-ui-core|hidden]|readableRC-core.js|readableRC-core.css
==Other==
* gadgetLinks[ResourceLoader|type=general|default]|gadgetLinks.js
b19f590d35bfe07c2fd698a66c1a1863930a376e
1619
1618
2024-03-28T18:42:29Z
Gau Cho
5
Add switch-infobox
wikitext
text/x-wiki
This page contains the definitions for all gadgets on the wiki. In most cases, code that could be placed in Common.js should be made into a module here instead for granularity and better support for mobile, etc.
Edits to this page should be done with care. When targeting a gadget for mobile, ensure that the gadget '''works''' on mobile properly by debugging it on mobile devices. Some mobile devices do not allow JavaScript to run, or do not run it by default, so there should always be a fallback option for those that do not have JS enabled. For scripts that are intended for use on a lot of pages, it may be a good idea to propose it on the [[Forum:Forum Grove|Yew Grove]] first. Gadgets which can be enabled/disabled by the user (on [[Special:Preferences#mw-prefsection-gadgets|Special:Preferences]]) should have a description created on ''Mediawiki:Gadget-gadgetname''.
==Core==
* autocollapse[ResourceLoader|type=general|default|hidden|dependencies=mediawiki.Uri]|autocollapse.js
* autosort[ResourceLoader|type=general|dependencies=ext.gadget.bsw-util|targets=desktop,mobile|default]|autosort.js
* bsw-util[ResourceLoader|dependencies=mediawiki.util|targets=desktop,mobile|type=general|default|hidden]|bsw-util.js
* Less[ResourceLoader|rights=editinterface|dependencies=mediawiki.api|type=general|default|hidden]|Less.js
* navboxToggle[ResourceLoader|targets=mobile|dependencies=ext.gadget.bsw-util|type=general|default|hidden]|navboxToggle.js
* switch-infobox[ResourceLoader|type=general|default|hidden|targets=desktop,mobile]|switch-infobox.js
* tooltips[ResourceLoader|type=general|default|hidden]|tooltips.js
* uncheckfileredirects[ResourceLoader|type=general|rights=suppressredirect|default|hidden]|UncheckFileRedirect.js
==Tools==
* contributions[ResourceLoader|type=general|default|dependencies=ext.gadget.bsw-util]|contributions.js
* dropdown[ResourceLoader|type=general|dependencies=mediawiki.util,mediawiki.api|default]|dropdown.js
* editCount[ResourceLoader|type=general|dependencies=ext.gadget.bsw-util]|editCount.js
* newPage[ResourceLoader|default|type=general|dependencies=ext.gadget.bsw-util|rights=createpage]|newPage.js
* purge[ResourceLoader|default|type=general|dependencies=ext.gadget.bsw-util,ext.smw.purge,mediawiki.api|hidden]|purge.js
* QuickDiff[ResourceLoader|type=general|dependencies=mediawiki.Uri,mediawiki.util]|QDmodal.js|QuickDiff.js|QDmodal.css
* scribunto-console[ResourceLoader|actions=edit|type=general|default]|scribunto-console.js
* scribunto-console-core[ResourceLoader|type=general|hidden]|scribunto-console-core.js|scribunto-console.css
* sectionAnchors[ResourceLoader|type=general|default]|sectionAnchors.js|sectionAnchors.css
==Appearance==
* markblocked[ResourceLoader|type=general]|markblocked.js
* readableHistory[ResourceLoader|type=general|actions=history]|readableHistory.js|readableHistory.css
* readableRC[ResourceLoader|type=general]|readableRC.js
* readableRC-core[ResourceLoader|type=general|dependencies=oojs-ui-core|hidden]|readableRC-core.js|readableRC-core.css
==Other==
* gadgetLinks[ResourceLoader|type=general|default]|gadgetLinks.js
416bee1eb1e2d53d417b200cef8729ffbd4416dd
MediaWiki:Gadget-switch-infobox.js
8
799
1620
2024-03-28T18:43:29Z
Gau Cho
5
Created page with "$(() => { /** * Sets the website's hash to display the current index's label * e.g. https://brightershoreswiki.org/w/PAGE#BUTTON_NAME * @param {string} index The index of the infobox ("1", "2", "3", etc) * @param {Node} infobox The infobox node */ const set_href_hash = (index, infobox) => { const buttons = infobox.firstElementChild.firstElementChild const anchor = buttons.querySelector('[data-switch-index="' + index + '"]'..."
javascript
text/javascript
$(() => {
/**
* Sets the website's hash to display the current index's label
* e.g. https://brightershoreswiki.org/w/PAGE#BUTTON_NAME
* @param {string} index The index of the infobox ("1", "2", "3", etc)
* @param {Node} infobox The infobox node
*/
const set_href_hash = (index, infobox) => {
const buttons = infobox.firstElementChild.firstElementChild
const anchor = buttons.querySelector('[data-switch-index="' + index + '"]').getAttribute('data-switch-anchor')
if(window.history && window.history.replaceState) {
window.history.replaceState(null, '', window.location.origin + window.location.pathname + anchor)
}
}
/**
* Returns a representation of all the switch data for all the different infobox indices
* by parsing div.infobox-switch-resources located immediately after the infobox
* @param {Node} infobox The infobox node
* @returns {Object} resources[data-attr-param][data-attr-index] = Array(...nodes)
*/
const get_resources = infobox => {
const resources_el = infobox.nextElementSibling.children
const resources = {}
for(const param_el of resources_el) {
const param = param_el.getAttribute('data-attr-param')
resources[param] = {}
for(const value_el of param_el.children) {
const index = value_el.getAttribute('data-attr-index')
const value = value_el.childNodes
resources[param][index] = Array.from(value) // Convert from NodeList to Array, or else the NodeList gets depopulated by param.replaceChildren in update_infobox()
}
}
return resources
}
/**
* Visually updates the infobox with the nodes from the selected index
* @param {string} index The index of the infobox ("1", "2", "3", etc)
* @param {Node} infobox The infobox node
* @param {Object} resources Switch data from get_resources()
*/
const update_infobox = (index, infobox, resources) => {
// Grab every param that changes and swap in the new Nodes
const params = infobox.querySelectorAll('[data-attr-param]')
for(const param of params) {
const resource = resources[param.getAttribute('data-attr-param')][index]
param.replaceChildren(...resource)
}
// Update the url's hash to the current index's label
set_href_hash(index, infobox)
}
/**
* Handles a button press to update the infobox
* 1) Visually updates the button
* 2) Visually updates the infobox
* @param {string} index The index of the infobox ("1", "2", "3", etc) associated with the button
* @param {Node} infobox The infobox node
* @param {Object} resources Switch data from get_resources()
*/
const event_button_press = (index, infobox, resources) => {
return function(event) {
// If the button is already selected, we don't need to swap, but let's update the hash
if(this.classList.contains('button-selected')) {
set_href_hash(index, infobox)
return
}
// Visually update the button that is pressed
for(const button of this.parentElement.children) {
button.classList.remove('button-selected')
}
this.classList.add('button-selected')
// Visually update the infobox
update_infobox(index, infobox, resources)
}
}
/**
* Handles a dropdown list change to update the infobox
* 1) Visually updates the infobox
* @param {Node} infobox The infobox node
* @param {Object} resources Switch data from get_resources()
*/
const event_select_change = (infobox, resources) => {
return function(event) {
update_infobox(this.value, infobox, resources)
}
}
/**
* Sets up the buttons in the infobox in order to be responsive
* 1) If there are too many buttons (indicated by .infobox-buttons-select), convert to a dropdown list
* 2) Set the default button/option
* 3) Add event listeners
* 4) Check the href's hash and optionally switch the index to the requested index
* @param {Number} i The nth .infobox-switch on the page
* @param {Node} infobox The infobox node
* @param {Object} resources Switch data from get_resources()
*/
const setup_buttons = (i, infobox, resources) => {
// Get the parent button node: table -> caption -> div
const buttons = infobox.firstElementChild.firstElementChild
// The node contains the default index with which the infobox is pre-populated
// We also check the href's hash as we might need to immediately change to a different index
const default_index = buttons.getAttribute('data-default-index')
const hash = window.location.hash
if(!buttons.classList.contains('infobox-buttons-select')) {
// We don't need to make a dropdown list, we just use the existing elements
// Add the event listener for each button, and mark the selected button
for(const button of buttons.children) {
const index = button.getAttribute('data-switch-index')
if (index == default_index) {
button.classList.add('button-selected')
}
button.addEventListener('click', event_button_press(index, infobox, resources))
}
// If the hash matches one of our anchors, switch to this index
const hash_targetted_button = buttons.querySelector('[data-switch-anchor="' + hash + '"]')
if(hash_targetted_button) {
hash_targetted_button.dispatchEvent(new Event('click'))
}
} else {
// There are too many buttons so we need to replace them all with a dropdown list
// We do it in javascript and not in Module:Infobox as wikitext doesn't support select/option tags
const options = Array.from(buttons.children).map(button => {
// Copy over the data from each button into an option element
const option = document.createElement('option')
const index = button.getAttribute('data-switch-index')
option.setAttribute('data-switch-index', index)
option.setAttribute('value', index)
option.setAttribute('data-switch-anchor', button.getAttribute('data-switch-anchor'))
option.textContent = button.textContent
return option
})
// Create the parent select tag and populate it with the default_index
const select = document.createElement('select')
select.append(...options)
select.id = 'infobox-select-' + i
select.name = select.id
select.value = default_index
// Add the event listener
select.addEventListener('change', event_select_change(infobox, resources))
buttons.replaceChildren(select)
// If the hash matches one of our anchors, switch to this index
const hash_targetted_option = select.querySelector('[data-switch-anchor="' + hash + '"]')
if(hash_targetted_option) {
select.value = hash_targetted_option.value
}
}
}
/**
* Sets up a .infobox-switch
* @param {Number} i The nth .infobox-switch on the page
* @param {Node} infobox The infobox node
*/
const setup_switch_infobox = (i, infobox) => {
// Get the switch data
const resources = get_resources(infobox)
// Setup the buttons and event handlers
setup_buttons(i, infobox, resources)
}
/**
* Sets up all the .infobox-switch on the page
* @param {jQuery} content #mw-content-text
*/
const setup_switch_infoboxes = content => {
content.find('.infobox-switch').each((i, infobox_el) => {
setup_switch_infobox(i, infobox_el)
})
}
mw.hook('wikipage.content').add(setup_switch_infoboxes)
})
604603cf6418bd56deb390584a47769d45cc601b
MediaWiki:Common.less/infobox.less
8
26
1622
1573
2024-03-28T19:23:22Z
Merds
25
less
less
:root {
--infobox-text-color: var(--text-color);
--table-header: #b1886f;
--table-subheader: #d1b9ad;
--table-body: #fff8ee;
--table-border: #e9d8cc;
}
/* Infobox */
.infobox {
font-size: .85em;
width: 300px;
border-collapse: collapse;
float: right;
table-layout: fixed;
margin: 0.5em 0 1em 1em;
.infobox-buttons {
display: flex;
flex-wrap: wrap;
justify-content: center;
grid-gap: 3px;
margin-bottom: 3px;
.button {
background: var(--table-header);
padding: 0 5px;
font-weight: bold;
flex: 1 1 20%;
max-width: 20%;
color: @white;
}
}
tbody {
border: 1px solid var(--table-border);
background: var(--table-body);
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(231, 215, 199, 0.5);
}
.infobox-header {
background: var(--table-header);
padding: 0.5em 0;
text-align: center;
color: @white;
font-size: 1.15em;
font-weight: bold;
line-height: 1.4em;
}
.infobox-image {
text-align: center;
}
.infobox-subheader {
background: var(--table-subheader);
font-weight: bold;
text-align: center;
color: @white;
}
.infobox-padding {
backgound: var(--table-body);
}
tr td:not(.infobox-padding) {
padding: 0.2em 0.5em;
}
th:not(.infobox-header):not(.infobox-subheader):not(.infobox-nested) {
border-right: 2px solid var(--table-subheader);
text-align: right;
padding: 0.2em 0.5em;
}
}
.hidden {
display: none;
}
c028292d415e78c614bad94179b78d4c5dc72690
MediaWiki:Common.css
8
30
1623
1585
2024-03-28T19:23:30Z
Merds
25
Updating CSS from [[MediaWiki:Common.less]]
css
text/css
/* <pre> */
:root {
--body-main: #feffff;
--body-light: #fff8ee;
--body-mid: #d1b9ad;
--body-dark: #b1886f;
--body-border: #e9d8cc;
--body-background-color: #173a4d;
--button-background: #605443;
--button-color: #fff;
--button-border: #3c352a;
--button-dark: #18140c;
--button-light: #3a301d;
--sidebar: #cfc08d;
--background-text-color: #e2dbc8;
--background-link-color: #e2bd8a;
--search-box: #efeee6;
--link-color: #936039;
--redlink-color: #ba0000;
--text-color: #2F2828;
--byline-color: #ccc;
--subtle-color: #777;
--admin-blue: #332e75;
--bearcat-green: #13592e;
--awb-purple: #933b96;
--rsw-blue: #438ab6;
--osrsw-brown: #605443;
--thumb-bg: var(--body-light);
--thumb-caption-bg: var(--body-mid);
--sourceeditor-input-background: #fff;
--sourceeditor-background: var(--body-light);
--sourceeditor-background-secondary: var(--body-light);
--sourceeditor-border: var(--body-mid);
--codemirror-gutter-background: var(--body-mid);
}
@font-face {
font-family: 'Lora';
font-weight: 400 700;
font-style: normal;
font-display: swap;
src: url('filepath://Lora.woff2') format('woff2');
}
@font-face {
font-family: 'Lora';
font-weight: 400 700;
font-style: italic;
font-display: swap;
src: url('filepath://Lora-Italic.woff2') format('woff2');
}
:root {
--base-text-color: #36414f;
--base-heading-color: #444e5a;
--base-heading-border: #e4eaee;
--mw-code-background-color: #ddd4bb;
--body-background-image: url('filepath://Wiki_background.jpg');
}
#mw-page-base {
background: none;
}
.mw-body {
background-color: var(--body-main);
color: var(--text-color);
border-color: transparent;
box-shadow: 0 0 7px rgba(0, 0, 0, 0.15);
margin-top: 0;
}
h1,
h2,
h3,
h4,
h5,
h6 {
color: var(--text-color);
}
h1,
h2 {
border-color: var(--sidebar);
}
.mw-body h1,
.mw-body-content h1,
.mw-body-content h2,
.mw-body-content h3,
.mw-body-content h4,
.mw-body-content h5,
.mw-body-content h6 {
font-family: 'Lora', 'Palatino', 'Georgia', serif;
}
.mw-parser-output h2:first-of-type {
clear: left;
}
.mw-footer {
color: var(--background-text-color);
}
.mw-footer li {
color: var(--background-text-color);
}
.mw-footer a,
.mw-footer a:active,
.mw-footer a:visited {
color: var(--background-link-color);
}
::placeholder {
color: var(--subtle-color);
}
a {
color: var(--link-color);
}
a:visited,
a:active {
color: var(--link-color);
}
a.new {
color: var(--redlink-color);
}
a.new:visited {
color: var(--redlink-color);
}
.mw-parser-output a.extiw,
.mw-parser-output a.external {
color: var(--link-color);
}
.mw-parser-output a.extiw:visited,
.mw-parser-output a.external:visited,
.mw-parser-output a.extiw:active,
.mw-parser-output a.external:active {
color: var(--link-color);
}
.jsPurgeLink a.external {
color: var(--link-color);
}
:root {
--errorbox-bg: #feecea;
--errorbox-border: #ee4231;
--warningbox-bg: #fef9de;
--warningbox-border: #f9d000;
--successbox-bg: #ecf8e3;
--successbox-border: #6bc71f;
}
.mw-message-box-error,
.errorbox,
.mw-message-box-warning,
.warningbox,
.mw-message-box-success,
.successbox,
.usermessage {
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
}
.mw-message-box-error,
.errorbox {
background-color: var(--errorbox-bg);
border-color: var(--errorbox-border);
}
.mw-message-box-warning,
.warningbox,
.usermessage {
background-color: var(--warningbox-bg);
border-color: var(--warningbox-border);
}
.mw-message-box-success,
.successbox {
background-color: var(--successbox-bg);
border-color: var(--successbox-border);
}
.catlinks {
background: var(--body-light);
border: 1px solid var(--body-dark);
padding: 8px 15px;
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
}
.catlinks li {
border-color: var(--body-mid);
}
.filehistory a img,
#file img {
background: url("data:image/svg+xml,%3C%3Fxml version='1.0' encoding='UTF-8'%3F%3E%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16'%3E%3Cpath d='M0 0h8v16h8V8H0z' opacity='.13'/%3E%3C/svg%3E") repeat;
}
#file img:hover {
background: none;
}
.mw-highlight {
background: none;
}
.mw-highlight .linenos {
background-color: var(--mw-code-background-color);
color: var(--byline-color);
}
.mw-highlight a:hover .linenos,
.mw-highlight .hll a .linenos {
color: var(--text-color);
}
.mw-content-ltr.mw-highlight-lines pre,
.mw-content-ltr.content .mw-highlight-lines pre {
box-shadow: inset 2.75em 0 0 var(--mw-code-background-color);
}
#pagehistory ul {
list-style: none;
margin: 0;
}
#pagehistory li {
border: 1px solid transparent;
padding: 1px 10px;
margin: 2px 0;
}
#pagehistory li.selected {
background-color: var(--body-light);
color: inherit;
border: 1px dashed var(--body-border);
outline: none;
}
#mw-history-compare > div:first-of-type {
position: -webkit-sticky;
position: sticky;
top: 0;
background-color: var(--body-main);
border-bottom: 1px solid var(--body-dark);
padding: 0.25em 0;
}
.wgl-stickyheader #mw-history-compare > div:first-of-type {
top: 2.5rem;
}
.autocomment,
.autocomment a,
.autocomment a:visited {
color: var(--link-color);
}
li span.deleted,
span.history-deleted {
color: var(--byline-color);
}
.mw-usertoollinks-contribs-no-edits,
.mw-usertoollinks-contribs-no-edits:visited {
color: var(--redlink-color);
}
.CategoryTreeToggle {
color: var(--link-color);
}
body.wgl-stickyheader.action-view .mw-headline:target::before {
display: block;
content: '';
margin-top: -3rem;
height: 3rem;
visibility: hidden;
pointer-events: none;
}
.mw-mmv-post-image {
color: var(--text-color);
background-color: var(--body-main);
}
.mw-mmv-image-metadata {
border-top-color: var(--body-mid);
background-color: var(--body-light);
}
.mw-mmv-dialog,
.mw-mmv-dialog .mw-mmv-dialog-down-arrow,
.mw-mmv-options-dialog .mw-mmv-dialog-down-arrow {
background-color: var(--body-light);
box-shadow: none;
}
.mw-mmv-options-enable-alert {
background-color: var(--body-light);
color: var(--text-color);
}
.mw-mmv-options-dialog-header,
.mw-mmv-options-text-header,
.mw-mmv-options-text-body,
.mw-mmv-options-enable-alert,
.mw-mmv-options-dialog .mw-mmv-disable-confirmation .mw-mmv-options-dialog-header,
.mw-mmv-options-dialog .mw-mmv-disable-confirmation .mw-mmv-options-text-header {
color: var(--text-color);
}
.mw-revslider-container {
border-color: var(--sidebar);
}
.mw-revslider-slider-wrapper {
border-top-color: var(--sidebar);
}
.mw-ui-button {
background-color: var(--ooui-normal);
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
}
.mw-ui-button:not(:disabled):hover,
.mw-ui-button:not(:disabled):active {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
}
.mw-ui-button:not(:disabled):focus {
color: var(--ooui-text);
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent), inset 0 0 0 2px #fff;
}
.mw-ui-button:not(:disabled):visited {
color: var(--ooui-text);
}
.mw-ui-button.mw-ui-progressive:not(:disabled) {
background-color: var(--ooui-progressive);
color: #fff;
border-color: var(--ooui-progressive);
}
.mw-ui-button.mw-ui-progressive:not(:disabled):hover {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
}
.mw-ui-button.mw-ui-progressive:not(:disabled):focus {
box-shadow: inset 0 0 0 1px var(--ooui-accent), inset 0 0 0 2px #fff;
}
.mw-ui-button.mw-ui-progressive:not(:disabled):active,
.mw-ui-button.mw-ui-progressive:not(:disabled).is-on {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
box-shadow: none;
}
.mw-ui-button.mw-ui-destructive:not( :disabled ) {
color: #fff;
}
.mw-ui-button.mw-ui-quiet,
.mw-ui-button.mw-ui-quiet.mw-ui-progressive,
.mw-ui-button.mw-ui-quiet.mw-ui-destructive {
color: var(--text-color);
}
input[type='checkbox']:hover + .mw-ui-button.mw-ui-quiet,
input[type='checkbox']:hover + .mw-ui-button.mw-ui-quiet.mw-ui-progressive,
input[type='checkbox']:hover + .mw-ui-button.mw-ui-quiet.mw-ui-destructive,
.mw-ui-button.mw-ui-quiet:hover,
.mw-ui-button.mw-ui-quiet.mw-ui-progressive:hover,
.mw-ui-button.mw-ui-quiet.mw-ui-destructive:hover {
background-color: rgba(0, 24, 73, 0.02745098);
color: var(--text-color);
border-color: transparent;
}
input[type='checkbox']:focus + .mw-ui-button.mw-ui-quiet,
input[type='checkbox']:focus + .mw-ui-button.mw-ui-quiet.mw-ui-progressive,
input[type='checkbox']:focus + .mw-ui-button.mw-ui-quiet.mw-ui-destructive,
.mw-ui-button.mw-ui-quiet:focus,
.mw-ui-button.mw-ui-quiet.mw-ui-progressive:focus,
.mw-ui-button.mw-ui-quiet.mw-ui-destructive:focus {
color: var(--text-color);
}
input[type='checkbox']:active + .mw-ui-button.mw-ui-quiet,
input[type='checkbox']:active + .mw-ui-button.mw-ui-quiet.mw-ui-progressive,
input[type='checkbox']:active + .mw-ui-button.mw-ui-quiet.mw-ui-destructive,
.mw-ui-button.mw-ui-quiet:active,
.mw-ui-button.mw-ui-quiet.mw-ui-progressive:active,
.mw-ui-button.mw-ui-quiet.mw-ui-destructive:active {
background-color: rgba(0, 36, 73, 0.08235294);
color: var(--text-color);
border-color: #72777d;
}
.mw-ui-input {
background-color: var(--ooui-input);
color: var(--text-color);
border-color: var(--ooui-input-border);
}
.mw-ui-input:hover {
border-color: var(--ooui-input-border--hover);
}
.mw-ui-input::placeholder {
color: var(--byline-color);
}
.mw-content-ltr .redirectText li:first-child {
padding: 0;
background: 0;
}
.mw-content-ltr .redirectText li:first-child::before {
content: '';
background: currentcolor;
-webkit-mask: url("filepath://Redirect-arrow.svg") no-repeat 50% 50% / contain;
mask: url("filepath://Redirect-arrow.svg") no-repeat 50% 50% / contain;
display: inline-block;
width: 47px;
height: 20px;
}
.vector-search-box-inner {
background: var(--body-main) !important;
box-shadow: inset 0 -7px 7px -7px rgba(0, 0, 0, 0.15) !important;
}
.vector-menu-dropdown .vector-menu-heading {
color: #937040 !important;
}
.vector-menu-dropdown .vector-menu-heading:hover {
color: #937040 !important;
}
.vector-menu-dropdown .vector-menu-heading:focus {
color: #937040 !important;
}
:root {
--wikitable-header-bg: var(--body-dark);
--wikitable-border: var(--body-border);
--wikitable-bg: var(--body-light);
--wikitable-bg-lighter: #e9e3d6;
--wikitable-color: var(--text-color);
--table-na-background: rgba(255, 255, 255, 0.3);
--table-na-color: var(--subtle-color);
--table-yes-background: #c3e8a3;
--table-yes-color: #2e5e05;
--table-no-background: #fbc0ba;
--table-no-color: #801c13;
--table-maybe-background: #fcea94;
--table-maybe-color: #786300;
}
.wikitable {
background: var(--wikitable-bg);
color: var(--wikitable-color);
border-color: var(--wikitable-border);
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
}
.wikitable > tr > th,
.wikitable > tr > td,
.wikitable > * > tr > th,
.wikitable > * > tr > td {
border-color: var(--wikitable-border);
}
.wikitable > tr > th.table-noborder,
.wikitable > tr > td.table-noborder,
.wikitable > * > tr > th.table-noborder,
.wikitable > * > tr > td.table-noborder {
border-left-style: hidden;
border-right-style: hidden;
padding-left: 0;
padding-right: 0;
}
.wikitable > tr > th,
.wikitable > * > tr > th {
background-color: var(--wikitable-header-bg);
color: #fff;
}
.tabber .wikitable {
box-shadow: none;
}
.mw_metadata td,
.mw_metadata th {
border-color: var(--wikitable-border);
}
.mw_metadata th {
background-color: var(--wikitable-header-bg);
}
.mw_metadata td {
background-color: var(--wikitable-bg);
}
.mw-datatable {
border-color: var(--wikitable-border);
}
.mw-datatable td,
.mw-datatable th {
border-color: var(--wikitable-border);
}
.mw-datatable th {
background-color: var(--wikitable-header-bg);
}
.mw-datatable td {
background-color: var(--wikitable-bg);
}
.mw-datatable tr:hover td {
background-color: var(--wikitable-bg);
}
table.alternating-rows tr:nth-child(odd),
table.alternating-cols td:nth-child(odd) {
background: var(--wikitable-alternating-bg);
}
.table-na {
background: var(--table-na-background);
color: var(--table-na-color);
vertical-align: middle;
text-align: center;
}
.table-yes {
background: var(--table-yes-background);
color: var(--table-yes-color);
}
.table-positive {
background: var(--table-yes-background);
}
.table-no {
background: var(--table-no-background);
color: var(--table-no-color);
}
.table-negative {
background: var(--table-no-background);
}
.table-maybe {
background: var(--table-maybe-background);
color: var(--table-maybe-color);
}
#mw-allmessagestable .am_actual,
#mw-allmessagestable .am_default {
background-color: var(--wikitable-bg);
}
#mw-allmessagestable .am_default:hover,
#mw-allmessagestable .am_actual:hover,
#mw-allmessagestable tbody:hover td {
background-color: var(--wikitable-bg-lighter);
}
table.wikitable td.no-cell-spacing {
padding: 0;
height: 0;
}
table.wikitable td.no-cell-spacing table {
margin: -1px;
width: calc(100% + 2px);
height: calc(100% + 2px);
}
.plainlist ol,
.plainlist ul {
margin: 0;
}
.plainlist li {
margin-bottom: 0;
list-style: none;
}
table.align-right-1 td:nth-of-type(1),
table.align-right-2 td:nth-of-type(2),
table.align-right-3 td:nth-of-type(3),
table.align-right-4 td:nth-of-type(4),
table.align-right-5 td:nth-of-type(5),
table.align-right-6 td:nth-of-type(6),
table.align-right-7 td:nth-of-type(7),
table.align-right-8 td:nth-of-type(8),
table.align-right-9 td:nth-of-type(9),
table.align-right-10 td:nth-of-type(10),
table.align-right-11 td:nth-of-type(11),
table.align-right-12 td:nth-of-type(12),
table.align-right-13 td:nth-of-type(13),
table.align-right-14 td:nth-of-type(14),
table.align-right-15 td:nth-of-type(15),
table.align-right-16 td:nth-of-type(16),
table.align-right-17 td:nth-of-type(17),
table.align-right-18 td:nth-of-type(18),
table.align-right-19 td:nth-of-type(19),
table.align-right-20 td:nth-of-type(20) {
text-align: right;
}
table.align-center-1 td:nth-of-type(1),
table.align-center-2 td:nth-of-type(2),
table.align-center-3 td:nth-of-type(3),
table.align-center-4 td:nth-of-type(4),
table.align-center-5 td:nth-of-type(5),
table.align-center-6 td:nth-of-type(6),
table.align-center-7 td:nth-of-type(7),
table.align-center-8 td:nth-of-type(8),
table.align-center-9 td:nth-of-type(9),
table.align-center-10 td:nth-of-type(10),
table.align-center-11 td:nth-of-type(11),
table.align-center-12 td:nth-of-type(12),
table.align-center-13 td:nth-of-type(13),
table.align-center-14 td:nth-of-type(14),
table.align-center-15 td:nth-of-type(15),
table.align-center-16 td:nth-of-type(16),
table.align-center-17 td:nth-of-type(17),
table.align-center-18 td:nth-of-type(18),
table.align-center-19 td:nth-of-type(19),
table.align-center-20 td:nth-of-type(20) {
text-align: center;
}
table.align-left-1 td:nth-of-type(1),
table.align-left-2 td:nth-of-type(2),
table.align-left-3 td:nth-of-type(3),
table.align-left-4 td:nth-of-type(4),
table.align-left-5 td:nth-of-type(5),
table.align-left-6 td:nth-of-type(6),
table.align-left-7 td:nth-of-type(7),
table.align-left-8 td:nth-of-type(8),
table.align-left-9 td:nth-of-type(9),
table.align-left-10 td:nth-of-type(10),
table.align-left-11 td:nth-of-type(11),
table.align-left-12 td:nth-of-type(12),
table.align-left-13 td:nth-of-type(13),
table.align-left-14 td:nth-of-type(14),
table.align-left-15 td:nth-of-type(15),
table.align-left-16 td:nth-of-type(16),
table.align-left-17 td:nth-of-type(17),
table.align-left-18 td:nth-of-type(18),
table.align-left-19 td:nth-of-type(19),
table.align-left-20 td:nth-of-type(20) {
text-align: left;
}
:root {
--diff-addedline-border-color: #438ab5;
--diff-addedline-background: #bddff2;
--diff-addedline-color: #000;
--diff-deletedline-border-color: #379541;
--diff-deletedline-background: #c1edbf;
--diff-deletedline-color: #000;
--diff-context-border-color: var(--body-mid);
--diff-context-background: var(--body-mid);
}
.diff-context {
border-color: var(--diff-context-border-color);
background: var(--diff-context-background);
color: inherit;
}
.diff-addedline {
border-color: var(--diff-addedline-border-color);
}
.diff-addedline .diffchange {
background: var(--diff-addedline-background);
color: var(--diff-addedline-color);
}
.diff-deletedline {
border-color: var(--diff-deletedline-border-color);
}
.diff-deletedline .diffchange {
background: var(--diff-deletedline-background);
color: var(--diff-deletedline-color);
}
.mw-diff-movedpara-left:after,
.mw-diff-movedpara-right:after {
color: var(--text-color);
}
.mw-notification {
background-color: var(--body-light);
border-color: var(--body-border);
color: var(--text-color);
}
.mw-echo-ui-notificationsInboxWidget-toolbarWrapper {
background: var(--body-main);
}
.mw-body-content .mw-echo-ui-datedSubGroupListWidget-title-secondary {
color: var(--byline-color);
}
.mw-echo-ui-pageNotificationsOptionWidget.oo-ui-optionWidget-selected {
background-color: var(--ooui-normal);
color: var(--ooui-accent);
}
.mw-echo-ui-pageNotificationsOptionWidget-label-count {
background-color: var(--ooui-normal);
color: var(--byline-color);
}
.oo-ui-optionWidget-selected .mw-echo-ui-pageNotificationsOptionWidget-label-count {
color: var(--ooui-accent);
}
.mw-echo-ui-pageNotificationsOptionWidget.oo-ui-optionWidget-highlighted {
background-color: var(--ooui-normal);
color: var(--text-color);
}
.mw-echo-ui-crossWikiUnreadFilterWidget {
border-color: var(--body-border);
}
.mw-echo-ui-crossWikiUnreadFilterWidget-subtitle {
color: var(--byline-color);
}
.mw-echo-ui-notificationBadgeButtonPopupWidget-popup > .oo-ui-popupWidget-popup > .oo-ui-popupWidget-head,
.mw-echo-ui-notificationBadgeButtonPopupWidget-popup > .oo-ui-popupWidget-popup > .oo-ui-popupWidget-footer {
border-color: var(--ooui-interface-border);
}
.mw-echo-ui-notificationBadgeButtonPopupWidget-popup > .oo-ui-popupWidget-popup > .oo-ui-popupWidget-footer .mw-echo-ui-notificationBadgeButtonPopupWidget-footer-buttons .oo-ui-buttonElement:last-child {
border-left-color: var(--ooui-normal-border);
}
.mw-echo-ui-notificationItemWidget {
background-color: var(--ooui-normal);
border-color: var(--ooui-normal-border);
}
.mw-echo-ui-notificationItemWidget:hover,
.mw-echo-ui-notificationItemWidget-unread:hover {
background-color: var(--ooui-normal--hover);
}
.mw-echo-ui-notificationItemWidget:last-child {
border-bottom-color: var(--ooui-normal-border);
}
.mw-echo-ui-notificationItemWidget-unread {
background-color: var(--search-box);
}
.mw-echo-ui-crossWikiNotificationItemWidget-group,
.mw-echo-ui-bundleNotificationItemWidget-group {
background-color: var(--ooui-interface);
}
.mw-echo-ui-toggleReadCircleButtonWidget-circle {
background-color: var(--ooui-progressive);
}
.mw-echo-ui-toggleReadCircleButtonWidget:hover .mw-echo-ui-toggleReadCircleButtonWidget-circle {
background-color: var(--ooui-progressive--hover);
}
.mw-echo-ui-toggleReadCircleButtonWidget-circle-unread {
background-color: var(--ooui-normal);
border-color: var(--ooui-normal-border);
}
.mw-echo-ui-notificationItemWidget-content-message-header,
.mw-echo-ui-notificationItemWidget-content-message-body,
.mw-echo-ui-menuItemWidget > .oo-ui-buttonElement-button > .oo-ui-labelElement-label,
.mw-echo-ui-notificationItemWidget-content-actions-timestamp {
color: var(--ooui-text);
}
.mw-echo-ui-bundleNotificationItemWidget-group {
background-color: var(--body-main);
}
@keyframes unseen-fadeout-to-unread {
from {
background-color: var(--wikitable-bg-lighter);
}
to {
background-color: var(--search-box);
}
}
@keyframes unseen-fadeout-to-read {
from {
background-color: var(--wikitable-bg-lighter);
}
to {
background-color: var(--body-main);
}
}
.mwe-popups {
background: var(--body-light);
}
.mwe-popups .mwe-popups-container {
color: var(--text-color);
background: var(--body-light);
}
.mwe-popups .mwe-popups-container.flipped-x-y:before,
.mwe-popups .mwe-popups-container.flipped-y:before {
border-top: none;
}
.mwe-popups .mwe-popups-container.mwe-popups-no-image-tri:before {
border-bottom: none;
}
.mwe-popups .mwe-popups-container.flipped-x-y:after,
.mwe-popups .mwe-popups-container.flipped-y:after {
border-top-color: var(--body-light);
}
.mwe-popups .mwe-popups-container.mwe-popups-no-image-tri:after {
border-bottom-color: var(--body-light);
}
.mwe-popups .mwe-popups-settings-icon:hover,
.mwe-popups .mwe-popups-settings-icon:active {
background-color: var(--ooui-normal--hover);
}
.mwe-popups .mw-ui-icon-element:not(.disabled):hover {
background: none;
}
.mwe-popups .mwe-popups-extract {
color: var(--text-color);
}
.mwe-popups .mwe-popups-extract[dir='ltr']:after {
background-image: linear-gradient(to right, rgba(49, 62, 89, 0), var(--body-light) 50%);
}
.mwe-popups-overlay {
background-color: var(--ooui-window-background);
}
#mwe-popups-settings {
background: var(--ooui-interface);
border-color: var(--ooui-interface-border);
color: var(--text-color);
}
#mwe-popups-settings header {
border-color: var(--ooui-interface-border);
}
#mwe-popups-settings main#mwe-popups-settings-form p {
color: var(--byline-color);
}
#mwe-popups-settings main#mwe-popups-settings-form form label > span {
color: var(--ooui-text);
}
:root {
--smw-ask-options-even-bg: var(--body-mid);
--smw-ask-options-odd-bg: var(--body-light);
--smw-ask-action-btn-lblue-bg: var(--body-main);
--smw-ask-action-btn-lblue-color: #000;
--smw-ask-action-btn-lblue-border-color: var(--body-light);
--smw-ask-action-btn-dblue-bg: var(--body-light);
--smw-ask-action-btn-dblue-color: #fff;
--smw-ask-action-btn-dblue-border-color: var(--button-border);
}
.smw-ask-condition fieldset,
.smw-ask-printhead fieldset {
border-color: var(--sidebar);
}
.smw-ask-search fieldset,
.smw-ask-format fieldset,
.smw-ask-options fieldset {
border-color: var(--sidebar);
}
.strike > span:before,
.strike > span:after {
background: var(--sidebar);
}
.smw-ask-options-fields tr td {
background-color: var(--smw-ask-options-even-bg);
}
.smw-ask-options-fields tr:nth-child(odd) td {
background-color: var(--smw-ask-options-odd-bg);
}
.smw-ask-action-btn.smw-ask-action-btn-lblue,
.smw-ask-action-btn.smw-ask-action-btn-lblue:hover,
.smw-ask-action-btn.smw-ask-action-btn-lblue:visited {
background-color: var(--smw-ask-action-btn-lblue-bg);
color: var(--smw-ask-action-btn-lblue-color);
border-color: var(--smw-ask-action-btn-lblue-border-color);
}
.smw-ask-action-btn.smw-ask-action-btn-dblue,
.smw-ask-action-btn.smw-ask-action-btn-dblue:hover,
.smw-ask-action-btn.smw-ask-action-btn-dblue:visited {
background-color: var(--smw-ask-action-btn-dblue-bg);
color: var(--smw-ask-action-btn-dblue-color);
border-color: var(--smw-ask-action-btn-dblue-border-color);
}
.smw-ask-query textarea,
.smw-ask-actions textarea {
background-color: var(--ooui-interface);
border-color: var(--ooui-interface-border);
color: var(--ooui-text);
}
.smw-ask-query-format select {
background-color: var(--ooui-interface);
border: 1px solid var(--ooui-interface-border);
color: var(--ooui-text);
}
.smw-ask-toplinks {
background-color: var(--body-mid);
}
.smw-ask-toplinks span.smw-icon-info {
background: none;
padding: 0 !important;
}
.smw-ask-toplinks span.smw-icon-info::before {
content: '';
background: var(--text-color);
-webkit-mask: url("data:image/svg+xml,%3C%3Fxml version='1.0' encoding='UTF-8'%3F%3E%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 20 20'%3E%3Ctitle%3Einfo%3C/title%3E%3Cpath d='M10 0C4.477 0 0 4.477 0 10s4.477 10 10 10 10-4.477 10-10S15.523 0 10 0zM9 5h2v2H9zm0 4h2v6H9z'/%3E%3C/svg%3E") no-repeat 50% 50% / contain;
mask: url("data:image/svg+xml,%3C%3Fxml version='1.0' encoding='UTF-8'%3F%3E%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 20 20'%3E%3Ctitle%3Einfo%3C/title%3E%3Cpath d='M10 0C4.477 0 0 4.477 0 10s4.477 10 10 10 10-4.477 10-10S15.523 0 10 0zM9 5h2v2H9zm0 4h2v6H9z'/%3E%3C/svg%3E") no-repeat 50% 50% / contain;
padding: 0 0 3px 18px;
}
.smw-ask-options-row-odd {
background-color: var(--body-light);
}
.smw-ask-options-row-even {
background-color: var(--body-mid);
}
#options-toggle:not(:checked) + #options-list .options-parameter-list:after {
background-image: linear-gradient(to bottom, transparent, var(--body-mid) 90%);
}
.smw-ask-button-submit input {
background-color: var(--ooui-normal);
border-color: var(--ooui-normal-border);
color: var(--text-color);
}
.smw-ask-button-submit input:hover,
.smw-ask-button-lgrey:hover {
background-color: var(--ooui-normal--hover);
border-color: var(--ooui-normal-border);
}
input.smw-ask-action-btn.smw-ask-action-btn-dblue {
background-color: var(--ooui-normal);
border-color: var(--ooui-normal-border);
color: var(--ooui-text);
}
a.smw-ask-action-btn.smw-ask-action-btn-lblue {
background-color: var(--body-mid);
border-color: var(--body-mid);
color: var(--ooui-text);
}
a.smw-ask-action-btn.smw-ask-action-btn-lblue:visited {
background-color: var(--body-mid);
border-color: var(--body-mid);
color: var(--ooui-text);
}
a.smw-ask-action-btn.smw-ask-action-btn-lblue:hover {
background-color: var(--body-mid);
border-color: var(--body-mid);
color: var(--ooui-text);
}
a.smw-ask-action-btn-lgrey {
background-color: var(--ooui-normal);
border-color: var(--ooui-normal-border);
color: var(--ooui-text);
}
a.smw-ask-action-btn-lgrey:hover {
background-color: var(--ooui-normal--hover);
border-color: var(--ooui-normal-border);
color: var(--ooui-text);
}
.smw-callout-error {
background-color: var(--errorbox-bg);
border-color: var(--errorbox-border);
}
.smw-callout-info {
background-color: var(--body-light);
border-color: var(--body-dark);
}
.smw-callout-success {
background-color: var(--successbox-bg);
border-color: var(--successbox-border);
}
.smw-callout-warning {
background-color: var(--warningbox-bg);
border-color: var(--warningbox-bg);
}
.smw-tabs input.nav-tab:checked + label.nav-label,
.smw-tabs input.nav-tab:checked + label.nav-label:hover {
color: inherit;
}
#tab-smw-property-value:checked + label.nav-label .usage-count {
color: #fff;
background-color: var(--ooui-progressive);
}
#tab-smw-property-value:checked + label.nav-label .usage-count.moderate {
color: #fff;
background-color: #b55e0c;
border-color: #b55e0c;
}
#tab-smw-property-value:checked + label.nav-label .usage-count.high {
color: #fff;
background-color: #9f261e;
border-color: #9f261e;
}
.smw-property-page-results .header-title {
background-color: var(--ooui-interface);
border-bottom-color: var(--ooui-interface-border);
color: var(--ooui-text);
}
.smw-property-page-results .value-row:hover {
background-color: var(--ooui-normal--hover);
}
.smw-property-page-results .smw-table .header-row {
color: var(--text-color);
}
.tippy-tooltip.light-border-theme {
background-color: var(--body-light);
color: var(--text-color);
}
.tippy-tooltip.light-border-theme .tippy-arrow {
border-top-color: var(--body-light);
}
.tippy-tooltip.light-border-theme .tippy-arrow:after {
border-top-color: var(--body-light);
}
.tippy-header {
background-color: var(--body-dark);
border-bottom-color: var(--body-mid);
}
.smw-ui-input-filter {
background-color: var(--ooui-interface);
border-color: var(--ooui-interface-border);
color: var(--ooui-text);
}
.smw-ui-input-filter input {
border-left-color: var(--ooui-interface-border) !important;
color: var(--ooui-text) !important;
}
.smw-ui-pagination .page-link.link-disabled {
background-color: var(--ooui-disabled);
border-color: var(--ooui-disabled-border);
color: var(--subtle-color);
}
.smw-ui-pagination .page-link {
background-color: var(--ooui-normal);
border-color: var(--ooui-normal-border);
color: var(--link-color);
}
.smw-ui-pagination .page-link:hover {
background-color: var(--ooui-normal--hover);
border-color: var(--ooui-normal-border);
color: var(--link-color);
}
.smw-ui-pagination .page-link.link-active {
color: #fff;
background-color: var(--ooui-progressive);
border-color: var(--ooui-progressive);
}
.smw-tabs input.nav-tab:checked + label.nav-label {
border-color: var(--ooui-normal-border);
}
.smw-tabs section,
.smw-tabs .subtab-content {
border-top-color: var(--ooui-normal-border);
}
.smw-column-header {
color: var(--text-color);
}
.smw-factbox {
background: var(--body-main);
border-color: transparent;
}
.mw-body .mw-indicators #mw-indicator-smw-entity-examiner.mw-indicator .smw-indicator-vertical-bar-loader {
display: none;
}
.smwb-theme-light .smwb-title,
.smwb-theme-light .smwb-center,
.smwb-theme-light .smwb-actions,
.smwb-theme-light .smwb-prophead {
background-color: var(--body-mid);
}
.smwb-theme-light .smwb-factbox {
border-left-color: var(--body-mid);
}
.smwb-theme-light .smwb-ifactbox {
border-right-color: var(--body-mid);
}
.smwb-theme-light .smwb-propval {
background-color: var(--body-light);
}
.smwb-action-separator {
border-color: var(--wikitable-border);
}
.smwb-bottom {
border-bottom: 1px solid var(--wikitable-border);
}
.smwb-ifactbox .smwb-cell,
.smwb-factbox .smwb-cell {
border-top: 1px solid var(--wikitable-border);
}
.smwb-propvalue .smwb-prophead,
.smwb-ipropvalue .smwb-prophead,
.smwb-propvalue .smwb-propval,
.smwb-ipropvalue .smwb-propval {
font-size: 0.9em;
}
:root {
--filter-black-to-link: invert(36%) sepia(58%) saturate(433%) hue-rotate(344deg) brightness(100%) contrast(91%);
}
#bodyContent span.smwbrowse a {
color: black;
background-image: url('filepath://Smwbrowse.svg');
filter: var(--filter-black-to-link);
}
#bodyContent span.smwbrowse a:hover {
color: black;
background-image: url('filepath://Smwbrowse-hover.svg');
text-decoration: underline;
}
#bodyContent span.smwsearch a {
color: black;
filter: var(--filter-black-to-link);
background-image: url('filepath://Smwsearch.svg');
}
#bodyContent span.smwsearch a:hover {
color: black;
background-image: url('filepath://Smwsearch-hover.svg');
text-decoration: underline;
}
:root {
--tabber-tab-bg: var(--body-light);
--tabber-tab-border-color: var(--body-border);
--tabber-active-tab-bg: var(--body-light);
--tabber-active-tab-color: var(--text-color);
--tabber-active-tab-hover-bg: var(--body-light);
--tabber-active-tab-hover-border-color: var(--body-border);
--tabber-active-tab-hover-color: var(--text-color);
--tabber-active-tab-border-hider-color: var(--body-light);
--tabber-inactive-tab-bg: var(--body-background-color);
--tabber-inactive-tab-border-color: var(--body-border);
--tabber-inactive-tab-color: var(--text-color);
--tabber-inactive-tab-hover-bg: var(--body-light);
--tabber-inactive-tab-hover-border-color: var(--body-border);
}
.tabber {
margin: 1em 0;
}
.tabber .tabbertab {
background-color: var(--tabber-tab-bg);
border: 1px solid var(--tabber-tab-border-color);
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
padding: 1em 1.5em;
}
ul.tabbernav {
border: none;
margin-left: 2em;
margin-bottom: 0;
margin-right: 2em;
padding: 0;
font-family: inherit;
}
ul.tabbernav li.tabberactive > a {
background-color: var(--tabber-active-tab-bg);
color: var(--tabber-active-tab-color);
border-bottom: none;
position: relative;
}
ul.tabbernav li.tabberactive > a:hover {
color: var(--tabber-active-tab-hover-color);
background-color: var(--tabber-active-tab-hover-bg);
border-color: var(--tabber-active-tab-hover-border-color);
border-bottom: none;
}
ul.tabbernav li.tabberactive > a::after {
content: '';
position: absolute;
left: 0;
right: 0;
bottom: -1px;
border-bottom: 2px solid var(--tabber-active-tab-border-hider-color);
}
ul.tabbernav li a {
background-color: var(--tabber-inactive-tab-bg);
border-bottom: transparent;
border-color: var(--tabber-inactive-tab-border-color);
color: var(--tabber-inactive-tab-color);
display: inline-block;
font-size: 110%;
padding: 0.5em 1em;
}
ul.tabbernav li a:hover {
background-color: var(--tabber-inactive-tab-hover-bg);
border-color: var(--tabber-inactive-tab-hover-border-color);
}
ul.tabbernav li a:link,
ul.tabbernav li a:visited {
color: var(--tabber-inactive-tab-color);
}
:root {
--ooui-text: var(--text-color);
--ooui-interface: var(--body-light);
--ooui-interface-border: var(--body-border);
--ooui-window-background: rgba(255, 255, 255, 0.5);
--ooui-normal: #d5c7ad;
--ooui-normal--hover: #dfd5c1;
--ooui-normal-border: #b8a282;
--ooui-progressive: #605443;
--ooui-progressive--hover: #7e6e58;
--ooui-accent: var(--link-color);
--ooui-input: #fff;
--ooui-input-border: #b8a282;
--ooui-input-border--hover: #8a724f;
--ooui-disabled: #d1cdc5;
--ooui-disabled-border: #c2b9ab;
--ooui-disabled-text: var(--subtle-color);
--ooui-pending-background-image: repeating-linear-gradient(-45deg, var(--search-box), var(--search-box) 20px, var(--body-main) 20px, var(--body-main) 30px);
}
.oo-ui-widget {
color: var(--ooui-text);
}
.oo-ui-checkboxInputWidget [type='checkbox'] + span,
.oo-ui-radioInputWidget [type='radio'] + span {
background-color: var(--ooui-input);
border-color: var(--ooui-input-border);
}
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:checked + span,
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:indeterminate + span {
background-color: var(--ooui-progressive);
border-color: var(--ooui-progressive);
}
.oo-ui-radioInputWidget.oo-ui-widget-enabled [type='radio']:checked + span {
border-color: var(--ooui-progressive);
}
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:checked:hover + span,
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:indeterminate:hover + span {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
}
.oo-ui-radioInputWidget.oo-ui-widget-enabled [type='radio']:checked:hover + span {
border-color: var(--ooui-progressive--hover);
}
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:hover + span,
.oo-ui-radioInputWidget.oo-ui-widget-enabled [type='radio']:hover + span {
border-color: var(--ooui-accent);
}
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:focus + span {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:active + span,
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:checked:active + span,
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:indeterminate:active + span {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
box-shadow: inset 0 0 0 1px var(--ooui-progressive--hover);
}
.oo-ui-radioInputWidget.oo-ui-widget-enabled [type='radio']:active + span {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
}
.oo-ui-radioInputWidget.oo-ui-widget-enabled [type='radio']:checked:active + span {
border-color: var(--ooui-progressive--hover);
box-shadow: inset 0 0 0 1px var(--ooui-progressive--hover);
}
.oo-ui-radioInputWidget.oo-ui-widget-enabled [type='radio']:checked:active + span:before {
border-color: var(--ooui-progressive--hover);
}
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:checked:focus + span,
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:indeterminate:focus + span {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent), inset 0 0 0 2px #fff;
}
.oo-ui-checkboxInputWidget [type='checkbox']:disabled + span,
.oo-ui-radioInputWidget [type='radio']:disabled + span {
background-color: var(--ooui-disabled);
border-color: var(--ooui-disabled);
}
.oo-ui-dropdownWidget-handle {
border-color: var(--ooui-normal-border);
}
.oo-ui-dropdownWidget.oo-ui-widget-enabled .oo-ui-dropdownWidget-handle {
background-color: var(--ooui-normal);
color: var(--ooui-text);
}
.oo-ui-dropdownWidget.oo-ui-widget-enabled .oo-ui-dropdownWidget-handle:hover {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
}
.oo-ui-dropdownWidget.oo-ui-widget-enabled .oo-ui-dropdownWidget-handle:active {
color: var(--ooui-text);
}
.oo-ui-dropdownWidget.oo-ui-widget-enabled .oo-ui-dropdownWidget-handle:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-dropdownWidget.oo-ui-widget-enabled.oo-ui-dropdownWidget-open .oo-ui-dropdownWidget-handle {
background-color: var(--ooui-normal--hover);
}
.oo-ui-dropdownWidget.oo-ui-widget-disabled .oo-ui-dropdownWidget-handle {
color: var(--ooui-disabled-text);
text-shadow: none;
border-color: var(--ooui-disabled-border);
background-color: var(--ooui-disabled);
}
.oo-ui-dropdownInputWidget select {
border-color: var(--ooui-normal-border);
}
.oo-ui-dropdownInputWidget option {
background-color: var(--ooui-interface);
}
.oo-ui-dropdownInputWidget.oo-ui-widget-enabled {
background-color: var(--ooui-normal);
}
.oo-ui-dropdownInputWidget.oo-ui-widget-enabled:hover {
background-color: var(--ooui-normal--hover);
}
.oo-ui-dropdownInputWidget.oo-ui-widget-enabled select {
color: var(--ooui-text);
}
.oo-ui-dropdownInputWidget.oo-ui-widget-enabled select:hover,
.oo-ui-dropdownInputWidget.oo-ui-widget-enabled select:active {
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
}
.oo-ui-dropdownInputWidget.oo-ui-widget-enabled select:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-labelWidget.oo-ui-inline-help {
color: var(--byline-color);
}
.oo-ui-menuSelectWidget {
background-color: var(--ooui-interface);
border-color: var(--ooui-interface-border);
}
.oo-ui-menuSelectWidget-frameless {
box-shadow: inset 0 -1px 0 0 var(--ooui-normal-border);
}
.oo-ui-menuSectionOptionWidget {
color: var(--byline-color);
}
.oo-ui-menuOptionWidget.oo-ui-optionWidget-highlighted,
.oo-ui-menuOptionWidget.oo-ui-optionWidget-selected {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
}
.oo-ui-menuOptionWidget.oo-ui-optionWidget-selected.oo-ui-menuOptionWidget.oo-ui-optionWidget-highlighted,
.oo-ui-menuOptionWidget.oo-ui-optionWidget-pressed.oo-ui-menuOptionWidget.oo-ui-optionWidget-highlighted {
color: var(--ooui-accent);
}
.oo-ui-menuOptionWidget.oo-ui-widget-enabled.oo-ui-optionWidget {
color: var(--ooui-text);
}
.oo-ui-messageDialog-title {
color: inherit;
}
.oo-ui-messageWidget.oo-ui-messageWidget-block.oo-ui-flaggedElement-error {
background-color: var(--errorbox-bg);
border-color: var(--errorbox-border);
}
.oo-ui-messageWidget.oo-ui-messageWidget-block.oo-ui-flaggedElement-warning {
background-color: var(--warningbox-bg);
border-color: var(--warningbox-border);
}
.oo-ui-messageWidget.oo-ui-messageWidget-block.oo-ui-flaggedElement-success {
background-color: var(--successbox-bg);
border-color: var(--successbox-border);
}
.oo-ui-messageWidget.oo-ui-messageWidget-block.oo-ui-flaggedElement-notice {
background-color: var(--messagebox-info-background);
border-color: var(--messagebox-info-border);
}
.oo-ui-messageWidget.oo-ui-flaggedElement-error:not(.oo-ui-messageWidget-block),
.oo-ui-messageWidget.oo-ui-flaggedElement-success:not(.oo-ui-messageWidget-block) {
color: var(--ooui-text);
}
.oo-ui-optionWidget.oo-ui-widget-disabled {
color: var(--ooui-disabled-text);
}
.oo-ui-outlineControlsWidget {
background-color: var(--ooui-normal);
}
.oo-ui-outlineOptionWidget.oo-ui-optionWidget-highlighted {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
}
.oo-ui-popupWidget-popup {
background-color: var(--ooui-interface);
border-color: var(--ooui-interface-border);
}
.oo-ui-popupWidget-anchored-top .oo-ui-popupWidget-anchor:after {
border-bottom-color: var(--ooui-interface);
}
.oo-ui-popupWidget-anchored-top .oo-ui-popupWidget-anchor:before {
border-bottom-color: var(--ooui-interface-border);
}
.oo-ui-popupWidget-anchored-bottom .oo-ui-popupWidget-anchor:after {
border-top-color: var(--ooui-interface);
}
.oo-ui-popupWidget-anchored-bottom .oo-ui-popupWidget-anchor:before {
border-top-color: var(--ooui-interface-border);
}
.oo-ui-popupWidget-anchored-start .oo-ui-popupWidget-anchor:after {
border-right-color: var(--ooui-interface);
}
.oo-ui-popupWidget-anchored-start .oo-ui-popupWidget-anchor:before {
border-right-color: var(--ooui-interface-border);
}
.oo-ui-popupWidget-anchored-end .oo-ui-popupWidget-anchor:after {
border-left-color: var(--ooui-interface);
}
.oo-ui-popupWidget-anchored-end .oo-ui-popupWidget-anchor:before {
border-left-color: var(--ooui-interface-border);
}
.oo-ui-searchWidget-query {
border-bottom-color: var(--ooui-interface-border);
}
.oo-ui-selectFileWidget-dropTarget {
background-color: var(--ooui-interface);
border-color: var(--ooui-interface-border);
}
.oo-ui-selectFileWidget.oo-ui-widget-enabled.oo-ui-selectFileWidget-dropTarget {
background-color: var(--ooui-interface);
}
.oo-ui-selectFileWidget.oo-ui-widget-enabled.oo-ui-selectFileWidget-dropTarget:hover {
border-color: var(--ooui-input-border--hover);
}
.oo-ui-tabOptionWidget {
color: var(--ooui-text);
}
.oo-ui-tabSelectWidget-framed .oo-ui-tabOptionWidget.oo-ui-optionWidget-selected {
background-color: var(--body-dark);
color: var(--ooui-text);
}
.oo-ui-tabSelectWidget-framed .oo-ui-tabOptionWidget.oo-ui-optionWidget-selected .oo-ui-labelElement-label {
border-bottom-color: var(--body-border);
}
.oo-ui-tabSelectWidget-framed .oo-ui-tabOptionWidget.oo-ui-widget-enabled:hover,
.oo-ui-tabSelectWidget-framed .oo-ui-tabOptionWidget.oo-ui-widget-enabled:active {
background-color: var(--body-light);
color: var(--ooui-text);
}
.oo-ui-tabSelectWidget-framed .oo-ui-tabOptionWidget.oo-ui-widget-enabled.oo-ui-optionWidget-selected:hover {
background-color: var(--body-dark);
}
.oo-ui-tabSelectWidget-frameless .oo-ui-tabOptionWidget.oo-ui-optionWidget-selected {
color: var(--ooui-progressive);
box-shadow: inset 0 -2px 0 0 var(--ooui-progressive);
}
.oo-ui-tabSelectWidget-frameless .oo-ui-tabOptionWidget.oo-ui-optionWidget-selected:hover,
.oo-ui-tabSelectWidget-frameless .oo-ui-tabOptionWidget.oo-ui-optionWidget-selected:focus {
color: var(--ooui-progressive--hover);
box-shadow: inset 0 -2px 0 0 var(--ooui-progressive--hover);
}
.oo-ui-tabSelectWidget-framed {
background: none;
border-bottom: 1px solid var(--ooui-interface-border);
}
.oo-ui-tabSelectWidget-frameless {
box-shadow: inset 0 -1px 0 0 var(--ooui-interface-border);
}
.oo-ui-tabSelectWidget-mobile {
}
.oo-ui-tabSelectWidget-mobile.oo-ui-tabSelectWidget-framed:after {
background: var(--mobile-navbox-linear-gradient);
}
.oo-ui-tabSelectWidget-mobile.oo-ui-tabSelectWidget-frameless:after {
background: var(--mobile-navbox-linear-gradient);
}
.oo-ui-tagItemWidget {
border-color: var(--ooui-normal-border);
}
.oo-ui-tagItemWidget.oo-ui-widget-enabled {
color: var(--ooui-text);
}
.oo-ui-tagItemWidget.oo-ui-widget-enabled:hover {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
}
.oo-ui-tagItemWidget.oo-ui-widget-enabled:not( .oo-ui-tagItemWidget-fixed ) {
background-color: var(--ooui-normal);
}
.oo-ui-tagItemWidget.oo-ui-widget-enabled .oo-ui-buttonElement-button:hover {
background-color: var(--ooui-normal--hover);
}
.oo-ui-tagMultiselectWidget.oo-ui-widget-enabled {
background-color: var(--ooui-interface);
}
.oo-ui-tagMultiselectWidget.oo-ui-widget-enabled.oo-ui-tagMultiselectWidget-outlined {
background-color: var(--ooui-normal);
}
.oo-ui-tagMultiselectWidget.oo-ui-widget-enabled.oo-ui-tagMultiselectWidget-outlined .oo-ui-tagItemWidget.oo-ui-widget-enabled {
background-color: var(--ooui-interface);
}
.oo-ui-textInputWidget .oo-ui-inputWidget-input {
background-color: var(--ooui-input);
color: var(--ooui-text);
border-color: var(--ooui-input-border);
}
.oo-ui-textInputWidget.oo-ui-widget-enabled .oo-ui-inputWidget-input::placeholder {
color: var(--subtle-color);
}
.oo-ui-textInputWidget.oo-ui-widget-enabled .oo-ui-inputWidget-input:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-textInputWidget.oo-ui-widget-enabled .oo-ui-inputWidget-input[readonly]:not(.oo-ui-pendingElement-pending) {
background-color: var(--ooui-disabled);
color: var(--ooui-disabled-text);
}
.oo-ui-textInputWidget.oo-ui-widget-enabled:hover .oo-ui-inputWidget-input {
border-color: var(--ooui-input-border--hover);
}
.oo-ui-textInputWidget.oo-ui-widget-enabled:hover .oo-ui-inputWidget-input:focus {
border-color: var(--ooui-accent);
}
@media screen and (min-width: 0) {
.oo-ui-textInputWidget.oo-ui-widget-enabled textarea.oo-ui-inputWidget-input:focus {
outline: 1px solid var(--ooui-accent);
}
}
.oo-ui-textInputWidget.oo-ui-widget-disabled .oo-ui-inputWidget-input {
background-color: var(--ooui-disabled);
color: var(--ooui-disabled-text);
text-shadow: none;
border-color: var(--ooui-disabled-border);
}
.oo-ui-toggleSwitchWidget {
background-color: var(--ooui-input);
border-color: var(--ooui-input-border);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled .oo-ui-toggleSwitchWidget-grip {
background-color: var(--ooui-input);
border-color: var(--ooui-input-border);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:hover {
background-color: var(--ooui-input);
border-color: var(--ooui-accent);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:hover .oo-ui-toggleSwitchWidget-grip {
background-color: var(--ooui-input);
border-color: var(--ooui-accent);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:active,
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:active:hover,
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:active:focus {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
box-shadow: inset 0 0 0 1px var(--ooui-progressive--hover);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:active .oo-ui-toggleSwitchWidget-grip,
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:active:hover .oo-ui-toggleSwitchWidget-grip,
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:active:focus .oo-ui-toggleSwitchWidget-grip {
background-color: var(--ooui-input);
border-color: var(--ooui-input);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:focus .oo-ui-toggleSwitchWidget-grip {
border-color: var(--ooui-accent);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled.oo-ui-toggleWidget-on {
background-color: var(--ooui-progressive);
border-color: var(--ooui-progressive);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled.oo-ui-toggleWidget-on .oo-ui-toggleSwitchWidget-grip {
background-color: var(--ooui-input);
border-color: var(--ooui-input);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled.oo-ui-toggleWidget-on:hover {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled.oo-ui-toggleWidget-on:active,
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled.oo-ui-toggleWidget-on:active:hover {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled.oo-ui-toggleWidget-on:focus {
border-color: var(--ooui-progressive);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled.oo-ui-toggleWidget-on:focus::before {
border-color: #fff;
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-disabled {
background-color: var(--ooui-disabled);
border-color: var(--ooui-disabled);
}
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled > .oo-ui-buttonElement-button {
color: var(--ooui-text);
}
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled > .oo-ui-buttonElement-button:hover {
color: var(--ooui-text);
}
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled > .oo-ui-buttonElement-button:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled.oo-ui-buttonElement-pressed > input.oo-ui-buttonElement-button,
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled > .oo-ui-buttonElement-button:active {
color: var(--ooui-text);
}
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button,
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button:hover {
color: var(--ooui-text);
}
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button:active,
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive.oo-ui-buttonElement-pressed > .oo-ui-buttonElement-button {
color: var(--ooui-text);
border-color: var(--ooui-text);
}
.oo-ui-buttonElement-frameless.oo-ui-widget-disabled > .oo-ui-buttonElement-button {
color: var(--ooui-disabled-text);
}
.oo-ui-buttonElement-framed.oo-ui-widget-disabled > .oo-ui-buttonElement-button {
background-color: var(--ooui-disabled);
border-color: var(--ooui-disabled-border);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled > .oo-ui-buttonElement-button {
background-color: var(--ooui-normal);
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled > .oo-ui-buttonElement-button:hover {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled > .oo-ui-buttonElement-button:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-buttonElement-active > .oo-ui-buttonElement-button {
background-color: var(--ooui-progressive--hover);
color: #fff;
border-color: var(--ooui-progressive--hover);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-buttonElement-active > .oo-ui-buttonElement-button:focus {
border-color: var(--ooui-progressive--hover);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled > .oo-ui-buttonElement-button:active,
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-buttonElement-pressed > .oo-ui-buttonElement-button {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive {
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button {
color: var(--ooui-text);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button:hover {
background-color: var(--ooui-normal--hover);
border-color: var(--ooui-progressive--hover);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-destructive > .oo-ui-buttonElement-button {
color: var(--ooui-text);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-destructive > .oo-ui-buttonElement-button:hover {
background-color: var(--ooui-normal--hover);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button {
background-color: var(--ooui-progressive);
border-color: var(--ooui-progressive);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button:hover {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent), inset 0 0 0 2px #fff;
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button:active,
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive.oo-ui-buttonElement-pressed > .oo-ui-buttonElement-button,
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive.oo-ui-buttonElement-active > .oo-ui-buttonElement-button,
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive.oo-ui-popupToolGroup-active > .oo-ui-buttonElement-button {
color: #fff;
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
}
.oo-ui-pendingElement-pending {
background-image: var(--ooui-pending-background-image);
background-size: 200%;
animation: oo-ui-pendingElement-stripes 6s linear infinite;
}
@keyframes oo-ui-pendingElement-stripes {
100% {
background-position: 100%;
}
}
.oo-ui-messageDialog-content > .oo-ui-window-foot {
outline-color: var(--ooui-interface-border);
}
.oo-ui-messageDialog-message {
color: var(--ooui-text);
}
.oo-ui-messageDialog-actions-horizontal .oo-ui-actionWidget {
border-right-color: var(--ooui-interface-border);
}
.oo-ui-messageDialog-actions-vertical .oo-ui-actionWidget {
border-bottom-color: var(--ooui-interface-border);
}
.oo-ui-processDialog-content .oo-ui-window-head,
.oo-ui-processDialog-content .oo-ui-window-foot {
outline-color: var(--ooui-interface-border);
}
.oo-ui-processDialog .oo-ui-actionWidget > .oo-ui-buttonElement-button {
border-top-color: transparent;
border-bottom-color: transparent;
}
.oo-ui-processDialog .oo-ui-actionWidget > .oo-ui-buttonElement-button:hover,
.oo-ui-processDialog .oo-ui-actionWidget > .oo-ui-buttonElement-button:active {
border-top-color: transparent;
border-bottom-color: transparent;
}
.oo-ui-processDialog .oo-ui-actionWidget:not( .oo-ui-flaggedElement-progressive ):not( .oo-ui-flaggedElement-destructive ) > .oo-ui-buttonElement-button:hover,
.oo-ui-processDialog .oo-ui-actionWidget:not( .oo-ui-flaggedElement-progressive ):not( .oo-ui-flaggedElement-destructive ) > .oo-ui-buttonElement-button:active {
border-right-color: var(--ooui-interface-border);
border-left-color: transparent;
}
.oo-ui-processDialog .oo-ui-actionWidget:not( .oo-ui-flaggedElement-progressive ):not( .oo-ui-flaggedElement-destructive ) > .oo-ui-buttonElement-button:focus {
border-color: var(--ooui-accent);
}
.oo-ui-processDialog-actions-safe .oo-ui-actionWidget > .oo-ui-buttonElement-button,
.oo-ui-processDialog-actions-other .oo-ui-actionWidget > .oo-ui-buttonElement-button {
border-right-color: var(--ooui-normal-border);
border-left-color: transparent;
}
.oo-ui-processDialog-actions-safe .oo-ui-widget-enabled.oo-ui-iconElement:not( .oo-ui-labelElement ) > .oo-ui-buttonElement-button:hover {
background-color: var(--ooui-normal--hover);
border-right-color: var(--ooui-interface-border);
}
.oo-ui-windowManager-modal > .oo-ui-dialog {
background-color: var(--ooui-window-background);
}
.oo-ui-windowManager-modal > .oo-ui-dialog > .oo-ui-window-frame {
background-color: var(--ooui-interface);
}
.oo-ui-windowManager-modal.oo-ui-windowManager-floating > .oo-ui-dialog > .oo-ui-window-frame {
border-color: var(--ooui-interface-border);
}
.oo-ui-window {
color: var(--ooui-text);
}
.oo-ui-toolbar-bar {
background-color: var(--ooui-interface);
color: var(--ooui-text);
}
.oo-ui-toolbar-position-top > .oo-ui-toolbar-bar {
border-bottom-color: var(--body-mid);
}
.oo-ui-toolbar-bar .oo-ui-bookletLayout > .oo-ui-menuLayout-menu {
border-right-color: var(--body-mid);
}
.oo-ui-tool.oo-ui-widget-enabled > .oo-ui-tool-link:hover {
background-color: var(--ooui-normal--hover);
}
.oo-ui-tool.oo-ui-widget-enabled > .oo-ui-tool-link:focus {
outline: 1px solid var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-tool.oo-ui-widget-enabled > .oo-ui-tool-link:active,
.oo-ui-tool.oo-ui-widget-enabled.oo-ui-tool-active > .oo-ui-tool-link,
.oo-ui-tool.oo-ui-widget-enabled.oo-ui-popupToolGroup-active > .oo-ui-tool-link {
background-color: var(--ooui-normal--hover);
color: var(--ooui-accent);
box-shadow: none;
}
.oo-ui-tool.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive > .oo-ui-tool-link {
background-color: var(--ooui-progressive);
}
.oo-ui-tool.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive > .oo-ui-tool-link:hover {
background-color: var(--ooui-progressive--hover);
}
.oo-ui-tool.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive > .oo-ui-tool-link:focus {
box-shadow: inset 0 0 0 1px var(--ooui-accent), inset 0 0 0 2px #fff;
}
.oo-ui-tool.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive > .oo-ui-tool-link:active,
.oo-ui-tool.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive.oo-ui-tool-active > .oo-ui-tool-link {
background-color: var(--ooui-progressive--hover);
}
.oo-ui-listToolGroup-tools .oo-ui-tool.oo-ui-widget-enabled {
background-color: var(--ooui-normal);
}
.oo-ui-listToolGroup-tools .oo-ui-tool.oo-ui-widget-enabled:hover {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
}
.oo-ui-listToolGroup-tools .oo-ui-tool-active.oo-ui-widget-enabled .oo-ui-tool-link .oo-ui-tool-title {
color: var(--ooui-progressive);
}
.oo-ui-menuToolGroup {
border-left-color: var(--body-mid);
border-right-color: var(--body-mid);
}
.oo-ui-popupToolGroup-tools {
background-color: var(--ooui-interface);
border-color: var(--body-mid);
}
.oo-ui-popupToolGroup.oo-ui-widget-enabled > .oo-ui-popupToolGroup-handle:hover {
background-color: var(--ooui-normal--hover);
}
.oo-ui-popupToolGroup.oo-ui-widget-enabled > .oo-ui-popupToolGroup-handle:focus {
outline: 1px solid var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-toolbar-actions .oo-ui-popupToolGroup.oo-ui-widget-enabled > .oo-ui-popupToolGroup-handle:hover {
border-right-color: var(--ooui-normal--hover);
}
.oo-ui-popupToolGroup-tools .oo-ui-tool.oo-ui-widget-enabled .oo-ui-tool-link:focus {
box-shadow: inset 0 0 0 2px var(--ooui-accent);
}
.oo-ui-popupToolGroup-tools .oo-ui-tool-active.oo-ui-widget-enabled .oo-ui-tool-link .oo-ui-tool-title {
color: var(--ooui-progressive);
}
.oo-ui-popupToolGroup.oo-ui-popupToolGroup-active > .oo-ui-popupToolGroup-handle {
background-color: var(--ooui-normal);
color: var(--ooui-accent);
}
.oo-ui-popupToolGroup.oo-ui-popupToolGroup-active > .oo-ui-popupToolGroup-handle:hover {
background-color: var(--ooui-normal--hover);
color: var(--ooui-accent);
}
.oo-ui-bookletLayout-outlinePanel > .oo-ui-outlineControlsWidget {
border-top-color: var(--ooui-interface-border);
}
.oo-ui-bookletLayout > .oo-ui-menuLayout-menu {
border-right-color: var(--ooui-interface-border);
}
.oo-ui-fieldLayout-disabled > .oo-ui-fieldLayout-body > .oo-ui-fieldLayout-header > .oo-ui-labelElement-label {
color: var(--ooui-disabled-text);
}
.oo-ui-panelLayout-framed {
border-color: var(--sidebar);
}
.oo-ui-icon-settings {
background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' width='20' height='20' viewBox='0 0 20 20'%3E%3Ctitle%3Esettings%3C/title%3E%3Cg transform='translate(10 10)'%3E%3Cpath id='a' d='M1.5-10h-3l-1 6.5h5m0 7h-5l1 6.5h3'/%3E%3Cuse xlink:href='%23a' transform='rotate(45)'/%3E%3Cuse xlink:href='%23a' transform='rotate(90)'/%3E%3Cuse xlink:href='%23a' transform='rotate(135)'/%3E%3C/g%3E%3Cpath d='M10 2.5a7.5 7.5 0 0 0 0 15 7.5 7.5 0 0 0 0-15v4a3.5 3.5 0 0 1 0 7 3.5 3.5 0 0 1 0-7'/%3E%3C/svg%3E");
}
.oo-ui-icon-clear {
background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 20 20'%3E%3Ctitle%3Eclear%3C/title%3E%3Cpath d='M10 0a10 10 0 1 0 10 10A10 10 0 0 0 10 0zm5.66 14.24-1.41 1.41L10 11.41l-4.24 4.25-1.42-1.42L8.59 10 4.34 5.76l1.42-1.42L10 8.59l4.24-4.24 1.41 1.41L11.41 10z'/%3E%3C/svg%3E");
}
.mw-widget-dateInputWidget-handle {
background-color: var(--ooui-input);
color: var(--ooui-text);
border-color: var(--ooui-input-border);
}
.mw-widget-dateInputWidget-calendar {
background-color: var(--ooui-interface);
}
.mw-widget-dateInputWidget.oo-ui-widget-enabled .mw-widget-dateInputWidget-handle:hover {
border-color: var(--ooui-input-border--hover);
}
.mw-widget-calendarWidget {
border-color: var(--ooui-interface-border);
}
.mw-widget-calendarWidget:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.mw-widget-calendarWidget-day,
.mw-widget-calendarWidget-day-heading {
color: var(--ooui-text);
}
.mw-widget-calendarWidget-day-additional {
color: var(--ooui-text);
opacity: 0.67;
}
.mw-widget-calendarWidget-day-today {
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.mw-widget-calendarWidget-item:hover {
background-color: var(--ooui-progressive);
}
.mw-widget-calendarWidget-item-selected {
background-color: var(--ooui-progressive--hover);
}
.mw-widgets-datetime-calendarWidget {
background-color: var(--ooui-interface);
border-color: var(--ooui-interface-border);
}
.mw-widgets-datetime-calendarWidget:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent), 0 2px 2px 0 rgba(0, 0, 0, 0.25);
}
.mw-widgets-datetime-calendarWidget-grid .mw-widgets-datetime-calendarWidget-cell.mw-widgets-datetime-calendarWidget-extra .oo-ui-buttonElement-button .oo-ui-labelElement-label {
color: var(--subtle-color);
}
.mw-widgets-datetime-calendarWidget-grid .mw-widgets-datetime-calendarWidget-cell.mw-widgets-datetime-calendarWidget-selected .oo-ui-buttonElement-button {
background-color: var(--ooui-progressive--hover);
}
.mw-widgets-datetime-dateTimeInputWidget-handle {
background-color: var(--ooui-input);
color: var(--ooui-text);
border-color: var(--ooui-input-border);
}
.mw-widgets-datetime-dateTimeInputWidget.oo-ui-widget-enabled.mw-widgets-datetime-dateTimeInputWidget-handle:hover {
border-color: var(--ooui-input-border--hover);
}
.mw-widgets-datetime-dateTimeInputWidget.oo-ui-widget-enabled:hover input,
.mw-widgets-datetime-dateTimeInputWidget.oo-ui-widget-enabled:hover textarea {
border-color: var(--ooui-input-border--hover);
}
.mw-widgets-datetime-dateTimeInputWidget.oo-ui-widget-enabled .mw-widgets-datetime-dateTimeInputWidget-editField:hover {
background-color: var(--ooui-normal);
}
.ve-activated .ve-init-mw-desktopArticleTarget-originalContent #catlinks:hover {
background: var(--ooui-normal--hover);
}
.ve-ui-overlay {
font-family: inherit;
}
.oo-ui-toolbar-position-top .ve-ui-toolbarDialog-position-above {
border-top-color: var(--body-mid);
}
.ve-ce-branchNode-blockSlug,
.ve-ce-branchNode-newSlug {
outline-color: var(--body-border);
background-color: var(--ooui-interface);
}
.ve-ui-specialCharacterPage h3 {
color: var(--byline-color);
}
.ve-ui-specialCharacterPage-character {
border-color: var(--body-mid);
}
.ve-ui-specialCharacterPage-character:hover {
border-color: var(--body-dark);
}
.ve-ce-linkAnnotation.ve-ce-annotation-active {
box-shadow: 0 0 0 1px var(--body-mid);
background: none;
}
.ve-ui-desktopContext .ve-ui-linkContextItem .ve-ui-linkContextItem-label {
border-color: var(--body-border);
}
.ve-ui-mwHelpPopupTool-version-label,
.ve-ui-mwHelpPopupTool-version-link,
.ve-ui-mwHelpPopupTool-version-date {
color: var(--byline-color);
}
.ve-ce-tableCellableNode {
border-color: var(--body-mid);
}
.ve-ce-mwReferencesListNode-muted {
color: var(--byline-color);
}
.ve-ui-mwTemplatePage-description,
.ve-ui-mwParameterPage-label,
.ve-ui-mwParameterPage-description-required,
.ve-ui-mwParameterPage-description-deprecated {
color: var(--byline-color);
}
.mw-widget-titleWidget-menu .mw-widget-titleOptionWidget-description {
color: var(--byline-color);
}
.ve-ui-mwGalleryDialog-menuLayout > .oo-ui-menuLayout-menu,
.ve-ui-mwGalleryDialog-innerMenuLayout > .oo-ui-menuLayout-menu,
.ve-ui-mwGalleryDialog .ve-ui-mwGalleryDialog-image-container,
.ve-ui-targetWidget {
border-color: var(--body-border);
}
.ve-ui-targetWidget:not(.oo-ui-pendingElement-pending) {
background-color: var(--body-main);
}
.ve-ui-mwSaveDialog {
color: var(--ooui-text);
}
.ve-ui-mwSaveDialog-options {
background-color: var(--ooui-interface);
border-color: var(--body-border);
}
.ve-ui-mwSaveDialog-summary {
background-color: var(--ooui-input);
}
.ve-ui-mwSaveDialog-editSummary-count {
border-color: var(--body-border);
}
.ve-ui-mwSaveDialog-license {
color: var(--byline-color);
}
.ve-ui-mwReferenceContextItem-muted {
color: var(--byline-color);
}
.ve-ui-mwNoticesPopupTool-items > div:not(:first-child),
.ve-ui-mwHelpPopupTool-item:not(:first-child) {
border-color: var(--body-border);
}
.ve-ui-mwTransclusionOutlineControlsWidget {
background-color: var(--ooui-interface);
border-top-color: var(--body-border);
}
.ve-ui-mwTransclusionOutlineTemplateWidget-sticky {
background-color: var(--ooui-interface);
}
.ve-ui-mwTransclusionOutlineTemplateWidget .ve-ui-mwTransclusionOutlineParameterWidget.oo-ui-optionWidget-highlighted {
color: var(--ooui-text);
}
.ve-ui-mwTransclusionOutlineTemplateWidget-no-template-parameters {
color: var(--subtle-color);
}
.ve-ui-mwParameterPage-undocumentedLabel {
color: var(--subtle-color);
}
.ve-ui-mwTwoPaneTransclusionDialogLayout > .oo-ui-menuLayout-menu {
border-right: var(--body-border);
}
.ve-ui-mwParameterPage-doc-required,
.ve-ui-mwParameterPage-doc-deprecated,
.ve-ui-mwParameterPage-inlineDescription .ve-ui-mwParameterPage-doc-example {
color: var(--byline-color);
}
.ve-ui-expandableContent-toggle {
background-color: var(--ooui-interface);
}
.ve-ui-expandableContent-fade {
background: linear-gradient(to right, rgba(255, 255, 255, 0) 0, var(--ooui-interface) 90%);
}
.ve-ui-commandHelpDialog-shortcut > kbd,
.ve-ui-commandHelpDialog-sequence > kbd {
background-color: var(--keypress-background);
color: var(--keypress-color);
border-color: var(--keypress-border);
box-shadow: none;
text-shadow: none;
}
.ve-init-mw-desktopArticleTarget-toolbarPlaceholder-floating .ve-init-mw-desktopArticleTarget-toolbarPlaceholder-bar {
background: var(--ooui-interface);
}
.ve-init-mw-desktopArticleTarget-toolbarPlaceholder-bar {
border-bottom-color: var(--body-mid);
}
figure[typeof~='mw:File/Thumb'],
figure[typeof~='mw:File/Frame'],
figure[typeof~='mw:Image/Thumb'],
figure[typeof~='mw:Video/Thumb'],
figure[typeof~='mw:Image/Frame'],
figure[typeof~='mw:Video/Frame'] {
border: none;
background-color: var(--thumb-bg);
}
figure[typeof~='mw:File/Thumb'] > a:first-child > *:first-child:not( .mw-broken-media ),
figure[typeof~='mw:File/Frame'] > a:first-child > *:first-child:not( .mw-broken-media ),
figure[typeof~='mw:Image/Thumb'] > a:first-child > *:first-child:not( .mw-broken-media ),
figure[typeof~='mw:Video/Thumb'] > a:first-child > *:first-child:not( .mw-broken-media ),
figure[typeof~='mw:Image/Frame'] > a:first-child > *:first-child:not( .mw-broken-media ),
figure[typeof~='mw:Video/Frame'] > a:first-child > *:first-child:not( .mw-broken-media ) {
border: none;
background: var(--thumb-bg);
}
figure[typeof~='mw:File/Thumb'] > figcaption,
figure[typeof~='mw:File/Frame'] > figcaption,
figure[typeof~='mw:Image/Thumb'] > figcaption,
figure[typeof~='mw:Video/Thumb'] > figcaption,
figure[typeof~='mw:Image/Frame'] > figcaption,
figure[typeof~='mw:Video/Frame'] > figcaption {
border: none;
background-color: var(--thumb-caption-bg);
padding: 4px 6px;
}
:root {
--keypress-background: #eee;
--keypress-border: #ccc;
--keypress-color: #333;
}
.archivelist {
background-color: var(--body-light);
border: solid 1px var(--body-border);
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
float: right;
margin: 5px;
padding: 5px;
text-align: center;
width: 120px;
}
.shortcut {
border: 1px solid var(--body-border);
background: var(--body-light);
float: right;
font-size: 0.8em;
margin: 0.5em 0em 0.5em 1em;
padding: 0.5em;
text-align: center;
}
.hatnote,
.seealso {
font-style: italic;
}
.hatnote i,
.seealso i {
font-style: normal;
}
div.hatnote,
div.seealso {
margin: 0.5em 1.6em;
}
div.hatnote + div.hatnote,
div.hatnote + div.seealso,
div.seealso + div.hatnote,
div.seealso + div.seealso {
margin-top: -0.5em;
}
.keypress {
background: var(--keypress-background);
color: var(--keypress-color);
font-family: inherit;
border: 1px solid var(--keypress-border);
border-radius: 2px;
font-size: 0.9em;
margin: 0 0.1em;
padding: 0.1em 0.4em;
white-space: nowrap;
}
:root {
--documentation-background: #f9fafa;
--documentation-link-color: #e4eaee;
--documentation-headers-color: #fff;
--documentation-header-background: #949eaa;
--documentation-subheader-background: #808c9a;
--documentation-border: #e4eaee;
}
.documentation {
background: var(--documentation-background);
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
margin: 1em 0;
}
.documentation pre,
.documentation code {
background-color: var(--documentation-background);
border-color: var(--documentation-border);
}
.documentation h2,
.documentation hr {
border-color: var(--documentation-border);
}
.documentation-header {
color: var(--documentation-headers-color);
background: var(--documentation-header-background);
font-weight: bold;
padding: 1em 1.5em;
}
.documentation-title {
font-size: 1.25em;
}
.documentation-subheader {
color: var(--documentation-headers-color);
background: var(--documentation-subheader-background);
padding: 0.5em 1.5em;
}
.documentation-subheader a,
.documentation-subheader a:visited,
.documentation-subheader a:active {
color: var(--documentation-link-color);
}
.documentation-documentation,
.documentation-links {
font-size: 0.85em;
}
.documentation-content {
padding: 1em 1.5em;
}
.mw-templatedata-doc-params dl:not(:empty) {
column-count: 3;
border-top: 1px solid var(--body-border);
margin-bottom: 0.5em;
}
.mw-templatedata-doc-params dt::after {
content: ":";
}
.mw-templatedata-doc-params dd,
.mw-templatedata-doc-params dt {
margin: 0.1em 2em;
min-width: auto;
}
.mw-templatedata-doc-muted {
color: var(--subtle-color);
font-style: italic;
}
:root {
--infobox-text-color: var(--text-color);
--table-header: #b1886f;
--table-subheader: #d1b9ad;
--table-body: #fff8ee;
--table-border: #e9d8cc;
}
.infobox {
font-size: 0.85em;
width: 300px;
border-collapse: collapse;
float: right;
table-layout: fixed;
margin: 0.5em 0 1em 1em;
}
.infobox .infobox-buttons {
display: flex;
flex-wrap: wrap;
justify-content: center;
grid-gap: 3px;
margin-bottom: 3px;
}
.infobox .infobox-buttons .button {
background: var(--table-header);
padding: 0 5px;
font-weight: bold;
flex: 1 1 20%;
max-width: 20%;
color: #fff;
}
.infobox tbody {
border: 1px solid var(--table-border);
background: var(--table-body);
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(231, 215, 199, 0.5);
}
.infobox .infobox-header {
background: var(--table-header);
padding: 0.5em 0;
text-align: center;
color: #fff;
font-size: 1.15em;
font-weight: bold;
line-height: 1.4em;
}
.infobox .infobox-image {
text-align: center;
}
.infobox .infobox-subheader {
background: var(--table-subheader);
font-weight: bold;
text-align: center;
color: #fff;
}
.infobox .infobox-padding {
backgound: var(--table-body);
}
.infobox tr td:not(.infobox-padding) {
padding: 0.2em 0.5em;
}
.infobox th:not(.infobox-header):not(.infobox-subheader):not(.infobox-nested) {
border-right: 2px solid var(--table-subheader);
text-align: right;
padding: 0.2em 0.5em;
}
.hidden {
display: none;
}
ol.references,
.reflist {
font-size: 90%;
}
.reflist {
list-style-type: decimal;
}
.reflist .references {
font-size: 100%;
list-style-type: inherit;
}
.reflist-lower-alpha {
list-style-type: lower-alpha;
}
ol.references li:target,
sup.reference:target {
background-color: var(--body-light);
}
.hideQuotes .refhide {
display: none;
}
:root {
--messagebox-obsolete-background: #cfcfcf;
--messagebox-obsolete-border: #464646;
--messagebox-obsolete-color: var(--text-color);
--messagebox-obsolete-link-color: #6c6c6c;
--messagebox-info-background: #ebebeb;
--messagebox-info-border: #898989;
--messagebox-info-color: var(--text-color);
--messagebox-info-link-color: #6c6c6c;
--messagebox-action-background: #c7e8fa;
--messagebox-action-border: #0b5884;
--messagebox-action-color: var(--text-color);
--messagebox-action-link-color: #03436b;
--messagebox-warn-background: #dfc0ba;
--messagebox-warn-border: #861c10;
--messagebox-warn-color: var(--text-color);
--messagebox-warn-link-color: #8e221a;
--messagebox-safe-background: #d8f0d3;
--messagebox-safe-border: #1b8408;
--messagebox-safe-color: var(--text-color);
--messagebox-safe-link-color: #1b8408;
--messagebox-disambig-background: #ebebeb;
--messagebox-disambig-border: #898989;
--messagebox-disambig-color: var(--text-color);
--messagebox-disambig-link-color: #6c6c6c;
--messagebox-discord-background: #5865f2;
--messagebox-discord-border: #4c57d0;
--messagebox-discord-link-color: #d2e5fc;
}
.mw-message-box,
.mw-message-box-error,
.mw-message-box-warning,
.mw-message-box-success,
.usermessage {
color: var(--text-color);
}
.messagebox {
width: 65%;
margin: 0.5em auto;
border-left: 15px solid;
border-color: var(--body-dark);
background-color: var(--body-light);
box-sizing: border-box;
}
.messagebox.obsolete {
background-color: var(--messagebox-obsolete-background);
border-color: var(--messagebox-obsolete-border);
color: var(--messagebox-obsolete-color);
}
.messagebox.obsolete a,
.messagebox.obsolete a:visited,
.messagebox.obsolete a:active {
color: var(--messagebox-obsolete-link-color);
}
.messagebox.info {
background-color: var(--messagebox-info-background);
border-color: var(--messagebox-info-border);
color: var(--messagebox-info-color);
}
.messagebox.info a,
.messagebox.info a:visited,
.messagebox.info a:active {
color: var(--messagebox-info-link-color);
}
.messagebox.action {
background-color: var(--messagebox-action-background);
border-color: var(--messagebox-action-border);
color: var(--messagebox-action-color);
}
.messagebox.action a,
.messagebox.action a:visited,
.messagebox.action a:active {
color: var(--messagebox-action-link-color);
}
.messagebox.warn {
background-color: var(--messagebox-warn-background);
border-color: var(--messagebox-warn-border);
color: var(--messagebox-warn-color);
}
.messagebox.warn a,
.messagebox.warn a:visited,
.messagebox.warn a:active {
color: var(--messagebox-warn-link-color);
}
.messagebox.safe {
background-color: var(--messagebox-safe-background);
border-color: var(--messagebox-safe-border);
color: var(--messagebox-safe-color);
}
.messagebox.safe a,
.messagebox.safe a:visited,
.messagebox.safe a:active {
color: var(--messagebox-safe-link-color);
}
.messagebox.disambig {
background-color: var(--messagebox-disambig-background);
border-color: var(--messagebox-disambig-border);
color: var(--messagebox-disambig-color);
}
.messagebox.disambig a,
.messagebox.disambig a:visited,
.messagebox.disambig a:active {
color: var(--messagebox-disambig-link-color);
}
.messagebox.discord {
background-color: var(--messagebox-discord-background);
border-color: var(--messagebox-discord-border);
color: #fff;
}
.messagebox.discord a,
.messagebox.discord a:visited,
.messagebox.discord a:active {
color: var(--messagebox-discord-link-color);
}
.messagebox.discord a.external,
.messagebox.discord a:visited.external,
.messagebox.discord a:active.external {
font-style: italic;
}
.messagebox.stub {
width: 40%;
}
.messagebox.hasdialogue {
padding: 0 10px;
width: auto;
}
:root {
--byline-arrow-filter: invert(29%) sepia(0%) saturate(376%) hue-rotate(172deg) brightness(87%) contrast(80%);
--tile-border-color: var(--body-border);
--tile-background-color: var(--body-light);
--tile-link-button-color: #f5e9db;
--tile-link-button-highlight-color: #dfccb0;
--tile-dark-color: #fff;
--tile-dark-bg: #5d6773;
--tile-dark-link-color: #ccc;
--tile-dark-byline-color: rgba(255, 255, 255, 0.7);
--tile-dark-header-color: #fff;
}
.tile {
background: var(--tile-background-color);
border: 1px solid var(--tile-border-color);
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
padding: 1.5em 2em 1em;
max-width: 40em;
}
.tile h2 {
font-size: 1.4em;
font-weight: bold;
border: none;
margin: 0 0 0.4em;
}
.tile .byline + h2 {
margin-top: -0.5em;
}
.tile.dark {
color: var(--tile-dark-color);
background: var(--tile-dark-bg);
border: none;
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.3);
}
.tile.dark h2 {
color: var(--tile-dark-header-color);
}
.tile.dark a {
color: var(--tile-dark-link-color);
}
.tile.dark .byline {
color: var(--tile-dark-byline-color);
}
.byline {
font-size: 0.9em;
color: var(--byline-color);
}
.byline a {
color: var(--byline-color);
}
.tile-row {
display: flex;
flex-flow: row wrap;
margin-bottom: 1em;
}
.tile-halves {
display: flex;
flex-flow: row wrap;
border: 1px solid var(--tile-border-color);
background: var(--tile-background-color);
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
}
.tile-halves h2 {
font-size: 1.4em;
font-weight: bold;
border: none;
margin: 0 0 0.4em;
}
.tile-halves .byline + h2 {
margin-top: -0.5em;
}
.tile-top {
width: 100%;
padding: 1.3rem 1.5rem 0.6rem;
}
.tile-top.tile-image {
display: flex;
align-items: center;
background-color: var(--byline-color);
overflow: hidden;
padding: 0;
height: 13vw;
max-height: 12em;
transition: 0.4s ease-out;
}
.tile-halves:hover .tile-top.tile-image img {
transform: scale(1.1);
transition: 0.5s ease-out;
}
.tile-top.tile-image a {
width: 100%;
}
.tile-top.tile-image img {
width: 100%;
object-fit: cover;
max-height: 200px;
transition: 0.4s ease-out;
}
.tile-bottom {
background: var(--tile-background-color);
border-top: 1px solid var(--tile-border-color);
width: 100%;
padding: 1rem 1.5rem 0.6rem;
}
.tile-bottom.link-button {
align-self: flex-end;
padding: 0;
}
.tile-bottom.link-button a {
display: block;
text-align: center;
padding: 0.75em 1.5em 0.8em;
text-decoration: none;
}
.tile-bottom.read-more {
background: var(--tile-link-button-color);
transition: 0.3s ease-out;
}
.tile-bottom.read-more a {
color: var(--byline-color);
font-weight: bold;
text-align: right;
}
.tile-bottom.read-more:hover {
background: var(--tile-link-button-highlight-color);
}
.tile-bottom.read-more:hover .arrow {
transform: translateX(50%);
}
.tile-bottom.read-more .arrow {
filter: var(--byline-arrow-filter);
margin-left: 0.4em;
transition: 0.3s ease-out;
}
body.page-Main_Page.action-view .catlinks,
body.page-Main_Page.action-view #contentSub,
body.page-Main_Page.action-view #firstHeading,
body.page-Main_Page.action-view #siteNotice {
display: none;
}
body.page-Main_Page .mw-parser-output {
max-width: 75em;
margin: 0 auto;
}
body.page-Main_Page.action-view .catlinks,
body.page-Main_Page.action-view #contentSub,
body.page-Main_Page.action-view #siteNotice {
display: none;
}
.mainpage-header {
display: flex;
margin: 2.6em 1.75em 1.5em;
}
.mainpage-header .header-intro {
flex: 2;
}
.mainpage-header .header-intro h1 {
font-size: 2.5em;
font-weight: bold;
border: none;
margin: 0 0 0.15em;
}
.mainpage-header .header-intro p {
font-size: 1.1em;
line-height: 1.7em;
}
.mainpage-header .header-stats {
flex: 1;
display: flex;
justify-content: center;
align-items: center;
margin-top: -1em;
}
.mainpage-body {
display: grid;
grid-template-areas: "event event event" "update update update" "content content content" "left left right";
gap: 0.9rem;
grid-template-columns: repeat(3, 1fr);
}
.mainpage-body h2 a {
color: var(--text-color);
}
.mainpage-body .tile {
padding-left: 1.75em;
padding-right: 1.75em;
max-width: 100%;
}
.mainpage-body .tile-row {
width: 100%;
margin-bottom: 0;
}
.mainpage-body .tile-row {
display: grid;
gap: 0.9rem;
}
.mainpage-contents.tile-row {
display: flex;
}
.mainpage-contents.tile-row .tile-top {
height: 5.5rem;
}
.mainpage-left {
grid-area: left;
flex: 2;
display: flex;
flex-flow: column wrap;
}
.mainpage-left > * {
margin: 0 0 0.9rem;
}
.mainpage-right {
grid-area: right;
flex: 1;
display: flex;
flex-flow: column wrap;
}
.mainpage-right > * {
margin: 0 0 0.9rem;
}
.arrow {
background: url('filepath://White-chevron.svg') no-repeat;
display: inline-block;
height: 0.7rem;
width: 0.45rem;
vertical-align: middle;
}
.arrow.dark {
filter: invert(80%);
}
.mainpage-contents {
grid-area: content;
grid-template-columns: repeat(6, 1fr);
}
.mainpage-contents .tile-halves {
flex: 1;
}
.mainpage-contents .tile-top {
height: 4.5rem;
position: relative;
}
.mainpage-contents .tile-top.tile-image img {
height: auto;
}
.mainpage-contents h2 {
margin: 0;
padding: 0;
}
.mainpage-contents .tile-bottom.link-button a {
padding: 0.75em 0.2em;
}
.popular-pages ul {
display: grid;
grid-template-columns: repeat(3, 1fr);
grid-gap: 0.6em;
margin: 1em 0 0.7em 0;
}
.mp-popular-page-light {
display: flex;
align-items: center;
background-color: var(--button-background);
transition: 100ms;
}
.mp-popular-page-light a {
flex: 1;
display: block;
color: #fff;
font-weight: bold;
text-align: center;
text-decoration: none;
padding: 0.7em 1em;
}
.mp-popular-page-light:hover {
filter: brightness(115%);
transition: 100ms;
}
.mainpage-social {
border: none;
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.3);
}
.mainpage-social .tile-top {
display: flex;
align-items: center;
padding: 1em 1.5em;
}
.mainpage-social .tile-top a {
flex: 1;
position: relative;
text-decoration: none;
}
.mainpage-social .tile-top a:hover .arrow {
transform: translateX(50%);
}
.mainpage-social .tile-bottom {
border: none;
padding: 1em 1.75em;
}
.mainpage-social .tile-bottom p {
color: #fff;
font-weight: bold;
font-size: 0.9em;
text-align: center;
text-transform: uppercase;
letter-spacing: 0.03em;
margin: 0;
}
.mainpage-social .social-icon {
margin-right: 0.75em;
text-align: center;
width: 60px;
}
.mainpage-social .social-header {
color: #fff;
font-weight: bold;
font-size: 1.15em;
margin: 0.5em 0 -0.15em;
}
.mainpage-social .server-tagline {
color: rgba(255, 255, 255, 0.9);
margin-bottom: 0.5em;
}
.mainpage-social .arrow {
position: absolute;
top: calc(50% - .5em);
right: 0;
height: 1em;
width: 0.7em;
background-size: 0.7em 1em;
transition: 0.3s ease-out;
}
.mainpage-social.mainpage-discord .tile-top {
background: #5865f2;
}
.mainpage-social.mainpage-discord .tile-bottom {
background: #525ee0;
}
.mainpage-social.mainpage-twitter .tile-top {
background: #15202b;
}
.mainpage-social.mainpage-twitter .tile-bottom {
background: #121c26;
}
.mainpage-editing {
border: none;
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.3);
}
.mainpage-editing .tile-top {
background: #438ab5;
}
.mainpage-editing .tile-bottom {
background: #3980ab;
border: none;
padding: 0.8rem 1.5rem 0.4rem;
}
.mainpage-editing h2,
.mainpage-editing a {
color: #fff;
}
.mainpage-editing p {
color: rgba(255, 255, 255, 0.9);
}
.mainpage-editing ul {
list-style-image: url('filepath://Transparent-chevron.svg');
}
@media only screen and (max-width: 1200px) {
.mainpage-contents {
grid-template-columns: repeat(3, 1fr);
}
}
@media only screen and (max-width: 1000px) {
.mainpage-body {
grid-template-areas: "event event event" "update update update" "content content content" "left left left" "right right right";
}
.mainpage-recent-updates {
grid-template-columns: repeat(2, 1fr);
}
.mainpage-recent-updates .tile-halves:last-child {
display: none;
}
.mainpage-recent-updates .tile-halves:hover .tile-top img {
transform: scale(1.04);
}
.mainpage-recent-updates .tile-top {
height: 18vw;
min-height: 9em;
}
.mainpage-header .header-stats {
display: none;
}
.mainpage-left > *:last-child,
.mainpage-right > *:last-child {
margin-bottom: 0;
}
.popular-pages ul {
grid-template-columns: repeat(2, 1fr);
}
}
@media only screen and (max-width: 720px) {
.mainpage-recent-updates {
grid-template-columns: none;
}
.mainpage-recent-updates .tile-halves:last-child {
display: flex;
}
.mainpage-contents {
grid-template-columns: repeat(2, 1fr);
}
}
.mw-prefs-buttons {
background-color: var(--body-main);
border-top-color: var(--body-border);
box-shadow: none;
}
.mw-prefs-tabs-wrapper.oo-ui-panelLayout-framed,
.mw-prefs-tabs > .oo-ui-menuLayout-content > .oo-ui-indexLayout-stackLayout > .oo-ui-tabPanelLayout {
border-color: var(--body-border);
}
.mw-htmlform-ooui .mw-htmlform-matrix tbody tr:nth-child(even) td {
background-color: var(--body-light);
}
.mw-htmlform-ooui .mw-htmlform-matrix tbody tr:hover td {
background-color: var(--body-mid);
}
:root {
--rc-positive-color: #407813;
--rc-negative-color: #b41e0f;
}
.mw-plusminus-pos {
color: var(--rc-positive-color);
}
.mw-plusminus-neg {
color: var(--rc-negative-color);
}
.client-js .mw-recentchanges-toplinks:not(.mw-recentchanges-toplinks-collapsed) {
border-color: var(--body-border);
background-color: var(--body-light);
border-radius: 2px;
}
.mw-rcfilters-ui-filterTagMultiselectWidget-wrapper-content-title {
color: var(--text-color);
}
.mw-rcfilters-ui-filterTagMultiselectWidget-emptyFilters {
color: var(--byline-color);
}
.mw-rcfilters-ui-filterTagMultiselectWidget.oo-ui-widget-enabled .oo-ui-tagMultiselectWidget-handle {
background-color: var(--ooui-interface);
border-color: var(--ooui-interface-border);
}
.mw-rcfilters-ui-filterTagMultiselectWidget-views-select-widget.oo-ui-widget {
border-color: var(--ooui-interface-border);
}
.mw-rcfilters-collapsed .mw-rcfilters-ui-filterTagMultiselectWidget {
border-bottom-color: var(--ooui-interface-border);
}
.mw-rcfilters-ui-menuSelectWidget-footer {
background-color: var(--ooui-interface);
border-color: var(--ooui-interface-border);
}
.mw-rcfilters-ui-viewSwitchWidget label.oo-ui-labelWidget {
color: var(--byline-color);
}
.mw-rcfilters-ui-tagItemWidget-popup-content {
color: var(--ooui-text);
}
.mw-changeslist-legend,
.mw-rcfilters-ui-changesListWrapperWidget .mw-changeslist-legend {
background-color: var(--body-light);
border-color: var(--body-dark);
}
.mw-rcfilters-ui-changesListWrapperWidget-previousChangesIndicator {
border-color: var(--sidebar);
}
.client-js .mw-changeslist ul,
.client-js .mw-changeslist table.mw-enhanced-rc {
margin-left: 0;
}
.mw-rcfilters-ui-watchlistTopSectionWidget-separator {
border-color: var(--sidebar);
}
.mw-rcfilters-ui-itemMenuOptionWidget-header {
border-bottom-color: var(--ooui-interface);
background-color: var(--ooui-interface-border);
}
.mw-rcfilters-ui-itemMenuOptionWidget:not(:last-child):not(.mw-rcfilters-ui-itemMenuOptionWidget-identifier-talk) {
border-bottom-color: var(--ooui-normal-border);
}
.mw-rcfilters-ui-itemMenuOptionWidget-label-title,
.mw-rcfilters-ui-itemMenuOptionWidget-label-desc {
color: var(--text-color);
}
.mw-rcfilters-ui-filterMenuOptionWidget.oo-ui-flaggedElement-muted:not(.oo-ui-optionWidget-selected) {
background-color: var(--body-main);
}
.mw-rcfilters-ui-filterMenuOptionWidget.oo-ui-flaggedElement-muted .mw-rcfilters-ui-itemMenuOptionWidget-label-title,
.mw-rcfilters-ui-filterMenuOptionWidget.oo-ui-flaggedElement-muted .mw-rcfilters-ui-itemMenuOptionWidget-label-desc {
color: var(--subtle-color);
}
.mw-rcfilters-ui-filterMenuSectionOptionWidget {
background-color: var(--body-mid);
}
.mw-rcfilters-ui-filterMenuSectionOptionWidget-header-title.oo-ui-labelElement-label {
color: var(--ooui-text);
}
.mw-rcfilters-ui-filterMenuHeaderWidget-title {
color: var(--ooui-text);
}
.mw-rcfilters-ui-filterMenuHeaderWidget-header {
border-bottom-color: var(--ooui-interface-border);
background-color: var(--ooui-interface);
}
.mw-rcfilters-ui-itemMenuOptionWidget-view-namespaces {
border-top-color: var(--ooui-interface-border);
}
.mw-rcfilters-ui-datePopupWidget {
border-color: var(--ooui-interface-border);
}
.mw-rcfilters-ui-datePopupWidget .mw-rcfilters-ui-valuePickerWidget-title {
color: var(--byline-color);
}
.mw-rcfilters-ui-savedLinksListItemWidget-label {
color: var(--ooui-accent);
}
.client-js .mw-changeslist.mw-rcfilters-ui-changesListWrapperWidget-highlighted ul,
.client-js .mw-changeslist.mw-rcfilters-ui-changesListWrapperWidget-highlighted table.mw-enhanced-rc {
margin-left: 1.5em;
}
.page-Special_CreateAccount .mw-ui-container,
.page-Special_UserLogin .mw-ui-container {
max-width: 64rem;
margin: 0 auto;
}
.mw-number-text {
color: var(--byline-color);
}
.mw-body-content .mw-number-text h3 {
color: var(--text-color);
}
#mw-indicator-mw-helplink a {
background: none;
padding: 0;
display: flex;
align-items: center;
}
#mw-indicator-mw-helplink a::before {
content: '';
margin-right: 5px;
-webkit-mask: url("/resources/src/mediawiki.helplink/images/helpNotice.svg?46d34") no-repeat 50% 50% / contain;
mask: url("/resources/src/mediawiki.helplink/images/helpNotice.svg?46d34") no-repeat 50% 50% / contain;
background: var(--text-color);
height: 20px;
width: 20px;
}
.results-info {
color: inherit;
}
.mw-search-profile-tabs {
background-color: var(--body-mid);
border-color: transparent;
}
.search-types .current a {
color: inherit;
}
#mw-searchoptions {
background-color: var(--body-mid);
border-color: transparent;
}
#mw-searchoptions .divider {
border-color: var(--body-border);
}
#mw-searchoptions h4 {
font-family: inherit;
}
#mw-searchoptions .oo-ui-labelElement:nth-of-type(odd) {
font-weight: bold;
}
.searchresult {
line-height: 1.5;
}
.searchalttitle,
#mw-search-interwiki li {
font-size: 90%;
}
.mw-search-result-data {
color: var(--byline-color);
}
.page-Special_ListFiles a.image img {
width: inherit;
height: inherit;
}
.page-Special_ListFiles .TablePager_col_thumb {
text-align: center;
}
#editcount table[border="1"] {
background-color: var(--body-main) !important;
border-color: var(--wikitable-border) !important;
margin-top: 0.5em;
}
#editcount table[border="1"] th,
#editcount table[border="1"] td {
padding: 0.2em 0.4em;
}
#editcount table[border="1"] th {
background-color: var(--wikitable-header-bg);
border: 1px solid var(--wikitable-border);
}
#editcount table[border="1"] td {
border: 1px solid var(--wikitable-border);
}
#editcount table[border="1"] tr:nth-child(odd) {
background-color: var(--body-light);
}
.mw-echo-ui-notificationBadgeButtonPopupWidget-popup > .oo-ui-popupWidget-popup .mw-echo-ui-placeholderItemWidget {
background-color: inherit;
}
table.mw-interwikitable.body td.mw-interwikitable-local-yes {
background-color: var(--table-yes-background);
color: var(--table-yes-color);
}
.mw-protectedpages-unknown {
color: var(--byline-color);
}
.watchlistredir,
.allpagesredirect {
font-style: italic;
}
.allpagesredirect:after {
color: var(--byline-color);
content: " (redirect)";
}
.mw-apisandbox-toolbar {
background: var(--body-main);
}
.oo-ui-menuOptionWidget .mw-apisandbox-flag {
color: var(--byline-color);
}
tr.mw-abusefilter-list-disabled,
tr.mw-abusefilter-list-disabled td {
color: var(--byline-color);
}
table.mw-abuselog-details {
background: var(--wikitable-bg);
border-color: var(--wikitable-border);
}
table.mw-abuselog-details th {
background: var(--wikitable-header-bg);
}
table.mw-abuselog-details th,
table.mw-abuselog-details td {
border-color: var(--wikitable-border);
}
.mw-abusefilter-log-hidden-entry {
color: var(--subtle-color);
}
body td.mw-abusefilter-history-changed {
background: var(--table-no-background);
}
div.mw-abusefilter-editor,
#mw-abusefilter-warn-preview,
#mw-abusefilter-disallow-preview {
border-color: var(--ooui-input-border);
}
.mw-destfile-warning {
border-color: var(--warningbox-border);
color: var(--text-color);
background-color: var(--warningbox-bg);
}
span.fileinput-button {
background-color: var(--ooui-normal);
border-color: var(--ooui-normal-border);
color: var(--ooui-text);
}
ul.fileupload-results li.ful-success {
background-color: var(--successbox-bg);
}
ul.fileupload-results li.ful-success a {
color: var(--link-color);
}
ul.fileupload-results li.ful-error {
background-color: var(--errorbox-bg);
}
.color-container {
display: flex;
margin: 2em auto;
width: 80%;
max-width: 60em;
}
.color-column {
flex: 1;
margin-right: 1em;
}
.color-column:last-child {
margin-right: 0;
}
.color-column h3 {
padding: 0;
}
.color-group {
color: #333;
padding: 1em 1.5em;
transition: 0.2s ease-out;
}
.color-group:hover {
transform: scale(1.03);
}
.color-group.dark {
color: #fff;
}
.color-group .variable,
.color-group .hexcode {
font-family: monospace;
font-size: 1.1em;
-webkit-user-select: all;
-moz-user-select: all;
-ms-user-select: all;
user-select: all;
margin: 0;
}
body.wgl-readermode .color-group .variable,
body.wgl-readermode .color-group .hexcode {
font-size: inherit;
}
.color-group .variable {
font-weight: bold;
}
#t-print,
#t-permalink {
display: none;
}
#filetoc {
border-radius: 2px;
background: var(--body-mid);
border-color: transparent;
margin: 0.5em auto;
text-align: center;
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
}
li.gallerybox div.thumb {
border: none;
background-color: var(--thumb-bg);
}
.smwfact {
display: none;
}
.list-header {
background-color: var(--body-mid);
color: inherit;
}
.editOptions {
color: var(--text-color);
background-color: var(--sourceeditor-background-secondary);
border-color: var(--sourceeditor-border);
}
.mw-json th,
.mw-json td {
border-color: var(--wikitable-border);
}
.mw-json td {
background: var(--wikitable-bg);
}
.mw-json th {
background: var(--wikitable-header-bg);
}
6049d6d6fca64d7a1866c43b58c27a8e05c91974
Module:Infobox/doc
828
504
1624
1591
2024-03-28T21:48:33Z
Gau Cho
5
Common classes are listed (infobox-header, infobox-subheader, infobox-image)
wikitext
text/x-wiki
{{documentation}}
{{ToC|right}}
==Creating a template step-by-step==
===Import Module:Infobox and Module:Param Parse===
<syntaxhighlight lang="lua">
local Infobox = require('Module:Infobox')
local parse = require('Module:Param Parse')
</syntaxhighlight>
===Unpack the frame arguments from the Template===
<syntaxhighlight lang="lua">
local p = {}
function p.main(frame)
local args = frame:getParent().args
...
</syntaxhighlight>
===Setup the Module config settings===
<syntaxhighlight lang="lua">
local config = {
infobox_name = 'Scenery',
}
</syntaxhighlight>
===Map your arguments to parsing functions===
{{Main|Module:Param Parse}}
Use the functions in [[Module:Param Parse]] to validate and format the data.
<syntaxhighlight lang="lua">
local params = {
{name = 'name', func = parse.has_content, smw_property = 'Name'},
{name = 'image', func = parse.image, smw_property = 'Image', smw_func = parse.image_smw, category_incomplete = 'Scenery missing Image'},
{name = 'examine', func = parse.has_content},
{name = 'episode', func = parse.episode, smw_property = 'Episode', smw_func = parse.episode_smw, category_incomplete = 'Scenery missing Episode'},
...
}
</syntaxhighlight>
===Define an Infobox object===
{{Main|Module:Infobox#new}}
<syntaxhighlight lang="lua">
local infobox = Infobox.new(config, params, args)
</syntaxhighlight>
===Create your table===
{{Main|Module:Infobox#create}}
<syntaxhighlight lang="lua">
infobox
:add_row{
{tag='th', content=Infobox.param('name'), class='infobox.subheader', colspan='2'},
}
:add_row{
{tag='td', content=Infobox.param('image'), colspan='2'},
}
:pad(2)
:add_row{
{tag='td', content='[[Examine]]'},
{tag='td', content=Infobox.param('examine')},
}
:add_row{
{tag='td', content='[[Episode]]'},
{tag='td', content=Infobox.param('episode')},
}
...
</syntaxhighlight>
===You're done!===
<syntaxhighlight lang="lua">
return infobox
end
return p
</syntaxhighlight>
==Functions==
=== Referring to params ===
Each parameter can have a different value for each version. In addition, there are 3 different representations of each value. Therefore, a parameter must be accessed via one of the 3 helper functions:
{| class="wikitable"
! helper function
! example
! explanation
|-
| Infobox.raw_param(name)
| "1000"
| Raw value as passed by the Template
|-
| Infobox.param(name)
| "1,000"
| Value formatted for display in the Infobox
|-
| Infobox.smw_param(name)
| 1000
| Value formatted to be saved as an SMW property
|}
=== Special params ===
These parameters are handled specially by the module:
{| class="wikitable"
! param
! explanation
|-
| version1, version2, version3
| Button label and SMW name for each switch version of the infobox
|-
| default_version
| The default version to display when the page is loaded
|-
| version
| If there is only a single version, you can use version to set the SMW name (default SMW name is "DEFAULT")
|}
=== Infobox.new(config, params, args) ===
Creates a new infobox. Automatically parses the arguments, creates SMW subobjects and adds categories.
<syntaxhighlight lang="lua">
local infobox = Infobox.new(config, params, args)
</syntaxhighlight>
==== config ====
There are only 2 parameters for config
<syntaxhighlight lang="lua">
local config = {
infobox_name = 'Scenery', -- mandatory unique identifier for css
max_buttons = 6, -- optional, defaults to 6, max number of switch buttons before using a dropdown list instead
}
</syntaxhighlight>
==== params ====
A list of parameters to be processed by the Infobox module
<syntaxhighlight lang="lua">
local params = {
{ name = <param>, func = <func>, ... },
...
}
</syntaxhighlight>
{| class="wikitable"
! key
! value
|-
| name
| parameter name as used in the Template
|-
| func
| A function in [[Module:Param Parse]] to validate and process the Template argument. You can also use a local function, but this is not recommended.
If func is a function, will call func(Infobox.raw_param(name)):
<syntaxhighlight lang="lua">
{name = <param>, func = <func>, ... },
</syntaxhighlight>
If func is a table, it takes the following parameters:
<syntaxhighlight lang="lua">
{name = <param>, func = { name = <func>, params = <func_params>}, ... },
</syntaxhighlight>
{| class="wikitable"
| name
| function in [[Module:Param Parse]]
|-
| params
| a list of parameters to pass the the function, in the form of constants, or Infobox.raw_param(name), Infobox.param(name), Infobox.smw_param(name)
|}
|-
| empty (optional)
| text to display in the infobox if func returns nil; defaults to "? (edit)"
|-
| category_never (optional)
| category to add if func returns nil for all versions
|-
| category_partial (optional)
| category to add if func returns nil for some versions, but a value for other versions
|-
| category_incomplete (optional)
| category to add if func returns nil for at least 1 version (i.e. category_never and category_partial combined)
|-
| category_complete (optional)
| category to add if func returns a value for all versions
|-
| smw_property (optional)
| if this string is defined, the parameter will be saved into SMW
|-
| smw_func (optional)
| function to validate and process the Template argument to save into SMW. func is used by default if smw_func is not defined
|}
==== args ====
Arguments passed via the Template
<syntaxhighlight lang="lua">
local args = frame:getParent().args
</syntaxhighlight>
=== infobox:is_param_defined(param) ===
Used to conditionally display a line in the infobox
<syntaxhighlight lang="lua">
infobox:add_row{
{tag='th', content=Infobox.param('name'), class='infobox.subheader', colspan='2'},
}
if infobox:is_param_defined(Infobox.param('owner')) > 0 then
infobox:add_row{
{tag='td', content='[[Owner]]'},
{tag='td', content=Infobox.param('owner')},
}
end
</syntaxhighlight>
{| class="wikitable"
| param
| a parameter referenced via Infobox.raw_param(name), Infobox.param(name) or Infobox.smw_param(name)
|-
| Returns
| 0 if param is never defined
1 if param is defined for a fraction of the versions
2 if param is defined for all versions
|}
=== Infobox:add_row(...) ===
Adds a row to the infobox table. Parameter should be a table of cells:
<syntaxhighlight lang="lua">
infobox:add_row{
{tag='td', content='[[Cell1]]', ...},
{tag='td', content=Infobox.param('param'), ...},
{tag='td', content='[[Cell3]]', ...},
...
addClass = 'row-class'
}
</syntaxhighlight>
Each cell should have a set of key-values, of which only the tag and content are mandatory:
{| class="wikitable"
! key
! value
|-
| tag
| 'td' or 'th'
|-
| content
| a string or Infobox.param(name), Infobox.raw_param(name), Infobox.smw_param(name)
|-
| attr (optional)
| a table of attributes to add to the cell
mw.html:attr({ arg1 = '1', ... })
|-
| css (optional)
| a table of css to add to the cell
mw.html:css({ arg1 = '1', ... })
|-
| class (optional)
| a string with a class to add, or a table of classes to add. '''infobox-header''', '''infobox-subheader''' and '''infobox-image''' are commonly used.
mw.html:addClass(...)
|-
| rowspan (optional)
| Set the cell rowspan
mw.html:attr('rowspan',arg)
|-
| rowspan (optional)
| Set the cell colspan
mw.html:attr('colspan',arg)
|-
| title (optional)
| Set the cell title
mw.html:attr('title',arg)
|}
=== Infobox:pad(colspan, class) ===
Adds a blank row of padding spanning the given number of columns. Will always add the class '''infobox-padding''', but can optionally add another class:
<syntaxhighlight lang="lua">
infobox:pad("10", class=<class>)
</syntaxhighlight>
=== Infobox:addClass(class) ===
Adds a class to the entire table
<syntaxhighlight lang="lua">
infobox:addClass(class)
</syntaxhighlight>
fc3b56f3b556936a5e088d9613e6734614d6c5f9
Module:Infobox Profession
828
800
1625
2024-03-29T01:02:12Z
Gau Cho
5
Created page with "local p = {} local Infobox = require('Module:Infobox') local parse = require('Module:Param Parse') function p.main(frame) local args = frame:getParent().args local config = { infobox_name = 'Profession', } local params = { {name = 'name', func = parse.has_content, smw_property = 'Name'}, {name = 'image', func = parse.image, smw_property = 'Image', smw_func = parse.image_smw, category_incomplete = 'Needs image'}, {name = 'release', func = parse.has_conte..."
Scribunto
text/plain
local p = {}
local Infobox = require('Module:Infobox')
local parse = require('Module:Param Parse')
function p.main(frame)
local args = frame:getParent().args
local config = {
infobox_name = 'Profession',
}
local params = {
{name = 'name', func = parse.has_content, smw_property = 'Name'},
{name = 'image', func = parse.image, smw_property = 'Image', smw_func = parse.image_smw, category_incomplete = 'Needs image'},
{name = 'release', func = parse.has_content},
{name = 'premium', func = parse.has_content, smw_property = 'Premium', smw_func = parse.premium_smw, category_incomplete = 'Needs premium status'},
}
local infobox = Infobox.new(config, params, args)
infobox
:add_row{
{tag='th', content=Infobox.param('name'), class='infobox-header', colspan='20'},
}
:add_row{
{tag='td', content=Infobox.param('image'), class='infobox-image', colspan='20'},
}
:add_row{
{tag='th', content='Release', colspan="6"},
{tag='td', content=Infobox.param('release'), colspan="14"},
}
:add_row{
{tag='th', content='[[Premium Pass|Premium]]', colspan="6"},
{tag='td', content=Infobox.param('premium'), colspan="14"},
}
:pad(20)
return infobox
end
return p
62667a9277253863a5fca5fd4dd2ebd42a1a2191
1629
1625
2024-03-29T01:16:13Z
Gau Cho
5
Scribunto
text/plain
local p = {}
local Infobox = require('Module:Infobox')
local parse = require('Module:Param Parse')
function p.main(frame)
local args = frame:getParent().args
local config = {
infobox_name = 'Profession',
}
local params = {
{name = 'name', func = parse.has_content, smw_property = 'Name'},
{name = 'image', func = parse.image, smw_property = 'Image', smw_func = parse.image_smw, empty = '[[Special:Upload|Please upload an image!]]', category_incomplete = 'Needs image'},
{name = 'release', func = parse.has_content},
{name = 'premium', func = parse.yes_no, smw_property = 'Premium', smw_func = parse.yes_no, category_incomplete = 'Needs premium status'},
}
local infobox = Infobox.new(config, params, args)
infobox
:add_row{
{tag='th', content=Infobox.param('name'), class='infobox-header', colspan='20'},
}
:add_row{
{tag='td', content=Infobox.param('image'), class='infobox-image', colspan='20'},
}
:add_row{
{tag='th', content='Release', colspan="6"},
{tag='td', content=Infobox.param('release'), colspan="14"},
}
:add_row{
{tag='th', content='[[Premium Pass|Premium]]', colspan="6"},
{tag='td', content=Infobox.param('premium'), colspan="14"},
}
:pad(20)
return infobox
end
return p
3b70f4e3aad9b7a159ce719627788f9442f4f47f
Module:Infobox Profession/doc
828
801
1626
2024-03-29T01:03:06Z
Gau Cho
5
Created page with "{{No documentation}}"
wikitext
text/x-wiki
{{No documentation}}
ad36a615c98d03e22b03ecaa7b9d7d87b5d7b517
Module:Param Parse/doc
828
781
1628
1515
2024-03-29T01:14:37Z
Gau Cho
5
yes_no
wikitext
text/x-wiki
{{documentation}}
These functions are used to validate and format information passed into an Infobox. See [[Module:Infobox]] for details and instructions on creating an Infobox. If the information is missing or not valid, the functions here should return nil.
Here is a summary of all the functions:
{| class="wikitable"
! function name
! explanation
|-
| has_content(arg)
| Returns arg if any non-whitespace character is found in the string.
|-
| image(img)
| Returns img if any non-whitespace character is found in the string.
|-
| image_smw(img)
| Searches for and returns "File:___.png"
|-
| number(num)
| Removes any commas and parses the string as a number
|-
| episode(episode)
| Returns a plink of the episode, e.g. [[File:Hopeport episode icon.png|18px]] [[Hopeport]]
|-
| episode_smw(episode)
| Returns the name of the episode if valid
|-
| yes_no(text)
| Only accepts "Yes", "No" and "N/A"
|-
| yes_no_smw(text)
| Maps "Yes", "No" to true and false respectively
|}
ba60fb207d2699144ba6d0a1040b6670ecf68668
Template:Infobox Profession
10
661
1633
1457
2024-03-29T01:38:37Z
Gau Cho
5
wikitext
text/x-wiki
{{#invoke:Infobox Profession|main}}{{Mainonly|[[Category:Professions]]}}<noinclude>{{/doc}}</noinclude>
69291fd2670a44aa3ffcf3e0607057c55f6b2da0
Template:Property
10
802
1635
2024-03-29T01:53:22Z
Gau Cho
5
Created page with "This page tracks and controls the '''{{PAGENAME}}''' property. This property accepts and displays values that are [[has type::{{{type|page}}}]]s. {{{notes|}}} ---- [{{fullurl:Special:Ask|q={{urlencode:[[{{PAGENAME}}::+]]}}&limit=500&po={{urlencode:?{{PAGENAME}}}} }} '''Table of all articles using this property''']<noinclude>{{/doc}}[[Category:Transclusion templates]]</noinclude>"
wikitext
text/x-wiki
This page tracks and controls the '''{{PAGENAME}}''' property. This property accepts and displays values that are [[has type::{{{type|page}}}]]s. {{{notes|}}}
----
[{{fullurl:Special:Ask|q={{urlencode:[[{{PAGENAME}}::+]]}}&limit=500&po={{urlencode:?{{PAGENAME}}}} }} '''Table of all articles using this property''']<noinclude>{{/doc}}[[Category:Transclusion templates]]</noinclude>
a5ecf2ef76de0f8b63e8b089734154cb288754cc
Template:Property/doc
10
803
1636
2024-03-29T01:53:34Z
Gau Cho
5
Created page with "{{No documentation}}"
wikitext
text/x-wiki
{{No documentation}}
ad36a615c98d03e22b03ecaa7b9d7d87b5d7b517
Property:Image
302
804
1637
2024-03-29T01:53:56Z
Gau Cho
5
Created page with "{{property|type=page}}"
wikitext
text/x-wiki
{{property|type=page}}
dbde6d941465ec6119d8703d36911f52c1872ec8
Property:Name
302
805
1638
2024-03-29T01:54:24Z
Gau Cho
5
Created page with "{{Property|type=text}}"
wikitext
text/x-wiki
{{Property|type=text}}
bb3fcbac32fa65eb44caa27878d9413b33012db5
User:Merds/common.css
2
784
1639
1563
2024-03-31T19:15:58Z
Merds
25
css
text/css
/*<syntaxhighlight lang="css">*/
/*@import url("/w/User:Merds/CSS/Infobox.css?action=raw&ctype=text/css");*/
@import url("/w/User:Merds/CSS/Theme.css");
/*</syntaxhighlight>*/
d2418cf909bba54d96607e7897b4584bdd76e026
1641
1639
2024-03-31T19:23:05Z
Merds
25
css
text/css
/*<syntaxhighlight lang="css">*/
/*@import url("/w/User:Merds/CSS/Infobox.css?action=raw&ctype=text/css");*/
@import url("/w/User:Merds/CSS/Theme.css?action=raw&ctype=text/css");
/*</syntaxhighlight>*/
9ccc5a78d7fec5feec20dcabe535231c55b31e9e
User:Merds/CSS/Theme.css
2
806
1640
2024-03-31T19:18:22Z
Merds
25
Created page with "/* this needs a background pic!!! */ :root { --body-main: hsl(310deg 31% 84%); --body-light: hsl(310deg 32% 78%); --body-mid: hsl(310deg 38% 70%); --body-dark: hsl(310deg 28% 62%); --body-border: hsl(310deg 15% 50%); --body-background-color: hsl(310deg 32% 64%); --button-background: hsl(310 18% 32% / 1); --button-color: #fff; --button-border: hsl(310 33% 4% / 1); --button-dark: hsl(310deg 33% 7%); --button-light: hsl(310deg 33..."
css
text/css
/* this needs a background pic!!! */
:root {
--body-main: hsl(310deg 31% 84%);
--body-light: hsl(310deg 32% 78%);
--body-mid: hsl(310deg 38% 70%);
--body-dark: hsl(310deg 28% 62%);
--body-border: hsl(310deg 15% 50%);
--body-background-color: hsl(310deg 32% 64%);
--button-background: hsl(310 18% 32% / 1);
--button-color: #fff;
--button-border: hsl(310 33% 4% / 1);
--button-dark: hsl(310deg 33% 7%);
--button-light: hsl(310deg 33% 17%);
--sidebar: hsl(310deg 41% 68%);
--sidebar-text-color: hsl(0deg 0% 27%);
--sidebar-link-color: hsl(310deg 48% 18%);
--search-box: hsl(310deg 22% 92%);
--link-color: hsl(310deg 44% 40%);
--redlink-color: hsl(0deg 100% 36%);
--text-color: hsl(310deg 100% 4%);
--byline-color: hsl(310deg 6% 38%);
--admin-blue: #332e75;
--bearcat-green: #13592e;
--awb-purple: #933b96;
--rsw-blue: #438ab6;
--osrsw-brown: #605443;
--mw-code-background-color: hsl(310, 33%, 80%);
--personal-links-bg: hsl(310deg 27% 78%);
--ooui-normal:hsl(310, 32%, 75%);
--ooui-normal--hover:hsl(310, 31%, 81%);
--ooui-normal-border:hsl(310, 27%, 61%);
--ooui-progressive:hsl(310, 17%, 32%);
--ooui-progressive--hover:hsl(310, 17%, 42%);
--ooui-input-border:hsl(310, 27%, 61%);
--ooui-input-border--hover:hsl(310, 27%, 42%);
--ooui-disabled:hsl(310, 11%, 79%);
--ooui-disabled-border:hsl(310, 15%, 71%);
--tile-border-color: hsl(310 31% 70% / 1);
--tile-background-color: hsl(310 54% 95% / 1);
--tile-link-button-color: hsl(310 57% 91% / 1);
--tile-link-button-highlight-color: hsl(310 42% 78% / 1);
--tile-dark-color: #fff;
--tile-dark-bg: hsl(310 11% 41% / 1);
--tile-dark-link-color: hsl(0deg 0% 80%);
--tile-dark-byline-color: hsl(310 0% 100% / 0.7);
--tile-dark-header-color: #fff;
--questdetails-header-background: hsl(310deg 28% 74%);
--questdetails-header-background-alt: hsl(310deg 32% 72%);
--transcript-background: hsl(310deg 32% 78%);
--transcript-border-color: hsl(310deg 33% 56%);
--transcript-border-hover-color: hsl(310deg 65% 32%);
--echo-icon-moon-bg-image: url("data:image/svg+xml,%3C%3Fxml version='1.0' encoding='UTF-8'%3F%3E%3Csvg height='21' viewBox='0 0 21 21' width='21' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='m8.85464918.37900488c-1.91149353 1.51069427-3.13816124 3.84973402-3.13816124 6.47527736 0 4.55564936 3.69308349 8.24873286 8.24873286 8.24873286 2.5815709 0 4.8861545-1.1859235 6.3986798-3.0426994-.8206378 4.7389755-4.9523867 8.343122-9.9259291 8.343122-5.56375572 0-10.07407088-4.5103151-10.07407088-10.0740709 0-5.02506013 3.67919933-9.19079725 8.49074856-9.95036192z' fill='%235d4159' fill-rule='evenodd'/%3E%3C/svg%3E");
--echo-icon-person-bg-image: url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 width=%2212%22 height=%2213.836%22 viewBox=%220 0 12 13.836%22%3E %3Cpath fill='%235D5141' d=%22M1.938%2C6.656c-1.32%2C1.485-1.47%2C3.15-0.97%2C4.25c0.323%2C0.707%2C0.78%2C1.127%2C1.313%2C1.375 c0.496%2C0.229%2C1.074%2C0.273%2C1.658%2C0.282c0.023%2C0%2C0.04%2C0.03%2C0.062%2C0.03h4.187c0.61%2C0%2C1.225-0.125%2C1.75-0.405 c0.527-0.28%2C0.961-0.718%2C1.188-1.376c0.335-0.964%2C0.175-2.529-1.094-4.03C9.094%2C7.954%2C7.68%2C8.719%2C6.065%2C8.719 c-1.677%2C0-3.182-0.812-4.125-2.063H1.938z%22/%3E %3Cpath fill='%235d4159' d=%22M6.063%2C0c-1.89%2C0-3.595%2C1.674-3.594%2C3.563C2.467%2C5.45%2C4.173%2C7.155%2C6.06%2C7.155 c1.89%2C0%2C3.564-1.705%2C3.563-3.593C9.625%2C1.673%2C7.95%2C0%2C6.063%2C0L6.063%2C0z%22/%3E %3C/svg%3E");
--watch-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16'%3E%3Cpath fill='transparent' stroke='%23933984' stroke-width='.8' d='m8.1 1.1 2.2 4.5 4.8.7-3.5 3.4.9 4.8L8 12.2l-4.3 2.3.8-4.8L1 6.3l4.8-.7z'/%3E%3C/svg%3E%0A");
--unwatch-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16'%3E%3Cpath fill='%23933984' stroke='%23933984' stroke-width='.8' d='m8.1 1.1 2.2 4.5 4.8.7-3.5 3.4.9 4.8L8 12.2l-4.3 2.3.8-4.8L1 6.3l4.8-.7z'/%3E%3C/svg%3E%0A");
--external-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath fill='%23933984' d='M6 1h5v5L8.86 3.85 4.7 8 4 7.3l4.15-4.16L6 1Z M2 3h2v1H2v6h6V8h1v2a1 1 0 0 1-1 1H2a1 1 0 0 1-1-1V4a1 1 0 0 1 1-1Z'/%3E%3C/svg%3E");
}
body {
background-image: none;
}
21b3e4d4a6a5bb7e61d350a2f5aa21037215f3b1
1642
1640
2024-03-31T19:23:26Z
Merds
25
css
text/css
/* this needs a background pic!!! */
:root {
--body-main: hsl(310deg 31% 84%);
--body-light: hsl(310deg 32% 78%);
--body-mid: hsl(310deg 38% 70%);
--body-dark: hsl(310deg 28% 62%);
--body-border: hsl(310deg 15% 50%);
--body-background-color: hsl(310deg 32% 64%);
--button-background: hsl(310 18% 32% / 1);
--button-color: #fff;
--button-border: hsl(310 33% 4% / 1);
--button-dark: hsl(310deg 33% 7%);
--button-light: hsl(310deg 33% 17%);
--sidebar: hsl(310deg 41% 68%);
--sidebar-text-color: hsl(0deg 0% 27%);
--sidebar-link-color: hsl(310deg 48% 18%);
--search-box: hsl(310deg 22% 92%);
--link-color: hsl(310deg 44% 40%);
--redlink-color: hsl(0deg 100% 36%);
--text-color: hsl(310deg 100% 4%);
--byline-color: hsl(310deg 6% 38%);
--admin-blue: #332e75;
--bearcat-green: #13592e;
--awb-purple: #933b96;
--rsw-blue: #438ab6;
--osrsw-brown: #605443;
--mw-code-background-color: hsl(310, 33%, 80%);
--personal-links-bg: hsl(310deg 27% 78%);
--ooui-normal:hsl(310, 32%, 75%);
--ooui-normal--hover:hsl(310, 31%, 81%);
--ooui-normal-border:hsl(310, 27%, 61%);
--ooui-progressive:hsl(310, 17%, 32%);
--ooui-progressive--hover:hsl(310, 17%, 42%);
--ooui-input-border:hsl(310, 27%, 61%);
--ooui-input-border--hover:hsl(310, 27%, 42%);
--ooui-disabled:hsl(310, 11%, 79%);
--ooui-disabled-border:hsl(310, 15%, 71%);
--tile-border-color: hsl(310 31% 70% / 1);
--tile-background-color: hsl(310 54% 95% / 1);
--tile-link-button-color: hsl(310 57% 91% / 1);
--tile-link-button-highlight-color: hsl(310 42% 78% / 1);
--tile-dark-color: #fff;
--tile-dark-bg: hsl(310 11% 41% / 1);
--tile-dark-link-color: hsl(0deg 0% 80%);
--tile-dark-byline-color: hsl(310 0% 100% / 0.7);
--tile-dark-header-color: #fff;
--questdetails-header-background: hsl(310deg 28% 74%);
--questdetails-header-background-alt: hsl(310deg 32% 72%);
--transcript-background: hsl(310deg 32% 78%);
--transcript-border-color: hsl(310deg 33% 56%);
--transcript-border-hover-color: hsl(310deg 65% 32%);
--echo-icon-moon-bg-image: url("data:image/svg+xml,%3C%3Fxml version='1.0' encoding='UTF-8'%3F%3E%3Csvg height='21' viewBox='0 0 21 21' width='21' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='m8.85464918.37900488c-1.91149353 1.51069427-3.13816124 3.84973402-3.13816124 6.47527736 0 4.55564936 3.69308349 8.24873286 8.24873286 8.24873286 2.5815709 0 4.8861545-1.1859235 6.3986798-3.0426994-.8206378 4.7389755-4.9523867 8.343122-9.9259291 8.343122-5.56375572 0-10.07407088-4.5103151-10.07407088-10.0740709 0-5.02506013 3.67919933-9.19079725 8.49074856-9.95036192z' fill='%235d4159' fill-rule='evenodd'/%3E%3C/svg%3E");
--echo-icon-person-bg-image: url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 width=%2212%22 height=%2213.836%22 viewBox=%220 0 12 13.836%22%3E %3Cpath fill='%235D5141' d=%22M1.938%2C6.656c-1.32%2C1.485-1.47%2C3.15-0.97%2C4.25c0.323%2C0.707%2C0.78%2C1.127%2C1.313%2C1.375 c0.496%2C0.229%2C1.074%2C0.273%2C1.658%2C0.282c0.023%2C0%2C0.04%2C0.03%2C0.062%2C0.03h4.187c0.61%2C0%2C1.225-0.125%2C1.75-0.405 c0.527-0.28%2C0.961-0.718%2C1.188-1.376c0.335-0.964%2C0.175-2.529-1.094-4.03C9.094%2C7.954%2C7.68%2C8.719%2C6.065%2C8.719 c-1.677%2C0-3.182-0.812-4.125-2.063H1.938z%22/%3E %3Cpath fill='%235d4159' d=%22M6.063%2C0c-1.89%2C0-3.595%2C1.674-3.594%2C3.563C2.467%2C5.45%2C4.173%2C7.155%2C6.06%2C7.155 c1.89%2C0%2C3.564-1.705%2C3.563-3.593C9.625%2C1.673%2C7.95%2C0%2C6.063%2C0L6.063%2C0z%22/%3E %3C/svg%3E");
--watch-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16'%3E%3Cpath fill='transparent' stroke='%23933984' stroke-width='.8' d='m8.1 1.1 2.2 4.5 4.8.7-3.5 3.4.9 4.8L8 12.2l-4.3 2.3.8-4.8L1 6.3l4.8-.7z'/%3E%3C/svg%3E%0A");
--unwatch-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16'%3E%3Cpath fill='%23933984' stroke='%23933984' stroke-width='.8' d='m8.1 1.1 2.2 4.5 4.8.7-3.5 3.4.9 4.8L8 12.2l-4.3 2.3.8-4.8L1 6.3l4.8-.7z'/%3E%3C/svg%3E%0A");
--external-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath fill='%23933984' d='M6 1h5v5L8.86 3.85 4.7 8 4 7.3l4.15-4.16L6 1Z M2 3h2v1H2v6h6V8h1v2a1 1 0 0 1-1 1H2a1 1 0 0 1-1-1V4a1 1 0 0 1 1-1Z'/%3E%3C/svg%3E");
}
1cff9a0f901957e635a62ece2077e85924a676f0
1643
1642
2024-03-31T19:26:35Z
Merds
25
css
text/css
/* this needs a background pic!!! */
:root {
--body-main: hsl(40deg 31% 84%);
--body-light: hsl(40deg 32% 78%);
--body-mid: hsl(40deg 38% 70%);
--body-dark: hsl(40deg 28% 62%);
--body-border: hsl(40deg 15% 50%);
--body-background-color: hsl(40deg 32% 64%);
--button-background: hsl(310 18% 32% / 1);
--button-color: #fff;
--button-border: hsl(310 33% 4% / 1);
--button-dark: hsl(40deg 33% 7%);
--button-light: hsl(40deg 33% 17%);
--sidebar: hsl(40deg 41% 68%);
--sidebar-text-color: hsl(0deg 0% 27%);
--sidebar-link-color: hsl(40deg 48% 18%);
--search-box: hsl(40deg 22% 92%);
--link-color: hsl(40deg 44% 40%);
--redlink-color: hsl(0deg 100% 36%);
--text-color: hsl(40deg 100% 4%);
--byline-color: hsl(40deg 6% 38%);
--admin-blue: #332e75;
--bearcat-green: #13592e;
--awb-purple: #933b96;
--rsw-blue: #438ab6;
--osrsw-brown: #605443;
--mw-code-background-color: hsl(310, 33%, 80%);
--personal-links-bg: hsl(40deg 27% 78%);
--ooui-normal:hsl(310, 32%, 75%);
--ooui-normal--hover:hsl(310, 31%, 81%);
--ooui-normal-border:hsl(310, 27%, 61%);
--ooui-progressive:hsl(310, 17%, 32%);
--ooui-progressive--hover:hsl(310, 17%, 42%);
--ooui-input-border:hsl(310, 27%, 61%);
--ooui-input-border--hover:hsl(310, 27%, 42%);
--ooui-disabled:hsl(310, 11%, 79%);
--ooui-disabled-border:hsl(310, 15%, 71%);
--tile-border-color: hsl(310 31% 70% / 1);
--tile-background-color: hsl(310 54% 95% / 1);
--tile-link-button-color: hsl(310 57% 91% / 1);
--tile-link-button-highlight-color: hsl(310 42% 78% / 1);
--tile-dark-color: #fff;
--tile-dark-bg: hsl(310 11% 41% / 1);
--tile-dark-link-color: hsl(0deg 0% 80%);
--tile-dark-byline-color: hsl(310 0% 100% / 0.7);
--tile-dark-header-color: #fff;
--questdetails-header-background: hsl(40deg 28% 74%);
--questdetails-header-background-alt: hsl(40deg 32% 72%);
--transcript-background: hsl(40deg 32% 78%);
--transcript-border-color: hsl(40deg 33% 56%);
--transcript-border-hover-color: hsl(40deg 65% 32%);
--echo-icon-moon-bg-image: url("data:image/svg+xml,%3C%3Fxml version='1.0' encoding='UTF-8'%3F%3E%3Csvg height='21' viewBox='0 0 21 21' width='21' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='m8.85464918.37900488c-1.91149353 1.51069427-3.13816124 3.84973402-3.13816124 6.47527736 0 4.55564936 3.69308349 8.24873286 8.24873286 8.24873286 2.5815709 0 4.8861545-1.1859235 6.3986798-3.0426994-.8206378 4.7389755-4.9523867 8.343122-9.9259291 8.343122-5.56375572 0-10.07407088-4.5103151-10.07407088-10.0740709 0-5.02506013 3.67919933-9.19079725 8.49074856-9.95036192z' fill='%235d4159' fill-rule='evenodd'/%3E%3C/svg%3E");
--echo-icon-person-bg-image: url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 width=%2212%22 height=%2213.836%22 viewBox=%220 0 12 13.836%22%3E %3Cpath fill='%235D5141' d=%22M1.938%2C6.656c-1.32%2C1.485-1.47%2C3.15-0.97%2C4.25c0.323%2C0.707%2C0.78%2C1.127%2C1.313%2C1.375 c0.496%2C0.229%2C1.074%2C0.273%2C1.658%2C0.282c0.023%2C0%2C0.04%2C0.03%2C0.062%2C0.03h4.187c0.61%2C0%2C1.225-0.125%2C1.75-0.405 c0.527-0.28%2C0.961-0.718%2C1.188-1.376c0.335-0.964%2C0.175-2.529-1.094-4.03C9.094%2C7.954%2C7.68%2C8.719%2C6.065%2C8.719 c-1.677%2C0-3.182-0.812-4.125-2.063H1.938z%22/%3E %3Cpath fill='%235d4159' d=%22M6.063%2C0c-1.89%2C0-3.595%2C1.674-3.594%2C3.563C2.467%2C5.45%2C4.173%2C7.155%2C6.06%2C7.155 c1.89%2C0%2C3.564-1.705%2C3.563-3.593C9.625%2C1.673%2C7.95%2C0%2C6.063%2C0L6.063%2C0z%22/%3E %3C/svg%3E");
--watch-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16'%3E%3Cpath fill='transparent' stroke='%23933984' stroke-width='.8' d='m8.1 1.1 2.2 4.5 4.8.7-3.5 3.4.9 4.8L8 12.2l-4.3 2.3.8-4.8L1 6.3l4.8-.7z'/%3E%3C/svg%3E%0A");
--unwatch-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16'%3E%3Cpath fill='%23933984' stroke='%23933984' stroke-width='.8' d='m8.1 1.1 2.2 4.5 4.8.7-3.5 3.4.9 4.8L8 12.2l-4.3 2.3.8-4.8L1 6.3l4.8-.7z'/%3E%3C/svg%3E%0A");
--external-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath fill='%23933984' d='M6 1h5v5L8.86 3.85 4.7 8 4 7.3l4.15-4.16L6 1Z M2 3h2v1H2v6h6V8h1v2a1 1 0 0 1-1 1H2a1 1 0 0 1-1-1V4a1 1 0 0 1 1-1Z'/%3E%3C/svg%3E");
}
9354117868a6cb24306146d6f36c164466a1b595
1644
1643
2024-03-31T19:28:16Z
Merds
25
css
text/css
/* this needs a background pic!!! */
:root {
--body-main: hsl(40deg 31% 84%);
--body-light: hsl(40deg 32% 78%);
--body-mid: hsl(40deg 38% 70%);
--body-dark: hsl(40deg 28% 62%);
--body-border: hsl(40deg 15% 50%);
--body-background-color: hsl(40deg 32% 64%);
--button-background: hsl(40 18% 32% / 1);
--button-color: #fff;
--button-border: hsl(40 33% 4% / 1);
--button-dark: hsl(40deg 33% 7%);
--button-light: hsl(40deg 33% 17%);
--sidebar: hsl(40deg 41% 68%);
--sidebar-text-color: hsl(0deg 0% 27%);
--sidebar-link-color: hsl(40deg 48% 18%);
--search-box: hsl(40deg 22% 92%);
--link-color: hsl(40deg 44% 40%);
--redlink-color: hsl(0deg 100% 36%);
--text-color: hsl(40deg 100% 4%);
--byline-color: hsl(40deg 6% 38%);
--admin-blue: #332e75;
--bearcat-green: #13592e;
--awb-purple: #933b96;
--rsw-blue: #438ab6;
--osrsw-brown: #605443;
--mw-code-background-color: hsl(310, 33%, 80%);
--personal-links-bg: hsl(40deg 27% 78%);
--ooui-normal:hsl(310, 32%, 75%);
--ooui-normal--hover:hsl(310, 31%, 81%);
--ooui-normal-border:hsl(310, 27%, 61%);
--ooui-progressive:hsl(310, 17%, 32%);
--ooui-progressive--hover:hsl(310, 17%, 42%);
--ooui-input-border:hsl(310, 27%, 61%);
--ooui-input-border--hover:hsl(310, 27%, 42%);
--ooui-disabled:hsl(310, 11%, 79%);
--ooui-disabled-border:hsl(310, 15%, 71%);
--tile-border-color: hsl(310 31% 70% / 1);
--tile-background-color: hsl(310 54% 95% / 1);
--tile-link-button-color: hsl(310 57% 91% / 1);
--tile-link-button-highlight-color: hsl(310 42% 78% / 1);
--tile-dark-color: #fff;
--tile-dark-bg: hsl(310 11% 41% / 1);
--tile-dark-link-color: hsl(0deg 0% 80%);
--tile-dark-byline-color: hsl(310 0% 100% / 0.7);
--tile-dark-header-color: #fff;
--questdetails-header-background: hsl(40deg 28% 74%);
--questdetails-header-background-alt: hsl(40deg 32% 72%);
--transcript-background: hsl(40deg 32% 78%);
--transcript-border-color: hsl(40deg 33% 56%);
--transcript-border-hover-color: hsl(40deg 65% 32%);
--echo-icon-moon-bg-image: url("data:image/svg+xml,%3C%3Fxml version='1.0' encoding='UTF-8'%3F%3E%3Csvg height='21' viewBox='0 0 21 21' width='21' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='m8.85464918.37900488c-1.91149353 1.51069427-3.13816124 3.84973402-3.13816124 6.47527736 0 4.55564936 3.69308349 8.24873286 8.24873286 8.24873286 2.5815709 0 4.8861545-1.1859235 6.3986798-3.0426994-.8206378 4.7389755-4.9523867 8.343122-9.9259291 8.343122-5.56375572 0-10.07407088-4.5103151-10.07407088-10.0740709 0-5.02506013 3.67919933-9.19079725 8.49074856-9.95036192z' fill='%235d4159' fill-rule='evenodd'/%3E%3C/svg%3E");
--echo-icon-person-bg-image: url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 width=%2212%22 height=%2213.836%22 viewBox=%220 0 12 13.836%22%3E %3Cpath fill='%235D5141' d=%22M1.938%2C6.656c-1.32%2C1.485-1.47%2C3.15-0.97%2C4.25c0.323%2C0.707%2C0.78%2C1.127%2C1.313%2C1.375 c0.496%2C0.229%2C1.074%2C0.273%2C1.658%2C0.282c0.023%2C0%2C0.04%2C0.03%2C0.062%2C0.03h4.187c0.61%2C0%2C1.225-0.125%2C1.75-0.405 c0.527-0.28%2C0.961-0.718%2C1.188-1.376c0.335-0.964%2C0.175-2.529-1.094-4.03C9.094%2C7.954%2C7.68%2C8.719%2C6.065%2C8.719 c-1.677%2C0-3.182-0.812-4.125-2.063H1.938z%22/%3E %3Cpath fill='%235d4159' d=%22M6.063%2C0c-1.89%2C0-3.595%2C1.674-3.594%2C3.563C2.467%2C5.45%2C4.173%2C7.155%2C6.06%2C7.155 c1.89%2C0%2C3.564-1.705%2C3.563-3.593C9.625%2C1.673%2C7.95%2C0%2C6.063%2C0L6.063%2C0z%22/%3E %3C/svg%3E");
--watch-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16'%3E%3Cpath fill='transparent' stroke='%23933984' stroke-width='.8' d='m8.1 1.1 2.2 4.5 4.8.7-3.5 3.4.9 4.8L8 12.2l-4.3 2.3.8-4.8L1 6.3l4.8-.7z'/%3E%3C/svg%3E%0A");
--unwatch-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16'%3E%3Cpath fill='%23933984' stroke='%23933984' stroke-width='.8' d='m8.1 1.1 2.2 4.5 4.8.7-3.5 3.4.9 4.8L8 12.2l-4.3 2.3.8-4.8L1 6.3l4.8-.7z'/%3E%3C/svg%3E%0A");
--external-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath fill='%23933984' d='M6 1h5v5L8.86 3.85 4.7 8 4 7.3l4.15-4.16L6 1Z M2 3h2v1H2v6h6V8h1v2a1 1 0 0 1-1 1H2a1 1 0 0 1-1-1V4a1 1 0 0 1 1-1Z'/%3E%3C/svg%3E");
}
707d0465e655190355c2239b4475772f7d9a354d
1645
1644
2024-03-31T19:29:21Z
Merds
25
css
text/css
/* this needs a background pic!!! */
:root {
--body-main: hsl(40deg 31% 84%);
--body-light: hsl(40deg 32% 78%);
--body-mid: hsl(40deg 38% 70%);
--body-dark: hsl(40deg 28% 62%);
--body-border: hsl(40deg 15% 50%);
--body-background-color: hsl(40deg 32% 64%);
--button-background: hsl(40 18% 32% / 1);
--button-color: #fff;
--button-border: hsl(40 33% 4% / 1);
--button-dark: hsl(40deg 33% 7%);
--button-light: hsl(40deg 33% 17%);
--sidebar: hsl(40deg 41% 68%);
--sidebar-text-color: hsl(0deg 0% 27%);
--sidebar-link-color: hsl(40deg 48% 18%);
--search-box: hsl(40deg 22% 92%);
--link-color: hsl(40deg 44% 40%);
--redlink-color: hsl(0deg 100% 36%);
--text-color: hsl(40deg 100% 4%);
--byline-color: hsl(40deg 6% 38%);
--admin-blue: #332e75;
--bearcat-green: #13592e;
--awb-purple: #933b96;
--rsw-blue: #438ab6;
--osrsw-brown: #605443;
--mw-code-background-color: hsl(40, 33%, 80%);
--personal-links-bg: hsl(40deg 27% 78%);
--ooui-normal:hsl(40, 32%, 75%);
--ooui-normal--hover:hsl(40, 31%, 81%);
--ooui-normal-border:hsl(40, 27%, 61%);
--ooui-progressive:hsl(40, 17%, 32%);
--ooui-progressive--hover:hsl(40, 17%, 42%);
--ooui-input-border:hsl(40, 27%, 61%);
--ooui-input-border--hover:hsl(40, 27%, 42%);
--ooui-disabled:hsl(40, 11%, 79%);
--ooui-disabled-border:hsl(40, 15%, 71%);
--tile-border-color: hsl(40 31% 70% / 1);
--tile-background-color: hsl(40 54% 95% / 1);
--tile-link-button-color: hsl(40 57% 91% / 1);
--tile-link-button-highlight-color: hsl(40 42% 78% / 1);
--tile-dark-color: #fff;
--tile-dark-bg: hsl(40 11% 41% / 1);
--tile-dark-link-color: hsl(0deg 0% 80%);
--tile-dark-byline-color: hsl(40 0% 100% / 0.7);
--tile-dark-header-color: #fff;
--questdetails-header-background: hsl(40deg 28% 74%);
--questdetails-header-background-alt: hsl(40deg 32% 72%);
--transcript-background: hsl(40deg 32% 78%);
--transcript-border-color: hsl(40deg 33% 56%);
--transcript-border-hover-color: hsl(40deg 65% 32%);
--echo-icon-moon-bg-image: url("data:image/svg+xml,%3C%3Fxml version='1.0' encoding='UTF-8'%3F%3E%3Csvg height='21' viewBox='0 0 21 21' width='21' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='m8.85464918.37900488c-1.91149353 1.51069427-3.13816124 3.84973402-3.13816124 6.47527736 0 4.55564936 3.69308349 8.24873286 8.24873286 8.24873286 2.5815709 0 4.8861545-1.1859235 6.3986798-3.0426994-.8206378 4.7389755-4.9523867 8.343122-9.9259291 8.343122-5.56375572 0-10.07407088-4.5103151-10.07407088-10.0740709 0-5.02506013 3.67919933-9.19079725 8.49074856-9.95036192z' fill='%235d4159' fill-rule='evenodd'/%3E%3C/svg%3E");
--echo-icon-person-bg-image: url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 width=%2212%22 height=%2213.836%22 viewBox=%220 0 12 13.836%22%3E %3Cpath fill='%235D5141' d=%22M1.938%2C6.656c-1.32%2C1.485-1.47%2C3.15-0.97%2C4.25c0.323%2C0.707%2C0.78%2C1.127%2C1.313%2C1.375 c0.496%2C0.229%2C1.074%2C0.273%2C1.658%2C0.282c0.023%2C0%2C0.04%2C0.03%2C0.062%2C0.03h4.187c0.61%2C0%2C1.225-0.125%2C1.75-0.405 c0.527-0.28%2C0.961-0.718%2C1.188-1.376c0.335-0.964%2C0.175-2.529-1.094-4.03C9.094%2C7.954%2C7.68%2C8.719%2C6.065%2C8.719 c-1.677%2C0-3.182-0.812-4.125-2.063H1.938z%22/%3E %3Cpath fill='%235d4159' d=%22M6.063%2C0c-1.89%2C0-3.595%2C1.674-3.594%2C3.563C2.467%2C5.45%2C4.173%2C7.155%2C6.06%2C7.155 c1.89%2C0%2C3.564-1.705%2C3.563-3.593C9.625%2C1.673%2C7.95%2C0%2C6.063%2C0L6.063%2C0z%22/%3E %3C/svg%3E");
--watch-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16'%3E%3Cpath fill='transparent' stroke='%23933984' stroke-width='.8' d='m8.1 1.1 2.2 4.5 4.8.7-3.5 3.4.9 4.8L8 12.2l-4.3 2.3.8-4.8L1 6.3l4.8-.7z'/%3E%3C/svg%3E%0A");
--unwatch-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16'%3E%3Cpath fill='%23933984' stroke='%23933984' stroke-width='.8' d='m8.1 1.1 2.2 4.5 4.8.7-3.5 3.4.9 4.8L8 12.2l-4.3 2.3.8-4.8L1 6.3l4.8-.7z'/%3E%3C/svg%3E%0A");
--external-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath fill='%23933984' d='M6 1h5v5L8.86 3.85 4.7 8 4 7.3l4.15-4.16L6 1Z M2 3h2v1H2v6h6V8h1v2a1 1 0 0 1-1 1H2a1 1 0 0 1-1-1V4a1 1 0 0 1 1-1Z'/%3E%3C/svg%3E");
}
02817eaf888ed8e4fcb17193288c2beb2b1e870f
1646
1645
2024-03-31T19:35:35Z
Merds
25
css
text/css
/* this needs a background pic!!! */
:root {
--body-main: hsl(36deg 31% 84%);
--body-light: hsl(36deg 32% 78%);
--body-mid: hsl(36deg 38% 70%);
--body-dark: hsl(36deg 28% 62%);
--body-border: hsl(36deg 15% 50%);
--body-background-color: hsl(36deg 32% 64%);
--button-background: hsl(36 18% 32% / 1);
--button-color: #fff;
--button-border: hsl(36 33% 4% / 1);
--button-dark: hsl(36deg 33% 7%);
--button-light: hsl(36deg 33% 17%);
--sidebar: hsl(36deg 41% 68%);
--sidebar-text-color: hsl(0deg 0% 27%);
--sidebar-link-color: hsl(36deg 48% 18%);
--search-box: hsl(36deg 22% 92%);
--link-color: hsl(36deg 44% 40%);
--redlink-color: hsl(0deg 100% 36%);
--text-color: hsl(36deg 100% 4%);
--byline-color: hsl(36deg 6% 38%);
--admin-blue: #332e75;
--bearcat-green: #13592e;
--awb-purple: #933b96;
--rsw-blue: #438ab6;
--osrsw-brown: #605443;
--mw-code-background-color: hsl(36, 33%, 80%);
--personal-links-bg: hsl(36deg 27% 78%);
--ooui-normal:hsl(36, 32%, 75%);
--ooui-normal--hover:hsl(36, 31%, 81%);
--ooui-normal-border:hsl(36, 27%, 61%);
--ooui-progressive:hsl(36, 17%, 32%);
--ooui-progressive--hover:hsl(36, 17%, 42%);
--ooui-input-border:hsl(36, 27%, 61%);
--ooui-input-border--hover:hsl(36, 27%, 42%);
--ooui-disabled:hsl(36, 11%, 79%);
--ooui-disabled-border:hsl(36, 15%, 71%);
--tile-border-color: hsl(36 31% 70% / 1);
--tile-background-color: hsl(36 54% 95% / 1);
--tile-link-button-color: hsl(36 57% 91% / 1);
--tile-link-button-highlight-color: hsl(36 42% 78% / 1);
--tile-dark-color: #fff;
--tile-dark-bg: hsl(36 11% 41% / 1);
--tile-dark-link-color: hsl(0deg 0% 80%);
--tile-dark-byline-color: hsl(36 0% 100% / 0.7);
--tile-dark-header-color: #fff;
--questdetails-header-background: hsl(36deg 28% 74%);
--questdetails-header-background-alt: hsl(36deg 32% 72%);
--transcript-background: hsl(36deg 32% 78%);
--transcript-border-color: hsl(36deg 33% 56%);
--transcript-border-hover-color: hsl(36deg 65% 32%);
--echo-icon-moon-bg-image: url("data:image/svg+xml,%3C%3Fxml version='1.0' encoding='UTF-8'%3F%3E%3Csvg height='21' viewBox='0 0 21 21' width='21' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='m8.85464918.37900488c-1.91149353 1.51069427-3.13816124 3.84973402-3.13816124 6.47527736 0 4.55564936 3.69308349 8.24873286 8.24873286 8.24873286 2.5815709 0 4.8861545-1.1859235 6.3986798-3.0426994-.8206378 4.7389755-4.9523867 8.343122-9.9259291 8.343122-5.56375572 0-10.07407088-4.5103151-10.07407088-10.0740709 0-5.02506013 3.67919933-9.19079725 8.49074856-9.95036192z' fill='%235d4159' fill-rule='evenodd'/%3E%3C/svg%3E");
--echo-icon-person-bg-image: url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 width=%2212%22 height=%2213.836%22 viewBox=%220 0 12 13.836%22%3E %3Cpath fill='%235D5141' d=%22M1.938%2C6.656c-1.32%2C1.485-1.47%2C3.15-0.97%2C4.25c0.323%2C0.707%2C0.78%2C1.127%2C1.313%2C1.375 c0.496%2C0.229%2C1.074%2C0.273%2C1.658%2C0.282c0.023%2C0%2C0.04%2C0.03%2C0.062%2C0.03h4.187c0.61%2C0%2C1.225-0.125%2C1.75-0.405 c0.527-0.28%2C0.961-0.718%2C1.188-1.376c0.335-0.964%2C0.175-2.529-1.094-4.03C9.094%2C7.954%2C7.68%2C8.719%2C6.065%2C8.719 c-1.677%2C0-3.182-0.812-4.125-2.063H1.938z%22/%3E %3Cpath fill='%235d4159' d=%22M6.063%2C0c-1.89%2C0-3.595%2C1.674-3.594%2C3.563C2.467%2C5.45%2C4.173%2C7.155%2C6.06%2C7.155 c1.89%2C0%2C3.564-1.705%2C3.563-3.593C9.625%2C1.673%2C7.95%2C0%2C6.063%2C0L6.063%2C0z%22/%3E %3C/svg%3E");
--watch-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16'%3E%3Cpath fill='transparent' stroke='%23933984' stroke-width='.8' d='m8.1 1.1 2.2 4.5 4.8.7-3.5 3.4.9 4.8L8 12.2l-4.3 2.3.8-4.8L1 6.3l4.8-.7z'/%3E%3C/svg%3E%0A");
--unwatch-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16'%3E%3Cpath fill='%23933984' stroke='%23933984' stroke-width='.8' d='m8.1 1.1 2.2 4.5 4.8.7-3.5 3.4.9 4.8L8 12.2l-4.3 2.3.8-4.8L1 6.3l4.8-.7z'/%3E%3C/svg%3E%0A");
--external-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath fill='%23933984' d='M6 1h5v5L8.86 3.85 4.7 8 4 7.3l4.15-4.16L6 1Z M2 3h2v1H2v6h6V8h1v2a1 1 0 0 1-1 1H2a1 1 0 0 1-1-1V4a1 1 0 0 1 1-1Z'/%3E%3C/svg%3E");
}
ea557298482ccf29bc66a431a9f6737110367c1f
1647
1646
2024-03-31T19:52:11Z
Merds
25
css
text/css
/* this needs a background pic!!! */
:root {
--body-main: hsl(36deg 31% 84%);
--body-light: hsl(36deg 32% 78%);
--body-mid: hsl(36deg 38% 70%);
--body-dark: hsl(36deg 28% 62%);
--body-border: hsl(36deg 15% 50%);
/*--body-background-color: hsl(36deg 32% 64%);*/
--button-background: hsl(36 18% 32% / 1);
--button-color: #fff;
--button-border: hsl(36 33% 4% / 1);
--button-dark: hsl(36deg 33% 7%);
--button-light: hsl(36deg 33% 17%);
--sidebar: hsl(36deg 41% 68%);
--sidebar-text-color: hsl(0deg 0% 27%);
--sidebar-link-color: hsl(36deg 48% 18%);
--search-box: hsl(36deg 22% 92%);
--link-color: hsl(36deg 44% 40%);
--redlink-color: hsl(0deg 100% 36%);
--text-color: hsl(36deg 100% 4%);
--byline-color: hsl(36deg 6% 38%);
--admin-blue: #332e75;
--bearcat-green: #13592e;
--awb-purple: #933b96;
--rsw-blue: #438ab6;
--osrsw-brown: #605443;
--mw-code-background-color: hsl(36, 33%, 80%);
--personal-links-bg: hsl(36deg 27% 78%);
--ooui-normal:hsl(36, 32%, 75%);
--ooui-normal--hover:hsl(36, 31%, 81%);
--ooui-normal-border:hsl(36, 27%, 61%);
--ooui-progressive:hsl(36, 17%, 32%);
--ooui-progressive--hover:hsl(36, 17%, 42%);
--ooui-input-border:hsl(36, 27%, 61%);
--ooui-input-border--hover:hsl(36, 27%, 42%);
--ooui-disabled:hsl(36, 11%, 79%);
--ooui-disabled-border:hsl(36, 15%, 71%);
--tile-border-color: hsl(36 31% 70% / 1);
--tile-background-color: hsl(36 54% 95% / 1);
--tile-link-button-color: hsl(36 57% 91% / 1);
--tile-link-button-highlight-color: hsl(36 42% 78% / 1);
--tile-dark-color: #fff;
--tile-dark-bg: hsl(36 11% 41% / 1);
--tile-dark-link-color: hsl(0deg 0% 80%);
--tile-dark-byline-color: hsl(36 0% 100% / 0.7);
--tile-dark-header-color: #fff;
--questdetails-header-background: hsl(36deg 28% 74%);
--questdetails-header-background-alt: hsl(36deg 32% 72%);
--transcript-background: hsl(36deg 32% 78%);
--transcript-border-color: hsl(36deg 33% 56%);
--transcript-border-hover-color: hsl(36deg 65% 32%);
--echo-icon-moon-bg-image: url("data:image/svg+xml,%3C%3Fxml version='1.0' encoding='UTF-8'%3F%3E%3Csvg height='21' viewBox='0 0 21 21' width='21' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='m8.85464918.37900488c-1.91149353 1.51069427-3.13816124 3.84973402-3.13816124 6.47527736 0 4.55564936 3.69308349 8.24873286 8.24873286 8.24873286 2.5815709 0 4.8861545-1.1859235 6.3986798-3.0426994-.8206378 4.7389755-4.9523867 8.343122-9.9259291 8.343122-5.56375572 0-10.07407088-4.5103151-10.07407088-10.0740709 0-5.02506013 3.67919933-9.19079725 8.49074856-9.95036192z' fill='%235d4159' fill-rule='evenodd'/%3E%3C/svg%3E");
--echo-icon-person-bg-image: url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 width=%2212%22 height=%2213.836%22 viewBox=%220 0 12 13.836%22%3E %3Cpath fill='%235D5141' d=%22M1.938%2C6.656c-1.32%2C1.485-1.47%2C3.15-0.97%2C4.25c0.323%2C0.707%2C0.78%2C1.127%2C1.313%2C1.375 c0.496%2C0.229%2C1.074%2C0.273%2C1.658%2C0.282c0.023%2C0%2C0.04%2C0.03%2C0.062%2C0.03h4.187c0.61%2C0%2C1.225-0.125%2C1.75-0.405 c0.527-0.28%2C0.961-0.718%2C1.188-1.376c0.335-0.964%2C0.175-2.529-1.094-4.03C9.094%2C7.954%2C7.68%2C8.719%2C6.065%2C8.719 c-1.677%2C0-3.182-0.812-4.125-2.063H1.938z%22/%3E %3Cpath fill='%235d4159' d=%22M6.063%2C0c-1.89%2C0-3.595%2C1.674-3.594%2C3.563C2.467%2C5.45%2C4.173%2C7.155%2C6.06%2C7.155 c1.89%2C0%2C3.564-1.705%2C3.563-3.593C9.625%2C1.673%2C7.95%2C0%2C6.063%2C0L6.063%2C0z%22/%3E %3C/svg%3E");
--watch-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16'%3E%3Cpath fill='transparent' stroke='%23933984' stroke-width='.8' d='m8.1 1.1 2.2 4.5 4.8.7-3.5 3.4.9 4.8L8 12.2l-4.3 2.3.8-4.8L1 6.3l4.8-.7z'/%3E%3C/svg%3E%0A");
--unwatch-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16'%3E%3Cpath fill='%23933984' stroke='%23933984' stroke-width='.8' d='m8.1 1.1 2.2 4.5 4.8.7-3.5 3.4.9 4.8L8 12.2l-4.3 2.3.8-4.8L1 6.3l4.8-.7z'/%3E%3C/svg%3E%0A");
--external-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath fill='%23933984' d='M6 1h5v5L8.86 3.85 4.7 8 4 7.3l4.15-4.16L6 1Z M2 3h2v1H2v6h6V8h1v2a1 1 0 0 1-1 1H2a1 1 0 0 1-1-1V4a1 1 0 0 1 1-1Z'/%3E%3C/svg%3E");
}
571f38ae96b6ac8f423faacef0d0c4162b64b6e9
1648
1647
2024-03-31T19:53:36Z
Merds
25
css
text/css
/* this needs a background pic!!! */
:root {
--body-main: hsl(30deg 31% 84%);
--body-light: hsl(30deg 32% 78%);
--body-mid: hsl(30deg 38% 70%);
--body-dark: hsl(30deg 28% 62%);
--body-border: hsl(30deg 15% 50%);
/*--body-background-color: hsl(30deg 32% 64%);*/
--button-background: hsl(30 18% 32% / 1);
--button-color: #fff;
--button-border: hsl(30 33% 4% / 1);
--button-dark: hsl(30deg 33% 7%);
--button-light: hsl(30deg 33% 17%);
--sidebar: hsl(30deg 41% 68%);
--sidebar-text-color: hsl(0deg 0% 27%);
--sidebar-link-color: hsl(30deg 48% 18%);
--search-box: hsl(30deg 22% 92%);
--link-color: hsl(30deg 44% 40%);
--redlink-color: hsl(0deg 100% 36%);
--text-color: hsl(30deg 100% 4%);
--byline-color: hsl(30deg 6% 38%);
--admin-blue: #332e75;
--bearcat-green: #13592e;
--awb-purple: #933b96;
--rsw-blue: #438ab6;
--osrsw-brown: #605443;
--mw-code-background-color: hsl(30, 33%, 80%);
--personal-links-bg: hsl(30deg 27% 78%);
--ooui-normal:hsl(30, 32%, 75%);
--ooui-normal--hover:hsl(30, 31%, 81%);
--ooui-normal-border:hsl(30, 27%, 61%);
--ooui-progressive:hsl(30, 17%, 32%);
--ooui-progressive--hover:hsl(30, 17%, 42%);
--ooui-input-border:hsl(30, 27%, 61%);
--ooui-input-border--hover:hsl(30, 27%, 42%);
--ooui-disabled:hsl(30, 11%, 79%);
--ooui-disabled-border:hsl(30, 15%, 71%);
--tile-border-color: hsl(30 31% 70% / 1);
--tile-background-color: hsl(30 54% 95% / 1);
--tile-link-button-color: hsl(30 57% 91% / 1);
--tile-link-button-highlight-color: hsl(30 42% 78% / 1);
--tile-dark-color: #fff;
--tile-dark-bg: hsl(30 11% 41% / 1);
--tile-dark-link-color: hsl(0deg 0% 80%);
--tile-dark-byline-color: hsl(30 0% 100% / 0.7);
--tile-dark-header-color: #fff;
--questdetails-header-background: hsl(30deg 28% 74%);
--questdetails-header-background-alt: hsl(30deg 32% 72%);
--transcript-background: hsl(30deg 32% 78%);
--transcript-border-color: hsl(30deg 33% 56%);
--transcript-border-hover-color: hsl(30deg 65% 32%);
--echo-icon-moon-bg-image: url("data:image/svg+xml,%3C%3Fxml version='1.0' encoding='UTF-8'%3F%3E%3Csvg height='21' viewBox='0 0 21 21' width='21' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='m8.85464918.37900488c-1.91149353 1.51069427-3.13816124 3.84973402-3.13816124 6.47527736 0 4.55564936 3.69308349 8.24873286 8.24873286 8.24873286 2.5815709 0 4.8861545-1.1859235 6.3986798-3.0426994-.8206378 4.7389755-4.9523867 8.343122-9.9259291 8.343122-5.56375572 0-10.07407088-4.5103151-10.07407088-10.0740709 0-5.02506013 3.67919933-9.19079725 8.49074856-9.95036192z' fill='%235d4159' fill-rule='evenodd'/%3E%3C/svg%3E");
--echo-icon-person-bg-image: url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 width=%2212%22 height=%2213.836%22 viewBox=%220 0 12 13.836%22%3E %3Cpath fill='%235D5141' d=%22M1.938%2C6.656c-1.32%2C1.485-1.47%2C3.15-0.97%2C4.25c0.323%2C0.707%2C0.78%2C1.127%2C1.313%2C1.375 c0.496%2C0.229%2C1.074%2C0.273%2C1.658%2C0.282c0.023%2C0%2C0.04%2C0.03%2C0.062%2C0.03h4.187c0.61%2C0%2C1.225-0.125%2C1.75-0.405 c0.527-0.28%2C0.961-0.718%2C1.188-1.376c0.335-0.964%2C0.175-2.529-1.094-4.03C9.094%2C7.954%2C7.68%2C8.719%2C6.065%2C8.719 c-1.677%2C0-3.182-0.812-4.125-2.063H1.938z%22/%3E %3Cpath fill='%235d4159' d=%22M6.063%2C0c-1.89%2C0-3.595%2C1.674-3.594%2C3.563C2.467%2C5.45%2C4.173%2C7.155%2C6.06%2C7.155 c1.89%2C0%2C3.564-1.705%2C3.563-3.593C9.625%2C1.673%2C7.95%2C0%2C6.063%2C0L6.063%2C0z%22/%3E %3C/svg%3E");
--watch-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16'%3E%3Cpath fill='transparent' stroke='%23933984' stroke-width='.8' d='m8.1 1.1 2.2 4.5 4.8.7-3.5 3.4.9 4.8L8 12.2l-4.3 2.3.8-4.8L1 6.3l4.8-.7z'/%3E%3C/svg%3E%0A");
--unwatch-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16'%3E%3Cpath fill='%23933984' stroke='%23933984' stroke-width='.8' d='m8.1 1.1 2.2 4.5 4.8.7-3.5 3.4.9 4.8L8 12.2l-4.3 2.3.8-4.8L1 6.3l4.8-.7z'/%3E%3C/svg%3E%0A");
--external-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath fill='%23933984' d='M6 1h5v5L8.86 3.85 4.7 8 4 7.3l4.15-4.16L6 1Z M2 3h2v1H2v6h6V8h1v2a1 1 0 0 1-1 1H2a1 1 0 0 1-1-1V4a1 1 0 0 1 1-1Z'/%3E%3C/svg%3E");
}
0b1ec57966c9324def1c51b113e4ee435124a546
1649
1648
2024-03-31T19:58:28Z
Merds
25
css
text/css
/* this needs a background pic!!! */
:root {
--body-main: hsl(30deg 31% 95%);
--body-light: hsl(30deg 32% 78%);
--body-mid: hsl(30deg 38% 70%);
--body-dark: hsl(30deg 28% 62%);
--body-border: hsl(30deg 15% 50%);
/*--body-background-color: hsl(30deg 32% 64%);*/
--button-background: hsl(30 18% 32% / 1);
--button-color: #fff;
--button-border: hsl(30 33% 4% / 1);
--button-dark: hsl(30deg 33% 7%);
--button-light: hsl(30deg 33% 17%);
--sidebar: hsl(30deg 41% 68%);
--sidebar-text-color: hsl(0deg 0% 27%);
--sidebar-link-color: hsl(30deg 48% 18%);
--search-box: hsl(30deg 22% 92%);
--link-color: hsl(30deg 44% 40%);
--redlink-color: hsl(0deg 100% 36%);
--text-color: hsl(30deg 100% 4%);
--byline-color: hsl(30deg 6% 38%);
--admin-blue: #332e75;
--bearcat-green: #13592e;
--awb-purple: #933b96;
--rsw-blue: #438ab6;
--osrsw-brown: #605443;
--mw-code-background-color: hsl(30, 33%, 80%);
--personal-links-bg: hsl(30deg 27% 78%);
--ooui-normal:hsl(30, 32%, 75%);
--ooui-normal--hover:hsl(30, 31%, 81%);
--ooui-normal-border:hsl(30, 27%, 61%);
--ooui-progressive:hsl(30, 17%, 32%);
--ooui-progressive--hover:hsl(30, 17%, 42%);
--ooui-input-border:hsl(30, 27%, 61%);
--ooui-input-border--hover:hsl(30, 27%, 42%);
--ooui-disabled:hsl(30, 11%, 79%);
--ooui-disabled-border:hsl(30, 15%, 71%);
--tile-border-color: hsl(30 31% 70% / 1);
--tile-background-color: hsl(30 54% 95% / 1);
--tile-link-button-color: hsl(30 57% 91% / 1);
--tile-link-button-highlight-color: hsl(30 42% 78% / 1);
--tile-dark-color: #fff;
--tile-dark-bg: hsl(30 11% 41% / 1);
--tile-dark-link-color: hsl(0deg 0% 80%);
--tile-dark-byline-color: hsl(30 0% 100% / 0.7);
--tile-dark-header-color: #fff;
--questdetails-header-background: hsl(30deg 28% 74%);
--questdetails-header-background-alt: hsl(30deg 32% 72%);
--transcript-background: hsl(30deg 32% 78%);
--transcript-border-color: hsl(30deg 33% 56%);
--transcript-border-hover-color: hsl(30deg 65% 32%);
--echo-icon-moon-bg-image: url("data:image/svg+xml,%3C%3Fxml version='1.0' encoding='UTF-8'%3F%3E%3Csvg height='21' viewBox='0 0 21 21' width='21' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='m8.85464918.37900488c-1.91149353 1.51069427-3.13816124 3.84973402-3.13816124 6.47527736 0 4.55564936 3.69308349 8.24873286 8.24873286 8.24873286 2.5815709 0 4.8861545-1.1859235 6.3986798-3.0426994-.8206378 4.7389755-4.9523867 8.343122-9.9259291 8.343122-5.56375572 0-10.07407088-4.5103151-10.07407088-10.0740709 0-5.02506013 3.67919933-9.19079725 8.49074856-9.95036192z' fill='%235d4159' fill-rule='evenodd'/%3E%3C/svg%3E");
--echo-icon-person-bg-image: url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 width=%2212%22 height=%2213.836%22 viewBox=%220 0 12 13.836%22%3E %3Cpath fill='%235D5141' d=%22M1.938%2C6.656c-1.32%2C1.485-1.47%2C3.15-0.97%2C4.25c0.323%2C0.707%2C0.78%2C1.127%2C1.313%2C1.375 c0.496%2C0.229%2C1.074%2C0.273%2C1.658%2C0.282c0.023%2C0%2C0.04%2C0.03%2C0.062%2C0.03h4.187c0.61%2C0%2C1.225-0.125%2C1.75-0.405 c0.527-0.28%2C0.961-0.718%2C1.188-1.376c0.335-0.964%2C0.175-2.529-1.094-4.03C9.094%2C7.954%2C7.68%2C8.719%2C6.065%2C8.719 c-1.677%2C0-3.182-0.812-4.125-2.063H1.938z%22/%3E %3Cpath fill='%235d4159' d=%22M6.063%2C0c-1.89%2C0-3.595%2C1.674-3.594%2C3.563C2.467%2C5.45%2C4.173%2C7.155%2C6.06%2C7.155 c1.89%2C0%2C3.564-1.705%2C3.563-3.593C9.625%2C1.673%2C7.95%2C0%2C6.063%2C0L6.063%2C0z%22/%3E %3C/svg%3E");
--watch-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16'%3E%3Cpath fill='transparent' stroke='%23933984' stroke-width='.8' d='m8.1 1.1 2.2 4.5 4.8.7-3.5 3.4.9 4.8L8 12.2l-4.3 2.3.8-4.8L1 6.3l4.8-.7z'/%3E%3C/svg%3E%0A");
--unwatch-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16'%3E%3Cpath fill='%23933984' stroke='%23933984' stroke-width='.8' d='m8.1 1.1 2.2 4.5 4.8.7-3.5 3.4.9 4.8L8 12.2l-4.3 2.3.8-4.8L1 6.3l4.8-.7z'/%3E%3C/svg%3E%0A");
--external-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath fill='%23933984' d='M6 1h5v5L8.86 3.85 4.7 8 4 7.3l4.15-4.16L6 1Z M2 3h2v1H2v6h6V8h1v2a1 1 0 0 1-1 1H2a1 1 0 0 1-1-1V4a1 1 0 0 1 1-1Z'/%3E%3C/svg%3E");
}
d3716ea6f8c998ffb39b6352859554c29eeca03f
1650
1649
2024-03-31T20:06:37Z
Merds
25
css
text/css
/* this needs a background pic!!! */
:root {
--body-main: hsl(30deg 31% 95%);
--body-light: hsl(30deg 32% 88%);
--body-mid: hsl(30deg 38% 80%);
--body-dark: hsl(30deg 28% 72%);
--body-border: hsl(30deg 15% 60%);
/*--body-background-color: hsl(30deg 32% 64%);*/
--button-background: hsl(30 18% 42% / 1);
--button-color: #fff;
--button-border: hsl(30 33% 14% / 1);
--button-dark: hsl(30deg 33% 17%);
--button-light: hsl(30deg 33% 27%);
--sidebar: hsl(30deg 41% 78%);
--sidebar-text-color: hsl(0deg 0% 37%);
--sidebar-link-color: hsl(30deg 48% 28%);
--search-box: hsl(30deg 22% 92%);
--link-color: hsl(30deg 44% 40%);
--redlink-color: hsl(0deg 100% 36%);
/*--text-color: hsl(30deg 100% 4%);*/
--byline-color: hsl(30deg 6% 38%);
--admin-blue: #332e75;
--bearcat-green: #13592e;
--awb-purple: #933b96;
--rsw-blue: #438ab6;
--osrsw-brown: #605443;
--mw-code-background-color: hsl(30, 33%, 80%);
--personal-links-bg: hsl(30deg 27% 78%);
--ooui-normal:hsl(30, 32%, 85%);
--ooui-normal--hover:hsl(30, 31%, 91%);
--ooui-normal-border:hsl(30, 27%, 71%);
--ooui-progressive:hsl(30, 17%, 42%);
--ooui-progressive--hover:hsl(30, 17%, 52%);
--ooui-input-border:hsl(30, 27%, 71%);
--ooui-input-border--hover:hsl(30, 27%, 52%);
--ooui-disabled:hsl(30, 11%, 89%);
--ooui-disabled-border:hsl(30, 15%, 81%);
--tile-border-color: hsl(30 31% 80% / 1);
--tile-background-color: hsl(30 54% 100% / 1);
--tile-link-button-color: hsl(30 57% 95% / 1);
--tile-link-button-highlight-color: hsl(30 42% 88% / 1);
--tile-dark-color: #fff;
--tile-dark-bg: hsl(30 11% 51% / 1);
--tile-dark-link-color: hsl(0deg 0% 90%);
--tile-dark-byline-color: hsl(30 0% 100% / 0.7);
--tile-dark-header-color: #fff;
--questdetails-header-background: hsl(30deg 28% 84%);
--questdetails-header-background-alt: hsl(30deg 32% 82%);
--transcript-background: hsl(30deg 32% 88%);
--transcript-border-color: hsl(30deg 33% 66%);
--transcript-border-hover-color: hsl(30deg 65% 42%);
--echo-icon-moon-bg-image: url("data:image/svg+xml,%3C%3Fxml version='1.0' encoding='UTF-8'%3F%3E%3Csvg height='21' viewBox='0 0 21 21' width='21' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='m8.85464918.37900488c-1.91149353 1.51069427-3.13816124 3.84973402-3.13816124 6.47527736 0 4.55564936 3.69308349 8.24873286 8.24873286 8.24873286 2.5815709 0 4.8861545-1.1859235 6.3986798-3.0426994-.8206378 4.7389755-4.9523867 8.343122-9.9259291 8.343122-5.56375572 0-10.07407088-4.5103151-10.07407088-10.0740709 0-5.02506013 3.67919933-9.19079725 8.49074856-9.95036192z' fill='%235d4159' fill-rule='evenodd'/%3E%3C/svg%3E");
--echo-icon-person-bg-image: url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 width=%2212%22 height=%2213.836%22 viewBox=%220 0 12 13.836%22%3E %3Cpath fill='%235D5141' d=%22M1.938%2C6.656c-1.32%2C1.485-1.47%2C3.15-0.97%2C4.25c0.323%2C0.707%2C0.78%2C1.127%2C1.313%2C1.375 c0.496%2C0.229%2C1.074%2C0.273%2C1.658%2C0.282c0.023%2C0%2C0.04%2C0.03%2C0.062%2C0.03h4.187c0.61%2C0%2C1.225-0.125%2C1.75-0.405 c0.527-0.28%2C0.961-0.718%2C1.188-1.376c0.335-0.964%2C0.175-2.529-1.094-4.03C9.094%2C7.954%2C7.68%2C8.719%2C6.065%2C8.719 c-1.677%2C0-3.182-0.812-4.125-2.063H1.938z%22/%3E %3Cpath fill='%235d4159' d=%22M6.063%2C0c-1.89%2C0-3.595%2C1.674-3.594%2C3.563C2.467%2C5.45%2C4.173%2C7.155%2C6.06%2C7.155 c1.89%2C0%2C3.564-1.705%2C3.563-3.593C9.625%2C1.673%2C7.95%2C0%2C6.063%2C0L6.063%2C0z%22/%3E %3C/svg%3E");
--watch-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16'%3E%3Cpath fill='transparent' stroke='%23933984' stroke-width='.8' d='m8.1 1.1 2.2 4.5 4.8.7-3.5 3.4.9 4.8L8 12.2l-4.3 2.3.8-4.8L1 6.3l4.8-.7z'/%3E%3C/svg%3E%0A");
--unwatch-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16'%3E%3Cpath fill='%23933984' stroke='%23933984' stroke-width='.8' d='m8.1 1.1 2.2 4.5 4.8.7-3.5 3.4.9 4.8L8 12.2l-4.3 2.3.8-4.8L1 6.3l4.8-.7z'/%3E%3C/svg%3E%0A");
--external-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath fill='%23933984' d='M6 1h5v5L8.86 3.85 4.7 8 4 7.3l4.15-4.16L6 1Z M2 3h2v1H2v6h6V8h1v2a1 1 0 0 1-1 1H2a1 1 0 0 1-1-1V4a1 1 0 0 1 1-1Z'/%3E%3C/svg%3E");
}
8785ed3fad2fb0899c91b6a9657ae13526b6ff24
1651
1650
2024-03-31T20:10:43Z
Merds
25
css
text/css
/* this needs a background pic!!! */
:root {
--body-main: hsl(30deg 31% 95%);
--body-light: hsl(30deg 32% 88%);
--body-mid: hsl(30deg 38% 80%);
--body-dark: hsl(30deg 28% 72%);
--body-border: hsl(30deg 15% 60%);
/*--body-background-color: hsl(30deg 32% 64%);*/
--button-background: hsl(30 18% 42% / 1);
--button-color: #fff;
--button-border: hsl(30 33% 14% / 1);
--button-dark: hsl(30deg 33% 17%);
--button-light: hsl(30deg 33% 27%);
--sidebar: hsl(30deg 41% 78%);
--sidebar-text-color: hsl(0deg 0% 37%);
--sidebar-link-color: hsl(30deg 48% 28%);
--search-box: hsl(30deg 22% 92%);
--link-color: hsl(30deg 44% 40%);
--redlink-color: hsl(0deg 100% 36%);
/*--text-color: hsl(30deg 100% 4%);*/
--byline-color: hsl(30deg 6% 38%);
--admin-blue: #332e75;
--bearcat-green: #13592e;
--awb-purple: #933b96;
--rsw-blue: #438ab6;
--osrsw-brown: #605443;
--mw-code-background-color: hsl(30, 33%, 80%);
--personal-links-bg: hsl(30deg 31% 95%);
--ooui-normal:hsl(30, 32%, 85%);
--ooui-normal--hover:hsl(30, 31%, 91%);
--ooui-normal-border:hsl(30, 27%, 71%);
--ooui-progressive:hsl(30, 17%, 42%);
--ooui-progressive--hover:hsl(30, 17%, 52%);
--ooui-input-border:hsl(30, 27%, 71%);
--ooui-input-border--hover:hsl(30, 27%, 52%);
--ooui-disabled:hsl(30, 11%, 89%);
--ooui-disabled-border:hsl(30, 15%, 81%);
--tile-border-color: hsl(30 31% 80% / 1);
--tile-background-color: hsl(30 54% 100% / 1);
--tile-link-button-color: hsl(30 57% 95% / 1);
--tile-link-button-highlight-color: hsl(30 42% 88% / 1);
--tile-dark-color: #fff;
--tile-dark-bg: hsl(30 11% 51% / 1);
--tile-dark-link-color: hsl(0deg 0% 90%);
--tile-dark-byline-color: hsl(30 0% 100% / 0.7);
--tile-dark-header-color: #fff;
--questdetails-header-background: hsl(30deg 28% 84%);
--questdetails-header-background-alt: hsl(30deg 32% 82%);
--transcript-background: hsl(30deg 32% 88%);
--transcript-border-color: hsl(30deg 33% 66%);
--transcript-border-hover-color: hsl(30deg 65% 42%);
--echo-icon-moon-bg-image: url("data:image/svg+xml,%3C%3Fxml version='1.0' encoding='UTF-8'%3F%3E%3Csvg height='21' viewBox='0 0 21 21' width='21' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='m8.85464918.37900488c-1.91149353 1.51069427-3.13816124 3.84973402-3.13816124 6.47527736 0 4.55564936 3.69308349 8.24873286 8.24873286 8.24873286 2.5815709 0 4.8861545-1.1859235 6.3986798-3.0426994-.8206378 4.7389755-4.9523867 8.343122-9.9259291 8.343122-5.56375572 0-10.07407088-4.5103151-10.07407088-10.0740709 0-5.02506013 3.67919933-9.19079725 8.49074856-9.95036192z' fill='%235d4159' fill-rule='evenodd'/%3E%3C/svg%3E");
--echo-icon-person-bg-image: url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 width=%2212%22 height=%2213.836%22 viewBox=%220 0 12 13.836%22%3E %3Cpath fill='%235D5141' d=%22M1.938%2C6.656c-1.32%2C1.485-1.47%2C3.15-0.97%2C4.25c0.323%2C0.707%2C0.78%2C1.127%2C1.313%2C1.375 c0.496%2C0.229%2C1.074%2C0.273%2C1.658%2C0.282c0.023%2C0%2C0.04%2C0.03%2C0.062%2C0.03h4.187c0.61%2C0%2C1.225-0.125%2C1.75-0.405 c0.527-0.28%2C0.961-0.718%2C1.188-1.376c0.335-0.964%2C0.175-2.529-1.094-4.03C9.094%2C7.954%2C7.68%2C8.719%2C6.065%2C8.719 c-1.677%2C0-3.182-0.812-4.125-2.063H1.938z%22/%3E %3Cpath fill='%235d4159' d=%22M6.063%2C0c-1.89%2C0-3.595%2C1.674-3.594%2C3.563C2.467%2C5.45%2C4.173%2C7.155%2C6.06%2C7.155 c1.89%2C0%2C3.564-1.705%2C3.563-3.593C9.625%2C1.673%2C7.95%2C0%2C6.063%2C0L6.063%2C0z%22/%3E %3C/svg%3E");
--watch-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16'%3E%3Cpath fill='transparent' stroke='%23933984' stroke-width='.8' d='m8.1 1.1 2.2 4.5 4.8.7-3.5 3.4.9 4.8L8 12.2l-4.3 2.3.8-4.8L1 6.3l4.8-.7z'/%3E%3C/svg%3E%0A");
--unwatch-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16'%3E%3Cpath fill='%23933984' stroke='%23933984' stroke-width='.8' d='m8.1 1.1 2.2 4.5 4.8.7-3.5 3.4.9 4.8L8 12.2l-4.3 2.3.8-4.8L1 6.3l4.8-.7z'/%3E%3C/svg%3E%0A");
--external-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath fill='%23933984' d='M6 1h5v5L8.86 3.85 4.7 8 4 7.3l4.15-4.16L6 1Z M2 3h2v1H2v6h6V8h1v2a1 1 0 0 1-1 1H2a1 1 0 0 1-1-1V4a1 1 0 0 1 1-1Z'/%3E%3C/svg%3E");
}
4f626a9ce56f001e9d7ac6ebdb9c3a714f082ea2
1652
1651
2024-03-31T20:12:20Z
Merds
25
css
text/css
/* this needs a background pic!!! */
:root {
--body-main: hsl(30deg 31% 95%);
--body-light: hsl(30deg 32% 88%);
--body-mid: hsl(30deg 38% 80%);
--body-dark: hsl(30deg 28% 72%);
--body-border: hsl(30deg 15% 60%);
/*--body-background-color: hsl(30deg 32% 64%);*/
--button-background: hsl(30 18% 42% / 1);
--button-color: #fff;
--button-border: hsl(30 33% 14% / 1);
--button-dark: hsl(30deg 33% 17%);
--button-light: hsl(30deg 33% 27%);
--sidebar: hsl(30deg 41% 78%);
--sidebar-text-color: hsl(0deg 0% 37%);
--sidebar-link-color: hsl(30deg 48% 28%);
--search-box: hsl(30deg 22% 92%);
--link-color: hsl(30deg 44% 40%);
--redlink-color: hsl(0deg 100% 36%);
/*--text-color: hsl(30deg 100% 4%);*/
/*--byline-color: hsl(30deg 6% 38%);*/
--admin-blue: #332e75;
--bearcat-green: #13592e;
--awb-purple: #933b96;
--rsw-blue: #438ab6;
--osrsw-brown: #605443;
--mw-code-background-color: hsl(30, 33%, 80%);
--personal-links-bg: hsl(30deg 31% 95%);
--ooui-normal:hsl(30, 32%, 85%);
--ooui-normal--hover:hsl(30, 31%, 91%);
--ooui-normal-border:hsl(30, 27%, 71%);
--ooui-progressive:hsl(30, 17%, 42%);
--ooui-progressive--hover:hsl(30, 17%, 52%);
--ooui-input-border:hsl(30, 27%, 71%);
--ooui-input-border--hover:hsl(30, 27%, 52%);
--ooui-disabled:hsl(30, 11%, 89%);
--ooui-disabled-border:hsl(30, 15%, 81%);
--tile-border-color: hsl(30 31% 80% / 1);
--tile-background-color: hsl(30 54% 100% / 1);
--tile-link-button-color: hsl(30 57% 95% / 1);
--tile-link-button-highlight-color: hsl(30 42% 88% / 1);
--tile-dark-color: #fff;
--tile-dark-bg: hsl(30 11% 51% / 1);
--tile-dark-link-color: hsl(0deg 0% 90%);
--tile-dark-byline-color: hsl(30 0% 100% / 0.7);
--tile-dark-header-color: #fff;
--questdetails-header-background: hsl(30deg 28% 84%);
--questdetails-header-background-alt: hsl(30deg 32% 82%);
--transcript-background: hsl(30deg 32% 88%);
--transcript-border-color: hsl(30deg 33% 66%);
--transcript-border-hover-color: hsl(30deg 65% 42%);
--echo-icon-moon-bg-image: url("data:image/svg+xml,%3C%3Fxml version='1.0' encoding='UTF-8'%3F%3E%3Csvg height='21' viewBox='0 0 21 21' width='21' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='m8.85464918.37900488c-1.91149353 1.51069427-3.13816124 3.84973402-3.13816124 6.47527736 0 4.55564936 3.69308349 8.24873286 8.24873286 8.24873286 2.5815709 0 4.8861545-1.1859235 6.3986798-3.0426994-.8206378 4.7389755-4.9523867 8.343122-9.9259291 8.343122-5.56375572 0-10.07407088-4.5103151-10.07407088-10.0740709 0-5.02506013 3.67919933-9.19079725 8.49074856-9.95036192z' fill='%235d4159' fill-rule='evenodd'/%3E%3C/svg%3E");
--echo-icon-person-bg-image: url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 width=%2212%22 height=%2213.836%22 viewBox=%220 0 12 13.836%22%3E %3Cpath fill='%235D5141' d=%22M1.938%2C6.656c-1.32%2C1.485-1.47%2C3.15-0.97%2C4.25c0.323%2C0.707%2C0.78%2C1.127%2C1.313%2C1.375 c0.496%2C0.229%2C1.074%2C0.273%2C1.658%2C0.282c0.023%2C0%2C0.04%2C0.03%2C0.062%2C0.03h4.187c0.61%2C0%2C1.225-0.125%2C1.75-0.405 c0.527-0.28%2C0.961-0.718%2C1.188-1.376c0.335-0.964%2C0.175-2.529-1.094-4.03C9.094%2C7.954%2C7.68%2C8.719%2C6.065%2C8.719 c-1.677%2C0-3.182-0.812-4.125-2.063H1.938z%22/%3E %3Cpath fill='%235d4159' d=%22M6.063%2C0c-1.89%2C0-3.595%2C1.674-3.594%2C3.563C2.467%2C5.45%2C4.173%2C7.155%2C6.06%2C7.155 c1.89%2C0%2C3.564-1.705%2C3.563-3.593C9.625%2C1.673%2C7.95%2C0%2C6.063%2C0L6.063%2C0z%22/%3E %3C/svg%3E");
--watch-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16'%3E%3Cpath fill='transparent' stroke='%23933984' stroke-width='.8' d='m8.1 1.1 2.2 4.5 4.8.7-3.5 3.4.9 4.8L8 12.2l-4.3 2.3.8-4.8L1 6.3l4.8-.7z'/%3E%3C/svg%3E%0A");
--unwatch-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16'%3E%3Cpath fill='%23933984' stroke='%23933984' stroke-width='.8' d='m8.1 1.1 2.2 4.5 4.8.7-3.5 3.4.9 4.8L8 12.2l-4.3 2.3.8-4.8L1 6.3l4.8-.7z'/%3E%3C/svg%3E%0A");
--external-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath fill='%23933984' d='M6 1h5v5L8.86 3.85 4.7 8 4 7.3l4.15-4.16L6 1Z M2 3h2v1H2v6h6V8h1v2a1 1 0 0 1-1 1H2a1 1 0 0 1-1-1V4a1 1 0 0 1 1-1Z'/%3E%3C/svg%3E");
}
5b8dc2a170c61d65ea7ed81984d6b74c62e20a1f
1653
1652
2024-03-31T21:00:08Z
Merds
25
css
text/css
/* this needs a background pic!!! */
:root {
--body-main: hsl(30deg 31% 95%);
--body-light: hsl(30deg 32% 88%);
--body-mid: hsl(30deg 38% 80%);
--body-dark: hsl(30deg 28% 72%);
--body-border: hsl(30deg 15% 60%);
/*--body-background-color: hsl(30deg 32% 64%); */
--button-background: hsl(30 18% 42% / 1);
--button-color: #fff;
--button-border: hsl(30 33% 24% / 1);
--button-dark: hsl(30deg 33% 27%);
--button-light: hsl(30deg 33% 37%);
--sidebar: hsl(30deg 41% 78%);
--sidebar-text-color: hsl(0deg 0% 37%);
--sidebar-link-color: hsl(30deg 48% 28%);
--search-box: hsl(30deg 22% 92%);
--link-color: hsl(30deg 44% 40%);
--redlink-color: hsl(0deg 100% 36%);
/*--text-color: hsl(30deg 100% 4%); */
/*--byline-color: hsl(30deg 6% 38%); */
--admin-blue: #332e75;
--bearcat-green: #13592e;
--awb-purple: #933b96;
--rsw-blue: #438ab6;
--osrsw-brown: #605443;
--mw-code-background-color: hsl(30, 33%, 80%);
--personal-links-bg: hsl(30deg 31% 95%);
--ooui-normal:hsl(30, 32%, 85%);
--ooui-normal--hover:hsl(30, 31%, 91%);
--ooui-normal-border:hsl(30, 27%, 71%);
--ooui-progressive:hsl(30, 17%, 42%);
--ooui-progressive--hover:hsl(30, 17%, 52%);
--ooui-input-border:hsl(30, 27%, 71%);
--ooui-input-border--hover:hsl(30, 27%, 52%);
--ooui-disabled:hsl(30, 11%, 89%);
--ooui-disabled-border:hsl(30, 15%, 81%);
--tile-border-color: hsl(30 31% 80% / 1);
--tile-background-color: hsl(30 54% 100% / 1);
--tile-link-button-color: hsl(30 57% 95% / 1);
--tile-link-button-highlight-color: hsl(30 42% 88% / 1);
--tile-dark-color: #fff;
--tile-dark-bg: hsl(30 11% 51% / 1);
--tile-dark-link-color: hsl(0deg 0% 90%);
--tile-dark-byline-color: hsl(30 0% 100% / 0.7);
--tile-dark-header-color: #fff;
--questdetails-header-background: hsl(30deg 28% 84%);
--questdetails-header-background-alt: hsl(30deg 32% 82%);
--transcript-background: hsl(30deg 32% 88%);
--transcript-border-color: hsl(30deg 33% 66%);
--transcript-border-hover-color: hsl(30deg 65% 42%);
--echo-icon-moon-bg-image: url("data:image/svg+xml,%3C%3Fxml version='1.0' encoding='UTF-8'%3F%3E%3Csvg height='21' viewBox='0 0 21 21' width='21' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='m8.85464918.37900488c-1.91149353 1.51069427-3.13816124 3.84973402-3.13816124 6.47527736 0 4.55564936 3.69308349 8.24873286 8.24873286 8.24873286 2.5815709 0 4.8861545-1.1859235 6.3986798-3.0426994-.8206378 4.7389755-4.9523867 8.343122-9.9259291 8.343122-5.56375572 0-10.07407088-4.5103151-10.07407088-10.0740709 0-5.02506013 3.67919933-9.19079725 8.49074856-9.95036192z' fill='%235d4159' fill-rule='evenodd'/%3E%3C/svg%3E");
--echo-icon-person-bg-image: url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 width=%2212%22 height=%2213.836%22 viewBox=%220 0 12 13.836%22%3E %3Cpath fill='%235D5141' d=%22M1.938%2C6.656c-1.32%2C1.485-1.47%2C3.15-0.97%2C4.25c0.323%2C0.707%2C0.78%2C1.127%2C1.313%2C1.375 c0.496%2C0.229%2C1.074%2C0.273%2C1.658%2C0.282c0.023%2C0%2C0.04%2C0.03%2C0.062%2C0.03h4.187c0.61%2C0%2C1.225-0.125%2C1.75-0.405 c0.527-0.28%2C0.961-0.718%2C1.188-1.376c0.335-0.964%2C0.175-2.529-1.094-4.03C9.094%2C7.954%2C7.68%2C8.719%2C6.065%2C8.719 c-1.677%2C0-3.182-0.812-4.125-2.063H1.938z%22/%3E %3Cpath fill='%235d4159' d=%22M6.063%2C0c-1.89%2C0-3.595%2C1.674-3.594%2C3.563C2.467%2C5.45%2C4.173%2C7.155%2C6.06%2C7.155 c1.89%2C0%2C3.564-1.705%2C3.563-3.593C9.625%2C1.673%2C7.95%2C0%2C6.063%2C0L6.063%2C0z%22/%3E %3C/svg%3E");
--watch-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16'%3E%3Cpath fill='transparent' stroke='%23933984' stroke-width='.8' d='m8.1 1.1 2.2 4.5 4.8.7-3.5 3.4.9 4.8L8 12.2l-4.3 2.3.8-4.8L1 6.3l4.8-.7z'/%3E%3C/svg%3E%0A");
--unwatch-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16'%3E%3Cpath fill='%23933984' stroke='%23933984' stroke-width='.8' d='m8.1 1.1 2.2 4.5 4.8.7-3.5 3.4.9 4.8L8 12.2l-4.3 2.3.8-4.8L1 6.3l4.8-.7z'/%3E%3C/svg%3E%0A");
--external-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath fill='%23933984' d='M6 1h5v5L8.86 3.85 4.7 8 4 7.3l4.15-4.16L6 1Z M2 3h2v1H2v6h6V8h1v2a1 1 0 0 1-1 1H2a1 1 0 0 1-1-1V4a1 1 0 0 1 1-1Z'/%3E%3C/svg%3E");
}
6a499d99041d6ecc594a7a2b33938210dcb3997f
User:Merds/CSS/Theme.css
2
806
1654
1653
2024-03-31T21:50:26Z
Merds
25
css
text/css
/* this needs a background pic!!! */
:root {
--body-main: hsl(30deg 31% 99%);
--body-light: hsl(30deg 32% 88%);
--body-mid: hsl(30deg 38% 80%);
--body-dark: hsl(30deg 28% 72%);
--body-border: hsl(30deg 15% 60%);
/*--body-background-color: hsl(30deg 32% 64%); */
--button-background: hsl(30 18% 42% / 1);
--button-color: #fff;
--button-border: hsl(30 33% 24% / 1);
--button-dark: hsl(30deg 33% 27%);
--button-light: hsl(30deg 33% 37%);
--sidebar: hsl(30deg 41% 78%);
--sidebar-text-color: hsl(0deg 0% 37%);
--sidebar-link-color: hsl(30deg 48% 28%);
--search-box: hsl(30deg 22% 92%);
--link-color: hsl(30deg 44% 40%);
--redlink-color: hsl(0deg 100% 36%);
/*--text-color: hsl(30deg 100% 4%); */
/*--byline-color: hsl(30deg 6% 38%); */
--admin-blue: #332e75;
--bearcat-green: #13592e;
--awb-purple: #933b96;
--rsw-blue: #438ab6;
--osrsw-brown: #605443;
--mw-code-background-color: hsl(30, 33%, 90%);
--personal-links-bg: hsl(30deg 31% 95%);
--ooui-normal: hsl(30, 32%, 75%);
--ooui-normal--hover: hsl(30, 52%, 80%);
--ooui-normal-border: hsl(30, 32%, 71%);
--ooui-progressive: hsl(30, 37%, 42%);
--ooui-progressive--hover: hsl(30, 37%, 52%);
--ooui-input-border:hsl(30, 27%, 71%);
--ooui-input-border--hover:hsl(30, 27%, 52%);
--ooui-disabled:hsl(30, 11%, 89%);
--ooui-disabled-border:hsl(30, 15%, 81%);
--tile-border-color: hsl(30 31% 80% / 1);
--tile-background-color: hsl(30 32% 88% / 1);
--tile-link-button-color: hsl(30 57% 95% / 1);
--tile-link-button-highlight-color: hsl(30 42% 88% / 1);
--tile-dark-color: #fff;
--tile-dark-bg: hsl(30 11% 51% / 1);
--tile-dark-link-color: hsl(0deg 0% 90%);
--tile-dark-byline-color: hsl(30 0% 100% / 0.7);
--tile-dark-header-color: #fff;
--questdetails-header-background: hsl(30deg 28% 84%);
--questdetails-header-background-alt: hsl(30deg 32% 82%);
--transcript-background: hsl(30deg 32% 88%);
--transcript-border-color: hsl(30deg 33% 66%);
--transcript-border-hover-color: hsl(30deg 65% 42%);
--echo-icon-moon-bg-image: url("data:image/svg+xml,%3C%3Fxml version='1.0' encoding='UTF-8'%3F%3E%3Csvg height='21' viewBox='0 0 21 21' width='21' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='m8.85464918.37900488c-1.91149353 1.51069427-3.13816124 3.84973402-3.13816124 6.47527736 0 4.55564936 3.69308349 8.24873286 8.24873286 8.24873286 2.5815709 0 4.8861545-1.1859235 6.3986798-3.0426994-.8206378 4.7389755-4.9523867 8.343122-9.9259291 8.343122-5.56375572 0-10.07407088-4.5103151-10.07407088-10.0740709 0-5.02506013 3.67919933-9.19079725 8.49074856-9.95036192z' fill='%235d4159' fill-rule='evenodd'/%3E%3C/svg%3E");
--echo-icon-person-bg-image: url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 width=%2212%22 height=%2213.836%22 viewBox=%220 0 12 13.836%22%3E %3Cpath fill='%235D5141' d=%22M1.938%2C6.656c-1.32%2C1.485-1.47%2C3.15-0.97%2C4.25c0.323%2C0.707%2C0.78%2C1.127%2C1.313%2C1.375 c0.496%2C0.229%2C1.074%2C0.273%2C1.658%2C0.282c0.023%2C0%2C0.04%2C0.03%2C0.062%2C0.03h4.187c0.61%2C0%2C1.225-0.125%2C1.75-0.405 c0.527-0.28%2C0.961-0.718%2C1.188-1.376c0.335-0.964%2C0.175-2.529-1.094-4.03C9.094%2C7.954%2C7.68%2C8.719%2C6.065%2C8.719 c-1.677%2C0-3.182-0.812-4.125-2.063H1.938z%22/%3E %3Cpath fill='%235d4159' d=%22M6.063%2C0c-1.89%2C0-3.595%2C1.674-3.594%2C3.563C2.467%2C5.45%2C4.173%2C7.155%2C6.06%2C7.155 c1.89%2C0%2C3.564-1.705%2C3.563-3.593C9.625%2C1.673%2C7.95%2C0%2C6.063%2C0L6.063%2C0z%22/%3E %3C/svg%3E");
--watch-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16'%3E%3Cpath fill='transparent' stroke='%23933984' stroke-width='.8' d='m8.1 1.1 2.2 4.5 4.8.7-3.5 3.4.9 4.8L8 12.2l-4.3 2.3.8-4.8L1 6.3l4.8-.7z'/%3E%3C/svg%3E%0A");
--unwatch-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16'%3E%3Cpath fill='%23933984' stroke='%23933984' stroke-width='.8' d='m8.1 1.1 2.2 4.5 4.8.7-3.5 3.4.9 4.8L8 12.2l-4.3 2.3.8-4.8L1 6.3l4.8-.7z'/%3E%3C/svg%3E%0A");
--external-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath fill='%23933984' d='M6 1h5v5L8.86 3.85 4.7 8 4 7.3l4.15-4.16L6 1Z M2 3h2v1H2v6h6V8h1v2a1 1 0 0 1-1 1H2a1 1 0 0 1-1-1V4a1 1 0 0 1 1-1Z'/%3E%3C/svg%3E");
}
1c020f9ac42d168ac4df899b927e4cb9699a5813
1655
1654
2024-03-31T23:10:09Z
Merds
25
css
text/css
/* this needs a background pic!!! */
:root {
--body-main: hsl(30deg 31% 99%);
--body-light: hsl(30deg 32% 94%);
--body-mid: #d1b9ad;
--body-dark: #b1886f;
--body-border: #d1b9ad;
/*--body-background-color: hsl(30deg 32% 64%); */
--button-background: hsl(30 18% 42% / 1);
--button-color: #fff;
--button-border: hsl(30 33% 24% / 1);
--button-dark: hsl(30deg 33% 27%);
--button-light: hsl(30deg 33% 37%);
--sidebar: hsl(30deg 41% 78%);
--sidebar-text-color: hsl(0deg 0% 37%);
--sidebar-link-color: hsl(30deg 48% 28%);
--search-box: hsl(30deg 22% 92%);
--link-color: hsl(30deg 44% 40%);
--redlink-color: hsl(0deg 100% 36%);
/*--text-color: hsl(30deg 100% 4%); */
/*--byline-color: hsl(30deg 6% 38%); */
--admin-blue: #332e75;
--bearcat-green: #13592e;
--awb-purple: #933b96;
--rsw-blue: #438ab6;
--osrsw-brown: #605443;
--mw-code-background-color: hsl(30, 33%, 90%);
--personal-links-bg: hsl(30deg 31% 95%);
--ooui-normal: hsl(30, 32%, 75%);
--ooui-normal--hover: hsl(30, 52%, 80%);
--ooui-normal-border: hsl(30, 32%, 71%);
--ooui-progressive: hsl(30, 37%, 42%);
--ooui-progressive--hover: hsl(30, 37%, 52%);
--ooui-input-border:hsl(30, 27%, 71%);
--ooui-input-border--hover:hsl(30, 27%, 52%);
--ooui-disabled:hsl(30, 11%, 89%);
--ooui-disabled-border:hsl(30, 15%, 81%);
--tile-border-color: hsl(30 31% 80% / 1);
--tile-background-color: hsl(30 32% 88% / 1);
--tile-link-button-color: hsl(30 57% 95% / 1);
--tile-link-button-highlight-color: hsl(30 42% 88% / 1);
--tile-dark-color: #fff;
--tile-dark-bg: hsl(30 11% 51% / 1);
--tile-dark-link-color: hsl(0deg 0% 90%);
--tile-dark-byline-color: hsl(30 0% 100% / 0.7);
--tile-dark-header-color: #fff;
--questdetails-header-background: hsl(30deg 28% 84%);
--questdetails-header-background-alt: hsl(30deg 32% 82%);
--transcript-background: hsl(30deg 32% 88%);
--transcript-border-color: hsl(30deg 33% 66%);
--transcript-border-hover-color: hsl(30deg 65% 42%);
--echo-icon-moon-bg-image: url("data:image/svg+xml,%3C%3Fxml version='1.0' encoding='UTF-8'%3F%3E%3Csvg height='21' viewBox='0 0 21 21' width='21' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='m8.85464918.37900488c-1.91149353 1.51069427-3.13816124 3.84973402-3.13816124 6.47527736 0 4.55564936 3.69308349 8.24873286 8.24873286 8.24873286 2.5815709 0 4.8861545-1.1859235 6.3986798-3.0426994-.8206378 4.7389755-4.9523867 8.343122-9.9259291 8.343122-5.56375572 0-10.07407088-4.5103151-10.07407088-10.0740709 0-5.02506013 3.67919933-9.19079725 8.49074856-9.95036192z' fill='%235d4159' fill-rule='evenodd'/%3E%3C/svg%3E");
--echo-icon-person-bg-image: url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 width=%2212%22 height=%2213.836%22 viewBox=%220 0 12 13.836%22%3E %3Cpath fill='%235D5141' d=%22M1.938%2C6.656c-1.32%2C1.485-1.47%2C3.15-0.97%2C4.25c0.323%2C0.707%2C0.78%2C1.127%2C1.313%2C1.375 c0.496%2C0.229%2C1.074%2C0.273%2C1.658%2C0.282c0.023%2C0%2C0.04%2C0.03%2C0.062%2C0.03h4.187c0.61%2C0%2C1.225-0.125%2C1.75-0.405 c0.527-0.28%2C0.961-0.718%2C1.188-1.376c0.335-0.964%2C0.175-2.529-1.094-4.03C9.094%2C7.954%2C7.68%2C8.719%2C6.065%2C8.719 c-1.677%2C0-3.182-0.812-4.125-2.063H1.938z%22/%3E %3Cpath fill='%235d4159' d=%22M6.063%2C0c-1.89%2C0-3.595%2C1.674-3.594%2C3.563C2.467%2C5.45%2C4.173%2C7.155%2C6.06%2C7.155 c1.89%2C0%2C3.564-1.705%2C3.563-3.593C9.625%2C1.673%2C7.95%2C0%2C6.063%2C0L6.063%2C0z%22/%3E %3C/svg%3E");
--watch-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16'%3E%3Cpath fill='transparent' stroke='%23933984' stroke-width='.8' d='m8.1 1.1 2.2 4.5 4.8.7-3.5 3.4.9 4.8L8 12.2l-4.3 2.3.8-4.8L1 6.3l4.8-.7z'/%3E%3C/svg%3E%0A");
--unwatch-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16'%3E%3Cpath fill='%23933984' stroke='%23933984' stroke-width='.8' d='m8.1 1.1 2.2 4.5 4.8.7-3.5 3.4.9 4.8L8 12.2l-4.3 2.3.8-4.8L1 6.3l4.8-.7z'/%3E%3C/svg%3E%0A");
--external-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath fill='%23933984' d='M6 1h5v5L8.86 3.85 4.7 8 4 7.3l4.15-4.16L6 1Z M2 3h2v1H2v6h6V8h1v2a1 1 0 0 1-1 1H2a1 1 0 0 1-1-1V4a1 1 0 0 1 1-1Z'/%3E%3C/svg%3E");
}
5a6adff338d75d38d069abec6100c71e483adcc9
1657
1655
2024-03-31T23:19:54Z
Merds
25
css
text/css
/* this needs a background pic!!! */
:root {
--body-main: hsl(23deg 31% 99%);
--body-light: hsl(23deg 32% 94%);
--body-mid: #d1b9ad;
--body-dark: #b1886f;
--body-border: #d1b9ad;
/*--body-background-color: hsl(23deg 32% 64%); */
--button-background: hsl(23 18% 42% / 1);
--button-color: #fff;
--button-border: hsl(23 33% 24% / 1);
--button-dark: hsl(23deg 33% 27%);
--button-light: hsl(23deg 33% 37%);
--sidebar: hsl(23deg 41% 78%);
--sidebar-text-color: hsl(0deg 0% 37%);
--sidebar-link-color: hsl(23deg 48% 28%);
--search-box: hsl(23deg 22% 92%);
--link-color: hsl(23deg 44% 40%);
--redlink-color: hsl(0deg 100% 36%);
/*--text-color: hsl(23deg 100% 4%); */
/*--byline-color: hsl(23deg 6% 38%); */
--admin-blue: #332e75;
--bearcat-green: #13592e;
--awb-purple: #933b96;
--rsw-blue: #438ab6;
--osrsw-brown: #605443;
--mw-code-background-color: hsl(23, 33%, 90%);
--personal-links-bg: hsl(23deg 31% 95%);
--ooui-normal: hsl(23, 32%, 75%);
--ooui-normal--hover: hsl(23, 52%, 80%);
--ooui-normal-border: hsl(23, 32%, 71%);
--ooui-progressive: hsl(23, 37%, 42%);
--ooui-progressive--hover: hsl(23, 37%, 52%);
--ooui-input-border:hsl(23, 27%, 71%);
--ooui-input-border--hover:hsl(23, 27%, 52%);
--ooui-disabled:hsl(23, 11%, 89%);
--ooui-disabled-border:hsl(23, 15%, 81%);
--tile-border-color: hsl(23 31% 80% / 1);
--tile-background-color: hsl(23 32% 88% / 1);
--tile-link-button-color: hsl(23 57% 95% / 1);
--tile-link-button-highlight-color: hsl(23 42% 88% / 1);
--tile-dark-color: #fff;
--tile-dark-bg: hsl(23 11% 51% / 1);
--tile-dark-link-color: hsl(0deg 0% 90%);
--tile-dark-byline-color: hsl(23 0% 100% / 0.7);
--tile-dark-header-color: #fff;
--questdetails-header-background: hsl(23deg 28% 84%);
--questdetails-header-background-alt: hsl(23deg 32% 82%);
--transcript-background: hsl(23deg 32% 88%);
--transcript-border-color: hsl(23deg 33% 66%);
--transcript-border-hover-color: hsl(23deg 65% 42%);
}
56117f3399668a2826c6e02260347c0eac92b3b3
1659
1657
2024-03-31T23:26:29Z
Merds
25
css
text/css
/* this needs a background pic!!! */
:root {
--body-main: hsl(23deg 31% 99%);
--body-light: hsl(23deg 32% 94%);
--body-mid: #d1b9ad;
--body-dark: #b1886f;
--body-border: #d1b9ad;
/*--body-background-color: hsl(23deg 32% 64%); */
--button-background: hsl(23 18% 42% / 1);
--button-color: #fff;
--button-border: hsl(23 33% 24% / 1);
--button-dark: hsl(23deg 33% 27%);
--button-light: hsl(23deg 33% 37%);
--sidebar: hsl(23deg 41% 78%);
--sidebar-text-color: hsl(0deg 0% 37%);
--sidebar-link-color: hsl(23deg 48% 28%);
--search-box: hsl(23deg 22% 92%);
--link-color: hsl(23deg 44% 30%);
--redlink-color: hsl(0deg 100% 36%);
/*--text-color: hsl(23deg 100% 4%); */
/*--byline-color: hsl(23deg 6% 38%); */
--admin-blue: #332e75;
--bearcat-green: #13592e;
--awb-purple: #933b96;
--rsw-blue: #438ab6;
--osrsw-brown: #605443;
--mw-code-background-color: hsl(23, 33%, 90%);
--personal-links-bg: hsl(23deg 31% 95%);
--ooui-normal: hsl(23, 32%, 75%);
--ooui-normal--hover: hsl(23, 52%, 80%);
--ooui-normal-border: hsl(23, 32%, 71%);
--ooui-progressive: hsl(23, 37%, 42%);
--ooui-progressive--hover: hsl(23, 37%, 52%);
--ooui-input-border:hsl(23, 27%, 71%);
--ooui-input-border--hover:hsl(23, 27%, 52%);
--ooui-disabled:hsl(23, 11%, 89%);
--ooui-disabled-border:hsl(23, 15%, 81%);
--tile-border-color: hsl(23 31% 80% / 1);
--tile-background-color: hsl(23 32% 88% / 1);
--tile-link-button-color: hsl(23 57% 95% / 1);
--tile-link-button-highlight-color: hsl(23 42% 88% / 1);
--tile-dark-color: #fff;
--tile-dark-bg: hsl(23 11% 51% / 1);
--tile-dark-link-color: hsl(0deg 0% 90%);
--tile-dark-byline-color: hsl(23 0% 100% / 0.7);
--tile-dark-header-color: #fff;
--questdetails-header-background: hsl(23deg 28% 84%);
--questdetails-header-background-alt: hsl(23deg 32% 82%);
--transcript-background: hsl(23deg 32% 88%);
--transcript-border-color: hsl(23deg 33% 66%);
--transcript-border-hover-color: hsl(23deg 65% 42%);
}
289a0e0e59898b139f42fab495dff4fdd02923c3
1661
1659
2024-03-31T23:33:42Z
Merds
25
css
text/css
/* this needs a background pic!!! */
:root {
--body-main: hsl(23deg 31% 99%);
--body-light: hsl(23deg 32% 94%);
--body-mid: #d1b9ad;
--body-dark: #b1886f;
--body-border: #d1b9ad;
/*--body-background-color: hsl(23deg 32% 64%); */
--button-background: hsl(23 18% 42% / 1);
--button-color: #fff;
--button-border: hsl(23 33% 24% / 1);
--button-dark: hsl(23deg 33% 27%);
--button-light: hsl(23deg 33% 37%);
--sidebar: hsl(23deg 41% 78%);
--sidebar-text-color: hsl(0deg 0% 37%);
--sidebar-link-color: hsl(23deg 48% 28%);
--search-box: hsl(23deg 22% 92%);
--link-color: hsl(23deg 44% 30%);
--redlink-color: hsl(0deg 100% 36%);
/*--text-color: hsl(23deg 100% 4%); */
/*--byline-color: hsl(23deg 6% 38%); */
--admin-blue: #332e75;
--bearcat-green: #13592e;
--awb-purple: #933b96;
--rsw-blue: #438ab6;
--osrsw-brown: #605443;
--mw-code-background-color: var(--body-light);
--personal-links-bg: hsl(23deg 31% 95%);
--ooui-normal: hsl(23, 32%, 75%);
--ooui-normal--hover: hsl(23, 52%, 80%);
--ooui-normal-border: hsl(23, 32%, 71%);
--ooui-progressive: hsl(23, 37%, 42%);
--ooui-progressive--hover: hsl(23, 37%, 52%);
--ooui-input-border:hsl(23, 27%, 71%);
--ooui-input-border--hover:hsl(23, 27%, 52%);
--ooui-disabled:hsl(23, 11%, 89%);
--ooui-disabled-border:hsl(23, 15%, 81%);
--tile-border-color: hsl(23 31% 80% / 1);
--tile-background-color: hsl(23 32% 88% / 1);
--tile-link-button-color: hsl(23 57% 95% / 1);
--tile-link-button-highlight-color: hsl(23 42% 88% / 1);
--tile-dark-color: #fff;
--tile-dark-bg: hsl(23 11% 51% / 1);
--tile-dark-link-color: hsl(0deg 0% 90%);
--tile-dark-byline-color: hsl(23 0% 100% / 0.7);
--tile-dark-header-color: #fff;
--questdetails-header-background: hsl(23deg 28% 84%);
--questdetails-header-background-alt: hsl(23deg 32% 82%);
--transcript-background: hsl(23deg 32% 88%);
--transcript-border-color: hsl(23deg 33% 66%);
--transcript-border-hover-color: hsl(23deg 65% 42%);
}
c530ce461042dea58adfe2363e5e50e2a3ceec2b
1672
1661
2024-03-31T23:53:31Z
Merds
25
css
text/css
/* this needs a background pic!!! */
:root {
--body-main: #fdfcfc;
--body-light: #f5f0eb;
--body-mid: #d1b9ad;
--body-dark: #b1886f;
--body-border: #d1b9ad;
/*--body-background-color: hsl(23deg 32% 64%); */
--button-background: hsl(23 18% 42% / 1);
--button-color: #fff;
--button-border: hsl(23 33% 24% / 1);
--button-dark: hsl(23deg 33% 27%);
--button-light: hsl(23deg 33% 37%);
--sidebar: hsl(23deg 41% 78%);
--sidebar-text-color: hsl(0deg 0% 37%);
--sidebar-link-color: hsl(23deg 48% 28%);
--search-box: hsl(23deg 22% 92%);
--link-color: hsl(23deg 44% 30%);
--redlink-color: hsl(0deg 100% 36%);
/*--text-color: hsl(23deg 100% 4%); */
/*--byline-color: hsl(23deg 6% 38%); */
--admin-blue: #332e75;
--bearcat-green: #13592e;
--awb-purple: #933b96;
--rsw-blue: #438ab6;
--osrsw-brown: #605443;
--mw-code-background-color: var(--body-light);
--personal-links-bg: hsl(23deg 31% 95%);
--ooui-normal: #d4baab;
--ooui-normal--hover: hsl(23, 52%, 80%);
--ooui-normal-border: #cdb09d;
--ooui-progressive: #936243;
--ooui-progressive--hover: hsl(23, 37%, 52%);
--ooui-input-border:hsl(23, 27%, 71%);
--ooui-input-border--hover:hsl(23, 27%, 52%);
--ooui-disabled:hsl(23, 11%, 89%);
--ooui-disabled-border:hsl(23, 15%, 81%);
--tile-border-color: hsl(23 31% 80% / 1);
--tile-background-color: hsl(23 32% 88% / 1);
--tile-link-button-color: hsl(23 57% 95% / 1);
--tile-link-button-highlight-color: hsl(23 42% 88% / 1);
--tile-dark-color: #fff;
--tile-dark-bg: hsl(23 11% 51% / 1);
--tile-dark-link-color: hsl(0deg 0% 90%);
--tile-dark-byline-color: hsl(23 0% 100% / 0.7);
--tile-dark-header-color: #fff;
--questdetails-header-background: hsl(23deg 28% 84%);
--questdetails-header-background-alt: hsl(23deg 32% 82%);
--transcript-background: hsl(23deg 32% 88%);
--transcript-border-color: hsl(23deg 33% 66%);
--transcript-border-hover-color: hsl(23deg 65% 42%);
}
89e7315a2eeb98cb7fbd6448a34f38261f8189d5
1676
1672
2024-04-01T00:06:03Z
Merds
25
css
text/css
/* this needs a background pic!!! */
:root {
--body-main: #fdfcfc;
--body-light: #f5f0eb;
--body-mid: #d1b9ad;
--body-dark: #b1886f;
--body-border: #d1b9ad;
/*--body-background-color: hsl(23deg 32% 64%); */
--button-background: hsl(23 18% 42% / 1);
--button-color: #fff;
--button-border: hsl(23 33% 24% / 1);
--button-dark: hsl(23deg 33% 27%);
--button-light: hsl(23deg 33% 37%);
--sidebar: hsl(23deg 41% 78%);
--sidebar-text-color: hsl(0deg 0% 37%);
--sidebar-link-color: hsl(23deg 48% 28%);
--search-box: hsl(23deg 22% 92%);
--link-color: hsl(23deg 44% 30%);
--redlink-color: hsl(0deg 100% 36%);
/*--text-color: hsl(23deg 100% 4%); */
/*--byline-color: hsl(23deg 6% 38%); */
--admin-blue: #332e75;
--bearcat-green: #13592e;
--awb-purple: #933b96;
--rsw-blue: #438ab6;
--osrsw-brown: #605443;
--mw-code-background-color: var(--body-light);
--personal-links-bg: hsl(23deg 31% 95%);
--ooui-normal: #d1b9ad;
--ooui-normal--hover: hsl(23, 52%, 80%);
--ooui-normal-border: #d1b9ad;
--ooui-progressive: #936243;
--ooui-progressive--hover: hsl(23, 37%, 52%);
--ooui-input-border:hsl(23, 27%, 71%);
--ooui-input-border--hover:hsl(23, 27%, 52%);
--ooui-disabled:hsl(23, 11%, 89%);
--ooui-disabled-border:hsl(23, 15%, 81%);
--tile-border-color: hsl(23 31% 80% / 1);
--tile-background-color: hsl(23 32% 88% / 1);
--tile-link-button-color: hsl(23 57% 95% / 1);
--tile-link-button-highlight-color: hsl(23 42% 88% / 1);
--tile-dark-color: #fff;
--tile-dark-bg: hsl(23 11% 51% / 1);
--tile-dark-link-color: hsl(0deg 0% 90%);
--tile-dark-byline-color: hsl(23 0% 100% / 0.7);
--tile-dark-header-color: #fff;
--questdetails-header-background: hsl(23deg 28% 84%);
--questdetails-header-background-alt: hsl(23deg 32% 82%);
--transcript-background: hsl(23deg 32% 88%);
--transcript-border-color: hsl(23deg 33% 66%);
--transcript-border-hover-color: hsl(23deg 65% 42%);
}
56efd56a79e4c71a20b73b9dc7dd1bbe1e644661
User:Merds/Sandbox
2
652
1656
1583
2024-03-31T23:19:45Z
Merds
25
wikitext
text/x-wiki
This page contains information about the '''look of the Brighter Shores Wiki'''.
==Colours==
<div class="color-container">
<div class="color-column">
<h3>Body</h3>
<div class="color-group" style="background: #d1b9ad;">
<p class="variable">--body-border</p>
<p class="hexcode">#d1b9ad</p>
</div>
<div class="color-group dark" style="background: #b1886f;">
<p class="variable">--body-dark</p>
<p class="hexcode">#b1886f</p>
</div>
<div class="color-group" style="background: #d1b9ad;">
<p class="variable">--body-mid</p>
<p class="hexcode">#d1b9ad</p>
</div>
<div class="color-group" style="background: #f5f0eb;">
<p class="variable">--body-light</p>
<p class="hexcode">#f5f0eb</p>
</div>
<div class="color-group" style="background: #fdfcfc;">
<p class="variable">--body-main</p>
<p class="hexcode">#fdfcfc</p>
</div>
<div class="color-group dark" style="background: #173a4d;">
<p class="variable">--body-background-color</p>
<p class="hexcode">#173a4d</p>
</div>
</div>
<div class="color-column">
<h3>Buttons and links</h3>
<div class="color-group dark" style="background: #3c352a;;">
<p class="variable">--button-border</p>
<p class="hexcode">#3c352a;</p>
</div>
<div class="color-group dark" style="background: #18140c;">
<p class="variable">--button-dark</p>
<p class="hexcode">#18140c</p>
</div>
<div class="color-group dark" style="background: #3a301d;">
<p class="variable">--button-light</p>
<p class="hexcode">#3a301d</p>
</div>
<div class="color-group dark" style="background: #605443;">
<p class="variable">--osrsw-brown</p>
<p class="hexcode">#605443</p>
</div>
<div class="color-group dark" style="background: #936039;">
<p class="variable">--link-color</p>
<p class="hexcode">#936039</p>
</div>
<div class="color-group dark" style="background: #52351e;">
<p class="variable">--background-link-color</p>
<p class="hexcode">#52351e</p>
</div>
</div>
c68f0c833c5e7dd9f7a32920287e2ef4c0f1c701
1665
1656
2024-03-31T23:43:43Z
Merds
25
wikitext
text/x-wiki
This page contains information about the '''look of the Brighter Shores Wiki'''.
==Colours==
<div class="color-container">
<div class="color-column">
<h3>Body</h3>
<div class="color-group" style="background: #d1b9ad;">
<p class="variable">--body-border</p>
<p class="hexcode">#d1b9ad</p>
</div>
<div class="color-group dark" style="background: #b1886f;">
<p class="variable">--body-dark</p>
<p class="hexcode">#b1886f</p>
</div>
<div class="color-group" style="background: #d1b9ad;">
<p class="variable">--body-mid</p>
<p class="hexcode">#d1b9ad</p>
</div>
<div class="color-group" style="background: #f5f0eb;">
<p class="variable">--body-light</p>
<p class="hexcode">#f5f0eb</p>
</div>
<div class="color-group" style="background: #fdfcfc;">
<p class="variable">--body-main</p>
<p class="hexcode">#fdfcfc</p>
</div>
<div class="color-group dark" style="background: #173a4d;">
<p class="variable">--body-background-color</p>
<p class="hexcode">#173a4d</p>
</div>
</div>
<div class="color-column">
<h3>Buttons and links</h3>
<div class="color-group dark" style="background: #3c352a;;">
<p class="variable">--button-border</p>
<p class="hexcode">#3c352a;</p>
</div>
<div class="color-group dark" style="background: #18140c;">
<p class="variable">--button-dark</p>
<p class="hexcode">#18140c</p>
</div>
<div class="color-group dark" style="background: #3a301d;">
<p class="variable">--button-light</p>
<p class="hexcode">#3a301d</p>
</div>
<div class="color-group dark" style="background: #605443;">
<p class="variable">--osrsw-brown</p>
<p class="hexcode">#605443</p>
</div>
<div class="color-group dark" style="background: #6e452b;">
<p class="variable">--link-color</p>
<p class="hexcode">#6e452b</p>
</div>
<div class="color-group dark" style="background: #52351e;">
<p class="variable">--background-link-color</p>
<p class="hexcode">#52351e</p>
</div>
</div>
76216bb8cc2c5acee091a927dd5a84c108d33b94
MediaWiki:Common.less/infobox.less
8
26
1658
1622
2024-03-31T23:21:52Z
Merds
25
less
less
:root {
--infobox-text-color: var(--text-color);
--table-header: var(--body-dark);
--table-subheader: var(--body-mid);
--table-body: var(--body-light);
--table-border: var(--body-border);
}
/* Infobox */
.infobox {
font-size: .85em;
width: 300px;
border-collapse: collapse;
float: right;
table-layout: fixed;
margin: 0.5em 0 1em 1em;
.infobox-buttons {
display: flex;
flex-wrap: wrap;
justify-content: center;
grid-gap: 3px;
margin-bottom: 3px;
.button {
background: var(--table-header);
padding: 0 5px;
font-weight: bold;
flex: 1 1 20%;
max-width: 20%;
color: @white;
}
}
tbody {
border: 1px solid var(--table-border);
background: var(--table-body);
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(231, 215, 199, 0.5);
}
.infobox-header {
background: var(--table-header);
padding: 0.5em 0;
text-align: center;
color: @white;
font-size: 1.15em;
font-weight: bold;
line-height: 1.4em;
}
.infobox-image {
text-align: center;
}
.infobox-subheader {
background: var(--table-subheader);
font-weight: bold;
text-align: center;
color: @white;
}
.infobox-padding {
backgound: var(--table-body);
}
tr td:not(.infobox-padding) {
padding: 0.2em 0.5em;
}
th:not(.infobox-header):not(.infobox-subheader):not(.infobox-nested) {
border-right: 2px solid var(--table-subheader);
text-align: right;
padding: 0.2em 0.5em;
}
}
.hidden {
display: none;
}
bc9076ac4ca7502a335fd7fc0d1d63993badb05c
1698
1658
2024-04-02T12:09:43Z
Gau Cho
5
.button-selected, .select
less
less
:root {
--infobox-text-color: var(--text-color);
--table-header: var(--body-dark);
--table-subheader: var(--body-mid);
--table-body: var(--body-light);
--table-border: var(--body-border);
}
/* Infobox */
.infobox {
font-size: .85em;
width: 300px;
border-collapse: collapse;
float: right;
table-layout: fixed;
margin: 0.5em 0 1em 1em;
.infobox-buttons {
display: flex;
flex-wrap: wrap;
justify-content: center;
grid-gap: 3px;
margin-bottom: 3px;
.button {
background: var(--table-header);
padding: 0 5px;
font-weight: bold;
flex: 1 1 20%;
max-width: 20%;
color: @white;
}
.button.button-selected {
background: var(--table-subheader);
}
}
tbody {
border: 1px solid var(--table-border);
background: var(--table-body);
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(231, 215, 199, 0.5);
}
.infobox-header {
background: var(--table-header);
padding: 0.5em 0;
text-align: center;
color: @white;
font-size: 1.15em;
font-weight: bold;
line-height: 1.4em;
}
.infobox-image {
text-align: center;
}
.infobox-subheader {
background: var(--table-subheader);
font-weight: bold;
text-align: center;
color: @white;
}
.infobox-padding {
backgound: var(--table-body);
}
tr td:not(.infobox-padding) {
padding: 0.2em 0.5em;
}
th:not(.infobox-header):not(.infobox-subheader):not(.infobox-nested) {
border-right: 2px solid var(--table-subheader);
text-align: right;
padding: 0.2em 0.5em;
}
select {
max-width: 300px;
}
}
.hidden {
display: none;
}
457527c0a75067283d864eb538d26f969c0b64ee
1701
1698
2024-04-02T14:38:19Z
Gau Cho
5
Swapping button colors
less
less
:root {
--infobox-text-color: var(--text-color);
--table-header: var(--body-dark);
--table-subheader: var(--body-mid);
--table-body: var(--body-light);
--table-border: var(--body-border);
}
/* Infobox */
.infobox {
font-size: .85em;
width: 300px;
border-collapse: collapse;
float: right;
table-layout: fixed;
margin: 0.5em 0 1em 1em;
.infobox-buttons {
display: flex;
flex-wrap: wrap;
justify-content: center;
grid-gap: 3px;
margin-bottom: 3px;
.button {
background: var(--table-subheader);
padding: 0 5px;
font-weight: bold;
flex: 1 1 20%;
max-width: 20%;
color: @white;
}
.button.button-selected {
background: var(--table-header);
}
}
tbody {
border: 1px solid var(--table-border);
background: var(--table-body);
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(231, 215, 199, 0.5);
}
.infobox-header {
background: var(--table-header);
padding: 0.5em 0;
text-align: center;
color: @white;
font-size: 1.15em;
font-weight: bold;
line-height: 1.4em;
}
.infobox-image {
text-align: center;
}
.infobox-subheader {
background: var(--table-subheader);
font-weight: bold;
text-align: center;
color: @white;
}
.infobox-padding {
backgound: var(--table-body);
}
tr td:not(.infobox-padding) {
padding: 0.2em 0.5em;
}
th:not(.infobox-header):not(.infobox-subheader):not(.infobox-nested) {
border-right: 2px solid var(--table-subheader);
text-align: right;
padding: 0.2em 0.5em;
}
select {
max-width: 300px;
}
}
.hidden {
display: none;
}
3a4e1578a5aa8dbcce917464faba91bbe0fd392e
MediaWiki:Common.css
8
30
1660
1623
2024-03-31T23:27:54Z
Merds
25
Updating CSS from [[MediaWiki:Common.less]]
css
text/css
/* <pre> */
:root {
--body-main: #feffff;
--body-light: #fff8ee;
--body-mid: #d1b9ad;
--body-dark: #b1886f;
--body-border: #e9d8cc;
--body-background-color: #173a4d;
--button-background: #605443;
--button-color: #fff;
--button-border: #3c352a;
--button-dark: #18140c;
--button-light: #3a301d;
--sidebar: #cfc08d;
--background-text-color: #e2dbc8;
--background-link-color: #e2bd8a;
--search-box: #efeee6;
--link-color: #936039;
--redlink-color: #ba0000;
--text-color: #2F2828;
--byline-color: #ccc;
--subtle-color: #777;
--admin-blue: #332e75;
--bearcat-green: #13592e;
--awb-purple: #933b96;
--rsw-blue: #438ab6;
--osrsw-brown: #605443;
--thumb-bg: var(--body-light);
--thumb-caption-bg: var(--body-mid);
--sourceeditor-input-background: #fff;
--sourceeditor-background: var(--body-light);
--sourceeditor-background-secondary: var(--body-light);
--sourceeditor-border: var(--body-mid);
--codemirror-gutter-background: var(--body-mid);
}
@font-face {
font-family: 'Lora';
font-weight: 400 700;
font-style: normal;
font-display: swap;
src: url('filepath://Lora.woff2') format('woff2');
}
@font-face {
font-family: 'Lora';
font-weight: 400 700;
font-style: italic;
font-display: swap;
src: url('filepath://Lora-Italic.woff2') format('woff2');
}
:root {
--base-text-color: #36414f;
--base-heading-color: #444e5a;
--base-heading-border: #e4eaee;
--mw-code-background-color: #ddd4bb;
--body-background-image: url('filepath://Wiki_background.jpg');
}
#mw-page-base {
background: none;
}
.mw-body {
background-color: var(--body-main);
color: var(--text-color);
border-color: transparent;
box-shadow: 0 0 7px rgba(0, 0, 0, 0.15);
margin-top: 0;
}
h1,
h2,
h3,
h4,
h5,
h6 {
color: var(--text-color);
}
h1,
h2 {
border-color: var(--sidebar);
}
.mw-body h1,
.mw-body-content h1,
.mw-body-content h2,
.mw-body-content h3,
.mw-body-content h4,
.mw-body-content h5,
.mw-body-content h6 {
font-family: 'Lora', 'Palatino', 'Georgia', serif;
}
.mw-parser-output h2:first-of-type {
clear: left;
}
.mw-footer {
color: var(--background-text-color);
}
.mw-footer li {
color: var(--background-text-color);
}
.mw-footer a,
.mw-footer a:active,
.mw-footer a:visited {
color: var(--background-link-color);
}
::placeholder {
color: var(--subtle-color);
}
a {
color: var(--link-color);
}
a:visited,
a:active {
color: var(--link-color);
}
a.new {
color: var(--redlink-color);
}
a.new:visited {
color: var(--redlink-color);
}
.mw-parser-output a.extiw,
.mw-parser-output a.external {
color: var(--link-color);
}
.mw-parser-output a.extiw:visited,
.mw-parser-output a.external:visited,
.mw-parser-output a.extiw:active,
.mw-parser-output a.external:active {
color: var(--link-color);
}
.jsPurgeLink a.external {
color: var(--link-color);
}
:root {
--errorbox-bg: #feecea;
--errorbox-border: #ee4231;
--warningbox-bg: #fef9de;
--warningbox-border: #f9d000;
--successbox-bg: #ecf8e3;
--successbox-border: #6bc71f;
}
.mw-message-box-error,
.errorbox,
.mw-message-box-warning,
.warningbox,
.mw-message-box-success,
.successbox,
.usermessage {
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
}
.mw-message-box-error,
.errorbox {
background-color: var(--errorbox-bg);
border-color: var(--errorbox-border);
}
.mw-message-box-warning,
.warningbox,
.usermessage {
background-color: var(--warningbox-bg);
border-color: var(--warningbox-border);
}
.mw-message-box-success,
.successbox {
background-color: var(--successbox-bg);
border-color: var(--successbox-border);
}
.catlinks {
background: var(--body-light);
border: 1px solid var(--body-dark);
padding: 8px 15px;
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
}
.catlinks li {
border-color: var(--body-mid);
}
.filehistory a img,
#file img {
background: url("data:image/svg+xml,%3C%3Fxml version='1.0' encoding='UTF-8'%3F%3E%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16'%3E%3Cpath d='M0 0h8v16h8V8H0z' opacity='.13'/%3E%3C/svg%3E") repeat;
}
#file img:hover {
background: none;
}
.mw-highlight {
background: none;
}
.mw-highlight .linenos {
background-color: var(--mw-code-background-color);
color: var(--byline-color);
}
.mw-highlight a:hover .linenos,
.mw-highlight .hll a .linenos {
color: var(--text-color);
}
.mw-content-ltr.mw-highlight-lines pre,
.mw-content-ltr.content .mw-highlight-lines pre {
box-shadow: inset 2.75em 0 0 var(--mw-code-background-color);
}
#pagehistory ul {
list-style: none;
margin: 0;
}
#pagehistory li {
border: 1px solid transparent;
padding: 1px 10px;
margin: 2px 0;
}
#pagehistory li.selected {
background-color: var(--body-light);
color: inherit;
border: 1px dashed var(--body-border);
outline: none;
}
#mw-history-compare > div:first-of-type {
position: -webkit-sticky;
position: sticky;
top: 0;
background-color: var(--body-main);
border-bottom: 1px solid var(--body-dark);
padding: 0.25em 0;
}
.wgl-stickyheader #mw-history-compare > div:first-of-type {
top: 2.5rem;
}
.autocomment,
.autocomment a,
.autocomment a:visited {
color: var(--link-color);
}
li span.deleted,
span.history-deleted {
color: var(--byline-color);
}
.mw-usertoollinks-contribs-no-edits,
.mw-usertoollinks-contribs-no-edits:visited {
color: var(--redlink-color);
}
.CategoryTreeToggle {
color: var(--link-color);
}
body.wgl-stickyheader.action-view .mw-headline:target::before {
display: block;
content: '';
margin-top: -3rem;
height: 3rem;
visibility: hidden;
pointer-events: none;
}
.mw-mmv-post-image {
color: var(--text-color);
background-color: var(--body-main);
}
.mw-mmv-image-metadata {
border-top-color: var(--body-mid);
background-color: var(--body-light);
}
.mw-mmv-dialog,
.mw-mmv-dialog .mw-mmv-dialog-down-arrow,
.mw-mmv-options-dialog .mw-mmv-dialog-down-arrow {
background-color: var(--body-light);
box-shadow: none;
}
.mw-mmv-options-enable-alert {
background-color: var(--body-light);
color: var(--text-color);
}
.mw-mmv-options-dialog-header,
.mw-mmv-options-text-header,
.mw-mmv-options-text-body,
.mw-mmv-options-enable-alert,
.mw-mmv-options-dialog .mw-mmv-disable-confirmation .mw-mmv-options-dialog-header,
.mw-mmv-options-dialog .mw-mmv-disable-confirmation .mw-mmv-options-text-header {
color: var(--text-color);
}
.mw-revslider-container {
border-color: var(--sidebar);
}
.mw-revslider-slider-wrapper {
border-top-color: var(--sidebar);
}
.mw-ui-button {
background-color: var(--ooui-normal);
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
}
.mw-ui-button:not(:disabled):hover,
.mw-ui-button:not(:disabled):active {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
}
.mw-ui-button:not(:disabled):focus {
color: var(--ooui-text);
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent), inset 0 0 0 2px #fff;
}
.mw-ui-button:not(:disabled):visited {
color: var(--ooui-text);
}
.mw-ui-button.mw-ui-progressive:not(:disabled) {
background-color: var(--ooui-progressive);
color: #fff;
border-color: var(--ooui-progressive);
}
.mw-ui-button.mw-ui-progressive:not(:disabled):hover {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
}
.mw-ui-button.mw-ui-progressive:not(:disabled):focus {
box-shadow: inset 0 0 0 1px var(--ooui-accent), inset 0 0 0 2px #fff;
}
.mw-ui-button.mw-ui-progressive:not(:disabled):active,
.mw-ui-button.mw-ui-progressive:not(:disabled).is-on {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
box-shadow: none;
}
.mw-ui-button.mw-ui-destructive:not( :disabled ) {
color: #fff;
}
.mw-ui-button.mw-ui-quiet,
.mw-ui-button.mw-ui-quiet.mw-ui-progressive,
.mw-ui-button.mw-ui-quiet.mw-ui-destructive {
color: var(--text-color);
}
input[type='checkbox']:hover + .mw-ui-button.mw-ui-quiet,
input[type='checkbox']:hover + .mw-ui-button.mw-ui-quiet.mw-ui-progressive,
input[type='checkbox']:hover + .mw-ui-button.mw-ui-quiet.mw-ui-destructive,
.mw-ui-button.mw-ui-quiet:hover,
.mw-ui-button.mw-ui-quiet.mw-ui-progressive:hover,
.mw-ui-button.mw-ui-quiet.mw-ui-destructive:hover {
background-color: rgba(0, 24, 73, 0.02745098);
color: var(--text-color);
border-color: transparent;
}
input[type='checkbox']:focus + .mw-ui-button.mw-ui-quiet,
input[type='checkbox']:focus + .mw-ui-button.mw-ui-quiet.mw-ui-progressive,
input[type='checkbox']:focus + .mw-ui-button.mw-ui-quiet.mw-ui-destructive,
.mw-ui-button.mw-ui-quiet:focus,
.mw-ui-button.mw-ui-quiet.mw-ui-progressive:focus,
.mw-ui-button.mw-ui-quiet.mw-ui-destructive:focus {
color: var(--text-color);
}
input[type='checkbox']:active + .mw-ui-button.mw-ui-quiet,
input[type='checkbox']:active + .mw-ui-button.mw-ui-quiet.mw-ui-progressive,
input[type='checkbox']:active + .mw-ui-button.mw-ui-quiet.mw-ui-destructive,
.mw-ui-button.mw-ui-quiet:active,
.mw-ui-button.mw-ui-quiet.mw-ui-progressive:active,
.mw-ui-button.mw-ui-quiet.mw-ui-destructive:active {
background-color: rgba(0, 36, 73, 0.08235294);
color: var(--text-color);
border-color: #72777d;
}
.mw-ui-input {
background-color: var(--ooui-input);
color: var(--text-color);
border-color: var(--ooui-input-border);
}
.mw-ui-input:hover {
border-color: var(--ooui-input-border--hover);
}
.mw-ui-input::placeholder {
color: var(--byline-color);
}
.mw-content-ltr .redirectText li:first-child {
padding: 0;
background: 0;
}
.mw-content-ltr .redirectText li:first-child::before {
content: '';
background: currentcolor;
-webkit-mask: url("filepath://Redirect-arrow.svg") no-repeat 50% 50% / contain;
mask: url("filepath://Redirect-arrow.svg") no-repeat 50% 50% / contain;
display: inline-block;
width: 47px;
height: 20px;
}
.vector-search-box-inner {
background: var(--body-main) !important;
box-shadow: inset 0 -7px 7px -7px rgba(0, 0, 0, 0.15) !important;
}
.vector-menu-dropdown .vector-menu-heading {
color: #937040 !important;
}
.vector-menu-dropdown .vector-menu-heading:hover {
color: #937040 !important;
}
.vector-menu-dropdown .vector-menu-heading:focus {
color: #937040 !important;
}
:root {
--wikitable-header-bg: var(--body-dark);
--wikitable-border: var(--body-border);
--wikitable-bg: var(--body-light);
--wikitable-bg-lighter: #e9e3d6;
--wikitable-color: var(--text-color);
--table-na-background: rgba(255, 255, 255, 0.3);
--table-na-color: var(--subtle-color);
--table-yes-background: #c3e8a3;
--table-yes-color: #2e5e05;
--table-no-background: #fbc0ba;
--table-no-color: #801c13;
--table-maybe-background: #fcea94;
--table-maybe-color: #786300;
}
.wikitable {
background: var(--wikitable-bg);
color: var(--wikitable-color);
border-color: var(--wikitable-border);
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
}
.wikitable > tr > th,
.wikitable > tr > td,
.wikitable > * > tr > th,
.wikitable > * > tr > td {
border-color: var(--wikitable-border);
}
.wikitable > tr > th.table-noborder,
.wikitable > tr > td.table-noborder,
.wikitable > * > tr > th.table-noborder,
.wikitable > * > tr > td.table-noborder {
border-left-style: hidden;
border-right-style: hidden;
padding-left: 0;
padding-right: 0;
}
.wikitable > tr > th,
.wikitable > * > tr > th {
background-color: var(--wikitable-header-bg);
color: #fff;
}
.tabber .wikitable {
box-shadow: none;
}
.mw_metadata td,
.mw_metadata th {
border-color: var(--wikitable-border);
}
.mw_metadata th {
background-color: var(--wikitable-header-bg);
}
.mw_metadata td {
background-color: var(--wikitable-bg);
}
.mw-datatable {
border-color: var(--wikitable-border);
}
.mw-datatable td,
.mw-datatable th {
border-color: var(--wikitable-border);
}
.mw-datatable th {
background-color: var(--wikitable-header-bg);
}
.mw-datatable td {
background-color: var(--wikitable-bg);
}
.mw-datatable tr:hover td {
background-color: var(--wikitable-bg);
}
table.alternating-rows tr:nth-child(odd),
table.alternating-cols td:nth-child(odd) {
background: var(--wikitable-alternating-bg);
}
.table-na {
background: var(--table-na-background);
color: var(--table-na-color);
vertical-align: middle;
text-align: center;
}
.table-yes {
background: var(--table-yes-background);
color: var(--table-yes-color);
}
.table-positive {
background: var(--table-yes-background);
}
.table-no {
background: var(--table-no-background);
color: var(--table-no-color);
}
.table-negative {
background: var(--table-no-background);
}
.table-maybe {
background: var(--table-maybe-background);
color: var(--table-maybe-color);
}
#mw-allmessagestable .am_actual,
#mw-allmessagestable .am_default {
background-color: var(--wikitable-bg);
}
#mw-allmessagestable .am_default:hover,
#mw-allmessagestable .am_actual:hover,
#mw-allmessagestable tbody:hover td {
background-color: var(--wikitable-bg-lighter);
}
table.wikitable td.no-cell-spacing {
padding: 0;
height: 0;
}
table.wikitable td.no-cell-spacing table {
margin: -1px;
width: calc(100% + 2px);
height: calc(100% + 2px);
}
.plainlist ol,
.plainlist ul {
margin: 0;
}
.plainlist li {
margin-bottom: 0;
list-style: none;
}
table.align-right-1 td:nth-of-type(1),
table.align-right-2 td:nth-of-type(2),
table.align-right-3 td:nth-of-type(3),
table.align-right-4 td:nth-of-type(4),
table.align-right-5 td:nth-of-type(5),
table.align-right-6 td:nth-of-type(6),
table.align-right-7 td:nth-of-type(7),
table.align-right-8 td:nth-of-type(8),
table.align-right-9 td:nth-of-type(9),
table.align-right-10 td:nth-of-type(10),
table.align-right-11 td:nth-of-type(11),
table.align-right-12 td:nth-of-type(12),
table.align-right-13 td:nth-of-type(13),
table.align-right-14 td:nth-of-type(14),
table.align-right-15 td:nth-of-type(15),
table.align-right-16 td:nth-of-type(16),
table.align-right-17 td:nth-of-type(17),
table.align-right-18 td:nth-of-type(18),
table.align-right-19 td:nth-of-type(19),
table.align-right-20 td:nth-of-type(20) {
text-align: right;
}
table.align-center-1 td:nth-of-type(1),
table.align-center-2 td:nth-of-type(2),
table.align-center-3 td:nth-of-type(3),
table.align-center-4 td:nth-of-type(4),
table.align-center-5 td:nth-of-type(5),
table.align-center-6 td:nth-of-type(6),
table.align-center-7 td:nth-of-type(7),
table.align-center-8 td:nth-of-type(8),
table.align-center-9 td:nth-of-type(9),
table.align-center-10 td:nth-of-type(10),
table.align-center-11 td:nth-of-type(11),
table.align-center-12 td:nth-of-type(12),
table.align-center-13 td:nth-of-type(13),
table.align-center-14 td:nth-of-type(14),
table.align-center-15 td:nth-of-type(15),
table.align-center-16 td:nth-of-type(16),
table.align-center-17 td:nth-of-type(17),
table.align-center-18 td:nth-of-type(18),
table.align-center-19 td:nth-of-type(19),
table.align-center-20 td:nth-of-type(20) {
text-align: center;
}
table.align-left-1 td:nth-of-type(1),
table.align-left-2 td:nth-of-type(2),
table.align-left-3 td:nth-of-type(3),
table.align-left-4 td:nth-of-type(4),
table.align-left-5 td:nth-of-type(5),
table.align-left-6 td:nth-of-type(6),
table.align-left-7 td:nth-of-type(7),
table.align-left-8 td:nth-of-type(8),
table.align-left-9 td:nth-of-type(9),
table.align-left-10 td:nth-of-type(10),
table.align-left-11 td:nth-of-type(11),
table.align-left-12 td:nth-of-type(12),
table.align-left-13 td:nth-of-type(13),
table.align-left-14 td:nth-of-type(14),
table.align-left-15 td:nth-of-type(15),
table.align-left-16 td:nth-of-type(16),
table.align-left-17 td:nth-of-type(17),
table.align-left-18 td:nth-of-type(18),
table.align-left-19 td:nth-of-type(19),
table.align-left-20 td:nth-of-type(20) {
text-align: left;
}
:root {
--diff-addedline-border-color: #438ab5;
--diff-addedline-background: #bddff2;
--diff-addedline-color: #000;
--diff-deletedline-border-color: #379541;
--diff-deletedline-background: #c1edbf;
--diff-deletedline-color: #000;
--diff-context-border-color: var(--body-mid);
--diff-context-background: var(--body-mid);
}
.diff-context {
border-color: var(--diff-context-border-color);
background: var(--diff-context-background);
color: inherit;
}
.diff-addedline {
border-color: var(--diff-addedline-border-color);
}
.diff-addedline .diffchange {
background: var(--diff-addedline-background);
color: var(--diff-addedline-color);
}
.diff-deletedline {
border-color: var(--diff-deletedline-border-color);
}
.diff-deletedline .diffchange {
background: var(--diff-deletedline-background);
color: var(--diff-deletedline-color);
}
.mw-diff-movedpara-left:after,
.mw-diff-movedpara-right:after {
color: var(--text-color);
}
.mw-notification {
background-color: var(--body-light);
border-color: var(--body-border);
color: var(--text-color);
}
.mw-echo-ui-notificationsInboxWidget-toolbarWrapper {
background: var(--body-main);
}
.mw-body-content .mw-echo-ui-datedSubGroupListWidget-title-secondary {
color: var(--byline-color);
}
.mw-echo-ui-pageNotificationsOptionWidget.oo-ui-optionWidget-selected {
background-color: var(--ooui-normal);
color: var(--ooui-accent);
}
.mw-echo-ui-pageNotificationsOptionWidget-label-count {
background-color: var(--ooui-normal);
color: var(--byline-color);
}
.oo-ui-optionWidget-selected .mw-echo-ui-pageNotificationsOptionWidget-label-count {
color: var(--ooui-accent);
}
.mw-echo-ui-pageNotificationsOptionWidget.oo-ui-optionWidget-highlighted {
background-color: var(--ooui-normal);
color: var(--text-color);
}
.mw-echo-ui-crossWikiUnreadFilterWidget {
border-color: var(--body-border);
}
.mw-echo-ui-crossWikiUnreadFilterWidget-subtitle {
color: var(--byline-color);
}
.mw-echo-ui-notificationBadgeButtonPopupWidget-popup > .oo-ui-popupWidget-popup > .oo-ui-popupWidget-head,
.mw-echo-ui-notificationBadgeButtonPopupWidget-popup > .oo-ui-popupWidget-popup > .oo-ui-popupWidget-footer {
border-color: var(--ooui-interface-border);
}
.mw-echo-ui-notificationBadgeButtonPopupWidget-popup > .oo-ui-popupWidget-popup > .oo-ui-popupWidget-footer .mw-echo-ui-notificationBadgeButtonPopupWidget-footer-buttons .oo-ui-buttonElement:last-child {
border-left-color: var(--ooui-normal-border);
}
.mw-echo-ui-notificationItemWidget {
background-color: var(--ooui-normal);
border-color: var(--ooui-normal-border);
}
.mw-echo-ui-notificationItemWidget:hover,
.mw-echo-ui-notificationItemWidget-unread:hover {
background-color: var(--ooui-normal--hover);
}
.mw-echo-ui-notificationItemWidget:last-child {
border-bottom-color: var(--ooui-normal-border);
}
.mw-echo-ui-notificationItemWidget-unread {
background-color: var(--search-box);
}
.mw-echo-ui-crossWikiNotificationItemWidget-group,
.mw-echo-ui-bundleNotificationItemWidget-group {
background-color: var(--ooui-interface);
}
.mw-echo-ui-toggleReadCircleButtonWidget-circle {
background-color: var(--ooui-progressive);
}
.mw-echo-ui-toggleReadCircleButtonWidget:hover .mw-echo-ui-toggleReadCircleButtonWidget-circle {
background-color: var(--ooui-progressive--hover);
}
.mw-echo-ui-toggleReadCircleButtonWidget-circle-unread {
background-color: var(--ooui-normal);
border-color: var(--ooui-normal-border);
}
.mw-echo-ui-notificationItemWidget-content-message-header,
.mw-echo-ui-notificationItemWidget-content-message-body,
.mw-echo-ui-menuItemWidget > .oo-ui-buttonElement-button > .oo-ui-labelElement-label,
.mw-echo-ui-notificationItemWidget-content-actions-timestamp {
color: var(--ooui-text);
}
.mw-echo-ui-bundleNotificationItemWidget-group {
background-color: var(--body-main);
}
@keyframes unseen-fadeout-to-unread {
from {
background-color: var(--wikitable-bg-lighter);
}
to {
background-color: var(--search-box);
}
}
@keyframes unseen-fadeout-to-read {
from {
background-color: var(--wikitable-bg-lighter);
}
to {
background-color: var(--body-main);
}
}
.mwe-popups {
background: var(--body-light);
}
.mwe-popups .mwe-popups-container {
color: var(--text-color);
background: var(--body-light);
}
.mwe-popups .mwe-popups-container.flipped-x-y:before,
.mwe-popups .mwe-popups-container.flipped-y:before {
border-top: none;
}
.mwe-popups .mwe-popups-container.mwe-popups-no-image-tri:before {
border-bottom: none;
}
.mwe-popups .mwe-popups-container.flipped-x-y:after,
.mwe-popups .mwe-popups-container.flipped-y:after {
border-top-color: var(--body-light);
}
.mwe-popups .mwe-popups-container.mwe-popups-no-image-tri:after {
border-bottom-color: var(--body-light);
}
.mwe-popups .mwe-popups-settings-icon:hover,
.mwe-popups .mwe-popups-settings-icon:active {
background-color: var(--ooui-normal--hover);
}
.mwe-popups .mw-ui-icon-element:not(.disabled):hover {
background: none;
}
.mwe-popups .mwe-popups-extract {
color: var(--text-color);
}
.mwe-popups .mwe-popups-extract[dir='ltr']:after {
background-image: linear-gradient(to right, rgba(49, 62, 89, 0), var(--body-light) 50%);
}
.mwe-popups-overlay {
background-color: var(--ooui-window-background);
}
#mwe-popups-settings {
background: var(--ooui-interface);
border-color: var(--ooui-interface-border);
color: var(--text-color);
}
#mwe-popups-settings header {
border-color: var(--ooui-interface-border);
}
#mwe-popups-settings main#mwe-popups-settings-form p {
color: var(--byline-color);
}
#mwe-popups-settings main#mwe-popups-settings-form form label > span {
color: var(--ooui-text);
}
:root {
--smw-ask-options-even-bg: var(--body-mid);
--smw-ask-options-odd-bg: var(--body-light);
--smw-ask-action-btn-lblue-bg: var(--body-main);
--smw-ask-action-btn-lblue-color: #000;
--smw-ask-action-btn-lblue-border-color: var(--body-light);
--smw-ask-action-btn-dblue-bg: var(--body-light);
--smw-ask-action-btn-dblue-color: #fff;
--smw-ask-action-btn-dblue-border-color: var(--button-border);
}
.smw-ask-condition fieldset,
.smw-ask-printhead fieldset {
border-color: var(--sidebar);
}
.smw-ask-search fieldset,
.smw-ask-format fieldset,
.smw-ask-options fieldset {
border-color: var(--sidebar);
}
.strike > span:before,
.strike > span:after {
background: var(--sidebar);
}
.smw-ask-options-fields tr td {
background-color: var(--smw-ask-options-even-bg);
}
.smw-ask-options-fields tr:nth-child(odd) td {
background-color: var(--smw-ask-options-odd-bg);
}
.smw-ask-action-btn.smw-ask-action-btn-lblue,
.smw-ask-action-btn.smw-ask-action-btn-lblue:hover,
.smw-ask-action-btn.smw-ask-action-btn-lblue:visited {
background-color: var(--smw-ask-action-btn-lblue-bg);
color: var(--smw-ask-action-btn-lblue-color);
border-color: var(--smw-ask-action-btn-lblue-border-color);
}
.smw-ask-action-btn.smw-ask-action-btn-dblue,
.smw-ask-action-btn.smw-ask-action-btn-dblue:hover,
.smw-ask-action-btn.smw-ask-action-btn-dblue:visited {
background-color: var(--smw-ask-action-btn-dblue-bg);
color: var(--smw-ask-action-btn-dblue-color);
border-color: var(--smw-ask-action-btn-dblue-border-color);
}
.smw-ask-query textarea,
.smw-ask-actions textarea {
background-color: var(--ooui-interface);
border-color: var(--ooui-interface-border);
color: var(--ooui-text);
}
.smw-ask-query-format select {
background-color: var(--ooui-interface);
border: 1px solid var(--ooui-interface-border);
color: var(--ooui-text);
}
.smw-ask-toplinks {
background-color: var(--body-mid);
}
.smw-ask-toplinks span.smw-icon-info {
background: none;
padding: 0 !important;
}
.smw-ask-toplinks span.smw-icon-info::before {
content: '';
background: var(--text-color);
-webkit-mask: url("data:image/svg+xml,%3C%3Fxml version='1.0' encoding='UTF-8'%3F%3E%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 20 20'%3E%3Ctitle%3Einfo%3C/title%3E%3Cpath d='M10 0C4.477 0 0 4.477 0 10s4.477 10 10 10 10-4.477 10-10S15.523 0 10 0zM9 5h2v2H9zm0 4h2v6H9z'/%3E%3C/svg%3E") no-repeat 50% 50% / contain;
mask: url("data:image/svg+xml,%3C%3Fxml version='1.0' encoding='UTF-8'%3F%3E%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 20 20'%3E%3Ctitle%3Einfo%3C/title%3E%3Cpath d='M10 0C4.477 0 0 4.477 0 10s4.477 10 10 10 10-4.477 10-10S15.523 0 10 0zM9 5h2v2H9zm0 4h2v6H9z'/%3E%3C/svg%3E") no-repeat 50% 50% / contain;
padding: 0 0 3px 18px;
}
.smw-ask-options-row-odd {
background-color: var(--body-light);
}
.smw-ask-options-row-even {
background-color: var(--body-mid);
}
#options-toggle:not(:checked) + #options-list .options-parameter-list:after {
background-image: linear-gradient(to bottom, transparent, var(--body-mid) 90%);
}
.smw-ask-button-submit input {
background-color: var(--ooui-normal);
border-color: var(--ooui-normal-border);
color: var(--text-color);
}
.smw-ask-button-submit input:hover,
.smw-ask-button-lgrey:hover {
background-color: var(--ooui-normal--hover);
border-color: var(--ooui-normal-border);
}
input.smw-ask-action-btn.smw-ask-action-btn-dblue {
background-color: var(--ooui-normal);
border-color: var(--ooui-normal-border);
color: var(--ooui-text);
}
a.smw-ask-action-btn.smw-ask-action-btn-lblue {
background-color: var(--body-mid);
border-color: var(--body-mid);
color: var(--ooui-text);
}
a.smw-ask-action-btn.smw-ask-action-btn-lblue:visited {
background-color: var(--body-mid);
border-color: var(--body-mid);
color: var(--ooui-text);
}
a.smw-ask-action-btn.smw-ask-action-btn-lblue:hover {
background-color: var(--body-mid);
border-color: var(--body-mid);
color: var(--ooui-text);
}
a.smw-ask-action-btn-lgrey {
background-color: var(--ooui-normal);
border-color: var(--ooui-normal-border);
color: var(--ooui-text);
}
a.smw-ask-action-btn-lgrey:hover {
background-color: var(--ooui-normal--hover);
border-color: var(--ooui-normal-border);
color: var(--ooui-text);
}
.smw-callout-error {
background-color: var(--errorbox-bg);
border-color: var(--errorbox-border);
}
.smw-callout-info {
background-color: var(--body-light);
border-color: var(--body-dark);
}
.smw-callout-success {
background-color: var(--successbox-bg);
border-color: var(--successbox-border);
}
.smw-callout-warning {
background-color: var(--warningbox-bg);
border-color: var(--warningbox-bg);
}
.smw-tabs input.nav-tab:checked + label.nav-label,
.smw-tabs input.nav-tab:checked + label.nav-label:hover {
color: inherit;
}
#tab-smw-property-value:checked + label.nav-label .usage-count {
color: #fff;
background-color: var(--ooui-progressive);
}
#tab-smw-property-value:checked + label.nav-label .usage-count.moderate {
color: #fff;
background-color: #b55e0c;
border-color: #b55e0c;
}
#tab-smw-property-value:checked + label.nav-label .usage-count.high {
color: #fff;
background-color: #9f261e;
border-color: #9f261e;
}
.smw-property-page-results .header-title {
background-color: var(--ooui-interface);
border-bottom-color: var(--ooui-interface-border);
color: var(--ooui-text);
}
.smw-property-page-results .value-row:hover {
background-color: var(--ooui-normal--hover);
}
.smw-property-page-results .smw-table .header-row {
color: var(--text-color);
}
.tippy-tooltip.light-border-theme {
background-color: var(--body-light);
color: var(--text-color);
}
.tippy-tooltip.light-border-theme .tippy-arrow {
border-top-color: var(--body-light);
}
.tippy-tooltip.light-border-theme .tippy-arrow:after {
border-top-color: var(--body-light);
}
.tippy-header {
background-color: var(--body-dark);
border-bottom-color: var(--body-mid);
}
.smw-ui-input-filter {
background-color: var(--ooui-interface);
border-color: var(--ooui-interface-border);
color: var(--ooui-text);
}
.smw-ui-input-filter input {
border-left-color: var(--ooui-interface-border) !important;
color: var(--ooui-text) !important;
}
.smw-ui-pagination .page-link.link-disabled {
background-color: var(--ooui-disabled);
border-color: var(--ooui-disabled-border);
color: var(--subtle-color);
}
.smw-ui-pagination .page-link {
background-color: var(--ooui-normal);
border-color: var(--ooui-normal-border);
color: var(--link-color);
}
.smw-ui-pagination .page-link:hover {
background-color: var(--ooui-normal--hover);
border-color: var(--ooui-normal-border);
color: var(--link-color);
}
.smw-ui-pagination .page-link.link-active {
color: #fff;
background-color: var(--ooui-progressive);
border-color: var(--ooui-progressive);
}
.smw-tabs input.nav-tab:checked + label.nav-label {
border-color: var(--ooui-normal-border);
}
.smw-tabs section,
.smw-tabs .subtab-content {
border-top-color: var(--ooui-normal-border);
}
.smw-column-header {
color: var(--text-color);
}
.smw-factbox {
background: var(--body-main);
border-color: transparent;
}
.mw-body .mw-indicators #mw-indicator-smw-entity-examiner.mw-indicator .smw-indicator-vertical-bar-loader {
display: none;
}
.smwb-theme-light .smwb-title,
.smwb-theme-light .smwb-center,
.smwb-theme-light .smwb-actions,
.smwb-theme-light .smwb-prophead {
background-color: var(--body-mid);
}
.smwb-theme-light .smwb-factbox {
border-left-color: var(--body-mid);
}
.smwb-theme-light .smwb-ifactbox {
border-right-color: var(--body-mid);
}
.smwb-theme-light .smwb-propval {
background-color: var(--body-light);
}
.smwb-action-separator {
border-color: var(--wikitable-border);
}
.smwb-bottom {
border-bottom: 1px solid var(--wikitable-border);
}
.smwb-ifactbox .smwb-cell,
.smwb-factbox .smwb-cell {
border-top: 1px solid var(--wikitable-border);
}
.smwb-propvalue .smwb-prophead,
.smwb-ipropvalue .smwb-prophead,
.smwb-propvalue .smwb-propval,
.smwb-ipropvalue .smwb-propval {
font-size: 0.9em;
}
:root {
--filter-black-to-link: invert(36%) sepia(58%) saturate(433%) hue-rotate(344deg) brightness(100%) contrast(91%);
}
#bodyContent span.smwbrowse a {
color: black;
background-image: url('filepath://Smwbrowse.svg');
filter: var(--filter-black-to-link);
}
#bodyContent span.smwbrowse a:hover {
color: black;
background-image: url('filepath://Smwbrowse-hover.svg');
text-decoration: underline;
}
#bodyContent span.smwsearch a {
color: black;
filter: var(--filter-black-to-link);
background-image: url('filepath://Smwsearch.svg');
}
#bodyContent span.smwsearch a:hover {
color: black;
background-image: url('filepath://Smwsearch-hover.svg');
text-decoration: underline;
}
:root {
--tabber-tab-bg: var(--body-light);
--tabber-tab-border-color: var(--body-border);
--tabber-active-tab-bg: var(--body-light);
--tabber-active-tab-color: var(--text-color);
--tabber-active-tab-hover-bg: var(--body-light);
--tabber-active-tab-hover-border-color: var(--body-border);
--tabber-active-tab-hover-color: var(--text-color);
--tabber-active-tab-border-hider-color: var(--body-light);
--tabber-inactive-tab-bg: var(--body-background-color);
--tabber-inactive-tab-border-color: var(--body-border);
--tabber-inactive-tab-color: var(--text-color);
--tabber-inactive-tab-hover-bg: var(--body-light);
--tabber-inactive-tab-hover-border-color: var(--body-border);
}
.tabber {
margin: 1em 0;
}
.tabber .tabbertab {
background-color: var(--tabber-tab-bg);
border: 1px solid var(--tabber-tab-border-color);
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
padding: 1em 1.5em;
}
ul.tabbernav {
border: none;
margin-left: 2em;
margin-bottom: 0;
margin-right: 2em;
padding: 0;
font-family: inherit;
}
ul.tabbernav li.tabberactive > a {
background-color: var(--tabber-active-tab-bg);
color: var(--tabber-active-tab-color);
border-bottom: none;
position: relative;
}
ul.tabbernav li.tabberactive > a:hover {
color: var(--tabber-active-tab-hover-color);
background-color: var(--tabber-active-tab-hover-bg);
border-color: var(--tabber-active-tab-hover-border-color);
border-bottom: none;
}
ul.tabbernav li.tabberactive > a::after {
content: '';
position: absolute;
left: 0;
right: 0;
bottom: -1px;
border-bottom: 2px solid var(--tabber-active-tab-border-hider-color);
}
ul.tabbernav li a {
background-color: var(--tabber-inactive-tab-bg);
border-bottom: transparent;
border-color: var(--tabber-inactive-tab-border-color);
color: var(--tabber-inactive-tab-color);
display: inline-block;
font-size: 110%;
padding: 0.5em 1em;
}
ul.tabbernav li a:hover {
background-color: var(--tabber-inactive-tab-hover-bg);
border-color: var(--tabber-inactive-tab-hover-border-color);
}
ul.tabbernav li a:link,
ul.tabbernav li a:visited {
color: var(--tabber-inactive-tab-color);
}
:root {
--ooui-text: var(--text-color);
--ooui-interface: var(--body-light);
--ooui-interface-border: var(--body-border);
--ooui-window-background: rgba(255, 255, 255, 0.5);
--ooui-normal: #d5c7ad;
--ooui-normal--hover: #dfd5c1;
--ooui-normal-border: #b8a282;
--ooui-progressive: #605443;
--ooui-progressive--hover: #7e6e58;
--ooui-accent: var(--link-color);
--ooui-input: #fff;
--ooui-input-border: #b8a282;
--ooui-input-border--hover: #8a724f;
--ooui-disabled: #d1cdc5;
--ooui-disabled-border: #c2b9ab;
--ooui-disabled-text: var(--subtle-color);
--ooui-pending-background-image: repeating-linear-gradient(-45deg, var(--search-box), var(--search-box) 20px, var(--body-main) 20px, var(--body-main) 30px);
}
.oo-ui-widget {
color: var(--ooui-text);
}
.oo-ui-checkboxInputWidget [type='checkbox'] + span,
.oo-ui-radioInputWidget [type='radio'] + span {
background-color: var(--ooui-input);
border-color: var(--ooui-input-border);
}
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:checked + span,
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:indeterminate + span {
background-color: var(--ooui-progressive);
border-color: var(--ooui-progressive);
}
.oo-ui-radioInputWidget.oo-ui-widget-enabled [type='radio']:checked + span {
border-color: var(--ooui-progressive);
}
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:checked:hover + span,
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:indeterminate:hover + span {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
}
.oo-ui-radioInputWidget.oo-ui-widget-enabled [type='radio']:checked:hover + span {
border-color: var(--ooui-progressive--hover);
}
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:hover + span,
.oo-ui-radioInputWidget.oo-ui-widget-enabled [type='radio']:hover + span {
border-color: var(--ooui-accent);
}
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:focus + span {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:active + span,
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:checked:active + span,
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:indeterminate:active + span {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
box-shadow: inset 0 0 0 1px var(--ooui-progressive--hover);
}
.oo-ui-radioInputWidget.oo-ui-widget-enabled [type='radio']:active + span {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
}
.oo-ui-radioInputWidget.oo-ui-widget-enabled [type='radio']:checked:active + span {
border-color: var(--ooui-progressive--hover);
box-shadow: inset 0 0 0 1px var(--ooui-progressive--hover);
}
.oo-ui-radioInputWidget.oo-ui-widget-enabled [type='radio']:checked:active + span:before {
border-color: var(--ooui-progressive--hover);
}
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:checked:focus + span,
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:indeterminate:focus + span {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent), inset 0 0 0 2px #fff;
}
.oo-ui-checkboxInputWidget [type='checkbox']:disabled + span,
.oo-ui-radioInputWidget [type='radio']:disabled + span {
background-color: var(--ooui-disabled);
border-color: var(--ooui-disabled);
}
.oo-ui-dropdownWidget-handle {
border-color: var(--ooui-normal-border);
}
.oo-ui-dropdownWidget.oo-ui-widget-enabled .oo-ui-dropdownWidget-handle {
background-color: var(--ooui-normal);
color: var(--ooui-text);
}
.oo-ui-dropdownWidget.oo-ui-widget-enabled .oo-ui-dropdownWidget-handle:hover {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
}
.oo-ui-dropdownWidget.oo-ui-widget-enabled .oo-ui-dropdownWidget-handle:active {
color: var(--ooui-text);
}
.oo-ui-dropdownWidget.oo-ui-widget-enabled .oo-ui-dropdownWidget-handle:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-dropdownWidget.oo-ui-widget-enabled.oo-ui-dropdownWidget-open .oo-ui-dropdownWidget-handle {
background-color: var(--ooui-normal--hover);
}
.oo-ui-dropdownWidget.oo-ui-widget-disabled .oo-ui-dropdownWidget-handle {
color: var(--ooui-disabled-text);
text-shadow: none;
border-color: var(--ooui-disabled-border);
background-color: var(--ooui-disabled);
}
.oo-ui-dropdownInputWidget select {
border-color: var(--ooui-normal-border);
}
.oo-ui-dropdownInputWidget option {
background-color: var(--ooui-interface);
}
.oo-ui-dropdownInputWidget.oo-ui-widget-enabled {
background-color: var(--ooui-normal);
}
.oo-ui-dropdownInputWidget.oo-ui-widget-enabled:hover {
background-color: var(--ooui-normal--hover);
}
.oo-ui-dropdownInputWidget.oo-ui-widget-enabled select {
color: var(--ooui-text);
}
.oo-ui-dropdownInputWidget.oo-ui-widget-enabled select:hover,
.oo-ui-dropdownInputWidget.oo-ui-widget-enabled select:active {
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
}
.oo-ui-dropdownInputWidget.oo-ui-widget-enabled select:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-labelWidget.oo-ui-inline-help {
color: var(--byline-color);
}
.oo-ui-menuSelectWidget {
background-color: var(--ooui-interface);
border-color: var(--ooui-interface-border);
}
.oo-ui-menuSelectWidget-frameless {
box-shadow: inset 0 -1px 0 0 var(--ooui-normal-border);
}
.oo-ui-menuSectionOptionWidget {
color: var(--byline-color);
}
.oo-ui-menuOptionWidget.oo-ui-optionWidget-highlighted,
.oo-ui-menuOptionWidget.oo-ui-optionWidget-selected {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
}
.oo-ui-menuOptionWidget.oo-ui-optionWidget-selected.oo-ui-menuOptionWidget.oo-ui-optionWidget-highlighted,
.oo-ui-menuOptionWidget.oo-ui-optionWidget-pressed.oo-ui-menuOptionWidget.oo-ui-optionWidget-highlighted {
color: var(--ooui-accent);
}
.oo-ui-menuOptionWidget.oo-ui-widget-enabled.oo-ui-optionWidget {
color: var(--ooui-text);
}
.oo-ui-messageDialog-title {
color: inherit;
}
.oo-ui-messageWidget.oo-ui-messageWidget-block.oo-ui-flaggedElement-error {
background-color: var(--errorbox-bg);
border-color: var(--errorbox-border);
}
.oo-ui-messageWidget.oo-ui-messageWidget-block.oo-ui-flaggedElement-warning {
background-color: var(--warningbox-bg);
border-color: var(--warningbox-border);
}
.oo-ui-messageWidget.oo-ui-messageWidget-block.oo-ui-flaggedElement-success {
background-color: var(--successbox-bg);
border-color: var(--successbox-border);
}
.oo-ui-messageWidget.oo-ui-messageWidget-block.oo-ui-flaggedElement-notice {
background-color: var(--messagebox-info-background);
border-color: var(--messagebox-info-border);
}
.oo-ui-messageWidget.oo-ui-flaggedElement-error:not(.oo-ui-messageWidget-block),
.oo-ui-messageWidget.oo-ui-flaggedElement-success:not(.oo-ui-messageWidget-block) {
color: var(--ooui-text);
}
.oo-ui-optionWidget.oo-ui-widget-disabled {
color: var(--ooui-disabled-text);
}
.oo-ui-outlineControlsWidget {
background-color: var(--ooui-normal);
}
.oo-ui-outlineOptionWidget.oo-ui-optionWidget-highlighted {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
}
.oo-ui-popupWidget-popup {
background-color: var(--ooui-interface);
border-color: var(--ooui-interface-border);
}
.oo-ui-popupWidget-anchored-top .oo-ui-popupWidget-anchor:after {
border-bottom-color: var(--ooui-interface);
}
.oo-ui-popupWidget-anchored-top .oo-ui-popupWidget-anchor:before {
border-bottom-color: var(--ooui-interface-border);
}
.oo-ui-popupWidget-anchored-bottom .oo-ui-popupWidget-anchor:after {
border-top-color: var(--ooui-interface);
}
.oo-ui-popupWidget-anchored-bottom .oo-ui-popupWidget-anchor:before {
border-top-color: var(--ooui-interface-border);
}
.oo-ui-popupWidget-anchored-start .oo-ui-popupWidget-anchor:after {
border-right-color: var(--ooui-interface);
}
.oo-ui-popupWidget-anchored-start .oo-ui-popupWidget-anchor:before {
border-right-color: var(--ooui-interface-border);
}
.oo-ui-popupWidget-anchored-end .oo-ui-popupWidget-anchor:after {
border-left-color: var(--ooui-interface);
}
.oo-ui-popupWidget-anchored-end .oo-ui-popupWidget-anchor:before {
border-left-color: var(--ooui-interface-border);
}
.oo-ui-searchWidget-query {
border-bottom-color: var(--ooui-interface-border);
}
.oo-ui-selectFileWidget-dropTarget {
background-color: var(--ooui-interface);
border-color: var(--ooui-interface-border);
}
.oo-ui-selectFileWidget.oo-ui-widget-enabled.oo-ui-selectFileWidget-dropTarget {
background-color: var(--ooui-interface);
}
.oo-ui-selectFileWidget.oo-ui-widget-enabled.oo-ui-selectFileWidget-dropTarget:hover {
border-color: var(--ooui-input-border--hover);
}
.oo-ui-tabOptionWidget {
color: var(--ooui-text);
}
.oo-ui-tabSelectWidget-framed .oo-ui-tabOptionWidget.oo-ui-optionWidget-selected {
background-color: var(--body-dark);
color: var(--ooui-text);
}
.oo-ui-tabSelectWidget-framed .oo-ui-tabOptionWidget.oo-ui-optionWidget-selected .oo-ui-labelElement-label {
border-bottom-color: var(--body-border);
}
.oo-ui-tabSelectWidget-framed .oo-ui-tabOptionWidget.oo-ui-widget-enabled:hover,
.oo-ui-tabSelectWidget-framed .oo-ui-tabOptionWidget.oo-ui-widget-enabled:active {
background-color: var(--body-light);
color: var(--ooui-text);
}
.oo-ui-tabSelectWidget-framed .oo-ui-tabOptionWidget.oo-ui-widget-enabled.oo-ui-optionWidget-selected:hover {
background-color: var(--body-dark);
}
.oo-ui-tabSelectWidget-frameless .oo-ui-tabOptionWidget.oo-ui-optionWidget-selected {
color: var(--ooui-progressive);
box-shadow: inset 0 -2px 0 0 var(--ooui-progressive);
}
.oo-ui-tabSelectWidget-frameless .oo-ui-tabOptionWidget.oo-ui-optionWidget-selected:hover,
.oo-ui-tabSelectWidget-frameless .oo-ui-tabOptionWidget.oo-ui-optionWidget-selected:focus {
color: var(--ooui-progressive--hover);
box-shadow: inset 0 -2px 0 0 var(--ooui-progressive--hover);
}
.oo-ui-tabSelectWidget-framed {
background: none;
border-bottom: 1px solid var(--ooui-interface-border);
}
.oo-ui-tabSelectWidget-frameless {
box-shadow: inset 0 -1px 0 0 var(--ooui-interface-border);
}
.oo-ui-tabSelectWidget-mobile {
}
.oo-ui-tabSelectWidget-mobile.oo-ui-tabSelectWidget-framed:after {
background: var(--mobile-navbox-linear-gradient);
}
.oo-ui-tabSelectWidget-mobile.oo-ui-tabSelectWidget-frameless:after {
background: var(--mobile-navbox-linear-gradient);
}
.oo-ui-tagItemWidget {
border-color: var(--ooui-normal-border);
}
.oo-ui-tagItemWidget.oo-ui-widget-enabled {
color: var(--ooui-text);
}
.oo-ui-tagItemWidget.oo-ui-widget-enabled:hover {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
}
.oo-ui-tagItemWidget.oo-ui-widget-enabled:not( .oo-ui-tagItemWidget-fixed ) {
background-color: var(--ooui-normal);
}
.oo-ui-tagItemWidget.oo-ui-widget-enabled .oo-ui-buttonElement-button:hover {
background-color: var(--ooui-normal--hover);
}
.oo-ui-tagMultiselectWidget.oo-ui-widget-enabled {
background-color: var(--ooui-interface);
}
.oo-ui-tagMultiselectWidget.oo-ui-widget-enabled.oo-ui-tagMultiselectWidget-outlined {
background-color: var(--ooui-normal);
}
.oo-ui-tagMultiselectWidget.oo-ui-widget-enabled.oo-ui-tagMultiselectWidget-outlined .oo-ui-tagItemWidget.oo-ui-widget-enabled {
background-color: var(--ooui-interface);
}
.oo-ui-textInputWidget .oo-ui-inputWidget-input {
background-color: var(--ooui-input);
color: var(--ooui-text);
border-color: var(--ooui-input-border);
}
.oo-ui-textInputWidget.oo-ui-widget-enabled .oo-ui-inputWidget-input::placeholder {
color: var(--subtle-color);
}
.oo-ui-textInputWidget.oo-ui-widget-enabled .oo-ui-inputWidget-input:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-textInputWidget.oo-ui-widget-enabled .oo-ui-inputWidget-input[readonly]:not(.oo-ui-pendingElement-pending) {
background-color: var(--ooui-disabled);
color: var(--ooui-disabled-text);
}
.oo-ui-textInputWidget.oo-ui-widget-enabled:hover .oo-ui-inputWidget-input {
border-color: var(--ooui-input-border--hover);
}
.oo-ui-textInputWidget.oo-ui-widget-enabled:hover .oo-ui-inputWidget-input:focus {
border-color: var(--ooui-accent);
}
@media screen and (min-width: 0) {
.oo-ui-textInputWidget.oo-ui-widget-enabled textarea.oo-ui-inputWidget-input:focus {
outline: 1px solid var(--ooui-accent);
}
}
.oo-ui-textInputWidget.oo-ui-widget-disabled .oo-ui-inputWidget-input {
background-color: var(--ooui-disabled);
color: var(--ooui-disabled-text);
text-shadow: none;
border-color: var(--ooui-disabled-border);
}
.oo-ui-toggleSwitchWidget {
background-color: var(--ooui-input);
border-color: var(--ooui-input-border);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled .oo-ui-toggleSwitchWidget-grip {
background-color: var(--ooui-input);
border-color: var(--ooui-input-border);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:hover {
background-color: var(--ooui-input);
border-color: var(--ooui-accent);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:hover .oo-ui-toggleSwitchWidget-grip {
background-color: var(--ooui-input);
border-color: var(--ooui-accent);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:active,
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:active:hover,
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:active:focus {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
box-shadow: inset 0 0 0 1px var(--ooui-progressive--hover);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:active .oo-ui-toggleSwitchWidget-grip,
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:active:hover .oo-ui-toggleSwitchWidget-grip,
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:active:focus .oo-ui-toggleSwitchWidget-grip {
background-color: var(--ooui-input);
border-color: var(--ooui-input);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:focus .oo-ui-toggleSwitchWidget-grip {
border-color: var(--ooui-accent);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled.oo-ui-toggleWidget-on {
background-color: var(--ooui-progressive);
border-color: var(--ooui-progressive);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled.oo-ui-toggleWidget-on .oo-ui-toggleSwitchWidget-grip {
background-color: var(--ooui-input);
border-color: var(--ooui-input);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled.oo-ui-toggleWidget-on:hover {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled.oo-ui-toggleWidget-on:active,
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled.oo-ui-toggleWidget-on:active:hover {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled.oo-ui-toggleWidget-on:focus {
border-color: var(--ooui-progressive);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled.oo-ui-toggleWidget-on:focus::before {
border-color: #fff;
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-disabled {
background-color: var(--ooui-disabled);
border-color: var(--ooui-disabled);
}
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled > .oo-ui-buttonElement-button {
color: var(--ooui-text);
}
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled > .oo-ui-buttonElement-button:hover {
color: var(--ooui-text);
}
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled > .oo-ui-buttonElement-button:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled.oo-ui-buttonElement-pressed > input.oo-ui-buttonElement-button,
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled > .oo-ui-buttonElement-button:active {
color: var(--ooui-text);
}
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button,
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button:hover {
color: var(--ooui-text);
}
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button:active,
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive.oo-ui-buttonElement-pressed > .oo-ui-buttonElement-button {
color: var(--ooui-text);
border-color: var(--ooui-text);
}
.oo-ui-buttonElement-frameless.oo-ui-widget-disabled > .oo-ui-buttonElement-button {
color: var(--ooui-disabled-text);
}
.oo-ui-buttonElement-framed.oo-ui-widget-disabled > .oo-ui-buttonElement-button {
background-color: var(--ooui-disabled);
border-color: var(--ooui-disabled-border);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled > .oo-ui-buttonElement-button {
background-color: var(--ooui-normal);
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled > .oo-ui-buttonElement-button:hover {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled > .oo-ui-buttonElement-button:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-buttonElement-active > .oo-ui-buttonElement-button {
background-color: var(--ooui-progressive--hover);
color: #fff;
border-color: var(--ooui-progressive--hover);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-buttonElement-active > .oo-ui-buttonElement-button:focus {
border-color: var(--ooui-progressive--hover);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled > .oo-ui-buttonElement-button:active,
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-buttonElement-pressed > .oo-ui-buttonElement-button {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive {
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button {
color: var(--ooui-text);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button:hover {
background-color: var(--ooui-normal--hover);
border-color: var(--ooui-progressive--hover);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-destructive > .oo-ui-buttonElement-button {
color: var(--ooui-text);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-destructive > .oo-ui-buttonElement-button:hover {
background-color: var(--ooui-normal--hover);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button {
background-color: var(--ooui-progressive);
border-color: var(--ooui-progressive);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button:hover {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent), inset 0 0 0 2px #fff;
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button:active,
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive.oo-ui-buttonElement-pressed > .oo-ui-buttonElement-button,
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive.oo-ui-buttonElement-active > .oo-ui-buttonElement-button,
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive.oo-ui-popupToolGroup-active > .oo-ui-buttonElement-button {
color: #fff;
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
}
.oo-ui-pendingElement-pending {
background-image: var(--ooui-pending-background-image);
background-size: 200%;
animation: oo-ui-pendingElement-stripes 6s linear infinite;
}
@keyframes oo-ui-pendingElement-stripes {
100% {
background-position: 100%;
}
}
.oo-ui-messageDialog-content > .oo-ui-window-foot {
outline-color: var(--ooui-interface-border);
}
.oo-ui-messageDialog-message {
color: var(--ooui-text);
}
.oo-ui-messageDialog-actions-horizontal .oo-ui-actionWidget {
border-right-color: var(--ooui-interface-border);
}
.oo-ui-messageDialog-actions-vertical .oo-ui-actionWidget {
border-bottom-color: var(--ooui-interface-border);
}
.oo-ui-processDialog-content .oo-ui-window-head,
.oo-ui-processDialog-content .oo-ui-window-foot {
outline-color: var(--ooui-interface-border);
}
.oo-ui-processDialog .oo-ui-actionWidget > .oo-ui-buttonElement-button {
border-top-color: transparent;
border-bottom-color: transparent;
}
.oo-ui-processDialog .oo-ui-actionWidget > .oo-ui-buttonElement-button:hover,
.oo-ui-processDialog .oo-ui-actionWidget > .oo-ui-buttonElement-button:active {
border-top-color: transparent;
border-bottom-color: transparent;
}
.oo-ui-processDialog .oo-ui-actionWidget:not( .oo-ui-flaggedElement-progressive ):not( .oo-ui-flaggedElement-destructive ) > .oo-ui-buttonElement-button:hover,
.oo-ui-processDialog .oo-ui-actionWidget:not( .oo-ui-flaggedElement-progressive ):not( .oo-ui-flaggedElement-destructive ) > .oo-ui-buttonElement-button:active {
border-right-color: var(--ooui-interface-border);
border-left-color: transparent;
}
.oo-ui-processDialog .oo-ui-actionWidget:not( .oo-ui-flaggedElement-progressive ):not( .oo-ui-flaggedElement-destructive ) > .oo-ui-buttonElement-button:focus {
border-color: var(--ooui-accent);
}
.oo-ui-processDialog-actions-safe .oo-ui-actionWidget > .oo-ui-buttonElement-button,
.oo-ui-processDialog-actions-other .oo-ui-actionWidget > .oo-ui-buttonElement-button {
border-right-color: var(--ooui-normal-border);
border-left-color: transparent;
}
.oo-ui-processDialog-actions-safe .oo-ui-widget-enabled.oo-ui-iconElement:not( .oo-ui-labelElement ) > .oo-ui-buttonElement-button:hover {
background-color: var(--ooui-normal--hover);
border-right-color: var(--ooui-interface-border);
}
.oo-ui-windowManager-modal > .oo-ui-dialog {
background-color: var(--ooui-window-background);
}
.oo-ui-windowManager-modal > .oo-ui-dialog > .oo-ui-window-frame {
background-color: var(--ooui-interface);
}
.oo-ui-windowManager-modal.oo-ui-windowManager-floating > .oo-ui-dialog > .oo-ui-window-frame {
border-color: var(--ooui-interface-border);
}
.oo-ui-window {
color: var(--ooui-text);
}
.oo-ui-toolbar-bar {
background-color: var(--ooui-interface);
color: var(--ooui-text);
}
.oo-ui-toolbar-position-top > .oo-ui-toolbar-bar {
border-bottom-color: var(--body-mid);
}
.oo-ui-toolbar-bar .oo-ui-bookletLayout > .oo-ui-menuLayout-menu {
border-right-color: var(--body-mid);
}
.oo-ui-tool.oo-ui-widget-enabled > .oo-ui-tool-link:hover {
background-color: var(--ooui-normal--hover);
}
.oo-ui-tool.oo-ui-widget-enabled > .oo-ui-tool-link:focus {
outline: 1px solid var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-tool.oo-ui-widget-enabled > .oo-ui-tool-link:active,
.oo-ui-tool.oo-ui-widget-enabled.oo-ui-tool-active > .oo-ui-tool-link,
.oo-ui-tool.oo-ui-widget-enabled.oo-ui-popupToolGroup-active > .oo-ui-tool-link {
background-color: var(--ooui-normal--hover);
color: var(--ooui-accent);
box-shadow: none;
}
.oo-ui-tool.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive > .oo-ui-tool-link {
background-color: var(--ooui-progressive);
}
.oo-ui-tool.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive > .oo-ui-tool-link:hover {
background-color: var(--ooui-progressive--hover);
}
.oo-ui-tool.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive > .oo-ui-tool-link:focus {
box-shadow: inset 0 0 0 1px var(--ooui-accent), inset 0 0 0 2px #fff;
}
.oo-ui-tool.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive > .oo-ui-tool-link:active,
.oo-ui-tool.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive.oo-ui-tool-active > .oo-ui-tool-link {
background-color: var(--ooui-progressive--hover);
}
.oo-ui-listToolGroup-tools .oo-ui-tool.oo-ui-widget-enabled {
background-color: var(--ooui-normal);
}
.oo-ui-listToolGroup-tools .oo-ui-tool.oo-ui-widget-enabled:hover {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
}
.oo-ui-listToolGroup-tools .oo-ui-tool-active.oo-ui-widget-enabled .oo-ui-tool-link .oo-ui-tool-title {
color: var(--ooui-progressive);
}
.oo-ui-menuToolGroup {
border-left-color: var(--body-mid);
border-right-color: var(--body-mid);
}
.oo-ui-popupToolGroup-tools {
background-color: var(--ooui-interface);
border-color: var(--body-mid);
}
.oo-ui-popupToolGroup.oo-ui-widget-enabled > .oo-ui-popupToolGroup-handle:hover {
background-color: var(--ooui-normal--hover);
}
.oo-ui-popupToolGroup.oo-ui-widget-enabled > .oo-ui-popupToolGroup-handle:focus {
outline: 1px solid var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-toolbar-actions .oo-ui-popupToolGroup.oo-ui-widget-enabled > .oo-ui-popupToolGroup-handle:hover {
border-right-color: var(--ooui-normal--hover);
}
.oo-ui-popupToolGroup-tools .oo-ui-tool.oo-ui-widget-enabled .oo-ui-tool-link:focus {
box-shadow: inset 0 0 0 2px var(--ooui-accent);
}
.oo-ui-popupToolGroup-tools .oo-ui-tool-active.oo-ui-widget-enabled .oo-ui-tool-link .oo-ui-tool-title {
color: var(--ooui-progressive);
}
.oo-ui-popupToolGroup.oo-ui-popupToolGroup-active > .oo-ui-popupToolGroup-handle {
background-color: var(--ooui-normal);
color: var(--ooui-accent);
}
.oo-ui-popupToolGroup.oo-ui-popupToolGroup-active > .oo-ui-popupToolGroup-handle:hover {
background-color: var(--ooui-normal--hover);
color: var(--ooui-accent);
}
.oo-ui-bookletLayout-outlinePanel > .oo-ui-outlineControlsWidget {
border-top-color: var(--ooui-interface-border);
}
.oo-ui-bookletLayout > .oo-ui-menuLayout-menu {
border-right-color: var(--ooui-interface-border);
}
.oo-ui-fieldLayout-disabled > .oo-ui-fieldLayout-body > .oo-ui-fieldLayout-header > .oo-ui-labelElement-label {
color: var(--ooui-disabled-text);
}
.oo-ui-panelLayout-framed {
border-color: var(--sidebar);
}
.oo-ui-icon-settings {
background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' width='20' height='20' viewBox='0 0 20 20'%3E%3Ctitle%3Esettings%3C/title%3E%3Cg transform='translate(10 10)'%3E%3Cpath id='a' d='M1.5-10h-3l-1 6.5h5m0 7h-5l1 6.5h3'/%3E%3Cuse xlink:href='%23a' transform='rotate(45)'/%3E%3Cuse xlink:href='%23a' transform='rotate(90)'/%3E%3Cuse xlink:href='%23a' transform='rotate(135)'/%3E%3C/g%3E%3Cpath d='M10 2.5a7.5 7.5 0 0 0 0 15 7.5 7.5 0 0 0 0-15v4a3.5 3.5 0 0 1 0 7 3.5 3.5 0 0 1 0-7'/%3E%3C/svg%3E");
}
.oo-ui-icon-clear {
background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 20 20'%3E%3Ctitle%3Eclear%3C/title%3E%3Cpath d='M10 0a10 10 0 1 0 10 10A10 10 0 0 0 10 0zm5.66 14.24-1.41 1.41L10 11.41l-4.24 4.25-1.42-1.42L8.59 10 4.34 5.76l1.42-1.42L10 8.59l4.24-4.24 1.41 1.41L11.41 10z'/%3E%3C/svg%3E");
}
.mw-widget-dateInputWidget-handle {
background-color: var(--ooui-input);
color: var(--ooui-text);
border-color: var(--ooui-input-border);
}
.mw-widget-dateInputWidget-calendar {
background-color: var(--ooui-interface);
}
.mw-widget-dateInputWidget.oo-ui-widget-enabled .mw-widget-dateInputWidget-handle:hover {
border-color: var(--ooui-input-border--hover);
}
.mw-widget-calendarWidget {
border-color: var(--ooui-interface-border);
}
.mw-widget-calendarWidget:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.mw-widget-calendarWidget-day,
.mw-widget-calendarWidget-day-heading {
color: var(--ooui-text);
}
.mw-widget-calendarWidget-day-additional {
color: var(--ooui-text);
opacity: 0.67;
}
.mw-widget-calendarWidget-day-today {
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.mw-widget-calendarWidget-item:hover {
background-color: var(--ooui-progressive);
}
.mw-widget-calendarWidget-item-selected {
background-color: var(--ooui-progressive--hover);
}
.mw-widgets-datetime-calendarWidget {
background-color: var(--ooui-interface);
border-color: var(--ooui-interface-border);
}
.mw-widgets-datetime-calendarWidget:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent), 0 2px 2px 0 rgba(0, 0, 0, 0.25);
}
.mw-widgets-datetime-calendarWidget-grid .mw-widgets-datetime-calendarWidget-cell.mw-widgets-datetime-calendarWidget-extra .oo-ui-buttonElement-button .oo-ui-labelElement-label {
color: var(--subtle-color);
}
.mw-widgets-datetime-calendarWidget-grid .mw-widgets-datetime-calendarWidget-cell.mw-widgets-datetime-calendarWidget-selected .oo-ui-buttonElement-button {
background-color: var(--ooui-progressive--hover);
}
.mw-widgets-datetime-dateTimeInputWidget-handle {
background-color: var(--ooui-input);
color: var(--ooui-text);
border-color: var(--ooui-input-border);
}
.mw-widgets-datetime-dateTimeInputWidget.oo-ui-widget-enabled.mw-widgets-datetime-dateTimeInputWidget-handle:hover {
border-color: var(--ooui-input-border--hover);
}
.mw-widgets-datetime-dateTimeInputWidget.oo-ui-widget-enabled:hover input,
.mw-widgets-datetime-dateTimeInputWidget.oo-ui-widget-enabled:hover textarea {
border-color: var(--ooui-input-border--hover);
}
.mw-widgets-datetime-dateTimeInputWidget.oo-ui-widget-enabled .mw-widgets-datetime-dateTimeInputWidget-editField:hover {
background-color: var(--ooui-normal);
}
.ve-activated .ve-init-mw-desktopArticleTarget-originalContent #catlinks:hover {
background: var(--ooui-normal--hover);
}
.ve-ui-overlay {
font-family: inherit;
}
.oo-ui-toolbar-position-top .ve-ui-toolbarDialog-position-above {
border-top-color: var(--body-mid);
}
.ve-ce-branchNode-blockSlug,
.ve-ce-branchNode-newSlug {
outline-color: var(--body-border);
background-color: var(--ooui-interface);
}
.ve-ui-specialCharacterPage h3 {
color: var(--byline-color);
}
.ve-ui-specialCharacterPage-character {
border-color: var(--body-mid);
}
.ve-ui-specialCharacterPage-character:hover {
border-color: var(--body-dark);
}
.ve-ce-linkAnnotation.ve-ce-annotation-active {
box-shadow: 0 0 0 1px var(--body-mid);
background: none;
}
.ve-ui-desktopContext .ve-ui-linkContextItem .ve-ui-linkContextItem-label {
border-color: var(--body-border);
}
.ve-ui-mwHelpPopupTool-version-label,
.ve-ui-mwHelpPopupTool-version-link,
.ve-ui-mwHelpPopupTool-version-date {
color: var(--byline-color);
}
.ve-ce-tableCellableNode {
border-color: var(--body-mid);
}
.ve-ce-mwReferencesListNode-muted {
color: var(--byline-color);
}
.ve-ui-mwTemplatePage-description,
.ve-ui-mwParameterPage-label,
.ve-ui-mwParameterPage-description-required,
.ve-ui-mwParameterPage-description-deprecated {
color: var(--byline-color);
}
.mw-widget-titleWidget-menu .mw-widget-titleOptionWidget-description {
color: var(--byline-color);
}
.ve-ui-mwGalleryDialog-menuLayout > .oo-ui-menuLayout-menu,
.ve-ui-mwGalleryDialog-innerMenuLayout > .oo-ui-menuLayout-menu,
.ve-ui-mwGalleryDialog .ve-ui-mwGalleryDialog-image-container,
.ve-ui-targetWidget {
border-color: var(--body-border);
}
.ve-ui-targetWidget:not(.oo-ui-pendingElement-pending) {
background-color: var(--body-main);
}
.ve-ui-mwSaveDialog {
color: var(--ooui-text);
}
.ve-ui-mwSaveDialog-options {
background-color: var(--ooui-interface);
border-color: var(--body-border);
}
.ve-ui-mwSaveDialog-summary {
background-color: var(--ooui-input);
}
.ve-ui-mwSaveDialog-editSummary-count {
border-color: var(--body-border);
}
.ve-ui-mwSaveDialog-license {
color: var(--byline-color);
}
.ve-ui-mwReferenceContextItem-muted {
color: var(--byline-color);
}
.ve-ui-mwNoticesPopupTool-items > div:not(:first-child),
.ve-ui-mwHelpPopupTool-item:not(:first-child) {
border-color: var(--body-border);
}
.ve-ui-mwTransclusionOutlineControlsWidget {
background-color: var(--ooui-interface);
border-top-color: var(--body-border);
}
.ve-ui-mwTransclusionOutlineTemplateWidget-sticky {
background-color: var(--ooui-interface);
}
.ve-ui-mwTransclusionOutlineTemplateWidget .ve-ui-mwTransclusionOutlineParameterWidget.oo-ui-optionWidget-highlighted {
color: var(--ooui-text);
}
.ve-ui-mwTransclusionOutlineTemplateWidget-no-template-parameters {
color: var(--subtle-color);
}
.ve-ui-mwParameterPage-undocumentedLabel {
color: var(--subtle-color);
}
.ve-ui-mwTwoPaneTransclusionDialogLayout > .oo-ui-menuLayout-menu {
border-right: var(--body-border);
}
.ve-ui-mwParameterPage-doc-required,
.ve-ui-mwParameterPage-doc-deprecated,
.ve-ui-mwParameterPage-inlineDescription .ve-ui-mwParameterPage-doc-example {
color: var(--byline-color);
}
.ve-ui-expandableContent-toggle {
background-color: var(--ooui-interface);
}
.ve-ui-expandableContent-fade {
background: linear-gradient(to right, rgba(255, 255, 255, 0) 0, var(--ooui-interface) 90%);
}
.ve-ui-commandHelpDialog-shortcut > kbd,
.ve-ui-commandHelpDialog-sequence > kbd {
background-color: var(--keypress-background);
color: var(--keypress-color);
border-color: var(--keypress-border);
box-shadow: none;
text-shadow: none;
}
.ve-init-mw-desktopArticleTarget-toolbarPlaceholder-floating .ve-init-mw-desktopArticleTarget-toolbarPlaceholder-bar {
background: var(--ooui-interface);
}
.ve-init-mw-desktopArticleTarget-toolbarPlaceholder-bar {
border-bottom-color: var(--body-mid);
}
figure[typeof~='mw:File/Thumb'],
figure[typeof~='mw:File/Frame'],
figure[typeof~='mw:Image/Thumb'],
figure[typeof~='mw:Video/Thumb'],
figure[typeof~='mw:Image/Frame'],
figure[typeof~='mw:Video/Frame'] {
border: none;
background-color: var(--thumb-bg);
}
figure[typeof~='mw:File/Thumb'] > a:first-child > *:first-child:not( .mw-broken-media ),
figure[typeof~='mw:File/Frame'] > a:first-child > *:first-child:not( .mw-broken-media ),
figure[typeof~='mw:Image/Thumb'] > a:first-child > *:first-child:not( .mw-broken-media ),
figure[typeof~='mw:Video/Thumb'] > a:first-child > *:first-child:not( .mw-broken-media ),
figure[typeof~='mw:Image/Frame'] > a:first-child > *:first-child:not( .mw-broken-media ),
figure[typeof~='mw:Video/Frame'] > a:first-child > *:first-child:not( .mw-broken-media ) {
border: none;
background: var(--thumb-bg);
}
figure[typeof~='mw:File/Thumb'] > figcaption,
figure[typeof~='mw:File/Frame'] > figcaption,
figure[typeof~='mw:Image/Thumb'] > figcaption,
figure[typeof~='mw:Video/Thumb'] > figcaption,
figure[typeof~='mw:Image/Frame'] > figcaption,
figure[typeof~='mw:Video/Frame'] > figcaption {
border: none;
background-color: var(--thumb-caption-bg);
padding: 4px 6px;
}
:root {
--keypress-background: #eee;
--keypress-border: #ccc;
--keypress-color: #333;
}
.archivelist {
background-color: var(--body-light);
border: solid 1px var(--body-border);
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
float: right;
margin: 5px;
padding: 5px;
text-align: center;
width: 120px;
}
.shortcut {
border: 1px solid var(--body-border);
background: var(--body-light);
float: right;
font-size: 0.8em;
margin: 0.5em 0em 0.5em 1em;
padding: 0.5em;
text-align: center;
}
.hatnote,
.seealso {
font-style: italic;
}
.hatnote i,
.seealso i {
font-style: normal;
}
div.hatnote,
div.seealso {
margin: 0.5em 1.6em;
}
div.hatnote + div.hatnote,
div.hatnote + div.seealso,
div.seealso + div.hatnote,
div.seealso + div.seealso {
margin-top: -0.5em;
}
.keypress {
background: var(--keypress-background);
color: var(--keypress-color);
font-family: inherit;
border: 1px solid var(--keypress-border);
border-radius: 2px;
font-size: 0.9em;
margin: 0 0.1em;
padding: 0.1em 0.4em;
white-space: nowrap;
}
:root {
--documentation-background: #f9fafa;
--documentation-link-color: #e4eaee;
--documentation-headers-color: #fff;
--documentation-header-background: #949eaa;
--documentation-subheader-background: #808c9a;
--documentation-border: #e4eaee;
}
.documentation {
background: var(--documentation-background);
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
margin: 1em 0;
}
.documentation pre,
.documentation code {
background-color: var(--documentation-background);
border-color: var(--documentation-border);
}
.documentation h2,
.documentation hr {
border-color: var(--documentation-border);
}
.documentation-header {
color: var(--documentation-headers-color);
background: var(--documentation-header-background);
font-weight: bold;
padding: 1em 1.5em;
}
.documentation-title {
font-size: 1.25em;
}
.documentation-subheader {
color: var(--documentation-headers-color);
background: var(--documentation-subheader-background);
padding: 0.5em 1.5em;
}
.documentation-subheader a,
.documentation-subheader a:visited,
.documentation-subheader a:active {
color: var(--documentation-link-color);
}
.documentation-documentation,
.documentation-links {
font-size: 0.85em;
}
.documentation-content {
padding: 1em 1.5em;
}
.mw-templatedata-doc-params dl:not(:empty) {
column-count: 3;
border-top: 1px solid var(--body-border);
margin-bottom: 0.5em;
}
.mw-templatedata-doc-params dt::after {
content: ":";
}
.mw-templatedata-doc-params dd,
.mw-templatedata-doc-params dt {
margin: 0.1em 2em;
min-width: auto;
}
.mw-templatedata-doc-muted {
color: var(--subtle-color);
font-style: italic;
}
:root {
--infobox-text-color: var(--text-color);
--table-header: var(--body-dark);
--table-subheader: var(--body-mid);
--table-body: var(--body-light);
--table-border: var(--body-border);
}
.infobox {
font-size: 0.85em;
width: 300px;
border-collapse: collapse;
float: right;
table-layout: fixed;
margin: 0.5em 0 1em 1em;
}
.infobox .infobox-buttons {
display: flex;
flex-wrap: wrap;
justify-content: center;
grid-gap: 3px;
margin-bottom: 3px;
}
.infobox .infobox-buttons .button {
background: var(--table-header);
padding: 0 5px;
font-weight: bold;
flex: 1 1 20%;
max-width: 20%;
color: #fff;
}
.infobox tbody {
border: 1px solid var(--table-border);
background: var(--table-body);
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(231, 215, 199, 0.5);
}
.infobox .infobox-header {
background: var(--table-header);
padding: 0.5em 0;
text-align: center;
color: #fff;
font-size: 1.15em;
font-weight: bold;
line-height: 1.4em;
}
.infobox .infobox-image {
text-align: center;
}
.infobox .infobox-subheader {
background: var(--table-subheader);
font-weight: bold;
text-align: center;
color: #fff;
}
.infobox .infobox-padding {
backgound: var(--table-body);
}
.infobox tr td:not(.infobox-padding) {
padding: 0.2em 0.5em;
}
.infobox th:not(.infobox-header):not(.infobox-subheader):not(.infobox-nested) {
border-right: 2px solid var(--table-subheader);
text-align: right;
padding: 0.2em 0.5em;
}
.hidden {
display: none;
}
ol.references,
.reflist {
font-size: 90%;
}
.reflist {
list-style-type: decimal;
}
.reflist .references {
font-size: 100%;
list-style-type: inherit;
}
.reflist-lower-alpha {
list-style-type: lower-alpha;
}
ol.references li:target,
sup.reference:target {
background-color: var(--body-light);
}
.hideQuotes .refhide {
display: none;
}
:root {
--messagebox-obsolete-background: #cfcfcf;
--messagebox-obsolete-border: #464646;
--messagebox-obsolete-color: var(--text-color);
--messagebox-obsolete-link-color: #6c6c6c;
--messagebox-info-background: #ebebeb;
--messagebox-info-border: #898989;
--messagebox-info-color: var(--text-color);
--messagebox-info-link-color: #6c6c6c;
--messagebox-action-background: #c7e8fa;
--messagebox-action-border: #0b5884;
--messagebox-action-color: var(--text-color);
--messagebox-action-link-color: #03436b;
--messagebox-warn-background: #dfc0ba;
--messagebox-warn-border: #861c10;
--messagebox-warn-color: var(--text-color);
--messagebox-warn-link-color: #8e221a;
--messagebox-safe-background: #d8f0d3;
--messagebox-safe-border: #1b8408;
--messagebox-safe-color: var(--text-color);
--messagebox-safe-link-color: #1b8408;
--messagebox-disambig-background: #ebebeb;
--messagebox-disambig-border: #898989;
--messagebox-disambig-color: var(--text-color);
--messagebox-disambig-link-color: #6c6c6c;
--messagebox-discord-background: #5865f2;
--messagebox-discord-border: #4c57d0;
--messagebox-discord-link-color: #d2e5fc;
}
.mw-message-box,
.mw-message-box-error,
.mw-message-box-warning,
.mw-message-box-success,
.usermessage {
color: var(--text-color);
}
.messagebox {
width: 65%;
margin: 0.5em auto;
border-left: 15px solid;
border-color: var(--body-dark);
background-color: var(--body-light);
box-sizing: border-box;
}
.messagebox.obsolete {
background-color: var(--messagebox-obsolete-background);
border-color: var(--messagebox-obsolete-border);
color: var(--messagebox-obsolete-color);
}
.messagebox.obsolete a,
.messagebox.obsolete a:visited,
.messagebox.obsolete a:active {
color: var(--messagebox-obsolete-link-color);
}
.messagebox.info {
background-color: var(--messagebox-info-background);
border-color: var(--messagebox-info-border);
color: var(--messagebox-info-color);
}
.messagebox.info a,
.messagebox.info a:visited,
.messagebox.info a:active {
color: var(--messagebox-info-link-color);
}
.messagebox.action {
background-color: var(--messagebox-action-background);
border-color: var(--messagebox-action-border);
color: var(--messagebox-action-color);
}
.messagebox.action a,
.messagebox.action a:visited,
.messagebox.action a:active {
color: var(--messagebox-action-link-color);
}
.messagebox.warn {
background-color: var(--messagebox-warn-background);
border-color: var(--messagebox-warn-border);
color: var(--messagebox-warn-color);
}
.messagebox.warn a,
.messagebox.warn a:visited,
.messagebox.warn a:active {
color: var(--messagebox-warn-link-color);
}
.messagebox.safe {
background-color: var(--messagebox-safe-background);
border-color: var(--messagebox-safe-border);
color: var(--messagebox-safe-color);
}
.messagebox.safe a,
.messagebox.safe a:visited,
.messagebox.safe a:active {
color: var(--messagebox-safe-link-color);
}
.messagebox.disambig {
background-color: var(--messagebox-disambig-background);
border-color: var(--messagebox-disambig-border);
color: var(--messagebox-disambig-color);
}
.messagebox.disambig a,
.messagebox.disambig a:visited,
.messagebox.disambig a:active {
color: var(--messagebox-disambig-link-color);
}
.messagebox.discord {
background-color: var(--messagebox-discord-background);
border-color: var(--messagebox-discord-border);
color: #fff;
}
.messagebox.discord a,
.messagebox.discord a:visited,
.messagebox.discord a:active {
color: var(--messagebox-discord-link-color);
}
.messagebox.discord a.external,
.messagebox.discord a:visited.external,
.messagebox.discord a:active.external {
font-style: italic;
}
.messagebox.stub {
width: 40%;
}
.messagebox.hasdialogue {
padding: 0 10px;
width: auto;
}
:root {
--byline-arrow-filter: invert(29%) sepia(0%) saturate(376%) hue-rotate(172deg) brightness(87%) contrast(80%);
--tile-border-color: var(--body-border);
--tile-background-color: var(--body-light);
--tile-link-button-color: #f5e9db;
--tile-link-button-highlight-color: #dfccb0;
--tile-dark-color: #fff;
--tile-dark-bg: #5d6773;
--tile-dark-link-color: #ccc;
--tile-dark-byline-color: rgba(255, 255, 255, 0.7);
--tile-dark-header-color: #fff;
}
.tile {
background: var(--tile-background-color);
border: 1px solid var(--tile-border-color);
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
padding: 1.5em 2em 1em;
max-width: 40em;
}
.tile h2 {
font-size: 1.4em;
font-weight: bold;
border: none;
margin: 0 0 0.4em;
}
.tile .byline + h2 {
margin-top: -0.5em;
}
.tile.dark {
color: var(--tile-dark-color);
background: var(--tile-dark-bg);
border: none;
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.3);
}
.tile.dark h2 {
color: var(--tile-dark-header-color);
}
.tile.dark a {
color: var(--tile-dark-link-color);
}
.tile.dark .byline {
color: var(--tile-dark-byline-color);
}
.byline {
font-size: 0.9em;
color: var(--byline-color);
}
.byline a {
color: var(--byline-color);
}
.tile-row {
display: flex;
flex-flow: row wrap;
margin-bottom: 1em;
}
.tile-halves {
display: flex;
flex-flow: row wrap;
border: 1px solid var(--tile-border-color);
background: var(--tile-background-color);
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
}
.tile-halves h2 {
font-size: 1.4em;
font-weight: bold;
border: none;
margin: 0 0 0.4em;
}
.tile-halves .byline + h2 {
margin-top: -0.5em;
}
.tile-top {
width: 100%;
padding: 1.3rem 1.5rem 0.6rem;
}
.tile-top.tile-image {
display: flex;
align-items: center;
background-color: var(--byline-color);
overflow: hidden;
padding: 0;
height: 13vw;
max-height: 12em;
transition: 0.4s ease-out;
}
.tile-halves:hover .tile-top.tile-image img {
transform: scale(1.1);
transition: 0.5s ease-out;
}
.tile-top.tile-image a {
width: 100%;
}
.tile-top.tile-image img {
width: 100%;
object-fit: cover;
max-height: 200px;
transition: 0.4s ease-out;
}
.tile-bottom {
background: var(--tile-background-color);
border-top: 1px solid var(--tile-border-color);
width: 100%;
padding: 1rem 1.5rem 0.6rem;
}
.tile-bottom.link-button {
align-self: flex-end;
padding: 0;
}
.tile-bottom.link-button a {
display: block;
text-align: center;
padding: 0.75em 1.5em 0.8em;
text-decoration: none;
}
.tile-bottom.read-more {
background: var(--tile-link-button-color);
transition: 0.3s ease-out;
}
.tile-bottom.read-more a {
color: var(--byline-color);
font-weight: bold;
text-align: right;
}
.tile-bottom.read-more:hover {
background: var(--tile-link-button-highlight-color);
}
.tile-bottom.read-more:hover .arrow {
transform: translateX(50%);
}
.tile-bottom.read-more .arrow {
filter: var(--byline-arrow-filter);
margin-left: 0.4em;
transition: 0.3s ease-out;
}
body.page-Main_Page.action-view .catlinks,
body.page-Main_Page.action-view #contentSub,
body.page-Main_Page.action-view #firstHeading,
body.page-Main_Page.action-view #siteNotice {
display: none;
}
body.page-Main_Page .mw-parser-output {
max-width: 75em;
margin: 0 auto;
}
body.page-Main_Page.action-view .catlinks,
body.page-Main_Page.action-view #contentSub,
body.page-Main_Page.action-view #siteNotice {
display: none;
}
.mainpage-header {
display: flex;
margin: 2.6em 1.75em 1.5em;
}
.mainpage-header .header-intro {
flex: 2;
}
.mainpage-header .header-intro h1 {
font-size: 2.5em;
font-weight: bold;
border: none;
margin: 0 0 0.15em;
}
.mainpage-header .header-intro p {
font-size: 1.1em;
line-height: 1.7em;
}
.mainpage-header .header-stats {
flex: 1;
display: flex;
justify-content: center;
align-items: center;
margin-top: -1em;
}
.mainpage-body {
display: grid;
grid-template-areas: "event event event" "update update update" "content content content" "left left right";
gap: 0.9rem;
grid-template-columns: repeat(3, 1fr);
}
.mainpage-body h2 a {
color: var(--text-color);
}
.mainpage-body .tile {
padding-left: 1.75em;
padding-right: 1.75em;
max-width: 100%;
}
.mainpage-body .tile-row {
width: 100%;
margin-bottom: 0;
}
.mainpage-body .tile-row {
display: grid;
gap: 0.9rem;
}
.mainpage-contents.tile-row {
display: flex;
}
.mainpage-contents.tile-row .tile-top {
height: 5.5rem;
}
.mainpage-left {
grid-area: left;
flex: 2;
display: flex;
flex-flow: column wrap;
}
.mainpage-left > * {
margin: 0 0 0.9rem;
}
.mainpage-right {
grid-area: right;
flex: 1;
display: flex;
flex-flow: column wrap;
}
.mainpage-right > * {
margin: 0 0 0.9rem;
}
.arrow {
background: url('filepath://White-chevron.svg') no-repeat;
display: inline-block;
height: 0.7rem;
width: 0.45rem;
vertical-align: middle;
}
.arrow.dark {
filter: invert(80%);
}
.mainpage-contents {
grid-area: content;
grid-template-columns: repeat(6, 1fr);
}
.mainpage-contents .tile-halves {
flex: 1;
}
.mainpage-contents .tile-top {
height: 4.5rem;
position: relative;
}
.mainpage-contents .tile-top.tile-image img {
height: auto;
}
.mainpage-contents h2 {
margin: 0;
padding: 0;
}
.mainpage-contents .tile-bottom.link-button a {
padding: 0.75em 0.2em;
}
.popular-pages ul {
display: grid;
grid-template-columns: repeat(3, 1fr);
grid-gap: 0.6em;
margin: 1em 0 0.7em 0;
}
.mp-popular-page-light {
display: flex;
align-items: center;
background-color: var(--button-background);
transition: 100ms;
}
.mp-popular-page-light a {
flex: 1;
display: block;
color: #fff;
font-weight: bold;
text-align: center;
text-decoration: none;
padding: 0.7em 1em;
}
.mp-popular-page-light:hover {
filter: brightness(115%);
transition: 100ms;
}
.mainpage-social {
border: none;
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.3);
}
.mainpage-social .tile-top {
display: flex;
align-items: center;
padding: 1em 1.5em;
}
.mainpage-social .tile-top a {
flex: 1;
position: relative;
text-decoration: none;
}
.mainpage-social .tile-top a:hover .arrow {
transform: translateX(50%);
}
.mainpage-social .tile-bottom {
border: none;
padding: 1em 1.75em;
}
.mainpage-social .tile-bottom p {
color: #fff;
font-weight: bold;
font-size: 0.9em;
text-align: center;
text-transform: uppercase;
letter-spacing: 0.03em;
margin: 0;
}
.mainpage-social .social-icon {
margin-right: 0.75em;
text-align: center;
width: 60px;
}
.mainpage-social .social-header {
color: #fff;
font-weight: bold;
font-size: 1.15em;
margin: 0.5em 0 -0.15em;
}
.mainpage-social .server-tagline {
color: rgba(255, 255, 255, 0.9);
margin-bottom: 0.5em;
}
.mainpage-social .arrow {
position: absolute;
top: calc(50% - .5em);
right: 0;
height: 1em;
width: 0.7em;
background-size: 0.7em 1em;
transition: 0.3s ease-out;
}
.mainpage-social.mainpage-discord .tile-top {
background: #5865f2;
}
.mainpage-social.mainpage-discord .tile-bottom {
background: #525ee0;
}
.mainpage-social.mainpage-twitter .tile-top {
background: #15202b;
}
.mainpage-social.mainpage-twitter .tile-bottom {
background: #121c26;
}
.mainpage-editing {
border: none;
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.3);
}
.mainpage-editing .tile-top {
background: #438ab5;
}
.mainpage-editing .tile-bottom {
background: #3980ab;
border: none;
padding: 0.8rem 1.5rem 0.4rem;
}
.mainpage-editing h2,
.mainpage-editing a {
color: #fff;
}
.mainpage-editing p {
color: rgba(255, 255, 255, 0.9);
}
.mainpage-editing ul {
list-style-image: url('filepath://Transparent-chevron.svg');
}
@media only screen and (max-width: 1200px) {
.mainpage-contents {
grid-template-columns: repeat(3, 1fr);
}
}
@media only screen and (max-width: 1000px) {
.mainpage-body {
grid-template-areas: "event event event" "update update update" "content content content" "left left left" "right right right";
}
.mainpage-recent-updates {
grid-template-columns: repeat(2, 1fr);
}
.mainpage-recent-updates .tile-halves:last-child {
display: none;
}
.mainpage-recent-updates .tile-halves:hover .tile-top img {
transform: scale(1.04);
}
.mainpage-recent-updates .tile-top {
height: 18vw;
min-height: 9em;
}
.mainpage-header .header-stats {
display: none;
}
.mainpage-left > *:last-child,
.mainpage-right > *:last-child {
margin-bottom: 0;
}
.popular-pages ul {
grid-template-columns: repeat(2, 1fr);
}
}
@media only screen and (max-width: 720px) {
.mainpage-recent-updates {
grid-template-columns: none;
}
.mainpage-recent-updates .tile-halves:last-child {
display: flex;
}
.mainpage-contents {
grid-template-columns: repeat(2, 1fr);
}
}
.mw-prefs-buttons {
background-color: var(--body-main);
border-top-color: var(--body-border);
box-shadow: none;
}
.mw-prefs-tabs-wrapper.oo-ui-panelLayout-framed,
.mw-prefs-tabs > .oo-ui-menuLayout-content > .oo-ui-indexLayout-stackLayout > .oo-ui-tabPanelLayout {
border-color: var(--body-border);
}
.mw-htmlform-ooui .mw-htmlform-matrix tbody tr:nth-child(even) td {
background-color: var(--body-light);
}
.mw-htmlform-ooui .mw-htmlform-matrix tbody tr:hover td {
background-color: var(--body-mid);
}
:root {
--rc-positive-color: #407813;
--rc-negative-color: #b41e0f;
}
.mw-plusminus-pos {
color: var(--rc-positive-color);
}
.mw-plusminus-neg {
color: var(--rc-negative-color);
}
.client-js .mw-recentchanges-toplinks:not(.mw-recentchanges-toplinks-collapsed) {
border-color: var(--body-border);
background-color: var(--body-light);
border-radius: 2px;
}
.mw-rcfilters-ui-filterTagMultiselectWidget-wrapper-content-title {
color: var(--text-color);
}
.mw-rcfilters-ui-filterTagMultiselectWidget-emptyFilters {
color: var(--byline-color);
}
.mw-rcfilters-ui-filterTagMultiselectWidget.oo-ui-widget-enabled .oo-ui-tagMultiselectWidget-handle {
background-color: var(--ooui-interface);
border-color: var(--ooui-interface-border);
}
.mw-rcfilters-ui-filterTagMultiselectWidget-views-select-widget.oo-ui-widget {
border-color: var(--ooui-interface-border);
}
.mw-rcfilters-collapsed .mw-rcfilters-ui-filterTagMultiselectWidget {
border-bottom-color: var(--ooui-interface-border);
}
.mw-rcfilters-ui-menuSelectWidget-footer {
background-color: var(--ooui-interface);
border-color: var(--ooui-interface-border);
}
.mw-rcfilters-ui-viewSwitchWidget label.oo-ui-labelWidget {
color: var(--byline-color);
}
.mw-rcfilters-ui-tagItemWidget-popup-content {
color: var(--ooui-text);
}
.mw-changeslist-legend,
.mw-rcfilters-ui-changesListWrapperWidget .mw-changeslist-legend {
background-color: var(--body-light);
border-color: var(--body-dark);
}
.mw-rcfilters-ui-changesListWrapperWidget-previousChangesIndicator {
border-color: var(--sidebar);
}
.client-js .mw-changeslist ul,
.client-js .mw-changeslist table.mw-enhanced-rc {
margin-left: 0;
}
.mw-rcfilters-ui-watchlistTopSectionWidget-separator {
border-color: var(--sidebar);
}
.mw-rcfilters-ui-itemMenuOptionWidget-header {
border-bottom-color: var(--ooui-interface);
background-color: var(--ooui-interface-border);
}
.mw-rcfilters-ui-itemMenuOptionWidget:not(:last-child):not(.mw-rcfilters-ui-itemMenuOptionWidget-identifier-talk) {
border-bottom-color: var(--ooui-normal-border);
}
.mw-rcfilters-ui-itemMenuOptionWidget-label-title,
.mw-rcfilters-ui-itemMenuOptionWidget-label-desc {
color: var(--text-color);
}
.mw-rcfilters-ui-filterMenuOptionWidget.oo-ui-flaggedElement-muted:not(.oo-ui-optionWidget-selected) {
background-color: var(--body-main);
}
.mw-rcfilters-ui-filterMenuOptionWidget.oo-ui-flaggedElement-muted .mw-rcfilters-ui-itemMenuOptionWidget-label-title,
.mw-rcfilters-ui-filterMenuOptionWidget.oo-ui-flaggedElement-muted .mw-rcfilters-ui-itemMenuOptionWidget-label-desc {
color: var(--subtle-color);
}
.mw-rcfilters-ui-filterMenuSectionOptionWidget {
background-color: var(--body-mid);
}
.mw-rcfilters-ui-filterMenuSectionOptionWidget-header-title.oo-ui-labelElement-label {
color: var(--ooui-text);
}
.mw-rcfilters-ui-filterMenuHeaderWidget-title {
color: var(--ooui-text);
}
.mw-rcfilters-ui-filterMenuHeaderWidget-header {
border-bottom-color: var(--ooui-interface-border);
background-color: var(--ooui-interface);
}
.mw-rcfilters-ui-itemMenuOptionWidget-view-namespaces {
border-top-color: var(--ooui-interface-border);
}
.mw-rcfilters-ui-datePopupWidget {
border-color: var(--ooui-interface-border);
}
.mw-rcfilters-ui-datePopupWidget .mw-rcfilters-ui-valuePickerWidget-title {
color: var(--byline-color);
}
.mw-rcfilters-ui-savedLinksListItemWidget-label {
color: var(--ooui-accent);
}
.client-js .mw-changeslist.mw-rcfilters-ui-changesListWrapperWidget-highlighted ul,
.client-js .mw-changeslist.mw-rcfilters-ui-changesListWrapperWidget-highlighted table.mw-enhanced-rc {
margin-left: 1.5em;
}
.page-Special_CreateAccount .mw-ui-container,
.page-Special_UserLogin .mw-ui-container {
max-width: 64rem;
margin: 0 auto;
}
.mw-number-text {
color: var(--byline-color);
}
.mw-body-content .mw-number-text h3 {
color: var(--text-color);
}
#mw-indicator-mw-helplink a {
background: none;
padding: 0;
display: flex;
align-items: center;
}
#mw-indicator-mw-helplink a::before {
content: '';
margin-right: 5px;
-webkit-mask: url("/resources/src/mediawiki.helplink/images/helpNotice.svg?46d34") no-repeat 50% 50% / contain;
mask: url("/resources/src/mediawiki.helplink/images/helpNotice.svg?46d34") no-repeat 50% 50% / contain;
background: var(--text-color);
height: 20px;
width: 20px;
}
.results-info {
color: inherit;
}
.mw-search-profile-tabs {
background-color: var(--body-mid);
border-color: transparent;
}
.search-types .current a {
color: inherit;
}
#mw-searchoptions {
background-color: var(--body-mid);
border-color: transparent;
}
#mw-searchoptions .divider {
border-color: var(--body-border);
}
#mw-searchoptions h4 {
font-family: inherit;
}
#mw-searchoptions .oo-ui-labelElement:nth-of-type(odd) {
font-weight: bold;
}
.searchresult {
line-height: 1.5;
}
.searchalttitle,
#mw-search-interwiki li {
font-size: 90%;
}
.mw-search-result-data {
color: var(--byline-color);
}
.page-Special_ListFiles a.image img {
width: inherit;
height: inherit;
}
.page-Special_ListFiles .TablePager_col_thumb {
text-align: center;
}
#editcount table[border="1"] {
background-color: var(--body-main) !important;
border-color: var(--wikitable-border) !important;
margin-top: 0.5em;
}
#editcount table[border="1"] th,
#editcount table[border="1"] td {
padding: 0.2em 0.4em;
}
#editcount table[border="1"] th {
background-color: var(--wikitable-header-bg);
border: 1px solid var(--wikitable-border);
}
#editcount table[border="1"] td {
border: 1px solid var(--wikitable-border);
}
#editcount table[border="1"] tr:nth-child(odd) {
background-color: var(--body-light);
}
.mw-echo-ui-notificationBadgeButtonPopupWidget-popup > .oo-ui-popupWidget-popup .mw-echo-ui-placeholderItemWidget {
background-color: inherit;
}
table.mw-interwikitable.body td.mw-interwikitable-local-yes {
background-color: var(--table-yes-background);
color: var(--table-yes-color);
}
.mw-protectedpages-unknown {
color: var(--byline-color);
}
.watchlistredir,
.allpagesredirect {
font-style: italic;
}
.allpagesredirect:after {
color: var(--byline-color);
content: " (redirect)";
}
.mw-apisandbox-toolbar {
background: var(--body-main);
}
.oo-ui-menuOptionWidget .mw-apisandbox-flag {
color: var(--byline-color);
}
tr.mw-abusefilter-list-disabled,
tr.mw-abusefilter-list-disabled td {
color: var(--byline-color);
}
table.mw-abuselog-details {
background: var(--wikitable-bg);
border-color: var(--wikitable-border);
}
table.mw-abuselog-details th {
background: var(--wikitable-header-bg);
}
table.mw-abuselog-details th,
table.mw-abuselog-details td {
border-color: var(--wikitable-border);
}
.mw-abusefilter-log-hidden-entry {
color: var(--subtle-color);
}
body td.mw-abusefilter-history-changed {
background: var(--table-no-background);
}
div.mw-abusefilter-editor,
#mw-abusefilter-warn-preview,
#mw-abusefilter-disallow-preview {
border-color: var(--ooui-input-border);
}
.mw-destfile-warning {
border-color: var(--warningbox-border);
color: var(--text-color);
background-color: var(--warningbox-bg);
}
span.fileinput-button {
background-color: var(--ooui-normal);
border-color: var(--ooui-normal-border);
color: var(--ooui-text);
}
ul.fileupload-results li.ful-success {
background-color: var(--successbox-bg);
}
ul.fileupload-results li.ful-success a {
color: var(--link-color);
}
ul.fileupload-results li.ful-error {
background-color: var(--errorbox-bg);
}
.color-container {
display: flex;
margin: 2em auto;
width: 80%;
max-width: 60em;
}
.color-column {
flex: 1;
margin-right: 1em;
}
.color-column:last-child {
margin-right: 0;
}
.color-column h3 {
padding: 0;
}
.color-group {
color: #333;
padding: 1em 1.5em;
transition: 0.2s ease-out;
}
.color-group:hover {
transform: scale(1.03);
}
.color-group.dark {
color: #fff;
}
.color-group .variable,
.color-group .hexcode {
font-family: monospace;
font-size: 1.1em;
-webkit-user-select: all;
-moz-user-select: all;
-ms-user-select: all;
user-select: all;
margin: 0;
}
body.wgl-readermode .color-group .variable,
body.wgl-readermode .color-group .hexcode {
font-size: inherit;
}
.color-group .variable {
font-weight: bold;
}
#t-print,
#t-permalink {
display: none;
}
#filetoc {
border-radius: 2px;
background: var(--body-mid);
border-color: transparent;
margin: 0.5em auto;
text-align: center;
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
}
li.gallerybox div.thumb {
border: none;
background-color: var(--thumb-bg);
}
.smwfact {
display: none;
}
.list-header {
background-color: var(--body-mid);
color: inherit;
}
.editOptions {
color: var(--text-color);
background-color: var(--sourceeditor-background-secondary);
border-color: var(--sourceeditor-border);
}
.mw-json th,
.mw-json td {
border-color: var(--wikitable-border);
}
.mw-json td {
background: var(--wikitable-bg);
}
.mw-json th {
background: var(--wikitable-header-bg);
}
432d3f2c6e20ce1455ee06071d9603a83f44ebd9
1667
1660
2024-03-31T23:44:12Z
Merds
25
Updating CSS from [[MediaWiki:Common.less]]
css
text/css
/* <pre> */
:root {
--body-main: #fdfcfc;
--body-light: #f5f0eb;
--body-mid: #d1b9ad;
--body-dark: #b1886f;
--body-border: #d1b9ad;
--body-background-color: #173a4d;
--button-background: #605443;
--button-color: #fff;
--button-border: #3c352a;
--button-dark: #18140c;
--button-light: #3a301d;
--sidebar: #cfc08d;
--background-text-color: #e2dbc8;
--background-link-color: #e2bd8a;
--search-box: #efeee6;
--link-color: #6e452b;
--redlink-color: #ba0000;
--text-color: #2F2828;
--byline-color: #ccc;
--subtle-color: #777;
--admin-blue: #332e75;
--bearcat-green: #13592e;
--awb-purple: #933b96;
--rsw-blue: #438ab6;
--osrsw-brown: #605443;
--thumb-bg: var(--body-light);
--thumb-caption-bg: var(--body-mid);
--sourceeditor-input-background: #fff;
--sourceeditor-background: var(--body-light);
--sourceeditor-background-secondary: var(--body-light);
--sourceeditor-border: var(--body-mid);
--codemirror-gutter-background: var(--body-mid);
}
@font-face {
font-family: 'Lora';
font-weight: 400 700;
font-style: normal;
font-display: swap;
src: url('filepath://Lora.woff2') format('woff2');
}
@font-face {
font-family: 'Lora';
font-weight: 400 700;
font-style: italic;
font-display: swap;
src: url('filepath://Lora-Italic.woff2') format('woff2');
}
:root {
--base-text-color: #36414f;
--base-heading-color: #444e5a;
--base-heading-border: #e4eaee;
--mw-code-background-color: #ddd4bb;
--body-background-image: url('filepath://Wiki_background.jpg');
}
#mw-page-base {
background: none;
}
.mw-body {
background-color: var(--body-main);
color: var(--text-color);
border-color: transparent;
box-shadow: 0 0 7px rgba(0, 0, 0, 0.15);
margin-top: 0;
}
h1,
h2,
h3,
h4,
h5,
h6 {
color: var(--text-color);
}
h1,
h2 {
border-color: var(--sidebar);
}
.mw-body h1,
.mw-body-content h1,
.mw-body-content h2,
.mw-body-content h3,
.mw-body-content h4,
.mw-body-content h5,
.mw-body-content h6 {
font-family: 'Lora', 'Palatino', 'Georgia', serif;
}
.mw-parser-output h2:first-of-type {
clear: left;
}
.mw-footer {
color: var(--background-text-color);
}
.mw-footer li {
color: var(--background-text-color);
}
.mw-footer a,
.mw-footer a:active,
.mw-footer a:visited {
color: var(--background-link-color);
}
::placeholder {
color: var(--subtle-color);
}
a {
color: var(--link-color);
}
a:visited,
a:active {
color: var(--link-color);
}
a.new {
color: var(--redlink-color);
}
a.new:visited {
color: var(--redlink-color);
}
.mw-parser-output a.extiw,
.mw-parser-output a.external {
color: var(--link-color);
}
.mw-parser-output a.extiw:visited,
.mw-parser-output a.external:visited,
.mw-parser-output a.extiw:active,
.mw-parser-output a.external:active {
color: var(--link-color);
}
.jsPurgeLink a.external {
color: var(--link-color);
}
:root {
--errorbox-bg: #feecea;
--errorbox-border: #ee4231;
--warningbox-bg: #fef9de;
--warningbox-border: #f9d000;
--successbox-bg: #ecf8e3;
--successbox-border: #6bc71f;
}
.mw-message-box-error,
.errorbox,
.mw-message-box-warning,
.warningbox,
.mw-message-box-success,
.successbox,
.usermessage {
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
}
.mw-message-box-error,
.errorbox {
background-color: var(--errorbox-bg);
border-color: var(--errorbox-border);
}
.mw-message-box-warning,
.warningbox,
.usermessage {
background-color: var(--warningbox-bg);
border-color: var(--warningbox-border);
}
.mw-message-box-success,
.successbox {
background-color: var(--successbox-bg);
border-color: var(--successbox-border);
}
.catlinks {
background: var(--body-light);
border: 1px solid var(--body-dark);
padding: 8px 15px;
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
}
.catlinks li {
border-color: var(--body-mid);
}
.filehistory a img,
#file img {
background: url("data:image/svg+xml,%3C%3Fxml version='1.0' encoding='UTF-8'%3F%3E%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16'%3E%3Cpath d='M0 0h8v16h8V8H0z' opacity='.13'/%3E%3C/svg%3E") repeat;
}
#file img:hover {
background: none;
}
.mw-highlight {
background: none;
}
.mw-highlight .linenos {
background-color: var(--mw-code-background-color);
color: var(--body-border);
}
.mw-highlight a:hover .linenos,
.mw-highlight .hll a .linenos {
color: var(--body-dark);
}
.mw-content-ltr.mw-highlight-lines pre,
.mw-content-ltr.content .mw-highlight-lines pre {
box-shadow: inset 2.75em 0 0 var(--mw-code-background-color);
}
#pagehistory ul {
list-style: none;
margin: 0;
}
#pagehistory li {
border: 1px solid transparent;
padding: 1px 10px;
margin: 2px 0;
}
#pagehistory li.selected {
background-color: var(--body-light);
color: inherit;
border: 1px dashed var(--body-border);
outline: none;
}
#mw-history-compare > div:first-of-type {
position: -webkit-sticky;
position: sticky;
top: 0;
background-color: var(--body-main);
border-bottom: 1px solid var(--body-dark);
padding: 0.25em 0;
}
.wgl-stickyheader #mw-history-compare > div:first-of-type {
top: 2.5rem;
}
.autocomment,
.autocomment a,
.autocomment a:visited {
color: var(--link-color);
}
li span.deleted,
span.history-deleted {
color: var(--byline-color);
}
.mw-usertoollinks-contribs-no-edits,
.mw-usertoollinks-contribs-no-edits:visited {
color: var(--redlink-color);
}
.CategoryTreeToggle {
color: var(--link-color);
}
body.wgl-stickyheader.action-view .mw-headline:target::before {
display: block;
content: '';
margin-top: -3rem;
height: 3rem;
visibility: hidden;
pointer-events: none;
}
.mw-mmv-post-image {
color: var(--text-color);
background-color: var(--body-main);
}
.mw-mmv-image-metadata {
border-top-color: var(--body-mid);
background-color: var(--body-light);
}
.mw-mmv-dialog,
.mw-mmv-dialog .mw-mmv-dialog-down-arrow,
.mw-mmv-options-dialog .mw-mmv-dialog-down-arrow {
background-color: var(--body-light);
box-shadow: none;
}
.mw-mmv-options-enable-alert {
background-color: var(--body-light);
color: var(--text-color);
}
.mw-mmv-options-dialog-header,
.mw-mmv-options-text-header,
.mw-mmv-options-text-body,
.mw-mmv-options-enable-alert,
.mw-mmv-options-dialog .mw-mmv-disable-confirmation .mw-mmv-options-dialog-header,
.mw-mmv-options-dialog .mw-mmv-disable-confirmation .mw-mmv-options-text-header {
color: var(--text-color);
}
.mw-revslider-container {
border-color: var(--sidebar);
}
.mw-revslider-slider-wrapper {
border-top-color: var(--sidebar);
}
.mw-ui-button {
background-color: var(--ooui-normal);
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
}
.mw-ui-button:not(:disabled):hover,
.mw-ui-button:not(:disabled):active {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
}
.mw-ui-button:not(:disabled):focus {
color: var(--ooui-text);
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent), inset 0 0 0 2px #fff;
}
.mw-ui-button:not(:disabled):visited {
color: var(--ooui-text);
}
.mw-ui-button.mw-ui-progressive:not(:disabled) {
background-color: var(--ooui-progressive);
color: #fff;
border-color: var(--ooui-progressive);
}
.mw-ui-button.mw-ui-progressive:not(:disabled):hover {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
}
.mw-ui-button.mw-ui-progressive:not(:disabled):focus {
box-shadow: inset 0 0 0 1px var(--ooui-accent), inset 0 0 0 2px #fff;
}
.mw-ui-button.mw-ui-progressive:not(:disabled):active,
.mw-ui-button.mw-ui-progressive:not(:disabled).is-on {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
box-shadow: none;
}
.mw-ui-button.mw-ui-destructive:not( :disabled ) {
color: #fff;
}
.mw-ui-button.mw-ui-quiet,
.mw-ui-button.mw-ui-quiet.mw-ui-progressive,
.mw-ui-button.mw-ui-quiet.mw-ui-destructive {
color: var(--text-color);
}
input[type='checkbox']:hover + .mw-ui-button.mw-ui-quiet,
input[type='checkbox']:hover + .mw-ui-button.mw-ui-quiet.mw-ui-progressive,
input[type='checkbox']:hover + .mw-ui-button.mw-ui-quiet.mw-ui-destructive,
.mw-ui-button.mw-ui-quiet:hover,
.mw-ui-button.mw-ui-quiet.mw-ui-progressive:hover,
.mw-ui-button.mw-ui-quiet.mw-ui-destructive:hover {
background-color: rgba(0, 24, 73, 0.02745098);
color: var(--text-color);
border-color: transparent;
}
input[type='checkbox']:focus + .mw-ui-button.mw-ui-quiet,
input[type='checkbox']:focus + .mw-ui-button.mw-ui-quiet.mw-ui-progressive,
input[type='checkbox']:focus + .mw-ui-button.mw-ui-quiet.mw-ui-destructive,
.mw-ui-button.mw-ui-quiet:focus,
.mw-ui-button.mw-ui-quiet.mw-ui-progressive:focus,
.mw-ui-button.mw-ui-quiet.mw-ui-destructive:focus {
color: var(--text-color);
}
input[type='checkbox']:active + .mw-ui-button.mw-ui-quiet,
input[type='checkbox']:active + .mw-ui-button.mw-ui-quiet.mw-ui-progressive,
input[type='checkbox']:active + .mw-ui-button.mw-ui-quiet.mw-ui-destructive,
.mw-ui-button.mw-ui-quiet:active,
.mw-ui-button.mw-ui-quiet.mw-ui-progressive:active,
.mw-ui-button.mw-ui-quiet.mw-ui-destructive:active {
background-color: rgba(0, 36, 73, 0.08235294);
color: var(--text-color);
border-color: #72777d;
}
.mw-ui-input {
background-color: var(--ooui-input);
color: var(--text-color);
border-color: var(--ooui-input-border);
}
.mw-ui-input:hover {
border-color: var(--ooui-input-border--hover);
}
.mw-ui-input::placeholder {
color: var(--byline-color);
}
.mw-content-ltr .redirectText li:first-child {
padding: 0;
background: 0;
}
.mw-content-ltr .redirectText li:first-child::before {
content: '';
background: currentcolor;
-webkit-mask: url("filepath://Redirect-arrow.svg") no-repeat 50% 50% / contain;
mask: url("filepath://Redirect-arrow.svg") no-repeat 50% 50% / contain;
display: inline-block;
width: 47px;
height: 20px;
}
.vector-search-box-inner {
background: var(--body-main) !important;
box-shadow: inset 0 -7px 7px -7px rgba(0, 0, 0, 0.15) !important;
}
.vector-menu-dropdown .vector-menu-heading {
color: var(--vector-tab-link-color) !important;
}
.vector-menu-dropdown .vector-menu-heading:hover {
color: var(--vector-tab-link-color) !important;
}
.vector-menu-dropdown .vector-menu-heading:focus {
color: var(--vector-tab-link-color) !important;
}
:root {
--wikitable-header-bg: var(--body-dark);
--wikitable-border: var(--body-border);
--wikitable-bg: var(--body-light);
--wikitable-bg-lighter: #e9e3d6;
--wikitable-color: var(--text-color);
--table-na-background: rgba(255, 255, 255, 0.3);
--table-na-color: var(--subtle-color);
--table-yes-background: #c3e8a3;
--table-yes-color: #2e5e05;
--table-no-background: #fbc0ba;
--table-no-color: #801c13;
--table-maybe-background: #fcea94;
--table-maybe-color: #786300;
}
.wikitable {
background: var(--wikitable-bg);
color: var(--wikitable-color);
border-color: var(--wikitable-border);
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
}
.wikitable > tr > th,
.wikitable > tr > td,
.wikitable > * > tr > th,
.wikitable > * > tr > td {
border-color: var(--wikitable-border);
}
.wikitable > tr > th.table-noborder,
.wikitable > tr > td.table-noborder,
.wikitable > * > tr > th.table-noborder,
.wikitable > * > tr > td.table-noborder {
border-left-style: hidden;
border-right-style: hidden;
padding-left: 0;
padding-right: 0;
}
.wikitable > tr > th,
.wikitable > * > tr > th {
background-color: var(--wikitable-header-bg);
color: #fff;
}
.tabber .wikitable {
box-shadow: none;
}
.mw_metadata td,
.mw_metadata th {
border-color: var(--wikitable-border);
}
.mw_metadata th {
background-color: var(--wikitable-header-bg);
}
.mw_metadata td {
background-color: var(--wikitable-bg);
}
.mw-datatable {
border-color: var(--wikitable-border);
}
.mw-datatable td,
.mw-datatable th {
border-color: var(--wikitable-border);
}
.mw-datatable th {
background-color: var(--wikitable-header-bg);
}
.mw-datatable td {
background-color: var(--wikitable-bg);
}
.mw-datatable tr:hover td {
background-color: var(--wikitable-bg);
}
table.alternating-rows tr:nth-child(odd),
table.alternating-cols td:nth-child(odd) {
background: var(--wikitable-alternating-bg);
}
.table-na {
background: var(--table-na-background);
color: var(--table-na-color);
vertical-align: middle;
text-align: center;
}
.table-yes {
background: var(--table-yes-background);
color: var(--table-yes-color);
}
.table-positive {
background: var(--table-yes-background);
}
.table-no {
background: var(--table-no-background);
color: var(--table-no-color);
}
.table-negative {
background: var(--table-no-background);
}
.table-maybe {
background: var(--table-maybe-background);
color: var(--table-maybe-color);
}
#mw-allmessagestable .am_actual,
#mw-allmessagestable .am_default {
background-color: var(--wikitable-bg);
}
#mw-allmessagestable .am_default:hover,
#mw-allmessagestable .am_actual:hover,
#mw-allmessagestable tbody:hover td {
background-color: var(--wikitable-bg-lighter);
}
table.wikitable td.no-cell-spacing {
padding: 0;
height: 0;
}
table.wikitable td.no-cell-spacing table {
margin: -1px;
width: calc(100% + 2px);
height: calc(100% + 2px);
}
.plainlist ol,
.plainlist ul {
margin: 0;
}
.plainlist li {
margin-bottom: 0;
list-style: none;
}
table.align-right-1 td:nth-of-type(1),
table.align-right-2 td:nth-of-type(2),
table.align-right-3 td:nth-of-type(3),
table.align-right-4 td:nth-of-type(4),
table.align-right-5 td:nth-of-type(5),
table.align-right-6 td:nth-of-type(6),
table.align-right-7 td:nth-of-type(7),
table.align-right-8 td:nth-of-type(8),
table.align-right-9 td:nth-of-type(9),
table.align-right-10 td:nth-of-type(10),
table.align-right-11 td:nth-of-type(11),
table.align-right-12 td:nth-of-type(12),
table.align-right-13 td:nth-of-type(13),
table.align-right-14 td:nth-of-type(14),
table.align-right-15 td:nth-of-type(15),
table.align-right-16 td:nth-of-type(16),
table.align-right-17 td:nth-of-type(17),
table.align-right-18 td:nth-of-type(18),
table.align-right-19 td:nth-of-type(19),
table.align-right-20 td:nth-of-type(20) {
text-align: right;
}
table.align-center-1 td:nth-of-type(1),
table.align-center-2 td:nth-of-type(2),
table.align-center-3 td:nth-of-type(3),
table.align-center-4 td:nth-of-type(4),
table.align-center-5 td:nth-of-type(5),
table.align-center-6 td:nth-of-type(6),
table.align-center-7 td:nth-of-type(7),
table.align-center-8 td:nth-of-type(8),
table.align-center-9 td:nth-of-type(9),
table.align-center-10 td:nth-of-type(10),
table.align-center-11 td:nth-of-type(11),
table.align-center-12 td:nth-of-type(12),
table.align-center-13 td:nth-of-type(13),
table.align-center-14 td:nth-of-type(14),
table.align-center-15 td:nth-of-type(15),
table.align-center-16 td:nth-of-type(16),
table.align-center-17 td:nth-of-type(17),
table.align-center-18 td:nth-of-type(18),
table.align-center-19 td:nth-of-type(19),
table.align-center-20 td:nth-of-type(20) {
text-align: center;
}
table.align-left-1 td:nth-of-type(1),
table.align-left-2 td:nth-of-type(2),
table.align-left-3 td:nth-of-type(3),
table.align-left-4 td:nth-of-type(4),
table.align-left-5 td:nth-of-type(5),
table.align-left-6 td:nth-of-type(6),
table.align-left-7 td:nth-of-type(7),
table.align-left-8 td:nth-of-type(8),
table.align-left-9 td:nth-of-type(9),
table.align-left-10 td:nth-of-type(10),
table.align-left-11 td:nth-of-type(11),
table.align-left-12 td:nth-of-type(12),
table.align-left-13 td:nth-of-type(13),
table.align-left-14 td:nth-of-type(14),
table.align-left-15 td:nth-of-type(15),
table.align-left-16 td:nth-of-type(16),
table.align-left-17 td:nth-of-type(17),
table.align-left-18 td:nth-of-type(18),
table.align-left-19 td:nth-of-type(19),
table.align-left-20 td:nth-of-type(20) {
text-align: left;
}
:root {
--diff-addedline-border-color: #438ab5;
--diff-addedline-background: #bddff2;
--diff-addedline-color: #000;
--diff-deletedline-border-color: #379541;
--diff-deletedline-background: #c1edbf;
--diff-deletedline-color: #000;
--diff-context-border-color: var(--body-mid);
--diff-context-background: var(--body-mid);
}
.diff-context {
border-color: var(--diff-context-border-color);
background: var(--diff-context-background);
color: inherit;
}
.diff-addedline {
border-color: var(--diff-addedline-border-color);
}
.diff-addedline .diffchange {
background: var(--diff-addedline-background);
color: var(--diff-addedline-color);
}
.diff-deletedline {
border-color: var(--diff-deletedline-border-color);
}
.diff-deletedline .diffchange {
background: var(--diff-deletedline-background);
color: var(--diff-deletedline-color);
}
.mw-diff-movedpara-left:after,
.mw-diff-movedpara-right:after {
color: var(--text-color);
}
.mw-notification {
background-color: var(--body-light);
border-color: var(--body-border);
color: var(--text-color);
}
.mw-echo-ui-notificationsInboxWidget-toolbarWrapper {
background: var(--body-main);
}
.mw-body-content .mw-echo-ui-datedSubGroupListWidget-title-secondary {
color: var(--byline-color);
}
.mw-echo-ui-pageNotificationsOptionWidget.oo-ui-optionWidget-selected {
background-color: var(--ooui-normal);
color: var(--ooui-accent);
}
.mw-echo-ui-pageNotificationsOptionWidget-label-count {
background-color: var(--ooui-normal);
color: var(--byline-color);
}
.oo-ui-optionWidget-selected .mw-echo-ui-pageNotificationsOptionWidget-label-count {
color: var(--ooui-accent);
}
.mw-echo-ui-pageNotificationsOptionWidget.oo-ui-optionWidget-highlighted {
background-color: var(--ooui-normal);
color: var(--text-color);
}
.mw-echo-ui-crossWikiUnreadFilterWidget {
border-color: var(--body-border);
}
.mw-echo-ui-crossWikiUnreadFilterWidget-subtitle {
color: var(--byline-color);
}
.mw-echo-ui-notificationBadgeButtonPopupWidget-popup > .oo-ui-popupWidget-popup > .oo-ui-popupWidget-head,
.mw-echo-ui-notificationBadgeButtonPopupWidget-popup > .oo-ui-popupWidget-popup > .oo-ui-popupWidget-footer {
border-color: var(--ooui-interface-border);
}
.mw-echo-ui-notificationBadgeButtonPopupWidget-popup > .oo-ui-popupWidget-popup > .oo-ui-popupWidget-footer .mw-echo-ui-notificationBadgeButtonPopupWidget-footer-buttons .oo-ui-buttonElement:last-child {
border-left-color: var(--ooui-normal-border);
}
.mw-echo-ui-notificationItemWidget {
background-color: var(--ooui-normal);
border-color: var(--ooui-normal-border);
}
.mw-echo-ui-notificationItemWidget:hover,
.mw-echo-ui-notificationItemWidget-unread:hover {
background-color: var(--ooui-normal--hover);
}
.mw-echo-ui-notificationItemWidget:last-child {
border-bottom-color: var(--ooui-normal-border);
}
.mw-echo-ui-notificationItemWidget-unread {
background-color: var(--search-box);
}
.mw-echo-ui-crossWikiNotificationItemWidget-group,
.mw-echo-ui-bundleNotificationItemWidget-group {
background-color: var(--ooui-interface);
}
.mw-echo-ui-toggleReadCircleButtonWidget-circle {
background-color: var(--ooui-progressive);
}
.mw-echo-ui-toggleReadCircleButtonWidget:hover .mw-echo-ui-toggleReadCircleButtonWidget-circle {
background-color: var(--ooui-progressive--hover);
}
.mw-echo-ui-toggleReadCircleButtonWidget-circle-unread {
background-color: var(--ooui-normal);
border-color: var(--ooui-normal-border);
}
.mw-echo-ui-notificationItemWidget-content-message-header,
.mw-echo-ui-notificationItemWidget-content-message-body,
.mw-echo-ui-menuItemWidget > .oo-ui-buttonElement-button > .oo-ui-labelElement-label,
.mw-echo-ui-notificationItemWidget-content-actions-timestamp {
color: var(--ooui-text);
}
.mw-echo-ui-bundleNotificationItemWidget-group {
background-color: var(--body-main);
}
@keyframes unseen-fadeout-to-unread {
from {
background-color: var(--wikitable-bg-lighter);
}
to {
background-color: var(--search-box);
}
}
@keyframes unseen-fadeout-to-read {
from {
background-color: var(--wikitable-bg-lighter);
}
to {
background-color: var(--body-main);
}
}
.mwe-popups {
background: var(--body-light);
}
.mwe-popups .mwe-popups-container {
color: var(--text-color);
background: var(--body-light);
}
.mwe-popups .mwe-popups-container.flipped-x-y:before,
.mwe-popups .mwe-popups-container.flipped-y:before {
border-top: none;
}
.mwe-popups .mwe-popups-container.mwe-popups-no-image-tri:before {
border-bottom: none;
}
.mwe-popups .mwe-popups-container.flipped-x-y:after,
.mwe-popups .mwe-popups-container.flipped-y:after {
border-top-color: var(--body-light);
}
.mwe-popups .mwe-popups-container.mwe-popups-no-image-tri:after {
border-bottom-color: var(--body-light);
}
.mwe-popups .mwe-popups-settings-icon:hover,
.mwe-popups .mwe-popups-settings-icon:active {
background-color: var(--ooui-normal--hover);
}
.mwe-popups .mw-ui-icon-element:not(.disabled):hover {
background: none;
}
.mwe-popups .mwe-popups-extract {
color: var(--text-color);
}
.mwe-popups .mwe-popups-extract[dir='ltr']:after {
background-image: linear-gradient(to right, rgba(49, 62, 89, 0), var(--body-light) 50%);
}
.mwe-popups-overlay {
background-color: var(--ooui-window-background);
}
#mwe-popups-settings {
background: var(--ooui-interface);
border-color: var(--ooui-interface-border);
color: var(--text-color);
}
#mwe-popups-settings header {
border-color: var(--ooui-interface-border);
}
#mwe-popups-settings main#mwe-popups-settings-form p {
color: var(--byline-color);
}
#mwe-popups-settings main#mwe-popups-settings-form form label > span {
color: var(--ooui-text);
}
:root {
--smw-ask-options-even-bg: var(--body-mid);
--smw-ask-options-odd-bg: var(--body-light);
--smw-ask-action-btn-lblue-bg: var(--body-main);
--smw-ask-action-btn-lblue-color: #000;
--smw-ask-action-btn-lblue-border-color: var(--body-light);
--smw-ask-action-btn-dblue-bg: var(--body-light);
--smw-ask-action-btn-dblue-color: #fff;
--smw-ask-action-btn-dblue-border-color: var(--button-border);
}
.smw-ask-condition fieldset,
.smw-ask-printhead fieldset {
border-color: var(--sidebar);
}
.smw-ask-search fieldset,
.smw-ask-format fieldset,
.smw-ask-options fieldset {
border-color: var(--sidebar);
}
.strike > span:before,
.strike > span:after {
background: var(--sidebar);
}
.smw-ask-options-fields tr td {
background-color: var(--smw-ask-options-even-bg);
}
.smw-ask-options-fields tr:nth-child(odd) td {
background-color: var(--smw-ask-options-odd-bg);
}
.smw-ask-action-btn.smw-ask-action-btn-lblue,
.smw-ask-action-btn.smw-ask-action-btn-lblue:hover,
.smw-ask-action-btn.smw-ask-action-btn-lblue:visited {
background-color: var(--smw-ask-action-btn-lblue-bg);
color: var(--smw-ask-action-btn-lblue-color);
border-color: var(--smw-ask-action-btn-lblue-border-color);
}
.smw-ask-action-btn.smw-ask-action-btn-dblue,
.smw-ask-action-btn.smw-ask-action-btn-dblue:hover,
.smw-ask-action-btn.smw-ask-action-btn-dblue:visited {
background-color: var(--smw-ask-action-btn-dblue-bg);
color: var(--smw-ask-action-btn-dblue-color);
border-color: var(--smw-ask-action-btn-dblue-border-color);
}
.smw-ask-query textarea,
.smw-ask-actions textarea {
background-color: var(--ooui-interface);
border-color: var(--ooui-interface-border);
color: var(--ooui-text);
}
.smw-ask-query-format select {
background-color: var(--ooui-interface);
border: 1px solid var(--ooui-interface-border);
color: var(--ooui-text);
}
.smw-ask-toplinks {
background-color: var(--body-mid);
}
.smw-ask-toplinks span.smw-icon-info {
background: none;
padding: 0 !important;
}
.smw-ask-toplinks span.smw-icon-info::before {
content: '';
background: var(--text-color);
-webkit-mask: url("data:image/svg+xml,%3C%3Fxml version='1.0' encoding='UTF-8'%3F%3E%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 20 20'%3E%3Ctitle%3Einfo%3C/title%3E%3Cpath d='M10 0C4.477 0 0 4.477 0 10s4.477 10 10 10 10-4.477 10-10S15.523 0 10 0zM9 5h2v2H9zm0 4h2v6H9z'/%3E%3C/svg%3E") no-repeat 50% 50% / contain;
mask: url("data:image/svg+xml,%3C%3Fxml version='1.0' encoding='UTF-8'%3F%3E%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 20 20'%3E%3Ctitle%3Einfo%3C/title%3E%3Cpath d='M10 0C4.477 0 0 4.477 0 10s4.477 10 10 10 10-4.477 10-10S15.523 0 10 0zM9 5h2v2H9zm0 4h2v6H9z'/%3E%3C/svg%3E") no-repeat 50% 50% / contain;
padding: 0 0 3px 18px;
}
.smw-ask-options-row-odd {
background-color: var(--body-light);
}
.smw-ask-options-row-even {
background-color: var(--body-mid);
}
#options-toggle:not(:checked) + #options-list .options-parameter-list:after {
background-image: linear-gradient(to bottom, transparent, var(--body-mid) 90%);
}
.smw-ask-button-submit input {
background-color: var(--ooui-normal);
border-color: var(--ooui-normal-border);
color: var(--text-color);
}
.smw-ask-button-submit input:hover,
.smw-ask-button-lgrey:hover {
background-color: var(--ooui-normal--hover);
border-color: var(--ooui-normal-border);
}
input.smw-ask-action-btn.smw-ask-action-btn-dblue {
background-color: var(--ooui-normal);
border-color: var(--ooui-normal-border);
color: var(--ooui-text);
}
a.smw-ask-action-btn.smw-ask-action-btn-lblue {
background-color: var(--body-mid);
border-color: var(--body-mid);
color: var(--ooui-text);
}
a.smw-ask-action-btn.smw-ask-action-btn-lblue:visited {
background-color: var(--body-mid);
border-color: var(--body-mid);
color: var(--ooui-text);
}
a.smw-ask-action-btn.smw-ask-action-btn-lblue:hover {
background-color: var(--body-mid);
border-color: var(--body-mid);
color: var(--ooui-text);
}
a.smw-ask-action-btn-lgrey {
background-color: var(--ooui-normal);
border-color: var(--ooui-normal-border);
color: var(--ooui-text);
}
a.smw-ask-action-btn-lgrey:hover {
background-color: var(--ooui-normal--hover);
border-color: var(--ooui-normal-border);
color: var(--ooui-text);
}
.smw-callout-error {
background-color: var(--errorbox-bg);
border-color: var(--errorbox-border);
}
.smw-callout-info {
background-color: var(--body-light);
border-color: var(--body-dark);
}
.smw-callout-success {
background-color: var(--successbox-bg);
border-color: var(--successbox-border);
}
.smw-callout-warning {
background-color: var(--warningbox-bg);
border-color: var(--warningbox-bg);
}
.smw-tabs input.nav-tab:checked + label.nav-label,
.smw-tabs input.nav-tab:checked + label.nav-label:hover {
color: inherit;
}
#tab-smw-property-value:checked + label.nav-label .usage-count {
color: #fff;
background-color: var(--ooui-progressive);
}
#tab-smw-property-value:checked + label.nav-label .usage-count.moderate {
color: #fff;
background-color: #b55e0c;
border-color: #b55e0c;
}
#tab-smw-property-value:checked + label.nav-label .usage-count.high {
color: #fff;
background-color: #9f261e;
border-color: #9f261e;
}
.smw-property-page-results .header-title {
background-color: var(--ooui-interface);
border-bottom-color: var(--ooui-interface-border);
color: var(--ooui-text);
}
.smw-property-page-results .value-row:hover {
background-color: var(--ooui-normal--hover);
}
.smw-property-page-results .smw-table .header-row {
color: var(--text-color);
}
.tippy-tooltip.light-border-theme {
background-color: var(--body-light);
color: var(--text-color);
}
.tippy-tooltip.light-border-theme .tippy-arrow {
border-top-color: var(--body-light);
}
.tippy-tooltip.light-border-theme .tippy-arrow:after {
border-top-color: var(--body-light);
}
.tippy-header {
background-color: var(--body-dark);
border-bottom-color: var(--body-mid);
}
.smw-ui-input-filter {
background-color: var(--ooui-interface);
border-color: var(--ooui-interface-border);
color: var(--ooui-text);
}
.smw-ui-input-filter input {
border-left-color: var(--ooui-interface-border) !important;
color: var(--ooui-text) !important;
}
.smw-ui-pagination .page-link.link-disabled {
background-color: var(--ooui-disabled);
border-color: var(--ooui-disabled-border);
color: var(--subtle-color);
}
.smw-ui-pagination .page-link {
background-color: var(--ooui-normal);
border-color: var(--ooui-normal-border);
color: var(--link-color);
}
.smw-ui-pagination .page-link:hover {
background-color: var(--ooui-normal--hover);
border-color: var(--ooui-normal-border);
color: var(--link-color);
}
.smw-ui-pagination .page-link.link-active {
color: #fff;
background-color: var(--ooui-progressive);
border-color: var(--ooui-progressive);
}
.smw-tabs input.nav-tab:checked + label.nav-label {
border-color: var(--ooui-normal-border);
}
.smw-tabs section,
.smw-tabs .subtab-content {
border-top-color: var(--ooui-normal-border);
}
.smw-column-header {
color: var(--text-color);
}
.smw-factbox {
background: var(--body-main);
border-color: transparent;
}
.mw-body .mw-indicators #mw-indicator-smw-entity-examiner.mw-indicator .smw-indicator-vertical-bar-loader {
display: none;
}
.smwb-theme-light .smwb-title,
.smwb-theme-light .smwb-center,
.smwb-theme-light .smwb-actions,
.smwb-theme-light .smwb-prophead {
background-color: var(--body-mid);
}
.smwb-theme-light .smwb-factbox {
border-left-color: var(--body-mid);
}
.smwb-theme-light .smwb-ifactbox {
border-right-color: var(--body-mid);
}
.smwb-theme-light .smwb-propval {
background-color: var(--body-light);
}
.smwb-action-separator {
border-color: var(--wikitable-border);
}
.smwb-bottom {
border-bottom: 1px solid var(--wikitable-border);
}
.smwb-ifactbox .smwb-cell,
.smwb-factbox .smwb-cell {
border-top: 1px solid var(--wikitable-border);
}
.smwb-propvalue .smwb-prophead,
.smwb-ipropvalue .smwb-prophead,
.smwb-propvalue .smwb-propval,
.smwb-ipropvalue .smwb-propval {
font-size: 0.9em;
}
:root {
--filter-black-to-link: invert(36%) sepia(58%) saturate(433%) hue-rotate(344deg) brightness(100%) contrast(91%);
}
#bodyContent span.smwbrowse a {
color: black;
background-image: url('filepath://Smwbrowse.svg');
filter: var(--filter-black-to-link);
}
#bodyContent span.smwbrowse a:hover {
color: black;
background-image: url('filepath://Smwbrowse-hover.svg');
text-decoration: underline;
}
#bodyContent span.smwsearch a {
color: black;
filter: var(--filter-black-to-link);
background-image: url('filepath://Smwsearch.svg');
}
#bodyContent span.smwsearch a:hover {
color: black;
background-image: url('filepath://Smwsearch-hover.svg');
text-decoration: underline;
}
:root {
--tabber-tab-bg: var(--body-light);
--tabber-tab-border-color: var(--body-border);
--tabber-active-tab-bg: var(--body-light);
--tabber-active-tab-color: var(--text-color);
--tabber-active-tab-hover-bg: var(--body-light);
--tabber-active-tab-hover-border-color: var(--body-border);
--tabber-active-tab-hover-color: var(--text-color);
--tabber-active-tab-border-hider-color: var(--body-light);
--tabber-inactive-tab-bg: var(--body-background-color);
--tabber-inactive-tab-border-color: var(--body-border);
--tabber-inactive-tab-color: var(--text-color);
--tabber-inactive-tab-hover-bg: var(--body-light);
--tabber-inactive-tab-hover-border-color: var(--body-border);
}
.tabber {
margin: 1em 0;
}
.tabber .tabbertab {
background-color: var(--tabber-tab-bg);
border: 1px solid var(--tabber-tab-border-color);
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
padding: 1em 1.5em;
}
ul.tabbernav {
border: none;
margin-left: 2em;
margin-bottom: 0;
margin-right: 2em;
padding: 0;
font-family: inherit;
}
ul.tabbernav li.tabberactive > a {
background-color: var(--tabber-active-tab-bg);
color: var(--tabber-active-tab-color);
border-bottom: none;
position: relative;
}
ul.tabbernav li.tabberactive > a:hover {
color: var(--tabber-active-tab-hover-color);
background-color: var(--tabber-active-tab-hover-bg);
border-color: var(--tabber-active-tab-hover-border-color);
border-bottom: none;
}
ul.tabbernav li.tabberactive > a::after {
content: '';
position: absolute;
left: 0;
right: 0;
bottom: -1px;
border-bottom: 2px solid var(--tabber-active-tab-border-hider-color);
}
ul.tabbernav li a {
background-color: var(--tabber-inactive-tab-bg);
border-bottom: transparent;
border-color: var(--tabber-inactive-tab-border-color);
color: var(--tabber-inactive-tab-color);
display: inline-block;
font-size: 110%;
padding: 0.5em 1em;
}
ul.tabbernav li a:hover {
background-color: var(--tabber-inactive-tab-hover-bg);
border-color: var(--tabber-inactive-tab-hover-border-color);
}
ul.tabbernav li a:link,
ul.tabbernav li a:visited {
color: var(--tabber-inactive-tab-color);
}
:root {
--ooui-text: var(--text-color);
--ooui-interface: var(--body-light);
--ooui-interface-border: var(--body-border);
--ooui-window-background: rgba(255, 255, 255, 0.5);
--ooui-normal: #d5c7ad;
--ooui-normal--hover: #dfd5c1;
--ooui-normal-border: #b8a282;
--ooui-progressive: #605443;
--ooui-progressive--hover: #7e6e58;
--ooui-accent: var(--link-color);
--ooui-input: #fff;
--ooui-input-border: #b8a282;
--ooui-input-border--hover: #8a724f;
--ooui-disabled: #d1cdc5;
--ooui-disabled-border: #c2b9ab;
--ooui-disabled-text: var(--subtle-color);
--ooui-pending-background-image: repeating-linear-gradient(-45deg, var(--search-box), var(--search-box) 20px, var(--body-main) 20px, var(--body-main) 30px);
}
.oo-ui-widget {
color: var(--ooui-text);
}
.oo-ui-checkboxInputWidget [type='checkbox'] + span,
.oo-ui-radioInputWidget [type='radio'] + span {
background-color: var(--ooui-input);
border-color: var(--ooui-input-border);
}
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:checked + span,
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:indeterminate + span {
background-color: var(--ooui-progressive);
border-color: var(--ooui-progressive);
}
.oo-ui-radioInputWidget.oo-ui-widget-enabled [type='radio']:checked + span {
border-color: var(--ooui-progressive);
}
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:checked:hover + span,
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:indeterminate:hover + span {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
}
.oo-ui-radioInputWidget.oo-ui-widget-enabled [type='radio']:checked:hover + span {
border-color: var(--ooui-progressive--hover);
}
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:hover + span,
.oo-ui-radioInputWidget.oo-ui-widget-enabled [type='radio']:hover + span {
border-color: var(--ooui-accent);
}
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:focus + span {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:active + span,
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:checked:active + span,
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:indeterminate:active + span {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
box-shadow: inset 0 0 0 1px var(--ooui-progressive--hover);
}
.oo-ui-radioInputWidget.oo-ui-widget-enabled [type='radio']:active + span {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
}
.oo-ui-radioInputWidget.oo-ui-widget-enabled [type='radio']:checked:active + span {
border-color: var(--ooui-progressive--hover);
box-shadow: inset 0 0 0 1px var(--ooui-progressive--hover);
}
.oo-ui-radioInputWidget.oo-ui-widget-enabled [type='radio']:checked:active + span:before {
border-color: var(--ooui-progressive--hover);
}
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:checked:focus + span,
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:indeterminate:focus + span {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent), inset 0 0 0 2px #fff;
}
.oo-ui-checkboxInputWidget [type='checkbox']:disabled + span,
.oo-ui-radioInputWidget [type='radio']:disabled + span {
background-color: var(--ooui-disabled);
border-color: var(--ooui-disabled);
}
.oo-ui-dropdownWidget-handle {
border-color: var(--ooui-normal-border);
}
.oo-ui-dropdownWidget.oo-ui-widget-enabled .oo-ui-dropdownWidget-handle {
background-color: var(--ooui-normal);
color: var(--ooui-text);
}
.oo-ui-dropdownWidget.oo-ui-widget-enabled .oo-ui-dropdownWidget-handle:hover {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
}
.oo-ui-dropdownWidget.oo-ui-widget-enabled .oo-ui-dropdownWidget-handle:active {
color: var(--ooui-text);
}
.oo-ui-dropdownWidget.oo-ui-widget-enabled .oo-ui-dropdownWidget-handle:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-dropdownWidget.oo-ui-widget-enabled.oo-ui-dropdownWidget-open .oo-ui-dropdownWidget-handle {
background-color: var(--ooui-normal--hover);
}
.oo-ui-dropdownWidget.oo-ui-widget-disabled .oo-ui-dropdownWidget-handle {
color: var(--ooui-disabled-text);
text-shadow: none;
border-color: var(--ooui-disabled-border);
background-color: var(--ooui-disabled);
}
.oo-ui-dropdownInputWidget select {
border-color: var(--ooui-normal-border);
}
.oo-ui-dropdownInputWidget option {
background-color: var(--ooui-interface);
}
.oo-ui-dropdownInputWidget.oo-ui-widget-enabled {
background-color: var(--ooui-normal);
}
.oo-ui-dropdownInputWidget.oo-ui-widget-enabled:hover {
background-color: var(--ooui-normal--hover);
}
.oo-ui-dropdownInputWidget.oo-ui-widget-enabled select {
color: var(--ooui-text);
}
.oo-ui-dropdownInputWidget.oo-ui-widget-enabled select:hover,
.oo-ui-dropdownInputWidget.oo-ui-widget-enabled select:active {
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
}
.oo-ui-dropdownInputWidget.oo-ui-widget-enabled select:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-labelWidget.oo-ui-inline-help {
color: var(--byline-color);
}
.oo-ui-menuSelectWidget {
background-color: var(--ooui-interface);
border-color: var(--ooui-interface-border);
}
.oo-ui-menuSelectWidget-frameless {
box-shadow: inset 0 -1px 0 0 var(--ooui-normal-border);
}
.oo-ui-menuSectionOptionWidget {
color: var(--byline-color);
}
.oo-ui-menuOptionWidget.oo-ui-optionWidget-highlighted,
.oo-ui-menuOptionWidget.oo-ui-optionWidget-selected {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
}
.oo-ui-menuOptionWidget.oo-ui-optionWidget-selected.oo-ui-menuOptionWidget.oo-ui-optionWidget-highlighted,
.oo-ui-menuOptionWidget.oo-ui-optionWidget-pressed.oo-ui-menuOptionWidget.oo-ui-optionWidget-highlighted {
color: var(--ooui-accent);
}
.oo-ui-menuOptionWidget.oo-ui-widget-enabled.oo-ui-optionWidget {
color: var(--ooui-text);
}
.oo-ui-messageDialog-title {
color: inherit;
}
.oo-ui-messageWidget.oo-ui-messageWidget-block.oo-ui-flaggedElement-error {
background-color: var(--errorbox-bg);
border-color: var(--errorbox-border);
}
.oo-ui-messageWidget.oo-ui-messageWidget-block.oo-ui-flaggedElement-warning {
background-color: var(--warningbox-bg);
border-color: var(--warningbox-border);
}
.oo-ui-messageWidget.oo-ui-messageWidget-block.oo-ui-flaggedElement-success {
background-color: var(--successbox-bg);
border-color: var(--successbox-border);
}
.oo-ui-messageWidget.oo-ui-messageWidget-block.oo-ui-flaggedElement-notice {
background-color: var(--messagebox-info-background);
border-color: var(--messagebox-info-border);
}
.oo-ui-messageWidget.oo-ui-flaggedElement-error:not(.oo-ui-messageWidget-block),
.oo-ui-messageWidget.oo-ui-flaggedElement-success:not(.oo-ui-messageWidget-block) {
color: var(--ooui-text);
}
.oo-ui-optionWidget.oo-ui-widget-disabled {
color: var(--ooui-disabled-text);
}
.oo-ui-outlineControlsWidget {
background-color: var(--ooui-normal);
}
.oo-ui-outlineOptionWidget.oo-ui-optionWidget-highlighted {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
}
.oo-ui-popupWidget-popup {
background-color: var(--ooui-interface);
border-color: var(--ooui-interface-border);
}
.oo-ui-popupWidget-anchored-top .oo-ui-popupWidget-anchor:after {
border-bottom-color: var(--ooui-interface);
}
.oo-ui-popupWidget-anchored-top .oo-ui-popupWidget-anchor:before {
border-bottom-color: var(--ooui-interface-border);
}
.oo-ui-popupWidget-anchored-bottom .oo-ui-popupWidget-anchor:after {
border-top-color: var(--ooui-interface);
}
.oo-ui-popupWidget-anchored-bottom .oo-ui-popupWidget-anchor:before {
border-top-color: var(--ooui-interface-border);
}
.oo-ui-popupWidget-anchored-start .oo-ui-popupWidget-anchor:after {
border-right-color: var(--ooui-interface);
}
.oo-ui-popupWidget-anchored-start .oo-ui-popupWidget-anchor:before {
border-right-color: var(--ooui-interface-border);
}
.oo-ui-popupWidget-anchored-end .oo-ui-popupWidget-anchor:after {
border-left-color: var(--ooui-interface);
}
.oo-ui-popupWidget-anchored-end .oo-ui-popupWidget-anchor:before {
border-left-color: var(--ooui-interface-border);
}
.oo-ui-searchWidget-query {
border-bottom-color: var(--ooui-interface-border);
}
.oo-ui-selectFileWidget-dropTarget {
background-color: var(--ooui-interface);
border-color: var(--ooui-interface-border);
}
.oo-ui-selectFileWidget.oo-ui-widget-enabled.oo-ui-selectFileWidget-dropTarget {
background-color: var(--ooui-interface);
}
.oo-ui-selectFileWidget.oo-ui-widget-enabled.oo-ui-selectFileWidget-dropTarget:hover {
border-color: var(--ooui-input-border--hover);
}
.oo-ui-tabOptionWidget {
color: var(--ooui-text);
}
.oo-ui-tabSelectWidget-framed .oo-ui-tabOptionWidget.oo-ui-optionWidget-selected {
background-color: var(--body-dark);
color: var(--ooui-text);
}
.oo-ui-tabSelectWidget-framed .oo-ui-tabOptionWidget.oo-ui-optionWidget-selected .oo-ui-labelElement-label {
border-bottom-color: var(--body-border);
}
.oo-ui-tabSelectWidget-framed .oo-ui-tabOptionWidget.oo-ui-widget-enabled:hover,
.oo-ui-tabSelectWidget-framed .oo-ui-tabOptionWidget.oo-ui-widget-enabled:active {
background-color: var(--body-light);
color: var(--ooui-text);
}
.oo-ui-tabSelectWidget-framed .oo-ui-tabOptionWidget.oo-ui-widget-enabled.oo-ui-optionWidget-selected:hover {
background-color: var(--body-dark);
}
.oo-ui-tabSelectWidget-frameless .oo-ui-tabOptionWidget.oo-ui-optionWidget-selected {
color: var(--ooui-progressive);
box-shadow: inset 0 -2px 0 0 var(--ooui-progressive);
}
.oo-ui-tabSelectWidget-frameless .oo-ui-tabOptionWidget.oo-ui-optionWidget-selected:hover,
.oo-ui-tabSelectWidget-frameless .oo-ui-tabOptionWidget.oo-ui-optionWidget-selected:focus {
color: var(--ooui-progressive--hover);
box-shadow: inset 0 -2px 0 0 var(--ooui-progressive--hover);
}
.oo-ui-tabSelectWidget-framed {
background: none;
border-bottom: 1px solid var(--ooui-interface-border);
}
.oo-ui-tabSelectWidget-frameless {
box-shadow: inset 0 -1px 0 0 var(--ooui-interface-border);
}
.oo-ui-tabSelectWidget-mobile {
}
.oo-ui-tabSelectWidget-mobile.oo-ui-tabSelectWidget-framed:after {
background: var(--mobile-navbox-linear-gradient);
}
.oo-ui-tabSelectWidget-mobile.oo-ui-tabSelectWidget-frameless:after {
background: var(--mobile-navbox-linear-gradient);
}
.oo-ui-tagItemWidget {
border-color: var(--ooui-normal-border);
}
.oo-ui-tagItemWidget.oo-ui-widget-enabled {
color: var(--ooui-text);
}
.oo-ui-tagItemWidget.oo-ui-widget-enabled:hover {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
}
.oo-ui-tagItemWidget.oo-ui-widget-enabled:not( .oo-ui-tagItemWidget-fixed ) {
background-color: var(--ooui-normal);
}
.oo-ui-tagItemWidget.oo-ui-widget-enabled .oo-ui-buttonElement-button:hover {
background-color: var(--ooui-normal--hover);
}
.oo-ui-tagMultiselectWidget.oo-ui-widget-enabled {
background-color: var(--ooui-interface);
}
.oo-ui-tagMultiselectWidget.oo-ui-widget-enabled.oo-ui-tagMultiselectWidget-outlined {
background-color: var(--ooui-normal);
}
.oo-ui-tagMultiselectWidget.oo-ui-widget-enabled.oo-ui-tagMultiselectWidget-outlined .oo-ui-tagItemWidget.oo-ui-widget-enabled {
background-color: var(--ooui-interface);
}
.oo-ui-textInputWidget .oo-ui-inputWidget-input {
background-color: var(--ooui-input);
color: var(--ooui-text);
border-color: var(--ooui-input-border);
}
.oo-ui-textInputWidget.oo-ui-widget-enabled .oo-ui-inputWidget-input::placeholder {
color: var(--subtle-color);
}
.oo-ui-textInputWidget.oo-ui-widget-enabled .oo-ui-inputWidget-input:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-textInputWidget.oo-ui-widget-enabled .oo-ui-inputWidget-input[readonly]:not(.oo-ui-pendingElement-pending) {
background-color: var(--ooui-disabled);
color: var(--ooui-disabled-text);
}
.oo-ui-textInputWidget.oo-ui-widget-enabled:hover .oo-ui-inputWidget-input {
border-color: var(--ooui-input-border--hover);
}
.oo-ui-textInputWidget.oo-ui-widget-enabled:hover .oo-ui-inputWidget-input:focus {
border-color: var(--ooui-accent);
}
@media screen and (min-width: 0) {
.oo-ui-textInputWidget.oo-ui-widget-enabled textarea.oo-ui-inputWidget-input:focus {
outline: 1px solid var(--ooui-accent);
}
}
.oo-ui-textInputWidget.oo-ui-widget-disabled .oo-ui-inputWidget-input {
background-color: var(--ooui-disabled);
color: var(--ooui-disabled-text);
text-shadow: none;
border-color: var(--ooui-disabled-border);
}
.oo-ui-toggleSwitchWidget {
background-color: var(--ooui-input);
border-color: var(--ooui-input-border);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled .oo-ui-toggleSwitchWidget-grip {
background-color: var(--ooui-input);
border-color: var(--ooui-input-border);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:hover {
background-color: var(--ooui-input);
border-color: var(--ooui-accent);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:hover .oo-ui-toggleSwitchWidget-grip {
background-color: var(--ooui-input);
border-color: var(--ooui-accent);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:active,
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:active:hover,
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:active:focus {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
box-shadow: inset 0 0 0 1px var(--ooui-progressive--hover);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:active .oo-ui-toggleSwitchWidget-grip,
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:active:hover .oo-ui-toggleSwitchWidget-grip,
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:active:focus .oo-ui-toggleSwitchWidget-grip {
background-color: var(--ooui-input);
border-color: var(--ooui-input);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:focus .oo-ui-toggleSwitchWidget-grip {
border-color: var(--ooui-accent);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled.oo-ui-toggleWidget-on {
background-color: var(--ooui-progressive);
border-color: var(--ooui-progressive);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled.oo-ui-toggleWidget-on .oo-ui-toggleSwitchWidget-grip {
background-color: var(--ooui-input);
border-color: var(--ooui-input);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled.oo-ui-toggleWidget-on:hover {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled.oo-ui-toggleWidget-on:active,
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled.oo-ui-toggleWidget-on:active:hover {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled.oo-ui-toggleWidget-on:focus {
border-color: var(--ooui-progressive);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled.oo-ui-toggleWidget-on:focus::before {
border-color: #fff;
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-disabled {
background-color: var(--ooui-disabled);
border-color: var(--ooui-disabled);
}
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled > .oo-ui-buttonElement-button {
color: var(--ooui-text);
}
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled > .oo-ui-buttonElement-button:hover {
color: var(--ooui-text);
}
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled > .oo-ui-buttonElement-button:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled.oo-ui-buttonElement-pressed > input.oo-ui-buttonElement-button,
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled > .oo-ui-buttonElement-button:active {
color: var(--ooui-text);
}
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button,
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button:hover {
color: var(--ooui-text);
}
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button:active,
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive.oo-ui-buttonElement-pressed > .oo-ui-buttonElement-button {
color: var(--ooui-text);
border-color: var(--ooui-text);
}
.oo-ui-buttonElement-frameless.oo-ui-widget-disabled > .oo-ui-buttonElement-button {
color: var(--ooui-disabled-text);
}
.oo-ui-buttonElement-framed.oo-ui-widget-disabled > .oo-ui-buttonElement-button {
background-color: var(--ooui-disabled);
border-color: var(--ooui-disabled-border);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled > .oo-ui-buttonElement-button {
background-color: var(--ooui-normal);
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled > .oo-ui-buttonElement-button:hover {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled > .oo-ui-buttonElement-button:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-buttonElement-active > .oo-ui-buttonElement-button {
background-color: var(--ooui-progressive--hover);
color: #fff;
border-color: var(--ooui-progressive--hover);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-buttonElement-active > .oo-ui-buttonElement-button:focus {
border-color: var(--ooui-progressive--hover);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled > .oo-ui-buttonElement-button:active,
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-buttonElement-pressed > .oo-ui-buttonElement-button {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive {
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button {
color: var(--ooui-text);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button:hover {
background-color: var(--ooui-normal--hover);
border-color: var(--ooui-progressive--hover);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-destructive > .oo-ui-buttonElement-button {
color: var(--ooui-text);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-destructive > .oo-ui-buttonElement-button:hover {
background-color: var(--ooui-normal--hover);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button {
background-color: var(--ooui-progressive);
border-color: var(--ooui-progressive);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button:hover {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent), inset 0 0 0 2px #fff;
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button:active,
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive.oo-ui-buttonElement-pressed > .oo-ui-buttonElement-button,
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive.oo-ui-buttonElement-active > .oo-ui-buttonElement-button,
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive.oo-ui-popupToolGroup-active > .oo-ui-buttonElement-button {
color: #fff;
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
}
.oo-ui-pendingElement-pending {
background-image: var(--ooui-pending-background-image);
background-size: 200%;
animation: oo-ui-pendingElement-stripes 6s linear infinite;
}
@keyframes oo-ui-pendingElement-stripes {
100% {
background-position: 100%;
}
}
.oo-ui-messageDialog-content > .oo-ui-window-foot {
outline-color: var(--ooui-interface-border);
}
.oo-ui-messageDialog-message {
color: var(--ooui-text);
}
.oo-ui-messageDialog-actions-horizontal .oo-ui-actionWidget {
border-right-color: var(--ooui-interface-border);
}
.oo-ui-messageDialog-actions-vertical .oo-ui-actionWidget {
border-bottom-color: var(--ooui-interface-border);
}
.oo-ui-processDialog-content .oo-ui-window-head,
.oo-ui-processDialog-content .oo-ui-window-foot {
outline-color: var(--ooui-interface-border);
}
.oo-ui-processDialog .oo-ui-actionWidget > .oo-ui-buttonElement-button {
border-top-color: transparent;
border-bottom-color: transparent;
}
.oo-ui-processDialog .oo-ui-actionWidget > .oo-ui-buttonElement-button:hover,
.oo-ui-processDialog .oo-ui-actionWidget > .oo-ui-buttonElement-button:active {
border-top-color: transparent;
border-bottom-color: transparent;
}
.oo-ui-processDialog .oo-ui-actionWidget:not( .oo-ui-flaggedElement-progressive ):not( .oo-ui-flaggedElement-destructive ) > .oo-ui-buttonElement-button:hover,
.oo-ui-processDialog .oo-ui-actionWidget:not( .oo-ui-flaggedElement-progressive ):not( .oo-ui-flaggedElement-destructive ) > .oo-ui-buttonElement-button:active {
border-right-color: var(--ooui-interface-border);
border-left-color: transparent;
}
.oo-ui-processDialog .oo-ui-actionWidget:not( .oo-ui-flaggedElement-progressive ):not( .oo-ui-flaggedElement-destructive ) > .oo-ui-buttonElement-button:focus {
border-color: var(--ooui-accent);
}
.oo-ui-processDialog-actions-safe .oo-ui-actionWidget > .oo-ui-buttonElement-button,
.oo-ui-processDialog-actions-other .oo-ui-actionWidget > .oo-ui-buttonElement-button {
border-right-color: var(--ooui-normal-border);
border-left-color: transparent;
}
.oo-ui-processDialog-actions-safe .oo-ui-widget-enabled.oo-ui-iconElement:not( .oo-ui-labelElement ) > .oo-ui-buttonElement-button:hover {
background-color: var(--ooui-normal--hover);
border-right-color: var(--ooui-interface-border);
}
.oo-ui-windowManager-modal > .oo-ui-dialog {
background-color: var(--ooui-window-background);
}
.oo-ui-windowManager-modal > .oo-ui-dialog > .oo-ui-window-frame {
background-color: var(--ooui-interface);
}
.oo-ui-windowManager-modal.oo-ui-windowManager-floating > .oo-ui-dialog > .oo-ui-window-frame {
border-color: var(--ooui-interface-border);
}
.oo-ui-window {
color: var(--ooui-text);
}
.oo-ui-toolbar-bar {
background-color: var(--ooui-interface);
color: var(--ooui-text);
}
.oo-ui-toolbar-position-top > .oo-ui-toolbar-bar {
border-bottom-color: var(--body-mid);
}
.oo-ui-toolbar-bar .oo-ui-bookletLayout > .oo-ui-menuLayout-menu {
border-right-color: var(--body-mid);
}
.oo-ui-tool.oo-ui-widget-enabled > .oo-ui-tool-link:hover {
background-color: var(--ooui-normal--hover);
}
.oo-ui-tool.oo-ui-widget-enabled > .oo-ui-tool-link:focus {
outline: 1px solid var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-tool.oo-ui-widget-enabled > .oo-ui-tool-link:active,
.oo-ui-tool.oo-ui-widget-enabled.oo-ui-tool-active > .oo-ui-tool-link,
.oo-ui-tool.oo-ui-widget-enabled.oo-ui-popupToolGroup-active > .oo-ui-tool-link {
background-color: var(--ooui-normal--hover);
color: var(--ooui-accent);
box-shadow: none;
}
.oo-ui-tool.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive > .oo-ui-tool-link {
background-color: var(--ooui-progressive);
}
.oo-ui-tool.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive > .oo-ui-tool-link:hover {
background-color: var(--ooui-progressive--hover);
}
.oo-ui-tool.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive > .oo-ui-tool-link:focus {
box-shadow: inset 0 0 0 1px var(--ooui-accent), inset 0 0 0 2px #fff;
}
.oo-ui-tool.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive > .oo-ui-tool-link:active,
.oo-ui-tool.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive.oo-ui-tool-active > .oo-ui-tool-link {
background-color: var(--ooui-progressive--hover);
}
.oo-ui-listToolGroup-tools .oo-ui-tool.oo-ui-widget-enabled {
background-color: var(--ooui-normal);
}
.oo-ui-listToolGroup-tools .oo-ui-tool.oo-ui-widget-enabled:hover {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
}
.oo-ui-listToolGroup-tools .oo-ui-tool-active.oo-ui-widget-enabled .oo-ui-tool-link .oo-ui-tool-title {
color: var(--ooui-progressive);
}
.oo-ui-menuToolGroup {
border-left-color: var(--body-mid);
border-right-color: var(--body-mid);
}
.oo-ui-popupToolGroup-tools {
background-color: var(--ooui-interface);
border-color: var(--body-mid);
}
.oo-ui-popupToolGroup.oo-ui-widget-enabled > .oo-ui-popupToolGroup-handle:hover {
background-color: var(--ooui-normal--hover);
}
.oo-ui-popupToolGroup.oo-ui-widget-enabled > .oo-ui-popupToolGroup-handle:focus {
outline: 1px solid var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-toolbar-actions .oo-ui-popupToolGroup.oo-ui-widget-enabled > .oo-ui-popupToolGroup-handle:hover {
border-right-color: var(--ooui-normal--hover);
}
.oo-ui-popupToolGroup-tools .oo-ui-tool.oo-ui-widget-enabled .oo-ui-tool-link:focus {
box-shadow: inset 0 0 0 2px var(--ooui-accent);
}
.oo-ui-popupToolGroup-tools .oo-ui-tool-active.oo-ui-widget-enabled .oo-ui-tool-link .oo-ui-tool-title {
color: var(--ooui-progressive);
}
.oo-ui-popupToolGroup.oo-ui-popupToolGroup-active > .oo-ui-popupToolGroup-handle {
background-color: var(--ooui-normal);
color: var(--ooui-accent);
}
.oo-ui-popupToolGroup.oo-ui-popupToolGroup-active > .oo-ui-popupToolGroup-handle:hover {
background-color: var(--ooui-normal--hover);
color: var(--ooui-accent);
}
.oo-ui-bookletLayout-outlinePanel > .oo-ui-outlineControlsWidget {
border-top-color: var(--ooui-interface-border);
}
.oo-ui-bookletLayout > .oo-ui-menuLayout-menu {
border-right-color: var(--ooui-interface-border);
}
.oo-ui-fieldLayout-disabled > .oo-ui-fieldLayout-body > .oo-ui-fieldLayout-header > .oo-ui-labelElement-label {
color: var(--ooui-disabled-text);
}
.oo-ui-panelLayout-framed {
border-color: var(--sidebar);
}
.oo-ui-icon-settings {
background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' width='20' height='20' viewBox='0 0 20 20'%3E%3Ctitle%3Esettings%3C/title%3E%3Cg transform='translate(10 10)'%3E%3Cpath id='a' d='M1.5-10h-3l-1 6.5h5m0 7h-5l1 6.5h3'/%3E%3Cuse xlink:href='%23a' transform='rotate(45)'/%3E%3Cuse xlink:href='%23a' transform='rotate(90)'/%3E%3Cuse xlink:href='%23a' transform='rotate(135)'/%3E%3C/g%3E%3Cpath d='M10 2.5a7.5 7.5 0 0 0 0 15 7.5 7.5 0 0 0 0-15v4a3.5 3.5 0 0 1 0 7 3.5 3.5 0 0 1 0-7'/%3E%3C/svg%3E");
}
.oo-ui-icon-clear {
background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 20 20'%3E%3Ctitle%3Eclear%3C/title%3E%3Cpath d='M10 0a10 10 0 1 0 10 10A10 10 0 0 0 10 0zm5.66 14.24-1.41 1.41L10 11.41l-4.24 4.25-1.42-1.42L8.59 10 4.34 5.76l1.42-1.42L10 8.59l4.24-4.24 1.41 1.41L11.41 10z'/%3E%3C/svg%3E");
}
.mw-widget-dateInputWidget-handle {
background-color: var(--ooui-input);
color: var(--ooui-text);
border-color: var(--ooui-input-border);
}
.mw-widget-dateInputWidget-calendar {
background-color: var(--ooui-interface);
}
.mw-widget-dateInputWidget.oo-ui-widget-enabled .mw-widget-dateInputWidget-handle:hover {
border-color: var(--ooui-input-border--hover);
}
.mw-widget-calendarWidget {
border-color: var(--ooui-interface-border);
}
.mw-widget-calendarWidget:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.mw-widget-calendarWidget-day,
.mw-widget-calendarWidget-day-heading {
color: var(--ooui-text);
}
.mw-widget-calendarWidget-day-additional {
color: var(--ooui-text);
opacity: 0.67;
}
.mw-widget-calendarWidget-day-today {
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.mw-widget-calendarWidget-item:hover {
background-color: var(--ooui-progressive);
}
.mw-widget-calendarWidget-item-selected {
background-color: var(--ooui-progressive--hover);
}
.mw-widgets-datetime-calendarWidget {
background-color: var(--ooui-interface);
border-color: var(--ooui-interface-border);
}
.mw-widgets-datetime-calendarWidget:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent), 0 2px 2px 0 rgba(0, 0, 0, 0.25);
}
.mw-widgets-datetime-calendarWidget-grid .mw-widgets-datetime-calendarWidget-cell.mw-widgets-datetime-calendarWidget-extra .oo-ui-buttonElement-button .oo-ui-labelElement-label {
color: var(--subtle-color);
}
.mw-widgets-datetime-calendarWidget-grid .mw-widgets-datetime-calendarWidget-cell.mw-widgets-datetime-calendarWidget-selected .oo-ui-buttonElement-button {
background-color: var(--ooui-progressive--hover);
}
.mw-widgets-datetime-dateTimeInputWidget-handle {
background-color: var(--ooui-input);
color: var(--ooui-text);
border-color: var(--ooui-input-border);
}
.mw-widgets-datetime-dateTimeInputWidget.oo-ui-widget-enabled.mw-widgets-datetime-dateTimeInputWidget-handle:hover {
border-color: var(--ooui-input-border--hover);
}
.mw-widgets-datetime-dateTimeInputWidget.oo-ui-widget-enabled:hover input,
.mw-widgets-datetime-dateTimeInputWidget.oo-ui-widget-enabled:hover textarea {
border-color: var(--ooui-input-border--hover);
}
.mw-widgets-datetime-dateTimeInputWidget.oo-ui-widget-enabled .mw-widgets-datetime-dateTimeInputWidget-editField:hover {
background-color: var(--ooui-normal);
}
.ve-activated .ve-init-mw-desktopArticleTarget-originalContent #catlinks:hover {
background: var(--ooui-normal--hover);
}
.ve-ui-overlay {
font-family: inherit;
}
.oo-ui-toolbar-position-top .ve-ui-toolbarDialog-position-above {
border-top-color: var(--body-mid);
}
.ve-ce-branchNode-blockSlug,
.ve-ce-branchNode-newSlug {
outline-color: var(--body-border);
background-color: var(--ooui-interface);
}
.ve-ui-specialCharacterPage h3 {
color: var(--byline-color);
}
.ve-ui-specialCharacterPage-character {
border-color: var(--body-mid);
}
.ve-ui-specialCharacterPage-character:hover {
border-color: var(--body-dark);
}
.ve-ce-linkAnnotation.ve-ce-annotation-active {
box-shadow: 0 0 0 1px var(--body-mid);
background: none;
}
.ve-ui-desktopContext .ve-ui-linkContextItem .ve-ui-linkContextItem-label {
border-color: var(--body-border);
}
.ve-ui-mwHelpPopupTool-version-label,
.ve-ui-mwHelpPopupTool-version-link,
.ve-ui-mwHelpPopupTool-version-date {
color: var(--byline-color);
}
.ve-ce-tableCellableNode {
border-color: var(--body-mid);
}
.ve-ce-mwReferencesListNode-muted {
color: var(--byline-color);
}
.ve-ui-mwTemplatePage-description,
.ve-ui-mwParameterPage-label,
.ve-ui-mwParameterPage-description-required,
.ve-ui-mwParameterPage-description-deprecated {
color: var(--byline-color);
}
.mw-widget-titleWidget-menu .mw-widget-titleOptionWidget-description {
color: var(--byline-color);
}
.ve-ui-mwGalleryDialog-menuLayout > .oo-ui-menuLayout-menu,
.ve-ui-mwGalleryDialog-innerMenuLayout > .oo-ui-menuLayout-menu,
.ve-ui-mwGalleryDialog .ve-ui-mwGalleryDialog-image-container,
.ve-ui-targetWidget {
border-color: var(--body-border);
}
.ve-ui-targetWidget:not(.oo-ui-pendingElement-pending) {
background-color: var(--body-main);
}
.ve-ui-mwSaveDialog {
color: var(--ooui-text);
}
.ve-ui-mwSaveDialog-options {
background-color: var(--ooui-interface);
border-color: var(--body-border);
}
.ve-ui-mwSaveDialog-summary {
background-color: var(--ooui-input);
}
.ve-ui-mwSaveDialog-editSummary-count {
border-color: var(--body-border);
}
.ve-ui-mwSaveDialog-license {
color: var(--byline-color);
}
.ve-ui-mwReferenceContextItem-muted {
color: var(--byline-color);
}
.ve-ui-mwNoticesPopupTool-items > div:not(:first-child),
.ve-ui-mwHelpPopupTool-item:not(:first-child) {
border-color: var(--body-border);
}
.ve-ui-mwTransclusionOutlineControlsWidget {
background-color: var(--ooui-interface);
border-top-color: var(--body-border);
}
.ve-ui-mwTransclusionOutlineTemplateWidget-sticky {
background-color: var(--ooui-interface);
}
.ve-ui-mwTransclusionOutlineTemplateWidget .ve-ui-mwTransclusionOutlineParameterWidget.oo-ui-optionWidget-highlighted {
color: var(--ooui-text);
}
.ve-ui-mwTransclusionOutlineTemplateWidget-no-template-parameters {
color: var(--subtle-color);
}
.ve-ui-mwParameterPage-undocumentedLabel {
color: var(--subtle-color);
}
.ve-ui-mwTwoPaneTransclusionDialogLayout > .oo-ui-menuLayout-menu {
border-right: var(--body-border);
}
.ve-ui-mwParameterPage-doc-required,
.ve-ui-mwParameterPage-doc-deprecated,
.ve-ui-mwParameterPage-inlineDescription .ve-ui-mwParameterPage-doc-example {
color: var(--byline-color);
}
.ve-ui-expandableContent-toggle {
background-color: var(--ooui-interface);
}
.ve-ui-expandableContent-fade {
background: linear-gradient(to right, rgba(255, 255, 255, 0) 0, var(--ooui-interface) 90%);
}
.ve-ui-commandHelpDialog-shortcut > kbd,
.ve-ui-commandHelpDialog-sequence > kbd {
background-color: var(--keypress-background);
color: var(--keypress-color);
border-color: var(--keypress-border);
box-shadow: none;
text-shadow: none;
}
.ve-init-mw-desktopArticleTarget-toolbarPlaceholder-floating .ve-init-mw-desktopArticleTarget-toolbarPlaceholder-bar {
background: var(--ooui-interface);
}
.ve-init-mw-desktopArticleTarget-toolbarPlaceholder-bar {
border-bottom-color: var(--body-mid);
}
figure[typeof~='mw:File/Thumb'],
figure[typeof~='mw:File/Frame'],
figure[typeof~='mw:Image/Thumb'],
figure[typeof~='mw:Video/Thumb'],
figure[typeof~='mw:Image/Frame'],
figure[typeof~='mw:Video/Frame'] {
border: none;
background-color: var(--thumb-bg);
}
figure[typeof~='mw:File/Thumb'] > a:first-child > *:first-child:not( .mw-broken-media ),
figure[typeof~='mw:File/Frame'] > a:first-child > *:first-child:not( .mw-broken-media ),
figure[typeof~='mw:Image/Thumb'] > a:first-child > *:first-child:not( .mw-broken-media ),
figure[typeof~='mw:Video/Thumb'] > a:first-child > *:first-child:not( .mw-broken-media ),
figure[typeof~='mw:Image/Frame'] > a:first-child > *:first-child:not( .mw-broken-media ),
figure[typeof~='mw:Video/Frame'] > a:first-child > *:first-child:not( .mw-broken-media ) {
border: none;
background: var(--thumb-bg);
}
figure[typeof~='mw:File/Thumb'] > figcaption,
figure[typeof~='mw:File/Frame'] > figcaption,
figure[typeof~='mw:Image/Thumb'] > figcaption,
figure[typeof~='mw:Video/Thumb'] > figcaption,
figure[typeof~='mw:Image/Frame'] > figcaption,
figure[typeof~='mw:Video/Frame'] > figcaption {
border: none;
background-color: var(--thumb-caption-bg);
padding: 4px 6px;
}
:root {
--keypress-background: #eee;
--keypress-border: #ccc;
--keypress-color: #333;
}
.archivelist {
background-color: var(--body-light);
border: solid 1px var(--body-border);
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
float: right;
margin: 5px;
padding: 5px;
text-align: center;
width: 120px;
}
.shortcut {
border: 1px solid var(--body-border);
background: var(--body-light);
float: right;
font-size: 0.8em;
margin: 0.5em 0em 0.5em 1em;
padding: 0.5em;
text-align: center;
}
.hatnote,
.seealso {
font-style: italic;
}
.hatnote i,
.seealso i {
font-style: normal;
}
div.hatnote,
div.seealso {
margin: 0.5em 1.6em;
}
div.hatnote + div.hatnote,
div.hatnote + div.seealso,
div.seealso + div.hatnote,
div.seealso + div.seealso {
margin-top: -0.5em;
}
.keypress {
background: var(--keypress-background);
color: var(--keypress-color);
font-family: inherit;
border: 1px solid var(--keypress-border);
border-radius: 2px;
font-size: 0.9em;
margin: 0 0.1em;
padding: 0.1em 0.4em;
white-space: nowrap;
}
:root {
--documentation-background: #f9fafa;
--documentation-link-color: #e4eaee;
--documentation-headers-color: #fff;
--documentation-header-background: #949eaa;
--documentation-subheader-background: #808c9a;
--documentation-border: #e4eaee;
}
.documentation {
background: var(--documentation-background);
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
margin: 1em 0;
}
.documentation pre,
.documentation code {
background-color: var(--documentation-background);
border-color: var(--documentation-border);
}
.documentation h2,
.documentation hr {
border-color: var(--documentation-border);
}
.documentation-header {
color: var(--documentation-headers-color);
background: var(--documentation-header-background);
font-weight: bold;
padding: 1em 1.5em;
}
.documentation-title {
font-size: 1.25em;
}
.documentation-subheader {
color: var(--documentation-headers-color);
background: var(--documentation-subheader-background);
padding: 0.5em 1.5em;
}
.documentation-subheader a,
.documentation-subheader a:visited,
.documentation-subheader a:active {
color: var(--documentation-link-color);
}
.documentation-documentation,
.documentation-links {
font-size: 0.85em;
}
.documentation-content {
padding: 1em 1.5em;
}
.mw-templatedata-doc-params dl:not(:empty) {
column-count: 3;
border-top: 1px solid var(--body-border);
margin-bottom: 0.5em;
}
.mw-templatedata-doc-params dt::after {
content: ":";
}
.mw-templatedata-doc-params dd,
.mw-templatedata-doc-params dt {
margin: 0.1em 2em;
min-width: auto;
}
.mw-templatedata-doc-muted {
color: var(--subtle-color);
font-style: italic;
}
:root {
--infobox-text-color: var(--text-color);
--table-header: var(--body-dark);
--table-subheader: var(--body-mid);
--table-body: var(--body-light);
--table-border: var(--body-border);
}
.infobox {
font-size: 0.85em;
width: 300px;
border-collapse: collapse;
float: right;
table-layout: fixed;
margin: 0.5em 0 1em 1em;
}
.infobox .infobox-buttons {
display: flex;
flex-wrap: wrap;
justify-content: center;
grid-gap: 3px;
margin-bottom: 3px;
}
.infobox .infobox-buttons .button {
background: var(--table-header);
padding: 0 5px;
font-weight: bold;
flex: 1 1 20%;
max-width: 20%;
color: #fff;
}
.infobox tbody {
border: 1px solid var(--table-border);
background: var(--table-body);
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(231, 215, 199, 0.5);
}
.infobox .infobox-header {
background: var(--table-header);
padding: 0.5em 0;
text-align: center;
color: #fff;
font-size: 1.15em;
font-weight: bold;
line-height: 1.4em;
}
.infobox .infobox-image {
text-align: center;
}
.infobox .infobox-subheader {
background: var(--table-subheader);
font-weight: bold;
text-align: center;
color: #fff;
}
.infobox .infobox-padding {
backgound: var(--table-body);
}
.infobox tr td:not(.infobox-padding) {
padding: 0.2em 0.5em;
}
.infobox th:not(.infobox-header):not(.infobox-subheader):not(.infobox-nested) {
border-right: 2px solid var(--table-subheader);
text-align: right;
padding: 0.2em 0.5em;
}
.hidden {
display: none;
}
ol.references,
.reflist {
font-size: 90%;
}
.reflist {
list-style-type: decimal;
}
.reflist .references {
font-size: 100%;
list-style-type: inherit;
}
.reflist-lower-alpha {
list-style-type: lower-alpha;
}
ol.references li:target,
sup.reference:target {
background-color: var(--body-light);
}
.hideQuotes .refhide {
display: none;
}
:root {
--messagebox-obsolete-background: #cfcfcf;
--messagebox-obsolete-border: #464646;
--messagebox-obsolete-color: var(--text-color);
--messagebox-obsolete-link-color: #6c6c6c;
--messagebox-info-background: #ebebeb;
--messagebox-info-border: #898989;
--messagebox-info-color: var(--text-color);
--messagebox-info-link-color: #6c6c6c;
--messagebox-action-background: #c7e8fa;
--messagebox-action-border: #0b5884;
--messagebox-action-color: var(--text-color);
--messagebox-action-link-color: #03436b;
--messagebox-warn-background: #dfc0ba;
--messagebox-warn-border: #861c10;
--messagebox-warn-color: var(--text-color);
--messagebox-warn-link-color: #8e221a;
--messagebox-safe-background: #d8f0d3;
--messagebox-safe-border: #1b8408;
--messagebox-safe-color: var(--text-color);
--messagebox-safe-link-color: #1b8408;
--messagebox-disambig-background: #ebebeb;
--messagebox-disambig-border: #898989;
--messagebox-disambig-color: var(--text-color);
--messagebox-disambig-link-color: #6c6c6c;
--messagebox-discord-background: #5865f2;
--messagebox-discord-border: #4c57d0;
--messagebox-discord-link-color: #d2e5fc;
}
.mw-message-box,
.mw-message-box-error,
.mw-message-box-warning,
.mw-message-box-success,
.usermessage {
color: var(--text-color);
}
.messagebox {
width: 65%;
margin: 0.5em auto;
border-left: 15px solid;
border-color: var(--body-dark);
background-color: var(--body-light);
box-sizing: border-box;
}
.messagebox.obsolete {
background-color: var(--messagebox-obsolete-background);
border-color: var(--messagebox-obsolete-border);
color: var(--messagebox-obsolete-color);
}
.messagebox.obsolete a,
.messagebox.obsolete a:visited,
.messagebox.obsolete a:active {
color: var(--messagebox-obsolete-link-color);
}
.messagebox.info {
background-color: var(--messagebox-info-background);
border-color: var(--messagebox-info-border);
color: var(--messagebox-info-color);
}
.messagebox.info a,
.messagebox.info a:visited,
.messagebox.info a:active {
color: var(--messagebox-info-link-color);
}
.messagebox.action {
background-color: var(--messagebox-action-background);
border-color: var(--messagebox-action-border);
color: var(--messagebox-action-color);
}
.messagebox.action a,
.messagebox.action a:visited,
.messagebox.action a:active {
color: var(--messagebox-action-link-color);
}
.messagebox.warn {
background-color: var(--messagebox-warn-background);
border-color: var(--messagebox-warn-border);
color: var(--messagebox-warn-color);
}
.messagebox.warn a,
.messagebox.warn a:visited,
.messagebox.warn a:active {
color: var(--messagebox-warn-link-color);
}
.messagebox.safe {
background-color: var(--messagebox-safe-background);
border-color: var(--messagebox-safe-border);
color: var(--messagebox-safe-color);
}
.messagebox.safe a,
.messagebox.safe a:visited,
.messagebox.safe a:active {
color: var(--messagebox-safe-link-color);
}
.messagebox.disambig {
background-color: var(--messagebox-disambig-background);
border-color: var(--messagebox-disambig-border);
color: var(--messagebox-disambig-color);
}
.messagebox.disambig a,
.messagebox.disambig a:visited,
.messagebox.disambig a:active {
color: var(--messagebox-disambig-link-color);
}
.messagebox.discord {
background-color: var(--messagebox-discord-background);
border-color: var(--messagebox-discord-border);
color: #fff;
}
.messagebox.discord a,
.messagebox.discord a:visited,
.messagebox.discord a:active {
color: var(--messagebox-discord-link-color);
}
.messagebox.discord a.external,
.messagebox.discord a:visited.external,
.messagebox.discord a:active.external {
font-style: italic;
}
.messagebox.stub {
width: 40%;
}
.messagebox.hasdialogue {
padding: 0 10px;
width: auto;
}
:root {
--byline-arrow-filter: invert(29%) sepia(0%) saturate(376%) hue-rotate(172deg) brightness(87%) contrast(80%);
--tile-border-color: var(--body-border);
--tile-background-color: var(--body-light);
--tile-link-button-color: #f5e9db;
--tile-link-button-highlight-color: #dfccb0;
--tile-dark-color: #fff;
--tile-dark-bg: #5d6773;
--tile-dark-link-color: #ccc;
--tile-dark-byline-color: rgba(255, 255, 255, 0.7);
--tile-dark-header-color: #fff;
}
.tile {
background: var(--tile-background-color);
border: 1px solid var(--tile-border-color);
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
padding: 1.5em 2em 1em;
max-width: 40em;
}
.tile h2 {
font-size: 1.4em;
font-weight: bold;
border: none;
margin: 0 0 0.4em;
}
.tile .byline + h2 {
margin-top: -0.5em;
}
.tile.dark {
color: var(--tile-dark-color);
background: var(--tile-dark-bg);
border: none;
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.3);
}
.tile.dark h2 {
color: var(--tile-dark-header-color);
}
.tile.dark a {
color: var(--tile-dark-link-color);
}
.tile.dark .byline {
color: var(--tile-dark-byline-color);
}
.byline {
font-size: 0.9em;
color: var(--byline-color);
}
.byline a {
color: var(--byline-color);
}
.tile-row {
display: flex;
flex-flow: row wrap;
margin-bottom: 1em;
}
.tile-halves {
display: flex;
flex-flow: row wrap;
border: 1px solid var(--tile-border-color);
background: var(--tile-background-color);
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
}
.tile-halves h2 {
font-size: 1.4em;
font-weight: bold;
border: none;
margin: 0 0 0.4em;
}
.tile-halves .byline + h2 {
margin-top: -0.5em;
}
.tile-top {
width: 100%;
padding: 1.3rem 1.5rem 0.6rem;
}
.tile-top.tile-image {
display: flex;
align-items: center;
background-color: var(--byline-color);
overflow: hidden;
padding: 0;
height: 13vw;
max-height: 12em;
transition: 0.4s ease-out;
}
.tile-halves:hover .tile-top.tile-image img {
transform: scale(1.1);
transition: 0.5s ease-out;
}
.tile-top.tile-image a {
width: 100%;
}
.tile-top.tile-image img {
width: 100%;
object-fit: cover;
max-height: 200px;
transition: 0.4s ease-out;
}
.tile-bottom {
background: var(--tile-background-color);
border-top: 1px solid var(--tile-border-color);
width: 100%;
padding: 1rem 1.5rem 0.6rem;
}
.tile-bottom.link-button {
align-self: flex-end;
padding: 0;
}
.tile-bottom.link-button a {
display: block;
text-align: center;
padding: 0.75em 1.5em 0.8em;
text-decoration: none;
}
.tile-bottom.read-more {
background: var(--tile-link-button-color);
transition: 0.3s ease-out;
}
.tile-bottom.read-more a {
color: var(--byline-color);
font-weight: bold;
text-align: right;
}
.tile-bottom.read-more:hover {
background: var(--tile-link-button-highlight-color);
}
.tile-bottom.read-more:hover .arrow {
transform: translateX(50%);
}
.tile-bottom.read-more .arrow {
filter: var(--byline-arrow-filter);
margin-left: 0.4em;
transition: 0.3s ease-out;
}
body.page-Main_Page.action-view .catlinks,
body.page-Main_Page.action-view #contentSub,
body.page-Main_Page.action-view #firstHeading,
body.page-Main_Page.action-view #siteNotice {
display: none;
}
body.page-Main_Page .mw-parser-output {
max-width: 75em;
margin: 0 auto;
}
body.page-Main_Page.action-view .catlinks,
body.page-Main_Page.action-view #contentSub,
body.page-Main_Page.action-view #siteNotice {
display: none;
}
.mainpage-header {
display: flex;
margin: 2.6em 1.75em 1.5em;
}
.mainpage-header .header-intro {
flex: 2;
}
.mainpage-header .header-intro h1 {
font-size: 2.5em;
font-weight: bold;
border: none;
margin: 0 0 0.15em;
}
.mainpage-header .header-intro p {
font-size: 1.1em;
line-height: 1.7em;
}
.mainpage-header .header-stats {
flex: 1;
display: flex;
justify-content: center;
align-items: center;
margin-top: -1em;
}
.mainpage-body {
display: grid;
grid-template-areas: "event event event" "update update update" "content content content" "left left right";
gap: 0.9rem;
grid-template-columns: repeat(3, 1fr);
}
.mainpage-body h2 a {
color: var(--text-color);
}
.mainpage-body .tile {
padding-left: 1.75em;
padding-right: 1.75em;
max-width: 100%;
}
.mainpage-body .tile-row {
width: 100%;
margin-bottom: 0;
}
.mainpage-body .tile-row {
display: grid;
gap: 0.9rem;
}
.mainpage-contents.tile-row {
display: flex;
}
.mainpage-contents.tile-row .tile-top {
height: 5.5rem;
}
.mainpage-left {
grid-area: left;
flex: 2;
display: flex;
flex-flow: column wrap;
}
.mainpage-left > * {
margin: 0 0 0.9rem;
}
.mainpage-right {
grid-area: right;
flex: 1;
display: flex;
flex-flow: column wrap;
}
.mainpage-right > * {
margin: 0 0 0.9rem;
}
.arrow {
background: url('filepath://White-chevron.svg') no-repeat;
display: inline-block;
height: 0.7rem;
width: 0.45rem;
vertical-align: middle;
}
.arrow.dark {
filter: invert(80%);
}
.mainpage-contents {
grid-area: content;
grid-template-columns: repeat(6, 1fr);
}
.mainpage-contents .tile-halves {
flex: 1;
}
.mainpage-contents .tile-top {
height: 4.5rem;
position: relative;
}
.mainpage-contents .tile-top.tile-image img {
height: auto;
}
.mainpage-contents h2 {
margin: 0;
padding: 0;
}
.mainpage-contents .tile-bottom.link-button a {
padding: 0.75em 0.2em;
}
.popular-pages ul {
display: grid;
grid-template-columns: repeat(3, 1fr);
grid-gap: 0.6em;
margin: 1em 0 0.7em 0;
}
.mp-popular-page-light {
display: flex;
align-items: center;
background-color: var(--button-background);
transition: 100ms;
}
.mp-popular-page-light a {
flex: 1;
display: block;
color: #fff;
font-weight: bold;
text-align: center;
text-decoration: none;
padding: 0.7em 1em;
}
.mp-popular-page-light:hover {
filter: brightness(115%);
transition: 100ms;
}
.mainpage-social {
border: none;
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.3);
}
.mainpage-social .tile-top {
display: flex;
align-items: center;
padding: 1em 1.5em;
}
.mainpage-social .tile-top a {
flex: 1;
position: relative;
text-decoration: none;
}
.mainpage-social .tile-top a:hover .arrow {
transform: translateX(50%);
}
.mainpage-social .tile-bottom {
border: none;
padding: 1em 1.75em;
}
.mainpage-social .tile-bottom p {
color: #fff;
font-weight: bold;
font-size: 0.9em;
text-align: center;
text-transform: uppercase;
letter-spacing: 0.03em;
margin: 0;
}
.mainpage-social .social-icon {
margin-right: 0.75em;
text-align: center;
width: 60px;
}
.mainpage-social .social-header {
color: #fff;
font-weight: bold;
font-size: 1.15em;
margin: 0.5em 0 -0.15em;
}
.mainpage-social .server-tagline {
color: rgba(255, 255, 255, 0.9);
margin-bottom: 0.5em;
}
.mainpage-social .arrow {
position: absolute;
top: calc(50% - .5em);
right: 0;
height: 1em;
width: 0.7em;
background-size: 0.7em 1em;
transition: 0.3s ease-out;
}
.mainpage-social.mainpage-discord .tile-top {
background: #5865f2;
}
.mainpage-social.mainpage-discord .tile-bottom {
background: #525ee0;
}
.mainpage-social.mainpage-twitter .tile-top {
background: #15202b;
}
.mainpage-social.mainpage-twitter .tile-bottom {
background: #121c26;
}
.mainpage-editing {
border: none;
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.3);
}
.mainpage-editing .tile-top {
background: #438ab5;
}
.mainpage-editing .tile-bottom {
background: #3980ab;
border: none;
padding: 0.8rem 1.5rem 0.4rem;
}
.mainpage-editing h2,
.mainpage-editing a {
color: #fff;
}
.mainpage-editing p {
color: rgba(255, 255, 255, 0.9);
}
.mainpage-editing ul {
list-style-image: url('filepath://Transparent-chevron.svg');
}
@media only screen and (max-width: 1200px) {
.mainpage-contents {
grid-template-columns: repeat(3, 1fr);
}
}
@media only screen and (max-width: 1000px) {
.mainpage-body {
grid-template-areas: "event event event" "update update update" "content content content" "left left left" "right right right";
}
.mainpage-recent-updates {
grid-template-columns: repeat(2, 1fr);
}
.mainpage-recent-updates .tile-halves:last-child {
display: none;
}
.mainpage-recent-updates .tile-halves:hover .tile-top img {
transform: scale(1.04);
}
.mainpage-recent-updates .tile-top {
height: 18vw;
min-height: 9em;
}
.mainpage-header .header-stats {
display: none;
}
.mainpage-left > *:last-child,
.mainpage-right > *:last-child {
margin-bottom: 0;
}
.popular-pages ul {
grid-template-columns: repeat(2, 1fr);
}
}
@media only screen and (max-width: 720px) {
.mainpage-recent-updates {
grid-template-columns: none;
}
.mainpage-recent-updates .tile-halves:last-child {
display: flex;
}
.mainpage-contents {
grid-template-columns: repeat(2, 1fr);
}
}
.mw-prefs-buttons {
background-color: var(--body-main);
border-top-color: var(--body-border);
box-shadow: none;
}
.mw-prefs-tabs-wrapper.oo-ui-panelLayout-framed,
.mw-prefs-tabs > .oo-ui-menuLayout-content > .oo-ui-indexLayout-stackLayout > .oo-ui-tabPanelLayout {
border-color: var(--body-border);
}
.mw-htmlform-ooui .mw-htmlform-matrix tbody tr:nth-child(even) td {
background-color: var(--body-light);
}
.mw-htmlform-ooui .mw-htmlform-matrix tbody tr:hover td {
background-color: var(--body-mid);
}
:root {
--rc-positive-color: #407813;
--rc-negative-color: #b41e0f;
}
.mw-plusminus-pos {
color: var(--rc-positive-color);
}
.mw-plusminus-neg {
color: var(--rc-negative-color);
}
.client-js .mw-recentchanges-toplinks:not(.mw-recentchanges-toplinks-collapsed) {
border-color: var(--body-border);
background-color: var(--body-light);
border-radius: 2px;
}
.mw-rcfilters-ui-filterTagMultiselectWidget-wrapper-content-title {
color: var(--text-color);
}
.mw-rcfilters-ui-filterTagMultiselectWidget-emptyFilters {
color: var(--byline-color);
}
.mw-rcfilters-ui-filterTagMultiselectWidget.oo-ui-widget-enabled .oo-ui-tagMultiselectWidget-handle {
background-color: var(--ooui-interface);
border-color: var(--ooui-interface-border);
}
.mw-rcfilters-ui-filterTagMultiselectWidget-views-select-widget.oo-ui-widget {
border-color: var(--ooui-interface-border);
}
.mw-rcfilters-collapsed .mw-rcfilters-ui-filterTagMultiselectWidget {
border-bottom-color: var(--ooui-interface-border);
}
.mw-rcfilters-ui-menuSelectWidget-footer {
background-color: var(--ooui-interface);
border-color: var(--ooui-interface-border);
}
.mw-rcfilters-ui-viewSwitchWidget label.oo-ui-labelWidget {
color: var(--byline-color);
}
.mw-rcfilters-ui-tagItemWidget-popup-content {
color: var(--ooui-text);
}
.mw-changeslist-legend,
.mw-rcfilters-ui-changesListWrapperWidget .mw-changeslist-legend {
background-color: var(--body-light);
border-color: var(--body-dark);
}
.mw-rcfilters-ui-changesListWrapperWidget-previousChangesIndicator {
border-color: var(--sidebar);
}
.client-js .mw-changeslist ul,
.client-js .mw-changeslist table.mw-enhanced-rc {
margin-left: 0;
}
.mw-rcfilters-ui-watchlistTopSectionWidget-separator {
border-color: var(--sidebar);
}
.mw-rcfilters-ui-itemMenuOptionWidget-header {
border-bottom-color: var(--ooui-interface);
background-color: var(--ooui-interface-border);
}
.mw-rcfilters-ui-itemMenuOptionWidget:not(:last-child):not(.mw-rcfilters-ui-itemMenuOptionWidget-identifier-talk) {
border-bottom-color: var(--ooui-normal-border);
}
.mw-rcfilters-ui-itemMenuOptionWidget-label-title,
.mw-rcfilters-ui-itemMenuOptionWidget-label-desc {
color: var(--text-color);
}
.mw-rcfilters-ui-filterMenuOptionWidget.oo-ui-flaggedElement-muted:not(.oo-ui-optionWidget-selected) {
background-color: var(--body-main);
}
.mw-rcfilters-ui-filterMenuOptionWidget.oo-ui-flaggedElement-muted .mw-rcfilters-ui-itemMenuOptionWidget-label-title,
.mw-rcfilters-ui-filterMenuOptionWidget.oo-ui-flaggedElement-muted .mw-rcfilters-ui-itemMenuOptionWidget-label-desc {
color: var(--subtle-color);
}
.mw-rcfilters-ui-filterMenuSectionOptionWidget {
background-color: var(--body-mid);
}
.mw-rcfilters-ui-filterMenuSectionOptionWidget-header-title.oo-ui-labelElement-label {
color: var(--ooui-text);
}
.mw-rcfilters-ui-filterMenuHeaderWidget-title {
color: var(--ooui-text);
}
.mw-rcfilters-ui-filterMenuHeaderWidget-header {
border-bottom-color: var(--ooui-interface-border);
background-color: var(--ooui-interface);
}
.mw-rcfilters-ui-itemMenuOptionWidget-view-namespaces {
border-top-color: var(--ooui-interface-border);
}
.mw-rcfilters-ui-datePopupWidget {
border-color: var(--ooui-interface-border);
}
.mw-rcfilters-ui-datePopupWidget .mw-rcfilters-ui-valuePickerWidget-title {
color: var(--byline-color);
}
.mw-rcfilters-ui-savedLinksListItemWidget-label {
color: var(--ooui-accent);
}
.client-js .mw-changeslist.mw-rcfilters-ui-changesListWrapperWidget-highlighted ul,
.client-js .mw-changeslist.mw-rcfilters-ui-changesListWrapperWidget-highlighted table.mw-enhanced-rc {
margin-left: 1.5em;
}
.page-Special_CreateAccount .mw-ui-container,
.page-Special_UserLogin .mw-ui-container {
max-width: 64rem;
margin: 0 auto;
}
.mw-number-text {
color: var(--byline-color);
}
.mw-body-content .mw-number-text h3 {
color: var(--text-color);
}
#mw-indicator-mw-helplink a {
background: none;
padding: 0;
display: flex;
align-items: center;
}
#mw-indicator-mw-helplink a::before {
content: '';
margin-right: 5px;
-webkit-mask: url("/resources/src/mediawiki.helplink/images/helpNotice.svg?46d34") no-repeat 50% 50% / contain;
mask: url("/resources/src/mediawiki.helplink/images/helpNotice.svg?46d34") no-repeat 50% 50% / contain;
background: var(--text-color);
height: 20px;
width: 20px;
}
.results-info {
color: inherit;
}
.mw-search-profile-tabs {
background-color: var(--body-mid);
border-color: transparent;
}
.search-types .current a {
color: inherit;
}
#mw-searchoptions {
background-color: var(--body-mid);
border-color: transparent;
}
#mw-searchoptions .divider {
border-color: var(--body-border);
}
#mw-searchoptions h4 {
font-family: inherit;
}
#mw-searchoptions .oo-ui-labelElement:nth-of-type(odd) {
font-weight: bold;
}
.searchresult {
line-height: 1.5;
}
.searchalttitle,
#mw-search-interwiki li {
font-size: 90%;
}
.mw-search-result-data {
color: var(--byline-color);
}
.page-Special_ListFiles a.image img {
width: inherit;
height: inherit;
}
.page-Special_ListFiles .TablePager_col_thumb {
text-align: center;
}
#editcount table[border="1"] {
background-color: var(--body-main) !important;
border-color: var(--wikitable-border) !important;
margin-top: 0.5em;
}
#editcount table[border="1"] th,
#editcount table[border="1"] td {
padding: 0.2em 0.4em;
}
#editcount table[border="1"] th {
background-color: var(--wikitable-header-bg);
border: 1px solid var(--wikitable-border);
}
#editcount table[border="1"] td {
border: 1px solid var(--wikitable-border);
}
#editcount table[border="1"] tr:nth-child(odd) {
background-color: var(--body-light);
}
.mw-echo-ui-notificationBadgeButtonPopupWidget-popup > .oo-ui-popupWidget-popup .mw-echo-ui-placeholderItemWidget {
background-color: inherit;
}
table.mw-interwikitable.body td.mw-interwikitable-local-yes {
background-color: var(--table-yes-background);
color: var(--table-yes-color);
}
.mw-protectedpages-unknown {
color: var(--byline-color);
}
.watchlistredir,
.allpagesredirect {
font-style: italic;
}
.allpagesredirect:after {
color: var(--byline-color);
content: " (redirect)";
}
.mw-apisandbox-toolbar {
background: var(--body-main);
}
.oo-ui-menuOptionWidget .mw-apisandbox-flag {
color: var(--byline-color);
}
tr.mw-abusefilter-list-disabled,
tr.mw-abusefilter-list-disabled td {
color: var(--byline-color);
}
table.mw-abuselog-details {
background: var(--wikitable-bg);
border-color: var(--wikitable-border);
}
table.mw-abuselog-details th {
background: var(--wikitable-header-bg);
}
table.mw-abuselog-details th,
table.mw-abuselog-details td {
border-color: var(--wikitable-border);
}
.mw-abusefilter-log-hidden-entry {
color: var(--subtle-color);
}
body td.mw-abusefilter-history-changed {
background: var(--table-no-background);
}
div.mw-abusefilter-editor,
#mw-abusefilter-warn-preview,
#mw-abusefilter-disallow-preview {
border-color: var(--ooui-input-border);
}
.mw-destfile-warning {
border-color: var(--warningbox-border);
color: var(--text-color);
background-color: var(--warningbox-bg);
}
span.fileinput-button {
background-color: var(--ooui-normal);
border-color: var(--ooui-normal-border);
color: var(--ooui-text);
}
ul.fileupload-results li.ful-success {
background-color: var(--successbox-bg);
}
ul.fileupload-results li.ful-success a {
color: var(--link-color);
}
ul.fileupload-results li.ful-error {
background-color: var(--errorbox-bg);
}
.color-container {
display: flex;
margin: 2em auto;
width: 80%;
max-width: 60em;
}
.color-column {
flex: 1;
margin-right: 1em;
}
.color-column:last-child {
margin-right: 0;
}
.color-column h3 {
padding: 0;
}
.color-group {
color: #333;
padding: 1em 1.5em;
transition: 0.2s ease-out;
}
.color-group:hover {
transform: scale(1.03);
}
.color-group.dark {
color: #fff;
}
.color-group .variable,
.color-group .hexcode {
font-family: monospace;
font-size: 1.1em;
-webkit-user-select: all;
-moz-user-select: all;
-ms-user-select: all;
user-select: all;
margin: 0;
}
body.wgl-readermode .color-group .variable,
body.wgl-readermode .color-group .hexcode {
font-size: inherit;
}
.color-group .variable {
font-weight: bold;
}
#t-print,
#t-permalink {
display: none;
}
#filetoc {
border-radius: 2px;
background: var(--body-mid);
border-color: transparent;
margin: 0.5em auto;
text-align: center;
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
}
li.gallerybox div.thumb {
border: none;
background-color: var(--thumb-bg);
}
.smwfact {
display: none;
}
.list-header {
background-color: var(--body-mid);
color: inherit;
}
.editOptions {
color: var(--text-color);
background-color: var(--sourceeditor-background-secondary);
border-color: var(--sourceeditor-border);
}
.mw-json th,
.mw-json td {
border-color: var(--wikitable-border);
}
.mw-json td {
background: var(--wikitable-bg);
}
.mw-json th {
background: var(--wikitable-header-bg);
}
f82eb760d068502cbfa5de0adcbd4b19d2eac731
1669
1667
2024-03-31T23:49:12Z
Merds
25
Updating CSS from [[MediaWiki:Common.less]]
css
text/css
/* <pre> */
:root {
--body-main: #fdfcfc;
--body-light: #f5f0eb;
--body-mid: #d1b9ad;
--body-dark: #b1886f;
--body-border: #d1b9ad;
--body-background-color: #173a4d;
--button-background: #605443;
--button-color: #fff;
--button-border: #3c352a;
--button-dark: #18140c;
--button-light: #3a301d;
--sidebar: #cfc08d;
--background-text-color: #e2dbc8;
--background-link-color: #e2bd8a;
--search-box: #efeee6;
--link-color: #6e452b;
--redlink-color: #ba0000;
--text-color: #2F2828;
--byline-color: #ccc;
--subtle-color: #777;
--admin-blue: #332e75;
--bearcat-green: #13592e;
--awb-purple: #933b96;
--rsw-blue: #438ab6;
--osrsw-brown: #605443;
--thumb-bg: var(--body-light);
--thumb-caption-bg: var(--body-mid);
--sourceeditor-input-background: #fff;
--sourceeditor-background: var(--body-light);
--sourceeditor-background-secondary: var(--body-light);
--sourceeditor-border: var(--body-mid);
--codemirror-gutter-background: var(--body-mid);
}
@font-face {
font-family: 'Lora';
font-weight: 400 700;
font-style: normal;
font-display: swap;
src: url('filepath://Lora.woff2') format('woff2');
}
@font-face {
font-family: 'Lora';
font-weight: 400 700;
font-style: italic;
font-display: swap;
src: url('filepath://Lora-Italic.woff2') format('woff2');
}
:root {
--base-text-color: #36414f;
--base-heading-color: #444e5a;
--base-heading-border: #e4eaee;
--mw-code-background-color: var(--body-light);
--body-background-image: url('filepath://Wiki_background.jpg');
}
#mw-page-base {
background: none;
}
.mw-body {
background-color: var(--body-main);
color: var(--text-color);
border-color: transparent;
box-shadow: 0 0 7px rgba(0, 0, 0, 0.15);
margin-top: 0;
}
h1,
h2,
h3,
h4,
h5,
h6 {
color: var(--text-color);
}
h1,
h2 {
border-color: var(--sidebar);
}
.mw-body h1,
.mw-body-content h1,
.mw-body-content h2,
.mw-body-content h3,
.mw-body-content h4,
.mw-body-content h5,
.mw-body-content h6 {
font-family: 'Lora', 'Palatino', 'Georgia', serif;
}
.mw-parser-output h2:first-of-type {
clear: left;
}
.mw-footer {
color: var(--background-text-color);
}
.mw-footer li {
color: var(--background-text-color);
}
.mw-footer a,
.mw-footer a:active,
.mw-footer a:visited {
color: var(--background-link-color);
}
::placeholder {
color: var(--subtle-color);
}
a {
color: var(--link-color);
}
a:visited,
a:active {
color: var(--link-color);
}
a.new {
color: var(--redlink-color);
}
a.new:visited {
color: var(--redlink-color);
}
.mw-parser-output a.extiw,
.mw-parser-output a.external {
color: var(--link-color);
}
.mw-parser-output a.extiw:visited,
.mw-parser-output a.external:visited,
.mw-parser-output a.extiw:active,
.mw-parser-output a.external:active {
color: var(--link-color);
}
.jsPurgeLink a.external {
color: var(--link-color);
}
:root {
--errorbox-bg: #feecea;
--errorbox-border: #ee4231;
--warningbox-bg: #fef9de;
--warningbox-border: #f9d000;
--successbox-bg: #ecf8e3;
--successbox-border: #6bc71f;
}
.mw-message-box-error,
.errorbox,
.mw-message-box-warning,
.warningbox,
.mw-message-box-success,
.successbox,
.usermessage {
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
}
.mw-message-box-error,
.errorbox {
background-color: var(--errorbox-bg);
border-color: var(--errorbox-border);
}
.mw-message-box-warning,
.warningbox,
.usermessage {
background-color: var(--warningbox-bg);
border-color: var(--warningbox-border);
}
.mw-message-box-success,
.successbox {
background-color: var(--successbox-bg);
border-color: var(--successbox-border);
}
.catlinks {
background: var(--body-light);
border: 1px solid var(--body-dark);
padding: 8px 15px;
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
}
.catlinks li {
border-color: var(--body-mid);
}
.filehistory a img,
#file img {
background: url("data:image/svg+xml,%3C%3Fxml version='1.0' encoding='UTF-8'%3F%3E%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16'%3E%3Cpath d='M0 0h8v16h8V8H0z' opacity='.13'/%3E%3C/svg%3E") repeat;
}
#file img:hover {
background: none;
}
.mw-highlight {
background: none;
}
.mw-highlight .linenos {
background-color: var(--mw-code-background-color);
color: var(--body-border);
}
.mw-highlight a:hover .linenos,
.mw-highlight .hll a .linenos {
color: var(--body-dark);
}
.mw-content-ltr.mw-highlight-lines pre,
.mw-content-ltr.content .mw-highlight-lines pre {
box-shadow: inset 2.75em 0 0 var(--mw-code-background-color);
}
#pagehistory ul {
list-style: none;
margin: 0;
}
#pagehistory li {
border: 1px solid transparent;
padding: 1px 10px;
margin: 2px 0;
}
#pagehistory li.selected {
background-color: var(--body-light);
color: inherit;
border: 1px dashed var(--body-border);
outline: none;
}
#mw-history-compare > div:first-of-type {
position: -webkit-sticky;
position: sticky;
top: 0;
background-color: var(--body-main);
border-bottom: 1px solid var(--body-dark);
padding: 0.25em 0;
}
.wgl-stickyheader #mw-history-compare > div:first-of-type {
top: 2.5rem;
}
.autocomment,
.autocomment a,
.autocomment a:visited {
color: var(--link-color);
}
li span.deleted,
span.history-deleted {
color: var(--byline-color);
}
.mw-usertoollinks-contribs-no-edits,
.mw-usertoollinks-contribs-no-edits:visited {
color: var(--redlink-color);
}
.CategoryTreeToggle {
color: var(--link-color);
}
body.wgl-stickyheader.action-view .mw-headline:target::before {
display: block;
content: '';
margin-top: -3rem;
height: 3rem;
visibility: hidden;
pointer-events: none;
}
.mw-mmv-post-image {
color: var(--text-color);
background-color: var(--body-main);
}
.mw-mmv-image-metadata {
border-top-color: var(--body-mid);
background-color: var(--body-light);
}
.mw-mmv-dialog,
.mw-mmv-dialog .mw-mmv-dialog-down-arrow,
.mw-mmv-options-dialog .mw-mmv-dialog-down-arrow {
background-color: var(--body-light);
box-shadow: none;
}
.mw-mmv-options-enable-alert {
background-color: var(--body-light);
color: var(--text-color);
}
.mw-mmv-options-dialog-header,
.mw-mmv-options-text-header,
.mw-mmv-options-text-body,
.mw-mmv-options-enable-alert,
.mw-mmv-options-dialog .mw-mmv-disable-confirmation .mw-mmv-options-dialog-header,
.mw-mmv-options-dialog .mw-mmv-disable-confirmation .mw-mmv-options-text-header {
color: var(--text-color);
}
.mw-revslider-container {
border-color: var(--sidebar);
}
.mw-revslider-slider-wrapper {
border-top-color: var(--sidebar);
}
.mw-ui-button {
background-color: var(--ooui-normal);
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
}
.mw-ui-button:not(:disabled):hover,
.mw-ui-button:not(:disabled):active {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
}
.mw-ui-button:not(:disabled):focus {
color: var(--ooui-text);
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent), inset 0 0 0 2px #fff;
}
.mw-ui-button:not(:disabled):visited {
color: var(--ooui-text);
}
.mw-ui-button.mw-ui-progressive:not(:disabled) {
background-color: var(--ooui-progressive);
color: #fff;
border-color: var(--ooui-progressive);
}
.mw-ui-button.mw-ui-progressive:not(:disabled):hover {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
}
.mw-ui-button.mw-ui-progressive:not(:disabled):focus {
box-shadow: inset 0 0 0 1px var(--ooui-accent), inset 0 0 0 2px #fff;
}
.mw-ui-button.mw-ui-progressive:not(:disabled):active,
.mw-ui-button.mw-ui-progressive:not(:disabled).is-on {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
box-shadow: none;
}
.mw-ui-button.mw-ui-destructive:not( :disabled ) {
color: #fff;
}
.mw-ui-button.mw-ui-quiet,
.mw-ui-button.mw-ui-quiet.mw-ui-progressive,
.mw-ui-button.mw-ui-quiet.mw-ui-destructive {
color: var(--text-color);
}
input[type='checkbox']:hover + .mw-ui-button.mw-ui-quiet,
input[type='checkbox']:hover + .mw-ui-button.mw-ui-quiet.mw-ui-progressive,
input[type='checkbox']:hover + .mw-ui-button.mw-ui-quiet.mw-ui-destructive,
.mw-ui-button.mw-ui-quiet:hover,
.mw-ui-button.mw-ui-quiet.mw-ui-progressive:hover,
.mw-ui-button.mw-ui-quiet.mw-ui-destructive:hover {
background-color: rgba(0, 24, 73, 0.02745098);
color: var(--text-color);
border-color: transparent;
}
input[type='checkbox']:focus + .mw-ui-button.mw-ui-quiet,
input[type='checkbox']:focus + .mw-ui-button.mw-ui-quiet.mw-ui-progressive,
input[type='checkbox']:focus + .mw-ui-button.mw-ui-quiet.mw-ui-destructive,
.mw-ui-button.mw-ui-quiet:focus,
.mw-ui-button.mw-ui-quiet.mw-ui-progressive:focus,
.mw-ui-button.mw-ui-quiet.mw-ui-destructive:focus {
color: var(--text-color);
}
input[type='checkbox']:active + .mw-ui-button.mw-ui-quiet,
input[type='checkbox']:active + .mw-ui-button.mw-ui-quiet.mw-ui-progressive,
input[type='checkbox']:active + .mw-ui-button.mw-ui-quiet.mw-ui-destructive,
.mw-ui-button.mw-ui-quiet:active,
.mw-ui-button.mw-ui-quiet.mw-ui-progressive:active,
.mw-ui-button.mw-ui-quiet.mw-ui-destructive:active {
background-color: rgba(0, 36, 73, 0.08235294);
color: var(--text-color);
border-color: #72777d;
}
.mw-ui-input {
background-color: var(--ooui-input);
color: var(--text-color);
border-color: var(--ooui-input-border);
}
.mw-ui-input:hover {
border-color: var(--ooui-input-border--hover);
}
.mw-ui-input::placeholder {
color: var(--byline-color);
}
.mw-content-ltr .redirectText li:first-child {
padding: 0;
background: 0;
}
.mw-content-ltr .redirectText li:first-child::before {
content: '';
background: currentcolor;
-webkit-mask: url("filepath://Redirect-arrow.svg") no-repeat 50% 50% / contain;
mask: url("filepath://Redirect-arrow.svg") no-repeat 50% 50% / contain;
display: inline-block;
width: 47px;
height: 20px;
}
.vector-search-box-inner {
background: var(--body-main) !important;
box-shadow: inset 0 -7px 7px -7px rgba(0, 0, 0, 0.15) !important;
}
.vector-menu-dropdown .vector-menu-heading {
color: var(--vector-tab-link-color) !important;
}
.vector-menu-dropdown .vector-menu-heading:hover {
color: var(--vector-tab-link-color) !important;
}
.vector-menu-dropdown .vector-menu-heading:focus {
color: var(--vector-tab-link-color) !important;
}
:root {
--wikitable-header-bg: var(--body-dark);
--wikitable-border: var(--body-border);
--wikitable-bg: var(--body-light);
--wikitable-bg-lighter: #e9e3d6;
--wikitable-color: var(--text-color);
--table-na-background: rgba(255, 255, 255, 0.3);
--table-na-color: var(--subtle-color);
--table-yes-background: #c3e8a3;
--table-yes-color: #2e5e05;
--table-no-background: #fbc0ba;
--table-no-color: #801c13;
--table-maybe-background: #fcea94;
--table-maybe-color: #786300;
}
.wikitable {
background: var(--wikitable-bg);
color: var(--wikitable-color);
border-color: var(--wikitable-border);
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
}
.wikitable > tr > th,
.wikitable > tr > td,
.wikitable > * > tr > th,
.wikitable > * > tr > td {
border-color: var(--wikitable-border);
}
.wikitable > tr > th.table-noborder,
.wikitable > tr > td.table-noborder,
.wikitable > * > tr > th.table-noborder,
.wikitable > * > tr > td.table-noborder {
border-left-style: hidden;
border-right-style: hidden;
padding-left: 0;
padding-right: 0;
}
.wikitable > tr > th,
.wikitable > * > tr > th {
background-color: var(--wikitable-header-bg);
color: #fff;
}
.tabber .wikitable {
box-shadow: none;
}
.mw_metadata td,
.mw_metadata th {
border-color: var(--wikitable-border);
}
.mw_metadata th {
background-color: var(--wikitable-header-bg);
}
.mw_metadata td {
background-color: var(--wikitable-bg);
}
.mw-datatable {
border-color: var(--wikitable-border);
}
.mw-datatable td,
.mw-datatable th {
border-color: var(--wikitable-border);
}
.mw-datatable th {
background-color: var(--wikitable-header-bg);
}
.mw-datatable td {
background-color: var(--wikitable-bg);
}
.mw-datatable tr:hover td {
background-color: var(--wikitable-bg);
}
table.alternating-rows tr:nth-child(odd),
table.alternating-cols td:nth-child(odd) {
background: var(--wikitable-alternating-bg);
}
.table-na {
background: var(--table-na-background);
color: var(--table-na-color);
vertical-align: middle;
text-align: center;
}
.table-yes {
background: var(--table-yes-background);
color: var(--table-yes-color);
}
.table-positive {
background: var(--table-yes-background);
}
.table-no {
background: var(--table-no-background);
color: var(--table-no-color);
}
.table-negative {
background: var(--table-no-background);
}
.table-maybe {
background: var(--table-maybe-background);
color: var(--table-maybe-color);
}
#mw-allmessagestable .am_actual,
#mw-allmessagestable .am_default {
background-color: var(--wikitable-bg);
}
#mw-allmessagestable .am_default:hover,
#mw-allmessagestable .am_actual:hover,
#mw-allmessagestable tbody:hover td {
background-color: var(--wikitable-bg-lighter);
}
table.wikitable td.no-cell-spacing {
padding: 0;
height: 0;
}
table.wikitable td.no-cell-spacing table {
margin: -1px;
width: calc(100% + 2px);
height: calc(100% + 2px);
}
.plainlist ol,
.plainlist ul {
margin: 0;
}
.plainlist li {
margin-bottom: 0;
list-style: none;
}
table.align-right-1 td:nth-of-type(1),
table.align-right-2 td:nth-of-type(2),
table.align-right-3 td:nth-of-type(3),
table.align-right-4 td:nth-of-type(4),
table.align-right-5 td:nth-of-type(5),
table.align-right-6 td:nth-of-type(6),
table.align-right-7 td:nth-of-type(7),
table.align-right-8 td:nth-of-type(8),
table.align-right-9 td:nth-of-type(9),
table.align-right-10 td:nth-of-type(10),
table.align-right-11 td:nth-of-type(11),
table.align-right-12 td:nth-of-type(12),
table.align-right-13 td:nth-of-type(13),
table.align-right-14 td:nth-of-type(14),
table.align-right-15 td:nth-of-type(15),
table.align-right-16 td:nth-of-type(16),
table.align-right-17 td:nth-of-type(17),
table.align-right-18 td:nth-of-type(18),
table.align-right-19 td:nth-of-type(19),
table.align-right-20 td:nth-of-type(20) {
text-align: right;
}
table.align-center-1 td:nth-of-type(1),
table.align-center-2 td:nth-of-type(2),
table.align-center-3 td:nth-of-type(3),
table.align-center-4 td:nth-of-type(4),
table.align-center-5 td:nth-of-type(5),
table.align-center-6 td:nth-of-type(6),
table.align-center-7 td:nth-of-type(7),
table.align-center-8 td:nth-of-type(8),
table.align-center-9 td:nth-of-type(9),
table.align-center-10 td:nth-of-type(10),
table.align-center-11 td:nth-of-type(11),
table.align-center-12 td:nth-of-type(12),
table.align-center-13 td:nth-of-type(13),
table.align-center-14 td:nth-of-type(14),
table.align-center-15 td:nth-of-type(15),
table.align-center-16 td:nth-of-type(16),
table.align-center-17 td:nth-of-type(17),
table.align-center-18 td:nth-of-type(18),
table.align-center-19 td:nth-of-type(19),
table.align-center-20 td:nth-of-type(20) {
text-align: center;
}
table.align-left-1 td:nth-of-type(1),
table.align-left-2 td:nth-of-type(2),
table.align-left-3 td:nth-of-type(3),
table.align-left-4 td:nth-of-type(4),
table.align-left-5 td:nth-of-type(5),
table.align-left-6 td:nth-of-type(6),
table.align-left-7 td:nth-of-type(7),
table.align-left-8 td:nth-of-type(8),
table.align-left-9 td:nth-of-type(9),
table.align-left-10 td:nth-of-type(10),
table.align-left-11 td:nth-of-type(11),
table.align-left-12 td:nth-of-type(12),
table.align-left-13 td:nth-of-type(13),
table.align-left-14 td:nth-of-type(14),
table.align-left-15 td:nth-of-type(15),
table.align-left-16 td:nth-of-type(16),
table.align-left-17 td:nth-of-type(17),
table.align-left-18 td:nth-of-type(18),
table.align-left-19 td:nth-of-type(19),
table.align-left-20 td:nth-of-type(20) {
text-align: left;
}
:root {
--diff-addedline-border-color: #438ab5;
--diff-addedline-background: #bddff2;
--diff-addedline-color: #000;
--diff-deletedline-border-color: #379541;
--diff-deletedline-background: #c1edbf;
--diff-deletedline-color: #000;
--diff-context-border-color: var(--body-mid);
--diff-context-background: var(--body-mid);
}
.diff-context {
border-color: var(--diff-context-border-color);
background: var(--diff-context-background);
color: inherit;
}
.diff-addedline {
border-color: var(--diff-addedline-border-color);
}
.diff-addedline .diffchange {
background: var(--diff-addedline-background);
color: var(--diff-addedline-color);
}
.diff-deletedline {
border-color: var(--diff-deletedline-border-color);
}
.diff-deletedline .diffchange {
background: var(--diff-deletedline-background);
color: var(--diff-deletedline-color);
}
.mw-diff-movedpara-left:after,
.mw-diff-movedpara-right:after {
color: var(--text-color);
}
.mw-notification {
background-color: var(--body-light);
border-color: var(--body-border);
color: var(--text-color);
}
.mw-echo-ui-notificationsInboxWidget-toolbarWrapper {
background: var(--body-main);
}
.mw-body-content .mw-echo-ui-datedSubGroupListWidget-title-secondary {
color: var(--byline-color);
}
.mw-echo-ui-pageNotificationsOptionWidget.oo-ui-optionWidget-selected {
background-color: var(--ooui-normal);
color: var(--ooui-accent);
}
.mw-echo-ui-pageNotificationsOptionWidget-label-count {
background-color: var(--ooui-normal);
color: var(--byline-color);
}
.oo-ui-optionWidget-selected .mw-echo-ui-pageNotificationsOptionWidget-label-count {
color: var(--ooui-accent);
}
.mw-echo-ui-pageNotificationsOptionWidget.oo-ui-optionWidget-highlighted {
background-color: var(--ooui-normal);
color: var(--text-color);
}
.mw-echo-ui-crossWikiUnreadFilterWidget {
border-color: var(--body-border);
}
.mw-echo-ui-crossWikiUnreadFilterWidget-subtitle {
color: var(--byline-color);
}
.mw-echo-ui-notificationBadgeButtonPopupWidget-popup > .oo-ui-popupWidget-popup > .oo-ui-popupWidget-head,
.mw-echo-ui-notificationBadgeButtonPopupWidget-popup > .oo-ui-popupWidget-popup > .oo-ui-popupWidget-footer {
border-color: var(--ooui-interface-border);
}
.mw-echo-ui-notificationBadgeButtonPopupWidget-popup > .oo-ui-popupWidget-popup > .oo-ui-popupWidget-footer .mw-echo-ui-notificationBadgeButtonPopupWidget-footer-buttons .oo-ui-buttonElement:last-child {
border-left-color: var(--ooui-normal-border);
}
.mw-echo-ui-notificationItemWidget {
background-color: var(--ooui-normal);
border-color: var(--ooui-normal-border);
}
.mw-echo-ui-notificationItemWidget:hover,
.mw-echo-ui-notificationItemWidget-unread:hover {
background-color: var(--ooui-normal--hover);
}
.mw-echo-ui-notificationItemWidget:last-child {
border-bottom-color: var(--ooui-normal-border);
}
.mw-echo-ui-notificationItemWidget-unread {
background-color: var(--search-box);
}
.mw-echo-ui-crossWikiNotificationItemWidget-group,
.mw-echo-ui-bundleNotificationItemWidget-group {
background-color: var(--ooui-interface);
}
.mw-echo-ui-toggleReadCircleButtonWidget-circle {
background-color: var(--ooui-progressive);
}
.mw-echo-ui-toggleReadCircleButtonWidget:hover .mw-echo-ui-toggleReadCircleButtonWidget-circle {
background-color: var(--ooui-progressive--hover);
}
.mw-echo-ui-toggleReadCircleButtonWidget-circle-unread {
background-color: var(--ooui-normal);
border-color: var(--ooui-normal-border);
}
.mw-echo-ui-notificationItemWidget-content-message-header,
.mw-echo-ui-notificationItemWidget-content-message-body,
.mw-echo-ui-menuItemWidget > .oo-ui-buttonElement-button > .oo-ui-labelElement-label,
.mw-echo-ui-notificationItemWidget-content-actions-timestamp {
color: var(--ooui-text);
}
.mw-echo-ui-bundleNotificationItemWidget-group {
background-color: var(--body-main);
}
@keyframes unseen-fadeout-to-unread {
from {
background-color: var(--wikitable-bg-lighter);
}
to {
background-color: var(--search-box);
}
}
@keyframes unseen-fadeout-to-read {
from {
background-color: var(--wikitable-bg-lighter);
}
to {
background-color: var(--body-main);
}
}
.mwe-popups {
background: var(--body-light);
}
.mwe-popups .mwe-popups-container {
color: var(--text-color);
background: var(--body-light);
}
.mwe-popups .mwe-popups-container.flipped-x-y:before,
.mwe-popups .mwe-popups-container.flipped-y:before {
border-top: none;
}
.mwe-popups .mwe-popups-container.mwe-popups-no-image-tri:before {
border-bottom: none;
}
.mwe-popups .mwe-popups-container.flipped-x-y:after,
.mwe-popups .mwe-popups-container.flipped-y:after {
border-top-color: var(--body-light);
}
.mwe-popups .mwe-popups-container.mwe-popups-no-image-tri:after {
border-bottom-color: var(--body-light);
}
.mwe-popups .mwe-popups-settings-icon:hover,
.mwe-popups .mwe-popups-settings-icon:active {
background-color: var(--ooui-normal--hover);
}
.mwe-popups .mw-ui-icon-element:not(.disabled):hover {
background: none;
}
.mwe-popups .mwe-popups-extract {
color: var(--text-color);
}
.mwe-popups .mwe-popups-extract[dir='ltr']:after {
background-image: linear-gradient(to right, rgba(49, 62, 89, 0), var(--body-light) 50%);
}
.mwe-popups-overlay {
background-color: var(--ooui-window-background);
}
#mwe-popups-settings {
background: var(--ooui-interface);
border-color: var(--ooui-interface-border);
color: var(--text-color);
}
#mwe-popups-settings header {
border-color: var(--ooui-interface-border);
}
#mwe-popups-settings main#mwe-popups-settings-form p {
color: var(--byline-color);
}
#mwe-popups-settings main#mwe-popups-settings-form form label > span {
color: var(--ooui-text);
}
:root {
--smw-ask-options-even-bg: var(--body-mid);
--smw-ask-options-odd-bg: var(--body-light);
--smw-ask-action-btn-lblue-bg: var(--body-main);
--smw-ask-action-btn-lblue-color: #000;
--smw-ask-action-btn-lblue-border-color: var(--body-light);
--smw-ask-action-btn-dblue-bg: var(--body-light);
--smw-ask-action-btn-dblue-color: #fff;
--smw-ask-action-btn-dblue-border-color: var(--button-border);
}
.smw-ask-condition fieldset,
.smw-ask-printhead fieldset {
border-color: var(--sidebar);
}
.smw-ask-search fieldset,
.smw-ask-format fieldset,
.smw-ask-options fieldset {
border-color: var(--sidebar);
}
.strike > span:before,
.strike > span:after {
background: var(--sidebar);
}
.smw-ask-options-fields tr td {
background-color: var(--smw-ask-options-even-bg);
}
.smw-ask-options-fields tr:nth-child(odd) td {
background-color: var(--smw-ask-options-odd-bg);
}
.smw-ask-action-btn.smw-ask-action-btn-lblue,
.smw-ask-action-btn.smw-ask-action-btn-lblue:hover,
.smw-ask-action-btn.smw-ask-action-btn-lblue:visited {
background-color: var(--smw-ask-action-btn-lblue-bg);
color: var(--smw-ask-action-btn-lblue-color);
border-color: var(--smw-ask-action-btn-lblue-border-color);
}
.smw-ask-action-btn.smw-ask-action-btn-dblue,
.smw-ask-action-btn.smw-ask-action-btn-dblue:hover,
.smw-ask-action-btn.smw-ask-action-btn-dblue:visited {
background-color: var(--smw-ask-action-btn-dblue-bg);
color: var(--smw-ask-action-btn-dblue-color);
border-color: var(--smw-ask-action-btn-dblue-border-color);
}
.smw-ask-query textarea,
.smw-ask-actions textarea {
background-color: var(--ooui-interface);
border-color: var(--ooui-interface-border);
color: var(--ooui-text);
}
.smw-ask-query-format select {
background-color: var(--ooui-interface);
border: 1px solid var(--ooui-interface-border);
color: var(--ooui-text);
}
.smw-ask-toplinks {
background-color: var(--body-mid);
}
.smw-ask-toplinks span.smw-icon-info {
background: none;
padding: 0 !important;
}
.smw-ask-toplinks span.smw-icon-info::before {
content: '';
background: var(--text-color);
-webkit-mask: url("data:image/svg+xml,%3C%3Fxml version='1.0' encoding='UTF-8'%3F%3E%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 20 20'%3E%3Ctitle%3Einfo%3C/title%3E%3Cpath d='M10 0C4.477 0 0 4.477 0 10s4.477 10 10 10 10-4.477 10-10S15.523 0 10 0zM9 5h2v2H9zm0 4h2v6H9z'/%3E%3C/svg%3E") no-repeat 50% 50% / contain;
mask: url("data:image/svg+xml,%3C%3Fxml version='1.0' encoding='UTF-8'%3F%3E%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 20 20'%3E%3Ctitle%3Einfo%3C/title%3E%3Cpath d='M10 0C4.477 0 0 4.477 0 10s4.477 10 10 10 10-4.477 10-10S15.523 0 10 0zM9 5h2v2H9zm0 4h2v6H9z'/%3E%3C/svg%3E") no-repeat 50% 50% / contain;
padding: 0 0 3px 18px;
}
.smw-ask-options-row-odd {
background-color: var(--body-light);
}
.smw-ask-options-row-even {
background-color: var(--body-mid);
}
#options-toggle:not(:checked) + #options-list .options-parameter-list:after {
background-image: linear-gradient(to bottom, transparent, var(--body-mid) 90%);
}
.smw-ask-button-submit input {
background-color: var(--ooui-normal);
border-color: var(--ooui-normal-border);
color: var(--text-color);
}
.smw-ask-button-submit input:hover,
.smw-ask-button-lgrey:hover {
background-color: var(--ooui-normal--hover);
border-color: var(--ooui-normal-border);
}
input.smw-ask-action-btn.smw-ask-action-btn-dblue {
background-color: var(--ooui-normal);
border-color: var(--ooui-normal-border);
color: var(--ooui-text);
}
a.smw-ask-action-btn.smw-ask-action-btn-lblue {
background-color: var(--body-mid);
border-color: var(--body-mid);
color: var(--ooui-text);
}
a.smw-ask-action-btn.smw-ask-action-btn-lblue:visited {
background-color: var(--body-mid);
border-color: var(--body-mid);
color: var(--ooui-text);
}
a.smw-ask-action-btn.smw-ask-action-btn-lblue:hover {
background-color: var(--body-mid);
border-color: var(--body-mid);
color: var(--ooui-text);
}
a.smw-ask-action-btn-lgrey {
background-color: var(--ooui-normal);
border-color: var(--ooui-normal-border);
color: var(--ooui-text);
}
a.smw-ask-action-btn-lgrey:hover {
background-color: var(--ooui-normal--hover);
border-color: var(--ooui-normal-border);
color: var(--ooui-text);
}
.smw-callout-error {
background-color: var(--errorbox-bg);
border-color: var(--errorbox-border);
}
.smw-callout-info {
background-color: var(--body-light);
border-color: var(--body-dark);
}
.smw-callout-success {
background-color: var(--successbox-bg);
border-color: var(--successbox-border);
}
.smw-callout-warning {
background-color: var(--warningbox-bg);
border-color: var(--warningbox-bg);
}
.smw-tabs input.nav-tab:checked + label.nav-label,
.smw-tabs input.nav-tab:checked + label.nav-label:hover {
color: inherit;
}
#tab-smw-property-value:checked + label.nav-label .usage-count {
color: #fff;
background-color: var(--ooui-progressive);
}
#tab-smw-property-value:checked + label.nav-label .usage-count.moderate {
color: #fff;
background-color: #b55e0c;
border-color: #b55e0c;
}
#tab-smw-property-value:checked + label.nav-label .usage-count.high {
color: #fff;
background-color: #9f261e;
border-color: #9f261e;
}
.smw-property-page-results .header-title {
background-color: var(--ooui-interface);
border-bottom-color: var(--ooui-interface-border);
color: var(--ooui-text);
}
.smw-property-page-results .value-row:hover {
background-color: var(--ooui-normal--hover);
}
.smw-property-page-results .smw-table .header-row {
color: var(--text-color);
}
.tippy-tooltip.light-border-theme {
background-color: var(--body-light);
color: var(--text-color);
}
.tippy-tooltip.light-border-theme .tippy-arrow {
border-top-color: var(--body-light);
}
.tippy-tooltip.light-border-theme .tippy-arrow:after {
border-top-color: var(--body-light);
}
.tippy-header {
background-color: var(--body-dark);
border-bottom-color: var(--body-mid);
}
.smw-ui-input-filter {
background-color: var(--ooui-interface);
border-color: var(--ooui-interface-border);
color: var(--ooui-text);
}
.smw-ui-input-filter input {
border-left-color: var(--ooui-interface-border) !important;
color: var(--ooui-text) !important;
}
.smw-ui-pagination .page-link.link-disabled {
background-color: var(--ooui-disabled);
border-color: var(--ooui-disabled-border);
color: var(--subtle-color);
}
.smw-ui-pagination .page-link {
background-color: var(--ooui-normal);
border-color: var(--ooui-normal-border);
color: var(--link-color);
}
.smw-ui-pagination .page-link:hover {
background-color: var(--ooui-normal--hover);
border-color: var(--ooui-normal-border);
color: var(--link-color);
}
.smw-ui-pagination .page-link.link-active {
color: #fff;
background-color: var(--ooui-progressive);
border-color: var(--ooui-progressive);
}
.smw-tabs input.nav-tab:checked + label.nav-label {
border-color: var(--ooui-normal-border);
}
.smw-tabs section,
.smw-tabs .subtab-content {
border-top-color: var(--ooui-normal-border);
}
.smw-column-header {
color: var(--text-color);
}
.smw-factbox {
background: var(--body-main);
border-color: transparent;
}
.mw-body .mw-indicators #mw-indicator-smw-entity-examiner.mw-indicator .smw-indicator-vertical-bar-loader {
display: none;
}
.smwb-theme-light .smwb-title,
.smwb-theme-light .smwb-center,
.smwb-theme-light .smwb-actions,
.smwb-theme-light .smwb-prophead {
background-color: var(--body-mid);
}
.smwb-theme-light .smwb-factbox {
border-left-color: var(--body-mid);
}
.smwb-theme-light .smwb-ifactbox {
border-right-color: var(--body-mid);
}
.smwb-theme-light .smwb-propval {
background-color: var(--body-light);
}
.smwb-action-separator {
border-color: var(--wikitable-border);
}
.smwb-bottom {
border-bottom: 1px solid var(--wikitable-border);
}
.smwb-ifactbox .smwb-cell,
.smwb-factbox .smwb-cell {
border-top: 1px solid var(--wikitable-border);
}
.smwb-propvalue .smwb-prophead,
.smwb-ipropvalue .smwb-prophead,
.smwb-propvalue .smwb-propval,
.smwb-ipropvalue .smwb-propval {
font-size: 0.9em;
}
:root {
--filter-black-to-link: invert(36%) sepia(58%) saturate(433%) hue-rotate(344deg) brightness(100%) contrast(91%);
}
#bodyContent span.smwbrowse a {
color: black;
background-image: url('filepath://Smwbrowse.svg');
filter: var(--filter-black-to-link);
}
#bodyContent span.smwbrowse a:hover {
color: black;
background-image: url('filepath://Smwbrowse-hover.svg');
text-decoration: underline;
}
#bodyContent span.smwsearch a {
color: black;
filter: var(--filter-black-to-link);
background-image: url('filepath://Smwsearch.svg');
}
#bodyContent span.smwsearch a:hover {
color: black;
background-image: url('filepath://Smwsearch-hover.svg');
text-decoration: underline;
}
:root {
--tabber-tab-bg: var(--body-light);
--tabber-tab-border-color: var(--body-border);
--tabber-active-tab-bg: var(--body-light);
--tabber-active-tab-color: var(--text-color);
--tabber-active-tab-hover-bg: var(--body-light);
--tabber-active-tab-hover-border-color: var(--body-border);
--tabber-active-tab-hover-color: var(--text-color);
--tabber-active-tab-border-hider-color: var(--body-light);
--tabber-inactive-tab-bg: var(--body-background-color);
--tabber-inactive-tab-border-color: var(--body-border);
--tabber-inactive-tab-color: var(--text-color);
--tabber-inactive-tab-hover-bg: var(--body-light);
--tabber-inactive-tab-hover-border-color: var(--body-border);
}
.tabber {
margin: 1em 0;
}
.tabber .tabbertab {
background-color: var(--tabber-tab-bg);
border: 1px solid var(--tabber-tab-border-color);
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
padding: 1em 1.5em;
}
ul.tabbernav {
border: none;
margin-left: 2em;
margin-bottom: 0;
margin-right: 2em;
padding: 0;
font-family: inherit;
}
ul.tabbernav li.tabberactive > a {
background-color: var(--tabber-active-tab-bg);
color: var(--tabber-active-tab-color);
border-bottom: none;
position: relative;
}
ul.tabbernav li.tabberactive > a:hover {
color: var(--tabber-active-tab-hover-color);
background-color: var(--tabber-active-tab-hover-bg);
border-color: var(--tabber-active-tab-hover-border-color);
border-bottom: none;
}
ul.tabbernav li.tabberactive > a::after {
content: '';
position: absolute;
left: 0;
right: 0;
bottom: -1px;
border-bottom: 2px solid var(--tabber-active-tab-border-hider-color);
}
ul.tabbernav li a {
background-color: var(--tabber-inactive-tab-bg);
border-bottom: transparent;
border-color: var(--tabber-inactive-tab-border-color);
color: var(--tabber-inactive-tab-color);
display: inline-block;
font-size: 110%;
padding: 0.5em 1em;
}
ul.tabbernav li a:hover {
background-color: var(--tabber-inactive-tab-hover-bg);
border-color: var(--tabber-inactive-tab-hover-border-color);
}
ul.tabbernav li a:link,
ul.tabbernav li a:visited {
color: var(--tabber-inactive-tab-color);
}
:root {
--ooui-text: var(--text-color);
--ooui-interface: var(--body-light);
--ooui-interface-border: var(--body-border);
--ooui-window-background: rgba(255, 255, 255, 0.5);
--ooui-normal: #d5c7ad;
--ooui-normal--hover: #dfd5c1;
--ooui-normal-border: #b8a282;
--ooui-progressive: #605443;
--ooui-progressive--hover: #7e6e58;
--ooui-accent: var(--link-color);
--ooui-input: #fff;
--ooui-input-border: #b8a282;
--ooui-input-border--hover: #8a724f;
--ooui-disabled: #d1cdc5;
--ooui-disabled-border: #c2b9ab;
--ooui-disabled-text: var(--subtle-color);
--ooui-pending-background-image: repeating-linear-gradient(-45deg, var(--search-box), var(--search-box) 20px, var(--body-main) 20px, var(--body-main) 30px);
}
.oo-ui-widget {
color: var(--ooui-text);
}
.oo-ui-checkboxInputWidget [type='checkbox'] + span,
.oo-ui-radioInputWidget [type='radio'] + span {
background-color: var(--ooui-input);
border-color: var(--ooui-input-border);
}
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:checked + span,
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:indeterminate + span {
background-color: var(--ooui-progressive);
border-color: var(--ooui-progressive);
}
.oo-ui-radioInputWidget.oo-ui-widget-enabled [type='radio']:checked + span {
border-color: var(--ooui-progressive);
}
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:checked:hover + span,
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:indeterminate:hover + span {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
}
.oo-ui-radioInputWidget.oo-ui-widget-enabled [type='radio']:checked:hover + span {
border-color: var(--ooui-progressive--hover);
}
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:hover + span,
.oo-ui-radioInputWidget.oo-ui-widget-enabled [type='radio']:hover + span {
border-color: var(--ooui-accent);
}
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:focus + span {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:active + span,
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:checked:active + span,
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:indeterminate:active + span {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
box-shadow: inset 0 0 0 1px var(--ooui-progressive--hover);
}
.oo-ui-radioInputWidget.oo-ui-widget-enabled [type='radio']:active + span {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
}
.oo-ui-radioInputWidget.oo-ui-widget-enabled [type='radio']:checked:active + span {
border-color: var(--ooui-progressive--hover);
box-shadow: inset 0 0 0 1px var(--ooui-progressive--hover);
}
.oo-ui-radioInputWidget.oo-ui-widget-enabled [type='radio']:checked:active + span:before {
border-color: var(--ooui-progressive--hover);
}
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:checked:focus + span,
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:indeterminate:focus + span {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent), inset 0 0 0 2px #fff;
}
.oo-ui-checkboxInputWidget [type='checkbox']:disabled + span,
.oo-ui-radioInputWidget [type='radio']:disabled + span {
background-color: var(--ooui-disabled);
border-color: var(--ooui-disabled);
}
.oo-ui-dropdownWidget-handle {
border-color: var(--ooui-normal-border);
}
.oo-ui-dropdownWidget.oo-ui-widget-enabled .oo-ui-dropdownWidget-handle {
background-color: var(--ooui-normal);
color: var(--ooui-text);
}
.oo-ui-dropdownWidget.oo-ui-widget-enabled .oo-ui-dropdownWidget-handle:hover {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
}
.oo-ui-dropdownWidget.oo-ui-widget-enabled .oo-ui-dropdownWidget-handle:active {
color: var(--ooui-text);
}
.oo-ui-dropdownWidget.oo-ui-widget-enabled .oo-ui-dropdownWidget-handle:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-dropdownWidget.oo-ui-widget-enabled.oo-ui-dropdownWidget-open .oo-ui-dropdownWidget-handle {
background-color: var(--ooui-normal--hover);
}
.oo-ui-dropdownWidget.oo-ui-widget-disabled .oo-ui-dropdownWidget-handle {
color: var(--ooui-disabled-text);
text-shadow: none;
border-color: var(--ooui-disabled-border);
background-color: var(--ooui-disabled);
}
.oo-ui-dropdownInputWidget select {
border-color: var(--ooui-normal-border);
}
.oo-ui-dropdownInputWidget option {
background-color: var(--ooui-interface);
}
.oo-ui-dropdownInputWidget.oo-ui-widget-enabled {
background-color: var(--ooui-normal);
}
.oo-ui-dropdownInputWidget.oo-ui-widget-enabled:hover {
background-color: var(--ooui-normal--hover);
}
.oo-ui-dropdownInputWidget.oo-ui-widget-enabled select {
color: var(--ooui-text);
}
.oo-ui-dropdownInputWidget.oo-ui-widget-enabled select:hover,
.oo-ui-dropdownInputWidget.oo-ui-widget-enabled select:active {
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
}
.oo-ui-dropdownInputWidget.oo-ui-widget-enabled select:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-labelWidget.oo-ui-inline-help {
color: var(--byline-color);
}
.oo-ui-menuSelectWidget {
background-color: var(--ooui-interface);
border-color: var(--ooui-interface-border);
}
.oo-ui-menuSelectWidget-frameless {
box-shadow: inset 0 -1px 0 0 var(--ooui-normal-border);
}
.oo-ui-menuSectionOptionWidget {
color: var(--byline-color);
}
.oo-ui-menuOptionWidget.oo-ui-optionWidget-highlighted,
.oo-ui-menuOptionWidget.oo-ui-optionWidget-selected {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
}
.oo-ui-menuOptionWidget.oo-ui-optionWidget-selected.oo-ui-menuOptionWidget.oo-ui-optionWidget-highlighted,
.oo-ui-menuOptionWidget.oo-ui-optionWidget-pressed.oo-ui-menuOptionWidget.oo-ui-optionWidget-highlighted {
color: var(--ooui-accent);
}
.oo-ui-menuOptionWidget.oo-ui-widget-enabled.oo-ui-optionWidget {
color: var(--ooui-text);
}
.oo-ui-messageDialog-title {
color: inherit;
}
.oo-ui-messageWidget.oo-ui-messageWidget-block.oo-ui-flaggedElement-error {
background-color: var(--errorbox-bg);
border-color: var(--errorbox-border);
}
.oo-ui-messageWidget.oo-ui-messageWidget-block.oo-ui-flaggedElement-warning {
background-color: var(--warningbox-bg);
border-color: var(--warningbox-border);
}
.oo-ui-messageWidget.oo-ui-messageWidget-block.oo-ui-flaggedElement-success {
background-color: var(--successbox-bg);
border-color: var(--successbox-border);
}
.oo-ui-messageWidget.oo-ui-messageWidget-block.oo-ui-flaggedElement-notice {
background-color: var(--messagebox-info-background);
border-color: var(--messagebox-info-border);
}
.oo-ui-messageWidget.oo-ui-flaggedElement-error:not(.oo-ui-messageWidget-block),
.oo-ui-messageWidget.oo-ui-flaggedElement-success:not(.oo-ui-messageWidget-block) {
color: var(--ooui-text);
}
.oo-ui-optionWidget.oo-ui-widget-disabled {
color: var(--ooui-disabled-text);
}
.oo-ui-outlineControlsWidget {
background-color: var(--ooui-normal);
}
.oo-ui-outlineOptionWidget.oo-ui-optionWidget-highlighted {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
}
.oo-ui-popupWidget-popup {
background-color: var(--ooui-interface);
border-color: var(--ooui-interface-border);
}
.oo-ui-popupWidget-anchored-top .oo-ui-popupWidget-anchor:after {
border-bottom-color: var(--ooui-interface);
}
.oo-ui-popupWidget-anchored-top .oo-ui-popupWidget-anchor:before {
border-bottom-color: var(--ooui-interface-border);
}
.oo-ui-popupWidget-anchored-bottom .oo-ui-popupWidget-anchor:after {
border-top-color: var(--ooui-interface);
}
.oo-ui-popupWidget-anchored-bottom .oo-ui-popupWidget-anchor:before {
border-top-color: var(--ooui-interface-border);
}
.oo-ui-popupWidget-anchored-start .oo-ui-popupWidget-anchor:after {
border-right-color: var(--ooui-interface);
}
.oo-ui-popupWidget-anchored-start .oo-ui-popupWidget-anchor:before {
border-right-color: var(--ooui-interface-border);
}
.oo-ui-popupWidget-anchored-end .oo-ui-popupWidget-anchor:after {
border-left-color: var(--ooui-interface);
}
.oo-ui-popupWidget-anchored-end .oo-ui-popupWidget-anchor:before {
border-left-color: var(--ooui-interface-border);
}
.oo-ui-searchWidget-query {
border-bottom-color: var(--ooui-interface-border);
}
.oo-ui-selectFileWidget-dropTarget {
background-color: var(--ooui-interface);
border-color: var(--ooui-interface-border);
}
.oo-ui-selectFileWidget.oo-ui-widget-enabled.oo-ui-selectFileWidget-dropTarget {
background-color: var(--ooui-interface);
}
.oo-ui-selectFileWidget.oo-ui-widget-enabled.oo-ui-selectFileWidget-dropTarget:hover {
border-color: var(--ooui-input-border--hover);
}
.oo-ui-tabOptionWidget {
color: var(--ooui-text);
}
.oo-ui-tabSelectWidget-framed .oo-ui-tabOptionWidget.oo-ui-optionWidget-selected {
background-color: var(--body-dark);
color: var(--ooui-text);
}
.oo-ui-tabSelectWidget-framed .oo-ui-tabOptionWidget.oo-ui-optionWidget-selected .oo-ui-labelElement-label {
border-bottom-color: var(--body-border);
}
.oo-ui-tabSelectWidget-framed .oo-ui-tabOptionWidget.oo-ui-widget-enabled:hover,
.oo-ui-tabSelectWidget-framed .oo-ui-tabOptionWidget.oo-ui-widget-enabled:active {
background-color: var(--body-light);
color: var(--ooui-text);
}
.oo-ui-tabSelectWidget-framed .oo-ui-tabOptionWidget.oo-ui-widget-enabled.oo-ui-optionWidget-selected:hover {
background-color: var(--body-dark);
}
.oo-ui-tabSelectWidget-frameless .oo-ui-tabOptionWidget.oo-ui-optionWidget-selected {
color: var(--ooui-progressive);
box-shadow: inset 0 -2px 0 0 var(--ooui-progressive);
}
.oo-ui-tabSelectWidget-frameless .oo-ui-tabOptionWidget.oo-ui-optionWidget-selected:hover,
.oo-ui-tabSelectWidget-frameless .oo-ui-tabOptionWidget.oo-ui-optionWidget-selected:focus {
color: var(--ooui-progressive--hover);
box-shadow: inset 0 -2px 0 0 var(--ooui-progressive--hover);
}
.oo-ui-tabSelectWidget-framed {
background: none;
border-bottom: 1px solid var(--ooui-interface-border);
}
.oo-ui-tabSelectWidget-frameless {
box-shadow: inset 0 -1px 0 0 var(--ooui-interface-border);
}
.oo-ui-tabSelectWidget-mobile {
}
.oo-ui-tabSelectWidget-mobile.oo-ui-tabSelectWidget-framed:after {
background: var(--mobile-navbox-linear-gradient);
}
.oo-ui-tabSelectWidget-mobile.oo-ui-tabSelectWidget-frameless:after {
background: var(--mobile-navbox-linear-gradient);
}
.oo-ui-tagItemWidget {
border-color: var(--ooui-normal-border);
}
.oo-ui-tagItemWidget.oo-ui-widget-enabled {
color: var(--ooui-text);
}
.oo-ui-tagItemWidget.oo-ui-widget-enabled:hover {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
}
.oo-ui-tagItemWidget.oo-ui-widget-enabled:not( .oo-ui-tagItemWidget-fixed ) {
background-color: var(--ooui-normal);
}
.oo-ui-tagItemWidget.oo-ui-widget-enabled .oo-ui-buttonElement-button:hover {
background-color: var(--ooui-normal--hover);
}
.oo-ui-tagMultiselectWidget.oo-ui-widget-enabled {
background-color: var(--ooui-interface);
}
.oo-ui-tagMultiselectWidget.oo-ui-widget-enabled.oo-ui-tagMultiselectWidget-outlined {
background-color: var(--ooui-normal);
}
.oo-ui-tagMultiselectWidget.oo-ui-widget-enabled.oo-ui-tagMultiselectWidget-outlined .oo-ui-tagItemWidget.oo-ui-widget-enabled {
background-color: var(--ooui-interface);
}
.oo-ui-textInputWidget .oo-ui-inputWidget-input {
background-color: var(--ooui-input);
color: var(--ooui-text);
border-color: var(--ooui-input-border);
}
.oo-ui-textInputWidget.oo-ui-widget-enabled .oo-ui-inputWidget-input::placeholder {
color: var(--subtle-color);
}
.oo-ui-textInputWidget.oo-ui-widget-enabled .oo-ui-inputWidget-input:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-textInputWidget.oo-ui-widget-enabled .oo-ui-inputWidget-input[readonly]:not(.oo-ui-pendingElement-pending) {
background-color: var(--ooui-disabled);
color: var(--ooui-disabled-text);
}
.oo-ui-textInputWidget.oo-ui-widget-enabled:hover .oo-ui-inputWidget-input {
border-color: var(--ooui-input-border--hover);
}
.oo-ui-textInputWidget.oo-ui-widget-enabled:hover .oo-ui-inputWidget-input:focus {
border-color: var(--ooui-accent);
}
@media screen and (min-width: 0) {
.oo-ui-textInputWidget.oo-ui-widget-enabled textarea.oo-ui-inputWidget-input:focus {
outline: 1px solid var(--ooui-accent);
}
}
.oo-ui-textInputWidget.oo-ui-widget-disabled .oo-ui-inputWidget-input {
background-color: var(--ooui-disabled);
color: var(--ooui-disabled-text);
text-shadow: none;
border-color: var(--ooui-disabled-border);
}
.oo-ui-toggleSwitchWidget {
background-color: var(--ooui-input);
border-color: var(--ooui-input-border);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled .oo-ui-toggleSwitchWidget-grip {
background-color: var(--ooui-input);
border-color: var(--ooui-input-border);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:hover {
background-color: var(--ooui-input);
border-color: var(--ooui-accent);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:hover .oo-ui-toggleSwitchWidget-grip {
background-color: var(--ooui-input);
border-color: var(--ooui-accent);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:active,
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:active:hover,
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:active:focus {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
box-shadow: inset 0 0 0 1px var(--ooui-progressive--hover);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:active .oo-ui-toggleSwitchWidget-grip,
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:active:hover .oo-ui-toggleSwitchWidget-grip,
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:active:focus .oo-ui-toggleSwitchWidget-grip {
background-color: var(--ooui-input);
border-color: var(--ooui-input);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:focus .oo-ui-toggleSwitchWidget-grip {
border-color: var(--ooui-accent);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled.oo-ui-toggleWidget-on {
background-color: var(--ooui-progressive);
border-color: var(--ooui-progressive);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled.oo-ui-toggleWidget-on .oo-ui-toggleSwitchWidget-grip {
background-color: var(--ooui-input);
border-color: var(--ooui-input);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled.oo-ui-toggleWidget-on:hover {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled.oo-ui-toggleWidget-on:active,
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled.oo-ui-toggleWidget-on:active:hover {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled.oo-ui-toggleWidget-on:focus {
border-color: var(--ooui-progressive);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled.oo-ui-toggleWidget-on:focus::before {
border-color: #fff;
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-disabled {
background-color: var(--ooui-disabled);
border-color: var(--ooui-disabled);
}
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled > .oo-ui-buttonElement-button {
color: var(--ooui-text);
}
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled > .oo-ui-buttonElement-button:hover {
color: var(--ooui-text);
}
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled > .oo-ui-buttonElement-button:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled.oo-ui-buttonElement-pressed > input.oo-ui-buttonElement-button,
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled > .oo-ui-buttonElement-button:active {
color: var(--ooui-text);
}
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button,
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button:hover {
color: var(--ooui-text);
}
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button:active,
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive.oo-ui-buttonElement-pressed > .oo-ui-buttonElement-button {
color: var(--ooui-text);
border-color: var(--ooui-text);
}
.oo-ui-buttonElement-frameless.oo-ui-widget-disabled > .oo-ui-buttonElement-button {
color: var(--ooui-disabled-text);
}
.oo-ui-buttonElement-framed.oo-ui-widget-disabled > .oo-ui-buttonElement-button {
background-color: var(--ooui-disabled);
border-color: var(--ooui-disabled-border);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled > .oo-ui-buttonElement-button {
background-color: var(--ooui-normal);
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled > .oo-ui-buttonElement-button:hover {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled > .oo-ui-buttonElement-button:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-buttonElement-active > .oo-ui-buttonElement-button {
background-color: var(--ooui-progressive--hover);
color: #fff;
border-color: var(--ooui-progressive--hover);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-buttonElement-active > .oo-ui-buttonElement-button:focus {
border-color: var(--ooui-progressive--hover);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled > .oo-ui-buttonElement-button:active,
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-buttonElement-pressed > .oo-ui-buttonElement-button {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive {
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button {
color: var(--ooui-text);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button:hover {
background-color: var(--ooui-normal--hover);
border-color: var(--ooui-progressive--hover);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-destructive > .oo-ui-buttonElement-button {
color: var(--ooui-text);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-destructive > .oo-ui-buttonElement-button:hover {
background-color: var(--ooui-normal--hover);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button {
background-color: var(--ooui-progressive);
border-color: var(--ooui-progressive);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button:hover {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent), inset 0 0 0 2px #fff;
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button:active,
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive.oo-ui-buttonElement-pressed > .oo-ui-buttonElement-button,
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive.oo-ui-buttonElement-active > .oo-ui-buttonElement-button,
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive.oo-ui-popupToolGroup-active > .oo-ui-buttonElement-button {
color: #fff;
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
}
.oo-ui-pendingElement-pending {
background-image: var(--ooui-pending-background-image);
background-size: 200%;
animation: oo-ui-pendingElement-stripes 6s linear infinite;
}
@keyframes oo-ui-pendingElement-stripes {
100% {
background-position: 100%;
}
}
.oo-ui-messageDialog-content > .oo-ui-window-foot {
outline-color: var(--ooui-interface-border);
}
.oo-ui-messageDialog-message {
color: var(--ooui-text);
}
.oo-ui-messageDialog-actions-horizontal .oo-ui-actionWidget {
border-right-color: var(--ooui-interface-border);
}
.oo-ui-messageDialog-actions-vertical .oo-ui-actionWidget {
border-bottom-color: var(--ooui-interface-border);
}
.oo-ui-processDialog-content .oo-ui-window-head,
.oo-ui-processDialog-content .oo-ui-window-foot {
outline-color: var(--ooui-interface-border);
}
.oo-ui-processDialog .oo-ui-actionWidget > .oo-ui-buttonElement-button {
border-top-color: transparent;
border-bottom-color: transparent;
}
.oo-ui-processDialog .oo-ui-actionWidget > .oo-ui-buttonElement-button:hover,
.oo-ui-processDialog .oo-ui-actionWidget > .oo-ui-buttonElement-button:active {
border-top-color: transparent;
border-bottom-color: transparent;
}
.oo-ui-processDialog .oo-ui-actionWidget:not( .oo-ui-flaggedElement-progressive ):not( .oo-ui-flaggedElement-destructive ) > .oo-ui-buttonElement-button:hover,
.oo-ui-processDialog .oo-ui-actionWidget:not( .oo-ui-flaggedElement-progressive ):not( .oo-ui-flaggedElement-destructive ) > .oo-ui-buttonElement-button:active {
border-right-color: var(--ooui-interface-border);
border-left-color: transparent;
}
.oo-ui-processDialog .oo-ui-actionWidget:not( .oo-ui-flaggedElement-progressive ):not( .oo-ui-flaggedElement-destructive ) > .oo-ui-buttonElement-button:focus {
border-color: var(--ooui-accent);
}
.oo-ui-processDialog-actions-safe .oo-ui-actionWidget > .oo-ui-buttonElement-button,
.oo-ui-processDialog-actions-other .oo-ui-actionWidget > .oo-ui-buttonElement-button {
border-right-color: var(--ooui-normal-border);
border-left-color: transparent;
}
.oo-ui-processDialog-actions-safe .oo-ui-widget-enabled.oo-ui-iconElement:not( .oo-ui-labelElement ) > .oo-ui-buttonElement-button:hover {
background-color: var(--ooui-normal--hover);
border-right-color: var(--ooui-interface-border);
}
.oo-ui-windowManager-modal > .oo-ui-dialog {
background-color: var(--ooui-window-background);
}
.oo-ui-windowManager-modal > .oo-ui-dialog > .oo-ui-window-frame {
background-color: var(--ooui-interface);
}
.oo-ui-windowManager-modal.oo-ui-windowManager-floating > .oo-ui-dialog > .oo-ui-window-frame {
border-color: var(--ooui-interface-border);
}
.oo-ui-window {
color: var(--ooui-text);
}
.oo-ui-toolbar-bar {
background-color: var(--ooui-interface);
color: var(--ooui-text);
}
.oo-ui-toolbar-position-top > .oo-ui-toolbar-bar {
border-bottom-color: var(--body-mid);
}
.oo-ui-toolbar-bar .oo-ui-bookletLayout > .oo-ui-menuLayout-menu {
border-right-color: var(--body-mid);
}
.oo-ui-tool.oo-ui-widget-enabled > .oo-ui-tool-link:hover {
background-color: var(--ooui-normal--hover);
}
.oo-ui-tool.oo-ui-widget-enabled > .oo-ui-tool-link:focus {
outline: 1px solid var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-tool.oo-ui-widget-enabled > .oo-ui-tool-link:active,
.oo-ui-tool.oo-ui-widget-enabled.oo-ui-tool-active > .oo-ui-tool-link,
.oo-ui-tool.oo-ui-widget-enabled.oo-ui-popupToolGroup-active > .oo-ui-tool-link {
background-color: var(--ooui-normal--hover);
color: var(--ooui-accent);
box-shadow: none;
}
.oo-ui-tool.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive > .oo-ui-tool-link {
background-color: var(--ooui-progressive);
}
.oo-ui-tool.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive > .oo-ui-tool-link:hover {
background-color: var(--ooui-progressive--hover);
}
.oo-ui-tool.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive > .oo-ui-tool-link:focus {
box-shadow: inset 0 0 0 1px var(--ooui-accent), inset 0 0 0 2px #fff;
}
.oo-ui-tool.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive > .oo-ui-tool-link:active,
.oo-ui-tool.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive.oo-ui-tool-active > .oo-ui-tool-link {
background-color: var(--ooui-progressive--hover);
}
.oo-ui-listToolGroup-tools .oo-ui-tool.oo-ui-widget-enabled {
background-color: var(--ooui-normal);
}
.oo-ui-listToolGroup-tools .oo-ui-tool.oo-ui-widget-enabled:hover {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
}
.oo-ui-listToolGroup-tools .oo-ui-tool-active.oo-ui-widget-enabled .oo-ui-tool-link .oo-ui-tool-title {
color: var(--ooui-progressive);
}
.oo-ui-menuToolGroup {
border-left-color: var(--body-mid);
border-right-color: var(--body-mid);
}
.oo-ui-popupToolGroup-tools {
background-color: var(--ooui-interface);
border-color: var(--body-mid);
}
.oo-ui-popupToolGroup.oo-ui-widget-enabled > .oo-ui-popupToolGroup-handle:hover {
background-color: var(--ooui-normal--hover);
}
.oo-ui-popupToolGroup.oo-ui-widget-enabled > .oo-ui-popupToolGroup-handle:focus {
outline: 1px solid var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-toolbar-actions .oo-ui-popupToolGroup.oo-ui-widget-enabled > .oo-ui-popupToolGroup-handle:hover {
border-right-color: var(--ooui-normal--hover);
}
.oo-ui-popupToolGroup-tools .oo-ui-tool.oo-ui-widget-enabled .oo-ui-tool-link:focus {
box-shadow: inset 0 0 0 2px var(--ooui-accent);
}
.oo-ui-popupToolGroup-tools .oo-ui-tool-active.oo-ui-widget-enabled .oo-ui-tool-link .oo-ui-tool-title {
color: var(--ooui-progressive);
}
.oo-ui-popupToolGroup.oo-ui-popupToolGroup-active > .oo-ui-popupToolGroup-handle {
background-color: var(--ooui-normal);
color: var(--ooui-accent);
}
.oo-ui-popupToolGroup.oo-ui-popupToolGroup-active > .oo-ui-popupToolGroup-handle:hover {
background-color: var(--ooui-normal--hover);
color: var(--ooui-accent);
}
.oo-ui-bookletLayout-outlinePanel > .oo-ui-outlineControlsWidget {
border-top-color: var(--ooui-interface-border);
}
.oo-ui-bookletLayout > .oo-ui-menuLayout-menu {
border-right-color: var(--ooui-interface-border);
}
.oo-ui-fieldLayout-disabled > .oo-ui-fieldLayout-body > .oo-ui-fieldLayout-header > .oo-ui-labelElement-label {
color: var(--ooui-disabled-text);
}
.oo-ui-panelLayout-framed {
border-color: var(--sidebar);
}
.oo-ui-icon-settings {
background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' width='20' height='20' viewBox='0 0 20 20'%3E%3Ctitle%3Esettings%3C/title%3E%3Cg transform='translate(10 10)'%3E%3Cpath id='a' d='M1.5-10h-3l-1 6.5h5m0 7h-5l1 6.5h3'/%3E%3Cuse xlink:href='%23a' transform='rotate(45)'/%3E%3Cuse xlink:href='%23a' transform='rotate(90)'/%3E%3Cuse xlink:href='%23a' transform='rotate(135)'/%3E%3C/g%3E%3Cpath d='M10 2.5a7.5 7.5 0 0 0 0 15 7.5 7.5 0 0 0 0-15v4a3.5 3.5 0 0 1 0 7 3.5 3.5 0 0 1 0-7'/%3E%3C/svg%3E");
}
.oo-ui-icon-clear {
background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 20 20'%3E%3Ctitle%3Eclear%3C/title%3E%3Cpath d='M10 0a10 10 0 1 0 10 10A10 10 0 0 0 10 0zm5.66 14.24-1.41 1.41L10 11.41l-4.24 4.25-1.42-1.42L8.59 10 4.34 5.76l1.42-1.42L10 8.59l4.24-4.24 1.41 1.41L11.41 10z'/%3E%3C/svg%3E");
}
.mw-widget-dateInputWidget-handle {
background-color: var(--ooui-input);
color: var(--ooui-text);
border-color: var(--ooui-input-border);
}
.mw-widget-dateInputWidget-calendar {
background-color: var(--ooui-interface);
}
.mw-widget-dateInputWidget.oo-ui-widget-enabled .mw-widget-dateInputWidget-handle:hover {
border-color: var(--ooui-input-border--hover);
}
.mw-widget-calendarWidget {
border-color: var(--ooui-interface-border);
}
.mw-widget-calendarWidget:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.mw-widget-calendarWidget-day,
.mw-widget-calendarWidget-day-heading {
color: var(--ooui-text);
}
.mw-widget-calendarWidget-day-additional {
color: var(--ooui-text);
opacity: 0.67;
}
.mw-widget-calendarWidget-day-today {
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.mw-widget-calendarWidget-item:hover {
background-color: var(--ooui-progressive);
}
.mw-widget-calendarWidget-item-selected {
background-color: var(--ooui-progressive--hover);
}
.mw-widgets-datetime-calendarWidget {
background-color: var(--ooui-interface);
border-color: var(--ooui-interface-border);
}
.mw-widgets-datetime-calendarWidget:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent), 0 2px 2px 0 rgba(0, 0, 0, 0.25);
}
.mw-widgets-datetime-calendarWidget-grid .mw-widgets-datetime-calendarWidget-cell.mw-widgets-datetime-calendarWidget-extra .oo-ui-buttonElement-button .oo-ui-labelElement-label {
color: var(--subtle-color);
}
.mw-widgets-datetime-calendarWidget-grid .mw-widgets-datetime-calendarWidget-cell.mw-widgets-datetime-calendarWidget-selected .oo-ui-buttonElement-button {
background-color: var(--ooui-progressive--hover);
}
.mw-widgets-datetime-dateTimeInputWidget-handle {
background-color: var(--ooui-input);
color: var(--ooui-text);
border-color: var(--ooui-input-border);
}
.mw-widgets-datetime-dateTimeInputWidget.oo-ui-widget-enabled.mw-widgets-datetime-dateTimeInputWidget-handle:hover {
border-color: var(--ooui-input-border--hover);
}
.mw-widgets-datetime-dateTimeInputWidget.oo-ui-widget-enabled:hover input,
.mw-widgets-datetime-dateTimeInputWidget.oo-ui-widget-enabled:hover textarea {
border-color: var(--ooui-input-border--hover);
}
.mw-widgets-datetime-dateTimeInputWidget.oo-ui-widget-enabled .mw-widgets-datetime-dateTimeInputWidget-editField:hover {
background-color: var(--ooui-normal);
}
.ve-activated .ve-init-mw-desktopArticleTarget-originalContent #catlinks:hover {
background: var(--ooui-normal--hover);
}
.ve-ui-overlay {
font-family: inherit;
}
.oo-ui-toolbar-position-top .ve-ui-toolbarDialog-position-above {
border-top-color: var(--body-mid);
}
.ve-ce-branchNode-blockSlug,
.ve-ce-branchNode-newSlug {
outline-color: var(--body-border);
background-color: var(--ooui-interface);
}
.ve-ui-specialCharacterPage h3 {
color: var(--byline-color);
}
.ve-ui-specialCharacterPage-character {
border-color: var(--body-mid);
}
.ve-ui-specialCharacterPage-character:hover {
border-color: var(--body-dark);
}
.ve-ce-linkAnnotation.ve-ce-annotation-active {
box-shadow: 0 0 0 1px var(--body-mid);
background: none;
}
.ve-ui-desktopContext .ve-ui-linkContextItem .ve-ui-linkContextItem-label {
border-color: var(--body-border);
}
.ve-ui-mwHelpPopupTool-version-label,
.ve-ui-mwHelpPopupTool-version-link,
.ve-ui-mwHelpPopupTool-version-date {
color: var(--byline-color);
}
.ve-ce-tableCellableNode {
border-color: var(--body-mid);
}
.ve-ce-mwReferencesListNode-muted {
color: var(--byline-color);
}
.ve-ui-mwTemplatePage-description,
.ve-ui-mwParameterPage-label,
.ve-ui-mwParameterPage-description-required,
.ve-ui-mwParameterPage-description-deprecated {
color: var(--byline-color);
}
.mw-widget-titleWidget-menu .mw-widget-titleOptionWidget-description {
color: var(--byline-color);
}
.ve-ui-mwGalleryDialog-menuLayout > .oo-ui-menuLayout-menu,
.ve-ui-mwGalleryDialog-innerMenuLayout > .oo-ui-menuLayout-menu,
.ve-ui-mwGalleryDialog .ve-ui-mwGalleryDialog-image-container,
.ve-ui-targetWidget {
border-color: var(--body-border);
}
.ve-ui-targetWidget:not(.oo-ui-pendingElement-pending) {
background-color: var(--body-main);
}
.ve-ui-mwSaveDialog {
color: var(--ooui-text);
}
.ve-ui-mwSaveDialog-options {
background-color: var(--ooui-interface);
border-color: var(--body-border);
}
.ve-ui-mwSaveDialog-summary {
background-color: var(--ooui-input);
}
.ve-ui-mwSaveDialog-editSummary-count {
border-color: var(--body-border);
}
.ve-ui-mwSaveDialog-license {
color: var(--byline-color);
}
.ve-ui-mwReferenceContextItem-muted {
color: var(--byline-color);
}
.ve-ui-mwNoticesPopupTool-items > div:not(:first-child),
.ve-ui-mwHelpPopupTool-item:not(:first-child) {
border-color: var(--body-border);
}
.ve-ui-mwTransclusionOutlineControlsWidget {
background-color: var(--ooui-interface);
border-top-color: var(--body-border);
}
.ve-ui-mwTransclusionOutlineTemplateWidget-sticky {
background-color: var(--ooui-interface);
}
.ve-ui-mwTransclusionOutlineTemplateWidget .ve-ui-mwTransclusionOutlineParameterWidget.oo-ui-optionWidget-highlighted {
color: var(--ooui-text);
}
.ve-ui-mwTransclusionOutlineTemplateWidget-no-template-parameters {
color: var(--subtle-color);
}
.ve-ui-mwParameterPage-undocumentedLabel {
color: var(--subtle-color);
}
.ve-ui-mwTwoPaneTransclusionDialogLayout > .oo-ui-menuLayout-menu {
border-right: var(--body-border);
}
.ve-ui-mwParameterPage-doc-required,
.ve-ui-mwParameterPage-doc-deprecated,
.ve-ui-mwParameterPage-inlineDescription .ve-ui-mwParameterPage-doc-example {
color: var(--byline-color);
}
.ve-ui-expandableContent-toggle {
background-color: var(--ooui-interface);
}
.ve-ui-expandableContent-fade {
background: linear-gradient(to right, rgba(255, 255, 255, 0) 0, var(--ooui-interface) 90%);
}
.ve-ui-commandHelpDialog-shortcut > kbd,
.ve-ui-commandHelpDialog-sequence > kbd {
background-color: var(--keypress-background);
color: var(--keypress-color);
border-color: var(--keypress-border);
box-shadow: none;
text-shadow: none;
}
.ve-init-mw-desktopArticleTarget-toolbarPlaceholder-floating .ve-init-mw-desktopArticleTarget-toolbarPlaceholder-bar {
background: var(--ooui-interface);
}
.ve-init-mw-desktopArticleTarget-toolbarPlaceholder-bar {
border-bottom-color: var(--body-mid);
}
figure[typeof~='mw:File/Thumb'],
figure[typeof~='mw:File/Frame'],
figure[typeof~='mw:Image/Thumb'],
figure[typeof~='mw:Video/Thumb'],
figure[typeof~='mw:Image/Frame'],
figure[typeof~='mw:Video/Frame'] {
border: none;
background-color: var(--thumb-bg);
}
figure[typeof~='mw:File/Thumb'] > a:first-child > *:first-child:not( .mw-broken-media ),
figure[typeof~='mw:File/Frame'] > a:first-child > *:first-child:not( .mw-broken-media ),
figure[typeof~='mw:Image/Thumb'] > a:first-child > *:first-child:not( .mw-broken-media ),
figure[typeof~='mw:Video/Thumb'] > a:first-child > *:first-child:not( .mw-broken-media ),
figure[typeof~='mw:Image/Frame'] > a:first-child > *:first-child:not( .mw-broken-media ),
figure[typeof~='mw:Video/Frame'] > a:first-child > *:first-child:not( .mw-broken-media ) {
border: none;
background: var(--thumb-bg);
}
figure[typeof~='mw:File/Thumb'] > figcaption,
figure[typeof~='mw:File/Frame'] > figcaption,
figure[typeof~='mw:Image/Thumb'] > figcaption,
figure[typeof~='mw:Video/Thumb'] > figcaption,
figure[typeof~='mw:Image/Frame'] > figcaption,
figure[typeof~='mw:Video/Frame'] > figcaption {
border: none;
background-color: var(--thumb-caption-bg);
padding: 4px 6px;
}
:root {
--keypress-background: #eee;
--keypress-border: #ccc;
--keypress-color: #333;
}
.archivelist {
background-color: var(--body-light);
border: solid 1px var(--body-border);
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
float: right;
margin: 5px;
padding: 5px;
text-align: center;
width: 120px;
}
.shortcut {
border: 1px solid var(--body-border);
background: var(--body-light);
float: right;
font-size: 0.8em;
margin: 0.5em 0em 0.5em 1em;
padding: 0.5em;
text-align: center;
}
.hatnote,
.seealso {
font-style: italic;
}
.hatnote i,
.seealso i {
font-style: normal;
}
div.hatnote,
div.seealso {
margin: 0.5em 1.6em;
}
div.hatnote + div.hatnote,
div.hatnote + div.seealso,
div.seealso + div.hatnote,
div.seealso + div.seealso {
margin-top: -0.5em;
}
.keypress {
background: var(--keypress-background);
color: var(--keypress-color);
font-family: inherit;
border: 1px solid var(--keypress-border);
border-radius: 2px;
font-size: 0.9em;
margin: 0 0.1em;
padding: 0.1em 0.4em;
white-space: nowrap;
}
:root {
--documentation-background: #f9fafa;
--documentation-link-color: #e4eaee;
--documentation-headers-color: #fff;
--documentation-header-background: #949eaa;
--documentation-subheader-background: #808c9a;
--documentation-border: #e4eaee;
}
.documentation {
background: var(--documentation-background);
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
margin: 1em 0;
}
.documentation pre,
.documentation code {
background-color: var(--documentation-background);
border-color: var(--documentation-border);
}
.documentation h2,
.documentation hr {
border-color: var(--documentation-border);
}
.documentation-header {
color: var(--documentation-headers-color);
background: var(--documentation-header-background);
font-weight: bold;
padding: 1em 1.5em;
}
.documentation-title {
font-size: 1.25em;
}
.documentation-subheader {
color: var(--documentation-headers-color);
background: var(--documentation-subheader-background);
padding: 0.5em 1.5em;
}
.documentation-subheader a,
.documentation-subheader a:visited,
.documentation-subheader a:active {
color: var(--documentation-link-color);
}
.documentation-documentation,
.documentation-links {
font-size: 0.85em;
}
.documentation-content {
padding: 1em 1.5em;
}
.mw-templatedata-doc-params dl:not(:empty) {
column-count: 3;
border-top: 1px solid var(--body-border);
margin-bottom: 0.5em;
}
.mw-templatedata-doc-params dt::after {
content: ":";
}
.mw-templatedata-doc-params dd,
.mw-templatedata-doc-params dt {
margin: 0.1em 2em;
min-width: auto;
}
.mw-templatedata-doc-muted {
color: var(--subtle-color);
font-style: italic;
}
:root {
--infobox-text-color: var(--text-color);
--table-header: var(--body-dark);
--table-subheader: var(--body-mid);
--table-body: var(--body-light);
--table-border: var(--body-border);
}
.infobox {
font-size: 0.85em;
width: 300px;
border-collapse: collapse;
float: right;
table-layout: fixed;
margin: 0.5em 0 1em 1em;
}
.infobox .infobox-buttons {
display: flex;
flex-wrap: wrap;
justify-content: center;
grid-gap: 3px;
margin-bottom: 3px;
}
.infobox .infobox-buttons .button {
background: var(--table-header);
padding: 0 5px;
font-weight: bold;
flex: 1 1 20%;
max-width: 20%;
color: #fff;
}
.infobox tbody {
border: 1px solid var(--table-border);
background: var(--table-body);
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(231, 215, 199, 0.5);
}
.infobox .infobox-header {
background: var(--table-header);
padding: 0.5em 0;
text-align: center;
color: #fff;
font-size: 1.15em;
font-weight: bold;
line-height: 1.4em;
}
.infobox .infobox-image {
text-align: center;
}
.infobox .infobox-subheader {
background: var(--table-subheader);
font-weight: bold;
text-align: center;
color: #fff;
}
.infobox .infobox-padding {
backgound: var(--table-body);
}
.infobox tr td:not(.infobox-padding) {
padding: 0.2em 0.5em;
}
.infobox th:not(.infobox-header):not(.infobox-subheader):not(.infobox-nested) {
border-right: 2px solid var(--table-subheader);
text-align: right;
padding: 0.2em 0.5em;
}
.hidden {
display: none;
}
ol.references,
.reflist {
font-size: 90%;
}
.reflist {
list-style-type: decimal;
}
.reflist .references {
font-size: 100%;
list-style-type: inherit;
}
.reflist-lower-alpha {
list-style-type: lower-alpha;
}
ol.references li:target,
sup.reference:target {
background-color: var(--body-light);
}
.hideQuotes .refhide {
display: none;
}
:root {
--messagebox-obsolete-background: #cfcfcf;
--messagebox-obsolete-border: #464646;
--messagebox-obsolete-color: var(--text-color);
--messagebox-obsolete-link-color: #6c6c6c;
--messagebox-info-background: #ebebeb;
--messagebox-info-border: #898989;
--messagebox-info-color: var(--text-color);
--messagebox-info-link-color: #6c6c6c;
--messagebox-action-background: #c7e8fa;
--messagebox-action-border: #0b5884;
--messagebox-action-color: var(--text-color);
--messagebox-action-link-color: #03436b;
--messagebox-warn-background: #dfc0ba;
--messagebox-warn-border: #861c10;
--messagebox-warn-color: var(--text-color);
--messagebox-warn-link-color: #8e221a;
--messagebox-safe-background: #d8f0d3;
--messagebox-safe-border: #1b8408;
--messagebox-safe-color: var(--text-color);
--messagebox-safe-link-color: #1b8408;
--messagebox-disambig-background: #ebebeb;
--messagebox-disambig-border: #898989;
--messagebox-disambig-color: var(--text-color);
--messagebox-disambig-link-color: #6c6c6c;
--messagebox-discord-background: #5865f2;
--messagebox-discord-border: #4c57d0;
--messagebox-discord-link-color: #d2e5fc;
}
.mw-message-box,
.mw-message-box-error,
.mw-message-box-warning,
.mw-message-box-success,
.usermessage {
color: var(--text-color);
}
.messagebox {
width: 65%;
margin: 0.5em auto;
border-left: 15px solid;
border-color: var(--body-dark);
background-color: var(--body-light);
box-sizing: border-box;
}
.messagebox.obsolete {
background-color: var(--messagebox-obsolete-background);
border-color: var(--messagebox-obsolete-border);
color: var(--messagebox-obsolete-color);
}
.messagebox.obsolete a,
.messagebox.obsolete a:visited,
.messagebox.obsolete a:active {
color: var(--messagebox-obsolete-link-color);
}
.messagebox.info {
background-color: var(--messagebox-info-background);
border-color: var(--messagebox-info-border);
color: var(--messagebox-info-color);
}
.messagebox.info a,
.messagebox.info a:visited,
.messagebox.info a:active {
color: var(--messagebox-info-link-color);
}
.messagebox.action {
background-color: var(--messagebox-action-background);
border-color: var(--messagebox-action-border);
color: var(--messagebox-action-color);
}
.messagebox.action a,
.messagebox.action a:visited,
.messagebox.action a:active {
color: var(--messagebox-action-link-color);
}
.messagebox.warn {
background-color: var(--messagebox-warn-background);
border-color: var(--messagebox-warn-border);
color: var(--messagebox-warn-color);
}
.messagebox.warn a,
.messagebox.warn a:visited,
.messagebox.warn a:active {
color: var(--messagebox-warn-link-color);
}
.messagebox.safe {
background-color: var(--messagebox-safe-background);
border-color: var(--messagebox-safe-border);
color: var(--messagebox-safe-color);
}
.messagebox.safe a,
.messagebox.safe a:visited,
.messagebox.safe a:active {
color: var(--messagebox-safe-link-color);
}
.messagebox.disambig {
background-color: var(--messagebox-disambig-background);
border-color: var(--messagebox-disambig-border);
color: var(--messagebox-disambig-color);
}
.messagebox.disambig a,
.messagebox.disambig a:visited,
.messagebox.disambig a:active {
color: var(--messagebox-disambig-link-color);
}
.messagebox.discord {
background-color: var(--messagebox-discord-background);
border-color: var(--messagebox-discord-border);
color: #fff;
}
.messagebox.discord a,
.messagebox.discord a:visited,
.messagebox.discord a:active {
color: var(--messagebox-discord-link-color);
}
.messagebox.discord a.external,
.messagebox.discord a:visited.external,
.messagebox.discord a:active.external {
font-style: italic;
}
.messagebox.stub {
width: 40%;
}
.messagebox.hasdialogue {
padding: 0 10px;
width: auto;
}
:root {
--byline-arrow-filter: invert(29%) sepia(0%) saturate(376%) hue-rotate(172deg) brightness(87%) contrast(80%);
--tile-border-color: var(--body-border);
--tile-background-color: var(--body-light);
--tile-link-button-color: #f5e9db;
--tile-link-button-highlight-color: #dfccb0;
--tile-dark-color: #fff;
--tile-dark-bg: #5d6773;
--tile-dark-link-color: #ccc;
--tile-dark-byline-color: rgba(255, 255, 255, 0.7);
--tile-dark-header-color: #fff;
}
.tile {
background: var(--tile-background-color);
border: 1px solid var(--tile-border-color);
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
padding: 1.5em 2em 1em;
max-width: 40em;
}
.tile h2 {
font-size: 1.4em;
font-weight: bold;
border: none;
margin: 0 0 0.4em;
}
.tile .byline + h2 {
margin-top: -0.5em;
}
.tile.dark {
color: var(--tile-dark-color);
background: var(--tile-dark-bg);
border: none;
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.3);
}
.tile.dark h2 {
color: var(--tile-dark-header-color);
}
.tile.dark a {
color: var(--tile-dark-link-color);
}
.tile.dark .byline {
color: var(--tile-dark-byline-color);
}
.byline {
font-size: 0.9em;
color: var(--byline-color);
}
.byline a {
color: var(--byline-color);
}
.tile-row {
display: flex;
flex-flow: row wrap;
margin-bottom: 1em;
}
.tile-halves {
display: flex;
flex-flow: row wrap;
border: 1px solid var(--tile-border-color);
background: var(--tile-background-color);
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
}
.tile-halves h2 {
font-size: 1.4em;
font-weight: bold;
border: none;
margin: 0 0 0.4em;
}
.tile-halves .byline + h2 {
margin-top: -0.5em;
}
.tile-top {
width: 100%;
padding: 1.3rem 1.5rem 0.6rem;
}
.tile-top.tile-image {
display: flex;
align-items: center;
background-color: var(--byline-color);
overflow: hidden;
padding: 0;
height: 13vw;
max-height: 12em;
transition: 0.4s ease-out;
}
.tile-halves:hover .tile-top.tile-image img {
transform: scale(1.1);
transition: 0.5s ease-out;
}
.tile-top.tile-image a {
width: 100%;
}
.tile-top.tile-image img {
width: 100%;
object-fit: cover;
max-height: 200px;
transition: 0.4s ease-out;
}
.tile-bottom {
background: var(--tile-background-color);
border-top: 1px solid var(--tile-border-color);
width: 100%;
padding: 1rem 1.5rem 0.6rem;
}
.tile-bottom.link-button {
align-self: flex-end;
padding: 0;
}
.tile-bottom.link-button a {
display: block;
text-align: center;
padding: 0.75em 1.5em 0.8em;
text-decoration: none;
}
.tile-bottom.read-more {
background: var(--tile-link-button-color);
transition: 0.3s ease-out;
}
.tile-bottom.read-more a {
color: var(--byline-color);
font-weight: bold;
text-align: right;
}
.tile-bottom.read-more:hover {
background: var(--tile-link-button-highlight-color);
}
.tile-bottom.read-more:hover .arrow {
transform: translateX(50%);
}
.tile-bottom.read-more .arrow {
filter: var(--byline-arrow-filter);
margin-left: 0.4em;
transition: 0.3s ease-out;
}
body.page-Main_Page.action-view .catlinks,
body.page-Main_Page.action-view #contentSub,
body.page-Main_Page.action-view #firstHeading,
body.page-Main_Page.action-view #siteNotice {
display: none;
}
body.page-Main_Page .mw-parser-output {
max-width: 75em;
margin: 0 auto;
}
body.page-Main_Page.action-view .catlinks,
body.page-Main_Page.action-view #contentSub,
body.page-Main_Page.action-view #siteNotice {
display: none;
}
.mainpage-header {
display: flex;
margin: 2.6em 1.75em 1.5em;
}
.mainpage-header .header-intro {
flex: 2;
}
.mainpage-header .header-intro h1 {
font-size: 2.5em;
font-weight: bold;
border: none;
margin: 0 0 0.15em;
}
.mainpage-header .header-intro p {
font-size: 1.1em;
line-height: 1.7em;
}
.mainpage-header .header-stats {
flex: 1;
display: flex;
justify-content: center;
align-items: center;
margin-top: -1em;
}
.mainpage-body {
display: grid;
grid-template-areas: "event event event" "update update update" "content content content" "left left right";
gap: 0.9rem;
grid-template-columns: repeat(3, 1fr);
}
.mainpage-body h2 a {
color: var(--text-color);
}
.mainpage-body .tile {
padding-left: 1.75em;
padding-right: 1.75em;
max-width: 100%;
}
.mainpage-body .tile-row {
width: 100%;
margin-bottom: 0;
}
.mainpage-body .tile-row {
display: grid;
gap: 0.9rem;
}
.mainpage-contents.tile-row {
display: flex;
}
.mainpage-contents.tile-row .tile-top {
height: 5.5rem;
}
.mainpage-left {
grid-area: left;
flex: 2;
display: flex;
flex-flow: column wrap;
}
.mainpage-left > * {
margin: 0 0 0.9rem;
}
.mainpage-right {
grid-area: right;
flex: 1;
display: flex;
flex-flow: column wrap;
}
.mainpage-right > * {
margin: 0 0 0.9rem;
}
.arrow {
background: url('filepath://White-chevron.svg') no-repeat;
display: inline-block;
height: 0.7rem;
width: 0.45rem;
vertical-align: middle;
}
.arrow.dark {
filter: invert(80%);
}
.mainpage-contents {
grid-area: content;
grid-template-columns: repeat(6, 1fr);
}
.mainpage-contents .tile-halves {
flex: 1;
}
.mainpage-contents .tile-top {
height: 4.5rem;
position: relative;
}
.mainpage-contents .tile-top.tile-image img {
height: auto;
}
.mainpage-contents h2 {
margin: 0;
padding: 0;
}
.mainpage-contents .tile-bottom.link-button a {
padding: 0.75em 0.2em;
}
.popular-pages ul {
display: grid;
grid-template-columns: repeat(3, 1fr);
grid-gap: 0.6em;
margin: 1em 0 0.7em 0;
}
.mp-popular-page-light {
display: flex;
align-items: center;
background-color: var(--button-background);
transition: 100ms;
}
.mp-popular-page-light a {
flex: 1;
display: block;
color: #fff;
font-weight: bold;
text-align: center;
text-decoration: none;
padding: 0.7em 1em;
}
.mp-popular-page-light:hover {
filter: brightness(115%);
transition: 100ms;
}
.mainpage-social {
border: none;
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.3);
}
.mainpage-social .tile-top {
display: flex;
align-items: center;
padding: 1em 1.5em;
}
.mainpage-social .tile-top a {
flex: 1;
position: relative;
text-decoration: none;
}
.mainpage-social .tile-top a:hover .arrow {
transform: translateX(50%);
}
.mainpage-social .tile-bottom {
border: none;
padding: 1em 1.75em;
}
.mainpage-social .tile-bottom p {
color: #fff;
font-weight: bold;
font-size: 0.9em;
text-align: center;
text-transform: uppercase;
letter-spacing: 0.03em;
margin: 0;
}
.mainpage-social .social-icon {
margin-right: 0.75em;
text-align: center;
width: 60px;
}
.mainpage-social .social-header {
color: #fff;
font-weight: bold;
font-size: 1.15em;
margin: 0.5em 0 -0.15em;
}
.mainpage-social .server-tagline {
color: rgba(255, 255, 255, 0.9);
margin-bottom: 0.5em;
}
.mainpage-social .arrow {
position: absolute;
top: calc(50% - .5em);
right: 0;
height: 1em;
width: 0.7em;
background-size: 0.7em 1em;
transition: 0.3s ease-out;
}
.mainpage-social.mainpage-discord .tile-top {
background: #5865f2;
}
.mainpage-social.mainpage-discord .tile-bottom {
background: #525ee0;
}
.mainpage-social.mainpage-twitter .tile-top {
background: #15202b;
}
.mainpage-social.mainpage-twitter .tile-bottom {
background: #121c26;
}
.mainpage-editing {
border: none;
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.3);
}
.mainpage-editing .tile-top {
background: #438ab5;
}
.mainpage-editing .tile-bottom {
background: #3980ab;
border: none;
padding: 0.8rem 1.5rem 0.4rem;
}
.mainpage-editing h2,
.mainpage-editing a {
color: #fff;
}
.mainpage-editing p {
color: rgba(255, 255, 255, 0.9);
}
.mainpage-editing ul {
list-style-image: url('filepath://Transparent-chevron.svg');
}
@media only screen and (max-width: 1200px) {
.mainpage-contents {
grid-template-columns: repeat(3, 1fr);
}
}
@media only screen and (max-width: 1000px) {
.mainpage-body {
grid-template-areas: "event event event" "update update update" "content content content" "left left left" "right right right";
}
.mainpage-recent-updates {
grid-template-columns: repeat(2, 1fr);
}
.mainpage-recent-updates .tile-halves:last-child {
display: none;
}
.mainpage-recent-updates .tile-halves:hover .tile-top img {
transform: scale(1.04);
}
.mainpage-recent-updates .tile-top {
height: 18vw;
min-height: 9em;
}
.mainpage-header .header-stats {
display: none;
}
.mainpage-left > *:last-child,
.mainpage-right > *:last-child {
margin-bottom: 0;
}
.popular-pages ul {
grid-template-columns: repeat(2, 1fr);
}
}
@media only screen and (max-width: 720px) {
.mainpage-recent-updates {
grid-template-columns: none;
}
.mainpage-recent-updates .tile-halves:last-child {
display: flex;
}
.mainpage-contents {
grid-template-columns: repeat(2, 1fr);
}
}
.mw-prefs-buttons {
background-color: var(--body-main);
border-top-color: var(--body-border);
box-shadow: none;
}
.mw-prefs-tabs-wrapper.oo-ui-panelLayout-framed,
.mw-prefs-tabs > .oo-ui-menuLayout-content > .oo-ui-indexLayout-stackLayout > .oo-ui-tabPanelLayout {
border-color: var(--body-border);
}
.mw-htmlform-ooui .mw-htmlform-matrix tbody tr:nth-child(even) td {
background-color: var(--body-light);
}
.mw-htmlform-ooui .mw-htmlform-matrix tbody tr:hover td {
background-color: var(--body-mid);
}
:root {
--rc-positive-color: #407813;
--rc-negative-color: #b41e0f;
}
.mw-plusminus-pos {
color: var(--rc-positive-color);
}
.mw-plusminus-neg {
color: var(--rc-negative-color);
}
.client-js .mw-recentchanges-toplinks:not(.mw-recentchanges-toplinks-collapsed) {
border-color: var(--body-border);
background-color: var(--body-light);
border-radius: 2px;
}
.mw-rcfilters-ui-filterTagMultiselectWidget-wrapper-content-title {
color: var(--text-color);
}
.mw-rcfilters-ui-filterTagMultiselectWidget-emptyFilters {
color: var(--byline-color);
}
.mw-rcfilters-ui-filterTagMultiselectWidget.oo-ui-widget-enabled .oo-ui-tagMultiselectWidget-handle {
background-color: var(--ooui-interface);
border-color: var(--ooui-interface-border);
}
.mw-rcfilters-ui-filterTagMultiselectWidget-views-select-widget.oo-ui-widget {
border-color: var(--ooui-interface-border);
}
.mw-rcfilters-collapsed .mw-rcfilters-ui-filterTagMultiselectWidget {
border-bottom-color: var(--ooui-interface-border);
}
.mw-rcfilters-ui-menuSelectWidget-footer {
background-color: var(--ooui-interface);
border-color: var(--ooui-interface-border);
}
.mw-rcfilters-ui-viewSwitchWidget label.oo-ui-labelWidget {
color: var(--byline-color);
}
.mw-rcfilters-ui-tagItemWidget-popup-content {
color: var(--ooui-text);
}
.mw-changeslist-legend,
.mw-rcfilters-ui-changesListWrapperWidget .mw-changeslist-legend {
background-color: var(--body-light);
border-color: var(--body-dark);
}
.mw-rcfilters-ui-changesListWrapperWidget-previousChangesIndicator {
border-color: var(--sidebar);
}
.client-js .mw-changeslist ul,
.client-js .mw-changeslist table.mw-enhanced-rc {
margin-left: 0;
}
.mw-rcfilters-ui-watchlistTopSectionWidget-separator {
border-color: var(--sidebar);
}
.mw-rcfilters-ui-itemMenuOptionWidget-header {
border-bottom-color: var(--ooui-interface);
background-color: var(--ooui-interface-border);
}
.mw-rcfilters-ui-itemMenuOptionWidget:not(:last-child):not(.mw-rcfilters-ui-itemMenuOptionWidget-identifier-talk) {
border-bottom-color: var(--ooui-normal-border);
}
.mw-rcfilters-ui-itemMenuOptionWidget-label-title,
.mw-rcfilters-ui-itemMenuOptionWidget-label-desc {
color: var(--text-color);
}
.mw-rcfilters-ui-filterMenuOptionWidget.oo-ui-flaggedElement-muted:not(.oo-ui-optionWidget-selected) {
background-color: var(--body-main);
}
.mw-rcfilters-ui-filterMenuOptionWidget.oo-ui-flaggedElement-muted .mw-rcfilters-ui-itemMenuOptionWidget-label-title,
.mw-rcfilters-ui-filterMenuOptionWidget.oo-ui-flaggedElement-muted .mw-rcfilters-ui-itemMenuOptionWidget-label-desc {
color: var(--subtle-color);
}
.mw-rcfilters-ui-filterMenuSectionOptionWidget {
background-color: var(--body-mid);
}
.mw-rcfilters-ui-filterMenuSectionOptionWidget-header-title.oo-ui-labelElement-label {
color: var(--ooui-text);
}
.mw-rcfilters-ui-filterMenuHeaderWidget-title {
color: var(--ooui-text);
}
.mw-rcfilters-ui-filterMenuHeaderWidget-header {
border-bottom-color: var(--ooui-interface-border);
background-color: var(--ooui-interface);
}
.mw-rcfilters-ui-itemMenuOptionWidget-view-namespaces {
border-top-color: var(--ooui-interface-border);
}
.mw-rcfilters-ui-datePopupWidget {
border-color: var(--ooui-interface-border);
}
.mw-rcfilters-ui-datePopupWidget .mw-rcfilters-ui-valuePickerWidget-title {
color: var(--byline-color);
}
.mw-rcfilters-ui-savedLinksListItemWidget-label {
color: var(--ooui-accent);
}
.client-js .mw-changeslist.mw-rcfilters-ui-changesListWrapperWidget-highlighted ul,
.client-js .mw-changeslist.mw-rcfilters-ui-changesListWrapperWidget-highlighted table.mw-enhanced-rc {
margin-left: 1.5em;
}
.page-Special_CreateAccount .mw-ui-container,
.page-Special_UserLogin .mw-ui-container {
max-width: 64rem;
margin: 0 auto;
}
.mw-number-text {
color: var(--byline-color);
}
.mw-body-content .mw-number-text h3 {
color: var(--text-color);
}
#mw-indicator-mw-helplink a {
background: none;
padding: 0;
display: flex;
align-items: center;
}
#mw-indicator-mw-helplink a::before {
content: '';
margin-right: 5px;
-webkit-mask: url("/resources/src/mediawiki.helplink/images/helpNotice.svg?46d34") no-repeat 50% 50% / contain;
mask: url("/resources/src/mediawiki.helplink/images/helpNotice.svg?46d34") no-repeat 50% 50% / contain;
background: var(--text-color);
height: 20px;
width: 20px;
}
.results-info {
color: inherit;
}
.mw-search-profile-tabs {
background-color: var(--body-mid);
border-color: transparent;
}
.search-types .current a {
color: inherit;
}
#mw-searchoptions {
background-color: var(--body-mid);
border-color: transparent;
}
#mw-searchoptions .divider {
border-color: var(--body-border);
}
#mw-searchoptions h4 {
font-family: inherit;
}
#mw-searchoptions .oo-ui-labelElement:nth-of-type(odd) {
font-weight: bold;
}
.searchresult {
line-height: 1.5;
}
.searchalttitle,
#mw-search-interwiki li {
font-size: 90%;
}
.mw-search-result-data {
color: var(--byline-color);
}
.page-Special_ListFiles a.image img {
width: inherit;
height: inherit;
}
.page-Special_ListFiles .TablePager_col_thumb {
text-align: center;
}
#editcount table[border="1"] {
background-color: var(--body-main) !important;
border-color: var(--wikitable-border) !important;
margin-top: 0.5em;
}
#editcount table[border="1"] th,
#editcount table[border="1"] td {
padding: 0.2em 0.4em;
}
#editcount table[border="1"] th {
background-color: var(--wikitable-header-bg);
border: 1px solid var(--wikitable-border);
}
#editcount table[border="1"] td {
border: 1px solid var(--wikitable-border);
}
#editcount table[border="1"] tr:nth-child(odd) {
background-color: var(--body-light);
}
.mw-echo-ui-notificationBadgeButtonPopupWidget-popup > .oo-ui-popupWidget-popup .mw-echo-ui-placeholderItemWidget {
background-color: inherit;
}
table.mw-interwikitable.body td.mw-interwikitable-local-yes {
background-color: var(--table-yes-background);
color: var(--table-yes-color);
}
.mw-protectedpages-unknown {
color: var(--byline-color);
}
.watchlistredir,
.allpagesredirect {
font-style: italic;
}
.allpagesredirect:after {
color: var(--byline-color);
content: " (redirect)";
}
.mw-apisandbox-toolbar {
background: var(--body-main);
}
.oo-ui-menuOptionWidget .mw-apisandbox-flag {
color: var(--byline-color);
}
tr.mw-abusefilter-list-disabled,
tr.mw-abusefilter-list-disabled td {
color: var(--byline-color);
}
table.mw-abuselog-details {
background: var(--wikitable-bg);
border-color: var(--wikitable-border);
}
table.mw-abuselog-details th {
background: var(--wikitable-header-bg);
}
table.mw-abuselog-details th,
table.mw-abuselog-details td {
border-color: var(--wikitable-border);
}
.mw-abusefilter-log-hidden-entry {
color: var(--subtle-color);
}
body td.mw-abusefilter-history-changed {
background: var(--table-no-background);
}
div.mw-abusefilter-editor,
#mw-abusefilter-warn-preview,
#mw-abusefilter-disallow-preview {
border-color: var(--ooui-input-border);
}
.mw-destfile-warning {
border-color: var(--warningbox-border);
color: var(--text-color);
background-color: var(--warningbox-bg);
}
span.fileinput-button {
background-color: var(--ooui-normal);
border-color: var(--ooui-normal-border);
color: var(--ooui-text);
}
ul.fileupload-results li.ful-success {
background-color: var(--successbox-bg);
}
ul.fileupload-results li.ful-success a {
color: var(--link-color);
}
ul.fileupload-results li.ful-error {
background-color: var(--errorbox-bg);
}
.color-container {
display: flex;
margin: 2em auto;
width: 80%;
max-width: 60em;
}
.color-column {
flex: 1;
margin-right: 1em;
}
.color-column:last-child {
margin-right: 0;
}
.color-column h3 {
padding: 0;
}
.color-group {
color: #333;
padding: 1em 1.5em;
transition: 0.2s ease-out;
}
.color-group:hover {
transform: scale(1.03);
}
.color-group.dark {
color: #fff;
}
.color-group .variable,
.color-group .hexcode {
font-family: monospace;
font-size: 1.1em;
-webkit-user-select: all;
-moz-user-select: all;
-ms-user-select: all;
user-select: all;
margin: 0;
}
body.wgl-readermode .color-group .variable,
body.wgl-readermode .color-group .hexcode {
font-size: inherit;
}
.color-group .variable {
font-weight: bold;
}
#t-print,
#t-permalink {
display: none;
}
#filetoc {
border-radius: 2px;
background: var(--body-mid);
border-color: transparent;
margin: 0.5em auto;
text-align: center;
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
}
li.gallerybox div.thumb {
border: none;
background-color: var(--thumb-bg);
}
.smwfact {
display: none;
}
.list-header {
background-color: var(--body-mid);
color: inherit;
}
.editOptions {
color: var(--text-color);
background-color: var(--sourceeditor-background-secondary);
border-color: var(--sourceeditor-border);
}
.mw-json th,
.mw-json td {
border-color: var(--wikitable-border);
}
.mw-json td {
background: var(--wikitable-bg);
}
.mw-json th {
background: var(--wikitable-header-bg);
}
b3d45b5cd7c271d86482e393d30de4910b221efb
1671
1669
2024-03-31T23:53:15Z
Merds
25
Updating CSS from [[MediaWiki:Common.less]]
css
text/css
/* <pre> */
:root {
--body-main: #fdfcfc;
--body-light: #f5f0eb;
--body-mid: #d1b9ad;
--body-dark: #b1886f;
--body-border: #d1b9ad;
--body-background-color: #173a4d;
--button-background: #605443;
--button-color: #fff;
--button-border: #3c352a;
--button-dark: #18140c;
--button-light: #3a301d;
--sidebar: #cfc08d;
--background-text-color: #e2dbc8;
--background-link-color: #e2bd8a;
--search-box: #efeee6;
--link-color: #6e452b;
--redlink-color: #ba0000;
--text-color: #2F2828;
--byline-color: #ccc;
--subtle-color: #777;
--admin-blue: #332e75;
--bearcat-green: #13592e;
--awb-purple: #933b96;
--rsw-blue: #438ab6;
--osrsw-brown: #605443;
--thumb-bg: var(--body-light);
--thumb-caption-bg: var(--body-mid);
--sourceeditor-input-background: #fff;
--sourceeditor-background: var(--body-light);
--sourceeditor-background-secondary: var(--body-light);
--sourceeditor-border: var(--body-mid);
--codemirror-gutter-background: var(--body-mid);
}
@font-face {
font-family: 'Lora';
font-weight: 400 700;
font-style: normal;
font-display: swap;
src: url('filepath://Lora.woff2') format('woff2');
}
@font-face {
font-family: 'Lora';
font-weight: 400 700;
font-style: italic;
font-display: swap;
src: url('filepath://Lora-Italic.woff2') format('woff2');
}
:root {
--base-text-color: #36414f;
--base-heading-color: #444e5a;
--base-heading-border: #e4eaee;
--mw-code-background-color: var(--body-light);
--body-background-image: url('filepath://Wiki_background.jpg');
}
#mw-page-base {
background: none;
}
.mw-body {
background-color: var(--body-main);
color: var(--text-color);
border-color: transparent;
box-shadow: 0 0 7px rgba(0, 0, 0, 0.15);
margin-top: 0;
}
h1,
h2,
h3,
h4,
h5,
h6 {
color: var(--text-color);
}
h1,
h2 {
border-color: var(--sidebar);
}
.mw-body h1,
.mw-body-content h1,
.mw-body-content h2,
.mw-body-content h3,
.mw-body-content h4,
.mw-body-content h5,
.mw-body-content h6 {
font-family: 'Lora', 'Palatino', 'Georgia', serif;
}
.mw-parser-output h2:first-of-type {
clear: left;
}
.mw-footer {
color: var(--background-text-color);
}
.mw-footer li {
color: var(--background-text-color);
}
.mw-footer a,
.mw-footer a:active,
.mw-footer a:visited {
color: var(--background-link-color);
}
::placeholder {
color: var(--subtle-color);
}
a {
color: var(--link-color);
}
a:visited,
a:active {
color: var(--link-color);
}
a.new {
color: var(--redlink-color);
}
a.new:visited {
color: var(--redlink-color);
}
.mw-parser-output a.extiw,
.mw-parser-output a.external {
color: var(--link-color);
}
.mw-parser-output a.extiw:visited,
.mw-parser-output a.external:visited,
.mw-parser-output a.extiw:active,
.mw-parser-output a.external:active {
color: var(--link-color);
}
.jsPurgeLink a.external {
color: var(--link-color);
}
:root {
--errorbox-bg: #feecea;
--errorbox-border: #ee4231;
--warningbox-bg: #fef9de;
--warningbox-border: #f9d000;
--successbox-bg: #ecf8e3;
--successbox-border: #6bc71f;
}
.mw-message-box-error,
.errorbox,
.mw-message-box-warning,
.warningbox,
.mw-message-box-success,
.successbox,
.usermessage {
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
}
.mw-message-box-error,
.errorbox {
background-color: var(--errorbox-bg);
border-color: var(--errorbox-border);
}
.mw-message-box-warning,
.warningbox,
.usermessage {
background-color: var(--warningbox-bg);
border-color: var(--warningbox-border);
}
.mw-message-box-success,
.successbox {
background-color: var(--successbox-bg);
border-color: var(--successbox-border);
}
.catlinks {
background: var(--body-light);
border: 1px solid var(--body-dark);
padding: 8px 15px;
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
}
.catlinks li {
border-color: var(--body-mid);
}
.filehistory a img,
#file img {
background: url("data:image/svg+xml,%3C%3Fxml version='1.0' encoding='UTF-8'%3F%3E%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16'%3E%3Cpath d='M0 0h8v16h8V8H0z' opacity='.13'/%3E%3C/svg%3E") repeat;
}
#file img:hover {
background: none;
}
.mw-highlight {
background: none;
}
.mw-highlight .linenos {
background-color: var(--mw-code-background-color);
color: var(--body-border);
}
.mw-highlight a:hover .linenos,
.mw-highlight .hll a .linenos {
color: var(--body-dark);
}
.mw-content-ltr.mw-highlight-lines pre,
.mw-content-ltr.content .mw-highlight-lines pre {
box-shadow: inset 2.75em 0 0 var(--mw-code-background-color);
}
#pagehistory ul {
list-style: none;
margin: 0;
}
#pagehistory li {
border: 1px solid transparent;
padding: 1px 10px;
margin: 2px 0;
}
#pagehistory li.selected {
background-color: var(--body-light);
color: inherit;
border: 1px dashed var(--body-border);
outline: none;
}
#mw-history-compare > div:first-of-type {
position: -webkit-sticky;
position: sticky;
top: 0;
background-color: var(--body-main);
border-bottom: 1px solid var(--body-dark);
padding: 0.25em 0;
}
.wgl-stickyheader #mw-history-compare > div:first-of-type {
top: 2.5rem;
}
.autocomment,
.autocomment a,
.autocomment a:visited {
color: var(--link-color);
}
li span.deleted,
span.history-deleted {
color: var(--byline-color);
}
.mw-usertoollinks-contribs-no-edits,
.mw-usertoollinks-contribs-no-edits:visited {
color: var(--redlink-color);
}
.CategoryTreeToggle {
color: var(--link-color);
}
body.wgl-stickyheader.action-view .mw-headline:target::before {
display: block;
content: '';
margin-top: -3rem;
height: 3rem;
visibility: hidden;
pointer-events: none;
}
.mw-mmv-post-image {
color: var(--text-color);
background-color: var(--body-main);
}
.mw-mmv-image-metadata {
border-top-color: var(--body-mid);
background-color: var(--body-light);
}
.mw-mmv-dialog,
.mw-mmv-dialog .mw-mmv-dialog-down-arrow,
.mw-mmv-options-dialog .mw-mmv-dialog-down-arrow {
background-color: var(--body-light);
box-shadow: none;
}
.mw-mmv-options-enable-alert {
background-color: var(--body-light);
color: var(--text-color);
}
.mw-mmv-options-dialog-header,
.mw-mmv-options-text-header,
.mw-mmv-options-text-body,
.mw-mmv-options-enable-alert,
.mw-mmv-options-dialog .mw-mmv-disable-confirmation .mw-mmv-options-dialog-header,
.mw-mmv-options-dialog .mw-mmv-disable-confirmation .mw-mmv-options-text-header {
color: var(--text-color);
}
.mw-revslider-container {
border-color: var(--sidebar);
}
.mw-revslider-slider-wrapper {
border-top-color: var(--sidebar);
}
.mw-ui-button {
background-color: var(--ooui-normal);
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
}
.mw-ui-button:not(:disabled):hover,
.mw-ui-button:not(:disabled):active {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
}
.mw-ui-button:not(:disabled):focus {
color: var(--ooui-text);
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent), inset 0 0 0 2px #fff;
}
.mw-ui-button:not(:disabled):visited {
color: var(--ooui-text);
}
.mw-ui-button.mw-ui-progressive:not(:disabled) {
background-color: var(--ooui-progressive);
color: #fff;
border-color: var(--ooui-progressive);
}
.mw-ui-button.mw-ui-progressive:not(:disabled):hover {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
}
.mw-ui-button.mw-ui-progressive:not(:disabled):focus {
box-shadow: inset 0 0 0 1px var(--ooui-accent), inset 0 0 0 2px #fff;
}
.mw-ui-button.mw-ui-progressive:not(:disabled):active,
.mw-ui-button.mw-ui-progressive:not(:disabled).is-on {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
box-shadow: none;
}
.mw-ui-button.mw-ui-destructive:not( :disabled ) {
color: #fff;
}
.mw-ui-button.mw-ui-quiet,
.mw-ui-button.mw-ui-quiet.mw-ui-progressive,
.mw-ui-button.mw-ui-quiet.mw-ui-destructive {
color: var(--text-color);
}
input[type='checkbox']:hover + .mw-ui-button.mw-ui-quiet,
input[type='checkbox']:hover + .mw-ui-button.mw-ui-quiet.mw-ui-progressive,
input[type='checkbox']:hover + .mw-ui-button.mw-ui-quiet.mw-ui-destructive,
.mw-ui-button.mw-ui-quiet:hover,
.mw-ui-button.mw-ui-quiet.mw-ui-progressive:hover,
.mw-ui-button.mw-ui-quiet.mw-ui-destructive:hover {
background-color: rgba(0, 24, 73, 0.02745098);
color: var(--text-color);
border-color: transparent;
}
input[type='checkbox']:focus + .mw-ui-button.mw-ui-quiet,
input[type='checkbox']:focus + .mw-ui-button.mw-ui-quiet.mw-ui-progressive,
input[type='checkbox']:focus + .mw-ui-button.mw-ui-quiet.mw-ui-destructive,
.mw-ui-button.mw-ui-quiet:focus,
.mw-ui-button.mw-ui-quiet.mw-ui-progressive:focus,
.mw-ui-button.mw-ui-quiet.mw-ui-destructive:focus {
color: var(--text-color);
}
input[type='checkbox']:active + .mw-ui-button.mw-ui-quiet,
input[type='checkbox']:active + .mw-ui-button.mw-ui-quiet.mw-ui-progressive,
input[type='checkbox']:active + .mw-ui-button.mw-ui-quiet.mw-ui-destructive,
.mw-ui-button.mw-ui-quiet:active,
.mw-ui-button.mw-ui-quiet.mw-ui-progressive:active,
.mw-ui-button.mw-ui-quiet.mw-ui-destructive:active {
background-color: rgba(0, 36, 73, 0.08235294);
color: var(--text-color);
border-color: #72777d;
}
.mw-ui-input {
background-color: var(--ooui-input);
color: var(--text-color);
border-color: var(--ooui-input-border);
}
.mw-ui-input:hover {
border-color: var(--ooui-input-border--hover);
}
.mw-ui-input::placeholder {
color: var(--byline-color);
}
.mw-content-ltr .redirectText li:first-child {
padding: 0;
background: 0;
}
.mw-content-ltr .redirectText li:first-child::before {
content: '';
background: currentcolor;
-webkit-mask: url("filepath://Redirect-arrow.svg") no-repeat 50% 50% / contain;
mask: url("filepath://Redirect-arrow.svg") no-repeat 50% 50% / contain;
display: inline-block;
width: 47px;
height: 20px;
}
.vector-search-box-inner {
background: var(--body-main) !important;
box-shadow: inset 0 -7px 7px -7px rgba(0, 0, 0, 0.15) !important;
}
.vector-menu-dropdown .vector-menu-heading {
color: var(--vector-tab-link-color) !important;
}
.vector-menu-dropdown .vector-menu-heading:hover {
color: var(--vector-tab-link-color) !important;
}
.vector-menu-dropdown .vector-menu-heading:focus {
color: var(--vector-tab-link-color) !important;
}
:root {
--wikitable-header-bg: var(--body-dark);
--wikitable-border: var(--body-border);
--wikitable-bg: var(--body-light);
--wikitable-bg-lighter: #e9e3d6;
--wikitable-color: var(--text-color);
--table-na-background: rgba(255, 255, 255, 0.3);
--table-na-color: var(--subtle-color);
--table-yes-background: #c3e8a3;
--table-yes-color: #2e5e05;
--table-no-background: #fbc0ba;
--table-no-color: #801c13;
--table-maybe-background: #fcea94;
--table-maybe-color: #786300;
}
.wikitable {
background: var(--wikitable-bg);
color: var(--wikitable-color);
border-color: var(--wikitable-border);
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
}
.wikitable > tr > th,
.wikitable > tr > td,
.wikitable > * > tr > th,
.wikitable > * > tr > td {
border-color: var(--wikitable-border);
}
.wikitable > tr > th.table-noborder,
.wikitable > tr > td.table-noborder,
.wikitable > * > tr > th.table-noborder,
.wikitable > * > tr > td.table-noborder {
border-left-style: hidden;
border-right-style: hidden;
padding-left: 0;
padding-right: 0;
}
.wikitable > tr > th,
.wikitable > * > tr > th {
background-color: var(--wikitable-header-bg);
color: #fff;
}
.tabber .wikitable {
box-shadow: none;
}
.mw_metadata td,
.mw_metadata th {
border-color: var(--wikitable-border);
}
.mw_metadata th {
background-color: var(--wikitable-header-bg);
}
.mw_metadata td {
background-color: var(--wikitable-bg);
}
.mw-datatable {
border-color: var(--wikitable-border);
}
.mw-datatable td,
.mw-datatable th {
border-color: var(--wikitable-border);
}
.mw-datatable th {
background-color: var(--wikitable-header-bg);
}
.mw-datatable td {
background-color: var(--wikitable-bg);
}
.mw-datatable tr:hover td {
background-color: var(--wikitable-bg);
}
table.alternating-rows tr:nth-child(odd),
table.alternating-cols td:nth-child(odd) {
background: var(--wikitable-alternating-bg);
}
.table-na {
background: var(--table-na-background);
color: var(--table-na-color);
vertical-align: middle;
text-align: center;
}
.table-yes {
background: var(--table-yes-background);
color: var(--table-yes-color);
}
.table-positive {
background: var(--table-yes-background);
}
.table-no {
background: var(--table-no-background);
color: var(--table-no-color);
}
.table-negative {
background: var(--table-no-background);
}
.table-maybe {
background: var(--table-maybe-background);
color: var(--table-maybe-color);
}
#mw-allmessagestable .am_actual,
#mw-allmessagestable .am_default {
background-color: var(--wikitable-bg);
}
#mw-allmessagestable .am_default:hover,
#mw-allmessagestable .am_actual:hover,
#mw-allmessagestable tbody:hover td {
background-color: var(--wikitable-bg-lighter);
}
table.wikitable td.no-cell-spacing {
padding: 0;
height: 0;
}
table.wikitable td.no-cell-spacing table {
margin: -1px;
width: calc(100% + 2px);
height: calc(100% + 2px);
}
.plainlist ol,
.plainlist ul {
margin: 0;
}
.plainlist li {
margin-bottom: 0;
list-style: none;
}
table.align-right-1 td:nth-of-type(1),
table.align-right-2 td:nth-of-type(2),
table.align-right-3 td:nth-of-type(3),
table.align-right-4 td:nth-of-type(4),
table.align-right-5 td:nth-of-type(5),
table.align-right-6 td:nth-of-type(6),
table.align-right-7 td:nth-of-type(7),
table.align-right-8 td:nth-of-type(8),
table.align-right-9 td:nth-of-type(9),
table.align-right-10 td:nth-of-type(10),
table.align-right-11 td:nth-of-type(11),
table.align-right-12 td:nth-of-type(12),
table.align-right-13 td:nth-of-type(13),
table.align-right-14 td:nth-of-type(14),
table.align-right-15 td:nth-of-type(15),
table.align-right-16 td:nth-of-type(16),
table.align-right-17 td:nth-of-type(17),
table.align-right-18 td:nth-of-type(18),
table.align-right-19 td:nth-of-type(19),
table.align-right-20 td:nth-of-type(20) {
text-align: right;
}
table.align-center-1 td:nth-of-type(1),
table.align-center-2 td:nth-of-type(2),
table.align-center-3 td:nth-of-type(3),
table.align-center-4 td:nth-of-type(4),
table.align-center-5 td:nth-of-type(5),
table.align-center-6 td:nth-of-type(6),
table.align-center-7 td:nth-of-type(7),
table.align-center-8 td:nth-of-type(8),
table.align-center-9 td:nth-of-type(9),
table.align-center-10 td:nth-of-type(10),
table.align-center-11 td:nth-of-type(11),
table.align-center-12 td:nth-of-type(12),
table.align-center-13 td:nth-of-type(13),
table.align-center-14 td:nth-of-type(14),
table.align-center-15 td:nth-of-type(15),
table.align-center-16 td:nth-of-type(16),
table.align-center-17 td:nth-of-type(17),
table.align-center-18 td:nth-of-type(18),
table.align-center-19 td:nth-of-type(19),
table.align-center-20 td:nth-of-type(20) {
text-align: center;
}
table.align-left-1 td:nth-of-type(1),
table.align-left-2 td:nth-of-type(2),
table.align-left-3 td:nth-of-type(3),
table.align-left-4 td:nth-of-type(4),
table.align-left-5 td:nth-of-type(5),
table.align-left-6 td:nth-of-type(6),
table.align-left-7 td:nth-of-type(7),
table.align-left-8 td:nth-of-type(8),
table.align-left-9 td:nth-of-type(9),
table.align-left-10 td:nth-of-type(10),
table.align-left-11 td:nth-of-type(11),
table.align-left-12 td:nth-of-type(12),
table.align-left-13 td:nth-of-type(13),
table.align-left-14 td:nth-of-type(14),
table.align-left-15 td:nth-of-type(15),
table.align-left-16 td:nth-of-type(16),
table.align-left-17 td:nth-of-type(17),
table.align-left-18 td:nth-of-type(18),
table.align-left-19 td:nth-of-type(19),
table.align-left-20 td:nth-of-type(20) {
text-align: left;
}
:root {
--diff-addedline-border-color: #438ab5;
--diff-addedline-background: #bddff2;
--diff-addedline-color: #000;
--diff-deletedline-border-color: #379541;
--diff-deletedline-background: #c1edbf;
--diff-deletedline-color: #000;
--diff-context-border-color: var(--body-mid);
--diff-context-background: var(--body-mid);
}
.diff-context {
border-color: var(--diff-context-border-color);
background: var(--diff-context-background);
color: inherit;
}
.diff-addedline {
border-color: var(--diff-addedline-border-color);
}
.diff-addedline .diffchange {
background: var(--diff-addedline-background);
color: var(--diff-addedline-color);
}
.diff-deletedline {
border-color: var(--diff-deletedline-border-color);
}
.diff-deletedline .diffchange {
background: var(--diff-deletedline-background);
color: var(--diff-deletedline-color);
}
.mw-diff-movedpara-left:after,
.mw-diff-movedpara-right:after {
color: var(--text-color);
}
.mw-notification {
background-color: var(--body-light);
border-color: var(--body-border);
color: var(--text-color);
}
.mw-echo-ui-notificationsInboxWidget-toolbarWrapper {
background: var(--body-main);
}
.mw-body-content .mw-echo-ui-datedSubGroupListWidget-title-secondary {
color: var(--byline-color);
}
.mw-echo-ui-pageNotificationsOptionWidget.oo-ui-optionWidget-selected {
background-color: var(--ooui-normal);
color: var(--ooui-accent);
}
.mw-echo-ui-pageNotificationsOptionWidget-label-count {
background-color: var(--ooui-normal);
color: var(--byline-color);
}
.oo-ui-optionWidget-selected .mw-echo-ui-pageNotificationsOptionWidget-label-count {
color: var(--ooui-accent);
}
.mw-echo-ui-pageNotificationsOptionWidget.oo-ui-optionWidget-highlighted {
background-color: var(--ooui-normal);
color: var(--text-color);
}
.mw-echo-ui-crossWikiUnreadFilterWidget {
border-color: var(--body-border);
}
.mw-echo-ui-crossWikiUnreadFilterWidget-subtitle {
color: var(--byline-color);
}
.mw-echo-ui-notificationBadgeButtonPopupWidget-popup > .oo-ui-popupWidget-popup > .oo-ui-popupWidget-head,
.mw-echo-ui-notificationBadgeButtonPopupWidget-popup > .oo-ui-popupWidget-popup > .oo-ui-popupWidget-footer {
border-color: var(--ooui-interface-border);
}
.mw-echo-ui-notificationBadgeButtonPopupWidget-popup > .oo-ui-popupWidget-popup > .oo-ui-popupWidget-footer .mw-echo-ui-notificationBadgeButtonPopupWidget-footer-buttons .oo-ui-buttonElement:last-child {
border-left-color: var(--ooui-normal-border);
}
.mw-echo-ui-notificationItemWidget {
background-color: var(--ooui-normal);
border-color: var(--ooui-normal-border);
}
.mw-echo-ui-notificationItemWidget:hover,
.mw-echo-ui-notificationItemWidget-unread:hover {
background-color: var(--ooui-normal--hover);
}
.mw-echo-ui-notificationItemWidget:last-child {
border-bottom-color: var(--ooui-normal-border);
}
.mw-echo-ui-notificationItemWidget-unread {
background-color: var(--search-box);
}
.mw-echo-ui-crossWikiNotificationItemWidget-group,
.mw-echo-ui-bundleNotificationItemWidget-group {
background-color: var(--ooui-interface);
}
.mw-echo-ui-toggleReadCircleButtonWidget-circle {
background-color: var(--ooui-progressive);
}
.mw-echo-ui-toggleReadCircleButtonWidget:hover .mw-echo-ui-toggleReadCircleButtonWidget-circle {
background-color: var(--ooui-progressive--hover);
}
.mw-echo-ui-toggleReadCircleButtonWidget-circle-unread {
background-color: var(--ooui-normal);
border-color: var(--ooui-normal-border);
}
.mw-echo-ui-notificationItemWidget-content-message-header,
.mw-echo-ui-notificationItemWidget-content-message-body,
.mw-echo-ui-menuItemWidget > .oo-ui-buttonElement-button > .oo-ui-labelElement-label,
.mw-echo-ui-notificationItemWidget-content-actions-timestamp {
color: var(--ooui-text);
}
.mw-echo-ui-bundleNotificationItemWidget-group {
background-color: var(--body-main);
}
@keyframes unseen-fadeout-to-unread {
from {
background-color: var(--wikitable-bg-lighter);
}
to {
background-color: var(--search-box);
}
}
@keyframes unseen-fadeout-to-read {
from {
background-color: var(--wikitable-bg-lighter);
}
to {
background-color: var(--body-main);
}
}
.mwe-popups {
background: var(--body-light);
}
.mwe-popups .mwe-popups-container {
color: var(--text-color);
background: var(--body-light);
}
.mwe-popups .mwe-popups-container.flipped-x-y:before,
.mwe-popups .mwe-popups-container.flipped-y:before {
border-top: none;
}
.mwe-popups .mwe-popups-container.mwe-popups-no-image-tri:before {
border-bottom: none;
}
.mwe-popups .mwe-popups-container.flipped-x-y:after,
.mwe-popups .mwe-popups-container.flipped-y:after {
border-top-color: var(--body-light);
}
.mwe-popups .mwe-popups-container.mwe-popups-no-image-tri:after {
border-bottom-color: var(--body-light);
}
.mwe-popups .mwe-popups-settings-icon:hover,
.mwe-popups .mwe-popups-settings-icon:active {
background-color: var(--ooui-normal--hover);
}
.mwe-popups .mw-ui-icon-element:not(.disabled):hover {
background: none;
}
.mwe-popups .mwe-popups-extract {
color: var(--text-color);
}
.mwe-popups .mwe-popups-extract[dir='ltr']:after {
background-image: linear-gradient(to right, rgba(49, 62, 89, 0), var(--body-light) 50%);
}
.mwe-popups-overlay {
background-color: var(--ooui-window-background);
}
#mwe-popups-settings {
background: var(--ooui-interface);
border-color: var(--ooui-interface-border);
color: var(--text-color);
}
#mwe-popups-settings header {
border-color: var(--ooui-interface-border);
}
#mwe-popups-settings main#mwe-popups-settings-form p {
color: var(--byline-color);
}
#mwe-popups-settings main#mwe-popups-settings-form form label > span {
color: var(--ooui-text);
}
:root {
--smw-ask-options-even-bg: var(--body-mid);
--smw-ask-options-odd-bg: var(--body-light);
--smw-ask-action-btn-lblue-bg: var(--body-main);
--smw-ask-action-btn-lblue-color: #000;
--smw-ask-action-btn-lblue-border-color: var(--body-light);
--smw-ask-action-btn-dblue-bg: var(--body-light);
--smw-ask-action-btn-dblue-color: #fff;
--smw-ask-action-btn-dblue-border-color: var(--button-border);
}
.smw-ask-condition fieldset,
.smw-ask-printhead fieldset {
border-color: var(--sidebar);
}
.smw-ask-search fieldset,
.smw-ask-format fieldset,
.smw-ask-options fieldset {
border-color: var(--sidebar);
}
.strike > span:before,
.strike > span:after {
background: var(--sidebar);
}
.smw-ask-options-fields tr td {
background-color: var(--smw-ask-options-even-bg);
}
.smw-ask-options-fields tr:nth-child(odd) td {
background-color: var(--smw-ask-options-odd-bg);
}
.smw-ask-action-btn.smw-ask-action-btn-lblue,
.smw-ask-action-btn.smw-ask-action-btn-lblue:hover,
.smw-ask-action-btn.smw-ask-action-btn-lblue:visited {
background-color: var(--smw-ask-action-btn-lblue-bg);
color: var(--smw-ask-action-btn-lblue-color);
border-color: var(--smw-ask-action-btn-lblue-border-color);
}
.smw-ask-action-btn.smw-ask-action-btn-dblue,
.smw-ask-action-btn.smw-ask-action-btn-dblue:hover,
.smw-ask-action-btn.smw-ask-action-btn-dblue:visited {
background-color: var(--smw-ask-action-btn-dblue-bg);
color: var(--smw-ask-action-btn-dblue-color);
border-color: var(--smw-ask-action-btn-dblue-border-color);
}
.smw-ask-query textarea,
.smw-ask-actions textarea {
background-color: var(--ooui-interface);
border-color: var(--ooui-interface-border);
color: var(--ooui-text);
}
.smw-ask-query-format select {
background-color: var(--ooui-interface);
border: 1px solid var(--ooui-interface-border);
color: var(--ooui-text);
}
.smw-ask-toplinks {
background-color: var(--body-mid);
}
.smw-ask-toplinks span.smw-icon-info {
background: none;
padding: 0 !important;
}
.smw-ask-toplinks span.smw-icon-info::before {
content: '';
background: var(--text-color);
-webkit-mask: url("data:image/svg+xml,%3C%3Fxml version='1.0' encoding='UTF-8'%3F%3E%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 20 20'%3E%3Ctitle%3Einfo%3C/title%3E%3Cpath d='M10 0C4.477 0 0 4.477 0 10s4.477 10 10 10 10-4.477 10-10S15.523 0 10 0zM9 5h2v2H9zm0 4h2v6H9z'/%3E%3C/svg%3E") no-repeat 50% 50% / contain;
mask: url("data:image/svg+xml,%3C%3Fxml version='1.0' encoding='UTF-8'%3F%3E%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 20 20'%3E%3Ctitle%3Einfo%3C/title%3E%3Cpath d='M10 0C4.477 0 0 4.477 0 10s4.477 10 10 10 10-4.477 10-10S15.523 0 10 0zM9 5h2v2H9zm0 4h2v6H9z'/%3E%3C/svg%3E") no-repeat 50% 50% / contain;
padding: 0 0 3px 18px;
}
.smw-ask-options-row-odd {
background-color: var(--body-light);
}
.smw-ask-options-row-even {
background-color: var(--body-mid);
}
#options-toggle:not(:checked) + #options-list .options-parameter-list:after {
background-image: linear-gradient(to bottom, transparent, var(--body-mid) 90%);
}
.smw-ask-button-submit input {
background-color: var(--ooui-normal);
border-color: var(--ooui-normal-border);
color: var(--text-color);
}
.smw-ask-button-submit input:hover,
.smw-ask-button-lgrey:hover {
background-color: var(--ooui-normal--hover);
border-color: var(--ooui-normal-border);
}
input.smw-ask-action-btn.smw-ask-action-btn-dblue {
background-color: var(--ooui-normal);
border-color: var(--ooui-normal-border);
color: var(--ooui-text);
}
a.smw-ask-action-btn.smw-ask-action-btn-lblue {
background-color: var(--body-mid);
border-color: var(--body-mid);
color: var(--ooui-text);
}
a.smw-ask-action-btn.smw-ask-action-btn-lblue:visited {
background-color: var(--body-mid);
border-color: var(--body-mid);
color: var(--ooui-text);
}
a.smw-ask-action-btn.smw-ask-action-btn-lblue:hover {
background-color: var(--body-mid);
border-color: var(--body-mid);
color: var(--ooui-text);
}
a.smw-ask-action-btn-lgrey {
background-color: var(--ooui-normal);
border-color: var(--ooui-normal-border);
color: var(--ooui-text);
}
a.smw-ask-action-btn-lgrey:hover {
background-color: var(--ooui-normal--hover);
border-color: var(--ooui-normal-border);
color: var(--ooui-text);
}
.smw-callout-error {
background-color: var(--errorbox-bg);
border-color: var(--errorbox-border);
}
.smw-callout-info {
background-color: var(--body-light);
border-color: var(--body-dark);
}
.smw-callout-success {
background-color: var(--successbox-bg);
border-color: var(--successbox-border);
}
.smw-callout-warning {
background-color: var(--warningbox-bg);
border-color: var(--warningbox-bg);
}
.smw-tabs input.nav-tab:checked + label.nav-label,
.smw-tabs input.nav-tab:checked + label.nav-label:hover {
color: inherit;
}
#tab-smw-property-value:checked + label.nav-label .usage-count {
color: #fff;
background-color: var(--ooui-progressive);
}
#tab-smw-property-value:checked + label.nav-label .usage-count.moderate {
color: #fff;
background-color: #b55e0c;
border-color: #b55e0c;
}
#tab-smw-property-value:checked + label.nav-label .usage-count.high {
color: #fff;
background-color: #9f261e;
border-color: #9f261e;
}
.smw-property-page-results .header-title {
background-color: var(--ooui-interface);
border-bottom-color: var(--ooui-interface-border);
color: var(--ooui-text);
}
.smw-property-page-results .value-row:hover {
background-color: var(--ooui-normal--hover);
}
.smw-property-page-results .smw-table .header-row {
color: var(--text-color);
}
.tippy-tooltip.light-border-theme {
background-color: var(--body-light);
color: var(--text-color);
}
.tippy-tooltip.light-border-theme .tippy-arrow {
border-top-color: var(--body-light);
}
.tippy-tooltip.light-border-theme .tippy-arrow:after {
border-top-color: var(--body-light);
}
.tippy-header {
background-color: var(--body-dark);
border-bottom-color: var(--body-mid);
}
.smw-ui-input-filter {
background-color: var(--ooui-interface);
border-color: var(--ooui-interface-border);
color: var(--ooui-text);
}
.smw-ui-input-filter input {
border-left-color: var(--ooui-interface-border) !important;
color: var(--ooui-text) !important;
}
.smw-ui-pagination .page-link.link-disabled {
background-color: var(--ooui-disabled);
border-color: var(--ooui-disabled-border);
color: var(--subtle-color);
}
.smw-ui-pagination .page-link {
background-color: var(--ooui-normal);
border-color: var(--ooui-normal-border);
color: var(--link-color);
}
.smw-ui-pagination .page-link:hover {
background-color: var(--ooui-normal--hover);
border-color: var(--ooui-normal-border);
color: var(--link-color);
}
.smw-ui-pagination .page-link.link-active {
color: #fff;
background-color: var(--ooui-progressive);
border-color: var(--ooui-progressive);
}
.smw-tabs input.nav-tab:checked + label.nav-label {
border-color: var(--ooui-normal-border);
}
.smw-tabs section,
.smw-tabs .subtab-content {
border-top-color: var(--ooui-normal-border);
}
.smw-column-header {
color: var(--text-color);
}
.smw-factbox {
background: var(--body-main);
border-color: transparent;
}
.mw-body .mw-indicators #mw-indicator-smw-entity-examiner.mw-indicator .smw-indicator-vertical-bar-loader {
display: none;
}
.smwb-theme-light .smwb-title,
.smwb-theme-light .smwb-center,
.smwb-theme-light .smwb-actions,
.smwb-theme-light .smwb-prophead {
background-color: var(--body-mid);
}
.smwb-theme-light .smwb-factbox {
border-left-color: var(--body-mid);
}
.smwb-theme-light .smwb-ifactbox {
border-right-color: var(--body-mid);
}
.smwb-theme-light .smwb-propval {
background-color: var(--body-light);
}
.smwb-action-separator {
border-color: var(--wikitable-border);
}
.smwb-bottom {
border-bottom: 1px solid var(--wikitable-border);
}
.smwb-ifactbox .smwb-cell,
.smwb-factbox .smwb-cell {
border-top: 1px solid var(--wikitable-border);
}
.smwb-propvalue .smwb-prophead,
.smwb-ipropvalue .smwb-prophead,
.smwb-propvalue .smwb-propval,
.smwb-ipropvalue .smwb-propval {
font-size: 0.9em;
}
:root {
--filter-black-to-link: invert(36%) sepia(58%) saturate(433%) hue-rotate(344deg) brightness(100%) contrast(91%);
}
#bodyContent span.smwbrowse a {
color: black;
background-image: url('filepath://Smwbrowse.svg');
filter: var(--filter-black-to-link);
}
#bodyContent span.smwbrowse a:hover {
color: black;
background-image: url('filepath://Smwbrowse-hover.svg');
text-decoration: underline;
}
#bodyContent span.smwsearch a {
color: black;
filter: var(--filter-black-to-link);
background-image: url('filepath://Smwsearch.svg');
}
#bodyContent span.smwsearch a:hover {
color: black;
background-image: url('filepath://Smwsearch-hover.svg');
text-decoration: underline;
}
:root {
--tabber-tab-bg: var(--body-light);
--tabber-tab-border-color: var(--body-border);
--tabber-active-tab-bg: var(--body-light);
--tabber-active-tab-color: var(--text-color);
--tabber-active-tab-hover-bg: var(--body-light);
--tabber-active-tab-hover-border-color: var(--body-border);
--tabber-active-tab-hover-color: var(--text-color);
--tabber-active-tab-border-hider-color: var(--body-light);
--tabber-inactive-tab-bg: var(--body-background-color);
--tabber-inactive-tab-border-color: var(--body-border);
--tabber-inactive-tab-color: var(--text-color);
--tabber-inactive-tab-hover-bg: var(--body-light);
--tabber-inactive-tab-hover-border-color: var(--body-border);
}
.tabber {
margin: 1em 0;
}
.tabber .tabbertab {
background-color: var(--tabber-tab-bg);
border: 1px solid var(--tabber-tab-border-color);
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
padding: 1em 1.5em;
}
ul.tabbernav {
border: none;
margin-left: 2em;
margin-bottom: 0;
margin-right: 2em;
padding: 0;
font-family: inherit;
}
ul.tabbernav li.tabberactive > a {
background-color: var(--tabber-active-tab-bg);
color: var(--tabber-active-tab-color);
border-bottom: none;
position: relative;
}
ul.tabbernav li.tabberactive > a:hover {
color: var(--tabber-active-tab-hover-color);
background-color: var(--tabber-active-tab-hover-bg);
border-color: var(--tabber-active-tab-hover-border-color);
border-bottom: none;
}
ul.tabbernav li.tabberactive > a::after {
content: '';
position: absolute;
left: 0;
right: 0;
bottom: -1px;
border-bottom: 2px solid var(--tabber-active-tab-border-hider-color);
}
ul.tabbernav li a {
background-color: var(--tabber-inactive-tab-bg);
border-bottom: transparent;
border-color: var(--tabber-inactive-tab-border-color);
color: var(--tabber-inactive-tab-color);
display: inline-block;
font-size: 110%;
padding: 0.5em 1em;
}
ul.tabbernav li a:hover {
background-color: var(--tabber-inactive-tab-hover-bg);
border-color: var(--tabber-inactive-tab-hover-border-color);
}
ul.tabbernav li a:link,
ul.tabbernav li a:visited {
color: var(--tabber-inactive-tab-color);
}
:root {
--ooui-text: var(--text-color);
--ooui-interface: var(--body-light);
--ooui-interface-border: var(--body-border);
--ooui-window-background: rgba(255, 255, 255, 0.5);
--ooui-normal: #d1b4a4;
--ooui-normal--hover: #dbc5b8;
--ooui-normal-border: #cdb09d;
--ooui-progressive: #936243;
--ooui-progressive--hover: #b27a57;
--ooui-accent: var(--link-color);
--ooui-input: #fff;
--ooui-input-border: #cdb09d;
--ooui-input-border--hover: #ac7c5d;
--ooui-disabled: #ccc3bd;
--ooui-disabled-border: #d8ccc5;
--ooui-disabled-text: var(--subtle-color);
--ooui-pending-background-image: repeating-linear-gradient(-45deg, var(--search-box), var(--search-box) 20px, var(--body-main) 20px, var(--body-main) 30px);
}
.oo-ui-widget {
color: var(--ooui-text);
}
.oo-ui-checkboxInputWidget [type='checkbox'] + span,
.oo-ui-radioInputWidget [type='radio'] + span {
background-color: var(--ooui-input);
border-color: var(--ooui-input-border);
}
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:checked + span,
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:indeterminate + span {
background-color: var(--ooui-progressive);
border-color: var(--ooui-progressive);
}
.oo-ui-radioInputWidget.oo-ui-widget-enabled [type='radio']:checked + span {
border-color: var(--ooui-progressive);
}
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:checked:hover + span,
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:indeterminate:hover + span {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
}
.oo-ui-radioInputWidget.oo-ui-widget-enabled [type='radio']:checked:hover + span {
border-color: var(--ooui-progressive--hover);
}
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:hover + span,
.oo-ui-radioInputWidget.oo-ui-widget-enabled [type='radio']:hover + span {
border-color: var(--ooui-accent);
}
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:focus + span {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:active + span,
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:checked:active + span,
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:indeterminate:active + span {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
box-shadow: inset 0 0 0 1px var(--ooui-progressive--hover);
}
.oo-ui-radioInputWidget.oo-ui-widget-enabled [type='radio']:active + span {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
}
.oo-ui-radioInputWidget.oo-ui-widget-enabled [type='radio']:checked:active + span {
border-color: var(--ooui-progressive--hover);
box-shadow: inset 0 0 0 1px var(--ooui-progressive--hover);
}
.oo-ui-radioInputWidget.oo-ui-widget-enabled [type='radio']:checked:active + span:before {
border-color: var(--ooui-progressive--hover);
}
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:checked:focus + span,
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:indeterminate:focus + span {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent), inset 0 0 0 2px #fff;
}
.oo-ui-checkboxInputWidget [type='checkbox']:disabled + span,
.oo-ui-radioInputWidget [type='radio']:disabled + span {
background-color: var(--ooui-disabled);
border-color: var(--ooui-disabled);
}
.oo-ui-dropdownWidget-handle {
border-color: var(--ooui-normal-border);
}
.oo-ui-dropdownWidget.oo-ui-widget-enabled .oo-ui-dropdownWidget-handle {
background-color: var(--ooui-normal);
color: var(--ooui-text);
}
.oo-ui-dropdownWidget.oo-ui-widget-enabled .oo-ui-dropdownWidget-handle:hover {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
}
.oo-ui-dropdownWidget.oo-ui-widget-enabled .oo-ui-dropdownWidget-handle:active {
color: var(--ooui-text);
}
.oo-ui-dropdownWidget.oo-ui-widget-enabled .oo-ui-dropdownWidget-handle:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-dropdownWidget.oo-ui-widget-enabled.oo-ui-dropdownWidget-open .oo-ui-dropdownWidget-handle {
background-color: var(--ooui-normal--hover);
}
.oo-ui-dropdownWidget.oo-ui-widget-disabled .oo-ui-dropdownWidget-handle {
color: var(--ooui-disabled-text);
text-shadow: none;
border-color: var(--ooui-disabled-border);
background-color: var(--ooui-disabled);
}
.oo-ui-dropdownInputWidget select {
border-color: var(--ooui-normal-border);
}
.oo-ui-dropdownInputWidget option {
background-color: var(--ooui-interface);
}
.oo-ui-dropdownInputWidget.oo-ui-widget-enabled {
background-color: var(--ooui-normal);
}
.oo-ui-dropdownInputWidget.oo-ui-widget-enabled:hover {
background-color: var(--ooui-normal--hover);
}
.oo-ui-dropdownInputWidget.oo-ui-widget-enabled select {
color: var(--ooui-text);
}
.oo-ui-dropdownInputWidget.oo-ui-widget-enabled select:hover,
.oo-ui-dropdownInputWidget.oo-ui-widget-enabled select:active {
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
}
.oo-ui-dropdownInputWidget.oo-ui-widget-enabled select:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-labelWidget.oo-ui-inline-help {
color: var(--byline-color);
}
.oo-ui-menuSelectWidget {
background-color: var(--ooui-interface);
border-color: var(--ooui-interface-border);
}
.oo-ui-menuSelectWidget-frameless {
box-shadow: inset 0 -1px 0 0 var(--ooui-normal-border);
}
.oo-ui-menuSectionOptionWidget {
color: var(--byline-color);
}
.oo-ui-menuOptionWidget.oo-ui-optionWidget-highlighted,
.oo-ui-menuOptionWidget.oo-ui-optionWidget-selected {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
}
.oo-ui-menuOptionWidget.oo-ui-optionWidget-selected.oo-ui-menuOptionWidget.oo-ui-optionWidget-highlighted,
.oo-ui-menuOptionWidget.oo-ui-optionWidget-pressed.oo-ui-menuOptionWidget.oo-ui-optionWidget-highlighted {
color: var(--ooui-accent);
}
.oo-ui-menuOptionWidget.oo-ui-widget-enabled.oo-ui-optionWidget {
color: var(--ooui-text);
}
.oo-ui-messageDialog-title {
color: inherit;
}
.oo-ui-messageWidget.oo-ui-messageWidget-block.oo-ui-flaggedElement-error {
background-color: var(--errorbox-bg);
border-color: var(--errorbox-border);
}
.oo-ui-messageWidget.oo-ui-messageWidget-block.oo-ui-flaggedElement-warning {
background-color: var(--warningbox-bg);
border-color: var(--warningbox-border);
}
.oo-ui-messageWidget.oo-ui-messageWidget-block.oo-ui-flaggedElement-success {
background-color: var(--successbox-bg);
border-color: var(--successbox-border);
}
.oo-ui-messageWidget.oo-ui-messageWidget-block.oo-ui-flaggedElement-notice {
background-color: var(--messagebox-info-background);
border-color: var(--messagebox-info-border);
}
.oo-ui-messageWidget.oo-ui-flaggedElement-error:not(.oo-ui-messageWidget-block),
.oo-ui-messageWidget.oo-ui-flaggedElement-success:not(.oo-ui-messageWidget-block) {
color: var(--ooui-text);
}
.oo-ui-optionWidget.oo-ui-widget-disabled {
color: var(--ooui-disabled-text);
}
.oo-ui-outlineControlsWidget {
background-color: var(--ooui-normal);
}
.oo-ui-outlineOptionWidget.oo-ui-optionWidget-highlighted {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
}
.oo-ui-popupWidget-popup {
background-color: var(--ooui-interface);
border-color: var(--ooui-interface-border);
}
.oo-ui-popupWidget-anchored-top .oo-ui-popupWidget-anchor:after {
border-bottom-color: var(--ooui-interface);
}
.oo-ui-popupWidget-anchored-top .oo-ui-popupWidget-anchor:before {
border-bottom-color: var(--ooui-interface-border);
}
.oo-ui-popupWidget-anchored-bottom .oo-ui-popupWidget-anchor:after {
border-top-color: var(--ooui-interface);
}
.oo-ui-popupWidget-anchored-bottom .oo-ui-popupWidget-anchor:before {
border-top-color: var(--ooui-interface-border);
}
.oo-ui-popupWidget-anchored-start .oo-ui-popupWidget-anchor:after {
border-right-color: var(--ooui-interface);
}
.oo-ui-popupWidget-anchored-start .oo-ui-popupWidget-anchor:before {
border-right-color: var(--ooui-interface-border);
}
.oo-ui-popupWidget-anchored-end .oo-ui-popupWidget-anchor:after {
border-left-color: var(--ooui-interface);
}
.oo-ui-popupWidget-anchored-end .oo-ui-popupWidget-anchor:before {
border-left-color: var(--ooui-interface-border);
}
.oo-ui-searchWidget-query {
border-bottom-color: var(--ooui-interface-border);
}
.oo-ui-selectFileWidget-dropTarget {
background-color: var(--ooui-interface);
border-color: var(--ooui-interface-border);
}
.oo-ui-selectFileWidget.oo-ui-widget-enabled.oo-ui-selectFileWidget-dropTarget {
background-color: var(--ooui-interface);
}
.oo-ui-selectFileWidget.oo-ui-widget-enabled.oo-ui-selectFileWidget-dropTarget:hover {
border-color: var(--ooui-input-border--hover);
}
.oo-ui-tabOptionWidget {
color: var(--ooui-text);
}
.oo-ui-tabSelectWidget-framed .oo-ui-tabOptionWidget.oo-ui-optionWidget-selected {
background-color: var(--body-dark);
color: var(--ooui-text);
}
.oo-ui-tabSelectWidget-framed .oo-ui-tabOptionWidget.oo-ui-optionWidget-selected .oo-ui-labelElement-label {
border-bottom-color: var(--body-border);
}
.oo-ui-tabSelectWidget-framed .oo-ui-tabOptionWidget.oo-ui-widget-enabled:hover,
.oo-ui-tabSelectWidget-framed .oo-ui-tabOptionWidget.oo-ui-widget-enabled:active {
background-color: var(--body-light);
color: var(--ooui-text);
}
.oo-ui-tabSelectWidget-framed .oo-ui-tabOptionWidget.oo-ui-widget-enabled.oo-ui-optionWidget-selected:hover {
background-color: var(--body-dark);
}
.oo-ui-tabSelectWidget-frameless .oo-ui-tabOptionWidget.oo-ui-optionWidget-selected {
color: var(--ooui-progressive);
box-shadow: inset 0 -2px 0 0 var(--ooui-progressive);
}
.oo-ui-tabSelectWidget-frameless .oo-ui-tabOptionWidget.oo-ui-optionWidget-selected:hover,
.oo-ui-tabSelectWidget-frameless .oo-ui-tabOptionWidget.oo-ui-optionWidget-selected:focus {
color: var(--ooui-progressive--hover);
box-shadow: inset 0 -2px 0 0 var(--ooui-progressive--hover);
}
.oo-ui-tabSelectWidget-framed {
background: none;
border-bottom: 1px solid var(--ooui-interface-border);
}
.oo-ui-tabSelectWidget-frameless {
box-shadow: inset 0 -1px 0 0 var(--ooui-interface-border);
}
.oo-ui-tabSelectWidget-mobile {
}
.oo-ui-tabSelectWidget-mobile.oo-ui-tabSelectWidget-framed:after {
background: var(--mobile-navbox-linear-gradient);
}
.oo-ui-tabSelectWidget-mobile.oo-ui-tabSelectWidget-frameless:after {
background: var(--mobile-navbox-linear-gradient);
}
.oo-ui-tagItemWidget {
border-color: var(--ooui-normal-border);
}
.oo-ui-tagItemWidget.oo-ui-widget-enabled {
color: var(--ooui-text);
}
.oo-ui-tagItemWidget.oo-ui-widget-enabled:hover {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
}
.oo-ui-tagItemWidget.oo-ui-widget-enabled:not( .oo-ui-tagItemWidget-fixed ) {
background-color: var(--ooui-normal);
}
.oo-ui-tagItemWidget.oo-ui-widget-enabled .oo-ui-buttonElement-button:hover {
background-color: var(--ooui-normal--hover);
}
.oo-ui-tagMultiselectWidget.oo-ui-widget-enabled {
background-color: var(--ooui-interface);
}
.oo-ui-tagMultiselectWidget.oo-ui-widget-enabled.oo-ui-tagMultiselectWidget-outlined {
background-color: var(--ooui-normal);
}
.oo-ui-tagMultiselectWidget.oo-ui-widget-enabled.oo-ui-tagMultiselectWidget-outlined .oo-ui-tagItemWidget.oo-ui-widget-enabled {
background-color: var(--ooui-interface);
}
.oo-ui-textInputWidget .oo-ui-inputWidget-input {
background-color: var(--ooui-input);
color: var(--ooui-text);
border-color: var(--ooui-input-border);
}
.oo-ui-textInputWidget.oo-ui-widget-enabled .oo-ui-inputWidget-input::placeholder {
color: var(--subtle-color);
}
.oo-ui-textInputWidget.oo-ui-widget-enabled .oo-ui-inputWidget-input:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-textInputWidget.oo-ui-widget-enabled .oo-ui-inputWidget-input[readonly]:not(.oo-ui-pendingElement-pending) {
background-color: var(--ooui-disabled);
color: var(--ooui-disabled-text);
}
.oo-ui-textInputWidget.oo-ui-widget-enabled:hover .oo-ui-inputWidget-input {
border-color: var(--ooui-input-border--hover);
}
.oo-ui-textInputWidget.oo-ui-widget-enabled:hover .oo-ui-inputWidget-input:focus {
border-color: var(--ooui-accent);
}
@media screen and (min-width: 0) {
.oo-ui-textInputWidget.oo-ui-widget-enabled textarea.oo-ui-inputWidget-input:focus {
outline: 1px solid var(--ooui-accent);
}
}
.oo-ui-textInputWidget.oo-ui-widget-disabled .oo-ui-inputWidget-input {
background-color: var(--ooui-disabled);
color: var(--ooui-disabled-text);
text-shadow: none;
border-color: var(--ooui-disabled-border);
}
.oo-ui-toggleSwitchWidget {
background-color: var(--ooui-input);
border-color: var(--ooui-input-border);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled .oo-ui-toggleSwitchWidget-grip {
background-color: var(--ooui-input);
border-color: var(--ooui-input-border);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:hover {
background-color: var(--ooui-input);
border-color: var(--ooui-accent);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:hover .oo-ui-toggleSwitchWidget-grip {
background-color: var(--ooui-input);
border-color: var(--ooui-accent);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:active,
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:active:hover,
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:active:focus {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
box-shadow: inset 0 0 0 1px var(--ooui-progressive--hover);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:active .oo-ui-toggleSwitchWidget-grip,
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:active:hover .oo-ui-toggleSwitchWidget-grip,
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:active:focus .oo-ui-toggleSwitchWidget-grip {
background-color: var(--ooui-input);
border-color: var(--ooui-input);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:focus .oo-ui-toggleSwitchWidget-grip {
border-color: var(--ooui-accent);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled.oo-ui-toggleWidget-on {
background-color: var(--ooui-progressive);
border-color: var(--ooui-progressive);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled.oo-ui-toggleWidget-on .oo-ui-toggleSwitchWidget-grip {
background-color: var(--ooui-input);
border-color: var(--ooui-input);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled.oo-ui-toggleWidget-on:hover {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled.oo-ui-toggleWidget-on:active,
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled.oo-ui-toggleWidget-on:active:hover {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled.oo-ui-toggleWidget-on:focus {
border-color: var(--ooui-progressive);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled.oo-ui-toggleWidget-on:focus::before {
border-color: #fff;
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-disabled {
background-color: var(--ooui-disabled);
border-color: var(--ooui-disabled);
}
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled > .oo-ui-buttonElement-button {
color: var(--ooui-text);
}
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled > .oo-ui-buttonElement-button:hover {
color: var(--ooui-text);
}
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled > .oo-ui-buttonElement-button:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled.oo-ui-buttonElement-pressed > input.oo-ui-buttonElement-button,
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled > .oo-ui-buttonElement-button:active {
color: var(--ooui-text);
}
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button,
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button:hover {
color: var(--ooui-text);
}
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button:active,
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive.oo-ui-buttonElement-pressed > .oo-ui-buttonElement-button {
color: var(--ooui-text);
border-color: var(--ooui-text);
}
.oo-ui-buttonElement-frameless.oo-ui-widget-disabled > .oo-ui-buttonElement-button {
color: var(--ooui-disabled-text);
}
.oo-ui-buttonElement-framed.oo-ui-widget-disabled > .oo-ui-buttonElement-button {
background-color: var(--ooui-disabled);
border-color: var(--ooui-disabled-border);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled > .oo-ui-buttonElement-button {
background-color: var(--ooui-normal);
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled > .oo-ui-buttonElement-button:hover {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled > .oo-ui-buttonElement-button:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-buttonElement-active > .oo-ui-buttonElement-button {
background-color: var(--ooui-progressive--hover);
color: #fff;
border-color: var(--ooui-progressive--hover);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-buttonElement-active > .oo-ui-buttonElement-button:focus {
border-color: var(--ooui-progressive--hover);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled > .oo-ui-buttonElement-button:active,
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-buttonElement-pressed > .oo-ui-buttonElement-button {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive {
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button {
color: var(--ooui-text);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button:hover {
background-color: var(--ooui-normal--hover);
border-color: var(--ooui-progressive--hover);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-destructive > .oo-ui-buttonElement-button {
color: var(--ooui-text);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-destructive > .oo-ui-buttonElement-button:hover {
background-color: var(--ooui-normal--hover);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button {
background-color: var(--ooui-progressive);
border-color: var(--ooui-progressive);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button:hover {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent), inset 0 0 0 2px #fff;
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button:active,
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive.oo-ui-buttonElement-pressed > .oo-ui-buttonElement-button,
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive.oo-ui-buttonElement-active > .oo-ui-buttonElement-button,
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive.oo-ui-popupToolGroup-active > .oo-ui-buttonElement-button {
color: #fff;
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
}
.oo-ui-pendingElement-pending {
background-image: var(--ooui-pending-background-image);
background-size: 200%;
animation: oo-ui-pendingElement-stripes 6s linear infinite;
}
@keyframes oo-ui-pendingElement-stripes {
100% {
background-position: 100%;
}
}
.oo-ui-messageDialog-content > .oo-ui-window-foot {
outline-color: var(--ooui-interface-border);
}
.oo-ui-messageDialog-message {
color: var(--ooui-text);
}
.oo-ui-messageDialog-actions-horizontal .oo-ui-actionWidget {
border-right-color: var(--ooui-interface-border);
}
.oo-ui-messageDialog-actions-vertical .oo-ui-actionWidget {
border-bottom-color: var(--ooui-interface-border);
}
.oo-ui-processDialog-content .oo-ui-window-head,
.oo-ui-processDialog-content .oo-ui-window-foot {
outline-color: var(--ooui-interface-border);
}
.oo-ui-processDialog .oo-ui-actionWidget > .oo-ui-buttonElement-button {
border-top-color: transparent;
border-bottom-color: transparent;
}
.oo-ui-processDialog .oo-ui-actionWidget > .oo-ui-buttonElement-button:hover,
.oo-ui-processDialog .oo-ui-actionWidget > .oo-ui-buttonElement-button:active {
border-top-color: transparent;
border-bottom-color: transparent;
}
.oo-ui-processDialog .oo-ui-actionWidget:not( .oo-ui-flaggedElement-progressive ):not( .oo-ui-flaggedElement-destructive ) > .oo-ui-buttonElement-button:hover,
.oo-ui-processDialog .oo-ui-actionWidget:not( .oo-ui-flaggedElement-progressive ):not( .oo-ui-flaggedElement-destructive ) > .oo-ui-buttonElement-button:active {
border-right-color: var(--ooui-interface-border);
border-left-color: transparent;
}
.oo-ui-processDialog .oo-ui-actionWidget:not( .oo-ui-flaggedElement-progressive ):not( .oo-ui-flaggedElement-destructive ) > .oo-ui-buttonElement-button:focus {
border-color: var(--ooui-accent);
}
.oo-ui-processDialog-actions-safe .oo-ui-actionWidget > .oo-ui-buttonElement-button,
.oo-ui-processDialog-actions-other .oo-ui-actionWidget > .oo-ui-buttonElement-button {
border-right-color: var(--ooui-normal-border);
border-left-color: transparent;
}
.oo-ui-processDialog-actions-safe .oo-ui-widget-enabled.oo-ui-iconElement:not( .oo-ui-labelElement ) > .oo-ui-buttonElement-button:hover {
background-color: var(--ooui-normal--hover);
border-right-color: var(--ooui-interface-border);
}
.oo-ui-windowManager-modal > .oo-ui-dialog {
background-color: var(--ooui-window-background);
}
.oo-ui-windowManager-modal > .oo-ui-dialog > .oo-ui-window-frame {
background-color: var(--ooui-interface);
}
.oo-ui-windowManager-modal.oo-ui-windowManager-floating > .oo-ui-dialog > .oo-ui-window-frame {
border-color: var(--ooui-interface-border);
}
.oo-ui-window {
color: var(--ooui-text);
}
.oo-ui-toolbar-bar {
background-color: var(--ooui-interface);
color: var(--ooui-text);
}
.oo-ui-toolbar-position-top > .oo-ui-toolbar-bar {
border-bottom-color: var(--body-mid);
}
.oo-ui-toolbar-bar .oo-ui-bookletLayout > .oo-ui-menuLayout-menu {
border-right-color: var(--body-mid);
}
.oo-ui-tool.oo-ui-widget-enabled > .oo-ui-tool-link:hover {
background-color: var(--ooui-normal--hover);
}
.oo-ui-tool.oo-ui-widget-enabled > .oo-ui-tool-link:focus {
outline: 1px solid var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-tool.oo-ui-widget-enabled > .oo-ui-tool-link:active,
.oo-ui-tool.oo-ui-widget-enabled.oo-ui-tool-active > .oo-ui-tool-link,
.oo-ui-tool.oo-ui-widget-enabled.oo-ui-popupToolGroup-active > .oo-ui-tool-link {
background-color: var(--ooui-normal--hover);
color: var(--ooui-accent);
box-shadow: none;
}
.oo-ui-tool.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive > .oo-ui-tool-link {
background-color: var(--ooui-progressive);
}
.oo-ui-tool.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive > .oo-ui-tool-link:hover {
background-color: var(--ooui-progressive--hover);
}
.oo-ui-tool.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive > .oo-ui-tool-link:focus {
box-shadow: inset 0 0 0 1px var(--ooui-accent), inset 0 0 0 2px #fff;
}
.oo-ui-tool.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive > .oo-ui-tool-link:active,
.oo-ui-tool.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive.oo-ui-tool-active > .oo-ui-tool-link {
background-color: var(--ooui-progressive--hover);
}
.oo-ui-listToolGroup-tools .oo-ui-tool.oo-ui-widget-enabled {
background-color: var(--ooui-normal);
}
.oo-ui-listToolGroup-tools .oo-ui-tool.oo-ui-widget-enabled:hover {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
}
.oo-ui-listToolGroup-tools .oo-ui-tool-active.oo-ui-widget-enabled .oo-ui-tool-link .oo-ui-tool-title {
color: var(--ooui-progressive);
}
.oo-ui-menuToolGroup {
border-left-color: var(--body-mid);
border-right-color: var(--body-mid);
}
.oo-ui-popupToolGroup-tools {
background-color: var(--ooui-interface);
border-color: var(--body-mid);
}
.oo-ui-popupToolGroup.oo-ui-widget-enabled > .oo-ui-popupToolGroup-handle:hover {
background-color: var(--ooui-normal--hover);
}
.oo-ui-popupToolGroup.oo-ui-widget-enabled > .oo-ui-popupToolGroup-handle:focus {
outline: 1px solid var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-toolbar-actions .oo-ui-popupToolGroup.oo-ui-widget-enabled > .oo-ui-popupToolGroup-handle:hover {
border-right-color: var(--ooui-normal--hover);
}
.oo-ui-popupToolGroup-tools .oo-ui-tool.oo-ui-widget-enabled .oo-ui-tool-link:focus {
box-shadow: inset 0 0 0 2px var(--ooui-accent);
}
.oo-ui-popupToolGroup-tools .oo-ui-tool-active.oo-ui-widget-enabled .oo-ui-tool-link .oo-ui-tool-title {
color: var(--ooui-progressive);
}
.oo-ui-popupToolGroup.oo-ui-popupToolGroup-active > .oo-ui-popupToolGroup-handle {
background-color: var(--ooui-normal);
color: var(--ooui-accent);
}
.oo-ui-popupToolGroup.oo-ui-popupToolGroup-active > .oo-ui-popupToolGroup-handle:hover {
background-color: var(--ooui-normal--hover);
color: var(--ooui-accent);
}
.oo-ui-bookletLayout-outlinePanel > .oo-ui-outlineControlsWidget {
border-top-color: var(--ooui-interface-border);
}
.oo-ui-bookletLayout > .oo-ui-menuLayout-menu {
border-right-color: var(--ooui-interface-border);
}
.oo-ui-fieldLayout-disabled > .oo-ui-fieldLayout-body > .oo-ui-fieldLayout-header > .oo-ui-labelElement-label {
color: var(--ooui-disabled-text);
}
.oo-ui-panelLayout-framed {
border-color: var(--sidebar);
}
.oo-ui-icon-settings {
background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' width='20' height='20' viewBox='0 0 20 20'%3E%3Ctitle%3Esettings%3C/title%3E%3Cg transform='translate(10 10)'%3E%3Cpath id='a' d='M1.5-10h-3l-1 6.5h5m0 7h-5l1 6.5h3'/%3E%3Cuse xlink:href='%23a' transform='rotate(45)'/%3E%3Cuse xlink:href='%23a' transform='rotate(90)'/%3E%3Cuse xlink:href='%23a' transform='rotate(135)'/%3E%3C/g%3E%3Cpath d='M10 2.5a7.5 7.5 0 0 0 0 15 7.5 7.5 0 0 0 0-15v4a3.5 3.5 0 0 1 0 7 3.5 3.5 0 0 1 0-7'/%3E%3C/svg%3E");
}
.oo-ui-icon-clear {
background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 20 20'%3E%3Ctitle%3Eclear%3C/title%3E%3Cpath d='M10 0a10 10 0 1 0 10 10A10 10 0 0 0 10 0zm5.66 14.24-1.41 1.41L10 11.41l-4.24 4.25-1.42-1.42L8.59 10 4.34 5.76l1.42-1.42L10 8.59l4.24-4.24 1.41 1.41L11.41 10z'/%3E%3C/svg%3E");
}
.mw-widget-dateInputWidget-handle {
background-color: var(--ooui-input);
color: var(--ooui-text);
border-color: var(--ooui-input-border);
}
.mw-widget-dateInputWidget-calendar {
background-color: var(--ooui-interface);
}
.mw-widget-dateInputWidget.oo-ui-widget-enabled .mw-widget-dateInputWidget-handle:hover {
border-color: var(--ooui-input-border--hover);
}
.mw-widget-calendarWidget {
border-color: var(--ooui-interface-border);
}
.mw-widget-calendarWidget:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.mw-widget-calendarWidget-day,
.mw-widget-calendarWidget-day-heading {
color: var(--ooui-text);
}
.mw-widget-calendarWidget-day-additional {
color: var(--ooui-text);
opacity: 0.67;
}
.mw-widget-calendarWidget-day-today {
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.mw-widget-calendarWidget-item:hover {
background-color: var(--ooui-progressive);
}
.mw-widget-calendarWidget-item-selected {
background-color: var(--ooui-progressive--hover);
}
.mw-widgets-datetime-calendarWidget {
background-color: var(--ooui-interface);
border-color: var(--ooui-interface-border);
}
.mw-widgets-datetime-calendarWidget:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent), 0 2px 2px 0 rgba(0, 0, 0, 0.25);
}
.mw-widgets-datetime-calendarWidget-grid .mw-widgets-datetime-calendarWidget-cell.mw-widgets-datetime-calendarWidget-extra .oo-ui-buttonElement-button .oo-ui-labelElement-label {
color: var(--subtle-color);
}
.mw-widgets-datetime-calendarWidget-grid .mw-widgets-datetime-calendarWidget-cell.mw-widgets-datetime-calendarWidget-selected .oo-ui-buttonElement-button {
background-color: var(--ooui-progressive--hover);
}
.mw-widgets-datetime-dateTimeInputWidget-handle {
background-color: var(--ooui-input);
color: var(--ooui-text);
border-color: var(--ooui-input-border);
}
.mw-widgets-datetime-dateTimeInputWidget.oo-ui-widget-enabled.mw-widgets-datetime-dateTimeInputWidget-handle:hover {
border-color: var(--ooui-input-border--hover);
}
.mw-widgets-datetime-dateTimeInputWidget.oo-ui-widget-enabled:hover input,
.mw-widgets-datetime-dateTimeInputWidget.oo-ui-widget-enabled:hover textarea {
border-color: var(--ooui-input-border--hover);
}
.mw-widgets-datetime-dateTimeInputWidget.oo-ui-widget-enabled .mw-widgets-datetime-dateTimeInputWidget-editField:hover {
background-color: var(--ooui-normal);
}
.ve-activated .ve-init-mw-desktopArticleTarget-originalContent #catlinks:hover {
background: var(--ooui-normal--hover);
}
.ve-ui-overlay {
font-family: inherit;
}
.oo-ui-toolbar-position-top .ve-ui-toolbarDialog-position-above {
border-top-color: var(--body-mid);
}
.ve-ce-branchNode-blockSlug,
.ve-ce-branchNode-newSlug {
outline-color: var(--body-border);
background-color: var(--ooui-interface);
}
.ve-ui-specialCharacterPage h3 {
color: var(--byline-color);
}
.ve-ui-specialCharacterPage-character {
border-color: var(--body-mid);
}
.ve-ui-specialCharacterPage-character:hover {
border-color: var(--body-dark);
}
.ve-ce-linkAnnotation.ve-ce-annotation-active {
box-shadow: 0 0 0 1px var(--body-mid);
background: none;
}
.ve-ui-desktopContext .ve-ui-linkContextItem .ve-ui-linkContextItem-label {
border-color: var(--body-border);
}
.ve-ui-mwHelpPopupTool-version-label,
.ve-ui-mwHelpPopupTool-version-link,
.ve-ui-mwHelpPopupTool-version-date {
color: var(--byline-color);
}
.ve-ce-tableCellableNode {
border-color: var(--body-mid);
}
.ve-ce-mwReferencesListNode-muted {
color: var(--byline-color);
}
.ve-ui-mwTemplatePage-description,
.ve-ui-mwParameterPage-label,
.ve-ui-mwParameterPage-description-required,
.ve-ui-mwParameterPage-description-deprecated {
color: var(--byline-color);
}
.mw-widget-titleWidget-menu .mw-widget-titleOptionWidget-description {
color: var(--byline-color);
}
.ve-ui-mwGalleryDialog-menuLayout > .oo-ui-menuLayout-menu,
.ve-ui-mwGalleryDialog-innerMenuLayout > .oo-ui-menuLayout-menu,
.ve-ui-mwGalleryDialog .ve-ui-mwGalleryDialog-image-container,
.ve-ui-targetWidget {
border-color: var(--body-border);
}
.ve-ui-targetWidget:not(.oo-ui-pendingElement-pending) {
background-color: var(--body-main);
}
.ve-ui-mwSaveDialog {
color: var(--ooui-text);
}
.ve-ui-mwSaveDialog-options {
background-color: var(--ooui-interface);
border-color: var(--body-border);
}
.ve-ui-mwSaveDialog-summary {
background-color: var(--ooui-input);
}
.ve-ui-mwSaveDialog-editSummary-count {
border-color: var(--body-border);
}
.ve-ui-mwSaveDialog-license {
color: var(--byline-color);
}
.ve-ui-mwReferenceContextItem-muted {
color: var(--byline-color);
}
.ve-ui-mwNoticesPopupTool-items > div:not(:first-child),
.ve-ui-mwHelpPopupTool-item:not(:first-child) {
border-color: var(--body-border);
}
.ve-ui-mwTransclusionOutlineControlsWidget {
background-color: var(--ooui-interface);
border-top-color: var(--body-border);
}
.ve-ui-mwTransclusionOutlineTemplateWidget-sticky {
background-color: var(--ooui-interface);
}
.ve-ui-mwTransclusionOutlineTemplateWidget .ve-ui-mwTransclusionOutlineParameterWidget.oo-ui-optionWidget-highlighted {
color: var(--ooui-text);
}
.ve-ui-mwTransclusionOutlineTemplateWidget-no-template-parameters {
color: var(--subtle-color);
}
.ve-ui-mwParameterPage-undocumentedLabel {
color: var(--subtle-color);
}
.ve-ui-mwTwoPaneTransclusionDialogLayout > .oo-ui-menuLayout-menu {
border-right: var(--body-border);
}
.ve-ui-mwParameterPage-doc-required,
.ve-ui-mwParameterPage-doc-deprecated,
.ve-ui-mwParameterPage-inlineDescription .ve-ui-mwParameterPage-doc-example {
color: var(--byline-color);
}
.ve-ui-expandableContent-toggle {
background-color: var(--ooui-interface);
}
.ve-ui-expandableContent-fade {
background: linear-gradient(to right, rgba(255, 255, 255, 0) 0, var(--ooui-interface) 90%);
}
.ve-ui-commandHelpDialog-shortcut > kbd,
.ve-ui-commandHelpDialog-sequence > kbd {
background-color: var(--keypress-background);
color: var(--keypress-color);
border-color: var(--keypress-border);
box-shadow: none;
text-shadow: none;
}
.ve-init-mw-desktopArticleTarget-toolbarPlaceholder-floating .ve-init-mw-desktopArticleTarget-toolbarPlaceholder-bar {
background: var(--ooui-interface);
}
.ve-init-mw-desktopArticleTarget-toolbarPlaceholder-bar {
border-bottom-color: var(--body-mid);
}
figure[typeof~='mw:File/Thumb'],
figure[typeof~='mw:File/Frame'],
figure[typeof~='mw:Image/Thumb'],
figure[typeof~='mw:Video/Thumb'],
figure[typeof~='mw:Image/Frame'],
figure[typeof~='mw:Video/Frame'] {
border: none;
background-color: var(--thumb-bg);
}
figure[typeof~='mw:File/Thumb'] > a:first-child > *:first-child:not( .mw-broken-media ),
figure[typeof~='mw:File/Frame'] > a:first-child > *:first-child:not( .mw-broken-media ),
figure[typeof~='mw:Image/Thumb'] > a:first-child > *:first-child:not( .mw-broken-media ),
figure[typeof~='mw:Video/Thumb'] > a:first-child > *:first-child:not( .mw-broken-media ),
figure[typeof~='mw:Image/Frame'] > a:first-child > *:first-child:not( .mw-broken-media ),
figure[typeof~='mw:Video/Frame'] > a:first-child > *:first-child:not( .mw-broken-media ) {
border: none;
background: var(--thumb-bg);
}
figure[typeof~='mw:File/Thumb'] > figcaption,
figure[typeof~='mw:File/Frame'] > figcaption,
figure[typeof~='mw:Image/Thumb'] > figcaption,
figure[typeof~='mw:Video/Thumb'] > figcaption,
figure[typeof~='mw:Image/Frame'] > figcaption,
figure[typeof~='mw:Video/Frame'] > figcaption {
border: none;
background-color: var(--thumb-caption-bg);
padding: 4px 6px;
}
:root {
--keypress-background: #eee;
--keypress-border: #ccc;
--keypress-color: #333;
}
.archivelist {
background-color: var(--body-light);
border: solid 1px var(--body-border);
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
float: right;
margin: 5px;
padding: 5px;
text-align: center;
width: 120px;
}
.shortcut {
border: 1px solid var(--body-border);
background: var(--body-light);
float: right;
font-size: 0.8em;
margin: 0.5em 0em 0.5em 1em;
padding: 0.5em;
text-align: center;
}
.hatnote,
.seealso {
font-style: italic;
}
.hatnote i,
.seealso i {
font-style: normal;
}
div.hatnote,
div.seealso {
margin: 0.5em 1.6em;
}
div.hatnote + div.hatnote,
div.hatnote + div.seealso,
div.seealso + div.hatnote,
div.seealso + div.seealso {
margin-top: -0.5em;
}
.keypress {
background: var(--keypress-background);
color: var(--keypress-color);
font-family: inherit;
border: 1px solid var(--keypress-border);
border-radius: 2px;
font-size: 0.9em;
margin: 0 0.1em;
padding: 0.1em 0.4em;
white-space: nowrap;
}
:root {
--documentation-background: #f9fafa;
--documentation-link-color: #e4eaee;
--documentation-headers-color: #fff;
--documentation-header-background: #949eaa;
--documentation-subheader-background: #808c9a;
--documentation-border: #e4eaee;
}
.documentation {
background: var(--documentation-background);
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
margin: 1em 0;
}
.documentation pre,
.documentation code {
background-color: var(--documentation-background);
border-color: var(--documentation-border);
}
.documentation h2,
.documentation hr {
border-color: var(--documentation-border);
}
.documentation-header {
color: var(--documentation-headers-color);
background: var(--documentation-header-background);
font-weight: bold;
padding: 1em 1.5em;
}
.documentation-title {
font-size: 1.25em;
}
.documentation-subheader {
color: var(--documentation-headers-color);
background: var(--documentation-subheader-background);
padding: 0.5em 1.5em;
}
.documentation-subheader a,
.documentation-subheader a:visited,
.documentation-subheader a:active {
color: var(--documentation-link-color);
}
.documentation-documentation,
.documentation-links {
font-size: 0.85em;
}
.documentation-content {
padding: 1em 1.5em;
}
.mw-templatedata-doc-params dl:not(:empty) {
column-count: 3;
border-top: 1px solid var(--body-border);
margin-bottom: 0.5em;
}
.mw-templatedata-doc-params dt::after {
content: ":";
}
.mw-templatedata-doc-params dd,
.mw-templatedata-doc-params dt {
margin: 0.1em 2em;
min-width: auto;
}
.mw-templatedata-doc-muted {
color: var(--subtle-color);
font-style: italic;
}
:root {
--infobox-text-color: var(--text-color);
--table-header: var(--body-dark);
--table-subheader: var(--body-mid);
--table-body: var(--body-light);
--table-border: var(--body-border);
}
.infobox {
font-size: 0.85em;
width: 300px;
border-collapse: collapse;
float: right;
table-layout: fixed;
margin: 0.5em 0 1em 1em;
}
.infobox .infobox-buttons {
display: flex;
flex-wrap: wrap;
justify-content: center;
grid-gap: 3px;
margin-bottom: 3px;
}
.infobox .infobox-buttons .button {
background: var(--table-header);
padding: 0 5px;
font-weight: bold;
flex: 1 1 20%;
max-width: 20%;
color: #fff;
}
.infobox tbody {
border: 1px solid var(--table-border);
background: var(--table-body);
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(231, 215, 199, 0.5);
}
.infobox .infobox-header {
background: var(--table-header);
padding: 0.5em 0;
text-align: center;
color: #fff;
font-size: 1.15em;
font-weight: bold;
line-height: 1.4em;
}
.infobox .infobox-image {
text-align: center;
}
.infobox .infobox-subheader {
background: var(--table-subheader);
font-weight: bold;
text-align: center;
color: #fff;
}
.infobox .infobox-padding {
backgound: var(--table-body);
}
.infobox tr td:not(.infobox-padding) {
padding: 0.2em 0.5em;
}
.infobox th:not(.infobox-header):not(.infobox-subheader):not(.infobox-nested) {
border-right: 2px solid var(--table-subheader);
text-align: right;
padding: 0.2em 0.5em;
}
.hidden {
display: none;
}
ol.references,
.reflist {
font-size: 90%;
}
.reflist {
list-style-type: decimal;
}
.reflist .references {
font-size: 100%;
list-style-type: inherit;
}
.reflist-lower-alpha {
list-style-type: lower-alpha;
}
ol.references li:target,
sup.reference:target {
background-color: var(--body-light);
}
.hideQuotes .refhide {
display: none;
}
:root {
--messagebox-obsolete-background: #cfcfcf;
--messagebox-obsolete-border: #464646;
--messagebox-obsolete-color: var(--text-color);
--messagebox-obsolete-link-color: #6c6c6c;
--messagebox-info-background: #ebebeb;
--messagebox-info-border: #898989;
--messagebox-info-color: var(--text-color);
--messagebox-info-link-color: #6c6c6c;
--messagebox-action-background: #c7e8fa;
--messagebox-action-border: #0b5884;
--messagebox-action-color: var(--text-color);
--messagebox-action-link-color: #03436b;
--messagebox-warn-background: #dfc0ba;
--messagebox-warn-border: #861c10;
--messagebox-warn-color: var(--text-color);
--messagebox-warn-link-color: #8e221a;
--messagebox-safe-background: #d8f0d3;
--messagebox-safe-border: #1b8408;
--messagebox-safe-color: var(--text-color);
--messagebox-safe-link-color: #1b8408;
--messagebox-disambig-background: #ebebeb;
--messagebox-disambig-border: #898989;
--messagebox-disambig-color: var(--text-color);
--messagebox-disambig-link-color: #6c6c6c;
--messagebox-discord-background: #5865f2;
--messagebox-discord-border: #4c57d0;
--messagebox-discord-link-color: #d2e5fc;
}
.mw-message-box,
.mw-message-box-error,
.mw-message-box-warning,
.mw-message-box-success,
.usermessage {
color: var(--text-color);
}
.messagebox {
width: 65%;
margin: 0.5em auto;
border-left: 15px solid;
border-color: var(--body-dark);
background-color: var(--body-light);
box-sizing: border-box;
}
.messagebox.obsolete {
background-color: var(--messagebox-obsolete-background);
border-color: var(--messagebox-obsolete-border);
color: var(--messagebox-obsolete-color);
}
.messagebox.obsolete a,
.messagebox.obsolete a:visited,
.messagebox.obsolete a:active {
color: var(--messagebox-obsolete-link-color);
}
.messagebox.info {
background-color: var(--messagebox-info-background);
border-color: var(--messagebox-info-border);
color: var(--messagebox-info-color);
}
.messagebox.info a,
.messagebox.info a:visited,
.messagebox.info a:active {
color: var(--messagebox-info-link-color);
}
.messagebox.action {
background-color: var(--messagebox-action-background);
border-color: var(--messagebox-action-border);
color: var(--messagebox-action-color);
}
.messagebox.action a,
.messagebox.action a:visited,
.messagebox.action a:active {
color: var(--messagebox-action-link-color);
}
.messagebox.warn {
background-color: var(--messagebox-warn-background);
border-color: var(--messagebox-warn-border);
color: var(--messagebox-warn-color);
}
.messagebox.warn a,
.messagebox.warn a:visited,
.messagebox.warn a:active {
color: var(--messagebox-warn-link-color);
}
.messagebox.safe {
background-color: var(--messagebox-safe-background);
border-color: var(--messagebox-safe-border);
color: var(--messagebox-safe-color);
}
.messagebox.safe a,
.messagebox.safe a:visited,
.messagebox.safe a:active {
color: var(--messagebox-safe-link-color);
}
.messagebox.disambig {
background-color: var(--messagebox-disambig-background);
border-color: var(--messagebox-disambig-border);
color: var(--messagebox-disambig-color);
}
.messagebox.disambig a,
.messagebox.disambig a:visited,
.messagebox.disambig a:active {
color: var(--messagebox-disambig-link-color);
}
.messagebox.discord {
background-color: var(--messagebox-discord-background);
border-color: var(--messagebox-discord-border);
color: #fff;
}
.messagebox.discord a,
.messagebox.discord a:visited,
.messagebox.discord a:active {
color: var(--messagebox-discord-link-color);
}
.messagebox.discord a.external,
.messagebox.discord a:visited.external,
.messagebox.discord a:active.external {
font-style: italic;
}
.messagebox.stub {
width: 40%;
}
.messagebox.hasdialogue {
padding: 0 10px;
width: auto;
}
:root {
--byline-arrow-filter: invert(29%) sepia(0%) saturate(376%) hue-rotate(172deg) brightness(87%) contrast(80%);
--tile-border-color: var(--body-border);
--tile-background-color: var(--body-light);
--tile-link-button-color: #f5e9db;
--tile-link-button-highlight-color: #dfccb0;
--tile-dark-color: #fff;
--tile-dark-bg: #5d6773;
--tile-dark-link-color: #ccc;
--tile-dark-byline-color: rgba(255, 255, 255, 0.7);
--tile-dark-header-color: #fff;
}
.tile {
background: var(--tile-background-color);
border: 1px solid var(--tile-border-color);
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
padding: 1.5em 2em 1em;
max-width: 40em;
}
.tile h2 {
font-size: 1.4em;
font-weight: bold;
border: none;
margin: 0 0 0.4em;
}
.tile .byline + h2 {
margin-top: -0.5em;
}
.tile.dark {
color: var(--tile-dark-color);
background: var(--tile-dark-bg);
border: none;
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.3);
}
.tile.dark h2 {
color: var(--tile-dark-header-color);
}
.tile.dark a {
color: var(--tile-dark-link-color);
}
.tile.dark .byline {
color: var(--tile-dark-byline-color);
}
.byline {
font-size: 0.9em;
color: var(--byline-color);
}
.byline a {
color: var(--byline-color);
}
.tile-row {
display: flex;
flex-flow: row wrap;
margin-bottom: 1em;
}
.tile-halves {
display: flex;
flex-flow: row wrap;
border: 1px solid var(--tile-border-color);
background: var(--tile-background-color);
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
}
.tile-halves h2 {
font-size: 1.4em;
font-weight: bold;
border: none;
margin: 0 0 0.4em;
}
.tile-halves .byline + h2 {
margin-top: -0.5em;
}
.tile-top {
width: 100%;
padding: 1.3rem 1.5rem 0.6rem;
}
.tile-top.tile-image {
display: flex;
align-items: center;
background-color: var(--byline-color);
overflow: hidden;
padding: 0;
height: 13vw;
max-height: 12em;
transition: 0.4s ease-out;
}
.tile-halves:hover .tile-top.tile-image img {
transform: scale(1.1);
transition: 0.5s ease-out;
}
.tile-top.tile-image a {
width: 100%;
}
.tile-top.tile-image img {
width: 100%;
object-fit: cover;
max-height: 200px;
transition: 0.4s ease-out;
}
.tile-bottom {
background: var(--tile-background-color);
border-top: 1px solid var(--tile-border-color);
width: 100%;
padding: 1rem 1.5rem 0.6rem;
}
.tile-bottom.link-button {
align-self: flex-end;
padding: 0;
}
.tile-bottom.link-button a {
display: block;
text-align: center;
padding: 0.75em 1.5em 0.8em;
text-decoration: none;
}
.tile-bottom.read-more {
background: var(--tile-link-button-color);
transition: 0.3s ease-out;
}
.tile-bottom.read-more a {
color: var(--byline-color);
font-weight: bold;
text-align: right;
}
.tile-bottom.read-more:hover {
background: var(--tile-link-button-highlight-color);
}
.tile-bottom.read-more:hover .arrow {
transform: translateX(50%);
}
.tile-bottom.read-more .arrow {
filter: var(--byline-arrow-filter);
margin-left: 0.4em;
transition: 0.3s ease-out;
}
body.page-Main_Page.action-view .catlinks,
body.page-Main_Page.action-view #contentSub,
body.page-Main_Page.action-view #firstHeading,
body.page-Main_Page.action-view #siteNotice {
display: none;
}
body.page-Main_Page .mw-parser-output {
max-width: 75em;
margin: 0 auto;
}
body.page-Main_Page.action-view .catlinks,
body.page-Main_Page.action-view #contentSub,
body.page-Main_Page.action-view #siteNotice {
display: none;
}
.mainpage-header {
display: flex;
margin: 2.6em 1.75em 1.5em;
}
.mainpage-header .header-intro {
flex: 2;
}
.mainpage-header .header-intro h1 {
font-size: 2.5em;
font-weight: bold;
border: none;
margin: 0 0 0.15em;
}
.mainpage-header .header-intro p {
font-size: 1.1em;
line-height: 1.7em;
}
.mainpage-header .header-stats {
flex: 1;
display: flex;
justify-content: center;
align-items: center;
margin-top: -1em;
}
.mainpage-body {
display: grid;
grid-template-areas: "event event event" "update update update" "content content content" "left left right";
gap: 0.9rem;
grid-template-columns: repeat(3, 1fr);
}
.mainpage-body h2 a {
color: var(--text-color);
}
.mainpage-body .tile {
padding-left: 1.75em;
padding-right: 1.75em;
max-width: 100%;
}
.mainpage-body .tile-row {
width: 100%;
margin-bottom: 0;
}
.mainpage-body .tile-row {
display: grid;
gap: 0.9rem;
}
.mainpage-contents.tile-row {
display: flex;
}
.mainpage-contents.tile-row .tile-top {
height: 5.5rem;
}
.mainpage-left {
grid-area: left;
flex: 2;
display: flex;
flex-flow: column wrap;
}
.mainpage-left > * {
margin: 0 0 0.9rem;
}
.mainpage-right {
grid-area: right;
flex: 1;
display: flex;
flex-flow: column wrap;
}
.mainpage-right > * {
margin: 0 0 0.9rem;
}
.arrow {
background: url('filepath://White-chevron.svg') no-repeat;
display: inline-block;
height: 0.7rem;
width: 0.45rem;
vertical-align: middle;
}
.arrow.dark {
filter: invert(80%);
}
.mainpage-contents {
grid-area: content;
grid-template-columns: repeat(6, 1fr);
}
.mainpage-contents .tile-halves {
flex: 1;
}
.mainpage-contents .tile-top {
height: 4.5rem;
position: relative;
}
.mainpage-contents .tile-top.tile-image img {
height: auto;
}
.mainpage-contents h2 {
margin: 0;
padding: 0;
}
.mainpage-contents .tile-bottom.link-button a {
padding: 0.75em 0.2em;
}
.popular-pages ul {
display: grid;
grid-template-columns: repeat(3, 1fr);
grid-gap: 0.6em;
margin: 1em 0 0.7em 0;
}
.mp-popular-page-light {
display: flex;
align-items: center;
background-color: var(--button-background);
transition: 100ms;
}
.mp-popular-page-light a {
flex: 1;
display: block;
color: #fff;
font-weight: bold;
text-align: center;
text-decoration: none;
padding: 0.7em 1em;
}
.mp-popular-page-light:hover {
filter: brightness(115%);
transition: 100ms;
}
.mainpage-social {
border: none;
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.3);
}
.mainpage-social .tile-top {
display: flex;
align-items: center;
padding: 1em 1.5em;
}
.mainpage-social .tile-top a {
flex: 1;
position: relative;
text-decoration: none;
}
.mainpage-social .tile-top a:hover .arrow {
transform: translateX(50%);
}
.mainpage-social .tile-bottom {
border: none;
padding: 1em 1.75em;
}
.mainpage-social .tile-bottom p {
color: #fff;
font-weight: bold;
font-size: 0.9em;
text-align: center;
text-transform: uppercase;
letter-spacing: 0.03em;
margin: 0;
}
.mainpage-social .social-icon {
margin-right: 0.75em;
text-align: center;
width: 60px;
}
.mainpage-social .social-header {
color: #fff;
font-weight: bold;
font-size: 1.15em;
margin: 0.5em 0 -0.15em;
}
.mainpage-social .server-tagline {
color: rgba(255, 255, 255, 0.9);
margin-bottom: 0.5em;
}
.mainpage-social .arrow {
position: absolute;
top: calc(50% - .5em);
right: 0;
height: 1em;
width: 0.7em;
background-size: 0.7em 1em;
transition: 0.3s ease-out;
}
.mainpage-social.mainpage-discord .tile-top {
background: #5865f2;
}
.mainpage-social.mainpage-discord .tile-bottom {
background: #525ee0;
}
.mainpage-social.mainpage-twitter .tile-top {
background: #15202b;
}
.mainpage-social.mainpage-twitter .tile-bottom {
background: #121c26;
}
.mainpage-editing {
border: none;
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.3);
}
.mainpage-editing .tile-top {
background: #438ab5;
}
.mainpage-editing .tile-bottom {
background: #3980ab;
border: none;
padding: 0.8rem 1.5rem 0.4rem;
}
.mainpage-editing h2,
.mainpage-editing a {
color: #fff;
}
.mainpage-editing p {
color: rgba(255, 255, 255, 0.9);
}
.mainpage-editing ul {
list-style-image: url('filepath://Transparent-chevron.svg');
}
@media only screen and (max-width: 1200px) {
.mainpage-contents {
grid-template-columns: repeat(3, 1fr);
}
}
@media only screen and (max-width: 1000px) {
.mainpage-body {
grid-template-areas: "event event event" "update update update" "content content content" "left left left" "right right right";
}
.mainpage-recent-updates {
grid-template-columns: repeat(2, 1fr);
}
.mainpage-recent-updates .tile-halves:last-child {
display: none;
}
.mainpage-recent-updates .tile-halves:hover .tile-top img {
transform: scale(1.04);
}
.mainpage-recent-updates .tile-top {
height: 18vw;
min-height: 9em;
}
.mainpage-header .header-stats {
display: none;
}
.mainpage-left > *:last-child,
.mainpage-right > *:last-child {
margin-bottom: 0;
}
.popular-pages ul {
grid-template-columns: repeat(2, 1fr);
}
}
@media only screen and (max-width: 720px) {
.mainpage-recent-updates {
grid-template-columns: none;
}
.mainpage-recent-updates .tile-halves:last-child {
display: flex;
}
.mainpage-contents {
grid-template-columns: repeat(2, 1fr);
}
}
.mw-prefs-buttons {
background-color: var(--body-main);
border-top-color: var(--body-border);
box-shadow: none;
}
.mw-prefs-tabs-wrapper.oo-ui-panelLayout-framed,
.mw-prefs-tabs > .oo-ui-menuLayout-content > .oo-ui-indexLayout-stackLayout > .oo-ui-tabPanelLayout {
border-color: var(--body-border);
}
.mw-htmlform-ooui .mw-htmlform-matrix tbody tr:nth-child(even) td {
background-color: var(--body-light);
}
.mw-htmlform-ooui .mw-htmlform-matrix tbody tr:hover td {
background-color: var(--body-mid);
}
:root {
--rc-positive-color: #407813;
--rc-negative-color: #b41e0f;
}
.mw-plusminus-pos {
color: var(--rc-positive-color);
}
.mw-plusminus-neg {
color: var(--rc-negative-color);
}
.client-js .mw-recentchanges-toplinks:not(.mw-recentchanges-toplinks-collapsed) {
border-color: var(--body-border);
background-color: var(--body-light);
border-radius: 2px;
}
.mw-rcfilters-ui-filterTagMultiselectWidget-wrapper-content-title {
color: var(--text-color);
}
.mw-rcfilters-ui-filterTagMultiselectWidget-emptyFilters {
color: var(--byline-color);
}
.mw-rcfilters-ui-filterTagMultiselectWidget.oo-ui-widget-enabled .oo-ui-tagMultiselectWidget-handle {
background-color: var(--ooui-interface);
border-color: var(--ooui-interface-border);
}
.mw-rcfilters-ui-filterTagMultiselectWidget-views-select-widget.oo-ui-widget {
border-color: var(--ooui-interface-border);
}
.mw-rcfilters-collapsed .mw-rcfilters-ui-filterTagMultiselectWidget {
border-bottom-color: var(--ooui-interface-border);
}
.mw-rcfilters-ui-menuSelectWidget-footer {
background-color: var(--ooui-interface);
border-color: var(--ooui-interface-border);
}
.mw-rcfilters-ui-viewSwitchWidget label.oo-ui-labelWidget {
color: var(--byline-color);
}
.mw-rcfilters-ui-tagItemWidget-popup-content {
color: var(--ooui-text);
}
.mw-changeslist-legend,
.mw-rcfilters-ui-changesListWrapperWidget .mw-changeslist-legend {
background-color: var(--body-light);
border-color: var(--body-dark);
}
.mw-rcfilters-ui-changesListWrapperWidget-previousChangesIndicator {
border-color: var(--sidebar);
}
.client-js .mw-changeslist ul,
.client-js .mw-changeslist table.mw-enhanced-rc {
margin-left: 0;
}
.mw-rcfilters-ui-watchlistTopSectionWidget-separator {
border-color: var(--sidebar);
}
.mw-rcfilters-ui-itemMenuOptionWidget-header {
border-bottom-color: var(--ooui-interface);
background-color: var(--ooui-interface-border);
}
.mw-rcfilters-ui-itemMenuOptionWidget:not(:last-child):not(.mw-rcfilters-ui-itemMenuOptionWidget-identifier-talk) {
border-bottom-color: var(--ooui-normal-border);
}
.mw-rcfilters-ui-itemMenuOptionWidget-label-title,
.mw-rcfilters-ui-itemMenuOptionWidget-label-desc {
color: var(--text-color);
}
.mw-rcfilters-ui-filterMenuOptionWidget.oo-ui-flaggedElement-muted:not(.oo-ui-optionWidget-selected) {
background-color: var(--body-main);
}
.mw-rcfilters-ui-filterMenuOptionWidget.oo-ui-flaggedElement-muted .mw-rcfilters-ui-itemMenuOptionWidget-label-title,
.mw-rcfilters-ui-filterMenuOptionWidget.oo-ui-flaggedElement-muted .mw-rcfilters-ui-itemMenuOptionWidget-label-desc {
color: var(--subtle-color);
}
.mw-rcfilters-ui-filterMenuSectionOptionWidget {
background-color: var(--body-mid);
}
.mw-rcfilters-ui-filterMenuSectionOptionWidget-header-title.oo-ui-labelElement-label {
color: var(--ooui-text);
}
.mw-rcfilters-ui-filterMenuHeaderWidget-title {
color: var(--ooui-text);
}
.mw-rcfilters-ui-filterMenuHeaderWidget-header {
border-bottom-color: var(--ooui-interface-border);
background-color: var(--ooui-interface);
}
.mw-rcfilters-ui-itemMenuOptionWidget-view-namespaces {
border-top-color: var(--ooui-interface-border);
}
.mw-rcfilters-ui-datePopupWidget {
border-color: var(--ooui-interface-border);
}
.mw-rcfilters-ui-datePopupWidget .mw-rcfilters-ui-valuePickerWidget-title {
color: var(--byline-color);
}
.mw-rcfilters-ui-savedLinksListItemWidget-label {
color: var(--ooui-accent);
}
.client-js .mw-changeslist.mw-rcfilters-ui-changesListWrapperWidget-highlighted ul,
.client-js .mw-changeslist.mw-rcfilters-ui-changesListWrapperWidget-highlighted table.mw-enhanced-rc {
margin-left: 1.5em;
}
.page-Special_CreateAccount .mw-ui-container,
.page-Special_UserLogin .mw-ui-container {
max-width: 64rem;
margin: 0 auto;
}
.mw-number-text {
color: var(--byline-color);
}
.mw-body-content .mw-number-text h3 {
color: var(--text-color);
}
#mw-indicator-mw-helplink a {
background: none;
padding: 0;
display: flex;
align-items: center;
}
#mw-indicator-mw-helplink a::before {
content: '';
margin-right: 5px;
-webkit-mask: url("/resources/src/mediawiki.helplink/images/helpNotice.svg?46d34") no-repeat 50% 50% / contain;
mask: url("/resources/src/mediawiki.helplink/images/helpNotice.svg?46d34") no-repeat 50% 50% / contain;
background: var(--text-color);
height: 20px;
width: 20px;
}
.results-info {
color: inherit;
}
.mw-search-profile-tabs {
background-color: var(--body-mid);
border-color: transparent;
}
.search-types .current a {
color: inherit;
}
#mw-searchoptions {
background-color: var(--body-mid);
border-color: transparent;
}
#mw-searchoptions .divider {
border-color: var(--body-border);
}
#mw-searchoptions h4 {
font-family: inherit;
}
#mw-searchoptions .oo-ui-labelElement:nth-of-type(odd) {
font-weight: bold;
}
.searchresult {
line-height: 1.5;
}
.searchalttitle,
#mw-search-interwiki li {
font-size: 90%;
}
.mw-search-result-data {
color: var(--byline-color);
}
.page-Special_ListFiles a.image img {
width: inherit;
height: inherit;
}
.page-Special_ListFiles .TablePager_col_thumb {
text-align: center;
}
#editcount table[border="1"] {
background-color: var(--body-main) !important;
border-color: var(--wikitable-border) !important;
margin-top: 0.5em;
}
#editcount table[border="1"] th,
#editcount table[border="1"] td {
padding: 0.2em 0.4em;
}
#editcount table[border="1"] th {
background-color: var(--wikitable-header-bg);
border: 1px solid var(--wikitable-border);
}
#editcount table[border="1"] td {
border: 1px solid var(--wikitable-border);
}
#editcount table[border="1"] tr:nth-child(odd) {
background-color: var(--body-light);
}
.mw-echo-ui-notificationBadgeButtonPopupWidget-popup > .oo-ui-popupWidget-popup .mw-echo-ui-placeholderItemWidget {
background-color: inherit;
}
table.mw-interwikitable.body td.mw-interwikitable-local-yes {
background-color: var(--table-yes-background);
color: var(--table-yes-color);
}
.mw-protectedpages-unknown {
color: var(--byline-color);
}
.watchlistredir,
.allpagesredirect {
font-style: italic;
}
.allpagesredirect:after {
color: var(--byline-color);
content: " (redirect)";
}
.mw-apisandbox-toolbar {
background: var(--body-main);
}
.oo-ui-menuOptionWidget .mw-apisandbox-flag {
color: var(--byline-color);
}
tr.mw-abusefilter-list-disabled,
tr.mw-abusefilter-list-disabled td {
color: var(--byline-color);
}
table.mw-abuselog-details {
background: var(--wikitable-bg);
border-color: var(--wikitable-border);
}
table.mw-abuselog-details th {
background: var(--wikitable-header-bg);
}
table.mw-abuselog-details th,
table.mw-abuselog-details td {
border-color: var(--wikitable-border);
}
.mw-abusefilter-log-hidden-entry {
color: var(--subtle-color);
}
body td.mw-abusefilter-history-changed {
background: var(--table-no-background);
}
div.mw-abusefilter-editor,
#mw-abusefilter-warn-preview,
#mw-abusefilter-disallow-preview {
border-color: var(--ooui-input-border);
}
.mw-destfile-warning {
border-color: var(--warningbox-border);
color: var(--text-color);
background-color: var(--warningbox-bg);
}
span.fileinput-button {
background-color: var(--ooui-normal);
border-color: var(--ooui-normal-border);
color: var(--ooui-text);
}
ul.fileupload-results li.ful-success {
background-color: var(--successbox-bg);
}
ul.fileupload-results li.ful-success a {
color: var(--link-color);
}
ul.fileupload-results li.ful-error {
background-color: var(--errorbox-bg);
}
.color-container {
display: flex;
margin: 2em auto;
width: 80%;
max-width: 60em;
}
.color-column {
flex: 1;
margin-right: 1em;
}
.color-column:last-child {
margin-right: 0;
}
.color-column h3 {
padding: 0;
}
.color-group {
color: #333;
padding: 1em 1.5em;
transition: 0.2s ease-out;
}
.color-group:hover {
transform: scale(1.03);
}
.color-group.dark {
color: #fff;
}
.color-group .variable,
.color-group .hexcode {
font-family: monospace;
font-size: 1.1em;
-webkit-user-select: all;
-moz-user-select: all;
-ms-user-select: all;
user-select: all;
margin: 0;
}
body.wgl-readermode .color-group .variable,
body.wgl-readermode .color-group .hexcode {
font-size: inherit;
}
.color-group .variable {
font-weight: bold;
}
#t-print,
#t-permalink {
display: none;
}
#filetoc {
border-radius: 2px;
background: var(--body-mid);
border-color: transparent;
margin: 0.5em auto;
text-align: center;
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
}
li.gallerybox div.thumb {
border: none;
background-color: var(--thumb-bg);
}
.smwfact {
display: none;
}
.list-header {
background-color: var(--body-mid);
color: inherit;
}
.editOptions {
color: var(--text-color);
background-color: var(--sourceeditor-background-secondary);
border-color: var(--sourceeditor-border);
}
.mw-json th,
.mw-json td {
border-color: var(--wikitable-border);
}
.mw-json td {
background: var(--wikitable-bg);
}
.mw-json th {
background: var(--wikitable-header-bg);
}
f0775d8e3033cb920e80a27c57e00f97610909b3
1678
1671
2024-04-01T01:02:08Z
Merds
25
Updating CSS from [[MediaWiki:Common.less]]
css
text/css
/* <pre> */
:root {
--body-main: #fdfcfc;
--body-light: #f5f0eb;
--body-mid: #d1b9ad;
--body-dark: #b1886f;
--body-border: #d1b9ad;
--body-background-color: #173a4d;
--button-background: #605443;
--button-color: #fff;
--button-border: #3c352a;
--button-dark: #18140c;
--button-light: #3a301d;
--sidebar: #cfc08d;
--background-text-color: #e2dbc8;
--background-link-color: #e2bd8a;
--search-box: #efeee6;
--link-color: #6e452b;
--redlink-color: #ba0000;
--text-color: #2F2828;
--byline-color: #ccc;
--subtle-color: #777;
--admin-blue: #332e75;
--bearcat-green: #13592e;
--awb-purple: #933b96;
--rsw-blue: #438ab6;
--osrsw-brown: #605443;
--thumb-bg: var(--body-light);
--thumb-caption-bg: var(--body-mid);
--sourceeditor-input-background: #fff;
--sourceeditor-background: var(--body-light);
--sourceeditor-background-secondary: var(--body-light);
--sourceeditor-border: var(--body-mid);
--codemirror-gutter-background: var(--body-mid);
}
@font-face {
font-family: 'Lora';
font-weight: 400 700;
font-style: normal;
font-display: swap;
src: url('filepath://Lora.woff2') format('woff2');
}
@font-face {
font-family: 'Lora';
font-weight: 400 700;
font-style: italic;
font-display: swap;
src: url('filepath://Lora-Italic.woff2') format('woff2');
}
:root {
--base-text-color: #36414f;
--base-heading-color: #444e5a;
--base-heading-border: #e4eaee;
--mw-code-background-color: var(--body-light);
--body-background-image: url('filepath://Wiki_background.jpg');
}
#mw-page-base {
background: none;
}
.mw-body {
background-color: var(--body-main);
color: var(--text-color);
border-color: transparent;
box-shadow: 0 0 7px rgba(0, 0, 0, 0.15);
margin-top: 0;
}
h1,
h2,
h3,
h4,
h5,
h6 {
color: var(--text-color);
}
h1,
h2 {
border-color: var(--sidebar);
}
.mw-body h1,
.mw-body-content h1,
.mw-body-content h2,
.mw-body-content h3,
.mw-body-content h4,
.mw-body-content h5,
.mw-body-content h6 {
font-family: 'Lora', 'Palatino', 'Georgia', serif;
}
.mw-parser-output h2:first-of-type {
clear: left;
}
.mw-footer {
color: var(--background-text-color);
}
.mw-footer li {
color: var(--background-text-color);
}
.mw-footer a,
.mw-footer a:active,
.mw-footer a:visited {
color: var(--background-link-color);
}
::placeholder {
color: var(--subtle-color);
}
a {
color: var(--link-color);
}
a:visited,
a:active {
color: var(--link-color);
}
a.new {
color: var(--redlink-color);
}
a.new:visited {
color: var(--redlink-color);
}
.mw-parser-output a.extiw,
.mw-parser-output a.external {
color: var(--link-color);
}
.mw-parser-output a.extiw:visited,
.mw-parser-output a.external:visited,
.mw-parser-output a.extiw:active,
.mw-parser-output a.external:active {
color: var(--link-color);
}
.jsPurgeLink a.external {
color: var(--link-color);
}
:root {
--errorbox-bg: #feecea;
--errorbox-border: #ee4231;
--warningbox-bg: #fef9de;
--warningbox-border: #f9d000;
--successbox-bg: #ecf8e3;
--successbox-border: #6bc71f;
}
.mw-message-box-error,
.errorbox,
.mw-message-box-warning,
.warningbox,
.mw-message-box-success,
.successbox,
.usermessage {
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
}
.mw-message-box-error,
.errorbox {
background-color: var(--errorbox-bg);
border-color: var(--errorbox-border);
}
.mw-message-box-warning,
.warningbox,
.usermessage {
background-color: var(--warningbox-bg);
border-color: var(--warningbox-border);
}
.mw-message-box-success,
.successbox {
background-color: var(--successbox-bg);
border-color: var(--successbox-border);
}
.catlinks {
background: var(--body-light);
border: 1px solid var(--body-dark);
padding: 8px 15px;
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
}
.catlinks li {
border-color: var(--body-mid);
}
.filehistory a img,
#file img {
background: url("data:image/svg+xml,%3C%3Fxml version='1.0' encoding='UTF-8'%3F%3E%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16'%3E%3Cpath d='M0 0h8v16h8V8H0z' opacity='.13'/%3E%3C/svg%3E") repeat;
}
#file img:hover {
background: none;
}
.mw-highlight {
background: none;
}
.mw-highlight .linenos {
background-color: var(--mw-code-background-color);
color: var(--body-border);
}
.mw-highlight a:hover .linenos,
.mw-highlight .hll a .linenos {
color: var(--body-dark);
}
.mw-content-ltr.mw-highlight-lines pre,
.mw-content-ltr.content .mw-highlight-lines pre {
box-shadow: inset 2.75em 0 0 var(--mw-code-background-color);
}
#pagehistory ul {
list-style: none;
margin: 0;
}
#pagehistory li {
border: 1px solid transparent;
padding: 1px 10px;
margin: 2px 0;
}
#pagehistory li.selected {
background-color: var(--body-light);
color: inherit;
border: 1px dashed var(--body-border);
outline: none;
}
#mw-history-compare > div:first-of-type {
position: -webkit-sticky;
position: sticky;
top: 0;
background-color: var(--body-main);
border-bottom: 1px solid var(--body-dark);
padding: 0.25em 0;
}
.wgl-stickyheader #mw-history-compare > div:first-of-type {
top: 2.5rem;
}
.autocomment,
.autocomment a,
.autocomment a:visited {
color: var(--link-color);
}
li span.deleted,
span.history-deleted {
color: var(--byline-color);
}
.mw-usertoollinks-contribs-no-edits,
.mw-usertoollinks-contribs-no-edits:visited {
color: var(--redlink-color);
}
.CategoryTreeToggle {
color: var(--link-color);
}
body.wgl-stickyheader.action-view .mw-headline:target::before {
display: block;
content: '';
margin-top: -3rem;
height: 3rem;
visibility: hidden;
pointer-events: none;
}
.mw-mmv-post-image {
color: var(--text-color);
background-color: var(--body-main);
}
.mw-mmv-image-metadata {
border-top-color: var(--body-mid);
background-color: var(--body-light);
}
.mw-mmv-dialog,
.mw-mmv-dialog .mw-mmv-dialog-down-arrow,
.mw-mmv-options-dialog .mw-mmv-dialog-down-arrow {
background-color: var(--body-light);
box-shadow: none;
}
.mw-mmv-options-enable-alert {
background-color: var(--body-light);
color: var(--text-color);
}
.mw-mmv-options-dialog-header,
.mw-mmv-options-text-header,
.mw-mmv-options-text-body,
.mw-mmv-options-enable-alert,
.mw-mmv-options-dialog .mw-mmv-disable-confirmation .mw-mmv-options-dialog-header,
.mw-mmv-options-dialog .mw-mmv-disable-confirmation .mw-mmv-options-text-header {
color: var(--text-color);
}
.mw-revslider-container {
border-color: var(--sidebar);
}
.mw-revslider-slider-wrapper {
border-top-color: var(--sidebar);
}
.mw-ui-button {
background-color: var(--ooui-normal);
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
}
.mw-ui-button:not(:disabled):hover,
.mw-ui-button:not(:disabled):active {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
}
.mw-ui-button:not(:disabled):focus {
color: var(--ooui-text);
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent), inset 0 0 0 2px #fff;
}
.mw-ui-button:not(:disabled):visited {
color: var(--ooui-text);
}
.mw-ui-button.mw-ui-progressive:not(:disabled) {
background-color: var(--ooui-progressive);
color: #fff;
border-color: var(--ooui-progressive);
}
.mw-ui-button.mw-ui-progressive:not(:disabled):hover {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
}
.mw-ui-button.mw-ui-progressive:not(:disabled):focus {
box-shadow: inset 0 0 0 1px var(--ooui-accent), inset 0 0 0 2px #fff;
}
.mw-ui-button.mw-ui-progressive:not(:disabled):active,
.mw-ui-button.mw-ui-progressive:not(:disabled).is-on {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
box-shadow: none;
}
.mw-ui-button.mw-ui-destructive:not( :disabled ) {
color: #fff;
}
.mw-ui-button.mw-ui-quiet,
.mw-ui-button.mw-ui-quiet.mw-ui-progressive,
.mw-ui-button.mw-ui-quiet.mw-ui-destructive {
color: var(--text-color);
}
input[type='checkbox']:hover + .mw-ui-button.mw-ui-quiet,
input[type='checkbox']:hover + .mw-ui-button.mw-ui-quiet.mw-ui-progressive,
input[type='checkbox']:hover + .mw-ui-button.mw-ui-quiet.mw-ui-destructive,
.mw-ui-button.mw-ui-quiet:hover,
.mw-ui-button.mw-ui-quiet.mw-ui-progressive:hover,
.mw-ui-button.mw-ui-quiet.mw-ui-destructive:hover {
background-color: rgba(0, 24, 73, 0.02745098);
color: var(--text-color);
border-color: transparent;
}
input[type='checkbox']:focus + .mw-ui-button.mw-ui-quiet,
input[type='checkbox']:focus + .mw-ui-button.mw-ui-quiet.mw-ui-progressive,
input[type='checkbox']:focus + .mw-ui-button.mw-ui-quiet.mw-ui-destructive,
.mw-ui-button.mw-ui-quiet:focus,
.mw-ui-button.mw-ui-quiet.mw-ui-progressive:focus,
.mw-ui-button.mw-ui-quiet.mw-ui-destructive:focus {
color: var(--text-color);
}
input[type='checkbox']:active + .mw-ui-button.mw-ui-quiet,
input[type='checkbox']:active + .mw-ui-button.mw-ui-quiet.mw-ui-progressive,
input[type='checkbox']:active + .mw-ui-button.mw-ui-quiet.mw-ui-destructive,
.mw-ui-button.mw-ui-quiet:active,
.mw-ui-button.mw-ui-quiet.mw-ui-progressive:active,
.mw-ui-button.mw-ui-quiet.mw-ui-destructive:active {
background-color: rgba(0, 36, 73, 0.08235294);
color: var(--text-color);
border-color: #72777d;
}
.mw-ui-input {
background-color: var(--ooui-input);
color: var(--text-color);
border-color: var(--ooui-input-border);
}
.mw-ui-input:hover {
border-color: var(--ooui-input-border--hover);
}
.mw-ui-input::placeholder {
color: var(--byline-color);
}
.mw-content-ltr .redirectText li:first-child {
padding: 0;
background: 0;
}
.mw-content-ltr .redirectText li:first-child::before {
content: '';
background: currentcolor;
-webkit-mask: url("filepath://Redirect-arrow.svg") no-repeat 50% 50% / contain;
mask: url("filepath://Redirect-arrow.svg") no-repeat 50% 50% / contain;
display: inline-block;
width: 47px;
height: 20px;
}
.vector-search-box-inner {
background: var(--body-main) !important;
box-shadow: inset 0 -7px 7px -7px rgba(0, 0, 0, 0.15) !important;
}
.vector-menu-dropdown .vector-menu-heading {
color: var(--vector-tab-link-color) !important;
}
.vector-menu-dropdown .vector-menu-heading:hover {
color: var(--vector-tab-link-color) !important;
}
.vector-menu-dropdown .vector-menu-heading:focus {
color: var(--vector-tab-link-color) !important;
}
:root {
--wikitable-header-bg: var(--body-dark);
--wikitable-border: var(--body-border);
--wikitable-bg: var(--body-light);
--wikitable-bg-lighter: #e9e3d6;
--wikitable-color: var(--text-color);
--table-na-background: rgba(255, 255, 255, 0.3);
--table-na-color: var(--subtle-color);
--table-yes-background: #c3e8a3;
--table-yes-color: #2e5e05;
--table-no-background: #fbc0ba;
--table-no-color: #801c13;
--table-maybe-background: #fcea94;
--table-maybe-color: #786300;
}
.wikitable {
background: var(--wikitable-bg);
color: var(--wikitable-color);
border-color: var(--wikitable-border);
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
}
.wikitable > tr > th,
.wikitable > tr > td,
.wikitable > * > tr > th,
.wikitable > * > tr > td {
border-color: var(--wikitable-border);
}
.wikitable > tr > th.table-noborder,
.wikitable > tr > td.table-noborder,
.wikitable > * > tr > th.table-noborder,
.wikitable > * > tr > td.table-noborder {
border-left-style: hidden;
border-right-style: hidden;
padding-left: 0;
padding-right: 0;
}
.wikitable > tr > th,
.wikitable > * > tr > th {
background-color: var(--wikitable-header-bg);
color: #fff;
}
.tabber .wikitable {
box-shadow: none;
}
.mw_metadata td,
.mw_metadata th {
border-color: var(--wikitable-border);
}
.mw_metadata th {
background-color: var(--wikitable-header-bg);
}
.mw_metadata td {
background-color: var(--wikitable-bg);
}
.mw-datatable {
border-color: var(--wikitable-border);
}
.mw-datatable td,
.mw-datatable th {
border-color: var(--wikitable-border);
}
.mw-datatable th {
background-color: var(--wikitable-header-bg);
}
.mw-datatable td {
background-color: var(--wikitable-bg);
}
.mw-datatable tr:hover td {
background-color: var(--wikitable-bg);
}
table.alternating-rows tr:nth-child(odd),
table.alternating-cols td:nth-child(odd) {
background: var(--wikitable-alternating-bg);
}
.table-na {
background: var(--table-na-background);
color: var(--table-na-color);
vertical-align: middle;
text-align: center;
}
.table-yes {
background: var(--table-yes-background);
color: var(--table-yes-color);
}
.table-positive {
background: var(--table-yes-background);
}
.table-no {
background: var(--table-no-background);
color: var(--table-no-color);
}
.table-negative {
background: var(--table-no-background);
}
.table-maybe {
background: var(--table-maybe-background);
color: var(--table-maybe-color);
}
#mw-allmessagestable .am_actual,
#mw-allmessagestable .am_default {
background-color: var(--wikitable-bg);
}
#mw-allmessagestable .am_default:hover,
#mw-allmessagestable .am_actual:hover,
#mw-allmessagestable tbody:hover td {
background-color: var(--wikitable-bg-lighter);
}
table.wikitable td.no-cell-spacing {
padding: 0;
height: 0;
}
table.wikitable td.no-cell-spacing table {
margin: -1px;
width: calc(100% + 2px);
height: calc(100% + 2px);
}
.plainlist ol,
.plainlist ul {
margin: 0;
}
.plainlist li {
margin-bottom: 0;
list-style: none;
}
table.align-right-1 td:nth-of-type(1),
table.align-right-2 td:nth-of-type(2),
table.align-right-3 td:nth-of-type(3),
table.align-right-4 td:nth-of-type(4),
table.align-right-5 td:nth-of-type(5),
table.align-right-6 td:nth-of-type(6),
table.align-right-7 td:nth-of-type(7),
table.align-right-8 td:nth-of-type(8),
table.align-right-9 td:nth-of-type(9),
table.align-right-10 td:nth-of-type(10),
table.align-right-11 td:nth-of-type(11),
table.align-right-12 td:nth-of-type(12),
table.align-right-13 td:nth-of-type(13),
table.align-right-14 td:nth-of-type(14),
table.align-right-15 td:nth-of-type(15),
table.align-right-16 td:nth-of-type(16),
table.align-right-17 td:nth-of-type(17),
table.align-right-18 td:nth-of-type(18),
table.align-right-19 td:nth-of-type(19),
table.align-right-20 td:nth-of-type(20) {
text-align: right;
}
table.align-center-1 td:nth-of-type(1),
table.align-center-2 td:nth-of-type(2),
table.align-center-3 td:nth-of-type(3),
table.align-center-4 td:nth-of-type(4),
table.align-center-5 td:nth-of-type(5),
table.align-center-6 td:nth-of-type(6),
table.align-center-7 td:nth-of-type(7),
table.align-center-8 td:nth-of-type(8),
table.align-center-9 td:nth-of-type(9),
table.align-center-10 td:nth-of-type(10),
table.align-center-11 td:nth-of-type(11),
table.align-center-12 td:nth-of-type(12),
table.align-center-13 td:nth-of-type(13),
table.align-center-14 td:nth-of-type(14),
table.align-center-15 td:nth-of-type(15),
table.align-center-16 td:nth-of-type(16),
table.align-center-17 td:nth-of-type(17),
table.align-center-18 td:nth-of-type(18),
table.align-center-19 td:nth-of-type(19),
table.align-center-20 td:nth-of-type(20) {
text-align: center;
}
table.align-left-1 td:nth-of-type(1),
table.align-left-2 td:nth-of-type(2),
table.align-left-3 td:nth-of-type(3),
table.align-left-4 td:nth-of-type(4),
table.align-left-5 td:nth-of-type(5),
table.align-left-6 td:nth-of-type(6),
table.align-left-7 td:nth-of-type(7),
table.align-left-8 td:nth-of-type(8),
table.align-left-9 td:nth-of-type(9),
table.align-left-10 td:nth-of-type(10),
table.align-left-11 td:nth-of-type(11),
table.align-left-12 td:nth-of-type(12),
table.align-left-13 td:nth-of-type(13),
table.align-left-14 td:nth-of-type(14),
table.align-left-15 td:nth-of-type(15),
table.align-left-16 td:nth-of-type(16),
table.align-left-17 td:nth-of-type(17),
table.align-left-18 td:nth-of-type(18),
table.align-left-19 td:nth-of-type(19),
table.align-left-20 td:nth-of-type(20) {
text-align: left;
}
:root {
--diff-addedline-border-color: #438ab5;
--diff-addedline-background: #bddff2;
--diff-addedline-color: #000;
--diff-deletedline-border-color: #379541;
--diff-deletedline-background: #c1edbf;
--diff-deletedline-color: #000;
--diff-context-border-color: var(--body-mid);
--diff-context-background: var(--body-mid);
}
.diff-context {
border-color: var(--diff-context-border-color);
background: var(--diff-context-background);
color: inherit;
}
.diff-addedline {
border-color: var(--diff-addedline-border-color);
}
.diff-addedline .diffchange {
background: var(--diff-addedline-background);
color: var(--diff-addedline-color);
}
.diff-deletedline {
border-color: var(--diff-deletedline-border-color);
}
.diff-deletedline .diffchange {
background: var(--diff-deletedline-background);
color: var(--diff-deletedline-color);
}
.mw-diff-movedpara-left:after,
.mw-diff-movedpara-right:after {
color: var(--text-color);
}
.mw-notification {
background-color: var(--body-light);
border-color: var(--body-border);
color: var(--text-color);
}
.mw-echo-ui-notificationsInboxWidget-toolbarWrapper {
background: var(--body-main);
}
.mw-body-content .mw-echo-ui-datedSubGroupListWidget-title-secondary {
color: var(--byline-color);
}
.mw-echo-ui-pageNotificationsOptionWidget.oo-ui-optionWidget-selected {
background-color: var(--ooui-normal);
color: var(--ooui-accent);
}
.mw-echo-ui-pageNotificationsOptionWidget-label-count {
background-color: var(--ooui-normal);
color: var(--byline-color);
}
.oo-ui-optionWidget-selected .mw-echo-ui-pageNotificationsOptionWidget-label-count {
color: var(--ooui-accent);
}
.mw-echo-ui-pageNotificationsOptionWidget.oo-ui-optionWidget-highlighted {
background-color: var(--ooui-normal);
color: var(--text-color);
}
.mw-echo-ui-crossWikiUnreadFilterWidget {
border-color: var(--body-border);
}
.mw-echo-ui-crossWikiUnreadFilterWidget-subtitle {
color: var(--byline-color);
}
.mw-echo-ui-notificationBadgeButtonPopupWidget-popup > .oo-ui-popupWidget-popup > .oo-ui-popupWidget-head,
.mw-echo-ui-notificationBadgeButtonPopupWidget-popup > .oo-ui-popupWidget-popup > .oo-ui-popupWidget-footer {
border-color: var(--ooui-interface-border);
}
.mw-echo-ui-notificationBadgeButtonPopupWidget-popup > .oo-ui-popupWidget-popup > .oo-ui-popupWidget-footer .mw-echo-ui-notificationBadgeButtonPopupWidget-footer-buttons .oo-ui-buttonElement:last-child {
border-left-color: var(--ooui-normal-border);
}
.mw-echo-ui-notificationItemWidget {
background-color: var(--ooui-normal);
border-color: var(--ooui-normal-border);
}
.mw-echo-ui-notificationItemWidget:hover,
.mw-echo-ui-notificationItemWidget-unread:hover {
background-color: var(--ooui-normal--hover);
}
.mw-echo-ui-notificationItemWidget:last-child {
border-bottom-color: var(--ooui-normal-border);
}
.mw-echo-ui-notificationItemWidget-unread {
background-color: var(--search-box);
}
.mw-echo-ui-crossWikiNotificationItemWidget-group,
.mw-echo-ui-bundleNotificationItemWidget-group {
background-color: var(--ooui-interface);
}
.mw-echo-ui-toggleReadCircleButtonWidget-circle {
background-color: var(--ooui-progressive);
}
.mw-echo-ui-toggleReadCircleButtonWidget:hover .mw-echo-ui-toggleReadCircleButtonWidget-circle {
background-color: var(--ooui-progressive--hover);
}
.mw-echo-ui-toggleReadCircleButtonWidget-circle-unread {
background-color: var(--ooui-normal);
border-color: var(--ooui-normal-border);
}
.mw-echo-ui-notificationItemWidget-content-message-header,
.mw-echo-ui-notificationItemWidget-content-message-body,
.mw-echo-ui-menuItemWidget > .oo-ui-buttonElement-button > .oo-ui-labelElement-label,
.mw-echo-ui-notificationItemWidget-content-actions-timestamp {
color: var(--ooui-text);
}
.mw-echo-ui-bundleNotificationItemWidget-group {
background-color: var(--body-main);
}
@keyframes unseen-fadeout-to-unread {
from {
background-color: var(--wikitable-bg-lighter);
}
to {
background-color: var(--search-box);
}
}
@keyframes unseen-fadeout-to-read {
from {
background-color: var(--wikitable-bg-lighter);
}
to {
background-color: var(--body-main);
}
}
.mwe-popups {
background: var(--body-light);
}
.mwe-popups .mwe-popups-container {
color: var(--text-color);
background: var(--body-light);
}
.mwe-popups .mwe-popups-container.flipped-x-y:before,
.mwe-popups .mwe-popups-container.flipped-y:before {
border-top: none;
}
.mwe-popups .mwe-popups-container.mwe-popups-no-image-tri:before {
border-bottom: none;
}
.mwe-popups .mwe-popups-container.flipped-x-y:after,
.mwe-popups .mwe-popups-container.flipped-y:after {
border-top-color: var(--body-light);
}
.mwe-popups .mwe-popups-container.mwe-popups-no-image-tri:after {
border-bottom-color: var(--body-light);
}
.mwe-popups .mwe-popups-settings-icon:hover,
.mwe-popups .mwe-popups-settings-icon:active {
background-color: var(--ooui-normal--hover);
}
.mwe-popups .mw-ui-icon-element:not(.disabled):hover {
background: none;
}
.mwe-popups .mwe-popups-extract {
color: var(--text-color);
}
.mwe-popups .mwe-popups-extract[dir='ltr']:after {
background-image: linear-gradient(to right, rgba(49, 62, 89, 0), var(--body-light) 50%);
}
.mwe-popups-overlay {
background-color: var(--ooui-window-background);
}
#mwe-popups-settings {
background: var(--ooui-interface);
border-color: var(--ooui-interface-border);
color: var(--text-color);
}
#mwe-popups-settings header {
border-color: var(--ooui-interface-border);
}
#mwe-popups-settings main#mwe-popups-settings-form p {
color: var(--byline-color);
}
#mwe-popups-settings main#mwe-popups-settings-form form label > span {
color: var(--ooui-text);
}
:root {
--smw-ask-options-even-bg: var(--body-mid);
--smw-ask-options-odd-bg: var(--body-light);
--smw-ask-action-btn-lblue-bg: var(--body-main);
--smw-ask-action-btn-lblue-color: #000;
--smw-ask-action-btn-lblue-border-color: var(--body-light);
--smw-ask-action-btn-dblue-bg: var(--body-light);
--smw-ask-action-btn-dblue-color: #fff;
--smw-ask-action-btn-dblue-border-color: var(--button-border);
}
.smw-ask-condition fieldset,
.smw-ask-printhead fieldset {
border-color: var(--sidebar);
}
.smw-ask-search fieldset,
.smw-ask-format fieldset,
.smw-ask-options fieldset {
border-color: var(--sidebar);
}
.strike > span:before,
.strike > span:after {
background: var(--sidebar);
}
.smw-ask-options-fields tr td {
background-color: var(--smw-ask-options-even-bg);
}
.smw-ask-options-fields tr:nth-child(odd) td {
background-color: var(--smw-ask-options-odd-bg);
}
.smw-ask-action-btn.smw-ask-action-btn-lblue,
.smw-ask-action-btn.smw-ask-action-btn-lblue:hover,
.smw-ask-action-btn.smw-ask-action-btn-lblue:visited {
background-color: var(--smw-ask-action-btn-lblue-bg);
color: var(--smw-ask-action-btn-lblue-color);
border-color: var(--smw-ask-action-btn-lblue-border-color);
}
.smw-ask-action-btn.smw-ask-action-btn-dblue,
.smw-ask-action-btn.smw-ask-action-btn-dblue:hover,
.smw-ask-action-btn.smw-ask-action-btn-dblue:visited {
background-color: var(--smw-ask-action-btn-dblue-bg);
color: var(--smw-ask-action-btn-dblue-color);
border-color: var(--smw-ask-action-btn-dblue-border-color);
}
.smw-ask-query textarea,
.smw-ask-actions textarea {
background-color: var(--ooui-interface);
border-color: var(--ooui-interface-border);
color: var(--ooui-text);
}
.smw-ask-query-format select {
background-color: var(--ooui-interface);
border: 1px solid var(--ooui-interface-border);
color: var(--ooui-text);
}
.smw-ask-toplinks {
background-color: var(--body-mid);
}
.smw-ask-toplinks span.smw-icon-info {
background: none;
padding: 0 !important;
}
.smw-ask-toplinks span.smw-icon-info::before {
content: '';
background: var(--text-color);
-webkit-mask: url("data:image/svg+xml,%3C%3Fxml version='1.0' encoding='UTF-8'%3F%3E%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 20 20'%3E%3Ctitle%3Einfo%3C/title%3E%3Cpath d='M10 0C4.477 0 0 4.477 0 10s4.477 10 10 10 10-4.477 10-10S15.523 0 10 0zM9 5h2v2H9zm0 4h2v6H9z'/%3E%3C/svg%3E") no-repeat 50% 50% / contain;
mask: url("data:image/svg+xml,%3C%3Fxml version='1.0' encoding='UTF-8'%3F%3E%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 20 20'%3E%3Ctitle%3Einfo%3C/title%3E%3Cpath d='M10 0C4.477 0 0 4.477 0 10s4.477 10 10 10 10-4.477 10-10S15.523 0 10 0zM9 5h2v2H9zm0 4h2v6H9z'/%3E%3C/svg%3E") no-repeat 50% 50% / contain;
padding: 0 0 3px 18px;
}
.smw-ask-options-row-odd {
background-color: var(--body-light);
}
.smw-ask-options-row-even {
background-color: var(--body-mid);
}
#options-toggle:not(:checked) + #options-list .options-parameter-list:after {
background-image: linear-gradient(to bottom, transparent, var(--body-mid) 90%);
}
.smw-ask-button-submit input {
background-color: var(--ooui-normal);
border-color: var(--ooui-normal-border);
color: var(--text-color);
}
.smw-ask-button-submit input:hover,
.smw-ask-button-lgrey:hover {
background-color: var(--ooui-normal--hover);
border-color: var(--ooui-normal-border);
}
input.smw-ask-action-btn.smw-ask-action-btn-dblue {
background-color: var(--ooui-normal);
border-color: var(--ooui-normal-border);
color: var(--ooui-text);
}
a.smw-ask-action-btn.smw-ask-action-btn-lblue {
background-color: var(--body-mid);
border-color: var(--body-mid);
color: var(--ooui-text);
}
a.smw-ask-action-btn.smw-ask-action-btn-lblue:visited {
background-color: var(--body-mid);
border-color: var(--body-mid);
color: var(--ooui-text);
}
a.smw-ask-action-btn.smw-ask-action-btn-lblue:hover {
background-color: var(--body-mid);
border-color: var(--body-mid);
color: var(--ooui-text);
}
a.smw-ask-action-btn-lgrey {
background-color: var(--ooui-normal);
border-color: var(--ooui-normal-border);
color: var(--ooui-text);
}
a.smw-ask-action-btn-lgrey:hover {
background-color: var(--ooui-normal--hover);
border-color: var(--ooui-normal-border);
color: var(--ooui-text);
}
.smw-callout-error {
background-color: var(--errorbox-bg);
border-color: var(--errorbox-border);
}
.smw-callout-info {
background-color: var(--body-light);
border-color: var(--body-dark);
}
.smw-callout-success {
background-color: var(--successbox-bg);
border-color: var(--successbox-border);
}
.smw-callout-warning {
background-color: var(--warningbox-bg);
border-color: var(--warningbox-bg);
}
.smw-tabs input.nav-tab:checked + label.nav-label,
.smw-tabs input.nav-tab:checked + label.nav-label:hover {
color: inherit;
}
#tab-smw-property-value:checked + label.nav-label .usage-count {
color: #fff;
background-color: var(--ooui-progressive);
}
#tab-smw-property-value:checked + label.nav-label .usage-count.moderate {
color: #fff;
background-color: #b55e0c;
border-color: #b55e0c;
}
#tab-smw-property-value:checked + label.nav-label .usage-count.high {
color: #fff;
background-color: #9f261e;
border-color: #9f261e;
}
.smw-property-page-results .header-title {
background-color: var(--ooui-interface);
border-bottom-color: var(--ooui-interface-border);
color: var(--ooui-text);
}
.smw-property-page-results .value-row:hover {
background-color: var(--ooui-normal--hover);
}
.smw-property-page-results .smw-table .header-row {
color: var(--text-color);
}
.tippy-tooltip.light-border-theme {
background-color: var(--body-light);
color: var(--text-color);
}
.tippy-tooltip.light-border-theme .tippy-arrow {
border-top-color: var(--body-light);
}
.tippy-tooltip.light-border-theme .tippy-arrow:after {
border-top-color: var(--body-light);
}
.tippy-header {
background-color: var(--body-dark);
border-bottom-color: var(--body-mid);
}
.smw-ui-input-filter {
background-color: var(--ooui-interface);
border-color: var(--ooui-interface-border);
color: var(--ooui-text);
}
.smw-ui-input-filter input {
border-left-color: var(--ooui-interface-border) !important;
color: var(--ooui-text) !important;
}
.smw-ui-pagination .page-link.link-disabled {
background-color: var(--ooui-disabled);
border-color: var(--ooui-disabled-border);
color: var(--subtle-color);
}
.smw-ui-pagination .page-link {
background-color: var(--ooui-normal);
border-color: var(--ooui-normal-border);
color: var(--link-color);
}
.smw-ui-pagination .page-link:hover {
background-color: var(--ooui-normal--hover);
border-color: var(--ooui-normal-border);
color: var(--link-color);
}
.smw-ui-pagination .page-link.link-active {
color: #fff;
background-color: var(--ooui-progressive);
border-color: var(--ooui-progressive);
}
.smw-tabs input.nav-tab:checked + label.nav-label {
border-color: var(--ooui-normal-border);
}
.smw-tabs section,
.smw-tabs .subtab-content {
border-top-color: var(--ooui-normal-border);
}
.smw-column-header {
color: var(--text-color);
}
.smw-factbox {
background: var(--body-main);
border-color: transparent;
}
.mw-body .mw-indicators #mw-indicator-smw-entity-examiner.mw-indicator .smw-indicator-vertical-bar-loader {
display: none;
}
.smwb-theme-light .smwb-title,
.smwb-theme-light .smwb-center,
.smwb-theme-light .smwb-actions,
.smwb-theme-light .smwb-prophead {
background-color: var(--body-mid);
}
.smwb-theme-light .smwb-factbox {
border-left-color: var(--body-mid);
}
.smwb-theme-light .smwb-ifactbox {
border-right-color: var(--body-mid);
}
.smwb-theme-light .smwb-propval {
background-color: var(--body-light);
}
.smwb-action-separator {
border-color: var(--wikitable-border);
}
.smwb-bottom {
border-bottom: 1px solid var(--wikitable-border);
}
.smwb-ifactbox .smwb-cell,
.smwb-factbox .smwb-cell {
border-top: 1px solid var(--wikitable-border);
}
.smwb-propvalue .smwb-prophead,
.smwb-ipropvalue .smwb-prophead,
.smwb-propvalue .smwb-propval,
.smwb-ipropvalue .smwb-propval {
font-size: 0.9em;
}
:root {
--filter-black-to-link: invert(36%) sepia(58%) saturate(433%) hue-rotate(344deg) brightness(100%) contrast(91%);
}
#bodyContent span.smwbrowse a {
color: black;
background-image: url('filepath://Smwbrowse.svg');
filter: var(--filter-black-to-link);
}
#bodyContent span.smwbrowse a:hover {
color: black;
background-image: url('filepath://Smwbrowse-hover.svg');
text-decoration: underline;
}
#bodyContent span.smwsearch a {
color: black;
filter: var(--filter-black-to-link);
background-image: url('filepath://Smwsearch.svg');
}
#bodyContent span.smwsearch a:hover {
color: black;
background-image: url('filepath://Smwsearch-hover.svg');
text-decoration: underline;
}
:root {
--tabber-tab-bg: var(--body-light);
--tabber-tab-border-color: var(--body-border);
--tabber-active-tab-bg: var(--body-light);
--tabber-active-tab-color: var(--text-color);
--tabber-active-tab-hover-bg: var(--body-light);
--tabber-active-tab-hover-border-color: var(--body-border);
--tabber-active-tab-hover-color: var(--text-color);
--tabber-active-tab-border-hider-color: var(--body-light);
--tabber-inactive-tab-bg: var(--body-background-color);
--tabber-inactive-tab-border-color: var(--body-border);
--tabber-inactive-tab-color: var(--text-color);
--tabber-inactive-tab-hover-bg: var(--body-light);
--tabber-inactive-tab-hover-border-color: var(--body-border);
}
.tabber {
margin: 1em 0;
}
.tabber .tabbertab {
background-color: var(--tabber-tab-bg);
border: 1px solid var(--tabber-tab-border-color);
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
padding: 1em 1.5em;
}
ul.tabbernav {
border: none;
margin-left: 2em;
margin-bottom: 0;
margin-right: 2em;
padding: 0;
font-family: inherit;
}
ul.tabbernav li.tabberactive > a {
background-color: var(--tabber-active-tab-bg);
color: var(--tabber-active-tab-color);
border-bottom: none;
position: relative;
}
ul.tabbernav li.tabberactive > a:hover {
color: var(--tabber-active-tab-hover-color);
background-color: var(--tabber-active-tab-hover-bg);
border-color: var(--tabber-active-tab-hover-border-color);
border-bottom: none;
}
ul.tabbernav li.tabberactive > a::after {
content: '';
position: absolute;
left: 0;
right: 0;
bottom: -1px;
border-bottom: 2px solid var(--tabber-active-tab-border-hider-color);
}
ul.tabbernav li a {
background-color: var(--tabber-inactive-tab-bg);
border-bottom: transparent;
border-color: var(--tabber-inactive-tab-border-color);
color: var(--tabber-inactive-tab-color);
display: inline-block;
font-size: 110%;
padding: 0.5em 1em;
}
ul.tabbernav li a:hover {
background-color: var(--tabber-inactive-tab-hover-bg);
border-color: var(--tabber-inactive-tab-hover-border-color);
}
ul.tabbernav li a:link,
ul.tabbernav li a:visited {
color: var(--tabber-inactive-tab-color);
}
:root {
--ooui-text: var(--text-color);
--ooui-interface: var(--body-light);
--ooui-interface-border: var(--body-border);
--ooui-window-background: rgba(255, 255, 255, 0.5);
--ooui-normal: #cdb3a6;
--ooui-normal--hover: #d8c4ba;
--ooui-normal-border: #d1b9ad;
--ooui-progressive: #936243;
--ooui-progressive--hover: #b27a57;
--ooui-accent: var(--link-color);
--ooui-input: #fff;
--ooui-input-border: #d1b9ad;
--ooui-input-border--hover: #ae846f;
--ooui-disabled: #c9c3bf;
--ooui-disabled-border: #dfd6d2;
--ooui-disabled-text: var(--subtle-color);
--ooui-pending-background-image: repeating-linear-gradient(-45deg, var(--search-box), var(--search-box) 20px, var(--body-main) 20px, var(--body-main) 30px);
}
.oo-ui-widget {
color: var(--ooui-text);
}
.oo-ui-checkboxInputWidget [type='checkbox'] + span,
.oo-ui-radioInputWidget [type='radio'] + span {
background-color: var(--ooui-input);
border-color: var(--ooui-input-border);
}
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:checked + span,
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:indeterminate + span {
background-color: var(--ooui-progressive);
border-color: var(--ooui-progressive);
}
.oo-ui-radioInputWidget.oo-ui-widget-enabled [type='radio']:checked + span {
border-color: var(--ooui-progressive);
}
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:checked:hover + span,
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:indeterminate:hover + span {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
}
.oo-ui-radioInputWidget.oo-ui-widget-enabled [type='radio']:checked:hover + span {
border-color: var(--ooui-progressive--hover);
}
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:hover + span,
.oo-ui-radioInputWidget.oo-ui-widget-enabled [type='radio']:hover + span {
border-color: var(--ooui-accent);
}
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:focus + span {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:active + span,
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:checked:active + span,
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:indeterminate:active + span {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
box-shadow: inset 0 0 0 1px var(--ooui-progressive--hover);
}
.oo-ui-radioInputWidget.oo-ui-widget-enabled [type='radio']:active + span {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
}
.oo-ui-radioInputWidget.oo-ui-widget-enabled [type='radio']:checked:active + span {
border-color: var(--ooui-progressive--hover);
box-shadow: inset 0 0 0 1px var(--ooui-progressive--hover);
}
.oo-ui-radioInputWidget.oo-ui-widget-enabled [type='radio']:checked:active + span:before {
border-color: var(--ooui-progressive--hover);
}
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:checked:focus + span,
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:indeterminate:focus + span {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent), inset 0 0 0 2px #fff;
}
.oo-ui-checkboxInputWidget [type='checkbox']:disabled + span,
.oo-ui-radioInputWidget [type='radio']:disabled + span {
background-color: var(--ooui-disabled);
border-color: var(--ooui-disabled);
}
.oo-ui-dropdownWidget-handle {
border-color: var(--ooui-normal-border);
}
.oo-ui-dropdownWidget.oo-ui-widget-enabled .oo-ui-dropdownWidget-handle {
background-color: var(--ooui-normal);
color: var(--ooui-text);
}
.oo-ui-dropdownWidget.oo-ui-widget-enabled .oo-ui-dropdownWidget-handle:hover {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
}
.oo-ui-dropdownWidget.oo-ui-widget-enabled .oo-ui-dropdownWidget-handle:active {
color: var(--ooui-text);
}
.oo-ui-dropdownWidget.oo-ui-widget-enabled .oo-ui-dropdownWidget-handle:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-dropdownWidget.oo-ui-widget-enabled.oo-ui-dropdownWidget-open .oo-ui-dropdownWidget-handle {
background-color: var(--ooui-normal--hover);
}
.oo-ui-dropdownWidget.oo-ui-widget-disabled .oo-ui-dropdownWidget-handle {
color: var(--ooui-disabled-text);
text-shadow: none;
border-color: var(--ooui-disabled-border);
background-color: var(--ooui-disabled);
}
.oo-ui-dropdownInputWidget select {
border-color: var(--ooui-normal-border);
}
.oo-ui-dropdownInputWidget option {
background-color: var(--ooui-interface);
}
.oo-ui-dropdownInputWidget.oo-ui-widget-enabled {
background-color: var(--ooui-normal);
}
.oo-ui-dropdownInputWidget.oo-ui-widget-enabled:hover {
background-color: var(--ooui-normal--hover);
}
.oo-ui-dropdownInputWidget.oo-ui-widget-enabled select {
color: var(--ooui-text);
}
.oo-ui-dropdownInputWidget.oo-ui-widget-enabled select:hover,
.oo-ui-dropdownInputWidget.oo-ui-widget-enabled select:active {
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
}
.oo-ui-dropdownInputWidget.oo-ui-widget-enabled select:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-labelWidget.oo-ui-inline-help {
color: var(--byline-color);
}
.oo-ui-menuSelectWidget {
background-color: var(--ooui-interface);
border-color: var(--ooui-interface-border);
}
.oo-ui-menuSelectWidget-frameless {
box-shadow: inset 0 -1px 0 0 var(--ooui-normal-border);
}
.oo-ui-menuSectionOptionWidget {
color: var(--byline-color);
}
.oo-ui-menuOptionWidget.oo-ui-optionWidget-highlighted,
.oo-ui-menuOptionWidget.oo-ui-optionWidget-selected {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
}
.oo-ui-menuOptionWidget.oo-ui-optionWidget-selected.oo-ui-menuOptionWidget.oo-ui-optionWidget-highlighted,
.oo-ui-menuOptionWidget.oo-ui-optionWidget-pressed.oo-ui-menuOptionWidget.oo-ui-optionWidget-highlighted {
color: var(--ooui-accent);
}
.oo-ui-menuOptionWidget.oo-ui-widget-enabled.oo-ui-optionWidget {
color: var(--ooui-text);
}
.oo-ui-messageDialog-title {
color: inherit;
}
.oo-ui-messageWidget.oo-ui-messageWidget-block.oo-ui-flaggedElement-error {
background-color: var(--errorbox-bg);
border-color: var(--errorbox-border);
}
.oo-ui-messageWidget.oo-ui-messageWidget-block.oo-ui-flaggedElement-warning {
background-color: var(--warningbox-bg);
border-color: var(--warningbox-border);
}
.oo-ui-messageWidget.oo-ui-messageWidget-block.oo-ui-flaggedElement-success {
background-color: var(--successbox-bg);
border-color: var(--successbox-border);
}
.oo-ui-messageWidget.oo-ui-messageWidget-block.oo-ui-flaggedElement-notice {
background-color: var(--messagebox-info-background);
border-color: var(--messagebox-info-border);
}
.oo-ui-messageWidget.oo-ui-flaggedElement-error:not(.oo-ui-messageWidget-block),
.oo-ui-messageWidget.oo-ui-flaggedElement-success:not(.oo-ui-messageWidget-block) {
color: var(--ooui-text);
}
.oo-ui-optionWidget.oo-ui-widget-disabled {
color: var(--ooui-disabled-text);
}
.oo-ui-outlineControlsWidget {
background-color: var(--ooui-normal);
}
.oo-ui-outlineOptionWidget.oo-ui-optionWidget-highlighted {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
}
.oo-ui-popupWidget-popup {
background-color: var(--ooui-interface);
border-color: var(--ooui-interface-border);
}
.oo-ui-popupWidget-anchored-top .oo-ui-popupWidget-anchor:after {
border-bottom-color: var(--ooui-interface);
}
.oo-ui-popupWidget-anchored-top .oo-ui-popupWidget-anchor:before {
border-bottom-color: var(--ooui-interface-border);
}
.oo-ui-popupWidget-anchored-bottom .oo-ui-popupWidget-anchor:after {
border-top-color: var(--ooui-interface);
}
.oo-ui-popupWidget-anchored-bottom .oo-ui-popupWidget-anchor:before {
border-top-color: var(--ooui-interface-border);
}
.oo-ui-popupWidget-anchored-start .oo-ui-popupWidget-anchor:after {
border-right-color: var(--ooui-interface);
}
.oo-ui-popupWidget-anchored-start .oo-ui-popupWidget-anchor:before {
border-right-color: var(--ooui-interface-border);
}
.oo-ui-popupWidget-anchored-end .oo-ui-popupWidget-anchor:after {
border-left-color: var(--ooui-interface);
}
.oo-ui-popupWidget-anchored-end .oo-ui-popupWidget-anchor:before {
border-left-color: var(--ooui-interface-border);
}
.oo-ui-searchWidget-query {
border-bottom-color: var(--ooui-interface-border);
}
.oo-ui-selectFileWidget-dropTarget {
background-color: var(--ooui-interface);
border-color: var(--ooui-interface-border);
}
.oo-ui-selectFileWidget.oo-ui-widget-enabled.oo-ui-selectFileWidget-dropTarget {
background-color: var(--ooui-interface);
}
.oo-ui-selectFileWidget.oo-ui-widget-enabled.oo-ui-selectFileWidget-dropTarget:hover {
border-color: var(--ooui-input-border--hover);
}
.oo-ui-tabOptionWidget {
color: var(--ooui-text);
}
.oo-ui-tabSelectWidget-framed .oo-ui-tabOptionWidget.oo-ui-optionWidget-selected {
background-color: var(--body-dark);
color: var(--ooui-text);
}
.oo-ui-tabSelectWidget-framed .oo-ui-tabOptionWidget.oo-ui-optionWidget-selected .oo-ui-labelElement-label {
border-bottom-color: var(--body-border);
}
.oo-ui-tabSelectWidget-framed .oo-ui-tabOptionWidget.oo-ui-widget-enabled:hover,
.oo-ui-tabSelectWidget-framed .oo-ui-tabOptionWidget.oo-ui-widget-enabled:active {
background-color: var(--body-light);
color: var(--ooui-text);
}
.oo-ui-tabSelectWidget-framed .oo-ui-tabOptionWidget.oo-ui-widget-enabled.oo-ui-optionWidget-selected:hover {
background-color: var(--body-dark);
}
.oo-ui-tabSelectWidget-frameless .oo-ui-tabOptionWidget.oo-ui-optionWidget-selected {
color: var(--ooui-progressive);
box-shadow: inset 0 -2px 0 0 var(--ooui-progressive);
}
.oo-ui-tabSelectWidget-frameless .oo-ui-tabOptionWidget.oo-ui-optionWidget-selected:hover,
.oo-ui-tabSelectWidget-frameless .oo-ui-tabOptionWidget.oo-ui-optionWidget-selected:focus {
color: var(--ooui-progressive--hover);
box-shadow: inset 0 -2px 0 0 var(--ooui-progressive--hover);
}
.oo-ui-tabSelectWidget-framed {
background: none;
border-bottom: 1px solid var(--ooui-interface-border);
}
.oo-ui-tabSelectWidget-frameless {
box-shadow: inset 0 -1px 0 0 var(--ooui-interface-border);
}
.oo-ui-tabSelectWidget-mobile {
}
.oo-ui-tabSelectWidget-mobile.oo-ui-tabSelectWidget-framed:after {
background: var(--mobile-navbox-linear-gradient);
}
.oo-ui-tabSelectWidget-mobile.oo-ui-tabSelectWidget-frameless:after {
background: var(--mobile-navbox-linear-gradient);
}
.oo-ui-tagItemWidget {
border-color: var(--ooui-normal-border);
}
.oo-ui-tagItemWidget.oo-ui-widget-enabled {
color: var(--ooui-text);
}
.oo-ui-tagItemWidget.oo-ui-widget-enabled:hover {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
}
.oo-ui-tagItemWidget.oo-ui-widget-enabled:not( .oo-ui-tagItemWidget-fixed ) {
background-color: var(--ooui-normal);
}
.oo-ui-tagItemWidget.oo-ui-widget-enabled .oo-ui-buttonElement-button:hover {
background-color: var(--ooui-normal--hover);
}
.oo-ui-tagMultiselectWidget.oo-ui-widget-enabled {
background-color: var(--ooui-interface);
}
.oo-ui-tagMultiselectWidget.oo-ui-widget-enabled.oo-ui-tagMultiselectWidget-outlined {
background-color: var(--ooui-normal);
}
.oo-ui-tagMultiselectWidget.oo-ui-widget-enabled.oo-ui-tagMultiselectWidget-outlined .oo-ui-tagItemWidget.oo-ui-widget-enabled {
background-color: var(--ooui-interface);
}
.oo-ui-textInputWidget .oo-ui-inputWidget-input {
background-color: var(--ooui-input);
color: var(--ooui-text);
border-color: var(--ooui-input-border);
}
.oo-ui-textInputWidget.oo-ui-widget-enabled .oo-ui-inputWidget-input::placeholder {
color: var(--subtle-color);
}
.oo-ui-textInputWidget.oo-ui-widget-enabled .oo-ui-inputWidget-input:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-textInputWidget.oo-ui-widget-enabled .oo-ui-inputWidget-input[readonly]:not(.oo-ui-pendingElement-pending) {
background-color: var(--ooui-disabled);
color: var(--ooui-disabled-text);
}
.oo-ui-textInputWidget.oo-ui-widget-enabled:hover .oo-ui-inputWidget-input {
border-color: var(--ooui-input-border--hover);
}
.oo-ui-textInputWidget.oo-ui-widget-enabled:hover .oo-ui-inputWidget-input:focus {
border-color: var(--ooui-accent);
}
@media screen and (min-width: 0) {
.oo-ui-textInputWidget.oo-ui-widget-enabled textarea.oo-ui-inputWidget-input:focus {
outline: 1px solid var(--ooui-accent);
}
}
.oo-ui-textInputWidget.oo-ui-widget-disabled .oo-ui-inputWidget-input {
background-color: var(--ooui-disabled);
color: var(--ooui-disabled-text);
text-shadow: none;
border-color: var(--ooui-disabled-border);
}
.oo-ui-toggleSwitchWidget {
background-color: var(--ooui-input);
border-color: var(--ooui-input-border);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled .oo-ui-toggleSwitchWidget-grip {
background-color: var(--ooui-input);
border-color: var(--ooui-input-border);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:hover {
background-color: var(--ooui-input);
border-color: var(--ooui-accent);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:hover .oo-ui-toggleSwitchWidget-grip {
background-color: var(--ooui-input);
border-color: var(--ooui-accent);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:active,
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:active:hover,
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:active:focus {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
box-shadow: inset 0 0 0 1px var(--ooui-progressive--hover);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:active .oo-ui-toggleSwitchWidget-grip,
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:active:hover .oo-ui-toggleSwitchWidget-grip,
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:active:focus .oo-ui-toggleSwitchWidget-grip {
background-color: var(--ooui-input);
border-color: var(--ooui-input);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:focus .oo-ui-toggleSwitchWidget-grip {
border-color: var(--ooui-accent);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled.oo-ui-toggleWidget-on {
background-color: var(--ooui-progressive);
border-color: var(--ooui-progressive);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled.oo-ui-toggleWidget-on .oo-ui-toggleSwitchWidget-grip {
background-color: var(--ooui-input);
border-color: var(--ooui-input);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled.oo-ui-toggleWidget-on:hover {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled.oo-ui-toggleWidget-on:active,
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled.oo-ui-toggleWidget-on:active:hover {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled.oo-ui-toggleWidget-on:focus {
border-color: var(--ooui-progressive);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled.oo-ui-toggleWidget-on:focus::before {
border-color: #fff;
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-disabled {
background-color: var(--ooui-disabled);
border-color: var(--ooui-disabled);
}
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled > .oo-ui-buttonElement-button {
color: var(--ooui-text);
}
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled > .oo-ui-buttonElement-button:hover {
color: var(--ooui-text);
}
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled > .oo-ui-buttonElement-button:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled.oo-ui-buttonElement-pressed > input.oo-ui-buttonElement-button,
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled > .oo-ui-buttonElement-button:active {
color: var(--ooui-text);
}
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button,
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button:hover {
color: var(--ooui-text);
}
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button:active,
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive.oo-ui-buttonElement-pressed > .oo-ui-buttonElement-button {
color: var(--ooui-text);
border-color: var(--ooui-text);
}
.oo-ui-buttonElement-frameless.oo-ui-widget-disabled > .oo-ui-buttonElement-button {
color: var(--ooui-disabled-text);
}
.oo-ui-buttonElement-framed.oo-ui-widget-disabled > .oo-ui-buttonElement-button {
background-color: var(--ooui-disabled);
border-color: var(--ooui-disabled-border);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled > .oo-ui-buttonElement-button {
background-color: var(--ooui-normal);
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled > .oo-ui-buttonElement-button:hover {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled > .oo-ui-buttonElement-button:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-buttonElement-active > .oo-ui-buttonElement-button {
background-color: var(--ooui-progressive--hover);
color: #fff;
border-color: var(--ooui-progressive--hover);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-buttonElement-active > .oo-ui-buttonElement-button:focus {
border-color: var(--ooui-progressive--hover);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled > .oo-ui-buttonElement-button:active,
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-buttonElement-pressed > .oo-ui-buttonElement-button {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive {
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button {
color: var(--ooui-text);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button:hover {
background-color: var(--ooui-normal--hover);
border-color: var(--ooui-progressive--hover);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-destructive > .oo-ui-buttonElement-button {
color: var(--ooui-text);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-destructive > .oo-ui-buttonElement-button:hover {
background-color: var(--ooui-normal--hover);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button {
background-color: var(--ooui-progressive);
border-color: var(--ooui-progressive);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button:hover {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent), inset 0 0 0 2px #fff;
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button:active,
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive.oo-ui-buttonElement-pressed > .oo-ui-buttonElement-button,
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive.oo-ui-buttonElement-active > .oo-ui-buttonElement-button,
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive.oo-ui-popupToolGroup-active > .oo-ui-buttonElement-button {
color: #fff;
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
}
.oo-ui-pendingElement-pending {
background-image: var(--ooui-pending-background-image);
background-size: 200%;
animation: oo-ui-pendingElement-stripes 6s linear infinite;
}
@keyframes oo-ui-pendingElement-stripes {
100% {
background-position: 100%;
}
}
.oo-ui-messageDialog-content > .oo-ui-window-foot {
outline-color: var(--ooui-interface-border);
}
.oo-ui-messageDialog-message {
color: var(--ooui-text);
}
.oo-ui-messageDialog-actions-horizontal .oo-ui-actionWidget {
border-right-color: var(--ooui-interface-border);
}
.oo-ui-messageDialog-actions-vertical .oo-ui-actionWidget {
border-bottom-color: var(--ooui-interface-border);
}
.oo-ui-processDialog-content .oo-ui-window-head,
.oo-ui-processDialog-content .oo-ui-window-foot {
outline-color: var(--ooui-interface-border);
}
.oo-ui-processDialog .oo-ui-actionWidget > .oo-ui-buttonElement-button {
border-top-color: transparent;
border-bottom-color: transparent;
}
.oo-ui-processDialog .oo-ui-actionWidget > .oo-ui-buttonElement-button:hover,
.oo-ui-processDialog .oo-ui-actionWidget > .oo-ui-buttonElement-button:active {
border-top-color: transparent;
border-bottom-color: transparent;
}
.oo-ui-processDialog .oo-ui-actionWidget:not( .oo-ui-flaggedElement-progressive ):not( .oo-ui-flaggedElement-destructive ) > .oo-ui-buttonElement-button:hover,
.oo-ui-processDialog .oo-ui-actionWidget:not( .oo-ui-flaggedElement-progressive ):not( .oo-ui-flaggedElement-destructive ) > .oo-ui-buttonElement-button:active {
border-right-color: var(--ooui-interface-border);
border-left-color: transparent;
}
.oo-ui-processDialog .oo-ui-actionWidget:not( .oo-ui-flaggedElement-progressive ):not( .oo-ui-flaggedElement-destructive ) > .oo-ui-buttonElement-button:focus {
border-color: var(--ooui-accent);
}
.oo-ui-processDialog-actions-safe .oo-ui-actionWidget > .oo-ui-buttonElement-button,
.oo-ui-processDialog-actions-other .oo-ui-actionWidget > .oo-ui-buttonElement-button {
border-right-color: var(--ooui-normal-border);
border-left-color: transparent;
}
.oo-ui-processDialog-actions-safe .oo-ui-widget-enabled.oo-ui-iconElement:not( .oo-ui-labelElement ) > .oo-ui-buttonElement-button:hover {
background-color: var(--ooui-normal--hover);
border-right-color: var(--ooui-interface-border);
}
.oo-ui-windowManager-modal > .oo-ui-dialog {
background-color: var(--ooui-window-background);
}
.oo-ui-windowManager-modal > .oo-ui-dialog > .oo-ui-window-frame {
background-color: var(--ooui-interface);
}
.oo-ui-windowManager-modal.oo-ui-windowManager-floating > .oo-ui-dialog > .oo-ui-window-frame {
border-color: var(--ooui-interface-border);
}
.oo-ui-window {
color: var(--ooui-text);
}
.oo-ui-toolbar-bar {
background-color: var(--ooui-interface);
color: var(--ooui-text);
}
.oo-ui-toolbar-position-top > .oo-ui-toolbar-bar {
border-bottom-color: var(--body-mid);
}
.oo-ui-toolbar-bar .oo-ui-bookletLayout > .oo-ui-menuLayout-menu {
border-right-color: var(--body-mid);
}
.oo-ui-tool.oo-ui-widget-enabled > .oo-ui-tool-link:hover {
background-color: var(--ooui-normal--hover);
}
.oo-ui-tool.oo-ui-widget-enabled > .oo-ui-tool-link:focus {
outline: 1px solid var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-tool.oo-ui-widget-enabled > .oo-ui-tool-link:active,
.oo-ui-tool.oo-ui-widget-enabled.oo-ui-tool-active > .oo-ui-tool-link,
.oo-ui-tool.oo-ui-widget-enabled.oo-ui-popupToolGroup-active > .oo-ui-tool-link {
background-color: var(--ooui-normal--hover);
color: var(--ooui-accent);
box-shadow: none;
}
.oo-ui-tool.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive > .oo-ui-tool-link {
background-color: var(--ooui-progressive);
}
.oo-ui-tool.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive > .oo-ui-tool-link:hover {
background-color: var(--ooui-progressive--hover);
}
.oo-ui-tool.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive > .oo-ui-tool-link:focus {
box-shadow: inset 0 0 0 1px var(--ooui-accent), inset 0 0 0 2px #fff;
}
.oo-ui-tool.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive > .oo-ui-tool-link:active,
.oo-ui-tool.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive.oo-ui-tool-active > .oo-ui-tool-link {
background-color: var(--ooui-progressive--hover);
}
.oo-ui-listToolGroup-tools .oo-ui-tool.oo-ui-widget-enabled {
background-color: var(--ooui-normal);
}
.oo-ui-listToolGroup-tools .oo-ui-tool.oo-ui-widget-enabled:hover {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
}
.oo-ui-listToolGroup-tools .oo-ui-tool-active.oo-ui-widget-enabled .oo-ui-tool-link .oo-ui-tool-title {
color: var(--ooui-progressive);
}
.oo-ui-menuToolGroup {
border-left-color: var(--body-mid);
border-right-color: var(--body-mid);
}
.oo-ui-popupToolGroup-tools {
background-color: var(--ooui-interface);
border-color: var(--body-mid);
}
.oo-ui-popupToolGroup.oo-ui-widget-enabled > .oo-ui-popupToolGroup-handle:hover {
background-color: var(--ooui-normal--hover);
}
.oo-ui-popupToolGroup.oo-ui-widget-enabled > .oo-ui-popupToolGroup-handle:focus {
outline: 1px solid var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-toolbar-actions .oo-ui-popupToolGroup.oo-ui-widget-enabled > .oo-ui-popupToolGroup-handle:hover {
border-right-color: var(--ooui-normal--hover);
}
.oo-ui-popupToolGroup-tools .oo-ui-tool.oo-ui-widget-enabled .oo-ui-tool-link:focus {
box-shadow: inset 0 0 0 2px var(--ooui-accent);
}
.oo-ui-popupToolGroup-tools .oo-ui-tool-active.oo-ui-widget-enabled .oo-ui-tool-link .oo-ui-tool-title {
color: var(--ooui-progressive);
}
.oo-ui-popupToolGroup.oo-ui-popupToolGroup-active > .oo-ui-popupToolGroup-handle {
background-color: var(--ooui-normal);
color: var(--ooui-accent);
}
.oo-ui-popupToolGroup.oo-ui-popupToolGroup-active > .oo-ui-popupToolGroup-handle:hover {
background-color: var(--ooui-normal--hover);
color: var(--ooui-accent);
}
.oo-ui-bookletLayout-outlinePanel > .oo-ui-outlineControlsWidget {
border-top-color: var(--ooui-interface-border);
}
.oo-ui-bookletLayout > .oo-ui-menuLayout-menu {
border-right-color: var(--ooui-interface-border);
}
.oo-ui-fieldLayout-disabled > .oo-ui-fieldLayout-body > .oo-ui-fieldLayout-header > .oo-ui-labelElement-label {
color: var(--ooui-disabled-text);
}
.oo-ui-panelLayout-framed {
border-color: var(--sidebar);
}
.oo-ui-icon-settings {
background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' width='20' height='20' viewBox='0 0 20 20'%3E%3Ctitle%3Esettings%3C/title%3E%3Cg transform='translate(10 10)'%3E%3Cpath id='a' d='M1.5-10h-3l-1 6.5h5m0 7h-5l1 6.5h3'/%3E%3Cuse xlink:href='%23a' transform='rotate(45)'/%3E%3Cuse xlink:href='%23a' transform='rotate(90)'/%3E%3Cuse xlink:href='%23a' transform='rotate(135)'/%3E%3C/g%3E%3Cpath d='M10 2.5a7.5 7.5 0 0 0 0 15 7.5 7.5 0 0 0 0-15v4a3.5 3.5 0 0 1 0 7 3.5 3.5 0 0 1 0-7'/%3E%3C/svg%3E");
}
.oo-ui-icon-clear {
background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 20 20'%3E%3Ctitle%3Eclear%3C/title%3E%3Cpath d='M10 0a10 10 0 1 0 10 10A10 10 0 0 0 10 0zm5.66 14.24-1.41 1.41L10 11.41l-4.24 4.25-1.42-1.42L8.59 10 4.34 5.76l1.42-1.42L10 8.59l4.24-4.24 1.41 1.41L11.41 10z'/%3E%3C/svg%3E");
}
.mw-widget-dateInputWidget-handle {
background-color: var(--ooui-input);
color: var(--ooui-text);
border-color: var(--ooui-input-border);
}
.mw-widget-dateInputWidget-calendar {
background-color: var(--ooui-interface);
}
.mw-widget-dateInputWidget.oo-ui-widget-enabled .mw-widget-dateInputWidget-handle:hover {
border-color: var(--ooui-input-border--hover);
}
.mw-widget-calendarWidget {
border-color: var(--ooui-interface-border);
}
.mw-widget-calendarWidget:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.mw-widget-calendarWidget-day,
.mw-widget-calendarWidget-day-heading {
color: var(--ooui-text);
}
.mw-widget-calendarWidget-day-additional {
color: var(--ooui-text);
opacity: 0.67;
}
.mw-widget-calendarWidget-day-today {
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.mw-widget-calendarWidget-item:hover {
background-color: var(--ooui-progressive);
}
.mw-widget-calendarWidget-item-selected {
background-color: var(--ooui-progressive--hover);
}
.mw-widgets-datetime-calendarWidget {
background-color: var(--ooui-interface);
border-color: var(--ooui-interface-border);
}
.mw-widgets-datetime-calendarWidget:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent), 0 2px 2px 0 rgba(0, 0, 0, 0.25);
}
.mw-widgets-datetime-calendarWidget-grid .mw-widgets-datetime-calendarWidget-cell.mw-widgets-datetime-calendarWidget-extra .oo-ui-buttonElement-button .oo-ui-labelElement-label {
color: var(--subtle-color);
}
.mw-widgets-datetime-calendarWidget-grid .mw-widgets-datetime-calendarWidget-cell.mw-widgets-datetime-calendarWidget-selected .oo-ui-buttonElement-button {
background-color: var(--ooui-progressive--hover);
}
.mw-widgets-datetime-dateTimeInputWidget-handle {
background-color: var(--ooui-input);
color: var(--ooui-text);
border-color: var(--ooui-input-border);
}
.mw-widgets-datetime-dateTimeInputWidget.oo-ui-widget-enabled.mw-widgets-datetime-dateTimeInputWidget-handle:hover {
border-color: var(--ooui-input-border--hover);
}
.mw-widgets-datetime-dateTimeInputWidget.oo-ui-widget-enabled:hover input,
.mw-widgets-datetime-dateTimeInputWidget.oo-ui-widget-enabled:hover textarea {
border-color: var(--ooui-input-border--hover);
}
.mw-widgets-datetime-dateTimeInputWidget.oo-ui-widget-enabled .mw-widgets-datetime-dateTimeInputWidget-editField:hover {
background-color: var(--ooui-normal);
}
.ve-activated .ve-init-mw-desktopArticleTarget-originalContent #catlinks:hover {
background: var(--ooui-normal--hover);
}
.ve-ui-overlay {
font-family: inherit;
}
.oo-ui-toolbar-position-top .ve-ui-toolbarDialog-position-above {
border-top-color: var(--body-mid);
}
.ve-ce-branchNode-blockSlug,
.ve-ce-branchNode-newSlug {
outline-color: var(--body-border);
background-color: var(--ooui-interface);
}
.ve-ui-specialCharacterPage h3 {
color: var(--byline-color);
}
.ve-ui-specialCharacterPage-character {
border-color: var(--body-mid);
}
.ve-ui-specialCharacterPage-character:hover {
border-color: var(--body-dark);
}
.ve-ce-linkAnnotation.ve-ce-annotation-active {
box-shadow: 0 0 0 1px var(--body-mid);
background: none;
}
.ve-ui-desktopContext .ve-ui-linkContextItem .ve-ui-linkContextItem-label {
border-color: var(--body-border);
}
.ve-ui-mwHelpPopupTool-version-label,
.ve-ui-mwHelpPopupTool-version-link,
.ve-ui-mwHelpPopupTool-version-date {
color: var(--byline-color);
}
.ve-ce-tableCellableNode {
border-color: var(--body-mid);
}
.ve-ce-mwReferencesListNode-muted {
color: var(--byline-color);
}
.ve-ui-mwTemplatePage-description,
.ve-ui-mwParameterPage-label,
.ve-ui-mwParameterPage-description-required,
.ve-ui-mwParameterPage-description-deprecated {
color: var(--byline-color);
}
.mw-widget-titleWidget-menu .mw-widget-titleOptionWidget-description {
color: var(--byline-color);
}
.ve-ui-mwGalleryDialog-menuLayout > .oo-ui-menuLayout-menu,
.ve-ui-mwGalleryDialog-innerMenuLayout > .oo-ui-menuLayout-menu,
.ve-ui-mwGalleryDialog .ve-ui-mwGalleryDialog-image-container,
.ve-ui-targetWidget {
border-color: var(--body-border);
}
.ve-ui-targetWidget:not(.oo-ui-pendingElement-pending) {
background-color: var(--body-main);
}
.ve-ui-mwSaveDialog {
color: var(--ooui-text);
}
.ve-ui-mwSaveDialog-options {
background-color: var(--ooui-interface);
border-color: var(--body-border);
}
.ve-ui-mwSaveDialog-summary {
background-color: var(--ooui-input);
}
.ve-ui-mwSaveDialog-editSummary-count {
border-color: var(--body-border);
}
.ve-ui-mwSaveDialog-license {
color: var(--byline-color);
}
.ve-ui-mwReferenceContextItem-muted {
color: var(--byline-color);
}
.ve-ui-mwNoticesPopupTool-items > div:not(:first-child),
.ve-ui-mwHelpPopupTool-item:not(:first-child) {
border-color: var(--body-border);
}
.ve-ui-mwTransclusionOutlineControlsWidget {
background-color: var(--ooui-interface);
border-top-color: var(--body-border);
}
.ve-ui-mwTransclusionOutlineTemplateWidget-sticky {
background-color: var(--ooui-interface);
}
.ve-ui-mwTransclusionOutlineTemplateWidget .ve-ui-mwTransclusionOutlineParameterWidget.oo-ui-optionWidget-highlighted {
color: var(--ooui-text);
}
.ve-ui-mwTransclusionOutlineTemplateWidget-no-template-parameters {
color: var(--subtle-color);
}
.ve-ui-mwParameterPage-undocumentedLabel {
color: var(--subtle-color);
}
.ve-ui-mwTwoPaneTransclusionDialogLayout > .oo-ui-menuLayout-menu {
border-right: var(--body-border);
}
.ve-ui-mwParameterPage-doc-required,
.ve-ui-mwParameterPage-doc-deprecated,
.ve-ui-mwParameterPage-inlineDescription .ve-ui-mwParameterPage-doc-example {
color: var(--byline-color);
}
.ve-ui-expandableContent-toggle {
background-color: var(--ooui-interface);
}
.ve-ui-expandableContent-fade {
background: linear-gradient(to right, rgba(255, 255, 255, 0) 0, var(--ooui-interface) 90%);
}
.ve-ui-commandHelpDialog-shortcut > kbd,
.ve-ui-commandHelpDialog-sequence > kbd {
background-color: var(--keypress-background);
color: var(--keypress-color);
border-color: var(--keypress-border);
box-shadow: none;
text-shadow: none;
}
.ve-init-mw-desktopArticleTarget-toolbarPlaceholder-floating .ve-init-mw-desktopArticleTarget-toolbarPlaceholder-bar {
background: var(--ooui-interface);
}
.ve-init-mw-desktopArticleTarget-toolbarPlaceholder-bar {
border-bottom-color: var(--body-mid);
}
figure[typeof~='mw:File/Thumb'],
figure[typeof~='mw:File/Frame'],
figure[typeof~='mw:Image/Thumb'],
figure[typeof~='mw:Video/Thumb'],
figure[typeof~='mw:Image/Frame'],
figure[typeof~='mw:Video/Frame'] {
border: none;
background-color: var(--thumb-bg);
}
figure[typeof~='mw:File/Thumb'] > a:first-child > *:first-child:not( .mw-broken-media ),
figure[typeof~='mw:File/Frame'] > a:first-child > *:first-child:not( .mw-broken-media ),
figure[typeof~='mw:Image/Thumb'] > a:first-child > *:first-child:not( .mw-broken-media ),
figure[typeof~='mw:Video/Thumb'] > a:first-child > *:first-child:not( .mw-broken-media ),
figure[typeof~='mw:Image/Frame'] > a:first-child > *:first-child:not( .mw-broken-media ),
figure[typeof~='mw:Video/Frame'] > a:first-child > *:first-child:not( .mw-broken-media ) {
border: none;
background: var(--thumb-bg);
}
figure[typeof~='mw:File/Thumb'] > figcaption,
figure[typeof~='mw:File/Frame'] > figcaption,
figure[typeof~='mw:Image/Thumb'] > figcaption,
figure[typeof~='mw:Video/Thumb'] > figcaption,
figure[typeof~='mw:Image/Frame'] > figcaption,
figure[typeof~='mw:Video/Frame'] > figcaption {
border: none;
background-color: var(--thumb-caption-bg);
padding: 4px 6px;
}
:root {
--keypress-background: #eee;
--keypress-border: #ccc;
--keypress-color: #333;
}
.toc .toctitle > * {
color: #fff;
}
.navbox .navbox-title {
color: #fff;
}
.archivelist {
background-color: var(--body-light);
border: solid 1px var(--body-border);
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
float: right;
margin: 5px;
padding: 5px;
text-align: center;
width: 120px;
}
.shortcut {
border: 1px solid var(--body-border);
background: var(--body-light);
float: right;
font-size: 0.8em;
margin: 0.5em 0em 0.5em 1em;
padding: 0.5em;
text-align: center;
}
.hatnote,
.seealso {
font-style: italic;
}
.hatnote i,
.seealso i {
font-style: normal;
}
div.hatnote,
div.seealso {
margin: 0.5em 1.6em;
}
div.hatnote + div.hatnote,
div.hatnote + div.seealso,
div.seealso + div.hatnote,
div.seealso + div.seealso {
margin-top: -0.5em;
}
.keypress {
background: var(--keypress-background);
color: var(--keypress-color);
font-family: inherit;
border: 1px solid var(--keypress-border);
border-radius: 2px;
font-size: 0.9em;
margin: 0 0.1em;
padding: 0.1em 0.4em;
white-space: nowrap;
}
:root {
--documentation-background: #f9fafa;
--documentation-link-color: #e4eaee;
--documentation-headers-color: #fff;
--documentation-header-background: #949eaa;
--documentation-subheader-background: #808c9a;
--documentation-border: #e4eaee;
}
.documentation {
background: var(--documentation-background);
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
margin: 1em 0;
}
.documentation pre,
.documentation code {
background-color: var(--documentation-background);
border-color: var(--documentation-border);
}
.documentation h2,
.documentation hr {
border-color: var(--documentation-border);
}
.documentation-header {
color: var(--documentation-headers-color);
background: var(--documentation-header-background);
font-weight: bold;
padding: 1em 1.5em;
}
.documentation-title {
font-size: 1.25em;
}
.documentation-subheader {
color: var(--documentation-headers-color);
background: var(--documentation-subheader-background);
padding: 0.5em 1.5em;
}
.documentation-subheader a,
.documentation-subheader a:visited,
.documentation-subheader a:active {
color: var(--documentation-link-color);
}
.documentation-documentation,
.documentation-links {
font-size: 0.85em;
}
.documentation-content {
padding: 1em 1.5em;
}
.mw-templatedata-doc-params dl:not(:empty) {
column-count: 3;
border-top: 1px solid var(--body-border);
margin-bottom: 0.5em;
}
.mw-templatedata-doc-params dt::after {
content: ":";
}
.mw-templatedata-doc-params dd,
.mw-templatedata-doc-params dt {
margin: 0.1em 2em;
min-width: auto;
}
.mw-templatedata-doc-muted {
color: var(--subtle-color);
font-style: italic;
}
:root {
--infobox-text-color: var(--text-color);
--table-header: var(--body-dark);
--table-subheader: var(--body-mid);
--table-body: var(--body-light);
--table-border: var(--body-border);
}
.infobox {
font-size: 0.85em;
width: 300px;
border-collapse: collapse;
float: right;
table-layout: fixed;
margin: 0.5em 0 1em 1em;
}
.infobox .infobox-buttons {
display: flex;
flex-wrap: wrap;
justify-content: center;
grid-gap: 3px;
margin-bottom: 3px;
}
.infobox .infobox-buttons .button {
background: var(--table-header);
padding: 0 5px;
font-weight: bold;
flex: 1 1 20%;
max-width: 20%;
color: #fff;
}
.infobox tbody {
border: 1px solid var(--table-border);
background: var(--table-body);
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(231, 215, 199, 0.5);
}
.infobox .infobox-header {
background: var(--table-header);
padding: 0.5em 0;
text-align: center;
color: #fff;
font-size: 1.15em;
font-weight: bold;
line-height: 1.4em;
}
.infobox .infobox-image {
text-align: center;
}
.infobox .infobox-subheader {
background: var(--table-subheader);
font-weight: bold;
text-align: center;
color: #fff;
}
.infobox .infobox-padding {
backgound: var(--table-body);
}
.infobox tr td:not(.infobox-padding) {
padding: 0.2em 0.5em;
}
.infobox th:not(.infobox-header):not(.infobox-subheader):not(.infobox-nested) {
border-right: 2px solid var(--table-subheader);
text-align: right;
padding: 0.2em 0.5em;
}
.hidden {
display: none;
}
ol.references,
.reflist {
font-size: 90%;
}
.reflist {
list-style-type: decimal;
}
.reflist .references {
font-size: 100%;
list-style-type: inherit;
}
.reflist-lower-alpha {
list-style-type: lower-alpha;
}
ol.references li:target,
sup.reference:target {
background-color: var(--body-light);
}
.hideQuotes .refhide {
display: none;
}
:root {
--messagebox-obsolete-background: #cfcfcf;
--messagebox-obsolete-border: #464646;
--messagebox-obsolete-color: var(--text-color);
--messagebox-obsolete-link-color: #6c6c6c;
--messagebox-info-background: #ebebeb;
--messagebox-info-border: #898989;
--messagebox-info-color: var(--text-color);
--messagebox-info-link-color: #6c6c6c;
--messagebox-action-background: #c7e8fa;
--messagebox-action-border: #0b5884;
--messagebox-action-color: var(--text-color);
--messagebox-action-link-color: #03436b;
--messagebox-warn-background: #dfc0ba;
--messagebox-warn-border: #861c10;
--messagebox-warn-color: var(--text-color);
--messagebox-warn-link-color: #8e221a;
--messagebox-safe-background: #d8f0d3;
--messagebox-safe-border: #1b8408;
--messagebox-safe-color: var(--text-color);
--messagebox-safe-link-color: #1b8408;
--messagebox-disambig-background: #ebebeb;
--messagebox-disambig-border: #898989;
--messagebox-disambig-color: var(--text-color);
--messagebox-disambig-link-color: #6c6c6c;
--messagebox-discord-background: #5865f2;
--messagebox-discord-border: #4c57d0;
--messagebox-discord-link-color: #d2e5fc;
}
.mw-message-box,
.mw-message-box-error,
.mw-message-box-warning,
.mw-message-box-success,
.usermessage {
color: var(--text-color);
}
.messagebox {
width: 65%;
margin: 0.5em auto;
border-left: 15px solid;
border-color: var(--body-dark);
background-color: var(--body-light);
box-sizing: border-box;
}
.messagebox.obsolete {
background-color: var(--messagebox-obsolete-background);
border-color: var(--messagebox-obsolete-border);
color: var(--messagebox-obsolete-color);
}
.messagebox.obsolete a,
.messagebox.obsolete a:visited,
.messagebox.obsolete a:active {
color: var(--messagebox-obsolete-link-color);
}
.messagebox.info {
background-color: var(--messagebox-info-background);
border-color: var(--messagebox-info-border);
color: var(--messagebox-info-color);
}
.messagebox.info a,
.messagebox.info a:visited,
.messagebox.info a:active {
color: var(--messagebox-info-link-color);
}
.messagebox.action {
background-color: var(--messagebox-action-background);
border-color: var(--messagebox-action-border);
color: var(--messagebox-action-color);
}
.messagebox.action a,
.messagebox.action a:visited,
.messagebox.action a:active {
color: var(--messagebox-action-link-color);
}
.messagebox.warn {
background-color: var(--messagebox-warn-background);
border-color: var(--messagebox-warn-border);
color: var(--messagebox-warn-color);
}
.messagebox.warn a,
.messagebox.warn a:visited,
.messagebox.warn a:active {
color: var(--messagebox-warn-link-color);
}
.messagebox.safe {
background-color: var(--messagebox-safe-background);
border-color: var(--messagebox-safe-border);
color: var(--messagebox-safe-color);
}
.messagebox.safe a,
.messagebox.safe a:visited,
.messagebox.safe a:active {
color: var(--messagebox-safe-link-color);
}
.messagebox.disambig {
background-color: var(--messagebox-disambig-background);
border-color: var(--messagebox-disambig-border);
color: var(--messagebox-disambig-color);
}
.messagebox.disambig a,
.messagebox.disambig a:visited,
.messagebox.disambig a:active {
color: var(--messagebox-disambig-link-color);
}
.messagebox.discord {
background-color: var(--messagebox-discord-background);
border-color: var(--messagebox-discord-border);
color: #fff;
}
.messagebox.discord a,
.messagebox.discord a:visited,
.messagebox.discord a:active {
color: var(--messagebox-discord-link-color);
}
.messagebox.discord a.external,
.messagebox.discord a:visited.external,
.messagebox.discord a:active.external {
font-style: italic;
}
.messagebox.stub {
width: 40%;
}
.messagebox.hasdialogue {
padding: 0 10px;
width: auto;
}
:root {
--byline-arrow-filter: invert(29%) sepia(0%) saturate(376%) hue-rotate(172deg) brightness(87%) contrast(80%);
--tile-border-color: var(--body-border);
--tile-background-color: var(--body-light);
--tile-link-button-color: #f5e9db;
--tile-link-button-highlight-color: #dfccb0;
--tile-dark-color: #fff;
--tile-dark-bg: #5d6773;
--tile-dark-link-color: #ccc;
--tile-dark-byline-color: rgba(255, 255, 255, 0.7);
--tile-dark-header-color: #fff;
}
.tile {
background: var(--tile-background-color);
border: 1px solid var(--tile-border-color);
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
padding: 1.5em 2em 1em;
max-width: 40em;
}
.tile h2 {
font-size: 1.4em;
font-weight: bold;
border: none;
margin: 0 0 0.4em;
}
.tile .byline + h2 {
margin-top: -0.5em;
}
.tile.dark {
color: var(--tile-dark-color);
background: var(--tile-dark-bg);
border: none;
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.3);
}
.tile.dark h2 {
color: var(--tile-dark-header-color);
}
.tile.dark a {
color: var(--tile-dark-link-color);
}
.tile.dark .byline {
color: var(--tile-dark-byline-color);
}
.byline {
font-size: 0.9em;
color: var(--byline-color);
}
.byline a {
color: var(--byline-color);
}
.tile-row {
display: flex;
flex-flow: row wrap;
margin-bottom: 1em;
}
.tile-halves {
display: flex;
flex-flow: row wrap;
border: 1px solid var(--tile-border-color);
background: var(--tile-background-color);
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
}
.tile-halves h2 {
font-size: 1.4em;
font-weight: bold;
border: none;
margin: 0 0 0.4em;
}
.tile-halves .byline + h2 {
margin-top: -0.5em;
}
.tile-top {
width: 100%;
padding: 1.3rem 1.5rem 0.6rem;
}
.tile-top.tile-image {
display: flex;
align-items: center;
background-color: var(--byline-color);
overflow: hidden;
padding: 0;
height: 13vw;
max-height: 12em;
transition: 0.4s ease-out;
}
.tile-halves:hover .tile-top.tile-image img {
transform: scale(1.1);
transition: 0.5s ease-out;
}
.tile-top.tile-image a {
width: 100%;
}
.tile-top.tile-image img {
width: 100%;
object-fit: cover;
max-height: 200px;
transition: 0.4s ease-out;
}
.tile-bottom {
background: var(--tile-background-color);
border-top: 1px solid var(--tile-border-color);
width: 100%;
padding: 1rem 1.5rem 0.6rem;
}
.tile-bottom.link-button {
align-self: flex-end;
padding: 0;
}
.tile-bottom.link-button a {
display: block;
text-align: center;
padding: 0.75em 1.5em 0.8em;
text-decoration: none;
}
.tile-bottom.read-more {
background: var(--tile-link-button-color);
transition: 0.3s ease-out;
}
.tile-bottom.read-more a {
color: var(--byline-color);
font-weight: bold;
text-align: right;
}
.tile-bottom.read-more:hover {
background: var(--tile-link-button-highlight-color);
}
.tile-bottom.read-more:hover .arrow {
transform: translateX(50%);
}
.tile-bottom.read-more .arrow {
filter: var(--byline-arrow-filter);
margin-left: 0.4em;
transition: 0.3s ease-out;
}
body.page-Main_Page.action-view .catlinks,
body.page-Main_Page.action-view #contentSub,
body.page-Main_Page.action-view #firstHeading,
body.page-Main_Page.action-view #siteNotice {
display: none;
}
body.page-Main_Page .mw-parser-output {
max-width: 75em;
margin: 0 auto;
}
body.page-Main_Page.action-view .catlinks,
body.page-Main_Page.action-view #contentSub,
body.page-Main_Page.action-view #siteNotice {
display: none;
}
.mainpage-header {
display: flex;
margin: 2.6em 1.75em 1.5em;
}
.mainpage-header .header-intro {
flex: 2;
}
.mainpage-header .header-intro h1 {
font-size: 2.5em;
font-weight: bold;
border: none;
margin: 0 0 0.15em;
}
.mainpage-header .header-intro p {
font-size: 1.1em;
line-height: 1.7em;
}
.mainpage-header .header-stats {
flex: 1;
display: flex;
justify-content: center;
align-items: center;
margin-top: -1em;
}
.mainpage-body {
display: grid;
grid-template-areas: "event event event" "update update update" "content content content" "left left right";
gap: 0.9rem;
grid-template-columns: repeat(3, 1fr);
}
.mainpage-body h2 a {
color: var(--text-color);
}
.mainpage-body .tile {
padding-left: 1.75em;
padding-right: 1.75em;
max-width: 100%;
}
.mainpage-body .tile-row {
width: 100%;
margin-bottom: 0;
}
.mainpage-body .tile-row {
display: grid;
gap: 0.9rem;
}
.mainpage-contents.tile-row {
display: flex;
}
.mainpage-contents.tile-row .tile-top {
height: 5.5rem;
}
.mainpage-left {
grid-area: left;
flex: 2;
display: flex;
flex-flow: column wrap;
}
.mainpage-left > * {
margin: 0 0 0.9rem;
}
.mainpage-right {
grid-area: right;
flex: 1;
display: flex;
flex-flow: column wrap;
}
.mainpage-right > * {
margin: 0 0 0.9rem;
}
.arrow {
background: url('filepath://White-chevron.svg') no-repeat;
display: inline-block;
height: 0.7rem;
width: 0.45rem;
vertical-align: middle;
}
.arrow.dark {
filter: invert(80%);
}
.mainpage-contents {
grid-area: content;
grid-template-columns: repeat(6, 1fr);
}
.mainpage-contents .tile-halves {
flex: 1;
}
.mainpage-contents .tile-top {
height: 4.5rem;
position: relative;
}
.mainpage-contents .tile-top.tile-image img {
height: auto;
}
.mainpage-contents h2 {
margin: 0;
padding: 0;
}
.mainpage-contents .tile-bottom.link-button a {
padding: 0.75em 0.2em;
}
.popular-pages ul {
display: grid;
grid-template-columns: repeat(3, 1fr);
grid-gap: 0.6em;
margin: 1em 0 0.7em 0;
}
.mp-popular-page-light {
display: flex;
align-items: center;
background-color: var(--button-background);
transition: 100ms;
}
.mp-popular-page-light a {
flex: 1;
display: block;
color: #fff;
font-weight: bold;
text-align: center;
text-decoration: none;
padding: 0.7em 1em;
}
.mp-popular-page-light:hover {
filter: brightness(115%);
transition: 100ms;
}
.mainpage-social {
border: none;
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.3);
}
.mainpage-social .tile-top {
display: flex;
align-items: center;
padding: 1em 1.5em;
}
.mainpage-social .tile-top a {
flex: 1;
position: relative;
text-decoration: none;
}
.mainpage-social .tile-top a:hover .arrow {
transform: translateX(50%);
}
.mainpage-social .tile-bottom {
border: none;
padding: 1em 1.75em;
}
.mainpage-social .tile-bottom p {
color: #fff;
font-weight: bold;
font-size: 0.9em;
text-align: center;
text-transform: uppercase;
letter-spacing: 0.03em;
margin: 0;
}
.mainpage-social .social-icon {
margin-right: 0.75em;
text-align: center;
width: 60px;
}
.mainpage-social .social-header {
color: #fff;
font-weight: bold;
font-size: 1.15em;
margin: 0.5em 0 -0.15em;
}
.mainpage-social .server-tagline {
color: rgba(255, 255, 255, 0.9);
margin-bottom: 0.5em;
}
.mainpage-social .arrow {
position: absolute;
top: calc(50% - .5em);
right: 0;
height: 1em;
width: 0.7em;
background-size: 0.7em 1em;
transition: 0.3s ease-out;
}
.mainpage-social.mainpage-discord .tile-top {
background: #5865f2;
}
.mainpage-social.mainpage-discord .tile-bottom {
background: #525ee0;
}
.mainpage-social.mainpage-twitter .tile-top {
background: #15202b;
}
.mainpage-social.mainpage-twitter .tile-bottom {
background: #121c26;
}
.mainpage-editing {
border: none;
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.3);
}
.mainpage-editing .tile-top {
background: #438ab5;
}
.mainpage-editing .tile-bottom {
background: #3980ab;
border: none;
padding: 0.8rem 1.5rem 0.4rem;
}
.mainpage-editing h2,
.mainpage-editing a {
color: #fff;
}
.mainpage-editing p {
color: rgba(255, 255, 255, 0.9);
}
.mainpage-editing ul {
list-style-image: url('filepath://Transparent-chevron.svg');
}
@media only screen and (max-width: 1200px) {
.mainpage-contents {
grid-template-columns: repeat(3, 1fr);
}
}
@media only screen and (max-width: 1000px) {
.mainpage-body {
grid-template-areas: "event event event" "update update update" "content content content" "left left left" "right right right";
}
.mainpage-recent-updates {
grid-template-columns: repeat(2, 1fr);
}
.mainpage-recent-updates .tile-halves:last-child {
display: none;
}
.mainpage-recent-updates .tile-halves:hover .tile-top img {
transform: scale(1.04);
}
.mainpage-recent-updates .tile-top {
height: 18vw;
min-height: 9em;
}
.mainpage-header .header-stats {
display: none;
}
.mainpage-left > *:last-child,
.mainpage-right > *:last-child {
margin-bottom: 0;
}
.popular-pages ul {
grid-template-columns: repeat(2, 1fr);
}
}
@media only screen and (max-width: 720px) {
.mainpage-recent-updates {
grid-template-columns: none;
}
.mainpage-recent-updates .tile-halves:last-child {
display: flex;
}
.mainpage-contents {
grid-template-columns: repeat(2, 1fr);
}
}
.mw-prefs-buttons {
background-color: var(--body-main);
border-top-color: var(--body-border);
box-shadow: none;
}
.mw-prefs-tabs-wrapper.oo-ui-panelLayout-framed,
.mw-prefs-tabs > .oo-ui-menuLayout-content > .oo-ui-indexLayout-stackLayout > .oo-ui-tabPanelLayout {
border-color: var(--body-border);
}
.mw-htmlform-ooui .mw-htmlform-matrix tbody tr:nth-child(even) td {
background-color: var(--body-light);
}
.mw-htmlform-ooui .mw-htmlform-matrix tbody tr:hover td {
background-color: var(--body-mid);
}
:root {
--rc-positive-color: #407813;
--rc-negative-color: #b41e0f;
}
.mw-plusminus-pos {
color: var(--rc-positive-color);
}
.mw-plusminus-neg {
color: var(--rc-negative-color);
}
.client-js .mw-recentchanges-toplinks:not(.mw-recentchanges-toplinks-collapsed) {
border-color: var(--body-border);
background-color: var(--body-light);
border-radius: 2px;
}
.mw-rcfilters-ui-filterTagMultiselectWidget-wrapper-content-title {
color: var(--text-color);
}
.mw-rcfilters-ui-filterTagMultiselectWidget-emptyFilters {
color: var(--byline-color);
}
.mw-rcfilters-ui-filterTagMultiselectWidget.oo-ui-widget-enabled .oo-ui-tagMultiselectWidget-handle {
background-color: var(--ooui-interface);
border-color: var(--ooui-interface-border);
}
.mw-rcfilters-ui-filterTagMultiselectWidget-views-select-widget.oo-ui-widget {
border-color: var(--ooui-interface-border);
}
.mw-rcfilters-collapsed .mw-rcfilters-ui-filterTagMultiselectWidget {
border-bottom-color: var(--ooui-interface-border);
}
.mw-rcfilters-ui-menuSelectWidget-footer {
background-color: var(--ooui-interface);
border-color: var(--ooui-interface-border);
}
.mw-rcfilters-ui-viewSwitchWidget label.oo-ui-labelWidget {
color: var(--byline-color);
}
.mw-rcfilters-ui-tagItemWidget-popup-content {
color: var(--ooui-text);
}
.mw-changeslist-legend,
.mw-rcfilters-ui-changesListWrapperWidget .mw-changeslist-legend {
background-color: var(--body-light);
border-color: var(--body-dark);
}
.mw-rcfilters-ui-changesListWrapperWidget-previousChangesIndicator {
border-color: var(--sidebar);
}
.client-js .mw-changeslist ul,
.client-js .mw-changeslist table.mw-enhanced-rc {
margin-left: 0;
}
.mw-rcfilters-ui-watchlistTopSectionWidget-separator {
border-color: var(--sidebar);
}
.mw-rcfilters-ui-itemMenuOptionWidget-header {
border-bottom-color: var(--ooui-interface);
background-color: var(--ooui-interface-border);
}
.mw-rcfilters-ui-itemMenuOptionWidget:not(:last-child):not(.mw-rcfilters-ui-itemMenuOptionWidget-identifier-talk) {
border-bottom-color: var(--ooui-normal-border);
}
.mw-rcfilters-ui-itemMenuOptionWidget-label-title,
.mw-rcfilters-ui-itemMenuOptionWidget-label-desc {
color: var(--text-color);
}
.mw-rcfilters-ui-filterMenuOptionWidget.oo-ui-flaggedElement-muted:not(.oo-ui-optionWidget-selected) {
background-color: var(--body-main);
}
.mw-rcfilters-ui-filterMenuOptionWidget.oo-ui-flaggedElement-muted .mw-rcfilters-ui-itemMenuOptionWidget-label-title,
.mw-rcfilters-ui-filterMenuOptionWidget.oo-ui-flaggedElement-muted .mw-rcfilters-ui-itemMenuOptionWidget-label-desc {
color: var(--subtle-color);
}
.mw-rcfilters-ui-filterMenuSectionOptionWidget {
background-color: var(--body-mid);
}
.mw-rcfilters-ui-filterMenuSectionOptionWidget-header-title.oo-ui-labelElement-label {
color: var(--ooui-text);
}
.mw-rcfilters-ui-filterMenuHeaderWidget-title {
color: var(--ooui-text);
}
.mw-rcfilters-ui-filterMenuHeaderWidget-header {
border-bottom-color: var(--ooui-interface-border);
background-color: var(--ooui-interface);
}
.mw-rcfilters-ui-itemMenuOptionWidget-view-namespaces {
border-top-color: var(--ooui-interface-border);
}
.mw-rcfilters-ui-datePopupWidget {
border-color: var(--ooui-interface-border);
}
.mw-rcfilters-ui-datePopupWidget .mw-rcfilters-ui-valuePickerWidget-title {
color: var(--byline-color);
}
.mw-rcfilters-ui-savedLinksListItemWidget-label {
color: var(--ooui-accent);
}
.client-js .mw-changeslist.mw-rcfilters-ui-changesListWrapperWidget-highlighted ul,
.client-js .mw-changeslist.mw-rcfilters-ui-changesListWrapperWidget-highlighted table.mw-enhanced-rc {
margin-left: 1.5em;
}
.page-Special_CreateAccount .mw-ui-container,
.page-Special_UserLogin .mw-ui-container {
max-width: 64rem;
margin: 0 auto;
}
.mw-number-text {
color: var(--byline-color);
}
.mw-body-content .mw-number-text h3 {
color: var(--text-color);
}
#mw-indicator-mw-helplink a {
background: none;
padding: 0;
display: flex;
align-items: center;
}
#mw-indicator-mw-helplink a::before {
content: '';
margin-right: 5px;
-webkit-mask: url("/resources/src/mediawiki.helplink/images/helpNotice.svg?46d34") no-repeat 50% 50% / contain;
mask: url("/resources/src/mediawiki.helplink/images/helpNotice.svg?46d34") no-repeat 50% 50% / contain;
background: var(--text-color);
height: 20px;
width: 20px;
}
.results-info {
color: inherit;
}
.mw-search-profile-tabs {
background-color: var(--body-mid);
border-color: transparent;
}
.search-types .current a {
color: inherit;
}
#mw-searchoptions {
background-color: var(--body-mid);
border-color: transparent;
}
#mw-searchoptions .divider {
border-color: var(--body-border);
}
#mw-searchoptions h4 {
font-family: inherit;
}
#mw-searchoptions .oo-ui-labelElement:nth-of-type(odd) {
font-weight: bold;
}
.searchresult {
line-height: 1.5;
}
.searchalttitle,
#mw-search-interwiki li {
font-size: 90%;
}
.mw-search-result-data {
color: var(--byline-color);
}
.page-Special_ListFiles a.image img {
width: inherit;
height: inherit;
}
.page-Special_ListFiles .TablePager_col_thumb {
text-align: center;
}
#editcount table[border="1"] {
background-color: var(--body-main) !important;
border-color: var(--wikitable-border) !important;
margin-top: 0.5em;
}
#editcount table[border="1"] th,
#editcount table[border="1"] td {
padding: 0.2em 0.4em;
}
#editcount table[border="1"] th {
background-color: var(--wikitable-header-bg);
border: 1px solid var(--wikitable-border);
}
#editcount table[border="1"] td {
border: 1px solid var(--wikitable-border);
}
#editcount table[border="1"] tr:nth-child(odd) {
background-color: var(--body-light);
}
.mw-echo-ui-notificationBadgeButtonPopupWidget-popup > .oo-ui-popupWidget-popup .mw-echo-ui-placeholderItemWidget {
background-color: inherit;
}
table.mw-interwikitable.body td.mw-interwikitable-local-yes {
background-color: var(--table-yes-background);
color: var(--table-yes-color);
}
.mw-protectedpages-unknown {
color: var(--byline-color);
}
.watchlistredir,
.allpagesredirect {
font-style: italic;
}
.allpagesredirect:after {
color: var(--byline-color);
content: " (redirect)";
}
.mw-apisandbox-toolbar {
background: var(--body-main);
}
.oo-ui-menuOptionWidget .mw-apisandbox-flag {
color: var(--byline-color);
}
tr.mw-abusefilter-list-disabled,
tr.mw-abusefilter-list-disabled td {
color: var(--byline-color);
}
table.mw-abuselog-details {
background: var(--wikitable-bg);
border-color: var(--wikitable-border);
}
table.mw-abuselog-details th {
background: var(--wikitable-header-bg);
}
table.mw-abuselog-details th,
table.mw-abuselog-details td {
border-color: var(--wikitable-border);
}
.mw-abusefilter-log-hidden-entry {
color: var(--subtle-color);
}
body td.mw-abusefilter-history-changed {
background: var(--table-no-background);
}
div.mw-abusefilter-editor,
#mw-abusefilter-warn-preview,
#mw-abusefilter-disallow-preview {
border-color: var(--ooui-input-border);
}
.mw-destfile-warning {
border-color: var(--warningbox-border);
color: var(--text-color);
background-color: var(--warningbox-bg);
}
span.fileinput-button {
background-color: var(--ooui-normal);
border-color: var(--ooui-normal-border);
color: var(--ooui-text);
}
ul.fileupload-results li.ful-success {
background-color: var(--successbox-bg);
}
ul.fileupload-results li.ful-success a {
color: var(--link-color);
}
ul.fileupload-results li.ful-error {
background-color: var(--errorbox-bg);
}
.color-container {
display: flex;
margin: 2em auto;
width: 80%;
max-width: 60em;
}
.color-column {
flex: 1;
margin-right: 1em;
}
.color-column:last-child {
margin-right: 0;
}
.color-column h3 {
padding: 0;
}
.color-group {
color: #333;
padding: 1em 1.5em;
transition: 0.2s ease-out;
}
.color-group:hover {
transform: scale(1.03);
}
.color-group.dark {
color: #fff;
}
.color-group .variable,
.color-group .hexcode {
font-family: monospace;
font-size: 1.1em;
-webkit-user-select: all;
-moz-user-select: all;
-ms-user-select: all;
user-select: all;
margin: 0;
}
body.wgl-readermode .color-group .variable,
body.wgl-readermode .color-group .hexcode {
font-size: inherit;
}
.color-group .variable {
font-weight: bold;
}
#t-print,
#t-permalink {
display: none;
}
#filetoc {
border-radius: 2px;
background: var(--body-mid);
border-color: transparent;
margin: 0.5em auto;
text-align: center;
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
}
li.gallerybox div.thumb {
border: none;
background-color: var(--thumb-bg);
}
.smwfact {
display: none;
}
.list-header {
background-color: var(--body-mid);
color: inherit;
}
.editOptions {
color: var(--text-color);
background-color: var(--sourceeditor-background-secondary);
border-color: var(--sourceeditor-border);
}
.mw-json th,
.mw-json td {
border-color: var(--wikitable-border);
}
.mw-json td {
background: var(--wikitable-bg);
}
.mw-json th {
background: var(--wikitable-header-bg);
}
210f00beecc913977f78700553455bf417316b37
1682
1678
2024-04-01T01:05:06Z
Merds
25
Updating CSS from [[MediaWiki:Common.less]]
css
text/css
/* <pre> */
:root {
--body-main: #fdfcfc;
--body-light: #f5f0eb;
--body-mid: #d1b9ad;
--body-dark: #b1886f;
--body-border: #d1b9ad;
--body-background-color: #173a4d;
--button-background: #605443;
--button-color: #fff;
--button-border: #3c352a;
--button-dark: #18140c;
--button-light: #3a301d;
--sidebar: #cfc08d;
--background-text-color: #e2dbc8;
--background-link-color: #e2bd8a;
--search-box: #efeee6;
--link-color: #6e452b;
--redlink-color: #ba0000;
--text-color: #2F2828;
--byline-color: #ccc;
--subtle-color: #777;
--admin-blue: #332e75;
--bearcat-green: #13592e;
--awb-purple: #933b96;
--rsw-blue: #438ab6;
--osrsw-brown: #605443;
--thumb-bg: var(--body-light);
--thumb-caption-bg: var(--body-mid);
--sourceeditor-input-background: #fff;
--sourceeditor-background: var(--body-light);
--sourceeditor-background-secondary: var(--body-light);
--sourceeditor-border: var(--body-mid);
--codemirror-gutter-background: var(--body-mid);
}
@font-face {
font-family: 'Lora';
font-weight: 400 700;
font-style: normal;
font-display: swap;
src: url('filepath://Lora.woff2') format('woff2');
}
@font-face {
font-family: 'Lora';
font-weight: 400 700;
font-style: italic;
font-display: swap;
src: url('filepath://Lora-Italic.woff2') format('woff2');
}
:root {
--base-text-color: #36414f;
--base-heading-color: #444e5a;
--base-heading-border: #e4eaee;
--mw-code-background-color: var(--body-light);
--body-background-image: url('filepath://Wiki_background.jpg');
}
#mw-page-base {
background: none;
}
.mw-body {
background-color: var(--body-main);
color: var(--text-color);
border-color: transparent;
box-shadow: 0 0 7px rgba(0, 0, 0, 0.15);
margin-top: 0;
}
h1,
h2,
h3,
h4,
h5,
h6 {
color: var(--text-color);
}
h1,
h2 {
border-color: var(--body-border);
}
.mw-body h1,
.mw-body-content h1,
.mw-body-content h2,
.mw-body-content h3,
.mw-body-content h4,
.mw-body-content h5,
.mw-body-content h6 {
font-family: 'Lora', 'Palatino', 'Georgia', serif;
}
.mw-parser-output h2:first-of-type {
clear: left;
}
.mw-footer {
color: var(--background-text-color);
}
.mw-footer li {
color: var(--background-text-color);
}
.mw-footer a,
.mw-footer a:active,
.mw-footer a:visited {
color: var(--background-link-color);
}
::placeholder {
color: var(--subtle-color);
}
a {
color: var(--link-color);
}
a:visited,
a:active {
color: var(--link-color);
}
a.new {
color: var(--redlink-color);
}
a.new:visited {
color: var(--redlink-color);
}
.mw-parser-output a.extiw,
.mw-parser-output a.external {
color: var(--link-color);
}
.mw-parser-output a.extiw:visited,
.mw-parser-output a.external:visited,
.mw-parser-output a.extiw:active,
.mw-parser-output a.external:active {
color: var(--link-color);
}
.jsPurgeLink a.external {
color: var(--link-color);
}
:root {
--errorbox-bg: #feecea;
--errorbox-border: #ee4231;
--warningbox-bg: #fef9de;
--warningbox-border: #f9d000;
--successbox-bg: #ecf8e3;
--successbox-border: #6bc71f;
}
.mw-message-box-error,
.errorbox,
.mw-message-box-warning,
.warningbox,
.mw-message-box-success,
.successbox,
.usermessage {
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
}
.mw-message-box-error,
.errorbox {
background-color: var(--errorbox-bg);
border-color: var(--errorbox-border);
}
.mw-message-box-warning,
.warningbox,
.usermessage {
background-color: var(--warningbox-bg);
border-color: var(--warningbox-border);
}
.mw-message-box-success,
.successbox {
background-color: var(--successbox-bg);
border-color: var(--successbox-border);
}
.catlinks {
background: var(--body-light);
border: 1px solid var(--body-dark);
padding: 8px 15px;
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
}
.catlinks li {
border-color: var(--body-mid);
}
.filehistory a img,
#file img {
background: url("data:image/svg+xml,%3C%3Fxml version='1.0' encoding='UTF-8'%3F%3E%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16'%3E%3Cpath d='M0 0h8v16h8V8H0z' opacity='.13'/%3E%3C/svg%3E") repeat;
}
#file img:hover {
background: none;
}
.mw-highlight {
background: none;
}
.mw-highlight .linenos {
background-color: var(--mw-code-background-color);
color: var(--body-border);
}
.mw-highlight a:hover .linenos,
.mw-highlight .hll a .linenos {
color: var(--body-dark);
}
.mw-content-ltr.mw-highlight-lines pre,
.mw-content-ltr.content .mw-highlight-lines pre {
box-shadow: inset 2.75em 0 0 var(--mw-code-background-color);
}
#pagehistory ul {
list-style: none;
margin: 0;
}
#pagehistory li {
border: 1px solid transparent;
padding: 1px 10px;
margin: 2px 0;
}
#pagehistory li.selected {
background-color: var(--body-light);
color: inherit;
border: 1px dashed var(--body-border);
outline: none;
}
#mw-history-compare > div:first-of-type {
position: -webkit-sticky;
position: sticky;
top: 0;
background-color: var(--body-main);
border-bottom: 1px solid var(--body-dark);
padding: 0.25em 0;
}
.wgl-stickyheader #mw-history-compare > div:first-of-type {
top: 2.5rem;
}
.autocomment,
.autocomment a,
.autocomment a:visited {
color: var(--link-color);
}
li span.deleted,
span.history-deleted {
color: var(--byline-color);
}
.mw-usertoollinks-contribs-no-edits,
.mw-usertoollinks-contribs-no-edits:visited {
color: var(--redlink-color);
}
.CategoryTreeToggle {
color: var(--link-color);
}
body.wgl-stickyheader.action-view .mw-headline:target::before {
display: block;
content: '';
margin-top: -3rem;
height: 3rem;
visibility: hidden;
pointer-events: none;
}
.mw-mmv-post-image {
color: var(--text-color);
background-color: var(--body-main);
}
.mw-mmv-image-metadata {
border-top-color: var(--body-mid);
background-color: var(--body-light);
}
.mw-mmv-dialog,
.mw-mmv-dialog .mw-mmv-dialog-down-arrow,
.mw-mmv-options-dialog .mw-mmv-dialog-down-arrow {
background-color: var(--body-light);
box-shadow: none;
}
.mw-mmv-options-enable-alert {
background-color: var(--body-light);
color: var(--text-color);
}
.mw-mmv-options-dialog-header,
.mw-mmv-options-text-header,
.mw-mmv-options-text-body,
.mw-mmv-options-enable-alert,
.mw-mmv-options-dialog .mw-mmv-disable-confirmation .mw-mmv-options-dialog-header,
.mw-mmv-options-dialog .mw-mmv-disable-confirmation .mw-mmv-options-text-header {
color: var(--text-color);
}
.mw-revslider-container {
border-color: var(--sidebar);
}
.mw-revslider-slider-wrapper {
border-top-color: var(--sidebar);
}
.mw-ui-button {
background-color: var(--ooui-normal);
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
}
.mw-ui-button:not(:disabled):hover,
.mw-ui-button:not(:disabled):active {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
}
.mw-ui-button:not(:disabled):focus {
color: var(--ooui-text);
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent), inset 0 0 0 2px #fff;
}
.mw-ui-button:not(:disabled):visited {
color: var(--ooui-text);
}
.mw-ui-button.mw-ui-progressive:not(:disabled) {
background-color: var(--ooui-progressive);
color: #fff;
border-color: var(--ooui-progressive);
}
.mw-ui-button.mw-ui-progressive:not(:disabled):hover {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
}
.mw-ui-button.mw-ui-progressive:not(:disabled):focus {
box-shadow: inset 0 0 0 1px var(--ooui-accent), inset 0 0 0 2px #fff;
}
.mw-ui-button.mw-ui-progressive:not(:disabled):active,
.mw-ui-button.mw-ui-progressive:not(:disabled).is-on {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
box-shadow: none;
}
.mw-ui-button.mw-ui-destructive:not( :disabled ) {
color: #fff;
}
.mw-ui-button.mw-ui-quiet,
.mw-ui-button.mw-ui-quiet.mw-ui-progressive,
.mw-ui-button.mw-ui-quiet.mw-ui-destructive {
color: var(--text-color);
}
input[type='checkbox']:hover + .mw-ui-button.mw-ui-quiet,
input[type='checkbox']:hover + .mw-ui-button.mw-ui-quiet.mw-ui-progressive,
input[type='checkbox']:hover + .mw-ui-button.mw-ui-quiet.mw-ui-destructive,
.mw-ui-button.mw-ui-quiet:hover,
.mw-ui-button.mw-ui-quiet.mw-ui-progressive:hover,
.mw-ui-button.mw-ui-quiet.mw-ui-destructive:hover {
background-color: rgba(0, 24, 73, 0.02745098);
color: var(--text-color);
border-color: transparent;
}
input[type='checkbox']:focus + .mw-ui-button.mw-ui-quiet,
input[type='checkbox']:focus + .mw-ui-button.mw-ui-quiet.mw-ui-progressive,
input[type='checkbox']:focus + .mw-ui-button.mw-ui-quiet.mw-ui-destructive,
.mw-ui-button.mw-ui-quiet:focus,
.mw-ui-button.mw-ui-quiet.mw-ui-progressive:focus,
.mw-ui-button.mw-ui-quiet.mw-ui-destructive:focus {
color: var(--text-color);
}
input[type='checkbox']:active + .mw-ui-button.mw-ui-quiet,
input[type='checkbox']:active + .mw-ui-button.mw-ui-quiet.mw-ui-progressive,
input[type='checkbox']:active + .mw-ui-button.mw-ui-quiet.mw-ui-destructive,
.mw-ui-button.mw-ui-quiet:active,
.mw-ui-button.mw-ui-quiet.mw-ui-progressive:active,
.mw-ui-button.mw-ui-quiet.mw-ui-destructive:active {
background-color: rgba(0, 36, 73, 0.08235294);
color: var(--text-color);
border-color: #72777d;
}
.mw-ui-input {
background-color: var(--ooui-input);
color: var(--text-color);
border-color: var(--ooui-input-border);
}
.mw-ui-input:hover {
border-color: var(--ooui-input-border--hover);
}
.mw-ui-input::placeholder {
color: var(--byline-color);
}
.mw-content-ltr .redirectText li:first-child {
padding: 0;
background: 0;
}
.mw-content-ltr .redirectText li:first-child::before {
content: '';
background: currentcolor;
-webkit-mask: url("filepath://Redirect-arrow.svg") no-repeat 50% 50% / contain;
mask: url("filepath://Redirect-arrow.svg") no-repeat 50% 50% / contain;
display: inline-block;
width: 47px;
height: 20px;
}
.vector-search-box-inner {
background: var(--body-main) !important;
box-shadow: inset 0 -7px 7px -7px rgba(0, 0, 0, 0.15) !important;
}
.vector-menu-dropdown .vector-menu-heading {
color: var(--vector-tab-link-color) !important;
}
.vector-menu-dropdown .vector-menu-heading:hover {
color: var(--vector-tab-link-color) !important;
}
.vector-menu-dropdown .vector-menu-heading:focus {
color: var(--vector-tab-link-color) !important;
}
:root {
--wikitable-header-bg: var(--body-dark);
--wikitable-border: var(--body-border);
--wikitable-bg: var(--body-light);
--wikitable-bg-lighter: #e9e3d6;
--wikitable-color: var(--text-color);
--table-na-background: rgba(255, 255, 255, 0.3);
--table-na-color: var(--subtle-color);
--table-yes-background: #c3e8a3;
--table-yes-color: #2e5e05;
--table-no-background: #fbc0ba;
--table-no-color: #801c13;
--table-maybe-background: #fcea94;
--table-maybe-color: #786300;
}
.wikitable {
background: var(--wikitable-bg);
color: var(--wikitable-color);
border-color: var(--wikitable-border);
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
}
.wikitable > tr > th,
.wikitable > tr > td,
.wikitable > * > tr > th,
.wikitable > * > tr > td {
border-color: var(--wikitable-border);
}
.wikitable > tr > th.table-noborder,
.wikitable > tr > td.table-noborder,
.wikitable > * > tr > th.table-noborder,
.wikitable > * > tr > td.table-noborder {
border-left-style: hidden;
border-right-style: hidden;
padding-left: 0;
padding-right: 0;
}
.wikitable > tr > th,
.wikitable > * > tr > th {
background-color: var(--wikitable-header-bg);
color: #fff;
}
.tabber .wikitable {
box-shadow: none;
}
.mw_metadata td,
.mw_metadata th {
border-color: var(--wikitable-border);
}
.mw_metadata th {
background-color: var(--wikitable-header-bg);
}
.mw_metadata td {
background-color: var(--wikitable-bg);
}
.mw-datatable {
border-color: var(--wikitable-border);
}
.mw-datatable td,
.mw-datatable th {
border-color: var(--wikitable-border);
}
.mw-datatable th {
background-color: var(--wikitable-header-bg);
}
.mw-datatable td {
background-color: var(--wikitable-bg);
}
.mw-datatable tr:hover td {
background-color: var(--wikitable-bg);
}
table.alternating-rows tr:nth-child(odd),
table.alternating-cols td:nth-child(odd) {
background: var(--wikitable-alternating-bg);
}
.table-na {
background: var(--table-na-background);
color: var(--table-na-color);
vertical-align: middle;
text-align: center;
}
.table-yes {
background: var(--table-yes-background);
color: var(--table-yes-color);
}
.table-positive {
background: var(--table-yes-background);
}
.table-no {
background: var(--table-no-background);
color: var(--table-no-color);
}
.table-negative {
background: var(--table-no-background);
}
.table-maybe {
background: var(--table-maybe-background);
color: var(--table-maybe-color);
}
#mw-allmessagestable .am_actual,
#mw-allmessagestable .am_default {
background-color: var(--wikitable-bg);
}
#mw-allmessagestable .am_default:hover,
#mw-allmessagestable .am_actual:hover,
#mw-allmessagestable tbody:hover td {
background-color: var(--wikitable-bg-lighter);
}
table.wikitable td.no-cell-spacing {
padding: 0;
height: 0;
}
table.wikitable td.no-cell-spacing table {
margin: -1px;
width: calc(100% + 2px);
height: calc(100% + 2px);
}
.plainlist ol,
.plainlist ul {
margin: 0;
}
.plainlist li {
margin-bottom: 0;
list-style: none;
}
table.align-right-1 td:nth-of-type(1),
table.align-right-2 td:nth-of-type(2),
table.align-right-3 td:nth-of-type(3),
table.align-right-4 td:nth-of-type(4),
table.align-right-5 td:nth-of-type(5),
table.align-right-6 td:nth-of-type(6),
table.align-right-7 td:nth-of-type(7),
table.align-right-8 td:nth-of-type(8),
table.align-right-9 td:nth-of-type(9),
table.align-right-10 td:nth-of-type(10),
table.align-right-11 td:nth-of-type(11),
table.align-right-12 td:nth-of-type(12),
table.align-right-13 td:nth-of-type(13),
table.align-right-14 td:nth-of-type(14),
table.align-right-15 td:nth-of-type(15),
table.align-right-16 td:nth-of-type(16),
table.align-right-17 td:nth-of-type(17),
table.align-right-18 td:nth-of-type(18),
table.align-right-19 td:nth-of-type(19),
table.align-right-20 td:nth-of-type(20) {
text-align: right;
}
table.align-center-1 td:nth-of-type(1),
table.align-center-2 td:nth-of-type(2),
table.align-center-3 td:nth-of-type(3),
table.align-center-4 td:nth-of-type(4),
table.align-center-5 td:nth-of-type(5),
table.align-center-6 td:nth-of-type(6),
table.align-center-7 td:nth-of-type(7),
table.align-center-8 td:nth-of-type(8),
table.align-center-9 td:nth-of-type(9),
table.align-center-10 td:nth-of-type(10),
table.align-center-11 td:nth-of-type(11),
table.align-center-12 td:nth-of-type(12),
table.align-center-13 td:nth-of-type(13),
table.align-center-14 td:nth-of-type(14),
table.align-center-15 td:nth-of-type(15),
table.align-center-16 td:nth-of-type(16),
table.align-center-17 td:nth-of-type(17),
table.align-center-18 td:nth-of-type(18),
table.align-center-19 td:nth-of-type(19),
table.align-center-20 td:nth-of-type(20) {
text-align: center;
}
table.align-left-1 td:nth-of-type(1),
table.align-left-2 td:nth-of-type(2),
table.align-left-3 td:nth-of-type(3),
table.align-left-4 td:nth-of-type(4),
table.align-left-5 td:nth-of-type(5),
table.align-left-6 td:nth-of-type(6),
table.align-left-7 td:nth-of-type(7),
table.align-left-8 td:nth-of-type(8),
table.align-left-9 td:nth-of-type(9),
table.align-left-10 td:nth-of-type(10),
table.align-left-11 td:nth-of-type(11),
table.align-left-12 td:nth-of-type(12),
table.align-left-13 td:nth-of-type(13),
table.align-left-14 td:nth-of-type(14),
table.align-left-15 td:nth-of-type(15),
table.align-left-16 td:nth-of-type(16),
table.align-left-17 td:nth-of-type(17),
table.align-left-18 td:nth-of-type(18),
table.align-left-19 td:nth-of-type(19),
table.align-left-20 td:nth-of-type(20) {
text-align: left;
}
:root {
--diff-addedline-border-color: #438ab5;
--diff-addedline-background: #bddff2;
--diff-addedline-color: #000;
--diff-deletedline-border-color: #379541;
--diff-deletedline-background: #c1edbf;
--diff-deletedline-color: #000;
--diff-context-border-color: var(--body-mid);
--diff-context-background: var(--body-mid);
}
.diff-context {
border-color: var(--diff-context-border-color);
background: var(--diff-context-background);
color: inherit;
}
.diff-addedline {
border-color: var(--diff-addedline-border-color);
}
.diff-addedline .diffchange {
background: var(--diff-addedline-background);
color: var(--diff-addedline-color);
}
.diff-deletedline {
border-color: var(--diff-deletedline-border-color);
}
.diff-deletedline .diffchange {
background: var(--diff-deletedline-background);
color: var(--diff-deletedline-color);
}
.mw-diff-movedpara-left:after,
.mw-diff-movedpara-right:after {
color: var(--text-color);
}
.mw-notification {
background-color: var(--body-light);
border-color: var(--body-border);
color: var(--text-color);
}
.mw-echo-ui-notificationsInboxWidget-toolbarWrapper {
background: var(--body-main);
}
.mw-body-content .mw-echo-ui-datedSubGroupListWidget-title-secondary {
color: var(--byline-color);
}
.mw-echo-ui-pageNotificationsOptionWidget.oo-ui-optionWidget-selected {
background-color: var(--ooui-normal);
color: var(--ooui-accent);
}
.mw-echo-ui-pageNotificationsOptionWidget-label-count {
background-color: var(--ooui-normal);
color: var(--byline-color);
}
.oo-ui-optionWidget-selected .mw-echo-ui-pageNotificationsOptionWidget-label-count {
color: var(--ooui-accent);
}
.mw-echo-ui-pageNotificationsOptionWidget.oo-ui-optionWidget-highlighted {
background-color: var(--ooui-normal);
color: var(--text-color);
}
.mw-echo-ui-crossWikiUnreadFilterWidget {
border-color: var(--body-border);
}
.mw-echo-ui-crossWikiUnreadFilterWidget-subtitle {
color: var(--byline-color);
}
.mw-echo-ui-notificationBadgeButtonPopupWidget-popup > .oo-ui-popupWidget-popup > .oo-ui-popupWidget-head,
.mw-echo-ui-notificationBadgeButtonPopupWidget-popup > .oo-ui-popupWidget-popup > .oo-ui-popupWidget-footer {
border-color: var(--ooui-interface-border);
}
.mw-echo-ui-notificationBadgeButtonPopupWidget-popup > .oo-ui-popupWidget-popup > .oo-ui-popupWidget-footer .mw-echo-ui-notificationBadgeButtonPopupWidget-footer-buttons .oo-ui-buttonElement:last-child {
border-left-color: var(--ooui-normal-border);
}
.mw-echo-ui-notificationItemWidget {
background-color: var(--ooui-normal);
border-color: var(--ooui-normal-border);
}
.mw-echo-ui-notificationItemWidget:hover,
.mw-echo-ui-notificationItemWidget-unread:hover {
background-color: var(--ooui-normal--hover);
}
.mw-echo-ui-notificationItemWidget:last-child {
border-bottom-color: var(--ooui-normal-border);
}
.mw-echo-ui-notificationItemWidget-unread {
background-color: var(--search-box);
}
.mw-echo-ui-crossWikiNotificationItemWidget-group,
.mw-echo-ui-bundleNotificationItemWidget-group {
background-color: var(--ooui-interface);
}
.mw-echo-ui-toggleReadCircleButtonWidget-circle {
background-color: var(--ooui-progressive);
}
.mw-echo-ui-toggleReadCircleButtonWidget:hover .mw-echo-ui-toggleReadCircleButtonWidget-circle {
background-color: var(--ooui-progressive--hover);
}
.mw-echo-ui-toggleReadCircleButtonWidget-circle-unread {
background-color: var(--ooui-normal);
border-color: var(--ooui-normal-border);
}
.mw-echo-ui-notificationItemWidget-content-message-header,
.mw-echo-ui-notificationItemWidget-content-message-body,
.mw-echo-ui-menuItemWidget > .oo-ui-buttonElement-button > .oo-ui-labelElement-label,
.mw-echo-ui-notificationItemWidget-content-actions-timestamp {
color: var(--ooui-text);
}
.mw-echo-ui-bundleNotificationItemWidget-group {
background-color: var(--body-main);
}
@keyframes unseen-fadeout-to-unread {
from {
background-color: var(--wikitable-bg-lighter);
}
to {
background-color: var(--search-box);
}
}
@keyframes unseen-fadeout-to-read {
from {
background-color: var(--wikitable-bg-lighter);
}
to {
background-color: var(--body-main);
}
}
.mwe-popups {
background: var(--body-light);
}
.mwe-popups .mwe-popups-container {
color: var(--text-color);
background: var(--body-light);
}
.mwe-popups .mwe-popups-container.flipped-x-y:before,
.mwe-popups .mwe-popups-container.flipped-y:before {
border-top: none;
}
.mwe-popups .mwe-popups-container.mwe-popups-no-image-tri:before {
border-bottom: none;
}
.mwe-popups .mwe-popups-container.flipped-x-y:after,
.mwe-popups .mwe-popups-container.flipped-y:after {
border-top-color: var(--body-light);
}
.mwe-popups .mwe-popups-container.mwe-popups-no-image-tri:after {
border-bottom-color: var(--body-light);
}
.mwe-popups .mwe-popups-settings-icon:hover,
.mwe-popups .mwe-popups-settings-icon:active {
background-color: var(--ooui-normal--hover);
}
.mwe-popups .mw-ui-icon-element:not(.disabled):hover {
background: none;
}
.mwe-popups .mwe-popups-extract {
color: var(--text-color);
}
.mwe-popups .mwe-popups-extract[dir='ltr']:after {
background-image: linear-gradient(to right, rgba(49, 62, 89, 0), var(--body-light) 50%);
}
.mwe-popups-overlay {
background-color: var(--ooui-window-background);
}
#mwe-popups-settings {
background: var(--ooui-interface);
border-color: var(--ooui-interface-border);
color: var(--text-color);
}
#mwe-popups-settings header {
border-color: var(--ooui-interface-border);
}
#mwe-popups-settings main#mwe-popups-settings-form p {
color: var(--byline-color);
}
#mwe-popups-settings main#mwe-popups-settings-form form label > span {
color: var(--ooui-text);
}
:root {
--smw-ask-options-even-bg: var(--body-mid);
--smw-ask-options-odd-bg: var(--body-light);
--smw-ask-action-btn-lblue-bg: var(--body-main);
--smw-ask-action-btn-lblue-color: #000;
--smw-ask-action-btn-lblue-border-color: var(--body-light);
--smw-ask-action-btn-dblue-bg: var(--body-light);
--smw-ask-action-btn-dblue-color: #fff;
--smw-ask-action-btn-dblue-border-color: var(--button-border);
}
.smw-ask-condition fieldset,
.smw-ask-printhead fieldset {
border-color: var(--sidebar);
}
.smw-ask-search fieldset,
.smw-ask-format fieldset,
.smw-ask-options fieldset {
border-color: var(--sidebar);
}
.strike > span:before,
.strike > span:after {
background: var(--sidebar);
}
.smw-ask-options-fields tr td {
background-color: var(--smw-ask-options-even-bg);
}
.smw-ask-options-fields tr:nth-child(odd) td {
background-color: var(--smw-ask-options-odd-bg);
}
.smw-ask-action-btn.smw-ask-action-btn-lblue,
.smw-ask-action-btn.smw-ask-action-btn-lblue:hover,
.smw-ask-action-btn.smw-ask-action-btn-lblue:visited {
background-color: var(--smw-ask-action-btn-lblue-bg);
color: var(--smw-ask-action-btn-lblue-color);
border-color: var(--smw-ask-action-btn-lblue-border-color);
}
.smw-ask-action-btn.smw-ask-action-btn-dblue,
.smw-ask-action-btn.smw-ask-action-btn-dblue:hover,
.smw-ask-action-btn.smw-ask-action-btn-dblue:visited {
background-color: var(--smw-ask-action-btn-dblue-bg);
color: var(--smw-ask-action-btn-dblue-color);
border-color: var(--smw-ask-action-btn-dblue-border-color);
}
.smw-ask-query textarea,
.smw-ask-actions textarea {
background-color: var(--ooui-interface);
border-color: var(--ooui-interface-border);
color: var(--ooui-text);
}
.smw-ask-query-format select {
background-color: var(--ooui-interface);
border: 1px solid var(--ooui-interface-border);
color: var(--ooui-text);
}
.smw-ask-toplinks {
background-color: var(--body-mid);
}
.smw-ask-toplinks span.smw-icon-info {
background: none;
padding: 0 !important;
}
.smw-ask-toplinks span.smw-icon-info::before {
content: '';
background: var(--text-color);
-webkit-mask: url("data:image/svg+xml,%3C%3Fxml version='1.0' encoding='UTF-8'%3F%3E%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 20 20'%3E%3Ctitle%3Einfo%3C/title%3E%3Cpath d='M10 0C4.477 0 0 4.477 0 10s4.477 10 10 10 10-4.477 10-10S15.523 0 10 0zM9 5h2v2H9zm0 4h2v6H9z'/%3E%3C/svg%3E") no-repeat 50% 50% / contain;
mask: url("data:image/svg+xml,%3C%3Fxml version='1.0' encoding='UTF-8'%3F%3E%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 20 20'%3E%3Ctitle%3Einfo%3C/title%3E%3Cpath d='M10 0C4.477 0 0 4.477 0 10s4.477 10 10 10 10-4.477 10-10S15.523 0 10 0zM9 5h2v2H9zm0 4h2v6H9z'/%3E%3C/svg%3E") no-repeat 50% 50% / contain;
padding: 0 0 3px 18px;
}
.smw-ask-options-row-odd {
background-color: var(--body-light);
}
.smw-ask-options-row-even {
background-color: var(--body-mid);
}
#options-toggle:not(:checked) + #options-list .options-parameter-list:after {
background-image: linear-gradient(to bottom, transparent, var(--body-mid) 90%);
}
.smw-ask-button-submit input {
background-color: var(--ooui-normal);
border-color: var(--ooui-normal-border);
color: var(--text-color);
}
.smw-ask-button-submit input:hover,
.smw-ask-button-lgrey:hover {
background-color: var(--ooui-normal--hover);
border-color: var(--ooui-normal-border);
}
input.smw-ask-action-btn.smw-ask-action-btn-dblue {
background-color: var(--ooui-normal);
border-color: var(--ooui-normal-border);
color: var(--ooui-text);
}
a.smw-ask-action-btn.smw-ask-action-btn-lblue {
background-color: var(--body-mid);
border-color: var(--body-mid);
color: var(--ooui-text);
}
a.smw-ask-action-btn.smw-ask-action-btn-lblue:visited {
background-color: var(--body-mid);
border-color: var(--body-mid);
color: var(--ooui-text);
}
a.smw-ask-action-btn.smw-ask-action-btn-lblue:hover {
background-color: var(--body-mid);
border-color: var(--body-mid);
color: var(--ooui-text);
}
a.smw-ask-action-btn-lgrey {
background-color: var(--ooui-normal);
border-color: var(--ooui-normal-border);
color: var(--ooui-text);
}
a.smw-ask-action-btn-lgrey:hover {
background-color: var(--ooui-normal--hover);
border-color: var(--ooui-normal-border);
color: var(--ooui-text);
}
.smw-callout-error {
background-color: var(--errorbox-bg);
border-color: var(--errorbox-border);
}
.smw-callout-info {
background-color: var(--body-light);
border-color: var(--body-dark);
}
.smw-callout-success {
background-color: var(--successbox-bg);
border-color: var(--successbox-border);
}
.smw-callout-warning {
background-color: var(--warningbox-bg);
border-color: var(--warningbox-bg);
}
.smw-tabs input.nav-tab:checked + label.nav-label,
.smw-tabs input.nav-tab:checked + label.nav-label:hover {
color: inherit;
}
#tab-smw-property-value:checked + label.nav-label .usage-count {
color: #fff;
background-color: var(--ooui-progressive);
}
#tab-smw-property-value:checked + label.nav-label .usage-count.moderate {
color: #fff;
background-color: #b55e0c;
border-color: #b55e0c;
}
#tab-smw-property-value:checked + label.nav-label .usage-count.high {
color: #fff;
background-color: #9f261e;
border-color: #9f261e;
}
.smw-property-page-results .header-title {
background-color: var(--ooui-interface);
border-bottom-color: var(--ooui-interface-border);
color: var(--ooui-text);
}
.smw-property-page-results .value-row:hover {
background-color: var(--ooui-normal--hover);
}
.smw-property-page-results .smw-table .header-row {
color: var(--text-color);
}
.tippy-tooltip.light-border-theme {
background-color: var(--body-light);
color: var(--text-color);
}
.tippy-tooltip.light-border-theme .tippy-arrow {
border-top-color: var(--body-light);
}
.tippy-tooltip.light-border-theme .tippy-arrow:after {
border-top-color: var(--body-light);
}
.tippy-header {
background-color: var(--body-dark);
border-bottom-color: var(--body-mid);
}
.smw-ui-input-filter {
background-color: var(--ooui-interface);
border-color: var(--ooui-interface-border);
color: var(--ooui-text);
}
.smw-ui-input-filter input {
border-left-color: var(--ooui-interface-border) !important;
color: var(--ooui-text) !important;
}
.smw-ui-pagination .page-link.link-disabled {
background-color: var(--ooui-disabled);
border-color: var(--ooui-disabled-border);
color: var(--subtle-color);
}
.smw-ui-pagination .page-link {
background-color: var(--ooui-normal);
border-color: var(--ooui-normal-border);
color: var(--link-color);
}
.smw-ui-pagination .page-link:hover {
background-color: var(--ooui-normal--hover);
border-color: var(--ooui-normal-border);
color: var(--link-color);
}
.smw-ui-pagination .page-link.link-active {
color: #fff;
background-color: var(--ooui-progressive);
border-color: var(--ooui-progressive);
}
.smw-tabs input.nav-tab:checked + label.nav-label {
border-color: var(--ooui-normal-border);
}
.smw-tabs section,
.smw-tabs .subtab-content {
border-top-color: var(--ooui-normal-border);
}
.smw-column-header {
color: var(--text-color);
}
.smw-factbox {
background: var(--body-main);
border-color: transparent;
}
.mw-body .mw-indicators #mw-indicator-smw-entity-examiner.mw-indicator .smw-indicator-vertical-bar-loader {
display: none;
}
.smwb-theme-light .smwb-title,
.smwb-theme-light .smwb-center,
.smwb-theme-light .smwb-actions,
.smwb-theme-light .smwb-prophead {
background-color: var(--body-mid);
}
.smwb-theme-light .smwb-factbox {
border-left-color: var(--body-mid);
}
.smwb-theme-light .smwb-ifactbox {
border-right-color: var(--body-mid);
}
.smwb-theme-light .smwb-propval {
background-color: var(--body-light);
}
.smwb-action-separator {
border-color: var(--wikitable-border);
}
.smwb-bottom {
border-bottom: 1px solid var(--wikitable-border);
}
.smwb-ifactbox .smwb-cell,
.smwb-factbox .smwb-cell {
border-top: 1px solid var(--wikitable-border);
}
.smwb-propvalue .smwb-prophead,
.smwb-ipropvalue .smwb-prophead,
.smwb-propvalue .smwb-propval,
.smwb-ipropvalue .smwb-propval {
font-size: 0.9em;
}
:root {
--filter-black-to-link: invert(36%) sepia(58%) saturate(433%) hue-rotate(344deg) brightness(100%) contrast(91%);
}
#bodyContent span.smwbrowse a {
color: black;
background-image: url('filepath://Smwbrowse.svg');
filter: var(--filter-black-to-link);
}
#bodyContent span.smwbrowse a:hover {
color: black;
background-image: url('filepath://Smwbrowse-hover.svg');
text-decoration: underline;
}
#bodyContent span.smwsearch a {
color: black;
filter: var(--filter-black-to-link);
background-image: url('filepath://Smwsearch.svg');
}
#bodyContent span.smwsearch a:hover {
color: black;
background-image: url('filepath://Smwsearch-hover.svg');
text-decoration: underline;
}
:root {
--tabber-tab-bg: var(--body-light);
--tabber-tab-border-color: var(--body-border);
--tabber-active-tab-bg: var(--body-light);
--tabber-active-tab-color: var(--text-color);
--tabber-active-tab-hover-bg: var(--body-light);
--tabber-active-tab-hover-border-color: var(--body-border);
--tabber-active-tab-hover-color: var(--text-color);
--tabber-active-tab-border-hider-color: var(--body-light);
--tabber-inactive-tab-bg: var(--body-background-color);
--tabber-inactive-tab-border-color: var(--body-border);
--tabber-inactive-tab-color: var(--text-color);
--tabber-inactive-tab-hover-bg: var(--body-light);
--tabber-inactive-tab-hover-border-color: var(--body-border);
}
.tabber {
margin: 1em 0;
}
.tabber .tabbertab {
background-color: var(--tabber-tab-bg);
border: 1px solid var(--tabber-tab-border-color);
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
padding: 1em 1.5em;
}
ul.tabbernav {
border: none;
margin-left: 2em;
margin-bottom: 0;
margin-right: 2em;
padding: 0;
font-family: inherit;
}
ul.tabbernav li.tabberactive > a {
background-color: var(--tabber-active-tab-bg);
color: var(--tabber-active-tab-color);
border-bottom: none;
position: relative;
}
ul.tabbernav li.tabberactive > a:hover {
color: var(--tabber-active-tab-hover-color);
background-color: var(--tabber-active-tab-hover-bg);
border-color: var(--tabber-active-tab-hover-border-color);
border-bottom: none;
}
ul.tabbernav li.tabberactive > a::after {
content: '';
position: absolute;
left: 0;
right: 0;
bottom: -1px;
border-bottom: 2px solid var(--tabber-active-tab-border-hider-color);
}
ul.tabbernav li a {
background-color: var(--tabber-inactive-tab-bg);
border-bottom: transparent;
border-color: var(--tabber-inactive-tab-border-color);
color: var(--tabber-inactive-tab-color);
display: inline-block;
font-size: 110%;
padding: 0.5em 1em;
}
ul.tabbernav li a:hover {
background-color: var(--tabber-inactive-tab-hover-bg);
border-color: var(--tabber-inactive-tab-hover-border-color);
}
ul.tabbernav li a:link,
ul.tabbernav li a:visited {
color: var(--tabber-inactive-tab-color);
}
:root {
--ooui-text: var(--text-color);
--ooui-interface: var(--body-light);
--ooui-interface-border: var(--body-border);
--ooui-window-background: rgba(255, 255, 255, 0.5);
--ooui-normal: #cdb3a6;
--ooui-normal--hover: #d8c4ba;
--ooui-normal-border: #d1b9ad;
--ooui-progressive: #936243;
--ooui-progressive--hover: #b27a57;
--ooui-accent: var(--link-color);
--ooui-input: #fff;
--ooui-input-border: #d1b9ad;
--ooui-input-border--hover: #ae846f;
--ooui-disabled: #c9c3bf;
--ooui-disabled-border: #dfd6d2;
--ooui-disabled-text: var(--subtle-color);
--ooui-pending-background-image: repeating-linear-gradient(-45deg, var(--search-box), var(--search-box) 20px, var(--body-main) 20px, var(--body-main) 30px);
}
.oo-ui-widget {
color: var(--ooui-text);
}
.oo-ui-checkboxInputWidget [type='checkbox'] + span,
.oo-ui-radioInputWidget [type='radio'] + span {
background-color: var(--ooui-input);
border-color: var(--ooui-input-border);
}
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:checked + span,
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:indeterminate + span {
background-color: var(--ooui-progressive);
border-color: var(--ooui-progressive);
}
.oo-ui-radioInputWidget.oo-ui-widget-enabled [type='radio']:checked + span {
border-color: var(--ooui-progressive);
}
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:checked:hover + span,
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:indeterminate:hover + span {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
}
.oo-ui-radioInputWidget.oo-ui-widget-enabled [type='radio']:checked:hover + span {
border-color: var(--ooui-progressive--hover);
}
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:hover + span,
.oo-ui-radioInputWidget.oo-ui-widget-enabled [type='radio']:hover + span {
border-color: var(--ooui-accent);
}
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:focus + span {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:active + span,
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:checked:active + span,
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:indeterminate:active + span {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
box-shadow: inset 0 0 0 1px var(--ooui-progressive--hover);
}
.oo-ui-radioInputWidget.oo-ui-widget-enabled [type='radio']:active + span {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
}
.oo-ui-radioInputWidget.oo-ui-widget-enabled [type='radio']:checked:active + span {
border-color: var(--ooui-progressive--hover);
box-shadow: inset 0 0 0 1px var(--ooui-progressive--hover);
}
.oo-ui-radioInputWidget.oo-ui-widget-enabled [type='radio']:checked:active + span:before {
border-color: var(--ooui-progressive--hover);
}
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:checked:focus + span,
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:indeterminate:focus + span {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent), inset 0 0 0 2px #fff;
}
.oo-ui-checkboxInputWidget [type='checkbox']:disabled + span,
.oo-ui-radioInputWidget [type='radio']:disabled + span {
background-color: var(--ooui-disabled);
border-color: var(--ooui-disabled);
}
.oo-ui-dropdownWidget-handle {
border-color: var(--ooui-normal-border);
}
.oo-ui-dropdownWidget.oo-ui-widget-enabled .oo-ui-dropdownWidget-handle {
background-color: var(--ooui-normal);
color: var(--ooui-text);
}
.oo-ui-dropdownWidget.oo-ui-widget-enabled .oo-ui-dropdownWidget-handle:hover {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
}
.oo-ui-dropdownWidget.oo-ui-widget-enabled .oo-ui-dropdownWidget-handle:active {
color: var(--ooui-text);
}
.oo-ui-dropdownWidget.oo-ui-widget-enabled .oo-ui-dropdownWidget-handle:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-dropdownWidget.oo-ui-widget-enabled.oo-ui-dropdownWidget-open .oo-ui-dropdownWidget-handle {
background-color: var(--ooui-normal--hover);
}
.oo-ui-dropdownWidget.oo-ui-widget-disabled .oo-ui-dropdownWidget-handle {
color: var(--ooui-disabled-text);
text-shadow: none;
border-color: var(--ooui-disabled-border);
background-color: var(--ooui-disabled);
}
.oo-ui-dropdownInputWidget select {
border-color: var(--ooui-normal-border);
}
.oo-ui-dropdownInputWidget option {
background-color: var(--ooui-interface);
}
.oo-ui-dropdownInputWidget.oo-ui-widget-enabled {
background-color: var(--ooui-normal);
}
.oo-ui-dropdownInputWidget.oo-ui-widget-enabled:hover {
background-color: var(--ooui-normal--hover);
}
.oo-ui-dropdownInputWidget.oo-ui-widget-enabled select {
color: var(--ooui-text);
}
.oo-ui-dropdownInputWidget.oo-ui-widget-enabled select:hover,
.oo-ui-dropdownInputWidget.oo-ui-widget-enabled select:active {
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
}
.oo-ui-dropdownInputWidget.oo-ui-widget-enabled select:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-labelWidget.oo-ui-inline-help {
color: var(--byline-color);
}
.oo-ui-menuSelectWidget {
background-color: var(--ooui-interface);
border-color: var(--ooui-interface-border);
}
.oo-ui-menuSelectWidget-frameless {
box-shadow: inset 0 -1px 0 0 var(--ooui-normal-border);
}
.oo-ui-menuSectionOptionWidget {
color: var(--byline-color);
}
.oo-ui-menuOptionWidget.oo-ui-optionWidget-highlighted,
.oo-ui-menuOptionWidget.oo-ui-optionWidget-selected {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
}
.oo-ui-menuOptionWidget.oo-ui-optionWidget-selected.oo-ui-menuOptionWidget.oo-ui-optionWidget-highlighted,
.oo-ui-menuOptionWidget.oo-ui-optionWidget-pressed.oo-ui-menuOptionWidget.oo-ui-optionWidget-highlighted {
color: var(--ooui-accent);
}
.oo-ui-menuOptionWidget.oo-ui-widget-enabled.oo-ui-optionWidget {
color: var(--ooui-text);
}
.oo-ui-messageDialog-title {
color: inherit;
}
.oo-ui-messageWidget.oo-ui-messageWidget-block.oo-ui-flaggedElement-error {
background-color: var(--errorbox-bg);
border-color: var(--errorbox-border);
}
.oo-ui-messageWidget.oo-ui-messageWidget-block.oo-ui-flaggedElement-warning {
background-color: var(--warningbox-bg);
border-color: var(--warningbox-border);
}
.oo-ui-messageWidget.oo-ui-messageWidget-block.oo-ui-flaggedElement-success {
background-color: var(--successbox-bg);
border-color: var(--successbox-border);
}
.oo-ui-messageWidget.oo-ui-messageWidget-block.oo-ui-flaggedElement-notice {
background-color: var(--messagebox-info-background);
border-color: var(--messagebox-info-border);
}
.oo-ui-messageWidget.oo-ui-flaggedElement-error:not(.oo-ui-messageWidget-block),
.oo-ui-messageWidget.oo-ui-flaggedElement-success:not(.oo-ui-messageWidget-block) {
color: var(--ooui-text);
}
.oo-ui-optionWidget.oo-ui-widget-disabled {
color: var(--ooui-disabled-text);
}
.oo-ui-outlineControlsWidget {
background-color: var(--ooui-normal);
}
.oo-ui-outlineOptionWidget.oo-ui-optionWidget-highlighted {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
}
.oo-ui-popupWidget-popup {
background-color: var(--ooui-interface);
border-color: var(--ooui-interface-border);
}
.oo-ui-popupWidget-anchored-top .oo-ui-popupWidget-anchor:after {
border-bottom-color: var(--ooui-interface);
}
.oo-ui-popupWidget-anchored-top .oo-ui-popupWidget-anchor:before {
border-bottom-color: var(--ooui-interface-border);
}
.oo-ui-popupWidget-anchored-bottom .oo-ui-popupWidget-anchor:after {
border-top-color: var(--ooui-interface);
}
.oo-ui-popupWidget-anchored-bottom .oo-ui-popupWidget-anchor:before {
border-top-color: var(--ooui-interface-border);
}
.oo-ui-popupWidget-anchored-start .oo-ui-popupWidget-anchor:after {
border-right-color: var(--ooui-interface);
}
.oo-ui-popupWidget-anchored-start .oo-ui-popupWidget-anchor:before {
border-right-color: var(--ooui-interface-border);
}
.oo-ui-popupWidget-anchored-end .oo-ui-popupWidget-anchor:after {
border-left-color: var(--ooui-interface);
}
.oo-ui-popupWidget-anchored-end .oo-ui-popupWidget-anchor:before {
border-left-color: var(--ooui-interface-border);
}
.oo-ui-searchWidget-query {
border-bottom-color: var(--ooui-interface-border);
}
.oo-ui-selectFileWidget-dropTarget {
background-color: var(--ooui-interface);
border-color: var(--ooui-interface-border);
}
.oo-ui-selectFileWidget.oo-ui-widget-enabled.oo-ui-selectFileWidget-dropTarget {
background-color: var(--ooui-interface);
}
.oo-ui-selectFileWidget.oo-ui-widget-enabled.oo-ui-selectFileWidget-dropTarget:hover {
border-color: var(--ooui-input-border--hover);
}
.oo-ui-tabOptionWidget {
color: var(--ooui-text);
}
.oo-ui-tabSelectWidget-framed .oo-ui-tabOptionWidget.oo-ui-optionWidget-selected {
background-color: var(--body-dark);
color: var(--ooui-text);
}
.oo-ui-tabSelectWidget-framed .oo-ui-tabOptionWidget.oo-ui-optionWidget-selected .oo-ui-labelElement-label {
border-bottom-color: var(--body-border);
}
.oo-ui-tabSelectWidget-framed .oo-ui-tabOptionWidget.oo-ui-widget-enabled:hover,
.oo-ui-tabSelectWidget-framed .oo-ui-tabOptionWidget.oo-ui-widget-enabled:active {
background-color: var(--body-light);
color: var(--ooui-text);
}
.oo-ui-tabSelectWidget-framed .oo-ui-tabOptionWidget.oo-ui-widget-enabled.oo-ui-optionWidget-selected:hover {
background-color: var(--body-dark);
}
.oo-ui-tabSelectWidget-frameless .oo-ui-tabOptionWidget.oo-ui-optionWidget-selected {
color: var(--ooui-progressive);
box-shadow: inset 0 -2px 0 0 var(--ooui-progressive);
}
.oo-ui-tabSelectWidget-frameless .oo-ui-tabOptionWidget.oo-ui-optionWidget-selected:hover,
.oo-ui-tabSelectWidget-frameless .oo-ui-tabOptionWidget.oo-ui-optionWidget-selected:focus {
color: var(--ooui-progressive--hover);
box-shadow: inset 0 -2px 0 0 var(--ooui-progressive--hover);
}
.oo-ui-tabSelectWidget-framed {
background: none;
border-bottom: 1px solid var(--ooui-interface-border);
}
.oo-ui-tabSelectWidget-frameless {
box-shadow: inset 0 -1px 0 0 var(--ooui-interface-border);
}
.oo-ui-tabSelectWidget-mobile {
}
.oo-ui-tabSelectWidget-mobile.oo-ui-tabSelectWidget-framed:after {
background: var(--mobile-navbox-linear-gradient);
}
.oo-ui-tabSelectWidget-mobile.oo-ui-tabSelectWidget-frameless:after {
background: var(--mobile-navbox-linear-gradient);
}
.oo-ui-tagItemWidget {
border-color: var(--ooui-normal-border);
}
.oo-ui-tagItemWidget.oo-ui-widget-enabled {
color: var(--ooui-text);
}
.oo-ui-tagItemWidget.oo-ui-widget-enabled:hover {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
}
.oo-ui-tagItemWidget.oo-ui-widget-enabled:not( .oo-ui-tagItemWidget-fixed ) {
background-color: var(--ooui-normal);
}
.oo-ui-tagItemWidget.oo-ui-widget-enabled .oo-ui-buttonElement-button:hover {
background-color: var(--ooui-normal--hover);
}
.oo-ui-tagMultiselectWidget.oo-ui-widget-enabled {
background-color: var(--ooui-interface);
}
.oo-ui-tagMultiselectWidget.oo-ui-widget-enabled.oo-ui-tagMultiselectWidget-outlined {
background-color: var(--ooui-normal);
}
.oo-ui-tagMultiselectWidget.oo-ui-widget-enabled.oo-ui-tagMultiselectWidget-outlined .oo-ui-tagItemWidget.oo-ui-widget-enabled {
background-color: var(--ooui-interface);
}
.oo-ui-textInputWidget .oo-ui-inputWidget-input {
background-color: var(--ooui-input);
color: var(--ooui-text);
border-color: var(--ooui-input-border);
}
.oo-ui-textInputWidget.oo-ui-widget-enabled .oo-ui-inputWidget-input::placeholder {
color: var(--subtle-color);
}
.oo-ui-textInputWidget.oo-ui-widget-enabled .oo-ui-inputWidget-input:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-textInputWidget.oo-ui-widget-enabled .oo-ui-inputWidget-input[readonly]:not(.oo-ui-pendingElement-pending) {
background-color: var(--ooui-disabled);
color: var(--ooui-disabled-text);
}
.oo-ui-textInputWidget.oo-ui-widget-enabled:hover .oo-ui-inputWidget-input {
border-color: var(--ooui-input-border--hover);
}
.oo-ui-textInputWidget.oo-ui-widget-enabled:hover .oo-ui-inputWidget-input:focus {
border-color: var(--ooui-accent);
}
@media screen and (min-width: 0) {
.oo-ui-textInputWidget.oo-ui-widget-enabled textarea.oo-ui-inputWidget-input:focus {
outline: 1px solid var(--ooui-accent);
}
}
.oo-ui-textInputWidget.oo-ui-widget-disabled .oo-ui-inputWidget-input {
background-color: var(--ooui-disabled);
color: var(--ooui-disabled-text);
text-shadow: none;
border-color: var(--ooui-disabled-border);
}
.oo-ui-toggleSwitchWidget {
background-color: var(--ooui-input);
border-color: var(--ooui-input-border);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled .oo-ui-toggleSwitchWidget-grip {
background-color: var(--ooui-input);
border-color: var(--ooui-input-border);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:hover {
background-color: var(--ooui-input);
border-color: var(--ooui-accent);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:hover .oo-ui-toggleSwitchWidget-grip {
background-color: var(--ooui-input);
border-color: var(--ooui-accent);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:active,
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:active:hover,
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:active:focus {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
box-shadow: inset 0 0 0 1px var(--ooui-progressive--hover);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:active .oo-ui-toggleSwitchWidget-grip,
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:active:hover .oo-ui-toggleSwitchWidget-grip,
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:active:focus .oo-ui-toggleSwitchWidget-grip {
background-color: var(--ooui-input);
border-color: var(--ooui-input);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:focus .oo-ui-toggleSwitchWidget-grip {
border-color: var(--ooui-accent);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled.oo-ui-toggleWidget-on {
background-color: var(--ooui-progressive);
border-color: var(--ooui-progressive);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled.oo-ui-toggleWidget-on .oo-ui-toggleSwitchWidget-grip {
background-color: var(--ooui-input);
border-color: var(--ooui-input);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled.oo-ui-toggleWidget-on:hover {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled.oo-ui-toggleWidget-on:active,
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled.oo-ui-toggleWidget-on:active:hover {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled.oo-ui-toggleWidget-on:focus {
border-color: var(--ooui-progressive);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled.oo-ui-toggleWidget-on:focus::before {
border-color: #fff;
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-disabled {
background-color: var(--ooui-disabled);
border-color: var(--ooui-disabled);
}
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled > .oo-ui-buttonElement-button {
color: var(--ooui-text);
}
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled > .oo-ui-buttonElement-button:hover {
color: var(--ooui-text);
}
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled > .oo-ui-buttonElement-button:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled.oo-ui-buttonElement-pressed > input.oo-ui-buttonElement-button,
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled > .oo-ui-buttonElement-button:active {
color: var(--ooui-text);
}
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button,
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button:hover {
color: var(--ooui-text);
}
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button:active,
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive.oo-ui-buttonElement-pressed > .oo-ui-buttonElement-button {
color: var(--ooui-text);
border-color: var(--ooui-text);
}
.oo-ui-buttonElement-frameless.oo-ui-widget-disabled > .oo-ui-buttonElement-button {
color: var(--ooui-disabled-text);
}
.oo-ui-buttonElement-framed.oo-ui-widget-disabled > .oo-ui-buttonElement-button {
background-color: var(--ooui-disabled);
border-color: var(--ooui-disabled-border);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled > .oo-ui-buttonElement-button {
background-color: var(--ooui-normal);
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled > .oo-ui-buttonElement-button:hover {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled > .oo-ui-buttonElement-button:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-buttonElement-active > .oo-ui-buttonElement-button {
background-color: var(--ooui-progressive--hover);
color: #fff;
border-color: var(--ooui-progressive--hover);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-buttonElement-active > .oo-ui-buttonElement-button:focus {
border-color: var(--ooui-progressive--hover);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled > .oo-ui-buttonElement-button:active,
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-buttonElement-pressed > .oo-ui-buttonElement-button {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive {
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button {
color: var(--ooui-text);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button:hover {
background-color: var(--ooui-normal--hover);
border-color: var(--ooui-progressive--hover);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-destructive > .oo-ui-buttonElement-button {
color: var(--ooui-text);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-destructive > .oo-ui-buttonElement-button:hover {
background-color: var(--ooui-normal--hover);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button {
background-color: var(--ooui-progressive);
border-color: var(--ooui-progressive);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button:hover {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent), inset 0 0 0 2px #fff;
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button:active,
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive.oo-ui-buttonElement-pressed > .oo-ui-buttonElement-button,
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive.oo-ui-buttonElement-active > .oo-ui-buttonElement-button,
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive.oo-ui-popupToolGroup-active > .oo-ui-buttonElement-button {
color: #fff;
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
}
.oo-ui-pendingElement-pending {
background-image: var(--ooui-pending-background-image);
background-size: 200%;
animation: oo-ui-pendingElement-stripes 6s linear infinite;
}
@keyframes oo-ui-pendingElement-stripes {
100% {
background-position: 100%;
}
}
.oo-ui-messageDialog-content > .oo-ui-window-foot {
outline-color: var(--ooui-interface-border);
}
.oo-ui-messageDialog-message {
color: var(--ooui-text);
}
.oo-ui-messageDialog-actions-horizontal .oo-ui-actionWidget {
border-right-color: var(--ooui-interface-border);
}
.oo-ui-messageDialog-actions-vertical .oo-ui-actionWidget {
border-bottom-color: var(--ooui-interface-border);
}
.oo-ui-processDialog-content .oo-ui-window-head,
.oo-ui-processDialog-content .oo-ui-window-foot {
outline-color: var(--ooui-interface-border);
}
.oo-ui-processDialog .oo-ui-actionWidget > .oo-ui-buttonElement-button {
border-top-color: transparent;
border-bottom-color: transparent;
}
.oo-ui-processDialog .oo-ui-actionWidget > .oo-ui-buttonElement-button:hover,
.oo-ui-processDialog .oo-ui-actionWidget > .oo-ui-buttonElement-button:active {
border-top-color: transparent;
border-bottom-color: transparent;
}
.oo-ui-processDialog .oo-ui-actionWidget:not( .oo-ui-flaggedElement-progressive ):not( .oo-ui-flaggedElement-destructive ) > .oo-ui-buttonElement-button:hover,
.oo-ui-processDialog .oo-ui-actionWidget:not( .oo-ui-flaggedElement-progressive ):not( .oo-ui-flaggedElement-destructive ) > .oo-ui-buttonElement-button:active {
border-right-color: var(--ooui-interface-border);
border-left-color: transparent;
}
.oo-ui-processDialog .oo-ui-actionWidget:not( .oo-ui-flaggedElement-progressive ):not( .oo-ui-flaggedElement-destructive ) > .oo-ui-buttonElement-button:focus {
border-color: var(--ooui-accent);
}
.oo-ui-processDialog-actions-safe .oo-ui-actionWidget > .oo-ui-buttonElement-button,
.oo-ui-processDialog-actions-other .oo-ui-actionWidget > .oo-ui-buttonElement-button {
border-right-color: var(--ooui-normal-border);
border-left-color: transparent;
}
.oo-ui-processDialog-actions-safe .oo-ui-widget-enabled.oo-ui-iconElement:not( .oo-ui-labelElement ) > .oo-ui-buttonElement-button:hover {
background-color: var(--ooui-normal--hover);
border-right-color: var(--ooui-interface-border);
}
.oo-ui-windowManager-modal > .oo-ui-dialog {
background-color: var(--ooui-window-background);
}
.oo-ui-windowManager-modal > .oo-ui-dialog > .oo-ui-window-frame {
background-color: var(--ooui-interface);
}
.oo-ui-windowManager-modal.oo-ui-windowManager-floating > .oo-ui-dialog > .oo-ui-window-frame {
border-color: var(--ooui-interface-border);
}
.oo-ui-window {
color: var(--ooui-text);
}
.oo-ui-toolbar-bar {
background-color: var(--ooui-interface);
color: var(--ooui-text);
}
.oo-ui-toolbar-position-top > .oo-ui-toolbar-bar {
border-bottom-color: var(--body-mid);
}
.oo-ui-toolbar-bar .oo-ui-bookletLayout > .oo-ui-menuLayout-menu {
border-right-color: var(--body-mid);
}
.oo-ui-tool.oo-ui-widget-enabled > .oo-ui-tool-link:hover {
background-color: var(--ooui-normal--hover);
}
.oo-ui-tool.oo-ui-widget-enabled > .oo-ui-tool-link:focus {
outline: 1px solid var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-tool.oo-ui-widget-enabled > .oo-ui-tool-link:active,
.oo-ui-tool.oo-ui-widget-enabled.oo-ui-tool-active > .oo-ui-tool-link,
.oo-ui-tool.oo-ui-widget-enabled.oo-ui-popupToolGroup-active > .oo-ui-tool-link {
background-color: var(--ooui-normal--hover);
color: var(--ooui-accent);
box-shadow: none;
}
.oo-ui-tool.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive > .oo-ui-tool-link {
background-color: var(--ooui-progressive);
}
.oo-ui-tool.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive > .oo-ui-tool-link:hover {
background-color: var(--ooui-progressive--hover);
}
.oo-ui-tool.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive > .oo-ui-tool-link:focus {
box-shadow: inset 0 0 0 1px var(--ooui-accent), inset 0 0 0 2px #fff;
}
.oo-ui-tool.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive > .oo-ui-tool-link:active,
.oo-ui-tool.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive.oo-ui-tool-active > .oo-ui-tool-link {
background-color: var(--ooui-progressive--hover);
}
.oo-ui-listToolGroup-tools .oo-ui-tool.oo-ui-widget-enabled {
background-color: var(--ooui-normal);
}
.oo-ui-listToolGroup-tools .oo-ui-tool.oo-ui-widget-enabled:hover {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
}
.oo-ui-listToolGroup-tools .oo-ui-tool-active.oo-ui-widget-enabled .oo-ui-tool-link .oo-ui-tool-title {
color: var(--ooui-progressive);
}
.oo-ui-menuToolGroup {
border-left-color: var(--body-mid);
border-right-color: var(--body-mid);
}
.oo-ui-popupToolGroup-tools {
background-color: var(--ooui-interface);
border-color: var(--body-mid);
}
.oo-ui-popupToolGroup.oo-ui-widget-enabled > .oo-ui-popupToolGroup-handle:hover {
background-color: var(--ooui-normal--hover);
}
.oo-ui-popupToolGroup.oo-ui-widget-enabled > .oo-ui-popupToolGroup-handle:focus {
outline: 1px solid var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-toolbar-actions .oo-ui-popupToolGroup.oo-ui-widget-enabled > .oo-ui-popupToolGroup-handle:hover {
border-right-color: var(--ooui-normal--hover);
}
.oo-ui-popupToolGroup-tools .oo-ui-tool.oo-ui-widget-enabled .oo-ui-tool-link:focus {
box-shadow: inset 0 0 0 2px var(--ooui-accent);
}
.oo-ui-popupToolGroup-tools .oo-ui-tool-active.oo-ui-widget-enabled .oo-ui-tool-link .oo-ui-tool-title {
color: var(--ooui-progressive);
}
.oo-ui-popupToolGroup.oo-ui-popupToolGroup-active > .oo-ui-popupToolGroup-handle {
background-color: var(--ooui-normal);
color: var(--ooui-accent);
}
.oo-ui-popupToolGroup.oo-ui-popupToolGroup-active > .oo-ui-popupToolGroup-handle:hover {
background-color: var(--ooui-normal--hover);
color: var(--ooui-accent);
}
.oo-ui-bookletLayout-outlinePanel > .oo-ui-outlineControlsWidget {
border-top-color: var(--ooui-interface-border);
}
.oo-ui-bookletLayout > .oo-ui-menuLayout-menu {
border-right-color: var(--ooui-interface-border);
}
.oo-ui-fieldLayout-disabled > .oo-ui-fieldLayout-body > .oo-ui-fieldLayout-header > .oo-ui-labelElement-label {
color: var(--ooui-disabled-text);
}
.oo-ui-panelLayout-framed {
border-color: var(--sidebar);
}
.oo-ui-icon-settings {
background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' width='20' height='20' viewBox='0 0 20 20'%3E%3Ctitle%3Esettings%3C/title%3E%3Cg transform='translate(10 10)'%3E%3Cpath id='a' d='M1.5-10h-3l-1 6.5h5m0 7h-5l1 6.5h3'/%3E%3Cuse xlink:href='%23a' transform='rotate(45)'/%3E%3Cuse xlink:href='%23a' transform='rotate(90)'/%3E%3Cuse xlink:href='%23a' transform='rotate(135)'/%3E%3C/g%3E%3Cpath d='M10 2.5a7.5 7.5 0 0 0 0 15 7.5 7.5 0 0 0 0-15v4a3.5 3.5 0 0 1 0 7 3.5 3.5 0 0 1 0-7'/%3E%3C/svg%3E");
}
.oo-ui-icon-clear {
background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 20 20'%3E%3Ctitle%3Eclear%3C/title%3E%3Cpath d='M10 0a10 10 0 1 0 10 10A10 10 0 0 0 10 0zm5.66 14.24-1.41 1.41L10 11.41l-4.24 4.25-1.42-1.42L8.59 10 4.34 5.76l1.42-1.42L10 8.59l4.24-4.24 1.41 1.41L11.41 10z'/%3E%3C/svg%3E");
}
.mw-widget-dateInputWidget-handle {
background-color: var(--ooui-input);
color: var(--ooui-text);
border-color: var(--ooui-input-border);
}
.mw-widget-dateInputWidget-calendar {
background-color: var(--ooui-interface);
}
.mw-widget-dateInputWidget.oo-ui-widget-enabled .mw-widget-dateInputWidget-handle:hover {
border-color: var(--ooui-input-border--hover);
}
.mw-widget-calendarWidget {
border-color: var(--ooui-interface-border);
}
.mw-widget-calendarWidget:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.mw-widget-calendarWidget-day,
.mw-widget-calendarWidget-day-heading {
color: var(--ooui-text);
}
.mw-widget-calendarWidget-day-additional {
color: var(--ooui-text);
opacity: 0.67;
}
.mw-widget-calendarWidget-day-today {
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.mw-widget-calendarWidget-item:hover {
background-color: var(--ooui-progressive);
}
.mw-widget-calendarWidget-item-selected {
background-color: var(--ooui-progressive--hover);
}
.mw-widgets-datetime-calendarWidget {
background-color: var(--ooui-interface);
border-color: var(--ooui-interface-border);
}
.mw-widgets-datetime-calendarWidget:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent), 0 2px 2px 0 rgba(0, 0, 0, 0.25);
}
.mw-widgets-datetime-calendarWidget-grid .mw-widgets-datetime-calendarWidget-cell.mw-widgets-datetime-calendarWidget-extra .oo-ui-buttonElement-button .oo-ui-labelElement-label {
color: var(--subtle-color);
}
.mw-widgets-datetime-calendarWidget-grid .mw-widgets-datetime-calendarWidget-cell.mw-widgets-datetime-calendarWidget-selected .oo-ui-buttonElement-button {
background-color: var(--ooui-progressive--hover);
}
.mw-widgets-datetime-dateTimeInputWidget-handle {
background-color: var(--ooui-input);
color: var(--ooui-text);
border-color: var(--ooui-input-border);
}
.mw-widgets-datetime-dateTimeInputWidget.oo-ui-widget-enabled.mw-widgets-datetime-dateTimeInputWidget-handle:hover {
border-color: var(--ooui-input-border--hover);
}
.mw-widgets-datetime-dateTimeInputWidget.oo-ui-widget-enabled:hover input,
.mw-widgets-datetime-dateTimeInputWidget.oo-ui-widget-enabled:hover textarea {
border-color: var(--ooui-input-border--hover);
}
.mw-widgets-datetime-dateTimeInputWidget.oo-ui-widget-enabled .mw-widgets-datetime-dateTimeInputWidget-editField:hover {
background-color: var(--ooui-normal);
}
.ve-activated .ve-init-mw-desktopArticleTarget-originalContent #catlinks:hover {
background: var(--ooui-normal--hover);
}
.ve-ui-overlay {
font-family: inherit;
}
.oo-ui-toolbar-position-top .ve-ui-toolbarDialog-position-above {
border-top-color: var(--body-mid);
}
.ve-ce-branchNode-blockSlug,
.ve-ce-branchNode-newSlug {
outline-color: var(--body-border);
background-color: var(--ooui-interface);
}
.ve-ui-specialCharacterPage h3 {
color: var(--byline-color);
}
.ve-ui-specialCharacterPage-character {
border-color: var(--body-mid);
}
.ve-ui-specialCharacterPage-character:hover {
border-color: var(--body-dark);
}
.ve-ce-linkAnnotation.ve-ce-annotation-active {
box-shadow: 0 0 0 1px var(--body-mid);
background: none;
}
.ve-ui-desktopContext .ve-ui-linkContextItem .ve-ui-linkContextItem-label {
border-color: var(--body-border);
}
.ve-ui-mwHelpPopupTool-version-label,
.ve-ui-mwHelpPopupTool-version-link,
.ve-ui-mwHelpPopupTool-version-date {
color: var(--byline-color);
}
.ve-ce-tableCellableNode {
border-color: var(--body-mid);
}
.ve-ce-mwReferencesListNode-muted {
color: var(--byline-color);
}
.ve-ui-mwTemplatePage-description,
.ve-ui-mwParameterPage-label,
.ve-ui-mwParameterPage-description-required,
.ve-ui-mwParameterPage-description-deprecated {
color: var(--byline-color);
}
.mw-widget-titleWidget-menu .mw-widget-titleOptionWidget-description {
color: var(--byline-color);
}
.ve-ui-mwGalleryDialog-menuLayout > .oo-ui-menuLayout-menu,
.ve-ui-mwGalleryDialog-innerMenuLayout > .oo-ui-menuLayout-menu,
.ve-ui-mwGalleryDialog .ve-ui-mwGalleryDialog-image-container,
.ve-ui-targetWidget {
border-color: var(--body-border);
}
.ve-ui-targetWidget:not(.oo-ui-pendingElement-pending) {
background-color: var(--body-main);
}
.ve-ui-mwSaveDialog {
color: var(--ooui-text);
}
.ve-ui-mwSaveDialog-options {
background-color: var(--ooui-interface);
border-color: var(--body-border);
}
.ve-ui-mwSaveDialog-summary {
background-color: var(--ooui-input);
}
.ve-ui-mwSaveDialog-editSummary-count {
border-color: var(--body-border);
}
.ve-ui-mwSaveDialog-license {
color: var(--byline-color);
}
.ve-ui-mwReferenceContextItem-muted {
color: var(--byline-color);
}
.ve-ui-mwNoticesPopupTool-items > div:not(:first-child),
.ve-ui-mwHelpPopupTool-item:not(:first-child) {
border-color: var(--body-border);
}
.ve-ui-mwTransclusionOutlineControlsWidget {
background-color: var(--ooui-interface);
border-top-color: var(--body-border);
}
.ve-ui-mwTransclusionOutlineTemplateWidget-sticky {
background-color: var(--ooui-interface);
}
.ve-ui-mwTransclusionOutlineTemplateWidget .ve-ui-mwTransclusionOutlineParameterWidget.oo-ui-optionWidget-highlighted {
color: var(--ooui-text);
}
.ve-ui-mwTransclusionOutlineTemplateWidget-no-template-parameters {
color: var(--subtle-color);
}
.ve-ui-mwParameterPage-undocumentedLabel {
color: var(--subtle-color);
}
.ve-ui-mwTwoPaneTransclusionDialogLayout > .oo-ui-menuLayout-menu {
border-right: var(--body-border);
}
.ve-ui-mwParameterPage-doc-required,
.ve-ui-mwParameterPage-doc-deprecated,
.ve-ui-mwParameterPage-inlineDescription .ve-ui-mwParameterPage-doc-example {
color: var(--byline-color);
}
.ve-ui-expandableContent-toggle {
background-color: var(--ooui-interface);
}
.ve-ui-expandableContent-fade {
background: linear-gradient(to right, rgba(255, 255, 255, 0) 0, var(--ooui-interface) 90%);
}
.ve-ui-commandHelpDialog-shortcut > kbd,
.ve-ui-commandHelpDialog-sequence > kbd {
background-color: var(--keypress-background);
color: var(--keypress-color);
border-color: var(--keypress-border);
box-shadow: none;
text-shadow: none;
}
.ve-init-mw-desktopArticleTarget-toolbarPlaceholder-floating .ve-init-mw-desktopArticleTarget-toolbarPlaceholder-bar {
background: var(--ooui-interface);
}
.ve-init-mw-desktopArticleTarget-toolbarPlaceholder-bar {
border-bottom-color: var(--body-mid);
}
figure[typeof~='mw:File/Thumb'],
figure[typeof~='mw:File/Frame'],
figure[typeof~='mw:Image/Thumb'],
figure[typeof~='mw:Video/Thumb'],
figure[typeof~='mw:Image/Frame'],
figure[typeof~='mw:Video/Frame'] {
border: none;
background-color: var(--thumb-bg);
}
figure[typeof~='mw:File/Thumb'] > a:first-child > *:first-child:not( .mw-broken-media ),
figure[typeof~='mw:File/Frame'] > a:first-child > *:first-child:not( .mw-broken-media ),
figure[typeof~='mw:Image/Thumb'] > a:first-child > *:first-child:not( .mw-broken-media ),
figure[typeof~='mw:Video/Thumb'] > a:first-child > *:first-child:not( .mw-broken-media ),
figure[typeof~='mw:Image/Frame'] > a:first-child > *:first-child:not( .mw-broken-media ),
figure[typeof~='mw:Video/Frame'] > a:first-child > *:first-child:not( .mw-broken-media ) {
border: none;
background: var(--thumb-bg);
}
figure[typeof~='mw:File/Thumb'] > figcaption,
figure[typeof~='mw:File/Frame'] > figcaption,
figure[typeof~='mw:Image/Thumb'] > figcaption,
figure[typeof~='mw:Video/Thumb'] > figcaption,
figure[typeof~='mw:Image/Frame'] > figcaption,
figure[typeof~='mw:Video/Frame'] > figcaption {
border: none;
background-color: var(--thumb-caption-bg);
padding: 4px 6px;
}
:root {
--keypress-background: #eee;
--keypress-border: #ccc;
--keypress-color: #333;
}
.toc .toctitle > * {
color: #fff;
}
.navbox .navbox-title {
color: #fff;
}
.navbox .navbox-list:not(last-child) {
border-bottom: none;
}
.archivelist {
background-color: var(--body-light);
border: solid 1px var(--body-border);
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
float: right;
margin: 5px;
padding: 5px;
text-align: center;
width: 120px;
}
.shortcut {
border: 1px solid var(--body-border);
background: var(--body-light);
float: right;
font-size: 0.8em;
margin: 0.5em 0em 0.5em 1em;
padding: 0.5em;
text-align: center;
}
.hatnote,
.seealso {
font-style: italic;
}
.hatnote i,
.seealso i {
font-style: normal;
}
div.hatnote,
div.seealso {
margin: 0.5em 1.6em;
}
div.hatnote + div.hatnote,
div.hatnote + div.seealso,
div.seealso + div.hatnote,
div.seealso + div.seealso {
margin-top: -0.5em;
}
.keypress {
background: var(--keypress-background);
color: var(--keypress-color);
font-family: inherit;
border: 1px solid var(--keypress-border);
border-radius: 2px;
font-size: 0.9em;
margin: 0 0.1em;
padding: 0.1em 0.4em;
white-space: nowrap;
}
:root {
--documentation-background: #f9fafa;
--documentation-link-color: #e4eaee;
--documentation-headers-color: #fff;
--documentation-header-background: #949eaa;
--documentation-subheader-background: #808c9a;
--documentation-border: #e4eaee;
}
.documentation {
background: var(--documentation-background);
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
margin: 1em 0;
}
.documentation pre,
.documentation code {
background-color: var(--documentation-background);
border-color: var(--documentation-border);
}
.documentation h2,
.documentation hr {
border-color: var(--documentation-border);
}
.documentation-header {
color: var(--documentation-headers-color);
background: var(--documentation-header-background);
font-weight: bold;
padding: 1em 1.5em;
}
.documentation-title {
font-size: 1.25em;
}
.documentation-subheader {
color: var(--documentation-headers-color);
background: var(--documentation-subheader-background);
padding: 0.5em 1.5em;
}
.documentation-subheader a,
.documentation-subheader a:visited,
.documentation-subheader a:active {
color: var(--documentation-link-color);
}
.documentation-documentation,
.documentation-links {
font-size: 0.85em;
}
.documentation-content {
padding: 1em 1.5em;
}
.mw-templatedata-doc-params dl:not(:empty) {
column-count: 3;
border-top: 1px solid var(--body-border);
margin-bottom: 0.5em;
}
.mw-templatedata-doc-params dt::after {
content: ":";
}
.mw-templatedata-doc-params dd,
.mw-templatedata-doc-params dt {
margin: 0.1em 2em;
min-width: auto;
}
.mw-templatedata-doc-muted {
color: var(--subtle-color);
font-style: italic;
}
:root {
--infobox-text-color: var(--text-color);
--table-header: var(--body-dark);
--table-subheader: var(--body-mid);
--table-body: var(--body-light);
--table-border: var(--body-border);
}
.infobox {
font-size: 0.85em;
width: 300px;
border-collapse: collapse;
float: right;
table-layout: fixed;
margin: 0.5em 0 1em 1em;
}
.infobox .infobox-buttons {
display: flex;
flex-wrap: wrap;
justify-content: center;
grid-gap: 3px;
margin-bottom: 3px;
}
.infobox .infobox-buttons .button {
background: var(--table-header);
padding: 0 5px;
font-weight: bold;
flex: 1 1 20%;
max-width: 20%;
color: #fff;
}
.infobox tbody {
border: 1px solid var(--table-border);
background: var(--table-body);
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(231, 215, 199, 0.5);
}
.infobox .infobox-header {
background: var(--table-header);
padding: 0.5em 0;
text-align: center;
color: #fff;
font-size: 1.15em;
font-weight: bold;
line-height: 1.4em;
}
.infobox .infobox-image {
text-align: center;
}
.infobox .infobox-subheader {
background: var(--table-subheader);
font-weight: bold;
text-align: center;
color: #fff;
}
.infobox .infobox-padding {
backgound: var(--table-body);
}
.infobox tr td:not(.infobox-padding) {
padding: 0.2em 0.5em;
}
.infobox th:not(.infobox-header):not(.infobox-subheader):not(.infobox-nested) {
border-right: 2px solid var(--table-subheader);
text-align: right;
padding: 0.2em 0.5em;
}
.hidden {
display: none;
}
ol.references,
.reflist {
font-size: 90%;
}
.reflist {
list-style-type: decimal;
}
.reflist .references {
font-size: 100%;
list-style-type: inherit;
}
.reflist-lower-alpha {
list-style-type: lower-alpha;
}
ol.references li:target,
sup.reference:target {
background-color: var(--body-light);
}
.hideQuotes .refhide {
display: none;
}
:root {
--messagebox-obsolete-background: #cfcfcf;
--messagebox-obsolete-border: #464646;
--messagebox-obsolete-color: var(--text-color);
--messagebox-obsolete-link-color: #6c6c6c;
--messagebox-info-background: #ebebeb;
--messagebox-info-border: #898989;
--messagebox-info-color: var(--text-color);
--messagebox-info-link-color: #6c6c6c;
--messagebox-action-background: #c7e8fa;
--messagebox-action-border: #0b5884;
--messagebox-action-color: var(--text-color);
--messagebox-action-link-color: #03436b;
--messagebox-warn-background: #dfc0ba;
--messagebox-warn-border: #861c10;
--messagebox-warn-color: var(--text-color);
--messagebox-warn-link-color: #8e221a;
--messagebox-safe-background: #d8f0d3;
--messagebox-safe-border: #1b8408;
--messagebox-safe-color: var(--text-color);
--messagebox-safe-link-color: #1b8408;
--messagebox-disambig-background: #ebebeb;
--messagebox-disambig-border: #898989;
--messagebox-disambig-color: var(--text-color);
--messagebox-disambig-link-color: #6c6c6c;
--messagebox-discord-background: #5865f2;
--messagebox-discord-border: #4c57d0;
--messagebox-discord-link-color: #d2e5fc;
}
.mw-message-box,
.mw-message-box-error,
.mw-message-box-warning,
.mw-message-box-success,
.usermessage {
color: var(--text-color);
}
.messagebox {
width: 65%;
margin: 0.5em auto;
border-left: 15px solid;
border-color: var(--body-dark);
background-color: var(--body-light);
box-sizing: border-box;
}
.messagebox.obsolete {
background-color: var(--messagebox-obsolete-background);
border-color: var(--messagebox-obsolete-border);
color: var(--messagebox-obsolete-color);
}
.messagebox.obsolete a,
.messagebox.obsolete a:visited,
.messagebox.obsolete a:active {
color: var(--messagebox-obsolete-link-color);
}
.messagebox.info {
background-color: var(--messagebox-info-background);
border-color: var(--messagebox-info-border);
color: var(--messagebox-info-color);
}
.messagebox.info a,
.messagebox.info a:visited,
.messagebox.info a:active {
color: var(--messagebox-info-link-color);
}
.messagebox.action {
background-color: var(--messagebox-action-background);
border-color: var(--messagebox-action-border);
color: var(--messagebox-action-color);
}
.messagebox.action a,
.messagebox.action a:visited,
.messagebox.action a:active {
color: var(--messagebox-action-link-color);
}
.messagebox.warn {
background-color: var(--messagebox-warn-background);
border-color: var(--messagebox-warn-border);
color: var(--messagebox-warn-color);
}
.messagebox.warn a,
.messagebox.warn a:visited,
.messagebox.warn a:active {
color: var(--messagebox-warn-link-color);
}
.messagebox.safe {
background-color: var(--messagebox-safe-background);
border-color: var(--messagebox-safe-border);
color: var(--messagebox-safe-color);
}
.messagebox.safe a,
.messagebox.safe a:visited,
.messagebox.safe a:active {
color: var(--messagebox-safe-link-color);
}
.messagebox.disambig {
background-color: var(--messagebox-disambig-background);
border-color: var(--messagebox-disambig-border);
color: var(--messagebox-disambig-color);
}
.messagebox.disambig a,
.messagebox.disambig a:visited,
.messagebox.disambig a:active {
color: var(--messagebox-disambig-link-color);
}
.messagebox.discord {
background-color: var(--messagebox-discord-background);
border-color: var(--messagebox-discord-border);
color: #fff;
}
.messagebox.discord a,
.messagebox.discord a:visited,
.messagebox.discord a:active {
color: var(--messagebox-discord-link-color);
}
.messagebox.discord a.external,
.messagebox.discord a:visited.external,
.messagebox.discord a:active.external {
font-style: italic;
}
.messagebox.stub {
width: 40%;
}
.messagebox.hasdialogue {
padding: 0 10px;
width: auto;
}
:root {
--byline-arrow-filter: invert(29%) sepia(0%) saturate(376%) hue-rotate(172deg) brightness(87%) contrast(80%);
--tile-border-color: var(--body-border);
--tile-background-color: var(--body-light);
--tile-link-button-color: #f5e9db;
--tile-link-button-highlight-color: #dfccb0;
--tile-dark-color: #fff;
--tile-dark-bg: #5d6773;
--tile-dark-link-color: #ccc;
--tile-dark-byline-color: rgba(255, 255, 255, 0.7);
--tile-dark-header-color: #fff;
}
.tile {
background: var(--tile-background-color);
border: 1px solid var(--tile-border-color);
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
padding: 1.5em 2em 1em;
max-width: 40em;
}
.tile h2 {
font-size: 1.4em;
font-weight: bold;
border: none;
margin: 0 0 0.4em;
}
.tile .byline + h2 {
margin-top: -0.5em;
}
.tile.dark {
color: var(--tile-dark-color);
background: var(--tile-dark-bg);
border: none;
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.3);
}
.tile.dark h2 {
color: var(--tile-dark-header-color);
}
.tile.dark a {
color: var(--tile-dark-link-color);
}
.tile.dark .byline {
color: var(--tile-dark-byline-color);
}
.byline {
font-size: 0.9em;
color: var(--byline-color);
}
.byline a {
color: var(--byline-color);
}
.tile-row {
display: flex;
flex-flow: row wrap;
margin-bottom: 1em;
}
.tile-halves {
display: flex;
flex-flow: row wrap;
border: 1px solid var(--tile-border-color);
background: var(--tile-background-color);
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
}
.tile-halves h2 {
font-size: 1.4em;
font-weight: bold;
border: none;
margin: 0 0 0.4em;
}
.tile-halves .byline + h2 {
margin-top: -0.5em;
}
.tile-top {
width: 100%;
padding: 1.3rem 1.5rem 0.6rem;
}
.tile-top.tile-image {
display: flex;
align-items: center;
background-color: var(--byline-color);
overflow: hidden;
padding: 0;
height: 13vw;
max-height: 12em;
transition: 0.4s ease-out;
}
.tile-halves:hover .tile-top.tile-image img {
transform: scale(1.1);
transition: 0.5s ease-out;
}
.tile-top.tile-image a {
width: 100%;
}
.tile-top.tile-image img {
width: 100%;
object-fit: cover;
max-height: 200px;
transition: 0.4s ease-out;
}
.tile-bottom {
background: var(--tile-background-color);
border-top: 1px solid var(--tile-border-color);
width: 100%;
padding: 1rem 1.5rem 0.6rem;
}
.tile-bottom.link-button {
align-self: flex-end;
padding: 0;
}
.tile-bottom.link-button a {
display: block;
text-align: center;
padding: 0.75em 1.5em 0.8em;
text-decoration: none;
}
.tile-bottom.read-more {
background: var(--tile-link-button-color);
transition: 0.3s ease-out;
}
.tile-bottom.read-more a {
color: var(--byline-color);
font-weight: bold;
text-align: right;
}
.tile-bottom.read-more:hover {
background: var(--tile-link-button-highlight-color);
}
.tile-bottom.read-more:hover .arrow {
transform: translateX(50%);
}
.tile-bottom.read-more .arrow {
filter: var(--byline-arrow-filter);
margin-left: 0.4em;
transition: 0.3s ease-out;
}
body.page-Main_Page.action-view .catlinks,
body.page-Main_Page.action-view #contentSub,
body.page-Main_Page.action-view #firstHeading,
body.page-Main_Page.action-view #siteNotice {
display: none;
}
body.page-Main_Page .mw-parser-output {
max-width: 75em;
margin: 0 auto;
}
body.page-Main_Page.action-view .catlinks,
body.page-Main_Page.action-view #contentSub,
body.page-Main_Page.action-view #siteNotice {
display: none;
}
.mainpage-header {
display: flex;
margin: 2.6em 1.75em 1.5em;
}
.mainpage-header .header-intro {
flex: 2;
}
.mainpage-header .header-intro h1 {
font-size: 2.5em;
font-weight: bold;
border: none;
margin: 0 0 0.15em;
}
.mainpage-header .header-intro p {
font-size: 1.1em;
line-height: 1.7em;
}
.mainpage-header .header-stats {
flex: 1;
display: flex;
justify-content: center;
align-items: center;
margin-top: -1em;
}
.mainpage-body {
display: grid;
grid-template-areas: "event event event" "update update update" "content content content" "left left right";
gap: 0.9rem;
grid-template-columns: repeat(3, 1fr);
}
.mainpage-body h2 a {
color: var(--text-color);
}
.mainpage-body .tile {
padding-left: 1.75em;
padding-right: 1.75em;
max-width: 100%;
}
.mainpage-body .tile-row {
width: 100%;
margin-bottom: 0;
}
.mainpage-body .tile-row {
display: grid;
gap: 0.9rem;
}
.mainpage-contents.tile-row {
display: flex;
}
.mainpage-contents.tile-row .tile-top {
height: 5.5rem;
}
.mainpage-left {
grid-area: left;
flex: 2;
display: flex;
flex-flow: column wrap;
}
.mainpage-left > * {
margin: 0 0 0.9rem;
}
.mainpage-right {
grid-area: right;
flex: 1;
display: flex;
flex-flow: column wrap;
}
.mainpage-right > * {
margin: 0 0 0.9rem;
}
.arrow {
background: url('filepath://White-chevron.svg') no-repeat;
display: inline-block;
height: 0.7rem;
width: 0.45rem;
vertical-align: middle;
}
.arrow.dark {
filter: invert(80%);
}
.mainpage-contents {
grid-area: content;
grid-template-columns: repeat(6, 1fr);
}
.mainpage-contents .tile-halves {
flex: 1;
}
.mainpage-contents .tile-top {
height: 4.5rem;
position: relative;
}
.mainpage-contents .tile-top.tile-image img {
height: auto;
}
.mainpage-contents h2 {
margin: 0;
padding: 0;
}
.mainpage-contents .tile-bottom.link-button a {
padding: 0.75em 0.2em;
}
.popular-pages ul {
display: grid;
grid-template-columns: repeat(3, 1fr);
grid-gap: 0.6em;
margin: 1em 0 0.7em 0;
}
.mp-popular-page-light {
display: flex;
align-items: center;
background-color: var(--button-background);
transition: 100ms;
}
.mp-popular-page-light a {
flex: 1;
display: block;
color: #fff;
font-weight: bold;
text-align: center;
text-decoration: none;
padding: 0.7em 1em;
}
.mp-popular-page-light:hover {
filter: brightness(115%);
transition: 100ms;
}
.mainpage-social {
border: none;
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.3);
}
.mainpage-social .tile-top {
display: flex;
align-items: center;
padding: 1em 1.5em;
}
.mainpage-social .tile-top a {
flex: 1;
position: relative;
text-decoration: none;
}
.mainpage-social .tile-top a:hover .arrow {
transform: translateX(50%);
}
.mainpage-social .tile-bottom {
border: none;
padding: 1em 1.75em;
}
.mainpage-social .tile-bottom p {
color: #fff;
font-weight: bold;
font-size: 0.9em;
text-align: center;
text-transform: uppercase;
letter-spacing: 0.03em;
margin: 0;
}
.mainpage-social .social-icon {
margin-right: 0.75em;
text-align: center;
width: 60px;
}
.mainpage-social .social-header {
color: #fff;
font-weight: bold;
font-size: 1.15em;
margin: 0.5em 0 -0.15em;
}
.mainpage-social .server-tagline {
color: rgba(255, 255, 255, 0.9);
margin-bottom: 0.5em;
}
.mainpage-social .arrow {
position: absolute;
top: calc(50% - .5em);
right: 0;
height: 1em;
width: 0.7em;
background-size: 0.7em 1em;
transition: 0.3s ease-out;
}
.mainpage-social.mainpage-discord .tile-top {
background: #5865f2;
}
.mainpage-social.mainpage-discord .tile-bottom {
background: #525ee0;
}
.mainpage-social.mainpage-twitter .tile-top {
background: #15202b;
}
.mainpage-social.mainpage-twitter .tile-bottom {
background: #121c26;
}
.mainpage-editing {
border: none;
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.3);
}
.mainpage-editing .tile-top {
background: #438ab5;
}
.mainpage-editing .tile-bottom {
background: #3980ab;
border: none;
padding: 0.8rem 1.5rem 0.4rem;
}
.mainpage-editing h2,
.mainpage-editing a {
color: #fff;
}
.mainpage-editing p {
color: rgba(255, 255, 255, 0.9);
}
.mainpage-editing ul {
list-style-image: url('filepath://Transparent-chevron.svg');
}
@media only screen and (max-width: 1200px) {
.mainpage-contents {
grid-template-columns: repeat(3, 1fr);
}
}
@media only screen and (max-width: 1000px) {
.mainpage-body {
grid-template-areas: "event event event" "update update update" "content content content" "left left left" "right right right";
}
.mainpage-recent-updates {
grid-template-columns: repeat(2, 1fr);
}
.mainpage-recent-updates .tile-halves:last-child {
display: none;
}
.mainpage-recent-updates .tile-halves:hover .tile-top img {
transform: scale(1.04);
}
.mainpage-recent-updates .tile-top {
height: 18vw;
min-height: 9em;
}
.mainpage-header .header-stats {
display: none;
}
.mainpage-left > *:last-child,
.mainpage-right > *:last-child {
margin-bottom: 0;
}
.popular-pages ul {
grid-template-columns: repeat(2, 1fr);
}
}
@media only screen and (max-width: 720px) {
.mainpage-recent-updates {
grid-template-columns: none;
}
.mainpage-recent-updates .tile-halves:last-child {
display: flex;
}
.mainpage-contents {
grid-template-columns: repeat(2, 1fr);
}
}
.mw-prefs-buttons {
background-color: var(--body-main);
border-top-color: var(--body-border);
box-shadow: none;
}
.mw-prefs-tabs-wrapper.oo-ui-panelLayout-framed,
.mw-prefs-tabs > .oo-ui-menuLayout-content > .oo-ui-indexLayout-stackLayout > .oo-ui-tabPanelLayout {
border-color: var(--body-border);
}
.mw-htmlform-ooui .mw-htmlform-matrix tbody tr:nth-child(even) td {
background-color: var(--body-light);
}
.mw-htmlform-ooui .mw-htmlform-matrix tbody tr:hover td {
background-color: var(--body-mid);
}
:root {
--rc-positive-color: #407813;
--rc-negative-color: #b41e0f;
}
.mw-plusminus-pos {
color: var(--rc-positive-color);
}
.mw-plusminus-neg {
color: var(--rc-negative-color);
}
.client-js .mw-recentchanges-toplinks:not(.mw-recentchanges-toplinks-collapsed) {
border-color: var(--body-border);
background-color: var(--body-light);
border-radius: 2px;
}
.mw-rcfilters-ui-filterTagMultiselectWidget-wrapper-content-title {
color: var(--text-color);
}
.mw-rcfilters-ui-filterTagMultiselectWidget-emptyFilters {
color: var(--byline-color);
}
.mw-rcfilters-ui-filterTagMultiselectWidget.oo-ui-widget-enabled .oo-ui-tagMultiselectWidget-handle {
background-color: var(--ooui-interface);
border-color: var(--ooui-interface-border);
}
.mw-rcfilters-ui-filterTagMultiselectWidget-views-select-widget.oo-ui-widget {
border-color: var(--ooui-interface-border);
}
.mw-rcfilters-collapsed .mw-rcfilters-ui-filterTagMultiselectWidget {
border-bottom-color: var(--ooui-interface-border);
}
.mw-rcfilters-ui-menuSelectWidget-footer {
background-color: var(--ooui-interface);
border-color: var(--ooui-interface-border);
}
.mw-rcfilters-ui-viewSwitchWidget label.oo-ui-labelWidget {
color: var(--byline-color);
}
.mw-rcfilters-ui-tagItemWidget-popup-content {
color: var(--ooui-text);
}
.mw-changeslist-legend,
.mw-rcfilters-ui-changesListWrapperWidget .mw-changeslist-legend {
background-color: var(--body-light);
border-color: var(--body-dark);
}
.mw-rcfilters-ui-changesListWrapperWidget-previousChangesIndicator {
border-color: var(--sidebar);
}
.client-js .mw-changeslist ul,
.client-js .mw-changeslist table.mw-enhanced-rc {
margin-left: 0;
}
.mw-rcfilters-ui-watchlistTopSectionWidget-separator {
border-color: var(--sidebar);
}
.mw-rcfilters-ui-itemMenuOptionWidget-header {
border-bottom-color: var(--ooui-interface);
background-color: var(--ooui-interface-border);
}
.mw-rcfilters-ui-itemMenuOptionWidget:not(:last-child):not(.mw-rcfilters-ui-itemMenuOptionWidget-identifier-talk) {
border-bottom-color: var(--ooui-normal-border);
}
.mw-rcfilters-ui-itemMenuOptionWidget-label-title,
.mw-rcfilters-ui-itemMenuOptionWidget-label-desc {
color: var(--text-color);
}
.mw-rcfilters-ui-filterMenuOptionWidget.oo-ui-flaggedElement-muted:not(.oo-ui-optionWidget-selected) {
background-color: var(--body-main);
}
.mw-rcfilters-ui-filterMenuOptionWidget.oo-ui-flaggedElement-muted .mw-rcfilters-ui-itemMenuOptionWidget-label-title,
.mw-rcfilters-ui-filterMenuOptionWidget.oo-ui-flaggedElement-muted .mw-rcfilters-ui-itemMenuOptionWidget-label-desc {
color: var(--subtle-color);
}
.mw-rcfilters-ui-filterMenuSectionOptionWidget {
background-color: var(--body-mid);
}
.mw-rcfilters-ui-filterMenuSectionOptionWidget-header-title.oo-ui-labelElement-label {
color: var(--ooui-text);
}
.mw-rcfilters-ui-filterMenuHeaderWidget-title {
color: var(--ooui-text);
}
.mw-rcfilters-ui-filterMenuHeaderWidget-header {
border-bottom-color: var(--ooui-interface-border);
background-color: var(--ooui-interface);
}
.mw-rcfilters-ui-itemMenuOptionWidget-view-namespaces {
border-top-color: var(--ooui-interface-border);
}
.mw-rcfilters-ui-datePopupWidget {
border-color: var(--ooui-interface-border);
}
.mw-rcfilters-ui-datePopupWidget .mw-rcfilters-ui-valuePickerWidget-title {
color: var(--byline-color);
}
.mw-rcfilters-ui-savedLinksListItemWidget-label {
color: var(--ooui-accent);
}
.client-js .mw-changeslist.mw-rcfilters-ui-changesListWrapperWidget-highlighted ul,
.client-js .mw-changeslist.mw-rcfilters-ui-changesListWrapperWidget-highlighted table.mw-enhanced-rc {
margin-left: 1.5em;
}
.page-Special_CreateAccount .mw-ui-container,
.page-Special_UserLogin .mw-ui-container {
max-width: 64rem;
margin: 0 auto;
}
.mw-number-text {
color: var(--byline-color);
}
.mw-body-content .mw-number-text h3 {
color: var(--text-color);
}
#mw-indicator-mw-helplink a {
background: none;
padding: 0;
display: flex;
align-items: center;
}
#mw-indicator-mw-helplink a::before {
content: '';
margin-right: 5px;
-webkit-mask: url("/resources/src/mediawiki.helplink/images/helpNotice.svg?46d34") no-repeat 50% 50% / contain;
mask: url("/resources/src/mediawiki.helplink/images/helpNotice.svg?46d34") no-repeat 50% 50% / contain;
background: var(--text-color);
height: 20px;
width: 20px;
}
.results-info {
color: inherit;
}
.mw-search-profile-tabs {
background-color: var(--body-mid);
border-color: transparent;
}
.search-types .current a {
color: inherit;
}
#mw-searchoptions {
background-color: var(--body-mid);
border-color: transparent;
}
#mw-searchoptions .divider {
border-color: var(--body-border);
}
#mw-searchoptions h4 {
font-family: inherit;
}
#mw-searchoptions .oo-ui-labelElement:nth-of-type(odd) {
font-weight: bold;
}
.searchresult {
line-height: 1.5;
}
.searchalttitle,
#mw-search-interwiki li {
font-size: 90%;
}
.mw-search-result-data {
color: var(--byline-color);
}
.page-Special_ListFiles a.image img {
width: inherit;
height: inherit;
}
.page-Special_ListFiles .TablePager_col_thumb {
text-align: center;
}
#editcount table[border="1"] {
background-color: var(--body-main) !important;
border-color: var(--wikitable-border) !important;
margin-top: 0.5em;
}
#editcount table[border="1"] th,
#editcount table[border="1"] td {
padding: 0.2em 0.4em;
}
#editcount table[border="1"] th {
background-color: var(--wikitable-header-bg);
border: 1px solid var(--wikitable-border);
}
#editcount table[border="1"] td {
border: 1px solid var(--wikitable-border);
}
#editcount table[border="1"] tr:nth-child(odd) {
background-color: var(--body-light);
}
.mw-echo-ui-notificationBadgeButtonPopupWidget-popup > .oo-ui-popupWidget-popup .mw-echo-ui-placeholderItemWidget {
background-color: inherit;
}
table.mw-interwikitable.body td.mw-interwikitable-local-yes {
background-color: var(--table-yes-background);
color: var(--table-yes-color);
}
.mw-protectedpages-unknown {
color: var(--byline-color);
}
.watchlistredir,
.allpagesredirect {
font-style: italic;
}
.allpagesredirect:after {
color: var(--byline-color);
content: " (redirect)";
}
.mw-apisandbox-toolbar {
background: var(--body-main);
}
.oo-ui-menuOptionWidget .mw-apisandbox-flag {
color: var(--byline-color);
}
tr.mw-abusefilter-list-disabled,
tr.mw-abusefilter-list-disabled td {
color: var(--byline-color);
}
table.mw-abuselog-details {
background: var(--wikitable-bg);
border-color: var(--wikitable-border);
}
table.mw-abuselog-details th {
background: var(--wikitable-header-bg);
}
table.mw-abuselog-details th,
table.mw-abuselog-details td {
border-color: var(--wikitable-border);
}
.mw-abusefilter-log-hidden-entry {
color: var(--subtle-color);
}
body td.mw-abusefilter-history-changed {
background: var(--table-no-background);
}
div.mw-abusefilter-editor,
#mw-abusefilter-warn-preview,
#mw-abusefilter-disallow-preview {
border-color: var(--ooui-input-border);
}
.mw-destfile-warning {
border-color: var(--warningbox-border);
color: var(--text-color);
background-color: var(--warningbox-bg);
}
span.fileinput-button {
background-color: var(--ooui-normal);
border-color: var(--ooui-normal-border);
color: var(--ooui-text);
}
ul.fileupload-results li.ful-success {
background-color: var(--successbox-bg);
}
ul.fileupload-results li.ful-success a {
color: var(--link-color);
}
ul.fileupload-results li.ful-error {
background-color: var(--errorbox-bg);
}
.color-container {
display: flex;
margin: 2em auto;
width: 80%;
max-width: 60em;
}
.color-column {
flex: 1;
margin-right: 1em;
}
.color-column:last-child {
margin-right: 0;
}
.color-column h3 {
padding: 0;
}
.color-group {
color: #333;
padding: 1em 1.5em;
transition: 0.2s ease-out;
}
.color-group:hover {
transform: scale(1.03);
}
.color-group.dark {
color: #fff;
}
.color-group .variable,
.color-group .hexcode {
font-family: monospace;
font-size: 1.1em;
-webkit-user-select: all;
-moz-user-select: all;
-ms-user-select: all;
user-select: all;
margin: 0;
}
body.wgl-readermode .color-group .variable,
body.wgl-readermode .color-group .hexcode {
font-size: inherit;
}
.color-group .variable {
font-weight: bold;
}
#t-print,
#t-permalink {
display: none;
}
#filetoc {
border-radius: 2px;
background: var(--body-mid);
border-color: transparent;
margin: 0.5em auto;
text-align: center;
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
}
li.gallerybox div.thumb {
border: none;
background-color: var(--thumb-bg);
}
.smwfact {
display: none;
}
.list-header {
background-color: var(--body-mid);
color: inherit;
}
.editOptions {
color: var(--text-color);
background-color: var(--sourceeditor-background-secondary);
border-color: var(--sourceeditor-border);
}
.mw-json th,
.mw-json td {
border-color: var(--wikitable-border);
}
.mw-json td {
background: var(--wikitable-bg);
}
.mw-json th {
background: var(--wikitable-header-bg);
}
f34d0078a10f318062ba49a667ebf9dd5226b71b
1685
1682
2024-04-01T01:21:00Z
Merds
25
Updating CSS from [[MediaWiki:Common.less]]
css
text/css
/* <pre> */
:root {
--body-main: #fdfcfc;
--body-light: #f5f0eb;
--body-mid: #d1b9ad;
--body-dark: #b1886f;
--body-border: #d1b9ad;
--body-background-color: #173a4d;
--button-background: #605443;
--button-color: #fff;
--button-border: #3c352a;
--button-dark: #18140c;
--button-light: #3a301d;
--sidebar: #cfc08d;
--background-text-color: #e2dbc8;
--background-link-color: #e2bd8a;
--search-box: #efeee6;
--link-color: #6e452b;
--redlink-color: #ba0000;
--text-color: #2F2828;
--byline-color: #ccc;
--subtle-color: #777;
--admin-blue: #332e75;
--bearcat-green: #13592e;
--awb-purple: #933b96;
--rsw-blue: #438ab6;
--osrsw-brown: #605443;
--thumb-bg: var(--body-light);
--thumb-caption-bg: var(--body-mid);
--sourceeditor-input-background: #fff;
--sourceeditor-background: var(--body-light);
--sourceeditor-background-secondary: var(--body-light);
--sourceeditor-border: var(--body-mid);
--codemirror-gutter-background: var(--body-mid);
}
@font-face {
font-family: 'Lora';
font-weight: 400 700;
font-style: normal;
font-display: swap;
src: url('filepath://Lora.woff2') format('woff2');
}
@font-face {
font-family: 'Lora';
font-weight: 400 700;
font-style: italic;
font-display: swap;
src: url('filepath://Lora-Italic.woff2') format('woff2');
}
:root {
--base-text-color: #36414f;
--base-heading-color: #444e5a;
--base-heading-border: #e4eaee;
--mw-code-background-color: var(--body-light);
--body-background-image: url('filepath://Wiki_background.jpg');
}
#mw-page-base {
background: none;
}
.mw-body {
background-color: var(--body-main);
color: var(--text-color);
border-color: transparent;
box-shadow: 0 0 7px rgba(0, 0, 0, 0.15);
margin-top: 0;
}
h1,
h2,
h3,
h4,
h5,
h6 {
color: var(--text-color);
}
h1,
h2 {
border-color: var(--body-border);
}
.mw-body h1,
.mw-body-content h1,
.mw-body-content h2,
.mw-body-content h3,
.mw-body-content h4,
.mw-body-content h5,
.mw-body-content h6 {
font-family: 'Lora', 'Palatino', 'Georgia', serif;
}
.mw-parser-output h2:first-of-type {
clear: left;
}
.mw-footer {
color: var(--background-text-color);
}
.mw-footer li {
color: var(--background-text-color);
}
.mw-footer a,
.mw-footer a:active,
.mw-footer a:visited {
color: var(--background-link-color);
}
::placeholder {
color: var(--subtle-color);
}
a {
color: var(--link-color);
}
a:visited,
a:active {
color: var(--link-color);
}
a.new {
color: var(--redlink-color);
}
a.new:visited {
color: var(--redlink-color);
}
.mw-parser-output a.extiw,
.mw-parser-output a.external {
color: var(--link-color);
}
.mw-parser-output a.extiw:visited,
.mw-parser-output a.external:visited,
.mw-parser-output a.extiw:active,
.mw-parser-output a.external:active {
color: var(--link-color);
}
.jsPurgeLink a.external {
color: var(--link-color);
}
:root {
--errorbox-bg: #feecea;
--errorbox-border: #ee4231;
--warningbox-bg: #fef9de;
--warningbox-border: #f9d000;
--successbox-bg: #ecf8e3;
--successbox-border: #6bc71f;
}
.mw-message-box-error,
.errorbox,
.mw-message-box-warning,
.warningbox,
.mw-message-box-success,
.successbox,
.usermessage {
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
}
.mw-message-box-error,
.errorbox {
background-color: var(--errorbox-bg);
border-color: var(--errorbox-border);
}
.mw-message-box-warning,
.warningbox,
.usermessage {
background-color: var(--warningbox-bg);
border-color: var(--warningbox-border);
}
.mw-message-box-success,
.successbox {
background-color: var(--successbox-bg);
border-color: var(--successbox-border);
}
.catlinks {
background: var(--body-light);
border: 1px solid var(--body-dark);
padding: 8px 15px;
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
}
.catlinks li {
border-color: var(--body-mid);
}
.filehistory a img,
#file img {
background: url("data:image/svg+xml,%3C%3Fxml version='1.0' encoding='UTF-8'%3F%3E%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16'%3E%3Cpath d='M0 0h8v16h8V8H0z' opacity='.13'/%3E%3C/svg%3E") repeat;
}
#file img:hover {
background: none;
}
.mw-highlight {
background: none;
}
.mw-highlight .linenos {
background-color: var(--mw-code-background-color);
color: var(--body-border);
}
.mw-highlight a:hover .linenos,
.mw-highlight .hll a .linenos {
color: var(--body-dark);
}
.mw-content-ltr.mw-highlight-lines pre,
.mw-content-ltr.content .mw-highlight-lines pre {
box-shadow: inset 2.75em 0 0 var(--mw-code-background-color);
}
#pagehistory ul {
list-style: none;
margin: 0;
}
#pagehistory li {
border: 1px solid transparent;
padding: 1px 10px;
margin: 2px 0;
}
#pagehistory li.selected {
background-color: var(--body-light);
color: inherit;
border: 1px dashed var(--body-border);
outline: none;
}
#mw-history-compare > div:first-of-type {
position: -webkit-sticky;
position: sticky;
top: 0;
background-color: var(--body-main);
border-bottom: 1px solid var(--body-dark);
padding: 0.25em 0;
}
.wgl-stickyheader #mw-history-compare > div:first-of-type {
top: 2.5rem;
}
.autocomment,
.autocomment a,
.autocomment a:visited {
color: var(--link-color);
}
li span.deleted,
span.history-deleted {
color: var(--byline-color);
}
.mw-usertoollinks-contribs-no-edits,
.mw-usertoollinks-contribs-no-edits:visited {
color: var(--redlink-color);
}
.CategoryTreeToggle {
color: var(--link-color);
}
body.wgl-stickyheader.action-view .mw-headline:target::before {
display: block;
content: '';
margin-top: -3rem;
height: 3rem;
visibility: hidden;
pointer-events: none;
}
.mw-mmv-post-image {
color: var(--text-color);
background-color: var(--body-main);
}
.mw-mmv-image-metadata {
border-top-color: var(--body-mid);
background-color: var(--body-light);
}
.mw-mmv-dialog,
.mw-mmv-dialog .mw-mmv-dialog-down-arrow,
.mw-mmv-options-dialog .mw-mmv-dialog-down-arrow {
background-color: var(--body-light);
box-shadow: none;
}
.mw-mmv-options-enable-alert {
background-color: var(--body-light);
color: var(--text-color);
}
.mw-mmv-options-dialog-header,
.mw-mmv-options-text-header,
.mw-mmv-options-text-body,
.mw-mmv-options-enable-alert,
.mw-mmv-options-dialog .mw-mmv-disable-confirmation .mw-mmv-options-dialog-header,
.mw-mmv-options-dialog .mw-mmv-disable-confirmation .mw-mmv-options-text-header {
color: var(--text-color);
}
.mw-revslider-container {
border-color: var(--sidebar);
}
.mw-revslider-slider-wrapper {
border-top-color: var(--sidebar);
}
.mw-ui-button {
background-color: var(--ooui-normal);
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
}
.mw-ui-button:not(:disabled):hover,
.mw-ui-button:not(:disabled):active {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
}
.mw-ui-button:not(:disabled):focus {
color: var(--ooui-text);
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent), inset 0 0 0 2px #fff;
}
.mw-ui-button:not(:disabled):visited {
color: var(--ooui-text);
}
.mw-ui-button.mw-ui-progressive:not(:disabled) {
background-color: var(--ooui-progressive);
color: #fff;
border-color: var(--ooui-progressive);
}
.mw-ui-button.mw-ui-progressive:not(:disabled):hover {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
}
.mw-ui-button.mw-ui-progressive:not(:disabled):focus {
box-shadow: inset 0 0 0 1px var(--ooui-accent), inset 0 0 0 2px #fff;
}
.mw-ui-button.mw-ui-progressive:not(:disabled):active,
.mw-ui-button.mw-ui-progressive:not(:disabled).is-on {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
box-shadow: none;
}
.mw-ui-button.mw-ui-destructive:not( :disabled ) {
color: #fff;
}
.mw-ui-button.mw-ui-quiet,
.mw-ui-button.mw-ui-quiet.mw-ui-progressive,
.mw-ui-button.mw-ui-quiet.mw-ui-destructive {
color: var(--text-color);
}
input[type='checkbox']:hover + .mw-ui-button.mw-ui-quiet,
input[type='checkbox']:hover + .mw-ui-button.mw-ui-quiet.mw-ui-progressive,
input[type='checkbox']:hover + .mw-ui-button.mw-ui-quiet.mw-ui-destructive,
.mw-ui-button.mw-ui-quiet:hover,
.mw-ui-button.mw-ui-quiet.mw-ui-progressive:hover,
.mw-ui-button.mw-ui-quiet.mw-ui-destructive:hover {
background-color: rgba(0, 24, 73, 0.02745098);
color: var(--text-color);
border-color: transparent;
}
input[type='checkbox']:focus + .mw-ui-button.mw-ui-quiet,
input[type='checkbox']:focus + .mw-ui-button.mw-ui-quiet.mw-ui-progressive,
input[type='checkbox']:focus + .mw-ui-button.mw-ui-quiet.mw-ui-destructive,
.mw-ui-button.mw-ui-quiet:focus,
.mw-ui-button.mw-ui-quiet.mw-ui-progressive:focus,
.mw-ui-button.mw-ui-quiet.mw-ui-destructive:focus {
color: var(--text-color);
}
input[type='checkbox']:active + .mw-ui-button.mw-ui-quiet,
input[type='checkbox']:active + .mw-ui-button.mw-ui-quiet.mw-ui-progressive,
input[type='checkbox']:active + .mw-ui-button.mw-ui-quiet.mw-ui-destructive,
.mw-ui-button.mw-ui-quiet:active,
.mw-ui-button.mw-ui-quiet.mw-ui-progressive:active,
.mw-ui-button.mw-ui-quiet.mw-ui-destructive:active {
background-color: rgba(0, 36, 73, 0.08235294);
color: var(--text-color);
border-color: #72777d;
}
.mw-ui-input {
background-color: var(--ooui-input);
color: var(--text-color);
border-color: var(--ooui-input-border);
}
.mw-ui-input:hover {
border-color: var(--ooui-input-border--hover);
}
.mw-ui-input::placeholder {
color: var(--byline-color);
}
.mw-content-ltr .redirectText li:first-child {
padding: 0;
background: 0;
}
.mw-content-ltr .redirectText li:first-child::before {
content: '';
background: currentcolor;
-webkit-mask: url("filepath://Redirect-arrow.svg") no-repeat 50% 50% / contain;
mask: url("filepath://Redirect-arrow.svg") no-repeat 50% 50% / contain;
display: inline-block;
width: 47px;
height: 20px;
}
.vector-search-box-inner {
background: var(--body-main) !important;
box-shadow: inset 0 -7px 7px -7px rgba(0, 0, 0, 0.15) !important;
}
.vector-menu-dropdown .vector-menu-heading {
color: var(--vector-tab-link-color) !important;
}
.vector-menu-dropdown .vector-menu-heading:hover {
color: var(--vector-tab-link-color) !important;
}
.vector-menu-dropdown .vector-menu-heading:focus {
color: var(--vector-tab-link-color) !important;
}
:root {
--wikitable-header-bg: var(--body-dark);
--wikitable-border: var(--body-border);
--wikitable-bg: var(--body-light);
--wikitable-bg-lighter: #e9e3d6;
--wikitable-color: var(--text-color);
--table-na-background: rgba(255, 255, 255, 0.3);
--table-na-color: var(--subtle-color);
--table-yes-background: #c3e8a3;
--table-yes-color: #2e5e05;
--table-no-background: #fbc0ba;
--table-no-color: #801c13;
--table-maybe-background: #fcea94;
--table-maybe-color: #786300;
}
.wikitable {
background: var(--wikitable-bg);
color: var(--wikitable-color);
border-color: var(--wikitable-border);
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
}
.wikitable > tr > th,
.wikitable > tr > td,
.wikitable > * > tr > th,
.wikitable > * > tr > td {
border-color: var(--wikitable-border);
}
.wikitable > tr > th.table-noborder,
.wikitable > tr > td.table-noborder,
.wikitable > * > tr > th.table-noborder,
.wikitable > * > tr > td.table-noborder {
border-left-style: hidden;
border-right-style: hidden;
padding-left: 0;
padding-right: 0;
}
.wikitable > tr > th,
.wikitable > * > tr > th {
background-color: var(--wikitable-header-bg);
color: #fff;
}
.tabber .wikitable {
box-shadow: none;
}
.mw_metadata td,
.mw_metadata th {
border-color: var(--wikitable-border);
}
.mw_metadata th {
background-color: var(--wikitable-header-bg);
}
.mw_metadata td {
background-color: var(--wikitable-bg);
}
.mw-datatable {
border-color: var(--wikitable-border);
}
.mw-datatable td,
.mw-datatable th {
border-color: var(--wikitable-border);
}
.mw-datatable th {
background-color: var(--wikitable-header-bg);
}
.mw-datatable td {
background-color: var(--wikitable-bg);
}
.mw-datatable tr:hover td {
background-color: var(--wikitable-bg);
}
table.alternating-rows tr:nth-child(odd),
table.alternating-cols td:nth-child(odd) {
background: var(--wikitable-alternating-bg);
}
.table-na {
background: var(--table-na-background);
color: var(--table-na-color);
vertical-align: middle;
text-align: center;
}
.table-yes {
background: var(--table-yes-background);
color: var(--table-yes-color);
}
.table-positive {
background: var(--table-yes-background);
}
.table-no {
background: var(--table-no-background);
color: var(--table-no-color);
}
.table-negative {
background: var(--table-no-background);
}
.table-maybe {
background: var(--table-maybe-background);
color: var(--table-maybe-color);
}
#mw-allmessagestable .am_actual,
#mw-allmessagestable .am_default {
background-color: var(--wikitable-bg);
}
#mw-allmessagestable .am_default:hover,
#mw-allmessagestable .am_actual:hover,
#mw-allmessagestable tbody:hover td {
background-color: var(--wikitable-bg-lighter);
}
table.wikitable td.no-cell-spacing {
padding: 0;
height: 0;
}
table.wikitable td.no-cell-spacing table {
margin: -1px;
width: calc(100% + 2px);
height: calc(100% + 2px);
}
.plainlist ol,
.plainlist ul {
margin: 0;
}
.plainlist li {
margin-bottom: 0;
list-style: none;
}
table.align-right-1 td:nth-of-type(1),
table.align-right-2 td:nth-of-type(2),
table.align-right-3 td:nth-of-type(3),
table.align-right-4 td:nth-of-type(4),
table.align-right-5 td:nth-of-type(5),
table.align-right-6 td:nth-of-type(6),
table.align-right-7 td:nth-of-type(7),
table.align-right-8 td:nth-of-type(8),
table.align-right-9 td:nth-of-type(9),
table.align-right-10 td:nth-of-type(10),
table.align-right-11 td:nth-of-type(11),
table.align-right-12 td:nth-of-type(12),
table.align-right-13 td:nth-of-type(13),
table.align-right-14 td:nth-of-type(14),
table.align-right-15 td:nth-of-type(15),
table.align-right-16 td:nth-of-type(16),
table.align-right-17 td:nth-of-type(17),
table.align-right-18 td:nth-of-type(18),
table.align-right-19 td:nth-of-type(19),
table.align-right-20 td:nth-of-type(20) {
text-align: right;
}
table.align-center-1 td:nth-of-type(1),
table.align-center-2 td:nth-of-type(2),
table.align-center-3 td:nth-of-type(3),
table.align-center-4 td:nth-of-type(4),
table.align-center-5 td:nth-of-type(5),
table.align-center-6 td:nth-of-type(6),
table.align-center-7 td:nth-of-type(7),
table.align-center-8 td:nth-of-type(8),
table.align-center-9 td:nth-of-type(9),
table.align-center-10 td:nth-of-type(10),
table.align-center-11 td:nth-of-type(11),
table.align-center-12 td:nth-of-type(12),
table.align-center-13 td:nth-of-type(13),
table.align-center-14 td:nth-of-type(14),
table.align-center-15 td:nth-of-type(15),
table.align-center-16 td:nth-of-type(16),
table.align-center-17 td:nth-of-type(17),
table.align-center-18 td:nth-of-type(18),
table.align-center-19 td:nth-of-type(19),
table.align-center-20 td:nth-of-type(20) {
text-align: center;
}
table.align-left-1 td:nth-of-type(1),
table.align-left-2 td:nth-of-type(2),
table.align-left-3 td:nth-of-type(3),
table.align-left-4 td:nth-of-type(4),
table.align-left-5 td:nth-of-type(5),
table.align-left-6 td:nth-of-type(6),
table.align-left-7 td:nth-of-type(7),
table.align-left-8 td:nth-of-type(8),
table.align-left-9 td:nth-of-type(9),
table.align-left-10 td:nth-of-type(10),
table.align-left-11 td:nth-of-type(11),
table.align-left-12 td:nth-of-type(12),
table.align-left-13 td:nth-of-type(13),
table.align-left-14 td:nth-of-type(14),
table.align-left-15 td:nth-of-type(15),
table.align-left-16 td:nth-of-type(16),
table.align-left-17 td:nth-of-type(17),
table.align-left-18 td:nth-of-type(18),
table.align-left-19 td:nth-of-type(19),
table.align-left-20 td:nth-of-type(20) {
text-align: left;
}
:root {
--diff-addedline-border-color: #438ab5;
--diff-addedline-background: #bddff2;
--diff-addedline-color: #000;
--diff-deletedline-border-color: #379541;
--diff-deletedline-background: #c1edbf;
--diff-deletedline-color: #000;
--diff-context-border-color: var(--body-mid);
--diff-context-background: var(--body-mid);
}
.diff-context {
border-color: var(--diff-context-border-color);
background: var(--diff-context-background);
color: inherit;
}
.diff-addedline {
border-color: var(--diff-addedline-border-color);
}
.diff-addedline .diffchange {
background: var(--diff-addedline-background);
color: var(--diff-addedline-color);
}
.diff-deletedline {
border-color: var(--diff-deletedline-border-color);
}
.diff-deletedline .diffchange {
background: var(--diff-deletedline-background);
color: var(--diff-deletedline-color);
}
.mw-diff-movedpara-left:after,
.mw-diff-movedpara-right:after {
color: var(--text-color);
}
.mw-notification {
background-color: var(--body-light);
border-color: var(--body-border);
color: var(--text-color);
}
.mw-echo-ui-notificationsInboxWidget-toolbarWrapper {
background: var(--body-main);
}
.mw-body-content .mw-echo-ui-datedSubGroupListWidget-title-secondary {
color: var(--byline-color);
}
.mw-echo-ui-pageNotificationsOptionWidget.oo-ui-optionWidget-selected {
background-color: var(--ooui-normal);
color: var(--ooui-accent);
}
.mw-echo-ui-pageNotificationsOptionWidget-label-count {
background-color: var(--ooui-normal);
color: var(--byline-color);
}
.oo-ui-optionWidget-selected .mw-echo-ui-pageNotificationsOptionWidget-label-count {
color: var(--ooui-accent);
}
.mw-echo-ui-pageNotificationsOptionWidget.oo-ui-optionWidget-highlighted {
background-color: var(--ooui-normal);
color: var(--text-color);
}
.mw-echo-ui-crossWikiUnreadFilterWidget {
border-color: var(--body-border);
}
.mw-echo-ui-crossWikiUnreadFilterWidget-subtitle {
color: var(--byline-color);
}
.mw-echo-ui-notificationBadgeButtonPopupWidget-popup > .oo-ui-popupWidget-popup > .oo-ui-popupWidget-head,
.mw-echo-ui-notificationBadgeButtonPopupWidget-popup > .oo-ui-popupWidget-popup > .oo-ui-popupWidget-footer {
border-color: var(--ooui-interface-border);
}
.mw-echo-ui-notificationBadgeButtonPopupWidget-popup > .oo-ui-popupWidget-popup > .oo-ui-popupWidget-footer .mw-echo-ui-notificationBadgeButtonPopupWidget-footer-buttons .oo-ui-buttonElement:last-child {
border-left-color: var(--ooui-normal-border);
}
.mw-echo-ui-notificationItemWidget {
background-color: var(--ooui-normal);
border-color: var(--ooui-normal-border);
}
.mw-echo-ui-notificationItemWidget:hover,
.mw-echo-ui-notificationItemWidget-unread:hover {
background-color: var(--ooui-normal--hover);
}
.mw-echo-ui-notificationItemWidget:last-child {
border-bottom-color: var(--ooui-normal-border);
}
.mw-echo-ui-notificationItemWidget-unread {
background-color: var(--search-box);
}
.mw-echo-ui-crossWikiNotificationItemWidget-group,
.mw-echo-ui-bundleNotificationItemWidget-group {
background-color: var(--ooui-interface);
}
.mw-echo-ui-toggleReadCircleButtonWidget-circle {
background-color: var(--ooui-progressive);
}
.mw-echo-ui-toggleReadCircleButtonWidget:hover .mw-echo-ui-toggleReadCircleButtonWidget-circle {
background-color: var(--ooui-progressive--hover);
}
.mw-echo-ui-toggleReadCircleButtonWidget-circle-unread {
background-color: var(--ooui-normal);
border-color: var(--ooui-normal-border);
}
.mw-echo-ui-notificationItemWidget-content-message-header,
.mw-echo-ui-notificationItemWidget-content-message-body,
.mw-echo-ui-menuItemWidget > .oo-ui-buttonElement-button > .oo-ui-labelElement-label,
.mw-echo-ui-notificationItemWidget-content-actions-timestamp {
color: var(--ooui-text);
}
.mw-echo-ui-bundleNotificationItemWidget-group {
background-color: var(--body-main);
}
@keyframes unseen-fadeout-to-unread {
from {
background-color: var(--wikitable-bg-lighter);
}
to {
background-color: var(--search-box);
}
}
@keyframes unseen-fadeout-to-read {
from {
background-color: var(--wikitable-bg-lighter);
}
to {
background-color: var(--body-main);
}
}
.mwe-popups {
background: var(--body-light);
}
.mwe-popups .mwe-popups-container {
color: var(--text-color);
background: var(--body-light);
}
.mwe-popups .mwe-popups-container.flipped-x-y:before,
.mwe-popups .mwe-popups-container.flipped-y:before {
border-top: none;
}
.mwe-popups .mwe-popups-container.mwe-popups-no-image-tri:before {
border-bottom: none;
}
.mwe-popups .mwe-popups-container.flipped-x-y:after,
.mwe-popups .mwe-popups-container.flipped-y:after {
border-top-color: var(--body-light);
}
.mwe-popups .mwe-popups-container.mwe-popups-no-image-tri:after {
border-bottom-color: var(--body-light);
}
.mwe-popups .mwe-popups-settings-icon:hover,
.mwe-popups .mwe-popups-settings-icon:active {
background-color: var(--ooui-normal--hover);
}
.mwe-popups .mw-ui-icon-element:not(.disabled):hover {
background: none;
}
.mwe-popups .mwe-popups-extract {
color: var(--text-color);
}
.mwe-popups .mwe-popups-extract[dir='ltr']:after {
background-image: linear-gradient(to right, rgba(49, 62, 89, 0), var(--body-light) 50%);
}
.mwe-popups-overlay {
background-color: var(--ooui-window-background);
}
#mwe-popups-settings {
background: var(--ooui-interface);
border-color: var(--ooui-interface-border);
color: var(--text-color);
}
#mwe-popups-settings header {
border-color: var(--ooui-interface-border);
}
#mwe-popups-settings main#mwe-popups-settings-form p {
color: var(--byline-color);
}
#mwe-popups-settings main#mwe-popups-settings-form form label > span {
color: var(--ooui-text);
}
:root {
--smw-ask-options-even-bg: var(--body-mid);
--smw-ask-options-odd-bg: var(--body-light);
--smw-ask-action-btn-lblue-bg: var(--body-main);
--smw-ask-action-btn-lblue-color: #000;
--smw-ask-action-btn-lblue-border-color: var(--body-light);
--smw-ask-action-btn-dblue-bg: var(--body-light);
--smw-ask-action-btn-dblue-color: #fff;
--smw-ask-action-btn-dblue-border-color: var(--button-border);
}
.smw-ask-condition fieldset,
.smw-ask-printhead fieldset {
border-color: var(--sidebar);
}
.smw-ask-search fieldset,
.smw-ask-format fieldset,
.smw-ask-options fieldset {
border-color: var(--sidebar);
}
.strike > span:before,
.strike > span:after {
background: var(--sidebar);
}
.smw-ask-options-fields tr td {
background-color: var(--smw-ask-options-even-bg);
}
.smw-ask-options-fields tr:nth-child(odd) td {
background-color: var(--smw-ask-options-odd-bg);
}
.smw-ask-action-btn.smw-ask-action-btn-lblue,
.smw-ask-action-btn.smw-ask-action-btn-lblue:hover,
.smw-ask-action-btn.smw-ask-action-btn-lblue:visited {
background-color: var(--smw-ask-action-btn-lblue-bg);
color: var(--smw-ask-action-btn-lblue-color);
border-color: var(--smw-ask-action-btn-lblue-border-color);
}
.smw-ask-action-btn.smw-ask-action-btn-dblue,
.smw-ask-action-btn.smw-ask-action-btn-dblue:hover,
.smw-ask-action-btn.smw-ask-action-btn-dblue:visited {
background-color: var(--smw-ask-action-btn-dblue-bg);
color: var(--smw-ask-action-btn-dblue-color);
border-color: var(--smw-ask-action-btn-dblue-border-color);
}
.smw-ask-query textarea,
.smw-ask-actions textarea {
background-color: var(--ooui-interface);
border-color: var(--ooui-interface-border);
color: var(--ooui-text);
}
.smw-ask-query-format select {
background-color: var(--ooui-interface);
border: 1px solid var(--ooui-interface-border);
color: var(--ooui-text);
}
.smw-ask-toplinks {
background-color: var(--body-mid);
}
.smw-ask-toplinks span.smw-icon-info {
background: none;
padding: 0 !important;
}
.smw-ask-toplinks span.smw-icon-info::before {
content: '';
background: var(--text-color);
-webkit-mask: url("data:image/svg+xml,%3C%3Fxml version='1.0' encoding='UTF-8'%3F%3E%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 20 20'%3E%3Ctitle%3Einfo%3C/title%3E%3Cpath d='M10 0C4.477 0 0 4.477 0 10s4.477 10 10 10 10-4.477 10-10S15.523 0 10 0zM9 5h2v2H9zm0 4h2v6H9z'/%3E%3C/svg%3E") no-repeat 50% 50% / contain;
mask: url("data:image/svg+xml,%3C%3Fxml version='1.0' encoding='UTF-8'%3F%3E%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 20 20'%3E%3Ctitle%3Einfo%3C/title%3E%3Cpath d='M10 0C4.477 0 0 4.477 0 10s4.477 10 10 10 10-4.477 10-10S15.523 0 10 0zM9 5h2v2H9zm0 4h2v6H9z'/%3E%3C/svg%3E") no-repeat 50% 50% / contain;
padding: 0 0 3px 18px;
}
.smw-ask-options-row-odd {
background-color: var(--body-light);
}
.smw-ask-options-row-even {
background-color: var(--body-mid);
}
#options-toggle:not(:checked) + #options-list .options-parameter-list:after {
background-image: linear-gradient(to bottom, transparent, var(--body-mid) 90%);
}
.smw-ask-button-submit input {
background-color: var(--ooui-normal);
border-color: var(--ooui-normal-border);
color: var(--text-color);
}
.smw-ask-button-submit input:hover,
.smw-ask-button-lgrey:hover {
background-color: var(--ooui-normal--hover);
border-color: var(--ooui-normal-border);
}
input.smw-ask-action-btn.smw-ask-action-btn-dblue {
background-color: var(--ooui-normal);
border-color: var(--ooui-normal-border);
color: var(--ooui-text);
}
a.smw-ask-action-btn.smw-ask-action-btn-lblue {
background-color: var(--body-mid);
border-color: var(--body-mid);
color: var(--ooui-text);
}
a.smw-ask-action-btn.smw-ask-action-btn-lblue:visited {
background-color: var(--body-mid);
border-color: var(--body-mid);
color: var(--ooui-text);
}
a.smw-ask-action-btn.smw-ask-action-btn-lblue:hover {
background-color: var(--body-mid);
border-color: var(--body-mid);
color: var(--ooui-text);
}
a.smw-ask-action-btn-lgrey {
background-color: var(--ooui-normal);
border-color: var(--ooui-normal-border);
color: var(--ooui-text);
}
a.smw-ask-action-btn-lgrey:hover {
background-color: var(--ooui-normal--hover);
border-color: var(--ooui-normal-border);
color: var(--ooui-text);
}
.smw-callout-error {
background-color: var(--errorbox-bg);
border-color: var(--errorbox-border);
}
.smw-callout-info {
background-color: var(--body-light);
border-color: var(--body-dark);
}
.smw-callout-success {
background-color: var(--successbox-bg);
border-color: var(--successbox-border);
}
.smw-callout-warning {
background-color: var(--warningbox-bg);
border-color: var(--warningbox-bg);
}
.smw-tabs input.nav-tab:checked + label.nav-label,
.smw-tabs input.nav-tab:checked + label.nav-label:hover {
color: inherit;
}
#tab-smw-property-value:checked + label.nav-label .usage-count {
color: #fff;
background-color: var(--ooui-progressive);
}
#tab-smw-property-value:checked + label.nav-label .usage-count.moderate {
color: #fff;
background-color: #b55e0c;
border-color: #b55e0c;
}
#tab-smw-property-value:checked + label.nav-label .usage-count.high {
color: #fff;
background-color: #9f261e;
border-color: #9f261e;
}
.smw-property-page-results .header-title {
background-color: var(--ooui-interface);
border-bottom-color: var(--ooui-interface-border);
color: var(--ooui-text);
}
.smw-property-page-results .value-row:hover {
background-color: var(--ooui-normal--hover);
}
.smw-property-page-results .smw-table .header-row {
color: var(--text-color);
}
.tippy-tooltip.light-border-theme {
background-color: var(--body-light);
color: var(--text-color);
}
.tippy-tooltip.light-border-theme .tippy-arrow {
border-top-color: var(--body-light);
}
.tippy-tooltip.light-border-theme .tippy-arrow:after {
border-top-color: var(--body-light);
}
.tippy-header {
background-color: var(--body-dark);
border-bottom-color: var(--body-mid);
}
.smw-ui-input-filter {
background-color: var(--ooui-interface);
border-color: var(--ooui-interface-border);
color: var(--ooui-text);
}
.smw-ui-input-filter input {
border-left-color: var(--ooui-interface-border) !important;
color: var(--ooui-text) !important;
}
.smw-ui-pagination .page-link.link-disabled {
background-color: var(--ooui-disabled);
border-color: var(--ooui-disabled-border);
color: var(--subtle-color);
}
.smw-ui-pagination .page-link {
background-color: var(--ooui-normal);
border-color: var(--ooui-normal-border);
color: var(--link-color);
}
.smw-ui-pagination .page-link:hover {
background-color: var(--ooui-normal--hover);
border-color: var(--ooui-normal-border);
color: var(--link-color);
}
.smw-ui-pagination .page-link.link-active {
color: #fff;
background-color: var(--ooui-progressive);
border-color: var(--ooui-progressive);
}
.smw-tabs input.nav-tab:checked + label.nav-label {
border-color: var(--ooui-normal-border);
}
.smw-tabs section,
.smw-tabs .subtab-content {
border-top-color: var(--ooui-normal-border);
}
.smw-column-header {
color: var(--text-color);
}
.smw-factbox {
background: var(--body-main);
border-color: transparent;
}
.mw-body .mw-indicators #mw-indicator-smw-entity-examiner.mw-indicator .smw-indicator-vertical-bar-loader {
display: none;
}
.smwb-theme-light .smwb-title,
.smwb-theme-light .smwb-center,
.smwb-theme-light .smwb-actions,
.smwb-theme-light .smwb-prophead {
background-color: var(--body-mid);
}
.smwb-theme-light .smwb-factbox {
border-left-color: var(--body-mid);
}
.smwb-theme-light .smwb-ifactbox {
border-right-color: var(--body-mid);
}
.smwb-theme-light .smwb-propval {
background-color: var(--body-light);
}
.smwb-action-separator {
border-color: var(--wikitable-border);
}
.smwb-bottom {
border-bottom: 1px solid var(--wikitable-border);
}
.smwb-ifactbox .smwb-cell,
.smwb-factbox .smwb-cell {
border-top: 1px solid var(--wikitable-border);
}
.smwb-propvalue .smwb-prophead,
.smwb-ipropvalue .smwb-prophead,
.smwb-propvalue .smwb-propval,
.smwb-ipropvalue .smwb-propval {
font-size: 0.9em;
}
:root {
--filter-black-to-link: invert(36%) sepia(58%) saturate(433%) hue-rotate(344deg) brightness(100%) contrast(91%);
}
#bodyContent span.smwbrowse a {
color: black;
background-image: url('filepath://Smwbrowse.svg');
filter: var(--filter-black-to-link);
}
#bodyContent span.smwbrowse a:hover {
color: black;
background-image: url('filepath://Smwbrowse-hover.svg');
text-decoration: underline;
}
#bodyContent span.smwsearch a {
color: black;
filter: var(--filter-black-to-link);
background-image: url('filepath://Smwsearch.svg');
}
#bodyContent span.smwsearch a:hover {
color: black;
background-image: url('filepath://Smwsearch-hover.svg');
text-decoration: underline;
}
:root {
--tabber-tab-bg: var(--body-light);
--tabber-tab-border-color: var(--body-border);
--tabber-active-tab-bg: var(--body-light);
--tabber-active-tab-color: var(--text-color);
--tabber-active-tab-hover-bg: var(--body-light);
--tabber-active-tab-hover-border-color: var(--body-border);
--tabber-active-tab-hover-color: var(--text-color);
--tabber-active-tab-border-hider-color: var(--body-light);
--tabber-inactive-tab-bg: var(--body-background-color);
--tabber-inactive-tab-border-color: var(--body-border);
--tabber-inactive-tab-color: var(--text-color);
--tabber-inactive-tab-hover-bg: var(--body-light);
--tabber-inactive-tab-hover-border-color: var(--body-border);
}
.tabber {
margin: 1em 0;
}
.tabber .tabbertab {
background-color: var(--tabber-tab-bg);
border: 1px solid var(--tabber-tab-border-color);
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
padding: 1em 1.5em;
}
ul.tabbernav {
border: none;
margin-left: 2em;
margin-bottom: 0;
margin-right: 2em;
padding: 0;
font-family: inherit;
}
ul.tabbernav li.tabberactive > a {
background-color: var(--tabber-active-tab-bg);
color: var(--tabber-active-tab-color);
border-bottom: none;
position: relative;
}
ul.tabbernav li.tabberactive > a:hover {
color: var(--tabber-active-tab-hover-color);
background-color: var(--tabber-active-tab-hover-bg);
border-color: var(--tabber-active-tab-hover-border-color);
border-bottom: none;
}
ul.tabbernav li.tabberactive > a::after {
content: '';
position: absolute;
left: 0;
right: 0;
bottom: -1px;
border-bottom: 2px solid var(--tabber-active-tab-border-hider-color);
}
ul.tabbernav li a {
background-color: var(--tabber-inactive-tab-bg);
border-bottom: transparent;
border-color: var(--tabber-inactive-tab-border-color);
color: var(--tabber-inactive-tab-color);
display: inline-block;
font-size: 110%;
padding: 0.5em 1em;
}
ul.tabbernav li a:hover {
background-color: var(--tabber-inactive-tab-hover-bg);
border-color: var(--tabber-inactive-tab-hover-border-color);
}
ul.tabbernav li a:link,
ul.tabbernav li a:visited {
color: var(--tabber-inactive-tab-color);
}
:root {
--ooui-text: var(--text-color);
--ooui-interface: var(--body-light);
--ooui-interface-border: var(--body-border);
--ooui-window-background: rgba(255, 255, 255, 0.5);
--ooui-normal: #cdb3a6;
--ooui-normal--hover: #d8c4ba;
--ooui-normal-border: #d1b9ad;
--ooui-progressive: #936243;
--ooui-progressive--hover: #b27a57;
--ooui-accent: var(--link-color);
--ooui-input: #fff;
--ooui-input-border: #d1b9ad;
--ooui-input-border--hover: #ae846f;
--ooui-disabled: #c9c3bf;
--ooui-disabled-border: #dfd6d2;
--ooui-disabled-text: var(--subtle-color);
--ooui-pending-background-image: repeating-linear-gradient(-45deg, var(--search-box), var(--search-box) 20px, var(--body-main) 20px, var(--body-main) 30px);
}
.oo-ui-widget {
color: var(--ooui-text);
}
.oo-ui-checkboxInputWidget [type='checkbox'] + span,
.oo-ui-radioInputWidget [type='radio'] + span {
background-color: var(--ooui-input);
border-color: var(--ooui-input-border);
}
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:checked + span,
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:indeterminate + span {
background-color: var(--ooui-progressive);
border-color: var(--ooui-progressive);
}
.oo-ui-radioInputWidget.oo-ui-widget-enabled [type='radio']:checked + span {
border-color: var(--ooui-progressive);
}
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:checked:hover + span,
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:indeterminate:hover + span {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
}
.oo-ui-radioInputWidget.oo-ui-widget-enabled [type='radio']:checked:hover + span {
border-color: var(--ooui-progressive--hover);
}
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:hover + span,
.oo-ui-radioInputWidget.oo-ui-widget-enabled [type='radio']:hover + span {
border-color: var(--ooui-accent);
}
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:focus + span {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:active + span,
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:checked:active + span,
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:indeterminate:active + span {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
box-shadow: inset 0 0 0 1px var(--ooui-progressive--hover);
}
.oo-ui-radioInputWidget.oo-ui-widget-enabled [type='radio']:active + span {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
}
.oo-ui-radioInputWidget.oo-ui-widget-enabled [type='radio']:checked:active + span {
border-color: var(--ooui-progressive--hover);
box-shadow: inset 0 0 0 1px var(--ooui-progressive--hover);
}
.oo-ui-radioInputWidget.oo-ui-widget-enabled [type='radio']:checked:active + span:before {
border-color: var(--ooui-progressive--hover);
}
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:checked:focus + span,
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:indeterminate:focus + span {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent), inset 0 0 0 2px #fff;
}
.oo-ui-checkboxInputWidget [type='checkbox']:disabled + span,
.oo-ui-radioInputWidget [type='radio']:disabled + span {
background-color: var(--ooui-disabled);
border-color: var(--ooui-disabled);
}
.oo-ui-dropdownWidget-handle {
border-color: var(--ooui-normal-border);
}
.oo-ui-dropdownWidget.oo-ui-widget-enabled .oo-ui-dropdownWidget-handle {
background-color: var(--ooui-normal);
color: var(--ooui-text);
}
.oo-ui-dropdownWidget.oo-ui-widget-enabled .oo-ui-dropdownWidget-handle:hover {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
}
.oo-ui-dropdownWidget.oo-ui-widget-enabled .oo-ui-dropdownWidget-handle:active {
color: var(--ooui-text);
}
.oo-ui-dropdownWidget.oo-ui-widget-enabled .oo-ui-dropdownWidget-handle:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-dropdownWidget.oo-ui-widget-enabled.oo-ui-dropdownWidget-open .oo-ui-dropdownWidget-handle {
background-color: var(--ooui-normal--hover);
}
.oo-ui-dropdownWidget.oo-ui-widget-disabled .oo-ui-dropdownWidget-handle {
color: var(--ooui-disabled-text);
text-shadow: none;
border-color: var(--ooui-disabled-border);
background-color: var(--ooui-disabled);
}
.oo-ui-dropdownInputWidget select {
border-color: var(--ooui-normal-border);
}
.oo-ui-dropdownInputWidget option {
background-color: var(--ooui-interface);
}
.oo-ui-dropdownInputWidget.oo-ui-widget-enabled {
background-color: var(--ooui-normal);
}
.oo-ui-dropdownInputWidget.oo-ui-widget-enabled:hover {
background-color: var(--ooui-normal--hover);
}
.oo-ui-dropdownInputWidget.oo-ui-widget-enabled select {
color: var(--ooui-text);
}
.oo-ui-dropdownInputWidget.oo-ui-widget-enabled select:hover,
.oo-ui-dropdownInputWidget.oo-ui-widget-enabled select:active {
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
}
.oo-ui-dropdownInputWidget.oo-ui-widget-enabled select:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-labelWidget.oo-ui-inline-help {
color: var(--byline-color);
}
.oo-ui-menuSelectWidget {
background-color: var(--ooui-interface);
border-color: var(--ooui-interface-border);
}
.oo-ui-menuSelectWidget-frameless {
box-shadow: inset 0 -1px 0 0 var(--ooui-normal-border);
}
.oo-ui-menuSectionOptionWidget {
color: var(--byline-color);
}
.oo-ui-menuOptionWidget.oo-ui-optionWidget-highlighted,
.oo-ui-menuOptionWidget.oo-ui-optionWidget-selected {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
}
.oo-ui-menuOptionWidget.oo-ui-optionWidget-selected.oo-ui-menuOptionWidget.oo-ui-optionWidget-highlighted,
.oo-ui-menuOptionWidget.oo-ui-optionWidget-pressed.oo-ui-menuOptionWidget.oo-ui-optionWidget-highlighted {
color: var(--ooui-accent);
}
.oo-ui-menuOptionWidget.oo-ui-widget-enabled.oo-ui-optionWidget {
color: var(--ooui-text);
}
.oo-ui-messageDialog-title {
color: inherit;
}
.oo-ui-messageWidget.oo-ui-messageWidget-block.oo-ui-flaggedElement-error {
background-color: var(--errorbox-bg);
border-color: var(--errorbox-border);
}
.oo-ui-messageWidget.oo-ui-messageWidget-block.oo-ui-flaggedElement-warning {
background-color: var(--warningbox-bg);
border-color: var(--warningbox-border);
}
.oo-ui-messageWidget.oo-ui-messageWidget-block.oo-ui-flaggedElement-success {
background-color: var(--successbox-bg);
border-color: var(--successbox-border);
}
.oo-ui-messageWidget.oo-ui-messageWidget-block.oo-ui-flaggedElement-notice {
background-color: var(--messagebox-info-background);
border-color: var(--messagebox-info-border);
}
.oo-ui-messageWidget.oo-ui-flaggedElement-error:not(.oo-ui-messageWidget-block),
.oo-ui-messageWidget.oo-ui-flaggedElement-success:not(.oo-ui-messageWidget-block) {
color: var(--ooui-text);
}
.oo-ui-optionWidget.oo-ui-widget-disabled {
color: var(--ooui-disabled-text);
}
.oo-ui-outlineControlsWidget {
background-color: var(--ooui-normal);
}
.oo-ui-outlineOptionWidget.oo-ui-optionWidget-highlighted {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
}
.oo-ui-popupWidget-popup {
background-color: var(--ooui-interface);
border-color: var(--ooui-interface-border);
}
.oo-ui-popupWidget-anchored-top .oo-ui-popupWidget-anchor:after {
border-bottom-color: var(--ooui-interface);
}
.oo-ui-popupWidget-anchored-top .oo-ui-popupWidget-anchor:before {
border-bottom-color: var(--ooui-interface-border);
}
.oo-ui-popupWidget-anchored-bottom .oo-ui-popupWidget-anchor:after {
border-top-color: var(--ooui-interface);
}
.oo-ui-popupWidget-anchored-bottom .oo-ui-popupWidget-anchor:before {
border-top-color: var(--ooui-interface-border);
}
.oo-ui-popupWidget-anchored-start .oo-ui-popupWidget-anchor:after {
border-right-color: var(--ooui-interface);
}
.oo-ui-popupWidget-anchored-start .oo-ui-popupWidget-anchor:before {
border-right-color: var(--ooui-interface-border);
}
.oo-ui-popupWidget-anchored-end .oo-ui-popupWidget-anchor:after {
border-left-color: var(--ooui-interface);
}
.oo-ui-popupWidget-anchored-end .oo-ui-popupWidget-anchor:before {
border-left-color: var(--ooui-interface-border);
}
.oo-ui-searchWidget-query {
border-bottom-color: var(--ooui-interface-border);
}
.oo-ui-selectFileWidget-dropTarget {
background-color: var(--ooui-interface);
border-color: var(--ooui-interface-border);
}
.oo-ui-selectFileWidget.oo-ui-widget-enabled.oo-ui-selectFileWidget-dropTarget {
background-color: var(--ooui-interface);
}
.oo-ui-selectFileWidget.oo-ui-widget-enabled.oo-ui-selectFileWidget-dropTarget:hover {
border-color: var(--ooui-input-border--hover);
}
.oo-ui-tabOptionWidget {
color: var(--ooui-text);
}
.oo-ui-tabSelectWidget-framed .oo-ui-tabOptionWidget.oo-ui-optionWidget-selected {
background-color: var(--body-dark);
color: var(--ooui-text);
}
.oo-ui-tabSelectWidget-framed .oo-ui-tabOptionWidget.oo-ui-optionWidget-selected .oo-ui-labelElement-label {
border-bottom-color: var(--body-border);
}
.oo-ui-tabSelectWidget-framed .oo-ui-tabOptionWidget.oo-ui-widget-enabled:hover,
.oo-ui-tabSelectWidget-framed .oo-ui-tabOptionWidget.oo-ui-widget-enabled:active {
background-color: var(--body-light);
color: var(--ooui-text);
}
.oo-ui-tabSelectWidget-framed .oo-ui-tabOptionWidget.oo-ui-widget-enabled.oo-ui-optionWidget-selected:hover {
background-color: var(--body-dark);
}
.oo-ui-tabSelectWidget-frameless .oo-ui-tabOptionWidget.oo-ui-optionWidget-selected {
color: var(--ooui-progressive);
box-shadow: inset 0 -2px 0 0 var(--ooui-progressive);
}
.oo-ui-tabSelectWidget-frameless .oo-ui-tabOptionWidget.oo-ui-optionWidget-selected:hover,
.oo-ui-tabSelectWidget-frameless .oo-ui-tabOptionWidget.oo-ui-optionWidget-selected:focus {
color: var(--ooui-progressive--hover);
box-shadow: inset 0 -2px 0 0 var(--ooui-progressive--hover);
}
.oo-ui-tabSelectWidget-framed {
background: none;
border-bottom: 1px solid var(--ooui-interface-border);
}
.oo-ui-tabSelectWidget-frameless {
box-shadow: inset 0 -1px 0 0 var(--ooui-interface-border);
}
.oo-ui-tabSelectWidget-mobile {
}
.oo-ui-tabSelectWidget-mobile.oo-ui-tabSelectWidget-framed:after {
background: var(--mobile-navbox-linear-gradient);
}
.oo-ui-tabSelectWidget-mobile.oo-ui-tabSelectWidget-frameless:after {
background: var(--mobile-navbox-linear-gradient);
}
.oo-ui-tagItemWidget {
border-color: var(--ooui-normal-border);
}
.oo-ui-tagItemWidget.oo-ui-widget-enabled {
color: var(--ooui-text);
}
.oo-ui-tagItemWidget.oo-ui-widget-enabled:hover {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
}
.oo-ui-tagItemWidget.oo-ui-widget-enabled:not( .oo-ui-tagItemWidget-fixed ) {
background-color: var(--ooui-normal);
}
.oo-ui-tagItemWidget.oo-ui-widget-enabled .oo-ui-buttonElement-button:hover {
background-color: var(--ooui-normal--hover);
}
.oo-ui-tagMultiselectWidget.oo-ui-widget-enabled {
background-color: var(--ooui-interface);
}
.oo-ui-tagMultiselectWidget.oo-ui-widget-enabled.oo-ui-tagMultiselectWidget-outlined {
background-color: var(--ooui-normal);
}
.oo-ui-tagMultiselectWidget.oo-ui-widget-enabled.oo-ui-tagMultiselectWidget-outlined .oo-ui-tagItemWidget.oo-ui-widget-enabled {
background-color: var(--ooui-interface);
}
.oo-ui-textInputWidget .oo-ui-inputWidget-input {
background-color: var(--ooui-input);
color: var(--ooui-text);
border-color: var(--ooui-input-border);
}
.oo-ui-textInputWidget.oo-ui-widget-enabled .oo-ui-inputWidget-input::placeholder {
color: var(--subtle-color);
}
.oo-ui-textInputWidget.oo-ui-widget-enabled .oo-ui-inputWidget-input:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-textInputWidget.oo-ui-widget-enabled .oo-ui-inputWidget-input[readonly]:not(.oo-ui-pendingElement-pending) {
background-color: var(--ooui-disabled);
color: var(--ooui-disabled-text);
}
.oo-ui-textInputWidget.oo-ui-widget-enabled:hover .oo-ui-inputWidget-input {
border-color: var(--ooui-input-border--hover);
}
.oo-ui-textInputWidget.oo-ui-widget-enabled:hover .oo-ui-inputWidget-input:focus {
border-color: var(--ooui-accent);
}
@media screen and (min-width: 0) {
.oo-ui-textInputWidget.oo-ui-widget-enabled textarea.oo-ui-inputWidget-input:focus {
outline: 1px solid var(--ooui-accent);
}
}
.oo-ui-textInputWidget.oo-ui-widget-disabled .oo-ui-inputWidget-input {
background-color: var(--ooui-disabled);
color: var(--ooui-disabled-text);
text-shadow: none;
border-color: var(--ooui-disabled-border);
}
.oo-ui-toggleSwitchWidget {
background-color: var(--ooui-input);
border-color: var(--ooui-input-border);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled .oo-ui-toggleSwitchWidget-grip {
background-color: var(--ooui-input);
border-color: var(--ooui-input-border);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:hover {
background-color: var(--ooui-input);
border-color: var(--ooui-accent);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:hover .oo-ui-toggleSwitchWidget-grip {
background-color: var(--ooui-input);
border-color: var(--ooui-accent);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:active,
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:active:hover,
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:active:focus {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
box-shadow: inset 0 0 0 1px var(--ooui-progressive--hover);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:active .oo-ui-toggleSwitchWidget-grip,
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:active:hover .oo-ui-toggleSwitchWidget-grip,
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:active:focus .oo-ui-toggleSwitchWidget-grip {
background-color: var(--ooui-input);
border-color: var(--ooui-input);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:focus .oo-ui-toggleSwitchWidget-grip {
border-color: var(--ooui-accent);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled.oo-ui-toggleWidget-on {
background-color: var(--ooui-progressive);
border-color: var(--ooui-progressive);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled.oo-ui-toggleWidget-on .oo-ui-toggleSwitchWidget-grip {
background-color: var(--ooui-input);
border-color: var(--ooui-input);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled.oo-ui-toggleWidget-on:hover {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled.oo-ui-toggleWidget-on:active,
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled.oo-ui-toggleWidget-on:active:hover {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled.oo-ui-toggleWidget-on:focus {
border-color: var(--ooui-progressive);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled.oo-ui-toggleWidget-on:focus::before {
border-color: #fff;
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-disabled {
background-color: var(--ooui-disabled);
border-color: var(--ooui-disabled);
}
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled > .oo-ui-buttonElement-button {
color: var(--ooui-text);
}
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled > .oo-ui-buttonElement-button:hover {
color: var(--ooui-text);
}
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled > .oo-ui-buttonElement-button:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled.oo-ui-buttonElement-pressed > input.oo-ui-buttonElement-button,
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled > .oo-ui-buttonElement-button:active {
color: var(--ooui-text);
}
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button,
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button:hover {
color: var(--ooui-text);
}
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button:active,
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive.oo-ui-buttonElement-pressed > .oo-ui-buttonElement-button {
color: var(--ooui-text);
border-color: var(--ooui-text);
}
.oo-ui-buttonElement-frameless.oo-ui-widget-disabled > .oo-ui-buttonElement-button {
color: var(--ooui-disabled-text);
}
.oo-ui-buttonElement-framed.oo-ui-widget-disabled > .oo-ui-buttonElement-button {
background-color: var(--ooui-disabled);
border-color: var(--ooui-disabled-border);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled > .oo-ui-buttonElement-button {
background-color: var(--ooui-normal);
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled > .oo-ui-buttonElement-button:hover {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled > .oo-ui-buttonElement-button:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-buttonElement-active > .oo-ui-buttonElement-button {
background-color: var(--ooui-progressive--hover);
color: #fff;
border-color: var(--ooui-progressive--hover);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-buttonElement-active > .oo-ui-buttonElement-button:focus {
border-color: var(--ooui-progressive--hover);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled > .oo-ui-buttonElement-button:active,
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-buttonElement-pressed > .oo-ui-buttonElement-button {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive {
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button {
color: var(--ooui-text);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button:hover {
background-color: var(--ooui-normal--hover);
border-color: var(--ooui-progressive--hover);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-destructive > .oo-ui-buttonElement-button {
color: var(--ooui-text);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-destructive > .oo-ui-buttonElement-button:hover {
background-color: var(--ooui-normal--hover);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button {
background-color: var(--ooui-progressive);
border-color: var(--ooui-progressive);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button:hover {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent), inset 0 0 0 2px #fff;
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button:active,
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive.oo-ui-buttonElement-pressed > .oo-ui-buttonElement-button,
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive.oo-ui-buttonElement-active > .oo-ui-buttonElement-button,
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive.oo-ui-popupToolGroup-active > .oo-ui-buttonElement-button {
color: #fff;
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
}
.oo-ui-pendingElement-pending {
background-image: var(--ooui-pending-background-image);
background-size: 200%;
animation: oo-ui-pendingElement-stripes 6s linear infinite;
}
@keyframes oo-ui-pendingElement-stripes {
100% {
background-position: 100%;
}
}
.oo-ui-messageDialog-content > .oo-ui-window-foot {
outline-color: var(--ooui-interface-border);
}
.oo-ui-messageDialog-message {
color: var(--ooui-text);
}
.oo-ui-messageDialog-actions-horizontal .oo-ui-actionWidget {
border-right-color: var(--ooui-interface-border);
}
.oo-ui-messageDialog-actions-vertical .oo-ui-actionWidget {
border-bottom-color: var(--ooui-interface-border);
}
.oo-ui-processDialog-content .oo-ui-window-head,
.oo-ui-processDialog-content .oo-ui-window-foot {
outline-color: var(--ooui-interface-border);
}
.oo-ui-processDialog .oo-ui-actionWidget > .oo-ui-buttonElement-button {
border-top-color: transparent;
border-bottom-color: transparent;
}
.oo-ui-processDialog .oo-ui-actionWidget > .oo-ui-buttonElement-button:hover,
.oo-ui-processDialog .oo-ui-actionWidget > .oo-ui-buttonElement-button:active {
border-top-color: transparent;
border-bottom-color: transparent;
}
.oo-ui-processDialog .oo-ui-actionWidget:not( .oo-ui-flaggedElement-progressive ):not( .oo-ui-flaggedElement-destructive ) > .oo-ui-buttonElement-button:hover,
.oo-ui-processDialog .oo-ui-actionWidget:not( .oo-ui-flaggedElement-progressive ):not( .oo-ui-flaggedElement-destructive ) > .oo-ui-buttonElement-button:active {
border-right-color: var(--ooui-interface-border);
border-left-color: transparent;
}
.oo-ui-processDialog .oo-ui-actionWidget:not( .oo-ui-flaggedElement-progressive ):not( .oo-ui-flaggedElement-destructive ) > .oo-ui-buttonElement-button:focus {
border-color: var(--ooui-accent);
}
.oo-ui-processDialog-actions-safe .oo-ui-actionWidget > .oo-ui-buttonElement-button,
.oo-ui-processDialog-actions-other .oo-ui-actionWidget > .oo-ui-buttonElement-button {
border-right-color: var(--ooui-normal-border);
border-left-color: transparent;
}
.oo-ui-processDialog-actions-safe .oo-ui-widget-enabled.oo-ui-iconElement:not( .oo-ui-labelElement ) > .oo-ui-buttonElement-button:hover {
background-color: var(--ooui-normal--hover);
border-right-color: var(--ooui-interface-border);
}
.oo-ui-windowManager-modal > .oo-ui-dialog {
background-color: var(--ooui-window-background);
}
.oo-ui-windowManager-modal > .oo-ui-dialog > .oo-ui-window-frame {
background-color: var(--ooui-interface);
}
.oo-ui-windowManager-modal.oo-ui-windowManager-floating > .oo-ui-dialog > .oo-ui-window-frame {
border-color: var(--ooui-interface-border);
}
.oo-ui-window {
color: var(--ooui-text);
}
.oo-ui-toolbar-bar {
background-color: var(--ooui-interface);
color: var(--ooui-text);
}
.oo-ui-toolbar-position-top > .oo-ui-toolbar-bar {
border-bottom-color: var(--body-mid);
}
.oo-ui-toolbar-bar .oo-ui-bookletLayout > .oo-ui-menuLayout-menu {
border-right-color: var(--body-mid);
}
.oo-ui-tool.oo-ui-widget-enabled > .oo-ui-tool-link:hover {
background-color: var(--ooui-normal--hover);
}
.oo-ui-tool.oo-ui-widget-enabled > .oo-ui-tool-link:focus {
outline: 1px solid var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-tool.oo-ui-widget-enabled > .oo-ui-tool-link:active,
.oo-ui-tool.oo-ui-widget-enabled.oo-ui-tool-active > .oo-ui-tool-link,
.oo-ui-tool.oo-ui-widget-enabled.oo-ui-popupToolGroup-active > .oo-ui-tool-link {
background-color: var(--ooui-normal--hover);
color: var(--ooui-accent);
box-shadow: none;
}
.oo-ui-tool.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive > .oo-ui-tool-link {
background-color: var(--ooui-progressive);
}
.oo-ui-tool.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive > .oo-ui-tool-link:hover {
background-color: var(--ooui-progressive--hover);
}
.oo-ui-tool.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive > .oo-ui-tool-link:focus {
box-shadow: inset 0 0 0 1px var(--ooui-accent), inset 0 0 0 2px #fff;
}
.oo-ui-tool.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive > .oo-ui-tool-link:active,
.oo-ui-tool.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive.oo-ui-tool-active > .oo-ui-tool-link {
background-color: var(--ooui-progressive--hover);
}
.oo-ui-listToolGroup-tools .oo-ui-tool.oo-ui-widget-enabled {
background-color: var(--ooui-normal);
}
.oo-ui-listToolGroup-tools .oo-ui-tool.oo-ui-widget-enabled:hover {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
}
.oo-ui-listToolGroup-tools .oo-ui-tool-active.oo-ui-widget-enabled .oo-ui-tool-link .oo-ui-tool-title {
color: var(--ooui-progressive);
}
.oo-ui-menuToolGroup {
border-left-color: var(--body-mid);
border-right-color: var(--body-mid);
}
.oo-ui-popupToolGroup-tools {
background-color: var(--ooui-interface);
border-color: var(--body-mid);
}
.oo-ui-popupToolGroup.oo-ui-widget-enabled > .oo-ui-popupToolGroup-handle:hover {
background-color: var(--ooui-normal--hover);
}
.oo-ui-popupToolGroup.oo-ui-widget-enabled > .oo-ui-popupToolGroup-handle:focus {
outline: 1px solid var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-toolbar-actions .oo-ui-popupToolGroup.oo-ui-widget-enabled > .oo-ui-popupToolGroup-handle:hover {
border-right-color: var(--ooui-normal--hover);
}
.oo-ui-popupToolGroup-tools .oo-ui-tool.oo-ui-widget-enabled .oo-ui-tool-link:focus {
box-shadow: inset 0 0 0 2px var(--ooui-accent);
}
.oo-ui-popupToolGroup-tools .oo-ui-tool-active.oo-ui-widget-enabled .oo-ui-tool-link .oo-ui-tool-title {
color: var(--ooui-progressive);
}
.oo-ui-popupToolGroup.oo-ui-popupToolGroup-active > .oo-ui-popupToolGroup-handle {
background-color: var(--ooui-normal);
color: var(--ooui-accent);
}
.oo-ui-popupToolGroup.oo-ui-popupToolGroup-active > .oo-ui-popupToolGroup-handle:hover {
background-color: var(--ooui-normal--hover);
color: var(--ooui-accent);
}
.oo-ui-bookletLayout-outlinePanel > .oo-ui-outlineControlsWidget {
border-top-color: var(--ooui-interface-border);
}
.oo-ui-bookletLayout > .oo-ui-menuLayout-menu {
border-right-color: var(--ooui-interface-border);
}
.oo-ui-fieldLayout-disabled > .oo-ui-fieldLayout-body > .oo-ui-fieldLayout-header > .oo-ui-labelElement-label {
color: var(--ooui-disabled-text);
}
.oo-ui-panelLayout-framed {
border-color: var(--sidebar);
}
.oo-ui-icon-settings {
background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' width='20' height='20' viewBox='0 0 20 20'%3E%3Ctitle%3Esettings%3C/title%3E%3Cg transform='translate(10 10)'%3E%3Cpath id='a' d='M1.5-10h-3l-1 6.5h5m0 7h-5l1 6.5h3'/%3E%3Cuse xlink:href='%23a' transform='rotate(45)'/%3E%3Cuse xlink:href='%23a' transform='rotate(90)'/%3E%3Cuse xlink:href='%23a' transform='rotate(135)'/%3E%3C/g%3E%3Cpath d='M10 2.5a7.5 7.5 0 0 0 0 15 7.5 7.5 0 0 0 0-15v4a3.5 3.5 0 0 1 0 7 3.5 3.5 0 0 1 0-7'/%3E%3C/svg%3E");
}
.oo-ui-icon-clear {
background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 20 20'%3E%3Ctitle%3Eclear%3C/title%3E%3Cpath d='M10 0a10 10 0 1 0 10 10A10 10 0 0 0 10 0zm5.66 14.24-1.41 1.41L10 11.41l-4.24 4.25-1.42-1.42L8.59 10 4.34 5.76l1.42-1.42L10 8.59l4.24-4.24 1.41 1.41L11.41 10z'/%3E%3C/svg%3E");
}
.mw-widget-dateInputWidget-handle {
background-color: var(--ooui-input);
color: var(--ooui-text);
border-color: var(--ooui-input-border);
}
.mw-widget-dateInputWidget-calendar {
background-color: var(--ooui-interface);
}
.mw-widget-dateInputWidget.oo-ui-widget-enabled .mw-widget-dateInputWidget-handle:hover {
border-color: var(--ooui-input-border--hover);
}
.mw-widget-calendarWidget {
border-color: var(--ooui-interface-border);
}
.mw-widget-calendarWidget:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.mw-widget-calendarWidget-day,
.mw-widget-calendarWidget-day-heading {
color: var(--ooui-text);
}
.mw-widget-calendarWidget-day-additional {
color: var(--ooui-text);
opacity: 0.67;
}
.mw-widget-calendarWidget-day-today {
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.mw-widget-calendarWidget-item:hover {
background-color: var(--ooui-progressive);
}
.mw-widget-calendarWidget-item-selected {
background-color: var(--ooui-progressive--hover);
}
.mw-widgets-datetime-calendarWidget {
background-color: var(--ooui-interface);
border-color: var(--ooui-interface-border);
}
.mw-widgets-datetime-calendarWidget:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent), 0 2px 2px 0 rgba(0, 0, 0, 0.25);
}
.mw-widgets-datetime-calendarWidget-grid .mw-widgets-datetime-calendarWidget-cell.mw-widgets-datetime-calendarWidget-extra .oo-ui-buttonElement-button .oo-ui-labelElement-label {
color: var(--subtle-color);
}
.mw-widgets-datetime-calendarWidget-grid .mw-widgets-datetime-calendarWidget-cell.mw-widgets-datetime-calendarWidget-selected .oo-ui-buttonElement-button {
background-color: var(--ooui-progressive--hover);
}
.mw-widgets-datetime-dateTimeInputWidget-handle {
background-color: var(--ooui-input);
color: var(--ooui-text);
border-color: var(--ooui-input-border);
}
.mw-widgets-datetime-dateTimeInputWidget.oo-ui-widget-enabled.mw-widgets-datetime-dateTimeInputWidget-handle:hover {
border-color: var(--ooui-input-border--hover);
}
.mw-widgets-datetime-dateTimeInputWidget.oo-ui-widget-enabled:hover input,
.mw-widgets-datetime-dateTimeInputWidget.oo-ui-widget-enabled:hover textarea {
border-color: var(--ooui-input-border--hover);
}
.mw-widgets-datetime-dateTimeInputWidget.oo-ui-widget-enabled .mw-widgets-datetime-dateTimeInputWidget-editField:hover {
background-color: var(--ooui-normal);
}
.ve-activated .ve-init-mw-desktopArticleTarget-originalContent #catlinks:hover {
background: var(--ooui-normal--hover);
}
.ve-ui-overlay {
font-family: inherit;
}
.oo-ui-toolbar-position-top .ve-ui-toolbarDialog-position-above {
border-top-color: var(--body-mid);
}
.ve-ce-branchNode-blockSlug,
.ve-ce-branchNode-newSlug {
outline-color: var(--body-border);
background-color: var(--ooui-interface);
}
.ve-ui-specialCharacterPage h3 {
color: var(--byline-color);
}
.ve-ui-specialCharacterPage-character {
border-color: var(--body-mid);
}
.ve-ui-specialCharacterPage-character:hover {
border-color: var(--body-dark);
}
.ve-ce-linkAnnotation.ve-ce-annotation-active {
box-shadow: 0 0 0 1px var(--body-mid);
background: none;
}
.ve-ui-desktopContext .ve-ui-linkContextItem .ve-ui-linkContextItem-label {
border-color: var(--body-border);
}
.ve-ui-mwHelpPopupTool-version-label,
.ve-ui-mwHelpPopupTool-version-link,
.ve-ui-mwHelpPopupTool-version-date {
color: var(--byline-color);
}
.ve-ce-tableCellableNode {
border-color: var(--body-mid);
}
.ve-ce-mwReferencesListNode-muted {
color: var(--byline-color);
}
.ve-ui-mwTemplatePage-description,
.ve-ui-mwParameterPage-label,
.ve-ui-mwParameterPage-description-required,
.ve-ui-mwParameterPage-description-deprecated {
color: var(--byline-color);
}
.mw-widget-titleWidget-menu .mw-widget-titleOptionWidget-description {
color: var(--byline-color);
}
.ve-ui-mwGalleryDialog-menuLayout > .oo-ui-menuLayout-menu,
.ve-ui-mwGalleryDialog-innerMenuLayout > .oo-ui-menuLayout-menu,
.ve-ui-mwGalleryDialog .ve-ui-mwGalleryDialog-image-container,
.ve-ui-targetWidget {
border-color: var(--body-border);
}
.ve-ui-targetWidget:not(.oo-ui-pendingElement-pending) {
background-color: var(--body-main);
}
.ve-ui-mwSaveDialog {
color: var(--ooui-text);
}
.ve-ui-mwSaveDialog-options {
background-color: var(--ooui-interface);
border-color: var(--body-border);
}
.ve-ui-mwSaveDialog-summary {
background-color: var(--ooui-input);
}
.ve-ui-mwSaveDialog-editSummary-count {
border-color: var(--body-border);
}
.ve-ui-mwSaveDialog-license {
color: var(--byline-color);
}
.ve-ui-mwReferenceContextItem-muted {
color: var(--byline-color);
}
.ve-ui-mwNoticesPopupTool-items > div:not(:first-child),
.ve-ui-mwHelpPopupTool-item:not(:first-child) {
border-color: var(--body-border);
}
.ve-ui-mwTransclusionOutlineControlsWidget {
background-color: var(--ooui-interface);
border-top-color: var(--body-border);
}
.ve-ui-mwTransclusionOutlineTemplateWidget-sticky {
background-color: var(--ooui-interface);
}
.ve-ui-mwTransclusionOutlineTemplateWidget .ve-ui-mwTransclusionOutlineParameterWidget.oo-ui-optionWidget-highlighted {
color: var(--ooui-text);
}
.ve-ui-mwTransclusionOutlineTemplateWidget-no-template-parameters {
color: var(--subtle-color);
}
.ve-ui-mwParameterPage-undocumentedLabel {
color: var(--subtle-color);
}
.ve-ui-mwTwoPaneTransclusionDialogLayout > .oo-ui-menuLayout-menu {
border-right: var(--body-border);
}
.ve-ui-mwParameterPage-doc-required,
.ve-ui-mwParameterPage-doc-deprecated,
.ve-ui-mwParameterPage-inlineDescription .ve-ui-mwParameterPage-doc-example {
color: var(--byline-color);
}
.ve-ui-expandableContent-toggle {
background-color: var(--ooui-interface);
}
.ve-ui-expandableContent-fade {
background: linear-gradient(to right, rgba(255, 255, 255, 0) 0, var(--ooui-interface) 90%);
}
.ve-ui-commandHelpDialog-shortcut > kbd,
.ve-ui-commandHelpDialog-sequence > kbd {
background-color: var(--keypress-background);
color: var(--keypress-color);
border-color: var(--keypress-border);
box-shadow: none;
text-shadow: none;
}
.ve-init-mw-desktopArticleTarget-toolbarPlaceholder-floating .ve-init-mw-desktopArticleTarget-toolbarPlaceholder-bar {
background: var(--ooui-interface);
}
.ve-init-mw-desktopArticleTarget-toolbarPlaceholder-bar {
border-bottom-color: var(--body-mid);
}
figure[typeof~='mw:File/Thumb'],
figure[typeof~='mw:File/Frame'],
figure[typeof~='mw:Image/Thumb'],
figure[typeof~='mw:Video/Thumb'],
figure[typeof~='mw:Image/Frame'],
figure[typeof~='mw:Video/Frame'] {
border: none;
background-color: var(--thumb-bg);
}
figure[typeof~='mw:File/Thumb'] > a:first-child > *:first-child:not( .mw-broken-media ),
figure[typeof~='mw:File/Frame'] > a:first-child > *:first-child:not( .mw-broken-media ),
figure[typeof~='mw:Image/Thumb'] > a:first-child > *:first-child:not( .mw-broken-media ),
figure[typeof~='mw:Video/Thumb'] > a:first-child > *:first-child:not( .mw-broken-media ),
figure[typeof~='mw:Image/Frame'] > a:first-child > *:first-child:not( .mw-broken-media ),
figure[typeof~='mw:Video/Frame'] > a:first-child > *:first-child:not( .mw-broken-media ) {
border: none;
background: var(--thumb-bg);
}
figure[typeof~='mw:File/Thumb'] > figcaption,
figure[typeof~='mw:File/Frame'] > figcaption,
figure[typeof~='mw:Image/Thumb'] > figcaption,
figure[typeof~='mw:Video/Thumb'] > figcaption,
figure[typeof~='mw:Image/Frame'] > figcaption,
figure[typeof~='mw:Video/Frame'] > figcaption {
border: none;
background-color: var(--thumb-caption-bg);
padding: 4px 6px;
}
:root {
--keypress-background: #eee;
--keypress-border: #ccc;
--keypress-color: #333;
}
.toc .toctitle > * {
color: #fff;
}
.navbox .navbox-title {
color: #fff;
}
.navbox .navbox-list:not(last-child) {
border-bottom: none;
}
.archivelist {
background-color: var(--body-light);
border: solid 1px var(--body-border);
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
float: right;
margin: 5px;
padding: 5px;
text-align: center;
width: 120px;
}
.shortcut {
border: 1px solid var(--body-border);
background: var(--body-light);
float: right;
font-size: 0.8em;
margin: 0.5em 0em 0.5em 1em;
padding: 0.5em;
text-align: center;
}
.hatnote,
.seealso {
font-style: italic;
}
.hatnote i,
.seealso i {
font-style: normal;
}
div.hatnote,
div.seealso {
margin: 0.5em 1.6em;
}
div.hatnote + div.hatnote,
div.hatnote + div.seealso,
div.seealso + div.hatnote,
div.seealso + div.seealso {
margin-top: -0.5em;
}
.keypress {
background: var(--keypress-background);
color: var(--keypress-color);
font-family: inherit;
border: 1px solid var(--keypress-border);
border-radius: 2px;
font-size: 0.9em;
margin: 0 0.1em;
padding: 0.1em 0.4em;
white-space: nowrap;
}
:root {
--documentation-background: #f9fafa;
--documentation-link-color: #e4eaee;
--documentation-headers-color: #fff;
--documentation-header-background: #949eaa;
--documentation-subheader-background: #808c9a;
--documentation-border: #e4eaee;
}
.documentation {
background: var(--documentation-background);
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
margin: 1em 0;
}
.documentation pre,
.documentation code {
background-color: var(--documentation-background);
border-color: var(--documentation-border);
}
.documentation h2,
.documentation hr {
border-color: var(--documentation-border);
}
.documentation-header {
color: var(--documentation-headers-color);
background: var(--documentation-header-background);
font-weight: bold;
padding: 1em 1.5em;
}
.documentation-title {
font-size: 1.25em;
}
.documentation-subheader {
color: var(--documentation-headers-color);
background: var(--documentation-subheader-background);
padding: 0.5em 1.5em;
}
.documentation-subheader a,
.documentation-subheader a:visited,
.documentation-subheader a:active {
color: var(--documentation-link-color);
}
.documentation-documentation,
.documentation-links {
font-size: 0.85em;
}
.documentation-content {
padding: 1em 1.5em;
}
.mw-templatedata-doc-params dl:not(:empty) {
column-count: 3;
border-top: 1px solid var(--body-border);
margin-bottom: 0.5em;
}
.mw-templatedata-doc-params dt::after {
content: ":";
}
.mw-templatedata-doc-params dd,
.mw-templatedata-doc-params dt {
margin: 0.1em 2em;
min-width: auto;
}
.mw-templatedata-doc-muted {
color: var(--subtle-color);
font-style: italic;
}
:root {
--infobox-text-color: var(--text-color);
--table-header: var(--body-dark);
--table-subheader: var(--body-mid);
--table-body: var(--body-light);
--table-border: var(--body-border);
}
.infobox {
font-size: 0.85em;
width: 300px;
border-collapse: collapse;
float: right;
table-layout: fixed;
margin: 0.5em 0 1em 1em;
}
.infobox .infobox-buttons {
display: flex;
flex-wrap: wrap;
justify-content: center;
grid-gap: 3px;
margin-bottom: 3px;
}
.infobox .infobox-buttons .button {
background: var(--table-header);
padding: 0 5px;
font-weight: bold;
flex: 1 1 20%;
max-width: 20%;
color: #fff;
}
.infobox tbody {
border: 1px solid var(--table-border);
background: var(--table-body);
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(231, 215, 199, 0.5);
}
.infobox .infobox-header {
background: var(--table-header);
padding: 0.5em 0;
text-align: center;
color: #fff;
font-size: 1.15em;
font-weight: bold;
line-height: 1.4em;
}
.infobox .infobox-image {
text-align: center;
}
.infobox .infobox-subheader {
background: var(--table-subheader);
font-weight: bold;
text-align: center;
color: #fff;
}
.infobox .infobox-padding {
backgound: var(--table-body);
}
.infobox tr td:not(.infobox-padding) {
padding: 0.2em 0.5em;
}
.infobox th:not(.infobox-header):not(.infobox-subheader):not(.infobox-nested) {
border-right: 2px solid var(--table-subheader);
text-align: right;
padding: 0.2em 0.5em;
}
.hidden {
display: none;
}
ol.references,
.reflist {
font-size: 90%;
}
.reflist {
list-style-type: decimal;
}
.reflist .references {
font-size: 100%;
list-style-type: inherit;
}
.reflist-lower-alpha {
list-style-type: lower-alpha;
}
ol.references li:target,
sup.reference:target {
background-color: var(--body-light);
}
.hideQuotes .refhide {
display: none;
}
:root {
--messagebox-obsolete-background: #cfcfcf;
--messagebox-obsolete-border: #464646;
--messagebox-obsolete-color: var(--text-color);
--messagebox-obsolete-link-color: #6c6c6c;
--messagebox-info-background: #ebebeb;
--messagebox-info-border: #898989;
--messagebox-info-color: var(--text-color);
--messagebox-info-link-color: #6c6c6c;
--messagebox-action-background: #c7e8fa;
--messagebox-action-border: #0b5884;
--messagebox-action-color: var(--text-color);
--messagebox-action-link-color: #03436b;
--messagebox-warn-background: #dfc0ba;
--messagebox-warn-border: #861c10;
--messagebox-warn-color: var(--text-color);
--messagebox-warn-link-color: #8e221a;
--messagebox-safe-background: #d8f0d3;
--messagebox-safe-border: #1b8408;
--messagebox-safe-color: var(--text-color);
--messagebox-safe-link-color: #1b8408;
--messagebox-disambig-background: #ebebeb;
--messagebox-disambig-border: #898989;
--messagebox-disambig-color: var(--text-color);
--messagebox-disambig-link-color: #6c6c6c;
--messagebox-discord-background: #5865f2;
--messagebox-discord-border: #4c57d0;
--messagebox-discord-link-color: #d2e5fc;
}
.mw-message-box,
.mw-message-box-error,
.mw-message-box-warning,
.mw-message-box-success,
.usermessage {
color: var(--text-color);
}
.messagebox {
width: 65%;
margin: 0.5em auto;
border-left: 15px solid;
border-color: var(--body-dark);
background-color: var(--body-light);
box-sizing: border-box;
}
.messagebox.obsolete {
background-color: var(--messagebox-obsolete-background);
border-color: var(--messagebox-obsolete-border);
color: var(--messagebox-obsolete-color);
}
.messagebox.obsolete a,
.messagebox.obsolete a:visited,
.messagebox.obsolete a:active {
color: var(--messagebox-obsolete-link-color);
}
.messagebox.info {
background-color: var(--messagebox-info-background);
border-color: var(--messagebox-info-border);
color: var(--messagebox-info-color);
}
.messagebox.info a,
.messagebox.info a:visited,
.messagebox.info a:active {
color: var(--messagebox-info-link-color);
}
.messagebox.action {
background-color: var(--messagebox-action-background);
border-color: var(--messagebox-action-border);
color: var(--messagebox-action-color);
}
.messagebox.action a,
.messagebox.action a:visited,
.messagebox.action a:active {
color: var(--messagebox-action-link-color);
}
.messagebox.warn {
background-color: var(--messagebox-warn-background);
border-color: var(--messagebox-warn-border);
color: var(--messagebox-warn-color);
}
.messagebox.warn a,
.messagebox.warn a:visited,
.messagebox.warn a:active {
color: var(--messagebox-warn-link-color);
}
.messagebox.safe {
background-color: var(--messagebox-safe-background);
border-color: var(--messagebox-safe-border);
color: var(--messagebox-safe-color);
}
.messagebox.safe a,
.messagebox.safe a:visited,
.messagebox.safe a:active {
color: var(--messagebox-safe-link-color);
}
.messagebox.disambig {
background-color: var(--messagebox-disambig-background);
border-color: var(--messagebox-disambig-border);
color: var(--messagebox-disambig-color);
}
.messagebox.disambig a,
.messagebox.disambig a:visited,
.messagebox.disambig a:active {
color: var(--messagebox-disambig-link-color);
}
.messagebox.discord {
background-color: var(--messagebox-discord-background);
border-color: var(--messagebox-discord-border);
color: #fff;
}
.messagebox.discord a,
.messagebox.discord a:visited,
.messagebox.discord a:active {
color: var(--messagebox-discord-link-color);
}
.messagebox.discord a.external,
.messagebox.discord a:visited.external,
.messagebox.discord a:active.external {
font-style: italic;
}
.messagebox.stub {
width: 40%;
}
.messagebox.hasdialogue {
padding: 0 10px;
width: auto;
}
:root {
--byline-arrow-filter: invert(29%) sepia(0%) saturate(376%) hue-rotate(172deg) brightness(87%) contrast(80%);
--tile-border-color: var(--body-dark);
--tile-background-color: var(--body-dark);
--tile-link-button-color: #f5e9db;
--tile-link-button-highlight-color: #dfccb0;
--tile-dark-color: #fff;
--tile-dark-bg: var(--body-dark);
--tile-dark-link-color: #ccc;
--tile-dark-byline-color: rgba(255, 255, 255, 0.7);
--tile-dark-header-color: #fff;
}
.tile {
background: var(--tile-background-color);
border: 1px solid var(--tile-border-color);
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
padding: 1.5em 2em 1em;
max-width: 40em;
}
.tile h2 {
font-size: 1.4em;
font-weight: bold;
border: none;
margin: 0 0 0.4em;
}
.tile .byline + h2 {
margin-top: -0.5em;
}
.tile.dark {
color: var(--tile-dark-color);
background: var(--tile-dark-bg);
border: none;
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.3);
}
.tile.dark h2 {
color: var(--tile-dark-header-color);
}
.tile.dark a {
color: var(--tile-dark-link-color);
}
.tile.dark .byline {
color: var(--tile-dark-byline-color);
}
.byline {
font-size: 0.9em;
color: var(--byline-color);
}
.byline a {
color: var(--byline-color);
}
.tile-row {
display: flex;
flex-flow: row wrap;
margin-bottom: 1em;
}
.tile-halves {
display: flex;
flex-flow: row wrap;
background: var(--tile-background-color);
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
}
.tile-halves h2 {
font-size: 1.4em;
font-weight: bold;
border: none;
margin: 0 0 0.4em;
}
.tile-halves .byline + h2 {
margin-top: -0.5em;
}
.tile-top {
width: 100%;
padding: 1.3rem 1.5rem 0.6rem;
}
.tile-top.tile-image {
display: flex;
align-items: center;
background-color: var(--body-light);
overflow: hidden;
padding: 0;
height: 13vw;
max-height: 12em;
transition: 0.4s ease-out;
}
.tile-halves:hover .tile-top.tile-image img {
transform: scale(1.1);
transition: 0.5s ease-out;
}
.tile-top.tile-image a {
width: 100%;
}
.tile-top.tile-image img {
width: 100%;
object-fit: cover;
max-height: 200px;
transition: 0.4s ease-out;
}
.tile-bottom {
background: var(--tile-background-color);
width: 100%;
padding: 1rem 1.5rem 0.6rem;
}
.tile-bottom h2 a {
color: #fff;
}
.tile-bottom.link-button {
align-self: flex-end;
padding: 0;
}
.tile-bottom.link-button a {
display: block;
text-align: center;
padding: 0.75em 1.5em 0.8em;
text-decoration: none;
}
.tile-bottom.read-more {
background: var(--tile-link-button-color);
transition: 0.3s ease-out;
}
.tile-bottom.read-more a {
color: var(--byline-color);
font-weight: bold;
text-align: right;
}
.tile-bottom.read-more:hover {
background: var(--tile-link-button-highlight-color);
}
.tile-bottom.read-more:hover .arrow {
transform: translateX(50%);
}
.tile-bottom.read-more .arrow {
filter: var(--byline-arrow-filter);
margin-left: 0.4em;
transition: 0.3s ease-out;
}
body.page-Main_Page.action-view .catlinks,
body.page-Main_Page.action-view #contentSub,
body.page-Main_Page.action-view #firstHeading,
body.page-Main_Page.action-view #siteNotice {
display: none;
}
body.page-Main_Page .mw-parser-output {
max-width: 75em;
margin: 0 auto;
}
body.page-Main_Page.action-view .catlinks,
body.page-Main_Page.action-view #contentSub,
body.page-Main_Page.action-view #siteNotice {
display: none;
}
.mainpage-header {
display: flex;
margin: 2.6em 1.75em 1.5em;
}
.mainpage-header .header-intro {
flex: 2;
}
.mainpage-header .header-intro h1 {
font-size: 2.5em;
font-weight: bold;
border: none;
margin: 0 0 0.15em;
}
.mainpage-header .header-intro p {
font-size: 1.1em;
line-height: 1.7em;
}
.mainpage-header .header-stats {
flex: 1;
display: flex;
justify-content: center;
align-items: center;
margin-top: -1em;
}
.mainpage-body {
display: grid;
grid-template-areas: "event event event" "update update update" "content content content" "left left right";
gap: 0.9rem;
grid-template-columns: repeat(3, 1fr);
}
.mainpage-body h2 a {
color: var(--text-color);
}
.mainpage-body .tile {
padding-left: 1.75em;
padding-right: 1.75em;
max-width: 100%;
}
.mainpage-body .tile-row {
width: 100%;
margin-bottom: 0;
}
.mainpage-body .tile-row {
display: grid;
gap: 0.9rem;
}
.mainpage-contents.tile-row {
display: flex;
}
.mainpage-contents.tile-row .tile-top {
height: 5.5rem;
}
.mainpage-left {
grid-area: left;
flex: 2;
display: flex;
flex-flow: column wrap;
}
.mainpage-left > * {
margin: 0 0 0.9rem;
}
.mainpage-right {
grid-area: right;
flex: 1;
display: flex;
flex-flow: column wrap;
}
.mainpage-right > * {
margin: 0 0 0.9rem;
}
.arrow {
background: url('filepath://White-chevron.svg') no-repeat;
display: inline-block;
height: 0.7rem;
width: 0.45rem;
vertical-align: middle;
}
.arrow.dark {
filter: invert(80%);
}
.mainpage-contents {
grid-area: content;
grid-template-columns: repeat(6, 1fr);
}
.mainpage-contents .tile-halves {
flex: 1;
}
.mainpage-contents .tile-top {
height: 4.5rem;
position: relative;
}
.mainpage-contents .tile-top.tile-image img {
height: auto;
}
.mainpage-contents h2 {
margin: 0;
padding: 0;
}
.mainpage-contents .tile-bottom.link-button a {
padding: 0.75em 0.2em;
}
.popular-pages ul {
display: grid;
grid-template-columns: repeat(3, 1fr);
grid-gap: 0.6em;
margin: 1em 0 0.7em 0;
}
.mp-popular-page-light {
display: flex;
align-items: center;
background-color: var(--button-background);
transition: 100ms;
}
.mp-popular-page-light a {
flex: 1;
display: block;
color: #fff;
font-weight: bold;
text-align: center;
text-decoration: none;
padding: 0.7em 1em;
}
.mp-popular-page-light:hover {
filter: brightness(115%);
transition: 100ms;
}
.mainpage-social {
border: none;
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.3);
}
.mainpage-social .tile-top {
display: flex;
align-items: center;
padding: 1em 1.5em;
}
.mainpage-social .tile-top a {
flex: 1;
position: relative;
text-decoration: none;
}
.mainpage-social .tile-top a:hover .arrow {
transform: translateX(50%);
}
.mainpage-social .tile-bottom {
border: none;
padding: 1em 1.75em;
}
.mainpage-social .tile-bottom p {
color: #fff;
font-weight: bold;
font-size: 0.9em;
text-align: center;
text-transform: uppercase;
letter-spacing: 0.03em;
margin: 0;
}
.mainpage-social .social-icon {
margin-right: 0.75em;
text-align: center;
width: 60px;
}
.mainpage-social .social-header {
color: #fff;
font-weight: bold;
font-size: 1.15em;
margin: 0.5em 0 -0.15em;
}
.mainpage-social .server-tagline {
color: rgba(255, 255, 255, 0.9);
margin-bottom: 0.5em;
}
.mainpage-social .arrow {
position: absolute;
top: calc(50% - .5em);
right: 0;
height: 1em;
width: 0.7em;
background-size: 0.7em 1em;
transition: 0.3s ease-out;
}
.mainpage-social.mainpage-discord .tile-top {
background: #5865f2;
}
.mainpage-social.mainpage-discord .tile-bottom {
background: #525ee0;
}
.mainpage-social.mainpage-twitter .tile-top {
background: #15202b;
}
.mainpage-social.mainpage-twitter .tile-bottom {
background: #121c26;
}
.mainpage-editing {
border: none;
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.3);
}
.mainpage-editing .tile-top {
background: #438ab5;
}
.mainpage-editing .tile-bottom {
background: #3980ab;
border: none;
padding: 0.8rem 1.5rem 0.4rem;
}
.mainpage-editing h2,
.mainpage-editing a {
color: #fff;
}
.mainpage-editing p {
color: rgba(255, 255, 255, 0.9);
}
.mainpage-editing ul {
list-style-image: url('filepath://Transparent-chevron.svg');
}
@media only screen and (max-width: 1200px) {
.mainpage-contents {
grid-template-columns: repeat(3, 1fr);
}
}
@media only screen and (max-width: 1000px) {
.mainpage-body {
grid-template-areas: "event event event" "update update update" "content content content" "left left left" "right right right";
}
.mainpage-recent-updates {
grid-template-columns: repeat(2, 1fr);
}
.mainpage-recent-updates .tile-halves:last-child {
display: none;
}
.mainpage-recent-updates .tile-halves:hover .tile-top img {
transform: scale(1.04);
}
.mainpage-recent-updates .tile-top {
height: 18vw;
min-height: 9em;
}
.mainpage-header .header-stats {
display: none;
}
.mainpage-left > *:last-child,
.mainpage-right > *:last-child {
margin-bottom: 0;
}
.popular-pages ul {
grid-template-columns: repeat(2, 1fr);
}
}
@media only screen and (max-width: 720px) {
.mainpage-recent-updates {
grid-template-columns: none;
}
.mainpage-recent-updates .tile-halves:last-child {
display: flex;
}
.mainpage-contents {
grid-template-columns: repeat(2, 1fr);
}
}
.mw-prefs-buttons {
background-color: var(--body-main);
border-top-color: var(--body-border);
box-shadow: none;
}
.mw-prefs-tabs-wrapper.oo-ui-panelLayout-framed,
.mw-prefs-tabs > .oo-ui-menuLayout-content > .oo-ui-indexLayout-stackLayout > .oo-ui-tabPanelLayout {
border-color: var(--body-border);
}
.mw-htmlform-ooui .mw-htmlform-matrix tbody tr:nth-child(even) td {
background-color: var(--body-light);
}
.mw-htmlform-ooui .mw-htmlform-matrix tbody tr:hover td {
background-color: var(--body-mid);
}
:root {
--rc-positive-color: #407813;
--rc-negative-color: #b41e0f;
}
.mw-plusminus-pos {
color: var(--rc-positive-color);
}
.mw-plusminus-neg {
color: var(--rc-negative-color);
}
.client-js .mw-recentchanges-toplinks:not(.mw-recentchanges-toplinks-collapsed) {
border-color: var(--body-border);
background-color: var(--body-light);
border-radius: 2px;
}
.mw-rcfilters-ui-filterTagMultiselectWidget-wrapper-content-title {
color: var(--text-color);
}
.mw-rcfilters-ui-filterTagMultiselectWidget-emptyFilters {
color: var(--byline-color);
}
.mw-rcfilters-ui-filterTagMultiselectWidget.oo-ui-widget-enabled .oo-ui-tagMultiselectWidget-handle {
background-color: var(--ooui-interface);
border-color: var(--ooui-interface-border);
}
.mw-rcfilters-ui-filterTagMultiselectWidget-views-select-widget.oo-ui-widget {
border-color: var(--ooui-interface-border);
}
.mw-rcfilters-collapsed .mw-rcfilters-ui-filterTagMultiselectWidget {
border-bottom-color: var(--ooui-interface-border);
}
.mw-rcfilters-ui-menuSelectWidget-footer {
background-color: var(--ooui-interface);
border-color: var(--ooui-interface-border);
}
.mw-rcfilters-ui-viewSwitchWidget label.oo-ui-labelWidget {
color: var(--byline-color);
}
.mw-rcfilters-ui-tagItemWidget-popup-content {
color: var(--ooui-text);
}
.mw-changeslist-legend,
.mw-rcfilters-ui-changesListWrapperWidget .mw-changeslist-legend {
background-color: var(--body-light);
border-color: var(--body-dark);
}
.mw-rcfilters-ui-changesListWrapperWidget-previousChangesIndicator {
border-color: var(--sidebar);
}
.client-js .mw-changeslist ul,
.client-js .mw-changeslist table.mw-enhanced-rc {
margin-left: 0;
}
.mw-rcfilters-ui-watchlistTopSectionWidget-separator {
border-color: var(--sidebar);
}
.mw-rcfilters-ui-itemMenuOptionWidget-header {
border-bottom-color: var(--ooui-interface);
background-color: var(--ooui-interface-border);
}
.mw-rcfilters-ui-itemMenuOptionWidget:not(:last-child):not(.mw-rcfilters-ui-itemMenuOptionWidget-identifier-talk) {
border-bottom-color: var(--ooui-normal-border);
}
.mw-rcfilters-ui-itemMenuOptionWidget-label-title,
.mw-rcfilters-ui-itemMenuOptionWidget-label-desc {
color: var(--text-color);
}
.mw-rcfilters-ui-filterMenuOptionWidget.oo-ui-flaggedElement-muted:not(.oo-ui-optionWidget-selected) {
background-color: var(--body-main);
}
.mw-rcfilters-ui-filterMenuOptionWidget.oo-ui-flaggedElement-muted .mw-rcfilters-ui-itemMenuOptionWidget-label-title,
.mw-rcfilters-ui-filterMenuOptionWidget.oo-ui-flaggedElement-muted .mw-rcfilters-ui-itemMenuOptionWidget-label-desc {
color: var(--subtle-color);
}
.mw-rcfilters-ui-filterMenuSectionOptionWidget {
background-color: var(--body-mid);
}
.mw-rcfilters-ui-filterMenuSectionOptionWidget-header-title.oo-ui-labelElement-label {
color: var(--ooui-text);
}
.mw-rcfilters-ui-filterMenuHeaderWidget-title {
color: var(--ooui-text);
}
.mw-rcfilters-ui-filterMenuHeaderWidget-header {
border-bottom-color: var(--ooui-interface-border);
background-color: var(--ooui-interface);
}
.mw-rcfilters-ui-itemMenuOptionWidget-view-namespaces {
border-top-color: var(--ooui-interface-border);
}
.mw-rcfilters-ui-datePopupWidget {
border-color: var(--ooui-interface-border);
}
.mw-rcfilters-ui-datePopupWidget .mw-rcfilters-ui-valuePickerWidget-title {
color: var(--byline-color);
}
.mw-rcfilters-ui-savedLinksListItemWidget-label {
color: var(--ooui-accent);
}
.client-js .mw-changeslist.mw-rcfilters-ui-changesListWrapperWidget-highlighted ul,
.client-js .mw-changeslist.mw-rcfilters-ui-changesListWrapperWidget-highlighted table.mw-enhanced-rc {
margin-left: 1.5em;
}
.page-Special_CreateAccount .mw-ui-container,
.page-Special_UserLogin .mw-ui-container {
max-width: 64rem;
margin: 0 auto;
}
.mw-number-text {
color: var(--byline-color);
}
.mw-body-content .mw-number-text h3 {
color: var(--text-color);
}
#mw-indicator-mw-helplink a {
background: none;
padding: 0;
display: flex;
align-items: center;
}
#mw-indicator-mw-helplink a::before {
content: '';
margin-right: 5px;
-webkit-mask: url("/resources/src/mediawiki.helplink/images/helpNotice.svg?46d34") no-repeat 50% 50% / contain;
mask: url("/resources/src/mediawiki.helplink/images/helpNotice.svg?46d34") no-repeat 50% 50% / contain;
background: var(--text-color);
height: 20px;
width: 20px;
}
.results-info {
color: inherit;
}
.mw-search-profile-tabs {
background-color: var(--body-mid);
border-color: transparent;
}
.search-types .current a {
color: inherit;
}
#mw-searchoptions {
background-color: var(--body-mid);
border-color: transparent;
}
#mw-searchoptions .divider {
border-color: var(--body-border);
}
#mw-searchoptions h4 {
font-family: inherit;
}
#mw-searchoptions .oo-ui-labelElement:nth-of-type(odd) {
font-weight: bold;
}
.searchresult {
line-height: 1.5;
}
.searchalttitle,
#mw-search-interwiki li {
font-size: 90%;
}
.mw-search-result-data {
color: var(--byline-color);
}
.page-Special_ListFiles a.image img {
width: inherit;
height: inherit;
}
.page-Special_ListFiles .TablePager_col_thumb {
text-align: center;
}
#editcount table[border="1"] {
background-color: var(--body-main) !important;
border-color: var(--wikitable-border) !important;
margin-top: 0.5em;
}
#editcount table[border="1"] th,
#editcount table[border="1"] td {
padding: 0.2em 0.4em;
}
#editcount table[border="1"] th {
background-color: var(--wikitable-header-bg);
border: 1px solid var(--wikitable-border);
}
#editcount table[border="1"] td {
border: 1px solid var(--wikitable-border);
}
#editcount table[border="1"] tr:nth-child(odd) {
background-color: var(--body-light);
}
.mw-echo-ui-notificationBadgeButtonPopupWidget-popup > .oo-ui-popupWidget-popup .mw-echo-ui-placeholderItemWidget {
background-color: inherit;
}
table.mw-interwikitable.body td.mw-interwikitable-local-yes {
background-color: var(--table-yes-background);
color: var(--table-yes-color);
}
.mw-protectedpages-unknown {
color: var(--byline-color);
}
.watchlistredir,
.allpagesredirect {
font-style: italic;
}
.allpagesredirect:after {
color: var(--byline-color);
content: " (redirect)";
}
.mw-apisandbox-toolbar {
background: var(--body-main);
}
.oo-ui-menuOptionWidget .mw-apisandbox-flag {
color: var(--byline-color);
}
tr.mw-abusefilter-list-disabled,
tr.mw-abusefilter-list-disabled td {
color: var(--byline-color);
}
table.mw-abuselog-details {
background: var(--wikitable-bg);
border-color: var(--wikitable-border);
}
table.mw-abuselog-details th {
background: var(--wikitable-header-bg);
}
table.mw-abuselog-details th,
table.mw-abuselog-details td {
border-color: var(--wikitable-border);
}
.mw-abusefilter-log-hidden-entry {
color: var(--subtle-color);
}
body td.mw-abusefilter-history-changed {
background: var(--table-no-background);
}
div.mw-abusefilter-editor,
#mw-abusefilter-warn-preview,
#mw-abusefilter-disallow-preview {
border-color: var(--ooui-input-border);
}
.mw-destfile-warning {
border-color: var(--warningbox-border);
color: var(--text-color);
background-color: var(--warningbox-bg);
}
span.fileinput-button {
background-color: var(--ooui-normal);
border-color: var(--ooui-normal-border);
color: var(--ooui-text);
}
ul.fileupload-results li.ful-success {
background-color: var(--successbox-bg);
}
ul.fileupload-results li.ful-success a {
color: var(--link-color);
}
ul.fileupload-results li.ful-error {
background-color: var(--errorbox-bg);
}
.color-container {
display: flex;
margin: 2em auto;
width: 80%;
max-width: 60em;
}
.color-column {
flex: 1;
margin-right: 1em;
}
.color-column:last-child {
margin-right: 0;
}
.color-column h3 {
padding: 0;
}
.color-group {
color: #333;
padding: 1em 1.5em;
transition: 0.2s ease-out;
}
.color-group:hover {
transform: scale(1.03);
}
.color-group.dark {
color: #fff;
}
.color-group .variable,
.color-group .hexcode {
font-family: monospace;
font-size: 1.1em;
-webkit-user-select: all;
-moz-user-select: all;
-ms-user-select: all;
user-select: all;
margin: 0;
}
body.wgl-readermode .color-group .variable,
body.wgl-readermode .color-group .hexcode {
font-size: inherit;
}
.color-group .variable {
font-weight: bold;
}
#t-print,
#t-permalink {
display: none;
}
#filetoc {
border-radius: 2px;
background: var(--body-mid);
border-color: transparent;
margin: 0.5em auto;
text-align: center;
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
}
li.gallerybox div.thumb {
border: none;
background-color: var(--thumb-bg);
}
.smwfact {
display: none;
}
.list-header {
background-color: var(--body-mid);
color: inherit;
}
.editOptions {
color: var(--text-color);
background-color: var(--sourceeditor-background-secondary);
border-color: var(--sourceeditor-border);
}
.mw-json th,
.mw-json td {
border-color: var(--wikitable-border);
}
.mw-json td {
background: var(--wikitable-bg);
}
.mw-json th {
background: var(--wikitable-header-bg);
}
67e2835b2214e1a251472c0b68a90f2f55e25208
1688
1685
2024-04-01T01:24:35Z
Merds
25
Updating CSS from [[MediaWiki:Common.less]]
css
text/css
/* <pre> */
:root {
--body-main: #fdfcfc;
--body-light: #f5f0eb;
--body-mid: #d1b9ad;
--body-dark: #b1886f;
--body-border: #d1b9ad;
--body-background-color: #173a4d;
--button-background: #605443;
--button-color: #fff;
--button-border: #3c352a;
--button-dark: #18140c;
--button-light: #3a301d;
--sidebar: #cfc08d;
--background-text-color: #e2dbc8;
--background-link-color: #e2bd8a;
--search-box: #efeee6;
--link-color: #6e452b;
--redlink-color: #ba0000;
--text-color: #2F2828;
--byline-color: #ccc;
--subtle-color: #777;
--admin-blue: #332e75;
--bearcat-green: #13592e;
--awb-purple: #933b96;
--rsw-blue: #438ab6;
--osrsw-brown: #605443;
--thumb-bg: var(--body-light);
--thumb-caption-bg: var(--body-mid);
--sourceeditor-input-background: #fff;
--sourceeditor-background: var(--body-light);
--sourceeditor-background-secondary: var(--body-light);
--sourceeditor-border: var(--body-mid);
--codemirror-gutter-background: var(--body-mid);
}
@font-face {
font-family: 'Lora';
font-weight: 400 700;
font-style: normal;
font-display: swap;
src: url('filepath://Lora.woff2') format('woff2');
}
@font-face {
font-family: 'Lora';
font-weight: 400 700;
font-style: italic;
font-display: swap;
src: url('filepath://Lora-Italic.woff2') format('woff2');
}
:root {
--base-text-color: #36414f;
--base-heading-color: #444e5a;
--base-heading-border: #e4eaee;
--mw-code-background-color: var(--body-light);
--body-background-image: url('filepath://Wiki_background.jpg');
}
#mw-page-base {
background: none;
}
.mw-body {
background-color: var(--body-main);
color: var(--text-color);
border-color: transparent;
box-shadow: 0 0 7px rgba(0, 0, 0, 0.15);
margin-top: 0;
}
h1,
h2,
h3,
h4,
h5,
h6 {
color: var(--text-color);
}
h1,
h2 {
border-color: var(--body-border);
}
.mw-body h1,
.mw-body-content h1,
.mw-body-content h2,
.mw-body-content h3,
.mw-body-content h4,
.mw-body-content h5,
.mw-body-content h6 {
font-family: 'Lora', 'Palatino', 'Georgia', serif;
}
.mw-parser-output h2:first-of-type {
clear: left;
}
.mw-footer {
color: var(--background-text-color);
}
.mw-footer li {
color: var(--background-text-color);
}
.mw-footer a,
.mw-footer a:active,
.mw-footer a:visited {
color: var(--background-link-color);
}
::placeholder {
color: var(--subtle-color);
}
a {
color: var(--link-color);
}
a:visited,
a:active {
color: var(--link-color);
}
a.new {
color: var(--redlink-color);
}
a.new:visited {
color: var(--redlink-color);
}
.mw-parser-output a.extiw,
.mw-parser-output a.external {
color: var(--link-color);
}
.mw-parser-output a.extiw:visited,
.mw-parser-output a.external:visited,
.mw-parser-output a.extiw:active,
.mw-parser-output a.external:active {
color: var(--link-color);
}
.jsPurgeLink a.external {
color: var(--link-color);
}
:root {
--errorbox-bg: #feecea;
--errorbox-border: #ee4231;
--warningbox-bg: #fef9de;
--warningbox-border: #f9d000;
--successbox-bg: #ecf8e3;
--successbox-border: #6bc71f;
}
.mw-message-box-error,
.errorbox,
.mw-message-box-warning,
.warningbox,
.mw-message-box-success,
.successbox,
.usermessage {
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
}
.mw-message-box-error,
.errorbox {
background-color: var(--errorbox-bg);
border-color: var(--errorbox-border);
}
.mw-message-box-warning,
.warningbox,
.usermessage {
background-color: var(--warningbox-bg);
border-color: var(--warningbox-border);
}
.mw-message-box-success,
.successbox {
background-color: var(--successbox-bg);
border-color: var(--successbox-border);
}
.catlinks {
background: var(--body-light);
border: 1px solid var(--body-dark);
padding: 8px 15px;
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
}
.catlinks li {
border-color: var(--body-mid);
}
.filehistory a img,
#file img {
background: url("data:image/svg+xml,%3C%3Fxml version='1.0' encoding='UTF-8'%3F%3E%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16'%3E%3Cpath d='M0 0h8v16h8V8H0z' opacity='.13'/%3E%3C/svg%3E") repeat;
}
#file img:hover {
background: none;
}
.mw-highlight {
background: none;
}
.mw-highlight .linenos {
background-color: var(--mw-code-background-color);
color: var(--body-border);
}
.mw-highlight a:hover .linenos,
.mw-highlight .hll a .linenos {
color: var(--body-dark);
}
.mw-content-ltr.mw-highlight-lines pre,
.mw-content-ltr.content .mw-highlight-lines pre {
box-shadow: inset 2.75em 0 0 var(--mw-code-background-color);
}
#pagehistory ul {
list-style: none;
margin: 0;
}
#pagehistory li {
border: 1px solid transparent;
padding: 1px 10px;
margin: 2px 0;
}
#pagehistory li.selected {
background-color: var(--body-light);
color: inherit;
border: 1px dashed var(--body-border);
outline: none;
}
#mw-history-compare > div:first-of-type {
position: -webkit-sticky;
position: sticky;
top: 0;
background-color: var(--body-main);
border-bottom: 1px solid var(--body-dark);
padding: 0.25em 0;
}
.wgl-stickyheader #mw-history-compare > div:first-of-type {
top: 2.5rem;
}
.autocomment,
.autocomment a,
.autocomment a:visited {
color: var(--link-color);
}
li span.deleted,
span.history-deleted {
color: var(--byline-color);
}
.mw-usertoollinks-contribs-no-edits,
.mw-usertoollinks-contribs-no-edits:visited {
color: var(--redlink-color);
}
.CategoryTreeToggle {
color: var(--link-color);
}
body.wgl-stickyheader.action-view .mw-headline:target::before {
display: block;
content: '';
margin-top: -3rem;
height: 3rem;
visibility: hidden;
pointer-events: none;
}
.mw-mmv-post-image {
color: var(--text-color);
background-color: var(--body-main);
}
.mw-mmv-image-metadata {
border-top-color: var(--body-mid);
background-color: var(--body-light);
}
.mw-mmv-dialog,
.mw-mmv-dialog .mw-mmv-dialog-down-arrow,
.mw-mmv-options-dialog .mw-mmv-dialog-down-arrow {
background-color: var(--body-light);
box-shadow: none;
}
.mw-mmv-options-enable-alert {
background-color: var(--body-light);
color: var(--text-color);
}
.mw-mmv-options-dialog-header,
.mw-mmv-options-text-header,
.mw-mmv-options-text-body,
.mw-mmv-options-enable-alert,
.mw-mmv-options-dialog .mw-mmv-disable-confirmation .mw-mmv-options-dialog-header,
.mw-mmv-options-dialog .mw-mmv-disable-confirmation .mw-mmv-options-text-header {
color: var(--text-color);
}
.mw-revslider-container {
border-color: var(--sidebar);
}
.mw-revslider-slider-wrapper {
border-top-color: var(--sidebar);
}
.mw-ui-button {
background-color: var(--ooui-normal);
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
}
.mw-ui-button:not(:disabled):hover,
.mw-ui-button:not(:disabled):active {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
}
.mw-ui-button:not(:disabled):focus {
color: var(--ooui-text);
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent), inset 0 0 0 2px #fff;
}
.mw-ui-button:not(:disabled):visited {
color: var(--ooui-text);
}
.mw-ui-button.mw-ui-progressive:not(:disabled) {
background-color: var(--ooui-progressive);
color: #fff;
border-color: var(--ooui-progressive);
}
.mw-ui-button.mw-ui-progressive:not(:disabled):hover {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
}
.mw-ui-button.mw-ui-progressive:not(:disabled):focus {
box-shadow: inset 0 0 0 1px var(--ooui-accent), inset 0 0 0 2px #fff;
}
.mw-ui-button.mw-ui-progressive:not(:disabled):active,
.mw-ui-button.mw-ui-progressive:not(:disabled).is-on {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
box-shadow: none;
}
.mw-ui-button.mw-ui-destructive:not( :disabled ) {
color: #fff;
}
.mw-ui-button.mw-ui-quiet,
.mw-ui-button.mw-ui-quiet.mw-ui-progressive,
.mw-ui-button.mw-ui-quiet.mw-ui-destructive {
color: var(--text-color);
}
input[type='checkbox']:hover + .mw-ui-button.mw-ui-quiet,
input[type='checkbox']:hover + .mw-ui-button.mw-ui-quiet.mw-ui-progressive,
input[type='checkbox']:hover + .mw-ui-button.mw-ui-quiet.mw-ui-destructive,
.mw-ui-button.mw-ui-quiet:hover,
.mw-ui-button.mw-ui-quiet.mw-ui-progressive:hover,
.mw-ui-button.mw-ui-quiet.mw-ui-destructive:hover {
background-color: rgba(0, 24, 73, 0.02745098);
color: var(--text-color);
border-color: transparent;
}
input[type='checkbox']:focus + .mw-ui-button.mw-ui-quiet,
input[type='checkbox']:focus + .mw-ui-button.mw-ui-quiet.mw-ui-progressive,
input[type='checkbox']:focus + .mw-ui-button.mw-ui-quiet.mw-ui-destructive,
.mw-ui-button.mw-ui-quiet:focus,
.mw-ui-button.mw-ui-quiet.mw-ui-progressive:focus,
.mw-ui-button.mw-ui-quiet.mw-ui-destructive:focus {
color: var(--text-color);
}
input[type='checkbox']:active + .mw-ui-button.mw-ui-quiet,
input[type='checkbox']:active + .mw-ui-button.mw-ui-quiet.mw-ui-progressive,
input[type='checkbox']:active + .mw-ui-button.mw-ui-quiet.mw-ui-destructive,
.mw-ui-button.mw-ui-quiet:active,
.mw-ui-button.mw-ui-quiet.mw-ui-progressive:active,
.mw-ui-button.mw-ui-quiet.mw-ui-destructive:active {
background-color: rgba(0, 36, 73, 0.08235294);
color: var(--text-color);
border-color: #72777d;
}
.mw-ui-input {
background-color: var(--ooui-input);
color: var(--text-color);
border-color: var(--ooui-input-border);
}
.mw-ui-input:hover {
border-color: var(--ooui-input-border--hover);
}
.mw-ui-input::placeholder {
color: var(--byline-color);
}
.mw-content-ltr .redirectText li:first-child {
padding: 0;
background: 0;
}
.mw-content-ltr .redirectText li:first-child::before {
content: '';
background: currentcolor;
-webkit-mask: url("filepath://Redirect-arrow.svg") no-repeat 50% 50% / contain;
mask: url("filepath://Redirect-arrow.svg") no-repeat 50% 50% / contain;
display: inline-block;
width: 47px;
height: 20px;
}
.vector-search-box-inner {
background: var(--body-main) !important;
box-shadow: inset 0 -7px 7px -7px rgba(0, 0, 0, 0.15) !important;
}
.vector-menu-dropdown .vector-menu-heading {
color: var(--vector-tab-link-color) !important;
}
.vector-menu-dropdown .vector-menu-heading:hover {
color: var(--vector-tab-link-color) !important;
}
.vector-menu-dropdown .vector-menu-heading:focus {
color: var(--vector-tab-link-color) !important;
}
:root {
--wikitable-header-bg: var(--body-dark);
--wikitable-border: var(--body-border);
--wikitable-bg: var(--body-light);
--wikitable-bg-lighter: #e9e3d6;
--wikitable-color: var(--text-color);
--table-na-background: rgba(255, 255, 255, 0.3);
--table-na-color: var(--subtle-color);
--table-yes-background: #c3e8a3;
--table-yes-color: #2e5e05;
--table-no-background: #fbc0ba;
--table-no-color: #801c13;
--table-maybe-background: #fcea94;
--table-maybe-color: #786300;
}
.wikitable {
background: var(--wikitable-bg);
color: var(--wikitable-color);
border-color: var(--wikitable-border);
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
}
.wikitable > tr > th,
.wikitable > tr > td,
.wikitable > * > tr > th,
.wikitable > * > tr > td {
border-color: var(--wikitable-border);
}
.wikitable > tr > th.table-noborder,
.wikitable > tr > td.table-noborder,
.wikitable > * > tr > th.table-noborder,
.wikitable > * > tr > td.table-noborder {
border-left-style: hidden;
border-right-style: hidden;
padding-left: 0;
padding-right: 0;
}
.wikitable > tr > th,
.wikitable > * > tr > th {
background-color: var(--wikitable-header-bg);
color: #fff;
}
.tabber .wikitable {
box-shadow: none;
}
.mw_metadata td,
.mw_metadata th {
border-color: var(--wikitable-border);
}
.mw_metadata th {
background-color: var(--wikitable-header-bg);
}
.mw_metadata td {
background-color: var(--wikitable-bg);
}
.mw-datatable {
border-color: var(--wikitable-border);
}
.mw-datatable td,
.mw-datatable th {
border-color: var(--wikitable-border);
}
.mw-datatable th {
background-color: var(--wikitable-header-bg);
}
.mw-datatable td {
background-color: var(--wikitable-bg);
}
.mw-datatable tr:hover td {
background-color: var(--wikitable-bg);
}
table.alternating-rows tr:nth-child(odd),
table.alternating-cols td:nth-child(odd) {
background: var(--wikitable-alternating-bg);
}
.table-na {
background: var(--table-na-background);
color: var(--table-na-color);
vertical-align: middle;
text-align: center;
}
.table-yes {
background: var(--table-yes-background);
color: var(--table-yes-color);
}
.table-positive {
background: var(--table-yes-background);
}
.table-no {
background: var(--table-no-background);
color: var(--table-no-color);
}
.table-negative {
background: var(--table-no-background);
}
.table-maybe {
background: var(--table-maybe-background);
color: var(--table-maybe-color);
}
#mw-allmessagestable .am_actual,
#mw-allmessagestable .am_default {
background-color: var(--wikitable-bg);
}
#mw-allmessagestable .am_default:hover,
#mw-allmessagestable .am_actual:hover,
#mw-allmessagestable tbody:hover td {
background-color: var(--wikitable-bg-lighter);
}
table.wikitable td.no-cell-spacing {
padding: 0;
height: 0;
}
table.wikitable td.no-cell-spacing table {
margin: -1px;
width: calc(100% + 2px);
height: calc(100% + 2px);
}
.plainlist ol,
.plainlist ul {
margin: 0;
}
.plainlist li {
margin-bottom: 0;
list-style: none;
}
table.align-right-1 td:nth-of-type(1),
table.align-right-2 td:nth-of-type(2),
table.align-right-3 td:nth-of-type(3),
table.align-right-4 td:nth-of-type(4),
table.align-right-5 td:nth-of-type(5),
table.align-right-6 td:nth-of-type(6),
table.align-right-7 td:nth-of-type(7),
table.align-right-8 td:nth-of-type(8),
table.align-right-9 td:nth-of-type(9),
table.align-right-10 td:nth-of-type(10),
table.align-right-11 td:nth-of-type(11),
table.align-right-12 td:nth-of-type(12),
table.align-right-13 td:nth-of-type(13),
table.align-right-14 td:nth-of-type(14),
table.align-right-15 td:nth-of-type(15),
table.align-right-16 td:nth-of-type(16),
table.align-right-17 td:nth-of-type(17),
table.align-right-18 td:nth-of-type(18),
table.align-right-19 td:nth-of-type(19),
table.align-right-20 td:nth-of-type(20) {
text-align: right;
}
table.align-center-1 td:nth-of-type(1),
table.align-center-2 td:nth-of-type(2),
table.align-center-3 td:nth-of-type(3),
table.align-center-4 td:nth-of-type(4),
table.align-center-5 td:nth-of-type(5),
table.align-center-6 td:nth-of-type(6),
table.align-center-7 td:nth-of-type(7),
table.align-center-8 td:nth-of-type(8),
table.align-center-9 td:nth-of-type(9),
table.align-center-10 td:nth-of-type(10),
table.align-center-11 td:nth-of-type(11),
table.align-center-12 td:nth-of-type(12),
table.align-center-13 td:nth-of-type(13),
table.align-center-14 td:nth-of-type(14),
table.align-center-15 td:nth-of-type(15),
table.align-center-16 td:nth-of-type(16),
table.align-center-17 td:nth-of-type(17),
table.align-center-18 td:nth-of-type(18),
table.align-center-19 td:nth-of-type(19),
table.align-center-20 td:nth-of-type(20) {
text-align: center;
}
table.align-left-1 td:nth-of-type(1),
table.align-left-2 td:nth-of-type(2),
table.align-left-3 td:nth-of-type(3),
table.align-left-4 td:nth-of-type(4),
table.align-left-5 td:nth-of-type(5),
table.align-left-6 td:nth-of-type(6),
table.align-left-7 td:nth-of-type(7),
table.align-left-8 td:nth-of-type(8),
table.align-left-9 td:nth-of-type(9),
table.align-left-10 td:nth-of-type(10),
table.align-left-11 td:nth-of-type(11),
table.align-left-12 td:nth-of-type(12),
table.align-left-13 td:nth-of-type(13),
table.align-left-14 td:nth-of-type(14),
table.align-left-15 td:nth-of-type(15),
table.align-left-16 td:nth-of-type(16),
table.align-left-17 td:nth-of-type(17),
table.align-left-18 td:nth-of-type(18),
table.align-left-19 td:nth-of-type(19),
table.align-left-20 td:nth-of-type(20) {
text-align: left;
}
:root {
--diff-addedline-border-color: #438ab5;
--diff-addedline-background: #bddff2;
--diff-addedline-color: #000;
--diff-deletedline-border-color: #379541;
--diff-deletedline-background: #c1edbf;
--diff-deletedline-color: #000;
--diff-context-border-color: var(--body-mid);
--diff-context-background: var(--body-mid);
}
.diff-context {
border-color: var(--diff-context-border-color);
background: var(--diff-context-background);
color: inherit;
}
.diff-addedline {
border-color: var(--diff-addedline-border-color);
}
.diff-addedline .diffchange {
background: var(--diff-addedline-background);
color: var(--diff-addedline-color);
}
.diff-deletedline {
border-color: var(--diff-deletedline-border-color);
}
.diff-deletedline .diffchange {
background: var(--diff-deletedline-background);
color: var(--diff-deletedline-color);
}
.mw-diff-movedpara-left:after,
.mw-diff-movedpara-right:after {
color: var(--text-color);
}
.mw-notification {
background-color: var(--body-light);
border-color: var(--body-border);
color: var(--text-color);
}
.mw-echo-ui-notificationsInboxWidget-toolbarWrapper {
background: var(--body-main);
}
.mw-body-content .mw-echo-ui-datedSubGroupListWidget-title-secondary {
color: var(--byline-color);
}
.mw-echo-ui-pageNotificationsOptionWidget.oo-ui-optionWidget-selected {
background-color: var(--ooui-normal);
color: var(--ooui-accent);
}
.mw-echo-ui-pageNotificationsOptionWidget-label-count {
background-color: var(--ooui-normal);
color: var(--byline-color);
}
.oo-ui-optionWidget-selected .mw-echo-ui-pageNotificationsOptionWidget-label-count {
color: var(--ooui-accent);
}
.mw-echo-ui-pageNotificationsOptionWidget.oo-ui-optionWidget-highlighted {
background-color: var(--ooui-normal);
color: var(--text-color);
}
.mw-echo-ui-crossWikiUnreadFilterWidget {
border-color: var(--body-border);
}
.mw-echo-ui-crossWikiUnreadFilterWidget-subtitle {
color: var(--byline-color);
}
.mw-echo-ui-notificationBadgeButtonPopupWidget-popup > .oo-ui-popupWidget-popup > .oo-ui-popupWidget-head,
.mw-echo-ui-notificationBadgeButtonPopupWidget-popup > .oo-ui-popupWidget-popup > .oo-ui-popupWidget-footer {
border-color: var(--ooui-interface-border);
}
.mw-echo-ui-notificationBadgeButtonPopupWidget-popup > .oo-ui-popupWidget-popup > .oo-ui-popupWidget-footer .mw-echo-ui-notificationBadgeButtonPopupWidget-footer-buttons .oo-ui-buttonElement:last-child {
border-left-color: var(--ooui-normal-border);
}
.mw-echo-ui-notificationItemWidget {
background-color: var(--ooui-normal);
border-color: var(--ooui-normal-border);
}
.mw-echo-ui-notificationItemWidget:hover,
.mw-echo-ui-notificationItemWidget-unread:hover {
background-color: var(--ooui-normal--hover);
}
.mw-echo-ui-notificationItemWidget:last-child {
border-bottom-color: var(--ooui-normal-border);
}
.mw-echo-ui-notificationItemWidget-unread {
background-color: var(--search-box);
}
.mw-echo-ui-crossWikiNotificationItemWidget-group,
.mw-echo-ui-bundleNotificationItemWidget-group {
background-color: var(--ooui-interface);
}
.mw-echo-ui-toggleReadCircleButtonWidget-circle {
background-color: var(--ooui-progressive);
}
.mw-echo-ui-toggleReadCircleButtonWidget:hover .mw-echo-ui-toggleReadCircleButtonWidget-circle {
background-color: var(--ooui-progressive--hover);
}
.mw-echo-ui-toggleReadCircleButtonWidget-circle-unread {
background-color: var(--ooui-normal);
border-color: var(--ooui-normal-border);
}
.mw-echo-ui-notificationItemWidget-content-message-header,
.mw-echo-ui-notificationItemWidget-content-message-body,
.mw-echo-ui-menuItemWidget > .oo-ui-buttonElement-button > .oo-ui-labelElement-label,
.mw-echo-ui-notificationItemWidget-content-actions-timestamp {
color: var(--ooui-text);
}
.mw-echo-ui-bundleNotificationItemWidget-group {
background-color: var(--body-main);
}
@keyframes unseen-fadeout-to-unread {
from {
background-color: var(--wikitable-bg-lighter);
}
to {
background-color: var(--search-box);
}
}
@keyframes unseen-fadeout-to-read {
from {
background-color: var(--wikitable-bg-lighter);
}
to {
background-color: var(--body-main);
}
}
.mwe-popups {
background: var(--body-light);
}
.mwe-popups .mwe-popups-container {
color: var(--text-color);
background: var(--body-light);
}
.mwe-popups .mwe-popups-container.flipped-x-y:before,
.mwe-popups .mwe-popups-container.flipped-y:before {
border-top: none;
}
.mwe-popups .mwe-popups-container.mwe-popups-no-image-tri:before {
border-bottom: none;
}
.mwe-popups .mwe-popups-container.flipped-x-y:after,
.mwe-popups .mwe-popups-container.flipped-y:after {
border-top-color: var(--body-light);
}
.mwe-popups .mwe-popups-container.mwe-popups-no-image-tri:after {
border-bottom-color: var(--body-light);
}
.mwe-popups .mwe-popups-settings-icon:hover,
.mwe-popups .mwe-popups-settings-icon:active {
background-color: var(--ooui-normal--hover);
}
.mwe-popups .mw-ui-icon-element:not(.disabled):hover {
background: none;
}
.mwe-popups .mwe-popups-extract {
color: var(--text-color);
}
.mwe-popups .mwe-popups-extract[dir='ltr']:after {
background-image: linear-gradient(to right, rgba(49, 62, 89, 0), var(--body-light) 50%);
}
.mwe-popups-overlay {
background-color: var(--ooui-window-background);
}
#mwe-popups-settings {
background: var(--ooui-interface);
border-color: var(--ooui-interface-border);
color: var(--text-color);
}
#mwe-popups-settings header {
border-color: var(--ooui-interface-border);
}
#mwe-popups-settings main#mwe-popups-settings-form p {
color: var(--byline-color);
}
#mwe-popups-settings main#mwe-popups-settings-form form label > span {
color: var(--ooui-text);
}
:root {
--smw-ask-options-even-bg: var(--body-mid);
--smw-ask-options-odd-bg: var(--body-light);
--smw-ask-action-btn-lblue-bg: var(--body-main);
--smw-ask-action-btn-lblue-color: #000;
--smw-ask-action-btn-lblue-border-color: var(--body-light);
--smw-ask-action-btn-dblue-bg: var(--body-light);
--smw-ask-action-btn-dblue-color: #fff;
--smw-ask-action-btn-dblue-border-color: var(--button-border);
}
.smw-ask-condition fieldset,
.smw-ask-printhead fieldset {
border-color: var(--sidebar);
}
.smw-ask-search fieldset,
.smw-ask-format fieldset,
.smw-ask-options fieldset {
border-color: var(--sidebar);
}
.strike > span:before,
.strike > span:after {
background: var(--sidebar);
}
.smw-ask-options-fields tr td {
background-color: var(--smw-ask-options-even-bg);
}
.smw-ask-options-fields tr:nth-child(odd) td {
background-color: var(--smw-ask-options-odd-bg);
}
.smw-ask-action-btn.smw-ask-action-btn-lblue,
.smw-ask-action-btn.smw-ask-action-btn-lblue:hover,
.smw-ask-action-btn.smw-ask-action-btn-lblue:visited {
background-color: var(--smw-ask-action-btn-lblue-bg);
color: var(--smw-ask-action-btn-lblue-color);
border-color: var(--smw-ask-action-btn-lblue-border-color);
}
.smw-ask-action-btn.smw-ask-action-btn-dblue,
.smw-ask-action-btn.smw-ask-action-btn-dblue:hover,
.smw-ask-action-btn.smw-ask-action-btn-dblue:visited {
background-color: var(--smw-ask-action-btn-dblue-bg);
color: var(--smw-ask-action-btn-dblue-color);
border-color: var(--smw-ask-action-btn-dblue-border-color);
}
.smw-ask-query textarea,
.smw-ask-actions textarea {
background-color: var(--ooui-interface);
border-color: var(--ooui-interface-border);
color: var(--ooui-text);
}
.smw-ask-query-format select {
background-color: var(--ooui-interface);
border: 1px solid var(--ooui-interface-border);
color: var(--ooui-text);
}
.smw-ask-toplinks {
background-color: var(--body-mid);
}
.smw-ask-toplinks span.smw-icon-info {
background: none;
padding: 0 !important;
}
.smw-ask-toplinks span.smw-icon-info::before {
content: '';
background: var(--text-color);
-webkit-mask: url("data:image/svg+xml,%3C%3Fxml version='1.0' encoding='UTF-8'%3F%3E%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 20 20'%3E%3Ctitle%3Einfo%3C/title%3E%3Cpath d='M10 0C4.477 0 0 4.477 0 10s4.477 10 10 10 10-4.477 10-10S15.523 0 10 0zM9 5h2v2H9zm0 4h2v6H9z'/%3E%3C/svg%3E") no-repeat 50% 50% / contain;
mask: url("data:image/svg+xml,%3C%3Fxml version='1.0' encoding='UTF-8'%3F%3E%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 20 20'%3E%3Ctitle%3Einfo%3C/title%3E%3Cpath d='M10 0C4.477 0 0 4.477 0 10s4.477 10 10 10 10-4.477 10-10S15.523 0 10 0zM9 5h2v2H9zm0 4h2v6H9z'/%3E%3C/svg%3E") no-repeat 50% 50% / contain;
padding: 0 0 3px 18px;
}
.smw-ask-options-row-odd {
background-color: var(--body-light);
}
.smw-ask-options-row-even {
background-color: var(--body-mid);
}
#options-toggle:not(:checked) + #options-list .options-parameter-list:after {
background-image: linear-gradient(to bottom, transparent, var(--body-mid) 90%);
}
.smw-ask-button-submit input {
background-color: var(--ooui-normal);
border-color: var(--ooui-normal-border);
color: var(--text-color);
}
.smw-ask-button-submit input:hover,
.smw-ask-button-lgrey:hover {
background-color: var(--ooui-normal--hover);
border-color: var(--ooui-normal-border);
}
input.smw-ask-action-btn.smw-ask-action-btn-dblue {
background-color: var(--ooui-normal);
border-color: var(--ooui-normal-border);
color: var(--ooui-text);
}
a.smw-ask-action-btn.smw-ask-action-btn-lblue {
background-color: var(--body-mid);
border-color: var(--body-mid);
color: var(--ooui-text);
}
a.smw-ask-action-btn.smw-ask-action-btn-lblue:visited {
background-color: var(--body-mid);
border-color: var(--body-mid);
color: var(--ooui-text);
}
a.smw-ask-action-btn.smw-ask-action-btn-lblue:hover {
background-color: var(--body-mid);
border-color: var(--body-mid);
color: var(--ooui-text);
}
a.smw-ask-action-btn-lgrey {
background-color: var(--ooui-normal);
border-color: var(--ooui-normal-border);
color: var(--ooui-text);
}
a.smw-ask-action-btn-lgrey:hover {
background-color: var(--ooui-normal--hover);
border-color: var(--ooui-normal-border);
color: var(--ooui-text);
}
.smw-callout-error {
background-color: var(--errorbox-bg);
border-color: var(--errorbox-border);
}
.smw-callout-info {
background-color: var(--body-light);
border-color: var(--body-dark);
}
.smw-callout-success {
background-color: var(--successbox-bg);
border-color: var(--successbox-border);
}
.smw-callout-warning {
background-color: var(--warningbox-bg);
border-color: var(--warningbox-bg);
}
.smw-tabs input.nav-tab:checked + label.nav-label,
.smw-tabs input.nav-tab:checked + label.nav-label:hover {
color: inherit;
}
#tab-smw-property-value:checked + label.nav-label .usage-count {
color: #fff;
background-color: var(--ooui-progressive);
}
#tab-smw-property-value:checked + label.nav-label .usage-count.moderate {
color: #fff;
background-color: #b55e0c;
border-color: #b55e0c;
}
#tab-smw-property-value:checked + label.nav-label .usage-count.high {
color: #fff;
background-color: #9f261e;
border-color: #9f261e;
}
.smw-property-page-results .header-title {
background-color: var(--ooui-interface);
border-bottom-color: var(--ooui-interface-border);
color: var(--ooui-text);
}
.smw-property-page-results .value-row:hover {
background-color: var(--ooui-normal--hover);
}
.smw-property-page-results .smw-table .header-row {
color: var(--text-color);
}
.tippy-tooltip.light-border-theme {
background-color: var(--body-light);
color: var(--text-color);
}
.tippy-tooltip.light-border-theme .tippy-arrow {
border-top-color: var(--body-light);
}
.tippy-tooltip.light-border-theme .tippy-arrow:after {
border-top-color: var(--body-light);
}
.tippy-header {
background-color: var(--body-dark);
border-bottom-color: var(--body-mid);
}
.smw-ui-input-filter {
background-color: var(--ooui-interface);
border-color: var(--ooui-interface-border);
color: var(--ooui-text);
}
.smw-ui-input-filter input {
border-left-color: var(--ooui-interface-border) !important;
color: var(--ooui-text) !important;
}
.smw-ui-pagination .page-link.link-disabled {
background-color: var(--ooui-disabled);
border-color: var(--ooui-disabled-border);
color: var(--subtle-color);
}
.smw-ui-pagination .page-link {
background-color: var(--ooui-normal);
border-color: var(--ooui-normal-border);
color: var(--link-color);
}
.smw-ui-pagination .page-link:hover {
background-color: var(--ooui-normal--hover);
border-color: var(--ooui-normal-border);
color: var(--link-color);
}
.smw-ui-pagination .page-link.link-active {
color: #fff;
background-color: var(--ooui-progressive);
border-color: var(--ooui-progressive);
}
.smw-tabs input.nav-tab:checked + label.nav-label {
border-color: var(--ooui-normal-border);
}
.smw-tabs section,
.smw-tabs .subtab-content {
border-top-color: var(--ooui-normal-border);
}
.smw-column-header {
color: var(--text-color);
}
.smw-factbox {
background: var(--body-main);
border-color: transparent;
}
.mw-body .mw-indicators #mw-indicator-smw-entity-examiner.mw-indicator .smw-indicator-vertical-bar-loader {
display: none;
}
.smwb-theme-light .smwb-title,
.smwb-theme-light .smwb-center,
.smwb-theme-light .smwb-actions,
.smwb-theme-light .smwb-prophead {
background-color: var(--body-mid);
}
.smwb-theme-light .smwb-factbox {
border-left-color: var(--body-mid);
}
.smwb-theme-light .smwb-ifactbox {
border-right-color: var(--body-mid);
}
.smwb-theme-light .smwb-propval {
background-color: var(--body-light);
}
.smwb-action-separator {
border-color: var(--wikitable-border);
}
.smwb-bottom {
border-bottom: 1px solid var(--wikitable-border);
}
.smwb-ifactbox .smwb-cell,
.smwb-factbox .smwb-cell {
border-top: 1px solid var(--wikitable-border);
}
.smwb-propvalue .smwb-prophead,
.smwb-ipropvalue .smwb-prophead,
.smwb-propvalue .smwb-propval,
.smwb-ipropvalue .smwb-propval {
font-size: 0.9em;
}
:root {
--filter-black-to-link: invert(36%) sepia(58%) saturate(433%) hue-rotate(344deg) brightness(100%) contrast(91%);
}
#bodyContent span.smwbrowse a {
color: black;
background-image: url('filepath://Smwbrowse.svg');
filter: var(--filter-black-to-link);
}
#bodyContent span.smwbrowse a:hover {
color: black;
background-image: url('filepath://Smwbrowse-hover.svg');
text-decoration: underline;
}
#bodyContent span.smwsearch a {
color: black;
filter: var(--filter-black-to-link);
background-image: url('filepath://Smwsearch.svg');
}
#bodyContent span.smwsearch a:hover {
color: black;
background-image: url('filepath://Smwsearch-hover.svg');
text-decoration: underline;
}
:root {
--tabber-tab-bg: var(--body-light);
--tabber-tab-border-color: var(--body-border);
--tabber-active-tab-bg: var(--body-light);
--tabber-active-tab-color: var(--text-color);
--tabber-active-tab-hover-bg: var(--body-light);
--tabber-active-tab-hover-border-color: var(--body-border);
--tabber-active-tab-hover-color: var(--text-color);
--tabber-active-tab-border-hider-color: var(--body-light);
--tabber-inactive-tab-bg: var(--body-background-color);
--tabber-inactive-tab-border-color: var(--body-border);
--tabber-inactive-tab-color: var(--text-color);
--tabber-inactive-tab-hover-bg: var(--body-light);
--tabber-inactive-tab-hover-border-color: var(--body-border);
}
.tabber {
margin: 1em 0;
}
.tabber .tabbertab {
background-color: var(--tabber-tab-bg);
border: 1px solid var(--tabber-tab-border-color);
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
padding: 1em 1.5em;
}
ul.tabbernav {
border: none;
margin-left: 2em;
margin-bottom: 0;
margin-right: 2em;
padding: 0;
font-family: inherit;
}
ul.tabbernav li.tabberactive > a {
background-color: var(--tabber-active-tab-bg);
color: var(--tabber-active-tab-color);
border-bottom: none;
position: relative;
}
ul.tabbernav li.tabberactive > a:hover {
color: var(--tabber-active-tab-hover-color);
background-color: var(--tabber-active-tab-hover-bg);
border-color: var(--tabber-active-tab-hover-border-color);
border-bottom: none;
}
ul.tabbernav li.tabberactive > a::after {
content: '';
position: absolute;
left: 0;
right: 0;
bottom: -1px;
border-bottom: 2px solid var(--tabber-active-tab-border-hider-color);
}
ul.tabbernav li a {
background-color: var(--tabber-inactive-tab-bg);
border-bottom: transparent;
border-color: var(--tabber-inactive-tab-border-color);
color: var(--tabber-inactive-tab-color);
display: inline-block;
font-size: 110%;
padding: 0.5em 1em;
}
ul.tabbernav li a:hover {
background-color: var(--tabber-inactive-tab-hover-bg);
border-color: var(--tabber-inactive-tab-hover-border-color);
}
ul.tabbernav li a:link,
ul.tabbernav li a:visited {
color: var(--tabber-inactive-tab-color);
}
:root {
--ooui-text: var(--text-color);
--ooui-interface: var(--body-light);
--ooui-interface-border: var(--body-border);
--ooui-window-background: rgba(255, 255, 255, 0.5);
--ooui-normal: #cdb3a6;
--ooui-normal--hover: #d8c4ba;
--ooui-normal-border: #d1b9ad;
--ooui-progressive: #936243;
--ooui-progressive--hover: #b27a57;
--ooui-accent: var(--link-color);
--ooui-input: #fff;
--ooui-input-border: #d1b9ad;
--ooui-input-border--hover: #ae846f;
--ooui-disabled: #c9c3bf;
--ooui-disabled-border: #dfd6d2;
--ooui-disabled-text: var(--subtle-color);
--ooui-pending-background-image: repeating-linear-gradient(-45deg, var(--search-box), var(--search-box) 20px, var(--body-main) 20px, var(--body-main) 30px);
}
.oo-ui-widget {
color: var(--ooui-text);
}
.oo-ui-checkboxInputWidget [type='checkbox'] + span,
.oo-ui-radioInputWidget [type='radio'] + span {
background-color: var(--ooui-input);
border-color: var(--ooui-input-border);
}
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:checked + span,
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:indeterminate + span {
background-color: var(--ooui-progressive);
border-color: var(--ooui-progressive);
}
.oo-ui-radioInputWidget.oo-ui-widget-enabled [type='radio']:checked + span {
border-color: var(--ooui-progressive);
}
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:checked:hover + span,
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:indeterminate:hover + span {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
}
.oo-ui-radioInputWidget.oo-ui-widget-enabled [type='radio']:checked:hover + span {
border-color: var(--ooui-progressive--hover);
}
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:hover + span,
.oo-ui-radioInputWidget.oo-ui-widget-enabled [type='radio']:hover + span {
border-color: var(--ooui-accent);
}
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:focus + span {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:active + span,
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:checked:active + span,
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:indeterminate:active + span {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
box-shadow: inset 0 0 0 1px var(--ooui-progressive--hover);
}
.oo-ui-radioInputWidget.oo-ui-widget-enabled [type='radio']:active + span {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
}
.oo-ui-radioInputWidget.oo-ui-widget-enabled [type='radio']:checked:active + span {
border-color: var(--ooui-progressive--hover);
box-shadow: inset 0 0 0 1px var(--ooui-progressive--hover);
}
.oo-ui-radioInputWidget.oo-ui-widget-enabled [type='radio']:checked:active + span:before {
border-color: var(--ooui-progressive--hover);
}
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:checked:focus + span,
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:indeterminate:focus + span {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent), inset 0 0 0 2px #fff;
}
.oo-ui-checkboxInputWidget [type='checkbox']:disabled + span,
.oo-ui-radioInputWidget [type='radio']:disabled + span {
background-color: var(--ooui-disabled);
border-color: var(--ooui-disabled);
}
.oo-ui-dropdownWidget-handle {
border-color: var(--ooui-normal-border);
}
.oo-ui-dropdownWidget.oo-ui-widget-enabled .oo-ui-dropdownWidget-handle {
background-color: var(--ooui-normal);
color: var(--ooui-text);
}
.oo-ui-dropdownWidget.oo-ui-widget-enabled .oo-ui-dropdownWidget-handle:hover {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
}
.oo-ui-dropdownWidget.oo-ui-widget-enabled .oo-ui-dropdownWidget-handle:active {
color: var(--ooui-text);
}
.oo-ui-dropdownWidget.oo-ui-widget-enabled .oo-ui-dropdownWidget-handle:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-dropdownWidget.oo-ui-widget-enabled.oo-ui-dropdownWidget-open .oo-ui-dropdownWidget-handle {
background-color: var(--ooui-normal--hover);
}
.oo-ui-dropdownWidget.oo-ui-widget-disabled .oo-ui-dropdownWidget-handle {
color: var(--ooui-disabled-text);
text-shadow: none;
border-color: var(--ooui-disabled-border);
background-color: var(--ooui-disabled);
}
.oo-ui-dropdownInputWidget select {
border-color: var(--ooui-normal-border);
}
.oo-ui-dropdownInputWidget option {
background-color: var(--ooui-interface);
}
.oo-ui-dropdownInputWidget.oo-ui-widget-enabled {
background-color: var(--ooui-normal);
}
.oo-ui-dropdownInputWidget.oo-ui-widget-enabled:hover {
background-color: var(--ooui-normal--hover);
}
.oo-ui-dropdownInputWidget.oo-ui-widget-enabled select {
color: var(--ooui-text);
}
.oo-ui-dropdownInputWidget.oo-ui-widget-enabled select:hover,
.oo-ui-dropdownInputWidget.oo-ui-widget-enabled select:active {
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
}
.oo-ui-dropdownInputWidget.oo-ui-widget-enabled select:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-labelWidget.oo-ui-inline-help {
color: var(--byline-color);
}
.oo-ui-menuSelectWidget {
background-color: var(--ooui-interface);
border-color: var(--ooui-interface-border);
}
.oo-ui-menuSelectWidget-frameless {
box-shadow: inset 0 -1px 0 0 var(--ooui-normal-border);
}
.oo-ui-menuSectionOptionWidget {
color: var(--byline-color);
}
.oo-ui-menuOptionWidget.oo-ui-optionWidget-highlighted,
.oo-ui-menuOptionWidget.oo-ui-optionWidget-selected {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
}
.oo-ui-menuOptionWidget.oo-ui-optionWidget-selected.oo-ui-menuOptionWidget.oo-ui-optionWidget-highlighted,
.oo-ui-menuOptionWidget.oo-ui-optionWidget-pressed.oo-ui-menuOptionWidget.oo-ui-optionWidget-highlighted {
color: var(--ooui-accent);
}
.oo-ui-menuOptionWidget.oo-ui-widget-enabled.oo-ui-optionWidget {
color: var(--ooui-text);
}
.oo-ui-messageDialog-title {
color: inherit;
}
.oo-ui-messageWidget.oo-ui-messageWidget-block.oo-ui-flaggedElement-error {
background-color: var(--errorbox-bg);
border-color: var(--errorbox-border);
}
.oo-ui-messageWidget.oo-ui-messageWidget-block.oo-ui-flaggedElement-warning {
background-color: var(--warningbox-bg);
border-color: var(--warningbox-border);
}
.oo-ui-messageWidget.oo-ui-messageWidget-block.oo-ui-flaggedElement-success {
background-color: var(--successbox-bg);
border-color: var(--successbox-border);
}
.oo-ui-messageWidget.oo-ui-messageWidget-block.oo-ui-flaggedElement-notice {
background-color: var(--messagebox-info-background);
border-color: var(--messagebox-info-border);
}
.oo-ui-messageWidget.oo-ui-flaggedElement-error:not(.oo-ui-messageWidget-block),
.oo-ui-messageWidget.oo-ui-flaggedElement-success:not(.oo-ui-messageWidget-block) {
color: var(--ooui-text);
}
.oo-ui-optionWidget.oo-ui-widget-disabled {
color: var(--ooui-disabled-text);
}
.oo-ui-outlineControlsWidget {
background-color: var(--ooui-normal);
}
.oo-ui-outlineOptionWidget.oo-ui-optionWidget-highlighted {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
}
.oo-ui-popupWidget-popup {
background-color: var(--ooui-interface);
border-color: var(--ooui-interface-border);
}
.oo-ui-popupWidget-anchored-top .oo-ui-popupWidget-anchor:after {
border-bottom-color: var(--ooui-interface);
}
.oo-ui-popupWidget-anchored-top .oo-ui-popupWidget-anchor:before {
border-bottom-color: var(--ooui-interface-border);
}
.oo-ui-popupWidget-anchored-bottom .oo-ui-popupWidget-anchor:after {
border-top-color: var(--ooui-interface);
}
.oo-ui-popupWidget-anchored-bottom .oo-ui-popupWidget-anchor:before {
border-top-color: var(--ooui-interface-border);
}
.oo-ui-popupWidget-anchored-start .oo-ui-popupWidget-anchor:after {
border-right-color: var(--ooui-interface);
}
.oo-ui-popupWidget-anchored-start .oo-ui-popupWidget-anchor:before {
border-right-color: var(--ooui-interface-border);
}
.oo-ui-popupWidget-anchored-end .oo-ui-popupWidget-anchor:after {
border-left-color: var(--ooui-interface);
}
.oo-ui-popupWidget-anchored-end .oo-ui-popupWidget-anchor:before {
border-left-color: var(--ooui-interface-border);
}
.oo-ui-searchWidget-query {
border-bottom-color: var(--ooui-interface-border);
}
.oo-ui-selectFileWidget-dropTarget {
background-color: var(--ooui-interface);
border-color: var(--ooui-interface-border);
}
.oo-ui-selectFileWidget.oo-ui-widget-enabled.oo-ui-selectFileWidget-dropTarget {
background-color: var(--ooui-interface);
}
.oo-ui-selectFileWidget.oo-ui-widget-enabled.oo-ui-selectFileWidget-dropTarget:hover {
border-color: var(--ooui-input-border--hover);
}
.oo-ui-tabOptionWidget {
color: var(--ooui-text);
}
.oo-ui-tabSelectWidget-framed .oo-ui-tabOptionWidget.oo-ui-optionWidget-selected {
background-color: var(--body-dark);
color: var(--ooui-text);
}
.oo-ui-tabSelectWidget-framed .oo-ui-tabOptionWidget.oo-ui-optionWidget-selected .oo-ui-labelElement-label {
border-bottom-color: var(--body-border);
}
.oo-ui-tabSelectWidget-framed .oo-ui-tabOptionWidget.oo-ui-widget-enabled:hover,
.oo-ui-tabSelectWidget-framed .oo-ui-tabOptionWidget.oo-ui-widget-enabled:active {
background-color: var(--body-light);
color: var(--ooui-text);
}
.oo-ui-tabSelectWidget-framed .oo-ui-tabOptionWidget.oo-ui-widget-enabled.oo-ui-optionWidget-selected:hover {
background-color: var(--body-dark);
}
.oo-ui-tabSelectWidget-frameless .oo-ui-tabOptionWidget.oo-ui-optionWidget-selected {
color: var(--ooui-progressive);
box-shadow: inset 0 -2px 0 0 var(--ooui-progressive);
}
.oo-ui-tabSelectWidget-frameless .oo-ui-tabOptionWidget.oo-ui-optionWidget-selected:hover,
.oo-ui-tabSelectWidget-frameless .oo-ui-tabOptionWidget.oo-ui-optionWidget-selected:focus {
color: var(--ooui-progressive--hover);
box-shadow: inset 0 -2px 0 0 var(--ooui-progressive--hover);
}
.oo-ui-tabSelectWidget-framed {
background: none;
border-bottom: 1px solid var(--ooui-interface-border);
}
.oo-ui-tabSelectWidget-frameless {
box-shadow: inset 0 -1px 0 0 var(--ooui-interface-border);
}
.oo-ui-tabSelectWidget-mobile {
}
.oo-ui-tabSelectWidget-mobile.oo-ui-tabSelectWidget-framed:after {
background: var(--mobile-navbox-linear-gradient);
}
.oo-ui-tabSelectWidget-mobile.oo-ui-tabSelectWidget-frameless:after {
background: var(--mobile-navbox-linear-gradient);
}
.oo-ui-tagItemWidget {
border-color: var(--ooui-normal-border);
}
.oo-ui-tagItemWidget.oo-ui-widget-enabled {
color: var(--ooui-text);
}
.oo-ui-tagItemWidget.oo-ui-widget-enabled:hover {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
}
.oo-ui-tagItemWidget.oo-ui-widget-enabled:not( .oo-ui-tagItemWidget-fixed ) {
background-color: var(--ooui-normal);
}
.oo-ui-tagItemWidget.oo-ui-widget-enabled .oo-ui-buttonElement-button:hover {
background-color: var(--ooui-normal--hover);
}
.oo-ui-tagMultiselectWidget.oo-ui-widget-enabled {
background-color: var(--ooui-interface);
}
.oo-ui-tagMultiselectWidget.oo-ui-widget-enabled.oo-ui-tagMultiselectWidget-outlined {
background-color: var(--ooui-normal);
}
.oo-ui-tagMultiselectWidget.oo-ui-widget-enabled.oo-ui-tagMultiselectWidget-outlined .oo-ui-tagItemWidget.oo-ui-widget-enabled {
background-color: var(--ooui-interface);
}
.oo-ui-textInputWidget .oo-ui-inputWidget-input {
background-color: var(--ooui-input);
color: var(--ooui-text);
border-color: var(--ooui-input-border);
}
.oo-ui-textInputWidget.oo-ui-widget-enabled .oo-ui-inputWidget-input::placeholder {
color: var(--subtle-color);
}
.oo-ui-textInputWidget.oo-ui-widget-enabled .oo-ui-inputWidget-input:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-textInputWidget.oo-ui-widget-enabled .oo-ui-inputWidget-input[readonly]:not(.oo-ui-pendingElement-pending) {
background-color: var(--ooui-disabled);
color: var(--ooui-disabled-text);
}
.oo-ui-textInputWidget.oo-ui-widget-enabled:hover .oo-ui-inputWidget-input {
border-color: var(--ooui-input-border--hover);
}
.oo-ui-textInputWidget.oo-ui-widget-enabled:hover .oo-ui-inputWidget-input:focus {
border-color: var(--ooui-accent);
}
@media screen and (min-width: 0) {
.oo-ui-textInputWidget.oo-ui-widget-enabled textarea.oo-ui-inputWidget-input:focus {
outline: 1px solid var(--ooui-accent);
}
}
.oo-ui-textInputWidget.oo-ui-widget-disabled .oo-ui-inputWidget-input {
background-color: var(--ooui-disabled);
color: var(--ooui-disabled-text);
text-shadow: none;
border-color: var(--ooui-disabled-border);
}
.oo-ui-toggleSwitchWidget {
background-color: var(--ooui-input);
border-color: var(--ooui-input-border);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled .oo-ui-toggleSwitchWidget-grip {
background-color: var(--ooui-input);
border-color: var(--ooui-input-border);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:hover {
background-color: var(--ooui-input);
border-color: var(--ooui-accent);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:hover .oo-ui-toggleSwitchWidget-grip {
background-color: var(--ooui-input);
border-color: var(--ooui-accent);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:active,
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:active:hover,
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:active:focus {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
box-shadow: inset 0 0 0 1px var(--ooui-progressive--hover);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:active .oo-ui-toggleSwitchWidget-grip,
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:active:hover .oo-ui-toggleSwitchWidget-grip,
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:active:focus .oo-ui-toggleSwitchWidget-grip {
background-color: var(--ooui-input);
border-color: var(--ooui-input);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:focus .oo-ui-toggleSwitchWidget-grip {
border-color: var(--ooui-accent);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled.oo-ui-toggleWidget-on {
background-color: var(--ooui-progressive);
border-color: var(--ooui-progressive);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled.oo-ui-toggleWidget-on .oo-ui-toggleSwitchWidget-grip {
background-color: var(--ooui-input);
border-color: var(--ooui-input);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled.oo-ui-toggleWidget-on:hover {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled.oo-ui-toggleWidget-on:active,
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled.oo-ui-toggleWidget-on:active:hover {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled.oo-ui-toggleWidget-on:focus {
border-color: var(--ooui-progressive);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled.oo-ui-toggleWidget-on:focus::before {
border-color: #fff;
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-disabled {
background-color: var(--ooui-disabled);
border-color: var(--ooui-disabled);
}
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled > .oo-ui-buttonElement-button {
color: var(--ooui-text);
}
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled > .oo-ui-buttonElement-button:hover {
color: var(--ooui-text);
}
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled > .oo-ui-buttonElement-button:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled.oo-ui-buttonElement-pressed > input.oo-ui-buttonElement-button,
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled > .oo-ui-buttonElement-button:active {
color: var(--ooui-text);
}
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button,
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button:hover {
color: var(--ooui-text);
}
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button:active,
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive.oo-ui-buttonElement-pressed > .oo-ui-buttonElement-button {
color: var(--ooui-text);
border-color: var(--ooui-text);
}
.oo-ui-buttonElement-frameless.oo-ui-widget-disabled > .oo-ui-buttonElement-button {
color: var(--ooui-disabled-text);
}
.oo-ui-buttonElement-framed.oo-ui-widget-disabled > .oo-ui-buttonElement-button {
background-color: var(--ooui-disabled);
border-color: var(--ooui-disabled-border);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled > .oo-ui-buttonElement-button {
background-color: var(--ooui-normal);
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled > .oo-ui-buttonElement-button:hover {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled > .oo-ui-buttonElement-button:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-buttonElement-active > .oo-ui-buttonElement-button {
background-color: var(--ooui-progressive--hover);
color: #fff;
border-color: var(--ooui-progressive--hover);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-buttonElement-active > .oo-ui-buttonElement-button:focus {
border-color: var(--ooui-progressive--hover);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled > .oo-ui-buttonElement-button:active,
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-buttonElement-pressed > .oo-ui-buttonElement-button {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive {
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button {
color: var(--ooui-text);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button:hover {
background-color: var(--ooui-normal--hover);
border-color: var(--ooui-progressive--hover);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-destructive > .oo-ui-buttonElement-button {
color: var(--ooui-text);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-destructive > .oo-ui-buttonElement-button:hover {
background-color: var(--ooui-normal--hover);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button {
background-color: var(--ooui-progressive);
border-color: var(--ooui-progressive);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button:hover {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent), inset 0 0 0 2px #fff;
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button:active,
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive.oo-ui-buttonElement-pressed > .oo-ui-buttonElement-button,
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive.oo-ui-buttonElement-active > .oo-ui-buttonElement-button,
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive.oo-ui-popupToolGroup-active > .oo-ui-buttonElement-button {
color: #fff;
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
}
.oo-ui-pendingElement-pending {
background-image: var(--ooui-pending-background-image);
background-size: 200%;
animation: oo-ui-pendingElement-stripes 6s linear infinite;
}
@keyframes oo-ui-pendingElement-stripes {
100% {
background-position: 100%;
}
}
.oo-ui-messageDialog-content > .oo-ui-window-foot {
outline-color: var(--ooui-interface-border);
}
.oo-ui-messageDialog-message {
color: var(--ooui-text);
}
.oo-ui-messageDialog-actions-horizontal .oo-ui-actionWidget {
border-right-color: var(--ooui-interface-border);
}
.oo-ui-messageDialog-actions-vertical .oo-ui-actionWidget {
border-bottom-color: var(--ooui-interface-border);
}
.oo-ui-processDialog-content .oo-ui-window-head,
.oo-ui-processDialog-content .oo-ui-window-foot {
outline-color: var(--ooui-interface-border);
}
.oo-ui-processDialog .oo-ui-actionWidget > .oo-ui-buttonElement-button {
border-top-color: transparent;
border-bottom-color: transparent;
}
.oo-ui-processDialog .oo-ui-actionWidget > .oo-ui-buttonElement-button:hover,
.oo-ui-processDialog .oo-ui-actionWidget > .oo-ui-buttonElement-button:active {
border-top-color: transparent;
border-bottom-color: transparent;
}
.oo-ui-processDialog .oo-ui-actionWidget:not( .oo-ui-flaggedElement-progressive ):not( .oo-ui-flaggedElement-destructive ) > .oo-ui-buttonElement-button:hover,
.oo-ui-processDialog .oo-ui-actionWidget:not( .oo-ui-flaggedElement-progressive ):not( .oo-ui-flaggedElement-destructive ) > .oo-ui-buttonElement-button:active {
border-right-color: var(--ooui-interface-border);
border-left-color: transparent;
}
.oo-ui-processDialog .oo-ui-actionWidget:not( .oo-ui-flaggedElement-progressive ):not( .oo-ui-flaggedElement-destructive ) > .oo-ui-buttonElement-button:focus {
border-color: var(--ooui-accent);
}
.oo-ui-processDialog-actions-safe .oo-ui-actionWidget > .oo-ui-buttonElement-button,
.oo-ui-processDialog-actions-other .oo-ui-actionWidget > .oo-ui-buttonElement-button {
border-right-color: var(--ooui-normal-border);
border-left-color: transparent;
}
.oo-ui-processDialog-actions-safe .oo-ui-widget-enabled.oo-ui-iconElement:not( .oo-ui-labelElement ) > .oo-ui-buttonElement-button:hover {
background-color: var(--ooui-normal--hover);
border-right-color: var(--ooui-interface-border);
}
.oo-ui-windowManager-modal > .oo-ui-dialog {
background-color: var(--ooui-window-background);
}
.oo-ui-windowManager-modal > .oo-ui-dialog > .oo-ui-window-frame {
background-color: var(--ooui-interface);
}
.oo-ui-windowManager-modal.oo-ui-windowManager-floating > .oo-ui-dialog > .oo-ui-window-frame {
border-color: var(--ooui-interface-border);
}
.oo-ui-window {
color: var(--ooui-text);
}
.oo-ui-toolbar-bar {
background-color: var(--ooui-interface);
color: var(--ooui-text);
}
.oo-ui-toolbar-position-top > .oo-ui-toolbar-bar {
border-bottom-color: var(--body-mid);
}
.oo-ui-toolbar-bar .oo-ui-bookletLayout > .oo-ui-menuLayout-menu {
border-right-color: var(--body-mid);
}
.oo-ui-tool.oo-ui-widget-enabled > .oo-ui-tool-link:hover {
background-color: var(--ooui-normal--hover);
}
.oo-ui-tool.oo-ui-widget-enabled > .oo-ui-tool-link:focus {
outline: 1px solid var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-tool.oo-ui-widget-enabled > .oo-ui-tool-link:active,
.oo-ui-tool.oo-ui-widget-enabled.oo-ui-tool-active > .oo-ui-tool-link,
.oo-ui-tool.oo-ui-widget-enabled.oo-ui-popupToolGroup-active > .oo-ui-tool-link {
background-color: var(--ooui-normal--hover);
color: var(--ooui-accent);
box-shadow: none;
}
.oo-ui-tool.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive > .oo-ui-tool-link {
background-color: var(--ooui-progressive);
}
.oo-ui-tool.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive > .oo-ui-tool-link:hover {
background-color: var(--ooui-progressive--hover);
}
.oo-ui-tool.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive > .oo-ui-tool-link:focus {
box-shadow: inset 0 0 0 1px var(--ooui-accent), inset 0 0 0 2px #fff;
}
.oo-ui-tool.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive > .oo-ui-tool-link:active,
.oo-ui-tool.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive.oo-ui-tool-active > .oo-ui-tool-link {
background-color: var(--ooui-progressive--hover);
}
.oo-ui-listToolGroup-tools .oo-ui-tool.oo-ui-widget-enabled {
background-color: var(--ooui-normal);
}
.oo-ui-listToolGroup-tools .oo-ui-tool.oo-ui-widget-enabled:hover {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
}
.oo-ui-listToolGroup-tools .oo-ui-tool-active.oo-ui-widget-enabled .oo-ui-tool-link .oo-ui-tool-title {
color: var(--ooui-progressive);
}
.oo-ui-menuToolGroup {
border-left-color: var(--body-mid);
border-right-color: var(--body-mid);
}
.oo-ui-popupToolGroup-tools {
background-color: var(--ooui-interface);
border-color: var(--body-mid);
}
.oo-ui-popupToolGroup.oo-ui-widget-enabled > .oo-ui-popupToolGroup-handle:hover {
background-color: var(--ooui-normal--hover);
}
.oo-ui-popupToolGroup.oo-ui-widget-enabled > .oo-ui-popupToolGroup-handle:focus {
outline: 1px solid var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-toolbar-actions .oo-ui-popupToolGroup.oo-ui-widget-enabled > .oo-ui-popupToolGroup-handle:hover {
border-right-color: var(--ooui-normal--hover);
}
.oo-ui-popupToolGroup-tools .oo-ui-tool.oo-ui-widget-enabled .oo-ui-tool-link:focus {
box-shadow: inset 0 0 0 2px var(--ooui-accent);
}
.oo-ui-popupToolGroup-tools .oo-ui-tool-active.oo-ui-widget-enabled .oo-ui-tool-link .oo-ui-tool-title {
color: var(--ooui-progressive);
}
.oo-ui-popupToolGroup.oo-ui-popupToolGroup-active > .oo-ui-popupToolGroup-handle {
background-color: var(--ooui-normal);
color: var(--ooui-accent);
}
.oo-ui-popupToolGroup.oo-ui-popupToolGroup-active > .oo-ui-popupToolGroup-handle:hover {
background-color: var(--ooui-normal--hover);
color: var(--ooui-accent);
}
.oo-ui-bookletLayout-outlinePanel > .oo-ui-outlineControlsWidget {
border-top-color: var(--ooui-interface-border);
}
.oo-ui-bookletLayout > .oo-ui-menuLayout-menu {
border-right-color: var(--ooui-interface-border);
}
.oo-ui-fieldLayout-disabled > .oo-ui-fieldLayout-body > .oo-ui-fieldLayout-header > .oo-ui-labelElement-label {
color: var(--ooui-disabled-text);
}
.oo-ui-panelLayout-framed {
border-color: var(--sidebar);
}
.oo-ui-icon-settings {
background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' width='20' height='20' viewBox='0 0 20 20'%3E%3Ctitle%3Esettings%3C/title%3E%3Cg transform='translate(10 10)'%3E%3Cpath id='a' d='M1.5-10h-3l-1 6.5h5m0 7h-5l1 6.5h3'/%3E%3Cuse xlink:href='%23a' transform='rotate(45)'/%3E%3Cuse xlink:href='%23a' transform='rotate(90)'/%3E%3Cuse xlink:href='%23a' transform='rotate(135)'/%3E%3C/g%3E%3Cpath d='M10 2.5a7.5 7.5 0 0 0 0 15 7.5 7.5 0 0 0 0-15v4a3.5 3.5 0 0 1 0 7 3.5 3.5 0 0 1 0-7'/%3E%3C/svg%3E");
}
.oo-ui-icon-clear {
background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 20 20'%3E%3Ctitle%3Eclear%3C/title%3E%3Cpath d='M10 0a10 10 0 1 0 10 10A10 10 0 0 0 10 0zm5.66 14.24-1.41 1.41L10 11.41l-4.24 4.25-1.42-1.42L8.59 10 4.34 5.76l1.42-1.42L10 8.59l4.24-4.24 1.41 1.41L11.41 10z'/%3E%3C/svg%3E");
}
.mw-widget-dateInputWidget-handle {
background-color: var(--ooui-input);
color: var(--ooui-text);
border-color: var(--ooui-input-border);
}
.mw-widget-dateInputWidget-calendar {
background-color: var(--ooui-interface);
}
.mw-widget-dateInputWidget.oo-ui-widget-enabled .mw-widget-dateInputWidget-handle:hover {
border-color: var(--ooui-input-border--hover);
}
.mw-widget-calendarWidget {
border-color: var(--ooui-interface-border);
}
.mw-widget-calendarWidget:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.mw-widget-calendarWidget-day,
.mw-widget-calendarWidget-day-heading {
color: var(--ooui-text);
}
.mw-widget-calendarWidget-day-additional {
color: var(--ooui-text);
opacity: 0.67;
}
.mw-widget-calendarWidget-day-today {
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.mw-widget-calendarWidget-item:hover {
background-color: var(--ooui-progressive);
}
.mw-widget-calendarWidget-item-selected {
background-color: var(--ooui-progressive--hover);
}
.mw-widgets-datetime-calendarWidget {
background-color: var(--ooui-interface);
border-color: var(--ooui-interface-border);
}
.mw-widgets-datetime-calendarWidget:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent), 0 2px 2px 0 rgba(0, 0, 0, 0.25);
}
.mw-widgets-datetime-calendarWidget-grid .mw-widgets-datetime-calendarWidget-cell.mw-widgets-datetime-calendarWidget-extra .oo-ui-buttonElement-button .oo-ui-labelElement-label {
color: var(--subtle-color);
}
.mw-widgets-datetime-calendarWidget-grid .mw-widgets-datetime-calendarWidget-cell.mw-widgets-datetime-calendarWidget-selected .oo-ui-buttonElement-button {
background-color: var(--ooui-progressive--hover);
}
.mw-widgets-datetime-dateTimeInputWidget-handle {
background-color: var(--ooui-input);
color: var(--ooui-text);
border-color: var(--ooui-input-border);
}
.mw-widgets-datetime-dateTimeInputWidget.oo-ui-widget-enabled.mw-widgets-datetime-dateTimeInputWidget-handle:hover {
border-color: var(--ooui-input-border--hover);
}
.mw-widgets-datetime-dateTimeInputWidget.oo-ui-widget-enabled:hover input,
.mw-widgets-datetime-dateTimeInputWidget.oo-ui-widget-enabled:hover textarea {
border-color: var(--ooui-input-border--hover);
}
.mw-widgets-datetime-dateTimeInputWidget.oo-ui-widget-enabled .mw-widgets-datetime-dateTimeInputWidget-editField:hover {
background-color: var(--ooui-normal);
}
.ve-activated .ve-init-mw-desktopArticleTarget-originalContent #catlinks:hover {
background: var(--ooui-normal--hover);
}
.ve-ui-overlay {
font-family: inherit;
}
.oo-ui-toolbar-position-top .ve-ui-toolbarDialog-position-above {
border-top-color: var(--body-mid);
}
.ve-ce-branchNode-blockSlug,
.ve-ce-branchNode-newSlug {
outline-color: var(--body-border);
background-color: var(--ooui-interface);
}
.ve-ui-specialCharacterPage h3 {
color: var(--byline-color);
}
.ve-ui-specialCharacterPage-character {
border-color: var(--body-mid);
}
.ve-ui-specialCharacterPage-character:hover {
border-color: var(--body-dark);
}
.ve-ce-linkAnnotation.ve-ce-annotation-active {
box-shadow: 0 0 0 1px var(--body-mid);
background: none;
}
.ve-ui-desktopContext .ve-ui-linkContextItem .ve-ui-linkContextItem-label {
border-color: var(--body-border);
}
.ve-ui-mwHelpPopupTool-version-label,
.ve-ui-mwHelpPopupTool-version-link,
.ve-ui-mwHelpPopupTool-version-date {
color: var(--byline-color);
}
.ve-ce-tableCellableNode {
border-color: var(--body-mid);
}
.ve-ce-mwReferencesListNode-muted {
color: var(--byline-color);
}
.ve-ui-mwTemplatePage-description,
.ve-ui-mwParameterPage-label,
.ve-ui-mwParameterPage-description-required,
.ve-ui-mwParameterPage-description-deprecated {
color: var(--byline-color);
}
.mw-widget-titleWidget-menu .mw-widget-titleOptionWidget-description {
color: var(--byline-color);
}
.ve-ui-mwGalleryDialog-menuLayout > .oo-ui-menuLayout-menu,
.ve-ui-mwGalleryDialog-innerMenuLayout > .oo-ui-menuLayout-menu,
.ve-ui-mwGalleryDialog .ve-ui-mwGalleryDialog-image-container,
.ve-ui-targetWidget {
border-color: var(--body-border);
}
.ve-ui-targetWidget:not(.oo-ui-pendingElement-pending) {
background-color: var(--body-main);
}
.ve-ui-mwSaveDialog {
color: var(--ooui-text);
}
.ve-ui-mwSaveDialog-options {
background-color: var(--ooui-interface);
border-color: var(--body-border);
}
.ve-ui-mwSaveDialog-summary {
background-color: var(--ooui-input);
}
.ve-ui-mwSaveDialog-editSummary-count {
border-color: var(--body-border);
}
.ve-ui-mwSaveDialog-license {
color: var(--byline-color);
}
.ve-ui-mwReferenceContextItem-muted {
color: var(--byline-color);
}
.ve-ui-mwNoticesPopupTool-items > div:not(:first-child),
.ve-ui-mwHelpPopupTool-item:not(:first-child) {
border-color: var(--body-border);
}
.ve-ui-mwTransclusionOutlineControlsWidget {
background-color: var(--ooui-interface);
border-top-color: var(--body-border);
}
.ve-ui-mwTransclusionOutlineTemplateWidget-sticky {
background-color: var(--ooui-interface);
}
.ve-ui-mwTransclusionOutlineTemplateWidget .ve-ui-mwTransclusionOutlineParameterWidget.oo-ui-optionWidget-highlighted {
color: var(--ooui-text);
}
.ve-ui-mwTransclusionOutlineTemplateWidget-no-template-parameters {
color: var(--subtle-color);
}
.ve-ui-mwParameterPage-undocumentedLabel {
color: var(--subtle-color);
}
.ve-ui-mwTwoPaneTransclusionDialogLayout > .oo-ui-menuLayout-menu {
border-right: var(--body-border);
}
.ve-ui-mwParameterPage-doc-required,
.ve-ui-mwParameterPage-doc-deprecated,
.ve-ui-mwParameterPage-inlineDescription .ve-ui-mwParameterPage-doc-example {
color: var(--byline-color);
}
.ve-ui-expandableContent-toggle {
background-color: var(--ooui-interface);
}
.ve-ui-expandableContent-fade {
background: linear-gradient(to right, rgba(255, 255, 255, 0) 0, var(--ooui-interface) 90%);
}
.ve-ui-commandHelpDialog-shortcut > kbd,
.ve-ui-commandHelpDialog-sequence > kbd {
background-color: var(--keypress-background);
color: var(--keypress-color);
border-color: var(--keypress-border);
box-shadow: none;
text-shadow: none;
}
.ve-init-mw-desktopArticleTarget-toolbarPlaceholder-floating .ve-init-mw-desktopArticleTarget-toolbarPlaceholder-bar {
background: var(--ooui-interface);
}
.ve-init-mw-desktopArticleTarget-toolbarPlaceholder-bar {
border-bottom-color: var(--body-mid);
}
figure[typeof~='mw:File/Thumb'],
figure[typeof~='mw:File/Frame'],
figure[typeof~='mw:Image/Thumb'],
figure[typeof~='mw:Video/Thumb'],
figure[typeof~='mw:Image/Frame'],
figure[typeof~='mw:Video/Frame'] {
border: none;
background-color: var(--thumb-bg);
}
figure[typeof~='mw:File/Thumb'] > a:first-child > *:first-child:not( .mw-broken-media ),
figure[typeof~='mw:File/Frame'] > a:first-child > *:first-child:not( .mw-broken-media ),
figure[typeof~='mw:Image/Thumb'] > a:first-child > *:first-child:not( .mw-broken-media ),
figure[typeof~='mw:Video/Thumb'] > a:first-child > *:first-child:not( .mw-broken-media ),
figure[typeof~='mw:Image/Frame'] > a:first-child > *:first-child:not( .mw-broken-media ),
figure[typeof~='mw:Video/Frame'] > a:first-child > *:first-child:not( .mw-broken-media ) {
border: none;
background: var(--thumb-bg);
}
figure[typeof~='mw:File/Thumb'] > figcaption,
figure[typeof~='mw:File/Frame'] > figcaption,
figure[typeof~='mw:Image/Thumb'] > figcaption,
figure[typeof~='mw:Video/Thumb'] > figcaption,
figure[typeof~='mw:Image/Frame'] > figcaption,
figure[typeof~='mw:Video/Frame'] > figcaption {
border: none;
background-color: var(--thumb-caption-bg);
padding: 4px 6px;
}
:root {
--keypress-background: #eee;
--keypress-border: #ccc;
--keypress-color: #333;
}
.toc .toctitle > * {
color: #fff;
}
.navbox .navbox-title {
color: #fff;
}
.navbox .navbox-list:not(last-child) {
border-bottom: none;
}
.archivelist {
background-color: var(--body-light);
border: solid 1px var(--body-border);
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
float: right;
margin: 5px;
padding: 5px;
text-align: center;
width: 120px;
}
.shortcut {
border: 1px solid var(--body-border);
background: var(--body-light);
float: right;
font-size: 0.8em;
margin: 0.5em 0em 0.5em 1em;
padding: 0.5em;
text-align: center;
}
.hatnote,
.seealso {
font-style: italic;
}
.hatnote i,
.seealso i {
font-style: normal;
}
div.hatnote,
div.seealso {
margin: 0.5em 1.6em;
}
div.hatnote + div.hatnote,
div.hatnote + div.seealso,
div.seealso + div.hatnote,
div.seealso + div.seealso {
margin-top: -0.5em;
}
.keypress {
background: var(--keypress-background);
color: var(--keypress-color);
font-family: inherit;
border: 1px solid var(--keypress-border);
border-radius: 2px;
font-size: 0.9em;
margin: 0 0.1em;
padding: 0.1em 0.4em;
white-space: nowrap;
}
:root {
--documentation-background: #f9fafa;
--documentation-link-color: #e4eaee;
--documentation-headers-color: #fff;
--documentation-header-background: #949eaa;
--documentation-subheader-background: #808c9a;
--documentation-border: #e4eaee;
}
.documentation {
background: var(--documentation-background);
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
margin: 1em 0;
}
.documentation pre,
.documentation code {
background-color: var(--documentation-background);
border-color: var(--documentation-border);
}
.documentation h2,
.documentation hr {
border-color: var(--documentation-border);
}
.documentation-header {
color: var(--documentation-headers-color);
background: var(--documentation-header-background);
font-weight: bold;
padding: 1em 1.5em;
}
.documentation-title {
font-size: 1.25em;
}
.documentation-subheader {
color: var(--documentation-headers-color);
background: var(--documentation-subheader-background);
padding: 0.5em 1.5em;
}
.documentation-subheader a,
.documentation-subheader a:visited,
.documentation-subheader a:active {
color: var(--documentation-link-color);
}
.documentation-documentation,
.documentation-links {
font-size: 0.85em;
}
.documentation-content {
padding: 1em 1.5em;
}
.mw-templatedata-doc-params dl:not(:empty) {
column-count: 3;
border-top: 1px solid var(--body-border);
margin-bottom: 0.5em;
}
.mw-templatedata-doc-params dt::after {
content: ":";
}
.mw-templatedata-doc-params dd,
.mw-templatedata-doc-params dt {
margin: 0.1em 2em;
min-width: auto;
}
.mw-templatedata-doc-muted {
color: var(--subtle-color);
font-style: italic;
}
:root {
--infobox-text-color: var(--text-color);
--table-header: var(--body-dark);
--table-subheader: var(--body-mid);
--table-body: var(--body-light);
--table-border: var(--body-border);
}
.infobox {
font-size: 0.85em;
width: 300px;
border-collapse: collapse;
float: right;
table-layout: fixed;
margin: 0.5em 0 1em 1em;
}
.infobox .infobox-buttons {
display: flex;
flex-wrap: wrap;
justify-content: center;
grid-gap: 3px;
margin-bottom: 3px;
}
.infobox .infobox-buttons .button {
background: var(--table-header);
padding: 0 5px;
font-weight: bold;
flex: 1 1 20%;
max-width: 20%;
color: #fff;
}
.infobox tbody {
border: 1px solid var(--table-border);
background: var(--table-body);
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(231, 215, 199, 0.5);
}
.infobox .infobox-header {
background: var(--table-header);
padding: 0.5em 0;
text-align: center;
color: #fff;
font-size: 1.15em;
font-weight: bold;
line-height: 1.4em;
}
.infobox .infobox-image {
text-align: center;
}
.infobox .infobox-subheader {
background: var(--table-subheader);
font-weight: bold;
text-align: center;
color: #fff;
}
.infobox .infobox-padding {
backgound: var(--table-body);
}
.infobox tr td:not(.infobox-padding) {
padding: 0.2em 0.5em;
}
.infobox th:not(.infobox-header):not(.infobox-subheader):not(.infobox-nested) {
border-right: 2px solid var(--table-subheader);
text-align: right;
padding: 0.2em 0.5em;
}
.hidden {
display: none;
}
ol.references,
.reflist {
font-size: 90%;
}
.reflist {
list-style-type: decimal;
}
.reflist .references {
font-size: 100%;
list-style-type: inherit;
}
.reflist-lower-alpha {
list-style-type: lower-alpha;
}
ol.references li:target,
sup.reference:target {
background-color: var(--body-light);
}
.hideQuotes .refhide {
display: none;
}
:root {
--messagebox-obsolete-background: #cfcfcf;
--messagebox-obsolete-border: #464646;
--messagebox-obsolete-color: var(--text-color);
--messagebox-obsolete-link-color: #6c6c6c;
--messagebox-info-background: #ebebeb;
--messagebox-info-border: #898989;
--messagebox-info-color: var(--text-color);
--messagebox-info-link-color: #6c6c6c;
--messagebox-action-background: #c7e8fa;
--messagebox-action-border: #0b5884;
--messagebox-action-color: var(--text-color);
--messagebox-action-link-color: #03436b;
--messagebox-warn-background: #dfc0ba;
--messagebox-warn-border: #861c10;
--messagebox-warn-color: var(--text-color);
--messagebox-warn-link-color: #8e221a;
--messagebox-safe-background: #d8f0d3;
--messagebox-safe-border: #1b8408;
--messagebox-safe-color: var(--text-color);
--messagebox-safe-link-color: #1b8408;
--messagebox-disambig-background: #ebebeb;
--messagebox-disambig-border: #898989;
--messagebox-disambig-color: var(--text-color);
--messagebox-disambig-link-color: #6c6c6c;
--messagebox-discord-background: #5865f2;
--messagebox-discord-border: #4c57d0;
--messagebox-discord-link-color: #d2e5fc;
}
.mw-message-box,
.mw-message-box-error,
.mw-message-box-warning,
.mw-message-box-success,
.usermessage {
color: var(--text-color);
}
.messagebox {
width: 65%;
margin: 0.5em auto;
border-left: 15px solid;
border-color: var(--body-dark);
background-color: var(--body-light);
box-sizing: border-box;
}
.messagebox.obsolete {
background-color: var(--messagebox-obsolete-background);
border-color: var(--messagebox-obsolete-border);
color: var(--messagebox-obsolete-color);
}
.messagebox.obsolete a,
.messagebox.obsolete a:visited,
.messagebox.obsolete a:active {
color: var(--messagebox-obsolete-link-color);
}
.messagebox.info {
background-color: var(--messagebox-info-background);
border-color: var(--messagebox-info-border);
color: var(--messagebox-info-color);
}
.messagebox.info a,
.messagebox.info a:visited,
.messagebox.info a:active {
color: var(--messagebox-info-link-color);
}
.messagebox.action {
background-color: var(--messagebox-action-background);
border-color: var(--messagebox-action-border);
color: var(--messagebox-action-color);
}
.messagebox.action a,
.messagebox.action a:visited,
.messagebox.action a:active {
color: var(--messagebox-action-link-color);
}
.messagebox.warn {
background-color: var(--messagebox-warn-background);
border-color: var(--messagebox-warn-border);
color: var(--messagebox-warn-color);
}
.messagebox.warn a,
.messagebox.warn a:visited,
.messagebox.warn a:active {
color: var(--messagebox-warn-link-color);
}
.messagebox.safe {
background-color: var(--messagebox-safe-background);
border-color: var(--messagebox-safe-border);
color: var(--messagebox-safe-color);
}
.messagebox.safe a,
.messagebox.safe a:visited,
.messagebox.safe a:active {
color: var(--messagebox-safe-link-color);
}
.messagebox.disambig {
background-color: var(--messagebox-disambig-background);
border-color: var(--messagebox-disambig-border);
color: var(--messagebox-disambig-color);
}
.messagebox.disambig a,
.messagebox.disambig a:visited,
.messagebox.disambig a:active {
color: var(--messagebox-disambig-link-color);
}
.messagebox.discord {
background-color: var(--messagebox-discord-background);
border-color: var(--messagebox-discord-border);
color: #fff;
}
.messagebox.discord a,
.messagebox.discord a:visited,
.messagebox.discord a:active {
color: var(--messagebox-discord-link-color);
}
.messagebox.discord a.external,
.messagebox.discord a:visited.external,
.messagebox.discord a:active.external {
font-style: italic;
}
.messagebox.stub {
width: 40%;
}
.messagebox.hasdialogue {
padding: 0 10px;
width: auto;
}
:root {
--byline-arrow-filter: invert(29%) sepia(0%) saturate(376%) hue-rotate(172deg) brightness(87%) contrast(80%);
--tile-border-color: var(--body-border);
--tile-background-color: var(--body-light);
--tile-link-button-color: #f5e9db;
--tile-link-button-highlight-color: #dfccb0;
--tile-dark-color: #fff;
--tile-dark-bg: var(--body-dark);
--tile-dark-link-color: #ccc;
--tile-dark-byline-color: rgba(255, 255, 255, 0.7);
--tile-dark-header-color: #fff;
}
.tile {
background: var(--tile-background-color);
border: 1px solid var(--tile-border-color);
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
padding: 1.5em 2em 1em;
max-width: 40em;
}
.tile h2 {
font-size: 1.4em;
font-weight: bold;
border: none;
margin: 0 0 0.4em;
}
.tile .byline + h2 {
margin-top: -0.5em;
}
.tile.dark {
color: var(--tile-dark-color);
background: var(--tile-dark-bg);
border: none;
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.3);
}
.tile.dark h2 {
color: var(--tile-dark-header-color);
}
.tile.dark a {
color: var(--tile-dark-link-color);
}
.tile.dark .byline {
color: var(--tile-dark-byline-color);
}
.byline {
font-size: 0.9em;
color: var(--byline-color);
}
.byline a {
color: var(--byline-color);
}
.tile-row {
display: flex;
flex-flow: row wrap;
margin-bottom: 1em;
}
.tile-halves {
display: flex;
flex-flow: row wrap;
background: var(--tile-background-color);
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
}
.tile-halves h2 {
font-size: 1.4em;
font-weight: bold;
border: none;
margin: 0 0 0.4em;
}
.tile-halves .byline + h2 {
margin-top: -0.5em;
}
.tile-top {
width: 100%;
padding: 1.3rem 1.5rem 0.6rem;
}
.tile-top.tile-image {
display: flex;
align-items: center;
background-color: var(--body-light);
overflow: hidden;
padding: 0;
height: 13vw;
max-height: 12em;
transition: 0.4s ease-out;
}
.tile-halves:hover .tile-top.tile-image img {
transform: scale(1.1);
transition: 0.5s ease-out;
}
.tile-top.tile-image a {
width: 100%;
}
.tile-top.tile-image img {
width: 100%;
object-fit: cover;
max-height: 200px;
transition: 0.4s ease-out;
}
.tile-bottom {
background: var(--body-dark);
width: 100%;
padding: 1rem 1.5rem 0.6rem;
}
.tile-bottom h2 a {
color: #fff;
}
.tile-bottom.link-button {
align-self: flex-end;
padding: 0;
}
.tile-bottom.link-button a {
display: block;
text-align: center;
padding: 0.75em 1.5em 0.8em;
text-decoration: none;
}
.tile-bottom.read-more {
background: var(--tile-link-button-color);
transition: 0.3s ease-out;
}
.tile-bottom.read-more a {
color: var(--byline-color);
font-weight: bold;
text-align: right;
}
.tile-bottom.read-more:hover {
background: var(--tile-link-button-highlight-color);
}
.tile-bottom.read-more:hover .arrow {
transform: translateX(50%);
}
.tile-bottom.read-more .arrow {
filter: var(--byline-arrow-filter);
margin-left: 0.4em;
transition: 0.3s ease-out;
}
body.page-Main_Page.action-view .catlinks,
body.page-Main_Page.action-view #contentSub,
body.page-Main_Page.action-view #firstHeading,
body.page-Main_Page.action-view #siteNotice {
display: none;
}
body.page-Main_Page .mw-parser-output {
max-width: 75em;
margin: 0 auto;
}
body.page-Main_Page.action-view .catlinks,
body.page-Main_Page.action-view #contentSub,
body.page-Main_Page.action-view #siteNotice {
display: none;
}
.mainpage-header {
display: flex;
margin: 2.6em 1.75em 1.5em;
}
.mainpage-header .header-intro {
flex: 2;
}
.mainpage-header .header-intro h1 {
font-size: 2.5em;
font-weight: bold;
border: none;
margin: 0 0 0.15em;
}
.mainpage-header .header-intro p {
font-size: 1.1em;
line-height: 1.7em;
}
.mainpage-header .header-stats {
flex: 1;
display: flex;
justify-content: center;
align-items: center;
margin-top: -1em;
}
.mainpage-body {
display: grid;
grid-template-areas: "event event event" "update update update" "content content content" "left left right";
gap: 0.9rem;
grid-template-columns: repeat(3, 1fr);
}
.mainpage-body h2 a {
color: var(--text-color);
}
.mainpage-body .tile {
padding-left: 1.75em;
padding-right: 1.75em;
max-width: 100%;
}
.mainpage-body .tile-row {
width: 100%;
margin-bottom: 0;
}
.mainpage-body .tile-row {
display: grid;
gap: 0.9rem;
}
.mainpage-contents.tile-row {
display: flex;
}
.mainpage-contents.tile-row .tile-top {
height: 5.5rem;
}
.mainpage-left {
grid-area: left;
flex: 2;
display: flex;
flex-flow: column wrap;
}
.mainpage-left > * {
margin: 0 0 0.9rem;
}
.mainpage-right {
grid-area: right;
flex: 1;
display: flex;
flex-flow: column wrap;
}
.mainpage-right > * {
margin: 0 0 0.9rem;
}
.arrow {
background: url('filepath://White-chevron.svg') no-repeat;
display: inline-block;
height: 0.7rem;
width: 0.45rem;
vertical-align: middle;
}
.arrow.dark {
filter: invert(80%);
}
.mainpage-contents {
grid-area: content;
grid-template-columns: repeat(6, 1fr);
}
.mainpage-contents .tile-halves {
flex: 1;
}
.mainpage-contents .tile-top {
height: 4.5rem;
position: relative;
}
.mainpage-contents .tile-top.tile-image img {
height: auto;
}
.mainpage-contents h2 {
margin: 0;
padding: 0;
}
.mainpage-contents .tile-bottom.link-button a {
padding: 0.75em 0.2em;
}
.popular-pages ul {
display: grid;
grid-template-columns: repeat(3, 1fr);
grid-gap: 0.6em;
margin: 1em 0 0.7em 0;
}
.mp-popular-page-light {
display: flex;
align-items: center;
background-color: var(--button-background);
transition: 100ms;
}
.mp-popular-page-light a {
flex: 1;
display: block;
color: #fff;
font-weight: bold;
text-align: center;
text-decoration: none;
padding: 0.7em 1em;
}
.mp-popular-page-light:hover {
filter: brightness(115%);
transition: 100ms;
}
.mainpage-social {
border: none;
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.3);
}
.mainpage-social .tile-top {
display: flex;
align-items: center;
padding: 1em 1.5em;
}
.mainpage-social .tile-top a {
flex: 1;
position: relative;
text-decoration: none;
}
.mainpage-social .tile-top a:hover .arrow {
transform: translateX(50%);
}
.mainpage-social .tile-bottom {
border: none;
padding: 1em 1.75em;
}
.mainpage-social .tile-bottom p {
color: #fff;
font-weight: bold;
font-size: 0.9em;
text-align: center;
text-transform: uppercase;
letter-spacing: 0.03em;
margin: 0;
}
.mainpage-social .social-icon {
margin-right: 0.75em;
text-align: center;
width: 60px;
}
.mainpage-social .social-header {
color: #fff;
font-weight: bold;
font-size: 1.15em;
margin: 0.5em 0 -0.15em;
}
.mainpage-social .server-tagline {
color: rgba(255, 255, 255, 0.9);
margin-bottom: 0.5em;
}
.mainpage-social .arrow {
position: absolute;
top: calc(50% - .5em);
right: 0;
height: 1em;
width: 0.7em;
background-size: 0.7em 1em;
transition: 0.3s ease-out;
}
.mainpage-social.mainpage-discord .tile-top {
background: #5865f2;
}
.mainpage-social.mainpage-discord .tile-bottom {
background: #525ee0;
}
.mainpage-social.mainpage-twitter .tile-top {
background: #15202b;
}
.mainpage-social.mainpage-twitter .tile-bottom {
background: #121c26;
}
.mainpage-editing {
border: none;
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.3);
}
.mainpage-editing .tile-top {
background: #438ab5;
}
.mainpage-editing .tile-bottom {
background: #3980ab;
border: none;
padding: 0.8rem 1.5rem 0.4rem;
}
.mainpage-editing h2,
.mainpage-editing a {
color: #fff;
}
.mainpage-editing p {
color: rgba(255, 255, 255, 0.9);
}
.mainpage-editing ul {
list-style-image: url('filepath://Transparent-chevron.svg');
}
@media only screen and (max-width: 1200px) {
.mainpage-contents {
grid-template-columns: repeat(3, 1fr);
}
}
@media only screen and (max-width: 1000px) {
.mainpage-body {
grid-template-areas: "event event event" "update update update" "content content content" "left left left" "right right right";
}
.mainpage-recent-updates {
grid-template-columns: repeat(2, 1fr);
}
.mainpage-recent-updates .tile-halves:last-child {
display: none;
}
.mainpage-recent-updates .tile-halves:hover .tile-top img {
transform: scale(1.04);
}
.mainpage-recent-updates .tile-top {
height: 18vw;
min-height: 9em;
}
.mainpage-header .header-stats {
display: none;
}
.mainpage-left > *:last-child,
.mainpage-right > *:last-child {
margin-bottom: 0;
}
.popular-pages ul {
grid-template-columns: repeat(2, 1fr);
}
}
@media only screen and (max-width: 720px) {
.mainpage-recent-updates {
grid-template-columns: none;
}
.mainpage-recent-updates .tile-halves:last-child {
display: flex;
}
.mainpage-contents {
grid-template-columns: repeat(2, 1fr);
}
}
.mw-prefs-buttons {
background-color: var(--body-main);
border-top-color: var(--body-border);
box-shadow: none;
}
.mw-prefs-tabs-wrapper.oo-ui-panelLayout-framed,
.mw-prefs-tabs > .oo-ui-menuLayout-content > .oo-ui-indexLayout-stackLayout > .oo-ui-tabPanelLayout {
border-color: var(--body-border);
}
.mw-htmlform-ooui .mw-htmlform-matrix tbody tr:nth-child(even) td {
background-color: var(--body-light);
}
.mw-htmlform-ooui .mw-htmlform-matrix tbody tr:hover td {
background-color: var(--body-mid);
}
:root {
--rc-positive-color: #407813;
--rc-negative-color: #b41e0f;
}
.mw-plusminus-pos {
color: var(--rc-positive-color);
}
.mw-plusminus-neg {
color: var(--rc-negative-color);
}
.client-js .mw-recentchanges-toplinks:not(.mw-recentchanges-toplinks-collapsed) {
border-color: var(--body-border);
background-color: var(--body-light);
border-radius: 2px;
}
.mw-rcfilters-ui-filterTagMultiselectWidget-wrapper-content-title {
color: var(--text-color);
}
.mw-rcfilters-ui-filterTagMultiselectWidget-emptyFilters {
color: var(--byline-color);
}
.mw-rcfilters-ui-filterTagMultiselectWidget.oo-ui-widget-enabled .oo-ui-tagMultiselectWidget-handle {
background-color: var(--ooui-interface);
border-color: var(--ooui-interface-border);
}
.mw-rcfilters-ui-filterTagMultiselectWidget-views-select-widget.oo-ui-widget {
border-color: var(--ooui-interface-border);
}
.mw-rcfilters-collapsed .mw-rcfilters-ui-filterTagMultiselectWidget {
border-bottom-color: var(--ooui-interface-border);
}
.mw-rcfilters-ui-menuSelectWidget-footer {
background-color: var(--ooui-interface);
border-color: var(--ooui-interface-border);
}
.mw-rcfilters-ui-viewSwitchWidget label.oo-ui-labelWidget {
color: var(--byline-color);
}
.mw-rcfilters-ui-tagItemWidget-popup-content {
color: var(--ooui-text);
}
.mw-changeslist-legend,
.mw-rcfilters-ui-changesListWrapperWidget .mw-changeslist-legend {
background-color: var(--body-light);
border-color: var(--body-dark);
}
.mw-rcfilters-ui-changesListWrapperWidget-previousChangesIndicator {
border-color: var(--sidebar);
}
.client-js .mw-changeslist ul,
.client-js .mw-changeslist table.mw-enhanced-rc {
margin-left: 0;
}
.mw-rcfilters-ui-watchlistTopSectionWidget-separator {
border-color: var(--sidebar);
}
.mw-rcfilters-ui-itemMenuOptionWidget-header {
border-bottom-color: var(--ooui-interface);
background-color: var(--ooui-interface-border);
}
.mw-rcfilters-ui-itemMenuOptionWidget:not(:last-child):not(.mw-rcfilters-ui-itemMenuOptionWidget-identifier-talk) {
border-bottom-color: var(--ooui-normal-border);
}
.mw-rcfilters-ui-itemMenuOptionWidget-label-title,
.mw-rcfilters-ui-itemMenuOptionWidget-label-desc {
color: var(--text-color);
}
.mw-rcfilters-ui-filterMenuOptionWidget.oo-ui-flaggedElement-muted:not(.oo-ui-optionWidget-selected) {
background-color: var(--body-main);
}
.mw-rcfilters-ui-filterMenuOptionWidget.oo-ui-flaggedElement-muted .mw-rcfilters-ui-itemMenuOptionWidget-label-title,
.mw-rcfilters-ui-filterMenuOptionWidget.oo-ui-flaggedElement-muted .mw-rcfilters-ui-itemMenuOptionWidget-label-desc {
color: var(--subtle-color);
}
.mw-rcfilters-ui-filterMenuSectionOptionWidget {
background-color: var(--body-mid);
}
.mw-rcfilters-ui-filterMenuSectionOptionWidget-header-title.oo-ui-labelElement-label {
color: var(--ooui-text);
}
.mw-rcfilters-ui-filterMenuHeaderWidget-title {
color: var(--ooui-text);
}
.mw-rcfilters-ui-filterMenuHeaderWidget-header {
border-bottom-color: var(--ooui-interface-border);
background-color: var(--ooui-interface);
}
.mw-rcfilters-ui-itemMenuOptionWidget-view-namespaces {
border-top-color: var(--ooui-interface-border);
}
.mw-rcfilters-ui-datePopupWidget {
border-color: var(--ooui-interface-border);
}
.mw-rcfilters-ui-datePopupWidget .mw-rcfilters-ui-valuePickerWidget-title {
color: var(--byline-color);
}
.mw-rcfilters-ui-savedLinksListItemWidget-label {
color: var(--ooui-accent);
}
.client-js .mw-changeslist.mw-rcfilters-ui-changesListWrapperWidget-highlighted ul,
.client-js .mw-changeslist.mw-rcfilters-ui-changesListWrapperWidget-highlighted table.mw-enhanced-rc {
margin-left: 1.5em;
}
.page-Special_CreateAccount .mw-ui-container,
.page-Special_UserLogin .mw-ui-container {
max-width: 64rem;
margin: 0 auto;
}
.mw-number-text {
color: var(--byline-color);
}
.mw-body-content .mw-number-text h3 {
color: var(--text-color);
}
#mw-indicator-mw-helplink a {
background: none;
padding: 0;
display: flex;
align-items: center;
}
#mw-indicator-mw-helplink a::before {
content: '';
margin-right: 5px;
-webkit-mask: url("/resources/src/mediawiki.helplink/images/helpNotice.svg?46d34") no-repeat 50% 50% / contain;
mask: url("/resources/src/mediawiki.helplink/images/helpNotice.svg?46d34") no-repeat 50% 50% / contain;
background: var(--text-color);
height: 20px;
width: 20px;
}
.results-info {
color: inherit;
}
.mw-search-profile-tabs {
background-color: var(--body-mid);
border-color: transparent;
}
.search-types .current a {
color: inherit;
}
#mw-searchoptions {
background-color: var(--body-mid);
border-color: transparent;
}
#mw-searchoptions .divider {
border-color: var(--body-border);
}
#mw-searchoptions h4 {
font-family: inherit;
}
#mw-searchoptions .oo-ui-labelElement:nth-of-type(odd) {
font-weight: bold;
}
.searchresult {
line-height: 1.5;
}
.searchalttitle,
#mw-search-interwiki li {
font-size: 90%;
}
.mw-search-result-data {
color: var(--byline-color);
}
.page-Special_ListFiles a.image img {
width: inherit;
height: inherit;
}
.page-Special_ListFiles .TablePager_col_thumb {
text-align: center;
}
#editcount table[border="1"] {
background-color: var(--body-main) !important;
border-color: var(--wikitable-border) !important;
margin-top: 0.5em;
}
#editcount table[border="1"] th,
#editcount table[border="1"] td {
padding: 0.2em 0.4em;
}
#editcount table[border="1"] th {
background-color: var(--wikitable-header-bg);
border: 1px solid var(--wikitable-border);
}
#editcount table[border="1"] td {
border: 1px solid var(--wikitable-border);
}
#editcount table[border="1"] tr:nth-child(odd) {
background-color: var(--body-light);
}
.mw-echo-ui-notificationBadgeButtonPopupWidget-popup > .oo-ui-popupWidget-popup .mw-echo-ui-placeholderItemWidget {
background-color: inherit;
}
table.mw-interwikitable.body td.mw-interwikitable-local-yes {
background-color: var(--table-yes-background);
color: var(--table-yes-color);
}
.mw-protectedpages-unknown {
color: var(--byline-color);
}
.watchlistredir,
.allpagesredirect {
font-style: italic;
}
.allpagesredirect:after {
color: var(--byline-color);
content: " (redirect)";
}
.mw-apisandbox-toolbar {
background: var(--body-main);
}
.oo-ui-menuOptionWidget .mw-apisandbox-flag {
color: var(--byline-color);
}
tr.mw-abusefilter-list-disabled,
tr.mw-abusefilter-list-disabled td {
color: var(--byline-color);
}
table.mw-abuselog-details {
background: var(--wikitable-bg);
border-color: var(--wikitable-border);
}
table.mw-abuselog-details th {
background: var(--wikitable-header-bg);
}
table.mw-abuselog-details th,
table.mw-abuselog-details td {
border-color: var(--wikitable-border);
}
.mw-abusefilter-log-hidden-entry {
color: var(--subtle-color);
}
body td.mw-abusefilter-history-changed {
background: var(--table-no-background);
}
div.mw-abusefilter-editor,
#mw-abusefilter-warn-preview,
#mw-abusefilter-disallow-preview {
border-color: var(--ooui-input-border);
}
.mw-destfile-warning {
border-color: var(--warningbox-border);
color: var(--text-color);
background-color: var(--warningbox-bg);
}
span.fileinput-button {
background-color: var(--ooui-normal);
border-color: var(--ooui-normal-border);
color: var(--ooui-text);
}
ul.fileupload-results li.ful-success {
background-color: var(--successbox-bg);
}
ul.fileupload-results li.ful-success a {
color: var(--link-color);
}
ul.fileupload-results li.ful-error {
background-color: var(--errorbox-bg);
}
.color-container {
display: flex;
margin: 2em auto;
width: 80%;
max-width: 60em;
}
.color-column {
flex: 1;
margin-right: 1em;
}
.color-column:last-child {
margin-right: 0;
}
.color-column h3 {
padding: 0;
}
.color-group {
color: #333;
padding: 1em 1.5em;
transition: 0.2s ease-out;
}
.color-group:hover {
transform: scale(1.03);
}
.color-group.dark {
color: #fff;
}
.color-group .variable,
.color-group .hexcode {
font-family: monospace;
font-size: 1.1em;
-webkit-user-select: all;
-moz-user-select: all;
-ms-user-select: all;
user-select: all;
margin: 0;
}
body.wgl-readermode .color-group .variable,
body.wgl-readermode .color-group .hexcode {
font-size: inherit;
}
.color-group .variable {
font-weight: bold;
}
#t-print,
#t-permalink {
display: none;
}
#filetoc {
border-radius: 2px;
background: var(--body-mid);
border-color: transparent;
margin: 0.5em auto;
text-align: center;
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
}
li.gallerybox div.thumb {
border: none;
background-color: var(--thumb-bg);
}
.smwfact {
display: none;
}
.list-header {
background-color: var(--body-mid);
color: inherit;
}
.editOptions {
color: var(--text-color);
background-color: var(--sourceeditor-background-secondary);
border-color: var(--sourceeditor-border);
}
.mw-json th,
.mw-json td {
border-color: var(--wikitable-border);
}
.mw-json td {
background: var(--wikitable-bg);
}
.mw-json th {
background: var(--wikitable-header-bg);
}
bedf03ddd56bd49e10f8af115bc432b7bc3b0c81
1692
1688
2024-04-01T01:27:50Z
Merds
25
Updating CSS from [[MediaWiki:Common.less]]
css
text/css
/* <pre> */
:root {
--body-main: #fdfcfc;
--body-light: #f5f0eb;
--body-mid: #d1b9ad;
--body-dark: #b1886f;
--body-border: #d1b9ad;
--body-background-color: #173a4d;
--button-background: #605443;
--button-color: #fff;
--button-border: #3c352a;
--button-dark: #18140c;
--button-light: #3a301d;
--sidebar: #cfc08d;
--background-text-color: #e2dbc8;
--background-link-color: #e2bd8a;
--search-box: #efeee6;
--link-color: #6e452b;
--redlink-color: #ba0000;
--text-color: #2F2828;
--byline-color: #ccc;
--subtle-color: #777;
--admin-blue: #332e75;
--bearcat-green: #13592e;
--awb-purple: #933b96;
--rsw-blue: #438ab6;
--osrsw-brown: #605443;
--thumb-bg: var(--body-light);
--thumb-caption-bg: var(--body-mid);
--sourceeditor-input-background: #fff;
--sourceeditor-background: var(--body-light);
--sourceeditor-background-secondary: var(--body-light);
--sourceeditor-border: var(--body-mid);
--codemirror-gutter-background: var(--body-mid);
}
@font-face {
font-family: 'Lora';
font-weight: 400 700;
font-style: normal;
font-display: swap;
src: url('filepath://Lora.woff2') format('woff2');
}
@font-face {
font-family: 'Lora';
font-weight: 400 700;
font-style: italic;
font-display: swap;
src: url('filepath://Lora-Italic.woff2') format('woff2');
}
:root {
--base-text-color: #36414f;
--base-heading-color: #444e5a;
--base-heading-border: #e4eaee;
--mw-code-background-color: var(--body-light);
--body-background-image: url('filepath://Wiki_background.jpg');
}
#mw-page-base {
background: none;
}
.mw-body {
background-color: var(--body-main);
color: var(--text-color);
border-color: transparent;
box-shadow: 0 0 7px rgba(0, 0, 0, 0.15);
margin-top: 0;
}
h1,
h2,
h3,
h4,
h5,
h6 {
color: var(--text-color);
}
h1,
h2 {
border-color: var(--body-border);
}
.mw-body h1,
.mw-body-content h1,
.mw-body-content h2,
.mw-body-content h3,
.mw-body-content h4,
.mw-body-content h5,
.mw-body-content h6 {
font-family: 'Lora', 'Palatino', 'Georgia', serif;
}
.mw-parser-output h2:first-of-type {
clear: left;
}
.mw-footer {
color: var(--background-text-color);
}
.mw-footer li {
color: var(--background-text-color);
}
.mw-footer a,
.mw-footer a:active,
.mw-footer a:visited {
color: var(--background-link-color);
}
::placeholder {
color: var(--subtle-color);
}
a {
color: var(--link-color);
}
a:visited,
a:active {
color: var(--link-color);
}
a.new {
color: var(--redlink-color);
}
a.new:visited {
color: var(--redlink-color);
}
.mw-parser-output a.extiw,
.mw-parser-output a.external {
color: var(--link-color);
}
.mw-parser-output a.extiw:visited,
.mw-parser-output a.external:visited,
.mw-parser-output a.extiw:active,
.mw-parser-output a.external:active {
color: var(--link-color);
}
.jsPurgeLink a.external {
color: var(--link-color);
}
:root {
--errorbox-bg: #feecea;
--errorbox-border: #ee4231;
--warningbox-bg: #fef9de;
--warningbox-border: #f9d000;
--successbox-bg: #ecf8e3;
--successbox-border: #6bc71f;
}
.mw-message-box-error,
.errorbox,
.mw-message-box-warning,
.warningbox,
.mw-message-box-success,
.successbox,
.usermessage {
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
}
.mw-message-box-error,
.errorbox {
background-color: var(--errorbox-bg);
border-color: var(--errorbox-border);
}
.mw-message-box-warning,
.warningbox,
.usermessage {
background-color: var(--warningbox-bg);
border-color: var(--warningbox-border);
}
.mw-message-box-success,
.successbox {
background-color: var(--successbox-bg);
border-color: var(--successbox-border);
}
.catlinks {
background: var(--body-light);
border: 1px solid var(--body-dark);
padding: 8px 15px;
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
}
.catlinks li {
border-color: var(--body-mid);
}
.filehistory a img,
#file img {
background: url("data:image/svg+xml,%3C%3Fxml version='1.0' encoding='UTF-8'%3F%3E%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16'%3E%3Cpath d='M0 0h8v16h8V8H0z' opacity='.13'/%3E%3C/svg%3E") repeat;
}
#file img:hover {
background: none;
}
.mw-highlight {
background: none;
}
.mw-highlight .linenos {
background-color: var(--mw-code-background-color);
color: var(--body-border);
}
.mw-highlight a:hover .linenos,
.mw-highlight .hll a .linenos {
color: var(--body-dark);
}
.mw-content-ltr.mw-highlight-lines pre,
.mw-content-ltr.content .mw-highlight-lines pre {
box-shadow: inset 2.75em 0 0 var(--mw-code-background-color);
}
#pagehistory ul {
list-style: none;
margin: 0;
}
#pagehistory li {
border: 1px solid transparent;
padding: 1px 10px;
margin: 2px 0;
}
#pagehistory li.selected {
background-color: var(--body-light);
color: inherit;
border: 1px dashed var(--body-border);
outline: none;
}
#mw-history-compare > div:first-of-type {
position: -webkit-sticky;
position: sticky;
top: 0;
background-color: var(--body-main);
border-bottom: 1px solid var(--body-dark);
padding: 0.25em 0;
}
.wgl-stickyheader #mw-history-compare > div:first-of-type {
top: 2.5rem;
}
.autocomment,
.autocomment a,
.autocomment a:visited {
color: var(--link-color);
}
li span.deleted,
span.history-deleted {
color: var(--byline-color);
}
.mw-usertoollinks-contribs-no-edits,
.mw-usertoollinks-contribs-no-edits:visited {
color: var(--redlink-color);
}
.CategoryTreeToggle {
color: var(--link-color);
}
body.wgl-stickyheader.action-view .mw-headline:target::before {
display: block;
content: '';
margin-top: -3rem;
height: 3rem;
visibility: hidden;
pointer-events: none;
}
.mw-mmv-post-image {
color: var(--text-color);
background-color: var(--body-main);
}
.mw-mmv-image-metadata {
border-top-color: var(--body-mid);
background-color: var(--body-light);
}
.mw-mmv-dialog,
.mw-mmv-dialog .mw-mmv-dialog-down-arrow,
.mw-mmv-options-dialog .mw-mmv-dialog-down-arrow {
background-color: var(--body-light);
box-shadow: none;
}
.mw-mmv-options-enable-alert {
background-color: var(--body-light);
color: var(--text-color);
}
.mw-mmv-options-dialog-header,
.mw-mmv-options-text-header,
.mw-mmv-options-text-body,
.mw-mmv-options-enable-alert,
.mw-mmv-options-dialog .mw-mmv-disable-confirmation .mw-mmv-options-dialog-header,
.mw-mmv-options-dialog .mw-mmv-disable-confirmation .mw-mmv-options-text-header {
color: var(--text-color);
}
.mw-revslider-container {
border-color: var(--sidebar);
}
.mw-revslider-slider-wrapper {
border-top-color: var(--sidebar);
}
.mw-ui-button {
background-color: var(--ooui-normal);
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
}
.mw-ui-button:not(:disabled):hover,
.mw-ui-button:not(:disabled):active {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
}
.mw-ui-button:not(:disabled):focus {
color: var(--ooui-text);
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent), inset 0 0 0 2px #fff;
}
.mw-ui-button:not(:disabled):visited {
color: var(--ooui-text);
}
.mw-ui-button.mw-ui-progressive:not(:disabled) {
background-color: var(--ooui-progressive);
color: #fff;
border-color: var(--ooui-progressive);
}
.mw-ui-button.mw-ui-progressive:not(:disabled):hover {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
}
.mw-ui-button.mw-ui-progressive:not(:disabled):focus {
box-shadow: inset 0 0 0 1px var(--ooui-accent), inset 0 0 0 2px #fff;
}
.mw-ui-button.mw-ui-progressive:not(:disabled):active,
.mw-ui-button.mw-ui-progressive:not(:disabled).is-on {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
box-shadow: none;
}
.mw-ui-button.mw-ui-destructive:not( :disabled ) {
color: #fff;
}
.mw-ui-button.mw-ui-quiet,
.mw-ui-button.mw-ui-quiet.mw-ui-progressive,
.mw-ui-button.mw-ui-quiet.mw-ui-destructive {
color: var(--text-color);
}
input[type='checkbox']:hover + .mw-ui-button.mw-ui-quiet,
input[type='checkbox']:hover + .mw-ui-button.mw-ui-quiet.mw-ui-progressive,
input[type='checkbox']:hover + .mw-ui-button.mw-ui-quiet.mw-ui-destructive,
.mw-ui-button.mw-ui-quiet:hover,
.mw-ui-button.mw-ui-quiet.mw-ui-progressive:hover,
.mw-ui-button.mw-ui-quiet.mw-ui-destructive:hover {
background-color: rgba(0, 24, 73, 0.02745098);
color: var(--text-color);
border-color: transparent;
}
input[type='checkbox']:focus + .mw-ui-button.mw-ui-quiet,
input[type='checkbox']:focus + .mw-ui-button.mw-ui-quiet.mw-ui-progressive,
input[type='checkbox']:focus + .mw-ui-button.mw-ui-quiet.mw-ui-destructive,
.mw-ui-button.mw-ui-quiet:focus,
.mw-ui-button.mw-ui-quiet.mw-ui-progressive:focus,
.mw-ui-button.mw-ui-quiet.mw-ui-destructive:focus {
color: var(--text-color);
}
input[type='checkbox']:active + .mw-ui-button.mw-ui-quiet,
input[type='checkbox']:active + .mw-ui-button.mw-ui-quiet.mw-ui-progressive,
input[type='checkbox']:active + .mw-ui-button.mw-ui-quiet.mw-ui-destructive,
.mw-ui-button.mw-ui-quiet:active,
.mw-ui-button.mw-ui-quiet.mw-ui-progressive:active,
.mw-ui-button.mw-ui-quiet.mw-ui-destructive:active {
background-color: rgba(0, 36, 73, 0.08235294);
color: var(--text-color);
border-color: #72777d;
}
.mw-ui-input {
background-color: var(--ooui-input);
color: var(--text-color);
border-color: var(--ooui-input-border);
}
.mw-ui-input:hover {
border-color: var(--ooui-input-border--hover);
}
.mw-ui-input::placeholder {
color: var(--byline-color);
}
.mw-content-ltr .redirectText li:first-child {
padding: 0;
background: 0;
}
.mw-content-ltr .redirectText li:first-child::before {
content: '';
background: currentcolor;
-webkit-mask: url("filepath://Redirect-arrow.svg") no-repeat 50% 50% / contain;
mask: url("filepath://Redirect-arrow.svg") no-repeat 50% 50% / contain;
display: inline-block;
width: 47px;
height: 20px;
}
.vector-search-box-inner {
background: var(--body-main) !important;
box-shadow: inset 0 -7px 7px -7px rgba(0, 0, 0, 0.15) !important;
}
.vector-menu-dropdown .vector-menu-heading {
color: var(--vector-tab-link-color) !important;
}
.vector-menu-dropdown .vector-menu-heading:hover {
color: var(--vector-tab-link-color) !important;
}
.vector-menu-dropdown .vector-menu-heading:focus {
color: var(--vector-tab-link-color) !important;
}
:root {
--wikitable-header-bg: var(--body-dark);
--wikitable-border: var(--body-border);
--wikitable-bg: var(--body-light);
--wikitable-bg-lighter: #e9e3d6;
--wikitable-color: var(--text-color);
--table-na-background: rgba(255, 255, 255, 0.3);
--table-na-color: var(--subtle-color);
--table-yes-background: #c3e8a3;
--table-yes-color: #2e5e05;
--table-no-background: #fbc0ba;
--table-no-color: #801c13;
--table-maybe-background: #fcea94;
--table-maybe-color: #786300;
}
.wikitable {
background: var(--wikitable-bg);
color: var(--wikitable-color);
border-color: var(--wikitable-border);
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
}
.wikitable > tr > th,
.wikitable > tr > td,
.wikitable > * > tr > th,
.wikitable > * > tr > td {
border-color: var(--wikitable-border);
}
.wikitable > tr > th.table-noborder,
.wikitable > tr > td.table-noborder,
.wikitable > * > tr > th.table-noborder,
.wikitable > * > tr > td.table-noborder {
border-left-style: hidden;
border-right-style: hidden;
padding-left: 0;
padding-right: 0;
}
.wikitable > tr > th,
.wikitable > * > tr > th {
background-color: var(--wikitable-header-bg);
color: #fff;
}
.tabber .wikitable {
box-shadow: none;
}
.mw_metadata td,
.mw_metadata th {
border-color: var(--wikitable-border);
}
.mw_metadata th {
background-color: var(--wikitable-header-bg);
}
.mw_metadata td {
background-color: var(--wikitable-bg);
}
.mw-datatable {
border-color: var(--wikitable-border);
}
.mw-datatable td,
.mw-datatable th {
border-color: var(--wikitable-border);
}
.mw-datatable th {
background-color: var(--wikitable-header-bg);
}
.mw-datatable td {
background-color: var(--wikitable-bg);
}
.mw-datatable tr:hover td {
background-color: var(--wikitable-bg);
}
table.alternating-rows tr:nth-child(odd),
table.alternating-cols td:nth-child(odd) {
background: var(--wikitable-alternating-bg);
}
.table-na {
background: var(--table-na-background);
color: var(--table-na-color);
vertical-align: middle;
text-align: center;
}
.table-yes {
background: var(--table-yes-background);
color: var(--table-yes-color);
}
.table-positive {
background: var(--table-yes-background);
}
.table-no {
background: var(--table-no-background);
color: var(--table-no-color);
}
.table-negative {
background: var(--table-no-background);
}
.table-maybe {
background: var(--table-maybe-background);
color: var(--table-maybe-color);
}
#mw-allmessagestable .am_actual,
#mw-allmessagestable .am_default {
background-color: var(--wikitable-bg);
}
#mw-allmessagestable .am_default:hover,
#mw-allmessagestable .am_actual:hover,
#mw-allmessagestable tbody:hover td {
background-color: var(--wikitable-bg-lighter);
}
table.wikitable td.no-cell-spacing {
padding: 0;
height: 0;
}
table.wikitable td.no-cell-spacing table {
margin: -1px;
width: calc(100% + 2px);
height: calc(100% + 2px);
}
.plainlist ol,
.plainlist ul {
margin: 0;
}
.plainlist li {
margin-bottom: 0;
list-style: none;
}
table.align-right-1 td:nth-of-type(1),
table.align-right-2 td:nth-of-type(2),
table.align-right-3 td:nth-of-type(3),
table.align-right-4 td:nth-of-type(4),
table.align-right-5 td:nth-of-type(5),
table.align-right-6 td:nth-of-type(6),
table.align-right-7 td:nth-of-type(7),
table.align-right-8 td:nth-of-type(8),
table.align-right-9 td:nth-of-type(9),
table.align-right-10 td:nth-of-type(10),
table.align-right-11 td:nth-of-type(11),
table.align-right-12 td:nth-of-type(12),
table.align-right-13 td:nth-of-type(13),
table.align-right-14 td:nth-of-type(14),
table.align-right-15 td:nth-of-type(15),
table.align-right-16 td:nth-of-type(16),
table.align-right-17 td:nth-of-type(17),
table.align-right-18 td:nth-of-type(18),
table.align-right-19 td:nth-of-type(19),
table.align-right-20 td:nth-of-type(20) {
text-align: right;
}
table.align-center-1 td:nth-of-type(1),
table.align-center-2 td:nth-of-type(2),
table.align-center-3 td:nth-of-type(3),
table.align-center-4 td:nth-of-type(4),
table.align-center-5 td:nth-of-type(5),
table.align-center-6 td:nth-of-type(6),
table.align-center-7 td:nth-of-type(7),
table.align-center-8 td:nth-of-type(8),
table.align-center-9 td:nth-of-type(9),
table.align-center-10 td:nth-of-type(10),
table.align-center-11 td:nth-of-type(11),
table.align-center-12 td:nth-of-type(12),
table.align-center-13 td:nth-of-type(13),
table.align-center-14 td:nth-of-type(14),
table.align-center-15 td:nth-of-type(15),
table.align-center-16 td:nth-of-type(16),
table.align-center-17 td:nth-of-type(17),
table.align-center-18 td:nth-of-type(18),
table.align-center-19 td:nth-of-type(19),
table.align-center-20 td:nth-of-type(20) {
text-align: center;
}
table.align-left-1 td:nth-of-type(1),
table.align-left-2 td:nth-of-type(2),
table.align-left-3 td:nth-of-type(3),
table.align-left-4 td:nth-of-type(4),
table.align-left-5 td:nth-of-type(5),
table.align-left-6 td:nth-of-type(6),
table.align-left-7 td:nth-of-type(7),
table.align-left-8 td:nth-of-type(8),
table.align-left-9 td:nth-of-type(9),
table.align-left-10 td:nth-of-type(10),
table.align-left-11 td:nth-of-type(11),
table.align-left-12 td:nth-of-type(12),
table.align-left-13 td:nth-of-type(13),
table.align-left-14 td:nth-of-type(14),
table.align-left-15 td:nth-of-type(15),
table.align-left-16 td:nth-of-type(16),
table.align-left-17 td:nth-of-type(17),
table.align-left-18 td:nth-of-type(18),
table.align-left-19 td:nth-of-type(19),
table.align-left-20 td:nth-of-type(20) {
text-align: left;
}
:root {
--diff-addedline-border-color: #438ab5;
--diff-addedline-background: #bddff2;
--diff-addedline-color: #000;
--diff-deletedline-border-color: #379541;
--diff-deletedline-background: #c1edbf;
--diff-deletedline-color: #000;
--diff-context-border-color: var(--body-mid);
--diff-context-background: var(--body-mid);
}
.diff-context {
border-color: var(--diff-context-border-color);
background: var(--diff-context-background);
color: inherit;
}
.diff-addedline {
border-color: var(--diff-addedline-border-color);
}
.diff-addedline .diffchange {
background: var(--diff-addedline-background);
color: var(--diff-addedline-color);
}
.diff-deletedline {
border-color: var(--diff-deletedline-border-color);
}
.diff-deletedline .diffchange {
background: var(--diff-deletedline-background);
color: var(--diff-deletedline-color);
}
.mw-diff-movedpara-left:after,
.mw-diff-movedpara-right:after {
color: var(--text-color);
}
.mw-notification {
background-color: var(--body-light);
border-color: var(--body-border);
color: var(--text-color);
}
.mw-echo-ui-notificationsInboxWidget-toolbarWrapper {
background: var(--body-main);
}
.mw-body-content .mw-echo-ui-datedSubGroupListWidget-title-secondary {
color: var(--byline-color);
}
.mw-echo-ui-pageNotificationsOptionWidget.oo-ui-optionWidget-selected {
background-color: var(--ooui-normal);
color: var(--ooui-accent);
}
.mw-echo-ui-pageNotificationsOptionWidget-label-count {
background-color: var(--ooui-normal);
color: var(--byline-color);
}
.oo-ui-optionWidget-selected .mw-echo-ui-pageNotificationsOptionWidget-label-count {
color: var(--ooui-accent);
}
.mw-echo-ui-pageNotificationsOptionWidget.oo-ui-optionWidget-highlighted {
background-color: var(--ooui-normal);
color: var(--text-color);
}
.mw-echo-ui-crossWikiUnreadFilterWidget {
border-color: var(--body-border);
}
.mw-echo-ui-crossWikiUnreadFilterWidget-subtitle {
color: var(--byline-color);
}
.mw-echo-ui-notificationBadgeButtonPopupWidget-popup > .oo-ui-popupWidget-popup > .oo-ui-popupWidget-head,
.mw-echo-ui-notificationBadgeButtonPopupWidget-popup > .oo-ui-popupWidget-popup > .oo-ui-popupWidget-footer {
border-color: var(--ooui-interface-border);
}
.mw-echo-ui-notificationBadgeButtonPopupWidget-popup > .oo-ui-popupWidget-popup > .oo-ui-popupWidget-footer .mw-echo-ui-notificationBadgeButtonPopupWidget-footer-buttons .oo-ui-buttonElement:last-child {
border-left-color: var(--ooui-normal-border);
}
.mw-echo-ui-notificationItemWidget {
background-color: var(--ooui-normal);
border-color: var(--ooui-normal-border);
}
.mw-echo-ui-notificationItemWidget:hover,
.mw-echo-ui-notificationItemWidget-unread:hover {
background-color: var(--ooui-normal--hover);
}
.mw-echo-ui-notificationItemWidget:last-child {
border-bottom-color: var(--ooui-normal-border);
}
.mw-echo-ui-notificationItemWidget-unread {
background-color: var(--search-box);
}
.mw-echo-ui-crossWikiNotificationItemWidget-group,
.mw-echo-ui-bundleNotificationItemWidget-group {
background-color: var(--ooui-interface);
}
.mw-echo-ui-toggleReadCircleButtonWidget-circle {
background-color: var(--ooui-progressive);
}
.mw-echo-ui-toggleReadCircleButtonWidget:hover .mw-echo-ui-toggleReadCircleButtonWidget-circle {
background-color: var(--ooui-progressive--hover);
}
.mw-echo-ui-toggleReadCircleButtonWidget-circle-unread {
background-color: var(--ooui-normal);
border-color: var(--ooui-normal-border);
}
.mw-echo-ui-notificationItemWidget-content-message-header,
.mw-echo-ui-notificationItemWidget-content-message-body,
.mw-echo-ui-menuItemWidget > .oo-ui-buttonElement-button > .oo-ui-labelElement-label,
.mw-echo-ui-notificationItemWidget-content-actions-timestamp {
color: var(--ooui-text);
}
.mw-echo-ui-bundleNotificationItemWidget-group {
background-color: var(--body-main);
}
@keyframes unseen-fadeout-to-unread {
from {
background-color: var(--wikitable-bg-lighter);
}
to {
background-color: var(--search-box);
}
}
@keyframes unseen-fadeout-to-read {
from {
background-color: var(--wikitable-bg-lighter);
}
to {
background-color: var(--body-main);
}
}
.mwe-popups {
background: var(--body-light);
}
.mwe-popups .mwe-popups-container {
color: var(--text-color);
background: var(--body-light);
}
.mwe-popups .mwe-popups-container.flipped-x-y:before,
.mwe-popups .mwe-popups-container.flipped-y:before {
border-top: none;
}
.mwe-popups .mwe-popups-container.mwe-popups-no-image-tri:before {
border-bottom: none;
}
.mwe-popups .mwe-popups-container.flipped-x-y:after,
.mwe-popups .mwe-popups-container.flipped-y:after {
border-top-color: var(--body-light);
}
.mwe-popups .mwe-popups-container.mwe-popups-no-image-tri:after {
border-bottom-color: var(--body-light);
}
.mwe-popups .mwe-popups-settings-icon:hover,
.mwe-popups .mwe-popups-settings-icon:active {
background-color: var(--ooui-normal--hover);
}
.mwe-popups .mw-ui-icon-element:not(.disabled):hover {
background: none;
}
.mwe-popups .mwe-popups-extract {
color: var(--text-color);
}
.mwe-popups .mwe-popups-extract[dir='ltr']:after {
background-image: linear-gradient(to right, rgba(49, 62, 89, 0), var(--body-light) 50%);
}
.mwe-popups-overlay {
background-color: var(--ooui-window-background);
}
#mwe-popups-settings {
background: var(--ooui-interface);
border-color: var(--ooui-interface-border);
color: var(--text-color);
}
#mwe-popups-settings header {
border-color: var(--ooui-interface-border);
}
#mwe-popups-settings main#mwe-popups-settings-form p {
color: var(--byline-color);
}
#mwe-popups-settings main#mwe-popups-settings-form form label > span {
color: var(--ooui-text);
}
:root {
--smw-ask-options-even-bg: var(--body-mid);
--smw-ask-options-odd-bg: var(--body-light);
--smw-ask-action-btn-lblue-bg: var(--body-main);
--smw-ask-action-btn-lblue-color: #000;
--smw-ask-action-btn-lblue-border-color: var(--body-light);
--smw-ask-action-btn-dblue-bg: var(--body-light);
--smw-ask-action-btn-dblue-color: #fff;
--smw-ask-action-btn-dblue-border-color: var(--button-border);
}
.smw-ask-condition fieldset,
.smw-ask-printhead fieldset {
border-color: var(--sidebar);
}
.smw-ask-search fieldset,
.smw-ask-format fieldset,
.smw-ask-options fieldset {
border-color: var(--sidebar);
}
.strike > span:before,
.strike > span:after {
background: var(--sidebar);
}
.smw-ask-options-fields tr td {
background-color: var(--smw-ask-options-even-bg);
}
.smw-ask-options-fields tr:nth-child(odd) td {
background-color: var(--smw-ask-options-odd-bg);
}
.smw-ask-action-btn.smw-ask-action-btn-lblue,
.smw-ask-action-btn.smw-ask-action-btn-lblue:hover,
.smw-ask-action-btn.smw-ask-action-btn-lblue:visited {
background-color: var(--smw-ask-action-btn-lblue-bg);
color: var(--smw-ask-action-btn-lblue-color);
border-color: var(--smw-ask-action-btn-lblue-border-color);
}
.smw-ask-action-btn.smw-ask-action-btn-dblue,
.smw-ask-action-btn.smw-ask-action-btn-dblue:hover,
.smw-ask-action-btn.smw-ask-action-btn-dblue:visited {
background-color: var(--smw-ask-action-btn-dblue-bg);
color: var(--smw-ask-action-btn-dblue-color);
border-color: var(--smw-ask-action-btn-dblue-border-color);
}
.smw-ask-query textarea,
.smw-ask-actions textarea {
background-color: var(--ooui-interface);
border-color: var(--ooui-interface-border);
color: var(--ooui-text);
}
.smw-ask-query-format select {
background-color: var(--ooui-interface);
border: 1px solid var(--ooui-interface-border);
color: var(--ooui-text);
}
.smw-ask-toplinks {
background-color: var(--body-mid);
}
.smw-ask-toplinks span.smw-icon-info {
background: none;
padding: 0 !important;
}
.smw-ask-toplinks span.smw-icon-info::before {
content: '';
background: var(--text-color);
-webkit-mask: url("data:image/svg+xml,%3C%3Fxml version='1.0' encoding='UTF-8'%3F%3E%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 20 20'%3E%3Ctitle%3Einfo%3C/title%3E%3Cpath d='M10 0C4.477 0 0 4.477 0 10s4.477 10 10 10 10-4.477 10-10S15.523 0 10 0zM9 5h2v2H9zm0 4h2v6H9z'/%3E%3C/svg%3E") no-repeat 50% 50% / contain;
mask: url("data:image/svg+xml,%3C%3Fxml version='1.0' encoding='UTF-8'%3F%3E%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 20 20'%3E%3Ctitle%3Einfo%3C/title%3E%3Cpath d='M10 0C4.477 0 0 4.477 0 10s4.477 10 10 10 10-4.477 10-10S15.523 0 10 0zM9 5h2v2H9zm0 4h2v6H9z'/%3E%3C/svg%3E") no-repeat 50% 50% / contain;
padding: 0 0 3px 18px;
}
.smw-ask-options-row-odd {
background-color: var(--body-light);
}
.smw-ask-options-row-even {
background-color: var(--body-mid);
}
#options-toggle:not(:checked) + #options-list .options-parameter-list:after {
background-image: linear-gradient(to bottom, transparent, var(--body-mid) 90%);
}
.smw-ask-button-submit input {
background-color: var(--ooui-normal);
border-color: var(--ooui-normal-border);
color: var(--text-color);
}
.smw-ask-button-submit input:hover,
.smw-ask-button-lgrey:hover {
background-color: var(--ooui-normal--hover);
border-color: var(--ooui-normal-border);
}
input.smw-ask-action-btn.smw-ask-action-btn-dblue {
background-color: var(--ooui-normal);
border-color: var(--ooui-normal-border);
color: var(--ooui-text);
}
a.smw-ask-action-btn.smw-ask-action-btn-lblue {
background-color: var(--body-mid);
border-color: var(--body-mid);
color: var(--ooui-text);
}
a.smw-ask-action-btn.smw-ask-action-btn-lblue:visited {
background-color: var(--body-mid);
border-color: var(--body-mid);
color: var(--ooui-text);
}
a.smw-ask-action-btn.smw-ask-action-btn-lblue:hover {
background-color: var(--body-mid);
border-color: var(--body-mid);
color: var(--ooui-text);
}
a.smw-ask-action-btn-lgrey {
background-color: var(--ooui-normal);
border-color: var(--ooui-normal-border);
color: var(--ooui-text);
}
a.smw-ask-action-btn-lgrey:hover {
background-color: var(--ooui-normal--hover);
border-color: var(--ooui-normal-border);
color: var(--ooui-text);
}
.smw-callout-error {
background-color: var(--errorbox-bg);
border-color: var(--errorbox-border);
}
.smw-callout-info {
background-color: var(--body-light);
border-color: var(--body-dark);
}
.smw-callout-success {
background-color: var(--successbox-bg);
border-color: var(--successbox-border);
}
.smw-callout-warning {
background-color: var(--warningbox-bg);
border-color: var(--warningbox-bg);
}
.smw-tabs input.nav-tab:checked + label.nav-label,
.smw-tabs input.nav-tab:checked + label.nav-label:hover {
color: inherit;
}
#tab-smw-property-value:checked + label.nav-label .usage-count {
color: #fff;
background-color: var(--ooui-progressive);
}
#tab-smw-property-value:checked + label.nav-label .usage-count.moderate {
color: #fff;
background-color: #b55e0c;
border-color: #b55e0c;
}
#tab-smw-property-value:checked + label.nav-label .usage-count.high {
color: #fff;
background-color: #9f261e;
border-color: #9f261e;
}
.smw-property-page-results .header-title {
background-color: var(--ooui-interface);
border-bottom-color: var(--ooui-interface-border);
color: var(--ooui-text);
}
.smw-property-page-results .value-row:hover {
background-color: var(--ooui-normal--hover);
}
.smw-property-page-results .smw-table .header-row {
color: var(--text-color);
}
.tippy-tooltip.light-border-theme {
background-color: var(--body-light);
color: var(--text-color);
}
.tippy-tooltip.light-border-theme .tippy-arrow {
border-top-color: var(--body-light);
}
.tippy-tooltip.light-border-theme .tippy-arrow:after {
border-top-color: var(--body-light);
}
.tippy-header {
background-color: var(--body-dark);
border-bottom-color: var(--body-mid);
}
.smw-ui-input-filter {
background-color: var(--ooui-interface);
border-color: var(--ooui-interface-border);
color: var(--ooui-text);
}
.smw-ui-input-filter input {
border-left-color: var(--ooui-interface-border) !important;
color: var(--ooui-text) !important;
}
.smw-ui-pagination .page-link.link-disabled {
background-color: var(--ooui-disabled);
border-color: var(--ooui-disabled-border);
color: var(--subtle-color);
}
.smw-ui-pagination .page-link {
background-color: var(--ooui-normal);
border-color: var(--ooui-normal-border);
color: var(--link-color);
}
.smw-ui-pagination .page-link:hover {
background-color: var(--ooui-normal--hover);
border-color: var(--ooui-normal-border);
color: var(--link-color);
}
.smw-ui-pagination .page-link.link-active {
color: #fff;
background-color: var(--ooui-progressive);
border-color: var(--ooui-progressive);
}
.smw-tabs input.nav-tab:checked + label.nav-label {
border-color: var(--ooui-normal-border);
}
.smw-tabs section,
.smw-tabs .subtab-content {
border-top-color: var(--ooui-normal-border);
}
.smw-column-header {
color: var(--text-color);
}
.smw-factbox {
background: var(--body-main);
border-color: transparent;
}
.mw-body .mw-indicators #mw-indicator-smw-entity-examiner.mw-indicator .smw-indicator-vertical-bar-loader {
display: none;
}
.smwb-theme-light .smwb-title,
.smwb-theme-light .smwb-center,
.smwb-theme-light .smwb-actions,
.smwb-theme-light .smwb-prophead {
background-color: var(--body-mid);
}
.smwb-theme-light .smwb-factbox {
border-left-color: var(--body-mid);
}
.smwb-theme-light .smwb-ifactbox {
border-right-color: var(--body-mid);
}
.smwb-theme-light .smwb-propval {
background-color: var(--body-light);
}
.smwb-action-separator {
border-color: var(--wikitable-border);
}
.smwb-bottom {
border-bottom: 1px solid var(--wikitable-border);
}
.smwb-ifactbox .smwb-cell,
.smwb-factbox .smwb-cell {
border-top: 1px solid var(--wikitable-border);
}
.smwb-propvalue .smwb-prophead,
.smwb-ipropvalue .smwb-prophead,
.smwb-propvalue .smwb-propval,
.smwb-ipropvalue .smwb-propval {
font-size: 0.9em;
}
:root {
--filter-black-to-link: invert(36%) sepia(58%) saturate(433%) hue-rotate(344deg) brightness(100%) contrast(91%);
}
#bodyContent span.smwbrowse a {
color: black;
background-image: url('filepath://Smwbrowse.svg');
filter: var(--filter-black-to-link);
}
#bodyContent span.smwbrowse a:hover {
color: black;
background-image: url('filepath://Smwbrowse-hover.svg');
text-decoration: underline;
}
#bodyContent span.smwsearch a {
color: black;
filter: var(--filter-black-to-link);
background-image: url('filepath://Smwsearch.svg');
}
#bodyContent span.smwsearch a:hover {
color: black;
background-image: url('filepath://Smwsearch-hover.svg');
text-decoration: underline;
}
:root {
--tabber-tab-bg: var(--body-light);
--tabber-tab-border-color: var(--body-border);
--tabber-active-tab-bg: var(--body-light);
--tabber-active-tab-color: var(--text-color);
--tabber-active-tab-hover-bg: var(--body-light);
--tabber-active-tab-hover-border-color: var(--body-border);
--tabber-active-tab-hover-color: var(--text-color);
--tabber-active-tab-border-hider-color: var(--body-light);
--tabber-inactive-tab-bg: var(--body-background-color);
--tabber-inactive-tab-border-color: var(--body-border);
--tabber-inactive-tab-color: var(--text-color);
--tabber-inactive-tab-hover-bg: var(--body-light);
--tabber-inactive-tab-hover-border-color: var(--body-border);
}
.tabber {
margin: 1em 0;
}
.tabber .tabbertab {
background-color: var(--tabber-tab-bg);
border: 1px solid var(--tabber-tab-border-color);
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
padding: 1em 1.5em;
}
ul.tabbernav {
border: none;
margin-left: 2em;
margin-bottom: 0;
margin-right: 2em;
padding: 0;
font-family: inherit;
}
ul.tabbernav li.tabberactive > a {
background-color: var(--tabber-active-tab-bg);
color: var(--tabber-active-tab-color);
border-bottom: none;
position: relative;
}
ul.tabbernav li.tabberactive > a:hover {
color: var(--tabber-active-tab-hover-color);
background-color: var(--tabber-active-tab-hover-bg);
border-color: var(--tabber-active-tab-hover-border-color);
border-bottom: none;
}
ul.tabbernav li.tabberactive > a::after {
content: '';
position: absolute;
left: 0;
right: 0;
bottom: -1px;
border-bottom: 2px solid var(--tabber-active-tab-border-hider-color);
}
ul.tabbernav li a {
background-color: var(--tabber-inactive-tab-bg);
border-bottom: transparent;
border-color: var(--tabber-inactive-tab-border-color);
color: var(--tabber-inactive-tab-color);
display: inline-block;
font-size: 110%;
padding: 0.5em 1em;
}
ul.tabbernav li a:hover {
background-color: var(--tabber-inactive-tab-hover-bg);
border-color: var(--tabber-inactive-tab-hover-border-color);
}
ul.tabbernav li a:link,
ul.tabbernav li a:visited {
color: var(--tabber-inactive-tab-color);
}
:root {
--ooui-text: var(--text-color);
--ooui-interface: var(--body-light);
--ooui-interface-border: var(--body-border);
--ooui-window-background: rgba(255, 255, 255, 0.5);
--ooui-normal: #cdb3a6;
--ooui-normal--hover: #d8c4ba;
--ooui-normal-border: #d1b9ad;
--ooui-progressive: #936243;
--ooui-progressive--hover: #b27a57;
--ooui-accent: var(--link-color);
--ooui-input: #fff;
--ooui-input-border: #d1b9ad;
--ooui-input-border--hover: #ae846f;
--ooui-disabled: #c9c3bf;
--ooui-disabled-border: #dfd6d2;
--ooui-disabled-text: var(--subtle-color);
--ooui-pending-background-image: repeating-linear-gradient(-45deg, var(--search-box), var(--search-box) 20px, var(--body-main) 20px, var(--body-main) 30px);
}
.oo-ui-widget {
color: var(--ooui-text);
}
.oo-ui-checkboxInputWidget [type='checkbox'] + span,
.oo-ui-radioInputWidget [type='radio'] + span {
background-color: var(--ooui-input);
border-color: var(--ooui-input-border);
}
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:checked + span,
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:indeterminate + span {
background-color: var(--ooui-progressive);
border-color: var(--ooui-progressive);
}
.oo-ui-radioInputWidget.oo-ui-widget-enabled [type='radio']:checked + span {
border-color: var(--ooui-progressive);
}
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:checked:hover + span,
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:indeterminate:hover + span {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
}
.oo-ui-radioInputWidget.oo-ui-widget-enabled [type='radio']:checked:hover + span {
border-color: var(--ooui-progressive--hover);
}
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:hover + span,
.oo-ui-radioInputWidget.oo-ui-widget-enabled [type='radio']:hover + span {
border-color: var(--ooui-accent);
}
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:focus + span {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:active + span,
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:checked:active + span,
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:indeterminate:active + span {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
box-shadow: inset 0 0 0 1px var(--ooui-progressive--hover);
}
.oo-ui-radioInputWidget.oo-ui-widget-enabled [type='radio']:active + span {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
}
.oo-ui-radioInputWidget.oo-ui-widget-enabled [type='radio']:checked:active + span {
border-color: var(--ooui-progressive--hover);
box-shadow: inset 0 0 0 1px var(--ooui-progressive--hover);
}
.oo-ui-radioInputWidget.oo-ui-widget-enabled [type='radio']:checked:active + span:before {
border-color: var(--ooui-progressive--hover);
}
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:checked:focus + span,
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:indeterminate:focus + span {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent), inset 0 0 0 2px #fff;
}
.oo-ui-checkboxInputWidget [type='checkbox']:disabled + span,
.oo-ui-radioInputWidget [type='radio']:disabled + span {
background-color: var(--ooui-disabled);
border-color: var(--ooui-disabled);
}
.oo-ui-dropdownWidget-handle {
border-color: var(--ooui-normal-border);
}
.oo-ui-dropdownWidget.oo-ui-widget-enabled .oo-ui-dropdownWidget-handle {
background-color: var(--ooui-normal);
color: var(--ooui-text);
}
.oo-ui-dropdownWidget.oo-ui-widget-enabled .oo-ui-dropdownWidget-handle:hover {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
}
.oo-ui-dropdownWidget.oo-ui-widget-enabled .oo-ui-dropdownWidget-handle:active {
color: var(--ooui-text);
}
.oo-ui-dropdownWidget.oo-ui-widget-enabled .oo-ui-dropdownWidget-handle:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-dropdownWidget.oo-ui-widget-enabled.oo-ui-dropdownWidget-open .oo-ui-dropdownWidget-handle {
background-color: var(--ooui-normal--hover);
}
.oo-ui-dropdownWidget.oo-ui-widget-disabled .oo-ui-dropdownWidget-handle {
color: var(--ooui-disabled-text);
text-shadow: none;
border-color: var(--ooui-disabled-border);
background-color: var(--ooui-disabled);
}
.oo-ui-dropdownInputWidget select {
border-color: var(--ooui-normal-border);
}
.oo-ui-dropdownInputWidget option {
background-color: var(--ooui-interface);
}
.oo-ui-dropdownInputWidget.oo-ui-widget-enabled {
background-color: var(--ooui-normal);
}
.oo-ui-dropdownInputWidget.oo-ui-widget-enabled:hover {
background-color: var(--ooui-normal--hover);
}
.oo-ui-dropdownInputWidget.oo-ui-widget-enabled select {
color: var(--ooui-text);
}
.oo-ui-dropdownInputWidget.oo-ui-widget-enabled select:hover,
.oo-ui-dropdownInputWidget.oo-ui-widget-enabled select:active {
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
}
.oo-ui-dropdownInputWidget.oo-ui-widget-enabled select:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-labelWidget.oo-ui-inline-help {
color: var(--byline-color);
}
.oo-ui-menuSelectWidget {
background-color: var(--ooui-interface);
border-color: var(--ooui-interface-border);
}
.oo-ui-menuSelectWidget-frameless {
box-shadow: inset 0 -1px 0 0 var(--ooui-normal-border);
}
.oo-ui-menuSectionOptionWidget {
color: var(--byline-color);
}
.oo-ui-menuOptionWidget.oo-ui-optionWidget-highlighted,
.oo-ui-menuOptionWidget.oo-ui-optionWidget-selected {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
}
.oo-ui-menuOptionWidget.oo-ui-optionWidget-selected.oo-ui-menuOptionWidget.oo-ui-optionWidget-highlighted,
.oo-ui-menuOptionWidget.oo-ui-optionWidget-pressed.oo-ui-menuOptionWidget.oo-ui-optionWidget-highlighted {
color: var(--ooui-accent);
}
.oo-ui-menuOptionWidget.oo-ui-widget-enabled.oo-ui-optionWidget {
color: var(--ooui-text);
}
.oo-ui-messageDialog-title {
color: inherit;
}
.oo-ui-messageWidget.oo-ui-messageWidget-block.oo-ui-flaggedElement-error {
background-color: var(--errorbox-bg);
border-color: var(--errorbox-border);
}
.oo-ui-messageWidget.oo-ui-messageWidget-block.oo-ui-flaggedElement-warning {
background-color: var(--warningbox-bg);
border-color: var(--warningbox-border);
}
.oo-ui-messageWidget.oo-ui-messageWidget-block.oo-ui-flaggedElement-success {
background-color: var(--successbox-bg);
border-color: var(--successbox-border);
}
.oo-ui-messageWidget.oo-ui-messageWidget-block.oo-ui-flaggedElement-notice {
background-color: var(--messagebox-info-background);
border-color: var(--messagebox-info-border);
}
.oo-ui-messageWidget.oo-ui-flaggedElement-error:not(.oo-ui-messageWidget-block),
.oo-ui-messageWidget.oo-ui-flaggedElement-success:not(.oo-ui-messageWidget-block) {
color: var(--ooui-text);
}
.oo-ui-optionWidget.oo-ui-widget-disabled {
color: var(--ooui-disabled-text);
}
.oo-ui-outlineControlsWidget {
background-color: var(--ooui-normal);
}
.oo-ui-outlineOptionWidget.oo-ui-optionWidget-highlighted {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
}
.oo-ui-popupWidget-popup {
background-color: var(--ooui-interface);
border-color: var(--ooui-interface-border);
}
.oo-ui-popupWidget-anchored-top .oo-ui-popupWidget-anchor:after {
border-bottom-color: var(--ooui-interface);
}
.oo-ui-popupWidget-anchored-top .oo-ui-popupWidget-anchor:before {
border-bottom-color: var(--ooui-interface-border);
}
.oo-ui-popupWidget-anchored-bottom .oo-ui-popupWidget-anchor:after {
border-top-color: var(--ooui-interface);
}
.oo-ui-popupWidget-anchored-bottom .oo-ui-popupWidget-anchor:before {
border-top-color: var(--ooui-interface-border);
}
.oo-ui-popupWidget-anchored-start .oo-ui-popupWidget-anchor:after {
border-right-color: var(--ooui-interface);
}
.oo-ui-popupWidget-anchored-start .oo-ui-popupWidget-anchor:before {
border-right-color: var(--ooui-interface-border);
}
.oo-ui-popupWidget-anchored-end .oo-ui-popupWidget-anchor:after {
border-left-color: var(--ooui-interface);
}
.oo-ui-popupWidget-anchored-end .oo-ui-popupWidget-anchor:before {
border-left-color: var(--ooui-interface-border);
}
.oo-ui-searchWidget-query {
border-bottom-color: var(--ooui-interface-border);
}
.oo-ui-selectFileWidget-dropTarget {
background-color: var(--ooui-interface);
border-color: var(--ooui-interface-border);
}
.oo-ui-selectFileWidget.oo-ui-widget-enabled.oo-ui-selectFileWidget-dropTarget {
background-color: var(--ooui-interface);
}
.oo-ui-selectFileWidget.oo-ui-widget-enabled.oo-ui-selectFileWidget-dropTarget:hover {
border-color: var(--ooui-input-border--hover);
}
.oo-ui-tabOptionWidget {
color: var(--ooui-text);
}
.oo-ui-tabSelectWidget-framed .oo-ui-tabOptionWidget.oo-ui-optionWidget-selected {
background-color: var(--body-dark);
color: var(--ooui-text);
}
.oo-ui-tabSelectWidget-framed .oo-ui-tabOptionWidget.oo-ui-optionWidget-selected .oo-ui-labelElement-label {
border-bottom-color: var(--body-border);
}
.oo-ui-tabSelectWidget-framed .oo-ui-tabOptionWidget.oo-ui-widget-enabled:hover,
.oo-ui-tabSelectWidget-framed .oo-ui-tabOptionWidget.oo-ui-widget-enabled:active {
background-color: var(--body-light);
color: var(--ooui-text);
}
.oo-ui-tabSelectWidget-framed .oo-ui-tabOptionWidget.oo-ui-widget-enabled.oo-ui-optionWidget-selected:hover {
background-color: var(--body-dark);
}
.oo-ui-tabSelectWidget-frameless .oo-ui-tabOptionWidget.oo-ui-optionWidget-selected {
color: var(--ooui-progressive);
box-shadow: inset 0 -2px 0 0 var(--ooui-progressive);
}
.oo-ui-tabSelectWidget-frameless .oo-ui-tabOptionWidget.oo-ui-optionWidget-selected:hover,
.oo-ui-tabSelectWidget-frameless .oo-ui-tabOptionWidget.oo-ui-optionWidget-selected:focus {
color: var(--ooui-progressive--hover);
box-shadow: inset 0 -2px 0 0 var(--ooui-progressive--hover);
}
.oo-ui-tabSelectWidget-framed {
background: none;
border-bottom: 1px solid var(--ooui-interface-border);
}
.oo-ui-tabSelectWidget-frameless {
box-shadow: inset 0 -1px 0 0 var(--ooui-interface-border);
}
.oo-ui-tabSelectWidget-mobile {
}
.oo-ui-tabSelectWidget-mobile.oo-ui-tabSelectWidget-framed:after {
background: var(--mobile-navbox-linear-gradient);
}
.oo-ui-tabSelectWidget-mobile.oo-ui-tabSelectWidget-frameless:after {
background: var(--mobile-navbox-linear-gradient);
}
.oo-ui-tagItemWidget {
border-color: var(--ooui-normal-border);
}
.oo-ui-tagItemWidget.oo-ui-widget-enabled {
color: var(--ooui-text);
}
.oo-ui-tagItemWidget.oo-ui-widget-enabled:hover {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
}
.oo-ui-tagItemWidget.oo-ui-widget-enabled:not( .oo-ui-tagItemWidget-fixed ) {
background-color: var(--ooui-normal);
}
.oo-ui-tagItemWidget.oo-ui-widget-enabled .oo-ui-buttonElement-button:hover {
background-color: var(--ooui-normal--hover);
}
.oo-ui-tagMultiselectWidget.oo-ui-widget-enabled {
background-color: var(--ooui-interface);
}
.oo-ui-tagMultiselectWidget.oo-ui-widget-enabled.oo-ui-tagMultiselectWidget-outlined {
background-color: var(--ooui-normal);
}
.oo-ui-tagMultiselectWidget.oo-ui-widget-enabled.oo-ui-tagMultiselectWidget-outlined .oo-ui-tagItemWidget.oo-ui-widget-enabled {
background-color: var(--ooui-interface);
}
.oo-ui-textInputWidget .oo-ui-inputWidget-input {
background-color: var(--ooui-input);
color: var(--ooui-text);
border-color: var(--ooui-input-border);
}
.oo-ui-textInputWidget.oo-ui-widget-enabled .oo-ui-inputWidget-input::placeholder {
color: var(--subtle-color);
}
.oo-ui-textInputWidget.oo-ui-widget-enabled .oo-ui-inputWidget-input:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-textInputWidget.oo-ui-widget-enabled .oo-ui-inputWidget-input[readonly]:not(.oo-ui-pendingElement-pending) {
background-color: var(--ooui-disabled);
color: var(--ooui-disabled-text);
}
.oo-ui-textInputWidget.oo-ui-widget-enabled:hover .oo-ui-inputWidget-input {
border-color: var(--ooui-input-border--hover);
}
.oo-ui-textInputWidget.oo-ui-widget-enabled:hover .oo-ui-inputWidget-input:focus {
border-color: var(--ooui-accent);
}
@media screen and (min-width: 0) {
.oo-ui-textInputWidget.oo-ui-widget-enabled textarea.oo-ui-inputWidget-input:focus {
outline: 1px solid var(--ooui-accent);
}
}
.oo-ui-textInputWidget.oo-ui-widget-disabled .oo-ui-inputWidget-input {
background-color: var(--ooui-disabled);
color: var(--ooui-disabled-text);
text-shadow: none;
border-color: var(--ooui-disabled-border);
}
.oo-ui-toggleSwitchWidget {
background-color: var(--ooui-input);
border-color: var(--ooui-input-border);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled .oo-ui-toggleSwitchWidget-grip {
background-color: var(--ooui-input);
border-color: var(--ooui-input-border);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:hover {
background-color: var(--ooui-input);
border-color: var(--ooui-accent);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:hover .oo-ui-toggleSwitchWidget-grip {
background-color: var(--ooui-input);
border-color: var(--ooui-accent);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:active,
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:active:hover,
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:active:focus {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
box-shadow: inset 0 0 0 1px var(--ooui-progressive--hover);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:active .oo-ui-toggleSwitchWidget-grip,
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:active:hover .oo-ui-toggleSwitchWidget-grip,
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:active:focus .oo-ui-toggleSwitchWidget-grip {
background-color: var(--ooui-input);
border-color: var(--ooui-input);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:focus .oo-ui-toggleSwitchWidget-grip {
border-color: var(--ooui-accent);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled.oo-ui-toggleWidget-on {
background-color: var(--ooui-progressive);
border-color: var(--ooui-progressive);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled.oo-ui-toggleWidget-on .oo-ui-toggleSwitchWidget-grip {
background-color: var(--ooui-input);
border-color: var(--ooui-input);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled.oo-ui-toggleWidget-on:hover {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled.oo-ui-toggleWidget-on:active,
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled.oo-ui-toggleWidget-on:active:hover {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled.oo-ui-toggleWidget-on:focus {
border-color: var(--ooui-progressive);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled.oo-ui-toggleWidget-on:focus::before {
border-color: #fff;
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-disabled {
background-color: var(--ooui-disabled);
border-color: var(--ooui-disabled);
}
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled > .oo-ui-buttonElement-button {
color: var(--ooui-text);
}
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled > .oo-ui-buttonElement-button:hover {
color: var(--ooui-text);
}
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled > .oo-ui-buttonElement-button:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled.oo-ui-buttonElement-pressed > input.oo-ui-buttonElement-button,
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled > .oo-ui-buttonElement-button:active {
color: var(--ooui-text);
}
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button,
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button:hover {
color: var(--ooui-text);
}
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button:active,
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive.oo-ui-buttonElement-pressed > .oo-ui-buttonElement-button {
color: var(--ooui-text);
border-color: var(--ooui-text);
}
.oo-ui-buttonElement-frameless.oo-ui-widget-disabled > .oo-ui-buttonElement-button {
color: var(--ooui-disabled-text);
}
.oo-ui-buttonElement-framed.oo-ui-widget-disabled > .oo-ui-buttonElement-button {
background-color: var(--ooui-disabled);
border-color: var(--ooui-disabled-border);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled > .oo-ui-buttonElement-button {
background-color: var(--ooui-normal);
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled > .oo-ui-buttonElement-button:hover {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled > .oo-ui-buttonElement-button:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-buttonElement-active > .oo-ui-buttonElement-button {
background-color: var(--ooui-progressive--hover);
color: #fff;
border-color: var(--ooui-progressive--hover);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-buttonElement-active > .oo-ui-buttonElement-button:focus {
border-color: var(--ooui-progressive--hover);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled > .oo-ui-buttonElement-button:active,
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-buttonElement-pressed > .oo-ui-buttonElement-button {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive {
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button {
color: var(--ooui-text);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button:hover {
background-color: var(--ooui-normal--hover);
border-color: var(--ooui-progressive--hover);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-destructive > .oo-ui-buttonElement-button {
color: var(--ooui-text);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-destructive > .oo-ui-buttonElement-button:hover {
background-color: var(--ooui-normal--hover);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button {
background-color: var(--ooui-progressive);
border-color: var(--ooui-progressive);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button:hover {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent), inset 0 0 0 2px #fff;
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button:active,
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive.oo-ui-buttonElement-pressed > .oo-ui-buttonElement-button,
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive.oo-ui-buttonElement-active > .oo-ui-buttonElement-button,
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive.oo-ui-popupToolGroup-active > .oo-ui-buttonElement-button {
color: #fff;
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
}
.oo-ui-pendingElement-pending {
background-image: var(--ooui-pending-background-image);
background-size: 200%;
animation: oo-ui-pendingElement-stripes 6s linear infinite;
}
@keyframes oo-ui-pendingElement-stripes {
100% {
background-position: 100%;
}
}
.oo-ui-messageDialog-content > .oo-ui-window-foot {
outline-color: var(--ooui-interface-border);
}
.oo-ui-messageDialog-message {
color: var(--ooui-text);
}
.oo-ui-messageDialog-actions-horizontal .oo-ui-actionWidget {
border-right-color: var(--ooui-interface-border);
}
.oo-ui-messageDialog-actions-vertical .oo-ui-actionWidget {
border-bottom-color: var(--ooui-interface-border);
}
.oo-ui-processDialog-content .oo-ui-window-head,
.oo-ui-processDialog-content .oo-ui-window-foot {
outline-color: var(--ooui-interface-border);
}
.oo-ui-processDialog .oo-ui-actionWidget > .oo-ui-buttonElement-button {
border-top-color: transparent;
border-bottom-color: transparent;
}
.oo-ui-processDialog .oo-ui-actionWidget > .oo-ui-buttonElement-button:hover,
.oo-ui-processDialog .oo-ui-actionWidget > .oo-ui-buttonElement-button:active {
border-top-color: transparent;
border-bottom-color: transparent;
}
.oo-ui-processDialog .oo-ui-actionWidget:not( .oo-ui-flaggedElement-progressive ):not( .oo-ui-flaggedElement-destructive ) > .oo-ui-buttonElement-button:hover,
.oo-ui-processDialog .oo-ui-actionWidget:not( .oo-ui-flaggedElement-progressive ):not( .oo-ui-flaggedElement-destructive ) > .oo-ui-buttonElement-button:active {
border-right-color: var(--ooui-interface-border);
border-left-color: transparent;
}
.oo-ui-processDialog .oo-ui-actionWidget:not( .oo-ui-flaggedElement-progressive ):not( .oo-ui-flaggedElement-destructive ) > .oo-ui-buttonElement-button:focus {
border-color: var(--ooui-accent);
}
.oo-ui-processDialog-actions-safe .oo-ui-actionWidget > .oo-ui-buttonElement-button,
.oo-ui-processDialog-actions-other .oo-ui-actionWidget > .oo-ui-buttonElement-button {
border-right-color: var(--ooui-normal-border);
border-left-color: transparent;
}
.oo-ui-processDialog-actions-safe .oo-ui-widget-enabled.oo-ui-iconElement:not( .oo-ui-labelElement ) > .oo-ui-buttonElement-button:hover {
background-color: var(--ooui-normal--hover);
border-right-color: var(--ooui-interface-border);
}
.oo-ui-windowManager-modal > .oo-ui-dialog {
background-color: var(--ooui-window-background);
}
.oo-ui-windowManager-modal > .oo-ui-dialog > .oo-ui-window-frame {
background-color: var(--ooui-interface);
}
.oo-ui-windowManager-modal.oo-ui-windowManager-floating > .oo-ui-dialog > .oo-ui-window-frame {
border-color: var(--ooui-interface-border);
}
.oo-ui-window {
color: var(--ooui-text);
}
.oo-ui-toolbar-bar {
background-color: var(--ooui-interface);
color: var(--ooui-text);
}
.oo-ui-toolbar-position-top > .oo-ui-toolbar-bar {
border-bottom-color: var(--body-mid);
}
.oo-ui-toolbar-bar .oo-ui-bookletLayout > .oo-ui-menuLayout-menu {
border-right-color: var(--body-mid);
}
.oo-ui-tool.oo-ui-widget-enabled > .oo-ui-tool-link:hover {
background-color: var(--ooui-normal--hover);
}
.oo-ui-tool.oo-ui-widget-enabled > .oo-ui-tool-link:focus {
outline: 1px solid var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-tool.oo-ui-widget-enabled > .oo-ui-tool-link:active,
.oo-ui-tool.oo-ui-widget-enabled.oo-ui-tool-active > .oo-ui-tool-link,
.oo-ui-tool.oo-ui-widget-enabled.oo-ui-popupToolGroup-active > .oo-ui-tool-link {
background-color: var(--ooui-normal--hover);
color: var(--ooui-accent);
box-shadow: none;
}
.oo-ui-tool.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive > .oo-ui-tool-link {
background-color: var(--ooui-progressive);
}
.oo-ui-tool.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive > .oo-ui-tool-link:hover {
background-color: var(--ooui-progressive--hover);
}
.oo-ui-tool.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive > .oo-ui-tool-link:focus {
box-shadow: inset 0 0 0 1px var(--ooui-accent), inset 0 0 0 2px #fff;
}
.oo-ui-tool.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive > .oo-ui-tool-link:active,
.oo-ui-tool.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive.oo-ui-tool-active > .oo-ui-tool-link {
background-color: var(--ooui-progressive--hover);
}
.oo-ui-listToolGroup-tools .oo-ui-tool.oo-ui-widget-enabled {
background-color: var(--ooui-normal);
}
.oo-ui-listToolGroup-tools .oo-ui-tool.oo-ui-widget-enabled:hover {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
}
.oo-ui-listToolGroup-tools .oo-ui-tool-active.oo-ui-widget-enabled .oo-ui-tool-link .oo-ui-tool-title {
color: var(--ooui-progressive);
}
.oo-ui-menuToolGroup {
border-left-color: var(--body-mid);
border-right-color: var(--body-mid);
}
.oo-ui-popupToolGroup-tools {
background-color: var(--ooui-interface);
border-color: var(--body-mid);
}
.oo-ui-popupToolGroup.oo-ui-widget-enabled > .oo-ui-popupToolGroup-handle:hover {
background-color: var(--ooui-normal--hover);
}
.oo-ui-popupToolGroup.oo-ui-widget-enabled > .oo-ui-popupToolGroup-handle:focus {
outline: 1px solid var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-toolbar-actions .oo-ui-popupToolGroup.oo-ui-widget-enabled > .oo-ui-popupToolGroup-handle:hover {
border-right-color: var(--ooui-normal--hover);
}
.oo-ui-popupToolGroup-tools .oo-ui-tool.oo-ui-widget-enabled .oo-ui-tool-link:focus {
box-shadow: inset 0 0 0 2px var(--ooui-accent);
}
.oo-ui-popupToolGroup-tools .oo-ui-tool-active.oo-ui-widget-enabled .oo-ui-tool-link .oo-ui-tool-title {
color: var(--ooui-progressive);
}
.oo-ui-popupToolGroup.oo-ui-popupToolGroup-active > .oo-ui-popupToolGroup-handle {
background-color: var(--ooui-normal);
color: var(--ooui-accent);
}
.oo-ui-popupToolGroup.oo-ui-popupToolGroup-active > .oo-ui-popupToolGroup-handle:hover {
background-color: var(--ooui-normal--hover);
color: var(--ooui-accent);
}
.oo-ui-bookletLayout-outlinePanel > .oo-ui-outlineControlsWidget {
border-top-color: var(--ooui-interface-border);
}
.oo-ui-bookletLayout > .oo-ui-menuLayout-menu {
border-right-color: var(--ooui-interface-border);
}
.oo-ui-fieldLayout-disabled > .oo-ui-fieldLayout-body > .oo-ui-fieldLayout-header > .oo-ui-labelElement-label {
color: var(--ooui-disabled-text);
}
.oo-ui-panelLayout-framed {
border-color: var(--sidebar);
}
.oo-ui-icon-settings {
background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' width='20' height='20' viewBox='0 0 20 20'%3E%3Ctitle%3Esettings%3C/title%3E%3Cg transform='translate(10 10)'%3E%3Cpath id='a' d='M1.5-10h-3l-1 6.5h5m0 7h-5l1 6.5h3'/%3E%3Cuse xlink:href='%23a' transform='rotate(45)'/%3E%3Cuse xlink:href='%23a' transform='rotate(90)'/%3E%3Cuse xlink:href='%23a' transform='rotate(135)'/%3E%3C/g%3E%3Cpath d='M10 2.5a7.5 7.5 0 0 0 0 15 7.5 7.5 0 0 0 0-15v4a3.5 3.5 0 0 1 0 7 3.5 3.5 0 0 1 0-7'/%3E%3C/svg%3E");
}
.oo-ui-icon-clear {
background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 20 20'%3E%3Ctitle%3Eclear%3C/title%3E%3Cpath d='M10 0a10 10 0 1 0 10 10A10 10 0 0 0 10 0zm5.66 14.24-1.41 1.41L10 11.41l-4.24 4.25-1.42-1.42L8.59 10 4.34 5.76l1.42-1.42L10 8.59l4.24-4.24 1.41 1.41L11.41 10z'/%3E%3C/svg%3E");
}
.mw-widget-dateInputWidget-handle {
background-color: var(--ooui-input);
color: var(--ooui-text);
border-color: var(--ooui-input-border);
}
.mw-widget-dateInputWidget-calendar {
background-color: var(--ooui-interface);
}
.mw-widget-dateInputWidget.oo-ui-widget-enabled .mw-widget-dateInputWidget-handle:hover {
border-color: var(--ooui-input-border--hover);
}
.mw-widget-calendarWidget {
border-color: var(--ooui-interface-border);
}
.mw-widget-calendarWidget:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.mw-widget-calendarWidget-day,
.mw-widget-calendarWidget-day-heading {
color: var(--ooui-text);
}
.mw-widget-calendarWidget-day-additional {
color: var(--ooui-text);
opacity: 0.67;
}
.mw-widget-calendarWidget-day-today {
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.mw-widget-calendarWidget-item:hover {
background-color: var(--ooui-progressive);
}
.mw-widget-calendarWidget-item-selected {
background-color: var(--ooui-progressive--hover);
}
.mw-widgets-datetime-calendarWidget {
background-color: var(--ooui-interface);
border-color: var(--ooui-interface-border);
}
.mw-widgets-datetime-calendarWidget:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent), 0 2px 2px 0 rgba(0, 0, 0, 0.25);
}
.mw-widgets-datetime-calendarWidget-grid .mw-widgets-datetime-calendarWidget-cell.mw-widgets-datetime-calendarWidget-extra .oo-ui-buttonElement-button .oo-ui-labelElement-label {
color: var(--subtle-color);
}
.mw-widgets-datetime-calendarWidget-grid .mw-widgets-datetime-calendarWidget-cell.mw-widgets-datetime-calendarWidget-selected .oo-ui-buttonElement-button {
background-color: var(--ooui-progressive--hover);
}
.mw-widgets-datetime-dateTimeInputWidget-handle {
background-color: var(--ooui-input);
color: var(--ooui-text);
border-color: var(--ooui-input-border);
}
.mw-widgets-datetime-dateTimeInputWidget.oo-ui-widget-enabled.mw-widgets-datetime-dateTimeInputWidget-handle:hover {
border-color: var(--ooui-input-border--hover);
}
.mw-widgets-datetime-dateTimeInputWidget.oo-ui-widget-enabled:hover input,
.mw-widgets-datetime-dateTimeInputWidget.oo-ui-widget-enabled:hover textarea {
border-color: var(--ooui-input-border--hover);
}
.mw-widgets-datetime-dateTimeInputWidget.oo-ui-widget-enabled .mw-widgets-datetime-dateTimeInputWidget-editField:hover {
background-color: var(--ooui-normal);
}
.ve-activated .ve-init-mw-desktopArticleTarget-originalContent #catlinks:hover {
background: var(--ooui-normal--hover);
}
.ve-ui-overlay {
font-family: inherit;
}
.oo-ui-toolbar-position-top .ve-ui-toolbarDialog-position-above {
border-top-color: var(--body-mid);
}
.ve-ce-branchNode-blockSlug,
.ve-ce-branchNode-newSlug {
outline-color: var(--body-border);
background-color: var(--ooui-interface);
}
.ve-ui-specialCharacterPage h3 {
color: var(--byline-color);
}
.ve-ui-specialCharacterPage-character {
border-color: var(--body-mid);
}
.ve-ui-specialCharacterPage-character:hover {
border-color: var(--body-dark);
}
.ve-ce-linkAnnotation.ve-ce-annotation-active {
box-shadow: 0 0 0 1px var(--body-mid);
background: none;
}
.ve-ui-desktopContext .ve-ui-linkContextItem .ve-ui-linkContextItem-label {
border-color: var(--body-border);
}
.ve-ui-mwHelpPopupTool-version-label,
.ve-ui-mwHelpPopupTool-version-link,
.ve-ui-mwHelpPopupTool-version-date {
color: var(--byline-color);
}
.ve-ce-tableCellableNode {
border-color: var(--body-mid);
}
.ve-ce-mwReferencesListNode-muted {
color: var(--byline-color);
}
.ve-ui-mwTemplatePage-description,
.ve-ui-mwParameterPage-label,
.ve-ui-mwParameterPage-description-required,
.ve-ui-mwParameterPage-description-deprecated {
color: var(--byline-color);
}
.mw-widget-titleWidget-menu .mw-widget-titleOptionWidget-description {
color: var(--byline-color);
}
.ve-ui-mwGalleryDialog-menuLayout > .oo-ui-menuLayout-menu,
.ve-ui-mwGalleryDialog-innerMenuLayout > .oo-ui-menuLayout-menu,
.ve-ui-mwGalleryDialog .ve-ui-mwGalleryDialog-image-container,
.ve-ui-targetWidget {
border-color: var(--body-border);
}
.ve-ui-targetWidget:not(.oo-ui-pendingElement-pending) {
background-color: var(--body-main);
}
.ve-ui-mwSaveDialog {
color: var(--ooui-text);
}
.ve-ui-mwSaveDialog-options {
background-color: var(--ooui-interface);
border-color: var(--body-border);
}
.ve-ui-mwSaveDialog-summary {
background-color: var(--ooui-input);
}
.ve-ui-mwSaveDialog-editSummary-count {
border-color: var(--body-border);
}
.ve-ui-mwSaveDialog-license {
color: var(--byline-color);
}
.ve-ui-mwReferenceContextItem-muted {
color: var(--byline-color);
}
.ve-ui-mwNoticesPopupTool-items > div:not(:first-child),
.ve-ui-mwHelpPopupTool-item:not(:first-child) {
border-color: var(--body-border);
}
.ve-ui-mwTransclusionOutlineControlsWidget {
background-color: var(--ooui-interface);
border-top-color: var(--body-border);
}
.ve-ui-mwTransclusionOutlineTemplateWidget-sticky {
background-color: var(--ooui-interface);
}
.ve-ui-mwTransclusionOutlineTemplateWidget .ve-ui-mwTransclusionOutlineParameterWidget.oo-ui-optionWidget-highlighted {
color: var(--ooui-text);
}
.ve-ui-mwTransclusionOutlineTemplateWidget-no-template-parameters {
color: var(--subtle-color);
}
.ve-ui-mwParameterPage-undocumentedLabel {
color: var(--subtle-color);
}
.ve-ui-mwTwoPaneTransclusionDialogLayout > .oo-ui-menuLayout-menu {
border-right: var(--body-border);
}
.ve-ui-mwParameterPage-doc-required,
.ve-ui-mwParameterPage-doc-deprecated,
.ve-ui-mwParameterPage-inlineDescription .ve-ui-mwParameterPage-doc-example {
color: var(--byline-color);
}
.ve-ui-expandableContent-toggle {
background-color: var(--ooui-interface);
}
.ve-ui-expandableContent-fade {
background: linear-gradient(to right, rgba(255, 255, 255, 0) 0, var(--ooui-interface) 90%);
}
.ve-ui-commandHelpDialog-shortcut > kbd,
.ve-ui-commandHelpDialog-sequence > kbd {
background-color: var(--keypress-background);
color: var(--keypress-color);
border-color: var(--keypress-border);
box-shadow: none;
text-shadow: none;
}
.ve-init-mw-desktopArticleTarget-toolbarPlaceholder-floating .ve-init-mw-desktopArticleTarget-toolbarPlaceholder-bar {
background: var(--ooui-interface);
}
.ve-init-mw-desktopArticleTarget-toolbarPlaceholder-bar {
border-bottom-color: var(--body-mid);
}
figure[typeof~='mw:File/Thumb'],
figure[typeof~='mw:File/Frame'],
figure[typeof~='mw:Image/Thumb'],
figure[typeof~='mw:Video/Thumb'],
figure[typeof~='mw:Image/Frame'],
figure[typeof~='mw:Video/Frame'] {
border: none;
background-color: var(--thumb-bg);
}
figure[typeof~='mw:File/Thumb'] > a:first-child > *:first-child:not( .mw-broken-media ),
figure[typeof~='mw:File/Frame'] > a:first-child > *:first-child:not( .mw-broken-media ),
figure[typeof~='mw:Image/Thumb'] > a:first-child > *:first-child:not( .mw-broken-media ),
figure[typeof~='mw:Video/Thumb'] > a:first-child > *:first-child:not( .mw-broken-media ),
figure[typeof~='mw:Image/Frame'] > a:first-child > *:first-child:not( .mw-broken-media ),
figure[typeof~='mw:Video/Frame'] > a:first-child > *:first-child:not( .mw-broken-media ) {
border: none;
background: var(--thumb-bg);
}
figure[typeof~='mw:File/Thumb'] > figcaption,
figure[typeof~='mw:File/Frame'] > figcaption,
figure[typeof~='mw:Image/Thumb'] > figcaption,
figure[typeof~='mw:Video/Thumb'] > figcaption,
figure[typeof~='mw:Image/Frame'] > figcaption,
figure[typeof~='mw:Video/Frame'] > figcaption {
border: none;
background-color: var(--thumb-caption-bg);
padding: 4px 6px;
}
:root {
--keypress-background: #eee;
--keypress-border: #ccc;
--keypress-color: #333;
}
.toc .toctitle > * {
color: #fff;
}
.navbox .navbox-title {
color: #fff;
}
.navbox .navbox-list:not(last-child) {
border-bottom: none;
}
.archivelist {
background-color: var(--body-light);
border: solid 1px var(--body-border);
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
float: right;
margin: 5px;
padding: 5px;
text-align: center;
width: 120px;
}
.shortcut {
border: 1px solid var(--body-border);
background: var(--body-light);
float: right;
font-size: 0.8em;
margin: 0.5em 0em 0.5em 1em;
padding: 0.5em;
text-align: center;
}
.hatnote,
.seealso {
font-style: italic;
}
.hatnote i,
.seealso i {
font-style: normal;
}
div.hatnote,
div.seealso {
margin: 0.5em 1.6em;
}
div.hatnote + div.hatnote,
div.hatnote + div.seealso,
div.seealso + div.hatnote,
div.seealso + div.seealso {
margin-top: -0.5em;
}
.keypress {
background: var(--keypress-background);
color: var(--keypress-color);
font-family: inherit;
border: 1px solid var(--keypress-border);
border-radius: 2px;
font-size: 0.9em;
margin: 0 0.1em;
padding: 0.1em 0.4em;
white-space: nowrap;
}
:root {
--documentation-background: #f9fafa;
--documentation-link-color: #e4eaee;
--documentation-headers-color: #fff;
--documentation-header-background: #949eaa;
--documentation-subheader-background: #808c9a;
--documentation-border: #e4eaee;
}
.documentation {
background: var(--documentation-background);
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
margin: 1em 0;
}
.documentation pre,
.documentation code {
background-color: var(--documentation-background);
border-color: var(--documentation-border);
}
.documentation h2,
.documentation hr {
border-color: var(--documentation-border);
}
.documentation-header {
color: var(--documentation-headers-color);
background: var(--documentation-header-background);
font-weight: bold;
padding: 1em 1.5em;
}
.documentation-title {
font-size: 1.25em;
}
.documentation-subheader {
color: var(--documentation-headers-color);
background: var(--documentation-subheader-background);
padding: 0.5em 1.5em;
}
.documentation-subheader a,
.documentation-subheader a:visited,
.documentation-subheader a:active {
color: var(--documentation-link-color);
}
.documentation-documentation,
.documentation-links {
font-size: 0.85em;
}
.documentation-content {
padding: 1em 1.5em;
}
.mw-templatedata-doc-params dl:not(:empty) {
column-count: 3;
border-top: 1px solid var(--body-border);
margin-bottom: 0.5em;
}
.mw-templatedata-doc-params dt::after {
content: ":";
}
.mw-templatedata-doc-params dd,
.mw-templatedata-doc-params dt {
margin: 0.1em 2em;
min-width: auto;
}
.mw-templatedata-doc-muted {
color: var(--subtle-color);
font-style: italic;
}
:root {
--infobox-text-color: var(--text-color);
--table-header: var(--body-dark);
--table-subheader: var(--body-mid);
--table-body: var(--body-light);
--table-border: var(--body-border);
}
.infobox {
font-size: 0.85em;
width: 300px;
border-collapse: collapse;
float: right;
table-layout: fixed;
margin: 0.5em 0 1em 1em;
}
.infobox .infobox-buttons {
display: flex;
flex-wrap: wrap;
justify-content: center;
grid-gap: 3px;
margin-bottom: 3px;
}
.infobox .infobox-buttons .button {
background: var(--table-header);
padding: 0 5px;
font-weight: bold;
flex: 1 1 20%;
max-width: 20%;
color: #fff;
}
.infobox tbody {
border: 1px solid var(--table-border);
background: var(--table-body);
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(231, 215, 199, 0.5);
}
.infobox .infobox-header {
background: var(--table-header);
padding: 0.5em 0;
text-align: center;
color: #fff;
font-size: 1.15em;
font-weight: bold;
line-height: 1.4em;
}
.infobox .infobox-image {
text-align: center;
}
.infobox .infobox-subheader {
background: var(--table-subheader);
font-weight: bold;
text-align: center;
color: #fff;
}
.infobox .infobox-padding {
backgound: var(--table-body);
}
.infobox tr td:not(.infobox-padding) {
padding: 0.2em 0.5em;
}
.infobox th:not(.infobox-header):not(.infobox-subheader):not(.infobox-nested) {
border-right: 2px solid var(--table-subheader);
text-align: right;
padding: 0.2em 0.5em;
}
.hidden {
display: none;
}
ol.references,
.reflist {
font-size: 90%;
}
.reflist {
list-style-type: decimal;
}
.reflist .references {
font-size: 100%;
list-style-type: inherit;
}
.reflist-lower-alpha {
list-style-type: lower-alpha;
}
ol.references li:target,
sup.reference:target {
background-color: var(--body-light);
}
.hideQuotes .refhide {
display: none;
}
:root {
--messagebox-obsolete-background: #cfcfcf;
--messagebox-obsolete-border: #464646;
--messagebox-obsolete-color: var(--text-color);
--messagebox-obsolete-link-color: #6c6c6c;
--messagebox-info-background: #ebebeb;
--messagebox-info-border: #898989;
--messagebox-info-color: var(--text-color);
--messagebox-info-link-color: #6c6c6c;
--messagebox-action-background: #c7e8fa;
--messagebox-action-border: #0b5884;
--messagebox-action-color: var(--text-color);
--messagebox-action-link-color: #03436b;
--messagebox-warn-background: #dfc0ba;
--messagebox-warn-border: #861c10;
--messagebox-warn-color: var(--text-color);
--messagebox-warn-link-color: #8e221a;
--messagebox-safe-background: #d8f0d3;
--messagebox-safe-border: #1b8408;
--messagebox-safe-color: var(--text-color);
--messagebox-safe-link-color: #1b8408;
--messagebox-disambig-background: #ebebeb;
--messagebox-disambig-border: #898989;
--messagebox-disambig-color: var(--text-color);
--messagebox-disambig-link-color: #6c6c6c;
--messagebox-discord-background: #5865f2;
--messagebox-discord-border: #4c57d0;
--messagebox-discord-link-color: #d2e5fc;
}
.mw-message-box,
.mw-message-box-error,
.mw-message-box-warning,
.mw-message-box-success,
.usermessage {
color: var(--text-color);
}
.messagebox {
width: 65%;
margin: 0.5em auto;
border-left: 15px solid;
border-color: var(--body-dark);
background-color: var(--body-light);
box-sizing: border-box;
}
.messagebox.obsolete {
background-color: var(--messagebox-obsolete-background);
border-color: var(--messagebox-obsolete-border);
color: var(--messagebox-obsolete-color);
}
.messagebox.obsolete a,
.messagebox.obsolete a:visited,
.messagebox.obsolete a:active {
color: var(--messagebox-obsolete-link-color);
}
.messagebox.info {
background-color: var(--messagebox-info-background);
border-color: var(--messagebox-info-border);
color: var(--messagebox-info-color);
}
.messagebox.info a,
.messagebox.info a:visited,
.messagebox.info a:active {
color: var(--messagebox-info-link-color);
}
.messagebox.action {
background-color: var(--messagebox-action-background);
border-color: var(--messagebox-action-border);
color: var(--messagebox-action-color);
}
.messagebox.action a,
.messagebox.action a:visited,
.messagebox.action a:active {
color: var(--messagebox-action-link-color);
}
.messagebox.warn {
background-color: var(--messagebox-warn-background);
border-color: var(--messagebox-warn-border);
color: var(--messagebox-warn-color);
}
.messagebox.warn a,
.messagebox.warn a:visited,
.messagebox.warn a:active {
color: var(--messagebox-warn-link-color);
}
.messagebox.safe {
background-color: var(--messagebox-safe-background);
border-color: var(--messagebox-safe-border);
color: var(--messagebox-safe-color);
}
.messagebox.safe a,
.messagebox.safe a:visited,
.messagebox.safe a:active {
color: var(--messagebox-safe-link-color);
}
.messagebox.disambig {
background-color: var(--messagebox-disambig-background);
border-color: var(--messagebox-disambig-border);
color: var(--messagebox-disambig-color);
}
.messagebox.disambig a,
.messagebox.disambig a:visited,
.messagebox.disambig a:active {
color: var(--messagebox-disambig-link-color);
}
.messagebox.discord {
background-color: var(--messagebox-discord-background);
border-color: var(--messagebox-discord-border);
color: #fff;
}
.messagebox.discord a,
.messagebox.discord a:visited,
.messagebox.discord a:active {
color: var(--messagebox-discord-link-color);
}
.messagebox.discord a.external,
.messagebox.discord a:visited.external,
.messagebox.discord a:active.external {
font-style: italic;
}
.messagebox.stub {
width: 40%;
}
.messagebox.hasdialogue {
padding: 0 10px;
width: auto;
}
:root {
--byline-arrow-filter: invert(29%) sepia(0%) saturate(376%) hue-rotate(172deg) brightness(87%) contrast(80%);
--tile-border-color: var(--body-border);
--tile-background-color: var(--body-light);
--tile-link-button-color: #f5e9db;
--tile-link-button-highlight-color: #dfccb0;
--tile-dark-color: #fff;
--tile-dark-bg: var(--body-dark);
--tile-dark-link-color: #ccc;
--tile-dark-byline-color: rgba(255, 255, 255, 0.7);
--tile-dark-header-color: #fff;
}
.tile {
background: var(--tile-background-color);
border: 1px solid var(--tile-border-color);
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
padding: 1.5em 2em 1em;
max-width: 40em;
}
.tile h2 {
font-size: 1.4em;
font-weight: bold;
border: none;
margin: 0 0 0.4em;
}
.tile .byline + h2 {
margin-top: -0.5em;
}
.tile.dark {
color: var(--tile-dark-color);
background: var(--tile-dark-bg);
border: none;
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.3);
}
.tile.dark h2 {
color: var(--tile-dark-header-color);
}
.tile.dark a {
color: var(--tile-dark-link-color);
}
.tile.dark .byline {
color: var(--tile-dark-byline-color);
}
.byline {
font-size: 0.9em;
color: var(--byline-color);
}
.byline a {
color: var(--byline-color);
}
.tile-row {
display: flex;
flex-flow: row wrap;
margin-bottom: 1em;
}
.tile-halves {
display: flex;
flex-flow: row wrap;
background: var(--tile-background-color);
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
}
.tile-halves h2 {
font-size: 1.4em;
font-weight: bold;
border: none;
margin: 0 0 0.4em;
}
.tile-halves .byline + h2 {
margin-top: -0.5em;
}
.tile-top {
width: 100%;
padding: 1.3rem 1.5rem 0.6rem;
}
.tile-top.tile-image {
display: flex;
align-items: center;
background-color: var(--body-light);
overflow: hidden;
padding: 0;
height: 13vw;
max-height: 12em;
transition: 0.4s ease-out;
}
.tile-halves:hover .tile-top.tile-image img {
transform: scale(1.1);
transition: 0.5s ease-out;
}
.tile-top.tile-image a {
width: 100%;
}
.tile-top.tile-image img {
width: 100%;
object-fit: cover;
max-height: 200px;
transition: 0.4s ease-out;
}
.tile-bottom {
background: var(--body-dark);
width: 100%;
padding: 1rem 1.5rem 0.6rem;
}
.tile-bottom h2 a {
color: #fff !important;
}
.tile-bottom.link-button {
align-self: flex-end;
padding: 0;
}
.tile-bottom.link-button a {
display: block;
text-align: center;
padding: 0.75em 1.5em 0.8em;
text-decoration: none;
}
.tile-bottom.read-more {
background: var(--tile-link-button-color);
transition: 0.3s ease-out;
}
.tile-bottom.read-more a {
color: var(--byline-color);
font-weight: bold;
text-align: right;
}
.tile-bottom.read-more:hover {
background: var(--tile-link-button-highlight-color);
}
.tile-bottom.read-more:hover .arrow {
transform: translateX(50%);
}
.tile-bottom.read-more .arrow {
filter: var(--byline-arrow-filter);
margin-left: 0.4em;
transition: 0.3s ease-out;
}
body.page-Main_Page.action-view .catlinks,
body.page-Main_Page.action-view #contentSub,
body.page-Main_Page.action-view #firstHeading,
body.page-Main_Page.action-view #siteNotice {
display: none;
}
body.page-Main_Page .mw-parser-output {
max-width: 75em;
margin: 0 auto;
}
body.page-Main_Page.action-view .catlinks,
body.page-Main_Page.action-view #contentSub,
body.page-Main_Page.action-view #siteNotice {
display: none;
}
.mainpage-header {
display: flex;
margin: 2.6em 1.75em 1.5em;
}
.mainpage-header .header-intro {
flex: 2;
}
.mainpage-header .header-intro h1 {
font-size: 2.5em;
font-weight: bold;
border: none;
margin: 0 0 0.15em;
}
.mainpage-header .header-intro p {
font-size: 1.1em;
line-height: 1.7em;
}
.mainpage-header .header-stats {
flex: 1;
display: flex;
justify-content: center;
align-items: center;
margin-top: -1em;
}
.mainpage-body {
display: grid;
grid-template-areas: "event event event" "update update update" "content content content" "left left right";
gap: 0.9rem;
grid-template-columns: repeat(3, 1fr);
}
.mainpage-body h2 a {
color: var(--text-color);
}
.mainpage-body .tile {
padding-left: 1.75em;
padding-right: 1.75em;
max-width: 100%;
}
.mainpage-body .tile-row {
width: 100%;
margin-bottom: 0;
}
.mainpage-body .tile-row {
display: grid;
gap: 0.9rem;
}
.mainpage-contents.tile-row {
display: flex;
}
.mainpage-contents.tile-row .tile-top {
height: 5.5rem;
}
.mainpage-left {
grid-area: left;
flex: 2;
display: flex;
flex-flow: column wrap;
}
.mainpage-left > * {
margin: 0 0 0.9rem;
}
.mainpage-right {
grid-area: right;
flex: 1;
display: flex;
flex-flow: column wrap;
}
.mainpage-right > * {
margin: 0 0 0.9rem;
}
.arrow {
background: url('filepath://White-chevron.svg') no-repeat;
display: inline-block;
height: 0.7rem;
width: 0.45rem;
vertical-align: middle;
}
.arrow.dark {
filter: invert(80%);
}
.mainpage-contents {
grid-area: content;
grid-template-columns: repeat(6, 1fr);
}
.mainpage-contents .tile-halves {
flex: 1;
}
.mainpage-contents .tile-top {
height: 4.5rem;
position: relative;
}
.mainpage-contents .tile-top.tile-image img {
height: auto;
}
.mainpage-contents h2 {
margin: 0;
padding: 0;
}
.mainpage-contents .tile-bottom.link-button a {
padding: 0.75em 0.2em;
}
.popular-pages ul {
display: grid;
grid-template-columns: repeat(3, 1fr);
grid-gap: 0.6em;
margin: 1em 0 0.7em 0;
}
.mp-popular-page-light {
display: flex;
align-items: center;
background-color: var(--button-background);
transition: 100ms;
}
.mp-popular-page-light a {
flex: 1;
display: block;
color: #fff;
font-weight: bold;
text-align: center;
text-decoration: none;
padding: 0.7em 1em;
}
.mp-popular-page-light:hover {
filter: brightness(115%);
transition: 100ms;
}
.mainpage-social {
border: none;
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.3);
}
.mainpage-social .tile-top {
display: flex;
align-items: center;
padding: 1em 1.5em;
}
.mainpage-social .tile-top a {
flex: 1;
position: relative;
text-decoration: none;
}
.mainpage-social .tile-top a:hover .arrow {
transform: translateX(50%);
}
.mainpage-social .tile-bottom {
border: none;
padding: 1em 1.75em;
}
.mainpage-social .tile-bottom p {
color: #fff;
font-weight: bold;
font-size: 0.9em;
text-align: center;
text-transform: uppercase;
letter-spacing: 0.03em;
margin: 0;
}
.mainpage-social .social-icon {
margin-right: 0.75em;
text-align: center;
width: 60px;
}
.mainpage-social .social-header {
color: #fff;
font-weight: bold;
font-size: 1.15em;
margin: 0.5em 0 -0.15em;
}
.mainpage-social .server-tagline {
color: rgba(255, 255, 255, 0.9);
margin-bottom: 0.5em;
}
.mainpage-social .arrow {
position: absolute;
top: calc(50% - .5em);
right: 0;
height: 1em;
width: 0.7em;
background-size: 0.7em 1em;
transition: 0.3s ease-out;
}
.mainpage-social.mainpage-discord .tile-top {
background: #5865f2;
}
.mainpage-social.mainpage-discord .tile-bottom {
background: #525ee0;
}
.mainpage-social.mainpage-twitter .tile-top {
background: #15202b;
}
.mainpage-social.mainpage-twitter .tile-bottom {
background: #121c26;
}
.mainpage-editing {
border: none;
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.3);
}
.mainpage-editing .tile-top {
background: #438ab5;
}
.mainpage-editing .tile-bottom {
background: #3980ab;
border: none;
padding: 0.8rem 1.5rem 0.4rem;
}
.mainpage-editing h2,
.mainpage-editing a {
color: #fff;
}
.mainpage-editing p {
color: rgba(255, 255, 255, 0.9);
}
.mainpage-editing ul {
list-style-image: url('filepath://Transparent-chevron.svg');
}
@media only screen and (max-width: 1200px) {
.mainpage-contents {
grid-template-columns: repeat(3, 1fr);
}
}
@media only screen and (max-width: 1000px) {
.mainpage-body {
grid-template-areas: "event event event" "update update update" "content content content" "left left left" "right right right";
}
.mainpage-recent-updates {
grid-template-columns: repeat(2, 1fr);
}
.mainpage-recent-updates .tile-halves:last-child {
display: none;
}
.mainpage-recent-updates .tile-halves:hover .tile-top img {
transform: scale(1.04);
}
.mainpage-recent-updates .tile-top {
height: 18vw;
min-height: 9em;
}
.mainpage-header .header-stats {
display: none;
}
.mainpage-left > *:last-child,
.mainpage-right > *:last-child {
margin-bottom: 0;
}
.popular-pages ul {
grid-template-columns: repeat(2, 1fr);
}
}
@media only screen and (max-width: 720px) {
.mainpage-recent-updates {
grid-template-columns: none;
}
.mainpage-recent-updates .tile-halves:last-child {
display: flex;
}
.mainpage-contents {
grid-template-columns: repeat(2, 1fr);
}
}
.mw-prefs-buttons {
background-color: var(--body-main);
border-top-color: var(--body-border);
box-shadow: none;
}
.mw-prefs-tabs-wrapper.oo-ui-panelLayout-framed,
.mw-prefs-tabs > .oo-ui-menuLayout-content > .oo-ui-indexLayout-stackLayout > .oo-ui-tabPanelLayout {
border-color: var(--body-border);
}
.mw-htmlform-ooui .mw-htmlform-matrix tbody tr:nth-child(even) td {
background-color: var(--body-light);
}
.mw-htmlform-ooui .mw-htmlform-matrix tbody tr:hover td {
background-color: var(--body-mid);
}
:root {
--rc-positive-color: #407813;
--rc-negative-color: #b41e0f;
}
.mw-plusminus-pos {
color: var(--rc-positive-color);
}
.mw-plusminus-neg {
color: var(--rc-negative-color);
}
.client-js .mw-recentchanges-toplinks:not(.mw-recentchanges-toplinks-collapsed) {
border-color: var(--body-border);
background-color: var(--body-light);
border-radius: 2px;
}
.mw-rcfilters-ui-filterTagMultiselectWidget-wrapper-content-title {
color: var(--text-color);
}
.mw-rcfilters-ui-filterTagMultiselectWidget-emptyFilters {
color: var(--byline-color);
}
.mw-rcfilters-ui-filterTagMultiselectWidget.oo-ui-widget-enabled .oo-ui-tagMultiselectWidget-handle {
background-color: var(--ooui-interface);
border-color: var(--ooui-interface-border);
}
.mw-rcfilters-ui-filterTagMultiselectWidget-views-select-widget.oo-ui-widget {
border-color: var(--ooui-interface-border);
}
.mw-rcfilters-collapsed .mw-rcfilters-ui-filterTagMultiselectWidget {
border-bottom-color: var(--ooui-interface-border);
}
.mw-rcfilters-ui-menuSelectWidget-footer {
background-color: var(--ooui-interface);
border-color: var(--ooui-interface-border);
}
.mw-rcfilters-ui-viewSwitchWidget label.oo-ui-labelWidget {
color: var(--byline-color);
}
.mw-rcfilters-ui-tagItemWidget-popup-content {
color: var(--ooui-text);
}
.mw-changeslist-legend,
.mw-rcfilters-ui-changesListWrapperWidget .mw-changeslist-legend {
background-color: var(--body-light);
border-color: var(--body-dark);
}
.mw-rcfilters-ui-changesListWrapperWidget-previousChangesIndicator {
border-color: var(--sidebar);
}
.client-js .mw-changeslist ul,
.client-js .mw-changeslist table.mw-enhanced-rc {
margin-left: 0;
}
.mw-rcfilters-ui-watchlistTopSectionWidget-separator {
border-color: var(--sidebar);
}
.mw-rcfilters-ui-itemMenuOptionWidget-header {
border-bottom-color: var(--ooui-interface);
background-color: var(--ooui-interface-border);
}
.mw-rcfilters-ui-itemMenuOptionWidget:not(:last-child):not(.mw-rcfilters-ui-itemMenuOptionWidget-identifier-talk) {
border-bottom-color: var(--ooui-normal-border);
}
.mw-rcfilters-ui-itemMenuOptionWidget-label-title,
.mw-rcfilters-ui-itemMenuOptionWidget-label-desc {
color: var(--text-color);
}
.mw-rcfilters-ui-filterMenuOptionWidget.oo-ui-flaggedElement-muted:not(.oo-ui-optionWidget-selected) {
background-color: var(--body-main);
}
.mw-rcfilters-ui-filterMenuOptionWidget.oo-ui-flaggedElement-muted .mw-rcfilters-ui-itemMenuOptionWidget-label-title,
.mw-rcfilters-ui-filterMenuOptionWidget.oo-ui-flaggedElement-muted .mw-rcfilters-ui-itemMenuOptionWidget-label-desc {
color: var(--subtle-color);
}
.mw-rcfilters-ui-filterMenuSectionOptionWidget {
background-color: var(--body-mid);
}
.mw-rcfilters-ui-filterMenuSectionOptionWidget-header-title.oo-ui-labelElement-label {
color: var(--ooui-text);
}
.mw-rcfilters-ui-filterMenuHeaderWidget-title {
color: var(--ooui-text);
}
.mw-rcfilters-ui-filterMenuHeaderWidget-header {
border-bottom-color: var(--ooui-interface-border);
background-color: var(--ooui-interface);
}
.mw-rcfilters-ui-itemMenuOptionWidget-view-namespaces {
border-top-color: var(--ooui-interface-border);
}
.mw-rcfilters-ui-datePopupWidget {
border-color: var(--ooui-interface-border);
}
.mw-rcfilters-ui-datePopupWidget .mw-rcfilters-ui-valuePickerWidget-title {
color: var(--byline-color);
}
.mw-rcfilters-ui-savedLinksListItemWidget-label {
color: var(--ooui-accent);
}
.client-js .mw-changeslist.mw-rcfilters-ui-changesListWrapperWidget-highlighted ul,
.client-js .mw-changeslist.mw-rcfilters-ui-changesListWrapperWidget-highlighted table.mw-enhanced-rc {
margin-left: 1.5em;
}
.page-Special_CreateAccount .mw-ui-container,
.page-Special_UserLogin .mw-ui-container {
max-width: 64rem;
margin: 0 auto;
}
.mw-number-text {
color: var(--byline-color);
}
.mw-body-content .mw-number-text h3 {
color: var(--text-color);
}
#mw-indicator-mw-helplink a {
background: none;
padding: 0;
display: flex;
align-items: center;
}
#mw-indicator-mw-helplink a::before {
content: '';
margin-right: 5px;
-webkit-mask: url("/resources/src/mediawiki.helplink/images/helpNotice.svg?46d34") no-repeat 50% 50% / contain;
mask: url("/resources/src/mediawiki.helplink/images/helpNotice.svg?46d34") no-repeat 50% 50% / contain;
background: var(--text-color);
height: 20px;
width: 20px;
}
.results-info {
color: inherit;
}
.mw-search-profile-tabs {
background-color: var(--body-mid);
border-color: transparent;
}
.search-types .current a {
color: inherit;
}
#mw-searchoptions {
background-color: var(--body-mid);
border-color: transparent;
}
#mw-searchoptions .divider {
border-color: var(--body-border);
}
#mw-searchoptions h4 {
font-family: inherit;
}
#mw-searchoptions .oo-ui-labelElement:nth-of-type(odd) {
font-weight: bold;
}
.searchresult {
line-height: 1.5;
}
.searchalttitle,
#mw-search-interwiki li {
font-size: 90%;
}
.mw-search-result-data {
color: var(--byline-color);
}
.page-Special_ListFiles a.image img {
width: inherit;
height: inherit;
}
.page-Special_ListFiles .TablePager_col_thumb {
text-align: center;
}
#editcount table[border="1"] {
background-color: var(--body-main) !important;
border-color: var(--wikitable-border) !important;
margin-top: 0.5em;
}
#editcount table[border="1"] th,
#editcount table[border="1"] td {
padding: 0.2em 0.4em;
}
#editcount table[border="1"] th {
background-color: var(--wikitable-header-bg);
border: 1px solid var(--wikitable-border);
}
#editcount table[border="1"] td {
border: 1px solid var(--wikitable-border);
}
#editcount table[border="1"] tr:nth-child(odd) {
background-color: var(--body-light);
}
.mw-echo-ui-notificationBadgeButtonPopupWidget-popup > .oo-ui-popupWidget-popup .mw-echo-ui-placeholderItemWidget {
background-color: inherit;
}
table.mw-interwikitable.body td.mw-interwikitable-local-yes {
background-color: var(--table-yes-background);
color: var(--table-yes-color);
}
.mw-protectedpages-unknown {
color: var(--byline-color);
}
.watchlistredir,
.allpagesredirect {
font-style: italic;
}
.allpagesredirect:after {
color: var(--byline-color);
content: " (redirect)";
}
.mw-apisandbox-toolbar {
background: var(--body-main);
}
.oo-ui-menuOptionWidget .mw-apisandbox-flag {
color: var(--byline-color);
}
tr.mw-abusefilter-list-disabled,
tr.mw-abusefilter-list-disabled td {
color: var(--byline-color);
}
table.mw-abuselog-details {
background: var(--wikitable-bg);
border-color: var(--wikitable-border);
}
table.mw-abuselog-details th {
background: var(--wikitable-header-bg);
}
table.mw-abuselog-details th,
table.mw-abuselog-details td {
border-color: var(--wikitable-border);
}
.mw-abusefilter-log-hidden-entry {
color: var(--subtle-color);
}
body td.mw-abusefilter-history-changed {
background: var(--table-no-background);
}
div.mw-abusefilter-editor,
#mw-abusefilter-warn-preview,
#mw-abusefilter-disallow-preview {
border-color: var(--ooui-input-border);
}
.mw-destfile-warning {
border-color: var(--warningbox-border);
color: var(--text-color);
background-color: var(--warningbox-bg);
}
span.fileinput-button {
background-color: var(--ooui-normal);
border-color: var(--ooui-normal-border);
color: var(--ooui-text);
}
ul.fileupload-results li.ful-success {
background-color: var(--successbox-bg);
}
ul.fileupload-results li.ful-success a {
color: var(--link-color);
}
ul.fileupload-results li.ful-error {
background-color: var(--errorbox-bg);
}
.color-container {
display: flex;
margin: 2em auto;
width: 80%;
max-width: 60em;
}
.color-column {
flex: 1;
margin-right: 1em;
}
.color-column:last-child {
margin-right: 0;
}
.color-column h3 {
padding: 0;
}
.color-group {
color: #333;
padding: 1em 1.5em;
transition: 0.2s ease-out;
}
.color-group:hover {
transform: scale(1.03);
}
.color-group.dark {
color: #fff;
}
.color-group .variable,
.color-group .hexcode {
font-family: monospace;
font-size: 1.1em;
-webkit-user-select: all;
-moz-user-select: all;
-ms-user-select: all;
user-select: all;
margin: 0;
}
body.wgl-readermode .color-group .variable,
body.wgl-readermode .color-group .hexcode {
font-size: inherit;
}
.color-group .variable {
font-weight: bold;
}
#t-print,
#t-permalink {
display: none;
}
#filetoc {
border-radius: 2px;
background: var(--body-mid);
border-color: transparent;
margin: 0.5em auto;
text-align: center;
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
}
li.gallerybox div.thumb {
border: none;
background-color: var(--thumb-bg);
}
.smwfact {
display: none;
}
.list-header {
background-color: var(--body-mid);
color: inherit;
}
.editOptions {
color: var(--text-color);
background-color: var(--sourceeditor-background-secondary);
border-color: var(--sourceeditor-border);
}
.mw-json th,
.mw-json td {
border-color: var(--wikitable-border);
}
.mw-json td {
background: var(--wikitable-bg);
}
.mw-json th {
background: var(--wikitable-header-bg);
}
e2040a54f645a836ed6ec4fb630ce38058de07d2
1699
1692
2024-04-02T12:10:03Z
Gau Cho
5
Updating CSS from [[MediaWiki:Common.less]]
css
text/css
/* <pre> */
:root {
--body-main: #fdfcfc;
--body-light: #f5f0eb;
--body-mid: #d1b9ad;
--body-dark: #b1886f;
--body-border: #d1b9ad;
--body-background-color: #173a4d;
--button-background: #605443;
--button-color: #fff;
--button-border: #3c352a;
--button-dark: #18140c;
--button-light: #3a301d;
--sidebar: #cfc08d;
--background-text-color: #e2dbc8;
--background-link-color: #e2bd8a;
--search-box: #efeee6;
--link-color: #6e452b;
--redlink-color: #ba0000;
--text-color: #2F2828;
--byline-color: #ccc;
--subtle-color: #777;
--admin-blue: #332e75;
--bearcat-green: #13592e;
--awb-purple: #933b96;
--rsw-blue: #438ab6;
--osrsw-brown: #605443;
--thumb-bg: var(--body-light);
--thumb-caption-bg: var(--body-mid);
--sourceeditor-input-background: #fff;
--sourceeditor-background: var(--body-light);
--sourceeditor-background-secondary: var(--body-light);
--sourceeditor-border: var(--body-mid);
--codemirror-gutter-background: var(--body-mid);
}
@font-face {
font-family: 'Lora';
font-weight: 400 700;
font-style: normal;
font-display: swap;
src: url('filepath://Lora.woff2') format('woff2');
}
@font-face {
font-family: 'Lora';
font-weight: 400 700;
font-style: italic;
font-display: swap;
src: url('filepath://Lora-Italic.woff2') format('woff2');
}
:root {
--base-text-color: #36414f;
--base-heading-color: #444e5a;
--base-heading-border: #e4eaee;
--mw-code-background-color: var(--body-light);
--body-background-image: url('filepath://Wiki_background.jpg');
}
#mw-page-base {
background: none;
}
.mw-body {
background-color: var(--body-main);
color: var(--text-color);
border-color: transparent;
box-shadow: 0 0 7px rgba(0, 0, 0, 0.15);
margin-top: 0;
}
h1,
h2,
h3,
h4,
h5,
h6 {
color: var(--text-color);
}
h1,
h2 {
border-color: var(--body-border);
}
.mw-body h1,
.mw-body-content h1,
.mw-body-content h2,
.mw-body-content h3,
.mw-body-content h4,
.mw-body-content h5,
.mw-body-content h6 {
font-family: 'Lora', 'Palatino', 'Georgia', serif;
}
.mw-parser-output h2:first-of-type {
clear: left;
}
.mw-footer {
color: var(--background-text-color);
}
.mw-footer li {
color: var(--background-text-color);
}
.mw-footer a,
.mw-footer a:active,
.mw-footer a:visited {
color: var(--background-link-color);
}
::placeholder {
color: var(--subtle-color);
}
a {
color: var(--link-color);
}
a:visited,
a:active {
color: var(--link-color);
}
a.new {
color: var(--redlink-color);
}
a.new:visited {
color: var(--redlink-color);
}
.mw-parser-output a.extiw,
.mw-parser-output a.external {
color: var(--link-color);
}
.mw-parser-output a.extiw:visited,
.mw-parser-output a.external:visited,
.mw-parser-output a.extiw:active,
.mw-parser-output a.external:active {
color: var(--link-color);
}
.jsPurgeLink a.external {
color: var(--link-color);
}
:root {
--errorbox-bg: #feecea;
--errorbox-border: #ee4231;
--warningbox-bg: #fef9de;
--warningbox-border: #f9d000;
--successbox-bg: #ecf8e3;
--successbox-border: #6bc71f;
}
.mw-message-box-error,
.errorbox,
.mw-message-box-warning,
.warningbox,
.mw-message-box-success,
.successbox,
.usermessage {
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
}
.mw-message-box-error,
.errorbox {
background-color: var(--errorbox-bg);
border-color: var(--errorbox-border);
}
.mw-message-box-warning,
.warningbox,
.usermessage {
background-color: var(--warningbox-bg);
border-color: var(--warningbox-border);
}
.mw-message-box-success,
.successbox {
background-color: var(--successbox-bg);
border-color: var(--successbox-border);
}
.catlinks {
background: var(--body-light);
border: 1px solid var(--body-dark);
padding: 8px 15px;
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
}
.catlinks li {
border-color: var(--body-mid);
}
.filehistory a img,
#file img {
background: url("data:image/svg+xml,%3C%3Fxml version='1.0' encoding='UTF-8'%3F%3E%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16'%3E%3Cpath d='M0 0h8v16h8V8H0z' opacity='.13'/%3E%3C/svg%3E") repeat;
}
#file img:hover {
background: none;
}
.mw-highlight {
background: none;
}
.mw-highlight .linenos {
background-color: var(--mw-code-background-color);
color: var(--body-border);
}
.mw-highlight a:hover .linenos,
.mw-highlight .hll a .linenos {
color: var(--body-dark);
}
.mw-content-ltr.mw-highlight-lines pre,
.mw-content-ltr.content .mw-highlight-lines pre {
box-shadow: inset 2.75em 0 0 var(--mw-code-background-color);
}
#pagehistory ul {
list-style: none;
margin: 0;
}
#pagehistory li {
border: 1px solid transparent;
padding: 1px 10px;
margin: 2px 0;
}
#pagehistory li.selected {
background-color: var(--body-light);
color: inherit;
border: 1px dashed var(--body-border);
outline: none;
}
#mw-history-compare > div:first-of-type {
position: -webkit-sticky;
position: sticky;
top: 0;
background-color: var(--body-main);
border-bottom: 1px solid var(--body-dark);
padding: 0.25em 0;
}
.wgl-stickyheader #mw-history-compare > div:first-of-type {
top: 2.5rem;
}
.autocomment,
.autocomment a,
.autocomment a:visited {
color: var(--link-color);
}
li span.deleted,
span.history-deleted {
color: var(--byline-color);
}
.mw-usertoollinks-contribs-no-edits,
.mw-usertoollinks-contribs-no-edits:visited {
color: var(--redlink-color);
}
.CategoryTreeToggle {
color: var(--link-color);
}
body.wgl-stickyheader.action-view .mw-headline:target::before {
display: block;
content: '';
margin-top: -3rem;
height: 3rem;
visibility: hidden;
pointer-events: none;
}
.mw-mmv-post-image {
color: var(--text-color);
background-color: var(--body-main);
}
.mw-mmv-image-metadata {
border-top-color: var(--body-mid);
background-color: var(--body-light);
}
.mw-mmv-dialog,
.mw-mmv-dialog .mw-mmv-dialog-down-arrow,
.mw-mmv-options-dialog .mw-mmv-dialog-down-arrow {
background-color: var(--body-light);
box-shadow: none;
}
.mw-mmv-options-enable-alert {
background-color: var(--body-light);
color: var(--text-color);
}
.mw-mmv-options-dialog-header,
.mw-mmv-options-text-header,
.mw-mmv-options-text-body,
.mw-mmv-options-enable-alert,
.mw-mmv-options-dialog .mw-mmv-disable-confirmation .mw-mmv-options-dialog-header,
.mw-mmv-options-dialog .mw-mmv-disable-confirmation .mw-mmv-options-text-header {
color: var(--text-color);
}
.mw-revslider-container {
border-color: var(--sidebar);
}
.mw-revslider-slider-wrapper {
border-top-color: var(--sidebar);
}
.mw-ui-button {
background-color: var(--ooui-normal);
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
}
.mw-ui-button:not(:disabled):hover,
.mw-ui-button:not(:disabled):active {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
}
.mw-ui-button:not(:disabled):focus {
color: var(--ooui-text);
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent), inset 0 0 0 2px #fff;
}
.mw-ui-button:not(:disabled):visited {
color: var(--ooui-text);
}
.mw-ui-button.mw-ui-progressive:not(:disabled) {
background-color: var(--ooui-progressive);
color: #fff;
border-color: var(--ooui-progressive);
}
.mw-ui-button.mw-ui-progressive:not(:disabled):hover {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
}
.mw-ui-button.mw-ui-progressive:not(:disabled):focus {
box-shadow: inset 0 0 0 1px var(--ooui-accent), inset 0 0 0 2px #fff;
}
.mw-ui-button.mw-ui-progressive:not(:disabled):active,
.mw-ui-button.mw-ui-progressive:not(:disabled).is-on {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
box-shadow: none;
}
.mw-ui-button.mw-ui-destructive:not( :disabled ) {
color: #fff;
}
.mw-ui-button.mw-ui-quiet,
.mw-ui-button.mw-ui-quiet.mw-ui-progressive,
.mw-ui-button.mw-ui-quiet.mw-ui-destructive {
color: var(--text-color);
}
input[type='checkbox']:hover + .mw-ui-button.mw-ui-quiet,
input[type='checkbox']:hover + .mw-ui-button.mw-ui-quiet.mw-ui-progressive,
input[type='checkbox']:hover + .mw-ui-button.mw-ui-quiet.mw-ui-destructive,
.mw-ui-button.mw-ui-quiet:hover,
.mw-ui-button.mw-ui-quiet.mw-ui-progressive:hover,
.mw-ui-button.mw-ui-quiet.mw-ui-destructive:hover {
background-color: rgba(0, 24, 73, 0.02745098);
color: var(--text-color);
border-color: transparent;
}
input[type='checkbox']:focus + .mw-ui-button.mw-ui-quiet,
input[type='checkbox']:focus + .mw-ui-button.mw-ui-quiet.mw-ui-progressive,
input[type='checkbox']:focus + .mw-ui-button.mw-ui-quiet.mw-ui-destructive,
.mw-ui-button.mw-ui-quiet:focus,
.mw-ui-button.mw-ui-quiet.mw-ui-progressive:focus,
.mw-ui-button.mw-ui-quiet.mw-ui-destructive:focus {
color: var(--text-color);
}
input[type='checkbox']:active + .mw-ui-button.mw-ui-quiet,
input[type='checkbox']:active + .mw-ui-button.mw-ui-quiet.mw-ui-progressive,
input[type='checkbox']:active + .mw-ui-button.mw-ui-quiet.mw-ui-destructive,
.mw-ui-button.mw-ui-quiet:active,
.mw-ui-button.mw-ui-quiet.mw-ui-progressive:active,
.mw-ui-button.mw-ui-quiet.mw-ui-destructive:active {
background-color: rgba(0, 36, 73, 0.08235294);
color: var(--text-color);
border-color: #72777d;
}
.mw-ui-input {
background-color: var(--ooui-input);
color: var(--text-color);
border-color: var(--ooui-input-border);
}
.mw-ui-input:hover {
border-color: var(--ooui-input-border--hover);
}
.mw-ui-input::placeholder {
color: var(--byline-color);
}
.mw-content-ltr .redirectText li:first-child {
padding: 0;
background: 0;
}
.mw-content-ltr .redirectText li:first-child::before {
content: '';
background: currentcolor;
-webkit-mask: url("filepath://Redirect-arrow.svg") no-repeat 50% 50% / contain;
mask: url("filepath://Redirect-arrow.svg") no-repeat 50% 50% / contain;
display: inline-block;
width: 47px;
height: 20px;
}
.vector-search-box-inner {
background: var(--body-main) !important;
box-shadow: inset 0 -7px 7px -7px rgba(0, 0, 0, 0.15) !important;
}
.vector-menu-dropdown .vector-menu-heading {
color: var(--vector-tab-link-color) !important;
}
.vector-menu-dropdown .vector-menu-heading:hover {
color: var(--vector-tab-link-color) !important;
}
.vector-menu-dropdown .vector-menu-heading:focus {
color: var(--vector-tab-link-color) !important;
}
:root {
--wikitable-header-bg: var(--body-dark);
--wikitable-border: var(--body-border);
--wikitable-bg: var(--body-light);
--wikitable-bg-lighter: #e9e3d6;
--wikitable-color: var(--text-color);
--table-na-background: rgba(255, 255, 255, 0.3);
--table-na-color: var(--subtle-color);
--table-yes-background: #c3e8a3;
--table-yes-color: #2e5e05;
--table-no-background: #fbc0ba;
--table-no-color: #801c13;
--table-maybe-background: #fcea94;
--table-maybe-color: #786300;
}
.wikitable {
background: var(--wikitable-bg);
color: var(--wikitable-color);
border-color: var(--wikitable-border);
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
}
.wikitable > tr > th,
.wikitable > tr > td,
.wikitable > * > tr > th,
.wikitable > * > tr > td {
border-color: var(--wikitable-border);
}
.wikitable > tr > th.table-noborder,
.wikitable > tr > td.table-noborder,
.wikitable > * > tr > th.table-noborder,
.wikitable > * > tr > td.table-noborder {
border-left-style: hidden;
border-right-style: hidden;
padding-left: 0;
padding-right: 0;
}
.wikitable > tr > th,
.wikitable > * > tr > th {
background-color: var(--wikitable-header-bg);
color: #fff;
}
.tabber .wikitable {
box-shadow: none;
}
.mw_metadata td,
.mw_metadata th {
border-color: var(--wikitable-border);
}
.mw_metadata th {
background-color: var(--wikitable-header-bg);
}
.mw_metadata td {
background-color: var(--wikitable-bg);
}
.mw-datatable {
border-color: var(--wikitable-border);
}
.mw-datatable td,
.mw-datatable th {
border-color: var(--wikitable-border);
}
.mw-datatable th {
background-color: var(--wikitable-header-bg);
}
.mw-datatable td {
background-color: var(--wikitable-bg);
}
.mw-datatable tr:hover td {
background-color: var(--wikitable-bg);
}
table.alternating-rows tr:nth-child(odd),
table.alternating-cols td:nth-child(odd) {
background: var(--wikitable-alternating-bg);
}
.table-na {
background: var(--table-na-background);
color: var(--table-na-color);
vertical-align: middle;
text-align: center;
}
.table-yes {
background: var(--table-yes-background);
color: var(--table-yes-color);
}
.table-positive {
background: var(--table-yes-background);
}
.table-no {
background: var(--table-no-background);
color: var(--table-no-color);
}
.table-negative {
background: var(--table-no-background);
}
.table-maybe {
background: var(--table-maybe-background);
color: var(--table-maybe-color);
}
#mw-allmessagestable .am_actual,
#mw-allmessagestable .am_default {
background-color: var(--wikitable-bg);
}
#mw-allmessagestable .am_default:hover,
#mw-allmessagestable .am_actual:hover,
#mw-allmessagestable tbody:hover td {
background-color: var(--wikitable-bg-lighter);
}
table.wikitable td.no-cell-spacing {
padding: 0;
height: 0;
}
table.wikitable td.no-cell-spacing table {
margin: -1px;
width: calc(100% + 2px);
height: calc(100% + 2px);
}
.plainlist ol,
.plainlist ul {
margin: 0;
}
.plainlist li {
margin-bottom: 0;
list-style: none;
}
table.align-right-1 td:nth-of-type(1),
table.align-right-2 td:nth-of-type(2),
table.align-right-3 td:nth-of-type(3),
table.align-right-4 td:nth-of-type(4),
table.align-right-5 td:nth-of-type(5),
table.align-right-6 td:nth-of-type(6),
table.align-right-7 td:nth-of-type(7),
table.align-right-8 td:nth-of-type(8),
table.align-right-9 td:nth-of-type(9),
table.align-right-10 td:nth-of-type(10),
table.align-right-11 td:nth-of-type(11),
table.align-right-12 td:nth-of-type(12),
table.align-right-13 td:nth-of-type(13),
table.align-right-14 td:nth-of-type(14),
table.align-right-15 td:nth-of-type(15),
table.align-right-16 td:nth-of-type(16),
table.align-right-17 td:nth-of-type(17),
table.align-right-18 td:nth-of-type(18),
table.align-right-19 td:nth-of-type(19),
table.align-right-20 td:nth-of-type(20) {
text-align: right;
}
table.align-center-1 td:nth-of-type(1),
table.align-center-2 td:nth-of-type(2),
table.align-center-3 td:nth-of-type(3),
table.align-center-4 td:nth-of-type(4),
table.align-center-5 td:nth-of-type(5),
table.align-center-6 td:nth-of-type(6),
table.align-center-7 td:nth-of-type(7),
table.align-center-8 td:nth-of-type(8),
table.align-center-9 td:nth-of-type(9),
table.align-center-10 td:nth-of-type(10),
table.align-center-11 td:nth-of-type(11),
table.align-center-12 td:nth-of-type(12),
table.align-center-13 td:nth-of-type(13),
table.align-center-14 td:nth-of-type(14),
table.align-center-15 td:nth-of-type(15),
table.align-center-16 td:nth-of-type(16),
table.align-center-17 td:nth-of-type(17),
table.align-center-18 td:nth-of-type(18),
table.align-center-19 td:nth-of-type(19),
table.align-center-20 td:nth-of-type(20) {
text-align: center;
}
table.align-left-1 td:nth-of-type(1),
table.align-left-2 td:nth-of-type(2),
table.align-left-3 td:nth-of-type(3),
table.align-left-4 td:nth-of-type(4),
table.align-left-5 td:nth-of-type(5),
table.align-left-6 td:nth-of-type(6),
table.align-left-7 td:nth-of-type(7),
table.align-left-8 td:nth-of-type(8),
table.align-left-9 td:nth-of-type(9),
table.align-left-10 td:nth-of-type(10),
table.align-left-11 td:nth-of-type(11),
table.align-left-12 td:nth-of-type(12),
table.align-left-13 td:nth-of-type(13),
table.align-left-14 td:nth-of-type(14),
table.align-left-15 td:nth-of-type(15),
table.align-left-16 td:nth-of-type(16),
table.align-left-17 td:nth-of-type(17),
table.align-left-18 td:nth-of-type(18),
table.align-left-19 td:nth-of-type(19),
table.align-left-20 td:nth-of-type(20) {
text-align: left;
}
:root {
--diff-addedline-border-color: #438ab5;
--diff-addedline-background: #bddff2;
--diff-addedline-color: #000;
--diff-deletedline-border-color: #379541;
--diff-deletedline-background: #c1edbf;
--diff-deletedline-color: #000;
--diff-context-border-color: var(--body-mid);
--diff-context-background: var(--body-mid);
}
.diff-context {
border-color: var(--diff-context-border-color);
background: var(--diff-context-background);
color: inherit;
}
.diff-addedline {
border-color: var(--diff-addedline-border-color);
}
.diff-addedline .diffchange {
background: var(--diff-addedline-background);
color: var(--diff-addedline-color);
}
.diff-deletedline {
border-color: var(--diff-deletedline-border-color);
}
.diff-deletedline .diffchange {
background: var(--diff-deletedline-background);
color: var(--diff-deletedline-color);
}
.mw-diff-movedpara-left:after,
.mw-diff-movedpara-right:after {
color: var(--text-color);
}
.mw-notification {
background-color: var(--body-light);
border-color: var(--body-border);
color: var(--text-color);
}
.mw-echo-ui-notificationsInboxWidget-toolbarWrapper {
background: var(--body-main);
}
.mw-body-content .mw-echo-ui-datedSubGroupListWidget-title-secondary {
color: var(--byline-color);
}
.mw-echo-ui-pageNotificationsOptionWidget.oo-ui-optionWidget-selected {
background-color: var(--ooui-normal);
color: var(--ooui-accent);
}
.mw-echo-ui-pageNotificationsOptionWidget-label-count {
background-color: var(--ooui-normal);
color: var(--byline-color);
}
.oo-ui-optionWidget-selected .mw-echo-ui-pageNotificationsOptionWidget-label-count {
color: var(--ooui-accent);
}
.mw-echo-ui-pageNotificationsOptionWidget.oo-ui-optionWidget-highlighted {
background-color: var(--ooui-normal);
color: var(--text-color);
}
.mw-echo-ui-crossWikiUnreadFilterWidget {
border-color: var(--body-border);
}
.mw-echo-ui-crossWikiUnreadFilterWidget-subtitle {
color: var(--byline-color);
}
.mw-echo-ui-notificationBadgeButtonPopupWidget-popup > .oo-ui-popupWidget-popup > .oo-ui-popupWidget-head,
.mw-echo-ui-notificationBadgeButtonPopupWidget-popup > .oo-ui-popupWidget-popup > .oo-ui-popupWidget-footer {
border-color: var(--ooui-interface-border);
}
.mw-echo-ui-notificationBadgeButtonPopupWidget-popup > .oo-ui-popupWidget-popup > .oo-ui-popupWidget-footer .mw-echo-ui-notificationBadgeButtonPopupWidget-footer-buttons .oo-ui-buttonElement:last-child {
border-left-color: var(--ooui-normal-border);
}
.mw-echo-ui-notificationItemWidget {
background-color: var(--ooui-normal);
border-color: var(--ooui-normal-border);
}
.mw-echo-ui-notificationItemWidget:hover,
.mw-echo-ui-notificationItemWidget-unread:hover {
background-color: var(--ooui-normal--hover);
}
.mw-echo-ui-notificationItemWidget:last-child {
border-bottom-color: var(--ooui-normal-border);
}
.mw-echo-ui-notificationItemWidget-unread {
background-color: var(--search-box);
}
.mw-echo-ui-crossWikiNotificationItemWidget-group,
.mw-echo-ui-bundleNotificationItemWidget-group {
background-color: var(--ooui-interface);
}
.mw-echo-ui-toggleReadCircleButtonWidget-circle {
background-color: var(--ooui-progressive);
}
.mw-echo-ui-toggleReadCircleButtonWidget:hover .mw-echo-ui-toggleReadCircleButtonWidget-circle {
background-color: var(--ooui-progressive--hover);
}
.mw-echo-ui-toggleReadCircleButtonWidget-circle-unread {
background-color: var(--ooui-normal);
border-color: var(--ooui-normal-border);
}
.mw-echo-ui-notificationItemWidget-content-message-header,
.mw-echo-ui-notificationItemWidget-content-message-body,
.mw-echo-ui-menuItemWidget > .oo-ui-buttonElement-button > .oo-ui-labelElement-label,
.mw-echo-ui-notificationItemWidget-content-actions-timestamp {
color: var(--ooui-text);
}
.mw-echo-ui-bundleNotificationItemWidget-group {
background-color: var(--body-main);
}
@keyframes unseen-fadeout-to-unread {
from {
background-color: var(--wikitable-bg-lighter);
}
to {
background-color: var(--search-box);
}
}
@keyframes unseen-fadeout-to-read {
from {
background-color: var(--wikitable-bg-lighter);
}
to {
background-color: var(--body-main);
}
}
.mwe-popups {
background: var(--body-light);
}
.mwe-popups .mwe-popups-container {
color: var(--text-color);
background: var(--body-light);
}
.mwe-popups .mwe-popups-container.flipped-x-y:before,
.mwe-popups .mwe-popups-container.flipped-y:before {
border-top: none;
}
.mwe-popups .mwe-popups-container.mwe-popups-no-image-tri:before {
border-bottom: none;
}
.mwe-popups .mwe-popups-container.flipped-x-y:after,
.mwe-popups .mwe-popups-container.flipped-y:after {
border-top-color: var(--body-light);
}
.mwe-popups .mwe-popups-container.mwe-popups-no-image-tri:after {
border-bottom-color: var(--body-light);
}
.mwe-popups .mwe-popups-settings-icon:hover,
.mwe-popups .mwe-popups-settings-icon:active {
background-color: var(--ooui-normal--hover);
}
.mwe-popups .mw-ui-icon-element:not(.disabled):hover {
background: none;
}
.mwe-popups .mwe-popups-extract {
color: var(--text-color);
}
.mwe-popups .mwe-popups-extract[dir='ltr']:after {
background-image: linear-gradient(to right, rgba(49, 62, 89, 0), var(--body-light) 50%);
}
.mwe-popups-overlay {
background-color: var(--ooui-window-background);
}
#mwe-popups-settings {
background: var(--ooui-interface);
border-color: var(--ooui-interface-border);
color: var(--text-color);
}
#mwe-popups-settings header {
border-color: var(--ooui-interface-border);
}
#mwe-popups-settings main#mwe-popups-settings-form p {
color: var(--byline-color);
}
#mwe-popups-settings main#mwe-popups-settings-form form label > span {
color: var(--ooui-text);
}
:root {
--smw-ask-options-even-bg: var(--body-mid);
--smw-ask-options-odd-bg: var(--body-light);
--smw-ask-action-btn-lblue-bg: var(--body-main);
--smw-ask-action-btn-lblue-color: #000;
--smw-ask-action-btn-lblue-border-color: var(--body-light);
--smw-ask-action-btn-dblue-bg: var(--body-light);
--smw-ask-action-btn-dblue-color: #fff;
--smw-ask-action-btn-dblue-border-color: var(--button-border);
}
.smw-ask-condition fieldset,
.smw-ask-printhead fieldset {
border-color: var(--sidebar);
}
.smw-ask-search fieldset,
.smw-ask-format fieldset,
.smw-ask-options fieldset {
border-color: var(--sidebar);
}
.strike > span:before,
.strike > span:after {
background: var(--sidebar);
}
.smw-ask-options-fields tr td {
background-color: var(--smw-ask-options-even-bg);
}
.smw-ask-options-fields tr:nth-child(odd) td {
background-color: var(--smw-ask-options-odd-bg);
}
.smw-ask-action-btn.smw-ask-action-btn-lblue,
.smw-ask-action-btn.smw-ask-action-btn-lblue:hover,
.smw-ask-action-btn.smw-ask-action-btn-lblue:visited {
background-color: var(--smw-ask-action-btn-lblue-bg);
color: var(--smw-ask-action-btn-lblue-color);
border-color: var(--smw-ask-action-btn-lblue-border-color);
}
.smw-ask-action-btn.smw-ask-action-btn-dblue,
.smw-ask-action-btn.smw-ask-action-btn-dblue:hover,
.smw-ask-action-btn.smw-ask-action-btn-dblue:visited {
background-color: var(--smw-ask-action-btn-dblue-bg);
color: var(--smw-ask-action-btn-dblue-color);
border-color: var(--smw-ask-action-btn-dblue-border-color);
}
.smw-ask-query textarea,
.smw-ask-actions textarea {
background-color: var(--ooui-interface);
border-color: var(--ooui-interface-border);
color: var(--ooui-text);
}
.smw-ask-query-format select {
background-color: var(--ooui-interface);
border: 1px solid var(--ooui-interface-border);
color: var(--ooui-text);
}
.smw-ask-toplinks {
background-color: var(--body-mid);
}
.smw-ask-toplinks span.smw-icon-info {
background: none;
padding: 0 !important;
}
.smw-ask-toplinks span.smw-icon-info::before {
content: '';
background: var(--text-color);
-webkit-mask: url("data:image/svg+xml,%3C%3Fxml version='1.0' encoding='UTF-8'%3F%3E%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 20 20'%3E%3Ctitle%3Einfo%3C/title%3E%3Cpath d='M10 0C4.477 0 0 4.477 0 10s4.477 10 10 10 10-4.477 10-10S15.523 0 10 0zM9 5h2v2H9zm0 4h2v6H9z'/%3E%3C/svg%3E") no-repeat 50% 50% / contain;
mask: url("data:image/svg+xml,%3C%3Fxml version='1.0' encoding='UTF-8'%3F%3E%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 20 20'%3E%3Ctitle%3Einfo%3C/title%3E%3Cpath d='M10 0C4.477 0 0 4.477 0 10s4.477 10 10 10 10-4.477 10-10S15.523 0 10 0zM9 5h2v2H9zm0 4h2v6H9z'/%3E%3C/svg%3E") no-repeat 50% 50% / contain;
padding: 0 0 3px 18px;
}
.smw-ask-options-row-odd {
background-color: var(--body-light);
}
.smw-ask-options-row-even {
background-color: var(--body-mid);
}
#options-toggle:not(:checked) + #options-list .options-parameter-list:after {
background-image: linear-gradient(to bottom, transparent, var(--body-mid) 90%);
}
.smw-ask-button-submit input {
background-color: var(--ooui-normal);
border-color: var(--ooui-normal-border);
color: var(--text-color);
}
.smw-ask-button-submit input:hover,
.smw-ask-button-lgrey:hover {
background-color: var(--ooui-normal--hover);
border-color: var(--ooui-normal-border);
}
input.smw-ask-action-btn.smw-ask-action-btn-dblue {
background-color: var(--ooui-normal);
border-color: var(--ooui-normal-border);
color: var(--ooui-text);
}
a.smw-ask-action-btn.smw-ask-action-btn-lblue {
background-color: var(--body-mid);
border-color: var(--body-mid);
color: var(--ooui-text);
}
a.smw-ask-action-btn.smw-ask-action-btn-lblue:visited {
background-color: var(--body-mid);
border-color: var(--body-mid);
color: var(--ooui-text);
}
a.smw-ask-action-btn.smw-ask-action-btn-lblue:hover {
background-color: var(--body-mid);
border-color: var(--body-mid);
color: var(--ooui-text);
}
a.smw-ask-action-btn-lgrey {
background-color: var(--ooui-normal);
border-color: var(--ooui-normal-border);
color: var(--ooui-text);
}
a.smw-ask-action-btn-lgrey:hover {
background-color: var(--ooui-normal--hover);
border-color: var(--ooui-normal-border);
color: var(--ooui-text);
}
.smw-callout-error {
background-color: var(--errorbox-bg);
border-color: var(--errorbox-border);
}
.smw-callout-info {
background-color: var(--body-light);
border-color: var(--body-dark);
}
.smw-callout-success {
background-color: var(--successbox-bg);
border-color: var(--successbox-border);
}
.smw-callout-warning {
background-color: var(--warningbox-bg);
border-color: var(--warningbox-bg);
}
.smw-tabs input.nav-tab:checked + label.nav-label,
.smw-tabs input.nav-tab:checked + label.nav-label:hover {
color: inherit;
}
#tab-smw-property-value:checked + label.nav-label .usage-count {
color: #fff;
background-color: var(--ooui-progressive);
}
#tab-smw-property-value:checked + label.nav-label .usage-count.moderate {
color: #fff;
background-color: #b55e0c;
border-color: #b55e0c;
}
#tab-smw-property-value:checked + label.nav-label .usage-count.high {
color: #fff;
background-color: #9f261e;
border-color: #9f261e;
}
.smw-property-page-results .header-title {
background-color: var(--ooui-interface);
border-bottom-color: var(--ooui-interface-border);
color: var(--ooui-text);
}
.smw-property-page-results .value-row:hover {
background-color: var(--ooui-normal--hover);
}
.smw-property-page-results .smw-table .header-row {
color: var(--text-color);
}
.tippy-tooltip.light-border-theme {
background-color: var(--body-light);
color: var(--text-color);
}
.tippy-tooltip.light-border-theme .tippy-arrow {
border-top-color: var(--body-light);
}
.tippy-tooltip.light-border-theme .tippy-arrow:after {
border-top-color: var(--body-light);
}
.tippy-header {
background-color: var(--body-dark);
border-bottom-color: var(--body-mid);
}
.smw-ui-input-filter {
background-color: var(--ooui-interface);
border-color: var(--ooui-interface-border);
color: var(--ooui-text);
}
.smw-ui-input-filter input {
border-left-color: var(--ooui-interface-border) !important;
color: var(--ooui-text) !important;
}
.smw-ui-pagination .page-link.link-disabled {
background-color: var(--ooui-disabled);
border-color: var(--ooui-disabled-border);
color: var(--subtle-color);
}
.smw-ui-pagination .page-link {
background-color: var(--ooui-normal);
border-color: var(--ooui-normal-border);
color: var(--link-color);
}
.smw-ui-pagination .page-link:hover {
background-color: var(--ooui-normal--hover);
border-color: var(--ooui-normal-border);
color: var(--link-color);
}
.smw-ui-pagination .page-link.link-active {
color: #fff;
background-color: var(--ooui-progressive);
border-color: var(--ooui-progressive);
}
.smw-tabs input.nav-tab:checked + label.nav-label {
border-color: var(--ooui-normal-border);
}
.smw-tabs section,
.smw-tabs .subtab-content {
border-top-color: var(--ooui-normal-border);
}
.smw-column-header {
color: var(--text-color);
}
.smw-factbox {
background: var(--body-main);
border-color: transparent;
}
.mw-body .mw-indicators #mw-indicator-smw-entity-examiner.mw-indicator .smw-indicator-vertical-bar-loader {
display: none;
}
.smwb-theme-light .smwb-title,
.smwb-theme-light .smwb-center,
.smwb-theme-light .smwb-actions,
.smwb-theme-light .smwb-prophead {
background-color: var(--body-mid);
}
.smwb-theme-light .smwb-factbox {
border-left-color: var(--body-mid);
}
.smwb-theme-light .smwb-ifactbox {
border-right-color: var(--body-mid);
}
.smwb-theme-light .smwb-propval {
background-color: var(--body-light);
}
.smwb-action-separator {
border-color: var(--wikitable-border);
}
.smwb-bottom {
border-bottom: 1px solid var(--wikitable-border);
}
.smwb-ifactbox .smwb-cell,
.smwb-factbox .smwb-cell {
border-top: 1px solid var(--wikitable-border);
}
.smwb-propvalue .smwb-prophead,
.smwb-ipropvalue .smwb-prophead,
.smwb-propvalue .smwb-propval,
.smwb-ipropvalue .smwb-propval {
font-size: 0.9em;
}
:root {
--filter-black-to-link: invert(36%) sepia(58%) saturate(433%) hue-rotate(344deg) brightness(100%) contrast(91%);
}
#bodyContent span.smwbrowse a {
color: black;
background-image: url('filepath://Smwbrowse.svg');
filter: var(--filter-black-to-link);
}
#bodyContent span.smwbrowse a:hover {
color: black;
background-image: url('filepath://Smwbrowse-hover.svg');
text-decoration: underline;
}
#bodyContent span.smwsearch a {
color: black;
filter: var(--filter-black-to-link);
background-image: url('filepath://Smwsearch.svg');
}
#bodyContent span.smwsearch a:hover {
color: black;
background-image: url('filepath://Smwsearch-hover.svg');
text-decoration: underline;
}
:root {
--tabber-tab-bg: var(--body-light);
--tabber-tab-border-color: var(--body-border);
--tabber-active-tab-bg: var(--body-light);
--tabber-active-tab-color: var(--text-color);
--tabber-active-tab-hover-bg: var(--body-light);
--tabber-active-tab-hover-border-color: var(--body-border);
--tabber-active-tab-hover-color: var(--text-color);
--tabber-active-tab-border-hider-color: var(--body-light);
--tabber-inactive-tab-bg: var(--body-background-color);
--tabber-inactive-tab-border-color: var(--body-border);
--tabber-inactive-tab-color: var(--text-color);
--tabber-inactive-tab-hover-bg: var(--body-light);
--tabber-inactive-tab-hover-border-color: var(--body-border);
}
.tabber {
margin: 1em 0;
}
.tabber .tabbertab {
background-color: var(--tabber-tab-bg);
border: 1px solid var(--tabber-tab-border-color);
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
padding: 1em 1.5em;
}
ul.tabbernav {
border: none;
margin-left: 2em;
margin-bottom: 0;
margin-right: 2em;
padding: 0;
font-family: inherit;
}
ul.tabbernav li.tabberactive > a {
background-color: var(--tabber-active-tab-bg);
color: var(--tabber-active-tab-color);
border-bottom: none;
position: relative;
}
ul.tabbernav li.tabberactive > a:hover {
color: var(--tabber-active-tab-hover-color);
background-color: var(--tabber-active-tab-hover-bg);
border-color: var(--tabber-active-tab-hover-border-color);
border-bottom: none;
}
ul.tabbernav li.tabberactive > a::after {
content: '';
position: absolute;
left: 0;
right: 0;
bottom: -1px;
border-bottom: 2px solid var(--tabber-active-tab-border-hider-color);
}
ul.tabbernav li a {
background-color: var(--tabber-inactive-tab-bg);
border-bottom: transparent;
border-color: var(--tabber-inactive-tab-border-color);
color: var(--tabber-inactive-tab-color);
display: inline-block;
font-size: 110%;
padding: 0.5em 1em;
}
ul.tabbernav li a:hover {
background-color: var(--tabber-inactive-tab-hover-bg);
border-color: var(--tabber-inactive-tab-hover-border-color);
}
ul.tabbernav li a:link,
ul.tabbernav li a:visited {
color: var(--tabber-inactive-tab-color);
}
:root {
--ooui-text: var(--text-color);
--ooui-interface: var(--body-light);
--ooui-interface-border: var(--body-border);
--ooui-window-background: rgba(255, 255, 255, 0.5);
--ooui-normal: #cdb3a6;
--ooui-normal--hover: #d8c4ba;
--ooui-normal-border: #d1b9ad;
--ooui-progressive: #936243;
--ooui-progressive--hover: #b27a57;
--ooui-accent: var(--link-color);
--ooui-input: #fff;
--ooui-input-border: #d1b9ad;
--ooui-input-border--hover: #ae846f;
--ooui-disabled: #c9c3bf;
--ooui-disabled-border: #dfd6d2;
--ooui-disabled-text: var(--subtle-color);
--ooui-pending-background-image: repeating-linear-gradient(-45deg, var(--search-box), var(--search-box) 20px, var(--body-main) 20px, var(--body-main) 30px);
}
.oo-ui-widget {
color: var(--ooui-text);
}
.oo-ui-checkboxInputWidget [type='checkbox'] + span,
.oo-ui-radioInputWidget [type='radio'] + span {
background-color: var(--ooui-input);
border-color: var(--ooui-input-border);
}
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:checked + span,
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:indeterminate + span {
background-color: var(--ooui-progressive);
border-color: var(--ooui-progressive);
}
.oo-ui-radioInputWidget.oo-ui-widget-enabled [type='radio']:checked + span {
border-color: var(--ooui-progressive);
}
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:checked:hover + span,
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:indeterminate:hover + span {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
}
.oo-ui-radioInputWidget.oo-ui-widget-enabled [type='radio']:checked:hover + span {
border-color: var(--ooui-progressive--hover);
}
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:hover + span,
.oo-ui-radioInputWidget.oo-ui-widget-enabled [type='radio']:hover + span {
border-color: var(--ooui-accent);
}
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:focus + span {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:active + span,
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:checked:active + span,
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:indeterminate:active + span {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
box-shadow: inset 0 0 0 1px var(--ooui-progressive--hover);
}
.oo-ui-radioInputWidget.oo-ui-widget-enabled [type='radio']:active + span {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
}
.oo-ui-radioInputWidget.oo-ui-widget-enabled [type='radio']:checked:active + span {
border-color: var(--ooui-progressive--hover);
box-shadow: inset 0 0 0 1px var(--ooui-progressive--hover);
}
.oo-ui-radioInputWidget.oo-ui-widget-enabled [type='radio']:checked:active + span:before {
border-color: var(--ooui-progressive--hover);
}
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:checked:focus + span,
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:indeterminate:focus + span {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent), inset 0 0 0 2px #fff;
}
.oo-ui-checkboxInputWidget [type='checkbox']:disabled + span,
.oo-ui-radioInputWidget [type='radio']:disabled + span {
background-color: var(--ooui-disabled);
border-color: var(--ooui-disabled);
}
.oo-ui-dropdownWidget-handle {
border-color: var(--ooui-normal-border);
}
.oo-ui-dropdownWidget.oo-ui-widget-enabled .oo-ui-dropdownWidget-handle {
background-color: var(--ooui-normal);
color: var(--ooui-text);
}
.oo-ui-dropdownWidget.oo-ui-widget-enabled .oo-ui-dropdownWidget-handle:hover {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
}
.oo-ui-dropdownWidget.oo-ui-widget-enabled .oo-ui-dropdownWidget-handle:active {
color: var(--ooui-text);
}
.oo-ui-dropdownWidget.oo-ui-widget-enabled .oo-ui-dropdownWidget-handle:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-dropdownWidget.oo-ui-widget-enabled.oo-ui-dropdownWidget-open .oo-ui-dropdownWidget-handle {
background-color: var(--ooui-normal--hover);
}
.oo-ui-dropdownWidget.oo-ui-widget-disabled .oo-ui-dropdownWidget-handle {
color: var(--ooui-disabled-text);
text-shadow: none;
border-color: var(--ooui-disabled-border);
background-color: var(--ooui-disabled);
}
.oo-ui-dropdownInputWidget select {
border-color: var(--ooui-normal-border);
}
.oo-ui-dropdownInputWidget option {
background-color: var(--ooui-interface);
}
.oo-ui-dropdownInputWidget.oo-ui-widget-enabled {
background-color: var(--ooui-normal);
}
.oo-ui-dropdownInputWidget.oo-ui-widget-enabled:hover {
background-color: var(--ooui-normal--hover);
}
.oo-ui-dropdownInputWidget.oo-ui-widget-enabled select {
color: var(--ooui-text);
}
.oo-ui-dropdownInputWidget.oo-ui-widget-enabled select:hover,
.oo-ui-dropdownInputWidget.oo-ui-widget-enabled select:active {
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
}
.oo-ui-dropdownInputWidget.oo-ui-widget-enabled select:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-labelWidget.oo-ui-inline-help {
color: var(--byline-color);
}
.oo-ui-menuSelectWidget {
background-color: var(--ooui-interface);
border-color: var(--ooui-interface-border);
}
.oo-ui-menuSelectWidget-frameless {
box-shadow: inset 0 -1px 0 0 var(--ooui-normal-border);
}
.oo-ui-menuSectionOptionWidget {
color: var(--byline-color);
}
.oo-ui-menuOptionWidget.oo-ui-optionWidget-highlighted,
.oo-ui-menuOptionWidget.oo-ui-optionWidget-selected {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
}
.oo-ui-menuOptionWidget.oo-ui-optionWidget-selected.oo-ui-menuOptionWidget.oo-ui-optionWidget-highlighted,
.oo-ui-menuOptionWidget.oo-ui-optionWidget-pressed.oo-ui-menuOptionWidget.oo-ui-optionWidget-highlighted {
color: var(--ooui-accent);
}
.oo-ui-menuOptionWidget.oo-ui-widget-enabled.oo-ui-optionWidget {
color: var(--ooui-text);
}
.oo-ui-messageDialog-title {
color: inherit;
}
.oo-ui-messageWidget.oo-ui-messageWidget-block.oo-ui-flaggedElement-error {
background-color: var(--errorbox-bg);
border-color: var(--errorbox-border);
}
.oo-ui-messageWidget.oo-ui-messageWidget-block.oo-ui-flaggedElement-warning {
background-color: var(--warningbox-bg);
border-color: var(--warningbox-border);
}
.oo-ui-messageWidget.oo-ui-messageWidget-block.oo-ui-flaggedElement-success {
background-color: var(--successbox-bg);
border-color: var(--successbox-border);
}
.oo-ui-messageWidget.oo-ui-messageWidget-block.oo-ui-flaggedElement-notice {
background-color: var(--messagebox-info-background);
border-color: var(--messagebox-info-border);
}
.oo-ui-messageWidget.oo-ui-flaggedElement-error:not(.oo-ui-messageWidget-block),
.oo-ui-messageWidget.oo-ui-flaggedElement-success:not(.oo-ui-messageWidget-block) {
color: var(--ooui-text);
}
.oo-ui-optionWidget.oo-ui-widget-disabled {
color: var(--ooui-disabled-text);
}
.oo-ui-outlineControlsWidget {
background-color: var(--ooui-normal);
}
.oo-ui-outlineOptionWidget.oo-ui-optionWidget-highlighted {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
}
.oo-ui-popupWidget-popup {
background-color: var(--ooui-interface);
border-color: var(--ooui-interface-border);
}
.oo-ui-popupWidget-anchored-top .oo-ui-popupWidget-anchor:after {
border-bottom-color: var(--ooui-interface);
}
.oo-ui-popupWidget-anchored-top .oo-ui-popupWidget-anchor:before {
border-bottom-color: var(--ooui-interface-border);
}
.oo-ui-popupWidget-anchored-bottom .oo-ui-popupWidget-anchor:after {
border-top-color: var(--ooui-interface);
}
.oo-ui-popupWidget-anchored-bottom .oo-ui-popupWidget-anchor:before {
border-top-color: var(--ooui-interface-border);
}
.oo-ui-popupWidget-anchored-start .oo-ui-popupWidget-anchor:after {
border-right-color: var(--ooui-interface);
}
.oo-ui-popupWidget-anchored-start .oo-ui-popupWidget-anchor:before {
border-right-color: var(--ooui-interface-border);
}
.oo-ui-popupWidget-anchored-end .oo-ui-popupWidget-anchor:after {
border-left-color: var(--ooui-interface);
}
.oo-ui-popupWidget-anchored-end .oo-ui-popupWidget-anchor:before {
border-left-color: var(--ooui-interface-border);
}
.oo-ui-searchWidget-query {
border-bottom-color: var(--ooui-interface-border);
}
.oo-ui-selectFileWidget-dropTarget {
background-color: var(--ooui-interface);
border-color: var(--ooui-interface-border);
}
.oo-ui-selectFileWidget.oo-ui-widget-enabled.oo-ui-selectFileWidget-dropTarget {
background-color: var(--ooui-interface);
}
.oo-ui-selectFileWidget.oo-ui-widget-enabled.oo-ui-selectFileWidget-dropTarget:hover {
border-color: var(--ooui-input-border--hover);
}
.oo-ui-tabOptionWidget {
color: var(--ooui-text);
}
.oo-ui-tabSelectWidget-framed .oo-ui-tabOptionWidget.oo-ui-optionWidget-selected {
background-color: var(--body-dark);
color: var(--ooui-text);
}
.oo-ui-tabSelectWidget-framed .oo-ui-tabOptionWidget.oo-ui-optionWidget-selected .oo-ui-labelElement-label {
border-bottom-color: var(--body-border);
}
.oo-ui-tabSelectWidget-framed .oo-ui-tabOptionWidget.oo-ui-widget-enabled:hover,
.oo-ui-tabSelectWidget-framed .oo-ui-tabOptionWidget.oo-ui-widget-enabled:active {
background-color: var(--body-light);
color: var(--ooui-text);
}
.oo-ui-tabSelectWidget-framed .oo-ui-tabOptionWidget.oo-ui-widget-enabled.oo-ui-optionWidget-selected:hover {
background-color: var(--body-dark);
}
.oo-ui-tabSelectWidget-frameless .oo-ui-tabOptionWidget.oo-ui-optionWidget-selected {
color: var(--ooui-progressive);
box-shadow: inset 0 -2px 0 0 var(--ooui-progressive);
}
.oo-ui-tabSelectWidget-frameless .oo-ui-tabOptionWidget.oo-ui-optionWidget-selected:hover,
.oo-ui-tabSelectWidget-frameless .oo-ui-tabOptionWidget.oo-ui-optionWidget-selected:focus {
color: var(--ooui-progressive--hover);
box-shadow: inset 0 -2px 0 0 var(--ooui-progressive--hover);
}
.oo-ui-tabSelectWidget-framed {
background: none;
border-bottom: 1px solid var(--ooui-interface-border);
}
.oo-ui-tabSelectWidget-frameless {
box-shadow: inset 0 -1px 0 0 var(--ooui-interface-border);
}
.oo-ui-tabSelectWidget-mobile {
}
.oo-ui-tabSelectWidget-mobile.oo-ui-tabSelectWidget-framed:after {
background: var(--mobile-navbox-linear-gradient);
}
.oo-ui-tabSelectWidget-mobile.oo-ui-tabSelectWidget-frameless:after {
background: var(--mobile-navbox-linear-gradient);
}
.oo-ui-tagItemWidget {
border-color: var(--ooui-normal-border);
}
.oo-ui-tagItemWidget.oo-ui-widget-enabled {
color: var(--ooui-text);
}
.oo-ui-tagItemWidget.oo-ui-widget-enabled:hover {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
}
.oo-ui-tagItemWidget.oo-ui-widget-enabled:not( .oo-ui-tagItemWidget-fixed ) {
background-color: var(--ooui-normal);
}
.oo-ui-tagItemWidget.oo-ui-widget-enabled .oo-ui-buttonElement-button:hover {
background-color: var(--ooui-normal--hover);
}
.oo-ui-tagMultiselectWidget.oo-ui-widget-enabled {
background-color: var(--ooui-interface);
}
.oo-ui-tagMultiselectWidget.oo-ui-widget-enabled.oo-ui-tagMultiselectWidget-outlined {
background-color: var(--ooui-normal);
}
.oo-ui-tagMultiselectWidget.oo-ui-widget-enabled.oo-ui-tagMultiselectWidget-outlined .oo-ui-tagItemWidget.oo-ui-widget-enabled {
background-color: var(--ooui-interface);
}
.oo-ui-textInputWidget .oo-ui-inputWidget-input {
background-color: var(--ooui-input);
color: var(--ooui-text);
border-color: var(--ooui-input-border);
}
.oo-ui-textInputWidget.oo-ui-widget-enabled .oo-ui-inputWidget-input::placeholder {
color: var(--subtle-color);
}
.oo-ui-textInputWidget.oo-ui-widget-enabled .oo-ui-inputWidget-input:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-textInputWidget.oo-ui-widget-enabled .oo-ui-inputWidget-input[readonly]:not(.oo-ui-pendingElement-pending) {
background-color: var(--ooui-disabled);
color: var(--ooui-disabled-text);
}
.oo-ui-textInputWidget.oo-ui-widget-enabled:hover .oo-ui-inputWidget-input {
border-color: var(--ooui-input-border--hover);
}
.oo-ui-textInputWidget.oo-ui-widget-enabled:hover .oo-ui-inputWidget-input:focus {
border-color: var(--ooui-accent);
}
@media screen and (min-width: 0) {
.oo-ui-textInputWidget.oo-ui-widget-enabled textarea.oo-ui-inputWidget-input:focus {
outline: 1px solid var(--ooui-accent);
}
}
.oo-ui-textInputWidget.oo-ui-widget-disabled .oo-ui-inputWidget-input {
background-color: var(--ooui-disabled);
color: var(--ooui-disabled-text);
text-shadow: none;
border-color: var(--ooui-disabled-border);
}
.oo-ui-toggleSwitchWidget {
background-color: var(--ooui-input);
border-color: var(--ooui-input-border);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled .oo-ui-toggleSwitchWidget-grip {
background-color: var(--ooui-input);
border-color: var(--ooui-input-border);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:hover {
background-color: var(--ooui-input);
border-color: var(--ooui-accent);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:hover .oo-ui-toggleSwitchWidget-grip {
background-color: var(--ooui-input);
border-color: var(--ooui-accent);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:active,
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:active:hover,
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:active:focus {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
box-shadow: inset 0 0 0 1px var(--ooui-progressive--hover);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:active .oo-ui-toggleSwitchWidget-grip,
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:active:hover .oo-ui-toggleSwitchWidget-grip,
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:active:focus .oo-ui-toggleSwitchWidget-grip {
background-color: var(--ooui-input);
border-color: var(--ooui-input);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:focus .oo-ui-toggleSwitchWidget-grip {
border-color: var(--ooui-accent);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled.oo-ui-toggleWidget-on {
background-color: var(--ooui-progressive);
border-color: var(--ooui-progressive);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled.oo-ui-toggleWidget-on .oo-ui-toggleSwitchWidget-grip {
background-color: var(--ooui-input);
border-color: var(--ooui-input);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled.oo-ui-toggleWidget-on:hover {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled.oo-ui-toggleWidget-on:active,
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled.oo-ui-toggleWidget-on:active:hover {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled.oo-ui-toggleWidget-on:focus {
border-color: var(--ooui-progressive);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled.oo-ui-toggleWidget-on:focus::before {
border-color: #fff;
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-disabled {
background-color: var(--ooui-disabled);
border-color: var(--ooui-disabled);
}
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled > .oo-ui-buttonElement-button {
color: var(--ooui-text);
}
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled > .oo-ui-buttonElement-button:hover {
color: var(--ooui-text);
}
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled > .oo-ui-buttonElement-button:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled.oo-ui-buttonElement-pressed > input.oo-ui-buttonElement-button,
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled > .oo-ui-buttonElement-button:active {
color: var(--ooui-text);
}
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button,
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button:hover {
color: var(--ooui-text);
}
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button:active,
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive.oo-ui-buttonElement-pressed > .oo-ui-buttonElement-button {
color: var(--ooui-text);
border-color: var(--ooui-text);
}
.oo-ui-buttonElement-frameless.oo-ui-widget-disabled > .oo-ui-buttonElement-button {
color: var(--ooui-disabled-text);
}
.oo-ui-buttonElement-framed.oo-ui-widget-disabled > .oo-ui-buttonElement-button {
background-color: var(--ooui-disabled);
border-color: var(--ooui-disabled-border);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled > .oo-ui-buttonElement-button {
background-color: var(--ooui-normal);
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled > .oo-ui-buttonElement-button:hover {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled > .oo-ui-buttonElement-button:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-buttonElement-active > .oo-ui-buttonElement-button {
background-color: var(--ooui-progressive--hover);
color: #fff;
border-color: var(--ooui-progressive--hover);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-buttonElement-active > .oo-ui-buttonElement-button:focus {
border-color: var(--ooui-progressive--hover);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled > .oo-ui-buttonElement-button:active,
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-buttonElement-pressed > .oo-ui-buttonElement-button {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive {
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button {
color: var(--ooui-text);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button:hover {
background-color: var(--ooui-normal--hover);
border-color: var(--ooui-progressive--hover);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-destructive > .oo-ui-buttonElement-button {
color: var(--ooui-text);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-destructive > .oo-ui-buttonElement-button:hover {
background-color: var(--ooui-normal--hover);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button {
background-color: var(--ooui-progressive);
border-color: var(--ooui-progressive);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button:hover {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent), inset 0 0 0 2px #fff;
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button:active,
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive.oo-ui-buttonElement-pressed > .oo-ui-buttonElement-button,
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive.oo-ui-buttonElement-active > .oo-ui-buttonElement-button,
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive.oo-ui-popupToolGroup-active > .oo-ui-buttonElement-button {
color: #fff;
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
}
.oo-ui-pendingElement-pending {
background-image: var(--ooui-pending-background-image);
background-size: 200%;
animation: oo-ui-pendingElement-stripes 6s linear infinite;
}
@keyframes oo-ui-pendingElement-stripes {
100% {
background-position: 100%;
}
}
.oo-ui-messageDialog-content > .oo-ui-window-foot {
outline-color: var(--ooui-interface-border);
}
.oo-ui-messageDialog-message {
color: var(--ooui-text);
}
.oo-ui-messageDialog-actions-horizontal .oo-ui-actionWidget {
border-right-color: var(--ooui-interface-border);
}
.oo-ui-messageDialog-actions-vertical .oo-ui-actionWidget {
border-bottom-color: var(--ooui-interface-border);
}
.oo-ui-processDialog-content .oo-ui-window-head,
.oo-ui-processDialog-content .oo-ui-window-foot {
outline-color: var(--ooui-interface-border);
}
.oo-ui-processDialog .oo-ui-actionWidget > .oo-ui-buttonElement-button {
border-top-color: transparent;
border-bottom-color: transparent;
}
.oo-ui-processDialog .oo-ui-actionWidget > .oo-ui-buttonElement-button:hover,
.oo-ui-processDialog .oo-ui-actionWidget > .oo-ui-buttonElement-button:active {
border-top-color: transparent;
border-bottom-color: transparent;
}
.oo-ui-processDialog .oo-ui-actionWidget:not( .oo-ui-flaggedElement-progressive ):not( .oo-ui-flaggedElement-destructive ) > .oo-ui-buttonElement-button:hover,
.oo-ui-processDialog .oo-ui-actionWidget:not( .oo-ui-flaggedElement-progressive ):not( .oo-ui-flaggedElement-destructive ) > .oo-ui-buttonElement-button:active {
border-right-color: var(--ooui-interface-border);
border-left-color: transparent;
}
.oo-ui-processDialog .oo-ui-actionWidget:not( .oo-ui-flaggedElement-progressive ):not( .oo-ui-flaggedElement-destructive ) > .oo-ui-buttonElement-button:focus {
border-color: var(--ooui-accent);
}
.oo-ui-processDialog-actions-safe .oo-ui-actionWidget > .oo-ui-buttonElement-button,
.oo-ui-processDialog-actions-other .oo-ui-actionWidget > .oo-ui-buttonElement-button {
border-right-color: var(--ooui-normal-border);
border-left-color: transparent;
}
.oo-ui-processDialog-actions-safe .oo-ui-widget-enabled.oo-ui-iconElement:not( .oo-ui-labelElement ) > .oo-ui-buttonElement-button:hover {
background-color: var(--ooui-normal--hover);
border-right-color: var(--ooui-interface-border);
}
.oo-ui-windowManager-modal > .oo-ui-dialog {
background-color: var(--ooui-window-background);
}
.oo-ui-windowManager-modal > .oo-ui-dialog > .oo-ui-window-frame {
background-color: var(--ooui-interface);
}
.oo-ui-windowManager-modal.oo-ui-windowManager-floating > .oo-ui-dialog > .oo-ui-window-frame {
border-color: var(--ooui-interface-border);
}
.oo-ui-window {
color: var(--ooui-text);
}
.oo-ui-toolbar-bar {
background-color: var(--ooui-interface);
color: var(--ooui-text);
}
.oo-ui-toolbar-position-top > .oo-ui-toolbar-bar {
border-bottom-color: var(--body-mid);
}
.oo-ui-toolbar-bar .oo-ui-bookletLayout > .oo-ui-menuLayout-menu {
border-right-color: var(--body-mid);
}
.oo-ui-tool.oo-ui-widget-enabled > .oo-ui-tool-link:hover {
background-color: var(--ooui-normal--hover);
}
.oo-ui-tool.oo-ui-widget-enabled > .oo-ui-tool-link:focus {
outline: 1px solid var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-tool.oo-ui-widget-enabled > .oo-ui-tool-link:active,
.oo-ui-tool.oo-ui-widget-enabled.oo-ui-tool-active > .oo-ui-tool-link,
.oo-ui-tool.oo-ui-widget-enabled.oo-ui-popupToolGroup-active > .oo-ui-tool-link {
background-color: var(--ooui-normal--hover);
color: var(--ooui-accent);
box-shadow: none;
}
.oo-ui-tool.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive > .oo-ui-tool-link {
background-color: var(--ooui-progressive);
}
.oo-ui-tool.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive > .oo-ui-tool-link:hover {
background-color: var(--ooui-progressive--hover);
}
.oo-ui-tool.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive > .oo-ui-tool-link:focus {
box-shadow: inset 0 0 0 1px var(--ooui-accent), inset 0 0 0 2px #fff;
}
.oo-ui-tool.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive > .oo-ui-tool-link:active,
.oo-ui-tool.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive.oo-ui-tool-active > .oo-ui-tool-link {
background-color: var(--ooui-progressive--hover);
}
.oo-ui-listToolGroup-tools .oo-ui-tool.oo-ui-widget-enabled {
background-color: var(--ooui-normal);
}
.oo-ui-listToolGroup-tools .oo-ui-tool.oo-ui-widget-enabled:hover {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
}
.oo-ui-listToolGroup-tools .oo-ui-tool-active.oo-ui-widget-enabled .oo-ui-tool-link .oo-ui-tool-title {
color: var(--ooui-progressive);
}
.oo-ui-menuToolGroup {
border-left-color: var(--body-mid);
border-right-color: var(--body-mid);
}
.oo-ui-popupToolGroup-tools {
background-color: var(--ooui-interface);
border-color: var(--body-mid);
}
.oo-ui-popupToolGroup.oo-ui-widget-enabled > .oo-ui-popupToolGroup-handle:hover {
background-color: var(--ooui-normal--hover);
}
.oo-ui-popupToolGroup.oo-ui-widget-enabled > .oo-ui-popupToolGroup-handle:focus {
outline: 1px solid var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-toolbar-actions .oo-ui-popupToolGroup.oo-ui-widget-enabled > .oo-ui-popupToolGroup-handle:hover {
border-right-color: var(--ooui-normal--hover);
}
.oo-ui-popupToolGroup-tools .oo-ui-tool.oo-ui-widget-enabled .oo-ui-tool-link:focus {
box-shadow: inset 0 0 0 2px var(--ooui-accent);
}
.oo-ui-popupToolGroup-tools .oo-ui-tool-active.oo-ui-widget-enabled .oo-ui-tool-link .oo-ui-tool-title {
color: var(--ooui-progressive);
}
.oo-ui-popupToolGroup.oo-ui-popupToolGroup-active > .oo-ui-popupToolGroup-handle {
background-color: var(--ooui-normal);
color: var(--ooui-accent);
}
.oo-ui-popupToolGroup.oo-ui-popupToolGroup-active > .oo-ui-popupToolGroup-handle:hover {
background-color: var(--ooui-normal--hover);
color: var(--ooui-accent);
}
.oo-ui-bookletLayout-outlinePanel > .oo-ui-outlineControlsWidget {
border-top-color: var(--ooui-interface-border);
}
.oo-ui-bookletLayout > .oo-ui-menuLayout-menu {
border-right-color: var(--ooui-interface-border);
}
.oo-ui-fieldLayout-disabled > .oo-ui-fieldLayout-body > .oo-ui-fieldLayout-header > .oo-ui-labelElement-label {
color: var(--ooui-disabled-text);
}
.oo-ui-panelLayout-framed {
border-color: var(--sidebar);
}
.oo-ui-icon-settings {
background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' width='20' height='20' viewBox='0 0 20 20'%3E%3Ctitle%3Esettings%3C/title%3E%3Cg transform='translate(10 10)'%3E%3Cpath id='a' d='M1.5-10h-3l-1 6.5h5m0 7h-5l1 6.5h3'/%3E%3Cuse xlink:href='%23a' transform='rotate(45)'/%3E%3Cuse xlink:href='%23a' transform='rotate(90)'/%3E%3Cuse xlink:href='%23a' transform='rotate(135)'/%3E%3C/g%3E%3Cpath d='M10 2.5a7.5 7.5 0 0 0 0 15 7.5 7.5 0 0 0 0-15v4a3.5 3.5 0 0 1 0 7 3.5 3.5 0 0 1 0-7'/%3E%3C/svg%3E");
}
.oo-ui-icon-clear {
background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 20 20'%3E%3Ctitle%3Eclear%3C/title%3E%3Cpath d='M10 0a10 10 0 1 0 10 10A10 10 0 0 0 10 0zm5.66 14.24-1.41 1.41L10 11.41l-4.24 4.25-1.42-1.42L8.59 10 4.34 5.76l1.42-1.42L10 8.59l4.24-4.24 1.41 1.41L11.41 10z'/%3E%3C/svg%3E");
}
.mw-widget-dateInputWidget-handle {
background-color: var(--ooui-input);
color: var(--ooui-text);
border-color: var(--ooui-input-border);
}
.mw-widget-dateInputWidget-calendar {
background-color: var(--ooui-interface);
}
.mw-widget-dateInputWidget.oo-ui-widget-enabled .mw-widget-dateInputWidget-handle:hover {
border-color: var(--ooui-input-border--hover);
}
.mw-widget-calendarWidget {
border-color: var(--ooui-interface-border);
}
.mw-widget-calendarWidget:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.mw-widget-calendarWidget-day,
.mw-widget-calendarWidget-day-heading {
color: var(--ooui-text);
}
.mw-widget-calendarWidget-day-additional {
color: var(--ooui-text);
opacity: 0.67;
}
.mw-widget-calendarWidget-day-today {
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.mw-widget-calendarWidget-item:hover {
background-color: var(--ooui-progressive);
}
.mw-widget-calendarWidget-item-selected {
background-color: var(--ooui-progressive--hover);
}
.mw-widgets-datetime-calendarWidget {
background-color: var(--ooui-interface);
border-color: var(--ooui-interface-border);
}
.mw-widgets-datetime-calendarWidget:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent), 0 2px 2px 0 rgba(0, 0, 0, 0.25);
}
.mw-widgets-datetime-calendarWidget-grid .mw-widgets-datetime-calendarWidget-cell.mw-widgets-datetime-calendarWidget-extra .oo-ui-buttonElement-button .oo-ui-labelElement-label {
color: var(--subtle-color);
}
.mw-widgets-datetime-calendarWidget-grid .mw-widgets-datetime-calendarWidget-cell.mw-widgets-datetime-calendarWidget-selected .oo-ui-buttonElement-button {
background-color: var(--ooui-progressive--hover);
}
.mw-widgets-datetime-dateTimeInputWidget-handle {
background-color: var(--ooui-input);
color: var(--ooui-text);
border-color: var(--ooui-input-border);
}
.mw-widgets-datetime-dateTimeInputWidget.oo-ui-widget-enabled.mw-widgets-datetime-dateTimeInputWidget-handle:hover {
border-color: var(--ooui-input-border--hover);
}
.mw-widgets-datetime-dateTimeInputWidget.oo-ui-widget-enabled:hover input,
.mw-widgets-datetime-dateTimeInputWidget.oo-ui-widget-enabled:hover textarea {
border-color: var(--ooui-input-border--hover);
}
.mw-widgets-datetime-dateTimeInputWidget.oo-ui-widget-enabled .mw-widgets-datetime-dateTimeInputWidget-editField:hover {
background-color: var(--ooui-normal);
}
.ve-activated .ve-init-mw-desktopArticleTarget-originalContent #catlinks:hover {
background: var(--ooui-normal--hover);
}
.ve-ui-overlay {
font-family: inherit;
}
.oo-ui-toolbar-position-top .ve-ui-toolbarDialog-position-above {
border-top-color: var(--body-mid);
}
.ve-ce-branchNode-blockSlug,
.ve-ce-branchNode-newSlug {
outline-color: var(--body-border);
background-color: var(--ooui-interface);
}
.ve-ui-specialCharacterPage h3 {
color: var(--byline-color);
}
.ve-ui-specialCharacterPage-character {
border-color: var(--body-mid);
}
.ve-ui-specialCharacterPage-character:hover {
border-color: var(--body-dark);
}
.ve-ce-linkAnnotation.ve-ce-annotation-active {
box-shadow: 0 0 0 1px var(--body-mid);
background: none;
}
.ve-ui-desktopContext .ve-ui-linkContextItem .ve-ui-linkContextItem-label {
border-color: var(--body-border);
}
.ve-ui-mwHelpPopupTool-version-label,
.ve-ui-mwHelpPopupTool-version-link,
.ve-ui-mwHelpPopupTool-version-date {
color: var(--byline-color);
}
.ve-ce-tableCellableNode {
border-color: var(--body-mid);
}
.ve-ce-mwReferencesListNode-muted {
color: var(--byline-color);
}
.ve-ui-mwTemplatePage-description,
.ve-ui-mwParameterPage-label,
.ve-ui-mwParameterPage-description-required,
.ve-ui-mwParameterPage-description-deprecated {
color: var(--byline-color);
}
.mw-widget-titleWidget-menu .mw-widget-titleOptionWidget-description {
color: var(--byline-color);
}
.ve-ui-mwGalleryDialog-menuLayout > .oo-ui-menuLayout-menu,
.ve-ui-mwGalleryDialog-innerMenuLayout > .oo-ui-menuLayout-menu,
.ve-ui-mwGalleryDialog .ve-ui-mwGalleryDialog-image-container,
.ve-ui-targetWidget {
border-color: var(--body-border);
}
.ve-ui-targetWidget:not(.oo-ui-pendingElement-pending) {
background-color: var(--body-main);
}
.ve-ui-mwSaveDialog {
color: var(--ooui-text);
}
.ve-ui-mwSaveDialog-options {
background-color: var(--ooui-interface);
border-color: var(--body-border);
}
.ve-ui-mwSaveDialog-summary {
background-color: var(--ooui-input);
}
.ve-ui-mwSaveDialog-editSummary-count {
border-color: var(--body-border);
}
.ve-ui-mwSaveDialog-license {
color: var(--byline-color);
}
.ve-ui-mwReferenceContextItem-muted {
color: var(--byline-color);
}
.ve-ui-mwNoticesPopupTool-items > div:not(:first-child),
.ve-ui-mwHelpPopupTool-item:not(:first-child) {
border-color: var(--body-border);
}
.ve-ui-mwTransclusionOutlineControlsWidget {
background-color: var(--ooui-interface);
border-top-color: var(--body-border);
}
.ve-ui-mwTransclusionOutlineTemplateWidget-sticky {
background-color: var(--ooui-interface);
}
.ve-ui-mwTransclusionOutlineTemplateWidget .ve-ui-mwTransclusionOutlineParameterWidget.oo-ui-optionWidget-highlighted {
color: var(--ooui-text);
}
.ve-ui-mwTransclusionOutlineTemplateWidget-no-template-parameters {
color: var(--subtle-color);
}
.ve-ui-mwParameterPage-undocumentedLabel {
color: var(--subtle-color);
}
.ve-ui-mwTwoPaneTransclusionDialogLayout > .oo-ui-menuLayout-menu {
border-right: var(--body-border);
}
.ve-ui-mwParameterPage-doc-required,
.ve-ui-mwParameterPage-doc-deprecated,
.ve-ui-mwParameterPage-inlineDescription .ve-ui-mwParameterPage-doc-example {
color: var(--byline-color);
}
.ve-ui-expandableContent-toggle {
background-color: var(--ooui-interface);
}
.ve-ui-expandableContent-fade {
background: linear-gradient(to right, rgba(255, 255, 255, 0) 0, var(--ooui-interface) 90%);
}
.ve-ui-commandHelpDialog-shortcut > kbd,
.ve-ui-commandHelpDialog-sequence > kbd {
background-color: var(--keypress-background);
color: var(--keypress-color);
border-color: var(--keypress-border);
box-shadow: none;
text-shadow: none;
}
.ve-init-mw-desktopArticleTarget-toolbarPlaceholder-floating .ve-init-mw-desktopArticleTarget-toolbarPlaceholder-bar {
background: var(--ooui-interface);
}
.ve-init-mw-desktopArticleTarget-toolbarPlaceholder-bar {
border-bottom-color: var(--body-mid);
}
figure[typeof~='mw:File/Thumb'],
figure[typeof~='mw:File/Frame'],
figure[typeof~='mw:Image/Thumb'],
figure[typeof~='mw:Video/Thumb'],
figure[typeof~='mw:Image/Frame'],
figure[typeof~='mw:Video/Frame'] {
border: none;
background-color: var(--thumb-bg);
}
figure[typeof~='mw:File/Thumb'] > a:first-child > *:first-child:not( .mw-broken-media ),
figure[typeof~='mw:File/Frame'] > a:first-child > *:first-child:not( .mw-broken-media ),
figure[typeof~='mw:Image/Thumb'] > a:first-child > *:first-child:not( .mw-broken-media ),
figure[typeof~='mw:Video/Thumb'] > a:first-child > *:first-child:not( .mw-broken-media ),
figure[typeof~='mw:Image/Frame'] > a:first-child > *:first-child:not( .mw-broken-media ),
figure[typeof~='mw:Video/Frame'] > a:first-child > *:first-child:not( .mw-broken-media ) {
border: none;
background: var(--thumb-bg);
}
figure[typeof~='mw:File/Thumb'] > figcaption,
figure[typeof~='mw:File/Frame'] > figcaption,
figure[typeof~='mw:Image/Thumb'] > figcaption,
figure[typeof~='mw:Video/Thumb'] > figcaption,
figure[typeof~='mw:Image/Frame'] > figcaption,
figure[typeof~='mw:Video/Frame'] > figcaption {
border: none;
background-color: var(--thumb-caption-bg);
padding: 4px 6px;
}
:root {
--keypress-background: #eee;
--keypress-border: #ccc;
--keypress-color: #333;
}
.toc .toctitle > * {
color: #fff;
}
.navbox .navbox-title {
color: #fff;
}
.navbox .navbox-list:not(last-child) {
border-bottom: none;
}
.archivelist {
background-color: var(--body-light);
border: solid 1px var(--body-border);
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
float: right;
margin: 5px;
padding: 5px;
text-align: center;
width: 120px;
}
.shortcut {
border: 1px solid var(--body-border);
background: var(--body-light);
float: right;
font-size: 0.8em;
margin: 0.5em 0em 0.5em 1em;
padding: 0.5em;
text-align: center;
}
.hatnote,
.seealso {
font-style: italic;
}
.hatnote i,
.seealso i {
font-style: normal;
}
div.hatnote,
div.seealso {
margin: 0.5em 1.6em;
}
div.hatnote + div.hatnote,
div.hatnote + div.seealso,
div.seealso + div.hatnote,
div.seealso + div.seealso {
margin-top: -0.5em;
}
.keypress {
background: var(--keypress-background);
color: var(--keypress-color);
font-family: inherit;
border: 1px solid var(--keypress-border);
border-radius: 2px;
font-size: 0.9em;
margin: 0 0.1em;
padding: 0.1em 0.4em;
white-space: nowrap;
}
:root {
--documentation-background: #f9fafa;
--documentation-link-color: #e4eaee;
--documentation-headers-color: #fff;
--documentation-header-background: #949eaa;
--documentation-subheader-background: #808c9a;
--documentation-border: #e4eaee;
}
.documentation {
background: var(--documentation-background);
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
margin: 1em 0;
}
.documentation pre,
.documentation code {
background-color: var(--documentation-background);
border-color: var(--documentation-border);
}
.documentation h2,
.documentation hr {
border-color: var(--documentation-border);
}
.documentation-header {
color: var(--documentation-headers-color);
background: var(--documentation-header-background);
font-weight: bold;
padding: 1em 1.5em;
}
.documentation-title {
font-size: 1.25em;
}
.documentation-subheader {
color: var(--documentation-headers-color);
background: var(--documentation-subheader-background);
padding: 0.5em 1.5em;
}
.documentation-subheader a,
.documentation-subheader a:visited,
.documentation-subheader a:active {
color: var(--documentation-link-color);
}
.documentation-documentation,
.documentation-links {
font-size: 0.85em;
}
.documentation-content {
padding: 1em 1.5em;
}
.mw-templatedata-doc-params dl:not(:empty) {
column-count: 3;
border-top: 1px solid var(--body-border);
margin-bottom: 0.5em;
}
.mw-templatedata-doc-params dt::after {
content: ":";
}
.mw-templatedata-doc-params dd,
.mw-templatedata-doc-params dt {
margin: 0.1em 2em;
min-width: auto;
}
.mw-templatedata-doc-muted {
color: var(--subtle-color);
font-style: italic;
}
:root {
--infobox-text-color: var(--text-color);
--table-header: var(--body-dark);
--table-subheader: var(--body-mid);
--table-body: var(--body-light);
--table-border: var(--body-border);
}
.infobox {
font-size: 0.85em;
width: 300px;
border-collapse: collapse;
float: right;
table-layout: fixed;
margin: 0.5em 0 1em 1em;
}
.infobox .infobox-buttons {
display: flex;
flex-wrap: wrap;
justify-content: center;
grid-gap: 3px;
margin-bottom: 3px;
}
.infobox .infobox-buttons .button {
background: var(--table-header);
padding: 0 5px;
font-weight: bold;
flex: 1 1 20%;
max-width: 20%;
color: #fff;
}
.infobox .infobox-buttons .button.button-selected {
background: var(--table-subheader);
}
.infobox tbody {
border: 1px solid var(--table-border);
background: var(--table-body);
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(231, 215, 199, 0.5);
}
.infobox .infobox-header {
background: var(--table-header);
padding: 0.5em 0;
text-align: center;
color: #fff;
font-size: 1.15em;
font-weight: bold;
line-height: 1.4em;
}
.infobox .infobox-image {
text-align: center;
}
.infobox .infobox-subheader {
background: var(--table-subheader);
font-weight: bold;
text-align: center;
color: #fff;
}
.infobox .infobox-padding {
backgound: var(--table-body);
}
.infobox tr td:not(.infobox-padding) {
padding: 0.2em 0.5em;
}
.infobox th:not(.infobox-header):not(.infobox-subheader):not(.infobox-nested) {
border-right: 2px solid var(--table-subheader);
text-align: right;
padding: 0.2em 0.5em;
}
.infobox select {
max-width: 300px;
}
.hidden {
display: none;
}
ol.references,
.reflist {
font-size: 90%;
}
.reflist {
list-style-type: decimal;
}
.reflist .references {
font-size: 100%;
list-style-type: inherit;
}
.reflist-lower-alpha {
list-style-type: lower-alpha;
}
ol.references li:target,
sup.reference:target {
background-color: var(--body-light);
}
.hideQuotes .refhide {
display: none;
}
:root {
--messagebox-obsolete-background: #cfcfcf;
--messagebox-obsolete-border: #464646;
--messagebox-obsolete-color: var(--text-color);
--messagebox-obsolete-link-color: #6c6c6c;
--messagebox-info-background: #ebebeb;
--messagebox-info-border: #898989;
--messagebox-info-color: var(--text-color);
--messagebox-info-link-color: #6c6c6c;
--messagebox-action-background: #c7e8fa;
--messagebox-action-border: #0b5884;
--messagebox-action-color: var(--text-color);
--messagebox-action-link-color: #03436b;
--messagebox-warn-background: #dfc0ba;
--messagebox-warn-border: #861c10;
--messagebox-warn-color: var(--text-color);
--messagebox-warn-link-color: #8e221a;
--messagebox-safe-background: #d8f0d3;
--messagebox-safe-border: #1b8408;
--messagebox-safe-color: var(--text-color);
--messagebox-safe-link-color: #1b8408;
--messagebox-disambig-background: #ebebeb;
--messagebox-disambig-border: #898989;
--messagebox-disambig-color: var(--text-color);
--messagebox-disambig-link-color: #6c6c6c;
--messagebox-discord-background: #5865f2;
--messagebox-discord-border: #4c57d0;
--messagebox-discord-link-color: #d2e5fc;
}
.mw-message-box,
.mw-message-box-error,
.mw-message-box-warning,
.mw-message-box-success,
.usermessage {
color: var(--text-color);
}
.messagebox {
width: 65%;
margin: 0.5em auto;
border-left: 15px solid;
border-color: var(--body-dark);
background-color: var(--body-light);
box-sizing: border-box;
}
.messagebox.obsolete {
background-color: var(--messagebox-obsolete-background);
border-color: var(--messagebox-obsolete-border);
color: var(--messagebox-obsolete-color);
}
.messagebox.obsolete a,
.messagebox.obsolete a:visited,
.messagebox.obsolete a:active {
color: var(--messagebox-obsolete-link-color);
}
.messagebox.info {
background-color: var(--messagebox-info-background);
border-color: var(--messagebox-info-border);
color: var(--messagebox-info-color);
}
.messagebox.info a,
.messagebox.info a:visited,
.messagebox.info a:active {
color: var(--messagebox-info-link-color);
}
.messagebox.action {
background-color: var(--messagebox-action-background);
border-color: var(--messagebox-action-border);
color: var(--messagebox-action-color);
}
.messagebox.action a,
.messagebox.action a:visited,
.messagebox.action a:active {
color: var(--messagebox-action-link-color);
}
.messagebox.warn {
background-color: var(--messagebox-warn-background);
border-color: var(--messagebox-warn-border);
color: var(--messagebox-warn-color);
}
.messagebox.warn a,
.messagebox.warn a:visited,
.messagebox.warn a:active {
color: var(--messagebox-warn-link-color);
}
.messagebox.safe {
background-color: var(--messagebox-safe-background);
border-color: var(--messagebox-safe-border);
color: var(--messagebox-safe-color);
}
.messagebox.safe a,
.messagebox.safe a:visited,
.messagebox.safe a:active {
color: var(--messagebox-safe-link-color);
}
.messagebox.disambig {
background-color: var(--messagebox-disambig-background);
border-color: var(--messagebox-disambig-border);
color: var(--messagebox-disambig-color);
}
.messagebox.disambig a,
.messagebox.disambig a:visited,
.messagebox.disambig a:active {
color: var(--messagebox-disambig-link-color);
}
.messagebox.discord {
background-color: var(--messagebox-discord-background);
border-color: var(--messagebox-discord-border);
color: #fff;
}
.messagebox.discord a,
.messagebox.discord a:visited,
.messagebox.discord a:active {
color: var(--messagebox-discord-link-color);
}
.messagebox.discord a.external,
.messagebox.discord a:visited.external,
.messagebox.discord a:active.external {
font-style: italic;
}
.messagebox.stub {
width: 40%;
}
.messagebox.hasdialogue {
padding: 0 10px;
width: auto;
}
:root {
--byline-arrow-filter: invert(29%) sepia(0%) saturate(376%) hue-rotate(172deg) brightness(87%) contrast(80%);
--tile-border-color: var(--body-border);
--tile-background-color: var(--body-light);
--tile-link-button-color: #f5e9db;
--tile-link-button-highlight-color: #dfccb0;
--tile-dark-color: #fff;
--tile-dark-bg: var(--body-dark);
--tile-dark-link-color: #ccc;
--tile-dark-byline-color: rgba(255, 255, 255, 0.7);
--tile-dark-header-color: #fff;
}
.tile {
background: var(--tile-background-color);
border: 1px solid var(--tile-border-color);
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
padding: 1.5em 2em 1em;
max-width: 40em;
}
.tile h2 {
font-size: 1.4em;
font-weight: bold;
border: none;
margin: 0 0 0.4em;
}
.tile .byline + h2 {
margin-top: -0.5em;
}
.tile.dark {
color: var(--tile-dark-color);
background: var(--tile-dark-bg);
border: none;
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.3);
}
.tile.dark h2 {
color: var(--tile-dark-header-color);
}
.tile.dark a {
color: var(--tile-dark-link-color);
}
.tile.dark .byline {
color: var(--tile-dark-byline-color);
}
.byline {
font-size: 0.9em;
color: var(--byline-color);
}
.byline a {
color: var(--byline-color);
}
.tile-row {
display: flex;
flex-flow: row wrap;
margin-bottom: 1em;
}
.tile-halves {
display: flex;
flex-flow: row wrap;
background: var(--tile-background-color);
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
}
.tile-halves h2 {
font-size: 1.4em;
font-weight: bold;
border: none;
margin: 0 0 0.4em;
}
.tile-halves .byline + h2 {
margin-top: -0.5em;
}
.tile-top {
width: 100%;
padding: 1.3rem 1.5rem 0.6rem;
}
.tile-top.tile-image {
display: flex;
align-items: center;
background-color: var(--body-light);
overflow: hidden;
padding: 0;
height: 13vw;
max-height: 12em;
transition: 0.4s ease-out;
}
.tile-halves:hover .tile-top.tile-image img {
transform: scale(1.1);
transition: 0.5s ease-out;
}
.tile-top.tile-image a {
width: 100%;
}
.tile-top.tile-image img {
width: 100%;
object-fit: cover;
max-height: 200px;
transition: 0.4s ease-out;
}
.tile-bottom {
background: var(--body-dark);
width: 100%;
padding: 1rem 1.5rem 0.6rem;
}
.tile-bottom h2 a {
color: #fff !important;
}
.tile-bottom.link-button {
align-self: flex-end;
padding: 0;
}
.tile-bottom.link-button a {
display: block;
text-align: center;
padding: 0.75em 1.5em 0.8em;
text-decoration: none;
}
.tile-bottom.read-more {
background: var(--tile-link-button-color);
transition: 0.3s ease-out;
}
.tile-bottom.read-more a {
color: var(--byline-color);
font-weight: bold;
text-align: right;
}
.tile-bottom.read-more:hover {
background: var(--tile-link-button-highlight-color);
}
.tile-bottom.read-more:hover .arrow {
transform: translateX(50%);
}
.tile-bottom.read-more .arrow {
filter: var(--byline-arrow-filter);
margin-left: 0.4em;
transition: 0.3s ease-out;
}
body.page-Main_Page.action-view .catlinks,
body.page-Main_Page.action-view #contentSub,
body.page-Main_Page.action-view #firstHeading,
body.page-Main_Page.action-view #siteNotice {
display: none;
}
body.page-Main_Page .mw-parser-output {
max-width: 75em;
margin: 0 auto;
}
body.page-Main_Page.action-view .catlinks,
body.page-Main_Page.action-view #contentSub,
body.page-Main_Page.action-view #siteNotice {
display: none;
}
.mainpage-header {
display: flex;
margin: 2.6em 1.75em 1.5em;
}
.mainpage-header .header-intro {
flex: 2;
}
.mainpage-header .header-intro h1 {
font-size: 2.5em;
font-weight: bold;
border: none;
margin: 0 0 0.15em;
}
.mainpage-header .header-intro p {
font-size: 1.1em;
line-height: 1.7em;
}
.mainpage-header .header-stats {
flex: 1;
display: flex;
justify-content: center;
align-items: center;
margin-top: -1em;
}
.mainpage-body {
display: grid;
grid-template-areas: "event event event" "update update update" "content content content" "left left right";
gap: 0.9rem;
grid-template-columns: repeat(3, 1fr);
}
.mainpage-body h2 a {
color: var(--text-color);
}
.mainpage-body .tile {
padding-left: 1.75em;
padding-right: 1.75em;
max-width: 100%;
}
.mainpage-body .tile-row {
width: 100%;
margin-bottom: 0;
}
.mainpage-body .tile-row {
display: grid;
gap: 0.9rem;
}
.mainpage-contents.tile-row {
display: flex;
}
.mainpage-contents.tile-row .tile-top {
height: 5.5rem;
}
.mainpage-left {
grid-area: left;
flex: 2;
display: flex;
flex-flow: column wrap;
}
.mainpage-left > * {
margin: 0 0 0.9rem;
}
.mainpage-right {
grid-area: right;
flex: 1;
display: flex;
flex-flow: column wrap;
}
.mainpage-right > * {
margin: 0 0 0.9rem;
}
.arrow {
background: url('filepath://White-chevron.svg') no-repeat;
display: inline-block;
height: 0.7rem;
width: 0.45rem;
vertical-align: middle;
}
.arrow.dark {
filter: invert(80%);
}
.mainpage-contents {
grid-area: content;
grid-template-columns: repeat(6, 1fr);
}
.mainpage-contents .tile-halves {
flex: 1;
}
.mainpage-contents .tile-top {
height: 4.5rem;
position: relative;
}
.mainpage-contents .tile-top.tile-image img {
height: auto;
}
.mainpage-contents h2 {
margin: 0;
padding: 0;
}
.mainpage-contents .tile-bottom.link-button a {
padding: 0.75em 0.2em;
}
.popular-pages ul {
display: grid;
grid-template-columns: repeat(3, 1fr);
grid-gap: 0.6em;
margin: 1em 0 0.7em 0;
}
.mp-popular-page-light {
display: flex;
align-items: center;
background-color: var(--button-background);
transition: 100ms;
}
.mp-popular-page-light a {
flex: 1;
display: block;
color: #fff;
font-weight: bold;
text-align: center;
text-decoration: none;
padding: 0.7em 1em;
}
.mp-popular-page-light:hover {
filter: brightness(115%);
transition: 100ms;
}
.mainpage-social {
border: none;
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.3);
}
.mainpage-social .tile-top {
display: flex;
align-items: center;
padding: 1em 1.5em;
}
.mainpage-social .tile-top a {
flex: 1;
position: relative;
text-decoration: none;
}
.mainpage-social .tile-top a:hover .arrow {
transform: translateX(50%);
}
.mainpage-social .tile-bottom {
border: none;
padding: 1em 1.75em;
}
.mainpage-social .tile-bottom p {
color: #fff;
font-weight: bold;
font-size: 0.9em;
text-align: center;
text-transform: uppercase;
letter-spacing: 0.03em;
margin: 0;
}
.mainpage-social .social-icon {
margin-right: 0.75em;
text-align: center;
width: 60px;
}
.mainpage-social .social-header {
color: #fff;
font-weight: bold;
font-size: 1.15em;
margin: 0.5em 0 -0.15em;
}
.mainpage-social .server-tagline {
color: rgba(255, 255, 255, 0.9);
margin-bottom: 0.5em;
}
.mainpage-social .arrow {
position: absolute;
top: calc(50% - .5em);
right: 0;
height: 1em;
width: 0.7em;
background-size: 0.7em 1em;
transition: 0.3s ease-out;
}
.mainpage-social.mainpage-discord .tile-top {
background: #5865f2;
}
.mainpage-social.mainpage-discord .tile-bottom {
background: #525ee0;
}
.mainpage-social.mainpage-twitter .tile-top {
background: #15202b;
}
.mainpage-social.mainpage-twitter .tile-bottom {
background: #121c26;
}
.mainpage-editing {
border: none;
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.3);
}
.mainpage-editing .tile-top {
background: #438ab5;
}
.mainpage-editing .tile-bottom {
background: #3980ab;
border: none;
padding: 0.8rem 1.5rem 0.4rem;
}
.mainpage-editing h2,
.mainpage-editing a {
color: #fff;
}
.mainpage-editing p {
color: rgba(255, 255, 255, 0.9);
}
.mainpage-editing ul {
list-style-image: url('filepath://Transparent-chevron.svg');
}
@media only screen and (max-width: 1200px) {
.mainpage-contents {
grid-template-columns: repeat(3, 1fr);
}
}
@media only screen and (max-width: 1000px) {
.mainpage-body {
grid-template-areas: "event event event" "update update update" "content content content" "left left left" "right right right";
}
.mainpage-recent-updates {
grid-template-columns: repeat(2, 1fr);
}
.mainpage-recent-updates .tile-halves:last-child {
display: none;
}
.mainpage-recent-updates .tile-halves:hover .tile-top img {
transform: scale(1.04);
}
.mainpage-recent-updates .tile-top {
height: 18vw;
min-height: 9em;
}
.mainpage-header .header-stats {
display: none;
}
.mainpage-left > *:last-child,
.mainpage-right > *:last-child {
margin-bottom: 0;
}
.popular-pages ul {
grid-template-columns: repeat(2, 1fr);
}
}
@media only screen and (max-width: 720px) {
.mainpage-recent-updates {
grid-template-columns: none;
}
.mainpage-recent-updates .tile-halves:last-child {
display: flex;
}
.mainpage-contents {
grid-template-columns: repeat(2, 1fr);
}
}
.mw-prefs-buttons {
background-color: var(--body-main);
border-top-color: var(--body-border);
box-shadow: none;
}
.mw-prefs-tabs-wrapper.oo-ui-panelLayout-framed,
.mw-prefs-tabs > .oo-ui-menuLayout-content > .oo-ui-indexLayout-stackLayout > .oo-ui-tabPanelLayout {
border-color: var(--body-border);
}
.mw-htmlform-ooui .mw-htmlform-matrix tbody tr:nth-child(even) td {
background-color: var(--body-light);
}
.mw-htmlform-ooui .mw-htmlform-matrix tbody tr:hover td {
background-color: var(--body-mid);
}
:root {
--rc-positive-color: #407813;
--rc-negative-color: #b41e0f;
}
.mw-plusminus-pos {
color: var(--rc-positive-color);
}
.mw-plusminus-neg {
color: var(--rc-negative-color);
}
.client-js .mw-recentchanges-toplinks:not(.mw-recentchanges-toplinks-collapsed) {
border-color: var(--body-border);
background-color: var(--body-light);
border-radius: 2px;
}
.mw-rcfilters-ui-filterTagMultiselectWidget-wrapper-content-title {
color: var(--text-color);
}
.mw-rcfilters-ui-filterTagMultiselectWidget-emptyFilters {
color: var(--byline-color);
}
.mw-rcfilters-ui-filterTagMultiselectWidget.oo-ui-widget-enabled .oo-ui-tagMultiselectWidget-handle {
background-color: var(--ooui-interface);
border-color: var(--ooui-interface-border);
}
.mw-rcfilters-ui-filterTagMultiselectWidget-views-select-widget.oo-ui-widget {
border-color: var(--ooui-interface-border);
}
.mw-rcfilters-collapsed .mw-rcfilters-ui-filterTagMultiselectWidget {
border-bottom-color: var(--ooui-interface-border);
}
.mw-rcfilters-ui-menuSelectWidget-footer {
background-color: var(--ooui-interface);
border-color: var(--ooui-interface-border);
}
.mw-rcfilters-ui-viewSwitchWidget label.oo-ui-labelWidget {
color: var(--byline-color);
}
.mw-rcfilters-ui-tagItemWidget-popup-content {
color: var(--ooui-text);
}
.mw-changeslist-legend,
.mw-rcfilters-ui-changesListWrapperWidget .mw-changeslist-legend {
background-color: var(--body-light);
border-color: var(--body-dark);
}
.mw-rcfilters-ui-changesListWrapperWidget-previousChangesIndicator {
border-color: var(--sidebar);
}
.client-js .mw-changeslist ul,
.client-js .mw-changeslist table.mw-enhanced-rc {
margin-left: 0;
}
.mw-rcfilters-ui-watchlistTopSectionWidget-separator {
border-color: var(--sidebar);
}
.mw-rcfilters-ui-itemMenuOptionWidget-header {
border-bottom-color: var(--ooui-interface);
background-color: var(--ooui-interface-border);
}
.mw-rcfilters-ui-itemMenuOptionWidget:not(:last-child):not(.mw-rcfilters-ui-itemMenuOptionWidget-identifier-talk) {
border-bottom-color: var(--ooui-normal-border);
}
.mw-rcfilters-ui-itemMenuOptionWidget-label-title,
.mw-rcfilters-ui-itemMenuOptionWidget-label-desc {
color: var(--text-color);
}
.mw-rcfilters-ui-filterMenuOptionWidget.oo-ui-flaggedElement-muted:not(.oo-ui-optionWidget-selected) {
background-color: var(--body-main);
}
.mw-rcfilters-ui-filterMenuOptionWidget.oo-ui-flaggedElement-muted .mw-rcfilters-ui-itemMenuOptionWidget-label-title,
.mw-rcfilters-ui-filterMenuOptionWidget.oo-ui-flaggedElement-muted .mw-rcfilters-ui-itemMenuOptionWidget-label-desc {
color: var(--subtle-color);
}
.mw-rcfilters-ui-filterMenuSectionOptionWidget {
background-color: var(--body-mid);
}
.mw-rcfilters-ui-filterMenuSectionOptionWidget-header-title.oo-ui-labelElement-label {
color: var(--ooui-text);
}
.mw-rcfilters-ui-filterMenuHeaderWidget-title {
color: var(--ooui-text);
}
.mw-rcfilters-ui-filterMenuHeaderWidget-header {
border-bottom-color: var(--ooui-interface-border);
background-color: var(--ooui-interface);
}
.mw-rcfilters-ui-itemMenuOptionWidget-view-namespaces {
border-top-color: var(--ooui-interface-border);
}
.mw-rcfilters-ui-datePopupWidget {
border-color: var(--ooui-interface-border);
}
.mw-rcfilters-ui-datePopupWidget .mw-rcfilters-ui-valuePickerWidget-title {
color: var(--byline-color);
}
.mw-rcfilters-ui-savedLinksListItemWidget-label {
color: var(--ooui-accent);
}
.client-js .mw-changeslist.mw-rcfilters-ui-changesListWrapperWidget-highlighted ul,
.client-js .mw-changeslist.mw-rcfilters-ui-changesListWrapperWidget-highlighted table.mw-enhanced-rc {
margin-left: 1.5em;
}
.page-Special_CreateAccount .mw-ui-container,
.page-Special_UserLogin .mw-ui-container {
max-width: 64rem;
margin: 0 auto;
}
.mw-number-text {
color: var(--byline-color);
}
.mw-body-content .mw-number-text h3 {
color: var(--text-color);
}
#mw-indicator-mw-helplink a {
background: none;
padding: 0;
display: flex;
align-items: center;
}
#mw-indicator-mw-helplink a::before {
content: '';
margin-right: 5px;
-webkit-mask: url("/resources/src/mediawiki.helplink/images/helpNotice.svg?46d34") no-repeat 50% 50% / contain;
mask: url("/resources/src/mediawiki.helplink/images/helpNotice.svg?46d34") no-repeat 50% 50% / contain;
background: var(--text-color);
height: 20px;
width: 20px;
}
.results-info {
color: inherit;
}
.mw-search-profile-tabs {
background-color: var(--body-mid);
border-color: transparent;
}
.search-types .current a {
color: inherit;
}
#mw-searchoptions {
background-color: var(--body-mid);
border-color: transparent;
}
#mw-searchoptions .divider {
border-color: var(--body-border);
}
#mw-searchoptions h4 {
font-family: inherit;
}
#mw-searchoptions .oo-ui-labelElement:nth-of-type(odd) {
font-weight: bold;
}
.searchresult {
line-height: 1.5;
}
.searchalttitle,
#mw-search-interwiki li {
font-size: 90%;
}
.mw-search-result-data {
color: var(--byline-color);
}
.page-Special_ListFiles a.image img {
width: inherit;
height: inherit;
}
.page-Special_ListFiles .TablePager_col_thumb {
text-align: center;
}
#editcount table[border="1"] {
background-color: var(--body-main) !important;
border-color: var(--wikitable-border) !important;
margin-top: 0.5em;
}
#editcount table[border="1"] th,
#editcount table[border="1"] td {
padding: 0.2em 0.4em;
}
#editcount table[border="1"] th {
background-color: var(--wikitable-header-bg);
border: 1px solid var(--wikitable-border);
}
#editcount table[border="1"] td {
border: 1px solid var(--wikitable-border);
}
#editcount table[border="1"] tr:nth-child(odd) {
background-color: var(--body-light);
}
.mw-echo-ui-notificationBadgeButtonPopupWidget-popup > .oo-ui-popupWidget-popup .mw-echo-ui-placeholderItemWidget {
background-color: inherit;
}
table.mw-interwikitable.body td.mw-interwikitable-local-yes {
background-color: var(--table-yes-background);
color: var(--table-yes-color);
}
.mw-protectedpages-unknown {
color: var(--byline-color);
}
.watchlistredir,
.allpagesredirect {
font-style: italic;
}
.allpagesredirect:after {
color: var(--byline-color);
content: " (redirect)";
}
.mw-apisandbox-toolbar {
background: var(--body-main);
}
.oo-ui-menuOptionWidget .mw-apisandbox-flag {
color: var(--byline-color);
}
tr.mw-abusefilter-list-disabled,
tr.mw-abusefilter-list-disabled td {
color: var(--byline-color);
}
table.mw-abuselog-details {
background: var(--wikitable-bg);
border-color: var(--wikitable-border);
}
table.mw-abuselog-details th {
background: var(--wikitable-header-bg);
}
table.mw-abuselog-details th,
table.mw-abuselog-details td {
border-color: var(--wikitable-border);
}
.mw-abusefilter-log-hidden-entry {
color: var(--subtle-color);
}
body td.mw-abusefilter-history-changed {
background: var(--table-no-background);
}
div.mw-abusefilter-editor,
#mw-abusefilter-warn-preview,
#mw-abusefilter-disallow-preview {
border-color: var(--ooui-input-border);
}
.mw-destfile-warning {
border-color: var(--warningbox-border);
color: var(--text-color);
background-color: var(--warningbox-bg);
}
span.fileinput-button {
background-color: var(--ooui-normal);
border-color: var(--ooui-normal-border);
color: var(--ooui-text);
}
ul.fileupload-results li.ful-success {
background-color: var(--successbox-bg);
}
ul.fileupload-results li.ful-success a {
color: var(--link-color);
}
ul.fileupload-results li.ful-error {
background-color: var(--errorbox-bg);
}
.color-container {
display: flex;
margin: 2em auto;
width: 80%;
max-width: 60em;
}
.color-column {
flex: 1;
margin-right: 1em;
}
.color-column:last-child {
margin-right: 0;
}
.color-column h3 {
padding: 0;
}
.color-group {
color: #333;
padding: 1em 1.5em;
transition: 0.2s ease-out;
}
.color-group:hover {
transform: scale(1.03);
}
.color-group.dark {
color: #fff;
}
.color-group .variable,
.color-group .hexcode {
font-family: monospace;
font-size: 1.1em;
-webkit-user-select: all;
-moz-user-select: all;
-ms-user-select: all;
user-select: all;
margin: 0;
}
body.wgl-readermode .color-group .variable,
body.wgl-readermode .color-group .hexcode {
font-size: inherit;
}
.color-group .variable {
font-weight: bold;
}
#t-print,
#t-permalink {
display: none;
}
#filetoc {
border-radius: 2px;
background: var(--body-mid);
border-color: transparent;
margin: 0.5em auto;
text-align: center;
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
}
li.gallerybox div.thumb {
border: none;
background-color: var(--thumb-bg);
}
.smwfact {
display: none;
}
.list-header {
background-color: var(--body-mid);
color: inherit;
}
.editOptions {
color: var(--text-color);
background-color: var(--sourceeditor-background-secondary);
border-color: var(--sourceeditor-border);
}
.mw-json th,
.mw-json td {
border-color: var(--wikitable-border);
}
.mw-json td {
background: var(--wikitable-bg);
}
.mw-json th {
background: var(--wikitable-header-bg);
}
dc7fc587f669bba527e51127f6c9b8396f7b40a6
1702
1699
2024-04-02T14:38:32Z
Gau Cho
5
Updating CSS from [[MediaWiki:Common.less]]
css
text/css
/* <pre> */
:root {
--body-main: #fdfcfc;
--body-light: #f5f0eb;
--body-mid: #d1b9ad;
--body-dark: #b1886f;
--body-border: #d1b9ad;
--body-background-color: #173a4d;
--button-background: #605443;
--button-color: #fff;
--button-border: #3c352a;
--button-dark: #18140c;
--button-light: #3a301d;
--sidebar: #cfc08d;
--background-text-color: #e2dbc8;
--background-link-color: #e2bd8a;
--search-box: #efeee6;
--link-color: #6e452b;
--redlink-color: #ba0000;
--text-color: #2F2828;
--byline-color: #ccc;
--subtle-color: #777;
--admin-blue: #332e75;
--bearcat-green: #13592e;
--awb-purple: #933b96;
--rsw-blue: #438ab6;
--osrsw-brown: #605443;
--thumb-bg: var(--body-light);
--thumb-caption-bg: var(--body-mid);
--sourceeditor-input-background: #fff;
--sourceeditor-background: var(--body-light);
--sourceeditor-background-secondary: var(--body-light);
--sourceeditor-border: var(--body-mid);
--codemirror-gutter-background: var(--body-mid);
}
@font-face {
font-family: 'Lora';
font-weight: 400 700;
font-style: normal;
font-display: swap;
src: url('filepath://Lora.woff2') format('woff2');
}
@font-face {
font-family: 'Lora';
font-weight: 400 700;
font-style: italic;
font-display: swap;
src: url('filepath://Lora-Italic.woff2') format('woff2');
}
:root {
--base-text-color: #36414f;
--base-heading-color: #444e5a;
--base-heading-border: #e4eaee;
--mw-code-background-color: var(--body-light);
--body-background-image: url('filepath://Wiki_background.jpg');
}
#mw-page-base {
background: none;
}
.mw-body {
background-color: var(--body-main);
color: var(--text-color);
border-color: transparent;
box-shadow: 0 0 7px rgba(0, 0, 0, 0.15);
margin-top: 0;
}
h1,
h2,
h3,
h4,
h5,
h6 {
color: var(--text-color);
}
h1,
h2 {
border-color: var(--body-border);
}
.mw-body h1,
.mw-body-content h1,
.mw-body-content h2,
.mw-body-content h3,
.mw-body-content h4,
.mw-body-content h5,
.mw-body-content h6 {
font-family: 'Lora', 'Palatino', 'Georgia', serif;
}
.mw-parser-output h2:first-of-type {
clear: left;
}
.mw-footer {
color: var(--background-text-color);
}
.mw-footer li {
color: var(--background-text-color);
}
.mw-footer a,
.mw-footer a:active,
.mw-footer a:visited {
color: var(--background-link-color);
}
::placeholder {
color: var(--subtle-color);
}
a {
color: var(--link-color);
}
a:visited,
a:active {
color: var(--link-color);
}
a.new {
color: var(--redlink-color);
}
a.new:visited {
color: var(--redlink-color);
}
.mw-parser-output a.extiw,
.mw-parser-output a.external {
color: var(--link-color);
}
.mw-parser-output a.extiw:visited,
.mw-parser-output a.external:visited,
.mw-parser-output a.extiw:active,
.mw-parser-output a.external:active {
color: var(--link-color);
}
.jsPurgeLink a.external {
color: var(--link-color);
}
:root {
--errorbox-bg: #feecea;
--errorbox-border: #ee4231;
--warningbox-bg: #fef9de;
--warningbox-border: #f9d000;
--successbox-bg: #ecf8e3;
--successbox-border: #6bc71f;
}
.mw-message-box-error,
.errorbox,
.mw-message-box-warning,
.warningbox,
.mw-message-box-success,
.successbox,
.usermessage {
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
}
.mw-message-box-error,
.errorbox {
background-color: var(--errorbox-bg);
border-color: var(--errorbox-border);
}
.mw-message-box-warning,
.warningbox,
.usermessage {
background-color: var(--warningbox-bg);
border-color: var(--warningbox-border);
}
.mw-message-box-success,
.successbox {
background-color: var(--successbox-bg);
border-color: var(--successbox-border);
}
.catlinks {
background: var(--body-light);
border: 1px solid var(--body-dark);
padding: 8px 15px;
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
}
.catlinks li {
border-color: var(--body-mid);
}
.filehistory a img,
#file img {
background: url("data:image/svg+xml,%3C%3Fxml version='1.0' encoding='UTF-8'%3F%3E%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16'%3E%3Cpath d='M0 0h8v16h8V8H0z' opacity='.13'/%3E%3C/svg%3E") repeat;
}
#file img:hover {
background: none;
}
.mw-highlight {
background: none;
}
.mw-highlight .linenos {
background-color: var(--mw-code-background-color);
color: var(--body-border);
}
.mw-highlight a:hover .linenos,
.mw-highlight .hll a .linenos {
color: var(--body-dark);
}
.mw-content-ltr.mw-highlight-lines pre,
.mw-content-ltr.content .mw-highlight-lines pre {
box-shadow: inset 2.75em 0 0 var(--mw-code-background-color);
}
#pagehistory ul {
list-style: none;
margin: 0;
}
#pagehistory li {
border: 1px solid transparent;
padding: 1px 10px;
margin: 2px 0;
}
#pagehistory li.selected {
background-color: var(--body-light);
color: inherit;
border: 1px dashed var(--body-border);
outline: none;
}
#mw-history-compare > div:first-of-type {
position: -webkit-sticky;
position: sticky;
top: 0;
background-color: var(--body-main);
border-bottom: 1px solid var(--body-dark);
padding: 0.25em 0;
}
.wgl-stickyheader #mw-history-compare > div:first-of-type {
top: 2.5rem;
}
.autocomment,
.autocomment a,
.autocomment a:visited {
color: var(--link-color);
}
li span.deleted,
span.history-deleted {
color: var(--byline-color);
}
.mw-usertoollinks-contribs-no-edits,
.mw-usertoollinks-contribs-no-edits:visited {
color: var(--redlink-color);
}
.CategoryTreeToggle {
color: var(--link-color);
}
body.wgl-stickyheader.action-view .mw-headline:target::before {
display: block;
content: '';
margin-top: -3rem;
height: 3rem;
visibility: hidden;
pointer-events: none;
}
.mw-mmv-post-image {
color: var(--text-color);
background-color: var(--body-main);
}
.mw-mmv-image-metadata {
border-top-color: var(--body-mid);
background-color: var(--body-light);
}
.mw-mmv-dialog,
.mw-mmv-dialog .mw-mmv-dialog-down-arrow,
.mw-mmv-options-dialog .mw-mmv-dialog-down-arrow {
background-color: var(--body-light);
box-shadow: none;
}
.mw-mmv-options-enable-alert {
background-color: var(--body-light);
color: var(--text-color);
}
.mw-mmv-options-dialog-header,
.mw-mmv-options-text-header,
.mw-mmv-options-text-body,
.mw-mmv-options-enable-alert,
.mw-mmv-options-dialog .mw-mmv-disable-confirmation .mw-mmv-options-dialog-header,
.mw-mmv-options-dialog .mw-mmv-disable-confirmation .mw-mmv-options-text-header {
color: var(--text-color);
}
.mw-revslider-container {
border-color: var(--sidebar);
}
.mw-revslider-slider-wrapper {
border-top-color: var(--sidebar);
}
.mw-ui-button {
background-color: var(--ooui-normal);
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
}
.mw-ui-button:not(:disabled):hover,
.mw-ui-button:not(:disabled):active {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
}
.mw-ui-button:not(:disabled):focus {
color: var(--ooui-text);
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent), inset 0 0 0 2px #fff;
}
.mw-ui-button:not(:disabled):visited {
color: var(--ooui-text);
}
.mw-ui-button.mw-ui-progressive:not(:disabled) {
background-color: var(--ooui-progressive);
color: #fff;
border-color: var(--ooui-progressive);
}
.mw-ui-button.mw-ui-progressive:not(:disabled):hover {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
}
.mw-ui-button.mw-ui-progressive:not(:disabled):focus {
box-shadow: inset 0 0 0 1px var(--ooui-accent), inset 0 0 0 2px #fff;
}
.mw-ui-button.mw-ui-progressive:not(:disabled):active,
.mw-ui-button.mw-ui-progressive:not(:disabled).is-on {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
box-shadow: none;
}
.mw-ui-button.mw-ui-destructive:not( :disabled ) {
color: #fff;
}
.mw-ui-button.mw-ui-quiet,
.mw-ui-button.mw-ui-quiet.mw-ui-progressive,
.mw-ui-button.mw-ui-quiet.mw-ui-destructive {
color: var(--text-color);
}
input[type='checkbox']:hover + .mw-ui-button.mw-ui-quiet,
input[type='checkbox']:hover + .mw-ui-button.mw-ui-quiet.mw-ui-progressive,
input[type='checkbox']:hover + .mw-ui-button.mw-ui-quiet.mw-ui-destructive,
.mw-ui-button.mw-ui-quiet:hover,
.mw-ui-button.mw-ui-quiet.mw-ui-progressive:hover,
.mw-ui-button.mw-ui-quiet.mw-ui-destructive:hover {
background-color: rgba(0, 24, 73, 0.02745098);
color: var(--text-color);
border-color: transparent;
}
input[type='checkbox']:focus + .mw-ui-button.mw-ui-quiet,
input[type='checkbox']:focus + .mw-ui-button.mw-ui-quiet.mw-ui-progressive,
input[type='checkbox']:focus + .mw-ui-button.mw-ui-quiet.mw-ui-destructive,
.mw-ui-button.mw-ui-quiet:focus,
.mw-ui-button.mw-ui-quiet.mw-ui-progressive:focus,
.mw-ui-button.mw-ui-quiet.mw-ui-destructive:focus {
color: var(--text-color);
}
input[type='checkbox']:active + .mw-ui-button.mw-ui-quiet,
input[type='checkbox']:active + .mw-ui-button.mw-ui-quiet.mw-ui-progressive,
input[type='checkbox']:active + .mw-ui-button.mw-ui-quiet.mw-ui-destructive,
.mw-ui-button.mw-ui-quiet:active,
.mw-ui-button.mw-ui-quiet.mw-ui-progressive:active,
.mw-ui-button.mw-ui-quiet.mw-ui-destructive:active {
background-color: rgba(0, 36, 73, 0.08235294);
color: var(--text-color);
border-color: #72777d;
}
.mw-ui-input {
background-color: var(--ooui-input);
color: var(--text-color);
border-color: var(--ooui-input-border);
}
.mw-ui-input:hover {
border-color: var(--ooui-input-border--hover);
}
.mw-ui-input::placeholder {
color: var(--byline-color);
}
.mw-content-ltr .redirectText li:first-child {
padding: 0;
background: 0;
}
.mw-content-ltr .redirectText li:first-child::before {
content: '';
background: currentcolor;
-webkit-mask: url("filepath://Redirect-arrow.svg") no-repeat 50% 50% / contain;
mask: url("filepath://Redirect-arrow.svg") no-repeat 50% 50% / contain;
display: inline-block;
width: 47px;
height: 20px;
}
.vector-search-box-inner {
background: var(--body-main) !important;
box-shadow: inset 0 -7px 7px -7px rgba(0, 0, 0, 0.15) !important;
}
.vector-menu-dropdown .vector-menu-heading {
color: var(--vector-tab-link-color) !important;
}
.vector-menu-dropdown .vector-menu-heading:hover {
color: var(--vector-tab-link-color) !important;
}
.vector-menu-dropdown .vector-menu-heading:focus {
color: var(--vector-tab-link-color) !important;
}
:root {
--wikitable-header-bg: var(--body-dark);
--wikitable-border: var(--body-border);
--wikitable-bg: var(--body-light);
--wikitable-bg-lighter: #e9e3d6;
--wikitable-color: var(--text-color);
--table-na-background: rgba(255, 255, 255, 0.3);
--table-na-color: var(--subtle-color);
--table-yes-background: #c3e8a3;
--table-yes-color: #2e5e05;
--table-no-background: #fbc0ba;
--table-no-color: #801c13;
--table-maybe-background: #fcea94;
--table-maybe-color: #786300;
}
.wikitable {
background: var(--wikitable-bg);
color: var(--wikitable-color);
border-color: var(--wikitable-border);
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
}
.wikitable > tr > th,
.wikitable > tr > td,
.wikitable > * > tr > th,
.wikitable > * > tr > td {
border-color: var(--wikitable-border);
}
.wikitable > tr > th.table-noborder,
.wikitable > tr > td.table-noborder,
.wikitable > * > tr > th.table-noborder,
.wikitable > * > tr > td.table-noborder {
border-left-style: hidden;
border-right-style: hidden;
padding-left: 0;
padding-right: 0;
}
.wikitable > tr > th,
.wikitable > * > tr > th {
background-color: var(--wikitable-header-bg);
color: #fff;
}
.tabber .wikitable {
box-shadow: none;
}
.mw_metadata td,
.mw_metadata th {
border-color: var(--wikitable-border);
}
.mw_metadata th {
background-color: var(--wikitable-header-bg);
}
.mw_metadata td {
background-color: var(--wikitable-bg);
}
.mw-datatable {
border-color: var(--wikitable-border);
}
.mw-datatable td,
.mw-datatable th {
border-color: var(--wikitable-border);
}
.mw-datatable th {
background-color: var(--wikitable-header-bg);
}
.mw-datatable td {
background-color: var(--wikitable-bg);
}
.mw-datatable tr:hover td {
background-color: var(--wikitable-bg);
}
table.alternating-rows tr:nth-child(odd),
table.alternating-cols td:nth-child(odd) {
background: var(--wikitable-alternating-bg);
}
.table-na {
background: var(--table-na-background);
color: var(--table-na-color);
vertical-align: middle;
text-align: center;
}
.table-yes {
background: var(--table-yes-background);
color: var(--table-yes-color);
}
.table-positive {
background: var(--table-yes-background);
}
.table-no {
background: var(--table-no-background);
color: var(--table-no-color);
}
.table-negative {
background: var(--table-no-background);
}
.table-maybe {
background: var(--table-maybe-background);
color: var(--table-maybe-color);
}
#mw-allmessagestable .am_actual,
#mw-allmessagestable .am_default {
background-color: var(--wikitable-bg);
}
#mw-allmessagestable .am_default:hover,
#mw-allmessagestable .am_actual:hover,
#mw-allmessagestable tbody:hover td {
background-color: var(--wikitable-bg-lighter);
}
table.wikitable td.no-cell-spacing {
padding: 0;
height: 0;
}
table.wikitable td.no-cell-spacing table {
margin: -1px;
width: calc(100% + 2px);
height: calc(100% + 2px);
}
.plainlist ol,
.plainlist ul {
margin: 0;
}
.plainlist li {
margin-bottom: 0;
list-style: none;
}
table.align-right-1 td:nth-of-type(1),
table.align-right-2 td:nth-of-type(2),
table.align-right-3 td:nth-of-type(3),
table.align-right-4 td:nth-of-type(4),
table.align-right-5 td:nth-of-type(5),
table.align-right-6 td:nth-of-type(6),
table.align-right-7 td:nth-of-type(7),
table.align-right-8 td:nth-of-type(8),
table.align-right-9 td:nth-of-type(9),
table.align-right-10 td:nth-of-type(10),
table.align-right-11 td:nth-of-type(11),
table.align-right-12 td:nth-of-type(12),
table.align-right-13 td:nth-of-type(13),
table.align-right-14 td:nth-of-type(14),
table.align-right-15 td:nth-of-type(15),
table.align-right-16 td:nth-of-type(16),
table.align-right-17 td:nth-of-type(17),
table.align-right-18 td:nth-of-type(18),
table.align-right-19 td:nth-of-type(19),
table.align-right-20 td:nth-of-type(20) {
text-align: right;
}
table.align-center-1 td:nth-of-type(1),
table.align-center-2 td:nth-of-type(2),
table.align-center-3 td:nth-of-type(3),
table.align-center-4 td:nth-of-type(4),
table.align-center-5 td:nth-of-type(5),
table.align-center-6 td:nth-of-type(6),
table.align-center-7 td:nth-of-type(7),
table.align-center-8 td:nth-of-type(8),
table.align-center-9 td:nth-of-type(9),
table.align-center-10 td:nth-of-type(10),
table.align-center-11 td:nth-of-type(11),
table.align-center-12 td:nth-of-type(12),
table.align-center-13 td:nth-of-type(13),
table.align-center-14 td:nth-of-type(14),
table.align-center-15 td:nth-of-type(15),
table.align-center-16 td:nth-of-type(16),
table.align-center-17 td:nth-of-type(17),
table.align-center-18 td:nth-of-type(18),
table.align-center-19 td:nth-of-type(19),
table.align-center-20 td:nth-of-type(20) {
text-align: center;
}
table.align-left-1 td:nth-of-type(1),
table.align-left-2 td:nth-of-type(2),
table.align-left-3 td:nth-of-type(3),
table.align-left-4 td:nth-of-type(4),
table.align-left-5 td:nth-of-type(5),
table.align-left-6 td:nth-of-type(6),
table.align-left-7 td:nth-of-type(7),
table.align-left-8 td:nth-of-type(8),
table.align-left-9 td:nth-of-type(9),
table.align-left-10 td:nth-of-type(10),
table.align-left-11 td:nth-of-type(11),
table.align-left-12 td:nth-of-type(12),
table.align-left-13 td:nth-of-type(13),
table.align-left-14 td:nth-of-type(14),
table.align-left-15 td:nth-of-type(15),
table.align-left-16 td:nth-of-type(16),
table.align-left-17 td:nth-of-type(17),
table.align-left-18 td:nth-of-type(18),
table.align-left-19 td:nth-of-type(19),
table.align-left-20 td:nth-of-type(20) {
text-align: left;
}
:root {
--diff-addedline-border-color: #438ab5;
--diff-addedline-background: #bddff2;
--diff-addedline-color: #000;
--diff-deletedline-border-color: #379541;
--diff-deletedline-background: #c1edbf;
--diff-deletedline-color: #000;
--diff-context-border-color: var(--body-mid);
--diff-context-background: var(--body-mid);
}
.diff-context {
border-color: var(--diff-context-border-color);
background: var(--diff-context-background);
color: inherit;
}
.diff-addedline {
border-color: var(--diff-addedline-border-color);
}
.diff-addedline .diffchange {
background: var(--diff-addedline-background);
color: var(--diff-addedline-color);
}
.diff-deletedline {
border-color: var(--diff-deletedline-border-color);
}
.diff-deletedline .diffchange {
background: var(--diff-deletedline-background);
color: var(--diff-deletedline-color);
}
.mw-diff-movedpara-left:after,
.mw-diff-movedpara-right:after {
color: var(--text-color);
}
.mw-notification {
background-color: var(--body-light);
border-color: var(--body-border);
color: var(--text-color);
}
.mw-echo-ui-notificationsInboxWidget-toolbarWrapper {
background: var(--body-main);
}
.mw-body-content .mw-echo-ui-datedSubGroupListWidget-title-secondary {
color: var(--byline-color);
}
.mw-echo-ui-pageNotificationsOptionWidget.oo-ui-optionWidget-selected {
background-color: var(--ooui-normal);
color: var(--ooui-accent);
}
.mw-echo-ui-pageNotificationsOptionWidget-label-count {
background-color: var(--ooui-normal);
color: var(--byline-color);
}
.oo-ui-optionWidget-selected .mw-echo-ui-pageNotificationsOptionWidget-label-count {
color: var(--ooui-accent);
}
.mw-echo-ui-pageNotificationsOptionWidget.oo-ui-optionWidget-highlighted {
background-color: var(--ooui-normal);
color: var(--text-color);
}
.mw-echo-ui-crossWikiUnreadFilterWidget {
border-color: var(--body-border);
}
.mw-echo-ui-crossWikiUnreadFilterWidget-subtitle {
color: var(--byline-color);
}
.mw-echo-ui-notificationBadgeButtonPopupWidget-popup > .oo-ui-popupWidget-popup > .oo-ui-popupWidget-head,
.mw-echo-ui-notificationBadgeButtonPopupWidget-popup > .oo-ui-popupWidget-popup > .oo-ui-popupWidget-footer {
border-color: var(--ooui-interface-border);
}
.mw-echo-ui-notificationBadgeButtonPopupWidget-popup > .oo-ui-popupWidget-popup > .oo-ui-popupWidget-footer .mw-echo-ui-notificationBadgeButtonPopupWidget-footer-buttons .oo-ui-buttonElement:last-child {
border-left-color: var(--ooui-normal-border);
}
.mw-echo-ui-notificationItemWidget {
background-color: var(--ooui-normal);
border-color: var(--ooui-normal-border);
}
.mw-echo-ui-notificationItemWidget:hover,
.mw-echo-ui-notificationItemWidget-unread:hover {
background-color: var(--ooui-normal--hover);
}
.mw-echo-ui-notificationItemWidget:last-child {
border-bottom-color: var(--ooui-normal-border);
}
.mw-echo-ui-notificationItemWidget-unread {
background-color: var(--search-box);
}
.mw-echo-ui-crossWikiNotificationItemWidget-group,
.mw-echo-ui-bundleNotificationItemWidget-group {
background-color: var(--ooui-interface);
}
.mw-echo-ui-toggleReadCircleButtonWidget-circle {
background-color: var(--ooui-progressive);
}
.mw-echo-ui-toggleReadCircleButtonWidget:hover .mw-echo-ui-toggleReadCircleButtonWidget-circle {
background-color: var(--ooui-progressive--hover);
}
.mw-echo-ui-toggleReadCircleButtonWidget-circle-unread {
background-color: var(--ooui-normal);
border-color: var(--ooui-normal-border);
}
.mw-echo-ui-notificationItemWidget-content-message-header,
.mw-echo-ui-notificationItemWidget-content-message-body,
.mw-echo-ui-menuItemWidget > .oo-ui-buttonElement-button > .oo-ui-labelElement-label,
.mw-echo-ui-notificationItemWidget-content-actions-timestamp {
color: var(--ooui-text);
}
.mw-echo-ui-bundleNotificationItemWidget-group {
background-color: var(--body-main);
}
@keyframes unseen-fadeout-to-unread {
from {
background-color: var(--wikitable-bg-lighter);
}
to {
background-color: var(--search-box);
}
}
@keyframes unseen-fadeout-to-read {
from {
background-color: var(--wikitable-bg-lighter);
}
to {
background-color: var(--body-main);
}
}
.mwe-popups {
background: var(--body-light);
}
.mwe-popups .mwe-popups-container {
color: var(--text-color);
background: var(--body-light);
}
.mwe-popups .mwe-popups-container.flipped-x-y:before,
.mwe-popups .mwe-popups-container.flipped-y:before {
border-top: none;
}
.mwe-popups .mwe-popups-container.mwe-popups-no-image-tri:before {
border-bottom: none;
}
.mwe-popups .mwe-popups-container.flipped-x-y:after,
.mwe-popups .mwe-popups-container.flipped-y:after {
border-top-color: var(--body-light);
}
.mwe-popups .mwe-popups-container.mwe-popups-no-image-tri:after {
border-bottom-color: var(--body-light);
}
.mwe-popups .mwe-popups-settings-icon:hover,
.mwe-popups .mwe-popups-settings-icon:active {
background-color: var(--ooui-normal--hover);
}
.mwe-popups .mw-ui-icon-element:not(.disabled):hover {
background: none;
}
.mwe-popups .mwe-popups-extract {
color: var(--text-color);
}
.mwe-popups .mwe-popups-extract[dir='ltr']:after {
background-image: linear-gradient(to right, rgba(49, 62, 89, 0), var(--body-light) 50%);
}
.mwe-popups-overlay {
background-color: var(--ooui-window-background);
}
#mwe-popups-settings {
background: var(--ooui-interface);
border-color: var(--ooui-interface-border);
color: var(--text-color);
}
#mwe-popups-settings header {
border-color: var(--ooui-interface-border);
}
#mwe-popups-settings main#mwe-popups-settings-form p {
color: var(--byline-color);
}
#mwe-popups-settings main#mwe-popups-settings-form form label > span {
color: var(--ooui-text);
}
:root {
--smw-ask-options-even-bg: var(--body-mid);
--smw-ask-options-odd-bg: var(--body-light);
--smw-ask-action-btn-lblue-bg: var(--body-main);
--smw-ask-action-btn-lblue-color: #000;
--smw-ask-action-btn-lblue-border-color: var(--body-light);
--smw-ask-action-btn-dblue-bg: var(--body-light);
--smw-ask-action-btn-dblue-color: #fff;
--smw-ask-action-btn-dblue-border-color: var(--button-border);
}
.smw-ask-condition fieldset,
.smw-ask-printhead fieldset {
border-color: var(--sidebar);
}
.smw-ask-search fieldset,
.smw-ask-format fieldset,
.smw-ask-options fieldset {
border-color: var(--sidebar);
}
.strike > span:before,
.strike > span:after {
background: var(--sidebar);
}
.smw-ask-options-fields tr td {
background-color: var(--smw-ask-options-even-bg);
}
.smw-ask-options-fields tr:nth-child(odd) td {
background-color: var(--smw-ask-options-odd-bg);
}
.smw-ask-action-btn.smw-ask-action-btn-lblue,
.smw-ask-action-btn.smw-ask-action-btn-lblue:hover,
.smw-ask-action-btn.smw-ask-action-btn-lblue:visited {
background-color: var(--smw-ask-action-btn-lblue-bg);
color: var(--smw-ask-action-btn-lblue-color);
border-color: var(--smw-ask-action-btn-lblue-border-color);
}
.smw-ask-action-btn.smw-ask-action-btn-dblue,
.smw-ask-action-btn.smw-ask-action-btn-dblue:hover,
.smw-ask-action-btn.smw-ask-action-btn-dblue:visited {
background-color: var(--smw-ask-action-btn-dblue-bg);
color: var(--smw-ask-action-btn-dblue-color);
border-color: var(--smw-ask-action-btn-dblue-border-color);
}
.smw-ask-query textarea,
.smw-ask-actions textarea {
background-color: var(--ooui-interface);
border-color: var(--ooui-interface-border);
color: var(--ooui-text);
}
.smw-ask-query-format select {
background-color: var(--ooui-interface);
border: 1px solid var(--ooui-interface-border);
color: var(--ooui-text);
}
.smw-ask-toplinks {
background-color: var(--body-mid);
}
.smw-ask-toplinks span.smw-icon-info {
background: none;
padding: 0 !important;
}
.smw-ask-toplinks span.smw-icon-info::before {
content: '';
background: var(--text-color);
-webkit-mask: url("data:image/svg+xml,%3C%3Fxml version='1.0' encoding='UTF-8'%3F%3E%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 20 20'%3E%3Ctitle%3Einfo%3C/title%3E%3Cpath d='M10 0C4.477 0 0 4.477 0 10s4.477 10 10 10 10-4.477 10-10S15.523 0 10 0zM9 5h2v2H9zm0 4h2v6H9z'/%3E%3C/svg%3E") no-repeat 50% 50% / contain;
mask: url("data:image/svg+xml,%3C%3Fxml version='1.0' encoding='UTF-8'%3F%3E%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 20 20'%3E%3Ctitle%3Einfo%3C/title%3E%3Cpath d='M10 0C4.477 0 0 4.477 0 10s4.477 10 10 10 10-4.477 10-10S15.523 0 10 0zM9 5h2v2H9zm0 4h2v6H9z'/%3E%3C/svg%3E") no-repeat 50% 50% / contain;
padding: 0 0 3px 18px;
}
.smw-ask-options-row-odd {
background-color: var(--body-light);
}
.smw-ask-options-row-even {
background-color: var(--body-mid);
}
#options-toggle:not(:checked) + #options-list .options-parameter-list:after {
background-image: linear-gradient(to bottom, transparent, var(--body-mid) 90%);
}
.smw-ask-button-submit input {
background-color: var(--ooui-normal);
border-color: var(--ooui-normal-border);
color: var(--text-color);
}
.smw-ask-button-submit input:hover,
.smw-ask-button-lgrey:hover {
background-color: var(--ooui-normal--hover);
border-color: var(--ooui-normal-border);
}
input.smw-ask-action-btn.smw-ask-action-btn-dblue {
background-color: var(--ooui-normal);
border-color: var(--ooui-normal-border);
color: var(--ooui-text);
}
a.smw-ask-action-btn.smw-ask-action-btn-lblue {
background-color: var(--body-mid);
border-color: var(--body-mid);
color: var(--ooui-text);
}
a.smw-ask-action-btn.smw-ask-action-btn-lblue:visited {
background-color: var(--body-mid);
border-color: var(--body-mid);
color: var(--ooui-text);
}
a.smw-ask-action-btn.smw-ask-action-btn-lblue:hover {
background-color: var(--body-mid);
border-color: var(--body-mid);
color: var(--ooui-text);
}
a.smw-ask-action-btn-lgrey {
background-color: var(--ooui-normal);
border-color: var(--ooui-normal-border);
color: var(--ooui-text);
}
a.smw-ask-action-btn-lgrey:hover {
background-color: var(--ooui-normal--hover);
border-color: var(--ooui-normal-border);
color: var(--ooui-text);
}
.smw-callout-error {
background-color: var(--errorbox-bg);
border-color: var(--errorbox-border);
}
.smw-callout-info {
background-color: var(--body-light);
border-color: var(--body-dark);
}
.smw-callout-success {
background-color: var(--successbox-bg);
border-color: var(--successbox-border);
}
.smw-callout-warning {
background-color: var(--warningbox-bg);
border-color: var(--warningbox-bg);
}
.smw-tabs input.nav-tab:checked + label.nav-label,
.smw-tabs input.nav-tab:checked + label.nav-label:hover {
color: inherit;
}
#tab-smw-property-value:checked + label.nav-label .usage-count {
color: #fff;
background-color: var(--ooui-progressive);
}
#tab-smw-property-value:checked + label.nav-label .usage-count.moderate {
color: #fff;
background-color: #b55e0c;
border-color: #b55e0c;
}
#tab-smw-property-value:checked + label.nav-label .usage-count.high {
color: #fff;
background-color: #9f261e;
border-color: #9f261e;
}
.smw-property-page-results .header-title {
background-color: var(--ooui-interface);
border-bottom-color: var(--ooui-interface-border);
color: var(--ooui-text);
}
.smw-property-page-results .value-row:hover {
background-color: var(--ooui-normal--hover);
}
.smw-property-page-results .smw-table .header-row {
color: var(--text-color);
}
.tippy-tooltip.light-border-theme {
background-color: var(--body-light);
color: var(--text-color);
}
.tippy-tooltip.light-border-theme .tippy-arrow {
border-top-color: var(--body-light);
}
.tippy-tooltip.light-border-theme .tippy-arrow:after {
border-top-color: var(--body-light);
}
.tippy-header {
background-color: var(--body-dark);
border-bottom-color: var(--body-mid);
}
.smw-ui-input-filter {
background-color: var(--ooui-interface);
border-color: var(--ooui-interface-border);
color: var(--ooui-text);
}
.smw-ui-input-filter input {
border-left-color: var(--ooui-interface-border) !important;
color: var(--ooui-text) !important;
}
.smw-ui-pagination .page-link.link-disabled {
background-color: var(--ooui-disabled);
border-color: var(--ooui-disabled-border);
color: var(--subtle-color);
}
.smw-ui-pagination .page-link {
background-color: var(--ooui-normal);
border-color: var(--ooui-normal-border);
color: var(--link-color);
}
.smw-ui-pagination .page-link:hover {
background-color: var(--ooui-normal--hover);
border-color: var(--ooui-normal-border);
color: var(--link-color);
}
.smw-ui-pagination .page-link.link-active {
color: #fff;
background-color: var(--ooui-progressive);
border-color: var(--ooui-progressive);
}
.smw-tabs input.nav-tab:checked + label.nav-label {
border-color: var(--ooui-normal-border);
}
.smw-tabs section,
.smw-tabs .subtab-content {
border-top-color: var(--ooui-normal-border);
}
.smw-column-header {
color: var(--text-color);
}
.smw-factbox {
background: var(--body-main);
border-color: transparent;
}
.mw-body .mw-indicators #mw-indicator-smw-entity-examiner.mw-indicator .smw-indicator-vertical-bar-loader {
display: none;
}
.smwb-theme-light .smwb-title,
.smwb-theme-light .smwb-center,
.smwb-theme-light .smwb-actions,
.smwb-theme-light .smwb-prophead {
background-color: var(--body-mid);
}
.smwb-theme-light .smwb-factbox {
border-left-color: var(--body-mid);
}
.smwb-theme-light .smwb-ifactbox {
border-right-color: var(--body-mid);
}
.smwb-theme-light .smwb-propval {
background-color: var(--body-light);
}
.smwb-action-separator {
border-color: var(--wikitable-border);
}
.smwb-bottom {
border-bottom: 1px solid var(--wikitable-border);
}
.smwb-ifactbox .smwb-cell,
.smwb-factbox .smwb-cell {
border-top: 1px solid var(--wikitable-border);
}
.smwb-propvalue .smwb-prophead,
.smwb-ipropvalue .smwb-prophead,
.smwb-propvalue .smwb-propval,
.smwb-ipropvalue .smwb-propval {
font-size: 0.9em;
}
:root {
--filter-black-to-link: invert(36%) sepia(58%) saturate(433%) hue-rotate(344deg) brightness(100%) contrast(91%);
}
#bodyContent span.smwbrowse a {
color: black;
background-image: url('filepath://Smwbrowse.svg');
filter: var(--filter-black-to-link);
}
#bodyContent span.smwbrowse a:hover {
color: black;
background-image: url('filepath://Smwbrowse-hover.svg');
text-decoration: underline;
}
#bodyContent span.smwsearch a {
color: black;
filter: var(--filter-black-to-link);
background-image: url('filepath://Smwsearch.svg');
}
#bodyContent span.smwsearch a:hover {
color: black;
background-image: url('filepath://Smwsearch-hover.svg');
text-decoration: underline;
}
:root {
--tabber-tab-bg: var(--body-light);
--tabber-tab-border-color: var(--body-border);
--tabber-active-tab-bg: var(--body-light);
--tabber-active-tab-color: var(--text-color);
--tabber-active-tab-hover-bg: var(--body-light);
--tabber-active-tab-hover-border-color: var(--body-border);
--tabber-active-tab-hover-color: var(--text-color);
--tabber-active-tab-border-hider-color: var(--body-light);
--tabber-inactive-tab-bg: var(--body-background-color);
--tabber-inactive-tab-border-color: var(--body-border);
--tabber-inactive-tab-color: var(--text-color);
--tabber-inactive-tab-hover-bg: var(--body-light);
--tabber-inactive-tab-hover-border-color: var(--body-border);
}
.tabber {
margin: 1em 0;
}
.tabber .tabbertab {
background-color: var(--tabber-tab-bg);
border: 1px solid var(--tabber-tab-border-color);
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
padding: 1em 1.5em;
}
ul.tabbernav {
border: none;
margin-left: 2em;
margin-bottom: 0;
margin-right: 2em;
padding: 0;
font-family: inherit;
}
ul.tabbernav li.tabberactive > a {
background-color: var(--tabber-active-tab-bg);
color: var(--tabber-active-tab-color);
border-bottom: none;
position: relative;
}
ul.tabbernav li.tabberactive > a:hover {
color: var(--tabber-active-tab-hover-color);
background-color: var(--tabber-active-tab-hover-bg);
border-color: var(--tabber-active-tab-hover-border-color);
border-bottom: none;
}
ul.tabbernav li.tabberactive > a::after {
content: '';
position: absolute;
left: 0;
right: 0;
bottom: -1px;
border-bottom: 2px solid var(--tabber-active-tab-border-hider-color);
}
ul.tabbernav li a {
background-color: var(--tabber-inactive-tab-bg);
border-bottom: transparent;
border-color: var(--tabber-inactive-tab-border-color);
color: var(--tabber-inactive-tab-color);
display: inline-block;
font-size: 110%;
padding: 0.5em 1em;
}
ul.tabbernav li a:hover {
background-color: var(--tabber-inactive-tab-hover-bg);
border-color: var(--tabber-inactive-tab-hover-border-color);
}
ul.tabbernav li a:link,
ul.tabbernav li a:visited {
color: var(--tabber-inactive-tab-color);
}
:root {
--ooui-text: var(--text-color);
--ooui-interface: var(--body-light);
--ooui-interface-border: var(--body-border);
--ooui-window-background: rgba(255, 255, 255, 0.5);
--ooui-normal: #cdb3a6;
--ooui-normal--hover: #d8c4ba;
--ooui-normal-border: #d1b9ad;
--ooui-progressive: #936243;
--ooui-progressive--hover: #b27a57;
--ooui-accent: var(--link-color);
--ooui-input: #fff;
--ooui-input-border: #d1b9ad;
--ooui-input-border--hover: #ae846f;
--ooui-disabled: #c9c3bf;
--ooui-disabled-border: #dfd6d2;
--ooui-disabled-text: var(--subtle-color);
--ooui-pending-background-image: repeating-linear-gradient(-45deg, var(--search-box), var(--search-box) 20px, var(--body-main) 20px, var(--body-main) 30px);
}
.oo-ui-widget {
color: var(--ooui-text);
}
.oo-ui-checkboxInputWidget [type='checkbox'] + span,
.oo-ui-radioInputWidget [type='radio'] + span {
background-color: var(--ooui-input);
border-color: var(--ooui-input-border);
}
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:checked + span,
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:indeterminate + span {
background-color: var(--ooui-progressive);
border-color: var(--ooui-progressive);
}
.oo-ui-radioInputWidget.oo-ui-widget-enabled [type='radio']:checked + span {
border-color: var(--ooui-progressive);
}
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:checked:hover + span,
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:indeterminate:hover + span {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
}
.oo-ui-radioInputWidget.oo-ui-widget-enabled [type='radio']:checked:hover + span {
border-color: var(--ooui-progressive--hover);
}
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:hover + span,
.oo-ui-radioInputWidget.oo-ui-widget-enabled [type='radio']:hover + span {
border-color: var(--ooui-accent);
}
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:focus + span {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:active + span,
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:checked:active + span,
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:indeterminate:active + span {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
box-shadow: inset 0 0 0 1px var(--ooui-progressive--hover);
}
.oo-ui-radioInputWidget.oo-ui-widget-enabled [type='radio']:active + span {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
}
.oo-ui-radioInputWidget.oo-ui-widget-enabled [type='radio']:checked:active + span {
border-color: var(--ooui-progressive--hover);
box-shadow: inset 0 0 0 1px var(--ooui-progressive--hover);
}
.oo-ui-radioInputWidget.oo-ui-widget-enabled [type='radio']:checked:active + span:before {
border-color: var(--ooui-progressive--hover);
}
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:checked:focus + span,
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:indeterminate:focus + span {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent), inset 0 0 0 2px #fff;
}
.oo-ui-checkboxInputWidget [type='checkbox']:disabled + span,
.oo-ui-radioInputWidget [type='radio']:disabled + span {
background-color: var(--ooui-disabled);
border-color: var(--ooui-disabled);
}
.oo-ui-dropdownWidget-handle {
border-color: var(--ooui-normal-border);
}
.oo-ui-dropdownWidget.oo-ui-widget-enabled .oo-ui-dropdownWidget-handle {
background-color: var(--ooui-normal);
color: var(--ooui-text);
}
.oo-ui-dropdownWidget.oo-ui-widget-enabled .oo-ui-dropdownWidget-handle:hover {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
}
.oo-ui-dropdownWidget.oo-ui-widget-enabled .oo-ui-dropdownWidget-handle:active {
color: var(--ooui-text);
}
.oo-ui-dropdownWidget.oo-ui-widget-enabled .oo-ui-dropdownWidget-handle:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-dropdownWidget.oo-ui-widget-enabled.oo-ui-dropdownWidget-open .oo-ui-dropdownWidget-handle {
background-color: var(--ooui-normal--hover);
}
.oo-ui-dropdownWidget.oo-ui-widget-disabled .oo-ui-dropdownWidget-handle {
color: var(--ooui-disabled-text);
text-shadow: none;
border-color: var(--ooui-disabled-border);
background-color: var(--ooui-disabled);
}
.oo-ui-dropdownInputWidget select {
border-color: var(--ooui-normal-border);
}
.oo-ui-dropdownInputWidget option {
background-color: var(--ooui-interface);
}
.oo-ui-dropdownInputWidget.oo-ui-widget-enabled {
background-color: var(--ooui-normal);
}
.oo-ui-dropdownInputWidget.oo-ui-widget-enabled:hover {
background-color: var(--ooui-normal--hover);
}
.oo-ui-dropdownInputWidget.oo-ui-widget-enabled select {
color: var(--ooui-text);
}
.oo-ui-dropdownInputWidget.oo-ui-widget-enabled select:hover,
.oo-ui-dropdownInputWidget.oo-ui-widget-enabled select:active {
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
}
.oo-ui-dropdownInputWidget.oo-ui-widget-enabled select:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-labelWidget.oo-ui-inline-help {
color: var(--byline-color);
}
.oo-ui-menuSelectWidget {
background-color: var(--ooui-interface);
border-color: var(--ooui-interface-border);
}
.oo-ui-menuSelectWidget-frameless {
box-shadow: inset 0 -1px 0 0 var(--ooui-normal-border);
}
.oo-ui-menuSectionOptionWidget {
color: var(--byline-color);
}
.oo-ui-menuOptionWidget.oo-ui-optionWidget-highlighted,
.oo-ui-menuOptionWidget.oo-ui-optionWidget-selected {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
}
.oo-ui-menuOptionWidget.oo-ui-optionWidget-selected.oo-ui-menuOptionWidget.oo-ui-optionWidget-highlighted,
.oo-ui-menuOptionWidget.oo-ui-optionWidget-pressed.oo-ui-menuOptionWidget.oo-ui-optionWidget-highlighted {
color: var(--ooui-accent);
}
.oo-ui-menuOptionWidget.oo-ui-widget-enabled.oo-ui-optionWidget {
color: var(--ooui-text);
}
.oo-ui-messageDialog-title {
color: inherit;
}
.oo-ui-messageWidget.oo-ui-messageWidget-block.oo-ui-flaggedElement-error {
background-color: var(--errorbox-bg);
border-color: var(--errorbox-border);
}
.oo-ui-messageWidget.oo-ui-messageWidget-block.oo-ui-flaggedElement-warning {
background-color: var(--warningbox-bg);
border-color: var(--warningbox-border);
}
.oo-ui-messageWidget.oo-ui-messageWidget-block.oo-ui-flaggedElement-success {
background-color: var(--successbox-bg);
border-color: var(--successbox-border);
}
.oo-ui-messageWidget.oo-ui-messageWidget-block.oo-ui-flaggedElement-notice {
background-color: var(--messagebox-info-background);
border-color: var(--messagebox-info-border);
}
.oo-ui-messageWidget.oo-ui-flaggedElement-error:not(.oo-ui-messageWidget-block),
.oo-ui-messageWidget.oo-ui-flaggedElement-success:not(.oo-ui-messageWidget-block) {
color: var(--ooui-text);
}
.oo-ui-optionWidget.oo-ui-widget-disabled {
color: var(--ooui-disabled-text);
}
.oo-ui-outlineControlsWidget {
background-color: var(--ooui-normal);
}
.oo-ui-outlineOptionWidget.oo-ui-optionWidget-highlighted {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
}
.oo-ui-popupWidget-popup {
background-color: var(--ooui-interface);
border-color: var(--ooui-interface-border);
}
.oo-ui-popupWidget-anchored-top .oo-ui-popupWidget-anchor:after {
border-bottom-color: var(--ooui-interface);
}
.oo-ui-popupWidget-anchored-top .oo-ui-popupWidget-anchor:before {
border-bottom-color: var(--ooui-interface-border);
}
.oo-ui-popupWidget-anchored-bottom .oo-ui-popupWidget-anchor:after {
border-top-color: var(--ooui-interface);
}
.oo-ui-popupWidget-anchored-bottom .oo-ui-popupWidget-anchor:before {
border-top-color: var(--ooui-interface-border);
}
.oo-ui-popupWidget-anchored-start .oo-ui-popupWidget-anchor:after {
border-right-color: var(--ooui-interface);
}
.oo-ui-popupWidget-anchored-start .oo-ui-popupWidget-anchor:before {
border-right-color: var(--ooui-interface-border);
}
.oo-ui-popupWidget-anchored-end .oo-ui-popupWidget-anchor:after {
border-left-color: var(--ooui-interface);
}
.oo-ui-popupWidget-anchored-end .oo-ui-popupWidget-anchor:before {
border-left-color: var(--ooui-interface-border);
}
.oo-ui-searchWidget-query {
border-bottom-color: var(--ooui-interface-border);
}
.oo-ui-selectFileWidget-dropTarget {
background-color: var(--ooui-interface);
border-color: var(--ooui-interface-border);
}
.oo-ui-selectFileWidget.oo-ui-widget-enabled.oo-ui-selectFileWidget-dropTarget {
background-color: var(--ooui-interface);
}
.oo-ui-selectFileWidget.oo-ui-widget-enabled.oo-ui-selectFileWidget-dropTarget:hover {
border-color: var(--ooui-input-border--hover);
}
.oo-ui-tabOptionWidget {
color: var(--ooui-text);
}
.oo-ui-tabSelectWidget-framed .oo-ui-tabOptionWidget.oo-ui-optionWidget-selected {
background-color: var(--body-dark);
color: var(--ooui-text);
}
.oo-ui-tabSelectWidget-framed .oo-ui-tabOptionWidget.oo-ui-optionWidget-selected .oo-ui-labelElement-label {
border-bottom-color: var(--body-border);
}
.oo-ui-tabSelectWidget-framed .oo-ui-tabOptionWidget.oo-ui-widget-enabled:hover,
.oo-ui-tabSelectWidget-framed .oo-ui-tabOptionWidget.oo-ui-widget-enabled:active {
background-color: var(--body-light);
color: var(--ooui-text);
}
.oo-ui-tabSelectWidget-framed .oo-ui-tabOptionWidget.oo-ui-widget-enabled.oo-ui-optionWidget-selected:hover {
background-color: var(--body-dark);
}
.oo-ui-tabSelectWidget-frameless .oo-ui-tabOptionWidget.oo-ui-optionWidget-selected {
color: var(--ooui-progressive);
box-shadow: inset 0 -2px 0 0 var(--ooui-progressive);
}
.oo-ui-tabSelectWidget-frameless .oo-ui-tabOptionWidget.oo-ui-optionWidget-selected:hover,
.oo-ui-tabSelectWidget-frameless .oo-ui-tabOptionWidget.oo-ui-optionWidget-selected:focus {
color: var(--ooui-progressive--hover);
box-shadow: inset 0 -2px 0 0 var(--ooui-progressive--hover);
}
.oo-ui-tabSelectWidget-framed {
background: none;
border-bottom: 1px solid var(--ooui-interface-border);
}
.oo-ui-tabSelectWidget-frameless {
box-shadow: inset 0 -1px 0 0 var(--ooui-interface-border);
}
.oo-ui-tabSelectWidget-mobile {
}
.oo-ui-tabSelectWidget-mobile.oo-ui-tabSelectWidget-framed:after {
background: var(--mobile-navbox-linear-gradient);
}
.oo-ui-tabSelectWidget-mobile.oo-ui-tabSelectWidget-frameless:after {
background: var(--mobile-navbox-linear-gradient);
}
.oo-ui-tagItemWidget {
border-color: var(--ooui-normal-border);
}
.oo-ui-tagItemWidget.oo-ui-widget-enabled {
color: var(--ooui-text);
}
.oo-ui-tagItemWidget.oo-ui-widget-enabled:hover {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
}
.oo-ui-tagItemWidget.oo-ui-widget-enabled:not( .oo-ui-tagItemWidget-fixed ) {
background-color: var(--ooui-normal);
}
.oo-ui-tagItemWidget.oo-ui-widget-enabled .oo-ui-buttonElement-button:hover {
background-color: var(--ooui-normal--hover);
}
.oo-ui-tagMultiselectWidget.oo-ui-widget-enabled {
background-color: var(--ooui-interface);
}
.oo-ui-tagMultiselectWidget.oo-ui-widget-enabled.oo-ui-tagMultiselectWidget-outlined {
background-color: var(--ooui-normal);
}
.oo-ui-tagMultiselectWidget.oo-ui-widget-enabled.oo-ui-tagMultiselectWidget-outlined .oo-ui-tagItemWidget.oo-ui-widget-enabled {
background-color: var(--ooui-interface);
}
.oo-ui-textInputWidget .oo-ui-inputWidget-input {
background-color: var(--ooui-input);
color: var(--ooui-text);
border-color: var(--ooui-input-border);
}
.oo-ui-textInputWidget.oo-ui-widget-enabled .oo-ui-inputWidget-input::placeholder {
color: var(--subtle-color);
}
.oo-ui-textInputWidget.oo-ui-widget-enabled .oo-ui-inputWidget-input:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-textInputWidget.oo-ui-widget-enabled .oo-ui-inputWidget-input[readonly]:not(.oo-ui-pendingElement-pending) {
background-color: var(--ooui-disabled);
color: var(--ooui-disabled-text);
}
.oo-ui-textInputWidget.oo-ui-widget-enabled:hover .oo-ui-inputWidget-input {
border-color: var(--ooui-input-border--hover);
}
.oo-ui-textInputWidget.oo-ui-widget-enabled:hover .oo-ui-inputWidget-input:focus {
border-color: var(--ooui-accent);
}
@media screen and (min-width: 0) {
.oo-ui-textInputWidget.oo-ui-widget-enabled textarea.oo-ui-inputWidget-input:focus {
outline: 1px solid var(--ooui-accent);
}
}
.oo-ui-textInputWidget.oo-ui-widget-disabled .oo-ui-inputWidget-input {
background-color: var(--ooui-disabled);
color: var(--ooui-disabled-text);
text-shadow: none;
border-color: var(--ooui-disabled-border);
}
.oo-ui-toggleSwitchWidget {
background-color: var(--ooui-input);
border-color: var(--ooui-input-border);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled .oo-ui-toggleSwitchWidget-grip {
background-color: var(--ooui-input);
border-color: var(--ooui-input-border);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:hover {
background-color: var(--ooui-input);
border-color: var(--ooui-accent);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:hover .oo-ui-toggleSwitchWidget-grip {
background-color: var(--ooui-input);
border-color: var(--ooui-accent);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:active,
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:active:hover,
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:active:focus {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
box-shadow: inset 0 0 0 1px var(--ooui-progressive--hover);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:active .oo-ui-toggleSwitchWidget-grip,
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:active:hover .oo-ui-toggleSwitchWidget-grip,
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:active:focus .oo-ui-toggleSwitchWidget-grip {
background-color: var(--ooui-input);
border-color: var(--ooui-input);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:focus .oo-ui-toggleSwitchWidget-grip {
border-color: var(--ooui-accent);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled.oo-ui-toggleWidget-on {
background-color: var(--ooui-progressive);
border-color: var(--ooui-progressive);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled.oo-ui-toggleWidget-on .oo-ui-toggleSwitchWidget-grip {
background-color: var(--ooui-input);
border-color: var(--ooui-input);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled.oo-ui-toggleWidget-on:hover {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled.oo-ui-toggleWidget-on:active,
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled.oo-ui-toggleWidget-on:active:hover {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled.oo-ui-toggleWidget-on:focus {
border-color: var(--ooui-progressive);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled.oo-ui-toggleWidget-on:focus::before {
border-color: #fff;
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-disabled {
background-color: var(--ooui-disabled);
border-color: var(--ooui-disabled);
}
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled > .oo-ui-buttonElement-button {
color: var(--ooui-text);
}
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled > .oo-ui-buttonElement-button:hover {
color: var(--ooui-text);
}
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled > .oo-ui-buttonElement-button:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled.oo-ui-buttonElement-pressed > input.oo-ui-buttonElement-button,
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled > .oo-ui-buttonElement-button:active {
color: var(--ooui-text);
}
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button,
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button:hover {
color: var(--ooui-text);
}
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button:active,
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive.oo-ui-buttonElement-pressed > .oo-ui-buttonElement-button {
color: var(--ooui-text);
border-color: var(--ooui-text);
}
.oo-ui-buttonElement-frameless.oo-ui-widget-disabled > .oo-ui-buttonElement-button {
color: var(--ooui-disabled-text);
}
.oo-ui-buttonElement-framed.oo-ui-widget-disabled > .oo-ui-buttonElement-button {
background-color: var(--ooui-disabled);
border-color: var(--ooui-disabled-border);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled > .oo-ui-buttonElement-button {
background-color: var(--ooui-normal);
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled > .oo-ui-buttonElement-button:hover {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled > .oo-ui-buttonElement-button:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-buttonElement-active > .oo-ui-buttonElement-button {
background-color: var(--ooui-progressive--hover);
color: #fff;
border-color: var(--ooui-progressive--hover);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-buttonElement-active > .oo-ui-buttonElement-button:focus {
border-color: var(--ooui-progressive--hover);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled > .oo-ui-buttonElement-button:active,
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-buttonElement-pressed > .oo-ui-buttonElement-button {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive {
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button {
color: var(--ooui-text);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button:hover {
background-color: var(--ooui-normal--hover);
border-color: var(--ooui-progressive--hover);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-destructive > .oo-ui-buttonElement-button {
color: var(--ooui-text);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-destructive > .oo-ui-buttonElement-button:hover {
background-color: var(--ooui-normal--hover);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button {
background-color: var(--ooui-progressive);
border-color: var(--ooui-progressive);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button:hover {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent), inset 0 0 0 2px #fff;
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button:active,
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive.oo-ui-buttonElement-pressed > .oo-ui-buttonElement-button,
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive.oo-ui-buttonElement-active > .oo-ui-buttonElement-button,
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive.oo-ui-popupToolGroup-active > .oo-ui-buttonElement-button {
color: #fff;
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
}
.oo-ui-pendingElement-pending {
background-image: var(--ooui-pending-background-image);
background-size: 200%;
animation: oo-ui-pendingElement-stripes 6s linear infinite;
}
@keyframes oo-ui-pendingElement-stripes {
100% {
background-position: 100%;
}
}
.oo-ui-messageDialog-content > .oo-ui-window-foot {
outline-color: var(--ooui-interface-border);
}
.oo-ui-messageDialog-message {
color: var(--ooui-text);
}
.oo-ui-messageDialog-actions-horizontal .oo-ui-actionWidget {
border-right-color: var(--ooui-interface-border);
}
.oo-ui-messageDialog-actions-vertical .oo-ui-actionWidget {
border-bottom-color: var(--ooui-interface-border);
}
.oo-ui-processDialog-content .oo-ui-window-head,
.oo-ui-processDialog-content .oo-ui-window-foot {
outline-color: var(--ooui-interface-border);
}
.oo-ui-processDialog .oo-ui-actionWidget > .oo-ui-buttonElement-button {
border-top-color: transparent;
border-bottom-color: transparent;
}
.oo-ui-processDialog .oo-ui-actionWidget > .oo-ui-buttonElement-button:hover,
.oo-ui-processDialog .oo-ui-actionWidget > .oo-ui-buttonElement-button:active {
border-top-color: transparent;
border-bottom-color: transparent;
}
.oo-ui-processDialog .oo-ui-actionWidget:not( .oo-ui-flaggedElement-progressive ):not( .oo-ui-flaggedElement-destructive ) > .oo-ui-buttonElement-button:hover,
.oo-ui-processDialog .oo-ui-actionWidget:not( .oo-ui-flaggedElement-progressive ):not( .oo-ui-flaggedElement-destructive ) > .oo-ui-buttonElement-button:active {
border-right-color: var(--ooui-interface-border);
border-left-color: transparent;
}
.oo-ui-processDialog .oo-ui-actionWidget:not( .oo-ui-flaggedElement-progressive ):not( .oo-ui-flaggedElement-destructive ) > .oo-ui-buttonElement-button:focus {
border-color: var(--ooui-accent);
}
.oo-ui-processDialog-actions-safe .oo-ui-actionWidget > .oo-ui-buttonElement-button,
.oo-ui-processDialog-actions-other .oo-ui-actionWidget > .oo-ui-buttonElement-button {
border-right-color: var(--ooui-normal-border);
border-left-color: transparent;
}
.oo-ui-processDialog-actions-safe .oo-ui-widget-enabled.oo-ui-iconElement:not( .oo-ui-labelElement ) > .oo-ui-buttonElement-button:hover {
background-color: var(--ooui-normal--hover);
border-right-color: var(--ooui-interface-border);
}
.oo-ui-windowManager-modal > .oo-ui-dialog {
background-color: var(--ooui-window-background);
}
.oo-ui-windowManager-modal > .oo-ui-dialog > .oo-ui-window-frame {
background-color: var(--ooui-interface);
}
.oo-ui-windowManager-modal.oo-ui-windowManager-floating > .oo-ui-dialog > .oo-ui-window-frame {
border-color: var(--ooui-interface-border);
}
.oo-ui-window {
color: var(--ooui-text);
}
.oo-ui-toolbar-bar {
background-color: var(--ooui-interface);
color: var(--ooui-text);
}
.oo-ui-toolbar-position-top > .oo-ui-toolbar-bar {
border-bottom-color: var(--body-mid);
}
.oo-ui-toolbar-bar .oo-ui-bookletLayout > .oo-ui-menuLayout-menu {
border-right-color: var(--body-mid);
}
.oo-ui-tool.oo-ui-widget-enabled > .oo-ui-tool-link:hover {
background-color: var(--ooui-normal--hover);
}
.oo-ui-tool.oo-ui-widget-enabled > .oo-ui-tool-link:focus {
outline: 1px solid var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-tool.oo-ui-widget-enabled > .oo-ui-tool-link:active,
.oo-ui-tool.oo-ui-widget-enabled.oo-ui-tool-active > .oo-ui-tool-link,
.oo-ui-tool.oo-ui-widget-enabled.oo-ui-popupToolGroup-active > .oo-ui-tool-link {
background-color: var(--ooui-normal--hover);
color: var(--ooui-accent);
box-shadow: none;
}
.oo-ui-tool.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive > .oo-ui-tool-link {
background-color: var(--ooui-progressive);
}
.oo-ui-tool.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive > .oo-ui-tool-link:hover {
background-color: var(--ooui-progressive--hover);
}
.oo-ui-tool.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive > .oo-ui-tool-link:focus {
box-shadow: inset 0 0 0 1px var(--ooui-accent), inset 0 0 0 2px #fff;
}
.oo-ui-tool.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive > .oo-ui-tool-link:active,
.oo-ui-tool.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive.oo-ui-tool-active > .oo-ui-tool-link {
background-color: var(--ooui-progressive--hover);
}
.oo-ui-listToolGroup-tools .oo-ui-tool.oo-ui-widget-enabled {
background-color: var(--ooui-normal);
}
.oo-ui-listToolGroup-tools .oo-ui-tool.oo-ui-widget-enabled:hover {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
}
.oo-ui-listToolGroup-tools .oo-ui-tool-active.oo-ui-widget-enabled .oo-ui-tool-link .oo-ui-tool-title {
color: var(--ooui-progressive);
}
.oo-ui-menuToolGroup {
border-left-color: var(--body-mid);
border-right-color: var(--body-mid);
}
.oo-ui-popupToolGroup-tools {
background-color: var(--ooui-interface);
border-color: var(--body-mid);
}
.oo-ui-popupToolGroup.oo-ui-widget-enabled > .oo-ui-popupToolGroup-handle:hover {
background-color: var(--ooui-normal--hover);
}
.oo-ui-popupToolGroup.oo-ui-widget-enabled > .oo-ui-popupToolGroup-handle:focus {
outline: 1px solid var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-toolbar-actions .oo-ui-popupToolGroup.oo-ui-widget-enabled > .oo-ui-popupToolGroup-handle:hover {
border-right-color: var(--ooui-normal--hover);
}
.oo-ui-popupToolGroup-tools .oo-ui-tool.oo-ui-widget-enabled .oo-ui-tool-link:focus {
box-shadow: inset 0 0 0 2px var(--ooui-accent);
}
.oo-ui-popupToolGroup-tools .oo-ui-tool-active.oo-ui-widget-enabled .oo-ui-tool-link .oo-ui-tool-title {
color: var(--ooui-progressive);
}
.oo-ui-popupToolGroup.oo-ui-popupToolGroup-active > .oo-ui-popupToolGroup-handle {
background-color: var(--ooui-normal);
color: var(--ooui-accent);
}
.oo-ui-popupToolGroup.oo-ui-popupToolGroup-active > .oo-ui-popupToolGroup-handle:hover {
background-color: var(--ooui-normal--hover);
color: var(--ooui-accent);
}
.oo-ui-bookletLayout-outlinePanel > .oo-ui-outlineControlsWidget {
border-top-color: var(--ooui-interface-border);
}
.oo-ui-bookletLayout > .oo-ui-menuLayout-menu {
border-right-color: var(--ooui-interface-border);
}
.oo-ui-fieldLayout-disabled > .oo-ui-fieldLayout-body > .oo-ui-fieldLayout-header > .oo-ui-labelElement-label {
color: var(--ooui-disabled-text);
}
.oo-ui-panelLayout-framed {
border-color: var(--sidebar);
}
.oo-ui-icon-settings {
background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' width='20' height='20' viewBox='0 0 20 20'%3E%3Ctitle%3Esettings%3C/title%3E%3Cg transform='translate(10 10)'%3E%3Cpath id='a' d='M1.5-10h-3l-1 6.5h5m0 7h-5l1 6.5h3'/%3E%3Cuse xlink:href='%23a' transform='rotate(45)'/%3E%3Cuse xlink:href='%23a' transform='rotate(90)'/%3E%3Cuse xlink:href='%23a' transform='rotate(135)'/%3E%3C/g%3E%3Cpath d='M10 2.5a7.5 7.5 0 0 0 0 15 7.5 7.5 0 0 0 0-15v4a3.5 3.5 0 0 1 0 7 3.5 3.5 0 0 1 0-7'/%3E%3C/svg%3E");
}
.oo-ui-icon-clear {
background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 20 20'%3E%3Ctitle%3Eclear%3C/title%3E%3Cpath d='M10 0a10 10 0 1 0 10 10A10 10 0 0 0 10 0zm5.66 14.24-1.41 1.41L10 11.41l-4.24 4.25-1.42-1.42L8.59 10 4.34 5.76l1.42-1.42L10 8.59l4.24-4.24 1.41 1.41L11.41 10z'/%3E%3C/svg%3E");
}
.mw-widget-dateInputWidget-handle {
background-color: var(--ooui-input);
color: var(--ooui-text);
border-color: var(--ooui-input-border);
}
.mw-widget-dateInputWidget-calendar {
background-color: var(--ooui-interface);
}
.mw-widget-dateInputWidget.oo-ui-widget-enabled .mw-widget-dateInputWidget-handle:hover {
border-color: var(--ooui-input-border--hover);
}
.mw-widget-calendarWidget {
border-color: var(--ooui-interface-border);
}
.mw-widget-calendarWidget:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.mw-widget-calendarWidget-day,
.mw-widget-calendarWidget-day-heading {
color: var(--ooui-text);
}
.mw-widget-calendarWidget-day-additional {
color: var(--ooui-text);
opacity: 0.67;
}
.mw-widget-calendarWidget-day-today {
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.mw-widget-calendarWidget-item:hover {
background-color: var(--ooui-progressive);
}
.mw-widget-calendarWidget-item-selected {
background-color: var(--ooui-progressive--hover);
}
.mw-widgets-datetime-calendarWidget {
background-color: var(--ooui-interface);
border-color: var(--ooui-interface-border);
}
.mw-widgets-datetime-calendarWidget:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent), 0 2px 2px 0 rgba(0, 0, 0, 0.25);
}
.mw-widgets-datetime-calendarWidget-grid .mw-widgets-datetime-calendarWidget-cell.mw-widgets-datetime-calendarWidget-extra .oo-ui-buttonElement-button .oo-ui-labelElement-label {
color: var(--subtle-color);
}
.mw-widgets-datetime-calendarWidget-grid .mw-widgets-datetime-calendarWidget-cell.mw-widgets-datetime-calendarWidget-selected .oo-ui-buttonElement-button {
background-color: var(--ooui-progressive--hover);
}
.mw-widgets-datetime-dateTimeInputWidget-handle {
background-color: var(--ooui-input);
color: var(--ooui-text);
border-color: var(--ooui-input-border);
}
.mw-widgets-datetime-dateTimeInputWidget.oo-ui-widget-enabled.mw-widgets-datetime-dateTimeInputWidget-handle:hover {
border-color: var(--ooui-input-border--hover);
}
.mw-widgets-datetime-dateTimeInputWidget.oo-ui-widget-enabled:hover input,
.mw-widgets-datetime-dateTimeInputWidget.oo-ui-widget-enabled:hover textarea {
border-color: var(--ooui-input-border--hover);
}
.mw-widgets-datetime-dateTimeInputWidget.oo-ui-widget-enabled .mw-widgets-datetime-dateTimeInputWidget-editField:hover {
background-color: var(--ooui-normal);
}
.ve-activated .ve-init-mw-desktopArticleTarget-originalContent #catlinks:hover {
background: var(--ooui-normal--hover);
}
.ve-ui-overlay {
font-family: inherit;
}
.oo-ui-toolbar-position-top .ve-ui-toolbarDialog-position-above {
border-top-color: var(--body-mid);
}
.ve-ce-branchNode-blockSlug,
.ve-ce-branchNode-newSlug {
outline-color: var(--body-border);
background-color: var(--ooui-interface);
}
.ve-ui-specialCharacterPage h3 {
color: var(--byline-color);
}
.ve-ui-specialCharacterPage-character {
border-color: var(--body-mid);
}
.ve-ui-specialCharacterPage-character:hover {
border-color: var(--body-dark);
}
.ve-ce-linkAnnotation.ve-ce-annotation-active {
box-shadow: 0 0 0 1px var(--body-mid);
background: none;
}
.ve-ui-desktopContext .ve-ui-linkContextItem .ve-ui-linkContextItem-label {
border-color: var(--body-border);
}
.ve-ui-mwHelpPopupTool-version-label,
.ve-ui-mwHelpPopupTool-version-link,
.ve-ui-mwHelpPopupTool-version-date {
color: var(--byline-color);
}
.ve-ce-tableCellableNode {
border-color: var(--body-mid);
}
.ve-ce-mwReferencesListNode-muted {
color: var(--byline-color);
}
.ve-ui-mwTemplatePage-description,
.ve-ui-mwParameterPage-label,
.ve-ui-mwParameterPage-description-required,
.ve-ui-mwParameterPage-description-deprecated {
color: var(--byline-color);
}
.mw-widget-titleWidget-menu .mw-widget-titleOptionWidget-description {
color: var(--byline-color);
}
.ve-ui-mwGalleryDialog-menuLayout > .oo-ui-menuLayout-menu,
.ve-ui-mwGalleryDialog-innerMenuLayout > .oo-ui-menuLayout-menu,
.ve-ui-mwGalleryDialog .ve-ui-mwGalleryDialog-image-container,
.ve-ui-targetWidget {
border-color: var(--body-border);
}
.ve-ui-targetWidget:not(.oo-ui-pendingElement-pending) {
background-color: var(--body-main);
}
.ve-ui-mwSaveDialog {
color: var(--ooui-text);
}
.ve-ui-mwSaveDialog-options {
background-color: var(--ooui-interface);
border-color: var(--body-border);
}
.ve-ui-mwSaveDialog-summary {
background-color: var(--ooui-input);
}
.ve-ui-mwSaveDialog-editSummary-count {
border-color: var(--body-border);
}
.ve-ui-mwSaveDialog-license {
color: var(--byline-color);
}
.ve-ui-mwReferenceContextItem-muted {
color: var(--byline-color);
}
.ve-ui-mwNoticesPopupTool-items > div:not(:first-child),
.ve-ui-mwHelpPopupTool-item:not(:first-child) {
border-color: var(--body-border);
}
.ve-ui-mwTransclusionOutlineControlsWidget {
background-color: var(--ooui-interface);
border-top-color: var(--body-border);
}
.ve-ui-mwTransclusionOutlineTemplateWidget-sticky {
background-color: var(--ooui-interface);
}
.ve-ui-mwTransclusionOutlineTemplateWidget .ve-ui-mwTransclusionOutlineParameterWidget.oo-ui-optionWidget-highlighted {
color: var(--ooui-text);
}
.ve-ui-mwTransclusionOutlineTemplateWidget-no-template-parameters {
color: var(--subtle-color);
}
.ve-ui-mwParameterPage-undocumentedLabel {
color: var(--subtle-color);
}
.ve-ui-mwTwoPaneTransclusionDialogLayout > .oo-ui-menuLayout-menu {
border-right: var(--body-border);
}
.ve-ui-mwParameterPage-doc-required,
.ve-ui-mwParameterPage-doc-deprecated,
.ve-ui-mwParameterPage-inlineDescription .ve-ui-mwParameterPage-doc-example {
color: var(--byline-color);
}
.ve-ui-expandableContent-toggle {
background-color: var(--ooui-interface);
}
.ve-ui-expandableContent-fade {
background: linear-gradient(to right, rgba(255, 255, 255, 0) 0, var(--ooui-interface) 90%);
}
.ve-ui-commandHelpDialog-shortcut > kbd,
.ve-ui-commandHelpDialog-sequence > kbd {
background-color: var(--keypress-background);
color: var(--keypress-color);
border-color: var(--keypress-border);
box-shadow: none;
text-shadow: none;
}
.ve-init-mw-desktopArticleTarget-toolbarPlaceholder-floating .ve-init-mw-desktopArticleTarget-toolbarPlaceholder-bar {
background: var(--ooui-interface);
}
.ve-init-mw-desktopArticleTarget-toolbarPlaceholder-bar {
border-bottom-color: var(--body-mid);
}
figure[typeof~='mw:File/Thumb'],
figure[typeof~='mw:File/Frame'],
figure[typeof~='mw:Image/Thumb'],
figure[typeof~='mw:Video/Thumb'],
figure[typeof~='mw:Image/Frame'],
figure[typeof~='mw:Video/Frame'] {
border: none;
background-color: var(--thumb-bg);
}
figure[typeof~='mw:File/Thumb'] > a:first-child > *:first-child:not( .mw-broken-media ),
figure[typeof~='mw:File/Frame'] > a:first-child > *:first-child:not( .mw-broken-media ),
figure[typeof~='mw:Image/Thumb'] > a:first-child > *:first-child:not( .mw-broken-media ),
figure[typeof~='mw:Video/Thumb'] > a:first-child > *:first-child:not( .mw-broken-media ),
figure[typeof~='mw:Image/Frame'] > a:first-child > *:first-child:not( .mw-broken-media ),
figure[typeof~='mw:Video/Frame'] > a:first-child > *:first-child:not( .mw-broken-media ) {
border: none;
background: var(--thumb-bg);
}
figure[typeof~='mw:File/Thumb'] > figcaption,
figure[typeof~='mw:File/Frame'] > figcaption,
figure[typeof~='mw:Image/Thumb'] > figcaption,
figure[typeof~='mw:Video/Thumb'] > figcaption,
figure[typeof~='mw:Image/Frame'] > figcaption,
figure[typeof~='mw:Video/Frame'] > figcaption {
border: none;
background-color: var(--thumb-caption-bg);
padding: 4px 6px;
}
:root {
--keypress-background: #eee;
--keypress-border: #ccc;
--keypress-color: #333;
}
.toc .toctitle > * {
color: #fff;
}
.navbox .navbox-title {
color: #fff;
}
.navbox .navbox-list:not(last-child) {
border-bottom: none;
}
.archivelist {
background-color: var(--body-light);
border: solid 1px var(--body-border);
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
float: right;
margin: 5px;
padding: 5px;
text-align: center;
width: 120px;
}
.shortcut {
border: 1px solid var(--body-border);
background: var(--body-light);
float: right;
font-size: 0.8em;
margin: 0.5em 0em 0.5em 1em;
padding: 0.5em;
text-align: center;
}
.hatnote,
.seealso {
font-style: italic;
}
.hatnote i,
.seealso i {
font-style: normal;
}
div.hatnote,
div.seealso {
margin: 0.5em 1.6em;
}
div.hatnote + div.hatnote,
div.hatnote + div.seealso,
div.seealso + div.hatnote,
div.seealso + div.seealso {
margin-top: -0.5em;
}
.keypress {
background: var(--keypress-background);
color: var(--keypress-color);
font-family: inherit;
border: 1px solid var(--keypress-border);
border-radius: 2px;
font-size: 0.9em;
margin: 0 0.1em;
padding: 0.1em 0.4em;
white-space: nowrap;
}
:root {
--documentation-background: #f9fafa;
--documentation-link-color: #e4eaee;
--documentation-headers-color: #fff;
--documentation-header-background: #949eaa;
--documentation-subheader-background: #808c9a;
--documentation-border: #e4eaee;
}
.documentation {
background: var(--documentation-background);
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
margin: 1em 0;
}
.documentation pre,
.documentation code {
background-color: var(--documentation-background);
border-color: var(--documentation-border);
}
.documentation h2,
.documentation hr {
border-color: var(--documentation-border);
}
.documentation-header {
color: var(--documentation-headers-color);
background: var(--documentation-header-background);
font-weight: bold;
padding: 1em 1.5em;
}
.documentation-title {
font-size: 1.25em;
}
.documentation-subheader {
color: var(--documentation-headers-color);
background: var(--documentation-subheader-background);
padding: 0.5em 1.5em;
}
.documentation-subheader a,
.documentation-subheader a:visited,
.documentation-subheader a:active {
color: var(--documentation-link-color);
}
.documentation-documentation,
.documentation-links {
font-size: 0.85em;
}
.documentation-content {
padding: 1em 1.5em;
}
.mw-templatedata-doc-params dl:not(:empty) {
column-count: 3;
border-top: 1px solid var(--body-border);
margin-bottom: 0.5em;
}
.mw-templatedata-doc-params dt::after {
content: ":";
}
.mw-templatedata-doc-params dd,
.mw-templatedata-doc-params dt {
margin: 0.1em 2em;
min-width: auto;
}
.mw-templatedata-doc-muted {
color: var(--subtle-color);
font-style: italic;
}
:root {
--infobox-text-color: var(--text-color);
--table-header: var(--body-dark);
--table-subheader: var(--body-mid);
--table-body: var(--body-light);
--table-border: var(--body-border);
}
.infobox {
font-size: 0.85em;
width: 300px;
border-collapse: collapse;
float: right;
table-layout: fixed;
margin: 0.5em 0 1em 1em;
}
.infobox .infobox-buttons {
display: flex;
flex-wrap: wrap;
justify-content: center;
grid-gap: 3px;
margin-bottom: 3px;
}
.infobox .infobox-buttons .button {
background: var(--table-subheader);
padding: 0 5px;
font-weight: bold;
flex: 1 1 20%;
max-width: 20%;
color: #fff;
}
.infobox .infobox-buttons .button.button-selected {
background: var(--table-header);
}
.infobox tbody {
border: 1px solid var(--table-border);
background: var(--table-body);
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(231, 215, 199, 0.5);
}
.infobox .infobox-header {
background: var(--table-header);
padding: 0.5em 0;
text-align: center;
color: #fff;
font-size: 1.15em;
font-weight: bold;
line-height: 1.4em;
}
.infobox .infobox-image {
text-align: center;
}
.infobox .infobox-subheader {
background: var(--table-subheader);
font-weight: bold;
text-align: center;
color: #fff;
}
.infobox .infobox-padding {
backgound: var(--table-body);
}
.infobox tr td:not(.infobox-padding) {
padding: 0.2em 0.5em;
}
.infobox th:not(.infobox-header):not(.infobox-subheader):not(.infobox-nested) {
border-right: 2px solid var(--table-subheader);
text-align: right;
padding: 0.2em 0.5em;
}
.infobox select {
max-width: 300px;
}
.hidden {
display: none;
}
ol.references,
.reflist {
font-size: 90%;
}
.reflist {
list-style-type: decimal;
}
.reflist .references {
font-size: 100%;
list-style-type: inherit;
}
.reflist-lower-alpha {
list-style-type: lower-alpha;
}
ol.references li:target,
sup.reference:target {
background-color: var(--body-light);
}
.hideQuotes .refhide {
display: none;
}
:root {
--messagebox-obsolete-background: #cfcfcf;
--messagebox-obsolete-border: #464646;
--messagebox-obsolete-color: var(--text-color);
--messagebox-obsolete-link-color: #6c6c6c;
--messagebox-info-background: #ebebeb;
--messagebox-info-border: #898989;
--messagebox-info-color: var(--text-color);
--messagebox-info-link-color: #6c6c6c;
--messagebox-action-background: #c7e8fa;
--messagebox-action-border: #0b5884;
--messagebox-action-color: var(--text-color);
--messagebox-action-link-color: #03436b;
--messagebox-warn-background: #dfc0ba;
--messagebox-warn-border: #861c10;
--messagebox-warn-color: var(--text-color);
--messagebox-warn-link-color: #8e221a;
--messagebox-safe-background: #d8f0d3;
--messagebox-safe-border: #1b8408;
--messagebox-safe-color: var(--text-color);
--messagebox-safe-link-color: #1b8408;
--messagebox-disambig-background: #ebebeb;
--messagebox-disambig-border: #898989;
--messagebox-disambig-color: var(--text-color);
--messagebox-disambig-link-color: #6c6c6c;
--messagebox-discord-background: #5865f2;
--messagebox-discord-border: #4c57d0;
--messagebox-discord-link-color: #d2e5fc;
}
.mw-message-box,
.mw-message-box-error,
.mw-message-box-warning,
.mw-message-box-success,
.usermessage {
color: var(--text-color);
}
.messagebox {
width: 65%;
margin: 0.5em auto;
border-left: 15px solid;
border-color: var(--body-dark);
background-color: var(--body-light);
box-sizing: border-box;
}
.messagebox.obsolete {
background-color: var(--messagebox-obsolete-background);
border-color: var(--messagebox-obsolete-border);
color: var(--messagebox-obsolete-color);
}
.messagebox.obsolete a,
.messagebox.obsolete a:visited,
.messagebox.obsolete a:active {
color: var(--messagebox-obsolete-link-color);
}
.messagebox.info {
background-color: var(--messagebox-info-background);
border-color: var(--messagebox-info-border);
color: var(--messagebox-info-color);
}
.messagebox.info a,
.messagebox.info a:visited,
.messagebox.info a:active {
color: var(--messagebox-info-link-color);
}
.messagebox.action {
background-color: var(--messagebox-action-background);
border-color: var(--messagebox-action-border);
color: var(--messagebox-action-color);
}
.messagebox.action a,
.messagebox.action a:visited,
.messagebox.action a:active {
color: var(--messagebox-action-link-color);
}
.messagebox.warn {
background-color: var(--messagebox-warn-background);
border-color: var(--messagebox-warn-border);
color: var(--messagebox-warn-color);
}
.messagebox.warn a,
.messagebox.warn a:visited,
.messagebox.warn a:active {
color: var(--messagebox-warn-link-color);
}
.messagebox.safe {
background-color: var(--messagebox-safe-background);
border-color: var(--messagebox-safe-border);
color: var(--messagebox-safe-color);
}
.messagebox.safe a,
.messagebox.safe a:visited,
.messagebox.safe a:active {
color: var(--messagebox-safe-link-color);
}
.messagebox.disambig {
background-color: var(--messagebox-disambig-background);
border-color: var(--messagebox-disambig-border);
color: var(--messagebox-disambig-color);
}
.messagebox.disambig a,
.messagebox.disambig a:visited,
.messagebox.disambig a:active {
color: var(--messagebox-disambig-link-color);
}
.messagebox.discord {
background-color: var(--messagebox-discord-background);
border-color: var(--messagebox-discord-border);
color: #fff;
}
.messagebox.discord a,
.messagebox.discord a:visited,
.messagebox.discord a:active {
color: var(--messagebox-discord-link-color);
}
.messagebox.discord a.external,
.messagebox.discord a:visited.external,
.messagebox.discord a:active.external {
font-style: italic;
}
.messagebox.stub {
width: 40%;
}
.messagebox.hasdialogue {
padding: 0 10px;
width: auto;
}
:root {
--byline-arrow-filter: invert(29%) sepia(0%) saturate(376%) hue-rotate(172deg) brightness(87%) contrast(80%);
--tile-border-color: var(--body-border);
--tile-background-color: var(--body-light);
--tile-link-button-color: #f5e9db;
--tile-link-button-highlight-color: #dfccb0;
--tile-dark-color: #fff;
--tile-dark-bg: var(--body-dark);
--tile-dark-link-color: #ccc;
--tile-dark-byline-color: rgba(255, 255, 255, 0.7);
--tile-dark-header-color: #fff;
}
.tile {
background: var(--tile-background-color);
border: 1px solid var(--tile-border-color);
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
padding: 1.5em 2em 1em;
max-width: 40em;
}
.tile h2 {
font-size: 1.4em;
font-weight: bold;
border: none;
margin: 0 0 0.4em;
}
.tile .byline + h2 {
margin-top: -0.5em;
}
.tile.dark {
color: var(--tile-dark-color);
background: var(--tile-dark-bg);
border: none;
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.3);
}
.tile.dark h2 {
color: var(--tile-dark-header-color);
}
.tile.dark a {
color: var(--tile-dark-link-color);
}
.tile.dark .byline {
color: var(--tile-dark-byline-color);
}
.byline {
font-size: 0.9em;
color: var(--byline-color);
}
.byline a {
color: var(--byline-color);
}
.tile-row {
display: flex;
flex-flow: row wrap;
margin-bottom: 1em;
}
.tile-halves {
display: flex;
flex-flow: row wrap;
background: var(--tile-background-color);
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
}
.tile-halves h2 {
font-size: 1.4em;
font-weight: bold;
border: none;
margin: 0 0 0.4em;
}
.tile-halves .byline + h2 {
margin-top: -0.5em;
}
.tile-top {
width: 100%;
padding: 1.3rem 1.5rem 0.6rem;
}
.tile-top.tile-image {
display: flex;
align-items: center;
background-color: var(--body-light);
overflow: hidden;
padding: 0;
height: 13vw;
max-height: 12em;
transition: 0.4s ease-out;
}
.tile-halves:hover .tile-top.tile-image img {
transform: scale(1.1);
transition: 0.5s ease-out;
}
.tile-top.tile-image a {
width: 100%;
}
.tile-top.tile-image img {
width: 100%;
object-fit: cover;
max-height: 200px;
transition: 0.4s ease-out;
}
.tile-bottom {
background: var(--body-dark);
width: 100%;
padding: 1rem 1.5rem 0.6rem;
}
.tile-bottom h2 a {
color: #fff !important;
}
.tile-bottom.link-button {
align-self: flex-end;
padding: 0;
}
.tile-bottom.link-button a {
display: block;
text-align: center;
padding: 0.75em 1.5em 0.8em;
text-decoration: none;
}
.tile-bottom.read-more {
background: var(--tile-link-button-color);
transition: 0.3s ease-out;
}
.tile-bottom.read-more a {
color: var(--byline-color);
font-weight: bold;
text-align: right;
}
.tile-bottom.read-more:hover {
background: var(--tile-link-button-highlight-color);
}
.tile-bottom.read-more:hover .arrow {
transform: translateX(50%);
}
.tile-bottom.read-more .arrow {
filter: var(--byline-arrow-filter);
margin-left: 0.4em;
transition: 0.3s ease-out;
}
body.page-Main_Page.action-view .catlinks,
body.page-Main_Page.action-view #contentSub,
body.page-Main_Page.action-view #firstHeading,
body.page-Main_Page.action-view #siteNotice {
display: none;
}
body.page-Main_Page .mw-parser-output {
max-width: 75em;
margin: 0 auto;
}
body.page-Main_Page.action-view .catlinks,
body.page-Main_Page.action-view #contentSub,
body.page-Main_Page.action-view #siteNotice {
display: none;
}
.mainpage-header {
display: flex;
margin: 2.6em 1.75em 1.5em;
}
.mainpage-header .header-intro {
flex: 2;
}
.mainpage-header .header-intro h1 {
font-size: 2.5em;
font-weight: bold;
border: none;
margin: 0 0 0.15em;
}
.mainpage-header .header-intro p {
font-size: 1.1em;
line-height: 1.7em;
}
.mainpage-header .header-stats {
flex: 1;
display: flex;
justify-content: center;
align-items: center;
margin-top: -1em;
}
.mainpage-body {
display: grid;
grid-template-areas: "event event event" "update update update" "content content content" "left left right";
gap: 0.9rem;
grid-template-columns: repeat(3, 1fr);
}
.mainpage-body h2 a {
color: var(--text-color);
}
.mainpage-body .tile {
padding-left: 1.75em;
padding-right: 1.75em;
max-width: 100%;
}
.mainpage-body .tile-row {
width: 100%;
margin-bottom: 0;
}
.mainpage-body .tile-row {
display: grid;
gap: 0.9rem;
}
.mainpage-contents.tile-row {
display: flex;
}
.mainpage-contents.tile-row .tile-top {
height: 5.5rem;
}
.mainpage-left {
grid-area: left;
flex: 2;
display: flex;
flex-flow: column wrap;
}
.mainpage-left > * {
margin: 0 0 0.9rem;
}
.mainpage-right {
grid-area: right;
flex: 1;
display: flex;
flex-flow: column wrap;
}
.mainpage-right > * {
margin: 0 0 0.9rem;
}
.arrow {
background: url('filepath://White-chevron.svg') no-repeat;
display: inline-block;
height: 0.7rem;
width: 0.45rem;
vertical-align: middle;
}
.arrow.dark {
filter: invert(80%);
}
.mainpage-contents {
grid-area: content;
grid-template-columns: repeat(6, 1fr);
}
.mainpage-contents .tile-halves {
flex: 1;
}
.mainpage-contents .tile-top {
height: 4.5rem;
position: relative;
}
.mainpage-contents .tile-top.tile-image img {
height: auto;
}
.mainpage-contents h2 {
margin: 0;
padding: 0;
}
.mainpage-contents .tile-bottom.link-button a {
padding: 0.75em 0.2em;
}
.popular-pages ul {
display: grid;
grid-template-columns: repeat(3, 1fr);
grid-gap: 0.6em;
margin: 1em 0 0.7em 0;
}
.mp-popular-page-light {
display: flex;
align-items: center;
background-color: var(--button-background);
transition: 100ms;
}
.mp-popular-page-light a {
flex: 1;
display: block;
color: #fff;
font-weight: bold;
text-align: center;
text-decoration: none;
padding: 0.7em 1em;
}
.mp-popular-page-light:hover {
filter: brightness(115%);
transition: 100ms;
}
.mainpage-social {
border: none;
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.3);
}
.mainpage-social .tile-top {
display: flex;
align-items: center;
padding: 1em 1.5em;
}
.mainpage-social .tile-top a {
flex: 1;
position: relative;
text-decoration: none;
}
.mainpage-social .tile-top a:hover .arrow {
transform: translateX(50%);
}
.mainpage-social .tile-bottom {
border: none;
padding: 1em 1.75em;
}
.mainpage-social .tile-bottom p {
color: #fff;
font-weight: bold;
font-size: 0.9em;
text-align: center;
text-transform: uppercase;
letter-spacing: 0.03em;
margin: 0;
}
.mainpage-social .social-icon {
margin-right: 0.75em;
text-align: center;
width: 60px;
}
.mainpage-social .social-header {
color: #fff;
font-weight: bold;
font-size: 1.15em;
margin: 0.5em 0 -0.15em;
}
.mainpage-social .server-tagline {
color: rgba(255, 255, 255, 0.9);
margin-bottom: 0.5em;
}
.mainpage-social .arrow {
position: absolute;
top: calc(50% - .5em);
right: 0;
height: 1em;
width: 0.7em;
background-size: 0.7em 1em;
transition: 0.3s ease-out;
}
.mainpage-social.mainpage-discord .tile-top {
background: #5865f2;
}
.mainpage-social.mainpage-discord .tile-bottom {
background: #525ee0;
}
.mainpage-social.mainpage-twitter .tile-top {
background: #15202b;
}
.mainpage-social.mainpage-twitter .tile-bottom {
background: #121c26;
}
.mainpage-editing {
border: none;
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.3);
}
.mainpage-editing .tile-top {
background: #438ab5;
}
.mainpage-editing .tile-bottom {
background: #3980ab;
border: none;
padding: 0.8rem 1.5rem 0.4rem;
}
.mainpage-editing h2,
.mainpage-editing a {
color: #fff;
}
.mainpage-editing p {
color: rgba(255, 255, 255, 0.9);
}
.mainpage-editing ul {
list-style-image: url('filepath://Transparent-chevron.svg');
}
@media only screen and (max-width: 1200px) {
.mainpage-contents {
grid-template-columns: repeat(3, 1fr);
}
}
@media only screen and (max-width: 1000px) {
.mainpage-body {
grid-template-areas: "event event event" "update update update" "content content content" "left left left" "right right right";
}
.mainpage-recent-updates {
grid-template-columns: repeat(2, 1fr);
}
.mainpage-recent-updates .tile-halves:last-child {
display: none;
}
.mainpage-recent-updates .tile-halves:hover .tile-top img {
transform: scale(1.04);
}
.mainpage-recent-updates .tile-top {
height: 18vw;
min-height: 9em;
}
.mainpage-header .header-stats {
display: none;
}
.mainpage-left > *:last-child,
.mainpage-right > *:last-child {
margin-bottom: 0;
}
.popular-pages ul {
grid-template-columns: repeat(2, 1fr);
}
}
@media only screen and (max-width: 720px) {
.mainpage-recent-updates {
grid-template-columns: none;
}
.mainpage-recent-updates .tile-halves:last-child {
display: flex;
}
.mainpage-contents {
grid-template-columns: repeat(2, 1fr);
}
}
.mw-prefs-buttons {
background-color: var(--body-main);
border-top-color: var(--body-border);
box-shadow: none;
}
.mw-prefs-tabs-wrapper.oo-ui-panelLayout-framed,
.mw-prefs-tabs > .oo-ui-menuLayout-content > .oo-ui-indexLayout-stackLayout > .oo-ui-tabPanelLayout {
border-color: var(--body-border);
}
.mw-htmlform-ooui .mw-htmlform-matrix tbody tr:nth-child(even) td {
background-color: var(--body-light);
}
.mw-htmlform-ooui .mw-htmlform-matrix tbody tr:hover td {
background-color: var(--body-mid);
}
:root {
--rc-positive-color: #407813;
--rc-negative-color: #b41e0f;
}
.mw-plusminus-pos {
color: var(--rc-positive-color);
}
.mw-plusminus-neg {
color: var(--rc-negative-color);
}
.client-js .mw-recentchanges-toplinks:not(.mw-recentchanges-toplinks-collapsed) {
border-color: var(--body-border);
background-color: var(--body-light);
border-radius: 2px;
}
.mw-rcfilters-ui-filterTagMultiselectWidget-wrapper-content-title {
color: var(--text-color);
}
.mw-rcfilters-ui-filterTagMultiselectWidget-emptyFilters {
color: var(--byline-color);
}
.mw-rcfilters-ui-filterTagMultiselectWidget.oo-ui-widget-enabled .oo-ui-tagMultiselectWidget-handle {
background-color: var(--ooui-interface);
border-color: var(--ooui-interface-border);
}
.mw-rcfilters-ui-filterTagMultiselectWidget-views-select-widget.oo-ui-widget {
border-color: var(--ooui-interface-border);
}
.mw-rcfilters-collapsed .mw-rcfilters-ui-filterTagMultiselectWidget {
border-bottom-color: var(--ooui-interface-border);
}
.mw-rcfilters-ui-menuSelectWidget-footer {
background-color: var(--ooui-interface);
border-color: var(--ooui-interface-border);
}
.mw-rcfilters-ui-viewSwitchWidget label.oo-ui-labelWidget {
color: var(--byline-color);
}
.mw-rcfilters-ui-tagItemWidget-popup-content {
color: var(--ooui-text);
}
.mw-changeslist-legend,
.mw-rcfilters-ui-changesListWrapperWidget .mw-changeslist-legend {
background-color: var(--body-light);
border-color: var(--body-dark);
}
.mw-rcfilters-ui-changesListWrapperWidget-previousChangesIndicator {
border-color: var(--sidebar);
}
.client-js .mw-changeslist ul,
.client-js .mw-changeslist table.mw-enhanced-rc {
margin-left: 0;
}
.mw-rcfilters-ui-watchlistTopSectionWidget-separator {
border-color: var(--sidebar);
}
.mw-rcfilters-ui-itemMenuOptionWidget-header {
border-bottom-color: var(--ooui-interface);
background-color: var(--ooui-interface-border);
}
.mw-rcfilters-ui-itemMenuOptionWidget:not(:last-child):not(.mw-rcfilters-ui-itemMenuOptionWidget-identifier-talk) {
border-bottom-color: var(--ooui-normal-border);
}
.mw-rcfilters-ui-itemMenuOptionWidget-label-title,
.mw-rcfilters-ui-itemMenuOptionWidget-label-desc {
color: var(--text-color);
}
.mw-rcfilters-ui-filterMenuOptionWidget.oo-ui-flaggedElement-muted:not(.oo-ui-optionWidget-selected) {
background-color: var(--body-main);
}
.mw-rcfilters-ui-filterMenuOptionWidget.oo-ui-flaggedElement-muted .mw-rcfilters-ui-itemMenuOptionWidget-label-title,
.mw-rcfilters-ui-filterMenuOptionWidget.oo-ui-flaggedElement-muted .mw-rcfilters-ui-itemMenuOptionWidget-label-desc {
color: var(--subtle-color);
}
.mw-rcfilters-ui-filterMenuSectionOptionWidget {
background-color: var(--body-mid);
}
.mw-rcfilters-ui-filterMenuSectionOptionWidget-header-title.oo-ui-labelElement-label {
color: var(--ooui-text);
}
.mw-rcfilters-ui-filterMenuHeaderWidget-title {
color: var(--ooui-text);
}
.mw-rcfilters-ui-filterMenuHeaderWidget-header {
border-bottom-color: var(--ooui-interface-border);
background-color: var(--ooui-interface);
}
.mw-rcfilters-ui-itemMenuOptionWidget-view-namespaces {
border-top-color: var(--ooui-interface-border);
}
.mw-rcfilters-ui-datePopupWidget {
border-color: var(--ooui-interface-border);
}
.mw-rcfilters-ui-datePopupWidget .mw-rcfilters-ui-valuePickerWidget-title {
color: var(--byline-color);
}
.mw-rcfilters-ui-savedLinksListItemWidget-label {
color: var(--ooui-accent);
}
.client-js .mw-changeslist.mw-rcfilters-ui-changesListWrapperWidget-highlighted ul,
.client-js .mw-changeslist.mw-rcfilters-ui-changesListWrapperWidget-highlighted table.mw-enhanced-rc {
margin-left: 1.5em;
}
.page-Special_CreateAccount .mw-ui-container,
.page-Special_UserLogin .mw-ui-container {
max-width: 64rem;
margin: 0 auto;
}
.mw-number-text {
color: var(--byline-color);
}
.mw-body-content .mw-number-text h3 {
color: var(--text-color);
}
#mw-indicator-mw-helplink a {
background: none;
padding: 0;
display: flex;
align-items: center;
}
#mw-indicator-mw-helplink a::before {
content: '';
margin-right: 5px;
-webkit-mask: url("/resources/src/mediawiki.helplink/images/helpNotice.svg?46d34") no-repeat 50% 50% / contain;
mask: url("/resources/src/mediawiki.helplink/images/helpNotice.svg?46d34") no-repeat 50% 50% / contain;
background: var(--text-color);
height: 20px;
width: 20px;
}
.results-info {
color: inherit;
}
.mw-search-profile-tabs {
background-color: var(--body-mid);
border-color: transparent;
}
.search-types .current a {
color: inherit;
}
#mw-searchoptions {
background-color: var(--body-mid);
border-color: transparent;
}
#mw-searchoptions .divider {
border-color: var(--body-border);
}
#mw-searchoptions h4 {
font-family: inherit;
}
#mw-searchoptions .oo-ui-labelElement:nth-of-type(odd) {
font-weight: bold;
}
.searchresult {
line-height: 1.5;
}
.searchalttitle,
#mw-search-interwiki li {
font-size: 90%;
}
.mw-search-result-data {
color: var(--byline-color);
}
.page-Special_ListFiles a.image img {
width: inherit;
height: inherit;
}
.page-Special_ListFiles .TablePager_col_thumb {
text-align: center;
}
#editcount table[border="1"] {
background-color: var(--body-main) !important;
border-color: var(--wikitable-border) !important;
margin-top: 0.5em;
}
#editcount table[border="1"] th,
#editcount table[border="1"] td {
padding: 0.2em 0.4em;
}
#editcount table[border="1"] th {
background-color: var(--wikitable-header-bg);
border: 1px solid var(--wikitable-border);
}
#editcount table[border="1"] td {
border: 1px solid var(--wikitable-border);
}
#editcount table[border="1"] tr:nth-child(odd) {
background-color: var(--body-light);
}
.mw-echo-ui-notificationBadgeButtonPopupWidget-popup > .oo-ui-popupWidget-popup .mw-echo-ui-placeholderItemWidget {
background-color: inherit;
}
table.mw-interwikitable.body td.mw-interwikitable-local-yes {
background-color: var(--table-yes-background);
color: var(--table-yes-color);
}
.mw-protectedpages-unknown {
color: var(--byline-color);
}
.watchlistredir,
.allpagesredirect {
font-style: italic;
}
.allpagesredirect:after {
color: var(--byline-color);
content: " (redirect)";
}
.mw-apisandbox-toolbar {
background: var(--body-main);
}
.oo-ui-menuOptionWidget .mw-apisandbox-flag {
color: var(--byline-color);
}
tr.mw-abusefilter-list-disabled,
tr.mw-abusefilter-list-disabled td {
color: var(--byline-color);
}
table.mw-abuselog-details {
background: var(--wikitable-bg);
border-color: var(--wikitable-border);
}
table.mw-abuselog-details th {
background: var(--wikitable-header-bg);
}
table.mw-abuselog-details th,
table.mw-abuselog-details td {
border-color: var(--wikitable-border);
}
.mw-abusefilter-log-hidden-entry {
color: var(--subtle-color);
}
body td.mw-abusefilter-history-changed {
background: var(--table-no-background);
}
div.mw-abusefilter-editor,
#mw-abusefilter-warn-preview,
#mw-abusefilter-disallow-preview {
border-color: var(--ooui-input-border);
}
.mw-destfile-warning {
border-color: var(--warningbox-border);
color: var(--text-color);
background-color: var(--warningbox-bg);
}
span.fileinput-button {
background-color: var(--ooui-normal);
border-color: var(--ooui-normal-border);
color: var(--ooui-text);
}
ul.fileupload-results li.ful-success {
background-color: var(--successbox-bg);
}
ul.fileupload-results li.ful-success a {
color: var(--link-color);
}
ul.fileupload-results li.ful-error {
background-color: var(--errorbox-bg);
}
.color-container {
display: flex;
margin: 2em auto;
width: 80%;
max-width: 60em;
}
.color-column {
flex: 1;
margin-right: 1em;
}
.color-column:last-child {
margin-right: 0;
}
.color-column h3 {
padding: 0;
}
.color-group {
color: #333;
padding: 1em 1.5em;
transition: 0.2s ease-out;
}
.color-group:hover {
transform: scale(1.03);
}
.color-group.dark {
color: #fff;
}
.color-group .variable,
.color-group .hexcode {
font-family: monospace;
font-size: 1.1em;
-webkit-user-select: all;
-moz-user-select: all;
-ms-user-select: all;
user-select: all;
margin: 0;
}
body.wgl-readermode .color-group .variable,
body.wgl-readermode .color-group .hexcode {
font-size: inherit;
}
.color-group .variable {
font-weight: bold;
}
#t-print,
#t-permalink {
display: none;
}
#filetoc {
border-radius: 2px;
background: var(--body-mid);
border-color: transparent;
margin: 0.5em auto;
text-align: center;
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
}
li.gallerybox div.thumb {
border: none;
background-color: var(--thumb-bg);
}
.smwfact {
display: none;
}
.list-header {
background-color: var(--body-mid);
color: inherit;
}
.editOptions {
color: var(--text-color);
background-color: var(--sourceeditor-background-secondary);
border-color: var(--sourceeditor-border);
}
.mw-json th,
.mw-json td {
border-color: var(--wikitable-border);
}
.mw-json td {
background: var(--wikitable-bg);
}
.mw-json th {
background: var(--wikitable-header-bg);
}
3a17aac62b689339bbd52445aeff1df9018398a4
MediaWiki:Common.less/interface.less
8
16
1662
1124
2024-03-31T23:37:41Z
Merds
25
less
less
/* =====================
Common MediaWiki
elements inside .mw-body
===================== */
:root {
--errorbox-bg: @bridesmaid;
--errorbox-border: @flamingo;
--warningbox-bg: @half-dutch;
--warningbox-border: @supernova;
--successbox-bg: @frost;
--successbox-border: @lima;
}
// core mw messagebox
.mw-message-box-error, .errorbox,
.mw-message-box-warning, .warningbox,
.mw-message-box-success, .successbox,
// anon talk page message alert
.usermessage {
box-shadow: @box-shadow;
}
.mw-message-box-error, .errorbox {
background-color: var(--errorbox-bg);
border-color: var(--errorbox-border);
}
.mw-message-box-warning, .warningbox,
.usermessage {
background-color: var(--warningbox-bg);
border-color: var(--warningbox-border);
}
.mw-message-box-success, .successbox {
background-color: var(--successbox-bg);
border-color: var(--successbox-border);
}
.catlinks {
background: var(--body-light);
border: 1px solid var(--body-dark);
padding: 8px 15px;
box-shadow: @box-shadow;
li {
border-color: var(--body-mid);
}
}
// checkered background in file pages
.filehistory a img,
#file img {
background: url("data:image/svg+xml,%3C%3Fxml version='1.0' encoding='UTF-8'%3F%3E%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16'%3E%3Cpath d='M0 0h8v16h8V8H0z' opacity='.13'/%3E%3C/svg%3E") repeat;
}
#file img:hover {
background: none;
}
// Prevents undesired background showing when next to expanded toc
.mw-highlight {
background: none;
.linenos {
background-color: var(--mw-code-background-color);
// line number
color: var(--body-border);
}
// line number hover
a:hover .linenos,
.hll a .linenos {
color: var(--body-dark);
}
}
.mw-content-ltr.mw-highlight-lines pre,
.mw-content-ltr.content .mw-highlight-lines pre {
box-shadow: inset 2.75em 0 0 var(--mw-code-background-color);
}
// page history
#pagehistory {
ul {
list-style: none;
margin: 0;
}
li {
border: 1px solid transparent;
padding: 1px 10px;
margin: 2px 0;
&.selected {
background-color: var(--body-light);
color: inherit;
border: 1px dashed var(--body-border);
outline: none;
}
}
}
// Sticky compare rev
#mw-history-compare > div:first-of-type {
position: -webkit-sticky;
position: sticky;
top: 0;
background-color: var(--body-main);
border-bottom: 1px solid @BODY_DARK;
padding: .25em 0;
.wgl-stickyheader & {
top: 2.5rem; // = height of stickyheader
}
}
// auto section edit summaries
.autocomment,
.autocomment a,
.autocomment a:visited {
color: var(--link-color);
}
// revdeleted logs: "(log details removed)"
li span.deleted,
span.history-deleted {
color: var(--byline-color);
}
// redlinked contribs page for users without edits
.mw-usertoollinks-contribs-no-edits,
.mw-usertoollinks-contribs-no-edits:visited {
color: var(--redlink-color);
}
.CategoryTreeToggle {
color: var(--link-color);
}
/* --------------------------------------
fix section heading being hidden
underneath sticky header
-------------------------------------- */
// technique from <https://css-tricks.com/hash-tag-links-padding/>
body.wgl-stickyheader.action-view .mw-headline:target::before {
display: block;
content: '';
margin-top: -3rem;
height: 3rem;
visibility: hidden;
pointer-events: none;
}
/* ------------------------
MultimediaViewer
------------------------*/
// main lightbox
.mw-mmv-post-image {
color: var(--text-color);
background-color: var(--body-main);
}
// metadata panel
.mw-mmv-image-metadata {
border-top-color: var(--body-mid);
background-color: var(--body-light);
}
// download box and etc
.mw-mmv-dialog,
.mw-mmv-dialog .mw-mmv-dialog-down-arrow,
.mw-mmv-options-dialog .mw-mmv-dialog-down-arrow {
background-color: var(--body-light);
box-shadow: none;
}
// activation box header
.mw-mmv-options-enable-alert {
background-color: var(--body-light);
color: var(--text-color);
}
// use consistent text color for all for simplicity
.mw-mmv-options-dialog-header,
.mw-mmv-options-text-header,
.mw-mmv-options-text-body,
// activation box
.mw-mmv-options-enable-alert,
// deactivation box
.mw-mmv-options-dialog .mw-mmv-disable-confirmation .mw-mmv-options-dialog-header,
.mw-mmv-options-dialog .mw-mmv-disable-confirmation .mw-mmv-options-text-header {
color: var(--text-color);
}
/* ------------------------
RevisionSlider
------------------------*/
.mw-revslider-container {
border-color: var(--sidebar);
}
.mw-revslider-slider-wrapper {
border-top-color: var(--sidebar);
}
/* ------------------------
mediawiki.ui
------------------------*/
.mw-ui {
&-button {
background-color: var(--ooui-normal);
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
&:not(:disabled) {
&:hover,
&:active {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
}
&:focus {
color: var(--ooui-text);
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent),inset 0 0 0 2px #fff;
}
// there's an override for it
&:visited {
color: var(--ooui-text);
}
}
&.mw-ui-progressive {
&:not(:disabled) {
background-color: var(--ooui-progressive);
color: #fff;
border-color: var(--ooui-progressive);
&:hover {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
}
&:focus {
box-shadow: inset 0 0 0 1px var(--ooui-accent),inset 0 0 0 2px #fff;
}
&:active,
&.is-on {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
box-shadow: none;
}
}
}
}
// a lot of these need to be redefined since they have the same specificity
// as the above
&-button&-destructive:not( :disabled ) {
color: #fff;
}
&-button&-quiet,
&-button&-quiet&-progressive,
&-button&-quiet&-destructive {
// background-color: transparent;
color: var(--text-color);
}
input[type='checkbox']:hover + &-button&-quiet,
input[type='checkbox']:hover + &-button&-quiet&-progressive,
input[type='checkbox']:hover + &-button&-quiet&-destructive,
&-button&-quiet:hover,
&-button&-quiet&-progressive:hover,
&-button&-quiet&-destructive:hover {
background-color: rgba(0,24,73,0.02745098);
color: var(--text-color);
border-color: transparent
}
input[type='checkbox']:focus + &-button&-quiet,
input[type='checkbox']:focus + &-button&-quiet&-progressive,
input[type='checkbox']:focus + &-button&-quiet&-destructive,
&-button&-quiet:focus,
&-button&-quiet&-progressive:focus,
&-button&-quiet&-destructive:focus {
color: var(--text-color);
// border-color: #36c;
// box-shadow: inset 0 0 0 1px #36c,inset 0 0 0 2px #fff
}
input[type='checkbox']:active + &-button&-quiet,
input[type='checkbox']:active + &-button&-quiet&-progressive,
input[type='checkbox']:active + &-button&-quiet&-destructive,
&-button&-quiet:active,
&-button&-quiet&-progressive:active,
&-button&-quiet&-destructive:active {
background-color: rgba(0,36,73,0.08235294);
color: var(--text-color);
border-color: #72777d;
// box-shadow: none
}
&-input {
background-color: var(--ooui-input);
color: var(--text-color);
border-color: var(--ooui-input-border);
&:hover {
border-color: var(--ooui-input-border--hover);
}
&::placeholder {
color: var(--byline-color);
}
}
}
/* ------------------------
Redirects
------------------------*/
// convert to mask
.mw-content-ltr .redirectText li {
&:first-child {
padding: 0;
background: 0;
&::before {
content:'';
background: currentcolor;
.mask("filepath://Redirect-arrow.svg");
display: inline-block;
width: 47px;
height: 20px;
}
}
}
/* -------------------------------------------------------------
HEADER bits because I'm not sure where I can put this
------------------------------------------------------------ */
/* Search bar */
.vector-search-box-inner {
background: var(--body-main) !important;
box-shadow: inset 0 -7px 7px -7px rgba(0,0,0,0.15) !important;
}
/* "More" button */
.vector-menu-dropdown {
.vector-menu-heading {
color: #937040 !important;
&:hover {
color: #937040 !important;
}
&:focus {
color: #937040 !important;
}
}
}
1a14978ac3499fa028d25b581041131ec4d37ccb
1663
1662
2024-03-31T23:39:58Z
Merds
25
less
less
/* =====================
Common MediaWiki
elements inside .mw-body
===================== */
:root {
--errorbox-bg: @bridesmaid;
--errorbox-border: @flamingo;
--warningbox-bg: @half-dutch;
--warningbox-border: @supernova;
--successbox-bg: @frost;
--successbox-border: @lima;
}
// core mw messagebox
.mw-message-box-error, .errorbox,
.mw-message-box-warning, .warningbox,
.mw-message-box-success, .successbox,
// anon talk page message alert
.usermessage {
box-shadow: @box-shadow;
}
.mw-message-box-error, .errorbox {
background-color: var(--errorbox-bg);
border-color: var(--errorbox-border);
}
.mw-message-box-warning, .warningbox,
.usermessage {
background-color: var(--warningbox-bg);
border-color: var(--warningbox-border);
}
.mw-message-box-success, .successbox {
background-color: var(--successbox-bg);
border-color: var(--successbox-border);
}
.catlinks {
background: var(--body-light);
border: 1px solid var(--body-dark);
padding: 8px 15px;
box-shadow: @box-shadow;
li {
border-color: var(--body-mid);
}
}
// checkered background in file pages
.filehistory a img,
#file img {
background: url("data:image/svg+xml,%3C%3Fxml version='1.0' encoding='UTF-8'%3F%3E%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16'%3E%3Cpath d='M0 0h8v16h8V8H0z' opacity='.13'/%3E%3C/svg%3E") repeat;
}
#file img:hover {
background: none;
}
// Prevents undesired background showing when next to expanded toc
.mw-highlight {
background: none;
.linenos {
background-color: var(--mw-code-background-color);
// line number
color: var(--body-border);
}
// line number hover
a:hover .linenos,
.hll a .linenos {
color: var(--body-dark);
}
}
.mw-content-ltr.mw-highlight-lines pre,
.mw-content-ltr.content .mw-highlight-lines pre {
box-shadow: inset 2.75em 0 0 var(--mw-code-background-color);
}
// page history
#pagehistory {
ul {
list-style: none;
margin: 0;
}
li {
border: 1px solid transparent;
padding: 1px 10px;
margin: 2px 0;
&.selected {
background-color: var(--body-light);
color: inherit;
border: 1px dashed var(--body-border);
outline: none;
}
}
}
// Sticky compare rev
#mw-history-compare > div:first-of-type {
position: -webkit-sticky;
position: sticky;
top: 0;
background-color: var(--body-main);
border-bottom: 1px solid @BODY_DARK;
padding: .25em 0;
.wgl-stickyheader & {
top: 2.5rem; // = height of stickyheader
}
}
// auto section edit summaries
.autocomment,
.autocomment a,
.autocomment a:visited {
color: var(--link-color);
}
// revdeleted logs: "(log details removed)"
li span.deleted,
span.history-deleted {
color: var(--byline-color);
}
// redlinked contribs page for users without edits
.mw-usertoollinks-contribs-no-edits,
.mw-usertoollinks-contribs-no-edits:visited {
color: var(--redlink-color);
}
.CategoryTreeToggle {
color: var(--link-color);
}
/* --------------------------------------
fix section heading being hidden
underneath sticky header
-------------------------------------- */
// technique from <https://css-tricks.com/hash-tag-links-padding/>
body.wgl-stickyheader.action-view .mw-headline:target::before {
display: block;
content: '';
margin-top: -3rem;
height: 3rem;
visibility: hidden;
pointer-events: none;
}
/* ------------------------
MultimediaViewer
------------------------*/
// main lightbox
.mw-mmv-post-image {
color: var(--text-color);
background-color: var(--body-main);
}
// metadata panel
.mw-mmv-image-metadata {
border-top-color: var(--body-mid);
background-color: var(--body-light);
}
// download box and etc
.mw-mmv-dialog,
.mw-mmv-dialog .mw-mmv-dialog-down-arrow,
.mw-mmv-options-dialog .mw-mmv-dialog-down-arrow {
background-color: var(--body-light);
box-shadow: none;
}
// activation box header
.mw-mmv-options-enable-alert {
background-color: var(--body-light);
color: var(--text-color);
}
// use consistent text color for all for simplicity
.mw-mmv-options-dialog-header,
.mw-mmv-options-text-header,
.mw-mmv-options-text-body,
// activation box
.mw-mmv-options-enable-alert,
// deactivation box
.mw-mmv-options-dialog .mw-mmv-disable-confirmation .mw-mmv-options-dialog-header,
.mw-mmv-options-dialog .mw-mmv-disable-confirmation .mw-mmv-options-text-header {
color: var(--text-color);
}
/* ------------------------
RevisionSlider
------------------------*/
.mw-revslider-container {
border-color: var(--sidebar);
}
.mw-revslider-slider-wrapper {
border-top-color: var(--sidebar);
}
/* ------------------------
mediawiki.ui
------------------------*/
.mw-ui {
&-button {
background-color: var(--ooui-normal);
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
&:not(:disabled) {
&:hover,
&:active {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
}
&:focus {
color: var(--ooui-text);
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent),inset 0 0 0 2px #fff;
}
// there's an override for it
&:visited {
color: var(--ooui-text);
}
}
&.mw-ui-progressive {
&:not(:disabled) {
background-color: var(--ooui-progressive);
color: #fff;
border-color: var(--ooui-progressive);
&:hover {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
}
&:focus {
box-shadow: inset 0 0 0 1px var(--ooui-accent),inset 0 0 0 2px #fff;
}
&:active,
&.is-on {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
box-shadow: none;
}
}
}
}
// a lot of these need to be redefined since they have the same specificity
// as the above
&-button&-destructive:not( :disabled ) {
color: #fff;
}
&-button&-quiet,
&-button&-quiet&-progressive,
&-button&-quiet&-destructive {
// background-color: transparent;
color: var(--text-color);
}
input[type='checkbox']:hover + &-button&-quiet,
input[type='checkbox']:hover + &-button&-quiet&-progressive,
input[type='checkbox']:hover + &-button&-quiet&-destructive,
&-button&-quiet:hover,
&-button&-quiet&-progressive:hover,
&-button&-quiet&-destructive:hover {
background-color: rgba(0,24,73,0.02745098);
color: var(--text-color);
border-color: transparent
}
input[type='checkbox']:focus + &-button&-quiet,
input[type='checkbox']:focus + &-button&-quiet&-progressive,
input[type='checkbox']:focus + &-button&-quiet&-destructive,
&-button&-quiet:focus,
&-button&-quiet&-progressive:focus,
&-button&-quiet&-destructive:focus {
color: var(--text-color);
// border-color: #36c;
// box-shadow: inset 0 0 0 1px #36c,inset 0 0 0 2px #fff
}
input[type='checkbox']:active + &-button&-quiet,
input[type='checkbox']:active + &-button&-quiet&-progressive,
input[type='checkbox']:active + &-button&-quiet&-destructive,
&-button&-quiet:active,
&-button&-quiet&-progressive:active,
&-button&-quiet&-destructive:active {
background-color: rgba(0,36,73,0.08235294);
color: var(--text-color);
border-color: #72777d;
// box-shadow: none
}
&-input {
background-color: var(--ooui-input);
color: var(--text-color);
border-color: var(--ooui-input-border);
&:hover {
border-color: var(--ooui-input-border--hover);
}
&::placeholder {
color: var(--byline-color);
}
}
}
/* ------------------------
Redirects
------------------------*/
// convert to mask
.mw-content-ltr .redirectText li {
&:first-child {
padding: 0;
background: 0;
&::before {
content:'';
background: currentcolor;
.mask("filepath://Redirect-arrow.svg");
display: inline-block;
width: 47px;
height: 20px;
}
}
}
/* -------------------------------------------------------------
HEADER bits because I'm not sure where I can put this
------------------------------------------------------------ */
/* Search bar */
.vector-search-box-inner {
background: var(--body-main) !important;
box-shadow: inset 0 -7px 7px -7px rgba(0,0,0,0.15) !important;
}
/* "More" button */
.vector-menu-dropdown {
.vector-menu-heading {
color: var(--vector-tab-link-color) !important;
&:hover {
color: var(--vector-tab-link-color) !important;
}
&:focus {
color: var(--vector-tab-link-color) !important;
}
}
}
ad42c4a573b2d0026f7262d48e7dc893854cccd3
MediaWiki:Common.less
8
5
1664
1584
2024-03-31T23:43:14Z
Merds
25
less
less
/* =============================================================================
* This is the root Less file that is parsed to produce [[MediaWiki:Common.css]].
*
* These styles will be applied to all skins (desktop and mobile).
* -----------------------------------------------------------------------------
* Less documentation: <http://lesscss.org/features/>
* Gadget: <https://meta.weirdgloop.org/w/MediaWiki:Gadget-Less.js>
* Core Less JS: <https://meta.weirdgloop.org/w/MediaWiki:Gadget-Less-core.js>
* Non-standard mixins: <https://meta.weirdgloop.org/w/MediaWiki:Gadget-LessMixins.less>
* Online Less tester: <https://lesscss.org/less-preview/>
* ============================================================================= */
// ===== CSS Variables =====
@common: 'MediaWiki:Common.less';
:root {
--body-main: #fdfcfc;
--body-light: #f5f0eb;
--body-mid: #d1b9ad;
--body-dark: #b1886f;
--body-border: #d1b9ad;
--body-background-color: #173a4d;
--button-background: #605443;
--button-color: @white;
--button-border: #3c352a;
--button-dark: #18140c;
--button-light: #3a301d;
--sidebar: #cfc08d;
--background-text-color: #e2dbc8;
--background-link-color: #e2bd8a;
--search-box: #efeee6;
--link-color: #6e452b;
--redlink-color: #ba0000;
--text-color: #2F2828; /*@mine-shaft*/
--byline-color: @silver;
--subtle-color: @boulder;
--admin-blue: #332e75;
--bearcat-green: #13592e;
--awb-purple: #933b96;
--rsw-blue: #438ab6;
--osrsw-brown: #605443;
// used for gallery & thumbs
--thumb-bg: var(--body-light);
--thumb-caption-bg: var(--body-mid);
// for sourceeditor - CodeMirror and WikiEditor's that are only available on
// desktop are also here to not fragment the vars across many files
--sourceeditor-input-background: @white;
--sourceeditor-background: var(--body-light);
--sourceeditor-background-secondary: var(--body-light); // used on .editOptions
--sourceeditor-border: var(--body-mid);
--codemirror-gutter-background: var(--body-mid);
}
// ===== Imports =====
// include fonts first
@import '@{common}/mixins.less';
@import '@{common}/fonts.less'; // Font definitions and font stack definitions
@import '@{common}/variables.less'; // Less variables
@import '@{common}/elements.less'; // HTML elements
@import '@{common}/links.less'; // Link colours
// Interface
@import '@{common}/interface.less'; // MW common elements
@import '@{common}/wikitables.less'; // .wikitable class and etc
@import '@{common}/diff.less'; // Revision differences
@import '@{common}/notifications.less';
@import '@{common}/pagepreviews.less'; // Page preview popups
@import '@{common}/smw.less'; // Semantic MediaWiki
@import '@{common}/tabber.less'; // <tabber>
@import '@{common}/ooui.less'; // OOUI Customisations
@import '@{common}/visualeditor.less'; // VisualEditor
// Templates
@import '@{common}/templates.less'; // Various templates
@import '@{common}/documentation.less'; // [[Template:Documentation]]
@import '@{common}/infobox.less'; // Infobox vars
@import '@{common}/references.less'; // <references>
@import '@{common}/messagebox.less'; // Messagebox templates
// Page specific
@import '@{common}/tiles.less'; // Main page tiles
@import '@{common}/mainpage.less'; // Main page
@import '@{common}/prefs.less'; // Wiki preferences theming
@import '@{common}/specials.less'; // Special pages
@import '@{common}/bstheme.less'; // [[BS:THEME]]
// ===== Miscellaneous =====
// hide certain links in sidebar tools
#t-print,
#t-permalink {
display: none;
}
#filetoc {
border-radius: @border-radius;
background: @BODY_MID;
border-color: transparent;
margin: 0.5em auto;
text-align: center;
box-shadow: @box-shadow;
}
// Galleries
li.gallerybox div.thumb {
border: none;
background-color: var(--thumb-bg);
}
.smwfact {
display: none;
}
// applies to mobile talk pages, and smw??
.list-header {
background-color: var(--body-mid);
color: inherit;
}
// Source editor w/o syntaxhighlight; also applies to mobile in case JS is
// turned off
.editOptions {
color: var(--text-color);
background-color: var(--sourceeditor-background-secondary);
border-color: var(--sourceeditor-border);
}
// .json pages
.mw-json {
th,
td {
border-color: var(--wikitable-border);
}
// instead of selecting `tr`, do this to avoid dealing with mw-json-* classes
td {
background: var(--wikitable-bg);
}
th {
background: var(--wikitable-header-bg);
}
}
df572f556b1a882e8fbcac0576e50617d116239c
User:Merds/common.css
2
784
1666
1641
2024-03-31T23:44:04Z
Merds
25
css
text/css
/*<syntaxhighlight lang="css">*/
/*@import url("/w/User:Merds/CSS/Infobox.css?action=raw&ctype=text/css");*/
/*@import url("/w/User:Merds/CSS/Theme.css?action=raw&ctype=text/css");*/
/*</syntaxhighlight>*/
c9254b0de2b5ce1cb4a5f9cfa2151a5efd20e5bb
MediaWiki:Common.less/elements.less
8
13
1668
20
2024-03-31T23:48:51Z
Merds
25
less
less
/* ===================
HTML elements
=================== */
:root {
// todo: delete these, they're for rsw only and we already use our own colors
--base-text-color: saturate( darken( @river-bed, 5% ), 5% );
--base-heading-color: @river-bed;
--base-heading-border: @mystic;
--mw-code-background-color: var(--body-light);
--body-background-image: url('filepath://Wiki_background.jpg');
}
@base-text-color: var(--base-text-color);
@base-heading-color: var(--base-heading-color);
@base-heading-border: var(--base-heading-border);
/* --------------------
body
-------------------- */
#mw-page-base {
background: none;
}
.mw-body {
background-color: var(--body-main);
color: var(--text-color);
border-color: transparent;
box-shadow: 0 0 7px rgba(0, 0, 0, 0.15);
margin-top: 0;
}
/* --------------------
headings
-------------------- */
h1,
h2,
h3,
h4,
h5,
h6 {
color: var(--text-color);
}
h1,
h2 {
border-color: var(--sidebar);
}
.mw-body h1,
.mw-body-content h1,
.mw-body-content h2,
.mw-body-content h3,
.mw-body-content h4,
.mw-body-content h5,
.mw-body-content h6 {
font-family: @serif-stack;
}
// Clear left on first subheader. Useful to start section after DIIs
.mw-parser-output h2:first-of-type {
clear: left;
}
/* -------------------------
<footer> below content
------------------------- */
.mw-footer {
color: var(--background-text-color);
li {
color: var(--background-text-color);
}
a,
a:active,
a:visited {
color: var(--background-link-color);
}
}
/* -------------------------
<input> placeholder
------------------------- */
::placeholder {
color: var(--subtle-color);
}
3781c49372e5e48a44a896dcbf6e1098ba739198
1681
1668
2024-04-01T01:04:50Z
Merds
25
less
less
/* ===================
HTML elements
=================== */
:root {
// todo: delete these, they're for rsw only and we already use our own colors
--base-text-color: saturate( darken( @river-bed, 5% ), 5% );
--base-heading-color: @river-bed;
--base-heading-border: @mystic;
--mw-code-background-color: var(--body-light);
--body-background-image: url('filepath://Wiki_background.jpg');
}
@base-text-color: var(--base-text-color);
@base-heading-color: var(--base-heading-color);
@base-heading-border: var(--base-heading-border);
/* --------------------
body
-------------------- */
#mw-page-base {
background: none;
}
.mw-body {
background-color: var(--body-main);
color: var(--text-color);
border-color: transparent;
box-shadow: 0 0 7px rgba(0, 0, 0, 0.15);
margin-top: 0;
}
/* --------------------
headings
-------------------- */
h1,
h2,
h3,
h4,
h5,
h6 {
color: var(--text-color);
}
h1,
h2 {
border-color: var(--body-border);
}
.mw-body h1,
.mw-body-content h1,
.mw-body-content h2,
.mw-body-content h3,
.mw-body-content h4,
.mw-body-content h5,
.mw-body-content h6 {
font-family: @serif-stack;
}
// Clear left on first subheader. Useful to start section after DIIs
.mw-parser-output h2:first-of-type {
clear: left;
}
/* -------------------------
<footer> below content
------------------------- */
.mw-footer {
color: var(--background-text-color);
li {
color: var(--background-text-color);
}
a,
a:active,
a:visited {
color: var(--background-link-color);
}
}
/* -------------------------
<input> placeholder
------------------------- */
::placeholder {
color: var(--subtle-color);
}
fcd4487fbf2574c0944601ed4efe3e112f396655
MediaWiki:Common.less/ooui.less
8
23
1670
32
2024-03-31T23:53:07Z
Merds
25
less
less
/* ======================
OOUI
====================== */
// MediaWiki documentation: <https://www.mediawiki.org/wiki/OOUI>
// Interactive documentation: <https://doc.wikimedia.org/oojs-ui/master/demos/>
// Styles repo directory: <https://github.com/wikimedia/oojs-ui/tree/master/src/themes/wikimediaui>
// Variables
@ooui-normal: #d4baab;
@ooui-normal-border: #cdb09d;
@ooui-progressive: #936243;
@ooui-box-shadow-base--focus: inset 0 0 0 1px var(--ooui-accent);
@ooui-box-shadow-input-binary--active: inset 0 0 0 1px var(--ooui-progressive--hover);
@ooui-color-base--inverted: @white;
:root {
--ooui-text: var(--text-color);
--ooui-interface: var(--body-light);
--ooui-interface-border: var(--body-border);
--ooui-window-background: rgba(255,255,255,0.5);
// use the same styles for :hover AND :active
// :focus will use the accent var
--ooui-normal: darken( @ooui-normal, 2% );
// default styles basically add +2% luminance (from #f8f9fa to #ffffff)
// there's also another hover color: #eaecf0 (like .oo-ui-tool-link:hover)
// ...but we only have one var for button hover, so we should make sure
// the color does not blend with its bg
--ooui-normal--hover: lighten(@ooui-normal, 4%);
--ooui-normal-border: @ooui-normal-border;
// use separate color for progressive buttons - BUT use link-color for
// anywhere else that uses progressive colors; this isnt the greatest idea
// and unifying them is better in the longer term
--ooui-progressive: @ooui-progressive;
--ooui-progressive--hover: lighten(@ooui-progressive, 10%);
// border and bg are the same in non-normal buttons
--ooui-accent: var(--link-color);
// probably not worth adjusting <textarea>/<input>-esque bg in light mode
--ooui-input: #fff;
--ooui-input-border: @ooui-normal-border;
--ooui-input-border--hover: darken(@ooui-normal-border, 19%);
--ooui-disabled: desaturate( lighten( @ooui-normal, 2%), 20% );
--ooui-disabled-border: desaturate( lighten( @ooui-normal-border, 10%), 12% );
--ooui-disabled-text: var(--subtle-color);
--ooui-pending-background-image: repeating-linear-gradient(-45deg, @SEARCH_BOX, @SEARCH_BOX 20px, @BODY_MAIN 20px, @BODY_MAIN 30px);
}
/* ----------------------
widgets
---------------------- */
// need this one to be able to adjust the font color inside popups and etc
.oo-ui-widget {
color: var(--ooui-text);
}
// combine checkbox and radio as theyre really similar
.oo-ui-checkboxInputWidget [type='checkbox'] + span,
.oo-ui-radioInputWidget [type='radio'] + span {
background-color: var(--ooui-input);
border-color: var(--ooui-input-border);
}
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:checked + span,
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:indeterminate + span {
background-color: var(--ooui-progressive);
border-color: var(--ooui-progressive);
}
.oo-ui-radioInputWidget.oo-ui-widget-enabled [type='radio']:checked + span {
border-color: var(--ooui-progressive);
}
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:checked:hover + span,
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:indeterminate:hover + span {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
}
.oo-ui-radioInputWidget.oo-ui-widget-enabled [type='radio']:checked:hover + span {
border-color: var(--ooui-progressive--hover);
}
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:hover + span,
.oo-ui-radioInputWidget.oo-ui-widget-enabled [type='radio']:hover + span {
border-color: var(--ooui-accent);
}
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:focus + span {
border-color: var(--ooui-accent);
box-shadow: @ooui-box-shadow-base--focus;
}
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:active + span,
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:checked:active + span,
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:indeterminate:active + span {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
box-shadow: @ooui-box-shadow-input-binary--active;
}
.oo-ui-radioInputWidget.oo-ui-widget-enabled [type='radio']:active + span {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
}
.oo-ui-radioInputWidget.oo-ui-widget-enabled [type='radio']:checked:active + span {
border-color: var(--ooui-progressive--hover);
box-shadow: @ooui-box-shadow-input-binary--active;
}
.oo-ui-radioInputWidget.oo-ui-widget-enabled [type='radio']:checked:active + span:before {
border-color: var(--ooui-progressive--hover);
}
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:checked:focus + span,
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:indeterminate:focus + span {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent), inset 0 0 0 2px #fff;
}
.oo-ui-checkboxInputWidget [type='checkbox']:disabled + span,
.oo-ui-radioInputWidget [type='radio']:disabled + span {
background-color: var(--ooui-disabled);
border-color: var(--ooui-disabled); // same as bg for both
}
.oo-ui-dropdownWidget {
&-handle {
border-color: var(--ooui-normal-border);
}
&.oo-ui-widget-enabled &-handle {
background-color: var(--ooui-normal);
color: var(--ooui-text);
&:hover {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
}
&:active {
color: var(--ooui-text);
}
&:focus {
border-color: var(--ooui-accent);
box-shadow: @ooui-box-shadow-base--focus;
}
}
&.oo-ui-widget-enabled&-open &-handle {
background-color: var(--ooui-normal--hover);
}
&.oo-ui-widget-disabled &-handle {
color: var(--ooui-disabled-text);
text-shadow: none; // wont look good on dark mode
border-color: var(--ooui-disabled-border);
background-color: var(--ooui-disabled);
}
}
// input dropdowns
.oo-ui-dropdownInputWidget {
// ooui styled dropdown thats actually an html <select>
select {
border-color: var(--ooui-normal-border);
}
option {
background-color: var(--ooui-interface);
}
&.oo-ui-widget-enabled {
background-color: var(--ooui-normal);
&:hover {
background-color: var(--ooui-normal--hover);
}
select {
color: var(--ooui-text);
&:hover,
&:active {
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
}
&:focus {
border-color: var(--ooui-accent);
box-shadow: @ooui-box-shadow-base--focus;
}
// there's a `oo-ui-indicator-down` class here that adds the pointer
// icon, it's not a separate element so invert filter for dark mode
// is infeasible
}
}
}
// in Special:Preferences
.oo-ui-labelWidget {
&.oo-ui-inline-help {
color: var(--byline-color);
}
}
// dropdown selection menu
.oo-ui-menuSelectWidget {
background-color: var(--ooui-interface);
border-color: var(--ooui-interface-border);
&-frameless {
box-shadow: inset 0 -1px 0 0 var(--ooui-normal-border);
}
}
.oo-ui-menuSectionOptionWidget {
color: var(--byline-color);
}
// options eg. on page deletion/move
.oo-ui-menuOptionWidget {
// hover
&.oo-ui-optionWidget {
// hover and selected option
&-highlighted,
// combined
&-selected {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
}
// hover on chosen option
&-selected&-highlighted,
&-pressed&-highlighted {
color: var(--ooui-accent);
}
}
// hover again
&.oo-ui-widget-enabled {
&.oo-ui-optionWidget {
color: var(--ooui-text);
}
}
// highlight & hover eg page deletion reason
// &.oo-ui-optionWidget-selected&.oo-ui-optionWidget-highlighted,
// &.oo-ui-optionWidget-pressed&.oo-ui-optionWidget-highlighted {
//
// }
}
.oo-ui-messageDialog {
// eg exiting out editor without saving the edit modal
&-title {
color: inherit;
}
}
.oo-ui-messageWidget {
// all .messagebox like boxes
&.oo-ui-messageWidget-block {
// matching .errorbox
&.oo-ui-flaggedElement-error {
background-color: var(--errorbox-bg);
border-color: var(--errorbox-border);
}
// eg warning when there's templatedata when editing a template
// matching .warningbox
&.oo-ui-flaggedElement-warning {
background-color: var(--warningbox-bg);
border-color: var(--warningbox-border);
}
// matching .successbox
&.oo-ui-flaggedElement-success {
background-color: var(--successbox-bg);
border-color: var(--successbox-border);
}
&.oo-ui-flaggedElement-notice {
background-color: var(--messagebox-info-background);
border-color: var(--messagebox-info-border);
}
}
// ideally we would use our own success and error colors, but this will do for now
&.oo-ui-flaggedElement-error:not(.oo-ui-messageWidget-block),
&.oo-ui-flaggedElement-success:not(.oo-ui-messageWidget-block) {
color: var(--ooui-text);
}
}
.oo-ui-optionWidget {
&.oo-ui-widget-disabled {
color: var(--ooui-disabled-text);
}
}
.oo-ui-outlineControlsWidget {
background-color: var(--ooui-normal);
}
// eg in ve "Options" window
.oo-ui-outlineOptionWidget {
&.oo-ui-optionWidget-highlighted {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
}
}
.oo-ui-popupWidget {
// Popups eg when interacting with templates in ve
&-popup {
background-color: var(--ooui-interface);
border-color: var(--ooui-interface-border);
}
// popups anchors/arrow
.ooui-anchor(@direction) {
.oo-ui-popupWidget-anchor:after {
border-@{direction}-color: var(--ooui-interface);
}
.oo-ui-popupWidget-anchor:before {
border-@{direction}-color: var(--ooui-interface-border);
}
}
&-anchored- {
&top {
.ooui-anchor(bottom);
}
&bottom {
.ooui-anchor(top);
}
&start {
.ooui-anchor(right);
}
&end {
.ooui-anchor(left);
}
}
}
.oo-ui-searchWidget-query {
border-bottom-color: var(--ooui-interface-border);
}
.oo-ui-selectFileWidget {
&-dropTarget {
background-color: var(--ooui-interface);
border-color: var(--ooui-interface-border);
}
&.oo-ui-widget-enabled {
&.oo-ui-selectFileWidget-dropTarget {
background-color: var(--ooui-interface);
&:hover {
border-color: var(--ooui-input-border--hover);
}
}
}
}
.oo-ui-tabOptionWidget {
color: var(--ooui-text);
.oo-ui-tabSelectWidget-framed & {
&.oo-ui-optionWidget-selected {
background-color: var(--body-dark);
color: var(--ooui-text);
& .oo-ui-labelElement-label {
border-bottom-color: var(--body-border);
}
}
&.oo-ui-widget-enabled {
&:hover,
&:active {
background-color: var(--body-light);
color: var(--ooui-text);
}
&.oo-ui-optionWidget-selected:hover {
background-color: var(--body-dark);
}
}
}
.oo-ui-tabSelectWidget-frameless & {
&.oo-ui-optionWidget-selected {
color: var(--ooui-progressive);
box-shadow: inset 0 -2px 0 0 var(--ooui-progressive);
&:hover,
&:focus {
color: var(--ooui-progressive--hover);
box-shadow: inset 0 -2px 0 0 var(--ooui-progressive--hover);
}
}
}
}
.oo-ui-tabSelectWidget {
// eg used on [[Special:Preferences]]
&-framed {
background: none; // actually uses something like --ooui-interface
border-bottom: 1px solid var(--ooui-interface-border); // our customisation
}
// used in TabberNeue (even though we dont have it)
&-frameless {
box-shadow: inset 0 -1px 0 0 var(--ooui-interface-border);
}
&-mobile {
// both use the following mixin in core; but we already have a similar
// var in minerva.css for these stuff already used in navboxes
/*
.oo-ui-horizontal-gradient( @startColor: #eee, @endColor: #fff, @startPos: 0, @endPos: 100% ) {
background-color: average( @startColor, @endColor );
background-image: linear-gradient( to right, @startColor @startPos, @endColor @endPos );
}
*/
&.oo-ui-tabSelectWidget-framed:after {
// background instead of -image so the prev properties used as
// fallback for ancient browsers are reset
background: var(--mobile-navbox-linear-gradient);
}
&.oo-ui-tabSelectWidget-frameless:after {
background: var(--mobile-navbox-linear-gradient);
}
}
}
// eg recent changes selected filter tag
.oo-ui-tagItemWidget {
border-color: var(--ooui-normal-border);
&.oo-ui-widget-enabled {
color: var(--ooui-text);
&:hover {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
}
&:not( .oo-ui-tagItemWidget-fixed ) {
background-color: var(--ooui-normal);
}
& .oo-ui-buttonElement-button {
&:hover {
background-color: var(--ooui-normal--hover);
}
}
}
}
.oo-ui-tagMultiselectWidget {
// rc/watchlist filter box
&.oo-ui-widget-enabled {
background-color: var(--ooui-interface);
// and again - this time it's button bg
&.oo-ui-tagMultiselectWidget-outlined {
background-color: var(--ooui-normal);
.oo-ui-tagItemWidget.oo-ui-widget-enabled {
background-color: var(--ooui-interface);
}
}
}
}
.oo-ui-textInputWidget {
// eg RecentChanges filter changes input
.oo-ui-inputWidget-input {
background-color: var(--ooui-input);
color: var(--ooui-text);
border-color: var(--ooui-input-border);
}
&.oo-ui-widget-enabled {
.oo-ui-inputWidget-input {
&::placeholder {
color: var(--subtle-color);
}
&:focus {
border-color: var(--ooui-accent);
box-shadow: @ooui-box-shadow-base--focus;
}
&[readonly]:not(.oo-ui-pendingElement-pending) {
background-color: var(--ooui-disabled);
color: var(--ooui-disabled-text);
}
}
&:hover {
.oo-ui-inputWidget-input {
border-color: var(--ooui-input-border--hover);
&:focus {
border-color: var(--ooui-accent);
}
}
}
@media screen {
@media ( min-width: 0 ) {
textarea.oo-ui-inputWidget-input:focus {
outline: 1px solid var(--ooui-accent);
}
}
}
}
&.oo-ui-widget-disabled {
.oo-ui-inputWidget-input {
background-color: var(--ooui-disabled);
color: var(--ooui-disabled-text);
text-shadow: none; // wont look good on dark mode
border-color: var(--ooui-disabled-border);
}
}
}
.oo-ui-toggleSwitchWidget {
background-color: var(--ooui-input);
border-color: var(--ooui-input-border);
&.oo-ui-widget-enabled {
.oo-ui-toggleSwitchWidget-grip {
background-color: var(--ooui-input);
border-color: var(--ooui-input-border);
}
&:hover {
background-color: var(--ooui-input);
border-color: var(--ooui-accent);
.oo-ui-toggleSwitchWidget-grip {
background-color: var(--ooui-input);
border-color: var(--ooui-accent);
}
}
&:active,
&:active:hover,
&:active:focus {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
box-shadow: @ooui-box-shadow-input-binary--active;
.oo-ui-toggleSwitchWidget-grip {
background-color: var(--ooui-input);
border-color: var(--ooui-input);
}
}
&:focus {
border-color: var(--ooui-accent);
box-shadow: @ooui-box-shadow-base--focus;
.oo-ui-toggleSwitchWidget-grip {
border-color: var(--ooui-accent);
}
}
&.oo-ui-toggleWidget-on {
background-color: var(--ooui-progressive);
border-color: var(--ooui-progressive);
.oo-ui-toggleSwitchWidget-grip {
background-color: var(--ooui-input);
border-color: var(--ooui-input);
}
&:hover {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
}
&:active,
&:active:hover {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
}
&:focus {
border-color: var(--ooui-progressive);
&::before {
border-color: @ooui-color-base--inverted;
}
}
}
}
&.oo-ui-widget-disabled {
background-color: var(--ooui-disabled);
border-color: var(--ooui-disabled); // same as bg
}
}
/* ----------------------
elements/buttons
---------------------- */
// mixin for frameless progressive/destructive button
.mw-frameless-button-colored( @child, @color-text ) {
> @{child},
// no distinct color for hover
> @{child}:hover {
color: @color-text;
}
> @{child}:active,
&.oo-ui-buttonElement-pressed > @{child} {
// dont differentiate between :active and normal
color: @color-text;
border-color: @color-text;
}
}
.mw-framed-button-colored( @child, @color-text, @hover, @border-color--hover, /* @active,*/ @focus ) {
> @{child} {
color: @color-text;
}
> @{child}:hover {
background-color: @hover;
border-color: @border-color--hover;
}
> @{child}:focus {
border-color: @focus;
box-shadow: inset 0 0 0 1px @focus;
}
/* ugh uses lighten()
> @{child}:active,
&.oo-ui-buttonElement-pressed > @{child},
&.oo-ui-buttonElement-active > @{child},
&.oo-ui-popupToolGroup-active > @{child} {
background-color: lighten( @active, 60% );
color: @active;
border-color: @active;
}
*/
}
// mixin for framed progressive/destructive button
.mw-framed-primary-button-colored( @child, @color, @hover, @active, @focus ) {
> @{child} {
background-color: @color;
border-color: @color;
}
> @{child}:hover {
background-color: @hover;
border-color: @hover;
}
> @{child}:focus {
border-color: @focus;
box-shadow: inset 0 0 0 1px @focus, inset 0 0 0 2px @ooui-color-base--inverted;
}
> @{child}:active,
&.oo-ui-buttonElement-pressed > @{child},
&.oo-ui-buttonElement-active > @{child},
&.oo-ui-popupToolGroup-active > @{child} {
color: @ooui-color-base--inverted;
background-color: @active;
border-color: @active;
}
}
.oo-ui-buttonElement {
&-frameless {
&.oo-ui-widget-enabled {
> .oo-ui-buttonElement-button {
color: var(--ooui-text);
&:hover {
color: var(--ooui-text);
}
&:focus {
border-color: var(--ooui-accent);
box-shadow: @ooui-box-shadow-base--focus;
}
}
&.oo-ui-buttonElement-pressed > input.oo-ui-buttonElement-button,
> .oo-ui-buttonElement-button:active {
color: var(--ooui-text);
}
&.oo-ui-flaggedElement {
&-progressive {
.mw-frameless-button-colored( ~'.oo-ui-buttonElement-button', var(--ooui-text) ); // try out using text color as the button label like hard-coded darkmode
}
// not needed
// &-destructive {
// .mw-frameless-button-colored( ~'.oo-ui-buttonElement-button' );
// }
}
}
&.oo-ui-widget-disabled {
> .oo-ui-buttonElement-button {
color: var(--ooui-disabled-text);
}
}
}
&-framed {
&.oo-ui-widget-disabled {
> .oo-ui-buttonElement-button {
background-color: var(--ooui-disabled);
border-color: var(--ooui-disabled-border);
}
}
&.oo-ui-widget-enabled {
> .oo-ui-buttonElement-button {
background-color: var(--ooui-normal);
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
&:hover {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
}
&:focus {
border-color: var(--ooui-accent);
box-shadow: @ooui-box-shadow-base--focus;
}
}
&.oo-ui-buttonElement-active > .oo-ui-buttonElement-button {
background-color: var(--ooui-progressive--hover);
color: #fff; // needed, else it would be overriden by non-active styles
border-color: var(--ooui-progressive--hover);
&:focus {
border-color: var(--ooui-progressive--hover);
box-shadow: @ooui-box-shadow-base--focus;
}
}
// same as :hover above
> .oo-ui-buttonElement-button:active,
&.oo-ui-buttonElement-pressed > .oo-ui-buttonElement-button {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
}
&.oo-ui-flaggedElement {
&-progressive {
.mw-framed-button-colored( ~'.oo-ui-buttonElement-button', var(--ooui-text), var(--ooui-normal--hover), var(--ooui-progressive--hover), var(--ooui-accent) );
}
&-destructive {
// .mw-framed-button-colored( ~'.oo-ui-buttonElement-button', @color-destructive-non-primary, @background-color-framed--hover, @border-color-framed-destructive--hover, @color-destructive--active, @color-destructive--focus );
// since we arent changing destructive
> .oo-ui-buttonElement-button {
color: var(--ooui-text);
&:hover {
background-color: var(--ooui-normal--hover);
}
}
}
}
&.oo-ui-flaggedElement-primary {
&.oo-ui-flaggedElement {
&-progressive {
.mw-framed-primary-button-colored( ~'.oo-ui-buttonElement-button', var(--ooui-progressive), var(--ooui-progressive--hover), var(--ooui-progressive--hover), var(--ooui-accent) );
}
// dont need
// &-destructive {
// .mw-framed-primary-button-colored( ~'.oo-ui-buttonElement-button' );
// }
}
}
}
}
}
.oo-ui-pendingElement-pending {
background-image: var(--ooui-pending-background-image);
background-size: 200%;
animation: oo-ui-pendingElement-stripes 6s linear infinite;
@keyframes oo-ui-pendingElement-stripes {
100% {
background-position: 100%;
}
}
}
/* ----------------------
windows
---------------------- */
.oo-ui-messageDialog {
&-content > .oo-ui-window-foot {
outline-color: var(--ooui-interface-border);
}
&-message {
color: var(--ooui-text);
}
&-actions {
// eg ace editor "Go to line number..." window
&-horizontal .oo-ui-actionWidget {
border-right-color: var(--ooui-interface-border);
}
&-vertical .oo-ui-actionWidget {
border-bottom-color: var(--ooui-interface-border);
}
}
}
.oo-ui-processDialog {
&-content {
.oo-ui-window-head,
.oo-ui-window-foot {
outline-color: var(--ooui-interface-border);
}
}
// need to reoverride so buttons wont have weird borders
.oo-ui-actionWidget {
> .oo-ui-buttonElement-button {
border-top-color: transparent;
border-bottom-color: transparent;
&:hover,
&:active {
border-top-color: transparent;
border-bottom-color: transparent;
}
}
&:not( .oo-ui-flaggedElement-progressive ):not( .oo-ui-flaggedElement-destructive ) {
> .oo-ui-buttonElement-button {
&:hover,
&:active {
border-right-color: var(--ooui-interface-border);
border-left-color: transparent;
}
&:focus {
border-color: var(--ooui-accent);
}
}
}
}
&-actions {
&-safe,
&-other {
.oo-ui-actionWidget > .oo-ui-buttonElement-button {
border-right-color: var(--ooui-normal-border);
border-left-color: transparent;
}
}
&-safe {
.oo-ui-widget-enabled.oo-ui-iconElement:not( .oo-ui-labelElement ) {
> .oo-ui-buttonElement-button {
&:hover {
background-color: var(--ooui-normal--hover);
border-right-color: var(--ooui-interface-border);
}
}
}
}
}
}
.oo-ui-windowManager {
&-modal {
// bg behind windows
> .oo-ui-dialog {
background-color: var(--ooui-window-background);
}
// all popup windows
> .oo-ui-dialog > .oo-ui-window-frame {
background-color: var(--ooui-interface);
}
}
// window outlines
&-modal&-floating > .oo-ui-dialog > .oo-ui-window-frame {
border-color: var(--ooui-interface-border);
}
}
// we need this one to be able to adjust the font color inside windows
.oo-ui-window {
color: var(--ooui-text);
}
/* ----------------------
tools
---------------------- */
.mw-tool-colored( @child /*, @color-text*/ , @hover, @active , @focus , @active-text: @active ) {
// > @{child} {
// color: @color-text;
// }
> @{child}:hover {
background-color: @hover;
}
> @{child}:focus {
outline: 1px solid @focus;
box-shadow: inset 0 0 0 1px @focus;
}
> @{child}:active,
&.oo-ui-tool-active > @{child},
&.oo-ui-popupToolGroup-active > @{child} {
background-color: var(--ooui-normal--hover);
color: @active-text;
box-shadow: none;
}
}
.mw-primary-tool-colored( @child, @color, @hover, @active, @focus ) {
> @{child} {
// color: @ooui-color-base--inverted;
background-color: @color;
}
> @{child}:hover {
background-color: @hover;
}
> @{child}:focus {
// outline: @border-width-base @border-style-base @focus;
box-shadow: inset 0 0 0 1px @focus, inset 0 0 0 2px @ooui-color-base--inverted;
}
> @{child}:active,
&.oo-ui-tool-active > @{child} {
// color: @ooui-color-base--inverted;
background-color: @active;
// box-shadow: none;
}
// &.oo-ui-widget-disabled > @{child},
// &.oo-ui-widget-disabled > @{child}:active {
// background-color: @background-color-filled--disabled;
// color: @color-filled--disabled;
// }
}
@ooui-toolbar: var(--ooui-interface);
@ooui-toolbar-border: var(--body-mid);
// mainly used by ve and source editor
// toolbar
.oo-ui-toolbar {
&-bar {
background-color: @ooui-toolbar;
color: var(--ooui-text);
// toolbar borders
.oo-ui-toolbar-position-top > & {
border-bottom-color: @ooui-toolbar-border;
}
.oo-ui-bookletLayout > .oo-ui-menuLayout-menu {
border-right-color: @ooui-toolbar-border;
}
}
}
.oo-ui-tool {
&.oo-ui-widget-enabled {
.mw-tool-colored( ~'.oo-ui-tool-link', var(--ooui-normal--hover), var(--ooui-accent), var(--ooui-accent) );
// &.oo-ui-flaggedElement {
// &-progressive {
// .mw-tool-colored( ~'.oo-ui-tool-link', @background-color-tool--hover, @color-primary--active, @color-primary--focus );
// }
// &-destructive {
// .mw-tool-colored( ~'.oo-ui-tool-link', @color-destructive-non-primary, @background-color-tool--hover, @color-destructive--active, @color-destructive--focus );
// }
// }
&.oo-ui-flaggedElement-primary {
&.oo-ui-flaggedElement {
&-progressive {
.mw-primary-tool-colored( ~'.oo-ui-tool-link', var(--ooui-progressive), var(--ooui-progressive--hover), var(--ooui-progressive--hover), var(--ooui-accent) );
}
// &-destructive {
// .mw-primary-tool-colored( ~'.oo-ui-tool-link', @color-destructive, @color-destructive--hover, @color-destructive--active, @color-destructive--focus );
// }
}
}
}
}
.oo-ui-listToolGroup {
// eg "Page options" dropdown
&-tools .oo-ui-tool {
&.oo-ui-widget-enabled {
background-color: var(--ooui-normal);
&:hover {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
}
}
// does not match source ordering
&-active.oo-ui-widget-enabled .oo-ui-tool-link .oo-ui-tool-title {
color: var(--ooui-progressive)
}
}
}
// left-hand tool group
.oo-ui-menuToolGroup {
border-left-color: @ooui-toolbar-border;
border-right-color: @ooui-toolbar-border;
}
.oo-ui-popupToolGroup {
// dropdown menu
&-tools {
background-color: @ooui-toolbar;
border-color: @ooui-toolbar-border;
}
&.oo-ui-widget-enabled {
// eg hover "Insert"
> .oo-ui-popupToolGroup-handle {
&:hover {
background-color: var(--ooui-normal--hover);
}
&:focus {
outline: 1px solid var(--ooui-accent);
box-shadow: @ooui-box-shadow-base--focus;
}
}
// ve "Page options" again
.oo-ui-toolbar-actions & {
> .oo-ui-popupToolGroup-handle {
&:hover {
// same as button hover
border-right-color: var(--ooui-normal--hover);
}
}
}
}
// might not match source ordering
&-tools .oo-ui-tool.oo-ui-widget-enabled .oo-ui-tool-link:focus {
box-shadow: inset 0 0 0 2px var(--ooui-accent);
}
&-tools .oo-ui-tool-active.oo-ui-widget-enabled .oo-ui-tool-link .oo-ui-tool-title {
color: var(--ooui-progressive);
}
&.oo-ui-popupToolGroup-active {
> .oo-ui-popupToolGroup-handle {
// aka active
background-color: var(--ooui-normal);
color: var(--ooui-accent);
&:hover {
background-color: var(--ooui-normal--hover);
color: var(--ooui-accent);
}
}
}
}
/* ----------------------
layouts
---------------------- */
.oo-ui-bookletLayout {
&-outlinePanel {
> .oo-ui-outlineControlsWidget {
border-top-color: var(--ooui-interface-border);
}
}
// eg "Show options" in ve template editor
> .oo-ui-menuLayout-menu {
border-right-color: var(--ooui-interface-border);
}
}
.oo-ui-fieldLayout {
// disabled text color in layouts
&-disabled > .oo-ui-fieldLayout-body > .oo-ui-fieldLayout-header > .oo-ui-labelElement-label {
color: var(--ooui-disabled-text);
}
}
// ooui <fieldset>
.oo-ui-panelLayout {
&-framed {
border-color: var(--sidebar); // along with <h1/2> border
}
}
/* ----------------------
others
---------------------- */
.oo-ui-icon-settings {
background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' width='20' height='20' viewBox='0 0 20 20'%3E%3Ctitle%3Esettings%3C/title%3E%3Cg transform='translate(10 10)'%3E%3Cpath id='a' d='M1.5-10h-3l-1 6.5h5m0 7h-5l1 6.5h3'/%3E%3Cuse xlink:href='%23a' transform='rotate(45)'/%3E%3Cuse xlink:href='%23a' transform='rotate(90)'/%3E%3Cuse xlink:href='%23a' transform='rotate(135)'/%3E%3C/g%3E%3Cpath d='M10 2.5a7.5 7.5 0 0 0 0 15 7.5 7.5 0 0 0 0-15v4a3.5 3.5 0 0 1 0 7 3.5 3.5 0 0 1 0-7'/%3E%3C/svg%3E");
}
.oo-ui-icon-clear {
background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 20 20'%3E%3Ctitle%3Eclear%3C/title%3E%3Cpath d='M10 0a10 10 0 1 0 10 10A10 10 0 0 0 10 0zm5.66 14.24-1.41 1.41L10 11.41l-4.24 4.25-1.42-1.42L8.59 10 4.34 5.76l1.42-1.42L10 8.59l4.24-4.24 1.41 1.41L11.41 10z'/%3E%3C/svg%3E");
}
// --- widgets in core mediawiki ---
// DateInputWidget
.mw-widget-dateInputWidget {
&-handle {
background-color: var(--ooui-input);
color: var(--ooui-text);
border-color: var(--ooui-input-border);
}
&-calendar {
background-color: var(--ooui-interface);
}
&.oo-ui-widget-enabled .mw-widget-dateInputWidget-handle:hover {
border-color: var(--ooui-input-border--hover);
}
}
// CalendarWidget
.mw-widget-calendarWidget {
border-color: var(--ooui-interface-border);
&:focus {
border-color: var(--ooui-accent);
box-shadow: @ooui-box-shadow-base--focus;
}
// focused month
&-day,
// week day name
&-day-heading {
color: var(--ooui-text);
}
// other months
&-day-additional {
color: var(--ooui-text);
opacity: 0.67;
}
&-day-today {
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
&-item {
&:hover {
background-color: var(--ooui-progressive);
}
&-selected {
background-color: var(--ooui-progressive--hover);
}
}
}
// e.g. on [[Special:AbuseFilter/examine]]
.mw-widgets-datetime-calendarWidget {
background-color: var(--ooui-interface);
border-color: var(--ooui-interface-border);
&:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent), 0 2px 2px 0 rgba(0,0,0,0.25);
}
&-grid {
.mw-widgets-datetime-calendarWidget-cell {
&.mw-widgets-datetime-calendarWidget-extra .oo-ui-buttonElement-button {
.oo-ui-labelElement-label {
color: var(--subtle-color);
}
}
&.mw-widgets-datetime-calendarWidget-selected .oo-ui-buttonElement-button {
background-color: var(--ooui-progressive--hover);
}
}
}
}
// input box
.mw-widgets-datetime-dateTimeInputWidget {
&-handle {
background-color: var(--ooui-input);
color: var(--ooui-text);
border-color: var(--ooui-input-border);
}
&.oo-ui-widget-enabled {
&.mw-widgets-datetime-dateTimeInputWidget-handle {
&:hover {
border-color: var(--ooui-input-border--hover);
}
}
&:hover {
input,
textarea {
border-color: var(--ooui-input-border--hover);
}
}
.mw-widgets-datetime-dateTimeInputWidget-editField:hover {
background-color: var(--ooui-normal);
}
}
}
9046981304b3e3dc2776d7a1e616986a845742bc
1673
1670
2024-03-31T23:58:11Z
Merds
25
less
less
/* ======================
OOUI
====================== */
// MediaWiki documentation: <https://www.mediawiki.org/wiki/OOUI>
// Interactive documentation: <https://doc.wikimedia.org/oojs-ui/master/demos/>
// Styles repo directory: <https://github.com/wikimedia/oojs-ui/tree/master/src/themes/wikimediaui>
// Variables
@ooui-normal: var(--body-mid);
@ooui-normal-border: var(--body-border);
@ooui-progressive: #936243;
@ooui-box-shadow-base--focus: inset 0 0 0 1px var(--ooui-accent);
@ooui-box-shadow-input-binary--active: inset 0 0 0 1px var(--ooui-progressive--hover);
@ooui-color-base--inverted: @white;
:root {
--ooui-text: var(--text-color);
--ooui-interface: var(--body-light);
--ooui-interface-border: var(--body-border);
--ooui-window-background: rgba(255,255,255,0.5);
// use the same styles for :hover AND :active
// :focus will use the accent var
--ooui-normal: darken( @ooui-normal, 2% );
// default styles basically add +2% luminance (from #f8f9fa to #ffffff)
// there's also another hover color: #eaecf0 (like .oo-ui-tool-link:hover)
// ...but we only have one var for button hover, so we should make sure
// the color does not blend with its bg
--ooui-normal--hover: lighten(@ooui-normal, 4%);
--ooui-normal-border: @ooui-normal-border;
// use separate color for progressive buttons - BUT use link-color for
// anywhere else that uses progressive colors; this isnt the greatest idea
// and unifying them is better in the longer term
--ooui-progressive: @ooui-progressive;
--ooui-progressive--hover: lighten(@ooui-progressive, 10%);
// border and bg are the same in non-normal buttons
--ooui-accent: var(--link-color);
// probably not worth adjusting <textarea>/<input>-esque bg in light mode
--ooui-input: #fff;
--ooui-input-border: @ooui-normal-border;
--ooui-input-border--hover: darken(@ooui-normal-border, 19%);
--ooui-disabled: desaturate( lighten( @ooui-normal, 2%), 20% );
--ooui-disabled-border: desaturate( lighten( @ooui-normal-border, 10%), 12% );
--ooui-disabled-text: var(--subtle-color);
--ooui-pending-background-image: repeating-linear-gradient(-45deg, @SEARCH_BOX, @SEARCH_BOX 20px, @BODY_MAIN 20px, @BODY_MAIN 30px);
}
/* ----------------------
widgets
---------------------- */
// need this one to be able to adjust the font color inside popups and etc
.oo-ui-widget {
color: var(--ooui-text);
}
// combine checkbox and radio as theyre really similar
.oo-ui-checkboxInputWidget [type='checkbox'] + span,
.oo-ui-radioInputWidget [type='radio'] + span {
background-color: var(--ooui-input);
border-color: var(--ooui-input-border);
}
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:checked + span,
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:indeterminate + span {
background-color: var(--ooui-progressive);
border-color: var(--ooui-progressive);
}
.oo-ui-radioInputWidget.oo-ui-widget-enabled [type='radio']:checked + span {
border-color: var(--ooui-progressive);
}
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:checked:hover + span,
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:indeterminate:hover + span {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
}
.oo-ui-radioInputWidget.oo-ui-widget-enabled [type='radio']:checked:hover + span {
border-color: var(--ooui-progressive--hover);
}
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:hover + span,
.oo-ui-radioInputWidget.oo-ui-widget-enabled [type='radio']:hover + span {
border-color: var(--ooui-accent);
}
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:focus + span {
border-color: var(--ooui-accent);
box-shadow: @ooui-box-shadow-base--focus;
}
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:active + span,
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:checked:active + span,
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:indeterminate:active + span {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
box-shadow: @ooui-box-shadow-input-binary--active;
}
.oo-ui-radioInputWidget.oo-ui-widget-enabled [type='radio']:active + span {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
}
.oo-ui-radioInputWidget.oo-ui-widget-enabled [type='radio']:checked:active + span {
border-color: var(--ooui-progressive--hover);
box-shadow: @ooui-box-shadow-input-binary--active;
}
.oo-ui-radioInputWidget.oo-ui-widget-enabled [type='radio']:checked:active + span:before {
border-color: var(--ooui-progressive--hover);
}
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:checked:focus + span,
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:indeterminate:focus + span {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent), inset 0 0 0 2px #fff;
}
.oo-ui-checkboxInputWidget [type='checkbox']:disabled + span,
.oo-ui-radioInputWidget [type='radio']:disabled + span {
background-color: var(--ooui-disabled);
border-color: var(--ooui-disabled); // same as bg for both
}
.oo-ui-dropdownWidget {
&-handle {
border-color: var(--ooui-normal-border);
}
&.oo-ui-widget-enabled &-handle {
background-color: var(--ooui-normal);
color: var(--ooui-text);
&:hover {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
}
&:active {
color: var(--ooui-text);
}
&:focus {
border-color: var(--ooui-accent);
box-shadow: @ooui-box-shadow-base--focus;
}
}
&.oo-ui-widget-enabled&-open &-handle {
background-color: var(--ooui-normal--hover);
}
&.oo-ui-widget-disabled &-handle {
color: var(--ooui-disabled-text);
text-shadow: none; // wont look good on dark mode
border-color: var(--ooui-disabled-border);
background-color: var(--ooui-disabled);
}
}
// input dropdowns
.oo-ui-dropdownInputWidget {
// ooui styled dropdown thats actually an html <select>
select {
border-color: var(--ooui-normal-border);
}
option {
background-color: var(--ooui-interface);
}
&.oo-ui-widget-enabled {
background-color: var(--ooui-normal);
&:hover {
background-color: var(--ooui-normal--hover);
}
select {
color: var(--ooui-text);
&:hover,
&:active {
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
}
&:focus {
border-color: var(--ooui-accent);
box-shadow: @ooui-box-shadow-base--focus;
}
// there's a `oo-ui-indicator-down` class here that adds the pointer
// icon, it's not a separate element so invert filter for dark mode
// is infeasible
}
}
}
// in Special:Preferences
.oo-ui-labelWidget {
&.oo-ui-inline-help {
color: var(--byline-color);
}
}
// dropdown selection menu
.oo-ui-menuSelectWidget {
background-color: var(--ooui-interface);
border-color: var(--ooui-interface-border);
&-frameless {
box-shadow: inset 0 -1px 0 0 var(--ooui-normal-border);
}
}
.oo-ui-menuSectionOptionWidget {
color: var(--byline-color);
}
// options eg. on page deletion/move
.oo-ui-menuOptionWidget {
// hover
&.oo-ui-optionWidget {
// hover and selected option
&-highlighted,
// combined
&-selected {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
}
// hover on chosen option
&-selected&-highlighted,
&-pressed&-highlighted {
color: var(--ooui-accent);
}
}
// hover again
&.oo-ui-widget-enabled {
&.oo-ui-optionWidget {
color: var(--ooui-text);
}
}
// highlight & hover eg page deletion reason
// &.oo-ui-optionWidget-selected&.oo-ui-optionWidget-highlighted,
// &.oo-ui-optionWidget-pressed&.oo-ui-optionWidget-highlighted {
//
// }
}
.oo-ui-messageDialog {
// eg exiting out editor without saving the edit modal
&-title {
color: inherit;
}
}
.oo-ui-messageWidget {
// all .messagebox like boxes
&.oo-ui-messageWidget-block {
// matching .errorbox
&.oo-ui-flaggedElement-error {
background-color: var(--errorbox-bg);
border-color: var(--errorbox-border);
}
// eg warning when there's templatedata when editing a template
// matching .warningbox
&.oo-ui-flaggedElement-warning {
background-color: var(--warningbox-bg);
border-color: var(--warningbox-border);
}
// matching .successbox
&.oo-ui-flaggedElement-success {
background-color: var(--successbox-bg);
border-color: var(--successbox-border);
}
&.oo-ui-flaggedElement-notice {
background-color: var(--messagebox-info-background);
border-color: var(--messagebox-info-border);
}
}
// ideally we would use our own success and error colors, but this will do for now
&.oo-ui-flaggedElement-error:not(.oo-ui-messageWidget-block),
&.oo-ui-flaggedElement-success:not(.oo-ui-messageWidget-block) {
color: var(--ooui-text);
}
}
.oo-ui-optionWidget {
&.oo-ui-widget-disabled {
color: var(--ooui-disabled-text);
}
}
.oo-ui-outlineControlsWidget {
background-color: var(--ooui-normal);
}
// eg in ve "Options" window
.oo-ui-outlineOptionWidget {
&.oo-ui-optionWidget-highlighted {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
}
}
.oo-ui-popupWidget {
// Popups eg when interacting with templates in ve
&-popup {
background-color: var(--ooui-interface);
border-color: var(--ooui-interface-border);
}
// popups anchors/arrow
.ooui-anchor(@direction) {
.oo-ui-popupWidget-anchor:after {
border-@{direction}-color: var(--ooui-interface);
}
.oo-ui-popupWidget-anchor:before {
border-@{direction}-color: var(--ooui-interface-border);
}
}
&-anchored- {
&top {
.ooui-anchor(bottom);
}
&bottom {
.ooui-anchor(top);
}
&start {
.ooui-anchor(right);
}
&end {
.ooui-anchor(left);
}
}
}
.oo-ui-searchWidget-query {
border-bottom-color: var(--ooui-interface-border);
}
.oo-ui-selectFileWidget {
&-dropTarget {
background-color: var(--ooui-interface);
border-color: var(--ooui-interface-border);
}
&.oo-ui-widget-enabled {
&.oo-ui-selectFileWidget-dropTarget {
background-color: var(--ooui-interface);
&:hover {
border-color: var(--ooui-input-border--hover);
}
}
}
}
.oo-ui-tabOptionWidget {
color: var(--ooui-text);
.oo-ui-tabSelectWidget-framed & {
&.oo-ui-optionWidget-selected {
background-color: var(--body-dark);
color: var(--ooui-text);
& .oo-ui-labelElement-label {
border-bottom-color: var(--body-border);
}
}
&.oo-ui-widget-enabled {
&:hover,
&:active {
background-color: var(--body-light);
color: var(--ooui-text);
}
&.oo-ui-optionWidget-selected:hover {
background-color: var(--body-dark);
}
}
}
.oo-ui-tabSelectWidget-frameless & {
&.oo-ui-optionWidget-selected {
color: var(--ooui-progressive);
box-shadow: inset 0 -2px 0 0 var(--ooui-progressive);
&:hover,
&:focus {
color: var(--ooui-progressive--hover);
box-shadow: inset 0 -2px 0 0 var(--ooui-progressive--hover);
}
}
}
}
.oo-ui-tabSelectWidget {
// eg used on [[Special:Preferences]]
&-framed {
background: none; // actually uses something like --ooui-interface
border-bottom: 1px solid var(--ooui-interface-border); // our customisation
}
// used in TabberNeue (even though we dont have it)
&-frameless {
box-shadow: inset 0 -1px 0 0 var(--ooui-interface-border);
}
&-mobile {
// both use the following mixin in core; but we already have a similar
// var in minerva.css for these stuff already used in navboxes
/*
.oo-ui-horizontal-gradient( @startColor: #eee, @endColor: #fff, @startPos: 0, @endPos: 100% ) {
background-color: average( @startColor, @endColor );
background-image: linear-gradient( to right, @startColor @startPos, @endColor @endPos );
}
*/
&.oo-ui-tabSelectWidget-framed:after {
// background instead of -image so the prev properties used as
// fallback for ancient browsers are reset
background: var(--mobile-navbox-linear-gradient);
}
&.oo-ui-tabSelectWidget-frameless:after {
background: var(--mobile-navbox-linear-gradient);
}
}
}
// eg recent changes selected filter tag
.oo-ui-tagItemWidget {
border-color: var(--ooui-normal-border);
&.oo-ui-widget-enabled {
color: var(--ooui-text);
&:hover {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
}
&:not( .oo-ui-tagItemWidget-fixed ) {
background-color: var(--ooui-normal);
}
& .oo-ui-buttonElement-button {
&:hover {
background-color: var(--ooui-normal--hover);
}
}
}
}
.oo-ui-tagMultiselectWidget {
// rc/watchlist filter box
&.oo-ui-widget-enabled {
background-color: var(--ooui-interface);
// and again - this time it's button bg
&.oo-ui-tagMultiselectWidget-outlined {
background-color: var(--ooui-normal);
.oo-ui-tagItemWidget.oo-ui-widget-enabled {
background-color: var(--ooui-interface);
}
}
}
}
.oo-ui-textInputWidget {
// eg RecentChanges filter changes input
.oo-ui-inputWidget-input {
background-color: var(--ooui-input);
color: var(--ooui-text);
border-color: var(--ooui-input-border);
}
&.oo-ui-widget-enabled {
.oo-ui-inputWidget-input {
&::placeholder {
color: var(--subtle-color);
}
&:focus {
border-color: var(--ooui-accent);
box-shadow: @ooui-box-shadow-base--focus;
}
&[readonly]:not(.oo-ui-pendingElement-pending) {
background-color: var(--ooui-disabled);
color: var(--ooui-disabled-text);
}
}
&:hover {
.oo-ui-inputWidget-input {
border-color: var(--ooui-input-border--hover);
&:focus {
border-color: var(--ooui-accent);
}
}
}
@media screen {
@media ( min-width: 0 ) {
textarea.oo-ui-inputWidget-input:focus {
outline: 1px solid var(--ooui-accent);
}
}
}
}
&.oo-ui-widget-disabled {
.oo-ui-inputWidget-input {
background-color: var(--ooui-disabled);
color: var(--ooui-disabled-text);
text-shadow: none; // wont look good on dark mode
border-color: var(--ooui-disabled-border);
}
}
}
.oo-ui-toggleSwitchWidget {
background-color: var(--ooui-input);
border-color: var(--ooui-input-border);
&.oo-ui-widget-enabled {
.oo-ui-toggleSwitchWidget-grip {
background-color: var(--ooui-input);
border-color: var(--ooui-input-border);
}
&:hover {
background-color: var(--ooui-input);
border-color: var(--ooui-accent);
.oo-ui-toggleSwitchWidget-grip {
background-color: var(--ooui-input);
border-color: var(--ooui-accent);
}
}
&:active,
&:active:hover,
&:active:focus {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
box-shadow: @ooui-box-shadow-input-binary--active;
.oo-ui-toggleSwitchWidget-grip {
background-color: var(--ooui-input);
border-color: var(--ooui-input);
}
}
&:focus {
border-color: var(--ooui-accent);
box-shadow: @ooui-box-shadow-base--focus;
.oo-ui-toggleSwitchWidget-grip {
border-color: var(--ooui-accent);
}
}
&.oo-ui-toggleWidget-on {
background-color: var(--ooui-progressive);
border-color: var(--ooui-progressive);
.oo-ui-toggleSwitchWidget-grip {
background-color: var(--ooui-input);
border-color: var(--ooui-input);
}
&:hover {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
}
&:active,
&:active:hover {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
}
&:focus {
border-color: var(--ooui-progressive);
&::before {
border-color: @ooui-color-base--inverted;
}
}
}
}
&.oo-ui-widget-disabled {
background-color: var(--ooui-disabled);
border-color: var(--ooui-disabled); // same as bg
}
}
/* ----------------------
elements/buttons
---------------------- */
// mixin for frameless progressive/destructive button
.mw-frameless-button-colored( @child, @color-text ) {
> @{child},
// no distinct color for hover
> @{child}:hover {
color: @color-text;
}
> @{child}:active,
&.oo-ui-buttonElement-pressed > @{child} {
// dont differentiate between :active and normal
color: @color-text;
border-color: @color-text;
}
}
.mw-framed-button-colored( @child, @color-text, @hover, @border-color--hover, /* @active,*/ @focus ) {
> @{child} {
color: @color-text;
}
> @{child}:hover {
background-color: @hover;
border-color: @border-color--hover;
}
> @{child}:focus {
border-color: @focus;
box-shadow: inset 0 0 0 1px @focus;
}
/* ugh uses lighten()
> @{child}:active,
&.oo-ui-buttonElement-pressed > @{child},
&.oo-ui-buttonElement-active > @{child},
&.oo-ui-popupToolGroup-active > @{child} {
background-color: lighten( @active, 60% );
color: @active;
border-color: @active;
}
*/
}
// mixin for framed progressive/destructive button
.mw-framed-primary-button-colored( @child, @color, @hover, @active, @focus ) {
> @{child} {
background-color: @color;
border-color: @color;
}
> @{child}:hover {
background-color: @hover;
border-color: @hover;
}
> @{child}:focus {
border-color: @focus;
box-shadow: inset 0 0 0 1px @focus, inset 0 0 0 2px @ooui-color-base--inverted;
}
> @{child}:active,
&.oo-ui-buttonElement-pressed > @{child},
&.oo-ui-buttonElement-active > @{child},
&.oo-ui-popupToolGroup-active > @{child} {
color: @ooui-color-base--inverted;
background-color: @active;
border-color: @active;
}
}
.oo-ui-buttonElement {
&-frameless {
&.oo-ui-widget-enabled {
> .oo-ui-buttonElement-button {
color: var(--ooui-text);
&:hover {
color: var(--ooui-text);
}
&:focus {
border-color: var(--ooui-accent);
box-shadow: @ooui-box-shadow-base--focus;
}
}
&.oo-ui-buttonElement-pressed > input.oo-ui-buttonElement-button,
> .oo-ui-buttonElement-button:active {
color: var(--ooui-text);
}
&.oo-ui-flaggedElement {
&-progressive {
.mw-frameless-button-colored( ~'.oo-ui-buttonElement-button', var(--ooui-text) ); // try out using text color as the button label like hard-coded darkmode
}
// not needed
// &-destructive {
// .mw-frameless-button-colored( ~'.oo-ui-buttonElement-button' );
// }
}
}
&.oo-ui-widget-disabled {
> .oo-ui-buttonElement-button {
color: var(--ooui-disabled-text);
}
}
}
&-framed {
&.oo-ui-widget-disabled {
> .oo-ui-buttonElement-button {
background-color: var(--ooui-disabled);
border-color: var(--ooui-disabled-border);
}
}
&.oo-ui-widget-enabled {
> .oo-ui-buttonElement-button {
background-color: var(--ooui-normal);
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
&:hover {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
}
&:focus {
border-color: var(--ooui-accent);
box-shadow: @ooui-box-shadow-base--focus;
}
}
&.oo-ui-buttonElement-active > .oo-ui-buttonElement-button {
background-color: var(--ooui-progressive--hover);
color: #fff; // needed, else it would be overriden by non-active styles
border-color: var(--ooui-progressive--hover);
&:focus {
border-color: var(--ooui-progressive--hover);
box-shadow: @ooui-box-shadow-base--focus;
}
}
// same as :hover above
> .oo-ui-buttonElement-button:active,
&.oo-ui-buttonElement-pressed > .oo-ui-buttonElement-button {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
}
&.oo-ui-flaggedElement {
&-progressive {
.mw-framed-button-colored( ~'.oo-ui-buttonElement-button', var(--ooui-text), var(--ooui-normal--hover), var(--ooui-progressive--hover), var(--ooui-accent) );
}
&-destructive {
// .mw-framed-button-colored( ~'.oo-ui-buttonElement-button', @color-destructive-non-primary, @background-color-framed--hover, @border-color-framed-destructive--hover, @color-destructive--active, @color-destructive--focus );
// since we arent changing destructive
> .oo-ui-buttonElement-button {
color: var(--ooui-text);
&:hover {
background-color: var(--ooui-normal--hover);
}
}
}
}
&.oo-ui-flaggedElement-primary {
&.oo-ui-flaggedElement {
&-progressive {
.mw-framed-primary-button-colored( ~'.oo-ui-buttonElement-button', var(--ooui-progressive), var(--ooui-progressive--hover), var(--ooui-progressive--hover), var(--ooui-accent) );
}
// dont need
// &-destructive {
// .mw-framed-primary-button-colored( ~'.oo-ui-buttonElement-button' );
// }
}
}
}
}
}
.oo-ui-pendingElement-pending {
background-image: var(--ooui-pending-background-image);
background-size: 200%;
animation: oo-ui-pendingElement-stripes 6s linear infinite;
@keyframes oo-ui-pendingElement-stripes {
100% {
background-position: 100%;
}
}
}
/* ----------------------
windows
---------------------- */
.oo-ui-messageDialog {
&-content > .oo-ui-window-foot {
outline-color: var(--ooui-interface-border);
}
&-message {
color: var(--ooui-text);
}
&-actions {
// eg ace editor "Go to line number..." window
&-horizontal .oo-ui-actionWidget {
border-right-color: var(--ooui-interface-border);
}
&-vertical .oo-ui-actionWidget {
border-bottom-color: var(--ooui-interface-border);
}
}
}
.oo-ui-processDialog {
&-content {
.oo-ui-window-head,
.oo-ui-window-foot {
outline-color: var(--ooui-interface-border);
}
}
// need to reoverride so buttons wont have weird borders
.oo-ui-actionWidget {
> .oo-ui-buttonElement-button {
border-top-color: transparent;
border-bottom-color: transparent;
&:hover,
&:active {
border-top-color: transparent;
border-bottom-color: transparent;
}
}
&:not( .oo-ui-flaggedElement-progressive ):not( .oo-ui-flaggedElement-destructive ) {
> .oo-ui-buttonElement-button {
&:hover,
&:active {
border-right-color: var(--ooui-interface-border);
border-left-color: transparent;
}
&:focus {
border-color: var(--ooui-accent);
}
}
}
}
&-actions {
&-safe,
&-other {
.oo-ui-actionWidget > .oo-ui-buttonElement-button {
border-right-color: var(--ooui-normal-border);
border-left-color: transparent;
}
}
&-safe {
.oo-ui-widget-enabled.oo-ui-iconElement:not( .oo-ui-labelElement ) {
> .oo-ui-buttonElement-button {
&:hover {
background-color: var(--ooui-normal--hover);
border-right-color: var(--ooui-interface-border);
}
}
}
}
}
}
.oo-ui-windowManager {
&-modal {
// bg behind windows
> .oo-ui-dialog {
background-color: var(--ooui-window-background);
}
// all popup windows
> .oo-ui-dialog > .oo-ui-window-frame {
background-color: var(--ooui-interface);
}
}
// window outlines
&-modal&-floating > .oo-ui-dialog > .oo-ui-window-frame {
border-color: var(--ooui-interface-border);
}
}
// we need this one to be able to adjust the font color inside windows
.oo-ui-window {
color: var(--ooui-text);
}
/* ----------------------
tools
---------------------- */
.mw-tool-colored( @child /*, @color-text*/ , @hover, @active , @focus , @active-text: @active ) {
// > @{child} {
// color: @color-text;
// }
> @{child}:hover {
background-color: @hover;
}
> @{child}:focus {
outline: 1px solid @focus;
box-shadow: inset 0 0 0 1px @focus;
}
> @{child}:active,
&.oo-ui-tool-active > @{child},
&.oo-ui-popupToolGroup-active > @{child} {
background-color: var(--ooui-normal--hover);
color: @active-text;
box-shadow: none;
}
}
.mw-primary-tool-colored( @child, @color, @hover, @active, @focus ) {
> @{child} {
// color: @ooui-color-base--inverted;
background-color: @color;
}
> @{child}:hover {
background-color: @hover;
}
> @{child}:focus {
// outline: @border-width-base @border-style-base @focus;
box-shadow: inset 0 0 0 1px @focus, inset 0 0 0 2px @ooui-color-base--inverted;
}
> @{child}:active,
&.oo-ui-tool-active > @{child} {
// color: @ooui-color-base--inverted;
background-color: @active;
// box-shadow: none;
}
// &.oo-ui-widget-disabled > @{child},
// &.oo-ui-widget-disabled > @{child}:active {
// background-color: @background-color-filled--disabled;
// color: @color-filled--disabled;
// }
}
@ooui-toolbar: var(--ooui-interface);
@ooui-toolbar-border: var(--body-mid);
// mainly used by ve and source editor
// toolbar
.oo-ui-toolbar {
&-bar {
background-color: @ooui-toolbar;
color: var(--ooui-text);
// toolbar borders
.oo-ui-toolbar-position-top > & {
border-bottom-color: @ooui-toolbar-border;
}
.oo-ui-bookletLayout > .oo-ui-menuLayout-menu {
border-right-color: @ooui-toolbar-border;
}
}
}
.oo-ui-tool {
&.oo-ui-widget-enabled {
.mw-tool-colored( ~'.oo-ui-tool-link', var(--ooui-normal--hover), var(--ooui-accent), var(--ooui-accent) );
// &.oo-ui-flaggedElement {
// &-progressive {
// .mw-tool-colored( ~'.oo-ui-tool-link', @background-color-tool--hover, @color-primary--active, @color-primary--focus );
// }
// &-destructive {
// .mw-tool-colored( ~'.oo-ui-tool-link', @color-destructive-non-primary, @background-color-tool--hover, @color-destructive--active, @color-destructive--focus );
// }
// }
&.oo-ui-flaggedElement-primary {
&.oo-ui-flaggedElement {
&-progressive {
.mw-primary-tool-colored( ~'.oo-ui-tool-link', var(--ooui-progressive), var(--ooui-progressive--hover), var(--ooui-progressive--hover), var(--ooui-accent) );
}
// &-destructive {
// .mw-primary-tool-colored( ~'.oo-ui-tool-link', @color-destructive, @color-destructive--hover, @color-destructive--active, @color-destructive--focus );
// }
}
}
}
}
.oo-ui-listToolGroup {
// eg "Page options" dropdown
&-tools .oo-ui-tool {
&.oo-ui-widget-enabled {
background-color: var(--ooui-normal);
&:hover {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
}
}
// does not match source ordering
&-active.oo-ui-widget-enabled .oo-ui-tool-link .oo-ui-tool-title {
color: var(--ooui-progressive)
}
}
}
// left-hand tool group
.oo-ui-menuToolGroup {
border-left-color: @ooui-toolbar-border;
border-right-color: @ooui-toolbar-border;
}
.oo-ui-popupToolGroup {
// dropdown menu
&-tools {
background-color: @ooui-toolbar;
border-color: @ooui-toolbar-border;
}
&.oo-ui-widget-enabled {
// eg hover "Insert"
> .oo-ui-popupToolGroup-handle {
&:hover {
background-color: var(--ooui-normal--hover);
}
&:focus {
outline: 1px solid var(--ooui-accent);
box-shadow: @ooui-box-shadow-base--focus;
}
}
// ve "Page options" again
.oo-ui-toolbar-actions & {
> .oo-ui-popupToolGroup-handle {
&:hover {
// same as button hover
border-right-color: var(--ooui-normal--hover);
}
}
}
}
// might not match source ordering
&-tools .oo-ui-tool.oo-ui-widget-enabled .oo-ui-tool-link:focus {
box-shadow: inset 0 0 0 2px var(--ooui-accent);
}
&-tools .oo-ui-tool-active.oo-ui-widget-enabled .oo-ui-tool-link .oo-ui-tool-title {
color: var(--ooui-progressive);
}
&.oo-ui-popupToolGroup-active {
> .oo-ui-popupToolGroup-handle {
// aka active
background-color: var(--ooui-normal);
color: var(--ooui-accent);
&:hover {
background-color: var(--ooui-normal--hover);
color: var(--ooui-accent);
}
}
}
}
/* ----------------------
layouts
---------------------- */
.oo-ui-bookletLayout {
&-outlinePanel {
> .oo-ui-outlineControlsWidget {
border-top-color: var(--ooui-interface-border);
}
}
// eg "Show options" in ve template editor
> .oo-ui-menuLayout-menu {
border-right-color: var(--ooui-interface-border);
}
}
.oo-ui-fieldLayout {
// disabled text color in layouts
&-disabled > .oo-ui-fieldLayout-body > .oo-ui-fieldLayout-header > .oo-ui-labelElement-label {
color: var(--ooui-disabled-text);
}
}
// ooui <fieldset>
.oo-ui-panelLayout {
&-framed {
border-color: var(--sidebar); // along with <h1/2> border
}
}
/* ----------------------
others
---------------------- */
.oo-ui-icon-settings {
background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' width='20' height='20' viewBox='0 0 20 20'%3E%3Ctitle%3Esettings%3C/title%3E%3Cg transform='translate(10 10)'%3E%3Cpath id='a' d='M1.5-10h-3l-1 6.5h5m0 7h-5l1 6.5h3'/%3E%3Cuse xlink:href='%23a' transform='rotate(45)'/%3E%3Cuse xlink:href='%23a' transform='rotate(90)'/%3E%3Cuse xlink:href='%23a' transform='rotate(135)'/%3E%3C/g%3E%3Cpath d='M10 2.5a7.5 7.5 0 0 0 0 15 7.5 7.5 0 0 0 0-15v4a3.5 3.5 0 0 1 0 7 3.5 3.5 0 0 1 0-7'/%3E%3C/svg%3E");
}
.oo-ui-icon-clear {
background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 20 20'%3E%3Ctitle%3Eclear%3C/title%3E%3Cpath d='M10 0a10 10 0 1 0 10 10A10 10 0 0 0 10 0zm5.66 14.24-1.41 1.41L10 11.41l-4.24 4.25-1.42-1.42L8.59 10 4.34 5.76l1.42-1.42L10 8.59l4.24-4.24 1.41 1.41L11.41 10z'/%3E%3C/svg%3E");
}
// --- widgets in core mediawiki ---
// DateInputWidget
.mw-widget-dateInputWidget {
&-handle {
background-color: var(--ooui-input);
color: var(--ooui-text);
border-color: var(--ooui-input-border);
}
&-calendar {
background-color: var(--ooui-interface);
}
&.oo-ui-widget-enabled .mw-widget-dateInputWidget-handle:hover {
border-color: var(--ooui-input-border--hover);
}
}
// CalendarWidget
.mw-widget-calendarWidget {
border-color: var(--ooui-interface-border);
&:focus {
border-color: var(--ooui-accent);
box-shadow: @ooui-box-shadow-base--focus;
}
// focused month
&-day,
// week day name
&-day-heading {
color: var(--ooui-text);
}
// other months
&-day-additional {
color: var(--ooui-text);
opacity: 0.67;
}
&-day-today {
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
&-item {
&:hover {
background-color: var(--ooui-progressive);
}
&-selected {
background-color: var(--ooui-progressive--hover);
}
}
}
// e.g. on [[Special:AbuseFilter/examine]]
.mw-widgets-datetime-calendarWidget {
background-color: var(--ooui-interface);
border-color: var(--ooui-interface-border);
&:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent), 0 2px 2px 0 rgba(0,0,0,0.25);
}
&-grid {
.mw-widgets-datetime-calendarWidget-cell {
&.mw-widgets-datetime-calendarWidget-extra .oo-ui-buttonElement-button {
.oo-ui-labelElement-label {
color: var(--subtle-color);
}
}
&.mw-widgets-datetime-calendarWidget-selected .oo-ui-buttonElement-button {
background-color: var(--ooui-progressive--hover);
}
}
}
}
// input box
.mw-widgets-datetime-dateTimeInputWidget {
&-handle {
background-color: var(--ooui-input);
color: var(--ooui-text);
border-color: var(--ooui-input-border);
}
&.oo-ui-widget-enabled {
&.mw-widgets-datetime-dateTimeInputWidget-handle {
&:hover {
border-color: var(--ooui-input-border--hover);
}
}
&:hover {
input,
textarea {
border-color: var(--ooui-input-border--hover);
}
}
.mw-widgets-datetime-dateTimeInputWidget-editField:hover {
background-color: var(--ooui-normal);
}
}
}
c6fce0eb5b2625f1e403bd94e1d7cb4f2038a720
1674
1673
2024-03-31T23:59:04Z
Merds
25
less
less
/* ======================
OOUI
====================== */
// MediaWiki documentation: <https://www.mediawiki.org/wiki/OOUI>
// Interactive documentation: <https://doc.wikimedia.org/oojs-ui/master/demos/>
// Styles repo directory: <https://github.com/wikimedia/oojs-ui/tree/master/src/themes/wikimediaui>
// Variables
@ooui-normal: @BODY_MID;
@ooui-normal-border: @BODY_BORDER;
@ooui-progressive: #936243;
@ooui-box-shadow-base--focus: inset 0 0 0 1px var(--ooui-accent);
@ooui-box-shadow-input-binary--active: inset 0 0 0 1px var(--ooui-progressive--hover);
@ooui-color-base--inverted: @white;
:root {
--ooui-text: var(--text-color);
--ooui-interface: var(--body-light);
--ooui-interface-border: var(--body-border);
--ooui-window-background: rgba(255,255,255,0.5);
// use the same styles for :hover AND :active
// :focus will use the accent var
--ooui-normal: darken( @ooui-normal, 2% );
// default styles basically add +2% luminance (from #f8f9fa to #ffffff)
// there's also another hover color: #eaecf0 (like .oo-ui-tool-link:hover)
// ...but we only have one var for button hover, so we should make sure
// the color does not blend with its bg
--ooui-normal--hover: lighten(@ooui-normal, 4%);
--ooui-normal-border: @ooui-normal-border;
// use separate color for progressive buttons - BUT use link-color for
// anywhere else that uses progressive colors; this isnt the greatest idea
// and unifying them is better in the longer term
--ooui-progressive: @ooui-progressive;
--ooui-progressive--hover: lighten(@ooui-progressive, 10%);
// border and bg are the same in non-normal buttons
--ooui-accent: var(--link-color);
// probably not worth adjusting <textarea>/<input>-esque bg in light mode
--ooui-input: #fff;
--ooui-input-border: @ooui-normal-border;
--ooui-input-border--hover: darken(@ooui-normal-border, 19%);
--ooui-disabled: desaturate( lighten( @ooui-normal, 2%), 20% );
--ooui-disabled-border: desaturate( lighten( @ooui-normal-border, 10%), 12% );
--ooui-disabled-text: var(--subtle-color);
--ooui-pending-background-image: repeating-linear-gradient(-45deg, @SEARCH_BOX, @SEARCH_BOX 20px, @BODY_MAIN 20px, @BODY_MAIN 30px);
}
/* ----------------------
widgets
---------------------- */
// need this one to be able to adjust the font color inside popups and etc
.oo-ui-widget {
color: var(--ooui-text);
}
// combine checkbox and radio as theyre really similar
.oo-ui-checkboxInputWidget [type='checkbox'] + span,
.oo-ui-radioInputWidget [type='radio'] + span {
background-color: var(--ooui-input);
border-color: var(--ooui-input-border);
}
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:checked + span,
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:indeterminate + span {
background-color: var(--ooui-progressive);
border-color: var(--ooui-progressive);
}
.oo-ui-radioInputWidget.oo-ui-widget-enabled [type='radio']:checked + span {
border-color: var(--ooui-progressive);
}
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:checked:hover + span,
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:indeterminate:hover + span {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
}
.oo-ui-radioInputWidget.oo-ui-widget-enabled [type='radio']:checked:hover + span {
border-color: var(--ooui-progressive--hover);
}
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:hover + span,
.oo-ui-radioInputWidget.oo-ui-widget-enabled [type='radio']:hover + span {
border-color: var(--ooui-accent);
}
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:focus + span {
border-color: var(--ooui-accent);
box-shadow: @ooui-box-shadow-base--focus;
}
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:active + span,
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:checked:active + span,
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:indeterminate:active + span {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
box-shadow: @ooui-box-shadow-input-binary--active;
}
.oo-ui-radioInputWidget.oo-ui-widget-enabled [type='radio']:active + span {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
}
.oo-ui-radioInputWidget.oo-ui-widget-enabled [type='radio']:checked:active + span {
border-color: var(--ooui-progressive--hover);
box-shadow: @ooui-box-shadow-input-binary--active;
}
.oo-ui-radioInputWidget.oo-ui-widget-enabled [type='radio']:checked:active + span:before {
border-color: var(--ooui-progressive--hover);
}
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:checked:focus + span,
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:indeterminate:focus + span {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent), inset 0 0 0 2px #fff;
}
.oo-ui-checkboxInputWidget [type='checkbox']:disabled + span,
.oo-ui-radioInputWidget [type='radio']:disabled + span {
background-color: var(--ooui-disabled);
border-color: var(--ooui-disabled); // same as bg for both
}
.oo-ui-dropdownWidget {
&-handle {
border-color: var(--ooui-normal-border);
}
&.oo-ui-widget-enabled &-handle {
background-color: var(--ooui-normal);
color: var(--ooui-text);
&:hover {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
}
&:active {
color: var(--ooui-text);
}
&:focus {
border-color: var(--ooui-accent);
box-shadow: @ooui-box-shadow-base--focus;
}
}
&.oo-ui-widget-enabled&-open &-handle {
background-color: var(--ooui-normal--hover);
}
&.oo-ui-widget-disabled &-handle {
color: var(--ooui-disabled-text);
text-shadow: none; // wont look good on dark mode
border-color: var(--ooui-disabled-border);
background-color: var(--ooui-disabled);
}
}
// input dropdowns
.oo-ui-dropdownInputWidget {
// ooui styled dropdown thats actually an html <select>
select {
border-color: var(--ooui-normal-border);
}
option {
background-color: var(--ooui-interface);
}
&.oo-ui-widget-enabled {
background-color: var(--ooui-normal);
&:hover {
background-color: var(--ooui-normal--hover);
}
select {
color: var(--ooui-text);
&:hover,
&:active {
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
}
&:focus {
border-color: var(--ooui-accent);
box-shadow: @ooui-box-shadow-base--focus;
}
// there's a `oo-ui-indicator-down` class here that adds the pointer
// icon, it's not a separate element so invert filter for dark mode
// is infeasible
}
}
}
// in Special:Preferences
.oo-ui-labelWidget {
&.oo-ui-inline-help {
color: var(--byline-color);
}
}
// dropdown selection menu
.oo-ui-menuSelectWidget {
background-color: var(--ooui-interface);
border-color: var(--ooui-interface-border);
&-frameless {
box-shadow: inset 0 -1px 0 0 var(--ooui-normal-border);
}
}
.oo-ui-menuSectionOptionWidget {
color: var(--byline-color);
}
// options eg. on page deletion/move
.oo-ui-menuOptionWidget {
// hover
&.oo-ui-optionWidget {
// hover and selected option
&-highlighted,
// combined
&-selected {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
}
// hover on chosen option
&-selected&-highlighted,
&-pressed&-highlighted {
color: var(--ooui-accent);
}
}
// hover again
&.oo-ui-widget-enabled {
&.oo-ui-optionWidget {
color: var(--ooui-text);
}
}
// highlight & hover eg page deletion reason
// &.oo-ui-optionWidget-selected&.oo-ui-optionWidget-highlighted,
// &.oo-ui-optionWidget-pressed&.oo-ui-optionWidget-highlighted {
//
// }
}
.oo-ui-messageDialog {
// eg exiting out editor without saving the edit modal
&-title {
color: inherit;
}
}
.oo-ui-messageWidget {
// all .messagebox like boxes
&.oo-ui-messageWidget-block {
// matching .errorbox
&.oo-ui-flaggedElement-error {
background-color: var(--errorbox-bg);
border-color: var(--errorbox-border);
}
// eg warning when there's templatedata when editing a template
// matching .warningbox
&.oo-ui-flaggedElement-warning {
background-color: var(--warningbox-bg);
border-color: var(--warningbox-border);
}
// matching .successbox
&.oo-ui-flaggedElement-success {
background-color: var(--successbox-bg);
border-color: var(--successbox-border);
}
&.oo-ui-flaggedElement-notice {
background-color: var(--messagebox-info-background);
border-color: var(--messagebox-info-border);
}
}
// ideally we would use our own success and error colors, but this will do for now
&.oo-ui-flaggedElement-error:not(.oo-ui-messageWidget-block),
&.oo-ui-flaggedElement-success:not(.oo-ui-messageWidget-block) {
color: var(--ooui-text);
}
}
.oo-ui-optionWidget {
&.oo-ui-widget-disabled {
color: var(--ooui-disabled-text);
}
}
.oo-ui-outlineControlsWidget {
background-color: var(--ooui-normal);
}
// eg in ve "Options" window
.oo-ui-outlineOptionWidget {
&.oo-ui-optionWidget-highlighted {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
}
}
.oo-ui-popupWidget {
// Popups eg when interacting with templates in ve
&-popup {
background-color: var(--ooui-interface);
border-color: var(--ooui-interface-border);
}
// popups anchors/arrow
.ooui-anchor(@direction) {
.oo-ui-popupWidget-anchor:after {
border-@{direction}-color: var(--ooui-interface);
}
.oo-ui-popupWidget-anchor:before {
border-@{direction}-color: var(--ooui-interface-border);
}
}
&-anchored- {
&top {
.ooui-anchor(bottom);
}
&bottom {
.ooui-anchor(top);
}
&start {
.ooui-anchor(right);
}
&end {
.ooui-anchor(left);
}
}
}
.oo-ui-searchWidget-query {
border-bottom-color: var(--ooui-interface-border);
}
.oo-ui-selectFileWidget {
&-dropTarget {
background-color: var(--ooui-interface);
border-color: var(--ooui-interface-border);
}
&.oo-ui-widget-enabled {
&.oo-ui-selectFileWidget-dropTarget {
background-color: var(--ooui-interface);
&:hover {
border-color: var(--ooui-input-border--hover);
}
}
}
}
.oo-ui-tabOptionWidget {
color: var(--ooui-text);
.oo-ui-tabSelectWidget-framed & {
&.oo-ui-optionWidget-selected {
background-color: var(--body-dark);
color: var(--ooui-text);
& .oo-ui-labelElement-label {
border-bottom-color: var(--body-border);
}
}
&.oo-ui-widget-enabled {
&:hover,
&:active {
background-color: var(--body-light);
color: var(--ooui-text);
}
&.oo-ui-optionWidget-selected:hover {
background-color: var(--body-dark);
}
}
}
.oo-ui-tabSelectWidget-frameless & {
&.oo-ui-optionWidget-selected {
color: var(--ooui-progressive);
box-shadow: inset 0 -2px 0 0 var(--ooui-progressive);
&:hover,
&:focus {
color: var(--ooui-progressive--hover);
box-shadow: inset 0 -2px 0 0 var(--ooui-progressive--hover);
}
}
}
}
.oo-ui-tabSelectWidget {
// eg used on [[Special:Preferences]]
&-framed {
background: none; // actually uses something like --ooui-interface
border-bottom: 1px solid var(--ooui-interface-border); // our customisation
}
// used in TabberNeue (even though we dont have it)
&-frameless {
box-shadow: inset 0 -1px 0 0 var(--ooui-interface-border);
}
&-mobile {
// both use the following mixin in core; but we already have a similar
// var in minerva.css for these stuff already used in navboxes
/*
.oo-ui-horizontal-gradient( @startColor: #eee, @endColor: #fff, @startPos: 0, @endPos: 100% ) {
background-color: average( @startColor, @endColor );
background-image: linear-gradient( to right, @startColor @startPos, @endColor @endPos );
}
*/
&.oo-ui-tabSelectWidget-framed:after {
// background instead of -image so the prev properties used as
// fallback for ancient browsers are reset
background: var(--mobile-navbox-linear-gradient);
}
&.oo-ui-tabSelectWidget-frameless:after {
background: var(--mobile-navbox-linear-gradient);
}
}
}
// eg recent changes selected filter tag
.oo-ui-tagItemWidget {
border-color: var(--ooui-normal-border);
&.oo-ui-widget-enabled {
color: var(--ooui-text);
&:hover {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
}
&:not( .oo-ui-tagItemWidget-fixed ) {
background-color: var(--ooui-normal);
}
& .oo-ui-buttonElement-button {
&:hover {
background-color: var(--ooui-normal--hover);
}
}
}
}
.oo-ui-tagMultiselectWidget {
// rc/watchlist filter box
&.oo-ui-widget-enabled {
background-color: var(--ooui-interface);
// and again - this time it's button bg
&.oo-ui-tagMultiselectWidget-outlined {
background-color: var(--ooui-normal);
.oo-ui-tagItemWidget.oo-ui-widget-enabled {
background-color: var(--ooui-interface);
}
}
}
}
.oo-ui-textInputWidget {
// eg RecentChanges filter changes input
.oo-ui-inputWidget-input {
background-color: var(--ooui-input);
color: var(--ooui-text);
border-color: var(--ooui-input-border);
}
&.oo-ui-widget-enabled {
.oo-ui-inputWidget-input {
&::placeholder {
color: var(--subtle-color);
}
&:focus {
border-color: var(--ooui-accent);
box-shadow: @ooui-box-shadow-base--focus;
}
&[readonly]:not(.oo-ui-pendingElement-pending) {
background-color: var(--ooui-disabled);
color: var(--ooui-disabled-text);
}
}
&:hover {
.oo-ui-inputWidget-input {
border-color: var(--ooui-input-border--hover);
&:focus {
border-color: var(--ooui-accent);
}
}
}
@media screen {
@media ( min-width: 0 ) {
textarea.oo-ui-inputWidget-input:focus {
outline: 1px solid var(--ooui-accent);
}
}
}
}
&.oo-ui-widget-disabled {
.oo-ui-inputWidget-input {
background-color: var(--ooui-disabled);
color: var(--ooui-disabled-text);
text-shadow: none; // wont look good on dark mode
border-color: var(--ooui-disabled-border);
}
}
}
.oo-ui-toggleSwitchWidget {
background-color: var(--ooui-input);
border-color: var(--ooui-input-border);
&.oo-ui-widget-enabled {
.oo-ui-toggleSwitchWidget-grip {
background-color: var(--ooui-input);
border-color: var(--ooui-input-border);
}
&:hover {
background-color: var(--ooui-input);
border-color: var(--ooui-accent);
.oo-ui-toggleSwitchWidget-grip {
background-color: var(--ooui-input);
border-color: var(--ooui-accent);
}
}
&:active,
&:active:hover,
&:active:focus {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
box-shadow: @ooui-box-shadow-input-binary--active;
.oo-ui-toggleSwitchWidget-grip {
background-color: var(--ooui-input);
border-color: var(--ooui-input);
}
}
&:focus {
border-color: var(--ooui-accent);
box-shadow: @ooui-box-shadow-base--focus;
.oo-ui-toggleSwitchWidget-grip {
border-color: var(--ooui-accent);
}
}
&.oo-ui-toggleWidget-on {
background-color: var(--ooui-progressive);
border-color: var(--ooui-progressive);
.oo-ui-toggleSwitchWidget-grip {
background-color: var(--ooui-input);
border-color: var(--ooui-input);
}
&:hover {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
}
&:active,
&:active:hover {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
}
&:focus {
border-color: var(--ooui-progressive);
&::before {
border-color: @ooui-color-base--inverted;
}
}
}
}
&.oo-ui-widget-disabled {
background-color: var(--ooui-disabled);
border-color: var(--ooui-disabled); // same as bg
}
}
/* ----------------------
elements/buttons
---------------------- */
// mixin for frameless progressive/destructive button
.mw-frameless-button-colored( @child, @color-text ) {
> @{child},
// no distinct color for hover
> @{child}:hover {
color: @color-text;
}
> @{child}:active,
&.oo-ui-buttonElement-pressed > @{child} {
// dont differentiate between :active and normal
color: @color-text;
border-color: @color-text;
}
}
.mw-framed-button-colored( @child, @color-text, @hover, @border-color--hover, /* @active,*/ @focus ) {
> @{child} {
color: @color-text;
}
> @{child}:hover {
background-color: @hover;
border-color: @border-color--hover;
}
> @{child}:focus {
border-color: @focus;
box-shadow: inset 0 0 0 1px @focus;
}
/* ugh uses lighten()
> @{child}:active,
&.oo-ui-buttonElement-pressed > @{child},
&.oo-ui-buttonElement-active > @{child},
&.oo-ui-popupToolGroup-active > @{child} {
background-color: lighten( @active, 60% );
color: @active;
border-color: @active;
}
*/
}
// mixin for framed progressive/destructive button
.mw-framed-primary-button-colored( @child, @color, @hover, @active, @focus ) {
> @{child} {
background-color: @color;
border-color: @color;
}
> @{child}:hover {
background-color: @hover;
border-color: @hover;
}
> @{child}:focus {
border-color: @focus;
box-shadow: inset 0 0 0 1px @focus, inset 0 0 0 2px @ooui-color-base--inverted;
}
> @{child}:active,
&.oo-ui-buttonElement-pressed > @{child},
&.oo-ui-buttonElement-active > @{child},
&.oo-ui-popupToolGroup-active > @{child} {
color: @ooui-color-base--inverted;
background-color: @active;
border-color: @active;
}
}
.oo-ui-buttonElement {
&-frameless {
&.oo-ui-widget-enabled {
> .oo-ui-buttonElement-button {
color: var(--ooui-text);
&:hover {
color: var(--ooui-text);
}
&:focus {
border-color: var(--ooui-accent);
box-shadow: @ooui-box-shadow-base--focus;
}
}
&.oo-ui-buttonElement-pressed > input.oo-ui-buttonElement-button,
> .oo-ui-buttonElement-button:active {
color: var(--ooui-text);
}
&.oo-ui-flaggedElement {
&-progressive {
.mw-frameless-button-colored( ~'.oo-ui-buttonElement-button', var(--ooui-text) ); // try out using text color as the button label like hard-coded darkmode
}
// not needed
// &-destructive {
// .mw-frameless-button-colored( ~'.oo-ui-buttonElement-button' );
// }
}
}
&.oo-ui-widget-disabled {
> .oo-ui-buttonElement-button {
color: var(--ooui-disabled-text);
}
}
}
&-framed {
&.oo-ui-widget-disabled {
> .oo-ui-buttonElement-button {
background-color: var(--ooui-disabled);
border-color: var(--ooui-disabled-border);
}
}
&.oo-ui-widget-enabled {
> .oo-ui-buttonElement-button {
background-color: var(--ooui-normal);
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
&:hover {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
}
&:focus {
border-color: var(--ooui-accent);
box-shadow: @ooui-box-shadow-base--focus;
}
}
&.oo-ui-buttonElement-active > .oo-ui-buttonElement-button {
background-color: var(--ooui-progressive--hover);
color: #fff; // needed, else it would be overriden by non-active styles
border-color: var(--ooui-progressive--hover);
&:focus {
border-color: var(--ooui-progressive--hover);
box-shadow: @ooui-box-shadow-base--focus;
}
}
// same as :hover above
> .oo-ui-buttonElement-button:active,
&.oo-ui-buttonElement-pressed > .oo-ui-buttonElement-button {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
}
&.oo-ui-flaggedElement {
&-progressive {
.mw-framed-button-colored( ~'.oo-ui-buttonElement-button', var(--ooui-text), var(--ooui-normal--hover), var(--ooui-progressive--hover), var(--ooui-accent) );
}
&-destructive {
// .mw-framed-button-colored( ~'.oo-ui-buttonElement-button', @color-destructive-non-primary, @background-color-framed--hover, @border-color-framed-destructive--hover, @color-destructive--active, @color-destructive--focus );
// since we arent changing destructive
> .oo-ui-buttonElement-button {
color: var(--ooui-text);
&:hover {
background-color: var(--ooui-normal--hover);
}
}
}
}
&.oo-ui-flaggedElement-primary {
&.oo-ui-flaggedElement {
&-progressive {
.mw-framed-primary-button-colored( ~'.oo-ui-buttonElement-button', var(--ooui-progressive), var(--ooui-progressive--hover), var(--ooui-progressive--hover), var(--ooui-accent) );
}
// dont need
// &-destructive {
// .mw-framed-primary-button-colored( ~'.oo-ui-buttonElement-button' );
// }
}
}
}
}
}
.oo-ui-pendingElement-pending {
background-image: var(--ooui-pending-background-image);
background-size: 200%;
animation: oo-ui-pendingElement-stripes 6s linear infinite;
@keyframes oo-ui-pendingElement-stripes {
100% {
background-position: 100%;
}
}
}
/* ----------------------
windows
---------------------- */
.oo-ui-messageDialog {
&-content > .oo-ui-window-foot {
outline-color: var(--ooui-interface-border);
}
&-message {
color: var(--ooui-text);
}
&-actions {
// eg ace editor "Go to line number..." window
&-horizontal .oo-ui-actionWidget {
border-right-color: var(--ooui-interface-border);
}
&-vertical .oo-ui-actionWidget {
border-bottom-color: var(--ooui-interface-border);
}
}
}
.oo-ui-processDialog {
&-content {
.oo-ui-window-head,
.oo-ui-window-foot {
outline-color: var(--ooui-interface-border);
}
}
// need to reoverride so buttons wont have weird borders
.oo-ui-actionWidget {
> .oo-ui-buttonElement-button {
border-top-color: transparent;
border-bottom-color: transparent;
&:hover,
&:active {
border-top-color: transparent;
border-bottom-color: transparent;
}
}
&:not( .oo-ui-flaggedElement-progressive ):not( .oo-ui-flaggedElement-destructive ) {
> .oo-ui-buttonElement-button {
&:hover,
&:active {
border-right-color: var(--ooui-interface-border);
border-left-color: transparent;
}
&:focus {
border-color: var(--ooui-accent);
}
}
}
}
&-actions {
&-safe,
&-other {
.oo-ui-actionWidget > .oo-ui-buttonElement-button {
border-right-color: var(--ooui-normal-border);
border-left-color: transparent;
}
}
&-safe {
.oo-ui-widget-enabled.oo-ui-iconElement:not( .oo-ui-labelElement ) {
> .oo-ui-buttonElement-button {
&:hover {
background-color: var(--ooui-normal--hover);
border-right-color: var(--ooui-interface-border);
}
}
}
}
}
}
.oo-ui-windowManager {
&-modal {
// bg behind windows
> .oo-ui-dialog {
background-color: var(--ooui-window-background);
}
// all popup windows
> .oo-ui-dialog > .oo-ui-window-frame {
background-color: var(--ooui-interface);
}
}
// window outlines
&-modal&-floating > .oo-ui-dialog > .oo-ui-window-frame {
border-color: var(--ooui-interface-border);
}
}
// we need this one to be able to adjust the font color inside windows
.oo-ui-window {
color: var(--ooui-text);
}
/* ----------------------
tools
---------------------- */
.mw-tool-colored( @child /*, @color-text*/ , @hover, @active , @focus , @active-text: @active ) {
// > @{child} {
// color: @color-text;
// }
> @{child}:hover {
background-color: @hover;
}
> @{child}:focus {
outline: 1px solid @focus;
box-shadow: inset 0 0 0 1px @focus;
}
> @{child}:active,
&.oo-ui-tool-active > @{child},
&.oo-ui-popupToolGroup-active > @{child} {
background-color: var(--ooui-normal--hover);
color: @active-text;
box-shadow: none;
}
}
.mw-primary-tool-colored( @child, @color, @hover, @active, @focus ) {
> @{child} {
// color: @ooui-color-base--inverted;
background-color: @color;
}
> @{child}:hover {
background-color: @hover;
}
> @{child}:focus {
// outline: @border-width-base @border-style-base @focus;
box-shadow: inset 0 0 0 1px @focus, inset 0 0 0 2px @ooui-color-base--inverted;
}
> @{child}:active,
&.oo-ui-tool-active > @{child} {
// color: @ooui-color-base--inverted;
background-color: @active;
// box-shadow: none;
}
// &.oo-ui-widget-disabled > @{child},
// &.oo-ui-widget-disabled > @{child}:active {
// background-color: @background-color-filled--disabled;
// color: @color-filled--disabled;
// }
}
@ooui-toolbar: var(--ooui-interface);
@ooui-toolbar-border: var(--body-mid);
// mainly used by ve and source editor
// toolbar
.oo-ui-toolbar {
&-bar {
background-color: @ooui-toolbar;
color: var(--ooui-text);
// toolbar borders
.oo-ui-toolbar-position-top > & {
border-bottom-color: @ooui-toolbar-border;
}
.oo-ui-bookletLayout > .oo-ui-menuLayout-menu {
border-right-color: @ooui-toolbar-border;
}
}
}
.oo-ui-tool {
&.oo-ui-widget-enabled {
.mw-tool-colored( ~'.oo-ui-tool-link', var(--ooui-normal--hover), var(--ooui-accent), var(--ooui-accent) );
// &.oo-ui-flaggedElement {
// &-progressive {
// .mw-tool-colored( ~'.oo-ui-tool-link', @background-color-tool--hover, @color-primary--active, @color-primary--focus );
// }
// &-destructive {
// .mw-tool-colored( ~'.oo-ui-tool-link', @color-destructive-non-primary, @background-color-tool--hover, @color-destructive--active, @color-destructive--focus );
// }
// }
&.oo-ui-flaggedElement-primary {
&.oo-ui-flaggedElement {
&-progressive {
.mw-primary-tool-colored( ~'.oo-ui-tool-link', var(--ooui-progressive), var(--ooui-progressive--hover), var(--ooui-progressive--hover), var(--ooui-accent) );
}
// &-destructive {
// .mw-primary-tool-colored( ~'.oo-ui-tool-link', @color-destructive, @color-destructive--hover, @color-destructive--active, @color-destructive--focus );
// }
}
}
}
}
.oo-ui-listToolGroup {
// eg "Page options" dropdown
&-tools .oo-ui-tool {
&.oo-ui-widget-enabled {
background-color: var(--ooui-normal);
&:hover {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
}
}
// does not match source ordering
&-active.oo-ui-widget-enabled .oo-ui-tool-link .oo-ui-tool-title {
color: var(--ooui-progressive)
}
}
}
// left-hand tool group
.oo-ui-menuToolGroup {
border-left-color: @ooui-toolbar-border;
border-right-color: @ooui-toolbar-border;
}
.oo-ui-popupToolGroup {
// dropdown menu
&-tools {
background-color: @ooui-toolbar;
border-color: @ooui-toolbar-border;
}
&.oo-ui-widget-enabled {
// eg hover "Insert"
> .oo-ui-popupToolGroup-handle {
&:hover {
background-color: var(--ooui-normal--hover);
}
&:focus {
outline: 1px solid var(--ooui-accent);
box-shadow: @ooui-box-shadow-base--focus;
}
}
// ve "Page options" again
.oo-ui-toolbar-actions & {
> .oo-ui-popupToolGroup-handle {
&:hover {
// same as button hover
border-right-color: var(--ooui-normal--hover);
}
}
}
}
// might not match source ordering
&-tools .oo-ui-tool.oo-ui-widget-enabled .oo-ui-tool-link:focus {
box-shadow: inset 0 0 0 2px var(--ooui-accent);
}
&-tools .oo-ui-tool-active.oo-ui-widget-enabled .oo-ui-tool-link .oo-ui-tool-title {
color: var(--ooui-progressive);
}
&.oo-ui-popupToolGroup-active {
> .oo-ui-popupToolGroup-handle {
// aka active
background-color: var(--ooui-normal);
color: var(--ooui-accent);
&:hover {
background-color: var(--ooui-normal--hover);
color: var(--ooui-accent);
}
}
}
}
/* ----------------------
layouts
---------------------- */
.oo-ui-bookletLayout {
&-outlinePanel {
> .oo-ui-outlineControlsWidget {
border-top-color: var(--ooui-interface-border);
}
}
// eg "Show options" in ve template editor
> .oo-ui-menuLayout-menu {
border-right-color: var(--ooui-interface-border);
}
}
.oo-ui-fieldLayout {
// disabled text color in layouts
&-disabled > .oo-ui-fieldLayout-body > .oo-ui-fieldLayout-header > .oo-ui-labelElement-label {
color: var(--ooui-disabled-text);
}
}
// ooui <fieldset>
.oo-ui-panelLayout {
&-framed {
border-color: var(--sidebar); // along with <h1/2> border
}
}
/* ----------------------
others
---------------------- */
.oo-ui-icon-settings {
background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' width='20' height='20' viewBox='0 0 20 20'%3E%3Ctitle%3Esettings%3C/title%3E%3Cg transform='translate(10 10)'%3E%3Cpath id='a' d='M1.5-10h-3l-1 6.5h5m0 7h-5l1 6.5h3'/%3E%3Cuse xlink:href='%23a' transform='rotate(45)'/%3E%3Cuse xlink:href='%23a' transform='rotate(90)'/%3E%3Cuse xlink:href='%23a' transform='rotate(135)'/%3E%3C/g%3E%3Cpath d='M10 2.5a7.5 7.5 0 0 0 0 15 7.5 7.5 0 0 0 0-15v4a3.5 3.5 0 0 1 0 7 3.5 3.5 0 0 1 0-7'/%3E%3C/svg%3E");
}
.oo-ui-icon-clear {
background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 20 20'%3E%3Ctitle%3Eclear%3C/title%3E%3Cpath d='M10 0a10 10 0 1 0 10 10A10 10 0 0 0 10 0zm5.66 14.24-1.41 1.41L10 11.41l-4.24 4.25-1.42-1.42L8.59 10 4.34 5.76l1.42-1.42L10 8.59l4.24-4.24 1.41 1.41L11.41 10z'/%3E%3C/svg%3E");
}
// --- widgets in core mediawiki ---
// DateInputWidget
.mw-widget-dateInputWidget {
&-handle {
background-color: var(--ooui-input);
color: var(--ooui-text);
border-color: var(--ooui-input-border);
}
&-calendar {
background-color: var(--ooui-interface);
}
&.oo-ui-widget-enabled .mw-widget-dateInputWidget-handle:hover {
border-color: var(--ooui-input-border--hover);
}
}
// CalendarWidget
.mw-widget-calendarWidget {
border-color: var(--ooui-interface-border);
&:focus {
border-color: var(--ooui-accent);
box-shadow: @ooui-box-shadow-base--focus;
}
// focused month
&-day,
// week day name
&-day-heading {
color: var(--ooui-text);
}
// other months
&-day-additional {
color: var(--ooui-text);
opacity: 0.67;
}
&-day-today {
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
&-item {
&:hover {
background-color: var(--ooui-progressive);
}
&-selected {
background-color: var(--ooui-progressive--hover);
}
}
}
// e.g. on [[Special:AbuseFilter/examine]]
.mw-widgets-datetime-calendarWidget {
background-color: var(--ooui-interface);
border-color: var(--ooui-interface-border);
&:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent), 0 2px 2px 0 rgba(0,0,0,0.25);
}
&-grid {
.mw-widgets-datetime-calendarWidget-cell {
&.mw-widgets-datetime-calendarWidget-extra .oo-ui-buttonElement-button {
.oo-ui-labelElement-label {
color: var(--subtle-color);
}
}
&.mw-widgets-datetime-calendarWidget-selected .oo-ui-buttonElement-button {
background-color: var(--ooui-progressive--hover);
}
}
}
}
// input box
.mw-widgets-datetime-dateTimeInputWidget {
&-handle {
background-color: var(--ooui-input);
color: var(--ooui-text);
border-color: var(--ooui-input-border);
}
&.oo-ui-widget-enabled {
&.mw-widgets-datetime-dateTimeInputWidget-handle {
&:hover {
border-color: var(--ooui-input-border--hover);
}
}
&:hover {
input,
textarea {
border-color: var(--ooui-input-border--hover);
}
}
.mw-widgets-datetime-dateTimeInputWidget-editField:hover {
background-color: var(--ooui-normal);
}
}
}
c6402ba9f1e7746542f29218c2d4e9612b14c2ea
1675
1674
2024-04-01T00:00:28Z
Merds
25
less
less
/* ======================
OOUI
====================== */
// MediaWiki documentation: <https://www.mediawiki.org/wiki/OOUI>
// Interactive documentation: <https://doc.wikimedia.org/oojs-ui/master/demos/>
// Styles repo directory: <https://github.com/wikimedia/oojs-ui/tree/master/src/themes/wikimediaui>
// Variables
@ooui-normal: #d1b9ad; /* body-mid */
@ooui-normal-border: #d1b9ad; /* body-border */
@ooui-progressive: #936243;
@ooui-box-shadow-base--focus: inset 0 0 0 1px var(--ooui-accent);
@ooui-box-shadow-input-binary--active: inset 0 0 0 1px var(--ooui-progressive--hover);
@ooui-color-base--inverted: @white;
:root {
--ooui-text: var(--text-color);
--ooui-interface: var(--body-light);
--ooui-interface-border: var(--body-border);
--ooui-window-background: rgba(255,255,255,0.5);
// use the same styles for :hover AND :active
// :focus will use the accent var
--ooui-normal: darken( @ooui-normal, 2% );
// default styles basically add +2% luminance (from #f8f9fa to #ffffff)
// there's also another hover color: #eaecf0 (like .oo-ui-tool-link:hover)
// ...but we only have one var for button hover, so we should make sure
// the color does not blend with its bg
--ooui-normal--hover: lighten(@ooui-normal, 4%);
--ooui-normal-border: @ooui-normal-border;
// use separate color for progressive buttons - BUT use link-color for
// anywhere else that uses progressive colors; this isnt the greatest idea
// and unifying them is better in the longer term
--ooui-progressive: @ooui-progressive;
--ooui-progressive--hover: lighten(@ooui-progressive, 10%);
// border and bg are the same in non-normal buttons
--ooui-accent: var(--link-color);
// probably not worth adjusting <textarea>/<input>-esque bg in light mode
--ooui-input: #fff;
--ooui-input-border: @ooui-normal-border;
--ooui-input-border--hover: darken(@ooui-normal-border, 19%);
--ooui-disabled: desaturate( lighten( @ooui-normal, 2%), 20% );
--ooui-disabled-border: desaturate( lighten( @ooui-normal-border, 10%), 12% );
--ooui-disabled-text: var(--subtle-color);
--ooui-pending-background-image: repeating-linear-gradient(-45deg, @SEARCH_BOX, @SEARCH_BOX 20px, @BODY_MAIN 20px, @BODY_MAIN 30px);
}
/* ----------------------
widgets
---------------------- */
// need this one to be able to adjust the font color inside popups and etc
.oo-ui-widget {
color: var(--ooui-text);
}
// combine checkbox and radio as theyre really similar
.oo-ui-checkboxInputWidget [type='checkbox'] + span,
.oo-ui-radioInputWidget [type='radio'] + span {
background-color: var(--ooui-input);
border-color: var(--ooui-input-border);
}
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:checked + span,
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:indeterminate + span {
background-color: var(--ooui-progressive);
border-color: var(--ooui-progressive);
}
.oo-ui-radioInputWidget.oo-ui-widget-enabled [type='radio']:checked + span {
border-color: var(--ooui-progressive);
}
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:checked:hover + span,
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:indeterminate:hover + span {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
}
.oo-ui-radioInputWidget.oo-ui-widget-enabled [type='radio']:checked:hover + span {
border-color: var(--ooui-progressive--hover);
}
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:hover + span,
.oo-ui-radioInputWidget.oo-ui-widget-enabled [type='radio']:hover + span {
border-color: var(--ooui-accent);
}
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:focus + span {
border-color: var(--ooui-accent);
box-shadow: @ooui-box-shadow-base--focus;
}
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:active + span,
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:checked:active + span,
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:indeterminate:active + span {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
box-shadow: @ooui-box-shadow-input-binary--active;
}
.oo-ui-radioInputWidget.oo-ui-widget-enabled [type='radio']:active + span {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
}
.oo-ui-radioInputWidget.oo-ui-widget-enabled [type='radio']:checked:active + span {
border-color: var(--ooui-progressive--hover);
box-shadow: @ooui-box-shadow-input-binary--active;
}
.oo-ui-radioInputWidget.oo-ui-widget-enabled [type='radio']:checked:active + span:before {
border-color: var(--ooui-progressive--hover);
}
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:checked:focus + span,
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:indeterminate:focus + span {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent), inset 0 0 0 2px #fff;
}
.oo-ui-checkboxInputWidget [type='checkbox']:disabled + span,
.oo-ui-radioInputWidget [type='radio']:disabled + span {
background-color: var(--ooui-disabled);
border-color: var(--ooui-disabled); // same as bg for both
}
.oo-ui-dropdownWidget {
&-handle {
border-color: var(--ooui-normal-border);
}
&.oo-ui-widget-enabled &-handle {
background-color: var(--ooui-normal);
color: var(--ooui-text);
&:hover {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
}
&:active {
color: var(--ooui-text);
}
&:focus {
border-color: var(--ooui-accent);
box-shadow: @ooui-box-shadow-base--focus;
}
}
&.oo-ui-widget-enabled&-open &-handle {
background-color: var(--ooui-normal--hover);
}
&.oo-ui-widget-disabled &-handle {
color: var(--ooui-disabled-text);
text-shadow: none; // wont look good on dark mode
border-color: var(--ooui-disabled-border);
background-color: var(--ooui-disabled);
}
}
// input dropdowns
.oo-ui-dropdownInputWidget {
// ooui styled dropdown thats actually an html <select>
select {
border-color: var(--ooui-normal-border);
}
option {
background-color: var(--ooui-interface);
}
&.oo-ui-widget-enabled {
background-color: var(--ooui-normal);
&:hover {
background-color: var(--ooui-normal--hover);
}
select {
color: var(--ooui-text);
&:hover,
&:active {
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
}
&:focus {
border-color: var(--ooui-accent);
box-shadow: @ooui-box-shadow-base--focus;
}
// there's a `oo-ui-indicator-down` class here that adds the pointer
// icon, it's not a separate element so invert filter for dark mode
// is infeasible
}
}
}
// in Special:Preferences
.oo-ui-labelWidget {
&.oo-ui-inline-help {
color: var(--byline-color);
}
}
// dropdown selection menu
.oo-ui-menuSelectWidget {
background-color: var(--ooui-interface);
border-color: var(--ooui-interface-border);
&-frameless {
box-shadow: inset 0 -1px 0 0 var(--ooui-normal-border);
}
}
.oo-ui-menuSectionOptionWidget {
color: var(--byline-color);
}
// options eg. on page deletion/move
.oo-ui-menuOptionWidget {
// hover
&.oo-ui-optionWidget {
// hover and selected option
&-highlighted,
// combined
&-selected {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
}
// hover on chosen option
&-selected&-highlighted,
&-pressed&-highlighted {
color: var(--ooui-accent);
}
}
// hover again
&.oo-ui-widget-enabled {
&.oo-ui-optionWidget {
color: var(--ooui-text);
}
}
// highlight & hover eg page deletion reason
// &.oo-ui-optionWidget-selected&.oo-ui-optionWidget-highlighted,
// &.oo-ui-optionWidget-pressed&.oo-ui-optionWidget-highlighted {
//
// }
}
.oo-ui-messageDialog {
// eg exiting out editor without saving the edit modal
&-title {
color: inherit;
}
}
.oo-ui-messageWidget {
// all .messagebox like boxes
&.oo-ui-messageWidget-block {
// matching .errorbox
&.oo-ui-flaggedElement-error {
background-color: var(--errorbox-bg);
border-color: var(--errorbox-border);
}
// eg warning when there's templatedata when editing a template
// matching .warningbox
&.oo-ui-flaggedElement-warning {
background-color: var(--warningbox-bg);
border-color: var(--warningbox-border);
}
// matching .successbox
&.oo-ui-flaggedElement-success {
background-color: var(--successbox-bg);
border-color: var(--successbox-border);
}
&.oo-ui-flaggedElement-notice {
background-color: var(--messagebox-info-background);
border-color: var(--messagebox-info-border);
}
}
// ideally we would use our own success and error colors, but this will do for now
&.oo-ui-flaggedElement-error:not(.oo-ui-messageWidget-block),
&.oo-ui-flaggedElement-success:not(.oo-ui-messageWidget-block) {
color: var(--ooui-text);
}
}
.oo-ui-optionWidget {
&.oo-ui-widget-disabled {
color: var(--ooui-disabled-text);
}
}
.oo-ui-outlineControlsWidget {
background-color: var(--ooui-normal);
}
// eg in ve "Options" window
.oo-ui-outlineOptionWidget {
&.oo-ui-optionWidget-highlighted {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
}
}
.oo-ui-popupWidget {
// Popups eg when interacting with templates in ve
&-popup {
background-color: var(--ooui-interface);
border-color: var(--ooui-interface-border);
}
// popups anchors/arrow
.ooui-anchor(@direction) {
.oo-ui-popupWidget-anchor:after {
border-@{direction}-color: var(--ooui-interface);
}
.oo-ui-popupWidget-anchor:before {
border-@{direction}-color: var(--ooui-interface-border);
}
}
&-anchored- {
&top {
.ooui-anchor(bottom);
}
&bottom {
.ooui-anchor(top);
}
&start {
.ooui-anchor(right);
}
&end {
.ooui-anchor(left);
}
}
}
.oo-ui-searchWidget-query {
border-bottom-color: var(--ooui-interface-border);
}
.oo-ui-selectFileWidget {
&-dropTarget {
background-color: var(--ooui-interface);
border-color: var(--ooui-interface-border);
}
&.oo-ui-widget-enabled {
&.oo-ui-selectFileWidget-dropTarget {
background-color: var(--ooui-interface);
&:hover {
border-color: var(--ooui-input-border--hover);
}
}
}
}
.oo-ui-tabOptionWidget {
color: var(--ooui-text);
.oo-ui-tabSelectWidget-framed & {
&.oo-ui-optionWidget-selected {
background-color: var(--body-dark);
color: var(--ooui-text);
& .oo-ui-labelElement-label {
border-bottom-color: var(--body-border);
}
}
&.oo-ui-widget-enabled {
&:hover,
&:active {
background-color: var(--body-light);
color: var(--ooui-text);
}
&.oo-ui-optionWidget-selected:hover {
background-color: var(--body-dark);
}
}
}
.oo-ui-tabSelectWidget-frameless & {
&.oo-ui-optionWidget-selected {
color: var(--ooui-progressive);
box-shadow: inset 0 -2px 0 0 var(--ooui-progressive);
&:hover,
&:focus {
color: var(--ooui-progressive--hover);
box-shadow: inset 0 -2px 0 0 var(--ooui-progressive--hover);
}
}
}
}
.oo-ui-tabSelectWidget {
// eg used on [[Special:Preferences]]
&-framed {
background: none; // actually uses something like --ooui-interface
border-bottom: 1px solid var(--ooui-interface-border); // our customisation
}
// used in TabberNeue (even though we dont have it)
&-frameless {
box-shadow: inset 0 -1px 0 0 var(--ooui-interface-border);
}
&-mobile {
// both use the following mixin in core; but we already have a similar
// var in minerva.css for these stuff already used in navboxes
/*
.oo-ui-horizontal-gradient( @startColor: #eee, @endColor: #fff, @startPos: 0, @endPos: 100% ) {
background-color: average( @startColor, @endColor );
background-image: linear-gradient( to right, @startColor @startPos, @endColor @endPos );
}
*/
&.oo-ui-tabSelectWidget-framed:after {
// background instead of -image so the prev properties used as
// fallback for ancient browsers are reset
background: var(--mobile-navbox-linear-gradient);
}
&.oo-ui-tabSelectWidget-frameless:after {
background: var(--mobile-navbox-linear-gradient);
}
}
}
// eg recent changes selected filter tag
.oo-ui-tagItemWidget {
border-color: var(--ooui-normal-border);
&.oo-ui-widget-enabled {
color: var(--ooui-text);
&:hover {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
}
&:not( .oo-ui-tagItemWidget-fixed ) {
background-color: var(--ooui-normal);
}
& .oo-ui-buttonElement-button {
&:hover {
background-color: var(--ooui-normal--hover);
}
}
}
}
.oo-ui-tagMultiselectWidget {
// rc/watchlist filter box
&.oo-ui-widget-enabled {
background-color: var(--ooui-interface);
// and again - this time it's button bg
&.oo-ui-tagMultiselectWidget-outlined {
background-color: var(--ooui-normal);
.oo-ui-tagItemWidget.oo-ui-widget-enabled {
background-color: var(--ooui-interface);
}
}
}
}
.oo-ui-textInputWidget {
// eg RecentChanges filter changes input
.oo-ui-inputWidget-input {
background-color: var(--ooui-input);
color: var(--ooui-text);
border-color: var(--ooui-input-border);
}
&.oo-ui-widget-enabled {
.oo-ui-inputWidget-input {
&::placeholder {
color: var(--subtle-color);
}
&:focus {
border-color: var(--ooui-accent);
box-shadow: @ooui-box-shadow-base--focus;
}
&[readonly]:not(.oo-ui-pendingElement-pending) {
background-color: var(--ooui-disabled);
color: var(--ooui-disabled-text);
}
}
&:hover {
.oo-ui-inputWidget-input {
border-color: var(--ooui-input-border--hover);
&:focus {
border-color: var(--ooui-accent);
}
}
}
@media screen {
@media ( min-width: 0 ) {
textarea.oo-ui-inputWidget-input:focus {
outline: 1px solid var(--ooui-accent);
}
}
}
}
&.oo-ui-widget-disabled {
.oo-ui-inputWidget-input {
background-color: var(--ooui-disabled);
color: var(--ooui-disabled-text);
text-shadow: none; // wont look good on dark mode
border-color: var(--ooui-disabled-border);
}
}
}
.oo-ui-toggleSwitchWidget {
background-color: var(--ooui-input);
border-color: var(--ooui-input-border);
&.oo-ui-widget-enabled {
.oo-ui-toggleSwitchWidget-grip {
background-color: var(--ooui-input);
border-color: var(--ooui-input-border);
}
&:hover {
background-color: var(--ooui-input);
border-color: var(--ooui-accent);
.oo-ui-toggleSwitchWidget-grip {
background-color: var(--ooui-input);
border-color: var(--ooui-accent);
}
}
&:active,
&:active:hover,
&:active:focus {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
box-shadow: @ooui-box-shadow-input-binary--active;
.oo-ui-toggleSwitchWidget-grip {
background-color: var(--ooui-input);
border-color: var(--ooui-input);
}
}
&:focus {
border-color: var(--ooui-accent);
box-shadow: @ooui-box-shadow-base--focus;
.oo-ui-toggleSwitchWidget-grip {
border-color: var(--ooui-accent);
}
}
&.oo-ui-toggleWidget-on {
background-color: var(--ooui-progressive);
border-color: var(--ooui-progressive);
.oo-ui-toggleSwitchWidget-grip {
background-color: var(--ooui-input);
border-color: var(--ooui-input);
}
&:hover {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
}
&:active,
&:active:hover {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
}
&:focus {
border-color: var(--ooui-progressive);
&::before {
border-color: @ooui-color-base--inverted;
}
}
}
}
&.oo-ui-widget-disabled {
background-color: var(--ooui-disabled);
border-color: var(--ooui-disabled); // same as bg
}
}
/* ----------------------
elements/buttons
---------------------- */
// mixin for frameless progressive/destructive button
.mw-frameless-button-colored( @child, @color-text ) {
> @{child},
// no distinct color for hover
> @{child}:hover {
color: @color-text;
}
> @{child}:active,
&.oo-ui-buttonElement-pressed > @{child} {
// dont differentiate between :active and normal
color: @color-text;
border-color: @color-text;
}
}
.mw-framed-button-colored( @child, @color-text, @hover, @border-color--hover, /* @active,*/ @focus ) {
> @{child} {
color: @color-text;
}
> @{child}:hover {
background-color: @hover;
border-color: @border-color--hover;
}
> @{child}:focus {
border-color: @focus;
box-shadow: inset 0 0 0 1px @focus;
}
/* ugh uses lighten()
> @{child}:active,
&.oo-ui-buttonElement-pressed > @{child},
&.oo-ui-buttonElement-active > @{child},
&.oo-ui-popupToolGroup-active > @{child} {
background-color: lighten( @active, 60% );
color: @active;
border-color: @active;
}
*/
}
// mixin for framed progressive/destructive button
.mw-framed-primary-button-colored( @child, @color, @hover, @active, @focus ) {
> @{child} {
background-color: @color;
border-color: @color;
}
> @{child}:hover {
background-color: @hover;
border-color: @hover;
}
> @{child}:focus {
border-color: @focus;
box-shadow: inset 0 0 0 1px @focus, inset 0 0 0 2px @ooui-color-base--inverted;
}
> @{child}:active,
&.oo-ui-buttonElement-pressed > @{child},
&.oo-ui-buttonElement-active > @{child},
&.oo-ui-popupToolGroup-active > @{child} {
color: @ooui-color-base--inverted;
background-color: @active;
border-color: @active;
}
}
.oo-ui-buttonElement {
&-frameless {
&.oo-ui-widget-enabled {
> .oo-ui-buttonElement-button {
color: var(--ooui-text);
&:hover {
color: var(--ooui-text);
}
&:focus {
border-color: var(--ooui-accent);
box-shadow: @ooui-box-shadow-base--focus;
}
}
&.oo-ui-buttonElement-pressed > input.oo-ui-buttonElement-button,
> .oo-ui-buttonElement-button:active {
color: var(--ooui-text);
}
&.oo-ui-flaggedElement {
&-progressive {
.mw-frameless-button-colored( ~'.oo-ui-buttonElement-button', var(--ooui-text) ); // try out using text color as the button label like hard-coded darkmode
}
// not needed
// &-destructive {
// .mw-frameless-button-colored( ~'.oo-ui-buttonElement-button' );
// }
}
}
&.oo-ui-widget-disabled {
> .oo-ui-buttonElement-button {
color: var(--ooui-disabled-text);
}
}
}
&-framed {
&.oo-ui-widget-disabled {
> .oo-ui-buttonElement-button {
background-color: var(--ooui-disabled);
border-color: var(--ooui-disabled-border);
}
}
&.oo-ui-widget-enabled {
> .oo-ui-buttonElement-button {
background-color: var(--ooui-normal);
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
&:hover {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
}
&:focus {
border-color: var(--ooui-accent);
box-shadow: @ooui-box-shadow-base--focus;
}
}
&.oo-ui-buttonElement-active > .oo-ui-buttonElement-button {
background-color: var(--ooui-progressive--hover);
color: #fff; // needed, else it would be overriden by non-active styles
border-color: var(--ooui-progressive--hover);
&:focus {
border-color: var(--ooui-progressive--hover);
box-shadow: @ooui-box-shadow-base--focus;
}
}
// same as :hover above
> .oo-ui-buttonElement-button:active,
&.oo-ui-buttonElement-pressed > .oo-ui-buttonElement-button {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
}
&.oo-ui-flaggedElement {
&-progressive {
.mw-framed-button-colored( ~'.oo-ui-buttonElement-button', var(--ooui-text), var(--ooui-normal--hover), var(--ooui-progressive--hover), var(--ooui-accent) );
}
&-destructive {
// .mw-framed-button-colored( ~'.oo-ui-buttonElement-button', @color-destructive-non-primary, @background-color-framed--hover, @border-color-framed-destructive--hover, @color-destructive--active, @color-destructive--focus );
// since we arent changing destructive
> .oo-ui-buttonElement-button {
color: var(--ooui-text);
&:hover {
background-color: var(--ooui-normal--hover);
}
}
}
}
&.oo-ui-flaggedElement-primary {
&.oo-ui-flaggedElement {
&-progressive {
.mw-framed-primary-button-colored( ~'.oo-ui-buttonElement-button', var(--ooui-progressive), var(--ooui-progressive--hover), var(--ooui-progressive--hover), var(--ooui-accent) );
}
// dont need
// &-destructive {
// .mw-framed-primary-button-colored( ~'.oo-ui-buttonElement-button' );
// }
}
}
}
}
}
.oo-ui-pendingElement-pending {
background-image: var(--ooui-pending-background-image);
background-size: 200%;
animation: oo-ui-pendingElement-stripes 6s linear infinite;
@keyframes oo-ui-pendingElement-stripes {
100% {
background-position: 100%;
}
}
}
/* ----------------------
windows
---------------------- */
.oo-ui-messageDialog {
&-content > .oo-ui-window-foot {
outline-color: var(--ooui-interface-border);
}
&-message {
color: var(--ooui-text);
}
&-actions {
// eg ace editor "Go to line number..." window
&-horizontal .oo-ui-actionWidget {
border-right-color: var(--ooui-interface-border);
}
&-vertical .oo-ui-actionWidget {
border-bottom-color: var(--ooui-interface-border);
}
}
}
.oo-ui-processDialog {
&-content {
.oo-ui-window-head,
.oo-ui-window-foot {
outline-color: var(--ooui-interface-border);
}
}
// need to reoverride so buttons wont have weird borders
.oo-ui-actionWidget {
> .oo-ui-buttonElement-button {
border-top-color: transparent;
border-bottom-color: transparent;
&:hover,
&:active {
border-top-color: transparent;
border-bottom-color: transparent;
}
}
&:not( .oo-ui-flaggedElement-progressive ):not( .oo-ui-flaggedElement-destructive ) {
> .oo-ui-buttonElement-button {
&:hover,
&:active {
border-right-color: var(--ooui-interface-border);
border-left-color: transparent;
}
&:focus {
border-color: var(--ooui-accent);
}
}
}
}
&-actions {
&-safe,
&-other {
.oo-ui-actionWidget > .oo-ui-buttonElement-button {
border-right-color: var(--ooui-normal-border);
border-left-color: transparent;
}
}
&-safe {
.oo-ui-widget-enabled.oo-ui-iconElement:not( .oo-ui-labelElement ) {
> .oo-ui-buttonElement-button {
&:hover {
background-color: var(--ooui-normal--hover);
border-right-color: var(--ooui-interface-border);
}
}
}
}
}
}
.oo-ui-windowManager {
&-modal {
// bg behind windows
> .oo-ui-dialog {
background-color: var(--ooui-window-background);
}
// all popup windows
> .oo-ui-dialog > .oo-ui-window-frame {
background-color: var(--ooui-interface);
}
}
// window outlines
&-modal&-floating > .oo-ui-dialog > .oo-ui-window-frame {
border-color: var(--ooui-interface-border);
}
}
// we need this one to be able to adjust the font color inside windows
.oo-ui-window {
color: var(--ooui-text);
}
/* ----------------------
tools
---------------------- */
.mw-tool-colored( @child /*, @color-text*/ , @hover, @active , @focus , @active-text: @active ) {
// > @{child} {
// color: @color-text;
// }
> @{child}:hover {
background-color: @hover;
}
> @{child}:focus {
outline: 1px solid @focus;
box-shadow: inset 0 0 0 1px @focus;
}
> @{child}:active,
&.oo-ui-tool-active > @{child},
&.oo-ui-popupToolGroup-active > @{child} {
background-color: var(--ooui-normal--hover);
color: @active-text;
box-shadow: none;
}
}
.mw-primary-tool-colored( @child, @color, @hover, @active, @focus ) {
> @{child} {
// color: @ooui-color-base--inverted;
background-color: @color;
}
> @{child}:hover {
background-color: @hover;
}
> @{child}:focus {
// outline: @border-width-base @border-style-base @focus;
box-shadow: inset 0 0 0 1px @focus, inset 0 0 0 2px @ooui-color-base--inverted;
}
> @{child}:active,
&.oo-ui-tool-active > @{child} {
// color: @ooui-color-base--inverted;
background-color: @active;
// box-shadow: none;
}
// &.oo-ui-widget-disabled > @{child},
// &.oo-ui-widget-disabled > @{child}:active {
// background-color: @background-color-filled--disabled;
// color: @color-filled--disabled;
// }
}
@ooui-toolbar: var(--ooui-interface);
@ooui-toolbar-border: var(--body-mid);
// mainly used by ve and source editor
// toolbar
.oo-ui-toolbar {
&-bar {
background-color: @ooui-toolbar;
color: var(--ooui-text);
// toolbar borders
.oo-ui-toolbar-position-top > & {
border-bottom-color: @ooui-toolbar-border;
}
.oo-ui-bookletLayout > .oo-ui-menuLayout-menu {
border-right-color: @ooui-toolbar-border;
}
}
}
.oo-ui-tool {
&.oo-ui-widget-enabled {
.mw-tool-colored( ~'.oo-ui-tool-link', var(--ooui-normal--hover), var(--ooui-accent), var(--ooui-accent) );
// &.oo-ui-flaggedElement {
// &-progressive {
// .mw-tool-colored( ~'.oo-ui-tool-link', @background-color-tool--hover, @color-primary--active, @color-primary--focus );
// }
// &-destructive {
// .mw-tool-colored( ~'.oo-ui-tool-link', @color-destructive-non-primary, @background-color-tool--hover, @color-destructive--active, @color-destructive--focus );
// }
// }
&.oo-ui-flaggedElement-primary {
&.oo-ui-flaggedElement {
&-progressive {
.mw-primary-tool-colored( ~'.oo-ui-tool-link', var(--ooui-progressive), var(--ooui-progressive--hover), var(--ooui-progressive--hover), var(--ooui-accent) );
}
// &-destructive {
// .mw-primary-tool-colored( ~'.oo-ui-tool-link', @color-destructive, @color-destructive--hover, @color-destructive--active, @color-destructive--focus );
// }
}
}
}
}
.oo-ui-listToolGroup {
// eg "Page options" dropdown
&-tools .oo-ui-tool {
&.oo-ui-widget-enabled {
background-color: var(--ooui-normal);
&:hover {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
}
}
// does not match source ordering
&-active.oo-ui-widget-enabled .oo-ui-tool-link .oo-ui-tool-title {
color: var(--ooui-progressive)
}
}
}
// left-hand tool group
.oo-ui-menuToolGroup {
border-left-color: @ooui-toolbar-border;
border-right-color: @ooui-toolbar-border;
}
.oo-ui-popupToolGroup {
// dropdown menu
&-tools {
background-color: @ooui-toolbar;
border-color: @ooui-toolbar-border;
}
&.oo-ui-widget-enabled {
// eg hover "Insert"
> .oo-ui-popupToolGroup-handle {
&:hover {
background-color: var(--ooui-normal--hover);
}
&:focus {
outline: 1px solid var(--ooui-accent);
box-shadow: @ooui-box-shadow-base--focus;
}
}
// ve "Page options" again
.oo-ui-toolbar-actions & {
> .oo-ui-popupToolGroup-handle {
&:hover {
// same as button hover
border-right-color: var(--ooui-normal--hover);
}
}
}
}
// might not match source ordering
&-tools .oo-ui-tool.oo-ui-widget-enabled .oo-ui-tool-link:focus {
box-shadow: inset 0 0 0 2px var(--ooui-accent);
}
&-tools .oo-ui-tool-active.oo-ui-widget-enabled .oo-ui-tool-link .oo-ui-tool-title {
color: var(--ooui-progressive);
}
&.oo-ui-popupToolGroup-active {
> .oo-ui-popupToolGroup-handle {
// aka active
background-color: var(--ooui-normal);
color: var(--ooui-accent);
&:hover {
background-color: var(--ooui-normal--hover);
color: var(--ooui-accent);
}
}
}
}
/* ----------------------
layouts
---------------------- */
.oo-ui-bookletLayout {
&-outlinePanel {
> .oo-ui-outlineControlsWidget {
border-top-color: var(--ooui-interface-border);
}
}
// eg "Show options" in ve template editor
> .oo-ui-menuLayout-menu {
border-right-color: var(--ooui-interface-border);
}
}
.oo-ui-fieldLayout {
// disabled text color in layouts
&-disabled > .oo-ui-fieldLayout-body > .oo-ui-fieldLayout-header > .oo-ui-labelElement-label {
color: var(--ooui-disabled-text);
}
}
// ooui <fieldset>
.oo-ui-panelLayout {
&-framed {
border-color: var(--sidebar); // along with <h1/2> border
}
}
/* ----------------------
others
---------------------- */
.oo-ui-icon-settings {
background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' width='20' height='20' viewBox='0 0 20 20'%3E%3Ctitle%3Esettings%3C/title%3E%3Cg transform='translate(10 10)'%3E%3Cpath id='a' d='M1.5-10h-3l-1 6.5h5m0 7h-5l1 6.5h3'/%3E%3Cuse xlink:href='%23a' transform='rotate(45)'/%3E%3Cuse xlink:href='%23a' transform='rotate(90)'/%3E%3Cuse xlink:href='%23a' transform='rotate(135)'/%3E%3C/g%3E%3Cpath d='M10 2.5a7.5 7.5 0 0 0 0 15 7.5 7.5 0 0 0 0-15v4a3.5 3.5 0 0 1 0 7 3.5 3.5 0 0 1 0-7'/%3E%3C/svg%3E");
}
.oo-ui-icon-clear {
background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 20 20'%3E%3Ctitle%3Eclear%3C/title%3E%3Cpath d='M10 0a10 10 0 1 0 10 10A10 10 0 0 0 10 0zm5.66 14.24-1.41 1.41L10 11.41l-4.24 4.25-1.42-1.42L8.59 10 4.34 5.76l1.42-1.42L10 8.59l4.24-4.24 1.41 1.41L11.41 10z'/%3E%3C/svg%3E");
}
// --- widgets in core mediawiki ---
// DateInputWidget
.mw-widget-dateInputWidget {
&-handle {
background-color: var(--ooui-input);
color: var(--ooui-text);
border-color: var(--ooui-input-border);
}
&-calendar {
background-color: var(--ooui-interface);
}
&.oo-ui-widget-enabled .mw-widget-dateInputWidget-handle:hover {
border-color: var(--ooui-input-border--hover);
}
}
// CalendarWidget
.mw-widget-calendarWidget {
border-color: var(--ooui-interface-border);
&:focus {
border-color: var(--ooui-accent);
box-shadow: @ooui-box-shadow-base--focus;
}
// focused month
&-day,
// week day name
&-day-heading {
color: var(--ooui-text);
}
// other months
&-day-additional {
color: var(--ooui-text);
opacity: 0.67;
}
&-day-today {
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
&-item {
&:hover {
background-color: var(--ooui-progressive);
}
&-selected {
background-color: var(--ooui-progressive--hover);
}
}
}
// e.g. on [[Special:AbuseFilter/examine]]
.mw-widgets-datetime-calendarWidget {
background-color: var(--ooui-interface);
border-color: var(--ooui-interface-border);
&:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent), 0 2px 2px 0 rgba(0,0,0,0.25);
}
&-grid {
.mw-widgets-datetime-calendarWidget-cell {
&.mw-widgets-datetime-calendarWidget-extra .oo-ui-buttonElement-button {
.oo-ui-labelElement-label {
color: var(--subtle-color);
}
}
&.mw-widgets-datetime-calendarWidget-selected .oo-ui-buttonElement-button {
background-color: var(--ooui-progressive--hover);
}
}
}
}
// input box
.mw-widgets-datetime-dateTimeInputWidget {
&-handle {
background-color: var(--ooui-input);
color: var(--ooui-text);
border-color: var(--ooui-input-border);
}
&.oo-ui-widget-enabled {
&.mw-widgets-datetime-dateTimeInputWidget-handle {
&:hover {
border-color: var(--ooui-input-border--hover);
}
}
&:hover {
input,
textarea {
border-color: var(--ooui-input-border--hover);
}
}
.mw-widgets-datetime-dateTimeInputWidget-editField:hover {
background-color: var(--ooui-normal);
}
}
}
d52e748824997f9c7a0f82895d0334aa2e7cab1a
MediaWiki:Common.less/templates.less
8
25
1677
938
2024-04-01T01:01:55Z
Merds
25
less
less
/* ==================
TEMPLATES
==================*/
:root {
--keypress-background: @gallery;
--keypress-border: @silver;
--keypress-color: @mineshaft;
}
// TOC
.toc {
.toctitle > * {
color: @white;
}
}
// NAVBOX
.navbox {
.navbox-title {
color: @white;
}
}
// Template:Archive list
.archivelist {
background-color: @infobox-background;
border: solid 1px @infobox-border-color;
box-shadow: @box-shadow;
float: right;
margin: 5px;
padding: 5px;
text-align: center;
width: 120px;
}
// Template:Shortcut
.shortcut {
border: 1px solid @infobox-border-color;
background: @infobox-background;
float: right;
font-size: .8em;
margin: 0.5em 0em 0.5em 1em;
padding: 0.5em;
text-align: center;
}
// Hatnotes: [[Module:Hatnote]]
.hatnote,
.seealso {
font-style: italic;
i {
font-style: normal;
}
}
// two classes - hatnote gets much customisation in minerva but seealso doesnt
div.hatnote,
div.seealso {
// 0.5em is <p>'s top and bottom margin
// 1.6em to match <dd>/<ul> indent
margin: .5em 1.6em;
& + & {
margin-top: -0.5em;
}
}
// Template:Key press
.keypress {
background: var(--keypress-background);
color: var(--keypress-color);
font-family: inherit;
border: 1px solid var(--keypress-border);
border-radius: @border-radius;
font-size: 0.9em;
margin: 0 0.1em;
padding: 0.1em 0.4em;
white-space: nowrap;
}
01ad105ec996ef92464fa9ca9780128a0fd50e12
1679
1677
2024-04-01T01:03:18Z
Merds
25
less
less
/* ==================
TEMPLATES
==================*/
:root {
--keypress-background: @gallery;
--keypress-border: @silver;
--keypress-color: @mineshaft;
}
// TOC
.toc {
.toctitle > * {
color: @white;
}
}
// NAVBOX
.navbox {
.navbox-title {
color: @white;
}
.navbox-list {
&:not:(last-child) {
border-bottom: none;
}
}
}
// Template:Archive list
.archivelist {
background-color: @infobox-background;
border: solid 1px @infobox-border-color;
box-shadow: @box-shadow;
float: right;
margin: 5px;
padding: 5px;
text-align: center;
width: 120px;
}
// Template:Shortcut
.shortcut {
border: 1px solid @infobox-border-color;
background: @infobox-background;
float: right;
font-size: .8em;
margin: 0.5em 0em 0.5em 1em;
padding: 0.5em;
text-align: center;
}
// Hatnotes: [[Module:Hatnote]]
.hatnote,
.seealso {
font-style: italic;
i {
font-style: normal;
}
}
// two classes - hatnote gets much customisation in minerva but seealso doesnt
div.hatnote,
div.seealso {
// 0.5em is <p>'s top and bottom margin
// 1.6em to match <dd>/<ul> indent
margin: .5em 1.6em;
& + & {
margin-top: -0.5em;
}
}
// Template:Key press
.keypress {
background: var(--keypress-background);
color: var(--keypress-color);
font-family: inherit;
border: 1px solid var(--keypress-border);
border-radius: @border-radius;
font-size: 0.9em;
margin: 0 0.1em;
padding: 0.1em 0.4em;
white-space: nowrap;
}
07f1f2b273c67f93774a9c1b1f71cbc03f0ac525
1680
1679
2024-04-01T01:04:26Z
Merds
25
less
less
/* ==================
TEMPLATES
==================*/
:root {
--keypress-background: @gallery;
--keypress-border: @silver;
--keypress-color: @mineshaft;
}
// TOC
.toc {
.toctitle > * {
color: @white;
}
}
// NAVBOX
.navbox {
.navbox-title {
color: @white;
}
.navbox-list {
&:not(last-child) {
border-bottom: none;
}
}
}
// Template:Archive list
.archivelist {
background-color: @infobox-background;
border: solid 1px @infobox-border-color;
box-shadow: @box-shadow;
float: right;
margin: 5px;
padding: 5px;
text-align: center;
width: 120px;
}
// Template:Shortcut
.shortcut {
border: 1px solid @infobox-border-color;
background: @infobox-background;
float: right;
font-size: .8em;
margin: 0.5em 0em 0.5em 1em;
padding: 0.5em;
text-align: center;
}
// Hatnotes: [[Module:Hatnote]]
.hatnote,
.seealso {
font-style: italic;
i {
font-style: normal;
}
}
// two classes - hatnote gets much customisation in minerva but seealso doesnt
div.hatnote,
div.seealso {
// 0.5em is <p>'s top and bottom margin
// 1.6em to match <dd>/<ul> indent
margin: .5em 1.6em;
& + & {
margin-top: -0.5em;
}
}
// Template:Key press
.keypress {
background: var(--keypress-background);
color: var(--keypress-color);
font-family: inherit;
border: 1px solid var(--keypress-border);
border-radius: @border-radius;
font-size: 0.9em;
margin: 0 0.1em;
padding: 0.1em 0.4em;
white-space: nowrap;
}
72a9272f17ac98afd882f7ef92c7a7b5f78e6ec7
MediaWiki:Common.less/tiles.less
8
50
1683
1571
2024-04-01T01:18:49Z
Merds
25
less
less
/* ---------------------
tiles
--------------------- */
// mainpage.less relies on this; check before changing anything
:root {
--byline-arrow-filter: invert(29%) sepia(0%) saturate(376%) hue-rotate(172deg) brightness(87%) contrast(80%); // match --byline-color
--tile-border-color: @BODY_DARK;
--tile-background-color: @BODY_DARK;
--tile-link-button-color: #f5e9db;
--tile-link-button-highlight-color: saturate( darken( #e2d2ba, 2.5% ), 2% );
--tile-dark-color: @white;
--tile-dark-bg: @BODY_DARK;
--tile-dark-link-color: #ccc;
--tile-dark-byline-color: fade( @white, 70% );
--tile-dark-header-color: @white;
}
.tile {
background: var(--tile-background-color);
border: 1px solid var(--tile-border-color);
box-shadow: @box-shadow;
padding: 1.5em 2em 1em;
max-width: 40em;
h2 {
font-size: 1.4em;
font-weight: bold;
border: none;
margin: 0 0 .4em;
}
// reduce spacing when byline and heading appear together
// (which should be the only way bylines appear)
.byline + h2 {
margin-top: -0.5em;
}
&.dark {
color: var(--tile-dark-color);
background: var(--tile-dark-bg);
border: none;
box-shadow: @box-shadow-dark;
h2 {
color: var(--tile-dark-header-color);
}
a {
color: var(--tile-dark-link-color);
}
.byline {
color: var(--tile-dark-byline-color);
}
}
}
.byline {
font-size: .9em;
color: var(--byline-color);
a {
color: var(--byline-color);
}
}
/* ---------------------
tile halves
--------------------- */
// contains .tile or .tile-halves
.tile-row {
display: flex;
flex-flow: row wrap;
margin-bottom: 1em;
}
.tile-halves {
display: flex;
flex-flow: row wrap;
background: var(--tile-background-color);
box-shadow: @box-shadow;
h2 {
font-size: 1.4em;
font-weight: bold;
border: none;
margin: 0 0 .4em;
}
.byline + h2 {
margin-top: -0.5em;
}
}
// goes inside .tile-halves
.tile-top {
width: 100%;
padding: 1.3rem 1.5rem .6rem;
&.tile-image {
display: flex;
align-items: center; // vertically center images
background-color: var(--body-light);
overflow: hidden;
padding: 0;
height: 13vw;
max-height: 12em;
transition: .4s ease-out;
.tile-halves:hover & img {
transform: scale(1.1);
transition: .5s ease-out;
}
a {
width: 100%;
}
img {
width: 100%;
object-fit: cover;
max-height: 200px;
transition: .4s ease-out;
}
}
}
// goes inside .tile-halves
.tile-bottom {
background: var(--tile-background-color);
width: 100%;
padding: 1rem 1.5rem .6rem;
h2 {
a {
color: @white;
}
}
&.link-button {
align-self: flex-end; // have link stick to the bottom
padding: 0;
a {
display: block;
text-align: center;
padding: .75em 1.5em .8em;
text-decoration: none;
}
}
// must be used in conjunction with .link-button
&.read-more {
background: var(--tile-link-button-color);
transition: .3s ease-out;
a {
color: var(--byline-color);
font-weight: bold;
text-align: right;
}
&:hover {
background: var(--tile-link-button-highlight-color);
.arrow {
transform: translateX(50%);
}
}
.arrow {
filter: var(--byline-arrow-filter);
margin-left: .4em;
transition: .3s ease-out;
}
}
}
f47e5d896f4b587bd3847572ad32c079789b3e05
1687
1683
2024-04-01T01:24:27Z
Merds
25
less
less
/* ---------------------
tiles
--------------------- */
// mainpage.less relies on this; check before changing anything
:root {
--byline-arrow-filter: invert(29%) sepia(0%) saturate(376%) hue-rotate(172deg) brightness(87%) contrast(80%); // match --byline-color
--tile-border-color: @BODY_BORDER;
--tile-background-color: @BODY_LIGHT;
--tile-link-button-color: #f5e9db;
--tile-link-button-highlight-color: saturate( darken( #e2d2ba, 2.5% ), 2% );
--tile-dark-color: @white;
--tile-dark-bg: @BODY_DARK;
--tile-dark-link-color: #ccc;
--tile-dark-byline-color: fade( @white, 70% );
--tile-dark-header-color: @white;
}
.tile {
background: var(--tile-background-color);
border: 1px solid var(--tile-border-color);
box-shadow: @box-shadow;
padding: 1.5em 2em 1em;
max-width: 40em;
h2 {
font-size: 1.4em;
font-weight: bold;
border: none;
margin: 0 0 .4em;
}
// reduce spacing when byline and heading appear together
// (which should be the only way bylines appear)
.byline + h2 {
margin-top: -0.5em;
}
&.dark {
color: var(--tile-dark-color);
background: var(--tile-dark-bg);
border: none;
box-shadow: @box-shadow-dark;
h2 {
color: var(--tile-dark-header-color);
}
a {
color: var(--tile-dark-link-color);
}
.byline {
color: var(--tile-dark-byline-color);
}
}
}
.byline {
font-size: .9em;
color: var(--byline-color);
a {
color: var(--byline-color);
}
}
/* ---------------------
tile halves
--------------------- */
// contains .tile or .tile-halves
.tile-row {
display: flex;
flex-flow: row wrap;
margin-bottom: 1em;
}
.tile-halves {
display: flex;
flex-flow: row wrap;
background: var(--tile-background-color);
box-shadow: @box-shadow;
h2 {
font-size: 1.4em;
font-weight: bold;
border: none;
margin: 0 0 .4em;
}
.byline + h2 {
margin-top: -0.5em;
}
}
// goes inside .tile-halves
.tile-top {
width: 100%;
padding: 1.3rem 1.5rem .6rem;
&.tile-image {
display: flex;
align-items: center; // vertically center images
background-color: var(--body-light);
overflow: hidden;
padding: 0;
height: 13vw;
max-height: 12em;
transition: .4s ease-out;
.tile-halves:hover & img {
transform: scale(1.1);
transition: .5s ease-out;
}
a {
width: 100%;
}
img {
width: 100%;
object-fit: cover;
max-height: 200px;
transition: .4s ease-out;
}
}
}
// goes inside .tile-halves
.tile-bottom {
background: var(--body-dark);
width: 100%;
padding: 1rem 1.5rem .6rem;
h2 {
a {
color: @white;
}
}
&.link-button {
align-self: flex-end; // have link stick to the bottom
padding: 0;
a {
display: block;
text-align: center;
padding: .75em 1.5em .8em;
text-decoration: none;
}
}
// must be used in conjunction with .link-button
&.read-more {
background: var(--tile-link-button-color);
transition: .3s ease-out;
a {
color: var(--byline-color);
font-weight: bold;
text-align: right;
}
&:hover {
background: var(--tile-link-button-highlight-color);
.arrow {
transform: translateX(50%);
}
}
.arrow {
filter: var(--byline-arrow-filter);
margin-left: .4em;
transition: .3s ease-out;
}
}
}
284436d08e52ff86e303d333edfaae7847e2cf3d
1689
1687
2024-04-01T01:25:53Z
Merds
25
less
less
/* ---------------------
tiles
--------------------- */
// mainpage.less relies on this; check before changing anything
:root {
--byline-arrow-filter: invert(29%) sepia(0%) saturate(376%) hue-rotate(172deg) brightness(87%) contrast(80%); // match --byline-color
--tile-border-color: @BODY_BORDER;
--tile-background-color: @BODY_LIGHT;
--tile-link-button-color: #f5e9db;
--tile-link-button-highlight-color: saturate( darken( #e2d2ba, 2.5% ), 2% );
--tile-dark-color: @white;
--tile-dark-bg: @BODY_DARK;
--tile-dark-link-color: #ccc;
--tile-dark-byline-color: fade( @white, 70% );
--tile-dark-header-color: @white;
}
.tile {
background: var(--tile-background-color);
border: 1px solid var(--tile-border-color);
box-shadow: @box-shadow;
padding: 1.5em 2em 1em;
max-width: 40em;
h2 {
font-size: 1.4em;
font-weight: bold;
border: none;
margin: 0 0 .4em;
}
// reduce spacing when byline and heading appear together
// (which should be the only way bylines appear)
.byline + h2 {
margin-top: -0.5em;
}
&.dark {
color: var(--tile-dark-color);
background: var(--tile-dark-bg);
border: none;
box-shadow: @box-shadow-dark;
h2 {
color: var(--tile-dark-header-color);
}
a {
color: var(--tile-dark-link-color);
}
.byline {
color: var(--tile-dark-byline-color);
}
}
}
.byline {
font-size: .9em;
color: var(--byline-color);
a {
color: var(--byline-color);
}
}
/* ---------------------
tile halves
--------------------- */
// contains .tile or .tile-halves
.tile-row {
display: flex;
flex-flow: row wrap;
margin-bottom: 1em;
}
.tile-halves {
display: flex;
flex-flow: row wrap;
background: var(--tile-background-color);
box-shadow: @box-shadow;
h2 {
font-size: 1.4em;
font-weight: bold;
border: none;
margin: 0 0 .4em;
}
.byline + h2 {
margin-top: -0.5em;
}
}
// goes inside .tile-halves
.tile-top {
width: 100%;
padding: 1.3rem 1.5rem .6rem;
&.tile-image {
display: flex;
align-items: center; // vertically center images
background-color: var(--body-light);
overflow: hidden;
padding: 0;
height: 13vw;
max-height: 12em;
transition: .4s ease-out;
.tile-halves:hover & img {
transform: scale(1.1);
transition: .5s ease-out;
}
a {
width: 100%;
}
img {
width: 100%;
object-fit: cover;
max-height: 200px;
transition: .4s ease-out;
}
}
}
// goes inside .tile-halves
.tile-bottom {
background: var(--body-dark);
width: 100%;
padding: 1rem 1.5rem .6rem;
h2 {
a {
color: @white !important;
}
}
&.link-button {
align-self: flex-end; // have link stick to the bottom
padding: 0;
a {
display: block;
text-align: center;
padding: .75em 1.5em .8em;
text-decoration: none;
}
}
// must be used in conjunction with .link-button
&.read-more {
background: var(--tile-link-button-color);
transition: .3s ease-out;
a {
color: var(--byline-color);
font-weight: bold;
text-align: right;
}
&:hover {
background: var(--tile-link-button-highlight-color);
.arrow {
transform: translateX(50%);
}
}
.arrow {
filter: var(--byline-arrow-filter);
margin-left: .4em;
transition: .3s ease-out;
}
}
}
db9358d71ee447d1818b205f85c80d2fe57480b8
MediaWiki:Minerva.less/tiles.less
8
419
1684
674
2024-04-01T01:20:44Z
Merds
25
less
less
// standard tile class
// mainpage.less relies on this; check before changing anything
/* ------------------
tile
------------------ */
.tile {
padding: 1.5em 2em 1em;
h2 {
font-weight: 600;
border: none;
margin-top: .4em;
}o
// reduce spacing when byline and heading appear together
// (which should be the only way bylines appear)
.byline + h2 {
margin-top: -0.5em;
}
}
/* ------------------
halves
------------------ */
.tile-row {
background: var(--body-light);
border: 1px solid var(-body-border);
}
// goes inside tile-halves
.tile-top {
padding: 1.3rem 1.5rem 2rem;
}
// goes inside tile-halves
.tile-bottom {
padding: 1rem 1.5rem 2rem;
&.read-more {
padding: 0;
a {
padding: 1em 1.75em;
}
}
}
c64f96071e566f2cbc87e56741734d84fef3fbe0
1690
1684
2024-04-01T01:27:20Z
Merds
25
less
less
// standard tile class
// mainpage.less relies on this; check before changing anything
/* ------------------
tile
------------------ */
.tile {
padding: 1.5em 2em 1em;
h2 {
font-weight: 600;
border: none;
margin-top: .4em;
}
// reduce spacing when byline and heading appear together
// (which should be the only way bylines appear)
.byline + h2 {
margin-top: -0.5em;
}
}
/* ------------------
halves
------------------ */
.tile-row {
background: var(--body-light) !important;
border: 1px solid var(--body-border);
}
// goes inside tile-halves
.tile-top {
padding: 1.3rem 1.5rem 2rem;
}
// goes inside tile-halves
.tile-bottom {
padding: 1rem 1.5rem 2rem;
&.read-more {
padding: 0;
a {
padding: 1em 1.75em;
}
}
}
74dbb79884fc01f83e524a5e4880591959c977cf
MediaWiki:Minerva.css
8
422
1686
1168
2024-04-01T01:21:00Z
Merds
25
Updating CSS from [[MediaWiki:Minerva.less]]
css
text/css
/* <pre> */
body {
font-family: system-ui, -apple-system, Roboto, Helvetica, sans-serif;
}
@media all and (max-width: 320px) {
body {
font-size: 0.9em;
}
}
.content {
line-height: 1.7;
}
.pre-content h1,
.content h1,
.content h2 {
font-weight: bold;
}
body {
background: var(--body-background-color);
color: var(--text-color);
}
select {
color: var(--text-color);
}
a:not( [ href ] ) {
color: inherit;
}
a.external,
.mw-parser-output a.external {
background-image: var(--external-icon);
}
blockquote {
border-color: var(--body-mid);
font-family: inherit;
}
.pre-content h1 {
text-align: center;
}
.mw-parser-output h2:first-of-type {
clear: both;
}
.content .mw-parser-output > h2,
.content .section-heading {
border-color: var(--sidebar);
}
.content .mw-parser-output > h2,
.content .section-heading {
border-color: var(--sidebar);
}
.content .plainlist ol,
.content .plainlist ul {
padding: 0;
}
.content p {
margin: 0.5em 0;
}
.content hr {
background: none;
border-color: var(--sidebar);
border-style: solid;
border-width: 1px 0 0 0;
height: initial;
}
.content kbd,
.content samp {
border: none;
}
.content code,
.content pre {
background-color: var(--mw-code-background-color);
border: 1px solid var(--body-border);
}
:root {
--searchbutton-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 20 20'%3E%3Cg fill='%23000'%3E%3Cpath d='M12.2 13.6a7 7 0 1 1 1.4-1.4l5.4 5.4-1.4 1.4-5.4-5.4zM3 8a5 5 0 1 0 10 0A5 5 0 1 0 3 8z'/%3E%3C/g%3E%3C/svg%3E");
--external-icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' encoding='UTF-8'%3F%3E%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='10' viewBox='0 0 10 10'%3E%3Cg fill='%23906039'%3E%3Cpath d='M8.9 8.9H1.1V1.1h2.8V0H1.1C.5 0 0 .5 0 1.1v7.8C0 9.5.5 10 1.1 10h7.8c.6 0 1.1-.5 1.1-1.1V6.1H8.9v2.8z'/%3E%3Cpath d='M10 0H5.6l1.8 1.8L4.2 5l.8.8 3.2-3.2L10 4.4V0z'/%3E%3C/g%3E%3C/svg%3E");
}
#mw-mf-page-center {
background-color: transparent;
}
.header {
border-top: none;
}
.header-container.header-chrome {
background: var(--body-background-image) var(--body-background-color) no-repeat;
background-color: var(--body-background-color);
background-size: 900px;
box-shadow: inset 0 -1px 3px rgba(0, 0, 0, 0.1);
}
.header-container .notification-count {
border-radius: 50%;
}
.header-container .notification-count.notification-unseen {
background: none;
}
.header-container .branding-box {
opacity: 1;
}
.search-box {
text-align: right;
}
.search-box .search {
background-color: var(--search-box);
border-color: var(--search-box);
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
}
.search-box .search::placeholder {
color: var(--byline-color);
}
.client-nojs .search-box .search:focus,
.search-overlay .search-box .search:focus {
border-color: var(--link-color);
box-shadow: inset 0 0 0 1px var(--link-color), 0 1px 1px rgba(0, 0, 0, 0.05);
}
.mw-ui-background-icon-search {
background-image: var(--searchbutton-icon);
}
.overlay {
background: var(--body-main);
}
.overlay textarea {
color: var(--text-color);
}
.overlay.search-overlay {
background: var(--body-main);
}
.overlay.search-overlay .results,
.overlay.search-overlay .search-feedback {
background-color: var(--body-light);
}
.overlay.search-overlay .search-content {
border-color: var(--body-mid);
}
.overlay .license {
color: var(--base-text-color);
}
.overlay .panel {
border-color: var(--sidebar);
}
.overlay .content-header {
background-color: var(--body-light);
border-color: transparent;
}
.overlay.overlay-loading {
background: var(--ooui-window-background);
}
.overlay .overlay-content {
background: var(--body-main);
}
.page-summary h2,
.page-summary h3 {
color: var(--text-color);
}
.page-list li,
.topic-title-list li,
.site-link-list li {
border-color: var(--body-mid);
}
.overlay-enabled .overlay:not(.editor-overlay),
.overlay-enabled #mw-mf-page-center {
overflow-y: scroll;
}
.overlay-header-container,
.overlay-footer-container {
background-color: var(--body-background-color);
border-color: transparent;
}
.editor-overlay .wikitext-editor {
color: var(--text-color);
}
.editor-overlay .overlay-header {
outline-color: transparent;
}
.editor-overlay .summary-request {
color: var(--text-color);
}
.editor-overlay .editor-switcher {
border: none;
}
.action-submit .mw-editnotice .action-edit .mw-editnotice,
.action-submit .mw-editTools,
.action-edit .mw-editTools,
.action-submit .preview-limit-report-wrapper,
.action-edit .preview-limit-report-wrapper,
.action-submit .diff-otitle,
.action-edit .diff-otitle,
.action-submit .diff-ntitle,
.action-edit .diff-ntitle,
.action-submit #section_0,
.action-edit #section_0,
.action-submit #editpage-copywarn,
.action-edit #editpage-copywarn,
.action-submit #mw-anon-edit-warning,
.action-edit #mw-anon-edit-warning {
color: var(--byline-color);
}
.wikitext-editor {
background-color: var(--body-main);
}
.ve-mobile-fakeToolbar {
border: none;
}
.ve-mobile-fakeToolbar-container {
background: var(--body-background-color);
border: none;
}
.ve-mobile-fakeToolbar .mw-ui-icon-mf-spinner {
border-color: transparent;
}
.ve-ui-targetToolbar-mobile .oo-ui-toolbar-tools > .ve-ui-toolbar-group-back {
border-color: transparent;
}
.ve-ui-mobileContext {
background-color: var(--body-light);
border-color: var(--body-light);
}
.ve-ui-mobileContext .ve-ui-linearContextItem-body-action-wrapper {
border-color: var(--body-border);
}
.ve-ui-linearContextItem-foot:not(:empty) {
border-color: var(--body-border);
}
.ve-ui-mwSaveDialog-options {
backgroubd-color: var(--body-light);
border-color: var(--body-mid);
}
.page-actions-menu {
border-color: var(--sidebar);
}
#language-selector {
display: none;
}
.minerva__tab-container .minerva__tab {
color: var(--text-color);
}
.minerva__tab-container .minerva__tab.new,
.minerva__tab-container .minerva__tab.new:visited,
.minerva__tab-container .minerva__tab.new:hover,
.minerva__tab-container .minerva__tab.new:active {
color: var(--redlink-color);
}
.minerva__tab-container .minerva__tab.selected {
border-color: var(--body-border);
}
.heading-holder .tagline {
color: var(--base-heading-color);
}
.minerva-footer {
border-color: transparent;
}
.mw-footer > .post-content {
margin-top: 32px;
}
.mw-footer > .post-content > .minerva-footer-logo {
display: none;
}
.mw-footer .hlist li:after {
color: var(--background-text-color);
}
.last-modified-bar {
border-top: 1px solid;
border-color: transparent;
background: none;
color: var(--text-color);
}
.last-modified-bar a,
.last-modified-bar a:active,
.last-modified-bar a:visited,
.last-modified-bar .last-modified-text-accent {
color: var(--background-text-color);
}
.last-modified-bar.active,
.last-modified-bar.active:active,
.last-modified-bar.active:visited,
.last-modified-bar.active .last-modified-text-accent {
color: #fff;
}
.mw-ui-icon-mf-expand-gray:not(.mw-ui-icon-mf-expand-invert):before {
background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 20 20'%3E%3Ctitle%3Eexpand%3C/title%3E%3Cg fill='%2354595d'%3E%3Cpath d='M17.5 4.75l-7.5 7.5-7.5-7.5L1 6.25l9 9 9-9z'/%3E%3C/g%3E%3C/svg%3E");
}
.toggle-list__list {
background-color: var(--wikitable-bg);
}
.toggle-list-item__anchor:visited,
.toggle-list-item__anchor:active {
color: var(--base-text-color);
}
.toggle-list-item:hover {
background: var(--wikitable-bg-lighter);
}
.toggle-list-item__label {
color: var(--base-text-color);
}
.mw-ui-icon-wikimedia-search-base20:before {
background-image: url("data:image/svg+xml,%3C%3Fxml version='1.0' encoding='UTF-8'%3F%3E%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 20 20'%3E%3Ctitle%3Esearch%3C/title%3E%3Cg fill='white'%3E%3Cpath fill-rule='evenodd' d='M12.2 13.6a7 7 0 111.4-1.4l5.4 5.4-1.4 1.4-5.4-5.4zM13 8A5 5 0 113 8a5 5 0 0110 0z'/%3E%3C/g%3E%3C/svg%3E%0A");
}
.mw-ui-icon-wikimedia-menu-base20:before {
background-image: url("data:image/svg+xml,%3C%3Fxml version='1.0' encoding='UTF-8'%3F%3E%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 20 20'%3E%3Ctitle%3Emenu%3C/title%3E%3Cg fill='white'%3E%3Cpath d='M1 3v2h18V3zm0 8h18V9H1zm0 6h18v-2H1z'/%3E%3C/g%3E%3C/svg%3E%0A");
}
.mw-ui-icon-wikimedia-bellOutline-base20:before {
background-image: url("data:image/svg+xml,%3C%3Fxml version='1.0' encoding='UTF-8'%3F%3E%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 20 20'%3E%3Ctitle%3Ebell%3C/title%3E%3Cg fill='white'%3E%3Cpath d='M11.5 2.19C14.09 2.86 16 5.2 16 8v6l2 2v1H2v-1l2-2V8c0-2.8 1.91-5.14 4.5-5.81V1.5C8.5.67 9.17 0 10 0s1.5.67 1.5 1.5v.69zM10 4C7.79 4 6 5.79 6 8v7h8V8c0-2.21-1.79-4-4-4zM8 18h4c0 1.1-.9 2-2 2s-2-.9-2-2z'/%3E%3C/g%3E%3C/svg%3E%0A");
}
.mw-ui-icon-minerva-userAvatarOutline:before {
background-image: url("data:image/svg+xml,%3C%3Fxml version='1.0' encoding='UTF-8'%3F%3E%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 20 20'%3E%3Ctitle%3Euser avatar%3C/title%3E%3Cg fill='white'%3E%3Cpath d='M10 8c1.7 0 3.06-1.35 3.06-3S11.7 2 10 2 6.94 3.35 6.94 5 8.3 8 10 8zm0 2c-2.8 0-5.06-2.24-5.06-5S7.2 0 10 0s5.06 2.24 5.06 5-2.26 5-5.06 5zm-7 8h14v-1.33c0-1.75-2.31-3.56-7-3.56s-7 1.81-7 3.56V18zm7-6.89c6.66 0 9 3.33 9 5.56V20H1v-3.33c0-2.23 2.34-5.56 9-5.56z'/%3E%3C/g%3E%3C/svg%3E%0A");
}
@media all and (min-width: 1000px) {
.mw-ui-icon-with-label-desktop,
.mw-ui-icon-with-label-desktop:hover,
.mw-ui-icon-with-label-desktop:focus,
.mw-ui-icon-with-label-desktop:active,
.mw-ui-icon-with-label-desktop:visited {
color: var(--base-text-color) !important;
}
}
.header-action .mw-ui-icon-mf-close-base20:before {
background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 20 20'%3E%3Ctitle%3Eclose%3C/title%3E%3Cg fill='%23fff'%3E%3Cpath d='m4.3 2.9 12.8 12.8-1.4 1.4L2.9 4.3z'/%3E%3Cpath d='M17.1 4.3 4.3 17.1l-1.4-1.4L15.7 2.9z'/%3E%3C/g%3E%3C/svg%3E");
}
#mw-mf-page-left {
background-color: var(--body-background-color);
}
#mw-mf-page-left .secondary-action {
border-left-color: var(--body-mid);
}
#mw-mf-page-left ul li {
background-color: var(--body-main);
border-color: var(--body-mid);
}
#mw-mf-page-left ul li a {
color: var(--base-text-color);
}
#mw-mf-page-left ul li a:hover {
box-shadow: inset 4px 0 0 0 var(--link-color);
}
#mw-mf-page-left ul.hlist li a {
color: var(--background-link-color);
}
#mw-mf-page-left ul.hlist li a span {
font-size: 0.8125rem;
}
.notifications-overlay.navigation-drawer {
box-shadow: -1px 0 8px 0 rgba(0, 0, 0, 0.35);
}
.notifications-overlay .mw-echo-ui-actionMenuPopupWidget-menu {
border: none;
}
.mw-ui-anchor.mw-ui-progressive,
.mw-ui-anchor.mw-ui-progressive:active,
.mw-ui-anchor.mw-ui-progressive:hover,
.mw-ui-anchor.mw-ui-progressive:focus {
color: var(--link-color);
}
.minerva-talk-full-page-button {
background-color: var(--body-main);
border-color: var(--body-dark);
color: var(--link-color);
}
.minerva-talk-content-explained {
border-color: var(--sidebar);
color: var(--base-text-color);
}
.talk-overlay .comment .wikitext-editor {
border-color: var(--body-border);
}
.client-js .skin-minerva--talk-simplified .section-heading {
border-color: var(--sidebar);
}
.mw-notification a,
.toast a {
color: var(--link-color);
}
.drawer {
background-color: var(--body-light);
}
.drawer.references-drawer {
background-color: var(--body-light);
color: var(--text-color);
}
.drawer.references-drawer a {
color: var(--link-color);
}
.drawer.references-drawer .references-drawer__title {
color: var(--text-color);
}
.drawer.references-drawer .mw-ui-icon::before {
filter: brightness(0);
}
.cta-holder {
background: var(--body-light);
}
.cta-holder .desc {
color: var(--byline-color);
}
.mw-tag-marker {
border-color: var(--body-border);
}
.oo-ui-toolGroup {
background: var(--body-background-color);
}
.load-fail-msg {
color: var(--text-color);
}
.load-fail-msg-link a {
color: var(--link-color);
}
.image-carousel .image-loaded {
background: url("data:image/svg+xml,%3C%3Fxml version='1.0' encoding='UTF-8'%3F%3E%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16'%3E%3Cpath d='M0 0h8v16h8V8H0z' opacity='.13'/%3E%3C/svg%3E%0A") repeat;
}
.image-details {
background-color: var(--body-light);
border-color: transparent;
}
@media all and (min-width: 720px) {
.ns-special .pre-content {
background-color: transparent;
}
.ns-special .mw-body {
background: var(--body-main);
}
.ns-special .mw-body form {
background: transparent;
}
}
form.mw-mf-settings .oo-ui-fieldLayout,
form.mw-mf-settings .oo-ui-fieldLayout:first-child {
border-color: var(--body-mid);
}
.ns-special .content-header {
border-bottom-color: var(--body-dark);
}
.action-history .mw-history-compareselectedversions {
background-color: var(--body-main);
}
.action-history #pagehistory li:not(.selected) {
border-bottom-color: var(--sidebar);
}
ul.mw-contributions-list li,
ul.special li {
border-color: var(--sidebar);
}
.page-list li > a:not(.mw-ui-icon-element),
.topic-title-list li > a:not(.mw-ui-icon-element),
.site-link-list li > a:not(.mw-ui-icon-element) {
color: var(--byline-color);
}
.page-list.side-list .list-thumb,
.topic-title-list.side-list .list-thumb,
.site-link-list.side-list .list-thumb {
color: var(--text-color);
}
.page-list .info,
.topic-title-list .info,
.site-link-list .info,
.page-list .component,
.topic-title-list .component,
.site-link-list .component {
color: var(--byline-color);
}
.mw-mf-user {
color: var(--text-color);
}
.content .mw-index-pager-list-header {
background-color: var(--body-mid);
color: inherit;
font-family: inherit;
}
.diff-editfont-monospace {
font-family: monospace,monospace;
}
:root {
--diff-deletedline-background: #fbc0ba;
}
.minoredit {
background: var(--body-mid);
}
#mw-mf-diffview .mw-mf-diff-date {
color: var(--byline-color);
}
#mw-mf-diffview .mw-diff-inline-deleted del,
#mw-mf-diffview .mw-diff-inline-changed del {
background: var(--diff-deletedline-background);
color: var(--diff-deletedline-color);
border-radius: 0.33em;
}
#mw-mf-diffview .mw-diff-inline-added ins,
#mw-mf-diffview .mw-diff-inline-changed ins {
background: var(--diff-addedline-background);
color: var(--diff-addedline-color);
border-radius: 0.33em;
}
#mw-mf-diffview .mw-diff-inline-moved {
background: var(--diff-context-background);
}
#mw-mf-diffview #mw-mf-userinfo {
background: var(--body-light);
border-top-color: var(--body-border);
}
#mw-mf-diffview #mw-mf-userinfo .mw-mf-edit-count {
color: var(--text-color);
}
#mw-mf-diffview #mw-mf-userinfo .mw-mf-edit-count div {
color: var(--base-text-color);
}
.infobox {
font-size: 85%;
background-color: var(--body-light);
border: 1px solid var(--body-border);
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
table-layout: fixed;
}
.content .infobox {
display: table;
}
.content .infobox caption {
display: table-caption;
background: none;
}
.infobox .infobox-header {
color: var(--infobox-text-color);
font-size: 1.15em;
background: var(--body-dark);
padding: 0.5em 0;
text-align: center;
}
.infobox .infobox-subheader {
background: var(--body-dark);
line-height: 2em;
text-align: center;
}
.infobox .infobox-subheader a {
color: var(--infobox-text-color);
}
.infobox th:not(.infobox-nested):not(.infobox-subheader):not(.infobox-header) {
text-align: right;
vertical-align: top;
border-right: 2px solid var(--body-dark);
padding: 0.2em 0.5em;
}
.infobox caption.infobox-caption {
text-align: center;
}
.infobox td {
padding: 0.25em 0.5em;
line-height: 1.6em;
}
.infobox td.infobox-nested {
padding: 0.25em 0;
line-height: 1em;
}
.infobox .infobox-padding {
height: 0.5em;
padding: 0;
border: 0;
}
.infobox .infobox-image {
text-align: center;
}
.infobox .infobox-image.inventory-image {
height: 32px;
}
.infobox .infobox-nested {
text-align: center;
}
.infobox .infobox-nested + .infobox-nested {
border-left: 2px solid var(--body-dark);
}
.infobox .infobox-cell-hidden {
display: none;
}
.infobox .infobox-full-width-content {
max-width: 300px;
text-align: center;
overflow-x: hidden;
padding: 0;
}
.skill-info a[href$="?action=edit"] + a[href$="?action=edit"] {
display: none;
}
.infobox-buttons {
margin-top: 0.5em;
text-align: center;
}
.infobox-bottom-links {
display: none;
}
.advanced-data {
display: none;
}
@media screen and (min-width: 720px) {
.content table.infobox {
float: right;
margin-top: 0.5em;
margin-left: 1em;
width: 300px !important;
}
.content table.infobox.skill-info {
float: none;
margin: 0 0 1em 0;
}
}
.multi-infobox {
margin-top: 0.5em;
margin-bottom: 2.5em;
}
.multi-infobox .tabber {
margin: 0;
}
.multi-infobox .tabber .tabbernav {
text-align: center;
margin-left: 0;
}
.mw-body .multi-infobox .tabber .tabbertab {
padding: 5px;
}
.multi-infobox table.infobox {
margin: 0;
}
.multi-infobox .infobox-buttons {
margin-top: 0;
}
@media screen and (min-width: 720px) {
.multi-infobox {
float: right;
margin-left: 1em;
width: 300px;
}
}
.tile {
padding: 1.5em 2em 1em;
}
.tile h2 {
font-weight: 600;
border: none;
margin-top: 0.4em;
}
.tile o .byline + h2 {
margin-top: -0.5em;
}
.tile-row {
background: var(--body-light);
border: 1px solid var(-body-border);
}
.tile-top {
padding: 1.3rem 1.5rem 2rem;
}
.tile-bottom {
padding: 1rem 1.5rem 2rem;
}
.tile-bottom.read-more {
padding: 0;
}
.tile-bottom.read-more a {
padding: 1em 1.75em;
}
:root {
--mobile-navbox-wide-bg-color: #dcd3bf;
--mobile-navbox-linear-gradient: linear-gradient(to right, rgba(255, 255, 255, 0), var(--body-main) 95%, var(--body-main));
}
.navbox {
border: 1px solid var(--body-border);
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
font-size: 0.85em;
}
.content .navbox ul {
padding-left: 0;
}
.content .navbox ul li {
margin-bottom: 0;
}
@media screen and (max-width: 719px) {
.navbox td,
.navbox th,
.navbox tr,
.navbox tbody,
.navbox .navbox-subgroup {
display: block;
}
}
@media screen and (min-width: 720px) {
.content table.navbox,
.content .navbox table {
width: 100% !important;
}
}
.navbox .navbox-subgroup {
margin: 0;
}
.navbox .navbar {
display: none;
}
.navbox .plink-template,
.navbox img {
display: none;
}
.navbox-title {
color: var(--text-color);
background-color: var(--body-dark);
font-size: 140%;
text-align: center;
padding: 0.25em 0.85em;
}
@media screen and (min-width: 720px) {
.navbox-title {
border-bottom: 1px solid var(--body-border);
}
}
.navbox-group-title {
background-color: var(--body-mid);
text-align: left;
padding: 0.2em 0.85em;
}
@media screen and (max-width: 719px) {
.navbox-group-title {
overflow: hidden;
white-space: nowrap;
text-overflow: ellipsis;
}
}
@media screen and (min-width: 720px) {
.navbox-group-title {
border: 1px solid var(--body-border);
border-width: 0 1px 1px 0;
width: 12vw;
}
}
.navbox-group-title-hidden {
display: none;
}
.navbox-list {
padding: 0;
position: relative;
}
@media screen and (min-width: 720px) {
.navbox-list {
border-bottom: 1px solid var(--body-border);
}
}
.navbox-list ul {
display: flex;
}
@media screen and (max-width: 719px) {
.navbox-list ul {
white-space: nowrap;
overflow-x: auto;
overflow-y: hidden;
-webkit-overflow-scrolling: touch;
}
}
@media screen and (min-width: 720px) {
.navbox-list ul {
padding: 0.2em 0.85em 0.5em !important;
flex-wrap: wrap;
}
}
@media screen and (min-width: 720px) {
.navbox-list[style*="center"] ul {
justify-content: center;
}
}
.navbox-list li {
display: inline-flex;
align-items: center;
height: 3.5em;
margin: 0 0 0 0.85em;
}
@media screen and (min-width: 720px) {
.navbox-list li {
height: 2.1em;
}
.navbox-list li:first-child {
margin-left: 0;
}
}
.navbox-list li + li::before {
content: '•';
display: inline-block;
white-space: pre-wrap;
position: relative;
left: -0.425em;
color: var(--text-color);
pointer-events: none;
}
.navbox-list li + li > a + a::before {
display: none;
}
.navbox-list li:last-child {
margin-right: 2em;
}
.navbox-list::after {
content: '';
display: block;
position: absolute;
background-image: var(--mobile-navbox-linear-gradient);
height: 100%;
width: 2.5em;
top: 0;
right: 0;
pointer-events: none;
}
@media screen and (min-width: 720px) {
.navbox-list::after {
display: none;
}
}
.navbox-list.navbox-parent {
border-bottom: 0;
padding: 0;
}
.navbox-list.navbox-parent::after {
display: none;
}
.navbox-group .navbox-group .navbox-group-title {
background-color: var(--body-light);
padding: 0 0.85em 0 1.7em;
}
@media screen and (min-width: 720px) {
.navbox-group .navbox-group .navbox-group-title {
padding-left: 0.85em;
}
}
.navbox-group .navbox-group .navbox-list ul {
padding-left: 1.7em;
}
.navbox-group .navbox-group .navbox-list li {
margin-bottom: 0;
}
.navbox-group .navbox-group .navbox-list li:first-child {
margin-left: 0;
}
.navbox-group .navbox-group.navbox-group-split .navbox-list ul {
padding-left: 0.85em;
}
.navbox-group .navbox-group .navbox-group:first-child .navbox-group-title {
padding-top: 0.5em;
}
@media screen and (min-width: 720px) {
.navbox-group .navbox-group .navbox-group:first-child .navbox-group-title {
padding-top: 0;
}
}
.navbox-group .navbox-group .navbox-group .navbox-group-title {
background-color: transparent;
padding-left: 2.55em;
}
@media screen and (min-width: 720px) {
.navbox-group .navbox-group .navbox-group .navbox-group-title {
background-color: var(--mobile-navbox-wide-bg-color);
padding-left: 0.85em;
}
}
.navbox-group .navbox-group .navbox-group .navbox-list ul {
padding-left: 2.55em;
}
.navbox-group .navbox-group .navbox-group.navbox-group-split .navbox-list ul {
padding-left: 1.7em;
}
@keyframes slide-up {
from {
opacity: 0;
transform: translateY(1rem);
}
to {
opacity: 1;
transform: translateY(0);
}
}
.mainpage-header {
margin: 2em 1em 0;
}
@media only screen and (max-width: 1000px) {
.mainpage-header .header-intro h1 {
text-align: center;
font-size: 1.8em;
}
.mainpage-header .header-intro p {
font-size: 1em;
}
}
.mainpage-body .tile-row {
width: inherit;
}
.mainpage-contents.tile-row {
display: inherit;
}
.mainpage-left .tile {
padding: 2.5em 1.75em 2em;
}
.mainpage-left .tile h2 {
padding: 0;
margin: 0.65em 0.5em;
}
.mainpage-left .tile-halves h2 {
padding: 0;
margin: 0.65em 0.5em;
}
.mainpage-recent-updates {
padding: 1.5em 1em 2.5em;
}
.mainpage-recent-updates::before {
content: 'Recent updates';
display: block;
margin-left: 1.5em;
color: var(--byline-color);
font-weight: bold;
text-transform: uppercase;
letter-spacing: 0.025em;
grid-column: 1 / 4;
}
.mainpage-recent-updates .tile-halves {
display: inline-block;
width: 100%;
white-space: initial;
flex: unset;
}
.mainpage-recent-updates .tile-halves:nth-child(1) {
animation: 0.9s 0.2s both slide-up;
}
.mainpage-recent-updates .tile-halves:nth-child(2) {
animation: 0.9s 0.4s both slide-up;
}
.mainpage-recent-updates .tile-halves:nth-child(3) {
animation: 0.9s 0.6s both slide-up;
}
.mainpage-recent-updates .tile-top {
height: 9em;
overflow: hidden;
}
.mainpage-recent-updates .tile-bottom {
padding-bottom: 0.5rem;
}
.mainpage-recent-updates .byline {
margin: 0;
}
.mainpage-recent-updates .byline + h2 {
margin: 0.025em 0 0;
padding: 0;
}
@media only screen and (max-width: 720px) {
.mainpage-recent-updates::before {
text-align: center;
margin: 0;
grid-column: auto;
}
}
.mainpage-contents {
background: var(--body-mid);
padding: 55px 1em 2em 2.5em;
overflow-x: auto;
grid-template-columns: repeat(6, 1fr) !important;
position: relative;
scroll-snap-align: center;
}
.mainpage-contents::before {
content: 'Explore';
margin: 1em;
position: absolute;
top: 0;
color: inherit;
font-weight: bold;
text-transform: uppercase;
letter-spacing: 0.025em;
grid-column: 1 / 6;
}
.mainpage-contents .tile-halves {
border: none;
background: none;
box-shadow: none;
width: 200px;
}
.mainpage-contents .tile-top {
padding: 0;
height: initial;
}
.mainpage-contents .tile-bottom {
border: none;
}
.mainpage-contents h2 {
width: 100%;
}
@media only screen and (max-width: 1000px) {
.mainpage-skills .tile-top ul {
margin: 0;
}
}
.mainpage-wikinews::before {
content: 'From the wiki';
margin-left: 0.75em;
color: var(--byline-color);
font-weight: bold;
text-transform: uppercase;
letter-spacing: 0.025em;
}
.mainpage-social {
border: none;
margin-bottom: 0;
}
.mainpage-social .tile-top {
display: flex;
align-items: center;
justify-content: center;
padding: 1em 2em;
min-height: 70px;
}
.mainpage-social .tile-top .social-icon {
float: left;
margin: 0 1em 0 -1em;
width: 60px;
text-align: center;
}
.mainpage-social .tile-top .social-header {
color: #fff;
font-weight: bold;
font-size: 1.25em;
margin: 0;
}
.mainpage-social .tile-top .social-tagline {
color: rgba(255, 255, 255, 0.9);
margin: 0;
}
.mainpage-social .tile-bottom {
border: none;
padding: 1em 2em;
}
.mainpage-social .tile-bottom p {
color: var(--byline-color);
font-weight: bold;
text-transform: uppercase;
letter-spacing: 0.025em;
color: #fff;
font-size: 0.9em;
text-align: center;
margin: 0;
}
.mainpage-social.mainpage-discord .tile-top {
background: #5865f2;
}
.mainpage-social.mainpage-discord .tile-bottom {
background: #525ee0;
}
.mainpage-social.mainpage-twitter .tile-top {
background: #15202b;
}
.mainpage-social.mainpage-twitter .tile-bottom {
background: #121c26;
}
.wikitable {
background: none;
box-shadow: none;
}
.wikitable tbody {
background: var(--body-light);
}
.toc {
background-color: var(--body-light);
border-color: var(--body-border);
}
#filetoc li {
display: inline;
padding-right: 2em;
}
.mw-dismissable-notice-body {
margin: 0;
}
.mw-dismissable-notice-body .mw-dismissable-notice-close-parent {
border-radius: 0 !important;
font-size: 0.75em;
}
:root {
--thumb-image-background: var(--body-light);
--thumb-caption-background: var(--body-mid);
}
.content .thumbinner {
background-color: var(--thumb-bg);
}
.content .thumbimage {
border: 1px solid transparent;
border-bottom: none;
}
.content .thumbcaption {
margin: 0;
padding: 4px 6px !important;
color: inherit;
background: var(--thumb-caption-bg);
}
.content table.messagebox {
margin: 0.5em auto;
}
.content table a > img {
max-width: inherit !important;
height: inherit !important;
}
.content .infobox a > img {
max-width: 100% !important;
height: auto !important;
}
.content .infobox-bonuses a > img {
max-width: inherit !important;
height: inherit !important;
}
51f4e37ea76ae246ce281d7f381e220c2a02632b
1691
1686
2024-04-01T01:27:29Z
Merds
25
Updating CSS from [[MediaWiki:Minerva.less]]
css
text/css
/* <pre> */
body {
font-family: system-ui, -apple-system, Roboto, Helvetica, sans-serif;
}
@media all and (max-width: 320px) {
body {
font-size: 0.9em;
}
}
.content {
line-height: 1.7;
}
.pre-content h1,
.content h1,
.content h2 {
font-weight: bold;
}
body {
background: var(--body-background-color);
color: var(--text-color);
}
select {
color: var(--text-color);
}
a:not( [ href ] ) {
color: inherit;
}
a.external,
.mw-parser-output a.external {
background-image: var(--external-icon);
}
blockquote {
border-color: var(--body-mid);
font-family: inherit;
}
.pre-content h1 {
text-align: center;
}
.mw-parser-output h2:first-of-type {
clear: both;
}
.content .mw-parser-output > h2,
.content .section-heading {
border-color: var(--sidebar);
}
.content .mw-parser-output > h2,
.content .section-heading {
border-color: var(--sidebar);
}
.content .plainlist ol,
.content .plainlist ul {
padding: 0;
}
.content p {
margin: 0.5em 0;
}
.content hr {
background: none;
border-color: var(--sidebar);
border-style: solid;
border-width: 1px 0 0 0;
height: initial;
}
.content kbd,
.content samp {
border: none;
}
.content code,
.content pre {
background-color: var(--mw-code-background-color);
border: 1px solid var(--body-border);
}
:root {
--searchbutton-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 20 20'%3E%3Cg fill='%23000'%3E%3Cpath d='M12.2 13.6a7 7 0 1 1 1.4-1.4l5.4 5.4-1.4 1.4-5.4-5.4zM3 8a5 5 0 1 0 10 0A5 5 0 1 0 3 8z'/%3E%3C/g%3E%3C/svg%3E");
--external-icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' encoding='UTF-8'%3F%3E%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='10' viewBox='0 0 10 10'%3E%3Cg fill='%23906039'%3E%3Cpath d='M8.9 8.9H1.1V1.1h2.8V0H1.1C.5 0 0 .5 0 1.1v7.8C0 9.5.5 10 1.1 10h7.8c.6 0 1.1-.5 1.1-1.1V6.1H8.9v2.8z'/%3E%3Cpath d='M10 0H5.6l1.8 1.8L4.2 5l.8.8 3.2-3.2L10 4.4V0z'/%3E%3C/g%3E%3C/svg%3E");
}
#mw-mf-page-center {
background-color: transparent;
}
.header {
border-top: none;
}
.header-container.header-chrome {
background: var(--body-background-image) var(--body-background-color) no-repeat;
background-color: var(--body-background-color);
background-size: 900px;
box-shadow: inset 0 -1px 3px rgba(0, 0, 0, 0.1);
}
.header-container .notification-count {
border-radius: 50%;
}
.header-container .notification-count.notification-unseen {
background: none;
}
.header-container .branding-box {
opacity: 1;
}
.search-box {
text-align: right;
}
.search-box .search {
background-color: var(--search-box);
border-color: var(--search-box);
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
}
.search-box .search::placeholder {
color: var(--byline-color);
}
.client-nojs .search-box .search:focus,
.search-overlay .search-box .search:focus {
border-color: var(--link-color);
box-shadow: inset 0 0 0 1px var(--link-color), 0 1px 1px rgba(0, 0, 0, 0.05);
}
.mw-ui-background-icon-search {
background-image: var(--searchbutton-icon);
}
.overlay {
background: var(--body-main);
}
.overlay textarea {
color: var(--text-color);
}
.overlay.search-overlay {
background: var(--body-main);
}
.overlay.search-overlay .results,
.overlay.search-overlay .search-feedback {
background-color: var(--body-light);
}
.overlay.search-overlay .search-content {
border-color: var(--body-mid);
}
.overlay .license {
color: var(--base-text-color);
}
.overlay .panel {
border-color: var(--sidebar);
}
.overlay .content-header {
background-color: var(--body-light);
border-color: transparent;
}
.overlay.overlay-loading {
background: var(--ooui-window-background);
}
.overlay .overlay-content {
background: var(--body-main);
}
.page-summary h2,
.page-summary h3 {
color: var(--text-color);
}
.page-list li,
.topic-title-list li,
.site-link-list li {
border-color: var(--body-mid);
}
.overlay-enabled .overlay:not(.editor-overlay),
.overlay-enabled #mw-mf-page-center {
overflow-y: scroll;
}
.overlay-header-container,
.overlay-footer-container {
background-color: var(--body-background-color);
border-color: transparent;
}
.editor-overlay .wikitext-editor {
color: var(--text-color);
}
.editor-overlay .overlay-header {
outline-color: transparent;
}
.editor-overlay .summary-request {
color: var(--text-color);
}
.editor-overlay .editor-switcher {
border: none;
}
.action-submit .mw-editnotice .action-edit .mw-editnotice,
.action-submit .mw-editTools,
.action-edit .mw-editTools,
.action-submit .preview-limit-report-wrapper,
.action-edit .preview-limit-report-wrapper,
.action-submit .diff-otitle,
.action-edit .diff-otitle,
.action-submit .diff-ntitle,
.action-edit .diff-ntitle,
.action-submit #section_0,
.action-edit #section_0,
.action-submit #editpage-copywarn,
.action-edit #editpage-copywarn,
.action-submit #mw-anon-edit-warning,
.action-edit #mw-anon-edit-warning {
color: var(--byline-color);
}
.wikitext-editor {
background-color: var(--body-main);
}
.ve-mobile-fakeToolbar {
border: none;
}
.ve-mobile-fakeToolbar-container {
background: var(--body-background-color);
border: none;
}
.ve-mobile-fakeToolbar .mw-ui-icon-mf-spinner {
border-color: transparent;
}
.ve-ui-targetToolbar-mobile .oo-ui-toolbar-tools > .ve-ui-toolbar-group-back {
border-color: transparent;
}
.ve-ui-mobileContext {
background-color: var(--body-light);
border-color: var(--body-light);
}
.ve-ui-mobileContext .ve-ui-linearContextItem-body-action-wrapper {
border-color: var(--body-border);
}
.ve-ui-linearContextItem-foot:not(:empty) {
border-color: var(--body-border);
}
.ve-ui-mwSaveDialog-options {
backgroubd-color: var(--body-light);
border-color: var(--body-mid);
}
.page-actions-menu {
border-color: var(--sidebar);
}
#language-selector {
display: none;
}
.minerva__tab-container .minerva__tab {
color: var(--text-color);
}
.minerva__tab-container .minerva__tab.new,
.minerva__tab-container .minerva__tab.new:visited,
.minerva__tab-container .minerva__tab.new:hover,
.minerva__tab-container .minerva__tab.new:active {
color: var(--redlink-color);
}
.minerva__tab-container .minerva__tab.selected {
border-color: var(--body-border);
}
.heading-holder .tagline {
color: var(--base-heading-color);
}
.minerva-footer {
border-color: transparent;
}
.mw-footer > .post-content {
margin-top: 32px;
}
.mw-footer > .post-content > .minerva-footer-logo {
display: none;
}
.mw-footer .hlist li:after {
color: var(--background-text-color);
}
.last-modified-bar {
border-top: 1px solid;
border-color: transparent;
background: none;
color: var(--text-color);
}
.last-modified-bar a,
.last-modified-bar a:active,
.last-modified-bar a:visited,
.last-modified-bar .last-modified-text-accent {
color: var(--background-text-color);
}
.last-modified-bar.active,
.last-modified-bar.active:active,
.last-modified-bar.active:visited,
.last-modified-bar.active .last-modified-text-accent {
color: #fff;
}
.mw-ui-icon-mf-expand-gray:not(.mw-ui-icon-mf-expand-invert):before {
background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 20 20'%3E%3Ctitle%3Eexpand%3C/title%3E%3Cg fill='%2354595d'%3E%3Cpath d='M17.5 4.75l-7.5 7.5-7.5-7.5L1 6.25l9 9 9-9z'/%3E%3C/g%3E%3C/svg%3E");
}
.toggle-list__list {
background-color: var(--wikitable-bg);
}
.toggle-list-item__anchor:visited,
.toggle-list-item__anchor:active {
color: var(--base-text-color);
}
.toggle-list-item:hover {
background: var(--wikitable-bg-lighter);
}
.toggle-list-item__label {
color: var(--base-text-color);
}
.mw-ui-icon-wikimedia-search-base20:before {
background-image: url("data:image/svg+xml,%3C%3Fxml version='1.0' encoding='UTF-8'%3F%3E%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 20 20'%3E%3Ctitle%3Esearch%3C/title%3E%3Cg fill='white'%3E%3Cpath fill-rule='evenodd' d='M12.2 13.6a7 7 0 111.4-1.4l5.4 5.4-1.4 1.4-5.4-5.4zM13 8A5 5 0 113 8a5 5 0 0110 0z'/%3E%3C/g%3E%3C/svg%3E%0A");
}
.mw-ui-icon-wikimedia-menu-base20:before {
background-image: url("data:image/svg+xml,%3C%3Fxml version='1.0' encoding='UTF-8'%3F%3E%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 20 20'%3E%3Ctitle%3Emenu%3C/title%3E%3Cg fill='white'%3E%3Cpath d='M1 3v2h18V3zm0 8h18V9H1zm0 6h18v-2H1z'/%3E%3C/g%3E%3C/svg%3E%0A");
}
.mw-ui-icon-wikimedia-bellOutline-base20:before {
background-image: url("data:image/svg+xml,%3C%3Fxml version='1.0' encoding='UTF-8'%3F%3E%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 20 20'%3E%3Ctitle%3Ebell%3C/title%3E%3Cg fill='white'%3E%3Cpath d='M11.5 2.19C14.09 2.86 16 5.2 16 8v6l2 2v1H2v-1l2-2V8c0-2.8 1.91-5.14 4.5-5.81V1.5C8.5.67 9.17 0 10 0s1.5.67 1.5 1.5v.69zM10 4C7.79 4 6 5.79 6 8v7h8V8c0-2.21-1.79-4-4-4zM8 18h4c0 1.1-.9 2-2 2s-2-.9-2-2z'/%3E%3C/g%3E%3C/svg%3E%0A");
}
.mw-ui-icon-minerva-userAvatarOutline:before {
background-image: url("data:image/svg+xml,%3C%3Fxml version='1.0' encoding='UTF-8'%3F%3E%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 20 20'%3E%3Ctitle%3Euser avatar%3C/title%3E%3Cg fill='white'%3E%3Cpath d='M10 8c1.7 0 3.06-1.35 3.06-3S11.7 2 10 2 6.94 3.35 6.94 5 8.3 8 10 8zm0 2c-2.8 0-5.06-2.24-5.06-5S7.2 0 10 0s5.06 2.24 5.06 5-2.26 5-5.06 5zm-7 8h14v-1.33c0-1.75-2.31-3.56-7-3.56s-7 1.81-7 3.56V18zm7-6.89c6.66 0 9 3.33 9 5.56V20H1v-3.33c0-2.23 2.34-5.56 9-5.56z'/%3E%3C/g%3E%3C/svg%3E%0A");
}
@media all and (min-width: 1000px) {
.mw-ui-icon-with-label-desktop,
.mw-ui-icon-with-label-desktop:hover,
.mw-ui-icon-with-label-desktop:focus,
.mw-ui-icon-with-label-desktop:active,
.mw-ui-icon-with-label-desktop:visited {
color: var(--base-text-color) !important;
}
}
.header-action .mw-ui-icon-mf-close-base20:before {
background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 20 20'%3E%3Ctitle%3Eclose%3C/title%3E%3Cg fill='%23fff'%3E%3Cpath d='m4.3 2.9 12.8 12.8-1.4 1.4L2.9 4.3z'/%3E%3Cpath d='M17.1 4.3 4.3 17.1l-1.4-1.4L15.7 2.9z'/%3E%3C/g%3E%3C/svg%3E");
}
#mw-mf-page-left {
background-color: var(--body-background-color);
}
#mw-mf-page-left .secondary-action {
border-left-color: var(--body-mid);
}
#mw-mf-page-left ul li {
background-color: var(--body-main);
border-color: var(--body-mid);
}
#mw-mf-page-left ul li a {
color: var(--base-text-color);
}
#mw-mf-page-left ul li a:hover {
box-shadow: inset 4px 0 0 0 var(--link-color);
}
#mw-mf-page-left ul.hlist li a {
color: var(--background-link-color);
}
#mw-mf-page-left ul.hlist li a span {
font-size: 0.8125rem;
}
.notifications-overlay.navigation-drawer {
box-shadow: -1px 0 8px 0 rgba(0, 0, 0, 0.35);
}
.notifications-overlay .mw-echo-ui-actionMenuPopupWidget-menu {
border: none;
}
.mw-ui-anchor.mw-ui-progressive,
.mw-ui-anchor.mw-ui-progressive:active,
.mw-ui-anchor.mw-ui-progressive:hover,
.mw-ui-anchor.mw-ui-progressive:focus {
color: var(--link-color);
}
.minerva-talk-full-page-button {
background-color: var(--body-main);
border-color: var(--body-dark);
color: var(--link-color);
}
.minerva-talk-content-explained {
border-color: var(--sidebar);
color: var(--base-text-color);
}
.talk-overlay .comment .wikitext-editor {
border-color: var(--body-border);
}
.client-js .skin-minerva--talk-simplified .section-heading {
border-color: var(--sidebar);
}
.mw-notification a,
.toast a {
color: var(--link-color);
}
.drawer {
background-color: var(--body-light);
}
.drawer.references-drawer {
background-color: var(--body-light);
color: var(--text-color);
}
.drawer.references-drawer a {
color: var(--link-color);
}
.drawer.references-drawer .references-drawer__title {
color: var(--text-color);
}
.drawer.references-drawer .mw-ui-icon::before {
filter: brightness(0);
}
.cta-holder {
background: var(--body-light);
}
.cta-holder .desc {
color: var(--byline-color);
}
.mw-tag-marker {
border-color: var(--body-border);
}
.oo-ui-toolGroup {
background: var(--body-background-color);
}
.load-fail-msg {
color: var(--text-color);
}
.load-fail-msg-link a {
color: var(--link-color);
}
.image-carousel .image-loaded {
background: url("data:image/svg+xml,%3C%3Fxml version='1.0' encoding='UTF-8'%3F%3E%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16'%3E%3Cpath d='M0 0h8v16h8V8H0z' opacity='.13'/%3E%3C/svg%3E%0A") repeat;
}
.image-details {
background-color: var(--body-light);
border-color: transparent;
}
@media all and (min-width: 720px) {
.ns-special .pre-content {
background-color: transparent;
}
.ns-special .mw-body {
background: var(--body-main);
}
.ns-special .mw-body form {
background: transparent;
}
}
form.mw-mf-settings .oo-ui-fieldLayout,
form.mw-mf-settings .oo-ui-fieldLayout:first-child {
border-color: var(--body-mid);
}
.ns-special .content-header {
border-bottom-color: var(--body-dark);
}
.action-history .mw-history-compareselectedversions {
background-color: var(--body-main);
}
.action-history #pagehistory li:not(.selected) {
border-bottom-color: var(--sidebar);
}
ul.mw-contributions-list li,
ul.special li {
border-color: var(--sidebar);
}
.page-list li > a:not(.mw-ui-icon-element),
.topic-title-list li > a:not(.mw-ui-icon-element),
.site-link-list li > a:not(.mw-ui-icon-element) {
color: var(--byline-color);
}
.page-list.side-list .list-thumb,
.topic-title-list.side-list .list-thumb,
.site-link-list.side-list .list-thumb {
color: var(--text-color);
}
.page-list .info,
.topic-title-list .info,
.site-link-list .info,
.page-list .component,
.topic-title-list .component,
.site-link-list .component {
color: var(--byline-color);
}
.mw-mf-user {
color: var(--text-color);
}
.content .mw-index-pager-list-header {
background-color: var(--body-mid);
color: inherit;
font-family: inherit;
}
.diff-editfont-monospace {
font-family: monospace,monospace;
}
:root {
--diff-deletedline-background: #fbc0ba;
}
.minoredit {
background: var(--body-mid);
}
#mw-mf-diffview .mw-mf-diff-date {
color: var(--byline-color);
}
#mw-mf-diffview .mw-diff-inline-deleted del,
#mw-mf-diffview .mw-diff-inline-changed del {
background: var(--diff-deletedline-background);
color: var(--diff-deletedline-color);
border-radius: 0.33em;
}
#mw-mf-diffview .mw-diff-inline-added ins,
#mw-mf-diffview .mw-diff-inline-changed ins {
background: var(--diff-addedline-background);
color: var(--diff-addedline-color);
border-radius: 0.33em;
}
#mw-mf-diffview .mw-diff-inline-moved {
background: var(--diff-context-background);
}
#mw-mf-diffview #mw-mf-userinfo {
background: var(--body-light);
border-top-color: var(--body-border);
}
#mw-mf-diffview #mw-mf-userinfo .mw-mf-edit-count {
color: var(--text-color);
}
#mw-mf-diffview #mw-mf-userinfo .mw-mf-edit-count div {
color: var(--base-text-color);
}
.infobox {
font-size: 85%;
background-color: var(--body-light);
border: 1px solid var(--body-border);
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
table-layout: fixed;
}
.content .infobox {
display: table;
}
.content .infobox caption {
display: table-caption;
background: none;
}
.infobox .infobox-header {
color: var(--infobox-text-color);
font-size: 1.15em;
background: var(--body-dark);
padding: 0.5em 0;
text-align: center;
}
.infobox .infobox-subheader {
background: var(--body-dark);
line-height: 2em;
text-align: center;
}
.infobox .infobox-subheader a {
color: var(--infobox-text-color);
}
.infobox th:not(.infobox-nested):not(.infobox-subheader):not(.infobox-header) {
text-align: right;
vertical-align: top;
border-right: 2px solid var(--body-dark);
padding: 0.2em 0.5em;
}
.infobox caption.infobox-caption {
text-align: center;
}
.infobox td {
padding: 0.25em 0.5em;
line-height: 1.6em;
}
.infobox td.infobox-nested {
padding: 0.25em 0;
line-height: 1em;
}
.infobox .infobox-padding {
height: 0.5em;
padding: 0;
border: 0;
}
.infobox .infobox-image {
text-align: center;
}
.infobox .infobox-image.inventory-image {
height: 32px;
}
.infobox .infobox-nested {
text-align: center;
}
.infobox .infobox-nested + .infobox-nested {
border-left: 2px solid var(--body-dark);
}
.infobox .infobox-cell-hidden {
display: none;
}
.infobox .infobox-full-width-content {
max-width: 300px;
text-align: center;
overflow-x: hidden;
padding: 0;
}
.skill-info a[href$="?action=edit"] + a[href$="?action=edit"] {
display: none;
}
.infobox-buttons {
margin-top: 0.5em;
text-align: center;
}
.infobox-bottom-links {
display: none;
}
.advanced-data {
display: none;
}
@media screen and (min-width: 720px) {
.content table.infobox {
float: right;
margin-top: 0.5em;
margin-left: 1em;
width: 300px !important;
}
.content table.infobox.skill-info {
float: none;
margin: 0 0 1em 0;
}
}
.multi-infobox {
margin-top: 0.5em;
margin-bottom: 2.5em;
}
.multi-infobox .tabber {
margin: 0;
}
.multi-infobox .tabber .tabbernav {
text-align: center;
margin-left: 0;
}
.mw-body .multi-infobox .tabber .tabbertab {
padding: 5px;
}
.multi-infobox table.infobox {
margin: 0;
}
.multi-infobox .infobox-buttons {
margin-top: 0;
}
@media screen and (min-width: 720px) {
.multi-infobox {
float: right;
margin-left: 1em;
width: 300px;
}
}
.tile {
padding: 1.5em 2em 1em;
}
.tile h2 {
font-weight: 600;
border: none;
margin-top: 0.4em;
}
.tile .byline + h2 {
margin-top: -0.5em;
}
.tile-row {
background: var(--body-light) !important;
border: 1px solid var(--body-border);
}
.tile-top {
padding: 1.3rem 1.5rem 2rem;
}
.tile-bottom {
padding: 1rem 1.5rem 2rem;
}
.tile-bottom.read-more {
padding: 0;
}
.tile-bottom.read-more a {
padding: 1em 1.75em;
}
:root {
--mobile-navbox-wide-bg-color: #dcd3bf;
--mobile-navbox-linear-gradient: linear-gradient(to right, rgba(255, 255, 255, 0), var(--body-main) 95%, var(--body-main));
}
.navbox {
border: 1px solid var(--body-border);
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
font-size: 0.85em;
}
.content .navbox ul {
padding-left: 0;
}
.content .navbox ul li {
margin-bottom: 0;
}
@media screen and (max-width: 719px) {
.navbox td,
.navbox th,
.navbox tr,
.navbox tbody,
.navbox .navbox-subgroup {
display: block;
}
}
@media screen and (min-width: 720px) {
.content table.navbox,
.content .navbox table {
width: 100% !important;
}
}
.navbox .navbox-subgroup {
margin: 0;
}
.navbox .navbar {
display: none;
}
.navbox .plink-template,
.navbox img {
display: none;
}
.navbox-title {
color: var(--text-color);
background-color: var(--body-dark);
font-size: 140%;
text-align: center;
padding: 0.25em 0.85em;
}
@media screen and (min-width: 720px) {
.navbox-title {
border-bottom: 1px solid var(--body-border);
}
}
.navbox-group-title {
background-color: var(--body-mid);
text-align: left;
padding: 0.2em 0.85em;
}
@media screen and (max-width: 719px) {
.navbox-group-title {
overflow: hidden;
white-space: nowrap;
text-overflow: ellipsis;
}
}
@media screen and (min-width: 720px) {
.navbox-group-title {
border: 1px solid var(--body-border);
border-width: 0 1px 1px 0;
width: 12vw;
}
}
.navbox-group-title-hidden {
display: none;
}
.navbox-list {
padding: 0;
position: relative;
}
@media screen and (min-width: 720px) {
.navbox-list {
border-bottom: 1px solid var(--body-border);
}
}
.navbox-list ul {
display: flex;
}
@media screen and (max-width: 719px) {
.navbox-list ul {
white-space: nowrap;
overflow-x: auto;
overflow-y: hidden;
-webkit-overflow-scrolling: touch;
}
}
@media screen and (min-width: 720px) {
.navbox-list ul {
padding: 0.2em 0.85em 0.5em !important;
flex-wrap: wrap;
}
}
@media screen and (min-width: 720px) {
.navbox-list[style*="center"] ul {
justify-content: center;
}
}
.navbox-list li {
display: inline-flex;
align-items: center;
height: 3.5em;
margin: 0 0 0 0.85em;
}
@media screen and (min-width: 720px) {
.navbox-list li {
height: 2.1em;
}
.navbox-list li:first-child {
margin-left: 0;
}
}
.navbox-list li + li::before {
content: '•';
display: inline-block;
white-space: pre-wrap;
position: relative;
left: -0.425em;
color: var(--text-color);
pointer-events: none;
}
.navbox-list li + li > a + a::before {
display: none;
}
.navbox-list li:last-child {
margin-right: 2em;
}
.navbox-list::after {
content: '';
display: block;
position: absolute;
background-image: var(--mobile-navbox-linear-gradient);
height: 100%;
width: 2.5em;
top: 0;
right: 0;
pointer-events: none;
}
@media screen and (min-width: 720px) {
.navbox-list::after {
display: none;
}
}
.navbox-list.navbox-parent {
border-bottom: 0;
padding: 0;
}
.navbox-list.navbox-parent::after {
display: none;
}
.navbox-group .navbox-group .navbox-group-title {
background-color: var(--body-light);
padding: 0 0.85em 0 1.7em;
}
@media screen and (min-width: 720px) {
.navbox-group .navbox-group .navbox-group-title {
padding-left: 0.85em;
}
}
.navbox-group .navbox-group .navbox-list ul {
padding-left: 1.7em;
}
.navbox-group .navbox-group .navbox-list li {
margin-bottom: 0;
}
.navbox-group .navbox-group .navbox-list li:first-child {
margin-left: 0;
}
.navbox-group .navbox-group.navbox-group-split .navbox-list ul {
padding-left: 0.85em;
}
.navbox-group .navbox-group .navbox-group:first-child .navbox-group-title {
padding-top: 0.5em;
}
@media screen and (min-width: 720px) {
.navbox-group .navbox-group .navbox-group:first-child .navbox-group-title {
padding-top: 0;
}
}
.navbox-group .navbox-group .navbox-group .navbox-group-title {
background-color: transparent;
padding-left: 2.55em;
}
@media screen and (min-width: 720px) {
.navbox-group .navbox-group .navbox-group .navbox-group-title {
background-color: var(--mobile-navbox-wide-bg-color);
padding-left: 0.85em;
}
}
.navbox-group .navbox-group .navbox-group .navbox-list ul {
padding-left: 2.55em;
}
.navbox-group .navbox-group .navbox-group.navbox-group-split .navbox-list ul {
padding-left: 1.7em;
}
@keyframes slide-up {
from {
opacity: 0;
transform: translateY(1rem);
}
to {
opacity: 1;
transform: translateY(0);
}
}
.mainpage-header {
margin: 2em 1em 0;
}
@media only screen and (max-width: 1000px) {
.mainpage-header .header-intro h1 {
text-align: center;
font-size: 1.8em;
}
.mainpage-header .header-intro p {
font-size: 1em;
}
}
.mainpage-body .tile-row {
width: inherit;
}
.mainpage-contents.tile-row {
display: inherit;
}
.mainpage-left .tile {
padding: 2.5em 1.75em 2em;
}
.mainpage-left .tile h2 {
padding: 0;
margin: 0.65em 0.5em;
}
.mainpage-left .tile-halves h2 {
padding: 0;
margin: 0.65em 0.5em;
}
.mainpage-recent-updates {
padding: 1.5em 1em 2.5em;
}
.mainpage-recent-updates::before {
content: 'Recent updates';
display: block;
margin-left: 1.5em;
color: var(--byline-color);
font-weight: bold;
text-transform: uppercase;
letter-spacing: 0.025em;
grid-column: 1 / 4;
}
.mainpage-recent-updates .tile-halves {
display: inline-block;
width: 100%;
white-space: initial;
flex: unset;
}
.mainpage-recent-updates .tile-halves:nth-child(1) {
animation: 0.9s 0.2s both slide-up;
}
.mainpage-recent-updates .tile-halves:nth-child(2) {
animation: 0.9s 0.4s both slide-up;
}
.mainpage-recent-updates .tile-halves:nth-child(3) {
animation: 0.9s 0.6s both slide-up;
}
.mainpage-recent-updates .tile-top {
height: 9em;
overflow: hidden;
}
.mainpage-recent-updates .tile-bottom {
padding-bottom: 0.5rem;
}
.mainpage-recent-updates .byline {
margin: 0;
}
.mainpage-recent-updates .byline + h2 {
margin: 0.025em 0 0;
padding: 0;
}
@media only screen and (max-width: 720px) {
.mainpage-recent-updates::before {
text-align: center;
margin: 0;
grid-column: auto;
}
}
.mainpage-contents {
background: var(--body-mid);
padding: 55px 1em 2em 2.5em;
overflow-x: auto;
grid-template-columns: repeat(6, 1fr) !important;
position: relative;
scroll-snap-align: center;
}
.mainpage-contents::before {
content: 'Explore';
margin: 1em;
position: absolute;
top: 0;
color: inherit;
font-weight: bold;
text-transform: uppercase;
letter-spacing: 0.025em;
grid-column: 1 / 6;
}
.mainpage-contents .tile-halves {
border: none;
background: none;
box-shadow: none;
width: 200px;
}
.mainpage-contents .tile-top {
padding: 0;
height: initial;
}
.mainpage-contents .tile-bottom {
border: none;
}
.mainpage-contents h2 {
width: 100%;
}
@media only screen and (max-width: 1000px) {
.mainpage-skills .tile-top ul {
margin: 0;
}
}
.mainpage-wikinews::before {
content: 'From the wiki';
margin-left: 0.75em;
color: var(--byline-color);
font-weight: bold;
text-transform: uppercase;
letter-spacing: 0.025em;
}
.mainpage-social {
border: none;
margin-bottom: 0;
}
.mainpage-social .tile-top {
display: flex;
align-items: center;
justify-content: center;
padding: 1em 2em;
min-height: 70px;
}
.mainpage-social .tile-top .social-icon {
float: left;
margin: 0 1em 0 -1em;
width: 60px;
text-align: center;
}
.mainpage-social .tile-top .social-header {
color: #fff;
font-weight: bold;
font-size: 1.25em;
margin: 0;
}
.mainpage-social .tile-top .social-tagline {
color: rgba(255, 255, 255, 0.9);
margin: 0;
}
.mainpage-social .tile-bottom {
border: none;
padding: 1em 2em;
}
.mainpage-social .tile-bottom p {
color: var(--byline-color);
font-weight: bold;
text-transform: uppercase;
letter-spacing: 0.025em;
color: #fff;
font-size: 0.9em;
text-align: center;
margin: 0;
}
.mainpage-social.mainpage-discord .tile-top {
background: #5865f2;
}
.mainpage-social.mainpage-discord .tile-bottom {
background: #525ee0;
}
.mainpage-social.mainpage-twitter .tile-top {
background: #15202b;
}
.mainpage-social.mainpage-twitter .tile-bottom {
background: #121c26;
}
.wikitable {
background: none;
box-shadow: none;
}
.wikitable tbody {
background: var(--body-light);
}
.toc {
background-color: var(--body-light);
border-color: var(--body-border);
}
#filetoc li {
display: inline;
padding-right: 2em;
}
.mw-dismissable-notice-body {
margin: 0;
}
.mw-dismissable-notice-body .mw-dismissable-notice-close-parent {
border-radius: 0 !important;
font-size: 0.75em;
}
:root {
--thumb-image-background: var(--body-light);
--thumb-caption-background: var(--body-mid);
}
.content .thumbinner {
background-color: var(--thumb-bg);
}
.content .thumbimage {
border: 1px solid transparent;
border-bottom: none;
}
.content .thumbcaption {
margin: 0;
padding: 4px 6px !important;
color: inherit;
background: var(--thumb-caption-bg);
}
.content table.messagebox {
margin: 0.5em auto;
}
.content table a > img {
max-width: inherit !important;
height: inherit !important;
}
.content .infobox a > img {
max-width: 100% !important;
height: auto !important;
}
.content .infobox-bonuses a > img {
max-width: inherit !important;
height: inherit !important;
}
53ca73c6a07f730b4c8ff517af58bcadd940e669
Module:Infobox
828
102
1693
1634
2024-04-02T11:46:26Z
Gau Cho
5
Add smw property Infobox
Scribunto
text/plain
--[=[
-- For documentation, see [[Module:Infobox/doc]]
--]=]
-- <nowiki>
-- Edit button for unknown params
local editbutton = require('Module:Edit button')
local Infobox = {}
Infobox.__index = Infobox
--[[
Infobox class
-- config: table containing configuration parameters
-- params : definitions for each used value
-- args : values passed from the Template
---- the following values are treated specially: default_version, version, version1, version2...
--]]
function Infobox.new(config, params, args)
local obj = setmetatable({
args_raw = args, -- parameters (uncleaned)
args_parsed = {}, -- parsed parameters
args_smw = {}, -- parameters parsed for smw
infobox_name = nil, -- template name
param_names = {}, -- ordered param list
params = {}, -- param definitions
max_buttons = 6, -- If there are more buttons than the max, the buttons will become a dropdown menu
default_version = 1, -- default version to populate the infobox
versions = nil, -- number of versions
version_names = {}, -- title of each version (for selection and SMW)
rtable = nil, -- infobox table to return at the end
switch_datatable = '', -- datatable for javascript for switch infoboxes
categories = {}, -- set of categories
errors = {}, -- list of errors
__smw_debug = {}, -- debug data for smw subobjects
},
Infobox)
-- Step 1, setup config vars and count the versions
obj:config(config)
obj:parse_versions()
-- Step 2, process the params
obj:define_params(params)
obj:parse_params()
-- Table
obj:table_header()
obj:buttons()
-- Misc
obj:store_smw()
obj:parse_categories()
return obj
end
--[[
Refers to a param after being processed by the validating func
Used in add_row(), define_params() and is_param_defined()
--]]
function Infobox.param(param_name)
param = {
property = 'args_parsed',
param_name = param_name,
}
return param
end
--[[
Refers to a param in raw form as passed from the Template
Used in add_row(), define_params() and is_param_defined()
--]]
function Infobox.raw_param(param_name)
param = {
property = 'args_raw',
param_name = param_name,
}
return param
end
--[[
Refers to a param after being processed by the validating smw_func
Used in add_row(), define_params() and is_param_defined()
--]]
function Infobox.smw_param(param_name)
param = {
property = 'args_smw',
param_name = param_name,
}
return param
end
--[[
Checks to see if a param is defined.
-- param: Infobox.param(name), Infobox.raw_param(name) or Infobox.smw_param(name)
Returns 0 if param is never defined
1 if param is defined for a fraction of the versions
2 if param is defined for all versions
]]
function Infobox:is_param_defined(param)
local undefined = 0
local defined = 0
for version = 1, self.versions do
local value = self:get_param(param, version)
if value ~= nil then
defined = 1
else
undefined = 1
end
end
return 1 + defined - undefined
end
--[[
Adds a row to the infobox table
Parameter should be a table of cells, where each cell is a table with the following arguments:
-- tag : 'td' or 'th'
-- content : a string or Infobox.param(name), Infobox.raw_param(name), Infobox.smw_param(name)
-- attr (optional) : mw.html:attr({ arg1 = '1', ... })
-- css (optional) : mw.html:css({ arg1 = '1', ...)
-- class (optional) : mw.html:addClass('arg')
---- class also supports a table of values, even though mw.html:addClass() does not
---- common classes: infobox-subheader
-- rowspan (optional) : mw.html:attr('rowspan',arg)
-- colspan (optional) : mw.html:attr('colspan',arg)
-- title (optional) : mw.html:attr('title',arg)
The row itself may be assigned a single class by setting the value of the key addClass
-- addClass : mw.html:addClass('arg')
-- this function currently only supports a single string
--]]
function Infobox:add_row(...)
local args = ...
local _row = self.rtable:tag('tr')
-- For each cell
for _, v in ipairs(args) do
local _cell = _row:tag(v.tag)
-- Optional parameters
if v.attr then
_cell:attr(v.attr)
end
if v.colspan then
_cell:attr('colspan',v.colspan)
end
if v.rowspan then
_cell:attr('rowspan',v.rowspan)
end
if v.title then
_cell:attr('title',v.title)
end
if v.css then
_cell:css(v.css)
end
if v.class then
if type(v.class) == 'string' then
_cell:addClass(v.class)
-- mw.html:addClass() doesn't function with tables, add in a loop
elseif type(v.class) == 'table' then
for _, w in ipairs(v.class) do
_cell:addClass(w)
end
end
end
-- Populate the cell contents
local content = self:get_param(v.content, self.default_version)
if content == nil then
content = self.params[v.content.param_name].empty
end
_cell:wikitext(content)
-- Add the switch data if multiple values exist
data_attr_param = self:add_switch_data(v.content)
if data_attr_param then
_cell:attr('data-attr-param', data_attr_param)
end
end
-- allow classes to be defined on the whole row
if args.addClass then
_row:addClass(args.addClass)
end
return self
end
--[[
Adds a blank row of padding spanning the given number of columns
--]]
function Infobox:pad(colspan, class)
local tr = self.rtable:tag('tr'):tag('td'):attr('colspan', colspan or 1):addClass('infobox-padding')
if class then
tr:addClass(class)
end
return self
end
--[[
Adds a class to the table as a whole
--]]
function Infobox:addClass(arg)
self.rtable:addClass(arg)
return self
end
--[[
Setup config values
-- config: table containing configuration parameters
---- infobox_name = mandatory unique identifier for this infobox, used for css
---- max_buttuons = max number of switch buttons before using a dropdown list instead
--]]
function Infobox:config(config)
for k, v in pairs(config) do
if k == 'infobox_name' then
self.infobox_name = mw.ustring.gsub(v, '%s', '_')
elseif k == 'max_buttons' then
self.max_buttons = tonumber(v)
end
end
if self.infobox_name == nil then
table.insert(self.errors, 'infobox_name needs to be defined in Infobox.new()\'s config!')
end
return self
end
--[[
Counts the number of versions in the infobox
Populates Infobox.version_names
Sets Infobox.default_version
--]]
function Infobox:parse_versions()
-- Count the versions and setup self.version_names
local i = 1
while self.args_raw['version'..i] do
table.insert(self.version_names, self.args_raw['version'..i])
i = i + 1
end
self.versions = i - 1
-- Handle the no version case - check for a custom version_name
if self.versions == 0 then
table.insert(self.version_names, self.args_raw['version'] or 'DEFAULT')
end
-- Should either have 0 or 2+ versions
if self.versions == 1 then
table.insert(self.errors, 'There should be multiple versions or no versions. If defining a custom version name for a single entry, use "version=Name" instead of "version1=Name".')
self.versions = 0
end
-- Check for a default_version
if self.args_raw['default_version'] then
self.default_version = tonumber(self.args_raw['default_version'])
if self.default_version > self.versions then -- Make sure the default version exists
self.default_version = 1
end
end
end
--[[
Define all used parameters (except for default_version/version)
-- name : parameter name as used in the Template
-- func : function to validate and process the Template argument
-- If func is a function, will call func(Infobox.raw_param(name))
-- If func is a table, contains the following key-value pairs:
---- name : function
---- params : list of arguments to pass to the function (use Infobox.raw_param(),
---- Infobox.param() and Infobox.smw_param() to use arguments)
-- empty (optional) : text to display in the infobox if func returns nil, defaults to "? (edit)"
-- category_never : category to add if func returns nil for all versions
-- category_partial : category to add if func returns nil for some versions, but a value for other versions
-- category_incomplete : category to add if func returns nil for at least 1 version (i.e. category_never and category_partial combined)
-- category_complete : category to add if func returns a value for all versions
-- smw_property (optional) : if this string is defined, the parameter will be saved into smw
-- smw_func (optional) : function to validate and process the Template argument to save into smw
-- func is used by default if smw_func is not defined
--]]
function Infobox:define_params(...)
-- For every parameter, store its corresponding function to self.params
for _, v in ipairs(...) do
if v.name then
local param = {}
-- Copy the function
if type(v.func) == 'function' or type(v.func) == 'table' then
param.func = v.func
end
-- If smw_property is defined, then use smw_func, or default to func if it is not defined
if v.smw_property then
param.smw_property = v.smw_property
if type(v.smw_func) == 'function' or type(v.smw_func) == 'table' then
param.smw_func = v.smw_func
else
param.smw_func = param.func
end
end
-- If empty is not defined, default message is "? (edit)"
param.empty = v.empty or editbutton("'''?''' (edit)")
-- Get the category names
param.category_never = v.category_never
param.category_partial = v.category_partial
param.category_incomplete = v.category_incomplete
param.category_complete = v.category_complete
-- Store the param
self.params[v.name] = param
table.insert(self.param_names, v.name)
end
end
return self
end
--[[
Fetches a param value. If the value is nil, will return the default value instead
-- arg: a non-table value (string, number, etc), or Infobox.param(name), Infobox.raw_param(name), Infobox.smw_param(name)
-- version: 0/'' for default, or else a number
Returns arg if a constant
param value (or default value) if Infobox.param(name), Infobox.raw_param(name), Infobox.smw_param(name)
--]]
function Infobox:get_param(arg, version)
if version == 0 then
version = ''
end
-- Handle Infobox.param(), Infobox.raw_param(), Infobox.smw_param()
if type(arg) == 'table' then
local value = self[arg.property][arg.param_name..version]
-- If nil, grab default value (which could be nil as well)
if value == nil then
value = self[arg.property][arg.param_name]
end
return value
end
-- Everything else passes through unmodified (string, number, etc)
return arg
end
--[[
Calculates the parsed value of a param
-- param_name : param_name as a string
-- version : 0/'' for default, or else a number
-- smw : boolean, will use smw_func if true, or func is false
--]]
function Infobox:parse_param(param_name, version, smw)
if version == 0 then
version = ''
end
-- use func or smw_func depending on smw argument
local param = self.params[param_name]
local func = smw and param.smw_func or param.func
-- call functions by passing the param_name
if type(func) == 'function' then
return func(self:get_param(self.raw_param(param_name), version))
-- call tables by grabbing the function and reading the param arguments
elseif type(func) == 'table' then
local func_name = func.name
local func_params = func.params
local func_fetched_params = {}
for _, func_param in ipairs(func_params) do
table.insert(func_fetched_params, self:get_param(func_param, version))
end
return func_name(unpack(func_fetched_params))
else
table.insert(self.errors, 'Invalid param definition for '..param_name)
end
end
--[[
Parses all the param values (args_parsed and args_smw)
--]]
function Infobox:parse_params()
-- Calculate the param value for all params and all versions
for _, param_name in ipairs(self.param_names) do
for version=0, self.versions do
if version == 0 then
version = ''
end
-- get the parsed value
self.args_parsed[param_name..version] = self:parse_param(param_name, version, false)
-- Only get the smw value if smw_property is defined
if self.params[param_name].smw_property then
self.args_smw[param_name..version] = self:parse_param(param_name, version, true)
end
end
end
end
--[[
Creates the table header
--]]
function Infobox:table_header()
-- Create infobox table
self.rtable = mw.html.create('table')
:addClass('plainlinks')
:addClass('infobox')
:addClass('infobox-'..self.infobox_name)
-- Create the switch datatable if multiple versions
if self.versions > 1 then
self.rtable:addClass('infobox-switch')
self.switch_datatable = mw.html.create('div')
:addClass('infobox-switch-resources')
:addClass('infobox-resources-'..self.infobox_name)
:addClass('hidden')
end
return self
end
--[[
If multiple versions exist, creates a set of buttons for switching
-- self.max_buttons : if the number of versions exceeds this value, a dropdown will be created instead
--]]
function Infobox:buttons()
if self.versions < 2 then
return
end
-- Button caption
local buttons = self.rtable:tag('caption')
:tag('div')
:addClass('infobox-buttons')
:attr('data-default-index', self.default_version)
-- Dropdown list instead of buttons if too many versions
if self.versions > self.max_buttons then
buttons:addClass('infobox-buttons-select')
end
-- Create all the buttons
for version=1, self.versions do
local button = buttons:tag('span')
:attr('data-switch-index', version)
:attr('data-switch-anchor', '#'..self.version_names[version])
:addClass('button')
:wikitext(self.version_names[version])
-- In case of dropdown list, hide the buttons as the switch gadget will convert them to a dropdown list - we can't directly create the dropdown list here as the select/option tags are rejected by wikitext
if self.versions > self.max_buttons then
button:addClass('hidden')
end
end
end
--[[
For each version, stores a subobject for all params that have smw_property defined
--]]
function Infobox:store_smw()
local versions = (self.versions > 1) and self.versions or 1 -- Grab versions, but convert 0 -> 1
for version=1, versions do
-- Generate a subobject name
-- Reminder - subobject name cannot have a . in the first 5 characters
local subobject_name = 'Infobox.'..mw.title.getCurrentTitle().fullText..'#'..self.version_names[version]
-- Store each param that has smw_property defined and is not nil
local subobject = {Infobox = self.infobox_name} -- Also store the current Infobox name
for _, param_name in ipairs(self.param_names) do
local property = self.params[param_name].smw_property
if property then
value = self:get_param(self.smw_param(param_name), version)
if value ~= nil then
subobject[property] = value
end
end
end
-- Keep a copy for debugging
self.__smw_debug[subobject_name] = subobject
-- Save subobjects if not in mainspace
if mw.title.getCurrentTitle():inNamespace(0) then
local result = mw.smw.subobject(subobject, subobject_name)
if result ~= true then
table.insert(self.errors, 'SMW error: '..result.error)
end
end
end
end
--[[
Automatically add categories for each param as defined in define_params()
--]]
function Infobox:parse_categories()
for _, param_name in ipairs(self.param_names) do
local param = self.params[param_name]
local defined = self:is_param_defined(Infobox.param(param_name))
if defined == 0 and param.category_never then
self.categories[param.category_never] = 1
end
if defined == 1 and param.category_partial then
self.categories[param.category_partial] = 1
end
if defined < 2 and param.category_incomplete then
self.categories[param.category_incomplete] = 1
end
if defined == 2 and param.category_complete then
self.categories[param.category_complete] = 1
end
end
end
--[[
When a parameter is added into the table, add the alternative versions' data into the switch datatable
-- content : a non-table value (string, number, etc), or Infobox.param(name), Infobox.raw_param(name), Infobox.smw_param(name)
Returns the name of the parameter in the tag 'data-attr-param'
--]]
function Infobox:add_switch_data(content)
if self.versions <= 1 then
return false
end
-- Only needed for non-constant params
if type(content) ~= 'table' then
return false
end
-- Only needed if the param changes value between different versions
local first_value = self:get_param(content, 1)
local all_same = true
for version=2, self.versions do
if first_value ~= self:get_param(content, version) then
all_same = false
break
end
end
if all_same then
return false
end
-- Let's build the datatable
-- datum name: Prepend raw__ or smw__ if not a parsed argument
local name = content.param_name
if content.property == 'args_raw' then
name = 'raw__' + name
end
if content.property == 'args_smw' then
name = 'smw__' + name
end
data_param = self.switch_datatable:tag('span'):attr('data-attr-param', name)
-- Add each version to the datatable
for version=1, self.versions do
text = self:get_param(content, version)
if text == nil then
text = self.params[content.param_name].empty
end
data_param:tag('span'):attr('data-attr-index', version):wikitext(text)
end
-- return the 'data-attr-param' name
return name
end
--[[
Override tostring
--]]
function Infobox:__tostring()
-- Create error messages
local error_text = ''
for _, v in ipairs(self.errors) do
error_text = error_text..'<span class="mw-message-box-error">'..v..'</span>'
end
-- Create categories
local category_text = ''
for key, _ in pairs(self.categories) do
category_text = category_text..'[[Category:'..key..']]'
end
return tostring(self.rtable) .. tostring(self.switch_datatable) .. error_text .. category_text
end
--[[
Debug function
--]]
function Infobox:dump()
-- Temporarily detach the metatable so we don't override tostring anymore, allowing us to use dumpObject
setmetatable(self, nil)
mw.log(mw.dumpObject(self))
setmetatable(self, Infobox)
mw.log(tostring(self))
end
return Infobox
09c1df4d46883941533254fba456f9e0b0ac8ffe
User:Gau Cho/common.css
2
807
1694
2024-04-02T11:51:16Z
Gau Cho
5
Created page with ":root { --infobox-text-color: var(--text-color); --table-header: var(--body-dark); --table-subheader: var(--body-mid); --table-body: var(--body-light); --table-border: var(--body-border); } .infobox .infobox-buttons .button .button-selected { background: var(--table-subheader); }"
css
text/css
:root {
--infobox-text-color: var(--text-color);
--table-header: var(--body-dark);
--table-subheader: var(--body-mid);
--table-body: var(--body-light);
--table-border: var(--body-border);
}
.infobox .infobox-buttons .button .button-selected {
background: var(--table-subheader);
}
5e342369bb67b8e231e1ea01c57f37420fdb4325
1695
1694
2024-04-02T11:54:51Z
Gau Cho
5
css
text/css
/*<syntaxhighlight lang="css">*/
:root {
--infobox-text-color: var(--text-color);
--table-header: var(--body-dark);
--table-subheader: var(--body-mid);
--table-body: var(--body-light);
--table-border: var(--body-border);
}
.infobox .infobox-buttons .button .button-selected {
background: var(--table-subheader);
}
/*</syntaxhighlight>*/
fee039717f00143be5b9cabcae2ac384e8fd3a4a
1696
1695
2024-04-02T11:57:27Z
Gau Cho
5
css
text/css
/*<syntaxhighlight lang="css">*/
:root {
--infobox-text-color: var(--text-color);
--table-header: var(--body-dark);
--table-subheader: var(--body-mid);
--table-body: var(--body-light);
--table-border: var(--body-border);
}
.infobox .infobox-buttons .button.button-selected {
background: var(--table-subheader);
}
/*</syntaxhighlight>*/
1e3523b764a873bd1bdbe3d1e15b88beaccd1411
1697
1696
2024-04-02T12:05:17Z
Gau Cho
5
css
text/css
/*<syntaxhighlight lang="css">*/
:root {
--infobox-text-color: var(--text-color);
--table-header: var(--body-dark);
--table-subheader: var(--body-mid);
--table-body: var(--body-light);
--table-border: var(--body-border);
}
.infobox .infobox-buttons .button.button-selected {
background: var(--table-subheader);
}
.infobox select {
max-width: 300px;
}
/*</syntaxhighlight>*/
c1fea9207d2237c65a8979597a4f48b9c17ec71f
1700
1697
2024-04-02T13:48:39Z
Gau Cho
5
css
text/css
/*<syntaxhighlight lang="css">*/
/*</syntaxhighlight>*/
8dee306bbb0b2e944831424a41c7354436cf630e
File:Hopeport - art from Andrew Gower twitter banner.jpg
6
808
1703
2024-04-02T18:23:45Z
HammerTimeMage
59
Image of Hopeport from Andrew Gower's (@AndrewCGower) X account header.
wikitext
text/x-wiki
== Summary ==
Image of Hopeport from Andrew Gower's (@AndrewCGower) X account header.
c65fcc674c233ae7e31370ebce6dc89808ef0fea
File:Hopeport - art from Andrew Gower twitter banner.jpg
6
808
1704
1703
2024-04-02T18:27:13Z
Merds
25
Merds moved page [[File:1500x500.jpg]] to [[File:Hopeport - art from Andrew Gower twitter banner.jpg]] without leaving a redirect: to be moved further when there's a better name
wikitext
text/x-wiki
== Summary ==
Image of Hopeport from Andrew Gower's (@AndrewCGower) X account header.
c65fcc674c233ae7e31370ebce6dc89808ef0fea
MediaWiki:Minerva.less/infobox.less
8
418
1705
672
2024-04-02T19:33:59Z
Merds
25
less
less
/* ====================
infoboxes
==================== */
@infobox-background: @BODY_LIGHT;
@infobox-header-color: @BODY_DARK;
@infobox-border-color: @BODY_BORDER;
@infobox-subheader-color: @BODY_MID;
.infobox {
font-size: 85%;
background-color: @infobox-background;
border: 1px solid @infobox-border-color;
box-shadow: @box-shadow;
table-layout: fixed;
// override minerva's mobile-friendlyness
// our infoboxes shouldn't be scrollable anyway
.content & {
display: table;
caption {
display: table-caption;
background: none; // bg in > 720px
}
}
.infobox-header {
color: @white;
font-size: 1.15em;
background: @infobox-header-color;
padding: .5em 0;
text-align: center;
}
.infobox-subheader {
background: @infobox-subheader-color;
line-height: 2em;
text-align: center;
color: @white;
a {
color: var(--link-color);
}
}
th:not(.infobox-nested):not(.infobox-subheader):not(.infobox-header) {
text-align: right;
vertical-align: top;
border-right: 2px solid @infobox-subheader-color;
padding: 0.2em 0.5em;
}
caption.infobox-caption {
text-align: center;
}
td {
padding: 0.25em 0.5em;
line-height: 1.6em;
&.infobox-nested {
padding: 0.25em 0;
line-height: 1em;
}
}
.infobox-padding {
height: 0.5em;
padding: 0;
border: 0;
}
.infobox-image {
text-align: center;
// for inventory icon in infobox item
&.inventory-image {
height: 32px; // functions as min-height
}
}
.infobox-nested {
text-align: center;
&+.infobox-nested {
border-left: 2px solid @infobox-subheader-color;
}
}
.infobox-cell-hidden {
display: none;
}
.infobox-full-width-content {
max-width: 300px;
text-align: center;
overflow-x: hidden;
padding: 0;
}
}
// (dirty trick) Hide a silly bug in switch infoboxes:
// switching between versions where there is a Quantity box followed by text will cause the text to be duplicated on switch
// This currently only occurs where the text consists of "? (edit)" links, so hiding consecutive edit links works to hide this
// This should ideally be fixed for real though, instead of just hiding it.
.skill-info a[href$="?action=edit"] + a[href$="?action=edit"] {
display: none;
}
.infobox-buttons {
margin-top: 0.5em;
text-align: center;
}
.infobox-bottom-links {
display: none;
}
// Hides advanced data. Class gets replaced by .advanced-data-display
// if the showAdvancedData gadget is enabled.
.advanced-data {
display: none;
}
@media screen and (min-width: @width-breakpoint-tablet) {
.content table.infobox {
float: right;
margin-top: 0.5em;
margin-left: 1em;
width: 300px !important; // Needed to compete with !important for .content table
&.skill-info {
float: none;
margin: 0 0 1em 0;
}
}
}
// [[Template:Multi Infobox]] styles
.multi-infobox {
margin-top: 0.5em;
margin-bottom: 2.5em;
.tabber {
margin: 0;
.tabbernav {
text-align: center;
margin-left: 0;
}
// extra specific to override base style
.mw-body & .tabbertab {
padding: 5px;
}
}
table.infobox {
margin: 0;
}
.infobox-buttons {
margin-top: 0;
}
}
@media screen and (min-width: @width-breakpoint-tablet) {
.multi-infobox {
float: right;
margin-left: 1em;
width: 300px;
}
}
/*
The following styles were used as a temporary fix for TabberNeue.
We're currently using old Tabber because TabberNeue breaks if a tab
dynamically changes size, such as multi-infobox.
*/
/*
.multi-infobox {
margin-top: 0.5em;
margin-bottom: 2.5em;
.tabber__header {
text-align: center;
margin-left: 0;
justify-content: center;
}
.tabber__panel {
margin: 0;
padding: 0;
}
.tabber__panel.tabber__panel--active {
width: 100%;
}
.infobox-buttons {
margin-top: 0;
}
}*/
7ef683bd0ab8d4f83ed52da62d5f6e66fff5911d
MediaWiki:Common.less/infobox.less
8
26
1706
1701
2024-04-02T19:35:42Z
Merds
25
less
less
:root {
--infobox-text-color: var(--text-color);
--table-header: var(--body-dark);
--table-subheader: var(--body-mid);
--table-body: var(--body-light);
--table-border: var(--body-border);
}
/* Infobox */
.infobox {
font-size: .85em;
width: 300px;
border-collapse: collapse;
float: right;
table-layout: fixed;
margin: 0.5em 0 1em 1em;
.infobox-buttons {
display: flex;
flex-wrap: wrap;
justify-content: center;
grid-gap: 3px;
margin-bottom: 3px;
.button {
background: var(--table-subheader);
padding: 0 5px;
font-weight: bold;
flex: 1 1 20%;
max-width: 20%;
color: @white;
}
.button.button-selected {
background: var(--table-header);
}
}
tbody {
border: 1px solid var(--table-border);
background: var(--table-body);
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(231, 215, 199, 0.5);
}
.infobox-header {
background: var(--table-header);
padding: 0.5em 0;
text-align: center;
color: @white;
font-size: 1.15em;
font-weight: bold;
line-height: 1.4em;
}
.infobox-image {
text-align: center;
}
.infobox-subheader {
background: var(--table-subheader);
font-weight: bold;
text-align: center;
color: @white;
a {
color: var(--link-color);
}
}
.infobox-padding {
backgound: var(--table-body);
}
tr td:not(.infobox-padding) {
padding: 0.2em 0.5em;
}
th:not(.infobox-header):not(.infobox-subheader):not(.infobox-nested) {
border-right: 2px solid var(--table-subheader);
text-align: right;
padding: 0.2em 0.5em;
}
select {
max-width: 300px;
}
}
.hidden {
display: none;
}
d900151dc6a84bafb4f7517f5178ea4fbed05d42
MediaWiki:Minerva.css
8
422
1707
1691
2024-04-02T19:35:50Z
Merds
25
Updating CSS from [[MediaWiki:Minerva.less]]
css
text/css
/* <pre> */
body {
font-family: system-ui, -apple-system, Roboto, Helvetica, sans-serif;
}
@media all and (max-width: 320px) {
body {
font-size: 0.9em;
}
}
.content {
line-height: 1.7;
}
.pre-content h1,
.content h1,
.content h2 {
font-weight: bold;
}
body {
background: var(--body-background-color);
color: var(--text-color);
}
select {
color: var(--text-color);
}
a:not( [ href ] ) {
color: inherit;
}
a.external,
.mw-parser-output a.external {
background-image: var(--external-icon);
}
blockquote {
border-color: var(--body-mid);
font-family: inherit;
}
.pre-content h1 {
text-align: center;
}
.mw-parser-output h2:first-of-type {
clear: both;
}
.content .mw-parser-output > h2,
.content .section-heading {
border-color: var(--sidebar);
}
.content .mw-parser-output > h2,
.content .section-heading {
border-color: var(--sidebar);
}
.content .plainlist ol,
.content .plainlist ul {
padding: 0;
}
.content p {
margin: 0.5em 0;
}
.content hr {
background: none;
border-color: var(--sidebar);
border-style: solid;
border-width: 1px 0 0 0;
height: initial;
}
.content kbd,
.content samp {
border: none;
}
.content code,
.content pre {
background-color: var(--mw-code-background-color);
border: 1px solid var(--body-border);
}
:root {
--searchbutton-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 20 20'%3E%3Cg fill='%23000'%3E%3Cpath d='M12.2 13.6a7 7 0 1 1 1.4-1.4l5.4 5.4-1.4 1.4-5.4-5.4zM3 8a5 5 0 1 0 10 0A5 5 0 1 0 3 8z'/%3E%3C/g%3E%3C/svg%3E");
--external-icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' encoding='UTF-8'%3F%3E%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='10' viewBox='0 0 10 10'%3E%3Cg fill='%23906039'%3E%3Cpath d='M8.9 8.9H1.1V1.1h2.8V0H1.1C.5 0 0 .5 0 1.1v7.8C0 9.5.5 10 1.1 10h7.8c.6 0 1.1-.5 1.1-1.1V6.1H8.9v2.8z'/%3E%3Cpath d='M10 0H5.6l1.8 1.8L4.2 5l.8.8 3.2-3.2L10 4.4V0z'/%3E%3C/g%3E%3C/svg%3E");
}
#mw-mf-page-center {
background-color: transparent;
}
.header {
border-top: none;
}
.header-container.header-chrome {
background: var(--body-background-image) var(--body-background-color) no-repeat;
background-color: var(--body-background-color);
background-size: 900px;
box-shadow: inset 0 -1px 3px rgba(0, 0, 0, 0.1);
}
.header-container .notification-count {
border-radius: 50%;
}
.header-container .notification-count.notification-unseen {
background: none;
}
.header-container .branding-box {
opacity: 1;
}
.search-box {
text-align: right;
}
.search-box .search {
background-color: var(--search-box);
border-color: var(--search-box);
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
}
.search-box .search::placeholder {
color: var(--byline-color);
}
.client-nojs .search-box .search:focus,
.search-overlay .search-box .search:focus {
border-color: var(--link-color);
box-shadow: inset 0 0 0 1px var(--link-color), 0 1px 1px rgba(0, 0, 0, 0.05);
}
.mw-ui-background-icon-search {
background-image: var(--searchbutton-icon);
}
.overlay {
background: var(--body-main);
}
.overlay textarea {
color: var(--text-color);
}
.overlay.search-overlay {
background: var(--body-main);
}
.overlay.search-overlay .results,
.overlay.search-overlay .search-feedback {
background-color: var(--body-light);
}
.overlay.search-overlay .search-content {
border-color: var(--body-mid);
}
.overlay .license {
color: var(--base-text-color);
}
.overlay .panel {
border-color: var(--sidebar);
}
.overlay .content-header {
background-color: var(--body-light);
border-color: transparent;
}
.overlay.overlay-loading {
background: var(--ooui-window-background);
}
.overlay .overlay-content {
background: var(--body-main);
}
.page-summary h2,
.page-summary h3 {
color: var(--text-color);
}
.page-list li,
.topic-title-list li,
.site-link-list li {
border-color: var(--body-mid);
}
.overlay-enabled .overlay:not(.editor-overlay),
.overlay-enabled #mw-mf-page-center {
overflow-y: scroll;
}
.overlay-header-container,
.overlay-footer-container {
background-color: var(--body-background-color);
border-color: transparent;
}
.editor-overlay .wikitext-editor {
color: var(--text-color);
}
.editor-overlay .overlay-header {
outline-color: transparent;
}
.editor-overlay .summary-request {
color: var(--text-color);
}
.editor-overlay .editor-switcher {
border: none;
}
.action-submit .mw-editnotice .action-edit .mw-editnotice,
.action-submit .mw-editTools,
.action-edit .mw-editTools,
.action-submit .preview-limit-report-wrapper,
.action-edit .preview-limit-report-wrapper,
.action-submit .diff-otitle,
.action-edit .diff-otitle,
.action-submit .diff-ntitle,
.action-edit .diff-ntitle,
.action-submit #section_0,
.action-edit #section_0,
.action-submit #editpage-copywarn,
.action-edit #editpage-copywarn,
.action-submit #mw-anon-edit-warning,
.action-edit #mw-anon-edit-warning {
color: var(--byline-color);
}
.wikitext-editor {
background-color: var(--body-main);
}
.ve-mobile-fakeToolbar {
border: none;
}
.ve-mobile-fakeToolbar-container {
background: var(--body-background-color);
border: none;
}
.ve-mobile-fakeToolbar .mw-ui-icon-mf-spinner {
border-color: transparent;
}
.ve-ui-targetToolbar-mobile .oo-ui-toolbar-tools > .ve-ui-toolbar-group-back {
border-color: transparent;
}
.ve-ui-mobileContext {
background-color: var(--body-light);
border-color: var(--body-light);
}
.ve-ui-mobileContext .ve-ui-linearContextItem-body-action-wrapper {
border-color: var(--body-border);
}
.ve-ui-linearContextItem-foot:not(:empty) {
border-color: var(--body-border);
}
.ve-ui-mwSaveDialog-options {
backgroubd-color: var(--body-light);
border-color: var(--body-mid);
}
.page-actions-menu {
border-color: var(--sidebar);
}
#language-selector {
display: none;
}
.minerva__tab-container .minerva__tab {
color: var(--text-color);
}
.minerva__tab-container .minerva__tab.new,
.minerva__tab-container .minerva__tab.new:visited,
.minerva__tab-container .minerva__tab.new:hover,
.minerva__tab-container .minerva__tab.new:active {
color: var(--redlink-color);
}
.minerva__tab-container .minerva__tab.selected {
border-color: var(--body-border);
}
.heading-holder .tagline {
color: var(--base-heading-color);
}
.minerva-footer {
border-color: transparent;
}
.mw-footer > .post-content {
margin-top: 32px;
}
.mw-footer > .post-content > .minerva-footer-logo {
display: none;
}
.mw-footer .hlist li:after {
color: var(--background-text-color);
}
.last-modified-bar {
border-top: 1px solid;
border-color: transparent;
background: none;
color: var(--text-color);
}
.last-modified-bar a,
.last-modified-bar a:active,
.last-modified-bar a:visited,
.last-modified-bar .last-modified-text-accent {
color: var(--background-text-color);
}
.last-modified-bar.active,
.last-modified-bar.active:active,
.last-modified-bar.active:visited,
.last-modified-bar.active .last-modified-text-accent {
color: #fff;
}
.mw-ui-icon-mf-expand-gray:not(.mw-ui-icon-mf-expand-invert):before {
background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 20 20'%3E%3Ctitle%3Eexpand%3C/title%3E%3Cg fill='%2354595d'%3E%3Cpath d='M17.5 4.75l-7.5 7.5-7.5-7.5L1 6.25l9 9 9-9z'/%3E%3C/g%3E%3C/svg%3E");
}
.toggle-list__list {
background-color: var(--wikitable-bg);
}
.toggle-list-item__anchor:visited,
.toggle-list-item__anchor:active {
color: var(--base-text-color);
}
.toggle-list-item:hover {
background: var(--wikitable-bg-lighter);
}
.toggle-list-item__label {
color: var(--base-text-color);
}
.mw-ui-icon-wikimedia-search-base20:before {
background-image: url("data:image/svg+xml,%3C%3Fxml version='1.0' encoding='UTF-8'%3F%3E%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 20 20'%3E%3Ctitle%3Esearch%3C/title%3E%3Cg fill='white'%3E%3Cpath fill-rule='evenodd' d='M12.2 13.6a7 7 0 111.4-1.4l5.4 5.4-1.4 1.4-5.4-5.4zM13 8A5 5 0 113 8a5 5 0 0110 0z'/%3E%3C/g%3E%3C/svg%3E%0A");
}
.mw-ui-icon-wikimedia-menu-base20:before {
background-image: url("data:image/svg+xml,%3C%3Fxml version='1.0' encoding='UTF-8'%3F%3E%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 20 20'%3E%3Ctitle%3Emenu%3C/title%3E%3Cg fill='white'%3E%3Cpath d='M1 3v2h18V3zm0 8h18V9H1zm0 6h18v-2H1z'/%3E%3C/g%3E%3C/svg%3E%0A");
}
.mw-ui-icon-wikimedia-bellOutline-base20:before {
background-image: url("data:image/svg+xml,%3C%3Fxml version='1.0' encoding='UTF-8'%3F%3E%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 20 20'%3E%3Ctitle%3Ebell%3C/title%3E%3Cg fill='white'%3E%3Cpath d='M11.5 2.19C14.09 2.86 16 5.2 16 8v6l2 2v1H2v-1l2-2V8c0-2.8 1.91-5.14 4.5-5.81V1.5C8.5.67 9.17 0 10 0s1.5.67 1.5 1.5v.69zM10 4C7.79 4 6 5.79 6 8v7h8V8c0-2.21-1.79-4-4-4zM8 18h4c0 1.1-.9 2-2 2s-2-.9-2-2z'/%3E%3C/g%3E%3C/svg%3E%0A");
}
.mw-ui-icon-minerva-userAvatarOutline:before {
background-image: url("data:image/svg+xml,%3C%3Fxml version='1.0' encoding='UTF-8'%3F%3E%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 20 20'%3E%3Ctitle%3Euser avatar%3C/title%3E%3Cg fill='white'%3E%3Cpath d='M10 8c1.7 0 3.06-1.35 3.06-3S11.7 2 10 2 6.94 3.35 6.94 5 8.3 8 10 8zm0 2c-2.8 0-5.06-2.24-5.06-5S7.2 0 10 0s5.06 2.24 5.06 5-2.26 5-5.06 5zm-7 8h14v-1.33c0-1.75-2.31-3.56-7-3.56s-7 1.81-7 3.56V18zm7-6.89c6.66 0 9 3.33 9 5.56V20H1v-3.33c0-2.23 2.34-5.56 9-5.56z'/%3E%3C/g%3E%3C/svg%3E%0A");
}
@media all and (min-width: 1000px) {
.mw-ui-icon-with-label-desktop,
.mw-ui-icon-with-label-desktop:hover,
.mw-ui-icon-with-label-desktop:focus,
.mw-ui-icon-with-label-desktop:active,
.mw-ui-icon-with-label-desktop:visited {
color: var(--base-text-color) !important;
}
}
.header-action .mw-ui-icon-mf-close-base20:before {
background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 20 20'%3E%3Ctitle%3Eclose%3C/title%3E%3Cg fill='%23fff'%3E%3Cpath d='m4.3 2.9 12.8 12.8-1.4 1.4L2.9 4.3z'/%3E%3Cpath d='M17.1 4.3 4.3 17.1l-1.4-1.4L15.7 2.9z'/%3E%3C/g%3E%3C/svg%3E");
}
#mw-mf-page-left {
background-color: var(--body-background-color);
}
#mw-mf-page-left .secondary-action {
border-left-color: var(--body-mid);
}
#mw-mf-page-left ul li {
background-color: var(--body-main);
border-color: var(--body-mid);
}
#mw-mf-page-left ul li a {
color: var(--base-text-color);
}
#mw-mf-page-left ul li a:hover {
box-shadow: inset 4px 0 0 0 var(--link-color);
}
#mw-mf-page-left ul.hlist li a {
color: var(--background-link-color);
}
#mw-mf-page-left ul.hlist li a span {
font-size: 0.8125rem;
}
.notifications-overlay.navigation-drawer {
box-shadow: -1px 0 8px 0 rgba(0, 0, 0, 0.35);
}
.notifications-overlay .mw-echo-ui-actionMenuPopupWidget-menu {
border: none;
}
.mw-ui-anchor.mw-ui-progressive,
.mw-ui-anchor.mw-ui-progressive:active,
.mw-ui-anchor.mw-ui-progressive:hover,
.mw-ui-anchor.mw-ui-progressive:focus {
color: var(--link-color);
}
.minerva-talk-full-page-button {
background-color: var(--body-main);
border-color: var(--body-dark);
color: var(--link-color);
}
.minerva-talk-content-explained {
border-color: var(--sidebar);
color: var(--base-text-color);
}
.talk-overlay .comment .wikitext-editor {
border-color: var(--body-border);
}
.client-js .skin-minerva--talk-simplified .section-heading {
border-color: var(--sidebar);
}
.mw-notification a,
.toast a {
color: var(--link-color);
}
.drawer {
background-color: var(--body-light);
}
.drawer.references-drawer {
background-color: var(--body-light);
color: var(--text-color);
}
.drawer.references-drawer a {
color: var(--link-color);
}
.drawer.references-drawer .references-drawer__title {
color: var(--text-color);
}
.drawer.references-drawer .mw-ui-icon::before {
filter: brightness(0);
}
.cta-holder {
background: var(--body-light);
}
.cta-holder .desc {
color: var(--byline-color);
}
.mw-tag-marker {
border-color: var(--body-border);
}
.oo-ui-toolGroup {
background: var(--body-background-color);
}
.load-fail-msg {
color: var(--text-color);
}
.load-fail-msg-link a {
color: var(--link-color);
}
.image-carousel .image-loaded {
background: url("data:image/svg+xml,%3C%3Fxml version='1.0' encoding='UTF-8'%3F%3E%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16'%3E%3Cpath d='M0 0h8v16h8V8H0z' opacity='.13'/%3E%3C/svg%3E%0A") repeat;
}
.image-details {
background-color: var(--body-light);
border-color: transparent;
}
@media all and (min-width: 720px) {
.ns-special .pre-content {
background-color: transparent;
}
.ns-special .mw-body {
background: var(--body-main);
}
.ns-special .mw-body form {
background: transparent;
}
}
form.mw-mf-settings .oo-ui-fieldLayout,
form.mw-mf-settings .oo-ui-fieldLayout:first-child {
border-color: var(--body-mid);
}
.ns-special .content-header {
border-bottom-color: var(--body-dark);
}
.action-history .mw-history-compareselectedversions {
background-color: var(--body-main);
}
.action-history #pagehistory li:not(.selected) {
border-bottom-color: var(--sidebar);
}
ul.mw-contributions-list li,
ul.special li {
border-color: var(--sidebar);
}
.page-list li > a:not(.mw-ui-icon-element),
.topic-title-list li > a:not(.mw-ui-icon-element),
.site-link-list li > a:not(.mw-ui-icon-element) {
color: var(--byline-color);
}
.page-list.side-list .list-thumb,
.topic-title-list.side-list .list-thumb,
.site-link-list.side-list .list-thumb {
color: var(--text-color);
}
.page-list .info,
.topic-title-list .info,
.site-link-list .info,
.page-list .component,
.topic-title-list .component,
.site-link-list .component {
color: var(--byline-color);
}
.mw-mf-user {
color: var(--text-color);
}
.content .mw-index-pager-list-header {
background-color: var(--body-mid);
color: inherit;
font-family: inherit;
}
.diff-editfont-monospace {
font-family: monospace,monospace;
}
:root {
--diff-deletedline-background: #fbc0ba;
}
.minoredit {
background: var(--body-mid);
}
#mw-mf-diffview .mw-mf-diff-date {
color: var(--byline-color);
}
#mw-mf-diffview .mw-diff-inline-deleted del,
#mw-mf-diffview .mw-diff-inline-changed del {
background: var(--diff-deletedline-background);
color: var(--diff-deletedline-color);
border-radius: 0.33em;
}
#mw-mf-diffview .mw-diff-inline-added ins,
#mw-mf-diffview .mw-diff-inline-changed ins {
background: var(--diff-addedline-background);
color: var(--diff-addedline-color);
border-radius: 0.33em;
}
#mw-mf-diffview .mw-diff-inline-moved {
background: var(--diff-context-background);
}
#mw-mf-diffview #mw-mf-userinfo {
background: var(--body-light);
border-top-color: var(--body-border);
}
#mw-mf-diffview #mw-mf-userinfo .mw-mf-edit-count {
color: var(--text-color);
}
#mw-mf-diffview #mw-mf-userinfo .mw-mf-edit-count div {
color: var(--base-text-color);
}
.infobox {
font-size: 85%;
background-color: var(--body-light);
border: 1px solid var(--body-border);
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
table-layout: fixed;
}
.content .infobox {
display: table;
}
.content .infobox caption {
display: table-caption;
background: none;
}
.infobox .infobox-header {
color: #fff;
font-size: 1.15em;
background: var(--body-dark);
padding: 0.5em 0;
text-align: center;
}
.infobox .infobox-subheader {
background: var(--body-mid);
line-height: 2em;
text-align: center;
color: #fff;
}
.infobox .infobox-subheader a {
color: var(--link-color);
}
.infobox th:not(.infobox-nested):not(.infobox-subheader):not(.infobox-header) {
text-align: right;
vertical-align: top;
border-right: 2px solid var(--body-mid);
padding: 0.2em 0.5em;
}
.infobox caption.infobox-caption {
text-align: center;
}
.infobox td {
padding: 0.25em 0.5em;
line-height: 1.6em;
}
.infobox td.infobox-nested {
padding: 0.25em 0;
line-height: 1em;
}
.infobox .infobox-padding {
height: 0.5em;
padding: 0;
border: 0;
}
.infobox .infobox-image {
text-align: center;
}
.infobox .infobox-image.inventory-image {
height: 32px;
}
.infobox .infobox-nested {
text-align: center;
}
.infobox .infobox-nested + .infobox-nested {
border-left: 2px solid var(--body-mid);
}
.infobox .infobox-cell-hidden {
display: none;
}
.infobox .infobox-full-width-content {
max-width: 300px;
text-align: center;
overflow-x: hidden;
padding: 0;
}
.skill-info a[href$="?action=edit"] + a[href$="?action=edit"] {
display: none;
}
.infobox-buttons {
margin-top: 0.5em;
text-align: center;
}
.infobox-bottom-links {
display: none;
}
.advanced-data {
display: none;
}
@media screen and (min-width: 720px) {
.content table.infobox {
float: right;
margin-top: 0.5em;
margin-left: 1em;
width: 300px !important;
}
.content table.infobox.skill-info {
float: none;
margin: 0 0 1em 0;
}
}
.multi-infobox {
margin-top: 0.5em;
margin-bottom: 2.5em;
}
.multi-infobox .tabber {
margin: 0;
}
.multi-infobox .tabber .tabbernav {
text-align: center;
margin-left: 0;
}
.mw-body .multi-infobox .tabber .tabbertab {
padding: 5px;
}
.multi-infobox table.infobox {
margin: 0;
}
.multi-infobox .infobox-buttons {
margin-top: 0;
}
@media screen and (min-width: 720px) {
.multi-infobox {
float: right;
margin-left: 1em;
width: 300px;
}
}
.tile {
padding: 1.5em 2em 1em;
}
.tile h2 {
font-weight: 600;
border: none;
margin-top: 0.4em;
}
.tile .byline + h2 {
margin-top: -0.5em;
}
.tile-row {
background: var(--body-light) !important;
border: 1px solid var(--body-border);
}
.tile-top {
padding: 1.3rem 1.5rem 2rem;
}
.tile-bottom {
padding: 1rem 1.5rem 2rem;
}
.tile-bottom.read-more {
padding: 0;
}
.tile-bottom.read-more a {
padding: 1em 1.75em;
}
:root {
--mobile-navbox-wide-bg-color: #dcd3bf;
--mobile-navbox-linear-gradient: linear-gradient(to right, rgba(255, 255, 255, 0), var(--body-main) 95%, var(--body-main));
}
.navbox {
border: 1px solid var(--body-border);
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
font-size: 0.85em;
}
.content .navbox ul {
padding-left: 0;
}
.content .navbox ul li {
margin-bottom: 0;
}
@media screen and (max-width: 719px) {
.navbox td,
.navbox th,
.navbox tr,
.navbox tbody,
.navbox .navbox-subgroup {
display: block;
}
}
@media screen and (min-width: 720px) {
.content table.navbox,
.content .navbox table {
width: 100% !important;
}
}
.navbox .navbox-subgroup {
margin: 0;
}
.navbox .navbar {
display: none;
}
.navbox .plink-template,
.navbox img {
display: none;
}
.navbox-title {
color: var(--text-color);
background-color: var(--body-dark);
font-size: 140%;
text-align: center;
padding: 0.25em 0.85em;
}
@media screen and (min-width: 720px) {
.navbox-title {
border-bottom: 1px solid var(--body-border);
}
}
.navbox-group-title {
background-color: var(--body-mid);
text-align: left;
padding: 0.2em 0.85em;
}
@media screen and (max-width: 719px) {
.navbox-group-title {
overflow: hidden;
white-space: nowrap;
text-overflow: ellipsis;
}
}
@media screen and (min-width: 720px) {
.navbox-group-title {
border: 1px solid var(--body-border);
border-width: 0 1px 1px 0;
width: 12vw;
}
}
.navbox-group-title-hidden {
display: none;
}
.navbox-list {
padding: 0;
position: relative;
}
@media screen and (min-width: 720px) {
.navbox-list {
border-bottom: 1px solid var(--body-border);
}
}
.navbox-list ul {
display: flex;
}
@media screen and (max-width: 719px) {
.navbox-list ul {
white-space: nowrap;
overflow-x: auto;
overflow-y: hidden;
-webkit-overflow-scrolling: touch;
}
}
@media screen and (min-width: 720px) {
.navbox-list ul {
padding: 0.2em 0.85em 0.5em !important;
flex-wrap: wrap;
}
}
@media screen and (min-width: 720px) {
.navbox-list[style*="center"] ul {
justify-content: center;
}
}
.navbox-list li {
display: inline-flex;
align-items: center;
height: 3.5em;
margin: 0 0 0 0.85em;
}
@media screen and (min-width: 720px) {
.navbox-list li {
height: 2.1em;
}
.navbox-list li:first-child {
margin-left: 0;
}
}
.navbox-list li + li::before {
content: '•';
display: inline-block;
white-space: pre-wrap;
position: relative;
left: -0.425em;
color: var(--text-color);
pointer-events: none;
}
.navbox-list li + li > a + a::before {
display: none;
}
.navbox-list li:last-child {
margin-right: 2em;
}
.navbox-list::after {
content: '';
display: block;
position: absolute;
background-image: var(--mobile-navbox-linear-gradient);
height: 100%;
width: 2.5em;
top: 0;
right: 0;
pointer-events: none;
}
@media screen and (min-width: 720px) {
.navbox-list::after {
display: none;
}
}
.navbox-list.navbox-parent {
border-bottom: 0;
padding: 0;
}
.navbox-list.navbox-parent::after {
display: none;
}
.navbox-group .navbox-group .navbox-group-title {
background-color: var(--body-light);
padding: 0 0.85em 0 1.7em;
}
@media screen and (min-width: 720px) {
.navbox-group .navbox-group .navbox-group-title {
padding-left: 0.85em;
}
}
.navbox-group .navbox-group .navbox-list ul {
padding-left: 1.7em;
}
.navbox-group .navbox-group .navbox-list li {
margin-bottom: 0;
}
.navbox-group .navbox-group .navbox-list li:first-child {
margin-left: 0;
}
.navbox-group .navbox-group.navbox-group-split .navbox-list ul {
padding-left: 0.85em;
}
.navbox-group .navbox-group .navbox-group:first-child .navbox-group-title {
padding-top: 0.5em;
}
@media screen and (min-width: 720px) {
.navbox-group .navbox-group .navbox-group:first-child .navbox-group-title {
padding-top: 0;
}
}
.navbox-group .navbox-group .navbox-group .navbox-group-title {
background-color: transparent;
padding-left: 2.55em;
}
@media screen and (min-width: 720px) {
.navbox-group .navbox-group .navbox-group .navbox-group-title {
background-color: var(--mobile-navbox-wide-bg-color);
padding-left: 0.85em;
}
}
.navbox-group .navbox-group .navbox-group .navbox-list ul {
padding-left: 2.55em;
}
.navbox-group .navbox-group .navbox-group.navbox-group-split .navbox-list ul {
padding-left: 1.7em;
}
@keyframes slide-up {
from {
opacity: 0;
transform: translateY(1rem);
}
to {
opacity: 1;
transform: translateY(0);
}
}
.mainpage-header {
margin: 2em 1em 0;
}
@media only screen and (max-width: 1000px) {
.mainpage-header .header-intro h1 {
text-align: center;
font-size: 1.8em;
}
.mainpage-header .header-intro p {
font-size: 1em;
}
}
.mainpage-body .tile-row {
width: inherit;
}
.mainpage-contents.tile-row {
display: inherit;
}
.mainpage-left .tile {
padding: 2.5em 1.75em 2em;
}
.mainpage-left .tile h2 {
padding: 0;
margin: 0.65em 0.5em;
}
.mainpage-left .tile-halves h2 {
padding: 0;
margin: 0.65em 0.5em;
}
.mainpage-recent-updates {
padding: 1.5em 1em 2.5em;
}
.mainpage-recent-updates::before {
content: 'Recent updates';
display: block;
margin-left: 1.5em;
color: var(--byline-color);
font-weight: bold;
text-transform: uppercase;
letter-spacing: 0.025em;
grid-column: 1 / 4;
}
.mainpage-recent-updates .tile-halves {
display: inline-block;
width: 100%;
white-space: initial;
flex: unset;
}
.mainpage-recent-updates .tile-halves:nth-child(1) {
animation: 0.9s 0.2s both slide-up;
}
.mainpage-recent-updates .tile-halves:nth-child(2) {
animation: 0.9s 0.4s both slide-up;
}
.mainpage-recent-updates .tile-halves:nth-child(3) {
animation: 0.9s 0.6s both slide-up;
}
.mainpage-recent-updates .tile-top {
height: 9em;
overflow: hidden;
}
.mainpage-recent-updates .tile-bottom {
padding-bottom: 0.5rem;
}
.mainpage-recent-updates .byline {
margin: 0;
}
.mainpage-recent-updates .byline + h2 {
margin: 0.025em 0 0;
padding: 0;
}
@media only screen and (max-width: 720px) {
.mainpage-recent-updates::before {
text-align: center;
margin: 0;
grid-column: auto;
}
}
.mainpage-contents {
background: var(--body-mid);
padding: 55px 1em 2em 2.5em;
overflow-x: auto;
grid-template-columns: repeat(6, 1fr) !important;
position: relative;
scroll-snap-align: center;
}
.mainpage-contents::before {
content: 'Explore';
margin: 1em;
position: absolute;
top: 0;
color: inherit;
font-weight: bold;
text-transform: uppercase;
letter-spacing: 0.025em;
grid-column: 1 / 6;
}
.mainpage-contents .tile-halves {
border: none;
background: none;
box-shadow: none;
width: 200px;
}
.mainpage-contents .tile-top {
padding: 0;
height: initial;
}
.mainpage-contents .tile-bottom {
border: none;
}
.mainpage-contents h2 {
width: 100%;
}
@media only screen and (max-width: 1000px) {
.mainpage-skills .tile-top ul {
margin: 0;
}
}
.mainpage-wikinews::before {
content: 'From the wiki';
margin-left: 0.75em;
color: var(--byline-color);
font-weight: bold;
text-transform: uppercase;
letter-spacing: 0.025em;
}
.mainpage-social {
border: none;
margin-bottom: 0;
}
.mainpage-social .tile-top {
display: flex;
align-items: center;
justify-content: center;
padding: 1em 2em;
min-height: 70px;
}
.mainpage-social .tile-top .social-icon {
float: left;
margin: 0 1em 0 -1em;
width: 60px;
text-align: center;
}
.mainpage-social .tile-top .social-header {
color: #fff;
font-weight: bold;
font-size: 1.25em;
margin: 0;
}
.mainpage-social .tile-top .social-tagline {
color: rgba(255, 255, 255, 0.9);
margin: 0;
}
.mainpage-social .tile-bottom {
border: none;
padding: 1em 2em;
}
.mainpage-social .tile-bottom p {
color: var(--byline-color);
font-weight: bold;
text-transform: uppercase;
letter-spacing: 0.025em;
color: #fff;
font-size: 0.9em;
text-align: center;
margin: 0;
}
.mainpage-social.mainpage-discord .tile-top {
background: #5865f2;
}
.mainpage-social.mainpage-discord .tile-bottom {
background: #525ee0;
}
.mainpage-social.mainpage-twitter .tile-top {
background: #15202b;
}
.mainpage-social.mainpage-twitter .tile-bottom {
background: #121c26;
}
.wikitable {
background: none;
box-shadow: none;
}
.wikitable tbody {
background: var(--body-light);
}
.toc {
background-color: var(--body-light);
border-color: var(--body-border);
}
#filetoc li {
display: inline;
padding-right: 2em;
}
.mw-dismissable-notice-body {
margin: 0;
}
.mw-dismissable-notice-body .mw-dismissable-notice-close-parent {
border-radius: 0 !important;
font-size: 0.75em;
}
:root {
--thumb-image-background: var(--body-light);
--thumb-caption-background: var(--body-mid);
}
.content .thumbinner {
background-color: var(--thumb-bg);
}
.content .thumbimage {
border: 1px solid transparent;
border-bottom: none;
}
.content .thumbcaption {
margin: 0;
padding: 4px 6px !important;
color: inherit;
background: var(--thumb-caption-bg);
}
.content table.messagebox {
margin: 0.5em auto;
}
.content table a > img {
max-width: inherit !important;
height: inherit !important;
}
.content .infobox a > img {
max-width: 100% !important;
height: auto !important;
}
.content .infobox-bonuses a > img {
max-width: inherit !important;
height: inherit !important;
}
918b34fd5307f98037e3a46df2aa4eb20e5ba33a
MediaWiki:Common.css
8
30
1708
1702
2024-04-02T19:35:54Z
Merds
25
Updating CSS from [[MediaWiki:Common.less]]
css
text/css
/* <pre> */
:root {
--body-main: #fdfcfc;
--body-light: #f5f0eb;
--body-mid: #d1b9ad;
--body-dark: #b1886f;
--body-border: #d1b9ad;
--body-background-color: #173a4d;
--button-background: #605443;
--button-color: #fff;
--button-border: #3c352a;
--button-dark: #18140c;
--button-light: #3a301d;
--sidebar: #cfc08d;
--background-text-color: #e2dbc8;
--background-link-color: #e2bd8a;
--search-box: #efeee6;
--link-color: #6e452b;
--redlink-color: #ba0000;
--text-color: #2F2828;
--byline-color: #ccc;
--subtle-color: #777;
--admin-blue: #332e75;
--bearcat-green: #13592e;
--awb-purple: #933b96;
--rsw-blue: #438ab6;
--osrsw-brown: #605443;
--thumb-bg: var(--body-light);
--thumb-caption-bg: var(--body-mid);
--sourceeditor-input-background: #fff;
--sourceeditor-background: var(--body-light);
--sourceeditor-background-secondary: var(--body-light);
--sourceeditor-border: var(--body-mid);
--codemirror-gutter-background: var(--body-mid);
}
@font-face {
font-family: 'Lora';
font-weight: 400 700;
font-style: normal;
font-display: swap;
src: url('filepath://Lora.woff2') format('woff2');
}
@font-face {
font-family: 'Lora';
font-weight: 400 700;
font-style: italic;
font-display: swap;
src: url('filepath://Lora-Italic.woff2') format('woff2');
}
:root {
--base-text-color: #36414f;
--base-heading-color: #444e5a;
--base-heading-border: #e4eaee;
--mw-code-background-color: var(--body-light);
--body-background-image: url('filepath://Wiki_background.jpg');
}
#mw-page-base {
background: none;
}
.mw-body {
background-color: var(--body-main);
color: var(--text-color);
border-color: transparent;
box-shadow: 0 0 7px rgba(0, 0, 0, 0.15);
margin-top: 0;
}
h1,
h2,
h3,
h4,
h5,
h6 {
color: var(--text-color);
}
h1,
h2 {
border-color: var(--body-border);
}
.mw-body h1,
.mw-body-content h1,
.mw-body-content h2,
.mw-body-content h3,
.mw-body-content h4,
.mw-body-content h5,
.mw-body-content h6 {
font-family: 'Lora', 'Palatino', 'Georgia', serif;
}
.mw-parser-output h2:first-of-type {
clear: left;
}
.mw-footer {
color: var(--background-text-color);
}
.mw-footer li {
color: var(--background-text-color);
}
.mw-footer a,
.mw-footer a:active,
.mw-footer a:visited {
color: var(--background-link-color);
}
::placeholder {
color: var(--subtle-color);
}
a {
color: var(--link-color);
}
a:visited,
a:active {
color: var(--link-color);
}
a.new {
color: var(--redlink-color);
}
a.new:visited {
color: var(--redlink-color);
}
.mw-parser-output a.extiw,
.mw-parser-output a.external {
color: var(--link-color);
}
.mw-parser-output a.extiw:visited,
.mw-parser-output a.external:visited,
.mw-parser-output a.extiw:active,
.mw-parser-output a.external:active {
color: var(--link-color);
}
.jsPurgeLink a.external {
color: var(--link-color);
}
:root {
--errorbox-bg: #feecea;
--errorbox-border: #ee4231;
--warningbox-bg: #fef9de;
--warningbox-border: #f9d000;
--successbox-bg: #ecf8e3;
--successbox-border: #6bc71f;
}
.mw-message-box-error,
.errorbox,
.mw-message-box-warning,
.warningbox,
.mw-message-box-success,
.successbox,
.usermessage {
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
}
.mw-message-box-error,
.errorbox {
background-color: var(--errorbox-bg);
border-color: var(--errorbox-border);
}
.mw-message-box-warning,
.warningbox,
.usermessage {
background-color: var(--warningbox-bg);
border-color: var(--warningbox-border);
}
.mw-message-box-success,
.successbox {
background-color: var(--successbox-bg);
border-color: var(--successbox-border);
}
.catlinks {
background: var(--body-light);
border: 1px solid var(--body-dark);
padding: 8px 15px;
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
}
.catlinks li {
border-color: var(--body-mid);
}
.filehistory a img,
#file img {
background: url("data:image/svg+xml,%3C%3Fxml version='1.0' encoding='UTF-8'%3F%3E%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16'%3E%3Cpath d='M0 0h8v16h8V8H0z' opacity='.13'/%3E%3C/svg%3E") repeat;
}
#file img:hover {
background: none;
}
.mw-highlight {
background: none;
}
.mw-highlight .linenos {
background-color: var(--mw-code-background-color);
color: var(--body-border);
}
.mw-highlight a:hover .linenos,
.mw-highlight .hll a .linenos {
color: var(--body-dark);
}
.mw-content-ltr.mw-highlight-lines pre,
.mw-content-ltr.content .mw-highlight-lines pre {
box-shadow: inset 2.75em 0 0 var(--mw-code-background-color);
}
#pagehistory ul {
list-style: none;
margin: 0;
}
#pagehistory li {
border: 1px solid transparent;
padding: 1px 10px;
margin: 2px 0;
}
#pagehistory li.selected {
background-color: var(--body-light);
color: inherit;
border: 1px dashed var(--body-border);
outline: none;
}
#mw-history-compare > div:first-of-type {
position: -webkit-sticky;
position: sticky;
top: 0;
background-color: var(--body-main);
border-bottom: 1px solid var(--body-dark);
padding: 0.25em 0;
}
.wgl-stickyheader #mw-history-compare > div:first-of-type {
top: 2.5rem;
}
.autocomment,
.autocomment a,
.autocomment a:visited {
color: var(--link-color);
}
li span.deleted,
span.history-deleted {
color: var(--byline-color);
}
.mw-usertoollinks-contribs-no-edits,
.mw-usertoollinks-contribs-no-edits:visited {
color: var(--redlink-color);
}
.CategoryTreeToggle {
color: var(--link-color);
}
body.wgl-stickyheader.action-view .mw-headline:target::before {
display: block;
content: '';
margin-top: -3rem;
height: 3rem;
visibility: hidden;
pointer-events: none;
}
.mw-mmv-post-image {
color: var(--text-color);
background-color: var(--body-main);
}
.mw-mmv-image-metadata {
border-top-color: var(--body-mid);
background-color: var(--body-light);
}
.mw-mmv-dialog,
.mw-mmv-dialog .mw-mmv-dialog-down-arrow,
.mw-mmv-options-dialog .mw-mmv-dialog-down-arrow {
background-color: var(--body-light);
box-shadow: none;
}
.mw-mmv-options-enable-alert {
background-color: var(--body-light);
color: var(--text-color);
}
.mw-mmv-options-dialog-header,
.mw-mmv-options-text-header,
.mw-mmv-options-text-body,
.mw-mmv-options-enable-alert,
.mw-mmv-options-dialog .mw-mmv-disable-confirmation .mw-mmv-options-dialog-header,
.mw-mmv-options-dialog .mw-mmv-disable-confirmation .mw-mmv-options-text-header {
color: var(--text-color);
}
.mw-revslider-container {
border-color: var(--sidebar);
}
.mw-revslider-slider-wrapper {
border-top-color: var(--sidebar);
}
.mw-ui-button {
background-color: var(--ooui-normal);
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
}
.mw-ui-button:not(:disabled):hover,
.mw-ui-button:not(:disabled):active {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
}
.mw-ui-button:not(:disabled):focus {
color: var(--ooui-text);
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent), inset 0 0 0 2px #fff;
}
.mw-ui-button:not(:disabled):visited {
color: var(--ooui-text);
}
.mw-ui-button.mw-ui-progressive:not(:disabled) {
background-color: var(--ooui-progressive);
color: #fff;
border-color: var(--ooui-progressive);
}
.mw-ui-button.mw-ui-progressive:not(:disabled):hover {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
}
.mw-ui-button.mw-ui-progressive:not(:disabled):focus {
box-shadow: inset 0 0 0 1px var(--ooui-accent), inset 0 0 0 2px #fff;
}
.mw-ui-button.mw-ui-progressive:not(:disabled):active,
.mw-ui-button.mw-ui-progressive:not(:disabled).is-on {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
box-shadow: none;
}
.mw-ui-button.mw-ui-destructive:not( :disabled ) {
color: #fff;
}
.mw-ui-button.mw-ui-quiet,
.mw-ui-button.mw-ui-quiet.mw-ui-progressive,
.mw-ui-button.mw-ui-quiet.mw-ui-destructive {
color: var(--text-color);
}
input[type='checkbox']:hover + .mw-ui-button.mw-ui-quiet,
input[type='checkbox']:hover + .mw-ui-button.mw-ui-quiet.mw-ui-progressive,
input[type='checkbox']:hover + .mw-ui-button.mw-ui-quiet.mw-ui-destructive,
.mw-ui-button.mw-ui-quiet:hover,
.mw-ui-button.mw-ui-quiet.mw-ui-progressive:hover,
.mw-ui-button.mw-ui-quiet.mw-ui-destructive:hover {
background-color: rgba(0, 24, 73, 0.02745098);
color: var(--text-color);
border-color: transparent;
}
input[type='checkbox']:focus + .mw-ui-button.mw-ui-quiet,
input[type='checkbox']:focus + .mw-ui-button.mw-ui-quiet.mw-ui-progressive,
input[type='checkbox']:focus + .mw-ui-button.mw-ui-quiet.mw-ui-destructive,
.mw-ui-button.mw-ui-quiet:focus,
.mw-ui-button.mw-ui-quiet.mw-ui-progressive:focus,
.mw-ui-button.mw-ui-quiet.mw-ui-destructive:focus {
color: var(--text-color);
}
input[type='checkbox']:active + .mw-ui-button.mw-ui-quiet,
input[type='checkbox']:active + .mw-ui-button.mw-ui-quiet.mw-ui-progressive,
input[type='checkbox']:active + .mw-ui-button.mw-ui-quiet.mw-ui-destructive,
.mw-ui-button.mw-ui-quiet:active,
.mw-ui-button.mw-ui-quiet.mw-ui-progressive:active,
.mw-ui-button.mw-ui-quiet.mw-ui-destructive:active {
background-color: rgba(0, 36, 73, 0.08235294);
color: var(--text-color);
border-color: #72777d;
}
.mw-ui-input {
background-color: var(--ooui-input);
color: var(--text-color);
border-color: var(--ooui-input-border);
}
.mw-ui-input:hover {
border-color: var(--ooui-input-border--hover);
}
.mw-ui-input::placeholder {
color: var(--byline-color);
}
.mw-content-ltr .redirectText li:first-child {
padding: 0;
background: 0;
}
.mw-content-ltr .redirectText li:first-child::before {
content: '';
background: currentcolor;
-webkit-mask: url("filepath://Redirect-arrow.svg") no-repeat 50% 50% / contain;
mask: url("filepath://Redirect-arrow.svg") no-repeat 50% 50% / contain;
display: inline-block;
width: 47px;
height: 20px;
}
.vector-search-box-inner {
background: var(--body-main) !important;
box-shadow: inset 0 -7px 7px -7px rgba(0, 0, 0, 0.15) !important;
}
.vector-menu-dropdown .vector-menu-heading {
color: var(--vector-tab-link-color) !important;
}
.vector-menu-dropdown .vector-menu-heading:hover {
color: var(--vector-tab-link-color) !important;
}
.vector-menu-dropdown .vector-menu-heading:focus {
color: var(--vector-tab-link-color) !important;
}
:root {
--wikitable-header-bg: var(--body-dark);
--wikitable-border: var(--body-border);
--wikitable-bg: var(--body-light);
--wikitable-bg-lighter: #e9e3d6;
--wikitable-color: var(--text-color);
--table-na-background: rgba(255, 255, 255, 0.3);
--table-na-color: var(--subtle-color);
--table-yes-background: #c3e8a3;
--table-yes-color: #2e5e05;
--table-no-background: #fbc0ba;
--table-no-color: #801c13;
--table-maybe-background: #fcea94;
--table-maybe-color: #786300;
}
.wikitable {
background: var(--wikitable-bg);
color: var(--wikitable-color);
border-color: var(--wikitable-border);
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
}
.wikitable > tr > th,
.wikitable > tr > td,
.wikitable > * > tr > th,
.wikitable > * > tr > td {
border-color: var(--wikitable-border);
}
.wikitable > tr > th.table-noborder,
.wikitable > tr > td.table-noborder,
.wikitable > * > tr > th.table-noborder,
.wikitable > * > tr > td.table-noborder {
border-left-style: hidden;
border-right-style: hidden;
padding-left: 0;
padding-right: 0;
}
.wikitable > tr > th,
.wikitable > * > tr > th {
background-color: var(--wikitable-header-bg);
color: #fff;
}
.tabber .wikitable {
box-shadow: none;
}
.mw_metadata td,
.mw_metadata th {
border-color: var(--wikitable-border);
}
.mw_metadata th {
background-color: var(--wikitable-header-bg);
}
.mw_metadata td {
background-color: var(--wikitable-bg);
}
.mw-datatable {
border-color: var(--wikitable-border);
}
.mw-datatable td,
.mw-datatable th {
border-color: var(--wikitable-border);
}
.mw-datatable th {
background-color: var(--wikitable-header-bg);
}
.mw-datatable td {
background-color: var(--wikitable-bg);
}
.mw-datatable tr:hover td {
background-color: var(--wikitable-bg);
}
table.alternating-rows tr:nth-child(odd),
table.alternating-cols td:nth-child(odd) {
background: var(--wikitable-alternating-bg);
}
.table-na {
background: var(--table-na-background);
color: var(--table-na-color);
vertical-align: middle;
text-align: center;
}
.table-yes {
background: var(--table-yes-background);
color: var(--table-yes-color);
}
.table-positive {
background: var(--table-yes-background);
}
.table-no {
background: var(--table-no-background);
color: var(--table-no-color);
}
.table-negative {
background: var(--table-no-background);
}
.table-maybe {
background: var(--table-maybe-background);
color: var(--table-maybe-color);
}
#mw-allmessagestable .am_actual,
#mw-allmessagestable .am_default {
background-color: var(--wikitable-bg);
}
#mw-allmessagestable .am_default:hover,
#mw-allmessagestable .am_actual:hover,
#mw-allmessagestable tbody:hover td {
background-color: var(--wikitable-bg-lighter);
}
table.wikitable td.no-cell-spacing {
padding: 0;
height: 0;
}
table.wikitable td.no-cell-spacing table {
margin: -1px;
width: calc(100% + 2px);
height: calc(100% + 2px);
}
.plainlist ol,
.plainlist ul {
margin: 0;
}
.plainlist li {
margin-bottom: 0;
list-style: none;
}
table.align-right-1 td:nth-of-type(1),
table.align-right-2 td:nth-of-type(2),
table.align-right-3 td:nth-of-type(3),
table.align-right-4 td:nth-of-type(4),
table.align-right-5 td:nth-of-type(5),
table.align-right-6 td:nth-of-type(6),
table.align-right-7 td:nth-of-type(7),
table.align-right-8 td:nth-of-type(8),
table.align-right-9 td:nth-of-type(9),
table.align-right-10 td:nth-of-type(10),
table.align-right-11 td:nth-of-type(11),
table.align-right-12 td:nth-of-type(12),
table.align-right-13 td:nth-of-type(13),
table.align-right-14 td:nth-of-type(14),
table.align-right-15 td:nth-of-type(15),
table.align-right-16 td:nth-of-type(16),
table.align-right-17 td:nth-of-type(17),
table.align-right-18 td:nth-of-type(18),
table.align-right-19 td:nth-of-type(19),
table.align-right-20 td:nth-of-type(20) {
text-align: right;
}
table.align-center-1 td:nth-of-type(1),
table.align-center-2 td:nth-of-type(2),
table.align-center-3 td:nth-of-type(3),
table.align-center-4 td:nth-of-type(4),
table.align-center-5 td:nth-of-type(5),
table.align-center-6 td:nth-of-type(6),
table.align-center-7 td:nth-of-type(7),
table.align-center-8 td:nth-of-type(8),
table.align-center-9 td:nth-of-type(9),
table.align-center-10 td:nth-of-type(10),
table.align-center-11 td:nth-of-type(11),
table.align-center-12 td:nth-of-type(12),
table.align-center-13 td:nth-of-type(13),
table.align-center-14 td:nth-of-type(14),
table.align-center-15 td:nth-of-type(15),
table.align-center-16 td:nth-of-type(16),
table.align-center-17 td:nth-of-type(17),
table.align-center-18 td:nth-of-type(18),
table.align-center-19 td:nth-of-type(19),
table.align-center-20 td:nth-of-type(20) {
text-align: center;
}
table.align-left-1 td:nth-of-type(1),
table.align-left-2 td:nth-of-type(2),
table.align-left-3 td:nth-of-type(3),
table.align-left-4 td:nth-of-type(4),
table.align-left-5 td:nth-of-type(5),
table.align-left-6 td:nth-of-type(6),
table.align-left-7 td:nth-of-type(7),
table.align-left-8 td:nth-of-type(8),
table.align-left-9 td:nth-of-type(9),
table.align-left-10 td:nth-of-type(10),
table.align-left-11 td:nth-of-type(11),
table.align-left-12 td:nth-of-type(12),
table.align-left-13 td:nth-of-type(13),
table.align-left-14 td:nth-of-type(14),
table.align-left-15 td:nth-of-type(15),
table.align-left-16 td:nth-of-type(16),
table.align-left-17 td:nth-of-type(17),
table.align-left-18 td:nth-of-type(18),
table.align-left-19 td:nth-of-type(19),
table.align-left-20 td:nth-of-type(20) {
text-align: left;
}
:root {
--diff-addedline-border-color: #438ab5;
--diff-addedline-background: #bddff2;
--diff-addedline-color: #000;
--diff-deletedline-border-color: #379541;
--diff-deletedline-background: #c1edbf;
--diff-deletedline-color: #000;
--diff-context-border-color: var(--body-mid);
--diff-context-background: var(--body-mid);
}
.diff-context {
border-color: var(--diff-context-border-color);
background: var(--diff-context-background);
color: inherit;
}
.diff-addedline {
border-color: var(--diff-addedline-border-color);
}
.diff-addedline .diffchange {
background: var(--diff-addedline-background);
color: var(--diff-addedline-color);
}
.diff-deletedline {
border-color: var(--diff-deletedline-border-color);
}
.diff-deletedline .diffchange {
background: var(--diff-deletedline-background);
color: var(--diff-deletedline-color);
}
.mw-diff-movedpara-left:after,
.mw-diff-movedpara-right:after {
color: var(--text-color);
}
.mw-notification {
background-color: var(--body-light);
border-color: var(--body-border);
color: var(--text-color);
}
.mw-echo-ui-notificationsInboxWidget-toolbarWrapper {
background: var(--body-main);
}
.mw-body-content .mw-echo-ui-datedSubGroupListWidget-title-secondary {
color: var(--byline-color);
}
.mw-echo-ui-pageNotificationsOptionWidget.oo-ui-optionWidget-selected {
background-color: var(--ooui-normal);
color: var(--ooui-accent);
}
.mw-echo-ui-pageNotificationsOptionWidget-label-count {
background-color: var(--ooui-normal);
color: var(--byline-color);
}
.oo-ui-optionWidget-selected .mw-echo-ui-pageNotificationsOptionWidget-label-count {
color: var(--ooui-accent);
}
.mw-echo-ui-pageNotificationsOptionWidget.oo-ui-optionWidget-highlighted {
background-color: var(--ooui-normal);
color: var(--text-color);
}
.mw-echo-ui-crossWikiUnreadFilterWidget {
border-color: var(--body-border);
}
.mw-echo-ui-crossWikiUnreadFilterWidget-subtitle {
color: var(--byline-color);
}
.mw-echo-ui-notificationBadgeButtonPopupWidget-popup > .oo-ui-popupWidget-popup > .oo-ui-popupWidget-head,
.mw-echo-ui-notificationBadgeButtonPopupWidget-popup > .oo-ui-popupWidget-popup > .oo-ui-popupWidget-footer {
border-color: var(--ooui-interface-border);
}
.mw-echo-ui-notificationBadgeButtonPopupWidget-popup > .oo-ui-popupWidget-popup > .oo-ui-popupWidget-footer .mw-echo-ui-notificationBadgeButtonPopupWidget-footer-buttons .oo-ui-buttonElement:last-child {
border-left-color: var(--ooui-normal-border);
}
.mw-echo-ui-notificationItemWidget {
background-color: var(--ooui-normal);
border-color: var(--ooui-normal-border);
}
.mw-echo-ui-notificationItemWidget:hover,
.mw-echo-ui-notificationItemWidget-unread:hover {
background-color: var(--ooui-normal--hover);
}
.mw-echo-ui-notificationItemWidget:last-child {
border-bottom-color: var(--ooui-normal-border);
}
.mw-echo-ui-notificationItemWidget-unread {
background-color: var(--search-box);
}
.mw-echo-ui-crossWikiNotificationItemWidget-group,
.mw-echo-ui-bundleNotificationItemWidget-group {
background-color: var(--ooui-interface);
}
.mw-echo-ui-toggleReadCircleButtonWidget-circle {
background-color: var(--ooui-progressive);
}
.mw-echo-ui-toggleReadCircleButtonWidget:hover .mw-echo-ui-toggleReadCircleButtonWidget-circle {
background-color: var(--ooui-progressive--hover);
}
.mw-echo-ui-toggleReadCircleButtonWidget-circle-unread {
background-color: var(--ooui-normal);
border-color: var(--ooui-normal-border);
}
.mw-echo-ui-notificationItemWidget-content-message-header,
.mw-echo-ui-notificationItemWidget-content-message-body,
.mw-echo-ui-menuItemWidget > .oo-ui-buttonElement-button > .oo-ui-labelElement-label,
.mw-echo-ui-notificationItemWidget-content-actions-timestamp {
color: var(--ooui-text);
}
.mw-echo-ui-bundleNotificationItemWidget-group {
background-color: var(--body-main);
}
@keyframes unseen-fadeout-to-unread {
from {
background-color: var(--wikitable-bg-lighter);
}
to {
background-color: var(--search-box);
}
}
@keyframes unseen-fadeout-to-read {
from {
background-color: var(--wikitable-bg-lighter);
}
to {
background-color: var(--body-main);
}
}
.mwe-popups {
background: var(--body-light);
}
.mwe-popups .mwe-popups-container {
color: var(--text-color);
background: var(--body-light);
}
.mwe-popups .mwe-popups-container.flipped-x-y:before,
.mwe-popups .mwe-popups-container.flipped-y:before {
border-top: none;
}
.mwe-popups .mwe-popups-container.mwe-popups-no-image-tri:before {
border-bottom: none;
}
.mwe-popups .mwe-popups-container.flipped-x-y:after,
.mwe-popups .mwe-popups-container.flipped-y:after {
border-top-color: var(--body-light);
}
.mwe-popups .mwe-popups-container.mwe-popups-no-image-tri:after {
border-bottom-color: var(--body-light);
}
.mwe-popups .mwe-popups-settings-icon:hover,
.mwe-popups .mwe-popups-settings-icon:active {
background-color: var(--ooui-normal--hover);
}
.mwe-popups .mw-ui-icon-element:not(.disabled):hover {
background: none;
}
.mwe-popups .mwe-popups-extract {
color: var(--text-color);
}
.mwe-popups .mwe-popups-extract[dir='ltr']:after {
background-image: linear-gradient(to right, rgba(49, 62, 89, 0), var(--body-light) 50%);
}
.mwe-popups-overlay {
background-color: var(--ooui-window-background);
}
#mwe-popups-settings {
background: var(--ooui-interface);
border-color: var(--ooui-interface-border);
color: var(--text-color);
}
#mwe-popups-settings header {
border-color: var(--ooui-interface-border);
}
#mwe-popups-settings main#mwe-popups-settings-form p {
color: var(--byline-color);
}
#mwe-popups-settings main#mwe-popups-settings-form form label > span {
color: var(--ooui-text);
}
:root {
--smw-ask-options-even-bg: var(--body-mid);
--smw-ask-options-odd-bg: var(--body-light);
--smw-ask-action-btn-lblue-bg: var(--body-main);
--smw-ask-action-btn-lblue-color: #000;
--smw-ask-action-btn-lblue-border-color: var(--body-light);
--smw-ask-action-btn-dblue-bg: var(--body-light);
--smw-ask-action-btn-dblue-color: #fff;
--smw-ask-action-btn-dblue-border-color: var(--button-border);
}
.smw-ask-condition fieldset,
.smw-ask-printhead fieldset {
border-color: var(--sidebar);
}
.smw-ask-search fieldset,
.smw-ask-format fieldset,
.smw-ask-options fieldset {
border-color: var(--sidebar);
}
.strike > span:before,
.strike > span:after {
background: var(--sidebar);
}
.smw-ask-options-fields tr td {
background-color: var(--smw-ask-options-even-bg);
}
.smw-ask-options-fields tr:nth-child(odd) td {
background-color: var(--smw-ask-options-odd-bg);
}
.smw-ask-action-btn.smw-ask-action-btn-lblue,
.smw-ask-action-btn.smw-ask-action-btn-lblue:hover,
.smw-ask-action-btn.smw-ask-action-btn-lblue:visited {
background-color: var(--smw-ask-action-btn-lblue-bg);
color: var(--smw-ask-action-btn-lblue-color);
border-color: var(--smw-ask-action-btn-lblue-border-color);
}
.smw-ask-action-btn.smw-ask-action-btn-dblue,
.smw-ask-action-btn.smw-ask-action-btn-dblue:hover,
.smw-ask-action-btn.smw-ask-action-btn-dblue:visited {
background-color: var(--smw-ask-action-btn-dblue-bg);
color: var(--smw-ask-action-btn-dblue-color);
border-color: var(--smw-ask-action-btn-dblue-border-color);
}
.smw-ask-query textarea,
.smw-ask-actions textarea {
background-color: var(--ooui-interface);
border-color: var(--ooui-interface-border);
color: var(--ooui-text);
}
.smw-ask-query-format select {
background-color: var(--ooui-interface);
border: 1px solid var(--ooui-interface-border);
color: var(--ooui-text);
}
.smw-ask-toplinks {
background-color: var(--body-mid);
}
.smw-ask-toplinks span.smw-icon-info {
background: none;
padding: 0 !important;
}
.smw-ask-toplinks span.smw-icon-info::before {
content: '';
background: var(--text-color);
-webkit-mask: url("data:image/svg+xml,%3C%3Fxml version='1.0' encoding='UTF-8'%3F%3E%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 20 20'%3E%3Ctitle%3Einfo%3C/title%3E%3Cpath d='M10 0C4.477 0 0 4.477 0 10s4.477 10 10 10 10-4.477 10-10S15.523 0 10 0zM9 5h2v2H9zm0 4h2v6H9z'/%3E%3C/svg%3E") no-repeat 50% 50% / contain;
mask: url("data:image/svg+xml,%3C%3Fxml version='1.0' encoding='UTF-8'%3F%3E%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 20 20'%3E%3Ctitle%3Einfo%3C/title%3E%3Cpath d='M10 0C4.477 0 0 4.477 0 10s4.477 10 10 10 10-4.477 10-10S15.523 0 10 0zM9 5h2v2H9zm0 4h2v6H9z'/%3E%3C/svg%3E") no-repeat 50% 50% / contain;
padding: 0 0 3px 18px;
}
.smw-ask-options-row-odd {
background-color: var(--body-light);
}
.smw-ask-options-row-even {
background-color: var(--body-mid);
}
#options-toggle:not(:checked) + #options-list .options-parameter-list:after {
background-image: linear-gradient(to bottom, transparent, var(--body-mid) 90%);
}
.smw-ask-button-submit input {
background-color: var(--ooui-normal);
border-color: var(--ooui-normal-border);
color: var(--text-color);
}
.smw-ask-button-submit input:hover,
.smw-ask-button-lgrey:hover {
background-color: var(--ooui-normal--hover);
border-color: var(--ooui-normal-border);
}
input.smw-ask-action-btn.smw-ask-action-btn-dblue {
background-color: var(--ooui-normal);
border-color: var(--ooui-normal-border);
color: var(--ooui-text);
}
a.smw-ask-action-btn.smw-ask-action-btn-lblue {
background-color: var(--body-mid);
border-color: var(--body-mid);
color: var(--ooui-text);
}
a.smw-ask-action-btn.smw-ask-action-btn-lblue:visited {
background-color: var(--body-mid);
border-color: var(--body-mid);
color: var(--ooui-text);
}
a.smw-ask-action-btn.smw-ask-action-btn-lblue:hover {
background-color: var(--body-mid);
border-color: var(--body-mid);
color: var(--ooui-text);
}
a.smw-ask-action-btn-lgrey {
background-color: var(--ooui-normal);
border-color: var(--ooui-normal-border);
color: var(--ooui-text);
}
a.smw-ask-action-btn-lgrey:hover {
background-color: var(--ooui-normal--hover);
border-color: var(--ooui-normal-border);
color: var(--ooui-text);
}
.smw-callout-error {
background-color: var(--errorbox-bg);
border-color: var(--errorbox-border);
}
.smw-callout-info {
background-color: var(--body-light);
border-color: var(--body-dark);
}
.smw-callout-success {
background-color: var(--successbox-bg);
border-color: var(--successbox-border);
}
.smw-callout-warning {
background-color: var(--warningbox-bg);
border-color: var(--warningbox-bg);
}
.smw-tabs input.nav-tab:checked + label.nav-label,
.smw-tabs input.nav-tab:checked + label.nav-label:hover {
color: inherit;
}
#tab-smw-property-value:checked + label.nav-label .usage-count {
color: #fff;
background-color: var(--ooui-progressive);
}
#tab-smw-property-value:checked + label.nav-label .usage-count.moderate {
color: #fff;
background-color: #b55e0c;
border-color: #b55e0c;
}
#tab-smw-property-value:checked + label.nav-label .usage-count.high {
color: #fff;
background-color: #9f261e;
border-color: #9f261e;
}
.smw-property-page-results .header-title {
background-color: var(--ooui-interface);
border-bottom-color: var(--ooui-interface-border);
color: var(--ooui-text);
}
.smw-property-page-results .value-row:hover {
background-color: var(--ooui-normal--hover);
}
.smw-property-page-results .smw-table .header-row {
color: var(--text-color);
}
.tippy-tooltip.light-border-theme {
background-color: var(--body-light);
color: var(--text-color);
}
.tippy-tooltip.light-border-theme .tippy-arrow {
border-top-color: var(--body-light);
}
.tippy-tooltip.light-border-theme .tippy-arrow:after {
border-top-color: var(--body-light);
}
.tippy-header {
background-color: var(--body-dark);
border-bottom-color: var(--body-mid);
}
.smw-ui-input-filter {
background-color: var(--ooui-interface);
border-color: var(--ooui-interface-border);
color: var(--ooui-text);
}
.smw-ui-input-filter input {
border-left-color: var(--ooui-interface-border) !important;
color: var(--ooui-text) !important;
}
.smw-ui-pagination .page-link.link-disabled {
background-color: var(--ooui-disabled);
border-color: var(--ooui-disabled-border);
color: var(--subtle-color);
}
.smw-ui-pagination .page-link {
background-color: var(--ooui-normal);
border-color: var(--ooui-normal-border);
color: var(--link-color);
}
.smw-ui-pagination .page-link:hover {
background-color: var(--ooui-normal--hover);
border-color: var(--ooui-normal-border);
color: var(--link-color);
}
.smw-ui-pagination .page-link.link-active {
color: #fff;
background-color: var(--ooui-progressive);
border-color: var(--ooui-progressive);
}
.smw-tabs input.nav-tab:checked + label.nav-label {
border-color: var(--ooui-normal-border);
}
.smw-tabs section,
.smw-tabs .subtab-content {
border-top-color: var(--ooui-normal-border);
}
.smw-column-header {
color: var(--text-color);
}
.smw-factbox {
background: var(--body-main);
border-color: transparent;
}
.mw-body .mw-indicators #mw-indicator-smw-entity-examiner.mw-indicator .smw-indicator-vertical-bar-loader {
display: none;
}
.smwb-theme-light .smwb-title,
.smwb-theme-light .smwb-center,
.smwb-theme-light .smwb-actions,
.smwb-theme-light .smwb-prophead {
background-color: var(--body-mid);
}
.smwb-theme-light .smwb-factbox {
border-left-color: var(--body-mid);
}
.smwb-theme-light .smwb-ifactbox {
border-right-color: var(--body-mid);
}
.smwb-theme-light .smwb-propval {
background-color: var(--body-light);
}
.smwb-action-separator {
border-color: var(--wikitable-border);
}
.smwb-bottom {
border-bottom: 1px solid var(--wikitable-border);
}
.smwb-ifactbox .smwb-cell,
.smwb-factbox .smwb-cell {
border-top: 1px solid var(--wikitable-border);
}
.smwb-propvalue .smwb-prophead,
.smwb-ipropvalue .smwb-prophead,
.smwb-propvalue .smwb-propval,
.smwb-ipropvalue .smwb-propval {
font-size: 0.9em;
}
:root {
--filter-black-to-link: invert(36%) sepia(58%) saturate(433%) hue-rotate(344deg) brightness(100%) contrast(91%);
}
#bodyContent span.smwbrowse a {
color: black;
background-image: url('filepath://Smwbrowse.svg');
filter: var(--filter-black-to-link);
}
#bodyContent span.smwbrowse a:hover {
color: black;
background-image: url('filepath://Smwbrowse-hover.svg');
text-decoration: underline;
}
#bodyContent span.smwsearch a {
color: black;
filter: var(--filter-black-to-link);
background-image: url('filepath://Smwsearch.svg');
}
#bodyContent span.smwsearch a:hover {
color: black;
background-image: url('filepath://Smwsearch-hover.svg');
text-decoration: underline;
}
:root {
--tabber-tab-bg: var(--body-light);
--tabber-tab-border-color: var(--body-border);
--tabber-active-tab-bg: var(--body-light);
--tabber-active-tab-color: var(--text-color);
--tabber-active-tab-hover-bg: var(--body-light);
--tabber-active-tab-hover-border-color: var(--body-border);
--tabber-active-tab-hover-color: var(--text-color);
--tabber-active-tab-border-hider-color: var(--body-light);
--tabber-inactive-tab-bg: var(--body-background-color);
--tabber-inactive-tab-border-color: var(--body-border);
--tabber-inactive-tab-color: var(--text-color);
--tabber-inactive-tab-hover-bg: var(--body-light);
--tabber-inactive-tab-hover-border-color: var(--body-border);
}
.tabber {
margin: 1em 0;
}
.tabber .tabbertab {
background-color: var(--tabber-tab-bg);
border: 1px solid var(--tabber-tab-border-color);
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
padding: 1em 1.5em;
}
ul.tabbernav {
border: none;
margin-left: 2em;
margin-bottom: 0;
margin-right: 2em;
padding: 0;
font-family: inherit;
}
ul.tabbernav li.tabberactive > a {
background-color: var(--tabber-active-tab-bg);
color: var(--tabber-active-tab-color);
border-bottom: none;
position: relative;
}
ul.tabbernav li.tabberactive > a:hover {
color: var(--tabber-active-tab-hover-color);
background-color: var(--tabber-active-tab-hover-bg);
border-color: var(--tabber-active-tab-hover-border-color);
border-bottom: none;
}
ul.tabbernav li.tabberactive > a::after {
content: '';
position: absolute;
left: 0;
right: 0;
bottom: -1px;
border-bottom: 2px solid var(--tabber-active-tab-border-hider-color);
}
ul.tabbernav li a {
background-color: var(--tabber-inactive-tab-bg);
border-bottom: transparent;
border-color: var(--tabber-inactive-tab-border-color);
color: var(--tabber-inactive-tab-color);
display: inline-block;
font-size: 110%;
padding: 0.5em 1em;
}
ul.tabbernav li a:hover {
background-color: var(--tabber-inactive-tab-hover-bg);
border-color: var(--tabber-inactive-tab-hover-border-color);
}
ul.tabbernav li a:link,
ul.tabbernav li a:visited {
color: var(--tabber-inactive-tab-color);
}
:root {
--ooui-text: var(--text-color);
--ooui-interface: var(--body-light);
--ooui-interface-border: var(--body-border);
--ooui-window-background: rgba(255, 255, 255, 0.5);
--ooui-normal: #cdb3a6;
--ooui-normal--hover: #d8c4ba;
--ooui-normal-border: #d1b9ad;
--ooui-progressive: #936243;
--ooui-progressive--hover: #b27a57;
--ooui-accent: var(--link-color);
--ooui-input: #fff;
--ooui-input-border: #d1b9ad;
--ooui-input-border--hover: #ae846f;
--ooui-disabled: #c9c3bf;
--ooui-disabled-border: #dfd6d2;
--ooui-disabled-text: var(--subtle-color);
--ooui-pending-background-image: repeating-linear-gradient(-45deg, var(--search-box), var(--search-box) 20px, var(--body-main) 20px, var(--body-main) 30px);
}
.oo-ui-widget {
color: var(--ooui-text);
}
.oo-ui-checkboxInputWidget [type='checkbox'] + span,
.oo-ui-radioInputWidget [type='radio'] + span {
background-color: var(--ooui-input);
border-color: var(--ooui-input-border);
}
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:checked + span,
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:indeterminate + span {
background-color: var(--ooui-progressive);
border-color: var(--ooui-progressive);
}
.oo-ui-radioInputWidget.oo-ui-widget-enabled [type='radio']:checked + span {
border-color: var(--ooui-progressive);
}
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:checked:hover + span,
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:indeterminate:hover + span {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
}
.oo-ui-radioInputWidget.oo-ui-widget-enabled [type='radio']:checked:hover + span {
border-color: var(--ooui-progressive--hover);
}
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:hover + span,
.oo-ui-radioInputWidget.oo-ui-widget-enabled [type='radio']:hover + span {
border-color: var(--ooui-accent);
}
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:focus + span {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:active + span,
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:checked:active + span,
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:indeterminate:active + span {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
box-shadow: inset 0 0 0 1px var(--ooui-progressive--hover);
}
.oo-ui-radioInputWidget.oo-ui-widget-enabled [type='radio']:active + span {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
}
.oo-ui-radioInputWidget.oo-ui-widget-enabled [type='radio']:checked:active + span {
border-color: var(--ooui-progressive--hover);
box-shadow: inset 0 0 0 1px var(--ooui-progressive--hover);
}
.oo-ui-radioInputWidget.oo-ui-widget-enabled [type='radio']:checked:active + span:before {
border-color: var(--ooui-progressive--hover);
}
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:checked:focus + span,
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:indeterminate:focus + span {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent), inset 0 0 0 2px #fff;
}
.oo-ui-checkboxInputWidget [type='checkbox']:disabled + span,
.oo-ui-radioInputWidget [type='radio']:disabled + span {
background-color: var(--ooui-disabled);
border-color: var(--ooui-disabled);
}
.oo-ui-dropdownWidget-handle {
border-color: var(--ooui-normal-border);
}
.oo-ui-dropdownWidget.oo-ui-widget-enabled .oo-ui-dropdownWidget-handle {
background-color: var(--ooui-normal);
color: var(--ooui-text);
}
.oo-ui-dropdownWidget.oo-ui-widget-enabled .oo-ui-dropdownWidget-handle:hover {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
}
.oo-ui-dropdownWidget.oo-ui-widget-enabled .oo-ui-dropdownWidget-handle:active {
color: var(--ooui-text);
}
.oo-ui-dropdownWidget.oo-ui-widget-enabled .oo-ui-dropdownWidget-handle:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-dropdownWidget.oo-ui-widget-enabled.oo-ui-dropdownWidget-open .oo-ui-dropdownWidget-handle {
background-color: var(--ooui-normal--hover);
}
.oo-ui-dropdownWidget.oo-ui-widget-disabled .oo-ui-dropdownWidget-handle {
color: var(--ooui-disabled-text);
text-shadow: none;
border-color: var(--ooui-disabled-border);
background-color: var(--ooui-disabled);
}
.oo-ui-dropdownInputWidget select {
border-color: var(--ooui-normal-border);
}
.oo-ui-dropdownInputWidget option {
background-color: var(--ooui-interface);
}
.oo-ui-dropdownInputWidget.oo-ui-widget-enabled {
background-color: var(--ooui-normal);
}
.oo-ui-dropdownInputWidget.oo-ui-widget-enabled:hover {
background-color: var(--ooui-normal--hover);
}
.oo-ui-dropdownInputWidget.oo-ui-widget-enabled select {
color: var(--ooui-text);
}
.oo-ui-dropdownInputWidget.oo-ui-widget-enabled select:hover,
.oo-ui-dropdownInputWidget.oo-ui-widget-enabled select:active {
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
}
.oo-ui-dropdownInputWidget.oo-ui-widget-enabled select:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-labelWidget.oo-ui-inline-help {
color: var(--byline-color);
}
.oo-ui-menuSelectWidget {
background-color: var(--ooui-interface);
border-color: var(--ooui-interface-border);
}
.oo-ui-menuSelectWidget-frameless {
box-shadow: inset 0 -1px 0 0 var(--ooui-normal-border);
}
.oo-ui-menuSectionOptionWidget {
color: var(--byline-color);
}
.oo-ui-menuOptionWidget.oo-ui-optionWidget-highlighted,
.oo-ui-menuOptionWidget.oo-ui-optionWidget-selected {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
}
.oo-ui-menuOptionWidget.oo-ui-optionWidget-selected.oo-ui-menuOptionWidget.oo-ui-optionWidget-highlighted,
.oo-ui-menuOptionWidget.oo-ui-optionWidget-pressed.oo-ui-menuOptionWidget.oo-ui-optionWidget-highlighted {
color: var(--ooui-accent);
}
.oo-ui-menuOptionWidget.oo-ui-widget-enabled.oo-ui-optionWidget {
color: var(--ooui-text);
}
.oo-ui-messageDialog-title {
color: inherit;
}
.oo-ui-messageWidget.oo-ui-messageWidget-block.oo-ui-flaggedElement-error {
background-color: var(--errorbox-bg);
border-color: var(--errorbox-border);
}
.oo-ui-messageWidget.oo-ui-messageWidget-block.oo-ui-flaggedElement-warning {
background-color: var(--warningbox-bg);
border-color: var(--warningbox-border);
}
.oo-ui-messageWidget.oo-ui-messageWidget-block.oo-ui-flaggedElement-success {
background-color: var(--successbox-bg);
border-color: var(--successbox-border);
}
.oo-ui-messageWidget.oo-ui-messageWidget-block.oo-ui-flaggedElement-notice {
background-color: var(--messagebox-info-background);
border-color: var(--messagebox-info-border);
}
.oo-ui-messageWidget.oo-ui-flaggedElement-error:not(.oo-ui-messageWidget-block),
.oo-ui-messageWidget.oo-ui-flaggedElement-success:not(.oo-ui-messageWidget-block) {
color: var(--ooui-text);
}
.oo-ui-optionWidget.oo-ui-widget-disabled {
color: var(--ooui-disabled-text);
}
.oo-ui-outlineControlsWidget {
background-color: var(--ooui-normal);
}
.oo-ui-outlineOptionWidget.oo-ui-optionWidget-highlighted {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
}
.oo-ui-popupWidget-popup {
background-color: var(--ooui-interface);
border-color: var(--ooui-interface-border);
}
.oo-ui-popupWidget-anchored-top .oo-ui-popupWidget-anchor:after {
border-bottom-color: var(--ooui-interface);
}
.oo-ui-popupWidget-anchored-top .oo-ui-popupWidget-anchor:before {
border-bottom-color: var(--ooui-interface-border);
}
.oo-ui-popupWidget-anchored-bottom .oo-ui-popupWidget-anchor:after {
border-top-color: var(--ooui-interface);
}
.oo-ui-popupWidget-anchored-bottom .oo-ui-popupWidget-anchor:before {
border-top-color: var(--ooui-interface-border);
}
.oo-ui-popupWidget-anchored-start .oo-ui-popupWidget-anchor:after {
border-right-color: var(--ooui-interface);
}
.oo-ui-popupWidget-anchored-start .oo-ui-popupWidget-anchor:before {
border-right-color: var(--ooui-interface-border);
}
.oo-ui-popupWidget-anchored-end .oo-ui-popupWidget-anchor:after {
border-left-color: var(--ooui-interface);
}
.oo-ui-popupWidget-anchored-end .oo-ui-popupWidget-anchor:before {
border-left-color: var(--ooui-interface-border);
}
.oo-ui-searchWidget-query {
border-bottom-color: var(--ooui-interface-border);
}
.oo-ui-selectFileWidget-dropTarget {
background-color: var(--ooui-interface);
border-color: var(--ooui-interface-border);
}
.oo-ui-selectFileWidget.oo-ui-widget-enabled.oo-ui-selectFileWidget-dropTarget {
background-color: var(--ooui-interface);
}
.oo-ui-selectFileWidget.oo-ui-widget-enabled.oo-ui-selectFileWidget-dropTarget:hover {
border-color: var(--ooui-input-border--hover);
}
.oo-ui-tabOptionWidget {
color: var(--ooui-text);
}
.oo-ui-tabSelectWidget-framed .oo-ui-tabOptionWidget.oo-ui-optionWidget-selected {
background-color: var(--body-dark);
color: var(--ooui-text);
}
.oo-ui-tabSelectWidget-framed .oo-ui-tabOptionWidget.oo-ui-optionWidget-selected .oo-ui-labelElement-label {
border-bottom-color: var(--body-border);
}
.oo-ui-tabSelectWidget-framed .oo-ui-tabOptionWidget.oo-ui-widget-enabled:hover,
.oo-ui-tabSelectWidget-framed .oo-ui-tabOptionWidget.oo-ui-widget-enabled:active {
background-color: var(--body-light);
color: var(--ooui-text);
}
.oo-ui-tabSelectWidget-framed .oo-ui-tabOptionWidget.oo-ui-widget-enabled.oo-ui-optionWidget-selected:hover {
background-color: var(--body-dark);
}
.oo-ui-tabSelectWidget-frameless .oo-ui-tabOptionWidget.oo-ui-optionWidget-selected {
color: var(--ooui-progressive);
box-shadow: inset 0 -2px 0 0 var(--ooui-progressive);
}
.oo-ui-tabSelectWidget-frameless .oo-ui-tabOptionWidget.oo-ui-optionWidget-selected:hover,
.oo-ui-tabSelectWidget-frameless .oo-ui-tabOptionWidget.oo-ui-optionWidget-selected:focus {
color: var(--ooui-progressive--hover);
box-shadow: inset 0 -2px 0 0 var(--ooui-progressive--hover);
}
.oo-ui-tabSelectWidget-framed {
background: none;
border-bottom: 1px solid var(--ooui-interface-border);
}
.oo-ui-tabSelectWidget-frameless {
box-shadow: inset 0 -1px 0 0 var(--ooui-interface-border);
}
.oo-ui-tabSelectWidget-mobile {
}
.oo-ui-tabSelectWidget-mobile.oo-ui-tabSelectWidget-framed:after {
background: var(--mobile-navbox-linear-gradient);
}
.oo-ui-tabSelectWidget-mobile.oo-ui-tabSelectWidget-frameless:after {
background: var(--mobile-navbox-linear-gradient);
}
.oo-ui-tagItemWidget {
border-color: var(--ooui-normal-border);
}
.oo-ui-tagItemWidget.oo-ui-widget-enabled {
color: var(--ooui-text);
}
.oo-ui-tagItemWidget.oo-ui-widget-enabled:hover {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
}
.oo-ui-tagItemWidget.oo-ui-widget-enabled:not( .oo-ui-tagItemWidget-fixed ) {
background-color: var(--ooui-normal);
}
.oo-ui-tagItemWidget.oo-ui-widget-enabled .oo-ui-buttonElement-button:hover {
background-color: var(--ooui-normal--hover);
}
.oo-ui-tagMultiselectWidget.oo-ui-widget-enabled {
background-color: var(--ooui-interface);
}
.oo-ui-tagMultiselectWidget.oo-ui-widget-enabled.oo-ui-tagMultiselectWidget-outlined {
background-color: var(--ooui-normal);
}
.oo-ui-tagMultiselectWidget.oo-ui-widget-enabled.oo-ui-tagMultiselectWidget-outlined .oo-ui-tagItemWidget.oo-ui-widget-enabled {
background-color: var(--ooui-interface);
}
.oo-ui-textInputWidget .oo-ui-inputWidget-input {
background-color: var(--ooui-input);
color: var(--ooui-text);
border-color: var(--ooui-input-border);
}
.oo-ui-textInputWidget.oo-ui-widget-enabled .oo-ui-inputWidget-input::placeholder {
color: var(--subtle-color);
}
.oo-ui-textInputWidget.oo-ui-widget-enabled .oo-ui-inputWidget-input:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-textInputWidget.oo-ui-widget-enabled .oo-ui-inputWidget-input[readonly]:not(.oo-ui-pendingElement-pending) {
background-color: var(--ooui-disabled);
color: var(--ooui-disabled-text);
}
.oo-ui-textInputWidget.oo-ui-widget-enabled:hover .oo-ui-inputWidget-input {
border-color: var(--ooui-input-border--hover);
}
.oo-ui-textInputWidget.oo-ui-widget-enabled:hover .oo-ui-inputWidget-input:focus {
border-color: var(--ooui-accent);
}
@media screen and (min-width: 0) {
.oo-ui-textInputWidget.oo-ui-widget-enabled textarea.oo-ui-inputWidget-input:focus {
outline: 1px solid var(--ooui-accent);
}
}
.oo-ui-textInputWidget.oo-ui-widget-disabled .oo-ui-inputWidget-input {
background-color: var(--ooui-disabled);
color: var(--ooui-disabled-text);
text-shadow: none;
border-color: var(--ooui-disabled-border);
}
.oo-ui-toggleSwitchWidget {
background-color: var(--ooui-input);
border-color: var(--ooui-input-border);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled .oo-ui-toggleSwitchWidget-grip {
background-color: var(--ooui-input);
border-color: var(--ooui-input-border);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:hover {
background-color: var(--ooui-input);
border-color: var(--ooui-accent);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:hover .oo-ui-toggleSwitchWidget-grip {
background-color: var(--ooui-input);
border-color: var(--ooui-accent);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:active,
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:active:hover,
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:active:focus {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
box-shadow: inset 0 0 0 1px var(--ooui-progressive--hover);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:active .oo-ui-toggleSwitchWidget-grip,
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:active:hover .oo-ui-toggleSwitchWidget-grip,
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:active:focus .oo-ui-toggleSwitchWidget-grip {
background-color: var(--ooui-input);
border-color: var(--ooui-input);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:focus .oo-ui-toggleSwitchWidget-grip {
border-color: var(--ooui-accent);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled.oo-ui-toggleWidget-on {
background-color: var(--ooui-progressive);
border-color: var(--ooui-progressive);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled.oo-ui-toggleWidget-on .oo-ui-toggleSwitchWidget-grip {
background-color: var(--ooui-input);
border-color: var(--ooui-input);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled.oo-ui-toggleWidget-on:hover {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled.oo-ui-toggleWidget-on:active,
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled.oo-ui-toggleWidget-on:active:hover {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled.oo-ui-toggleWidget-on:focus {
border-color: var(--ooui-progressive);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled.oo-ui-toggleWidget-on:focus::before {
border-color: #fff;
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-disabled {
background-color: var(--ooui-disabled);
border-color: var(--ooui-disabled);
}
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled > .oo-ui-buttonElement-button {
color: var(--ooui-text);
}
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled > .oo-ui-buttonElement-button:hover {
color: var(--ooui-text);
}
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled > .oo-ui-buttonElement-button:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled.oo-ui-buttonElement-pressed > input.oo-ui-buttonElement-button,
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled > .oo-ui-buttonElement-button:active {
color: var(--ooui-text);
}
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button,
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button:hover {
color: var(--ooui-text);
}
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button:active,
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive.oo-ui-buttonElement-pressed > .oo-ui-buttonElement-button {
color: var(--ooui-text);
border-color: var(--ooui-text);
}
.oo-ui-buttonElement-frameless.oo-ui-widget-disabled > .oo-ui-buttonElement-button {
color: var(--ooui-disabled-text);
}
.oo-ui-buttonElement-framed.oo-ui-widget-disabled > .oo-ui-buttonElement-button {
background-color: var(--ooui-disabled);
border-color: var(--ooui-disabled-border);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled > .oo-ui-buttonElement-button {
background-color: var(--ooui-normal);
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled > .oo-ui-buttonElement-button:hover {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled > .oo-ui-buttonElement-button:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-buttonElement-active > .oo-ui-buttonElement-button {
background-color: var(--ooui-progressive--hover);
color: #fff;
border-color: var(--ooui-progressive--hover);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-buttonElement-active > .oo-ui-buttonElement-button:focus {
border-color: var(--ooui-progressive--hover);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled > .oo-ui-buttonElement-button:active,
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-buttonElement-pressed > .oo-ui-buttonElement-button {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive {
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button {
color: var(--ooui-text);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button:hover {
background-color: var(--ooui-normal--hover);
border-color: var(--ooui-progressive--hover);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-destructive > .oo-ui-buttonElement-button {
color: var(--ooui-text);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-destructive > .oo-ui-buttonElement-button:hover {
background-color: var(--ooui-normal--hover);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button {
background-color: var(--ooui-progressive);
border-color: var(--ooui-progressive);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button:hover {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent), inset 0 0 0 2px #fff;
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button:active,
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive.oo-ui-buttonElement-pressed > .oo-ui-buttonElement-button,
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive.oo-ui-buttonElement-active > .oo-ui-buttonElement-button,
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive.oo-ui-popupToolGroup-active > .oo-ui-buttonElement-button {
color: #fff;
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
}
.oo-ui-pendingElement-pending {
background-image: var(--ooui-pending-background-image);
background-size: 200%;
animation: oo-ui-pendingElement-stripes 6s linear infinite;
}
@keyframes oo-ui-pendingElement-stripes {
100% {
background-position: 100%;
}
}
.oo-ui-messageDialog-content > .oo-ui-window-foot {
outline-color: var(--ooui-interface-border);
}
.oo-ui-messageDialog-message {
color: var(--ooui-text);
}
.oo-ui-messageDialog-actions-horizontal .oo-ui-actionWidget {
border-right-color: var(--ooui-interface-border);
}
.oo-ui-messageDialog-actions-vertical .oo-ui-actionWidget {
border-bottom-color: var(--ooui-interface-border);
}
.oo-ui-processDialog-content .oo-ui-window-head,
.oo-ui-processDialog-content .oo-ui-window-foot {
outline-color: var(--ooui-interface-border);
}
.oo-ui-processDialog .oo-ui-actionWidget > .oo-ui-buttonElement-button {
border-top-color: transparent;
border-bottom-color: transparent;
}
.oo-ui-processDialog .oo-ui-actionWidget > .oo-ui-buttonElement-button:hover,
.oo-ui-processDialog .oo-ui-actionWidget > .oo-ui-buttonElement-button:active {
border-top-color: transparent;
border-bottom-color: transparent;
}
.oo-ui-processDialog .oo-ui-actionWidget:not( .oo-ui-flaggedElement-progressive ):not( .oo-ui-flaggedElement-destructive ) > .oo-ui-buttonElement-button:hover,
.oo-ui-processDialog .oo-ui-actionWidget:not( .oo-ui-flaggedElement-progressive ):not( .oo-ui-flaggedElement-destructive ) > .oo-ui-buttonElement-button:active {
border-right-color: var(--ooui-interface-border);
border-left-color: transparent;
}
.oo-ui-processDialog .oo-ui-actionWidget:not( .oo-ui-flaggedElement-progressive ):not( .oo-ui-flaggedElement-destructive ) > .oo-ui-buttonElement-button:focus {
border-color: var(--ooui-accent);
}
.oo-ui-processDialog-actions-safe .oo-ui-actionWidget > .oo-ui-buttonElement-button,
.oo-ui-processDialog-actions-other .oo-ui-actionWidget > .oo-ui-buttonElement-button {
border-right-color: var(--ooui-normal-border);
border-left-color: transparent;
}
.oo-ui-processDialog-actions-safe .oo-ui-widget-enabled.oo-ui-iconElement:not( .oo-ui-labelElement ) > .oo-ui-buttonElement-button:hover {
background-color: var(--ooui-normal--hover);
border-right-color: var(--ooui-interface-border);
}
.oo-ui-windowManager-modal > .oo-ui-dialog {
background-color: var(--ooui-window-background);
}
.oo-ui-windowManager-modal > .oo-ui-dialog > .oo-ui-window-frame {
background-color: var(--ooui-interface);
}
.oo-ui-windowManager-modal.oo-ui-windowManager-floating > .oo-ui-dialog > .oo-ui-window-frame {
border-color: var(--ooui-interface-border);
}
.oo-ui-window {
color: var(--ooui-text);
}
.oo-ui-toolbar-bar {
background-color: var(--ooui-interface);
color: var(--ooui-text);
}
.oo-ui-toolbar-position-top > .oo-ui-toolbar-bar {
border-bottom-color: var(--body-mid);
}
.oo-ui-toolbar-bar .oo-ui-bookletLayout > .oo-ui-menuLayout-menu {
border-right-color: var(--body-mid);
}
.oo-ui-tool.oo-ui-widget-enabled > .oo-ui-tool-link:hover {
background-color: var(--ooui-normal--hover);
}
.oo-ui-tool.oo-ui-widget-enabled > .oo-ui-tool-link:focus {
outline: 1px solid var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-tool.oo-ui-widget-enabled > .oo-ui-tool-link:active,
.oo-ui-tool.oo-ui-widget-enabled.oo-ui-tool-active > .oo-ui-tool-link,
.oo-ui-tool.oo-ui-widget-enabled.oo-ui-popupToolGroup-active > .oo-ui-tool-link {
background-color: var(--ooui-normal--hover);
color: var(--ooui-accent);
box-shadow: none;
}
.oo-ui-tool.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive > .oo-ui-tool-link {
background-color: var(--ooui-progressive);
}
.oo-ui-tool.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive > .oo-ui-tool-link:hover {
background-color: var(--ooui-progressive--hover);
}
.oo-ui-tool.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive > .oo-ui-tool-link:focus {
box-shadow: inset 0 0 0 1px var(--ooui-accent), inset 0 0 0 2px #fff;
}
.oo-ui-tool.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive > .oo-ui-tool-link:active,
.oo-ui-tool.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive.oo-ui-tool-active > .oo-ui-tool-link {
background-color: var(--ooui-progressive--hover);
}
.oo-ui-listToolGroup-tools .oo-ui-tool.oo-ui-widget-enabled {
background-color: var(--ooui-normal);
}
.oo-ui-listToolGroup-tools .oo-ui-tool.oo-ui-widget-enabled:hover {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
}
.oo-ui-listToolGroup-tools .oo-ui-tool-active.oo-ui-widget-enabled .oo-ui-tool-link .oo-ui-tool-title {
color: var(--ooui-progressive);
}
.oo-ui-menuToolGroup {
border-left-color: var(--body-mid);
border-right-color: var(--body-mid);
}
.oo-ui-popupToolGroup-tools {
background-color: var(--ooui-interface);
border-color: var(--body-mid);
}
.oo-ui-popupToolGroup.oo-ui-widget-enabled > .oo-ui-popupToolGroup-handle:hover {
background-color: var(--ooui-normal--hover);
}
.oo-ui-popupToolGroup.oo-ui-widget-enabled > .oo-ui-popupToolGroup-handle:focus {
outline: 1px solid var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-toolbar-actions .oo-ui-popupToolGroup.oo-ui-widget-enabled > .oo-ui-popupToolGroup-handle:hover {
border-right-color: var(--ooui-normal--hover);
}
.oo-ui-popupToolGroup-tools .oo-ui-tool.oo-ui-widget-enabled .oo-ui-tool-link:focus {
box-shadow: inset 0 0 0 2px var(--ooui-accent);
}
.oo-ui-popupToolGroup-tools .oo-ui-tool-active.oo-ui-widget-enabled .oo-ui-tool-link .oo-ui-tool-title {
color: var(--ooui-progressive);
}
.oo-ui-popupToolGroup.oo-ui-popupToolGroup-active > .oo-ui-popupToolGroup-handle {
background-color: var(--ooui-normal);
color: var(--ooui-accent);
}
.oo-ui-popupToolGroup.oo-ui-popupToolGroup-active > .oo-ui-popupToolGroup-handle:hover {
background-color: var(--ooui-normal--hover);
color: var(--ooui-accent);
}
.oo-ui-bookletLayout-outlinePanel > .oo-ui-outlineControlsWidget {
border-top-color: var(--ooui-interface-border);
}
.oo-ui-bookletLayout > .oo-ui-menuLayout-menu {
border-right-color: var(--ooui-interface-border);
}
.oo-ui-fieldLayout-disabled > .oo-ui-fieldLayout-body > .oo-ui-fieldLayout-header > .oo-ui-labelElement-label {
color: var(--ooui-disabled-text);
}
.oo-ui-panelLayout-framed {
border-color: var(--sidebar);
}
.oo-ui-icon-settings {
background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' width='20' height='20' viewBox='0 0 20 20'%3E%3Ctitle%3Esettings%3C/title%3E%3Cg transform='translate(10 10)'%3E%3Cpath id='a' d='M1.5-10h-3l-1 6.5h5m0 7h-5l1 6.5h3'/%3E%3Cuse xlink:href='%23a' transform='rotate(45)'/%3E%3Cuse xlink:href='%23a' transform='rotate(90)'/%3E%3Cuse xlink:href='%23a' transform='rotate(135)'/%3E%3C/g%3E%3Cpath d='M10 2.5a7.5 7.5 0 0 0 0 15 7.5 7.5 0 0 0 0-15v4a3.5 3.5 0 0 1 0 7 3.5 3.5 0 0 1 0-7'/%3E%3C/svg%3E");
}
.oo-ui-icon-clear {
background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 20 20'%3E%3Ctitle%3Eclear%3C/title%3E%3Cpath d='M10 0a10 10 0 1 0 10 10A10 10 0 0 0 10 0zm5.66 14.24-1.41 1.41L10 11.41l-4.24 4.25-1.42-1.42L8.59 10 4.34 5.76l1.42-1.42L10 8.59l4.24-4.24 1.41 1.41L11.41 10z'/%3E%3C/svg%3E");
}
.mw-widget-dateInputWidget-handle {
background-color: var(--ooui-input);
color: var(--ooui-text);
border-color: var(--ooui-input-border);
}
.mw-widget-dateInputWidget-calendar {
background-color: var(--ooui-interface);
}
.mw-widget-dateInputWidget.oo-ui-widget-enabled .mw-widget-dateInputWidget-handle:hover {
border-color: var(--ooui-input-border--hover);
}
.mw-widget-calendarWidget {
border-color: var(--ooui-interface-border);
}
.mw-widget-calendarWidget:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.mw-widget-calendarWidget-day,
.mw-widget-calendarWidget-day-heading {
color: var(--ooui-text);
}
.mw-widget-calendarWidget-day-additional {
color: var(--ooui-text);
opacity: 0.67;
}
.mw-widget-calendarWidget-day-today {
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.mw-widget-calendarWidget-item:hover {
background-color: var(--ooui-progressive);
}
.mw-widget-calendarWidget-item-selected {
background-color: var(--ooui-progressive--hover);
}
.mw-widgets-datetime-calendarWidget {
background-color: var(--ooui-interface);
border-color: var(--ooui-interface-border);
}
.mw-widgets-datetime-calendarWidget:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent), 0 2px 2px 0 rgba(0, 0, 0, 0.25);
}
.mw-widgets-datetime-calendarWidget-grid .mw-widgets-datetime-calendarWidget-cell.mw-widgets-datetime-calendarWidget-extra .oo-ui-buttonElement-button .oo-ui-labelElement-label {
color: var(--subtle-color);
}
.mw-widgets-datetime-calendarWidget-grid .mw-widgets-datetime-calendarWidget-cell.mw-widgets-datetime-calendarWidget-selected .oo-ui-buttonElement-button {
background-color: var(--ooui-progressive--hover);
}
.mw-widgets-datetime-dateTimeInputWidget-handle {
background-color: var(--ooui-input);
color: var(--ooui-text);
border-color: var(--ooui-input-border);
}
.mw-widgets-datetime-dateTimeInputWidget.oo-ui-widget-enabled.mw-widgets-datetime-dateTimeInputWidget-handle:hover {
border-color: var(--ooui-input-border--hover);
}
.mw-widgets-datetime-dateTimeInputWidget.oo-ui-widget-enabled:hover input,
.mw-widgets-datetime-dateTimeInputWidget.oo-ui-widget-enabled:hover textarea {
border-color: var(--ooui-input-border--hover);
}
.mw-widgets-datetime-dateTimeInputWidget.oo-ui-widget-enabled .mw-widgets-datetime-dateTimeInputWidget-editField:hover {
background-color: var(--ooui-normal);
}
.ve-activated .ve-init-mw-desktopArticleTarget-originalContent #catlinks:hover {
background: var(--ooui-normal--hover);
}
.ve-ui-overlay {
font-family: inherit;
}
.oo-ui-toolbar-position-top .ve-ui-toolbarDialog-position-above {
border-top-color: var(--body-mid);
}
.ve-ce-branchNode-blockSlug,
.ve-ce-branchNode-newSlug {
outline-color: var(--body-border);
background-color: var(--ooui-interface);
}
.ve-ui-specialCharacterPage h3 {
color: var(--byline-color);
}
.ve-ui-specialCharacterPage-character {
border-color: var(--body-mid);
}
.ve-ui-specialCharacterPage-character:hover {
border-color: var(--body-dark);
}
.ve-ce-linkAnnotation.ve-ce-annotation-active {
box-shadow: 0 0 0 1px var(--body-mid);
background: none;
}
.ve-ui-desktopContext .ve-ui-linkContextItem .ve-ui-linkContextItem-label {
border-color: var(--body-border);
}
.ve-ui-mwHelpPopupTool-version-label,
.ve-ui-mwHelpPopupTool-version-link,
.ve-ui-mwHelpPopupTool-version-date {
color: var(--byline-color);
}
.ve-ce-tableCellableNode {
border-color: var(--body-mid);
}
.ve-ce-mwReferencesListNode-muted {
color: var(--byline-color);
}
.ve-ui-mwTemplatePage-description,
.ve-ui-mwParameterPage-label,
.ve-ui-mwParameterPage-description-required,
.ve-ui-mwParameterPage-description-deprecated {
color: var(--byline-color);
}
.mw-widget-titleWidget-menu .mw-widget-titleOptionWidget-description {
color: var(--byline-color);
}
.ve-ui-mwGalleryDialog-menuLayout > .oo-ui-menuLayout-menu,
.ve-ui-mwGalleryDialog-innerMenuLayout > .oo-ui-menuLayout-menu,
.ve-ui-mwGalleryDialog .ve-ui-mwGalleryDialog-image-container,
.ve-ui-targetWidget {
border-color: var(--body-border);
}
.ve-ui-targetWidget:not(.oo-ui-pendingElement-pending) {
background-color: var(--body-main);
}
.ve-ui-mwSaveDialog {
color: var(--ooui-text);
}
.ve-ui-mwSaveDialog-options {
background-color: var(--ooui-interface);
border-color: var(--body-border);
}
.ve-ui-mwSaveDialog-summary {
background-color: var(--ooui-input);
}
.ve-ui-mwSaveDialog-editSummary-count {
border-color: var(--body-border);
}
.ve-ui-mwSaveDialog-license {
color: var(--byline-color);
}
.ve-ui-mwReferenceContextItem-muted {
color: var(--byline-color);
}
.ve-ui-mwNoticesPopupTool-items > div:not(:first-child),
.ve-ui-mwHelpPopupTool-item:not(:first-child) {
border-color: var(--body-border);
}
.ve-ui-mwTransclusionOutlineControlsWidget {
background-color: var(--ooui-interface);
border-top-color: var(--body-border);
}
.ve-ui-mwTransclusionOutlineTemplateWidget-sticky {
background-color: var(--ooui-interface);
}
.ve-ui-mwTransclusionOutlineTemplateWidget .ve-ui-mwTransclusionOutlineParameterWidget.oo-ui-optionWidget-highlighted {
color: var(--ooui-text);
}
.ve-ui-mwTransclusionOutlineTemplateWidget-no-template-parameters {
color: var(--subtle-color);
}
.ve-ui-mwParameterPage-undocumentedLabel {
color: var(--subtle-color);
}
.ve-ui-mwTwoPaneTransclusionDialogLayout > .oo-ui-menuLayout-menu {
border-right: var(--body-border);
}
.ve-ui-mwParameterPage-doc-required,
.ve-ui-mwParameterPage-doc-deprecated,
.ve-ui-mwParameterPage-inlineDescription .ve-ui-mwParameterPage-doc-example {
color: var(--byline-color);
}
.ve-ui-expandableContent-toggle {
background-color: var(--ooui-interface);
}
.ve-ui-expandableContent-fade {
background: linear-gradient(to right, rgba(255, 255, 255, 0) 0, var(--ooui-interface) 90%);
}
.ve-ui-commandHelpDialog-shortcut > kbd,
.ve-ui-commandHelpDialog-sequence > kbd {
background-color: var(--keypress-background);
color: var(--keypress-color);
border-color: var(--keypress-border);
box-shadow: none;
text-shadow: none;
}
.ve-init-mw-desktopArticleTarget-toolbarPlaceholder-floating .ve-init-mw-desktopArticleTarget-toolbarPlaceholder-bar {
background: var(--ooui-interface);
}
.ve-init-mw-desktopArticleTarget-toolbarPlaceholder-bar {
border-bottom-color: var(--body-mid);
}
figure[typeof~='mw:File/Thumb'],
figure[typeof~='mw:File/Frame'],
figure[typeof~='mw:Image/Thumb'],
figure[typeof~='mw:Video/Thumb'],
figure[typeof~='mw:Image/Frame'],
figure[typeof~='mw:Video/Frame'] {
border: none;
background-color: var(--thumb-bg);
}
figure[typeof~='mw:File/Thumb'] > a:first-child > *:first-child:not( .mw-broken-media ),
figure[typeof~='mw:File/Frame'] > a:first-child > *:first-child:not( .mw-broken-media ),
figure[typeof~='mw:Image/Thumb'] > a:first-child > *:first-child:not( .mw-broken-media ),
figure[typeof~='mw:Video/Thumb'] > a:first-child > *:first-child:not( .mw-broken-media ),
figure[typeof~='mw:Image/Frame'] > a:first-child > *:first-child:not( .mw-broken-media ),
figure[typeof~='mw:Video/Frame'] > a:first-child > *:first-child:not( .mw-broken-media ) {
border: none;
background: var(--thumb-bg);
}
figure[typeof~='mw:File/Thumb'] > figcaption,
figure[typeof~='mw:File/Frame'] > figcaption,
figure[typeof~='mw:Image/Thumb'] > figcaption,
figure[typeof~='mw:Video/Thumb'] > figcaption,
figure[typeof~='mw:Image/Frame'] > figcaption,
figure[typeof~='mw:Video/Frame'] > figcaption {
border: none;
background-color: var(--thumb-caption-bg);
padding: 4px 6px;
}
:root {
--keypress-background: #eee;
--keypress-border: #ccc;
--keypress-color: #333;
}
.toc .toctitle > * {
color: #fff;
}
.navbox .navbox-title {
color: #fff;
}
.navbox .navbox-list:not(last-child) {
border-bottom: none;
}
.archivelist {
background-color: var(--body-light);
border: solid 1px var(--body-border);
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
float: right;
margin: 5px;
padding: 5px;
text-align: center;
width: 120px;
}
.shortcut {
border: 1px solid var(--body-border);
background: var(--body-light);
float: right;
font-size: 0.8em;
margin: 0.5em 0em 0.5em 1em;
padding: 0.5em;
text-align: center;
}
.hatnote,
.seealso {
font-style: italic;
}
.hatnote i,
.seealso i {
font-style: normal;
}
div.hatnote,
div.seealso {
margin: 0.5em 1.6em;
}
div.hatnote + div.hatnote,
div.hatnote + div.seealso,
div.seealso + div.hatnote,
div.seealso + div.seealso {
margin-top: -0.5em;
}
.keypress {
background: var(--keypress-background);
color: var(--keypress-color);
font-family: inherit;
border: 1px solid var(--keypress-border);
border-radius: 2px;
font-size: 0.9em;
margin: 0 0.1em;
padding: 0.1em 0.4em;
white-space: nowrap;
}
:root {
--documentation-background: #f9fafa;
--documentation-link-color: #e4eaee;
--documentation-headers-color: #fff;
--documentation-header-background: #949eaa;
--documentation-subheader-background: #808c9a;
--documentation-border: #e4eaee;
}
.documentation {
background: var(--documentation-background);
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
margin: 1em 0;
}
.documentation pre,
.documentation code {
background-color: var(--documentation-background);
border-color: var(--documentation-border);
}
.documentation h2,
.documentation hr {
border-color: var(--documentation-border);
}
.documentation-header {
color: var(--documentation-headers-color);
background: var(--documentation-header-background);
font-weight: bold;
padding: 1em 1.5em;
}
.documentation-title {
font-size: 1.25em;
}
.documentation-subheader {
color: var(--documentation-headers-color);
background: var(--documentation-subheader-background);
padding: 0.5em 1.5em;
}
.documentation-subheader a,
.documentation-subheader a:visited,
.documentation-subheader a:active {
color: var(--documentation-link-color);
}
.documentation-documentation,
.documentation-links {
font-size: 0.85em;
}
.documentation-content {
padding: 1em 1.5em;
}
.mw-templatedata-doc-params dl:not(:empty) {
column-count: 3;
border-top: 1px solid var(--body-border);
margin-bottom: 0.5em;
}
.mw-templatedata-doc-params dt::after {
content: ":";
}
.mw-templatedata-doc-params dd,
.mw-templatedata-doc-params dt {
margin: 0.1em 2em;
min-width: auto;
}
.mw-templatedata-doc-muted {
color: var(--subtle-color);
font-style: italic;
}
:root {
--infobox-text-color: var(--text-color);
--table-header: var(--body-dark);
--table-subheader: var(--body-mid);
--table-body: var(--body-light);
--table-border: var(--body-border);
}
.infobox {
font-size: 0.85em;
width: 300px;
border-collapse: collapse;
float: right;
table-layout: fixed;
margin: 0.5em 0 1em 1em;
}
.infobox .infobox-buttons {
display: flex;
flex-wrap: wrap;
justify-content: center;
grid-gap: 3px;
margin-bottom: 3px;
}
.infobox .infobox-buttons .button {
background: var(--table-subheader);
padding: 0 5px;
font-weight: bold;
flex: 1 1 20%;
max-width: 20%;
color: #fff;
}
.infobox .infobox-buttons .button.button-selected {
background: var(--table-header);
}
.infobox tbody {
border: 1px solid var(--table-border);
background: var(--table-body);
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(231, 215, 199, 0.5);
}
.infobox .infobox-header {
background: var(--table-header);
padding: 0.5em 0;
text-align: center;
color: #fff;
font-size: 1.15em;
font-weight: bold;
line-height: 1.4em;
}
.infobox .infobox-image {
text-align: center;
}
.infobox .infobox-subheader {
background: var(--table-subheader);
font-weight: bold;
text-align: center;
color: #fff;
}
.infobox .infobox-subheader a {
color: var(--link-color);
}
.infobox .infobox-padding {
backgound: var(--table-body);
}
.infobox tr td:not(.infobox-padding) {
padding: 0.2em 0.5em;
}
.infobox th:not(.infobox-header):not(.infobox-subheader):not(.infobox-nested) {
border-right: 2px solid var(--table-subheader);
text-align: right;
padding: 0.2em 0.5em;
}
.infobox select {
max-width: 300px;
}
.hidden {
display: none;
}
ol.references,
.reflist {
font-size: 90%;
}
.reflist {
list-style-type: decimal;
}
.reflist .references {
font-size: 100%;
list-style-type: inherit;
}
.reflist-lower-alpha {
list-style-type: lower-alpha;
}
ol.references li:target,
sup.reference:target {
background-color: var(--body-light);
}
.hideQuotes .refhide {
display: none;
}
:root {
--messagebox-obsolete-background: #cfcfcf;
--messagebox-obsolete-border: #464646;
--messagebox-obsolete-color: var(--text-color);
--messagebox-obsolete-link-color: #6c6c6c;
--messagebox-info-background: #ebebeb;
--messagebox-info-border: #898989;
--messagebox-info-color: var(--text-color);
--messagebox-info-link-color: #6c6c6c;
--messagebox-action-background: #c7e8fa;
--messagebox-action-border: #0b5884;
--messagebox-action-color: var(--text-color);
--messagebox-action-link-color: #03436b;
--messagebox-warn-background: #dfc0ba;
--messagebox-warn-border: #861c10;
--messagebox-warn-color: var(--text-color);
--messagebox-warn-link-color: #8e221a;
--messagebox-safe-background: #d8f0d3;
--messagebox-safe-border: #1b8408;
--messagebox-safe-color: var(--text-color);
--messagebox-safe-link-color: #1b8408;
--messagebox-disambig-background: #ebebeb;
--messagebox-disambig-border: #898989;
--messagebox-disambig-color: var(--text-color);
--messagebox-disambig-link-color: #6c6c6c;
--messagebox-discord-background: #5865f2;
--messagebox-discord-border: #4c57d0;
--messagebox-discord-link-color: #d2e5fc;
}
.mw-message-box,
.mw-message-box-error,
.mw-message-box-warning,
.mw-message-box-success,
.usermessage {
color: var(--text-color);
}
.messagebox {
width: 65%;
margin: 0.5em auto;
border-left: 15px solid;
border-color: var(--body-dark);
background-color: var(--body-light);
box-sizing: border-box;
}
.messagebox.obsolete {
background-color: var(--messagebox-obsolete-background);
border-color: var(--messagebox-obsolete-border);
color: var(--messagebox-obsolete-color);
}
.messagebox.obsolete a,
.messagebox.obsolete a:visited,
.messagebox.obsolete a:active {
color: var(--messagebox-obsolete-link-color);
}
.messagebox.info {
background-color: var(--messagebox-info-background);
border-color: var(--messagebox-info-border);
color: var(--messagebox-info-color);
}
.messagebox.info a,
.messagebox.info a:visited,
.messagebox.info a:active {
color: var(--messagebox-info-link-color);
}
.messagebox.action {
background-color: var(--messagebox-action-background);
border-color: var(--messagebox-action-border);
color: var(--messagebox-action-color);
}
.messagebox.action a,
.messagebox.action a:visited,
.messagebox.action a:active {
color: var(--messagebox-action-link-color);
}
.messagebox.warn {
background-color: var(--messagebox-warn-background);
border-color: var(--messagebox-warn-border);
color: var(--messagebox-warn-color);
}
.messagebox.warn a,
.messagebox.warn a:visited,
.messagebox.warn a:active {
color: var(--messagebox-warn-link-color);
}
.messagebox.safe {
background-color: var(--messagebox-safe-background);
border-color: var(--messagebox-safe-border);
color: var(--messagebox-safe-color);
}
.messagebox.safe a,
.messagebox.safe a:visited,
.messagebox.safe a:active {
color: var(--messagebox-safe-link-color);
}
.messagebox.disambig {
background-color: var(--messagebox-disambig-background);
border-color: var(--messagebox-disambig-border);
color: var(--messagebox-disambig-color);
}
.messagebox.disambig a,
.messagebox.disambig a:visited,
.messagebox.disambig a:active {
color: var(--messagebox-disambig-link-color);
}
.messagebox.discord {
background-color: var(--messagebox-discord-background);
border-color: var(--messagebox-discord-border);
color: #fff;
}
.messagebox.discord a,
.messagebox.discord a:visited,
.messagebox.discord a:active {
color: var(--messagebox-discord-link-color);
}
.messagebox.discord a.external,
.messagebox.discord a:visited.external,
.messagebox.discord a:active.external {
font-style: italic;
}
.messagebox.stub {
width: 40%;
}
.messagebox.hasdialogue {
padding: 0 10px;
width: auto;
}
:root {
--byline-arrow-filter: invert(29%) sepia(0%) saturate(376%) hue-rotate(172deg) brightness(87%) contrast(80%);
--tile-border-color: var(--body-border);
--tile-background-color: var(--body-light);
--tile-link-button-color: #f5e9db;
--tile-link-button-highlight-color: #dfccb0;
--tile-dark-color: #fff;
--tile-dark-bg: var(--body-dark);
--tile-dark-link-color: #ccc;
--tile-dark-byline-color: rgba(255, 255, 255, 0.7);
--tile-dark-header-color: #fff;
}
.tile {
background: var(--tile-background-color);
border: 1px solid var(--tile-border-color);
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
padding: 1.5em 2em 1em;
max-width: 40em;
}
.tile h2 {
font-size: 1.4em;
font-weight: bold;
border: none;
margin: 0 0 0.4em;
}
.tile .byline + h2 {
margin-top: -0.5em;
}
.tile.dark {
color: var(--tile-dark-color);
background: var(--tile-dark-bg);
border: none;
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.3);
}
.tile.dark h2 {
color: var(--tile-dark-header-color);
}
.tile.dark a {
color: var(--tile-dark-link-color);
}
.tile.dark .byline {
color: var(--tile-dark-byline-color);
}
.byline {
font-size: 0.9em;
color: var(--byline-color);
}
.byline a {
color: var(--byline-color);
}
.tile-row {
display: flex;
flex-flow: row wrap;
margin-bottom: 1em;
}
.tile-halves {
display: flex;
flex-flow: row wrap;
background: var(--tile-background-color);
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
}
.tile-halves h2 {
font-size: 1.4em;
font-weight: bold;
border: none;
margin: 0 0 0.4em;
}
.tile-halves .byline + h2 {
margin-top: -0.5em;
}
.tile-top {
width: 100%;
padding: 1.3rem 1.5rem 0.6rem;
}
.tile-top.tile-image {
display: flex;
align-items: center;
background-color: var(--body-light);
overflow: hidden;
padding: 0;
height: 13vw;
max-height: 12em;
transition: 0.4s ease-out;
}
.tile-halves:hover .tile-top.tile-image img {
transform: scale(1.1);
transition: 0.5s ease-out;
}
.tile-top.tile-image a {
width: 100%;
}
.tile-top.tile-image img {
width: 100%;
object-fit: cover;
max-height: 200px;
transition: 0.4s ease-out;
}
.tile-bottom {
background: var(--body-dark);
width: 100%;
padding: 1rem 1.5rem 0.6rem;
}
.tile-bottom h2 a {
color: #fff !important;
}
.tile-bottom.link-button {
align-self: flex-end;
padding: 0;
}
.tile-bottom.link-button a {
display: block;
text-align: center;
padding: 0.75em 1.5em 0.8em;
text-decoration: none;
}
.tile-bottom.read-more {
background: var(--tile-link-button-color);
transition: 0.3s ease-out;
}
.tile-bottom.read-more a {
color: var(--byline-color);
font-weight: bold;
text-align: right;
}
.tile-bottom.read-more:hover {
background: var(--tile-link-button-highlight-color);
}
.tile-bottom.read-more:hover .arrow {
transform: translateX(50%);
}
.tile-bottom.read-more .arrow {
filter: var(--byline-arrow-filter);
margin-left: 0.4em;
transition: 0.3s ease-out;
}
body.page-Main_Page.action-view .catlinks,
body.page-Main_Page.action-view #contentSub,
body.page-Main_Page.action-view #firstHeading,
body.page-Main_Page.action-view #siteNotice {
display: none;
}
body.page-Main_Page .mw-parser-output {
max-width: 75em;
margin: 0 auto;
}
body.page-Main_Page.action-view .catlinks,
body.page-Main_Page.action-view #contentSub,
body.page-Main_Page.action-view #siteNotice {
display: none;
}
.mainpage-header {
display: flex;
margin: 2.6em 1.75em 1.5em;
}
.mainpage-header .header-intro {
flex: 2;
}
.mainpage-header .header-intro h1 {
font-size: 2.5em;
font-weight: bold;
border: none;
margin: 0 0 0.15em;
}
.mainpage-header .header-intro p {
font-size: 1.1em;
line-height: 1.7em;
}
.mainpage-header .header-stats {
flex: 1;
display: flex;
justify-content: center;
align-items: center;
margin-top: -1em;
}
.mainpage-body {
display: grid;
grid-template-areas: "event event event" "update update update" "content content content" "left left right";
gap: 0.9rem;
grid-template-columns: repeat(3, 1fr);
}
.mainpage-body h2 a {
color: var(--text-color);
}
.mainpage-body .tile {
padding-left: 1.75em;
padding-right: 1.75em;
max-width: 100%;
}
.mainpage-body .tile-row {
width: 100%;
margin-bottom: 0;
}
.mainpage-body .tile-row {
display: grid;
gap: 0.9rem;
}
.mainpage-contents.tile-row {
display: flex;
}
.mainpage-contents.tile-row .tile-top {
height: 5.5rem;
}
.mainpage-left {
grid-area: left;
flex: 2;
display: flex;
flex-flow: column wrap;
}
.mainpage-left > * {
margin: 0 0 0.9rem;
}
.mainpage-right {
grid-area: right;
flex: 1;
display: flex;
flex-flow: column wrap;
}
.mainpage-right > * {
margin: 0 0 0.9rem;
}
.arrow {
background: url('filepath://White-chevron.svg') no-repeat;
display: inline-block;
height: 0.7rem;
width: 0.45rem;
vertical-align: middle;
}
.arrow.dark {
filter: invert(80%);
}
.mainpage-contents {
grid-area: content;
grid-template-columns: repeat(6, 1fr);
}
.mainpage-contents .tile-halves {
flex: 1;
}
.mainpage-contents .tile-top {
height: 4.5rem;
position: relative;
}
.mainpage-contents .tile-top.tile-image img {
height: auto;
}
.mainpage-contents h2 {
margin: 0;
padding: 0;
}
.mainpage-contents .tile-bottom.link-button a {
padding: 0.75em 0.2em;
}
.popular-pages ul {
display: grid;
grid-template-columns: repeat(3, 1fr);
grid-gap: 0.6em;
margin: 1em 0 0.7em 0;
}
.mp-popular-page-light {
display: flex;
align-items: center;
background-color: var(--button-background);
transition: 100ms;
}
.mp-popular-page-light a {
flex: 1;
display: block;
color: #fff;
font-weight: bold;
text-align: center;
text-decoration: none;
padding: 0.7em 1em;
}
.mp-popular-page-light:hover {
filter: brightness(115%);
transition: 100ms;
}
.mainpage-social {
border: none;
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.3);
}
.mainpage-social .tile-top {
display: flex;
align-items: center;
padding: 1em 1.5em;
}
.mainpage-social .tile-top a {
flex: 1;
position: relative;
text-decoration: none;
}
.mainpage-social .tile-top a:hover .arrow {
transform: translateX(50%);
}
.mainpage-social .tile-bottom {
border: none;
padding: 1em 1.75em;
}
.mainpage-social .tile-bottom p {
color: #fff;
font-weight: bold;
font-size: 0.9em;
text-align: center;
text-transform: uppercase;
letter-spacing: 0.03em;
margin: 0;
}
.mainpage-social .social-icon {
margin-right: 0.75em;
text-align: center;
width: 60px;
}
.mainpage-social .social-header {
color: #fff;
font-weight: bold;
font-size: 1.15em;
margin: 0.5em 0 -0.15em;
}
.mainpage-social .server-tagline {
color: rgba(255, 255, 255, 0.9);
margin-bottom: 0.5em;
}
.mainpage-social .arrow {
position: absolute;
top: calc(50% - .5em);
right: 0;
height: 1em;
width: 0.7em;
background-size: 0.7em 1em;
transition: 0.3s ease-out;
}
.mainpage-social.mainpage-discord .tile-top {
background: #5865f2;
}
.mainpage-social.mainpage-discord .tile-bottom {
background: #525ee0;
}
.mainpage-social.mainpage-twitter .tile-top {
background: #15202b;
}
.mainpage-social.mainpage-twitter .tile-bottom {
background: #121c26;
}
.mainpage-editing {
border: none;
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.3);
}
.mainpage-editing .tile-top {
background: #438ab5;
}
.mainpage-editing .tile-bottom {
background: #3980ab;
border: none;
padding: 0.8rem 1.5rem 0.4rem;
}
.mainpage-editing h2,
.mainpage-editing a {
color: #fff;
}
.mainpage-editing p {
color: rgba(255, 255, 255, 0.9);
}
.mainpage-editing ul {
list-style-image: url('filepath://Transparent-chevron.svg');
}
@media only screen and (max-width: 1200px) {
.mainpage-contents {
grid-template-columns: repeat(3, 1fr);
}
}
@media only screen and (max-width: 1000px) {
.mainpage-body {
grid-template-areas: "event event event" "update update update" "content content content" "left left left" "right right right";
}
.mainpage-recent-updates {
grid-template-columns: repeat(2, 1fr);
}
.mainpage-recent-updates .tile-halves:last-child {
display: none;
}
.mainpage-recent-updates .tile-halves:hover .tile-top img {
transform: scale(1.04);
}
.mainpage-recent-updates .tile-top {
height: 18vw;
min-height: 9em;
}
.mainpage-header .header-stats {
display: none;
}
.mainpage-left > *:last-child,
.mainpage-right > *:last-child {
margin-bottom: 0;
}
.popular-pages ul {
grid-template-columns: repeat(2, 1fr);
}
}
@media only screen and (max-width: 720px) {
.mainpage-recent-updates {
grid-template-columns: none;
}
.mainpage-recent-updates .tile-halves:last-child {
display: flex;
}
.mainpage-contents {
grid-template-columns: repeat(2, 1fr);
}
}
.mw-prefs-buttons {
background-color: var(--body-main);
border-top-color: var(--body-border);
box-shadow: none;
}
.mw-prefs-tabs-wrapper.oo-ui-panelLayout-framed,
.mw-prefs-tabs > .oo-ui-menuLayout-content > .oo-ui-indexLayout-stackLayout > .oo-ui-tabPanelLayout {
border-color: var(--body-border);
}
.mw-htmlform-ooui .mw-htmlform-matrix tbody tr:nth-child(even) td {
background-color: var(--body-light);
}
.mw-htmlform-ooui .mw-htmlform-matrix tbody tr:hover td {
background-color: var(--body-mid);
}
:root {
--rc-positive-color: #407813;
--rc-negative-color: #b41e0f;
}
.mw-plusminus-pos {
color: var(--rc-positive-color);
}
.mw-plusminus-neg {
color: var(--rc-negative-color);
}
.client-js .mw-recentchanges-toplinks:not(.mw-recentchanges-toplinks-collapsed) {
border-color: var(--body-border);
background-color: var(--body-light);
border-radius: 2px;
}
.mw-rcfilters-ui-filterTagMultiselectWidget-wrapper-content-title {
color: var(--text-color);
}
.mw-rcfilters-ui-filterTagMultiselectWidget-emptyFilters {
color: var(--byline-color);
}
.mw-rcfilters-ui-filterTagMultiselectWidget.oo-ui-widget-enabled .oo-ui-tagMultiselectWidget-handle {
background-color: var(--ooui-interface);
border-color: var(--ooui-interface-border);
}
.mw-rcfilters-ui-filterTagMultiselectWidget-views-select-widget.oo-ui-widget {
border-color: var(--ooui-interface-border);
}
.mw-rcfilters-collapsed .mw-rcfilters-ui-filterTagMultiselectWidget {
border-bottom-color: var(--ooui-interface-border);
}
.mw-rcfilters-ui-menuSelectWidget-footer {
background-color: var(--ooui-interface);
border-color: var(--ooui-interface-border);
}
.mw-rcfilters-ui-viewSwitchWidget label.oo-ui-labelWidget {
color: var(--byline-color);
}
.mw-rcfilters-ui-tagItemWidget-popup-content {
color: var(--ooui-text);
}
.mw-changeslist-legend,
.mw-rcfilters-ui-changesListWrapperWidget .mw-changeslist-legend {
background-color: var(--body-light);
border-color: var(--body-dark);
}
.mw-rcfilters-ui-changesListWrapperWidget-previousChangesIndicator {
border-color: var(--sidebar);
}
.client-js .mw-changeslist ul,
.client-js .mw-changeslist table.mw-enhanced-rc {
margin-left: 0;
}
.mw-rcfilters-ui-watchlistTopSectionWidget-separator {
border-color: var(--sidebar);
}
.mw-rcfilters-ui-itemMenuOptionWidget-header {
border-bottom-color: var(--ooui-interface);
background-color: var(--ooui-interface-border);
}
.mw-rcfilters-ui-itemMenuOptionWidget:not(:last-child):not(.mw-rcfilters-ui-itemMenuOptionWidget-identifier-talk) {
border-bottom-color: var(--ooui-normal-border);
}
.mw-rcfilters-ui-itemMenuOptionWidget-label-title,
.mw-rcfilters-ui-itemMenuOptionWidget-label-desc {
color: var(--text-color);
}
.mw-rcfilters-ui-filterMenuOptionWidget.oo-ui-flaggedElement-muted:not(.oo-ui-optionWidget-selected) {
background-color: var(--body-main);
}
.mw-rcfilters-ui-filterMenuOptionWidget.oo-ui-flaggedElement-muted .mw-rcfilters-ui-itemMenuOptionWidget-label-title,
.mw-rcfilters-ui-filterMenuOptionWidget.oo-ui-flaggedElement-muted .mw-rcfilters-ui-itemMenuOptionWidget-label-desc {
color: var(--subtle-color);
}
.mw-rcfilters-ui-filterMenuSectionOptionWidget {
background-color: var(--body-mid);
}
.mw-rcfilters-ui-filterMenuSectionOptionWidget-header-title.oo-ui-labelElement-label {
color: var(--ooui-text);
}
.mw-rcfilters-ui-filterMenuHeaderWidget-title {
color: var(--ooui-text);
}
.mw-rcfilters-ui-filterMenuHeaderWidget-header {
border-bottom-color: var(--ooui-interface-border);
background-color: var(--ooui-interface);
}
.mw-rcfilters-ui-itemMenuOptionWidget-view-namespaces {
border-top-color: var(--ooui-interface-border);
}
.mw-rcfilters-ui-datePopupWidget {
border-color: var(--ooui-interface-border);
}
.mw-rcfilters-ui-datePopupWidget .mw-rcfilters-ui-valuePickerWidget-title {
color: var(--byline-color);
}
.mw-rcfilters-ui-savedLinksListItemWidget-label {
color: var(--ooui-accent);
}
.client-js .mw-changeslist.mw-rcfilters-ui-changesListWrapperWidget-highlighted ul,
.client-js .mw-changeslist.mw-rcfilters-ui-changesListWrapperWidget-highlighted table.mw-enhanced-rc {
margin-left: 1.5em;
}
.page-Special_CreateAccount .mw-ui-container,
.page-Special_UserLogin .mw-ui-container {
max-width: 64rem;
margin: 0 auto;
}
.mw-number-text {
color: var(--byline-color);
}
.mw-body-content .mw-number-text h3 {
color: var(--text-color);
}
#mw-indicator-mw-helplink a {
background: none;
padding: 0;
display: flex;
align-items: center;
}
#mw-indicator-mw-helplink a::before {
content: '';
margin-right: 5px;
-webkit-mask: url("/resources/src/mediawiki.helplink/images/helpNotice.svg?46d34") no-repeat 50% 50% / contain;
mask: url("/resources/src/mediawiki.helplink/images/helpNotice.svg?46d34") no-repeat 50% 50% / contain;
background: var(--text-color);
height: 20px;
width: 20px;
}
.results-info {
color: inherit;
}
.mw-search-profile-tabs {
background-color: var(--body-mid);
border-color: transparent;
}
.search-types .current a {
color: inherit;
}
#mw-searchoptions {
background-color: var(--body-mid);
border-color: transparent;
}
#mw-searchoptions .divider {
border-color: var(--body-border);
}
#mw-searchoptions h4 {
font-family: inherit;
}
#mw-searchoptions .oo-ui-labelElement:nth-of-type(odd) {
font-weight: bold;
}
.searchresult {
line-height: 1.5;
}
.searchalttitle,
#mw-search-interwiki li {
font-size: 90%;
}
.mw-search-result-data {
color: var(--byline-color);
}
.page-Special_ListFiles a.image img {
width: inherit;
height: inherit;
}
.page-Special_ListFiles .TablePager_col_thumb {
text-align: center;
}
#editcount table[border="1"] {
background-color: var(--body-main) !important;
border-color: var(--wikitable-border) !important;
margin-top: 0.5em;
}
#editcount table[border="1"] th,
#editcount table[border="1"] td {
padding: 0.2em 0.4em;
}
#editcount table[border="1"] th {
background-color: var(--wikitable-header-bg);
border: 1px solid var(--wikitable-border);
}
#editcount table[border="1"] td {
border: 1px solid var(--wikitable-border);
}
#editcount table[border="1"] tr:nth-child(odd) {
background-color: var(--body-light);
}
.mw-echo-ui-notificationBadgeButtonPopupWidget-popup > .oo-ui-popupWidget-popup .mw-echo-ui-placeholderItemWidget {
background-color: inherit;
}
table.mw-interwikitable.body td.mw-interwikitable-local-yes {
background-color: var(--table-yes-background);
color: var(--table-yes-color);
}
.mw-protectedpages-unknown {
color: var(--byline-color);
}
.watchlistredir,
.allpagesredirect {
font-style: italic;
}
.allpagesredirect:after {
color: var(--byline-color);
content: " (redirect)";
}
.mw-apisandbox-toolbar {
background: var(--body-main);
}
.oo-ui-menuOptionWidget .mw-apisandbox-flag {
color: var(--byline-color);
}
tr.mw-abusefilter-list-disabled,
tr.mw-abusefilter-list-disabled td {
color: var(--byline-color);
}
table.mw-abuselog-details {
background: var(--wikitable-bg);
border-color: var(--wikitable-border);
}
table.mw-abuselog-details th {
background: var(--wikitable-header-bg);
}
table.mw-abuselog-details th,
table.mw-abuselog-details td {
border-color: var(--wikitable-border);
}
.mw-abusefilter-log-hidden-entry {
color: var(--subtle-color);
}
body td.mw-abusefilter-history-changed {
background: var(--table-no-background);
}
div.mw-abusefilter-editor,
#mw-abusefilter-warn-preview,
#mw-abusefilter-disallow-preview {
border-color: var(--ooui-input-border);
}
.mw-destfile-warning {
border-color: var(--warningbox-border);
color: var(--text-color);
background-color: var(--warningbox-bg);
}
span.fileinput-button {
background-color: var(--ooui-normal);
border-color: var(--ooui-normal-border);
color: var(--ooui-text);
}
ul.fileupload-results li.ful-success {
background-color: var(--successbox-bg);
}
ul.fileupload-results li.ful-success a {
color: var(--link-color);
}
ul.fileupload-results li.ful-error {
background-color: var(--errorbox-bg);
}
.color-container {
display: flex;
margin: 2em auto;
width: 80%;
max-width: 60em;
}
.color-column {
flex: 1;
margin-right: 1em;
}
.color-column:last-child {
margin-right: 0;
}
.color-column h3 {
padding: 0;
}
.color-group {
color: #333;
padding: 1em 1.5em;
transition: 0.2s ease-out;
}
.color-group:hover {
transform: scale(1.03);
}
.color-group.dark {
color: #fff;
}
.color-group .variable,
.color-group .hexcode {
font-family: monospace;
font-size: 1.1em;
-webkit-user-select: all;
-moz-user-select: all;
-ms-user-select: all;
user-select: all;
margin: 0;
}
body.wgl-readermode .color-group .variable,
body.wgl-readermode .color-group .hexcode {
font-size: inherit;
}
.color-group .variable {
font-weight: bold;
}
#t-print,
#t-permalink {
display: none;
}
#filetoc {
border-radius: 2px;
background: var(--body-mid);
border-color: transparent;
margin: 0.5em auto;
text-align: center;
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
}
li.gallerybox div.thumb {
border: none;
background-color: var(--thumb-bg);
}
.smwfact {
display: none;
}
.list-header {
background-color: var(--body-mid);
color: inherit;
}
.editOptions {
color: var(--text-color);
background-color: var(--sourceeditor-background-secondary);
border-color: var(--sourceeditor-border);
}
.mw-json th,
.mw-json td {
border-color: var(--wikitable-border);
}
.mw-json td {
background: var(--wikitable-bg);
}
.mw-json th {
background: var(--wikitable-header-bg);
}
af69bc038bf14a6d47e28a24e6ec3c20f6c3a514
User:Merds/Sandbox
2
652
1709
1665
2024-04-03T08:37:28Z
Merds
25
wikitext
text/x-wiki
This page contains information about the '''look of the Brighter Shores Wiki'''.
==Colours==
<div class="color-container">
<div class="color-column">
<h3>Body</h3>
<div class="color-group" style="background: #d1b9ad;">
<p class="variable">--body-border</p>
<p class="hexcode">#d1b9ad</p>
</div>
<div class="color-group dark" style="background: #b1886f;">
<p class="variable">--body-dark</p>
<p class="hexcode">#b1886f</p>
</div>
<div class="color-group" style="background: #d1b9ad;">
<p class="variable">--body-mid</p>
<p class="hexcode">#d1b9ad</p>
</div>
<div class="color-group" style="background: #f5f0eb;">
<p class="variable">--body-light</p>
<p class="hexcode">#f5f0eb</p>
</div>
<div class="color-group" style="background: #fdfcfc;">
<p class="variable">--body-main</p>
<p class="hexcode">#fdfcfc</p>
</div>
<div class="color-group dark" style="background: #173a4d;">
<p class="variable">--body-background-color</p>
<p class="hexcode">#173a4d</p>
</div>
</div>
<div class="color-column">
<h3>Buttons and links</h3>
<div class="color-group dark" style="background: #3c352a;">
<p class="variable">--button-border</p>
<p class="hexcode">#3c352a;</p>
</div>
<div class="color-group dark" style="background: #18140c;">
<p class="variable">--button-dark</p>
<p class="hexcode">#18140c</p>
</div>
<div class="color-group dark" style="background: #3a301d;">
<p class="variable">--button-light</p>
<p class="hexcode">#3a301d</p>
</div>
<div class="color-group dark" style="background: #605443;">
<p class="variable">--osrsw-brown</p>
<p class="hexcode">#605443</p>
</div>
<div class="color-group dark" style="background: #6e452b;">
<p class="variable">--link-color</p>
<p class="hexcode">#6e452b</p>
</div>
<div class="color-group dark" style="background: #52351e;">
<p class="variable">--background-link-color</p>
<p class="hexcode">#52351e</p>
</div>
</div>
4d8927a1bde3fa90602036772fb1db75605bbcda
Eel Street Bridge
0
809
1710
2024-04-05T16:31:04Z
Omnes Ferant
23
Created page with "{{Infobox Location |name = Eel Street Bridge |image = Eel Street Bridge.jpg |release = |premium = |episode = }} The '''Eel Street Bridge''' is a location in [[Hopeport]]. The bridge connects [[Eel Street]] and the Hopeport [[Town Square]]."
wikitext
text/x-wiki
{{Infobox Location
|name = Eel Street Bridge
|image = Eel Street Bridge.jpg
|release =
|premium =
|episode =
}}
The '''Eel Street Bridge''' is a location in [[Hopeport]]. The bridge connects [[Eel Street]] and the Hopeport [[Town Square]].
6dabf12ee493aff35b65f56f4975299ed0ddbd67
1739
1710
2024-04-05T18:30:36Z
Omnes Ferant
23
non-disambig link
wikitext
text/x-wiki
{{Infobox Location
|name = Eel Street Bridge
|image = Eel Street Bridge.jpg
|release =
|premium =
|episode =
}}
The '''Eel Street Bridge''' is a location in [[Hopeport (location)|Hopeport]]. The bridge connects [[Eel Street]] and the Hopeport [[Town Square]].
12f8d3c31256e3d30f01ecf78246ce4022c19afd
Eel Street
0
810
1711
2024-04-05T16:33:51Z
Omnes Ferant
23
Created page with "{{Infobox Location |name = Eel Street |image = Eel Street.jpg |release = |premium = |episode = }} '''Eel Street''' is a location in [[Hopeport]]. A [[fishmonger]] is located on Eel Street."
wikitext
text/x-wiki
{{Infobox Location
|name = Eel Street
|image = Eel Street.jpg
|release =
|premium =
|episode =
}}
'''Eel Street''' is a location in [[Hopeport]]. A [[fishmonger]] is located on Eel Street.
575469b5c2d090ca00d0dc4598407428a9107df3
1738
1711
2024-04-05T18:30:34Z
Omnes Ferant
23
non-disambig link
wikitext
text/x-wiki
{{Infobox Location
|name = Eel Street
|image = Eel Street.jpg
|release =
|premium =
|episode =
}}
'''Eel Street''' is a location in [[Hopeport (location)|Hopeport]]. A [[fishmonger]] is located on Eel Street.
aff7c337523dabdeed36a7346348541c202f7b62
Central Waterfront
0
811
1712
2024-04-05T16:35:19Z
Omnes Ferant
23
Created page with "{{Infobox Location |name = Central Waterfront |image = Central Waterfront.jpg |release = |premium = |episode = }} The '''Central Waterfront''' is a location in [[Hopeport]]."
wikitext
text/x-wiki
{{Infobox Location
|name = Central Waterfront
|image = Central Waterfront.jpg
|release =
|premium =
|episode =
}}
The '''Central Waterfront''' is a location in [[Hopeport]].
1ddcfc10aa96138da77b7fda7be2fb97da7a1f24
1737
1712
2024-04-05T18:30:31Z
Omnes Ferant
23
non-disambig link
wikitext
text/x-wiki
{{Infobox Location
|name = Central Waterfront
|image = Central Waterfront.jpg
|release =
|premium =
|episode =
}}
The '''Central Waterfront''' is a location in [[Hopeport (location)|Hopeport]].
2667c6b521a8e09bdfce861bb363fbbe9dfb2073
West Waterfront
0
812
1713
2024-04-05T16:35:51Z
Omnes Ferant
23
Created page with "{{Infobox Location |name = West Waterfront |image = West Waterfront.jpg |release = |premium = |episode = }} The '''West Waterfront''' is a location in [[Hopeport]]."
wikitext
text/x-wiki
{{Infobox Location
|name = West Waterfront
|image = West Waterfront.jpg
|release =
|premium =
|episode =
}}
The '''West Waterfront''' is a location in [[Hopeport]].
e815015b4602aa8348b60c9173912a236f493e53
1736
1713
2024-04-05T18:30:29Z
Omnes Ferant
23
non-disambig link
wikitext
text/x-wiki
{{Infobox Location
|name = West Waterfront
|image = West Waterfront.jpg
|release =
|premium =
|episode =
}}
The '''West Waterfront''' is a location in [[Hopeport (location)|Hopeport]].
b584bf76f68c1be622ebced499c5b8ac4aee6f0d
Sea Road
0
813
1714
2024-04-05T16:36:59Z
Omnes Ferant
23
Created page with "{{Infobox Location |name = Sea Road |image = Sea Road.jpg |release = |premium = |episode = }} The '''Sea Road''' is a location in [[Hopeport]]."
wikitext
text/x-wiki
{{Infobox Location
|name = Sea Road
|image = Sea Road.jpg
|release =
|premium =
|episode =
}}
The '''Sea Road''' is a location in [[Hopeport]].
1f666da94087fbe83d5cd9903547fb89db639eb3
1735
1714
2024-04-05T18:30:27Z
Omnes Ferant
23
non-disambig link
wikitext
text/x-wiki
{{Infobox Location
|name = Sea Road
|image = Sea Road.jpg
|release =
|premium =
|episode =
}}
The '''Sea Road''' is a location in [[Hopeport (location)|Hopeport]].
a782ede7c503a7acbafe8e977aff79972778ba3d
East Beach
0
814
1715
2024-04-05T16:37:43Z
Omnes Ferant
23
Created page with "{{Infobox Location |name = East Beach |image = East Beach.jpg |release = |premium = |episode = }} The '''East Beach''' is a location in [[Hopeport]]."
wikitext
text/x-wiki
{{Infobox Location
|name = East Beach
|image = East Beach.jpg
|release =
|premium =
|episode =
}}
The '''East Beach''' is a location in [[Hopeport]].
3dcf528ccac1d77fcd06b53a80737271f03cd086
1734
1715
2024-04-05T18:30:25Z
Omnes Ferant
23
non-disambig link
wikitext
text/x-wiki
{{Infobox Location
|name = East Beach
|image = East Beach.jpg
|release =
|premium =
|episode =
}}
The '''East Beach''' is a location in [[Hopeport (location)|Hopeport]].
1ea0bad82491826f10f7b54a76d914cbcae1ba53
Seashells Seashore
0
815
1716
2024-04-05T16:39:39Z
Omnes Ferant
23
Created page with "{{Infobox Location |name = Seashells Seashore |image = Seashells Seashore.jpg |release = |premium = |episode = }} '''Seashells Seashore''' is a location in [[Hopeport]]. [[Shell]]s and a [[Rock Pool]] can be found on the beach."
wikitext
text/x-wiki
{{Infobox Location
|name = Seashells Seashore
|image = Seashells Seashore.jpg
|release =
|premium =
|episode =
}}
'''Seashells Seashore''' is a location in [[Hopeport]]. [[Shell]]s and a [[Rock Pool]] can be found on the beach.
115a4baecdcba573492f26d41f1142b49e592c50
1733
1716
2024-04-05T18:30:23Z
Omnes Ferant
23
non-disambig link
wikitext
text/x-wiki
{{Infobox Location
|name = Seashells Seashore
|image = Seashells Seashore.jpg
|release =
|premium =
|episode =
}}
'''Seashells Seashore''' is a location in [[Hopeport (location)|Hopeport]]. [[Shell]]s and a [[Rock Pool]] can be found on the beach.
36b13aa6731f3669c5814e5f72df0ea352494c8f
Jellyfish Landing
0
816
1717
2024-04-05T16:41:11Z
Omnes Ferant
23
Created page with "{{Infobox Location |name = Jellyfish Landing |image = Jellyfish Landing.jpg |release = |premium = |episode = }} '''Jellyfish Landing''' is a location in [[Hopeport]]. [[Jellyfish]] can be found in the waters of the beach."
wikitext
text/x-wiki
{{Infobox Location
|name = Jellyfish Landing
|image = Jellyfish Landing.jpg
|release =
|premium =
|episode =
}}
'''Jellyfish Landing''' is a location in [[Hopeport]]. [[Jellyfish]] can be found in the waters of the beach.
f1d8406c7c6d61e1a5aa95e6745273e759587b11
1732
1717
2024-04-05T18:30:18Z
Omnes Ferant
23
non-disambig link
wikitext
text/x-wiki
{{Infobox Location
|name = Jellyfish Landing
|image = Jellyfish Landing.jpg
|release =
|premium =
|episode =
}}
'''Jellyfish Landing''' is a location in [[Hopeport (location)|Hopeport]]. [[Jellyfish]] can be found in the waters of the beach.
82f939d56f212742bfcda3e5675a0cdad018c3ab
Fallen Monument
0
817
1718
2024-04-05T16:42:36Z
Omnes Ferant
23
Created page with "{{Infobox Location |name = Fallen Monument |image = Fallen Monument.jpg |release = |premium = |episode = }} The '''Fallen Monument''' is a location in [[Hopeport]]. [[Carnivorous Plant]]s can be found throughout the area."
wikitext
text/x-wiki
{{Infobox Location
|name = Fallen Monument
|image = Fallen Monument.jpg
|release =
|premium =
|episode =
}}
The '''Fallen Monument''' is a location in [[Hopeport]]. [[Carnivorous Plant]]s can be found throughout the area.
b3e58475bec41236d5d9b3acf6d4b718f85e6e3c
1731
1718
2024-04-05T18:30:16Z
Omnes Ferant
23
non-disambig link
wikitext
text/x-wiki
{{Infobox Location
|name = Fallen Monument
|image = Fallen Monument.jpg
|release =
|premium =
|episode =
}}
The '''Fallen Monument''' is a location in [[Hopeport (location)|Hopeport]]. [[Carnivorous Plant]]s can be found throughout the area.
586bf03f2cfaa5ec3b3cfc833b79f95f54cf6474
Template:Infobox Episode
10
818
1719
2024-04-05T16:44:06Z
BlackHawk
10
Created page with "{| class="wikitable infobox-episode" style="float:right" ! colspan="2" | {{#if:{{{name|}}}|{{{name}}}|{{PAGENAME}}}} |- |colspan="2" style="text-align:center" | {{#if:{{{image|}}}|{{clean image|file={{{image}}}}}|[[Special:Upload|Please upload an image!]]{{Mainonly|[[Category:Needs image]]}}}} |- | <b>Release date</b> || {{#if:{{{release|}}}|{{{release}}}|Q3 [[2024]]}} |- | <b>Premium</b> || {{#switch:{{lc:{{{premium|}}}}}|yes=Yes{{Mainonly|[[Category:Premium episodes]]}..."
wikitext
text/x-wiki
{| class="wikitable infobox-episode" style="float:right"
! colspan="2" | {{#if:{{{name|}}}|{{{name}}}|{{PAGENAME}}}}
|-
|colspan="2" style="text-align:center" | {{#if:{{{image|}}}|{{clean image|file={{{image}}}}}|[[Special:Upload|Please upload an image!]]{{Mainonly|[[Category:Needs image]]}}}}
|-
| <b>Release date</b> || {{#if:{{{release|}}}|{{{release}}}|Q3 [[2024]]}}
|-
| <b>Premium</b> || {{#switch:{{lc:{{{premium|}}}}}|yes=Yes{{Mainonly|[[Category:Premium episodes]]}}|no=No|#default={{Edit button|text=<b>?</b> (edit)}}{{Mainonly|[[Category:Needs premium status]]}}}}
|}{{Mainonly|[[Category:Episodes]]}}<noinclude>{{clear}}{{/doc}}</noinclude>
fa878754763e53adf46b362361a2ae542143052b
Template:Infobox Episode/doc
10
819
1720
2024-04-05T16:44:56Z
BlackHawk
10
Created page with "{{Documentation}} ==Parameters== ===name=== The name of the episode. ===image=== The image of the episode. ===release=== The release date of the episode. ===premium=== Whether or not this episode requires a [[premium pass]]. ==Quick copy== <pre>{{Infobox Episode |name = |image = |release = |premium = }}</pre> <includeonly>[[Category:Infobox templates]]</includeonly>"
wikitext
text/x-wiki
{{Documentation}}
==Parameters==
===name===
The name of the episode.
===image===
The image of the episode.
===release===
The release date of the episode.
===premium===
Whether or not this episode requires a [[premium pass]].
==Quick copy==
<pre>{{Infobox Episode
|name =
|image =
|release =
|premium =
}}</pre>
<includeonly>[[Category:Infobox templates]]</includeonly>
4b7491a2fab1663251b5e1abe1d612bb57712200
Crater
0
820
1721
2024-04-05T16:45:18Z
Omnes Ferant
23
Created page with "{{Infobox Location |name = Crater |image = Crater.jpg |release = |premium = |episode = }} The '''Crater''' is a location in [[Hopeport]]. [[Giant Ant]]s and [[Hogberries]] can be found in the Crater. Four [[Monument Piece]]s are placed throughout the area."
wikitext
text/x-wiki
{{Infobox Location
|name = Crater
|image = Crater.jpg
|release =
|premium =
|episode =
}}
The '''Crater''' is a location in [[Hopeport]]. [[Giant Ant]]s and [[Hogberries]] can be found in the Crater.
Four [[Monument Piece]]s are placed throughout the area.
fffd7ffef84581bb3e51b784d34997b263100130
1730
1721
2024-04-05T18:30:14Z
Omnes Ferant
23
non-disambig link
wikitext
text/x-wiki
{{Infobox Location
|name = Crater
|image = Crater.jpg
|release =
|premium =
|episode =
}}
The '''Crater''' is a location in [[Hopeport (location)|Hopeport]]. [[Giant Ant]]s and [[Hogberries]] can be found in the Crater.
Four [[Monument Piece]]s are placed throughout the area.
a7654b0a8a99d56c230f94a1c6f1557b3b97c2d1
Crenopolis (episode)
0
793
1722
1601
2024-04-05T16:45:31Z
BlackHawk
10
wikitext
text/x-wiki
{{Infobox Episode
|name = Crenopolis
|image =
|release =
|premium = Yes
}}
'''Crenopolis''' is an [[episode]] that can be accessed by [[player]]s who purchase the [[Premium Pass]].
{{Premium Pass}}
96aa265a9530582417633e61f5a527e73d42d85a
Category:Episodes
14
821
1723
2024-04-05T16:45:50Z
BlackHawk
10
Created page with "{{Categoryheader|pages|episodes}} [[Category:Content]]"
wikitext
text/x-wiki
{{Categoryheader|pages|episodes}}
[[Category:Content]]
c950c6d8ce68145bd5efda0a4d878726ae35b440
Wasteland
0
822
1724
2024-04-05T16:46:25Z
Omnes Ferant
23
Created page with "{{Infobox Location |name = Wasteland |image = Wasteland.jpg |release = |premium = |episode = }} The '''Wasteland''' is a location in [[Hopeport]]."
wikitext
text/x-wiki
{{Infobox Location
|name = Wasteland
|image = Wasteland.jpg
|release =
|premium =
|episode =
}}
The '''Wasteland''' is a location in [[Hopeport]].
66f2c38b61d1691cff740199dbd2c31ab18c8a95
1729
1724
2024-04-05T18:30:12Z
Omnes Ferant
23
non-disambig link
wikitext
text/x-wiki
{{Infobox Location
|name = Wasteland
|image = Wasteland.jpg
|release =
|premium =
|episode =
}}
The '''Wasteland''' is a location in [[Hopeport (location)|Hopeport]].
ddd15b38e30f747fa4d1c65e0f33cb4608f723b2
Category:Premium episodes
14
823
1725
2024-04-05T16:46:29Z
BlackHawk
10
Created page with "{{categoryheader|pages and images|premium episodes}} {{Category ABC}} [[Category:Episodes]] [[Category:Premium Pass]]"
wikitext
text/x-wiki
{{categoryheader|pages and images|premium episodes}}
{{Category ABC}}
[[Category:Episodes]]
[[Category:Premium Pass]]
b61f6416f2dcd3efb9d95dc296b2a626e22f64c9
Mine of Mantuban (episode)
0
790
1726
1597
2024-04-05T16:46:57Z
BlackHawk
10
wikitext
text/x-wiki
{{Infobox Episode
|name = Mine of Mantuban
|image =
|release =
|premium = Yes
}}
'''Mine of Mantuban''' is an [[episodes|episode]] that can be accessed by [[player]]s who purchase the [[Premium Pass]].
{{Premium Pass}}
c35e90e44bdd7114ee3c7320a4ed25b56cb69eb3
Hopeforest (episode)
0
795
1727
1606
2024-04-05T16:47:17Z
BlackHawk
10
wikitext
text/x-wiki
{{Infobox Episode
|name = Hopeforest
|image =
|release =
|premium = No
}}
'''Hopeforest''' is an episode.
07e6f51eaabc3b136ec7e995eff2bf409d225a71
Hopeport (episode)
0
797
1728
1609
2024-04-05T16:47:39Z
BlackHawk
10
wikitext
text/x-wiki
{{Infobox Episode
|name = Hopeport
|image =
|release =
|premium = No
}}
'''Hopeport''' is the first episode.
c0156fbc12a2c314675e9fa7b6ee27ce8d51ee16
Civilian
0
824
1740
2024-04-05T18:33:21Z
Omnes Ferant
23
Created page with "{{Infobox NPC |name = Civilian |image = |release = |episode = |profession = }} '''Civilians''' are NPCs found in [[Hopeport (location)|Hopeport]]."
wikitext
text/x-wiki
{{Infobox NPC
|name = Civilian
|image =
|release =
|episode =
|profession =
}}
'''Civilians''' are NPCs found in [[Hopeport (location)|Hopeport]].
7c352d2141624c2d8d55c62e53d01e6829441fea
Module:Param Parse
828
673
1741
1632
2024-04-06T01:49:07Z
Gau Cho
5
Scribunto
text/plain
--[=[
-- Standardized functions to parse Infobox params
--]=]
-- <nowiki>
local parse = {}
-- Standardized "has content" function
function parse.has_content(arg)
-- Return arg if any non-whitespace character is found
return string.match(arg or '', '%S') and arg or nil
end
-- Standardized image function
parse.image = {
name = 'image',
func = parse.image,
smw_property = 'Image',
smw_func = parse.image_smw,
empty = '[[Special:Upload|Please upload an image!]]',
category_incomplete = 'Needs image'
}
function parse.image_func(img)
if img and img:find('%S') then
return img
end
return nil
end
function parse.image_smw(img)
return img and string.match(img, "File:.-%.png") or nil
end
-- Standardized numbers
function parse.number(num)
num = string.gsub(num or '',',','')
return tonumber(num)
end
-- Episode
local valid_episodes = {['Hopeport'] = 1, ['Hopeforest'] = 1, ['Mine of Mantuban'] = 1, ['Crenopolis'] = 1}
function parse.episode(episode)
if valid_episodes[episode] then
return '[[File:'..episode..' episode icon.png|18px]] [['..episode..']]'
end
return nil
end
function parse.episode_smw(episode)
if valid_episodes[episode] then
return episode
end
return nil
end
-- Yes/No
local yes_no = {
['Yes'] = true,
['No'] = false,
['N/A'] = 'NIL',
}
function parse.yes_no(text)
if yes_no[text] then
return text
end
return nil
end
function parse.yes_no_smw(text)
if text == 'N/A' then
return nil
end
return yes_no[text] or nil
end
return parse
-- </nowiki>
6f4eff74cb127eeef69ad950db13129df44d6831
1745
1741
2024-04-06T01:53:48Z
Gau Cho
5
Scribunto
text/plain
--[=[
-- Standardized functions to parse Infobox params
--]=]
-- <nowiki>
local parse = {}
-- Standardized "has content" function
function parse.has_content(arg)
-- Return arg if any non-whitespace character is found
return string.match(arg or '', '%S') and arg or nil
end
-- Standardized image function
function parse.image_func(img)
if img and img:find('%S') then
return img
end
return nil
end
function parse.image_smw(img)
return img and string.match(img, "File:.-%.png") or nil
end
parse.image = {
name = 'image',
func = parse.image_func,
smw_property = 'Image',
smw_func = parse.image_smw,
empty = '[[Special:Upload|Please upload an image!]]',
category_incomplete = 'Needs image'
}
-- Standardized numbers
function parse.number(num)
num = string.gsub(num or '',',','')
return tonumber(num)
end
-- Episode
local valid_episodes = {['Hopeport'] = 1, ['Hopeforest'] = 1, ['Mine of Mantuban'] = 1, ['Crenopolis'] = 1}
function parse.episode(episode)
if valid_episodes[episode] then
return '[[File:'..episode..' episode icon.png|18px]] [['..episode..']]'
end
return nil
end
function parse.episode_smw(episode)
if valid_episodes[episode] then
return episode
end
return nil
end
-- Yes/No
local yes_no = {
['Yes'] = true,
['No'] = false,
['N/A'] = 'NIL',
}
function parse.yes_no(text)
if yes_no[text] then
return text
end
return nil
end
function parse.yes_no_smw(text)
if text == 'N/A' then
return nil
end
return yes_no[text] or nil
end
return parse
-- </nowiki>
c7a4e1beec4a85b30ffe1ab9b40981cd320ea9ed
1746
1745
2024-04-06T01:59:34Z
Gau Cho
5
Scribunto
text/plain
--[=[
-- Standardized functions to parse Infobox params
--]=]
-- <nowiki>
local parse = {}
-- Generic functions --
-----------------------
-- Standardized "has content" function
function parse.has_content(arg)
-- Return arg if any non-whitespace character is found
return string.match(arg or '', '%S') and arg or nil
end
-- Standardized numbers
function parse.number(num)
num = string.gsub(num or '',',','')
return tonumber(num)
end
-- Yes/No
local yes_no = {
['Yes'] = true,
['No'] = false,
['N/A'] = 'NIL',
}
function parse.yes_no(text)
if yes_no[text] then
return text
end
return nil
end
function parse.yes_no_smw(text)
if text == 'N/A' then
return nil
end
return yes_no[text] or nil
end
-- Premade Params --
--------------------
-- Standardized name function
parse.name = {
name = 'name',
func = parse.has_content,
smw_property = 'Name',
}
-- Standardized image function
function parse.image_func(img)
if img and img:find('%S') then
return img
end
return nil
end
function parse.image_smw(img)
return img and string.match(img, "File:.-%.png") or nil
end
parse.image = {
name = 'image',
func = parse.image_func,
smw_property = 'Image',
smw_func = parse.image_smw,
empty = '[[Special:Upload|Please upload an image!]]',
category_incomplete = 'Needs image',
}
-- Episode
local valid_episodes = {['Hopeport'] = 1, ['Hopeforest'] = 1, ['Mine of Mantuban'] = 1, ['Crenopolis'] = 1}
function parse.episode_func(episode)
if valid_episodes[episode] then
return '[[File:'..episode..' episode icon.png|18px]] [['..episode..']]'
end
return nil
end
function parse.episode_smw(episode)
if valid_episodes[episode] then
return episode
end
return nil
end
parse.episode = {
name = 'episode',
func = parse.episode_func,
smw_property = 'Episode',
smw_func = parse.episode_smw,
category_incomplete = 'Needs episode',
}
-- Premium
parse.premium = {
name = 'premium',
func = parse.yes_no,
smw_property = 'Premium',
smw_func = parse.yes_no,
category_incomplete = 'Needs premium status',
}
return parse
-- </nowiki>
13027439b50f20a6283741bf0338ec91c35e4b8a
1751
1746
2024-04-06T02:11:43Z
Gau Cho
5
Scribunto
text/plain
--[=[
-- Standardized functions to parse Infobox params
--]=]
-- <nowiki>
local parse = {}
-- Generic functions --
-----------------------
-- Standardized "has content" function
function parse.has_content(arg)
-- Return arg if any non-whitespace character is found
return string.match(arg or '', '%S') and arg or nil
end
-- Standardized numbers
function parse.number(num)
num = string.gsub(num or '',',','')
return tonumber(num)
end
-- Yes/No
local yes_no = {
['Yes'] = true,
['No'] = false,
['N/A'] = 'NIL',
}
function parse.yes_no(text)
if yes_no[text] then
return text
end
return nil
end
function parse.yes_no_smw(text)
if text == 'N/A' then
return nil
end
return yes_no[text] or nil
end
-- Premade Params --
--------------------
-- Standardized name function
parse.name = {
name = 'name',
func = parse.has_content,
smw_property = 'Name',
}
-- Standardized image function
function parse.image_func(img)
if img and img:find('%S') then
return img
end
return nil
end
function parse.image_smw(img)
return img and string.match(img, "File:.-%.png") or nil
end
parse.image = {
name = 'image',
func = parse.image_func,
smw_property = 'Image',
smw_func = parse.image_smw,
empty = '[[Special:Upload|Please upload an image!]]',
category_incomplete = 'Needs image',
}
-- Episode
local valid_episodes = {['Hopeport'] = 1, ['Hopeforest'] = 1, ['Mine of Mantuban'] = 1, ['Crenopolis'] = 1}
function parse.episode_func(episode)
if valid_episodes[episode] then
return '[[File:'..episode..' episode icon.png|18px]] [['..episode..']]'
end
return nil
end
function parse.episode_smw(episode)
if valid_episodes[episode] then
return episode
end
return nil
end
parse.episode = {
name = 'episode',
func = parse.episode_func,
smw_property = 'Episode',
smw_func = parse.episode_smw,
category_incomplete = 'Needs episode',
}
-- Premium
parse.premium = {
name = 'premium',
func = parse.yes_no,
smw_property = 'Premium',
smw_func = parse.yes_no,
category_incomplete = 'Needs premium status',
}
-- Release (TODO)
parse.release = {
name = 'release',
func = parse.has_content,
}
return parse
-- </nowiki>
4067dc723430ae48bdc6142bb202f33eb0f6545c
Module:Infobox Profession
828
800
1742
1629
2024-04-06T01:49:22Z
Gau Cho
5
Scribunto
text/plain
local p = {}
local Infobox = require('Module:Infobox')
local parse = require('Module:Param Parse')
function p.main(frame)
local args = frame:getParent().args
local config = {
infobox_name = 'Profession',
}
local params = {
parse.image,
{name = 'image', func = parse.image, smw_property = 'Image', smw_func = parse.image_smw, empty = '[[Special:Upload|Please upload an image!]]', category_incomplete = 'Needs image'},
{name = 'release', func = parse.has_content},
{name = 'premium', func = parse.yes_no, smw_property = 'Premium', smw_func = parse.yes_no, category_incomplete = 'Needs premium status'},
}
local infobox = Infobox.new(config, params, args)
infobox
:add_row{
{tag='th', content=Infobox.param('name'), class='infobox-header', colspan='20'},
}
:add_row{
{tag='td', content=Infobox.param('image'), class='infobox-image', colspan='20'},
}
:add_row{
{tag='th', content='Release', colspan="6"},
{tag='td', content=Infobox.param('release'), colspan="14"},
}
:add_row{
{tag='th', content='[[Premium Pass|Premium]]', colspan="6"},
{tag='td', content=Infobox.param('premium'), colspan="14"},
}
:pad(20)
return infobox
end
return p
c7f2141be7bc85802e9558dc9458478a4e8f911d
1743
1742
2024-04-06T01:50:55Z
Gau Cho
5
Scribunto
text/plain
local p = {}
local Infobox = require('Module:Infobox')
local parse = require('Module:Param Parse')
function p.main(frame)
local args = frame:getParent().args
local config = {
infobox_name = 'Profession',
}
local params = {
{name = 'name', func = parse.has_content, smw_property = 'Name'},
parse.image
{name = 'release', func = parse.has_content},
{name = 'premium', func = parse.yes_no, smw_property = 'Premium', smw_func = parse.yes_no, category_incomplete = 'Needs premium status'},
}
local infobox = Infobox.new(config, params, args)
infobox
:add_row{
{tag='th', content=Infobox.param('name'), class='infobox-header', colspan='20'},
}
:add_row{
{tag='td', content=Infobox.param('image'), class='infobox-image', colspan='20'},
}
:add_row{
{tag='th', content='Release', colspan="6"},
{tag='td', content=Infobox.param('release'), colspan="14"},
}
:add_row{
{tag='th', content='[[Premium Pass|Premium]]', colspan="6"},
{tag='td', content=Infobox.param('premium'), colspan="14"},
}
:pad(20)
return infobox
end
return p
e89f67dad2d9587de63c84e8a58f7fb234abc1ed
1744
1743
2024-04-06T01:51:18Z
Gau Cho
5
Scribunto
text/plain
local p = {}
local Infobox = require('Module:Infobox')
local parse = require('Module:Param Parse')
function p.main(frame)
local args = frame:getParent().args
local config = {
infobox_name = 'Profession',
}
local params = {
{name = 'name', func = parse.has_content, smw_property = 'Name'},
parse.image,
{name = 'release', func = parse.has_content},
{name = 'premium', func = parse.yes_no, smw_property = 'Premium', smw_func = parse.yes_no, category_incomplete = 'Needs premium status'},
}
local infobox = Infobox.new(config, params, args)
infobox
:add_row{
{tag='th', content=Infobox.param('name'), class='infobox-header', colspan='20'},
}
:add_row{
{tag='td', content=Infobox.param('image'), class='infobox-image', colspan='20'},
}
:add_row{
{tag='th', content='Release', colspan="6"},
{tag='td', content=Infobox.param('release'), colspan="14"},
}
:add_row{
{tag='th', content='[[Premium Pass|Premium]]', colspan="6"},
{tag='td', content=Infobox.param('premium'), colspan="14"},
}
:pad(20)
return infobox
end
return p
f9f9b0c37615aa6ca57c7dc30ca8529739455966
1747
1744
2024-04-06T01:59:39Z
Gau Cho
5
Scribunto
text/plain
local p = {}
local Infobox = require('Module:Infobox')
local parse = require('Module:Param Parse')
function p.main(frame)
local args = frame:getParent().args
local config = {
infobox_name = 'Profession',
}
local params = {
parse.name,
parse.image,
{name = 'release', func = parse.has_content},
parse.premium,
}
local infobox = Infobox.new(config, params, args)
infobox
:add_row{
{tag='th', content=Infobox.param('name'), class='infobox-header', colspan='20'},
}
:add_row{
{tag='td', content=Infobox.param('image'), class='infobox-image', colspan='20'},
}
:add_row{
{tag='th', content='Release', colspan="6"},
{tag='td', content=Infobox.param('release'), colspan="14"},
}
:add_row{
{tag='th', content='[[Premium Pass|Premium]]', colspan="6"},
{tag='td', content=Infobox.param('premium'), colspan="14"},
}
:pad(20)
return infobox
end
return p
23ab33a3c2f42efdb77943e6b62b4d08e39c7f7d
Module:Infobox
828
102
1748
1693
2024-04-06T02:00:39Z
Gau Cho
5
Shorten subobject name
Scribunto
text/plain
--[=[
-- For documentation, see [[Module:Infobox/doc]]
--]=]
-- <nowiki>
-- Edit button for unknown params
local editbutton = require('Module:Edit button')
local Infobox = {}
Infobox.__index = Infobox
--[[
Infobox class
-- config: table containing configuration parameters
-- params : definitions for each used value
-- args : values passed from the Template
---- the following values are treated specially: default_version, version, version1, version2...
--]]
function Infobox.new(config, params, args)
local obj = setmetatable({
args_raw = args, -- parameters (uncleaned)
args_parsed = {}, -- parsed parameters
args_smw = {}, -- parameters parsed for smw
infobox_name = nil, -- template name
param_names = {}, -- ordered param list
params = {}, -- param definitions
max_buttons = 6, -- If there are more buttons than the max, the buttons will become a dropdown menu
default_version = 1, -- default version to populate the infobox
versions = nil, -- number of versions
version_names = {}, -- title of each version (for selection and SMW)
rtable = nil, -- infobox table to return at the end
switch_datatable = '', -- datatable for javascript for switch infoboxes
categories = {}, -- set of categories
errors = {}, -- list of errors
__smw_debug = {}, -- debug data for smw subobjects
},
Infobox)
-- Step 1, setup config vars and count the versions
obj:config(config)
obj:parse_versions()
-- Step 2, process the params
obj:define_params(params)
obj:parse_params()
-- Table
obj:table_header()
obj:buttons()
-- Misc
obj:store_smw()
obj:parse_categories()
return obj
end
--[[
Refers to a param after being processed by the validating func
Used in add_row(), define_params() and is_param_defined()
--]]
function Infobox.param(param_name)
param = {
property = 'args_parsed',
param_name = param_name,
}
return param
end
--[[
Refers to a param in raw form as passed from the Template
Used in add_row(), define_params() and is_param_defined()
--]]
function Infobox.raw_param(param_name)
param = {
property = 'args_raw',
param_name = param_name,
}
return param
end
--[[
Refers to a param after being processed by the validating smw_func
Used in add_row(), define_params() and is_param_defined()
--]]
function Infobox.smw_param(param_name)
param = {
property = 'args_smw',
param_name = param_name,
}
return param
end
--[[
Checks to see if a param is defined.
-- param: Infobox.param(name), Infobox.raw_param(name) or Infobox.smw_param(name)
Returns 0 if param is never defined
1 if param is defined for a fraction of the versions
2 if param is defined for all versions
]]
function Infobox:is_param_defined(param)
local undefined = 0
local defined = 0
for version = 1, self.versions do
local value = self:get_param(param, version)
if value ~= nil then
defined = 1
else
undefined = 1
end
end
return 1 + defined - undefined
end
--[[
Adds a row to the infobox table
Parameter should be a table of cells, where each cell is a table with the following arguments:
-- tag : 'td' or 'th'
-- content : a string or Infobox.param(name), Infobox.raw_param(name), Infobox.smw_param(name)
-- attr (optional) : mw.html:attr({ arg1 = '1', ... })
-- css (optional) : mw.html:css({ arg1 = '1', ...)
-- class (optional) : mw.html:addClass('arg')
---- class also supports a table of values, even though mw.html:addClass() does not
---- common classes: infobox-subheader
-- rowspan (optional) : mw.html:attr('rowspan',arg)
-- colspan (optional) : mw.html:attr('colspan',arg)
-- title (optional) : mw.html:attr('title',arg)
The row itself may be assigned a single class by setting the value of the key addClass
-- addClass : mw.html:addClass('arg')
-- this function currently only supports a single string
--]]
function Infobox:add_row(...)
local args = ...
local _row = self.rtable:tag('tr')
-- For each cell
for _, v in ipairs(args) do
local _cell = _row:tag(v.tag)
-- Optional parameters
if v.attr then
_cell:attr(v.attr)
end
if v.colspan then
_cell:attr('colspan',v.colspan)
end
if v.rowspan then
_cell:attr('rowspan',v.rowspan)
end
if v.title then
_cell:attr('title',v.title)
end
if v.css then
_cell:css(v.css)
end
if v.class then
if type(v.class) == 'string' then
_cell:addClass(v.class)
-- mw.html:addClass() doesn't function with tables, add in a loop
elseif type(v.class) == 'table' then
for _, w in ipairs(v.class) do
_cell:addClass(w)
end
end
end
-- Populate the cell contents
local content = self:get_param(v.content, self.default_version)
if content == nil then
content = self.params[v.content.param_name].empty
end
_cell:wikitext(content)
-- Add the switch data if multiple values exist
data_attr_param = self:add_switch_data(v.content)
if data_attr_param then
_cell:attr('data-attr-param', data_attr_param)
end
end
-- allow classes to be defined on the whole row
if args.addClass then
_row:addClass(args.addClass)
end
return self
end
--[[
Adds a blank row of padding spanning the given number of columns
--]]
function Infobox:pad(colspan, class)
local tr = self.rtable:tag('tr'):tag('td'):attr('colspan', colspan or 1):addClass('infobox-padding')
if class then
tr:addClass(class)
end
return self
end
--[[
Adds a class to the table as a whole
--]]
function Infobox:addClass(arg)
self.rtable:addClass(arg)
return self
end
--[[
Setup config values
-- config: table containing configuration parameters
---- infobox_name = mandatory unique identifier for this infobox, used for css
---- max_buttuons = max number of switch buttons before using a dropdown list instead
--]]
function Infobox:config(config)
for k, v in pairs(config) do
if k == 'infobox_name' then
self.infobox_name = mw.ustring.gsub(v, '%s', '_')
elseif k == 'max_buttons' then
self.max_buttons = tonumber(v)
end
end
if self.infobox_name == nil then
table.insert(self.errors, 'infobox_name needs to be defined in Infobox.new()\'s config!')
end
return self
end
--[[
Counts the number of versions in the infobox
Populates Infobox.version_names
Sets Infobox.default_version
--]]
function Infobox:parse_versions()
-- Count the versions and setup self.version_names
local i = 1
while self.args_raw['version'..i] do
table.insert(self.version_names, self.args_raw['version'..i])
i = i + 1
end
self.versions = i - 1
-- Handle the no version case - check for a custom version_name
if self.versions == 0 then
table.insert(self.version_names, self.args_raw['version'] or 'DEFAULT')
end
-- Should either have 0 or 2+ versions
if self.versions == 1 then
table.insert(self.errors, 'There should be multiple versions or no versions. If defining a custom version name for a single entry, use "version=Name" instead of "version1=Name".')
self.versions = 0
end
-- Check for a default_version
if self.args_raw['default_version'] then
self.default_version = tonumber(self.args_raw['default_version'])
if self.default_version > self.versions then -- Make sure the default version exists
self.default_version = 1
end
end
end
--[[
Define all used parameters (except for default_version/version)
-- name : parameter name as used in the Template
-- func : function to validate and process the Template argument
-- If func is a function, will call func(Infobox.raw_param(name))
-- If func is a table, contains the following key-value pairs:
---- name : function
---- params : list of arguments to pass to the function (use Infobox.raw_param(),
---- Infobox.param() and Infobox.smw_param() to use arguments)
-- empty (optional) : text to display in the infobox if func returns nil, defaults to "? (edit)"
-- category_never : category to add if func returns nil for all versions
-- category_partial : category to add if func returns nil for some versions, but a value for other versions
-- category_incomplete : category to add if func returns nil for at least 1 version (i.e. category_never and category_partial combined)
-- category_complete : category to add if func returns a value for all versions
-- smw_property (optional) : if this string is defined, the parameter will be saved into smw
-- smw_func (optional) : function to validate and process the Template argument to save into smw
-- func is used by default if smw_func is not defined
--]]
function Infobox:define_params(...)
-- For every parameter, store its corresponding function to self.params
for _, v in ipairs(...) do
if v.name then
local param = {}
-- Copy the function
if type(v.func) == 'function' or type(v.func) == 'table' then
param.func = v.func
end
-- If smw_property is defined, then use smw_func, or default to func if it is not defined
if v.smw_property then
param.smw_property = v.smw_property
if type(v.smw_func) == 'function' or type(v.smw_func) == 'table' then
param.smw_func = v.smw_func
else
param.smw_func = param.func
end
end
-- If empty is not defined, default message is "? (edit)"
param.empty = v.empty or editbutton("'''?''' (edit)")
-- Get the category names
param.category_never = v.category_never
param.category_partial = v.category_partial
param.category_incomplete = v.category_incomplete
param.category_complete = v.category_complete
-- Store the param
self.params[v.name] = param
table.insert(self.param_names, v.name)
end
end
return self
end
--[[
Fetches a param value. If the value is nil, will return the default value instead
-- arg: a non-table value (string, number, etc), or Infobox.param(name), Infobox.raw_param(name), Infobox.smw_param(name)
-- version: 0/'' for default, or else a number
Returns arg if a constant
param value (or default value) if Infobox.param(name), Infobox.raw_param(name), Infobox.smw_param(name)
--]]
function Infobox:get_param(arg, version)
if version == 0 then
version = ''
end
-- Handle Infobox.param(), Infobox.raw_param(), Infobox.smw_param()
if type(arg) == 'table' then
local value = self[arg.property][arg.param_name..version]
-- If nil, grab default value (which could be nil as well)
if value == nil then
value = self[arg.property][arg.param_name]
end
return value
end
-- Everything else passes through unmodified (string, number, etc)
return arg
end
--[[
Calculates the parsed value of a param
-- param_name : param_name as a string
-- version : 0/'' for default, or else a number
-- smw : boolean, will use smw_func if true, or func is false
--]]
function Infobox:parse_param(param_name, version, smw)
if version == 0 then
version = ''
end
-- use func or smw_func depending on smw argument
local param = self.params[param_name]
local func = smw and param.smw_func or param.func
-- call functions by passing the param_name
if type(func) == 'function' then
return func(self:get_param(self.raw_param(param_name), version))
-- call tables by grabbing the function and reading the param arguments
elseif type(func) == 'table' then
local func_name = func.name
local func_params = func.params
local func_fetched_params = {}
for _, func_param in ipairs(func_params) do
table.insert(func_fetched_params, self:get_param(func_param, version))
end
return func_name(unpack(func_fetched_params))
else
table.insert(self.errors, 'Invalid param definition for '..param_name)
end
end
--[[
Parses all the param values (args_parsed and args_smw)
--]]
function Infobox:parse_params()
-- Calculate the param value for all params and all versions
for _, param_name in ipairs(self.param_names) do
for version=0, self.versions do
if version == 0 then
version = ''
end
-- get the parsed value
self.args_parsed[param_name..version] = self:parse_param(param_name, version, false)
-- Only get the smw value if smw_property is defined
if self.params[param_name].smw_property then
self.args_smw[param_name..version] = self:parse_param(param_name, version, true)
end
end
end
end
--[[
Creates the table header
--]]
function Infobox:table_header()
-- Create infobox table
self.rtable = mw.html.create('table')
:addClass('plainlinks')
:addClass('infobox')
:addClass('infobox-'..self.infobox_name)
-- Create the switch datatable if multiple versions
if self.versions > 1 then
self.rtable:addClass('infobox-switch')
self.switch_datatable = mw.html.create('div')
:addClass('infobox-switch-resources')
:addClass('infobox-resources-'..self.infobox_name)
:addClass('hidden')
end
return self
end
--[[
If multiple versions exist, creates a set of buttons for switching
-- self.max_buttons : if the number of versions exceeds this value, a dropdown will be created instead
--]]
function Infobox:buttons()
if self.versions < 2 then
return
end
-- Button caption
local buttons = self.rtable:tag('caption')
:tag('div')
:addClass('infobox-buttons')
:attr('data-default-index', self.default_version)
-- Dropdown list instead of buttons if too many versions
if self.versions > self.max_buttons then
buttons:addClass('infobox-buttons-select')
end
-- Create all the buttons
for version=1, self.versions do
local button = buttons:tag('span')
:attr('data-switch-index', version)
:attr('data-switch-anchor', '#'..self.version_names[version])
:addClass('button')
:wikitext(self.version_names[version])
-- In case of dropdown list, hide the buttons as the switch gadget will convert them to a dropdown list - we can't directly create the dropdown list here as the select/option tags are rejected by wikitext
if self.versions > self.max_buttons then
button:addClass('hidden')
end
end
end
--[[
For each version, stores a subobject for all params that have smw_property defined
--]]
function Infobox:store_smw()
local versions = (self.versions > 1) and self.versions or 1 -- Grab versions, but convert 0 -> 1
for version=1, versions do
-- Generate a subobject name
-- Reminder - subobject name cannot have a . in the first 5 characters
local subobject_name = 'Infobox.'..self.version_names[version]
-- Store each param that has smw_property defined and is not nil
local subobject = {Infobox = self.infobox_name} -- Also store the current Infobox name
for _, param_name in ipairs(self.param_names) do
local property = self.params[param_name].smw_property
if property then
value = self:get_param(self.smw_param(param_name), version)
if value ~= nil then
subobject[property] = value
end
end
end
-- Keep a copy for debugging
self.__smw_debug[subobject_name] = subobject
-- Save subobjects if not in mainspace
if mw.title.getCurrentTitle():inNamespace(0) then
local result = mw.smw.subobject(subobject, subobject_name)
if result ~= true then
table.insert(self.errors, 'SMW error: '..result.error)
end
end
end
end
--[[
Automatically add categories for each param as defined in define_params()
--]]
function Infobox:parse_categories()
for _, param_name in ipairs(self.param_names) do
local param = self.params[param_name]
local defined = self:is_param_defined(Infobox.param(param_name))
if defined == 0 and param.category_never then
self.categories[param.category_never] = 1
end
if defined == 1 and param.category_partial then
self.categories[param.category_partial] = 1
end
if defined < 2 and param.category_incomplete then
self.categories[param.category_incomplete] = 1
end
if defined == 2 and param.category_complete then
self.categories[param.category_complete] = 1
end
end
end
--[[
When a parameter is added into the table, add the alternative versions' data into the switch datatable
-- content : a non-table value (string, number, etc), or Infobox.param(name), Infobox.raw_param(name), Infobox.smw_param(name)
Returns the name of the parameter in the tag 'data-attr-param'
--]]
function Infobox:add_switch_data(content)
if self.versions <= 1 then
return false
end
-- Only needed for non-constant params
if type(content) ~= 'table' then
return false
end
-- Only needed if the param changes value between different versions
local first_value = self:get_param(content, 1)
local all_same = true
for version=2, self.versions do
if first_value ~= self:get_param(content, version) then
all_same = false
break
end
end
if all_same then
return false
end
-- Let's build the datatable
-- datum name: Prepend raw__ or smw__ if not a parsed argument
local name = content.param_name
if content.property == 'args_raw' then
name = 'raw__' + name
end
if content.property == 'args_smw' then
name = 'smw__' + name
end
data_param = self.switch_datatable:tag('span'):attr('data-attr-param', name)
-- Add each version to the datatable
for version=1, self.versions do
text = self:get_param(content, version)
if text == nil then
text = self.params[content.param_name].empty
end
data_param:tag('span'):attr('data-attr-index', version):wikitext(text)
end
-- return the 'data-attr-param' name
return name
end
--[[
Override tostring
--]]
function Infobox:__tostring()
-- Create error messages
local error_text = ''
for _, v in ipairs(self.errors) do
error_text = error_text..'<span class="mw-message-box-error">'..v..'</span>'
end
-- Create categories
local category_text = ''
for key, _ in pairs(self.categories) do
category_text = category_text..'[[Category:'..key..']]'
end
return tostring(self.rtable) .. tostring(self.switch_datatable) .. error_text .. category_text
end
--[[
Debug function
--]]
function Infobox:dump()
-- Temporarily detach the metatable so we don't override tostring anymore, allowing us to use dumpObject
setmetatable(self, nil)
mw.log(mw.dumpObject(self))
setmetatable(self, Infobox)
mw.log(tostring(self))
end
return Infobox
8aa793841686e67e4163f49de96248469706633f
Module:Infobox/doc
828
504
1749
1624
2024-04-06T02:03:36Z
Gau Cho
5
wikitext
text/x-wiki
{{documentation}}
{{ToC|right}}
==Creating a template step-by-step==
===Import Module:Infobox and Module:Param Parse===
<syntaxhighlight lang="lua">
local Infobox = require('Module:Infobox')
local parse = require('Module:Param Parse')
</syntaxhighlight>
===Unpack the frame arguments from the Template===
<syntaxhighlight lang="lua">
local p = {}
function p.main(frame)
local args = frame:getParent().args
...
</syntaxhighlight>
===Setup the Module config settings===
<syntaxhighlight lang="lua">
local config = {
infobox_name = 'Scenery',
}
</syntaxhighlight>
===Map your arguments to parsing functions===
{{Main|Module:Param Parse}}
Use the params in [[Module:Param Parse]] to validate and format the data - feel free to create your own new params in [[Module:Param Parse]].
<syntaxhighlight lang="lua">
local params = {
parse.name,
parse.image,
{name = 'examine', func = parse.has_content, smw_property = 'Examine'}, -- Custom param
parse.episode,
...
}
</syntaxhighlight>
===Define an Infobox object===
{{Main|Module:Infobox#new}}
<syntaxhighlight lang="lua">
local infobox = Infobox.new(config, params, args)
</syntaxhighlight>
===Create your table===
{{Main|Module:Infobox#create}}
<syntaxhighlight lang="lua">
infobox
:add_row{
{tag='th', content=Infobox.param('name'), class='infobox.subheader', colspan='2'},
}
:add_row{
{tag='td', content=Infobox.param('image'), colspan='2'},
}
:pad(2)
:add_row{
{tag='td', content='[[Examine]]'},
{tag='td', content=Infobox.param('examine')},
}
:add_row{
{tag='td', content='[[Episode]]'},
{tag='td', content=Infobox.param('episode')},
}
...
</syntaxhighlight>
===You're done!===
<syntaxhighlight lang="lua">
return infobox
end
return p
</syntaxhighlight>
==Functions==
=== Referring to params ===
Each parameter can have a different value for each version. In addition, there are 3 different representations of each value. Therefore, a parameter must be accessed via one of the 3 helper functions:
{| class="wikitable"
! helper function
! example
! explanation
|-
| Infobox.raw_param(name)
| "1000"
| Raw value as passed by the Template
|-
| Infobox.param(name)
| "1,000"
| Value formatted for display in the Infobox
|-
| Infobox.smw_param(name)
| 1000
| Value formatted to be saved as an SMW property
|}
=== Special params ===
These parameters are handled specially by the module:
{| class="wikitable"
! param
! explanation
|-
| version1, version2, version3
| Button label and SMW name for each switch version of the infobox
|-
| default_version
| The default version to display when the page is loaded
|-
| version
| If there is only a single version, you can use version to set the SMW name (default SMW name is "DEFAULT")
|}
=== Infobox.new(config, params, args) ===
Creates a new infobox. Automatically parses the arguments, creates SMW subobjects and adds categories.
<syntaxhighlight lang="lua">
local infobox = Infobox.new(config, params, args)
</syntaxhighlight>
==== config ====
There are only 2 parameters for config
<syntaxhighlight lang="lua">
local config = {
infobox_name = 'Scenery', -- mandatory unique identifier for css
max_buttons = 6, -- optional, defaults to 6, max number of switch buttons before using a dropdown list instead
}
</syntaxhighlight>
==== params ====
A list of parameters to be processed by the Infobox module
<syntaxhighlight lang="lua">
local params = {
{ name = <param>, func = <func>, ... },
...
}
</syntaxhighlight>
{| class="wikitable"
! key
! value
|-
| name
| parameter name as used in the Template
|-
| func
| A function in [[Module:Param Parse]] to validate and process the Template argument. You can also use a local function, but this is not recommended.
If func is a function, will call func(Infobox.raw_param(name)):
<syntaxhighlight lang="lua">
{name = <param>, func = <func>, ... },
</syntaxhighlight>
If func is a table, it takes the following parameters:
<syntaxhighlight lang="lua">
{name = <param>, func = { name = <func>, params = <func_params>}, ... },
</syntaxhighlight>
{| class="wikitable"
| name
| function in [[Module:Param Parse]]
|-
| params
| a list of parameters to pass the the function, in the form of constants, or Infobox.raw_param(name), Infobox.param(name), Infobox.smw_param(name)
|}
|-
| empty (optional)
| text to display in the infobox if func returns nil; defaults to "? (edit)"
|-
| category_never (optional)
| category to add if func returns nil for all versions
|-
| category_partial (optional)
| category to add if func returns nil for some versions, but a value for other versions
|-
| category_incomplete (optional)
| category to add if func returns nil for at least 1 version (i.e. category_never and category_partial combined)
|-
| category_complete (optional)
| category to add if func returns a value for all versions
|-
| smw_property (optional)
| if this string is defined, the parameter will be saved into SMW
|-
| smw_func (optional)
| function to validate and process the Template argument to save into SMW. func is used by default if smw_func is not defined
|}
==== args ====
Arguments passed via the Template
<syntaxhighlight lang="lua">
local args = frame:getParent().args
</syntaxhighlight>
=== infobox:is_param_defined(param) ===
Used to conditionally display a line in the infobox
<syntaxhighlight lang="lua">
infobox:add_row{
{tag='th', content=Infobox.param('name'), class='infobox.subheader', colspan='2'},
}
if infobox:is_param_defined(Infobox.param('owner')) > 0 then
infobox:add_row{
{tag='td', content='[[Owner]]'},
{tag='td', content=Infobox.param('owner')},
}
end
</syntaxhighlight>
{| class="wikitable"
| param
| a parameter referenced via Infobox.raw_param(name), Infobox.param(name) or Infobox.smw_param(name)
|-
| Returns
| 0 if param is never defined
1 if param is defined for a fraction of the versions
2 if param is defined for all versions
|}
=== Infobox:add_row(...) ===
Adds a row to the infobox table. Parameter should be a table of cells:
<syntaxhighlight lang="lua">
infobox:add_row{
{tag='td', content='[[Cell1]]', ...},
{tag='td', content=Infobox.param('param'), ...},
{tag='td', content='[[Cell3]]', ...},
...
addClass = 'row-class'
}
</syntaxhighlight>
Each cell should have a set of key-values, of which only the tag and content are mandatory:
{| class="wikitable"
! key
! value
|-
| tag
| 'td' or 'th'
|-
| content
| a string or Infobox.param(name), Infobox.raw_param(name), Infobox.smw_param(name)
|-
| attr (optional)
| a table of attributes to add to the cell
mw.html:attr({ arg1 = '1', ... })
|-
| css (optional)
| a table of css to add to the cell
mw.html:css({ arg1 = '1', ... })
|-
| class (optional)
| a string with a class to add, or a table of classes to add. '''infobox-header''', '''infobox-subheader''' and '''infobox-image''' are commonly used.
mw.html:addClass(...)
|-
| rowspan (optional)
| Set the cell rowspan
mw.html:attr('rowspan',arg)
|-
| rowspan (optional)
| Set the cell colspan
mw.html:attr('colspan',arg)
|-
| title (optional)
| Set the cell title
mw.html:attr('title',arg)
|}
=== Infobox:pad(colspan, class) ===
Adds a blank row of padding spanning the given number of columns. Will always add the class '''infobox-padding''', but can optionally add another class:
<syntaxhighlight lang="lua">
infobox:pad("10", class=<class>)
</syntaxhighlight>
=== Infobox:addClass(class) ===
Adds a class to the entire table
<syntaxhighlight lang="lua">
infobox:addClass(class)
</syntaxhighlight>
dbc97817a6489fcb407ef00f60d459db70a281b2
Module:Param Parse/doc
828
781
1750
1628
2024-04-06T02:10:47Z
Gau Cho
5
wikitext
text/x-wiki
{{documentation}}
These params and functions are used to validate and format information passed into an Infobox. See [[Module:Infobox]] for details and instructions on creating an Infobox. If the information is missing or not valid, the functions here should return nil.
Here is a summary of all the params:
{| class="wikitable"
! param
! explanation
|-
| parse.image
| <nowiki>[[File:IMAGE.png]]</nowiki>. Use the class '''infobox-image''' in the table
|-
| parse.episode
| Episode name
|-
| parse.premium
| Premium (Yes, No, N/A)
|}
Here are some general use functions that can be used for custom or new params:
{| class="wikitable"
! function name
! explanation
|-
| has_content(arg)
| Returns arg if any non-whitespace character is found in the string.
|-
| number(num)
| Removes any commas and parses the string as a number
|-
| yes_no(text)
| Only accepts "Yes", "No" and "N/A"
|-
| yes_no_smw(text)
| Maps "Yes", "No" to true and false respectively
|}
== Creating New Params ==
Ideally, params should be defined here so that they can be reused between different Infoboxes. Here is how to create a new param:
<syntaxhighlight lang="lua">
param.paramname = {
name = <param>,
func = <func>,
empty = 'empty', -- optional
category_never = 'category', -- optional
category_partial = 'category', -- optional
category_incomplete = 'category', -- optional
category_complete = 'category', -- optional
smw_property = 'Property', -- optional
smw_func = <func>, -- optional
}
</syntaxhighlight>
{| class="wikitable"
! key
! value
|-
| name
| parameter name as used in the Template
|-
| func
| A function in [[Module:Param Parse]] to validate and process the Template argument. You can also use a local function, but this is not recommended.
If func is a function, will call func(Infobox.raw_param(name)):
<syntaxhighlight lang="lua">
{name = <param>, func = <func>, ... },
</syntaxhighlight>
If func is a table, it takes the following parameters:
<syntaxhighlight lang="lua">
{name = <param>, func = { name = <func>, params = <func_params>}, ... },
</syntaxhighlight>
{| class="wikitable"
| name
| function in [[Module:Param Parse]]
|-
| params
| a list of parameters to pass the the function, in the form of constants, or Infobox.raw_param(name), Infobox.param(name), Infobox.smw_param(name)
|}
|-
| empty (optional)
| text to display in the infobox if func returns nil; defaults to "? (edit)"
|-
| category_never (optional)
| category to add if func returns nil for all versions
|-
| category_partial (optional)
| category to add if func returns nil for some versions, but a value for other versions
|-
| category_incomplete (optional)
| category to add if func returns nil for at least 1 version (i.e. category_never and category_partial combined)
|-
| category_complete (optional)
| category to add if func returns a value for all versions
|-
| smw_property (optional)
| if this string is defined, the parameter will be saved into SMW
|-
| smw_func (optional)
| function to validate and process the Template argument to save into SMW. func is used by default if smw_func is not defined
|}
02928948046de37f51294b4fbce6ce37f742b164
1752
1750
2024-04-06T02:11:57Z
Gau Cho
5
wikitext
text/x-wiki
{{documentation}}
These params and functions are used to validate and format information passed into an Infobox. See [[Module:Infobox]] for details and instructions on creating an Infobox. If the information is missing or not valid, the functions here should return nil.
Here is a summary of all the params:
{| class="wikitable"
! param
! explanation
|-
| parse.image
| <nowiki>[[File:IMAGE.png]]</nowiki>. Use the class '''infobox-image''' in the table
|-
| parse.episode
| Episode name
|-
| parse.premium
| Premium (Yes, No, N/A)
|-
| parse.release
| TODO
|}
Here are some general use functions that can be used for custom or new params:
{| class="wikitable"
! function name
! explanation
|-
| has_content(arg)
| Returns arg if any non-whitespace character is found in the string.
|-
| number(num)
| Removes any commas and parses the string as a number
|-
| yes_no(text)
| Only accepts "Yes", "No" and "N/A"
|-
| yes_no_smw(text)
| Maps "Yes", "No" to true and false respectively
|}
== Creating New Params ==
Ideally, params should be defined here so that they can be reused between different Infoboxes. Here is how to create a new param:
<syntaxhighlight lang="lua">
param.paramname = {
name = <param>,
func = <func>,
empty = 'empty', -- optional
category_never = 'category', -- optional
category_partial = 'category', -- optional
category_incomplete = 'category', -- optional
category_complete = 'category', -- optional
smw_property = 'Property', -- optional
smw_func = <func>, -- optional
}
</syntaxhighlight>
{| class="wikitable"
! key
! value
|-
| name
| parameter name as used in the Template
|-
| func
| A function in [[Module:Param Parse]] to validate and process the Template argument. You can also use a local function, but this is not recommended.
If func is a function, will call func(Infobox.raw_param(name)):
<syntaxhighlight lang="lua">
{name = <param>, func = <func>, ... },
</syntaxhighlight>
If func is a table, it takes the following parameters:
<syntaxhighlight lang="lua">
{name = <param>, func = { name = <func>, params = <func_params>}, ... },
</syntaxhighlight>
{| class="wikitable"
| name
| function in [[Module:Param Parse]]
|-
| params
| a list of parameters to pass the the function, in the form of constants, or Infobox.raw_param(name), Infobox.param(name), Infobox.smw_param(name)
|}
|-
| empty (optional)
| text to display in the infobox if func returns nil; defaults to "? (edit)"
|-
| category_never (optional)
| category to add if func returns nil for all versions
|-
| category_partial (optional)
| category to add if func returns nil for some versions, but a value for other versions
|-
| category_incomplete (optional)
| category to add if func returns nil for at least 1 version (i.e. category_never and category_partial combined)
|-
| category_complete (optional)
| category to add if func returns a value for all versions
|-
| smw_property (optional)
| if this string is defined, the parameter will be saved into SMW
|-
| smw_func (optional)
| function to validate and process the Template argument to save into SMW. func is used by default if smw_func is not defined
|}
f822a5aa5a9dba25d0362efaa11e635c371cd4ac
Module:Infobox Episode
828
825
1753
2024-04-06T02:15:39Z
Gau Cho
5
Created page with "local p = {} local Infobox = require('Module:Infobox') local parse = require('Module:Param Parse') function p.main(frame) local args = frame:getParent().args local config = { infobox_name = 'Episode', } local params = { parse.name, parse.image, parse.release, parse.premium, } local infobox = Infobox.new(config, params, args) infobox :add_row{ {tag='th', content=Infobox.param('name'), class='infobox-header', colspan='20'}, } :add_row{..."
Scribunto
text/plain
local p = {}
local Infobox = require('Module:Infobox')
local parse = require('Module:Param Parse')
function p.main(frame)
local args = frame:getParent().args
local config = {
infobox_name = 'Episode',
}
local params = {
parse.name,
parse.image,
parse.release,
parse.premium,
}
local infobox = Infobox.new(config, params, args)
infobox
:add_row{
{tag='th', content=Infobox.param('name'), class='infobox-header', colspan='20'},
}
:add_row{
{tag='td', content=Infobox.param('image'), class='infobox-image', colspan='20'},
}
:add_row{
{tag='th', content='Release', colspan="6"},
{tag='td', content=Infobox.param('release'), colspan="14"},
}
:add_row{
{tag='th', content='[[Premium Pass|Premium]]', colspan="6"},
{tag='td', content=Infobox.param('premium'), colspan="14"},
}
:pad(20)
return infobox
end
return p
980f30eead0a66a162b96816098835c4b26a3cd1
Template:Infobox Episode
10
818
1754
1719
2024-04-06T02:16:21Z
Gau Cho
5
wikitext
text/x-wiki
{{#invoke:Infobox Episode|main}}{{Mainonly|[[Category:Episodes]]}}<noinclude>{{/doc}}</noinclude>
5938943a317610bbda2db34c15e8ca5470150890
Module:Param Parse
828
673
1755
1751
2024-04-06T02:19:03Z
Gau Cho
5
Fix yes_no
Scribunto
text/plain
--[=[
-- Standardized functions to parse Infobox params
--]=]
-- <nowiki>
local parse = {}
-- Generic functions --
-----------------------
-- Standardized "has content" function
function parse.has_content(arg)
-- Return arg if any non-whitespace character is found
return string.match(arg or '', '%S') and arg or nil
end
-- Standardized numbers
function parse.number(num)
num = string.gsub(num or '',',','')
return tonumber(num)
end
-- Yes/No
local yes_no = {
['Yes'] = true,
['No'] = false,
['N/A'] = 'NIL',
}
function parse.yes_no(text)
if yes_no[text] ~= nil then
return text
end
return nil
end
function parse.yes_no_smw(text)
if text == 'N/A' then
return nil
end
return yes_no[text] or nil
end
-- Premade Params --
--------------------
-- Standardized name function
parse.name = {
name = 'name',
func = parse.has_content,
smw_property = 'Name',
}
-- Standardized image function
function parse.image_func(img)
if img and img:find('%S') then
return img
end
return nil
end
function parse.image_smw(img)
return img and string.match(img, "File:.-%.png") or nil
end
parse.image = {
name = 'image',
func = parse.image_func,
smw_property = 'Image',
smw_func = parse.image_smw,
empty = '[[Special:Upload|Please upload an image!]]',
category_incomplete = 'Needs image',
}
-- Episode
local valid_episodes = {['Hopeport'] = 1, ['Hopeforest'] = 1, ['Mine of Mantuban'] = 1, ['Crenopolis'] = 1}
function parse.episode_func(episode)
if valid_episodes[episode] then
return '[[File:'..episode..' episode icon.png|18px]] [['..episode..']]'
end
return nil
end
function parse.episode_smw(episode)
if valid_episodes[episode] then
return episode
end
return nil
end
parse.episode = {
name = 'episode',
func = parse.episode_func,
smw_property = 'Episode',
smw_func = parse.episode_smw,
category_incomplete = 'Needs episode',
}
-- Premium
parse.premium = {
name = 'premium',
func = parse.yes_no,
smw_property = 'Premium',
smw_func = parse.yes_no,
category_incomplete = 'Needs premium status',
}
-- Release (TODO)
parse.release = {
name = 'release',
func = parse.has_content,
}
return parse
-- </nowiki>
1344f54ad8321a97dd269602570c012b11bfeca3
1765
1755
2024-04-06T02:32:34Z
Gau Cho
5
Scribunto
text/plain
--[=[
-- Standardized functions to parse Infobox params
--]=]
-- <nowiki>
local parse = {}
-- Generic functions --
-----------------------
-- Standardized "has content" function
function parse.has_content(arg)
-- Return arg if any non-whitespace character is found
return string.match(arg or '', '%S') and arg or nil
end
-- Standardized numbers
function parse.number(num)
num = string.gsub(num or '',',','')
return tonumber(num)
end
-- Yes/No
local yes_no = {
['Yes'] = true,
['No'] = false,
['N/A'] = 'NIL',
}
function parse.yes_no(text)
if yes_no[text] ~= nil then
return text
end
return nil
end
function parse.yes_no_smw(text)
if text == 'N/A' then
return nil
end
return yes_no[text] or nil
end
-- Premade Params --
--------------------
-- Standardized name function
parse.name = {
name = 'name',
func = parse.has_content,
smw_property = 'Name',
}
-- Standardized image function
function parse.image_func(img)
if img and string.match('[[File:.-%.png]]') then
return img
end
return nil
end
function parse.image_smw(img)
return img and string.match(img, "File:.-%.png") or nil
end
parse.image = {
name = 'image',
func = parse.image_func,
smw_property = 'Image',
smw_func = parse.image_smw,
empty = '[[Special:Upload|Please upload an image!]]',
category_incomplete = 'Needs image',
}
-- Episode
local valid_episodes = {['Hopeport'] = 1, ['Hopeforest'] = 1, ['Mine of Mantuban'] = 1, ['Crenopolis'] = 1}
function parse.episode_func(episode)
if valid_episodes[episode] then
return '[[File:'..episode..' episode icon.png|18px]] [['..episode..']]'
end
return nil
end
function parse.episode_smw(episode)
if valid_episodes[episode] then
return episode
end
return nil
end
parse.episode = {
name = 'episode',
func = parse.episode_func,
smw_property = 'Episode',
smw_func = parse.episode_smw,
category_incomplete = 'Needs episode',
}
-- Premium
parse.premium = {
name = 'premium',
func = parse.yes_no,
smw_property = 'Premium',
smw_func = parse.yes_no,
category_incomplete = 'Needs premium status',
}
-- Release (TODO)
parse.release = {
name = 'release',
func = parse.has_content,
}
return parse
-- </nowiki>
18eb71c5f60a757049ca33437b392eac7cacfe77
1766
1765
2024-04-06T02:33:19Z
Gau Cho
5
Scribunto
text/plain
--[=[
-- Standardized functions to parse Infobox params
--]=]
-- <nowiki>
local parse = {}
-- Generic functions --
-----------------------
-- Standardized "has content" function
function parse.has_content(arg)
-- Return arg if any non-whitespace character is found
return string.match(arg or '', '%S') and arg or nil
end
-- Standardized numbers
function parse.number(num)
num = string.gsub(num or '',',','')
return tonumber(num)
end
-- Yes/No
local yes_no = {
['Yes'] = true,
['No'] = false,
['N/A'] = 'NIL',
}
function parse.yes_no(text)
if yes_no[text] ~= nil then
return text
end
return nil
end
function parse.yes_no_smw(text)
if text == 'N/A' then
return nil
end
return yes_no[text] or nil
end
-- Premade Params --
--------------------
-- Standardized name function
parse.name = {
name = 'name',
func = parse.has_content,
smw_property = 'Name',
}
-- Standardized image function
function parse.image_func(img)
if img and string.match(img, '[[File:.-%.png]]') then
return img
end
return nil
end
function parse.image_smw(img)
return img and string.match(img, "File:.-%.png") or nil
end
parse.image = {
name = 'image',
func = parse.image_func,
smw_property = 'Image',
smw_func = parse.image_smw,
empty = '[[Special:Upload|Please upload an image!]]',
category_incomplete = 'Needs image',
}
-- Episode
local valid_episodes = {['Hopeport'] = 1, ['Hopeforest'] = 1, ['Mine of Mantuban'] = 1, ['Crenopolis'] = 1}
function parse.episode_func(episode)
if valid_episodes[episode] then
return '[[File:'..episode..' episode icon.png|18px]] [['..episode..']]'
end
return nil
end
function parse.episode_smw(episode)
if valid_episodes[episode] then
return episode
end
return nil
end
parse.episode = {
name = 'episode',
func = parse.episode_func,
smw_property = 'Episode',
smw_func = parse.episode_smw,
category_incomplete = 'Needs episode',
}
-- Premium
parse.premium = {
name = 'premium',
func = parse.yes_no,
smw_property = 'Premium',
smw_func = parse.yes_no,
category_incomplete = 'Needs premium status',
}
-- Release (TODO)
parse.release = {
name = 'release',
func = parse.has_content,
}
return parse
-- </nowiki>
8eadd11e1a3cbdf97bf78afc6bd41c92dfcd7476
Module:Infobox Episode/doc
828
826
1756
2024-04-06T02:19:46Z
Gau Cho
5
Created page with "{{No documentation}}"
wikitext
text/x-wiki
{{No documentation}}
ad36a615c98d03e22b03ecaa7b9d7d87b5d7b517
Module:Infobox Profession
828
800
1757
1747
2024-04-06T02:20:44Z
Gau Cho
5
Scribunto
text/plain
local p = {}
local Infobox = require('Module:Infobox')
local parse = require('Module:Param Parse')
function p.main(frame)
local args = frame:getParent().args
local config = {
infobox_name = 'Profession',
}
local params = {
parse.name,
parse.image,
parse.release,
parse.premium,
}
local infobox = Infobox.new(config, params, args)
infobox
:add_row{
{tag='th', content=Infobox.param('name'), class='infobox-header', colspan='20'},
}
:add_row{
{tag='td', content=Infobox.param('image'), class='infobox-image', colspan='20'},
}
:add_row{
{tag='th', content='Release', colspan="6"},
{tag='td', content=Infobox.param('release'), colspan="14"},
}
:add_row{
{tag='th', content='[[Premium Pass|Premium]]', colspan="6"},
{tag='td', content=Infobox.param('premium'), colspan="14"},
}
:pad(20)
return infobox
end
return p
ef5652c093bebf29e884402f7a5a36c1622977b7
Module:Infobox Item
828
827
1758
2024-04-06T02:24:07Z
Gau Cho
5
Created page with "local p = {} local Infobox = require('Module:Infobox') local parse = require('Module:Param Parse') function p.main(frame) local args = frame:getParent().args local config = { infobox_name = 'Item', } local params = { parse.name, parse.image, parse.release, parse.premium, parse.episode, {name = 'profession', func = parse.has_content, category_incomplete = 'Items needing profession', smw_func = 'Profession'}, -- TODO - move to Module:Param Parse onc..."
Scribunto
text/plain
local p = {}
local Infobox = require('Module:Infobox')
local parse = require('Module:Param Parse')
function p.main(frame)
local args = frame:getParent().args
local config = {
infobox_name = 'Item',
}
local params = {
parse.name,
parse.image,
parse.release,
parse.premium,
parse.episode,
{name = 'profession', func = parse.has_content, category_incomplete = 'Items needing profession', smw_func = 'Profession'}, -- TODO - move to Module:Param Parse once more details are available
{name = 'value', func = parse.number, category_incomplete = 'Items needing value', smw_func = 'Value'}, -- TODO - move to Module:Param Parse once more details are available
}
local infobox = Infobox.new(config, params, args)
infobox
:add_row{
{tag='th', content=Infobox.param('name'), class='infobox-header', colspan='20'},
}
:add_row{
{tag='td', content=Infobox.param('image'), class='infobox-image', colspan='20'},
}
:add_row{
{tag='th', content='Release', colspan="6"},
{tag='td', content=Infobox.param('release'), colspan="14"},
}
:add_row{
{tag='th', content='[[Premium Pass|Premium]]', colspan="6"},
{tag='td', content=Infobox.param('premium'), colspan="14"},
}
:add_row{
{tag='th', content='[[Profession]]', colspan="6"},
{tag='td', content=Infobox.param('profession'), colspan="14"},
}
:add_row{
{tag='th', content='[[Value]]', colspan="6"},
{tag='td', content=Infobox.param('value'), colspan="14"},
}
:pad(20)
return infobox
end
return p
44bdb923b4b6a8710850593871c5179227cdc831
1761
1758
2024-04-06T02:28:24Z
Gau Cho
5
Scribunto
text/plain
local p = {}
local Infobox = require('Module:Infobox')
local parse = require('Module:Param Parse')
function p.main(frame)
local args = frame:getParent().args
local config = {
infobox_name = 'Item',
}
local params = {
parse.name,
parse.image,
parse.release,
parse.premium,
parse.episode,
{name = 'profession', func = parse.has_content, category_incomplete = 'Items needing profession', smw_func = 'Profession'}, -- TODO - move to Module:Param Parse once more details are available
{name = 'value', func = parse.number, category_incomplete = 'Items needing value', smw_func = 'Value'}, -- TODO - move to Module:Param Parse once more details are available
}
local infobox = Infobox.new(config, params, args)
infobox
:add_row{
{tag='th', content=Infobox.param('name'), class='infobox-header', colspan='20'},
}
:add_row{
{tag='td', content=Infobox.param('image'), class='infobox-image', colspan='20'},
}
:add_row{
{tag='th', content='Release', colspan="6"},
{tag='td', content=Infobox.param('release'), colspan="14"},
}
:add_row{
{tag='th', content='[[Premium Pass|Premium]]', colspan="6"},
{tag='td', content=Infobox.param('premium'), colspan="14"},
}
:add_row{
{tag='th', content='[[Profession]]', colspan="6"},
{tag='td', content=Infobox.param('profession'), colspan="14"},
}
:add_row{
{tag='th', content='Value', colspan="6"},
{tag='td', content=Infobox.param('value'), colspan="14"},
}
:pad(20)
return infobox
end
return p
352a527cf86b3b370d050dc6ed5d6d527b327354
1770
1761
2024-04-06T02:35:32Z
Gau Cho
5
Scribunto
text/plain
local p = {}
local Infobox = require('Module:Infobox')
local parse = require('Module:Param Parse')
function p.main(frame)
local args = frame:getParent().args
local config = {
infobox_name = 'Item',
}
local params = {
parse.name,
parse.image,
parse.release,
parse.premium,
parse.episode,
{name = 'profession', func = parse.has_content, category_incomplete = 'Items needing profession', smw_func = 'Profession'}, -- TODO - move to Module:Param Parse once more details are available
{name = 'value', func = parse.number, category_incomplete = 'Items needing value', smw_func = 'Value'}, -- TODO - move to Module:Param Parse once more details are available
}
local infobox = Infobox.new(config, params, args)
infobox
:add_row{
{tag='th', content=Infobox.param('name'), class='infobox-header', colspan='20'},
}
:add_row{
{tag='td', content=Infobox.param('image'), class='infobox-image', colspan='20'},
}
:add_row{
{tag='th', content='Release', colspan="6"},
{tag='td', content=Infobox.param('release'), colspan="14"},
}
:add_row{
{tag='th', content='[[Episode]]', colspan="6"},
{tag='td', content=Infobox.param('episode'), colspan="14"},
}
:add_row{
{tag='th', content='[[Premium Pass|Premium]]', colspan="6"},
{tag='td', content=Infobox.param('premium'), colspan="14"},
}
:add_row{
{tag='th', content='[[Profession]]', colspan="6"},
{tag='td', content=Infobox.param('profession'), colspan="14"},
}
:add_row{
{tag='th', content='Value', colspan="6"},
{tag='td', content=Infobox.param('value'), colspan="14"},
}
:pad(20)
return infobox
end
return p
04af6d2f24e865593c743950629f9de4a2e33b04
Template:Infobox Item
10
77
1759
1441
2024-04-06T02:24:41Z
Gau Cho
5
Replaced content with "{{#invoke:Infobox Item|main}}{{Mainonly|[[Category:Items]]}}<noinclude>{{/doc}}</noinclude>"
wikitext
text/x-wiki
{{#invoke:Infobox Item|main}}{{Mainonly|[[Category:Items]]}}<noinclude>{{/doc}}</noinclude>
19f1ab40738e494ea63d7f441739fd01ee6db3ee
Basic bacon
0
84
1760
1312
2024-04-06T02:27:59Z
Gau Cho
5
wikitext
text/x-wiki
{{Unofficial name}}
{{Infobox Item
|name = Basic bacon
|image = [[File:Basic bacon.png]]
|release =
|episode =
|profession = [[Chef]]
|value =
}}
'''Basic bacon''' is a food that can be created using the [[Chef]] profession. It can be obtained by frying [[raw basic bacon]] in a kitchen.<ref>https://brightershores.com/screenshots/02_cooking.jpg</ref>
==References==
{{Reflist}}
[[Category:Food]]
38f8dad28e766976df451c3712e20a94f4d07b9a
Sturlet
0
67
1762
1322
2024-04-06T02:29:03Z
Gau Cho
5
wikitext
text/x-wiki
{{Infobox Item
|name = Sturlet
|image =
|release =
|episode =
|profession = [[Fisher]]
|value =
}}
'''Sturlet''' is a type of [[fish]] that gives 7 experience in the [[Fisher]] profession per catch.<ref>https://brightershores.com/screenshots/12_vincible.jpg</ref>
==References==
{{Reflist}}
e3d11647905f1e5cbf3843d91e10a968d5d055bb
Crossbow
0
192
1763
1357
2024-04-06T02:29:24Z
Gau Cho
5
wikitext
text/x-wiki
{{Unofficial name}}
{{Infobox Item
|name = Crossbow
|image = [[File:Crossbow.png]]
|release =
|episode =
|profession = Combat
|value = 0
}}
'''Crossbows''' are a type of [[weapon]] in [[Brighter Shores]], typically utilised by the [[guardian]] class.
==References==
{{Reflist}}
[[Category:Equipment]]
ac16f0a364d9893d7abc2b2758038ddccfa58eb7
Category:Needs episode
14
828
1764
2024-04-06T02:30:35Z
Gau Cho
5
Created page with "{{Categoryheader|pages|pages that needs the episode added|yes|infoboxes that need the episode parameter filled}} {{Hidden category}} [[Category:Needs information]] [[Category:Maintenance categories]] __EXPECTUNUSEDCATEGORY__"
wikitext
text/x-wiki
{{Categoryheader|pages|pages that needs the episode added|yes|infoboxes that need the episode parameter filled}}
{{Hidden category}}
[[Category:Needs information]]
[[Category:Maintenance categories]]
__EXPECTUNUSEDCATEGORY__
969539d67f2a42015e1b0e80fc16cc68b9ce9a0a
Sword
0
193
1767
1416
2024-04-06T02:34:06Z
Gau Cho
5
wikitext
text/x-wiki
{{Unofficial name}}
{{Infobox Item
|name = Sword
|image = [[File:Sword.png]]
|release = Q3 [[2024]]
|episode = Unknown
|profession = Combat
|value = 50
}}
'''Swords'''<ref>https://brightershores.com/screenshots/09_himatik_ruins.jpg</ref> are a type of [[weapon]] in [[Brighter Shores]], typically utilised by the [[cryoknight]] class.
==References==
{{Reflist}}
[[Category:Items]]
[[Category:Equipment]]
4321b29e431288800fd85b177ae17c85fd21b97a
1789
1767
2024-04-06T02:41:49Z
Gau Cho
5
wikitext
text/x-wiki
{{Unofficial name}}
{{Infobox Item
|name = Sword
|image = [[File:Sword.png]]
|release = Q3 [[2024]]
|episode = Unknown
|profession = Combat
|value = 50
}}
'''Swords'''<ref>https://brightershores.com/screenshots/09_himatik_ruins.jpg</ref> are a type of [[weapon]] in [[Brighter Shores]], typically utilised by the [[cryoknight]] class.
==References==
{{Reflist}}
[[Category:Equipment]]
2a3be72a46025bde1d348935d6498cf9e32514c0
Property:Infobox
302
829
1768
2024-04-06T02:34:29Z
Gau Cho
5
Created page with "{{Property|type=text}}"
wikitext
text/x-wiki
{{Property|type=text}}
bb3fcbac32fa65eb44caa27878d9413b33012db5
Branch
0
464
1769
1313
2024-04-06T02:35:09Z
Gau Cho
5
wikitext
text/x-wiki
{{Unofficial name}}
{{Infobox Item
|name = Branch
|image = [[File:Branch.png]]
|release =
|episode = Hopeforest
|profession = [[Woodcutter]]
|value = 48
}}
'''Branches''' can be collected by the [[Woodcutter]] [[profession]] in [[Hopeforest]].<ref>https://brightershores.com/screenshots/09_himatik_ruins.jpg</ref>
==References==
{{Reflist}}
e63309d63e27cd4d9da7a84fdfe81fc9bcf35202
Miner potion
0
465
1771
1319
2024-04-06T02:36:01Z
Gau Cho
5
wikitext
text/x-wiki
{{Unofficial name}}
{{Infobox Item
|name = Miner potion
|image = [[File:Miner potion.png]]
|release =
|episode = Hopeport
|profession = [[Alchemist]]
|value = 16
}}
'''Miner potions''' are a type of [[potion]].<ref>https://brightershores.com/screenshots/09_himatik_ruins.jpg</ref>
==References==
{{Reflist}}
[[Category:Potions]]
b8e463cd924dd76db15ab8722b02dceb6dc8a2b6
Raw basic bacon
0
478
1772
1321
2024-04-06T02:36:23Z
Gau Cho
5
wikitext
text/x-wiki
{{Unofficial name}}
{{Infobox Item
|name = Raw basic bacon
|image = [[File:Raw basic bacon.png]]
|release =
|episode =
|profession = [[Chef]]
|value =
}}
'''Raw basic bacon''' is an item that can be fried to [[basic bacon]] using the [[Chef]] profession.<ref>https://brightershores.com/screenshots/02_cooking.jpg</ref>
==References==
{{Reflist}}
[[Category:Food]]
d8056fd96ae3790b8f99ecbb60a248b7319a1883
Hammermage potion
0
632
1773
1316
2024-04-06T02:36:35Z
Gau Cho
5
wikitext
text/x-wiki
{{Unofficial name}}
{{Infobox Item
|name = Hammermage potion
|image = [[File:Hammermage potion.png]]
|release =
|episode = Hopeport
|profession = Alchemist
|value = 330
}}
The '''Hammermage potion''' is a type of [[potion]].<ref>https://brightershores.com/screenshots/09_himatik_ruins.jpg</ref>
==References==
{{Reflist}}
[[Category:Potions]]
a44bce2f575073fa4c27ce1d97b00374b5eee06d
Coif
0
634
1774
1314
2024-04-06T02:37:03Z
Gau Cho
5
wikitext
text/x-wiki
{{Unofficial name}}
{{Infobox Item
|name = Coif
|image = [[File:Coif.png]]
|release =
|profession = Combat
|value = 0
}}
The '''coif''' is a piece of equipment worn on the head.<ref>https://brightershores.com/screenshots/09_himatik_ruins.jpg</ref>
==References==
{{Reflist}}
[[Category:Equipment]]
47e4fa63cd76dd875f1e4064871864c619a96c09
Merchant potion
0
636
1775
1318
2024-04-06T02:37:25Z
Gau Cho
5
wikitext
text/x-wiki
{{Unofficial name}}
{{Infobox Item
|name = Merchant potion
|image = [[File:Merchant potion.png]]
|release =
|episode = Hopeport
|profession = [[Alchemist]]
|value = 18
}}
The '''Merchant potion''' is a type of [[potion]].<ref>https://brightershores.com/screenshots/09_himatik_ruins.jpg</ref>
==References==
{{Reflist}}
[[Category:Potions]]
fcd43a61fff844be8f6ca2686831e4ceeac2b4a3
Health potion
0
645
1776
1317
2024-04-06T02:37:40Z
Gau Cho
5
wikitext
text/x-wiki
{{Unofficial name}}
{{Infobox Item
|name = Health potion
|image = [[File:Health potion.png]]
|release =
|profession = Alchemist
|value =
}}
'''Health potions''' are a type of [[potion]]<ref>https://brightershores.com/screenshots/03_shade_combat.jpg</ref>, most likely used to restore one's health in [[combat]].
==References==
{{Reflist}}
[[Category:Potions]]
784385ef28ab2e89d12e009166b338399463cbe0
Strength Cryonae
0
647
1777
1315
2024-04-06T02:38:15Z
Gau Cho
5
wikitext
text/x-wiki
{{Unofficial name}}
{{Infobox Item
|name = Cryoknight potion
|image = [[File:Cryoknight potion.png]]
|release =
|profession = Alchemist
|value =
}}
'''Cryoknight potions''' are a type of [[potion]].<ref>https://brightershores.com/screenshots/03_shade_combat.jpg</ref>
==References==
{{Reflist}}
[[Category:Potions]]
0de592332e9c06012b419205b3a45963046089e2
Staff
0
733
1778
1414
2024-04-06T02:38:30Z
Gau Cho
5
wikitext
text/x-wiki
{{Unofficial name}}
{{Infobox Item
|name = Staff
|image = [[File:Staff.png]]
|release =
|episode =
|profession = Combat
|value =
}}
A '''staff''' is a type of [[weapon]] in [[Brighter Shores]]<ref>https://brightershores.com/screenshots/03_shade_combat.jpg</ref>.
==References==
{{Reflist}}
[[Category:Items]]
[[Category:Equipment]]
386d4859b481927c9edd33799161d4ee302047ce
1792
1778
2024-04-06T02:42:12Z
Gau Cho
5
wikitext
text/x-wiki
{{Unofficial name}}
{{Infobox Item
|name = Staff
|image = [[File:Staff.png]]
|release =
|episode =
|profession = Combat
|value =
}}
A '''staff''' is a type of [[weapon]] in [[Brighter Shores]]<ref>https://brightershores.com/screenshots/03_shade_combat.jpg</ref>.
==References==
{{Reflist}}
[[Category:Equipment]]
cb5a852d0d822a9c102182675973bc66b7a41d0b
Mace
0
734
1779
1366
2024-04-06T02:38:47Z
Gau Cho
5
wikitext
text/x-wiki
{{Unofficial name}}
{{Infobox Item
|name = Mace
|image = [[File:Mace.png]]
|release =
|episode =
|profession = Combat
|value =
}}
A '''mace''' is a type of [[weapon]] in [[Brighter Shores]]<ref>https://brightershores.com/screenshots/03_shade_combat.jpg</ref>.
[[File:Mace equipped.png|200px|left|A player with a mace equipped.]]
==References==
{{Reflist}}
[[Category:Equipment]]
bbf128bef0bb4969123d7de60773c6ca10e5020c
Log
0
750
1780
1396
2024-04-06T02:39:01Z
Gau Cho
5
wikitext
text/x-wiki
{{Unofficial name}}
{{Infobox Item
|name = Log
|image = [[File:Log.png]]
|release = Q3 [[2024]]
|episode = Hopeforest
|profession = Woodcutter
|value = 48
}}
'''Log'''<ref>https://brightershores.com/screenshots/09_himatik_ruins.jpg</ref>.
==References==
{{Reflist}}
[[Category:Items]]
ad38cf3b0948f004910dac89fa24dc24f7bcde2f
1794
1780
2024-04-06T02:42:22Z
Gau Cho
5
wikitext
text/x-wiki
{{Unofficial name}}
{{Infobox Item
|name = Log
|image = [[File:Log.png]]
|release = Q3 [[2024]]
|episode = Hopeforest
|profession = Woodcutter
|value = 48
}}
'''Log'''<ref>https://brightershores.com/screenshots/09_himatik_ruins.jpg</ref>.
==References==
{{Reflist}}
0d03c2a00b602aabe29888de99dabbfe600a17bd
Log basket
0
751
1781
1397
2024-04-06T02:39:20Z
Gau Cho
5
wikitext
text/x-wiki
{{Unofficial name}}
{{Infobox Item
|name = Log basket
|image = [[File:Log basket.png]]
|release = Q3 [[2024]]
|episode = Hopeforest
|profession = Woodcutter
|value = 22
}}
'''Log basket'''<ref>https://brightershores.com/screenshots/09_himatik_ruins.jpg</ref>.
==References==
{{Reflist}}
[[Category:Items]]
098618411899aceffe83a70531907f0cf2327688
1793
1781
2024-04-06T02:42:17Z
Gau Cho
5
wikitext
text/x-wiki
{{Unofficial name}}
{{Infobox Item
|name = Log basket
|image = [[File:Log basket.png]]
|release = Q3 [[2024]]
|episode = Hopeforest
|profession = Woodcutter
|value = 22
}}
'''Log basket'''<ref>https://brightershores.com/screenshots/09_himatik_ruins.jpg</ref>.
==References==
{{Reflist}}
c7ca4ebee67963228dff295e0e595a5151ec6816
Iron platebody
0
752
1782
1412
2024-04-06T02:39:32Z
Gau Cho
5
wikitext
text/x-wiki
{{Unofficial name}}
{{Infobox Item
|name = Iron platebody
|image = [[File:Iron platebody.png]]
|release = Q3 [[2024]]
|episode = Unknown
|profession = Combat
|value = 50
}}
'''Iron platebody'''<ref>https://brightershores.com/screenshots/09_himatik_ruins.jpg</ref>.
==References==
{{Reflist}}
[[Category:Items]]
[[Category:Equipment]]
bd511edff1512262a375b085440a843790546863
1795
1782
2024-04-06T02:42:26Z
Gau Cho
5
wikitext
text/x-wiki
{{Unofficial name}}
{{Infobox Item
|name = Iron platebody
|image = [[File:Iron platebody.png]]
|release = Q3 [[2024]]
|episode = Unknown
|profession = Combat
|value = 50
}}
'''Iron platebody'''<ref>https://brightershores.com/screenshots/09_himatik_ruins.jpg</ref>.
==References==
{{Reflist}}
[[Category:Equipment]]
87c4bd78fc5a690fa7aaef1b35f4c9292b5ec2f5
Iron legs
0
753
1783
1411
2024-04-06T02:39:49Z
Gau Cho
5
wikitext
text/x-wiki
{{Unofficial name}}
{{Infobox Item
|name = Iron legs
|image = [[File:Iron legs.png]]
|release = Q3 [[2024]]
|episode = Unknown
|profession = Combat
|value = 50
}}
'''Iron legs'''<ref>https://brightershores.com/screenshots/09_himatik_ruins.jpg</ref>.
==References==
{{Reflist}}
[[Category:Items]]
[[Category:Equipment]]
eb8243cc1df112c3ed5825a71aadf97e7352e73d
1796
1783
2024-04-06T02:42:31Z
Gau Cho
5
wikitext
text/x-wiki
{{Unofficial name}}
{{Infobox Item
|name = Iron legs
|image = [[File:Iron legs.png]]
|release = Q3 [[2024]]
|episode = Unknown
|profession = Combat
|value = 50
}}
'''Iron legs'''<ref>https://brightershores.com/screenshots/09_himatik_ruins.jpg</ref>.
==References==
{{Reflist}}
[[Category:Equipment]]
e0873e0f18883e7f76db834efc3447fd743139a2
Bronze legs
0
754
1784
1410
2024-04-06T02:40:03Z
Gau Cho
5
wikitext
text/x-wiki
{{Unofficial name}}
{{Infobox Item
|name = Bronze legs
|image = [[File:Bronze legs.png]]
|release = Q3 [[2024]]
|episode = Unknown
|profession = Combat
|value = 50
}}
'''Bronze legs'''<ref>https://brightershores.com/screenshots/09_himatik_ruins.jpg</ref>.
==References==
{{Reflist}}
[[Category:Items]]
[[Category:Equipment]]
09f18d66c53d34d13c7be5d9cc846e50f5ec77b1
1797
1784
2024-04-06T02:42:35Z
Gau Cho
5
wikitext
text/x-wiki
{{Unofficial name}}
{{Infobox Item
|name = Bronze legs
|image = [[File:Bronze legs.png]]
|release = Q3 [[2024]]
|episode = Unknown
|profession = Combat
|value = 50
}}
'''Bronze legs'''<ref>https://brightershores.com/screenshots/09_himatik_ruins.jpg</ref>.
==References==
{{Reflist}}
[[Category:Equipment]]
42299ef249edcb51fdc00dd289e73c0571e0688a
Shield
0
755
1785
1417
2024-04-06T02:40:20Z
Gau Cho
5
wikitext
text/x-wiki
{{Unofficial name}}
{{Infobox Item
|name = Shield
|image = [[File:Shield.png]]
|release = Q3 [[2024]]
|episode = Hopeport
|profession = Combat
|value = 50
}}
'''Shield'''<ref>https://brightershores.com/screenshots/09_himatik_ruins.jpg</ref>.
==References==
{{Reflist}}
[[Category:Items]]
[[Category:Equipment]]
c366700f1c47435d10d85109842a2f7e4b3e12d2
1790
1785
2024-04-06T02:41:56Z
Gau Cho
5
wikitext
text/x-wiki
{{Unofficial name}}
{{Infobox Item
|name = Shield
|image = [[File:Shield.png]]
|release = Q3 [[2024]]
|episode = Hopeport
|profession = Combat
|value = 50
}}
'''Shield'''<ref>https://brightershores.com/screenshots/09_himatik_ruins.jpg</ref>.
==References==
{{Reflist}}
[[Category:Equipment]]
22bfc3c6cf3d281a1771de74991b8d41c8a32d74
Steel legs
0
756
1786
1446
2024-04-06T02:40:33Z
Gau Cho
5
wikitext
text/x-wiki
{{Unofficial name}}
{{Infobox Item
|name = Steel legs
|image = [[File:Steel legs.png]]
|premium = Yes
|release = Q3 [[2024]]
|episode = Mine of Mantuban
|profession = Combat
|value = 200
}}
'''Steel legs'''<ref>https://brightershores.com/screenshots/09_himatik_ruins.jpg</ref>.
==References==
{{Reflist}}
[[Category:Items]]
[[Category:Equipment]]
39a43ddbe655220347dce5814ca9434dd30b01ed
1798
1786
2024-04-06T02:42:40Z
Gau Cho
5
wikitext
text/x-wiki
{{Unofficial name}}
{{Infobox Item
|name = Steel legs
|image = [[File:Steel legs.png]]
|premium = Yes
|release = Q3 [[2024]]
|episode = Mine of Mantuban
|profession = Combat
|value = 200
}}
'''Steel legs'''<ref>https://brightershores.com/screenshots/09_himatik_ruins.jpg</ref>.
==References==
{{Reflist}}
[[Category:Equipment]]
e87f9e6745b7a86c775207f9594cdae1892b1bf2
Skeleton platebody
0
757
1787
1451
2024-04-06T02:40:57Z
Gau Cho
5
wikitext
text/x-wiki
{{Unofficial name}}
{{Infobox Item
|name = Skeleton platebody
|image = [[File:Skeleton platebody.png]]
|premium = Yes
|release = Q3 [[2024]]
|episode = Mine of Mantuban
|profession = Combat
|value = 100
}}
'''Skeleton platebody'''<ref>https://brightershores.com/screenshots/09_himatik_ruins.jpg</ref>.
==References==
{{Reflist}}
[[Category:Items]]
[[Category:Equipment]]
630b8f33249a9876004e606351a789840d7bc480
1788
1787
2024-04-06T02:41:44Z
Gau Cho
5
wikitext
text/x-wiki
{{Unofficial name}}
{{Infobox Item
|name = Skeleton platebody
|image = [[File:Skeleton platebody.png]]
|premium = Yes
|release = Q3 [[2024]]
|episode = Mine of Mantuban
|profession = Combat
|value = 100
}}
'''Skeleton platebody'''<ref>https://brightershores.com/screenshots/09_himatik_ruins.jpg</ref>.
==References==
{{Reflist}}
[[Category:Equipment]]
7ce97053dbb13c92e71ec7e44943783ba42fd55d
Coins
0
441
1791
1195
2024-04-06T02:42:05Z
Gau Cho
5
wikitext
text/x-wiki
'''Coins''' are the currency of [[Brighter Shores]]. They come in three types:
{| class="wikitable"
! colspan="2" | Coin
! Worth in<br />copper coins
|-
| [[File:Copper coin.png|18px]]
| Copper coin
| 1
|-
| [[File:Silver coin.png|18px]]
| Silver coin
| 1,000
|-
| [[File:Gold coin.png|18px]]
| Gold coin
| 1,000,000
|}
The three types are not separate currencies; there are 1,000 copper coins to a silver coin, and 1,000 silver coins to a gold coin.{{CiteTwitter|url=https://twitter.com/AndrewCGower/status/1771788649589289317|author=Andrew Gower|date=24 March 2024|accessdate=24 March 2024|archiveurl=https://archive.is/UBk1j|archivedate=24 March 2024|quote=there isnt multiple currencies. There is 1000 copper to a silver, and 1000 silver to a gold.}}
==References==
{{Reflist}}
0b8fff85013c8bb147d5053af03725b5d3aaa4ff
Property:Premium
302
830
1799
2024-04-06T02:43:55Z
Gau Cho
5
Created page with "{{property|type=boolean}}"
wikitext
text/x-wiki
{{property|type=boolean}}
2cbc30543419a0b2c67e3e032254ec8eba536499
Property:Episode
302
831
1800
2024-04-06T02:47:54Z
Gau Cho
5
Created page with "{{property|type=keyword}}"
wikitext
text/x-wiki
{{property|type=keyword}}
415a0d2460c878ff3c7adb1a82f22b8efa501761
Module:Infobox Item/doc
828
832
1801
2024-04-06T02:50:29Z
Gau Cho
5
Created page with "{{No documentation}}"
wikitext
text/x-wiki
{{No documentation}}
ad36a615c98d03e22b03ecaa7b9d7d87b5d7b517
MediaWiki:Minerva.less/infobox.less
8
418
1802
1705
2024-04-06T02:53:17Z
Gau Cho
5
Remove some unused classes
less
less
/* ====================
infoboxes
==================== */
@infobox-background: @BODY_LIGHT;
@infobox-header-color: @BODY_DARK;
@infobox-border-color: @BODY_BORDER;
@infobox-subheader-color: @BODY_MID;
.infobox {
font-size: 85%;
background-color: @infobox-background;
border: 1px solid @infobox-border-color;
box-shadow: @box-shadow;
table-layout: fixed;
// override minerva's mobile-friendlyness
// our infoboxes shouldn't be scrollable anyway
.content & {
display: table;
caption {
display: table-caption;
background: none; // bg in > 720px
}
}
.infobox-header {
color: @white;
font-size: 1.15em;
background: @infobox-header-color;
padding: .5em 0;
text-align: center;
}
.infobox-subheader {
background: @infobox-subheader-color;
line-height: 2em;
text-align: center;
color: @white;
a {
color: var(--link-color);
}
}
th:not(.infobox-nested):not(.infobox-subheader):not(.infobox-header) {
text-align: right;
vertical-align: top;
border-right: 2px solid @infobox-subheader-color;
padding: 0.2em 0.5em;
}
caption.infobox-caption {
text-align: center;
}
td {
padding: 0.25em 0.5em;
line-height: 1.6em;
&.infobox-nested {
padding: 0.25em 0;
line-height: 1em;
}
}
.infobox-padding {
height: 0.5em;
padding: 0;
border: 0;
}
.infobox-image {
text-align: center;
}
.infobox-nested {
text-align: center;
&+.infobox-nested {
border-left: 2px solid @infobox-subheader-color;
}
}
.infobox-cell-hidden {
display: none;
}
.infobox-full-width-content {
max-width: 300px;
text-align: center;
overflow-x: hidden;
padding: 0;
}
}
.infobox-buttons {
margin-top: 0.5em;
text-align: center;
}
// Hides advanced data. Class gets replaced by .advanced-data-display
// if the showAdvancedData gadget is enabled.
.advanced-data {
display: none;
}
@media screen and (min-width: @width-breakpoint-tablet) {
.content table.infobox {
float: right;
margin-top: 0.5em;
margin-left: 1em;
width: 300px !important; // Needed to compete with !important for .content table
&.skill-info {
float: none;
margin: 0 0 1em 0;
}
}
}
@media screen and (min-width: @width-breakpoint-tablet) {
.multi-infobox {
float: right;
margin-left: 1em;
width: 300px;
}
}
15336800bb992051f329505e5c36c64a5f6194d5
MediaWiki:Minerva.css
8
422
1803
1707
2024-04-06T02:53:27Z
Gau Cho
5
Updating CSS from [[MediaWiki:Minerva.less]]
css
text/css
/* <pre> */
body {
font-family: system-ui, -apple-system, Roboto, Helvetica, sans-serif;
}
@media all and (max-width: 320px) {
body {
font-size: 0.9em;
}
}
.content {
line-height: 1.7;
}
.pre-content h1,
.content h1,
.content h2 {
font-weight: bold;
}
body {
background: var(--body-background-color);
color: var(--text-color);
}
select {
color: var(--text-color);
}
a:not( [ href ] ) {
color: inherit;
}
a.external,
.mw-parser-output a.external {
background-image: var(--external-icon);
}
blockquote {
border-color: var(--body-mid);
font-family: inherit;
}
.pre-content h1 {
text-align: center;
}
.mw-parser-output h2:first-of-type {
clear: both;
}
.content .mw-parser-output > h2,
.content .section-heading {
border-color: var(--sidebar);
}
.content .mw-parser-output > h2,
.content .section-heading {
border-color: var(--sidebar);
}
.content .plainlist ol,
.content .plainlist ul {
padding: 0;
}
.content p {
margin: 0.5em 0;
}
.content hr {
background: none;
border-color: var(--sidebar);
border-style: solid;
border-width: 1px 0 0 0;
height: initial;
}
.content kbd,
.content samp {
border: none;
}
.content code,
.content pre {
background-color: var(--mw-code-background-color);
border: 1px solid var(--body-border);
}
:root {
--searchbutton-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 20 20'%3E%3Cg fill='%23000'%3E%3Cpath d='M12.2 13.6a7 7 0 1 1 1.4-1.4l5.4 5.4-1.4 1.4-5.4-5.4zM3 8a5 5 0 1 0 10 0A5 5 0 1 0 3 8z'/%3E%3C/g%3E%3C/svg%3E");
--external-icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' encoding='UTF-8'%3F%3E%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='10' viewBox='0 0 10 10'%3E%3Cg fill='%23906039'%3E%3Cpath d='M8.9 8.9H1.1V1.1h2.8V0H1.1C.5 0 0 .5 0 1.1v7.8C0 9.5.5 10 1.1 10h7.8c.6 0 1.1-.5 1.1-1.1V6.1H8.9v2.8z'/%3E%3Cpath d='M10 0H5.6l1.8 1.8L4.2 5l.8.8 3.2-3.2L10 4.4V0z'/%3E%3C/g%3E%3C/svg%3E");
}
#mw-mf-page-center {
background-color: transparent;
}
.header {
border-top: none;
}
.header-container.header-chrome {
background: var(--body-background-image) var(--body-background-color) no-repeat;
background-color: var(--body-background-color);
background-size: 900px;
box-shadow: inset 0 -1px 3px rgba(0, 0, 0, 0.1);
}
.header-container .notification-count {
border-radius: 50%;
}
.header-container .notification-count.notification-unseen {
background: none;
}
.header-container .branding-box {
opacity: 1;
}
.search-box {
text-align: right;
}
.search-box .search {
background-color: var(--search-box);
border-color: var(--search-box);
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
}
.search-box .search::placeholder {
color: var(--byline-color);
}
.client-nojs .search-box .search:focus,
.search-overlay .search-box .search:focus {
border-color: var(--link-color);
box-shadow: inset 0 0 0 1px var(--link-color), 0 1px 1px rgba(0, 0, 0, 0.05);
}
.mw-ui-background-icon-search {
background-image: var(--searchbutton-icon);
}
.overlay {
background: var(--body-main);
}
.overlay textarea {
color: var(--text-color);
}
.overlay.search-overlay {
background: var(--body-main);
}
.overlay.search-overlay .results,
.overlay.search-overlay .search-feedback {
background-color: var(--body-light);
}
.overlay.search-overlay .search-content {
border-color: var(--body-mid);
}
.overlay .license {
color: var(--base-text-color);
}
.overlay .panel {
border-color: var(--sidebar);
}
.overlay .content-header {
background-color: var(--body-light);
border-color: transparent;
}
.overlay.overlay-loading {
background: var(--ooui-window-background);
}
.overlay .overlay-content {
background: var(--body-main);
}
.page-summary h2,
.page-summary h3 {
color: var(--text-color);
}
.page-list li,
.topic-title-list li,
.site-link-list li {
border-color: var(--body-mid);
}
.overlay-enabled .overlay:not(.editor-overlay),
.overlay-enabled #mw-mf-page-center {
overflow-y: scroll;
}
.overlay-header-container,
.overlay-footer-container {
background-color: var(--body-background-color);
border-color: transparent;
}
.editor-overlay .wikitext-editor {
color: var(--text-color);
}
.editor-overlay .overlay-header {
outline-color: transparent;
}
.editor-overlay .summary-request {
color: var(--text-color);
}
.editor-overlay .editor-switcher {
border: none;
}
.action-submit .mw-editnotice .action-edit .mw-editnotice,
.action-submit .mw-editTools,
.action-edit .mw-editTools,
.action-submit .preview-limit-report-wrapper,
.action-edit .preview-limit-report-wrapper,
.action-submit .diff-otitle,
.action-edit .diff-otitle,
.action-submit .diff-ntitle,
.action-edit .diff-ntitle,
.action-submit #section_0,
.action-edit #section_0,
.action-submit #editpage-copywarn,
.action-edit #editpage-copywarn,
.action-submit #mw-anon-edit-warning,
.action-edit #mw-anon-edit-warning {
color: var(--byline-color);
}
.wikitext-editor {
background-color: var(--body-main);
}
.ve-mobile-fakeToolbar {
border: none;
}
.ve-mobile-fakeToolbar-container {
background: var(--body-background-color);
border: none;
}
.ve-mobile-fakeToolbar .mw-ui-icon-mf-spinner {
border-color: transparent;
}
.ve-ui-targetToolbar-mobile .oo-ui-toolbar-tools > .ve-ui-toolbar-group-back {
border-color: transparent;
}
.ve-ui-mobileContext {
background-color: var(--body-light);
border-color: var(--body-light);
}
.ve-ui-mobileContext .ve-ui-linearContextItem-body-action-wrapper {
border-color: var(--body-border);
}
.ve-ui-linearContextItem-foot:not(:empty) {
border-color: var(--body-border);
}
.ve-ui-mwSaveDialog-options {
backgroubd-color: var(--body-light);
border-color: var(--body-mid);
}
.page-actions-menu {
border-color: var(--sidebar);
}
#language-selector {
display: none;
}
.minerva__tab-container .minerva__tab {
color: var(--text-color);
}
.minerva__tab-container .minerva__tab.new,
.minerva__tab-container .minerva__tab.new:visited,
.minerva__tab-container .minerva__tab.new:hover,
.minerva__tab-container .minerva__tab.new:active {
color: var(--redlink-color);
}
.minerva__tab-container .minerva__tab.selected {
border-color: var(--body-border);
}
.heading-holder .tagline {
color: var(--base-heading-color);
}
.minerva-footer {
border-color: transparent;
}
.mw-footer > .post-content {
margin-top: 32px;
}
.mw-footer > .post-content > .minerva-footer-logo {
display: none;
}
.mw-footer .hlist li:after {
color: var(--background-text-color);
}
.last-modified-bar {
border-top: 1px solid;
border-color: transparent;
background: none;
color: var(--text-color);
}
.last-modified-bar a,
.last-modified-bar a:active,
.last-modified-bar a:visited,
.last-modified-bar .last-modified-text-accent {
color: var(--background-text-color);
}
.last-modified-bar.active,
.last-modified-bar.active:active,
.last-modified-bar.active:visited,
.last-modified-bar.active .last-modified-text-accent {
color: #fff;
}
.mw-ui-icon-mf-expand-gray:not(.mw-ui-icon-mf-expand-invert):before {
background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 20 20'%3E%3Ctitle%3Eexpand%3C/title%3E%3Cg fill='%2354595d'%3E%3Cpath d='M17.5 4.75l-7.5 7.5-7.5-7.5L1 6.25l9 9 9-9z'/%3E%3C/g%3E%3C/svg%3E");
}
.toggle-list__list {
background-color: var(--wikitable-bg);
}
.toggle-list-item__anchor:visited,
.toggle-list-item__anchor:active {
color: var(--base-text-color);
}
.toggle-list-item:hover {
background: var(--wikitable-bg-lighter);
}
.toggle-list-item__label {
color: var(--base-text-color);
}
.mw-ui-icon-wikimedia-search-base20:before {
background-image: url("data:image/svg+xml,%3C%3Fxml version='1.0' encoding='UTF-8'%3F%3E%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 20 20'%3E%3Ctitle%3Esearch%3C/title%3E%3Cg fill='white'%3E%3Cpath fill-rule='evenodd' d='M12.2 13.6a7 7 0 111.4-1.4l5.4 5.4-1.4 1.4-5.4-5.4zM13 8A5 5 0 113 8a5 5 0 0110 0z'/%3E%3C/g%3E%3C/svg%3E%0A");
}
.mw-ui-icon-wikimedia-menu-base20:before {
background-image: url("data:image/svg+xml,%3C%3Fxml version='1.0' encoding='UTF-8'%3F%3E%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 20 20'%3E%3Ctitle%3Emenu%3C/title%3E%3Cg fill='white'%3E%3Cpath d='M1 3v2h18V3zm0 8h18V9H1zm0 6h18v-2H1z'/%3E%3C/g%3E%3C/svg%3E%0A");
}
.mw-ui-icon-wikimedia-bellOutline-base20:before {
background-image: url("data:image/svg+xml,%3C%3Fxml version='1.0' encoding='UTF-8'%3F%3E%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 20 20'%3E%3Ctitle%3Ebell%3C/title%3E%3Cg fill='white'%3E%3Cpath d='M11.5 2.19C14.09 2.86 16 5.2 16 8v6l2 2v1H2v-1l2-2V8c0-2.8 1.91-5.14 4.5-5.81V1.5C8.5.67 9.17 0 10 0s1.5.67 1.5 1.5v.69zM10 4C7.79 4 6 5.79 6 8v7h8V8c0-2.21-1.79-4-4-4zM8 18h4c0 1.1-.9 2-2 2s-2-.9-2-2z'/%3E%3C/g%3E%3C/svg%3E%0A");
}
.mw-ui-icon-minerva-userAvatarOutline:before {
background-image: url("data:image/svg+xml,%3C%3Fxml version='1.0' encoding='UTF-8'%3F%3E%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 20 20'%3E%3Ctitle%3Euser avatar%3C/title%3E%3Cg fill='white'%3E%3Cpath d='M10 8c1.7 0 3.06-1.35 3.06-3S11.7 2 10 2 6.94 3.35 6.94 5 8.3 8 10 8zm0 2c-2.8 0-5.06-2.24-5.06-5S7.2 0 10 0s5.06 2.24 5.06 5-2.26 5-5.06 5zm-7 8h14v-1.33c0-1.75-2.31-3.56-7-3.56s-7 1.81-7 3.56V18zm7-6.89c6.66 0 9 3.33 9 5.56V20H1v-3.33c0-2.23 2.34-5.56 9-5.56z'/%3E%3C/g%3E%3C/svg%3E%0A");
}
@media all and (min-width: 1000px) {
.mw-ui-icon-with-label-desktop,
.mw-ui-icon-with-label-desktop:hover,
.mw-ui-icon-with-label-desktop:focus,
.mw-ui-icon-with-label-desktop:active,
.mw-ui-icon-with-label-desktop:visited {
color: var(--base-text-color) !important;
}
}
.header-action .mw-ui-icon-mf-close-base20:before {
background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 20 20'%3E%3Ctitle%3Eclose%3C/title%3E%3Cg fill='%23fff'%3E%3Cpath d='m4.3 2.9 12.8 12.8-1.4 1.4L2.9 4.3z'/%3E%3Cpath d='M17.1 4.3 4.3 17.1l-1.4-1.4L15.7 2.9z'/%3E%3C/g%3E%3C/svg%3E");
}
#mw-mf-page-left {
background-color: var(--body-background-color);
}
#mw-mf-page-left .secondary-action {
border-left-color: var(--body-mid);
}
#mw-mf-page-left ul li {
background-color: var(--body-main);
border-color: var(--body-mid);
}
#mw-mf-page-left ul li a {
color: var(--base-text-color);
}
#mw-mf-page-left ul li a:hover {
box-shadow: inset 4px 0 0 0 var(--link-color);
}
#mw-mf-page-left ul.hlist li a {
color: var(--background-link-color);
}
#mw-mf-page-left ul.hlist li a span {
font-size: 0.8125rem;
}
.notifications-overlay.navigation-drawer {
box-shadow: -1px 0 8px 0 rgba(0, 0, 0, 0.35);
}
.notifications-overlay .mw-echo-ui-actionMenuPopupWidget-menu {
border: none;
}
.mw-ui-anchor.mw-ui-progressive,
.mw-ui-anchor.mw-ui-progressive:active,
.mw-ui-anchor.mw-ui-progressive:hover,
.mw-ui-anchor.mw-ui-progressive:focus {
color: var(--link-color);
}
.minerva-talk-full-page-button {
background-color: var(--body-main);
border-color: var(--body-dark);
color: var(--link-color);
}
.minerva-talk-content-explained {
border-color: var(--sidebar);
color: var(--base-text-color);
}
.talk-overlay .comment .wikitext-editor {
border-color: var(--body-border);
}
.client-js .skin-minerva--talk-simplified .section-heading {
border-color: var(--sidebar);
}
.mw-notification a,
.toast a {
color: var(--link-color);
}
.drawer {
background-color: var(--body-light);
}
.drawer.references-drawer {
background-color: var(--body-light);
color: var(--text-color);
}
.drawer.references-drawer a {
color: var(--link-color);
}
.drawer.references-drawer .references-drawer__title {
color: var(--text-color);
}
.drawer.references-drawer .mw-ui-icon::before {
filter: brightness(0);
}
.cta-holder {
background: var(--body-light);
}
.cta-holder .desc {
color: var(--byline-color);
}
.mw-tag-marker {
border-color: var(--body-border);
}
.oo-ui-toolGroup {
background: var(--body-background-color);
}
.load-fail-msg {
color: var(--text-color);
}
.load-fail-msg-link a {
color: var(--link-color);
}
.image-carousel .image-loaded {
background: url("data:image/svg+xml,%3C%3Fxml version='1.0' encoding='UTF-8'%3F%3E%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16'%3E%3Cpath d='M0 0h8v16h8V8H0z' opacity='.13'/%3E%3C/svg%3E%0A") repeat;
}
.image-details {
background-color: var(--body-light);
border-color: transparent;
}
@media all and (min-width: 720px) {
.ns-special .pre-content {
background-color: transparent;
}
.ns-special .mw-body {
background: var(--body-main);
}
.ns-special .mw-body form {
background: transparent;
}
}
form.mw-mf-settings .oo-ui-fieldLayout,
form.mw-mf-settings .oo-ui-fieldLayout:first-child {
border-color: var(--body-mid);
}
.ns-special .content-header {
border-bottom-color: var(--body-dark);
}
.action-history .mw-history-compareselectedversions {
background-color: var(--body-main);
}
.action-history #pagehistory li:not(.selected) {
border-bottom-color: var(--sidebar);
}
ul.mw-contributions-list li,
ul.special li {
border-color: var(--sidebar);
}
.page-list li > a:not(.mw-ui-icon-element),
.topic-title-list li > a:not(.mw-ui-icon-element),
.site-link-list li > a:not(.mw-ui-icon-element) {
color: var(--byline-color);
}
.page-list.side-list .list-thumb,
.topic-title-list.side-list .list-thumb,
.site-link-list.side-list .list-thumb {
color: var(--text-color);
}
.page-list .info,
.topic-title-list .info,
.site-link-list .info,
.page-list .component,
.topic-title-list .component,
.site-link-list .component {
color: var(--byline-color);
}
.mw-mf-user {
color: var(--text-color);
}
.content .mw-index-pager-list-header {
background-color: var(--body-mid);
color: inherit;
font-family: inherit;
}
.diff-editfont-monospace {
font-family: monospace,monospace;
}
:root {
--diff-deletedline-background: #fbc0ba;
}
.minoredit {
background: var(--body-mid);
}
#mw-mf-diffview .mw-mf-diff-date {
color: var(--byline-color);
}
#mw-mf-diffview .mw-diff-inline-deleted del,
#mw-mf-diffview .mw-diff-inline-changed del {
background: var(--diff-deletedline-background);
color: var(--diff-deletedline-color);
border-radius: 0.33em;
}
#mw-mf-diffview .mw-diff-inline-added ins,
#mw-mf-diffview .mw-diff-inline-changed ins {
background: var(--diff-addedline-background);
color: var(--diff-addedline-color);
border-radius: 0.33em;
}
#mw-mf-diffview .mw-diff-inline-moved {
background: var(--diff-context-background);
}
#mw-mf-diffview #mw-mf-userinfo {
background: var(--body-light);
border-top-color: var(--body-border);
}
#mw-mf-diffview #mw-mf-userinfo .mw-mf-edit-count {
color: var(--text-color);
}
#mw-mf-diffview #mw-mf-userinfo .mw-mf-edit-count div {
color: var(--base-text-color);
}
.infobox {
font-size: 85%;
background-color: var(--body-light);
border: 1px solid var(--body-border);
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
table-layout: fixed;
}
.content .infobox {
display: table;
}
.content .infobox caption {
display: table-caption;
background: none;
}
.infobox .infobox-header {
color: #fff;
font-size: 1.15em;
background: var(--body-dark);
padding: 0.5em 0;
text-align: center;
}
.infobox .infobox-subheader {
background: var(--body-mid);
line-height: 2em;
text-align: center;
color: #fff;
}
.infobox .infobox-subheader a {
color: var(--link-color);
}
.infobox th:not(.infobox-nested):not(.infobox-subheader):not(.infobox-header) {
text-align: right;
vertical-align: top;
border-right: 2px solid var(--body-mid);
padding: 0.2em 0.5em;
}
.infobox caption.infobox-caption {
text-align: center;
}
.infobox td {
padding: 0.25em 0.5em;
line-height: 1.6em;
}
.infobox td.infobox-nested {
padding: 0.25em 0;
line-height: 1em;
}
.infobox .infobox-padding {
height: 0.5em;
padding: 0;
border: 0;
}
.infobox .infobox-image {
text-align: center;
}
.infobox .infobox-nested {
text-align: center;
}
.infobox .infobox-nested + .infobox-nested {
border-left: 2px solid var(--body-mid);
}
.infobox .infobox-cell-hidden {
display: none;
}
.infobox .infobox-full-width-content {
max-width: 300px;
text-align: center;
overflow-x: hidden;
padding: 0;
}
.infobox-buttons {
margin-top: 0.5em;
text-align: center;
}
.advanced-data {
display: none;
}
@media screen and (min-width: 720px) {
.content table.infobox {
float: right;
margin-top: 0.5em;
margin-left: 1em;
width: 300px !important;
}
.content table.infobox.skill-info {
float: none;
margin: 0 0 1em 0;
}
}
@media screen and (min-width: 720px) {
.multi-infobox {
float: right;
margin-left: 1em;
width: 300px;
}
}
.tile {
padding: 1.5em 2em 1em;
}
.tile h2 {
font-weight: 600;
border: none;
margin-top: 0.4em;
}
.tile .byline + h2 {
margin-top: -0.5em;
}
.tile-row {
background: var(--body-light) !important;
border: 1px solid var(--body-border);
}
.tile-top {
padding: 1.3rem 1.5rem 2rem;
}
.tile-bottom {
padding: 1rem 1.5rem 2rem;
}
.tile-bottom.read-more {
padding: 0;
}
.tile-bottom.read-more a {
padding: 1em 1.75em;
}
:root {
--mobile-navbox-wide-bg-color: #dcd3bf;
--mobile-navbox-linear-gradient: linear-gradient(to right, rgba(255, 255, 255, 0), var(--body-main) 95%, var(--body-main));
}
.navbox {
border: 1px solid var(--body-border);
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
font-size: 0.85em;
}
.content .navbox ul {
padding-left: 0;
}
.content .navbox ul li {
margin-bottom: 0;
}
@media screen and (max-width: 719px) {
.navbox td,
.navbox th,
.navbox tr,
.navbox tbody,
.navbox .navbox-subgroup {
display: block;
}
}
@media screen and (min-width: 720px) {
.content table.navbox,
.content .navbox table {
width: 100% !important;
}
}
.navbox .navbox-subgroup {
margin: 0;
}
.navbox .navbar {
display: none;
}
.navbox .plink-template,
.navbox img {
display: none;
}
.navbox-title {
color: var(--text-color);
background-color: var(--body-dark);
font-size: 140%;
text-align: center;
padding: 0.25em 0.85em;
}
@media screen and (min-width: 720px) {
.navbox-title {
border-bottom: 1px solid var(--body-border);
}
}
.navbox-group-title {
background-color: var(--body-mid);
text-align: left;
padding: 0.2em 0.85em;
}
@media screen and (max-width: 719px) {
.navbox-group-title {
overflow: hidden;
white-space: nowrap;
text-overflow: ellipsis;
}
}
@media screen and (min-width: 720px) {
.navbox-group-title {
border: 1px solid var(--body-border);
border-width: 0 1px 1px 0;
width: 12vw;
}
}
.navbox-group-title-hidden {
display: none;
}
.navbox-list {
padding: 0;
position: relative;
}
@media screen and (min-width: 720px) {
.navbox-list {
border-bottom: 1px solid var(--body-border);
}
}
.navbox-list ul {
display: flex;
}
@media screen and (max-width: 719px) {
.navbox-list ul {
white-space: nowrap;
overflow-x: auto;
overflow-y: hidden;
-webkit-overflow-scrolling: touch;
}
}
@media screen and (min-width: 720px) {
.navbox-list ul {
padding: 0.2em 0.85em 0.5em !important;
flex-wrap: wrap;
}
}
@media screen and (min-width: 720px) {
.navbox-list[style*="center"] ul {
justify-content: center;
}
}
.navbox-list li {
display: inline-flex;
align-items: center;
height: 3.5em;
margin: 0 0 0 0.85em;
}
@media screen and (min-width: 720px) {
.navbox-list li {
height: 2.1em;
}
.navbox-list li:first-child {
margin-left: 0;
}
}
.navbox-list li + li::before {
content: '•';
display: inline-block;
white-space: pre-wrap;
position: relative;
left: -0.425em;
color: var(--text-color);
pointer-events: none;
}
.navbox-list li + li > a + a::before {
display: none;
}
.navbox-list li:last-child {
margin-right: 2em;
}
.navbox-list::after {
content: '';
display: block;
position: absolute;
background-image: var(--mobile-navbox-linear-gradient);
height: 100%;
width: 2.5em;
top: 0;
right: 0;
pointer-events: none;
}
@media screen and (min-width: 720px) {
.navbox-list::after {
display: none;
}
}
.navbox-list.navbox-parent {
border-bottom: 0;
padding: 0;
}
.navbox-list.navbox-parent::after {
display: none;
}
.navbox-group .navbox-group .navbox-group-title {
background-color: var(--body-light);
padding: 0 0.85em 0 1.7em;
}
@media screen and (min-width: 720px) {
.navbox-group .navbox-group .navbox-group-title {
padding-left: 0.85em;
}
}
.navbox-group .navbox-group .navbox-list ul {
padding-left: 1.7em;
}
.navbox-group .navbox-group .navbox-list li {
margin-bottom: 0;
}
.navbox-group .navbox-group .navbox-list li:first-child {
margin-left: 0;
}
.navbox-group .navbox-group.navbox-group-split .navbox-list ul {
padding-left: 0.85em;
}
.navbox-group .navbox-group .navbox-group:first-child .navbox-group-title {
padding-top: 0.5em;
}
@media screen and (min-width: 720px) {
.navbox-group .navbox-group .navbox-group:first-child .navbox-group-title {
padding-top: 0;
}
}
.navbox-group .navbox-group .navbox-group .navbox-group-title {
background-color: transparent;
padding-left: 2.55em;
}
@media screen and (min-width: 720px) {
.navbox-group .navbox-group .navbox-group .navbox-group-title {
background-color: var(--mobile-navbox-wide-bg-color);
padding-left: 0.85em;
}
}
.navbox-group .navbox-group .navbox-group .navbox-list ul {
padding-left: 2.55em;
}
.navbox-group .navbox-group .navbox-group.navbox-group-split .navbox-list ul {
padding-left: 1.7em;
}
@keyframes slide-up {
from {
opacity: 0;
transform: translateY(1rem);
}
to {
opacity: 1;
transform: translateY(0);
}
}
.mainpage-header {
margin: 2em 1em 0;
}
@media only screen and (max-width: 1000px) {
.mainpage-header .header-intro h1 {
text-align: center;
font-size: 1.8em;
}
.mainpage-header .header-intro p {
font-size: 1em;
}
}
.mainpage-body .tile-row {
width: inherit;
}
.mainpage-contents.tile-row {
display: inherit;
}
.mainpage-left .tile {
padding: 2.5em 1.75em 2em;
}
.mainpage-left .tile h2 {
padding: 0;
margin: 0.65em 0.5em;
}
.mainpage-left .tile-halves h2 {
padding: 0;
margin: 0.65em 0.5em;
}
.mainpage-recent-updates {
padding: 1.5em 1em 2.5em;
}
.mainpage-recent-updates::before {
content: 'Recent updates';
display: block;
margin-left: 1.5em;
color: var(--byline-color);
font-weight: bold;
text-transform: uppercase;
letter-spacing: 0.025em;
grid-column: 1 / 4;
}
.mainpage-recent-updates .tile-halves {
display: inline-block;
width: 100%;
white-space: initial;
flex: unset;
}
.mainpage-recent-updates .tile-halves:nth-child(1) {
animation: 0.9s 0.2s both slide-up;
}
.mainpage-recent-updates .tile-halves:nth-child(2) {
animation: 0.9s 0.4s both slide-up;
}
.mainpage-recent-updates .tile-halves:nth-child(3) {
animation: 0.9s 0.6s both slide-up;
}
.mainpage-recent-updates .tile-top {
height: 9em;
overflow: hidden;
}
.mainpage-recent-updates .tile-bottom {
padding-bottom: 0.5rem;
}
.mainpage-recent-updates .byline {
margin: 0;
}
.mainpage-recent-updates .byline + h2 {
margin: 0.025em 0 0;
padding: 0;
}
@media only screen and (max-width: 720px) {
.mainpage-recent-updates::before {
text-align: center;
margin: 0;
grid-column: auto;
}
}
.mainpage-contents {
background: var(--body-mid);
padding: 55px 1em 2em 2.5em;
overflow-x: auto;
grid-template-columns: repeat(6, 1fr) !important;
position: relative;
scroll-snap-align: center;
}
.mainpage-contents::before {
content: 'Explore';
margin: 1em;
position: absolute;
top: 0;
color: inherit;
font-weight: bold;
text-transform: uppercase;
letter-spacing: 0.025em;
grid-column: 1 / 6;
}
.mainpage-contents .tile-halves {
border: none;
background: none;
box-shadow: none;
width: 200px;
}
.mainpage-contents .tile-top {
padding: 0;
height: initial;
}
.mainpage-contents .tile-bottom {
border: none;
}
.mainpage-contents h2 {
width: 100%;
}
@media only screen and (max-width: 1000px) {
.mainpage-skills .tile-top ul {
margin: 0;
}
}
.mainpage-wikinews::before {
content: 'From the wiki';
margin-left: 0.75em;
color: var(--byline-color);
font-weight: bold;
text-transform: uppercase;
letter-spacing: 0.025em;
}
.mainpage-social {
border: none;
margin-bottom: 0;
}
.mainpage-social .tile-top {
display: flex;
align-items: center;
justify-content: center;
padding: 1em 2em;
min-height: 70px;
}
.mainpage-social .tile-top .social-icon {
float: left;
margin: 0 1em 0 -1em;
width: 60px;
text-align: center;
}
.mainpage-social .tile-top .social-header {
color: #fff;
font-weight: bold;
font-size: 1.25em;
margin: 0;
}
.mainpage-social .tile-top .social-tagline {
color: rgba(255, 255, 255, 0.9);
margin: 0;
}
.mainpage-social .tile-bottom {
border: none;
padding: 1em 2em;
}
.mainpage-social .tile-bottom p {
color: var(--byline-color);
font-weight: bold;
text-transform: uppercase;
letter-spacing: 0.025em;
color: #fff;
font-size: 0.9em;
text-align: center;
margin: 0;
}
.mainpage-social.mainpage-discord .tile-top {
background: #5865f2;
}
.mainpage-social.mainpage-discord .tile-bottom {
background: #525ee0;
}
.mainpage-social.mainpage-twitter .tile-top {
background: #15202b;
}
.mainpage-social.mainpage-twitter .tile-bottom {
background: #121c26;
}
.wikitable {
background: none;
box-shadow: none;
}
.wikitable tbody {
background: var(--body-light);
}
.toc {
background-color: var(--body-light);
border-color: var(--body-border);
}
#filetoc li {
display: inline;
padding-right: 2em;
}
.mw-dismissable-notice-body {
margin: 0;
}
.mw-dismissable-notice-body .mw-dismissable-notice-close-parent {
border-radius: 0 !important;
font-size: 0.75em;
}
:root {
--thumb-image-background: var(--body-light);
--thumb-caption-background: var(--body-mid);
}
.content .thumbinner {
background-color: var(--thumb-bg);
}
.content .thumbimage {
border: 1px solid transparent;
border-bottom: none;
}
.content .thumbcaption {
margin: 0;
padding: 4px 6px !important;
color: inherit;
background: var(--thumb-caption-bg);
}
.content table.messagebox {
margin: 0.5em auto;
}
.content table a > img {
max-width: inherit !important;
height: inherit !important;
}
.content .infobox a > img {
max-width: 100% !important;
height: auto !important;
}
.content .infobox-bonuses a > img {
max-width: inherit !important;
height: inherit !important;
}
e841f71d2a143957f1ef4ae58227dda97c8b8301
Module:Param Parse/doc
828
781
1804
1752
2024-04-06T03:01:19Z
Gau Cho
5
wikitext
text/x-wiki
{{documentation}}
These params and functions are used to validate and format information passed into an Infobox. See [[Module:Infobox]] for details and instructions on creating an Infobox. If the information is missing or not valid, the functions here should return nil.
Here is a summary of all the params:
{| class="wikitable"
! param
! explanation
|-
| parse.image
| <nowiki>[[File:IMAGE.png]]</nowiki>. Use the class '''infobox-image''' in the table
|-
| parse.episode
| Episode name
|-
| parse.premium
| Premium (Yes, No, N/A)
|-
| parse.release
| TODO
|}
Here are some general use functions that can be used for custom or new params:
{| class="wikitable"
! function name
! explanation
|-
| has_content(arg)
| Returns arg if any non-whitespace character is found in the string.
|-
| number(num)
| Removes any commas and parses the string as a number
|-
| yes_no(text)
| Only accepts "Yes", "No" and "N/A"
|-
| yes_no_smw(text)
| Maps "Yes", "No" to true and false respectively
|}
== Creating New Params ==
Ideally, params should be defined here so that they can be reused between different Infoboxes. Here is how to create a new param:
<syntaxhighlight lang="lua">
parse.paramname = {
name = <param>,
func = <func>,
empty = 'empty', -- optional
category_never = 'category', -- optional
category_partial = 'category', -- optional
category_incomplete = 'category', -- optional
category_complete = 'category', -- optional
smw_property = 'Property', -- optional
smw_func = <func>, -- optional
}
</syntaxhighlight>
{| class="wikitable"
! key
! value
|-
| name
| parameter name as used in the Template
|-
| func
| A function in [[Module:Param Parse]] to validate and process the Template argument. You can also use a local function, but this is not recommended.
If func is a function, will call func(Infobox.raw_param(name)):
<syntaxhighlight lang="lua">
{name = <param>, func = <func>, ... },
</syntaxhighlight>
If func is a table, it takes the following parameters:
<syntaxhighlight lang="lua">
{name = <param>, func = { name = <func>, params = <func_params>}, ... },
</syntaxhighlight>
{| class="wikitable"
| name
| function in [[Module:Param Parse]]
|-
| params
| a list of parameters to pass the the function, in the form of constants, or Infobox.raw_param(name), Infobox.param(name), Infobox.smw_param(name)
|}
|-
| empty (optional)
| text to display in the infobox if func returns nil; defaults to "? (edit)"
|-
| category_never (optional)
| category to add if func returns nil for all versions
|-
| category_partial (optional)
| category to add if func returns nil for some versions, but a value for other versions
|-
| category_incomplete (optional)
| category to add if func returns nil for at least 1 version (i.e. category_never and category_partial combined)
|-
| category_complete (optional)
| category to add if func returns a value for all versions
|-
| smw_property (optional)
| if this string is defined, the parameter will be saved into SMW
|-
| smw_func (optional)
| function to validate and process the Template argument to save into SMW. func is used by default if smw_func is not defined
|}
dcd0c0a662a19be46f97c7c5e5d6909dcabf9f32
Module:Infobox/doc
828
504
1805
1749
2024-04-06T03:04:43Z
Gau Cho
5
wikitext
text/x-wiki
{{documentation}}
{{ToC|right}}
==Creating a template step-by-step==
===Import Module:Infobox and Module:Param Parse===
<syntaxhighlight lang="lua">
local Infobox = require('Module:Infobox')
local parse = require('Module:Param Parse')
</syntaxhighlight>
===Unpack the frame arguments from the Template===
<syntaxhighlight lang="lua">
local p = {}
function p.main(frame)
local args = frame:getParent().args
...
</syntaxhighlight>
===Setup the Module config settings===
<syntaxhighlight lang="lua">
local config = {
infobox_name = 'Scenery',
}
</syntaxhighlight>
===Map your arguments to parsing functions===
{{Main|Module:Param Parse}}
Use the params in [[Module:Param Parse]] to validate and format the data - feel free to create your own new params in [[Module:Param Parse]].
<syntaxhighlight lang="lua">
local params = {
parse.name,
parse.image,
{name = 'examine', func = parse.has_content, smw_property = 'Examine'}, -- Custom param
parse.episode,
...
}
</syntaxhighlight>
===Define an Infobox object===
{{Main|Module:Infobox#new}}
<syntaxhighlight lang="lua">
local infobox = Infobox.new(config, params, args)
</syntaxhighlight>
===Create your table===
{{Main|Module:Infobox#create}}
<syntaxhighlight lang="lua">
infobox
:add_row{
{tag='th', content=Infobox.param('name'), class='infobox-header', colspan='20'},
}
:add_row{
{tag='td', content=Infobox.param('image'), class='infobox-image', colspan='20'},
}
:pad(20)
:add_row{
{tag='td', content='Info', class='infobox-subheader', colspan='20'},
}
:pad(20)
:add_row{
{tag='th', content='Examine', colspan="6"},
{tag='td', content=Infobox.param('examine'), colspan="14"},
}
:add_row{
{tag='th', content='[[Episode]]', colspan="6"},
{tag='td', content=Infobox.param('episode'), colspan="14"},
}
...
</syntaxhighlight>
===You're done!===
<syntaxhighlight lang="lua">
return infobox
end
return p
</syntaxhighlight>
==Functions==
=== Special params ===
You don't need to do anything about these special parameters, but they may be used as parameters within the Template:
{| class="wikitable"
! param
! explanation
|-
| version1, version2, version3
| Button label and SMW name for each switch version of the infobox
|-
| default_version
| The default version to display when the page is loaded
|-
| version
| If there is only a single version, you can use version to set the SMW name (default SMW name is "DEFAULT")
|}
=== Referring to params ===
Each parameter can have a different value for each version. In addition, there are 3 different representations of each value. Therefore, a parameter must be accessed via one of the 3 helper functions:
{| class="wikitable"
! helper function
! example
! explanation
|-
| Infobox.raw_param(name)
| "1000"
| Raw value as passed by the Template
|-
| Infobox.param(name)
| "1,000"
| Value formatted for display in the Infobox
|-
| Infobox.smw_param(name)
| 1000
| Value formatted to be saved as an SMW property
|}
=== Infobox.new(config, params, args) ===
Creates a new infobox. Automatically parses the arguments, creates SMW subobjects and adds categories.
<syntaxhighlight lang="lua">
local infobox = Infobox.new(config, params, args)
</syntaxhighlight>
==== config ====
There are only 2 parameters for config
<syntaxhighlight lang="lua">
local config = {
infobox_name = 'Scenery', -- mandatory unique identifier for css
max_buttons = 6, -- optional, defaults to 6, max number of switch buttons before using a dropdown list instead
}
</syntaxhighlight>
==== params ====
A list of parameters to be processed by the Infobox module
<syntaxhighlight lang="lua">
local params = {
{ name = <param>, func = <func>, ... },
...
}
</syntaxhighlight>
{| class="wikitable"
! key
! value
|-
| name
| parameter name as used in the Template
|-
| func
| A function in [[Module:Param Parse]] to validate and process the Template argument. You can also use a local function, but this is not recommended.
If func is a function, will call func(Infobox.raw_param(name)):
<syntaxhighlight lang="lua">
{name = <param>, func = <func>, ... },
</syntaxhighlight>
If func is a table, it takes the following parameters:
<syntaxhighlight lang="lua">
{name = <param>, func = { name = <func>, params = <func_params>}, ... },
</syntaxhighlight>
{| class="wikitable"
| name
| function in [[Module:Param Parse]]
|-
| params
| a list of parameters to pass the the function, in the form of constants, or Infobox.raw_param(name), Infobox.param(name), Infobox.smw_param(name)
|}
|-
| empty (optional)
| text to display in the infobox if func returns nil; defaults to "? (edit)"
|-
| category_never (optional)
| category to add if func returns nil for all versions
|-
| category_partial (optional)
| category to add if func returns nil for some versions, but a value for other versions
|-
| category_incomplete (optional)
| category to add if func returns nil for at least 1 version (i.e. category_never and category_partial combined)
|-
| category_complete (optional)
| category to add if func returns a value for all versions
|-
| smw_property (optional)
| if this string is defined, the parameter will be saved into SMW
|-
| smw_func (optional)
| function to validate and process the Template argument to save into SMW. func is used by default if smw_func is not defined
|}
==== args ====
Arguments passed via the Template
<syntaxhighlight lang="lua">
local args = frame:getParent().args
</syntaxhighlight>
=== infobox:is_param_defined(param) ===
Used to conditionally display a line in the infobox
<syntaxhighlight lang="lua">
infobox:add_row{
{tag='th', content=Infobox.param('name'), class='infobox.subheader', colspan='2'},
}
if infobox:is_param_defined(Infobox.param('owner')) > 0 then
infobox:add_row{
{tag='td', content='[[Owner]]'},
{tag='td', content=Infobox.param('owner')},
}
end
</syntaxhighlight>
{| class="wikitable"
| param
| a parameter referenced via Infobox.raw_param(name), Infobox.param(name) or Infobox.smw_param(name)
|-
| Returns
| 0 if param is never defined
1 if param is defined for a fraction of the versions
2 if param is defined for all versions
|}
=== Infobox:add_row(...) ===
Adds a row to the infobox table. Parameter should be a table of cells:
<syntaxhighlight lang="lua">
infobox:add_row{
{tag='td', content='[[Cell1]]', ...},
{tag='td', content=Infobox.param('param'), ...},
{tag='td', content='[[Cell3]]', ...},
...
addClass = 'row-class'
}
</syntaxhighlight>
Each cell should have a set of key-values, of which only the tag and content are mandatory:
{| class="wikitable"
! key
! value
|-
| tag
| 'td' or 'th'
|-
| content
| a string or Infobox.param(name), Infobox.raw_param(name), Infobox.smw_param(name)
|-
| attr (optional)
| a table of attributes to add to the cell
mw.html:attr({ arg1 = '1', ... })
|-
| css (optional)
| a table of css to add to the cell
mw.html:css({ arg1 = '1', ... })
|-
| class (optional)
| a string with a class to add, or a table of classes to add. '''infobox-header''', '''infobox-subheader''' and '''infobox-image''' are commonly used.
mw.html:addClass(...)
|-
| rowspan (optional)
| Set the cell rowspan
mw.html:attr('rowspan',arg)
|-
| rowspan (optional)
| Set the cell colspan
mw.html:attr('colspan',arg)
|-
| title (optional)
| Set the cell title
mw.html:attr('title',arg)
|}
=== Infobox:pad(colspan, class) ===
Adds a blank row of padding spanning the given number of columns. Will always add the class '''infobox-padding''', but can optionally add another class:
<syntaxhighlight lang="lua">
infobox:pad("10", class=<class>)
</syntaxhighlight>
=== Infobox:addClass(class) ===
Adds a class to the entire table
<syntaxhighlight lang="lua">
infobox:addClass(class)
</syntaxhighlight>
c4781a7f54ea1eb1d365ad6f51b29885368ae8c3
1806
1805
2024-04-06T03:05:03Z
Gau Cho
5
wikitext
text/x-wiki
{{documentation}}
{{ToC|right}}
==Creating a template step-by-step==
===Import Module:Infobox and Module:Param Parse===
<syntaxhighlight lang="lua">
local Infobox = require('Module:Infobox')
local parse = require('Module:Param Parse')
</syntaxhighlight>
===Unpack the frame arguments from the Template===
<syntaxhighlight lang="lua">
local p = {}
function p.main(frame)
local args = frame:getParent().args
...
</syntaxhighlight>
===Setup the Module config settings===
<syntaxhighlight lang="lua">
local config = {
infobox_name = 'Scenery',
}
</syntaxhighlight>
===Map your arguments to parsing functions===
{{Main|Module:Param Parse}}
Use the params in [[Module:Param Parse]] to validate and format the data - feel free to create your own new params in [[Module:Param Parse]].
<syntaxhighlight lang="lua">
local params = {
parse.name,
parse.image,
{name = 'examine', func = parse.has_content, smw_property = 'Examine'}, -- Custom param
parse.episode,
...
}
</syntaxhighlight>
===Define an Infobox object===
{{Main|Module:Infobox#new}}
<syntaxhighlight lang="lua">
local infobox = Infobox.new(config, params, args)
</syntaxhighlight>
===Create your table===
{{Main|Module:Infobox#create}}
<syntaxhighlight lang="lua">
infobox
:add_row{
{tag='th', content=Infobox.param('name'), class='infobox-header', colspan='20'},
}
:add_row{
{tag='td', content=Infobox.param('image'), class='infobox-image', colspan='20'},
}
:pad("20")
:add_row{
{tag='td', content='Info', class='infobox-subheader', colspan='20'},
}
:pad("20")
:add_row{
{tag='th', content='Examine', colspan="6"},
{tag='td', content=Infobox.param('examine'), colspan="14"},
}
:add_row{
{tag='th', content='[[Episode]]', colspan="6"},
{tag='td', content=Infobox.param('episode'), colspan="14"},
}
...
</syntaxhighlight>
===You're done!===
<syntaxhighlight lang="lua">
return infobox
end
return p
</syntaxhighlight>
==Functions==
=== Special params ===
You don't need to do anything about these special parameters, but they may be used as parameters within the Template:
{| class="wikitable"
! param
! explanation
|-
| version1, version2, version3
| Button label and SMW name for each switch version of the infobox
|-
| default_version
| The default version to display when the page is loaded
|-
| version
| If there is only a single version, you can use version to set the SMW name (default SMW name is "DEFAULT")
|}
=== Referring to params ===
Each parameter can have a different value for each version. In addition, there are 3 different representations of each value. Therefore, a parameter must be accessed via one of the 3 helper functions:
{| class="wikitable"
! helper function
! example
! explanation
|-
| Infobox.raw_param(name)
| "1000"
| Raw value as passed by the Template
|-
| Infobox.param(name)
| "1,000"
| Value formatted for display in the Infobox
|-
| Infobox.smw_param(name)
| 1000
| Value formatted to be saved as an SMW property
|}
=== Infobox.new(config, params, args) ===
Creates a new infobox. Automatically parses the arguments, creates SMW subobjects and adds categories.
<syntaxhighlight lang="lua">
local infobox = Infobox.new(config, params, args)
</syntaxhighlight>
==== config ====
There are only 2 parameters for config
<syntaxhighlight lang="lua">
local config = {
infobox_name = 'Scenery', -- mandatory unique identifier for css
max_buttons = 6, -- optional, defaults to 6, max number of switch buttons before using a dropdown list instead
}
</syntaxhighlight>
==== params ====
A list of parameters to be processed by the Infobox module
<syntaxhighlight lang="lua">
local params = {
{ name = <param>, func = <func>, ... },
...
}
</syntaxhighlight>
{| class="wikitable"
! key
! value
|-
| name
| parameter name as used in the Template
|-
| func
| A function in [[Module:Param Parse]] to validate and process the Template argument. You can also use a local function, but this is not recommended.
If func is a function, will call func(Infobox.raw_param(name)):
<syntaxhighlight lang="lua">
{name = <param>, func = <func>, ... },
</syntaxhighlight>
If func is a table, it takes the following parameters:
<syntaxhighlight lang="lua">
{name = <param>, func = { name = <func>, params = <func_params>}, ... },
</syntaxhighlight>
{| class="wikitable"
| name
| function in [[Module:Param Parse]]
|-
| params
| a list of parameters to pass the the function, in the form of constants, or Infobox.raw_param(name), Infobox.param(name), Infobox.smw_param(name)
|}
|-
| empty (optional)
| text to display in the infobox if func returns nil; defaults to "? (edit)"
|-
| category_never (optional)
| category to add if func returns nil for all versions
|-
| category_partial (optional)
| category to add if func returns nil for some versions, but a value for other versions
|-
| category_incomplete (optional)
| category to add if func returns nil for at least 1 version (i.e. category_never and category_partial combined)
|-
| category_complete (optional)
| category to add if func returns a value for all versions
|-
| smw_property (optional)
| if this string is defined, the parameter will be saved into SMW
|-
| smw_func (optional)
| function to validate and process the Template argument to save into SMW. func is used by default if smw_func is not defined
|}
==== args ====
Arguments passed via the Template
<syntaxhighlight lang="lua">
local args = frame:getParent().args
</syntaxhighlight>
=== infobox:is_param_defined(param) ===
Used to conditionally display a line in the infobox
<syntaxhighlight lang="lua">
infobox:add_row{
{tag='th', content=Infobox.param('name'), class='infobox.subheader', colspan='2'},
}
if infobox:is_param_defined(Infobox.param('owner')) > 0 then
infobox:add_row{
{tag='td', content='[[Owner]]'},
{tag='td', content=Infobox.param('owner')},
}
end
</syntaxhighlight>
{| class="wikitable"
| param
| a parameter referenced via Infobox.raw_param(name), Infobox.param(name) or Infobox.smw_param(name)
|-
| Returns
| 0 if param is never defined
1 if param is defined for a fraction of the versions
2 if param is defined for all versions
|}
=== Infobox:add_row(...) ===
Adds a row to the infobox table. Parameter should be a table of cells:
<syntaxhighlight lang="lua">
infobox:add_row{
{tag='td', content='[[Cell1]]', ...},
{tag='td', content=Infobox.param('param'), ...},
{tag='td', content='[[Cell3]]', ...},
...
addClass = 'row-class'
}
</syntaxhighlight>
Each cell should have a set of key-values, of which only the tag and content are mandatory:
{| class="wikitable"
! key
! value
|-
| tag
| 'td' or 'th'
|-
| content
| a string or Infobox.param(name), Infobox.raw_param(name), Infobox.smw_param(name)
|-
| attr (optional)
| a table of attributes to add to the cell
mw.html:attr({ arg1 = '1', ... })
|-
| css (optional)
| a table of css to add to the cell
mw.html:css({ arg1 = '1', ... })
|-
| class (optional)
| a string with a class to add, or a table of classes to add. '''infobox-header''', '''infobox-subheader''' and '''infobox-image''' are commonly used.
mw.html:addClass(...)
|-
| rowspan (optional)
| Set the cell rowspan
mw.html:attr('rowspan',arg)
|-
| rowspan (optional)
| Set the cell colspan
mw.html:attr('colspan',arg)
|-
| title (optional)
| Set the cell title
mw.html:attr('title',arg)
|}
=== Infobox:pad(colspan, class) ===
Adds a blank row of padding spanning the given number of columns. Will always add the class '''infobox-padding''', but can optionally add another class:
<syntaxhighlight lang="lua">
infobox:pad("10", class=<class>)
</syntaxhighlight>
=== Infobox:addClass(class) ===
Adds a class to the entire table
<syntaxhighlight lang="lua">
infobox:addClass(class)
</syntaxhighlight>
65eb69b187c05e7c35512614f83b0c820d9621fb
File:Zeltay Tramagan.png
6
833
1807
2024-04-06T17:34:18Z
ToofleBerry
6
{{CiteTwitter|author=@AndrewCGower|url=https://twitter.com/andrewcgower/status/1776276857706479810|date=5 April 2024|archiveurl=https://web.archive.org/web/20240406173123/https://twitter.com/andrewcgower/status/1776276857706479810|archivedate=6 April 2024|quote=store.steampowered.com/app/2791440/Brighter_Shores/ Quite a few people have been asking how the 'rooms' in Brighter Shores connect together, so I have a made a quick video of me running across a small section of Hopeport. You can see h...
wikitext
text/x-wiki
== Summary ==
{{CiteTwitter|author=@AndrewCGower|url=https://twitter.com/andrewcgower/status/1776276857706479810|date=5 April 2024|archiveurl=https://web.archive.org/web/20240406173123/https://twitter.com/andrewcgower/status/1776276857706479810|archivedate=6 April 2024|quote=store.steampowered.com/app/2791440/Brighter_Shores/ Quite a few people have been asking how the 'rooms' in Brighter Shores connect together, so I have a made a quick video of me running across a small section of Hopeport. You can see how easily you can move between rooms, and how the 'rooms' connect together to form a much larger world.|notes=Timestamp in the video: 0:04 / 1:41.|name=|group=}}
373b54fa2d38e01fd7308833e843a808eea94b70
Zeltay Tramagan
0
834
1808
2024-04-06T17:34:38Z
ToofleBerry
6
Created page with "{{Infobox NPC |name = Zeltay Tramagan |image = Zeltay Tramagan.png |release = |episode = |profession = }} '''Zeltay Tramagan''' is an NPC located on the [[Town Square]] in [[Hopeport (location)|Hopeport]]{{CiteTwitter|author=@AndrewCGower|url=https://twitter.com/andrewcgower/status/1776276857706479810|date=5 April 2024|archiveurl=https://web.archive.org/web/20240406173123/https://twitter.com/andrewcgower/status/1776276857706479810|archivedate=6 April 2024|quote=store.s..."
wikitext
text/x-wiki
{{Infobox NPC
|name = Zeltay Tramagan
|image = Zeltay Tramagan.png
|release =
|episode =
|profession =
}}
'''Zeltay Tramagan''' is an NPC located on the [[Town Square]] in [[Hopeport (location)|Hopeport]]{{CiteTwitter|author=@AndrewCGower|url=https://twitter.com/andrewcgower/status/1776276857706479810|date=5 April 2024|archiveurl=https://web.archive.org/web/20240406173123/https://twitter.com/andrewcgower/status/1776276857706479810|archivedate=6 April 2024|quote=store.steampowered.com/app/2791440/Brighter_Shores/ Quite a few people have been asking how the 'rooms' in Brighter Shores connect together, so I have a made a quick video of me running across a small section of Hopeport. You can see how easily you can move between rooms, and how the 'rooms' connect together to form a much larger world.|notes=Timestamp in the video: 0:04 / 1:41.|name=|group=}}.
==References==
<references/>
5b09f43c10ebc6a2601745672872f01cd935ae5f
Fishmonger
0
835
1809
2024-04-06T17:36:10Z
ToofleBerry
6
Created page with "{{Infobox NPC |name = Fishmonger |image = Fishmonger.png |release = |episode = |profession = }} '''Fishmonger''' is an NPC located on the [[Eel Street]] in [[Hopeport (location)|Hopeport]]{{CiteTwitter|author=@AndrewCGower|url=https://twitter.com/andrewcgower/status/1776276857706479810|date=5 April 2024|archiveurl=https://web.archive.org/web/20240406173123/https://twitter.com/andrewcgower/status/1776276857706479810|archivedate=6 April 2024|quote=store.steampowered.com/..."
wikitext
text/x-wiki
{{Infobox NPC
|name = Fishmonger
|image = Fishmonger.png
|release =
|episode =
|profession =
}}
'''Fishmonger''' is an NPC located on the [[Eel Street]] in [[Hopeport (location)|Hopeport]]{{CiteTwitter|author=@AndrewCGower|url=https://twitter.com/andrewcgower/status/1776276857706479810|date=5 April 2024|archiveurl=https://web.archive.org/web/20240406173123/https://twitter.com/andrewcgower/status/1776276857706479810|archivedate=6 April 2024|quote=store.steampowered.com/app/2791440/Brighter_Shores/ Quite a few people have been asking how the 'rooms' in Brighter Shores connect together, so I have a made a quick video of me running across a small section of Hopeport. You can see how easily you can move between rooms, and how the 'rooms' connect together to form a much larger world.|notes=Timestamp in the video: 0:16 / 1:41.|name=|group=}}.
==References==
<references/>
ac0f05e392b29c88057886c24e581f84aba8ca55
File:Fishmonger.png
6
836
1810
2024-04-06T17:37:01Z
ToofleBerry
6
{{CiteTwitter|author=@AndrewCGower|url=https://twitter.com/andrewcgower/status/1776276857706479810|date=5 April 2024|archiveurl=https://web.archive.org/web/20240406173123/https://twitter.com/andrewcgower/status/1776276857706479810|archivedate=6 April 2024|quote=store.steampowered.com/app/2791440/Brighter_Shores/ Quite a few people have been asking how the 'rooms' in Brighter Shores connect together, so I have a made a quick video of me running across a small section of Hopeport. You can see h...
wikitext
text/x-wiki
== Summary ==
{{CiteTwitter|author=@AndrewCGower|url=https://twitter.com/andrewcgower/status/1776276857706479810|date=5 April 2024|archiveurl=https://web.archive.org/web/20240406173123/https://twitter.com/andrewcgower/status/1776276857706479810|archivedate=6 April 2024|quote=store.steampowered.com/app/2791440/Brighter_Shores/ Quite a few people have been asking how the 'rooms' in Brighter Shores connect together, so I have a made a quick video of me running across a small section of Hopeport. You can see how easily you can move between rooms, and how the 'rooms' connect together to form a much larger world.|notes=Timestamp in the video: 0:16 / 1:41.|name=|group=}}.
ed62826d029fde616a5f2c67c498fd7b588cff50
MediaWiki:Common.less/ooui.less
8
23
1811
1675
2024-04-06T22:19:54Z
Merds
25
less
less
/* ======================
OOUI
====================== */
// MediaWiki documentation: <https://www.mediawiki.org/wiki/OOUI>
// Interactive documentation: <https://doc.wikimedia.org/oojs-ui/master/demos/>
// Styles repo directory: <https://github.com/wikimedia/oojs-ui/tree/master/src/themes/wikimediaui>
// Variables
@ooui-normal: #d1b9ad; /* body-mid */
@ooui-normal-border: #d1b9ad; /* body-border */
@ooui-progressive: #936243;
@ooui-box-shadow-base--focus: inset 0 0 0 1px var(--ooui-accent);
@ooui-box-shadow-input-binary--active: inset 0 0 0 1px var(--ooui-progressive--hover);
@ooui-color-base--inverted: @white;
:root {
--ooui-text: var(--text-color);
--ooui-interface: var(--body-light);
--ooui-interface-border: var(--body-border);
--ooui-window-background: rgba(255,255,255,0.5);
// use the same styles for :hover AND :active
// :focus will use the accent var
--ooui-normal: darken( @ooui-normal, 2% );
// default styles basically add +2% luminance (from #f8f9fa to #ffffff)
// there's also another hover color: #eaecf0 (like .oo-ui-tool-link:hover)
// ...but we only have one var for button hover, so we should make sure
// the color does not blend with its bg
--ooui-normal--hover: lighten(@ooui-normal, 4%);
--ooui-normal-border: @ooui-normal-border;
// use separate color for progressive buttons - BUT use link-color for
// anywhere else that uses progressive colors; this isnt the greatest idea
// and unifying them is better in the longer term
--ooui-progressive: @ooui-progressive;
--ooui-progressive--hover: lighten(@ooui-progressive, 10%);
// border and bg are the same in non-normal buttons
--ooui-accent: var(--link-color);
// probably not worth adjusting <textarea>/<input>-esque bg in light mode
--ooui-input: #fff;
--ooui-input-border: @ooui-normal-border;
--ooui-input-border--hover: darken(@ooui-normal-border, 19%);
--ooui-disabled: lighten( @ooui-normal, 15%);
--ooui-disabled-border: lighten( @ooui-normal-border, 10%);
--ooui-disabled-text: var(--subtle-color);
--ooui-pending-background-image: repeating-linear-gradient(-45deg, @SEARCH_BOX, @SEARCH_BOX 20px, @BODY_MAIN 20px, @BODY_MAIN 30px);
}
/* ----------------------
widgets
---------------------- */
// need this one to be able to adjust the font color inside popups and etc
.oo-ui-widget {
color: var(--ooui-text);
}
// combine checkbox and radio as theyre really similar
.oo-ui-checkboxInputWidget [type='checkbox'] + span,
.oo-ui-radioInputWidget [type='radio'] + span {
background-color: var(--ooui-input);
border-color: var(--ooui-input-border);
}
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:checked + span,
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:indeterminate + span {
background-color: var(--ooui-progressive);
border-color: var(--ooui-progressive);
}
.oo-ui-radioInputWidget.oo-ui-widget-enabled [type='radio']:checked + span {
border-color: var(--ooui-progressive);
}
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:checked:hover + span,
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:indeterminate:hover + span {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
}
.oo-ui-radioInputWidget.oo-ui-widget-enabled [type='radio']:checked:hover + span {
border-color: var(--ooui-progressive--hover);
}
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:hover + span,
.oo-ui-radioInputWidget.oo-ui-widget-enabled [type='radio']:hover + span {
border-color: var(--ooui-accent);
}
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:focus + span {
border-color: var(--ooui-accent);
box-shadow: @ooui-box-shadow-base--focus;
}
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:active + span,
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:checked:active + span,
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:indeterminate:active + span {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
box-shadow: @ooui-box-shadow-input-binary--active;
}
.oo-ui-radioInputWidget.oo-ui-widget-enabled [type='radio']:active + span {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
}
.oo-ui-radioInputWidget.oo-ui-widget-enabled [type='radio']:checked:active + span {
border-color: var(--ooui-progressive--hover);
box-shadow: @ooui-box-shadow-input-binary--active;
}
.oo-ui-radioInputWidget.oo-ui-widget-enabled [type='radio']:checked:active + span:before {
border-color: var(--ooui-progressive--hover);
}
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:checked:focus + span,
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:indeterminate:focus + span {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent), inset 0 0 0 2px #fff;
}
.oo-ui-checkboxInputWidget [type='checkbox']:disabled + span,
.oo-ui-radioInputWidget [type='radio']:disabled + span {
background-color: var(--ooui-disabled);
border-color: var(--ooui-disabled); // same as bg for both
}
.oo-ui-dropdownWidget {
&-handle {
border-color: var(--ooui-normal-border);
}
&.oo-ui-widget-enabled &-handle {
background-color: var(--ooui-normal);
color: var(--ooui-text);
&:hover {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
}
&:active {
color: var(--ooui-text);
}
&:focus {
border-color: var(--ooui-accent);
box-shadow: @ooui-box-shadow-base--focus;
}
}
&.oo-ui-widget-enabled&-open &-handle {
background-color: var(--ooui-normal--hover);
}
&.oo-ui-widget-disabled &-handle {
color: var(--ooui-disabled-text);
text-shadow: none; // wont look good on dark mode
border-color: var(--ooui-disabled-border);
background-color: var(--ooui-disabled);
}
}
// input dropdowns
.oo-ui-dropdownInputWidget {
// ooui styled dropdown thats actually an html <select>
select {
border-color: var(--ooui-normal-border);
}
option {
background-color: var(--ooui-interface);
}
&.oo-ui-widget-enabled {
background-color: var(--ooui-normal);
&:hover {
background-color: var(--ooui-normal--hover);
}
select {
color: var(--ooui-text);
&:hover,
&:active {
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
}
&:focus {
border-color: var(--ooui-accent);
box-shadow: @ooui-box-shadow-base--focus;
}
// there's a `oo-ui-indicator-down` class here that adds the pointer
// icon, it's not a separate element so invert filter for dark mode
// is infeasible
}
}
}
// in Special:Preferences
.oo-ui-labelWidget {
&.oo-ui-inline-help {
color: var(--byline-color);
}
}
// dropdown selection menu
.oo-ui-menuSelectWidget {
background-color: var(--ooui-interface);
border-color: var(--ooui-interface-border);
&-frameless {
box-shadow: inset 0 -1px 0 0 var(--ooui-normal-border);
}
}
.oo-ui-menuSectionOptionWidget {
color: var(--byline-color);
}
// options eg. on page deletion/move
.oo-ui-menuOptionWidget {
// hover
&.oo-ui-optionWidget {
// hover and selected option
&-highlighted,
// combined
&-selected {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
}
// hover on chosen option
&-selected&-highlighted,
&-pressed&-highlighted {
color: var(--ooui-accent);
}
}
// hover again
&.oo-ui-widget-enabled {
&.oo-ui-optionWidget {
color: var(--ooui-text);
}
}
// highlight & hover eg page deletion reason
// &.oo-ui-optionWidget-selected&.oo-ui-optionWidget-highlighted,
// &.oo-ui-optionWidget-pressed&.oo-ui-optionWidget-highlighted {
//
// }
}
.oo-ui-messageDialog {
// eg exiting out editor without saving the edit modal
&-title {
color: inherit;
}
}
.oo-ui-messageWidget {
// all .messagebox like boxes
&.oo-ui-messageWidget-block {
// matching .errorbox
&.oo-ui-flaggedElement-error {
background-color: var(--errorbox-bg);
border-color: var(--errorbox-border);
}
// eg warning when there's templatedata when editing a template
// matching .warningbox
&.oo-ui-flaggedElement-warning {
background-color: var(--warningbox-bg);
border-color: var(--warningbox-border);
}
// matching .successbox
&.oo-ui-flaggedElement-success {
background-color: var(--successbox-bg);
border-color: var(--successbox-border);
}
&.oo-ui-flaggedElement-notice {
background-color: var(--messagebox-info-background);
border-color: var(--messagebox-info-border);
}
}
// ideally we would use our own success and error colors, but this will do for now
&.oo-ui-flaggedElement-error:not(.oo-ui-messageWidget-block),
&.oo-ui-flaggedElement-success:not(.oo-ui-messageWidget-block) {
color: var(--ooui-text);
}
}
.oo-ui-optionWidget {
&.oo-ui-widget-disabled {
color: var(--ooui-disabled-text);
}
}
.oo-ui-outlineControlsWidget {
background-color: var(--ooui-normal);
}
// eg in ve "Options" window
.oo-ui-outlineOptionWidget {
&.oo-ui-optionWidget-highlighted {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
}
}
.oo-ui-popupWidget {
// Popups eg when interacting with templates in ve
&-popup {
background-color: var(--ooui-interface);
border-color: var(--ooui-interface-border);
}
// popups anchors/arrow
.ooui-anchor(@direction) {
.oo-ui-popupWidget-anchor:after {
border-@{direction}-color: var(--ooui-interface);
}
.oo-ui-popupWidget-anchor:before {
border-@{direction}-color: var(--ooui-interface-border);
}
}
&-anchored- {
&top {
.ooui-anchor(bottom);
}
&bottom {
.ooui-anchor(top);
}
&start {
.ooui-anchor(right);
}
&end {
.ooui-anchor(left);
}
}
}
.oo-ui-searchWidget-query {
border-bottom-color: var(--ooui-interface-border);
}
.oo-ui-selectFileWidget {
&-dropTarget {
background-color: var(--ooui-interface);
border-color: var(--ooui-interface-border);
}
&.oo-ui-widget-enabled {
&.oo-ui-selectFileWidget-dropTarget {
background-color: var(--ooui-interface);
&:hover {
border-color: var(--ooui-input-border--hover);
}
}
}
}
.oo-ui-tabOptionWidget {
color: var(--ooui-text);
.oo-ui-tabSelectWidget-framed & {
&.oo-ui-optionWidget-selected {
background-color: var(--body-dark);
color: var(--ooui-text);
& .oo-ui-labelElement-label {
border-bottom-color: var(--body-border);
}
}
&.oo-ui-widget-enabled {
&:hover,
&:active {
background-color: var(--body-light);
color: var(--ooui-text);
}
&.oo-ui-optionWidget-selected:hover {
background-color: var(--body-dark);
}
}
}
.oo-ui-tabSelectWidget-frameless & {
&.oo-ui-optionWidget-selected {
color: var(--ooui-progressive);
box-shadow: inset 0 -2px 0 0 var(--ooui-progressive);
&:hover,
&:focus {
color: var(--ooui-progressive--hover);
box-shadow: inset 0 -2px 0 0 var(--ooui-progressive--hover);
}
}
}
}
.oo-ui-tabSelectWidget {
// eg used on [[Special:Preferences]]
&-framed {
background: none; // actually uses something like --ooui-interface
border-bottom: 1px solid var(--ooui-interface-border); // our customisation
}
// used in TabberNeue (even though we dont have it)
&-frameless {
box-shadow: inset 0 -1px 0 0 var(--ooui-interface-border);
}
&-mobile {
// both use the following mixin in core; but we already have a similar
// var in minerva.css for these stuff already used in navboxes
/*
.oo-ui-horizontal-gradient( @startColor: #eee, @endColor: #fff, @startPos: 0, @endPos: 100% ) {
background-color: average( @startColor, @endColor );
background-image: linear-gradient( to right, @startColor @startPos, @endColor @endPos );
}
*/
&.oo-ui-tabSelectWidget-framed:after {
// background instead of -image so the prev properties used as
// fallback for ancient browsers are reset
background: var(--mobile-navbox-linear-gradient);
}
&.oo-ui-tabSelectWidget-frameless:after {
background: var(--mobile-navbox-linear-gradient);
}
}
}
// eg recent changes selected filter tag
.oo-ui-tagItemWidget {
border-color: var(--ooui-normal-border);
&.oo-ui-widget-enabled {
color: var(--ooui-text);
&:hover {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
}
&:not( .oo-ui-tagItemWidget-fixed ) {
background-color: var(--ooui-normal);
}
& .oo-ui-buttonElement-button {
&:hover {
background-color: var(--ooui-normal--hover);
}
}
}
}
.oo-ui-tagMultiselectWidget {
// rc/watchlist filter box
&.oo-ui-widget-enabled {
background-color: var(--ooui-interface);
// and again - this time it's button bg
&.oo-ui-tagMultiselectWidget-outlined {
background-color: var(--ooui-normal);
.oo-ui-tagItemWidget.oo-ui-widget-enabled {
background-color: var(--ooui-interface);
}
}
}
}
.oo-ui-textInputWidget {
// eg RecentChanges filter changes input
.oo-ui-inputWidget-input {
background-color: var(--ooui-input);
color: var(--ooui-text);
border-color: var(--ooui-input-border);
}
&.oo-ui-widget-enabled {
.oo-ui-inputWidget-input {
&::placeholder {
color: var(--subtle-color);
}
&:focus {
border-color: var(--ooui-accent);
box-shadow: @ooui-box-shadow-base--focus;
}
&[readonly]:not(.oo-ui-pendingElement-pending) {
background-color: var(--ooui-disabled);
color: var(--ooui-disabled-text);
}
}
&:hover {
.oo-ui-inputWidget-input {
border-color: var(--ooui-input-border--hover);
&:focus {
border-color: var(--ooui-accent);
}
}
}
@media screen {
@media ( min-width: 0 ) {
textarea.oo-ui-inputWidget-input:focus {
outline: 1px solid var(--ooui-accent);
}
}
}
}
&.oo-ui-widget-disabled {
.oo-ui-inputWidget-input {
background-color: var(--ooui-disabled);
color: var(--ooui-disabled-text);
text-shadow: none; // wont look good on dark mode
border-color: var(--ooui-disabled-border);
}
}
}
.oo-ui-toggleSwitchWidget {
background-color: var(--ooui-input);
border-color: var(--ooui-input-border);
&.oo-ui-widget-enabled {
.oo-ui-toggleSwitchWidget-grip {
background-color: var(--ooui-input);
border-color: var(--ooui-input-border);
}
&:hover {
background-color: var(--ooui-input);
border-color: var(--ooui-accent);
.oo-ui-toggleSwitchWidget-grip {
background-color: var(--ooui-input);
border-color: var(--ooui-accent);
}
}
&:active,
&:active:hover,
&:active:focus {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
box-shadow: @ooui-box-shadow-input-binary--active;
.oo-ui-toggleSwitchWidget-grip {
background-color: var(--ooui-input);
border-color: var(--ooui-input);
}
}
&:focus {
border-color: var(--ooui-accent);
box-shadow: @ooui-box-shadow-base--focus;
.oo-ui-toggleSwitchWidget-grip {
border-color: var(--ooui-accent);
}
}
&.oo-ui-toggleWidget-on {
background-color: var(--ooui-progressive);
border-color: var(--ooui-progressive);
.oo-ui-toggleSwitchWidget-grip {
background-color: var(--ooui-input);
border-color: var(--ooui-input);
}
&:hover {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
}
&:active,
&:active:hover {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
}
&:focus {
border-color: var(--ooui-progressive);
&::before {
border-color: @ooui-color-base--inverted;
}
}
}
}
&.oo-ui-widget-disabled {
background-color: var(--ooui-disabled);
border-color: var(--ooui-disabled); // same as bg
}
}
/* ----------------------
elements/buttons
---------------------- */
// mixin for frameless progressive/destructive button
.mw-frameless-button-colored( @child, @color-text ) {
> @{child},
// no distinct color for hover
> @{child}:hover {
color: @color-text;
}
> @{child}:active,
&.oo-ui-buttonElement-pressed > @{child} {
// dont differentiate between :active and normal
color: @color-text;
border-color: @color-text;
}
}
.mw-framed-button-colored( @child, @color-text, @hover, @border-color--hover, /* @active,*/ @focus ) {
> @{child} {
color: @color-text;
}
> @{child}:hover {
background-color: @hover;
border-color: @border-color--hover;
}
> @{child}:focus {
border-color: @focus;
box-shadow: inset 0 0 0 1px @focus;
}
/* ugh uses lighten()
> @{child}:active,
&.oo-ui-buttonElement-pressed > @{child},
&.oo-ui-buttonElement-active > @{child},
&.oo-ui-popupToolGroup-active > @{child} {
background-color: lighten( @active, 60% );
color: @active;
border-color: @active;
}
*/
}
// mixin for framed progressive/destructive button
.mw-framed-primary-button-colored( @child, @color, @hover, @active, @focus ) {
> @{child} {
background-color: @color;
border-color: @color;
}
> @{child}:hover {
background-color: @hover;
border-color: @hover;
}
> @{child}:focus {
border-color: @focus;
box-shadow: inset 0 0 0 1px @focus, inset 0 0 0 2px @ooui-color-base--inverted;
}
> @{child}:active,
&.oo-ui-buttonElement-pressed > @{child},
&.oo-ui-buttonElement-active > @{child},
&.oo-ui-popupToolGroup-active > @{child} {
color: @ooui-color-base--inverted;
background-color: @active;
border-color: @active;
}
}
.oo-ui-buttonElement {
&-frameless {
&.oo-ui-widget-enabled {
> .oo-ui-buttonElement-button {
color: var(--ooui-text);
&:hover {
color: var(--ooui-text);
}
&:focus {
border-color: var(--ooui-accent);
box-shadow: @ooui-box-shadow-base--focus;
}
}
&.oo-ui-buttonElement-pressed > input.oo-ui-buttonElement-button,
> .oo-ui-buttonElement-button:active {
color: var(--ooui-text);
}
&.oo-ui-flaggedElement {
&-progressive {
.mw-frameless-button-colored( ~'.oo-ui-buttonElement-button', var(--ooui-text) ); // try out using text color as the button label like hard-coded darkmode
}
// not needed
// &-destructive {
// .mw-frameless-button-colored( ~'.oo-ui-buttonElement-button' );
// }
}
}
&.oo-ui-widget-disabled {
> .oo-ui-buttonElement-button {
color: var(--ooui-disabled-text);
}
}
}
&-framed {
&.oo-ui-widget-disabled {
> .oo-ui-buttonElement-button {
background-color: var(--ooui-disabled);
border-color: var(--ooui-disabled-border);
}
}
&.oo-ui-widget-enabled {
> .oo-ui-buttonElement-button {
background-color: var(--ooui-normal);
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
&:hover {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
}
&:focus {
border-color: var(--ooui-accent);
box-shadow: @ooui-box-shadow-base--focus;
}
}
&.oo-ui-buttonElement-active > .oo-ui-buttonElement-button {
background-color: var(--ooui-progressive--hover);
color: #fff; // needed, else it would be overriden by non-active styles
border-color: var(--ooui-progressive--hover);
&:focus {
border-color: var(--ooui-progressive--hover);
box-shadow: @ooui-box-shadow-base--focus;
}
}
// same as :hover above
> .oo-ui-buttonElement-button:active,
&.oo-ui-buttonElement-pressed > .oo-ui-buttonElement-button {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
}
&.oo-ui-flaggedElement {
&-progressive {
.mw-framed-button-colored( ~'.oo-ui-buttonElement-button', var(--ooui-text), var(--ooui-normal--hover), var(--ooui-progressive--hover), var(--ooui-accent) );
}
&-destructive {
// .mw-framed-button-colored( ~'.oo-ui-buttonElement-button', @color-destructive-non-primary, @background-color-framed--hover, @border-color-framed-destructive--hover, @color-destructive--active, @color-destructive--focus );
// since we arent changing destructive
> .oo-ui-buttonElement-button {
color: var(--ooui-text);
&:hover {
background-color: var(--ooui-normal--hover);
}
}
}
}
&.oo-ui-flaggedElement-primary {
&.oo-ui-flaggedElement {
&-progressive {
.mw-framed-primary-button-colored( ~'.oo-ui-buttonElement-button', var(--ooui-progressive), var(--ooui-progressive--hover), var(--ooui-progressive--hover), var(--ooui-accent) );
}
// dont need
// &-destructive {
// .mw-framed-primary-button-colored( ~'.oo-ui-buttonElement-button' );
// }
}
}
}
}
}
.oo-ui-pendingElement-pending {
background-image: var(--ooui-pending-background-image);
background-size: 200%;
animation: oo-ui-pendingElement-stripes 6s linear infinite;
@keyframes oo-ui-pendingElement-stripes {
100% {
background-position: 100%;
}
}
}
/* ----------------------
windows
---------------------- */
.oo-ui-messageDialog {
&-content > .oo-ui-window-foot {
outline-color: var(--ooui-interface-border);
}
&-message {
color: var(--ooui-text);
}
&-actions {
// eg ace editor "Go to line number..." window
&-horizontal .oo-ui-actionWidget {
border-right-color: var(--ooui-interface-border);
}
&-vertical .oo-ui-actionWidget {
border-bottom-color: var(--ooui-interface-border);
}
}
}
.oo-ui-processDialog {
&-content {
.oo-ui-window-head,
.oo-ui-window-foot {
outline-color: var(--ooui-interface-border);
}
}
// need to reoverride so buttons wont have weird borders
.oo-ui-actionWidget {
> .oo-ui-buttonElement-button {
border-top-color: transparent;
border-bottom-color: transparent;
&:hover,
&:active {
border-top-color: transparent;
border-bottom-color: transparent;
}
}
&:not( .oo-ui-flaggedElement-progressive ):not( .oo-ui-flaggedElement-destructive ) {
> .oo-ui-buttonElement-button {
&:hover,
&:active {
border-right-color: var(--ooui-interface-border);
border-left-color: transparent;
}
&:focus {
border-color: var(--ooui-accent);
}
}
}
}
&-actions {
&-safe,
&-other {
.oo-ui-actionWidget > .oo-ui-buttonElement-button {
border-right-color: var(--ooui-normal-border);
border-left-color: transparent;
}
}
&-safe {
.oo-ui-widget-enabled.oo-ui-iconElement:not( .oo-ui-labelElement ) {
> .oo-ui-buttonElement-button {
&:hover {
background-color: var(--ooui-normal--hover);
border-right-color: var(--ooui-interface-border);
}
}
}
}
}
}
.oo-ui-windowManager {
&-modal {
// bg behind windows
> .oo-ui-dialog {
background-color: var(--ooui-window-background);
}
// all popup windows
> .oo-ui-dialog > .oo-ui-window-frame {
background-color: var(--ooui-interface);
}
}
// window outlines
&-modal&-floating > .oo-ui-dialog > .oo-ui-window-frame {
border-color: var(--ooui-interface-border);
}
}
// we need this one to be able to adjust the font color inside windows
.oo-ui-window {
color: var(--ooui-text);
}
/* ----------------------
tools
---------------------- */
.mw-tool-colored( @child /*, @color-text*/ , @hover, @active , @focus , @active-text: @active ) {
// > @{child} {
// color: @color-text;
// }
> @{child}:hover {
background-color: @hover;
}
> @{child}:focus {
outline: 1px solid @focus;
box-shadow: inset 0 0 0 1px @focus;
}
> @{child}:active,
&.oo-ui-tool-active > @{child},
&.oo-ui-popupToolGroup-active > @{child} {
background-color: var(--ooui-normal--hover);
color: @active-text;
box-shadow: none;
}
}
.mw-primary-tool-colored( @child, @color, @hover, @active, @focus ) {
> @{child} {
// color: @ooui-color-base--inverted;
background-color: @color;
}
> @{child}:hover {
background-color: @hover;
}
> @{child}:focus {
// outline: @border-width-base @border-style-base @focus;
box-shadow: inset 0 0 0 1px @focus, inset 0 0 0 2px @ooui-color-base--inverted;
}
> @{child}:active,
&.oo-ui-tool-active > @{child} {
// color: @ooui-color-base--inverted;
background-color: @active;
// box-shadow: none;
}
// &.oo-ui-widget-disabled > @{child},
// &.oo-ui-widget-disabled > @{child}:active {
// background-color: @background-color-filled--disabled;
// color: @color-filled--disabled;
// }
}
@ooui-toolbar: var(--ooui-interface);
@ooui-toolbar-border: var(--body-mid);
// mainly used by ve and source editor
// toolbar
.oo-ui-toolbar {
&-bar {
background-color: @ooui-toolbar;
color: var(--ooui-text);
// toolbar borders
.oo-ui-toolbar-position-top > & {
border-bottom-color: @ooui-toolbar-border;
}
.oo-ui-bookletLayout > .oo-ui-menuLayout-menu {
border-right-color: @ooui-toolbar-border;
}
}
}
.oo-ui-tool {
&.oo-ui-widget-enabled {
.mw-tool-colored( ~'.oo-ui-tool-link', var(--ooui-normal--hover), var(--ooui-accent), var(--ooui-accent) );
// &.oo-ui-flaggedElement {
// &-progressive {
// .mw-tool-colored( ~'.oo-ui-tool-link', @background-color-tool--hover, @color-primary--active, @color-primary--focus );
// }
// &-destructive {
// .mw-tool-colored( ~'.oo-ui-tool-link', @color-destructive-non-primary, @background-color-tool--hover, @color-destructive--active, @color-destructive--focus );
// }
// }
&.oo-ui-flaggedElement-primary {
&.oo-ui-flaggedElement {
&-progressive {
.mw-primary-tool-colored( ~'.oo-ui-tool-link', var(--ooui-progressive), var(--ooui-progressive--hover), var(--ooui-progressive--hover), var(--ooui-accent) );
}
// &-destructive {
// .mw-primary-tool-colored( ~'.oo-ui-tool-link', @color-destructive, @color-destructive--hover, @color-destructive--active, @color-destructive--focus );
// }
}
}
}
}
.oo-ui-listToolGroup {
// eg "Page options" dropdown
&-tools .oo-ui-tool {
&.oo-ui-widget-enabled {
background-color: var(--ooui-normal);
&:hover {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
}
}
// does not match source ordering
&-active.oo-ui-widget-enabled .oo-ui-tool-link .oo-ui-tool-title {
color: var(--ooui-progressive)
}
}
}
// left-hand tool group
.oo-ui-menuToolGroup {
border-left-color: @ooui-toolbar-border;
border-right-color: @ooui-toolbar-border;
}
.oo-ui-popupToolGroup {
// dropdown menu
&-tools {
background-color: @ooui-toolbar;
border-color: @ooui-toolbar-border;
}
&.oo-ui-widget-enabled {
// eg hover "Insert"
> .oo-ui-popupToolGroup-handle {
&:hover {
background-color: var(--ooui-normal--hover);
}
&:focus {
outline: 1px solid var(--ooui-accent);
box-shadow: @ooui-box-shadow-base--focus;
}
}
// ve "Page options" again
.oo-ui-toolbar-actions & {
> .oo-ui-popupToolGroup-handle {
&:hover {
// same as button hover
border-right-color: var(--ooui-normal--hover);
}
}
}
}
// might not match source ordering
&-tools .oo-ui-tool.oo-ui-widget-enabled .oo-ui-tool-link:focus {
box-shadow: inset 0 0 0 2px var(--ooui-accent);
}
&-tools .oo-ui-tool-active.oo-ui-widget-enabled .oo-ui-tool-link .oo-ui-tool-title {
color: var(--ooui-progressive);
}
&.oo-ui-popupToolGroup-active {
> .oo-ui-popupToolGroup-handle {
// aka active
background-color: var(--ooui-normal);
color: var(--ooui-accent);
&:hover {
background-color: var(--ooui-normal--hover);
color: var(--ooui-accent);
}
}
}
}
/* ----------------------
layouts
---------------------- */
.oo-ui-bookletLayout {
&-outlinePanel {
> .oo-ui-outlineControlsWidget {
border-top-color: var(--ooui-interface-border);
}
}
// eg "Show options" in ve template editor
> .oo-ui-menuLayout-menu {
border-right-color: var(--ooui-interface-border);
}
}
.oo-ui-fieldLayout {
// disabled text color in layouts
&-disabled > .oo-ui-fieldLayout-body > .oo-ui-fieldLayout-header > .oo-ui-labelElement-label {
color: var(--ooui-disabled-text);
}
}
// ooui <fieldset>
.oo-ui-panelLayout {
&-framed {
border-color: var(--sidebar); // along with <h1/2> border
}
}
/* ----------------------
others
---------------------- */
.oo-ui-icon-settings {
background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' width='20' height='20' viewBox='0 0 20 20'%3E%3Ctitle%3Esettings%3C/title%3E%3Cg transform='translate(10 10)'%3E%3Cpath id='a' d='M1.5-10h-3l-1 6.5h5m0 7h-5l1 6.5h3'/%3E%3Cuse xlink:href='%23a' transform='rotate(45)'/%3E%3Cuse xlink:href='%23a' transform='rotate(90)'/%3E%3Cuse xlink:href='%23a' transform='rotate(135)'/%3E%3C/g%3E%3Cpath d='M10 2.5a7.5 7.5 0 0 0 0 15 7.5 7.5 0 0 0 0-15v4a3.5 3.5 0 0 1 0 7 3.5 3.5 0 0 1 0-7'/%3E%3C/svg%3E");
}
.oo-ui-icon-clear {
background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 20 20'%3E%3Ctitle%3Eclear%3C/title%3E%3Cpath d='M10 0a10 10 0 1 0 10 10A10 10 0 0 0 10 0zm5.66 14.24-1.41 1.41L10 11.41l-4.24 4.25-1.42-1.42L8.59 10 4.34 5.76l1.42-1.42L10 8.59l4.24-4.24 1.41 1.41L11.41 10z'/%3E%3C/svg%3E");
}
// --- widgets in core mediawiki ---
// DateInputWidget
.mw-widget-dateInputWidget {
&-handle {
background-color: var(--ooui-input);
color: var(--ooui-text);
border-color: var(--ooui-input-border);
}
&-calendar {
background-color: var(--ooui-interface);
}
&.oo-ui-widget-enabled .mw-widget-dateInputWidget-handle:hover {
border-color: var(--ooui-input-border--hover);
}
}
// CalendarWidget
.mw-widget-calendarWidget {
border-color: var(--ooui-interface-border);
&:focus {
border-color: var(--ooui-accent);
box-shadow: @ooui-box-shadow-base--focus;
}
// focused month
&-day,
// week day name
&-day-heading {
color: var(--ooui-text);
}
// other months
&-day-additional {
color: var(--ooui-text);
opacity: 0.67;
}
&-day-today {
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
&-item {
&:hover {
background-color: var(--ooui-progressive);
}
&-selected {
background-color: var(--ooui-progressive--hover);
}
}
}
// e.g. on [[Special:AbuseFilter/examine]]
.mw-widgets-datetime-calendarWidget {
background-color: var(--ooui-interface);
border-color: var(--ooui-interface-border);
&:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent), 0 2px 2px 0 rgba(0,0,0,0.25);
}
&-grid {
.mw-widgets-datetime-calendarWidget-cell {
&.mw-widgets-datetime-calendarWidget-extra .oo-ui-buttonElement-button {
.oo-ui-labelElement-label {
color: var(--subtle-color);
}
}
&.mw-widgets-datetime-calendarWidget-selected .oo-ui-buttonElement-button {
background-color: var(--ooui-progressive--hover);
}
}
}
}
// input box
.mw-widgets-datetime-dateTimeInputWidget {
&-handle {
background-color: var(--ooui-input);
color: var(--ooui-text);
border-color: var(--ooui-input-border);
}
&.oo-ui-widget-enabled {
&.mw-widgets-datetime-dateTimeInputWidget-handle {
&:hover {
border-color: var(--ooui-input-border--hover);
}
}
&:hover {
input,
textarea {
border-color: var(--ooui-input-border--hover);
}
}
.mw-widgets-datetime-dateTimeInputWidget-editField:hover {
background-color: var(--ooui-normal);
}
}
}
77e3538fcb22c6bd13b5a7e1dd3ed922b420ad4a
MediaWiki:Common.less
8
5
1812
1664
2024-04-06T22:20:28Z
Merds
25
less
less
/* =============================================================================
* This is the root Less file that is parsed to produce [[MediaWiki:Common.css]].
*
* These styles will be applied to all skins (desktop and mobile).
* -----------------------------------------------------------------------------
* Less documentation: <http://lesscss.org/features/>
* Gadget: <https://meta.weirdgloop.org/w/MediaWiki:Gadget-Less.js>
* Core Less JS: <https://meta.weirdgloop.org/w/MediaWiki:Gadget-Less-core.js>
* Non-standard mixins: <https://meta.weirdgloop.org/w/MediaWiki:Gadget-LessMixins.less>
* Online Less tester: <https://lesscss.org/less-preview/>
* ============================================================================= */
// ===== CSS Variables =====
@common: 'MediaWiki:Common.less';
:root {
--body-main: #fdfcfc;
--body-light: #f5f0eb;
--body-mid: #d1b9ad;
--body-dark: #b1886f;
--body-border: #d1b9ad;
--body-background-color: #173a4d;
--button-background: #605443;
--button-color: @white;
--button-border: #3c352a;
--button-dark: #18140c;
--button-light: #3a301d;
--sidebar: #cfc08d;
--background-text-color: #e2dbc8;
--background-link-color: #e2bd8a;
--search-box: #efeee6;
--link-color: #6e452b;
--redlink-color: #ba0000;
--text-color: #2F2828; /* @mine-shaft */
--byline-color: @silver;
--subtle-color: #afa19a; /* old: @boulder; */
--admin-blue: #332e75;
--bearcat-green: #13592e;
--awb-purple: #933b96;
--rsw-blue: #438ab6;
--osrsw-brown: #605443;
// used for gallery & thumbs
--thumb-bg: var(--body-light);
--thumb-caption-bg: var(--body-mid);
// for sourceeditor - CodeMirror and WikiEditor's that are only available on
// desktop are also here to not fragment the vars across many files
--sourceeditor-input-background: @white;
--sourceeditor-background: var(--body-light);
--sourceeditor-background-secondary: var(--body-light); // used on .editOptions
--sourceeditor-border: var(--body-mid);
--codemirror-gutter-background: var(--body-mid);
}
// ===== Imports =====
// include fonts first
@import '@{common}/mixins.less';
@import '@{common}/fonts.less'; // Font definitions and font stack definitions
@import '@{common}/variables.less'; // Less variables
@import '@{common}/elements.less'; // HTML elements
@import '@{common}/links.less'; // Link colours
// Interface
@import '@{common}/interface.less'; // MW common elements
@import '@{common}/wikitables.less'; // .wikitable class and etc
@import '@{common}/diff.less'; // Revision differences
@import '@{common}/notifications.less';
@import '@{common}/pagepreviews.less'; // Page preview popups
@import '@{common}/smw.less'; // Semantic MediaWiki
@import '@{common}/tabber.less'; // <tabber>
@import '@{common}/ooui.less'; // OOUI Customisations
@import '@{common}/visualeditor.less'; // VisualEditor
// Templates
@import '@{common}/templates.less'; // Various templates
@import '@{common}/documentation.less'; // [[Template:Documentation]]
@import '@{common}/infobox.less'; // Infobox vars
@import '@{common}/references.less'; // <references>
@import '@{common}/messagebox.less'; // Messagebox templates
// Page specific
@import '@{common}/tiles.less'; // Main page tiles
@import '@{common}/mainpage.less'; // Main page
@import '@{common}/prefs.less'; // Wiki preferences theming
@import '@{common}/specials.less'; // Special pages
@import '@{common}/bstheme.less'; // [[BS:THEME]]
// ===== Miscellaneous =====
// hide certain links in sidebar tools
#t-print,
#t-permalink {
display: none;
}
#filetoc {
border-radius: @border-radius;
background: @BODY_MID;
border-color: transparent;
margin: 0.5em auto;
text-align: center;
box-shadow: @box-shadow;
}
// Galleries
li.gallerybox div.thumb {
border: none;
background-color: var(--thumb-bg);
}
.smwfact {
display: none;
}
// applies to mobile talk pages, and smw??
.list-header {
background-color: var(--body-mid);
color: inherit;
}
// Source editor w/o syntaxhighlight; also applies to mobile in case JS is
// turned off
.editOptions {
color: var(--text-color);
background-color: var(--sourceeditor-background-secondary);
border-color: var(--sourceeditor-border);
}
// .json pages
.mw-json {
th,
td {
border-color: var(--wikitable-border);
}
// instead of selecting `tr`, do this to avoid dealing with mw-json-* classes
td {
background: var(--wikitable-bg);
}
th {
background: var(--wikitable-header-bg);
}
}
de35150e7485a21762b0d0291e0420d37510ddac
MediaWiki:Common.css
8
30
1813
1708
2024-04-06T22:21:13Z
Merds
25
Updating CSS from [[MediaWiki:Common.less]]
css
text/css
/* <pre> */
:root {
--body-main: #fdfcfc;
--body-light: #f5f0eb;
--body-mid: #d1b9ad;
--body-dark: #b1886f;
--body-border: #d1b9ad;
--body-background-color: #173a4d;
--button-background: #605443;
--button-color: #fff;
--button-border: #3c352a;
--button-dark: #18140c;
--button-light: #3a301d;
--sidebar: #cfc08d;
--background-text-color: #e2dbc8;
--background-link-color: #e2bd8a;
--search-box: #efeee6;
--link-color: #6e452b;
--redlink-color: #ba0000;
--text-color: #2F2828;
--byline-color: #ccc;
--subtle-color: #afa19a;
--admin-blue: #332e75;
--bearcat-green: #13592e;
--awb-purple: #933b96;
--rsw-blue: #438ab6;
--osrsw-brown: #605443;
--thumb-bg: var(--body-light);
--thumb-caption-bg: var(--body-mid);
--sourceeditor-input-background: #fff;
--sourceeditor-background: var(--body-light);
--sourceeditor-background-secondary: var(--body-light);
--sourceeditor-border: var(--body-mid);
--codemirror-gutter-background: var(--body-mid);
}
@font-face {
font-family: 'Lora';
font-weight: 400 700;
font-style: normal;
font-display: swap;
src: url('filepath://Lora.woff2') format('woff2');
}
@font-face {
font-family: 'Lora';
font-weight: 400 700;
font-style: italic;
font-display: swap;
src: url('filepath://Lora-Italic.woff2') format('woff2');
}
:root {
--base-text-color: #36414f;
--base-heading-color: #444e5a;
--base-heading-border: #e4eaee;
--mw-code-background-color: var(--body-light);
--body-background-image: url('filepath://Wiki_background.jpg');
}
#mw-page-base {
background: none;
}
.mw-body {
background-color: var(--body-main);
color: var(--text-color);
border-color: transparent;
box-shadow: 0 0 7px rgba(0, 0, 0, 0.15);
margin-top: 0;
}
h1,
h2,
h3,
h4,
h5,
h6 {
color: var(--text-color);
}
h1,
h2 {
border-color: var(--body-border);
}
.mw-body h1,
.mw-body-content h1,
.mw-body-content h2,
.mw-body-content h3,
.mw-body-content h4,
.mw-body-content h5,
.mw-body-content h6 {
font-family: 'Lora', 'Palatino', 'Georgia', serif;
}
.mw-parser-output h2:first-of-type {
clear: left;
}
.mw-footer {
color: var(--background-text-color);
}
.mw-footer li {
color: var(--background-text-color);
}
.mw-footer a,
.mw-footer a:active,
.mw-footer a:visited {
color: var(--background-link-color);
}
::placeholder {
color: var(--subtle-color);
}
a {
color: var(--link-color);
}
a:visited,
a:active {
color: var(--link-color);
}
a.new {
color: var(--redlink-color);
}
a.new:visited {
color: var(--redlink-color);
}
.mw-parser-output a.extiw,
.mw-parser-output a.external {
color: var(--link-color);
}
.mw-parser-output a.extiw:visited,
.mw-parser-output a.external:visited,
.mw-parser-output a.extiw:active,
.mw-parser-output a.external:active {
color: var(--link-color);
}
.jsPurgeLink a.external {
color: var(--link-color);
}
:root {
--errorbox-bg: #feecea;
--errorbox-border: #ee4231;
--warningbox-bg: #fef9de;
--warningbox-border: #f9d000;
--successbox-bg: #ecf8e3;
--successbox-border: #6bc71f;
}
.mw-message-box-error,
.errorbox,
.mw-message-box-warning,
.warningbox,
.mw-message-box-success,
.successbox,
.usermessage {
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
}
.mw-message-box-error,
.errorbox {
background-color: var(--errorbox-bg);
border-color: var(--errorbox-border);
}
.mw-message-box-warning,
.warningbox,
.usermessage {
background-color: var(--warningbox-bg);
border-color: var(--warningbox-border);
}
.mw-message-box-success,
.successbox {
background-color: var(--successbox-bg);
border-color: var(--successbox-border);
}
.catlinks {
background: var(--body-light);
border: 1px solid var(--body-dark);
padding: 8px 15px;
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
}
.catlinks li {
border-color: var(--body-mid);
}
.filehistory a img,
#file img {
background: url("data:image/svg+xml,%3C%3Fxml version='1.0' encoding='UTF-8'%3F%3E%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16'%3E%3Cpath d='M0 0h8v16h8V8H0z' opacity='.13'/%3E%3C/svg%3E") repeat;
}
#file img:hover {
background: none;
}
.mw-highlight {
background: none;
}
.mw-highlight .linenos {
background-color: var(--mw-code-background-color);
color: var(--body-border);
}
.mw-highlight a:hover .linenos,
.mw-highlight .hll a .linenos {
color: var(--body-dark);
}
.mw-content-ltr.mw-highlight-lines pre,
.mw-content-ltr.content .mw-highlight-lines pre {
box-shadow: inset 2.75em 0 0 var(--mw-code-background-color);
}
#pagehistory ul {
list-style: none;
margin: 0;
}
#pagehistory li {
border: 1px solid transparent;
padding: 1px 10px;
margin: 2px 0;
}
#pagehistory li.selected {
background-color: var(--body-light);
color: inherit;
border: 1px dashed var(--body-border);
outline: none;
}
#mw-history-compare > div:first-of-type {
position: -webkit-sticky;
position: sticky;
top: 0;
background-color: var(--body-main);
border-bottom: 1px solid var(--body-dark);
padding: 0.25em 0;
}
.wgl-stickyheader #mw-history-compare > div:first-of-type {
top: 2.5rem;
}
.autocomment,
.autocomment a,
.autocomment a:visited {
color: var(--link-color);
}
li span.deleted,
span.history-deleted {
color: var(--byline-color);
}
.mw-usertoollinks-contribs-no-edits,
.mw-usertoollinks-contribs-no-edits:visited {
color: var(--redlink-color);
}
.CategoryTreeToggle {
color: var(--link-color);
}
body.wgl-stickyheader.action-view .mw-headline:target::before {
display: block;
content: '';
margin-top: -3rem;
height: 3rem;
visibility: hidden;
pointer-events: none;
}
.mw-mmv-post-image {
color: var(--text-color);
background-color: var(--body-main);
}
.mw-mmv-image-metadata {
border-top-color: var(--body-mid);
background-color: var(--body-light);
}
.mw-mmv-dialog,
.mw-mmv-dialog .mw-mmv-dialog-down-arrow,
.mw-mmv-options-dialog .mw-mmv-dialog-down-arrow {
background-color: var(--body-light);
box-shadow: none;
}
.mw-mmv-options-enable-alert {
background-color: var(--body-light);
color: var(--text-color);
}
.mw-mmv-options-dialog-header,
.mw-mmv-options-text-header,
.mw-mmv-options-text-body,
.mw-mmv-options-enable-alert,
.mw-mmv-options-dialog .mw-mmv-disable-confirmation .mw-mmv-options-dialog-header,
.mw-mmv-options-dialog .mw-mmv-disable-confirmation .mw-mmv-options-text-header {
color: var(--text-color);
}
.mw-revslider-container {
border-color: var(--sidebar);
}
.mw-revslider-slider-wrapper {
border-top-color: var(--sidebar);
}
.mw-ui-button {
background-color: var(--ooui-normal);
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
}
.mw-ui-button:not(:disabled):hover,
.mw-ui-button:not(:disabled):active {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
}
.mw-ui-button:not(:disabled):focus {
color: var(--ooui-text);
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent), inset 0 0 0 2px #fff;
}
.mw-ui-button:not(:disabled):visited {
color: var(--ooui-text);
}
.mw-ui-button.mw-ui-progressive:not(:disabled) {
background-color: var(--ooui-progressive);
color: #fff;
border-color: var(--ooui-progressive);
}
.mw-ui-button.mw-ui-progressive:not(:disabled):hover {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
}
.mw-ui-button.mw-ui-progressive:not(:disabled):focus {
box-shadow: inset 0 0 0 1px var(--ooui-accent), inset 0 0 0 2px #fff;
}
.mw-ui-button.mw-ui-progressive:not(:disabled):active,
.mw-ui-button.mw-ui-progressive:not(:disabled).is-on {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
box-shadow: none;
}
.mw-ui-button.mw-ui-destructive:not( :disabled ) {
color: #fff;
}
.mw-ui-button.mw-ui-quiet,
.mw-ui-button.mw-ui-quiet.mw-ui-progressive,
.mw-ui-button.mw-ui-quiet.mw-ui-destructive {
color: var(--text-color);
}
input[type='checkbox']:hover + .mw-ui-button.mw-ui-quiet,
input[type='checkbox']:hover + .mw-ui-button.mw-ui-quiet.mw-ui-progressive,
input[type='checkbox']:hover + .mw-ui-button.mw-ui-quiet.mw-ui-destructive,
.mw-ui-button.mw-ui-quiet:hover,
.mw-ui-button.mw-ui-quiet.mw-ui-progressive:hover,
.mw-ui-button.mw-ui-quiet.mw-ui-destructive:hover {
background-color: rgba(0, 24, 73, 0.02745098);
color: var(--text-color);
border-color: transparent;
}
input[type='checkbox']:focus + .mw-ui-button.mw-ui-quiet,
input[type='checkbox']:focus + .mw-ui-button.mw-ui-quiet.mw-ui-progressive,
input[type='checkbox']:focus + .mw-ui-button.mw-ui-quiet.mw-ui-destructive,
.mw-ui-button.mw-ui-quiet:focus,
.mw-ui-button.mw-ui-quiet.mw-ui-progressive:focus,
.mw-ui-button.mw-ui-quiet.mw-ui-destructive:focus {
color: var(--text-color);
}
input[type='checkbox']:active + .mw-ui-button.mw-ui-quiet,
input[type='checkbox']:active + .mw-ui-button.mw-ui-quiet.mw-ui-progressive,
input[type='checkbox']:active + .mw-ui-button.mw-ui-quiet.mw-ui-destructive,
.mw-ui-button.mw-ui-quiet:active,
.mw-ui-button.mw-ui-quiet.mw-ui-progressive:active,
.mw-ui-button.mw-ui-quiet.mw-ui-destructive:active {
background-color: rgba(0, 36, 73, 0.08235294);
color: var(--text-color);
border-color: #72777d;
}
.mw-ui-input {
background-color: var(--ooui-input);
color: var(--text-color);
border-color: var(--ooui-input-border);
}
.mw-ui-input:hover {
border-color: var(--ooui-input-border--hover);
}
.mw-ui-input::placeholder {
color: var(--byline-color);
}
.mw-content-ltr .redirectText li:first-child {
padding: 0;
background: 0;
}
.mw-content-ltr .redirectText li:first-child::before {
content: '';
background: currentcolor;
-webkit-mask: url("filepath://Redirect-arrow.svg") no-repeat 50% 50% / contain;
mask: url("filepath://Redirect-arrow.svg") no-repeat 50% 50% / contain;
display: inline-block;
width: 47px;
height: 20px;
}
.vector-search-box-inner {
background: var(--body-main) !important;
box-shadow: inset 0 -7px 7px -7px rgba(0, 0, 0, 0.15) !important;
}
.vector-menu-dropdown .vector-menu-heading {
color: var(--vector-tab-link-color) !important;
}
.vector-menu-dropdown .vector-menu-heading:hover {
color: var(--vector-tab-link-color) !important;
}
.vector-menu-dropdown .vector-menu-heading:focus {
color: var(--vector-tab-link-color) !important;
}
:root {
--wikitable-header-bg: var(--body-dark);
--wikitable-border: var(--body-border);
--wikitable-bg: var(--body-light);
--wikitable-bg-lighter: #e9e3d6;
--wikitable-color: var(--text-color);
--table-na-background: rgba(255, 255, 255, 0.3);
--table-na-color: var(--subtle-color);
--table-yes-background: #c3e8a3;
--table-yes-color: #2e5e05;
--table-no-background: #fbc0ba;
--table-no-color: #801c13;
--table-maybe-background: #fcea94;
--table-maybe-color: #786300;
}
.wikitable {
background: var(--wikitable-bg);
color: var(--wikitable-color);
border-color: var(--wikitable-border);
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
}
.wikitable > tr > th,
.wikitable > tr > td,
.wikitable > * > tr > th,
.wikitable > * > tr > td {
border-color: var(--wikitable-border);
}
.wikitable > tr > th.table-noborder,
.wikitable > tr > td.table-noborder,
.wikitable > * > tr > th.table-noborder,
.wikitable > * > tr > td.table-noborder {
border-left-style: hidden;
border-right-style: hidden;
padding-left: 0;
padding-right: 0;
}
.wikitable > tr > th,
.wikitable > * > tr > th {
background-color: var(--wikitable-header-bg);
color: #fff;
}
.tabber .wikitable {
box-shadow: none;
}
.mw_metadata td,
.mw_metadata th {
border-color: var(--wikitable-border);
}
.mw_metadata th {
background-color: var(--wikitable-header-bg);
}
.mw_metadata td {
background-color: var(--wikitable-bg);
}
.mw-datatable {
border-color: var(--wikitable-border);
}
.mw-datatable td,
.mw-datatable th {
border-color: var(--wikitable-border);
}
.mw-datatable th {
background-color: var(--wikitable-header-bg);
}
.mw-datatable td {
background-color: var(--wikitable-bg);
}
.mw-datatable tr:hover td {
background-color: var(--wikitable-bg);
}
table.alternating-rows tr:nth-child(odd),
table.alternating-cols td:nth-child(odd) {
background: var(--wikitable-alternating-bg);
}
.table-na {
background: var(--table-na-background);
color: var(--table-na-color);
vertical-align: middle;
text-align: center;
}
.table-yes {
background: var(--table-yes-background);
color: var(--table-yes-color);
}
.table-positive {
background: var(--table-yes-background);
}
.table-no {
background: var(--table-no-background);
color: var(--table-no-color);
}
.table-negative {
background: var(--table-no-background);
}
.table-maybe {
background: var(--table-maybe-background);
color: var(--table-maybe-color);
}
#mw-allmessagestable .am_actual,
#mw-allmessagestable .am_default {
background-color: var(--wikitable-bg);
}
#mw-allmessagestable .am_default:hover,
#mw-allmessagestable .am_actual:hover,
#mw-allmessagestable tbody:hover td {
background-color: var(--wikitable-bg-lighter);
}
table.wikitable td.no-cell-spacing {
padding: 0;
height: 0;
}
table.wikitable td.no-cell-spacing table {
margin: -1px;
width: calc(100% + 2px);
height: calc(100% + 2px);
}
.plainlist ol,
.plainlist ul {
margin: 0;
}
.plainlist li {
margin-bottom: 0;
list-style: none;
}
table.align-right-1 td:nth-of-type(1),
table.align-right-2 td:nth-of-type(2),
table.align-right-3 td:nth-of-type(3),
table.align-right-4 td:nth-of-type(4),
table.align-right-5 td:nth-of-type(5),
table.align-right-6 td:nth-of-type(6),
table.align-right-7 td:nth-of-type(7),
table.align-right-8 td:nth-of-type(8),
table.align-right-9 td:nth-of-type(9),
table.align-right-10 td:nth-of-type(10),
table.align-right-11 td:nth-of-type(11),
table.align-right-12 td:nth-of-type(12),
table.align-right-13 td:nth-of-type(13),
table.align-right-14 td:nth-of-type(14),
table.align-right-15 td:nth-of-type(15),
table.align-right-16 td:nth-of-type(16),
table.align-right-17 td:nth-of-type(17),
table.align-right-18 td:nth-of-type(18),
table.align-right-19 td:nth-of-type(19),
table.align-right-20 td:nth-of-type(20) {
text-align: right;
}
table.align-center-1 td:nth-of-type(1),
table.align-center-2 td:nth-of-type(2),
table.align-center-3 td:nth-of-type(3),
table.align-center-4 td:nth-of-type(4),
table.align-center-5 td:nth-of-type(5),
table.align-center-6 td:nth-of-type(6),
table.align-center-7 td:nth-of-type(7),
table.align-center-8 td:nth-of-type(8),
table.align-center-9 td:nth-of-type(9),
table.align-center-10 td:nth-of-type(10),
table.align-center-11 td:nth-of-type(11),
table.align-center-12 td:nth-of-type(12),
table.align-center-13 td:nth-of-type(13),
table.align-center-14 td:nth-of-type(14),
table.align-center-15 td:nth-of-type(15),
table.align-center-16 td:nth-of-type(16),
table.align-center-17 td:nth-of-type(17),
table.align-center-18 td:nth-of-type(18),
table.align-center-19 td:nth-of-type(19),
table.align-center-20 td:nth-of-type(20) {
text-align: center;
}
table.align-left-1 td:nth-of-type(1),
table.align-left-2 td:nth-of-type(2),
table.align-left-3 td:nth-of-type(3),
table.align-left-4 td:nth-of-type(4),
table.align-left-5 td:nth-of-type(5),
table.align-left-6 td:nth-of-type(6),
table.align-left-7 td:nth-of-type(7),
table.align-left-8 td:nth-of-type(8),
table.align-left-9 td:nth-of-type(9),
table.align-left-10 td:nth-of-type(10),
table.align-left-11 td:nth-of-type(11),
table.align-left-12 td:nth-of-type(12),
table.align-left-13 td:nth-of-type(13),
table.align-left-14 td:nth-of-type(14),
table.align-left-15 td:nth-of-type(15),
table.align-left-16 td:nth-of-type(16),
table.align-left-17 td:nth-of-type(17),
table.align-left-18 td:nth-of-type(18),
table.align-left-19 td:nth-of-type(19),
table.align-left-20 td:nth-of-type(20) {
text-align: left;
}
:root {
--diff-addedline-border-color: #438ab5;
--diff-addedline-background: #bddff2;
--diff-addedline-color: #000;
--diff-deletedline-border-color: #379541;
--diff-deletedline-background: #c1edbf;
--diff-deletedline-color: #000;
--diff-context-border-color: var(--body-mid);
--diff-context-background: var(--body-mid);
}
.diff-context {
border-color: var(--diff-context-border-color);
background: var(--diff-context-background);
color: inherit;
}
.diff-addedline {
border-color: var(--diff-addedline-border-color);
}
.diff-addedline .diffchange {
background: var(--diff-addedline-background);
color: var(--diff-addedline-color);
}
.diff-deletedline {
border-color: var(--diff-deletedline-border-color);
}
.diff-deletedline .diffchange {
background: var(--diff-deletedline-background);
color: var(--diff-deletedline-color);
}
.mw-diff-movedpara-left:after,
.mw-diff-movedpara-right:after {
color: var(--text-color);
}
.mw-notification {
background-color: var(--body-light);
border-color: var(--body-border);
color: var(--text-color);
}
.mw-echo-ui-notificationsInboxWidget-toolbarWrapper {
background: var(--body-main);
}
.mw-body-content .mw-echo-ui-datedSubGroupListWidget-title-secondary {
color: var(--byline-color);
}
.mw-echo-ui-pageNotificationsOptionWidget.oo-ui-optionWidget-selected {
background-color: var(--ooui-normal);
color: var(--ooui-accent);
}
.mw-echo-ui-pageNotificationsOptionWidget-label-count {
background-color: var(--ooui-normal);
color: var(--byline-color);
}
.oo-ui-optionWidget-selected .mw-echo-ui-pageNotificationsOptionWidget-label-count {
color: var(--ooui-accent);
}
.mw-echo-ui-pageNotificationsOptionWidget.oo-ui-optionWidget-highlighted {
background-color: var(--ooui-normal);
color: var(--text-color);
}
.mw-echo-ui-crossWikiUnreadFilterWidget {
border-color: var(--body-border);
}
.mw-echo-ui-crossWikiUnreadFilterWidget-subtitle {
color: var(--byline-color);
}
.mw-echo-ui-notificationBadgeButtonPopupWidget-popup > .oo-ui-popupWidget-popup > .oo-ui-popupWidget-head,
.mw-echo-ui-notificationBadgeButtonPopupWidget-popup > .oo-ui-popupWidget-popup > .oo-ui-popupWidget-footer {
border-color: var(--ooui-interface-border);
}
.mw-echo-ui-notificationBadgeButtonPopupWidget-popup > .oo-ui-popupWidget-popup > .oo-ui-popupWidget-footer .mw-echo-ui-notificationBadgeButtonPopupWidget-footer-buttons .oo-ui-buttonElement:last-child {
border-left-color: var(--ooui-normal-border);
}
.mw-echo-ui-notificationItemWidget {
background-color: var(--ooui-normal);
border-color: var(--ooui-normal-border);
}
.mw-echo-ui-notificationItemWidget:hover,
.mw-echo-ui-notificationItemWidget-unread:hover {
background-color: var(--ooui-normal--hover);
}
.mw-echo-ui-notificationItemWidget:last-child {
border-bottom-color: var(--ooui-normal-border);
}
.mw-echo-ui-notificationItemWidget-unread {
background-color: var(--search-box);
}
.mw-echo-ui-crossWikiNotificationItemWidget-group,
.mw-echo-ui-bundleNotificationItemWidget-group {
background-color: var(--ooui-interface);
}
.mw-echo-ui-toggleReadCircleButtonWidget-circle {
background-color: var(--ooui-progressive);
}
.mw-echo-ui-toggleReadCircleButtonWidget:hover .mw-echo-ui-toggleReadCircleButtonWidget-circle {
background-color: var(--ooui-progressive--hover);
}
.mw-echo-ui-toggleReadCircleButtonWidget-circle-unread {
background-color: var(--ooui-normal);
border-color: var(--ooui-normal-border);
}
.mw-echo-ui-notificationItemWidget-content-message-header,
.mw-echo-ui-notificationItemWidget-content-message-body,
.mw-echo-ui-menuItemWidget > .oo-ui-buttonElement-button > .oo-ui-labelElement-label,
.mw-echo-ui-notificationItemWidget-content-actions-timestamp {
color: var(--ooui-text);
}
.mw-echo-ui-bundleNotificationItemWidget-group {
background-color: var(--body-main);
}
@keyframes unseen-fadeout-to-unread {
from {
background-color: var(--wikitable-bg-lighter);
}
to {
background-color: var(--search-box);
}
}
@keyframes unseen-fadeout-to-read {
from {
background-color: var(--wikitable-bg-lighter);
}
to {
background-color: var(--body-main);
}
}
.mwe-popups {
background: var(--body-light);
}
.mwe-popups .mwe-popups-container {
color: var(--text-color);
background: var(--body-light);
}
.mwe-popups .mwe-popups-container.flipped-x-y:before,
.mwe-popups .mwe-popups-container.flipped-y:before {
border-top: none;
}
.mwe-popups .mwe-popups-container.mwe-popups-no-image-tri:before {
border-bottom: none;
}
.mwe-popups .mwe-popups-container.flipped-x-y:after,
.mwe-popups .mwe-popups-container.flipped-y:after {
border-top-color: var(--body-light);
}
.mwe-popups .mwe-popups-container.mwe-popups-no-image-tri:after {
border-bottom-color: var(--body-light);
}
.mwe-popups .mwe-popups-settings-icon:hover,
.mwe-popups .mwe-popups-settings-icon:active {
background-color: var(--ooui-normal--hover);
}
.mwe-popups .mw-ui-icon-element:not(.disabled):hover {
background: none;
}
.mwe-popups .mwe-popups-extract {
color: var(--text-color);
}
.mwe-popups .mwe-popups-extract[dir='ltr']:after {
background-image: linear-gradient(to right, rgba(49, 62, 89, 0), var(--body-light) 50%);
}
.mwe-popups-overlay {
background-color: var(--ooui-window-background);
}
#mwe-popups-settings {
background: var(--ooui-interface);
border-color: var(--ooui-interface-border);
color: var(--text-color);
}
#mwe-popups-settings header {
border-color: var(--ooui-interface-border);
}
#mwe-popups-settings main#mwe-popups-settings-form p {
color: var(--byline-color);
}
#mwe-popups-settings main#mwe-popups-settings-form form label > span {
color: var(--ooui-text);
}
:root {
--smw-ask-options-even-bg: var(--body-mid);
--smw-ask-options-odd-bg: var(--body-light);
--smw-ask-action-btn-lblue-bg: var(--body-main);
--smw-ask-action-btn-lblue-color: #000;
--smw-ask-action-btn-lblue-border-color: var(--body-light);
--smw-ask-action-btn-dblue-bg: var(--body-light);
--smw-ask-action-btn-dblue-color: #fff;
--smw-ask-action-btn-dblue-border-color: var(--button-border);
}
.smw-ask-condition fieldset,
.smw-ask-printhead fieldset {
border-color: var(--sidebar);
}
.smw-ask-search fieldset,
.smw-ask-format fieldset,
.smw-ask-options fieldset {
border-color: var(--sidebar);
}
.strike > span:before,
.strike > span:after {
background: var(--sidebar);
}
.smw-ask-options-fields tr td {
background-color: var(--smw-ask-options-even-bg);
}
.smw-ask-options-fields tr:nth-child(odd) td {
background-color: var(--smw-ask-options-odd-bg);
}
.smw-ask-action-btn.smw-ask-action-btn-lblue,
.smw-ask-action-btn.smw-ask-action-btn-lblue:hover,
.smw-ask-action-btn.smw-ask-action-btn-lblue:visited {
background-color: var(--smw-ask-action-btn-lblue-bg);
color: var(--smw-ask-action-btn-lblue-color);
border-color: var(--smw-ask-action-btn-lblue-border-color);
}
.smw-ask-action-btn.smw-ask-action-btn-dblue,
.smw-ask-action-btn.smw-ask-action-btn-dblue:hover,
.smw-ask-action-btn.smw-ask-action-btn-dblue:visited {
background-color: var(--smw-ask-action-btn-dblue-bg);
color: var(--smw-ask-action-btn-dblue-color);
border-color: var(--smw-ask-action-btn-dblue-border-color);
}
.smw-ask-query textarea,
.smw-ask-actions textarea {
background-color: var(--ooui-interface);
border-color: var(--ooui-interface-border);
color: var(--ooui-text);
}
.smw-ask-query-format select {
background-color: var(--ooui-interface);
border: 1px solid var(--ooui-interface-border);
color: var(--ooui-text);
}
.smw-ask-toplinks {
background-color: var(--body-mid);
}
.smw-ask-toplinks span.smw-icon-info {
background: none;
padding: 0 !important;
}
.smw-ask-toplinks span.smw-icon-info::before {
content: '';
background: var(--text-color);
-webkit-mask: url("data:image/svg+xml,%3C%3Fxml version='1.0' encoding='UTF-8'%3F%3E%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 20 20'%3E%3Ctitle%3Einfo%3C/title%3E%3Cpath d='M10 0C4.477 0 0 4.477 0 10s4.477 10 10 10 10-4.477 10-10S15.523 0 10 0zM9 5h2v2H9zm0 4h2v6H9z'/%3E%3C/svg%3E") no-repeat 50% 50% / contain;
mask: url("data:image/svg+xml,%3C%3Fxml version='1.0' encoding='UTF-8'%3F%3E%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 20 20'%3E%3Ctitle%3Einfo%3C/title%3E%3Cpath d='M10 0C4.477 0 0 4.477 0 10s4.477 10 10 10 10-4.477 10-10S15.523 0 10 0zM9 5h2v2H9zm0 4h2v6H9z'/%3E%3C/svg%3E") no-repeat 50% 50% / contain;
padding: 0 0 3px 18px;
}
.smw-ask-options-row-odd {
background-color: var(--body-light);
}
.smw-ask-options-row-even {
background-color: var(--body-mid);
}
#options-toggle:not(:checked) + #options-list .options-parameter-list:after {
background-image: linear-gradient(to bottom, transparent, var(--body-mid) 90%);
}
.smw-ask-button-submit input {
background-color: var(--ooui-normal);
border-color: var(--ooui-normal-border);
color: var(--text-color);
}
.smw-ask-button-submit input:hover,
.smw-ask-button-lgrey:hover {
background-color: var(--ooui-normal--hover);
border-color: var(--ooui-normal-border);
}
input.smw-ask-action-btn.smw-ask-action-btn-dblue {
background-color: var(--ooui-normal);
border-color: var(--ooui-normal-border);
color: var(--ooui-text);
}
a.smw-ask-action-btn.smw-ask-action-btn-lblue {
background-color: var(--body-mid);
border-color: var(--body-mid);
color: var(--ooui-text);
}
a.smw-ask-action-btn.smw-ask-action-btn-lblue:visited {
background-color: var(--body-mid);
border-color: var(--body-mid);
color: var(--ooui-text);
}
a.smw-ask-action-btn.smw-ask-action-btn-lblue:hover {
background-color: var(--body-mid);
border-color: var(--body-mid);
color: var(--ooui-text);
}
a.smw-ask-action-btn-lgrey {
background-color: var(--ooui-normal);
border-color: var(--ooui-normal-border);
color: var(--ooui-text);
}
a.smw-ask-action-btn-lgrey:hover {
background-color: var(--ooui-normal--hover);
border-color: var(--ooui-normal-border);
color: var(--ooui-text);
}
.smw-callout-error {
background-color: var(--errorbox-bg);
border-color: var(--errorbox-border);
}
.smw-callout-info {
background-color: var(--body-light);
border-color: var(--body-dark);
}
.smw-callout-success {
background-color: var(--successbox-bg);
border-color: var(--successbox-border);
}
.smw-callout-warning {
background-color: var(--warningbox-bg);
border-color: var(--warningbox-bg);
}
.smw-tabs input.nav-tab:checked + label.nav-label,
.smw-tabs input.nav-tab:checked + label.nav-label:hover {
color: inherit;
}
#tab-smw-property-value:checked + label.nav-label .usage-count {
color: #fff;
background-color: var(--ooui-progressive);
}
#tab-smw-property-value:checked + label.nav-label .usage-count.moderate {
color: #fff;
background-color: #b55e0c;
border-color: #b55e0c;
}
#tab-smw-property-value:checked + label.nav-label .usage-count.high {
color: #fff;
background-color: #9f261e;
border-color: #9f261e;
}
.smw-property-page-results .header-title {
background-color: var(--ooui-interface);
border-bottom-color: var(--ooui-interface-border);
color: var(--ooui-text);
}
.smw-property-page-results .value-row:hover {
background-color: var(--ooui-normal--hover);
}
.smw-property-page-results .smw-table .header-row {
color: var(--text-color);
}
.tippy-tooltip.light-border-theme {
background-color: var(--body-light);
color: var(--text-color);
}
.tippy-tooltip.light-border-theme .tippy-arrow {
border-top-color: var(--body-light);
}
.tippy-tooltip.light-border-theme .tippy-arrow:after {
border-top-color: var(--body-light);
}
.tippy-header {
background-color: var(--body-dark);
border-bottom-color: var(--body-mid);
}
.smw-ui-input-filter {
background-color: var(--ooui-interface);
border-color: var(--ooui-interface-border);
color: var(--ooui-text);
}
.smw-ui-input-filter input {
border-left-color: var(--ooui-interface-border) !important;
color: var(--ooui-text) !important;
}
.smw-ui-pagination .page-link.link-disabled {
background-color: var(--ooui-disabled);
border-color: var(--ooui-disabled-border);
color: var(--subtle-color);
}
.smw-ui-pagination .page-link {
background-color: var(--ooui-normal);
border-color: var(--ooui-normal-border);
color: var(--link-color);
}
.smw-ui-pagination .page-link:hover {
background-color: var(--ooui-normal--hover);
border-color: var(--ooui-normal-border);
color: var(--link-color);
}
.smw-ui-pagination .page-link.link-active {
color: #fff;
background-color: var(--ooui-progressive);
border-color: var(--ooui-progressive);
}
.smw-tabs input.nav-tab:checked + label.nav-label {
border-color: var(--ooui-normal-border);
}
.smw-tabs section,
.smw-tabs .subtab-content {
border-top-color: var(--ooui-normal-border);
}
.smw-column-header {
color: var(--text-color);
}
.smw-factbox {
background: var(--body-main);
border-color: transparent;
}
.mw-body .mw-indicators #mw-indicator-smw-entity-examiner.mw-indicator .smw-indicator-vertical-bar-loader {
display: none;
}
.smwb-theme-light .smwb-title,
.smwb-theme-light .smwb-center,
.smwb-theme-light .smwb-actions,
.smwb-theme-light .smwb-prophead {
background-color: var(--body-mid);
}
.smwb-theme-light .smwb-factbox {
border-left-color: var(--body-mid);
}
.smwb-theme-light .smwb-ifactbox {
border-right-color: var(--body-mid);
}
.smwb-theme-light .smwb-propval {
background-color: var(--body-light);
}
.smwb-action-separator {
border-color: var(--wikitable-border);
}
.smwb-bottom {
border-bottom: 1px solid var(--wikitable-border);
}
.smwb-ifactbox .smwb-cell,
.smwb-factbox .smwb-cell {
border-top: 1px solid var(--wikitable-border);
}
.smwb-propvalue .smwb-prophead,
.smwb-ipropvalue .smwb-prophead,
.smwb-propvalue .smwb-propval,
.smwb-ipropvalue .smwb-propval {
font-size: 0.9em;
}
:root {
--filter-black-to-link: invert(36%) sepia(58%) saturate(433%) hue-rotate(344deg) brightness(100%) contrast(91%);
}
#bodyContent span.smwbrowse a {
color: black;
background-image: url('filepath://Smwbrowse.svg');
filter: var(--filter-black-to-link);
}
#bodyContent span.smwbrowse a:hover {
color: black;
background-image: url('filepath://Smwbrowse-hover.svg');
text-decoration: underline;
}
#bodyContent span.smwsearch a {
color: black;
filter: var(--filter-black-to-link);
background-image: url('filepath://Smwsearch.svg');
}
#bodyContent span.smwsearch a:hover {
color: black;
background-image: url('filepath://Smwsearch-hover.svg');
text-decoration: underline;
}
:root {
--tabber-tab-bg: var(--body-light);
--tabber-tab-border-color: var(--body-border);
--tabber-active-tab-bg: var(--body-light);
--tabber-active-tab-color: var(--text-color);
--tabber-active-tab-hover-bg: var(--body-light);
--tabber-active-tab-hover-border-color: var(--body-border);
--tabber-active-tab-hover-color: var(--text-color);
--tabber-active-tab-border-hider-color: var(--body-light);
--tabber-inactive-tab-bg: var(--body-background-color);
--tabber-inactive-tab-border-color: var(--body-border);
--tabber-inactive-tab-color: var(--text-color);
--tabber-inactive-tab-hover-bg: var(--body-light);
--tabber-inactive-tab-hover-border-color: var(--body-border);
}
.tabber {
margin: 1em 0;
}
.tabber .tabbertab {
background-color: var(--tabber-tab-bg);
border: 1px solid var(--tabber-tab-border-color);
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
padding: 1em 1.5em;
}
ul.tabbernav {
border: none;
margin-left: 2em;
margin-bottom: 0;
margin-right: 2em;
padding: 0;
font-family: inherit;
}
ul.tabbernav li.tabberactive > a {
background-color: var(--tabber-active-tab-bg);
color: var(--tabber-active-tab-color);
border-bottom: none;
position: relative;
}
ul.tabbernav li.tabberactive > a:hover {
color: var(--tabber-active-tab-hover-color);
background-color: var(--tabber-active-tab-hover-bg);
border-color: var(--tabber-active-tab-hover-border-color);
border-bottom: none;
}
ul.tabbernav li.tabberactive > a::after {
content: '';
position: absolute;
left: 0;
right: 0;
bottom: -1px;
border-bottom: 2px solid var(--tabber-active-tab-border-hider-color);
}
ul.tabbernav li a {
background-color: var(--tabber-inactive-tab-bg);
border-bottom: transparent;
border-color: var(--tabber-inactive-tab-border-color);
color: var(--tabber-inactive-tab-color);
display: inline-block;
font-size: 110%;
padding: 0.5em 1em;
}
ul.tabbernav li a:hover {
background-color: var(--tabber-inactive-tab-hover-bg);
border-color: var(--tabber-inactive-tab-hover-border-color);
}
ul.tabbernav li a:link,
ul.tabbernav li a:visited {
color: var(--tabber-inactive-tab-color);
}
:root {
--ooui-text: var(--text-color);
--ooui-interface: var(--body-light);
--ooui-interface-border: var(--body-border);
--ooui-window-background: rgba(255, 255, 255, 0.5);
--ooui-normal: #cdb3a6;
--ooui-normal--hover: #d8c4ba;
--ooui-normal-border: #d1b9ad;
--ooui-progressive: #936243;
--ooui-progressive--hover: #b27a57;
--ooui-accent: var(--link-color);
--ooui-input: #fff;
--ooui-input-border: #d1b9ad;
--ooui-input-border--hover: #ae846f;
--ooui-disabled: #ece3de;
--ooui-disabled-border: #e3d5ce;
--ooui-disabled-text: var(--subtle-color);
--ooui-pending-background-image: repeating-linear-gradient(-45deg, var(--search-box), var(--search-box) 20px, var(--body-main) 20px, var(--body-main) 30px);
}
.oo-ui-widget {
color: var(--ooui-text);
}
.oo-ui-checkboxInputWidget [type='checkbox'] + span,
.oo-ui-radioInputWidget [type='radio'] + span {
background-color: var(--ooui-input);
border-color: var(--ooui-input-border);
}
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:checked + span,
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:indeterminate + span {
background-color: var(--ooui-progressive);
border-color: var(--ooui-progressive);
}
.oo-ui-radioInputWidget.oo-ui-widget-enabled [type='radio']:checked + span {
border-color: var(--ooui-progressive);
}
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:checked:hover + span,
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:indeterminate:hover + span {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
}
.oo-ui-radioInputWidget.oo-ui-widget-enabled [type='radio']:checked:hover + span {
border-color: var(--ooui-progressive--hover);
}
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:hover + span,
.oo-ui-radioInputWidget.oo-ui-widget-enabled [type='radio']:hover + span {
border-color: var(--ooui-accent);
}
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:focus + span {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:active + span,
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:checked:active + span,
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:indeterminate:active + span {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
box-shadow: inset 0 0 0 1px var(--ooui-progressive--hover);
}
.oo-ui-radioInputWidget.oo-ui-widget-enabled [type='radio']:active + span {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
}
.oo-ui-radioInputWidget.oo-ui-widget-enabled [type='radio']:checked:active + span {
border-color: var(--ooui-progressive--hover);
box-shadow: inset 0 0 0 1px var(--ooui-progressive--hover);
}
.oo-ui-radioInputWidget.oo-ui-widget-enabled [type='radio']:checked:active + span:before {
border-color: var(--ooui-progressive--hover);
}
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:checked:focus + span,
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:indeterminate:focus + span {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent), inset 0 0 0 2px #fff;
}
.oo-ui-checkboxInputWidget [type='checkbox']:disabled + span,
.oo-ui-radioInputWidget [type='radio']:disabled + span {
background-color: var(--ooui-disabled);
border-color: var(--ooui-disabled);
}
.oo-ui-dropdownWidget-handle {
border-color: var(--ooui-normal-border);
}
.oo-ui-dropdownWidget.oo-ui-widget-enabled .oo-ui-dropdownWidget-handle {
background-color: var(--ooui-normal);
color: var(--ooui-text);
}
.oo-ui-dropdownWidget.oo-ui-widget-enabled .oo-ui-dropdownWidget-handle:hover {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
}
.oo-ui-dropdownWidget.oo-ui-widget-enabled .oo-ui-dropdownWidget-handle:active {
color: var(--ooui-text);
}
.oo-ui-dropdownWidget.oo-ui-widget-enabled .oo-ui-dropdownWidget-handle:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-dropdownWidget.oo-ui-widget-enabled.oo-ui-dropdownWidget-open .oo-ui-dropdownWidget-handle {
background-color: var(--ooui-normal--hover);
}
.oo-ui-dropdownWidget.oo-ui-widget-disabled .oo-ui-dropdownWidget-handle {
color: var(--ooui-disabled-text);
text-shadow: none;
border-color: var(--ooui-disabled-border);
background-color: var(--ooui-disabled);
}
.oo-ui-dropdownInputWidget select {
border-color: var(--ooui-normal-border);
}
.oo-ui-dropdownInputWidget option {
background-color: var(--ooui-interface);
}
.oo-ui-dropdownInputWidget.oo-ui-widget-enabled {
background-color: var(--ooui-normal);
}
.oo-ui-dropdownInputWidget.oo-ui-widget-enabled:hover {
background-color: var(--ooui-normal--hover);
}
.oo-ui-dropdownInputWidget.oo-ui-widget-enabled select {
color: var(--ooui-text);
}
.oo-ui-dropdownInputWidget.oo-ui-widget-enabled select:hover,
.oo-ui-dropdownInputWidget.oo-ui-widget-enabled select:active {
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
}
.oo-ui-dropdownInputWidget.oo-ui-widget-enabled select:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-labelWidget.oo-ui-inline-help {
color: var(--byline-color);
}
.oo-ui-menuSelectWidget {
background-color: var(--ooui-interface);
border-color: var(--ooui-interface-border);
}
.oo-ui-menuSelectWidget-frameless {
box-shadow: inset 0 -1px 0 0 var(--ooui-normal-border);
}
.oo-ui-menuSectionOptionWidget {
color: var(--byline-color);
}
.oo-ui-menuOptionWidget.oo-ui-optionWidget-highlighted,
.oo-ui-menuOptionWidget.oo-ui-optionWidget-selected {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
}
.oo-ui-menuOptionWidget.oo-ui-optionWidget-selected.oo-ui-menuOptionWidget.oo-ui-optionWidget-highlighted,
.oo-ui-menuOptionWidget.oo-ui-optionWidget-pressed.oo-ui-menuOptionWidget.oo-ui-optionWidget-highlighted {
color: var(--ooui-accent);
}
.oo-ui-menuOptionWidget.oo-ui-widget-enabled.oo-ui-optionWidget {
color: var(--ooui-text);
}
.oo-ui-messageDialog-title {
color: inherit;
}
.oo-ui-messageWidget.oo-ui-messageWidget-block.oo-ui-flaggedElement-error {
background-color: var(--errorbox-bg);
border-color: var(--errorbox-border);
}
.oo-ui-messageWidget.oo-ui-messageWidget-block.oo-ui-flaggedElement-warning {
background-color: var(--warningbox-bg);
border-color: var(--warningbox-border);
}
.oo-ui-messageWidget.oo-ui-messageWidget-block.oo-ui-flaggedElement-success {
background-color: var(--successbox-bg);
border-color: var(--successbox-border);
}
.oo-ui-messageWidget.oo-ui-messageWidget-block.oo-ui-flaggedElement-notice {
background-color: var(--messagebox-info-background);
border-color: var(--messagebox-info-border);
}
.oo-ui-messageWidget.oo-ui-flaggedElement-error:not(.oo-ui-messageWidget-block),
.oo-ui-messageWidget.oo-ui-flaggedElement-success:not(.oo-ui-messageWidget-block) {
color: var(--ooui-text);
}
.oo-ui-optionWidget.oo-ui-widget-disabled {
color: var(--ooui-disabled-text);
}
.oo-ui-outlineControlsWidget {
background-color: var(--ooui-normal);
}
.oo-ui-outlineOptionWidget.oo-ui-optionWidget-highlighted {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
}
.oo-ui-popupWidget-popup {
background-color: var(--ooui-interface);
border-color: var(--ooui-interface-border);
}
.oo-ui-popupWidget-anchored-top .oo-ui-popupWidget-anchor:after {
border-bottom-color: var(--ooui-interface);
}
.oo-ui-popupWidget-anchored-top .oo-ui-popupWidget-anchor:before {
border-bottom-color: var(--ooui-interface-border);
}
.oo-ui-popupWidget-anchored-bottom .oo-ui-popupWidget-anchor:after {
border-top-color: var(--ooui-interface);
}
.oo-ui-popupWidget-anchored-bottom .oo-ui-popupWidget-anchor:before {
border-top-color: var(--ooui-interface-border);
}
.oo-ui-popupWidget-anchored-start .oo-ui-popupWidget-anchor:after {
border-right-color: var(--ooui-interface);
}
.oo-ui-popupWidget-anchored-start .oo-ui-popupWidget-anchor:before {
border-right-color: var(--ooui-interface-border);
}
.oo-ui-popupWidget-anchored-end .oo-ui-popupWidget-anchor:after {
border-left-color: var(--ooui-interface);
}
.oo-ui-popupWidget-anchored-end .oo-ui-popupWidget-anchor:before {
border-left-color: var(--ooui-interface-border);
}
.oo-ui-searchWidget-query {
border-bottom-color: var(--ooui-interface-border);
}
.oo-ui-selectFileWidget-dropTarget {
background-color: var(--ooui-interface);
border-color: var(--ooui-interface-border);
}
.oo-ui-selectFileWidget.oo-ui-widget-enabled.oo-ui-selectFileWidget-dropTarget {
background-color: var(--ooui-interface);
}
.oo-ui-selectFileWidget.oo-ui-widget-enabled.oo-ui-selectFileWidget-dropTarget:hover {
border-color: var(--ooui-input-border--hover);
}
.oo-ui-tabOptionWidget {
color: var(--ooui-text);
}
.oo-ui-tabSelectWidget-framed .oo-ui-tabOptionWidget.oo-ui-optionWidget-selected {
background-color: var(--body-dark);
color: var(--ooui-text);
}
.oo-ui-tabSelectWidget-framed .oo-ui-tabOptionWidget.oo-ui-optionWidget-selected .oo-ui-labelElement-label {
border-bottom-color: var(--body-border);
}
.oo-ui-tabSelectWidget-framed .oo-ui-tabOptionWidget.oo-ui-widget-enabled:hover,
.oo-ui-tabSelectWidget-framed .oo-ui-tabOptionWidget.oo-ui-widget-enabled:active {
background-color: var(--body-light);
color: var(--ooui-text);
}
.oo-ui-tabSelectWidget-framed .oo-ui-tabOptionWidget.oo-ui-widget-enabled.oo-ui-optionWidget-selected:hover {
background-color: var(--body-dark);
}
.oo-ui-tabSelectWidget-frameless .oo-ui-tabOptionWidget.oo-ui-optionWidget-selected {
color: var(--ooui-progressive);
box-shadow: inset 0 -2px 0 0 var(--ooui-progressive);
}
.oo-ui-tabSelectWidget-frameless .oo-ui-tabOptionWidget.oo-ui-optionWidget-selected:hover,
.oo-ui-tabSelectWidget-frameless .oo-ui-tabOptionWidget.oo-ui-optionWidget-selected:focus {
color: var(--ooui-progressive--hover);
box-shadow: inset 0 -2px 0 0 var(--ooui-progressive--hover);
}
.oo-ui-tabSelectWidget-framed {
background: none;
border-bottom: 1px solid var(--ooui-interface-border);
}
.oo-ui-tabSelectWidget-frameless {
box-shadow: inset 0 -1px 0 0 var(--ooui-interface-border);
}
.oo-ui-tabSelectWidget-mobile {
}
.oo-ui-tabSelectWidget-mobile.oo-ui-tabSelectWidget-framed:after {
background: var(--mobile-navbox-linear-gradient);
}
.oo-ui-tabSelectWidget-mobile.oo-ui-tabSelectWidget-frameless:after {
background: var(--mobile-navbox-linear-gradient);
}
.oo-ui-tagItemWidget {
border-color: var(--ooui-normal-border);
}
.oo-ui-tagItemWidget.oo-ui-widget-enabled {
color: var(--ooui-text);
}
.oo-ui-tagItemWidget.oo-ui-widget-enabled:hover {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
}
.oo-ui-tagItemWidget.oo-ui-widget-enabled:not( .oo-ui-tagItemWidget-fixed ) {
background-color: var(--ooui-normal);
}
.oo-ui-tagItemWidget.oo-ui-widget-enabled .oo-ui-buttonElement-button:hover {
background-color: var(--ooui-normal--hover);
}
.oo-ui-tagMultiselectWidget.oo-ui-widget-enabled {
background-color: var(--ooui-interface);
}
.oo-ui-tagMultiselectWidget.oo-ui-widget-enabled.oo-ui-tagMultiselectWidget-outlined {
background-color: var(--ooui-normal);
}
.oo-ui-tagMultiselectWidget.oo-ui-widget-enabled.oo-ui-tagMultiselectWidget-outlined .oo-ui-tagItemWidget.oo-ui-widget-enabled {
background-color: var(--ooui-interface);
}
.oo-ui-textInputWidget .oo-ui-inputWidget-input {
background-color: var(--ooui-input);
color: var(--ooui-text);
border-color: var(--ooui-input-border);
}
.oo-ui-textInputWidget.oo-ui-widget-enabled .oo-ui-inputWidget-input::placeholder {
color: var(--subtle-color);
}
.oo-ui-textInputWidget.oo-ui-widget-enabled .oo-ui-inputWidget-input:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-textInputWidget.oo-ui-widget-enabled .oo-ui-inputWidget-input[readonly]:not(.oo-ui-pendingElement-pending) {
background-color: var(--ooui-disabled);
color: var(--ooui-disabled-text);
}
.oo-ui-textInputWidget.oo-ui-widget-enabled:hover .oo-ui-inputWidget-input {
border-color: var(--ooui-input-border--hover);
}
.oo-ui-textInputWidget.oo-ui-widget-enabled:hover .oo-ui-inputWidget-input:focus {
border-color: var(--ooui-accent);
}
@media screen and (min-width: 0) {
.oo-ui-textInputWidget.oo-ui-widget-enabled textarea.oo-ui-inputWidget-input:focus {
outline: 1px solid var(--ooui-accent);
}
}
.oo-ui-textInputWidget.oo-ui-widget-disabled .oo-ui-inputWidget-input {
background-color: var(--ooui-disabled);
color: var(--ooui-disabled-text);
text-shadow: none;
border-color: var(--ooui-disabled-border);
}
.oo-ui-toggleSwitchWidget {
background-color: var(--ooui-input);
border-color: var(--ooui-input-border);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled .oo-ui-toggleSwitchWidget-grip {
background-color: var(--ooui-input);
border-color: var(--ooui-input-border);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:hover {
background-color: var(--ooui-input);
border-color: var(--ooui-accent);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:hover .oo-ui-toggleSwitchWidget-grip {
background-color: var(--ooui-input);
border-color: var(--ooui-accent);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:active,
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:active:hover,
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:active:focus {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
box-shadow: inset 0 0 0 1px var(--ooui-progressive--hover);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:active .oo-ui-toggleSwitchWidget-grip,
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:active:hover .oo-ui-toggleSwitchWidget-grip,
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:active:focus .oo-ui-toggleSwitchWidget-grip {
background-color: var(--ooui-input);
border-color: var(--ooui-input);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:focus .oo-ui-toggleSwitchWidget-grip {
border-color: var(--ooui-accent);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled.oo-ui-toggleWidget-on {
background-color: var(--ooui-progressive);
border-color: var(--ooui-progressive);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled.oo-ui-toggleWidget-on .oo-ui-toggleSwitchWidget-grip {
background-color: var(--ooui-input);
border-color: var(--ooui-input);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled.oo-ui-toggleWidget-on:hover {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled.oo-ui-toggleWidget-on:active,
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled.oo-ui-toggleWidget-on:active:hover {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled.oo-ui-toggleWidget-on:focus {
border-color: var(--ooui-progressive);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled.oo-ui-toggleWidget-on:focus::before {
border-color: #fff;
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-disabled {
background-color: var(--ooui-disabled);
border-color: var(--ooui-disabled);
}
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled > .oo-ui-buttonElement-button {
color: var(--ooui-text);
}
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled > .oo-ui-buttonElement-button:hover {
color: var(--ooui-text);
}
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled > .oo-ui-buttonElement-button:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled.oo-ui-buttonElement-pressed > input.oo-ui-buttonElement-button,
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled > .oo-ui-buttonElement-button:active {
color: var(--ooui-text);
}
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button,
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button:hover {
color: var(--ooui-text);
}
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button:active,
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive.oo-ui-buttonElement-pressed > .oo-ui-buttonElement-button {
color: var(--ooui-text);
border-color: var(--ooui-text);
}
.oo-ui-buttonElement-frameless.oo-ui-widget-disabled > .oo-ui-buttonElement-button {
color: var(--ooui-disabled-text);
}
.oo-ui-buttonElement-framed.oo-ui-widget-disabled > .oo-ui-buttonElement-button {
background-color: var(--ooui-disabled);
border-color: var(--ooui-disabled-border);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled > .oo-ui-buttonElement-button {
background-color: var(--ooui-normal);
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled > .oo-ui-buttonElement-button:hover {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled > .oo-ui-buttonElement-button:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-buttonElement-active > .oo-ui-buttonElement-button {
background-color: var(--ooui-progressive--hover);
color: #fff;
border-color: var(--ooui-progressive--hover);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-buttonElement-active > .oo-ui-buttonElement-button:focus {
border-color: var(--ooui-progressive--hover);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled > .oo-ui-buttonElement-button:active,
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-buttonElement-pressed > .oo-ui-buttonElement-button {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive {
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button {
color: var(--ooui-text);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button:hover {
background-color: var(--ooui-normal--hover);
border-color: var(--ooui-progressive--hover);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-destructive > .oo-ui-buttonElement-button {
color: var(--ooui-text);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-destructive > .oo-ui-buttonElement-button:hover {
background-color: var(--ooui-normal--hover);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button {
background-color: var(--ooui-progressive);
border-color: var(--ooui-progressive);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button:hover {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent), inset 0 0 0 2px #fff;
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button:active,
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive.oo-ui-buttonElement-pressed > .oo-ui-buttonElement-button,
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive.oo-ui-buttonElement-active > .oo-ui-buttonElement-button,
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive.oo-ui-popupToolGroup-active > .oo-ui-buttonElement-button {
color: #fff;
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
}
.oo-ui-pendingElement-pending {
background-image: var(--ooui-pending-background-image);
background-size: 200%;
animation: oo-ui-pendingElement-stripes 6s linear infinite;
}
@keyframes oo-ui-pendingElement-stripes {
100% {
background-position: 100%;
}
}
.oo-ui-messageDialog-content > .oo-ui-window-foot {
outline-color: var(--ooui-interface-border);
}
.oo-ui-messageDialog-message {
color: var(--ooui-text);
}
.oo-ui-messageDialog-actions-horizontal .oo-ui-actionWidget {
border-right-color: var(--ooui-interface-border);
}
.oo-ui-messageDialog-actions-vertical .oo-ui-actionWidget {
border-bottom-color: var(--ooui-interface-border);
}
.oo-ui-processDialog-content .oo-ui-window-head,
.oo-ui-processDialog-content .oo-ui-window-foot {
outline-color: var(--ooui-interface-border);
}
.oo-ui-processDialog .oo-ui-actionWidget > .oo-ui-buttonElement-button {
border-top-color: transparent;
border-bottom-color: transparent;
}
.oo-ui-processDialog .oo-ui-actionWidget > .oo-ui-buttonElement-button:hover,
.oo-ui-processDialog .oo-ui-actionWidget > .oo-ui-buttonElement-button:active {
border-top-color: transparent;
border-bottom-color: transparent;
}
.oo-ui-processDialog .oo-ui-actionWidget:not( .oo-ui-flaggedElement-progressive ):not( .oo-ui-flaggedElement-destructive ) > .oo-ui-buttonElement-button:hover,
.oo-ui-processDialog .oo-ui-actionWidget:not( .oo-ui-flaggedElement-progressive ):not( .oo-ui-flaggedElement-destructive ) > .oo-ui-buttonElement-button:active {
border-right-color: var(--ooui-interface-border);
border-left-color: transparent;
}
.oo-ui-processDialog .oo-ui-actionWidget:not( .oo-ui-flaggedElement-progressive ):not( .oo-ui-flaggedElement-destructive ) > .oo-ui-buttonElement-button:focus {
border-color: var(--ooui-accent);
}
.oo-ui-processDialog-actions-safe .oo-ui-actionWidget > .oo-ui-buttonElement-button,
.oo-ui-processDialog-actions-other .oo-ui-actionWidget > .oo-ui-buttonElement-button {
border-right-color: var(--ooui-normal-border);
border-left-color: transparent;
}
.oo-ui-processDialog-actions-safe .oo-ui-widget-enabled.oo-ui-iconElement:not( .oo-ui-labelElement ) > .oo-ui-buttonElement-button:hover {
background-color: var(--ooui-normal--hover);
border-right-color: var(--ooui-interface-border);
}
.oo-ui-windowManager-modal > .oo-ui-dialog {
background-color: var(--ooui-window-background);
}
.oo-ui-windowManager-modal > .oo-ui-dialog > .oo-ui-window-frame {
background-color: var(--ooui-interface);
}
.oo-ui-windowManager-modal.oo-ui-windowManager-floating > .oo-ui-dialog > .oo-ui-window-frame {
border-color: var(--ooui-interface-border);
}
.oo-ui-window {
color: var(--ooui-text);
}
.oo-ui-toolbar-bar {
background-color: var(--ooui-interface);
color: var(--ooui-text);
}
.oo-ui-toolbar-position-top > .oo-ui-toolbar-bar {
border-bottom-color: var(--body-mid);
}
.oo-ui-toolbar-bar .oo-ui-bookletLayout > .oo-ui-menuLayout-menu {
border-right-color: var(--body-mid);
}
.oo-ui-tool.oo-ui-widget-enabled > .oo-ui-tool-link:hover {
background-color: var(--ooui-normal--hover);
}
.oo-ui-tool.oo-ui-widget-enabled > .oo-ui-tool-link:focus {
outline: 1px solid var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-tool.oo-ui-widget-enabled > .oo-ui-tool-link:active,
.oo-ui-tool.oo-ui-widget-enabled.oo-ui-tool-active > .oo-ui-tool-link,
.oo-ui-tool.oo-ui-widget-enabled.oo-ui-popupToolGroup-active > .oo-ui-tool-link {
background-color: var(--ooui-normal--hover);
color: var(--ooui-accent);
box-shadow: none;
}
.oo-ui-tool.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive > .oo-ui-tool-link {
background-color: var(--ooui-progressive);
}
.oo-ui-tool.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive > .oo-ui-tool-link:hover {
background-color: var(--ooui-progressive--hover);
}
.oo-ui-tool.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive > .oo-ui-tool-link:focus {
box-shadow: inset 0 0 0 1px var(--ooui-accent), inset 0 0 0 2px #fff;
}
.oo-ui-tool.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive > .oo-ui-tool-link:active,
.oo-ui-tool.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive.oo-ui-tool-active > .oo-ui-tool-link {
background-color: var(--ooui-progressive--hover);
}
.oo-ui-listToolGroup-tools .oo-ui-tool.oo-ui-widget-enabled {
background-color: var(--ooui-normal);
}
.oo-ui-listToolGroup-tools .oo-ui-tool.oo-ui-widget-enabled:hover {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
}
.oo-ui-listToolGroup-tools .oo-ui-tool-active.oo-ui-widget-enabled .oo-ui-tool-link .oo-ui-tool-title {
color: var(--ooui-progressive);
}
.oo-ui-menuToolGroup {
border-left-color: var(--body-mid);
border-right-color: var(--body-mid);
}
.oo-ui-popupToolGroup-tools {
background-color: var(--ooui-interface);
border-color: var(--body-mid);
}
.oo-ui-popupToolGroup.oo-ui-widget-enabled > .oo-ui-popupToolGroup-handle:hover {
background-color: var(--ooui-normal--hover);
}
.oo-ui-popupToolGroup.oo-ui-widget-enabled > .oo-ui-popupToolGroup-handle:focus {
outline: 1px solid var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-toolbar-actions .oo-ui-popupToolGroup.oo-ui-widget-enabled > .oo-ui-popupToolGroup-handle:hover {
border-right-color: var(--ooui-normal--hover);
}
.oo-ui-popupToolGroup-tools .oo-ui-tool.oo-ui-widget-enabled .oo-ui-tool-link:focus {
box-shadow: inset 0 0 0 2px var(--ooui-accent);
}
.oo-ui-popupToolGroup-tools .oo-ui-tool-active.oo-ui-widget-enabled .oo-ui-tool-link .oo-ui-tool-title {
color: var(--ooui-progressive);
}
.oo-ui-popupToolGroup.oo-ui-popupToolGroup-active > .oo-ui-popupToolGroup-handle {
background-color: var(--ooui-normal);
color: var(--ooui-accent);
}
.oo-ui-popupToolGroup.oo-ui-popupToolGroup-active > .oo-ui-popupToolGroup-handle:hover {
background-color: var(--ooui-normal--hover);
color: var(--ooui-accent);
}
.oo-ui-bookletLayout-outlinePanel > .oo-ui-outlineControlsWidget {
border-top-color: var(--ooui-interface-border);
}
.oo-ui-bookletLayout > .oo-ui-menuLayout-menu {
border-right-color: var(--ooui-interface-border);
}
.oo-ui-fieldLayout-disabled > .oo-ui-fieldLayout-body > .oo-ui-fieldLayout-header > .oo-ui-labelElement-label {
color: var(--ooui-disabled-text);
}
.oo-ui-panelLayout-framed {
border-color: var(--sidebar);
}
.oo-ui-icon-settings {
background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' width='20' height='20' viewBox='0 0 20 20'%3E%3Ctitle%3Esettings%3C/title%3E%3Cg transform='translate(10 10)'%3E%3Cpath id='a' d='M1.5-10h-3l-1 6.5h5m0 7h-5l1 6.5h3'/%3E%3Cuse xlink:href='%23a' transform='rotate(45)'/%3E%3Cuse xlink:href='%23a' transform='rotate(90)'/%3E%3Cuse xlink:href='%23a' transform='rotate(135)'/%3E%3C/g%3E%3Cpath d='M10 2.5a7.5 7.5 0 0 0 0 15 7.5 7.5 0 0 0 0-15v4a3.5 3.5 0 0 1 0 7 3.5 3.5 0 0 1 0-7'/%3E%3C/svg%3E");
}
.oo-ui-icon-clear {
background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 20 20'%3E%3Ctitle%3Eclear%3C/title%3E%3Cpath d='M10 0a10 10 0 1 0 10 10A10 10 0 0 0 10 0zm5.66 14.24-1.41 1.41L10 11.41l-4.24 4.25-1.42-1.42L8.59 10 4.34 5.76l1.42-1.42L10 8.59l4.24-4.24 1.41 1.41L11.41 10z'/%3E%3C/svg%3E");
}
.mw-widget-dateInputWidget-handle {
background-color: var(--ooui-input);
color: var(--ooui-text);
border-color: var(--ooui-input-border);
}
.mw-widget-dateInputWidget-calendar {
background-color: var(--ooui-interface);
}
.mw-widget-dateInputWidget.oo-ui-widget-enabled .mw-widget-dateInputWidget-handle:hover {
border-color: var(--ooui-input-border--hover);
}
.mw-widget-calendarWidget {
border-color: var(--ooui-interface-border);
}
.mw-widget-calendarWidget:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.mw-widget-calendarWidget-day,
.mw-widget-calendarWidget-day-heading {
color: var(--ooui-text);
}
.mw-widget-calendarWidget-day-additional {
color: var(--ooui-text);
opacity: 0.67;
}
.mw-widget-calendarWidget-day-today {
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.mw-widget-calendarWidget-item:hover {
background-color: var(--ooui-progressive);
}
.mw-widget-calendarWidget-item-selected {
background-color: var(--ooui-progressive--hover);
}
.mw-widgets-datetime-calendarWidget {
background-color: var(--ooui-interface);
border-color: var(--ooui-interface-border);
}
.mw-widgets-datetime-calendarWidget:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent), 0 2px 2px 0 rgba(0, 0, 0, 0.25);
}
.mw-widgets-datetime-calendarWidget-grid .mw-widgets-datetime-calendarWidget-cell.mw-widgets-datetime-calendarWidget-extra .oo-ui-buttonElement-button .oo-ui-labelElement-label {
color: var(--subtle-color);
}
.mw-widgets-datetime-calendarWidget-grid .mw-widgets-datetime-calendarWidget-cell.mw-widgets-datetime-calendarWidget-selected .oo-ui-buttonElement-button {
background-color: var(--ooui-progressive--hover);
}
.mw-widgets-datetime-dateTimeInputWidget-handle {
background-color: var(--ooui-input);
color: var(--ooui-text);
border-color: var(--ooui-input-border);
}
.mw-widgets-datetime-dateTimeInputWidget.oo-ui-widget-enabled.mw-widgets-datetime-dateTimeInputWidget-handle:hover {
border-color: var(--ooui-input-border--hover);
}
.mw-widgets-datetime-dateTimeInputWidget.oo-ui-widget-enabled:hover input,
.mw-widgets-datetime-dateTimeInputWidget.oo-ui-widget-enabled:hover textarea {
border-color: var(--ooui-input-border--hover);
}
.mw-widgets-datetime-dateTimeInputWidget.oo-ui-widget-enabled .mw-widgets-datetime-dateTimeInputWidget-editField:hover {
background-color: var(--ooui-normal);
}
.ve-activated .ve-init-mw-desktopArticleTarget-originalContent #catlinks:hover {
background: var(--ooui-normal--hover);
}
.ve-ui-overlay {
font-family: inherit;
}
.oo-ui-toolbar-position-top .ve-ui-toolbarDialog-position-above {
border-top-color: var(--body-mid);
}
.ve-ce-branchNode-blockSlug,
.ve-ce-branchNode-newSlug {
outline-color: var(--body-border);
background-color: var(--ooui-interface);
}
.ve-ui-specialCharacterPage h3 {
color: var(--byline-color);
}
.ve-ui-specialCharacterPage-character {
border-color: var(--body-mid);
}
.ve-ui-specialCharacterPage-character:hover {
border-color: var(--body-dark);
}
.ve-ce-linkAnnotation.ve-ce-annotation-active {
box-shadow: 0 0 0 1px var(--body-mid);
background: none;
}
.ve-ui-desktopContext .ve-ui-linkContextItem .ve-ui-linkContextItem-label {
border-color: var(--body-border);
}
.ve-ui-mwHelpPopupTool-version-label,
.ve-ui-mwHelpPopupTool-version-link,
.ve-ui-mwHelpPopupTool-version-date {
color: var(--byline-color);
}
.ve-ce-tableCellableNode {
border-color: var(--body-mid);
}
.ve-ce-mwReferencesListNode-muted {
color: var(--byline-color);
}
.ve-ui-mwTemplatePage-description,
.ve-ui-mwParameterPage-label,
.ve-ui-mwParameterPage-description-required,
.ve-ui-mwParameterPage-description-deprecated {
color: var(--byline-color);
}
.mw-widget-titleWidget-menu .mw-widget-titleOptionWidget-description {
color: var(--byline-color);
}
.ve-ui-mwGalleryDialog-menuLayout > .oo-ui-menuLayout-menu,
.ve-ui-mwGalleryDialog-innerMenuLayout > .oo-ui-menuLayout-menu,
.ve-ui-mwGalleryDialog .ve-ui-mwGalleryDialog-image-container,
.ve-ui-targetWidget {
border-color: var(--body-border);
}
.ve-ui-targetWidget:not(.oo-ui-pendingElement-pending) {
background-color: var(--body-main);
}
.ve-ui-mwSaveDialog {
color: var(--ooui-text);
}
.ve-ui-mwSaveDialog-options {
background-color: var(--ooui-interface);
border-color: var(--body-border);
}
.ve-ui-mwSaveDialog-summary {
background-color: var(--ooui-input);
}
.ve-ui-mwSaveDialog-editSummary-count {
border-color: var(--body-border);
}
.ve-ui-mwSaveDialog-license {
color: var(--byline-color);
}
.ve-ui-mwReferenceContextItem-muted {
color: var(--byline-color);
}
.ve-ui-mwNoticesPopupTool-items > div:not(:first-child),
.ve-ui-mwHelpPopupTool-item:not(:first-child) {
border-color: var(--body-border);
}
.ve-ui-mwTransclusionOutlineControlsWidget {
background-color: var(--ooui-interface);
border-top-color: var(--body-border);
}
.ve-ui-mwTransclusionOutlineTemplateWidget-sticky {
background-color: var(--ooui-interface);
}
.ve-ui-mwTransclusionOutlineTemplateWidget .ve-ui-mwTransclusionOutlineParameterWidget.oo-ui-optionWidget-highlighted {
color: var(--ooui-text);
}
.ve-ui-mwTransclusionOutlineTemplateWidget-no-template-parameters {
color: var(--subtle-color);
}
.ve-ui-mwParameterPage-undocumentedLabel {
color: var(--subtle-color);
}
.ve-ui-mwTwoPaneTransclusionDialogLayout > .oo-ui-menuLayout-menu {
border-right: var(--body-border);
}
.ve-ui-mwParameterPage-doc-required,
.ve-ui-mwParameterPage-doc-deprecated,
.ve-ui-mwParameterPage-inlineDescription .ve-ui-mwParameterPage-doc-example {
color: var(--byline-color);
}
.ve-ui-expandableContent-toggle {
background-color: var(--ooui-interface);
}
.ve-ui-expandableContent-fade {
background: linear-gradient(to right, rgba(255, 255, 255, 0) 0, var(--ooui-interface) 90%);
}
.ve-ui-commandHelpDialog-shortcut > kbd,
.ve-ui-commandHelpDialog-sequence > kbd {
background-color: var(--keypress-background);
color: var(--keypress-color);
border-color: var(--keypress-border);
box-shadow: none;
text-shadow: none;
}
.ve-init-mw-desktopArticleTarget-toolbarPlaceholder-floating .ve-init-mw-desktopArticleTarget-toolbarPlaceholder-bar {
background: var(--ooui-interface);
}
.ve-init-mw-desktopArticleTarget-toolbarPlaceholder-bar {
border-bottom-color: var(--body-mid);
}
figure[typeof~='mw:File/Thumb'],
figure[typeof~='mw:File/Frame'],
figure[typeof~='mw:Image/Thumb'],
figure[typeof~='mw:Video/Thumb'],
figure[typeof~='mw:Image/Frame'],
figure[typeof~='mw:Video/Frame'] {
border: none;
background-color: var(--thumb-bg);
}
figure[typeof~='mw:File/Thumb'] > a:first-child > *:first-child:not( .mw-broken-media ),
figure[typeof~='mw:File/Frame'] > a:first-child > *:first-child:not( .mw-broken-media ),
figure[typeof~='mw:Image/Thumb'] > a:first-child > *:first-child:not( .mw-broken-media ),
figure[typeof~='mw:Video/Thumb'] > a:first-child > *:first-child:not( .mw-broken-media ),
figure[typeof~='mw:Image/Frame'] > a:first-child > *:first-child:not( .mw-broken-media ),
figure[typeof~='mw:Video/Frame'] > a:first-child > *:first-child:not( .mw-broken-media ) {
border: none;
background: var(--thumb-bg);
}
figure[typeof~='mw:File/Thumb'] > figcaption,
figure[typeof~='mw:File/Frame'] > figcaption,
figure[typeof~='mw:Image/Thumb'] > figcaption,
figure[typeof~='mw:Video/Thumb'] > figcaption,
figure[typeof~='mw:Image/Frame'] > figcaption,
figure[typeof~='mw:Video/Frame'] > figcaption {
border: none;
background-color: var(--thumb-caption-bg);
padding: 4px 6px;
}
:root {
--keypress-background: #eee;
--keypress-border: #ccc;
--keypress-color: #333;
}
.toc .toctitle > * {
color: #fff;
}
.navbox .navbox-title {
color: #fff;
}
.navbox .navbox-list:not(last-child) {
border-bottom: none;
}
.archivelist {
background-color: var(--body-light);
border: solid 1px var(--body-border);
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
float: right;
margin: 5px;
padding: 5px;
text-align: center;
width: 120px;
}
.shortcut {
border: 1px solid var(--body-border);
background: var(--body-light);
float: right;
font-size: 0.8em;
margin: 0.5em 0em 0.5em 1em;
padding: 0.5em;
text-align: center;
}
.hatnote,
.seealso {
font-style: italic;
}
.hatnote i,
.seealso i {
font-style: normal;
}
div.hatnote,
div.seealso {
margin: 0.5em 1.6em;
}
div.hatnote + div.hatnote,
div.hatnote + div.seealso,
div.seealso + div.hatnote,
div.seealso + div.seealso {
margin-top: -0.5em;
}
.keypress {
background: var(--keypress-background);
color: var(--keypress-color);
font-family: inherit;
border: 1px solid var(--keypress-border);
border-radius: 2px;
font-size: 0.9em;
margin: 0 0.1em;
padding: 0.1em 0.4em;
white-space: nowrap;
}
:root {
--documentation-background: #f9fafa;
--documentation-link-color: #e4eaee;
--documentation-headers-color: #fff;
--documentation-header-background: #949eaa;
--documentation-subheader-background: #808c9a;
--documentation-border: #e4eaee;
}
.documentation {
background: var(--documentation-background);
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
margin: 1em 0;
}
.documentation pre,
.documentation code {
background-color: var(--documentation-background);
border-color: var(--documentation-border);
}
.documentation h2,
.documentation hr {
border-color: var(--documentation-border);
}
.documentation-header {
color: var(--documentation-headers-color);
background: var(--documentation-header-background);
font-weight: bold;
padding: 1em 1.5em;
}
.documentation-title {
font-size: 1.25em;
}
.documentation-subheader {
color: var(--documentation-headers-color);
background: var(--documentation-subheader-background);
padding: 0.5em 1.5em;
}
.documentation-subheader a,
.documentation-subheader a:visited,
.documentation-subheader a:active {
color: var(--documentation-link-color);
}
.documentation-documentation,
.documentation-links {
font-size: 0.85em;
}
.documentation-content {
padding: 1em 1.5em;
}
.mw-templatedata-doc-params dl:not(:empty) {
column-count: 3;
border-top: 1px solid var(--body-border);
margin-bottom: 0.5em;
}
.mw-templatedata-doc-params dt::after {
content: ":";
}
.mw-templatedata-doc-params dd,
.mw-templatedata-doc-params dt {
margin: 0.1em 2em;
min-width: auto;
}
.mw-templatedata-doc-muted {
color: var(--subtle-color);
font-style: italic;
}
:root {
--infobox-text-color: var(--text-color);
--table-header: var(--body-dark);
--table-subheader: var(--body-mid);
--table-body: var(--body-light);
--table-border: var(--body-border);
}
.infobox {
font-size: 0.85em;
width: 300px;
border-collapse: collapse;
float: right;
table-layout: fixed;
margin: 0.5em 0 1em 1em;
}
.infobox .infobox-buttons {
display: flex;
flex-wrap: wrap;
justify-content: center;
grid-gap: 3px;
margin-bottom: 3px;
}
.infobox .infobox-buttons .button {
background: var(--table-subheader);
padding: 0 5px;
font-weight: bold;
flex: 1 1 20%;
max-width: 20%;
color: #fff;
}
.infobox .infobox-buttons .button.button-selected {
background: var(--table-header);
}
.infobox tbody {
border: 1px solid var(--table-border);
background: var(--table-body);
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(231, 215, 199, 0.5);
}
.infobox .infobox-header {
background: var(--table-header);
padding: 0.5em 0;
text-align: center;
color: #fff;
font-size: 1.15em;
font-weight: bold;
line-height: 1.4em;
}
.infobox .infobox-image {
text-align: center;
}
.infobox .infobox-subheader {
background: var(--table-subheader);
font-weight: bold;
text-align: center;
color: #fff;
}
.infobox .infobox-subheader a {
color: var(--link-color);
}
.infobox .infobox-padding {
backgound: var(--table-body);
}
.infobox tr td:not(.infobox-padding) {
padding: 0.2em 0.5em;
}
.infobox th:not(.infobox-header):not(.infobox-subheader):not(.infobox-nested) {
border-right: 2px solid var(--table-subheader);
text-align: right;
padding: 0.2em 0.5em;
}
.infobox select {
max-width: 300px;
}
.hidden {
display: none;
}
ol.references,
.reflist {
font-size: 90%;
}
.reflist {
list-style-type: decimal;
}
.reflist .references {
font-size: 100%;
list-style-type: inherit;
}
.reflist-lower-alpha {
list-style-type: lower-alpha;
}
ol.references li:target,
sup.reference:target {
background-color: var(--body-light);
}
.hideQuotes .refhide {
display: none;
}
:root {
--messagebox-obsolete-background: #cfcfcf;
--messagebox-obsolete-border: #464646;
--messagebox-obsolete-color: var(--text-color);
--messagebox-obsolete-link-color: #6c6c6c;
--messagebox-info-background: #ebebeb;
--messagebox-info-border: #898989;
--messagebox-info-color: var(--text-color);
--messagebox-info-link-color: #6c6c6c;
--messagebox-action-background: #c7e8fa;
--messagebox-action-border: #0b5884;
--messagebox-action-color: var(--text-color);
--messagebox-action-link-color: #03436b;
--messagebox-warn-background: #dfc0ba;
--messagebox-warn-border: #861c10;
--messagebox-warn-color: var(--text-color);
--messagebox-warn-link-color: #8e221a;
--messagebox-safe-background: #d8f0d3;
--messagebox-safe-border: #1b8408;
--messagebox-safe-color: var(--text-color);
--messagebox-safe-link-color: #1b8408;
--messagebox-disambig-background: #ebebeb;
--messagebox-disambig-border: #898989;
--messagebox-disambig-color: var(--text-color);
--messagebox-disambig-link-color: #6c6c6c;
--messagebox-discord-background: #5865f2;
--messagebox-discord-border: #4c57d0;
--messagebox-discord-link-color: #d2e5fc;
}
.mw-message-box,
.mw-message-box-error,
.mw-message-box-warning,
.mw-message-box-success,
.usermessage {
color: var(--text-color);
}
.messagebox {
width: 65%;
margin: 0.5em auto;
border-left: 15px solid;
border-color: var(--body-dark);
background-color: var(--body-light);
box-sizing: border-box;
}
.messagebox.obsolete {
background-color: var(--messagebox-obsolete-background);
border-color: var(--messagebox-obsolete-border);
color: var(--messagebox-obsolete-color);
}
.messagebox.obsolete a,
.messagebox.obsolete a:visited,
.messagebox.obsolete a:active {
color: var(--messagebox-obsolete-link-color);
}
.messagebox.info {
background-color: var(--messagebox-info-background);
border-color: var(--messagebox-info-border);
color: var(--messagebox-info-color);
}
.messagebox.info a,
.messagebox.info a:visited,
.messagebox.info a:active {
color: var(--messagebox-info-link-color);
}
.messagebox.action {
background-color: var(--messagebox-action-background);
border-color: var(--messagebox-action-border);
color: var(--messagebox-action-color);
}
.messagebox.action a,
.messagebox.action a:visited,
.messagebox.action a:active {
color: var(--messagebox-action-link-color);
}
.messagebox.warn {
background-color: var(--messagebox-warn-background);
border-color: var(--messagebox-warn-border);
color: var(--messagebox-warn-color);
}
.messagebox.warn a,
.messagebox.warn a:visited,
.messagebox.warn a:active {
color: var(--messagebox-warn-link-color);
}
.messagebox.safe {
background-color: var(--messagebox-safe-background);
border-color: var(--messagebox-safe-border);
color: var(--messagebox-safe-color);
}
.messagebox.safe a,
.messagebox.safe a:visited,
.messagebox.safe a:active {
color: var(--messagebox-safe-link-color);
}
.messagebox.disambig {
background-color: var(--messagebox-disambig-background);
border-color: var(--messagebox-disambig-border);
color: var(--messagebox-disambig-color);
}
.messagebox.disambig a,
.messagebox.disambig a:visited,
.messagebox.disambig a:active {
color: var(--messagebox-disambig-link-color);
}
.messagebox.discord {
background-color: var(--messagebox-discord-background);
border-color: var(--messagebox-discord-border);
color: #fff;
}
.messagebox.discord a,
.messagebox.discord a:visited,
.messagebox.discord a:active {
color: var(--messagebox-discord-link-color);
}
.messagebox.discord a.external,
.messagebox.discord a:visited.external,
.messagebox.discord a:active.external {
font-style: italic;
}
.messagebox.stub {
width: 40%;
}
.messagebox.hasdialogue {
padding: 0 10px;
width: auto;
}
:root {
--byline-arrow-filter: invert(29%) sepia(0%) saturate(376%) hue-rotate(172deg) brightness(87%) contrast(80%);
--tile-border-color: var(--body-border);
--tile-background-color: var(--body-light);
--tile-link-button-color: #f5e9db;
--tile-link-button-highlight-color: #dfccb0;
--tile-dark-color: #fff;
--tile-dark-bg: var(--body-dark);
--tile-dark-link-color: #ccc;
--tile-dark-byline-color: rgba(255, 255, 255, 0.7);
--tile-dark-header-color: #fff;
}
.tile {
background: var(--tile-background-color);
border: 1px solid var(--tile-border-color);
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
padding: 1.5em 2em 1em;
max-width: 40em;
}
.tile h2 {
font-size: 1.4em;
font-weight: bold;
border: none;
margin: 0 0 0.4em;
}
.tile .byline + h2 {
margin-top: -0.5em;
}
.tile.dark {
color: var(--tile-dark-color);
background: var(--tile-dark-bg);
border: none;
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.3);
}
.tile.dark h2 {
color: var(--tile-dark-header-color);
}
.tile.dark a {
color: var(--tile-dark-link-color);
}
.tile.dark .byline {
color: var(--tile-dark-byline-color);
}
.byline {
font-size: 0.9em;
color: var(--byline-color);
}
.byline a {
color: var(--byline-color);
}
.tile-row {
display: flex;
flex-flow: row wrap;
margin-bottom: 1em;
}
.tile-halves {
display: flex;
flex-flow: row wrap;
background: var(--tile-background-color);
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
}
.tile-halves h2 {
font-size: 1.4em;
font-weight: bold;
border: none;
margin: 0 0 0.4em;
}
.tile-halves .byline + h2 {
margin-top: -0.5em;
}
.tile-top {
width: 100%;
padding: 1.3rem 1.5rem 0.6rem;
}
.tile-top.tile-image {
display: flex;
align-items: center;
background-color: var(--body-light);
overflow: hidden;
padding: 0;
height: 13vw;
max-height: 12em;
transition: 0.4s ease-out;
}
.tile-halves:hover .tile-top.tile-image img {
transform: scale(1.1);
transition: 0.5s ease-out;
}
.tile-top.tile-image a {
width: 100%;
}
.tile-top.tile-image img {
width: 100%;
object-fit: cover;
max-height: 200px;
transition: 0.4s ease-out;
}
.tile-bottom {
background: var(--body-dark);
width: 100%;
padding: 1rem 1.5rem 0.6rem;
}
.tile-bottom h2 a {
color: #fff !important;
}
.tile-bottom.link-button {
align-self: flex-end;
padding: 0;
}
.tile-bottom.link-button a {
display: block;
text-align: center;
padding: 0.75em 1.5em 0.8em;
text-decoration: none;
}
.tile-bottom.read-more {
background: var(--tile-link-button-color);
transition: 0.3s ease-out;
}
.tile-bottom.read-more a {
color: var(--byline-color);
font-weight: bold;
text-align: right;
}
.tile-bottom.read-more:hover {
background: var(--tile-link-button-highlight-color);
}
.tile-bottom.read-more:hover .arrow {
transform: translateX(50%);
}
.tile-bottom.read-more .arrow {
filter: var(--byline-arrow-filter);
margin-left: 0.4em;
transition: 0.3s ease-out;
}
body.page-Main_Page.action-view .catlinks,
body.page-Main_Page.action-view #contentSub,
body.page-Main_Page.action-view #firstHeading,
body.page-Main_Page.action-view #siteNotice {
display: none;
}
body.page-Main_Page .mw-parser-output {
max-width: 75em;
margin: 0 auto;
}
body.page-Main_Page.action-view .catlinks,
body.page-Main_Page.action-view #contentSub,
body.page-Main_Page.action-view #siteNotice {
display: none;
}
.mainpage-header {
display: flex;
margin: 2.6em 1.75em 1.5em;
}
.mainpage-header .header-intro {
flex: 2;
}
.mainpage-header .header-intro h1 {
font-size: 2.5em;
font-weight: bold;
border: none;
margin: 0 0 0.15em;
}
.mainpage-header .header-intro p {
font-size: 1.1em;
line-height: 1.7em;
}
.mainpage-header .header-stats {
flex: 1;
display: flex;
justify-content: center;
align-items: center;
margin-top: -1em;
}
.mainpage-body {
display: grid;
grid-template-areas: "event event event" "update update update" "content content content" "left left right";
gap: 0.9rem;
grid-template-columns: repeat(3, 1fr);
}
.mainpage-body h2 a {
color: var(--text-color);
}
.mainpage-body .tile {
padding-left: 1.75em;
padding-right: 1.75em;
max-width: 100%;
}
.mainpage-body .tile-row {
width: 100%;
margin-bottom: 0;
}
.mainpage-body .tile-row {
display: grid;
gap: 0.9rem;
}
.mainpage-contents.tile-row {
display: flex;
}
.mainpage-contents.tile-row .tile-top {
height: 5.5rem;
}
.mainpage-left {
grid-area: left;
flex: 2;
display: flex;
flex-flow: column wrap;
}
.mainpage-left > * {
margin: 0 0 0.9rem;
}
.mainpage-right {
grid-area: right;
flex: 1;
display: flex;
flex-flow: column wrap;
}
.mainpage-right > * {
margin: 0 0 0.9rem;
}
.arrow {
background: url('filepath://White-chevron.svg') no-repeat;
display: inline-block;
height: 0.7rem;
width: 0.45rem;
vertical-align: middle;
}
.arrow.dark {
filter: invert(80%);
}
.mainpage-contents {
grid-area: content;
grid-template-columns: repeat(6, 1fr);
}
.mainpage-contents .tile-halves {
flex: 1;
}
.mainpage-contents .tile-top {
height: 4.5rem;
position: relative;
}
.mainpage-contents .tile-top.tile-image img {
height: auto;
}
.mainpage-contents h2 {
margin: 0;
padding: 0;
}
.mainpage-contents .tile-bottom.link-button a {
padding: 0.75em 0.2em;
}
.popular-pages ul {
display: grid;
grid-template-columns: repeat(3, 1fr);
grid-gap: 0.6em;
margin: 1em 0 0.7em 0;
}
.mp-popular-page-light {
display: flex;
align-items: center;
background-color: var(--button-background);
transition: 100ms;
}
.mp-popular-page-light a {
flex: 1;
display: block;
color: #fff;
font-weight: bold;
text-align: center;
text-decoration: none;
padding: 0.7em 1em;
}
.mp-popular-page-light:hover {
filter: brightness(115%);
transition: 100ms;
}
.mainpage-social {
border: none;
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.3);
}
.mainpage-social .tile-top {
display: flex;
align-items: center;
padding: 1em 1.5em;
}
.mainpage-social .tile-top a {
flex: 1;
position: relative;
text-decoration: none;
}
.mainpage-social .tile-top a:hover .arrow {
transform: translateX(50%);
}
.mainpage-social .tile-bottom {
border: none;
padding: 1em 1.75em;
}
.mainpage-social .tile-bottom p {
color: #fff;
font-weight: bold;
font-size: 0.9em;
text-align: center;
text-transform: uppercase;
letter-spacing: 0.03em;
margin: 0;
}
.mainpage-social .social-icon {
margin-right: 0.75em;
text-align: center;
width: 60px;
}
.mainpage-social .social-header {
color: #fff;
font-weight: bold;
font-size: 1.15em;
margin: 0.5em 0 -0.15em;
}
.mainpage-social .server-tagline {
color: rgba(255, 255, 255, 0.9);
margin-bottom: 0.5em;
}
.mainpage-social .arrow {
position: absolute;
top: calc(50% - .5em);
right: 0;
height: 1em;
width: 0.7em;
background-size: 0.7em 1em;
transition: 0.3s ease-out;
}
.mainpage-social.mainpage-discord .tile-top {
background: #5865f2;
}
.mainpage-social.mainpage-discord .tile-bottom {
background: #525ee0;
}
.mainpage-social.mainpage-twitter .tile-top {
background: #15202b;
}
.mainpage-social.mainpage-twitter .tile-bottom {
background: #121c26;
}
.mainpage-editing {
border: none;
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.3);
}
.mainpage-editing .tile-top {
background: #438ab5;
}
.mainpage-editing .tile-bottom {
background: #3980ab;
border: none;
padding: 0.8rem 1.5rem 0.4rem;
}
.mainpage-editing h2,
.mainpage-editing a {
color: #fff;
}
.mainpage-editing p {
color: rgba(255, 255, 255, 0.9);
}
.mainpage-editing ul {
list-style-image: url('filepath://Transparent-chevron.svg');
}
@media only screen and (max-width: 1200px) {
.mainpage-contents {
grid-template-columns: repeat(3, 1fr);
}
}
@media only screen and (max-width: 1000px) {
.mainpage-body {
grid-template-areas: "event event event" "update update update" "content content content" "left left left" "right right right";
}
.mainpage-recent-updates {
grid-template-columns: repeat(2, 1fr);
}
.mainpage-recent-updates .tile-halves:last-child {
display: none;
}
.mainpage-recent-updates .tile-halves:hover .tile-top img {
transform: scale(1.04);
}
.mainpage-recent-updates .tile-top {
height: 18vw;
min-height: 9em;
}
.mainpage-header .header-stats {
display: none;
}
.mainpage-left > *:last-child,
.mainpage-right > *:last-child {
margin-bottom: 0;
}
.popular-pages ul {
grid-template-columns: repeat(2, 1fr);
}
}
@media only screen and (max-width: 720px) {
.mainpage-recent-updates {
grid-template-columns: none;
}
.mainpage-recent-updates .tile-halves:last-child {
display: flex;
}
.mainpage-contents {
grid-template-columns: repeat(2, 1fr);
}
}
.mw-prefs-buttons {
background-color: var(--body-main);
border-top-color: var(--body-border);
box-shadow: none;
}
.mw-prefs-tabs-wrapper.oo-ui-panelLayout-framed,
.mw-prefs-tabs > .oo-ui-menuLayout-content > .oo-ui-indexLayout-stackLayout > .oo-ui-tabPanelLayout {
border-color: var(--body-border);
}
.mw-htmlform-ooui .mw-htmlform-matrix tbody tr:nth-child(even) td {
background-color: var(--body-light);
}
.mw-htmlform-ooui .mw-htmlform-matrix tbody tr:hover td {
background-color: var(--body-mid);
}
:root {
--rc-positive-color: #407813;
--rc-negative-color: #b41e0f;
}
.mw-plusminus-pos {
color: var(--rc-positive-color);
}
.mw-plusminus-neg {
color: var(--rc-negative-color);
}
.client-js .mw-recentchanges-toplinks:not(.mw-recentchanges-toplinks-collapsed) {
border-color: var(--body-border);
background-color: var(--body-light);
border-radius: 2px;
}
.mw-rcfilters-ui-filterTagMultiselectWidget-wrapper-content-title {
color: var(--text-color);
}
.mw-rcfilters-ui-filterTagMultiselectWidget-emptyFilters {
color: var(--byline-color);
}
.mw-rcfilters-ui-filterTagMultiselectWidget.oo-ui-widget-enabled .oo-ui-tagMultiselectWidget-handle {
background-color: var(--ooui-interface);
border-color: var(--ooui-interface-border);
}
.mw-rcfilters-ui-filterTagMultiselectWidget-views-select-widget.oo-ui-widget {
border-color: var(--ooui-interface-border);
}
.mw-rcfilters-collapsed .mw-rcfilters-ui-filterTagMultiselectWidget {
border-bottom-color: var(--ooui-interface-border);
}
.mw-rcfilters-ui-menuSelectWidget-footer {
background-color: var(--ooui-interface);
border-color: var(--ooui-interface-border);
}
.mw-rcfilters-ui-viewSwitchWidget label.oo-ui-labelWidget {
color: var(--byline-color);
}
.mw-rcfilters-ui-tagItemWidget-popup-content {
color: var(--ooui-text);
}
.mw-changeslist-legend,
.mw-rcfilters-ui-changesListWrapperWidget .mw-changeslist-legend {
background-color: var(--body-light);
border-color: var(--body-dark);
}
.mw-rcfilters-ui-changesListWrapperWidget-previousChangesIndicator {
border-color: var(--sidebar);
}
.client-js .mw-changeslist ul,
.client-js .mw-changeslist table.mw-enhanced-rc {
margin-left: 0;
}
.mw-rcfilters-ui-watchlistTopSectionWidget-separator {
border-color: var(--sidebar);
}
.mw-rcfilters-ui-itemMenuOptionWidget-header {
border-bottom-color: var(--ooui-interface);
background-color: var(--ooui-interface-border);
}
.mw-rcfilters-ui-itemMenuOptionWidget:not(:last-child):not(.mw-rcfilters-ui-itemMenuOptionWidget-identifier-talk) {
border-bottom-color: var(--ooui-normal-border);
}
.mw-rcfilters-ui-itemMenuOptionWidget-label-title,
.mw-rcfilters-ui-itemMenuOptionWidget-label-desc {
color: var(--text-color);
}
.mw-rcfilters-ui-filterMenuOptionWidget.oo-ui-flaggedElement-muted:not(.oo-ui-optionWidget-selected) {
background-color: var(--body-main);
}
.mw-rcfilters-ui-filterMenuOptionWidget.oo-ui-flaggedElement-muted .mw-rcfilters-ui-itemMenuOptionWidget-label-title,
.mw-rcfilters-ui-filterMenuOptionWidget.oo-ui-flaggedElement-muted .mw-rcfilters-ui-itemMenuOptionWidget-label-desc {
color: var(--subtle-color);
}
.mw-rcfilters-ui-filterMenuSectionOptionWidget {
background-color: var(--body-mid);
}
.mw-rcfilters-ui-filterMenuSectionOptionWidget-header-title.oo-ui-labelElement-label {
color: var(--ooui-text);
}
.mw-rcfilters-ui-filterMenuHeaderWidget-title {
color: var(--ooui-text);
}
.mw-rcfilters-ui-filterMenuHeaderWidget-header {
border-bottom-color: var(--ooui-interface-border);
background-color: var(--ooui-interface);
}
.mw-rcfilters-ui-itemMenuOptionWidget-view-namespaces {
border-top-color: var(--ooui-interface-border);
}
.mw-rcfilters-ui-datePopupWidget {
border-color: var(--ooui-interface-border);
}
.mw-rcfilters-ui-datePopupWidget .mw-rcfilters-ui-valuePickerWidget-title {
color: var(--byline-color);
}
.mw-rcfilters-ui-savedLinksListItemWidget-label {
color: var(--ooui-accent);
}
.client-js .mw-changeslist.mw-rcfilters-ui-changesListWrapperWidget-highlighted ul,
.client-js .mw-changeslist.mw-rcfilters-ui-changesListWrapperWidget-highlighted table.mw-enhanced-rc {
margin-left: 1.5em;
}
.page-Special_CreateAccount .mw-ui-container,
.page-Special_UserLogin .mw-ui-container {
max-width: 64rem;
margin: 0 auto;
}
.mw-number-text {
color: var(--byline-color);
}
.mw-body-content .mw-number-text h3 {
color: var(--text-color);
}
#mw-indicator-mw-helplink a {
background: none;
padding: 0;
display: flex;
align-items: center;
}
#mw-indicator-mw-helplink a::before {
content: '';
margin-right: 5px;
-webkit-mask: url("/resources/src/mediawiki.helplink/images/helpNotice.svg?46d34") no-repeat 50% 50% / contain;
mask: url("/resources/src/mediawiki.helplink/images/helpNotice.svg?46d34") no-repeat 50% 50% / contain;
background: var(--text-color);
height: 20px;
width: 20px;
}
.results-info {
color: inherit;
}
.mw-search-profile-tabs {
background-color: var(--body-mid);
border-color: transparent;
}
.search-types .current a {
color: inherit;
}
#mw-searchoptions {
background-color: var(--body-mid);
border-color: transparent;
}
#mw-searchoptions .divider {
border-color: var(--body-border);
}
#mw-searchoptions h4 {
font-family: inherit;
}
#mw-searchoptions .oo-ui-labelElement:nth-of-type(odd) {
font-weight: bold;
}
.searchresult {
line-height: 1.5;
}
.searchalttitle,
#mw-search-interwiki li {
font-size: 90%;
}
.mw-search-result-data {
color: var(--byline-color);
}
.page-Special_ListFiles a.image img {
width: inherit;
height: inherit;
}
.page-Special_ListFiles .TablePager_col_thumb {
text-align: center;
}
#editcount table[border="1"] {
background-color: var(--body-main) !important;
border-color: var(--wikitable-border) !important;
margin-top: 0.5em;
}
#editcount table[border="1"] th,
#editcount table[border="1"] td {
padding: 0.2em 0.4em;
}
#editcount table[border="1"] th {
background-color: var(--wikitable-header-bg);
border: 1px solid var(--wikitable-border);
}
#editcount table[border="1"] td {
border: 1px solid var(--wikitable-border);
}
#editcount table[border="1"] tr:nth-child(odd) {
background-color: var(--body-light);
}
.mw-echo-ui-notificationBadgeButtonPopupWidget-popup > .oo-ui-popupWidget-popup .mw-echo-ui-placeholderItemWidget {
background-color: inherit;
}
table.mw-interwikitable.body td.mw-interwikitable-local-yes {
background-color: var(--table-yes-background);
color: var(--table-yes-color);
}
.mw-protectedpages-unknown {
color: var(--byline-color);
}
.watchlistredir,
.allpagesredirect {
font-style: italic;
}
.allpagesredirect:after {
color: var(--byline-color);
content: " (redirect)";
}
.mw-apisandbox-toolbar {
background: var(--body-main);
}
.oo-ui-menuOptionWidget .mw-apisandbox-flag {
color: var(--byline-color);
}
tr.mw-abusefilter-list-disabled,
tr.mw-abusefilter-list-disabled td {
color: var(--byline-color);
}
table.mw-abuselog-details {
background: var(--wikitable-bg);
border-color: var(--wikitable-border);
}
table.mw-abuselog-details th {
background: var(--wikitable-header-bg);
}
table.mw-abuselog-details th,
table.mw-abuselog-details td {
border-color: var(--wikitable-border);
}
.mw-abusefilter-log-hidden-entry {
color: var(--subtle-color);
}
body td.mw-abusefilter-history-changed {
background: var(--table-no-background);
}
div.mw-abusefilter-editor,
#mw-abusefilter-warn-preview,
#mw-abusefilter-disallow-preview {
border-color: var(--ooui-input-border);
}
.mw-destfile-warning {
border-color: var(--warningbox-border);
color: var(--text-color);
background-color: var(--warningbox-bg);
}
span.fileinput-button {
background-color: var(--ooui-normal);
border-color: var(--ooui-normal-border);
color: var(--ooui-text);
}
ul.fileupload-results li.ful-success {
background-color: var(--successbox-bg);
}
ul.fileupload-results li.ful-success a {
color: var(--link-color);
}
ul.fileupload-results li.ful-error {
background-color: var(--errorbox-bg);
}
.color-container {
display: flex;
margin: 2em auto;
width: 80%;
max-width: 60em;
}
.color-column {
flex: 1;
margin-right: 1em;
}
.color-column:last-child {
margin-right: 0;
}
.color-column h3 {
padding: 0;
}
.color-group {
color: #333;
padding: 1em 1.5em;
transition: 0.2s ease-out;
}
.color-group:hover {
transform: scale(1.03);
}
.color-group.dark {
color: #fff;
}
.color-group .variable,
.color-group .hexcode {
font-family: monospace;
font-size: 1.1em;
-webkit-user-select: all;
-moz-user-select: all;
-ms-user-select: all;
user-select: all;
margin: 0;
}
body.wgl-readermode .color-group .variable,
body.wgl-readermode .color-group .hexcode {
font-size: inherit;
}
.color-group .variable {
font-weight: bold;
}
#t-print,
#t-permalink {
display: none;
}
#filetoc {
border-radius: 2px;
background: var(--body-mid);
border-color: transparent;
margin: 0.5em auto;
text-align: center;
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
}
li.gallerybox div.thumb {
border: none;
background-color: var(--thumb-bg);
}
.smwfact {
display: none;
}
.list-header {
background-color: var(--body-mid);
color: inherit;
}
.editOptions {
color: var(--text-color);
background-color: var(--sourceeditor-background-secondary);
border-color: var(--sourceeditor-border);
}
.mw-json th,
.mw-json td {
border-color: var(--wikitable-border);
}
.mw-json td {
background: var(--wikitable-bg);
}
.mw-json th {
background: var(--wikitable-header-bg);
}
249f688a5476fa36898dc20761fc5e65d56141a1
Module:Infobox Item
828
827
1814
1770
2024-04-07T01:32:40Z
Gau Cho
5
Scribunto
text/plain
local p = {}
local Infobox = require('Module:Infobox')
local parse = require('Module:Param Parse')
function p.main(frame)
local args = frame:getParent().args
local config = {
infobox_name = 'Item',
}
local params = {
parse.name,
parse.image,
parse.release,
parse.premium,
parse.episode,
{name = 'profession', func = parse.has_content, category_incomplete = 'Items needing profession', smw_name = 'Profession'}, -- TODO - move to Module:Param Parse once more details are available
{name = 'value', func = parse.number, category_incomplete = 'Items needing value', smw_name = 'Value'}, -- TODO - move to Module:Param Parse once more details are available
}
local infobox = Infobox.new(config, params, args)
infobox
:add_row{
{tag='th', content=Infobox.param('name'), class='infobox-header', colspan='20'},
}
:add_row{
{tag='td', content=Infobox.param('image'), class='infobox-image', colspan='20'},
}
:add_row{
{tag='th', content='Release', colspan="6"},
{tag='td', content=Infobox.param('release'), colspan="14"},
}
:add_row{
{tag='th', content='[[Episode]]', colspan="6"},
{tag='td', content=Infobox.param('episode'), colspan="14"},
}
:add_row{
{tag='th', content='[[Premium Pass|Premium]]', colspan="6"},
{tag='td', content=Infobox.param('premium'), colspan="14"},
}
:add_row{
{tag='th', content='[[Profession]]', colspan="6"},
{tag='td', content=Infobox.param('profession'), colspan="14"},
}
:add_row{
{tag='th', content='Value', colspan="6"},
{tag='td', content=Infobox.param('value'), colspan="14"},
}
:pad(20)
return infobox
end
return p
a370a930a9a50b54772b91a3e78b1a5b17b91cad
1815
1814
2024-04-07T01:33:19Z
Gau Cho
5
Scribunto
text/plain
local p = {}
local Infobox = require('Module:Infobox')
local parse = require('Module:Param Parse')
function p.main(frame)
local args = frame:getParent().args
local config = {
infobox_name = 'Item',
}
local params = {
parse.name,
parse.image,
parse.release,
parse.premium,
parse.episode,
{name = 'profession', func = parse.has_content, category_incomplete = 'Items needing profession', smw_property = 'Profession'}, -- TODO - move to Module:Param Parse once more details are available
{name = 'value', func = parse.number, category_incomplete = 'Items needing value', smw_property = 'Value'}, -- TODO - move to Module:Param Parse once more details are available
}
local infobox = Infobox.new(config, params, args)
infobox
:add_row{
{tag='th', content=Infobox.param('name'), class='infobox-header', colspan='20'},
}
:add_row{
{tag='td', content=Infobox.param('image'), class='infobox-image', colspan='20'},
}
:add_row{
{tag='th', content='Release', colspan="6"},
{tag='td', content=Infobox.param('release'), colspan="14"},
}
:add_row{
{tag='th', content='[[Episode]]', colspan="6"},
{tag='td', content=Infobox.param('episode'), colspan="14"},
}
:add_row{
{tag='th', content='[[Premium Pass|Premium]]', colspan="6"},
{tag='td', content=Infobox.param('premium'), colspan="14"},
}
:add_row{
{tag='th', content='[[Profession]]', colspan="6"},
{tag='td', content=Infobox.param('profession'), colspan="14"},
}
:add_row{
{tag='th', content='Value', colspan="6"},
{tag='td', content=Infobox.param('value'), colspan="14"},
}
:pad(20)
return infobox
end
return p
f3674160d456b202f7a6475b2c9c83e5267cea7a
Property:Value
302
837
1816
2024-04-07T01:33:51Z
Gau Cho
5
Created page with "{{property|type=number}}"
wikitext
text/x-wiki
{{property|type=number}}
f277711ed94bcdccdc7eae8e653a01162a692614
Town Square
0
838
1817
2024-04-07T12:40:09Z
InvalidCards
4
Created page with "{{Infobox Location |name = Town Square |image = Wasteland.jpg |release = |premium = |episode = Hopeport }} The '''Town Square''' is a location in [[Hopeport (location)|Hopeport]]."
wikitext
text/x-wiki
{{Infobox Location
|name = Town Square
|image = Wasteland.jpg
|release =
|premium =
|episode = Hopeport
}}
The '''Town Square''' is a location in [[Hopeport (location)|Hopeport]].
cc3e9cfbc8d6823641df6752ecbd39616838c2db
1822
1817
2024-04-07T13:17:36Z
BlackHawk
10
wikitext
text/x-wiki
{{Infobox Location
|name = Town Square
|image =
|release =
|premium =
|episode = Hopeport
}}
The '''Town Square''' is a location in [[Hopeport (location)|Hopeport]].
7f989a40f5ed5a1e935dd4bf3934210b0c87b5c9
Template:Clean image/doc
10
716
1818
1304
2024-04-07T12:45:03Z
InvalidCards
4
fix links with bsw stuff instead of rsw
wikitext
text/x-wiki
{{Documentation}}
Cleans and formats an input image. This removes the following things if present:
* <code><nowiki>[[File:</nowiki></code>
* <code><nowiki>]]</nowiki></code>
* <code><nowiki>|</nowiki></code> and <code><nowiki>{{!}}</nowiki></code>, and everything following the first of these until the end
Then it re-packages the image into a new file container, with specified height, width, and link. The <code>frameless</code> modifier is used, which prevents the image being resized larger than its actual dimensions.
==Usage==
<pre>{{clean image
|file = wikitext to be cleaned; this should usually be a template parameter (e.g. |file={{{image}}}); required
|width = width of image; no default; exclude 'px'
|height = height of image; no default; exclude 'px'; can be combined with width
|link = link to apply to image; no default (will link to file page); setting to no will suppress normal link
|align = alignment of image; left, center, right; no default
}}</pre>
===Examples===
To be practical the results will be as if <code><nowiki>|image=[[File:Basic bacon.png|100px|link=abyssal whip]]</nowiki></code> as the input.
{| class="wikitable"
! Example
! Code
! Result
! Notes
|
|-
| Just clean
| <pre>{{clean image|file={{{image}}}}}</pre>
| {{clean image|file=[[File:Basic bacon.png|100px|link=pirate]]}}
| Should result in
<pre>[[File:{FILENAME}]]</pre>
Note that it links to the file page as a normal image does.
|-
| Clean + width
| <pre>{{clean image|file={{{image}}}|width=50}}</pre>
| {{clean image|file=[[File:Basic bacon.png|100px|link=pirate]]|width=50}}
| Should result in
<pre>[[File:{FILENAME}|{WIDTH}px]]</pre>
|-
| Clean + height
| <pre>{{clean image|file={{{image}}}|height=20}}</pre>
| {{clean image|file=[[File:Basic bacon.png|100px|link=pirate]]|height=20}}
| Should result in
<pre>[[File:{FILENAME}|x{HEIGHT}px]]</pre>
Remember that height parameters on images are maximum height limits and won't make an image bigger (without a width set).
|-
| Clean + width + height
| <pre>{{clean image|file={{{image}}}|width=44|height=20}}
{{clean image|file={{{image}}}|width=11|height=50}}
{{clean image|file={{{image}}}|width=66|height=66}}</pre>
|<poem>{{clean image|file=[[File:Basic bacon.png|100px|link=pirate]]|width=44|height=20}}
{{clean image|file=[[File:Basic bacon.png|100px|link=pirate]]|width=11|height=50}}
{{clean image|file=[[File:Basic bacon.png|100px|link=pirate]]|width=66|height=60}}</poem>
| Should result in
<pre>[[File:{FILENAME}|{WIDTH}x{HEIGHT}px]]</pre>
Remember that height is still a maximum limit here. The size will be {WIDTH}px wide unless this makes the height more than {HEIGHT}px, in which case it is sized down to {HEIGHT}px tall. Aspect ratio is always kept.
Basic bacon.png is 22px wide and 30px tall. In the first use it is trying to resize to twice as wide but the maximum height of 20px forces it to resize down to 15x20px. The second use it successfully resizes down to half as wide, 11x15px. The third use is trying to go thrice as wide but the height limit only allows it to go twice as tall, so is 44x60px.
|-
| Clean + link
| <pre>{{clean image|file={{{image}}}|link=Sturlet}}</pre>
| {{clean image|file=[[File:Basic bacon.png|100px|link=pirate]]|link=Sturlet}}
| Should result in
<pre>[[File:{FILENAME}|link={LINK}]]</pre>
|-
| Clean + link suppress
| <pre>{{clean image|file={{{image}}}|link=no}}</pre>
| {{clean image|file=[[File:Basic bacon.png|100px|link=pirate]]|link=no}}
| Should result in
<pre>[[File:{FILENAME}|link=]]</pre>
|-
| Clean + alignment
| <pre>{{clean image|file={{{image}}}|align=right}}</pre>
| {{clean image|file=[[File:Basic bacon.png]]|align=right}}
| Should result in
<pre>[[File:{FILENAME}|align=right]]</pre>
|}
<includeonly>[[Category:Formatting templates]]</includeonly>
e311865837d51115b5a2901014f7d7e196c0cb23
Template:Redirect3/doc
10
578
1819
965
2024-04-07T12:45:54Z
InvalidCards
4
proper link in seealso
wikitext
text/x-wiki
{{Documentation}}
This template displays text showing what redirects to a certain page.
==Usage==
This template can be used by entering the following onto a relevant page.
<pre>{{Redirect3|Location|Description including links}}</pre>
==location==
This parameter is replaced by the location.
==description==
This parameter is replaced by a description of the redirect.
==See also==
* [[Template:Redirect]]
* [[Template:Otheruses]]
* [[Template:See also]]
* [[Brighter Shores:Redirecting]]
* [[Wikipedia:Template:Redirect3|Redirect3]], the template at Wikipedia
<includeonly>[[Category:Transclusion templates|{{PAGENAME}}]]</includeonly>
80c93b5c56af153d6814474a5925694ddca56a24
Template:MessageBox/doc
10
151
1820
276
2024-04-07T12:47:17Z
InvalidCards
4
fix link even though it's still a redlink but at least it's the right namespace
wikitext
text/x-wiki
{{Documentation}}<includeonly>[[Category:Message box templates|*]]</includeonly>
The '''MessageBox''' template is a wrapper for all types of [[:Category:Message box templates|message boxes]]. This includes [[Template:License|licenses]], [[:Category:Maintenance templates|Maintenance templates]], and general notices used to alert the reader about something.
==Parameters==
To use this template, copy the following code and fill in the necessary information
<pre>
{{MessageBox
|class = (optional) classes
|img = Image
|imgwidth = (optional) width of the table cell around the image
|Tagline text
|Extra information
}}
</pre>
The first parameter is mandatory, but all further parameters are optional. A plain message box will look like this: {{t|MessageBox|Example of a messagebox with no customisation}}
{{MessageBox|Example of a messagebox with no customisation}}
===First parameter===
The first parameter will give the tagline for the message box. This is the most eye-catching info in the box and should be short and sweet.
===Second parameter===
The second parameter specifies more information about the message, and can be used to specify some more details about what information is being conveyed.
===img===
Specify an image here. Recommended is to include <code>center</code>, <code>link=</code> and a file size, to stylize the image properly. Just specifying the file name will not work with this parameter; the image needs to be given as a complete file link.
===imgwidth===
The width of the cell the image is (must specify <code>px</code> at the end), and defaults to <code>50px</code>. This effectively sets the margins around the image, if the image is smaller than 50 px. It is typically best to omit this parameter, but in cases where the image is larger setting a custom width may be helpful.
===class===
A class to give the messagebox. Typically this is used for messageboxes that use custom styling which is defined in a class.
===style===
Inline CSS to give to the messagebox.
==Example==
An example of a template that has almost all parameters specified is the [[Template:Stub|Stub]] template
<pre>
{{MessageBox
|class = stub
|img = [[File:Stub.png|Stub|center|50px|link=]]
|This page is a [[Brighter Shores:Stubs|stub]].
|A stub is an article which does not cover all information available about the topic. You can help by [{{fullurl:{{FULLPAGENAME}}|action=edit}} expanding] it.
}}
</pre>
{{MessageBox
|class = stub
|img = [[File:Stub.png|Stub|center|50px|link=]]
|This page is a [[Brighter Shores:Stubs|stub]].
|A stub is an article which does not cover all information available about the topic. You can help by [{{fullurl:{{FULLPAGENAME}}|action=edit}} expanding] it.
}}
4d8cfa88d66fafcbe1ced0d8be0b9638c523d3cd
Template:CC-BY-NC-SA/doc
10
538
1821
913
2024-04-07T12:51:26Z
InvalidCards
4
fix link for when interwiki is up and running
wikitext
text/x-wiki
{{Documentation}}
This template is used to mark files that licensed under a {{wp|Creative Commons}} [https://creativecommons.org/licenses/by-nc-sa/3.0/ Attribution-NonCommercial-ShareAlike 3.0] license.
As the wiki's content is [[meta:Meta:Copyrights|licensed]] under CC BY-NC-SA 3.0, files that exclusively contain the wiki's content should be marked with this template.
==Usage==
:Type {{t|CC-BY-NC-SA}} on the file information page.
<includeonly>[[Category:Copyright templates|{{PAGENAME}}]]</includeonly>
91bcc5670bb54c883e5fd405e24605ec74ee8424
Template:Infobox Location
10
771
1823
1467
2024-04-08T10:51:50Z
Merds
25
changed to styled infobox version (test)
wikitext
text/x-wiki
{| class="infobox infobox-location" style="float:right"
! colspan="20" class="infobox-header" | {{#if:{{{name|}}}|{{{name}}}|{{PAGENAME}}}}
|-
| colspan="20" class="infobox-image" | {{#if:{{{image|}}}|{{clean image|file={{{image}}}}}|[[Special:Upload|Please upload an image!]]{{Mainonly|[[Category:Needs image]]}}}}
|-
! colspan="6" | Release
| colspan="14" | {{#if:{{{release|}}}|{{{release}}}|Q3 [[2024]]}}
|-
! colspan="6" | Premium
| colspan="14" | {{#switch:{{lc:{{{premium|}}}}}|yes=Yes{{Mainonly|[[Category:Premium locations]]}}|no=No|#default={{Edit button|text=<b>?</b> (edit)}}{{Mainonly|[[Category:Needs premium status]]}}}}
|-
! colspan="6" | Episode
| colspan="14" | {{#switch:{{{episode|}}}|Hopeport=[[File:Hopeport episode icon.png|18px]] [[Hopeport]][[Category:Hopeport]]|Hopeforest=[[File:Hopeforest episode icon.png|18px]] [[Hopeforest]][[Category:Hopeforest]]|Mine of Mantuban=[[File:Mine of Mantuban episode icon.png|18px]] [[Mine of Mantuban]][[Category:Mine of Mantuban]]|Crenopolis=[[File:Crenopolis episode icon.png|18px]] [[Crenopolis]][[Category:Crenopolis]]|#default=[[File:Unknown episode icon.png|18px]] Unknown}}
|}{{Mainonly|[[Category:Locations]]}}<noinclude>{{clear}}{{/doc}}</noinclude>
c9996a1864ef33475b56359deb18ff6da67cd795
1848
1823
2024-04-09T12:58:02Z
Gau Cho
5
Replaced content with "{{#invoke:Infobox Item|main}}{{Mainonly|[[Category:Locations]]}}<noinclude>{{/doc}}</noinclude>"
wikitext
text/x-wiki
{{#invoke:Infobox Item|main}}{{Mainonly|[[Category:Locations]]}}<noinclude>{{/doc}}</noinclude>
2383f2f0b47a3b6c7abf1a41966b86234b88b2fc
1849
1848
2024-04-09T12:58:18Z
Gau Cho
5
wikitext
text/x-wiki
{{#invoke:Infobox Location|main}}{{Mainonly|[[Category:Locations]]}}<noinclude>{{/doc}}</noinclude>
829e4615e085b4b4d465e061709620ff0b917eb2
Log
0
750
1824
1794
2024-04-08T15:37:42Z
Sam
60
Premium value
wikitext
text/x-wiki
{{Unofficial name}}
{{Infobox Item
|name = Log
|image = [[File:Log.png]]
|premium = No
|release = Q3 [[2024]]
|episode = Hopeforest
|profession = Woodcutter
|value = 48
}}
'''Log'''<ref>https://brightershores.com/screenshots/09_himatik_ruins.jpg</ref>.
==References==
{{Reflist}}
2e4f63b89f02e933b52b640313cf50a4875763c9
Branch
0
464
1825
1769
2024-04-08T15:47:04Z
Sam
60
premium+release value
wikitext
text/x-wiki
{{Unofficial name}}
{{Infobox Item
|name = Branch
|image = [[File:Branch.png]]
|premium = No
|release = Q3 [[2024]]
|episode = Hopeforest
|profession = [[Woodcutter]]
|value = 48
}}
'''Branches''' can be collected by the [[Woodcutter]] [[profession]] in [[Hopeforest]].<ref>https://brightershores.com/screenshots/09_himatik_ruins.jpg</ref>
==References==
{{Reflist}}
7331699ca901590da177e5ca807c176ccaf707a4
Hammermage potion
0
632
1826
1773
2024-04-08T15:54:41Z
Sam
60
premium+release value
wikitext
text/x-wiki
{{Unofficial name}}
{{Infobox Item
|name = Hammermage potion
|image = [[File:Hammermage potion.png]]
|premium = No
|release = Q3 [[2024]]
|episode = Hopeport
|profession = Alchemist
|value = 330
}}
The '''Hammermage potion''' is a type of [[potion]].<ref>https://brightershores.com/screenshots/09_himatik_ruins.jpg</ref>
==References==
{{Reflist}}
[[Category:Potions]]
00d2bd426031d90a4e518b4ec78ae068a5c8b99e
Log basket
0
751
1827
1793
2024-04-08T15:55:25Z
Sam
60
Premium value
wikitext
text/x-wiki
{{Unofficial name}}
{{Infobox Item
|name = Log basket
|image = [[File:Log basket.png]]
|premium = No
|release = Q3 [[2024]]
|episode = Hopeforest
|profession = Woodcutter
|value = 22
}}
'''Log basket'''<ref>https://brightershores.com/screenshots/09_himatik_ruins.jpg</ref>.
==References==
{{Reflist}}
32bfb88b5d93b6a9891526d4446033db5b6e88f9
Merchant potion
0
636
1828
1775
2024-04-08T15:56:15Z
Sam
60
premium+release value
wikitext
text/x-wiki
{{Unofficial name}}
{{Infobox Item
|name = Merchant potion
|image = [[File:Merchant potion.png]]
|premium = No
|release = Q3 [[2024]]
|episode = Hopeport
|profession = [[Alchemist]]
|value = 18
}}
The '''Merchant potion''' is a type of [[potion]].<ref>https://brightershores.com/screenshots/09_himatik_ruins.jpg</ref>
==References==
{{Reflist}}
[[Category:Potions]]
b7e0b8d7341549eacb47598c9e0ae268d74cd4b1
Miner potion
0
465
1829
1771
2024-04-08T15:56:36Z
Sam
60
premium+release value
wikitext
text/x-wiki
{{Unofficial name}}
{{Infobox Item
|name = Miner potion
|image = [[File:Miner potion.png]]
|premium = No
|release = Q3 [[2024]]
|episode = Hopeport
|profession = [[Alchemist]]
|value = 16
}}
'''Miner potions''' are a type of [[potion]].<ref>https://brightershores.com/screenshots/09_himatik_ruins.jpg</ref>
==References==
{{Reflist}}
[[Category:Potions]]
63b995fe897f676ca9e60f637cf9844ef0a363b6
Shield
0
755
1830
1790
2024-04-08T15:57:01Z
Sam
60
Premium value
wikitext
text/x-wiki
{{Unofficial name}}
{{Infobox Item
|name = Shield
|image = [[File:Shield.png]]
|premium = No
|release = Q3 [[2024]]
|episode = Hopeport
|profession = Combat
|value = 50
}}
'''Shield'''<ref>https://brightershores.com/screenshots/09_himatik_ruins.jpg</ref>.
==References==
{{Reflist}}
[[Category:Equipment]]
618eff6309f5e8f7bb1a06f66133b136f401bdfc
Hopeport (location)
0
798
1831
1610
2024-04-08T18:42:54Z
Rekopek
61
added rooms from trailer
wikitext
text/x-wiki
{{Infobox Location
|name = Hopeport
|image =
|release =
|premium = No
|episode = Hopeport
}}
'''Hopeport''' is a coastal town in [[Adothria]]. It serves as the main introductory town for new [[player]]s.{{CiteGeneral|url=https://www.godisageek.com/2024/03/brighter-shores-is-a-new-mmorpg-coming-to-pc-and-mac/ |title=Brighter Shores is a new MMORPG coming to PC and Mac |author=Adam Cook |quote=Finding themselves in the peaceful coastal town of Hopeport, players initially take on the role of a town guard. Their role as protector, however, soon expands far beyond the town walls as they learn of a greater threat across the fantastical world of Adothria. |date=13 March 2024 |accessdate=24 March 2024 |archiveurl=https://archive.is/GVkr3 |archivedate=24 March 2024}}
== Rooms ==
Hopeport has the following rooms:
* Town Square
* Eel Street Bridge
* Eel Street
* Central Waterfront
* West Waterfront
==Features==
* A [[Hopeport Harbor|harbor]]
==References==
{{Reflist}}
52bb40fc0cfaf05b136b92e9df3dcbecb0bb6fd8
1845
1831
2024-04-09T09:32:47Z
Sam
60
room links
wikitext
text/x-wiki
{{Infobox Location
|name = Hopeport
|image =
|release =
|premium = No
|episode = Hopeport
}}
'''Hopeport''' is a coastal town in [[Adothria]]. It serves as the main introductory town for new [[player]]s.{{CiteGeneral|url=https://www.godisageek.com/2024/03/brighter-shores-is-a-new-mmorpg-coming-to-pc-and-mac/ |title=Brighter Shores is a new MMORPG coming to PC and Mac |author=Adam Cook |quote=Finding themselves in the peaceful coastal town of Hopeport, players initially take on the role of a town guard. Their role as protector, however, soon expands far beyond the town walls as they learn of a greater threat across the fantastical world of Adothria. |date=13 March 2024 |accessdate=24 March 2024 |archiveurl=https://archive.is/GVkr3 |archivedate=24 March 2024}}
== Rooms ==
Hopeport has the following rooms:
* [[Town Square]]
* [[Eel Street Bridge]]
* [[Eel Street]]
* [[Central Waterfront]]
* [[West Waterfront]]
==Features==
* A [[Hopeport Harbor|harbor]]
==References==
{{Reflist}}
784b88210f27dec423a49e5b2f48277d5de01fc9
Grumpy Pirate
0
450
1832
727
2024-04-08T19:05:57Z
Sam
60
filled in further info
wikitext
text/x-wiki
{{Infobox NPC
|name = Grumpy Pirate
|image =
|release = Q3 2024
|episode =
|premium =
|profession =
}}
'''Grumpy Pirate''' is a [[monster]] located in the [[Pirate Hideout]].
[[Category:Monsters]]
ef3f5f4605afd31fcc05aae5d260e63043bccb7d
Fish
0
313
1833
502
2024-04-08T19:10:22Z
Sam
60
added a list
wikitext
text/x-wiki
'''Fish''' can be caught as a part of the [[Fisher]] [[profession]].
List of fish:
* [[Gurnard]]
d95039dee78f3dab0c5f53f211a160f164f6e1f2
Monsters
0
377
1834
1418
2024-04-08T19:11:15Z
Sam
60
moved gurnard to fish
wikitext
text/x-wiki
'''Monsters''' are creatures in [[Brighter Shores]] that can be attacked. They are fought in [[combat]] for their loot, including valuable currency items.
There are many monsters in Brighter Shores, including:
* [[Firetoad]]
* [[Grumpy Pirate]]
* [[Mawchest]]
* [[Punkupine]]
* [[Slime Fiend]]
* [[Sneaky Thief]]
* [[Wailing Shade]]
{{Mechanics}}
[[Category:Monsters]]
128c934a8b9cd86870f3269c73f0a8c2d60b2620
File:Mawchest.PNG
6
839
1835
2024-04-08T19:25:12Z
Sam
60
wikitext
text/x-wiki
da39a3ee5e6b4b0d3255bfef95601890afd80709
Mawchest
0
448
1836
771
2024-04-08T19:27:13Z
Sam
60
added infobox + picture
wikitext
text/x-wiki
{{Infobox NPC
|name = Mawchest
|image = [[File:Mawchest.PNG]]
|release = Q3 2024
|episode =
|premium =
|profession =
}}
'''Mawchest''' is a [[monster]].
[[Category:Monsters]]
bfd836d774f98ac72b59c7e396711fd6f458f34c
File:Branch.png
6
466
1837
764
2024-04-08T19:28:53Z
Sam
60
Sam uploaded a new version of [[File:Branch.png]]
wikitext
text/x-wiki
== Summary ==
A branch
c1eb7f12d01e99f3a260f388e798469ad89d929b
Module:Infobox
828
102
1838
1748
2024-04-08T22:14:33Z
Gau Cho
5
Fix category version bug
Scribunto
text/plain
--[=[
-- For documentation, see [[Module:Infobox/doc]]
--]=]
-- <nowiki>
-- Edit button for unknown params
local editbutton = require('Module:Edit button')
local Infobox = {}
Infobox.__index = Infobox
--[[
Infobox class
-- config: table containing configuration parameters
-- params : definitions for each used value
-- args : values passed from the Template
---- the following values are treated specially: default_version, version, version1, version2...
--]]
function Infobox.new(config, params, args)
local obj = setmetatable({
args_raw = args, -- parameters (uncleaned)
args_parsed = {}, -- parsed parameters
args_smw = {}, -- parameters parsed for smw
infobox_name = nil, -- template name
param_names = {}, -- ordered param list
params = {}, -- param definitions
max_buttons = 6, -- If there are more buttons than the max, the buttons will become a dropdown menu
default_version = 1, -- default version to populate the infobox
versions = nil, -- number of versions
version_names = {}, -- title of each version (for selection and SMW)
rtable = nil, -- infobox table to return at the end
switch_datatable = '', -- datatable for javascript for switch infoboxes
categories = {}, -- set of categories
errors = {}, -- list of errors
__smw_debug = {}, -- debug data for smw subobjects
},
Infobox)
-- Step 1, setup config vars and count the versions
obj:config(config)
obj:parse_versions()
-- Step 2, process the params
obj:define_params(params)
obj:parse_params()
-- Table
obj:table_header()
obj:buttons()
-- Misc
obj:store_smw()
obj:parse_categories()
return obj
end
--[[
Refers to a param after being processed by the validating func
Used in add_row(), define_params() and is_param_defined()
--]]
function Infobox.param(param_name)
param = {
property = 'args_parsed',
param_name = param_name,
}
return param
end
--[[
Refers to a param in raw form as passed from the Template
Used in add_row(), define_params() and is_param_defined()
--]]
function Infobox.raw_param(param_name)
param = {
property = 'args_raw',
param_name = param_name,
}
return param
end
--[[
Refers to a param after being processed by the validating smw_func
Used in add_row(), define_params() and is_param_defined()
--]]
function Infobox.smw_param(param_name)
param = {
property = 'args_smw',
param_name = param_name,
}
return param
end
--[[
Checks to see if a param is defined.
-- param: Infobox.param(name), Infobox.raw_param(name) or Infobox.smw_param(name)
Returns 0 if param is never defined
1 if param is defined for a fraction of the versions
2 if param is defined for all versions
]]
function Infobox:is_param_defined(param)
local undefined = 0
local defined = 0
for version = 1, self.versions do
local value = self:get_param(param, version)
if value ~= nil then
defined = 1
else
undefined = 1
end
end
return 1 + defined - undefined
end
--[[
Adds a row to the infobox table
Parameter should be a table of cells, where each cell is a table with the following arguments:
-- tag : 'td' or 'th'
-- content : a string or Infobox.param(name), Infobox.raw_param(name), Infobox.smw_param(name)
-- attr (optional) : mw.html:attr({ arg1 = '1', ... })
-- css (optional) : mw.html:css({ arg1 = '1', ...)
-- class (optional) : mw.html:addClass('arg')
---- class also supports a table of values, even though mw.html:addClass() does not
---- common classes: infobox-subheader
-- rowspan (optional) : mw.html:attr('rowspan',arg)
-- colspan (optional) : mw.html:attr('colspan',arg)
-- title (optional) : mw.html:attr('title',arg)
The row itself may be assigned a single class by setting the value of the key addClass
-- addClass : mw.html:addClass('arg')
-- this function currently only supports a single string
--]]
function Infobox:add_row(...)
local args = ...
local _row = self.rtable:tag('tr')
-- For each cell
for _, v in ipairs(args) do
local _cell = _row:tag(v.tag)
-- Optional parameters
if v.attr then
_cell:attr(v.attr)
end
if v.colspan then
_cell:attr('colspan',v.colspan)
end
if v.rowspan then
_cell:attr('rowspan',v.rowspan)
end
if v.title then
_cell:attr('title',v.title)
end
if v.css then
_cell:css(v.css)
end
if v.class then
if type(v.class) == 'string' then
_cell:addClass(v.class)
-- mw.html:addClass() doesn't function with tables, add in a loop
elseif type(v.class) == 'table' then
for _, w in ipairs(v.class) do
_cell:addClass(w)
end
end
end
-- Populate the cell contents
local content = self:get_param(v.content, self.default_version)
if content == nil then
content = self.params[v.content.param_name].empty
end
_cell:wikitext(content)
-- Add the switch data if multiple values exist
data_attr_param = self:add_switch_data(v.content)
if data_attr_param then
_cell:attr('data-attr-param', data_attr_param)
end
end
-- allow classes to be defined on the whole row
if args.addClass then
_row:addClass(args.addClass)
end
return self
end
--[[
Adds a blank row of padding spanning the given number of columns
--]]
function Infobox:pad(colspan, class)
local tr = self.rtable:tag('tr'):tag('td'):attr('colspan', colspan or 1):addClass('infobox-padding')
if class then
tr:addClass(class)
end
return self
end
--[[
Adds a class to the table as a whole
--]]
function Infobox:addClass(arg)
self.rtable:addClass(arg)
return self
end
--[[
Setup config values
-- config: table containing configuration parameters
---- infobox_name = mandatory unique identifier for this infobox, used for css
---- max_buttuons = max number of switch buttons before using a dropdown list instead
--]]
function Infobox:config(config)
for k, v in pairs(config) do
if k == 'infobox_name' then
self.infobox_name = mw.ustring.gsub(v, '%s', '_')
elseif k == 'max_buttons' then
self.max_buttons = tonumber(v)
end
end
if self.infobox_name == nil then
table.insert(self.errors, 'infobox_name needs to be defined in Infobox.new()\'s config!')
end
return self
end
--[[
Counts the number of versions in the infobox
Populates Infobox.version_names
Sets Infobox.default_version
--]]
function Infobox:parse_versions()
-- Count the versions and setup self.version_names
local i = 1
while self.args_raw['version'..i] do
table.insert(self.version_names, self.args_raw['version'..i])
i = i + 1
end
self.versions = i - 1
-- Should either have 0 or 2+ versions
if self.versions == 1 then
table.insert(self.errors, 'There should be multiple versions or no versions. If defining a custom version name for a single entry, use "version=Name" instead of "version1=Name".')
end
-- Handle the no version case - check for a custom version_name
if self.versions == 0 then
table.insert(self.version_names, self.args_raw['version'] or 'DEFAULT')
self.versions = 1
end
-- Check for a default_version
if self.args_raw['default_version'] then
self.default_version = tonumber(self.args_raw['default_version'])
if self.default_version > self.versions then -- Make sure the default version exists
self.default_version = 1
end
end
end
--[[
Define all used parameters (except for default_version/version)
-- name : parameter name as used in the Template
-- func : function to validate and process the Template argument
-- If func is a function, will call func(Infobox.raw_param(name))
-- If func is a table, contains the following key-value pairs:
---- name : function
---- params : list of arguments to pass to the function (use Infobox.raw_param(),
---- Infobox.param() and Infobox.smw_param() to use arguments)
-- empty (optional) : text to display in the infobox if func returns nil, defaults to "? (edit)"
-- category_never : category to add if func returns nil for all versions
-- category_partial : category to add if func returns nil for some versions, but a value for other versions
-- category_incomplete : category to add if func returns nil for at least 1 version (i.e. category_never and category_partial combined)
-- category_complete : category to add if func returns a value for all versions
-- smw_property (optional) : if this string is defined, the parameter will be saved into smw
-- smw_func (optional) : function to validate and process the Template argument to save into smw
-- func is used by default if smw_func is not defined
--]]
function Infobox:define_params(...)
-- For every parameter, store its corresponding function to self.params
for _, v in ipairs(...) do
if v.name then
local param = {}
-- Copy the function
if type(v.func) == 'function' or type(v.func) == 'table' then
param.func = v.func
end
-- If smw_property is defined, then use smw_func, or default to func if it is not defined
if v.smw_property then
param.smw_property = v.smw_property
if type(v.smw_func) == 'function' or type(v.smw_func) == 'table' then
param.smw_func = v.smw_func
else
param.smw_func = param.func
end
end
-- If empty is not defined, default message is "? (edit)"
param.empty = v.empty or editbutton("'''?''' (edit)")
-- Get the category names
param.category_never = v.category_never
param.category_partial = v.category_partial
param.category_incomplete = v.category_incomplete
param.category_complete = v.category_complete
-- Store the param
self.params[v.name] = param
table.insert(self.param_names, v.name)
end
end
return self
end
--[[
Fetches a param value. If the value is nil, will return the default value instead
-- arg: a non-table value (string, number, etc), or Infobox.param(name), Infobox.raw_param(name), Infobox.smw_param(name)
-- version: 0/'' for default, or else a number
Returns arg if a constant
param value (or default value) if Infobox.param(name), Infobox.raw_param(name), Infobox.smw_param(name)
--]]
function Infobox:get_param(arg, version)
if version == 0 then
version = ''
end
-- Handle Infobox.param(), Infobox.raw_param(), Infobox.smw_param()
if type(arg) == 'table' then
local value = self[arg.property][arg.param_name..version]
-- If nil, grab default value (which could be nil as well)
if value == nil then
value = self[arg.property][arg.param_name]
end
return value
end
-- Everything else passes through unmodified (string, number, etc)
return arg
end
--[[
Calculates the parsed value of a param
-- param_name : param_name as a string
-- version : 0/'' for default, or else a number
-- smw : boolean, will use smw_func if true, or func is false
--]]
function Infobox:parse_param(param_name, version, smw)
if version == 0 then
version = ''
end
-- use func or smw_func depending on smw argument
local param = self.params[param_name]
local func = smw and param.smw_func or param.func
-- call functions by passing the param_name
if type(func) == 'function' then
return func(self:get_param(self.raw_param(param_name), version))
-- call tables by grabbing the function and reading the param arguments
elseif type(func) == 'table' then
local func_name = func.name
local func_params = func.params
local func_fetched_params = {}
for _, func_param in ipairs(func_params) do
table.insert(func_fetched_params, self:get_param(func_param, version))
end
return func_name(unpack(func_fetched_params))
else
table.insert(self.errors, 'Invalid param definition for '..param_name)
end
end
--[[
Parses all the param values (args_parsed and args_smw)
--]]
function Infobox:parse_params()
-- Calculate the param value for all params and all versions
for _, param_name in ipairs(self.param_names) do
for version=0, self.versions do
if version == 0 then
version = ''
end
-- get the parsed value
self.args_parsed[param_name..version] = self:parse_param(param_name, version, false)
-- Only get the smw value if smw_property is defined
if self.params[param_name].smw_property then
self.args_smw[param_name..version] = self:parse_param(param_name, version, true)
end
end
end
end
--[[
Creates the table header
--]]
function Infobox:table_header()
-- Create infobox table
self.rtable = mw.html.create('table')
:addClass('plainlinks')
:addClass('infobox')
:addClass('infobox-'..self.infobox_name)
-- Create the switch datatable if multiple versions
if self.versions > 1 then
self.rtable:addClass('infobox-switch')
self.switch_datatable = mw.html.create('div')
:addClass('infobox-switch-resources')
:addClass('infobox-resources-'..self.infobox_name)
:addClass('hidden')
end
return self
end
--[[
If multiple versions exist, creates a set of buttons for switching
-- self.max_buttons : if the number of versions exceeds this value, a dropdown will be created instead
--]]
function Infobox:buttons()
if self.versions < 2 then
return
end
-- Button caption
local buttons = self.rtable:tag('caption')
:tag('div')
:addClass('infobox-buttons')
:attr('data-default-index', self.default_version)
-- Dropdown list instead of buttons if too many versions
if self.versions > self.max_buttons then
buttons:addClass('infobox-buttons-select')
end
-- Create all the buttons
for version=1, self.versions do
local button = buttons:tag('span')
:attr('data-switch-index', version)
:attr('data-switch-anchor', '#'..self.version_names[version])
:addClass('button')
:wikitext(self.version_names[version])
-- In case of dropdown list, hide the buttons as the switch gadget will convert them to a dropdown list - we can't directly create the dropdown list here as the select/option tags are rejected by wikitext
if self.versions > self.max_buttons then
button:addClass('hidden')
end
end
end
--[[
For each version, stores a subobject for all params that have smw_property defined
--]]
function Infobox:store_smw()
for version=1, self.versions do
-- Generate a subobject name
-- Reminder - subobject name cannot have a . in the first 5 characters
local subobject_name = 'Infobox.'..self.version_names[version]
-- Store each param that has smw_property defined and is not nil
local subobject = {Infobox = self.infobox_name} -- Also store the current Infobox name
for _, param_name in ipairs(self.param_names) do
local property = self.params[param_name].smw_property
if property then
value = self:get_param(self.smw_param(param_name), version)
if value ~= nil then
subobject[property] = value
end
end
end
-- Keep a copy for debugging
self.__smw_debug[subobject_name] = subobject
-- Save subobjects if not in mainspace
if mw.title.getCurrentTitle():inNamespace(0) then
local result = mw.smw.subobject(subobject, subobject_name)
if result ~= true then
table.insert(self.errors, 'SMW error: '..result.error)
end
end
end
end
--[[
Automatically add categories for each param as defined in define_params()
--]]
function Infobox:parse_categories()
for _, param_name in ipairs(self.param_names) do
local param = self.params[param_name]
local defined = self:is_param_defined(Infobox.param(param_name))
if defined == 0 and param.category_never then
self.categories[param.category_never] = 1
end
if defined == 1 and param.category_partial then
self.categories[param.category_partial] = 1
end
if defined < 2 and param.category_incomplete then
self.categories[param.category_incomplete] = 1
end
if defined == 2 and param.category_complete then
self.categories[param.category_complete] = 1
end
end
end
--[[
When a parameter is added into the table, add the alternative versions' data into the switch datatable
-- content : a non-table value (string, number, etc), or Infobox.param(name), Infobox.raw_param(name), Infobox.smw_param(name)
Returns the name of the parameter in the tag 'data-attr-param'
--]]
function Infobox:add_switch_data(content)
if self.versions < 2 then
return false
end
-- Only needed for non-constant params
if type(content) ~= 'table' then
return false
end
-- Only needed if the param changes value between different versions
local first_value = self:get_param(content, 1)
local all_same = true
for version=2, self.versions do
if first_value ~= self:get_param(content, version) then
all_same = false
break
end
end
if all_same then
return false
end
-- Let's build the datatable
-- datum name: Prepend raw__ or smw__ if not a parsed argument
local name = content.param_name
if content.property == 'args_raw' then
name = 'raw__' + name
end
if content.property == 'args_smw' then
name = 'smw__' + name
end
data_param = self.switch_datatable:tag('span'):attr('data-attr-param', name)
-- Add each version to the datatable
for version=1, self.versions do
text = self:get_param(content, version)
if text == nil then
text = self.params[content.param_name].empty
end
data_param:tag('span'):attr('data-attr-index', version):wikitext(text)
end
-- return the 'data-attr-param' name
return name
end
--[[
Override tostring
--]]
function Infobox:__tostring()
-- Create error messages
local error_text = ''
for _, v in ipairs(self.errors) do
error_text = error_text..'<span class="mw-message-box-error">'..v..'</span>'
end
-- Create categories
local category_text = ''
for key, _ in pairs(self.categories) do
category_text = category_text..'[[Category:'..key..']]'
end
return tostring(self.rtable) .. tostring(self.switch_datatable) .. error_text .. category_text
end
--[[
Debug function
--]]
function Infobox:dump()
-- Temporarily detach the metatable so we don't override tostring anymore, allowing us to use dumpObject
setmetatable(self, nil)
mw.log(mw.dumpObject(self))
setmetatable(self, Infobox)
mw.log(tostring(self))
end
return Infobox
b2daacfc58e9322cab07a5757fee469827613fb5
Concept:Items from Homeport
308
840
1839
2024-04-08T22:22:39Z
Gau Cho
5
Test concept
wikitext
text/x-wiki
{{#concept:
[[Infobox:Item]]
[[Episode:Hopeport]]
|Items in Hopeport
}}
f3b2b8a7956c771db3ae9c72313826d808951db5
1840
1839
2024-04-08T22:23:21Z
Gau Cho
5
Test
wikitext
text/x-wiki
{{#concept:
[[Infobox::Item]]
[[Episode::Hopeport]]
|Items in Hopeport
}}
8b0850cf952cbbaa37b0f34e47d8fe4a5eb369ab
Punkupine
0
446
1841
769
2024-04-09T09:17:08Z
Sam
60
infobox
wikitext
text/x-wiki
{{Infobox NPC
|name = Punkupine
|image =
|release = Q3 2024
|episode =
|premium =
|profession =
}}
'''Punkupine''' is a [[monster]].
[[Category:Monsters]]
ee94c5dd9cd29dcb7a0af65277696728e257c38a
Slime Fiend
0
447
1842
724
2024-04-09T09:17:40Z
Sam
60
infobox
wikitext
text/x-wiki
{{Infobox NPC
|name = Slime Fiend
|image =
|release = Q3 2024
|episode =
|premium =
|profession =
}}
'''Slime Fiend''' is a [[monster]].
[[Category:Monsters]]
7c3e17ed6d938fce516be77989e8eb275eaabdc9
Sneaky Thief
0
100
1843
1021
2024-04-09T09:18:57Z
Sam
60
infobox
wikitext
text/x-wiki
{{Infobox NPC
|name = Sneaky Thief
|image = [[File:Sneaky Thief.png]]
|release = Q3 2024
|episode =
|premium =
|profession =
}}
'''Sneaky Thieves''' are a type of monster. They have 1,100 health.
[[Category:Monsters]]
3cafea40bf0db54333b10b2eca7c0e830451abdb
Wailing Shade
0
85
1844
1029
2024-04-09T09:20:00Z
Sam
60
infobox
wikitext
text/x-wiki
{{Infobox NPC
|name = Wailing Shade
|image = [[File:Wailing Shade.png]]
|release = Q3 2024
|episode =
|premium =
|profession =
}}
'''Wailing Shades''' are monsters. They have 682 health.
[[Category:Monsters]]
511077c1d3d33961022278d844a32f9273ff59f3
Module:Infobox Location
828
841
1846
2024-04-09T12:56:46Z
Gau Cho
5
Created page with "local p = {} local Infobox = require('Module:Infobox') local parse = require('Module:Param Parse') function p.main(frame) local args = frame:getParent().args local config = { infobox_name = 'Location', } local params = { parse.name, parse.image, parse.release, parse.premium, parse.episode, } local infobox = Infobox.new(config, params, args) infobox :add_row{ {tag='th', content=Infobox.param('name'), class='infobox-header', colspan='20'},..."
Scribunto
text/plain
local p = {}
local Infobox = require('Module:Infobox')
local parse = require('Module:Param Parse')
function p.main(frame)
local args = frame:getParent().args
local config = {
infobox_name = 'Location',
}
local params = {
parse.name,
parse.image,
parse.release,
parse.premium,
parse.episode,
}
local infobox = Infobox.new(config, params, args)
infobox
:add_row{
{tag='th', content=Infobox.param('name'), class='infobox-header', colspan='20'},
}
:add_row{
{tag='td', content=Infobox.param('image'), class='infobox-image', colspan='20'},
}
:add_row{
{tag='th', content='Release', colspan="6"},
{tag='td', content=Infobox.param('release'), colspan="14"},
}
:add_row{
{tag='th', content='[[Episode]]', colspan="6"},
{tag='td', content=Infobox.param('episode'), colspan="14"},
}
:add_row{
{tag='th', content='[[Premium Pass|Premium]]', colspan="6"},
{tag='td', content=Infobox.param('premium'), colspan="14"},
}
:pad(20)
return infobox
end
return p
65186b9fe16ef815b0047c90c4dbbcdae6284755
Module:Infobox Location/doc
828
842
1847
2024-04-09T12:57:07Z
Gau Cho
5
Created page with "{{No documentation}}"
wikitext
text/x-wiki
{{No documentation}}
ad36a615c98d03e22b03ecaa7b9d7d87b5d7b517
Leech Pools
0
78
1850
1480
2024-04-09T13:00:27Z
Gau Cho
5
wikitext
text/x-wiki
{{Infobox Location
|name = Leech Pools
|image = [[File:Leech Pools.jpg]]
|release =
|premium =
|episode =
}}
The '''Leech Pools''' is a watery cave system.
6374e1ad5ce022344f75b13a78e91114950854d1
1853
1850
2024-04-09T13:30:43Z
Gau Cho
5
wikitext
text/x-wiki
{{Infobox Location
|name = Leech Pools
|image = [[File:Leech Pools.jpg|280px]]
|release =
|premium =
|episode =
}}
The '''Leech Pools''' is a watery cave system.
3f5392dfb0c642c9aab93c79a0f9e13baca56ee9
Module:Param Parse
828
673
1851
1766
2024-04-09T13:16:49Z
Gau Cho
5
Fixing image functions
Scribunto
text/plain
--[=[
-- Standardized functions to parse Infobox params
--]=]
-- <nowiki>
local parse = {}
-- Generic functions --
-----------------------
-- Standardized "has content" function
function parse.has_content(arg)
-- Return arg if any non-whitespace character is found
return string.match(arg or '', '%S') and arg or nil
end
-- Standardized numbers
function parse.number(num)
num = string.gsub(num or '',',','')
return tonumber(num)
end
-- Yes/No
local yes_no = {
['Yes'] = true,
['No'] = false,
['N/A'] = 'NIL',
}
function parse.yes_no(text)
if yes_no[text] ~= nil then
return text
end
return nil
end
function parse.yes_no_smw(text)
if text == 'N/A' then
return nil
end
return yes_no[text] or nil
end
-- Premade Params --
--------------------
-- Standardized name function
parse.name = {
name = 'name',
func = parse.has_content,
smw_property = 'Name',
}
-- Standardized image function
function parse.image_func(img)
if img and string.match(img, '%[%[File:.*%]%]') then
return img
end
return nil
end
function parse.image_smw(img)
return img and string.match(img, "File:.*") or nil
end
parse.image = {
name = 'image',
func = parse.image_func,
smw_property = 'Image',
smw_func = parse.image_smw,
empty = '[[Special:Upload|Please upload an image!]]',
category_incomplete = 'Needs image',
}
-- Episode
local valid_episodes = {['Hopeport'] = 1, ['Hopeforest'] = 1, ['Mine of Mantuban'] = 1, ['Crenopolis'] = 1}
function parse.episode_func(episode)
if valid_episodes[episode] then
return '[[File:'..episode..' episode icon.png|18px]] [['..episode..']]'
end
return nil
end
function parse.episode_smw(episode)
if valid_episodes[episode] then
return episode
end
return nil
end
parse.episode = {
name = 'episode',
func = parse.episode_func,
smw_property = 'Episode',
smw_func = parse.episode_smw,
category_incomplete = 'Needs episode',
}
-- Premium
parse.premium = {
name = 'premium',
func = parse.yes_no,
smw_property = 'Premium',
smw_func = parse.yes_no,
category_incomplete = 'Needs premium status',
}
-- Release (TODO)
parse.release = {
name = 'release',
func = parse.has_content,
}
return parse
-- </nowiki>
f8639f8edcf16b5c99ede53aabc50773bc27e764
1852
1851
2024-04-09T13:30:26Z
Gau Cho
5
Update image matching function
Scribunto
text/plain
--[=[
-- Standardized functions to parse Infobox params
--]=]
-- <nowiki>
local parse = {}
-- Generic functions --
-----------------------
-- Standardized "has content" function
function parse.has_content(arg)
-- Return arg if any non-whitespace character is found
return string.match(arg or '', '%S') and arg or nil
end
-- Standardized numbers
function parse.number(num)
num = string.gsub(num or '',',','')
return tonumber(num)
end
-- Yes/No
local yes_no = {
['Yes'] = true,
['No'] = false,
['N/A'] = 'NIL',
}
function parse.yes_no(text)
if yes_no[text] ~= nil then
return text
end
return nil
end
function parse.yes_no_smw(text)
if text == 'N/A' then
return nil
end
return yes_no[text] or nil
end
-- Premade Params --
--------------------
-- Standardized name function
parse.name = {
name = 'name',
func = parse.has_content,
smw_property = 'Name',
}
-- Standardized image function
function parse.image_func(img)
if img and string.match(img, '%[%[File:.*%]%]') then
return img
end
return nil
end
function parse.image_smw(img)
return img and string.match(img, "File:.*%.%w%w%w") or nil
end
parse.image = {
name = 'image',
func = parse.image_func,
smw_property = 'Image',
smw_func = parse.image_smw,
empty = '[[Special:Upload|Please upload an image!]]',
category_incomplete = 'Needs image',
}
-- Episode
local valid_episodes = {['Hopeport'] = 1, ['Hopeforest'] = 1, ['Mine of Mantuban'] = 1, ['Crenopolis'] = 1}
function parse.episode_func(episode)
if valid_episodes[episode] then
return '[[File:'..episode..' episode icon.png|18px]] [['..episode..']]'
end
return nil
end
function parse.episode_smw(episode)
if valid_episodes[episode] then
return episode
end
return nil
end
parse.episode = {
name = 'episode',
func = parse.episode_func,
smw_property = 'Episode',
smw_func = parse.episode_smw,
category_incomplete = 'Needs episode',
}
-- Premium
parse.premium = {
name = 'premium',
func = parse.yes_no,
smw_property = 'Premium',
smw_func = parse.yes_no,
category_incomplete = 'Needs premium status',
}
-- Release (TODO)
parse.release = {
name = 'release',
func = parse.has_content,
}
return parse
-- </nowiki>
c5038c70ae115373ab9c6c64e489970847cf91a2
Barricades
0
79
1854
1469
2024-04-09T13:31:51Z
Gau Cho
5
wikitext
text/x-wiki
{{Infobox Location
|name = Barricades
|image = [[File:Barricades.jpg|280px]]
|release =
|premium =
|episode =
}}
The '''Barricades''' is a location that leads into the [[Mine Entrance]], which is guarded by a [[barricade guard]]. The player must talk to [[Captain Jal Degreene]] as part of a quest in order to be allowed through.
898b689da2fdada2c7d146b1a068446a3c3e0100
Tanners Road
0
80
1855
1485
2024-04-09T13:32:09Z
Gau Cho
5
wikitext
text/x-wiki
{{Infobox Location
|name = Tanners Road
|image = [[File:Tanners Road.jpg|280px]]
|release =
|premium = No
|episode = Hopeport
}}
'''Tanners Road''' is a road in [[Hopeport]]. It features various market stalls.
b007c2be10ba09bcb54caf73456b9049d7fd8007
Bone Vats
0
81
1856
1471
2024-04-09T13:32:22Z
Gau Cho
5
wikitext
text/x-wiki
{{Infobox Location
|name = Bone Vats
|image = [[File:Bone Vats.jpg|280px]]
|release =
|premium =
|episode =
}}
The '''Bone Vats''' is a location where players can craft items using bones.
3a69c505a880fe811655da8bb877bf2932dfb532
Goblin Marketplace
0
82
1857
1474
2024-04-09T13:32:59Z
Gau Cho
5
wikitext
text/x-wiki
{{Infobox Location
|name = Goblin Marketplace
|image = [[File:Goblin Marketplace.jpg|280px]]
|release =
|premium =
|episode =
}}
The '''Goblin Marketplace''' is a location where [[goblin]]s sell their wares.
a254651d0c7a2f65f4a0fe829cd128417598b7c0
Cliffside Path
0
83
1858
1472
2024-04-09T13:33:04Z
Gau Cho
5
wikitext
text/x-wiki
{{Infobox Location
|name = Cliffside Path
|image = [[File:Cliffside Path.jpg|280px]]
|release =
|premium =
|episode =
}}
The '''Cliffside Path''' is a location. It is a wooded path, inhabited by giant spiders, with large cobwebs strewn about.
de2586b0189bcca06c349c41d549d974ec1ecd10
Southeast Sewer
0
88
1859
1484
2024-04-09T13:33:10Z
Gau Cho
5
wikitext
text/x-wiki
{{Infobox Location
|name = Southeast Sewer
|image = [[File:Southeast Sewer.jpg|280px]]
|release =
|premium =
|episode =
}}
The '''Southeast Sewer''' is a location.
bb3bb2098ed9a3280f53bb821e34e2cfda4eecea
Truck Cave
0
94
1860
1486
2024-04-09T13:33:14Z
Gau Cho
5
wikitext
text/x-wiki
{{Infobox Location
|name = Truck Cave
|image = [[File:Truck Cave.jpg|280px]]
|release =
|premium =
|episode =
}}
The '''Truck Cave''' is a cave filled with minecart rails.
7b40a8ce70bc3bbbecee2f1aa8b6f7b623de31fa
Hopeport Obelisk
0
97
1861
1479
2024-04-09T13:33:22Z
Gau Cho
5
wikitext
text/x-wiki
{{Infobox Location
|name = Hopeport Obelisk
|image = [[File:Hopeport Obelisk.jpg|280px]]
|release =
|premium = No
|episode = Hopeport
}}
The '''Hopeport Obelisk''' is a location near [[Hopeport]]. It is likely that it will be used as a fast travel location.
==Trivia==
* Hopeport Obelisk is featured in the ''[[Brighter Shores]]'' logo.
bbc4a7842e64d070903fb49a8686c5e73bc52b80
Quiet Grove
0
101
1862
1483
2024-04-09T13:33:27Z
Gau Cho
5
wikitext
text/x-wiki
{{Infobox Location
|name = Quiet Grove
|image = [[File:Quiet Grove.jpg|280px]]
|release =
|premium =
|episode =
}}
The '''Quiet Grove''' is a location. It has an entrance to a mine.
658a5bd652c2d6f8685fb2ebccbc7812f7648617
Eel Street Bridge
0
809
1863
1739
2024-04-09T13:33:42Z
Gau Cho
5
wikitext
text/x-wiki
{{Infobox Location
|name = Eel Street Bridge
|image = [[File:Eel Street Bridge.jpg|280px]]
|release =
|premium =
|episode =
}}
The '''Eel Street Bridge''' is a location in [[Hopeport (location)|Hopeport]]. The bridge connects [[Eel Street]] and the Hopeport [[Town Square]].
5fd8086578c96a6a296af157237904e19f930394
Eel Street
0
810
1864
1738
2024-04-09T13:33:50Z
Gau Cho
5
wikitext
text/x-wiki
{{Infobox Location
|name = Eel Street
|image = [[File:Eel Street.jpg|280px]]
|release =
|premium =
|episode =
}}
'''Eel Street''' is a location in [[Hopeport (location)|Hopeport]]. A [[fishmonger]] is located on Eel Street.
7a812ce9cf8307a9634a19ad3d442c5e6d236cb7
Central Waterfront
0
811
1865
1737
2024-04-09T13:33:54Z
Gau Cho
5
wikitext
text/x-wiki
{{Infobox Location
|name = Central Waterfront
|image = [[File:Central Waterfront.jpg|280px]]
|release =
|premium =
|episode =
}}
The '''Central Waterfront''' is a location in [[Hopeport (location)|Hopeport]].
d83bcadc0f4a26ca2da3dfa9c400b214fecc630f
West Waterfront
0
812
1866
1736
2024-04-09T13:33:59Z
Gau Cho
5
wikitext
text/x-wiki
{{Infobox Location
|name = West Waterfront
|image = [[File:West Waterfront.jpg|280px]]
|release =
|premium =
|episode =
}}
The '''West Waterfront''' is a location in [[Hopeport (location)|Hopeport]].
fb5b80d406f720367feb6f7fdedac976cce9a1be
Sea Road
0
813
1867
1735
2024-04-09T13:34:03Z
Gau Cho
5
wikitext
text/x-wiki
{{Infobox Location
|name = Sea Road
|image = [[File:Sea Road.jpg|280px]]
|release =
|premium =
|episode =
}}
The '''Sea Road''' is a location in [[Hopeport (location)|Hopeport]].
ef39640ad59819351d4402b2464243189fd046c6
East Beach
0
814
1868
1734
2024-04-09T13:34:10Z
Gau Cho
5
wikitext
text/x-wiki
{{Infobox Location
|name = East Beach
|image = [[File:East Beach.jpg|280px]]
|release =
|premium =
|episode =
}}
The '''East Beach''' is a location in [[Hopeport (location)|Hopeport]].
17b1292ba34b07c93ad49cdd9eda338bb3a4eeb8
Seashells Seashore
0
815
1869
1733
2024-04-09T13:34:15Z
Gau Cho
5
wikitext
text/x-wiki
{{Infobox Location
|name = Seashells Seashore
|image = [[File:Seashells Seashore.jpg|280px]]
|release =
|premium =
|episode =
}}
'''Seashells Seashore''' is a location in [[Hopeport (location)|Hopeport]]. [[Shell]]s and a [[Rock Pool]] can be found on the beach.
64fd569053ca620385ed823a53dca08cb6d290d6
Jellyfish Landing
0
816
1870
1732
2024-04-09T13:34:22Z
Gau Cho
5
wikitext
text/x-wiki
{{Infobox Location
|name = Jellyfish Landing
|image = [[File:Jellyfish Landing.jpg|280px]]
|release =
|premium =
|episode =
}}
'''Jellyfish Landing''' is a location in [[Hopeport (location)|Hopeport]]. [[Jellyfish]] can be found in the waters of the beach.
41436f042261a7724c29578d53a02528a7e4598d
Fallen Monument
0
817
1871
1731
2024-04-09T13:34:28Z
Gau Cho
5
wikitext
text/x-wiki
{{Infobox Location
|name = Fallen Monument
|image = [[File:Fallen Monument.jpg|280px]]
|release =
|premium =
|episode =
}}
The '''Fallen Monument''' is a location in [[Hopeport (location)|Hopeport]]. [[Carnivorous Plant]]s can be found throughout the area.
5f52687ca70dd48e63bb47359043d76a20b40806
Crater
0
820
1872
1730
2024-04-09T13:34:33Z
Gau Cho
5
wikitext
text/x-wiki
{{Infobox Location
|name = Crater
|image = [[File:Crater.jpg|280px]]
|release =
|premium =
|episode =
}}
The '''Crater''' is a location in [[Hopeport (location)|Hopeport]]. [[Giant Ant]]s and [[Hogberries]] can be found in the Crater.
Four [[Monument Piece]]s are placed throughout the area.
708e9ebb312a23225b359ff53b76b9cd416c5954
Wasteland
0
822
1873
1729
2024-04-09T13:34:40Z
Gau Cho
5
wikitext
text/x-wiki
{{Infobox Location
|name = Wasteland
|image = [[File:Wasteland.jpg|280px]]
|release =
|premium =
|episode =
}}
The '''Wasteland''' is a location in [[Hopeport (location)|Hopeport]].
897e6a877e67f3da64dbfec285b3a5bb6301f149
Module:SMW Utils/doc
828
843
1874
2024-04-09T13:41:16Z
Gau Cho
5
Created page with "{{No documentation}}"
wikitext
text/x-wiki
{{No documentation}}
ad36a615c98d03e22b03ecaa7b9d7d87b5d7b517
Module:Infobox
828
102
1875
1838
2024-04-09T13:47:18Z
Gau Cho
5
Change subobject naming scheme
Scribunto
text/plain
--[=[
-- For documentation, see [[Module:Infobox/doc]]
--]=]
-- <nowiki>
local editbutton = require('Module:Edit button')
local smwutils = requires('Module:SMW Utils')
local Infobox = {}
Infobox.__index = Infobox
--[[
Infobox class
-- config: table containing configuration parameters
-- params : definitions for each used value
-- args : values passed from the Template
---- the following values are treated specially: default_version, version, version1, version2...
--]]
function Infobox.new(config, params, args)
local obj = setmetatable({
args_raw = args, -- parameters (uncleaned)
args_parsed = {}, -- parsed parameters
args_smw = {}, -- parameters parsed for smw
infobox_name = nil, -- template name
param_names = {}, -- ordered param list
params = {}, -- param definitions
max_buttons = 6, -- If there are more buttons than the max, the buttons will become a dropdown menu
default_version = 1, -- default version to populate the infobox
versions = nil, -- number of versions
version_names = {}, -- title of each version (for selection and SMW)
rtable = nil, -- infobox table to return at the end
switch_datatable = '', -- datatable for javascript for switch infoboxes
categories = {}, -- set of categories
errors = {}, -- list of errors
__smw_debug = {}, -- debug data for smw subobjects
},
Infobox)
-- Step 1, setup config vars and count the versions
obj:config(config)
obj:parse_versions()
-- Step 2, process the params
obj:define_params(params)
obj:parse_params()
-- Table
obj:table_header()
obj:buttons()
-- Misc
obj:store_smw()
obj:parse_categories()
return obj
end
--[[
Refers to a param after being processed by the validating func
Used in add_row(), define_params() and is_param_defined()
--]]
function Infobox.param(param_name)
param = {
property = 'args_parsed',
param_name = param_name,
}
return param
end
--[[
Refers to a param in raw form as passed from the Template
Used in add_row(), define_params() and is_param_defined()
--]]
function Infobox.raw_param(param_name)
param = {
property = 'args_raw',
param_name = param_name,
}
return param
end
--[[
Refers to a param after being processed by the validating smw_func
Used in add_row(), define_params() and is_param_defined()
--]]
function Infobox.smw_param(param_name)
param = {
property = 'args_smw',
param_name = param_name,
}
return param
end
--[[
Checks to see if a param is defined.
-- param: Infobox.param(name), Infobox.raw_param(name) or Infobox.smw_param(name)
Returns 0 if param is never defined
1 if param is defined for a fraction of the versions
2 if param is defined for all versions
]]
function Infobox:is_param_defined(param)
local undefined = 0
local defined = 0
for version = 1, self.versions do
local value = self:get_param(param, version)
if value ~= nil then
defined = 1
else
undefined = 1
end
end
return 1 + defined - undefined
end
--[[
Adds a row to the infobox table
Parameter should be a table of cells, where each cell is a table with the following arguments:
-- tag : 'td' or 'th'
-- content : a string or Infobox.param(name), Infobox.raw_param(name), Infobox.smw_param(name)
-- attr (optional) : mw.html:attr({ arg1 = '1', ... })
-- css (optional) : mw.html:css({ arg1 = '1', ...)
-- class (optional) : mw.html:addClass('arg')
---- class also supports a table of values, even though mw.html:addClass() does not
---- common classes: infobox-subheader
-- rowspan (optional) : mw.html:attr('rowspan',arg)
-- colspan (optional) : mw.html:attr('colspan',arg)
-- title (optional) : mw.html:attr('title',arg)
The row itself may be assigned a single class by setting the value of the key addClass
-- addClass : mw.html:addClass('arg')
-- this function currently only supports a single string
--]]
function Infobox:add_row(...)
local args = ...
local _row = self.rtable:tag('tr')
-- For each cell
for _, v in ipairs(args) do
local _cell = _row:tag(v.tag)
-- Optional parameters
if v.attr then
_cell:attr(v.attr)
end
if v.colspan then
_cell:attr('colspan',v.colspan)
end
if v.rowspan then
_cell:attr('rowspan',v.rowspan)
end
if v.title then
_cell:attr('title',v.title)
end
if v.css then
_cell:css(v.css)
end
if v.class then
if type(v.class) == 'string' then
_cell:addClass(v.class)
-- mw.html:addClass() doesn't function with tables, add in a loop
elseif type(v.class) == 'table' then
for _, w in ipairs(v.class) do
_cell:addClass(w)
end
end
end
-- Populate the cell contents
local content = self:get_param(v.content, self.default_version)
if content == nil then
content = self.params[v.content.param_name].empty
end
_cell:wikitext(content)
-- Add the switch data if multiple values exist
data_attr_param = self:add_switch_data(v.content)
if data_attr_param then
_cell:attr('data-attr-param', data_attr_param)
end
end
-- allow classes to be defined on the whole row
if args.addClass then
_row:addClass(args.addClass)
end
return self
end
--[[
Adds a blank row of padding spanning the given number of columns
--]]
function Infobox:pad(colspan, class)
local tr = self.rtable:tag('tr'):tag('td'):attr('colspan', colspan or 1):addClass('infobox-padding')
if class then
tr:addClass(class)
end
return self
end
--[[
Adds a class to the table as a whole
--]]
function Infobox:addClass(arg)
self.rtable:addClass(arg)
return self
end
--[[
Setup config values
-- config: table containing configuration parameters
---- infobox_name = mandatory unique identifier for this infobox, used for css
---- max_buttuons = max number of switch buttons before using a dropdown list instead
--]]
function Infobox:config(config)
for k, v in pairs(config) do
if k == 'infobox_name' then
self.infobox_name = mw.ustring.gsub(v, '%s', '_')
elseif k == 'max_buttons' then
self.max_buttons = tonumber(v)
end
end
if self.infobox_name == nil then
table.insert(self.errors, 'infobox_name needs to be defined in Infobox.new()\'s config!')
end
return self
end
--[[
Counts the number of versions in the infobox
Populates Infobox.version_names
Sets Infobox.default_version
--]]
function Infobox:parse_versions()
function insert_version_name(version_name)
table.insert(self.version_names, version_name)
if smwutils.valid_subobject_name(version_name) == false then
table.insert(self.errors, 'Illegal version value: must not be "0" nor contain a "." in the first five characters')
end
end
-- Count the versions and setup self.version_names
local i = 1
while self.args_raw['version'..i] do
insert_version_name(self.args_raw['version'..i])
i = i + 1
end
self.versions = i - 1
-- Should either have 0 or 2+ versions
if self.versions == 1 then
table.insert(self.errors, 'There should be multiple versions or no versions. If defining a custom version name for a single entry, use "version=Name" instead of "version1=Name".')
end
-- Handle the no version case - check for a custom version_name
if self.versions == 0 then
insert_version_name(self.args_raw['version'] or 'DEFAULT')
self.versions = 1
end
-- Check for a default_version
if self.args_raw['default_version'] then
self.default_version = tonumber(self.args_raw['default_version'])
if self.default_version > self.versions then -- Make sure the default version exists
self.default_version = 1
end
end
end
--[[
Define all used parameters (except for default_version/version)
-- name : parameter name as used in the Template
-- func : function to validate and process the Template argument
-- If func is a function, will call func(Infobox.raw_param(name))
-- If func is a table, contains the following key-value pairs:
---- name : function
---- params : list of arguments to pass to the function (use Infobox.raw_param(),
---- Infobox.param() and Infobox.smw_param() to use arguments)
-- empty (optional) : text to display in the infobox if func returns nil, defaults to "? (edit)"
-- category_never : category to add if func returns nil for all versions
-- category_partial : category to add if func returns nil for some versions, but a value for other versions
-- category_incomplete : category to add if func returns nil for at least 1 version (i.e. category_never and category_partial combined)
-- category_complete : category to add if func returns a value for all versions
-- smw_property (optional) : if this string is defined, the parameter will be saved into smw
-- smw_func (optional) : function to validate and process the Template argument to save into smw
-- func is used by default if smw_func is not defined
--]]
function Infobox:define_params(...)
-- For every parameter, store its corresponding function to self.params
for _, v in ipairs(...) do
if v.name then
local param = {}
-- Copy the function
if type(v.func) == 'function' or type(v.func) == 'table' then
param.func = v.func
end
-- If smw_property is defined, then use smw_func, or default to func if it is not defined
if v.smw_property then
param.smw_property = v.smw_property
if type(v.smw_func) == 'function' or type(v.smw_func) == 'table' then
param.smw_func = v.smw_func
else
param.smw_func = param.func
end
end
-- If empty is not defined, default message is "? (edit)"
param.empty = v.empty or editbutton("'''?''' (edit)")
-- Get the category names
param.category_never = v.category_never
param.category_partial = v.category_partial
param.category_incomplete = v.category_incomplete
param.category_complete = v.category_complete
-- Store the param
self.params[v.name] = param
table.insert(self.param_names, v.name)
end
end
return self
end
--[[
Fetches a param value. If the value is nil, will return the default value instead
-- arg: a non-table value (string, number, etc), or Infobox.param(name), Infobox.raw_param(name), Infobox.smw_param(name)
-- version: 0/'' for default, or else a number
Returns arg if a constant
param value (or default value) if Infobox.param(name), Infobox.raw_param(name), Infobox.smw_param(name)
--]]
function Infobox:get_param(arg, version)
if version == 0 then
version = ''
end
-- Handle Infobox.param(), Infobox.raw_param(), Infobox.smw_param()
if type(arg) == 'table' then
local value = self[arg.property][arg.param_name..version]
-- If nil, grab default value (which could be nil as well)
if value == nil then
value = self[arg.property][arg.param_name]
end
return value
end
-- Everything else passes through unmodified (string, number, etc)
return arg
end
--[[
Calculates the parsed value of a param
-- param_name : param_name as a string
-- version : 0/'' for default, or else a number
-- smw : boolean, will use smw_func if true, or func is false
--]]
function Infobox:parse_param(param_name, version, smw)
if version == 0 then
version = ''
end
-- use func or smw_func depending on smw argument
local param = self.params[param_name]
local func = smw and param.smw_func or param.func
-- call functions by passing the param_name
if type(func) == 'function' then
return func(self:get_param(self.raw_param(param_name), version))
-- call tables by grabbing the function and reading the param arguments
elseif type(func) == 'table' then
local func_name = func.name
local func_params = func.params
local func_fetched_params = {}
for _, func_param in ipairs(func_params) do
table.insert(func_fetched_params, self:get_param(func_param, version))
end
return func_name(unpack(func_fetched_params))
else
table.insert(self.errors, 'Invalid param definition for '..param_name)
end
end
--[[
Parses all the param values (args_parsed and args_smw)
--]]
function Infobox:parse_params()
-- Calculate the param value for all params and all versions
for _, param_name in ipairs(self.param_names) do
for version=0, self.versions do
if version == 0 then
version = ''
end
-- get the parsed value
self.args_parsed[param_name..version] = self:parse_param(param_name, version, false)
-- Only get the smw value if smw_property is defined
if self.params[param_name].smw_property then
self.args_smw[param_name..version] = self:parse_param(param_name, version, true)
end
end
end
end
--[[
Creates the table header
--]]
function Infobox:table_header()
-- Create infobox table
self.rtable = mw.html.create('table')
:addClass('plainlinks')
:addClass('infobox')
:addClass('infobox-'..self.infobox_name)
-- Create the switch datatable if multiple versions
if self.versions > 1 then
self.rtable:addClass('infobox-switch')
self.switch_datatable = mw.html.create('div')
:addClass('infobox-switch-resources')
:addClass('infobox-resources-'..self.infobox_name)
:addClass('hidden')
end
return self
end
--[[
If multiple versions exist, creates a set of buttons for switching
-- self.max_buttons : if the number of versions exceeds this value, a dropdown will be created instead
--]]
function Infobox:buttons()
if self.versions < 2 then
return
end
-- Button caption
local buttons = self.rtable:tag('caption')
:tag('div')
:addClass('infobox-buttons')
:attr('data-default-index', self.default_version)
-- Dropdown list instead of buttons if too many versions
if self.versions > self.max_buttons then
buttons:addClass('infobox-buttons-select')
end
-- Create all the buttons
for version=1, self.versions do
local button = buttons:tag('span')
:attr('data-switch-index', version)
:attr('data-switch-anchor', '#'..self.version_names[version])
:addClass('button')
:wikitext(self.version_names[version])
-- In case of dropdown list, hide the buttons as the switch gadget will convert them to a dropdown list - we can't directly create the dropdown list here as the select/option tags are rejected by wikitext
if self.versions > self.max_buttons then
button:addClass('hidden')
end
end
end
--[[
For each version, stores a subobject for all params that have smw_property defined
--]]
function Infobox:store_smw()
for version=1, self.versions do
-- Generate a subobject name
-- Reminder - subobject name cannot have a . in the first 5 characters
local subobject_name = self.version_names[version]
-- Store each param that has smw_property defined and is not nil
local subobject = {Infobox = self.infobox_name} -- Also store the current Infobox name
for _, param_name in ipairs(self.param_names) do
local property = self.params[param_name].smw_property
if property then
value = self:get_param(self.smw_param(param_name), version)
if value ~= nil then
subobject[property] = value
end
end
end
-- Keep a copy for debugging
self.__smw_debug[subobject_name] = subobject
-- Save subobjects if not in mainspace
if mw.title.getCurrentTitle():inNamespace(0) then
local result = true
if self.versions == 1 then
result = mw.smw.set(subobject)
else
result = mw.smw.subobject(subobject, subobject_name)
end
if result ~= true then
table.insert(self.errors, 'SMW error: '..result.error)
end
end
end
end
--[[
Automatically add categories for each param as defined in define_params()
--]]
function Infobox:parse_categories()
for _, param_name in ipairs(self.param_names) do
local param = self.params[param_name]
local defined = self:is_param_defined(Infobox.param(param_name))
if defined == 0 and param.category_never then
self.categories[param.category_never] = 1
end
if defined == 1 and param.category_partial then
self.categories[param.category_partial] = 1
end
if defined < 2 and param.category_incomplete then
self.categories[param.category_incomplete] = 1
end
if defined == 2 and param.category_complete then
self.categories[param.category_complete] = 1
end
end
end
--[[
When a parameter is added into the table, add the alternative versions' data into the switch datatable
-- content : a non-table value (string, number, etc), or Infobox.param(name), Infobox.raw_param(name), Infobox.smw_param(name)
Returns the name of the parameter in the tag 'data-attr-param'
--]]
function Infobox:add_switch_data(content)
if self.versions < 2 then
return false
end
-- Only needed for non-constant params
if type(content) ~= 'table' then
return false
end
-- Only needed if the param changes value between different versions
local first_value = self:get_param(content, 1)
local all_same = true
for version=2, self.versions do
if first_value ~= self:get_param(content, version) then
all_same = false
break
end
end
if all_same then
return false
end
-- Let's build the datatable
-- datum name: Prepend raw__ or smw__ if not a parsed argument
local name = content.param_name
if content.property == 'args_raw' then
name = 'raw__' + name
end
if content.property == 'args_smw' then
name = 'smw__' + name
end
data_param = self.switch_datatable:tag('span'):attr('data-attr-param', name)
-- Add each version to the datatable
for version=1, self.versions do
text = self:get_param(content, version)
if text == nil then
text = self.params[content.param_name].empty
end
data_param:tag('span'):attr('data-attr-index', version):wikitext(text)
end
-- return the 'data-attr-param' name
return name
end
--[[
Override tostring
--]]
function Infobox:__tostring()
-- Create error messages
local error_text = ''
for _, v in ipairs(self.errors) do
error_text = error_text..'<span class="mw-message-box-error">'..v..'</span>'
end
-- Create categories
local category_text = ''
for key, _ in pairs(self.categories) do
category_text = category_text..'[[Category:'..key..']]'
end
return tostring(self.rtable) .. tostring(self.switch_datatable) .. error_text .. category_text
end
--[[
Debug function
--]]
function Infobox:dump()
-- Temporarily detach the metatable so we don't override tostring anymore, allowing us to use dumpObject
setmetatable(self, nil)
mw.log(mw.dumpObject(self))
setmetatable(self, Infobox)
mw.log(tostring(self))
end
return Infobox
bc9d64fe72f884a13bb678c64b3835d9c05f6dd3
1876
1875
2024-04-09T13:48:09Z
Gau Cho
5
Typo
Scribunto
text/plain
--[=[
-- For documentation, see [[Module:Infobox/doc]]
--]=]
-- <nowiki>
local editbutton = require('Module:Edit button')
local smwutils = require('Module:SMW Utils')
local Infobox = {}
Infobox.__index = Infobox
--[[
Infobox class
-- config: table containing configuration parameters
-- params : definitions for each used value
-- args : values passed from the Template
---- the following values are treated specially: default_version, version, version1, version2...
--]]
function Infobox.new(config, params, args)
local obj = setmetatable({
args_raw = args, -- parameters (uncleaned)
args_parsed = {}, -- parsed parameters
args_smw = {}, -- parameters parsed for smw
infobox_name = nil, -- template name
param_names = {}, -- ordered param list
params = {}, -- param definitions
max_buttons = 6, -- If there are more buttons than the max, the buttons will become a dropdown menu
default_version = 1, -- default version to populate the infobox
versions = nil, -- number of versions
version_names = {}, -- title of each version (for selection and SMW)
rtable = nil, -- infobox table to return at the end
switch_datatable = '', -- datatable for javascript for switch infoboxes
categories = {}, -- set of categories
errors = {}, -- list of errors
__smw_debug = {}, -- debug data for smw subobjects
},
Infobox)
-- Step 1, setup config vars and count the versions
obj:config(config)
obj:parse_versions()
-- Step 2, process the params
obj:define_params(params)
obj:parse_params()
-- Table
obj:table_header()
obj:buttons()
-- Misc
obj:store_smw()
obj:parse_categories()
return obj
end
--[[
Refers to a param after being processed by the validating func
Used in add_row(), define_params() and is_param_defined()
--]]
function Infobox.param(param_name)
param = {
property = 'args_parsed',
param_name = param_name,
}
return param
end
--[[
Refers to a param in raw form as passed from the Template
Used in add_row(), define_params() and is_param_defined()
--]]
function Infobox.raw_param(param_name)
param = {
property = 'args_raw',
param_name = param_name,
}
return param
end
--[[
Refers to a param after being processed by the validating smw_func
Used in add_row(), define_params() and is_param_defined()
--]]
function Infobox.smw_param(param_name)
param = {
property = 'args_smw',
param_name = param_name,
}
return param
end
--[[
Checks to see if a param is defined.
-- param: Infobox.param(name), Infobox.raw_param(name) or Infobox.smw_param(name)
Returns 0 if param is never defined
1 if param is defined for a fraction of the versions
2 if param is defined for all versions
]]
function Infobox:is_param_defined(param)
local undefined = 0
local defined = 0
for version = 1, self.versions do
local value = self:get_param(param, version)
if value ~= nil then
defined = 1
else
undefined = 1
end
end
return 1 + defined - undefined
end
--[[
Adds a row to the infobox table
Parameter should be a table of cells, where each cell is a table with the following arguments:
-- tag : 'td' or 'th'
-- content : a string or Infobox.param(name), Infobox.raw_param(name), Infobox.smw_param(name)
-- attr (optional) : mw.html:attr({ arg1 = '1', ... })
-- css (optional) : mw.html:css({ arg1 = '1', ...)
-- class (optional) : mw.html:addClass('arg')
---- class also supports a table of values, even though mw.html:addClass() does not
---- common classes: infobox-subheader
-- rowspan (optional) : mw.html:attr('rowspan',arg)
-- colspan (optional) : mw.html:attr('colspan',arg)
-- title (optional) : mw.html:attr('title',arg)
The row itself may be assigned a single class by setting the value of the key addClass
-- addClass : mw.html:addClass('arg')
-- this function currently only supports a single string
--]]
function Infobox:add_row(...)
local args = ...
local _row = self.rtable:tag('tr')
-- For each cell
for _, v in ipairs(args) do
local _cell = _row:tag(v.tag)
-- Optional parameters
if v.attr then
_cell:attr(v.attr)
end
if v.colspan then
_cell:attr('colspan',v.colspan)
end
if v.rowspan then
_cell:attr('rowspan',v.rowspan)
end
if v.title then
_cell:attr('title',v.title)
end
if v.css then
_cell:css(v.css)
end
if v.class then
if type(v.class) == 'string' then
_cell:addClass(v.class)
-- mw.html:addClass() doesn't function with tables, add in a loop
elseif type(v.class) == 'table' then
for _, w in ipairs(v.class) do
_cell:addClass(w)
end
end
end
-- Populate the cell contents
local content = self:get_param(v.content, self.default_version)
if content == nil then
content = self.params[v.content.param_name].empty
end
_cell:wikitext(content)
-- Add the switch data if multiple values exist
data_attr_param = self:add_switch_data(v.content)
if data_attr_param then
_cell:attr('data-attr-param', data_attr_param)
end
end
-- allow classes to be defined on the whole row
if args.addClass then
_row:addClass(args.addClass)
end
return self
end
--[[
Adds a blank row of padding spanning the given number of columns
--]]
function Infobox:pad(colspan, class)
local tr = self.rtable:tag('tr'):tag('td'):attr('colspan', colspan or 1):addClass('infobox-padding')
if class then
tr:addClass(class)
end
return self
end
--[[
Adds a class to the table as a whole
--]]
function Infobox:addClass(arg)
self.rtable:addClass(arg)
return self
end
--[[
Setup config values
-- config: table containing configuration parameters
---- infobox_name = mandatory unique identifier for this infobox, used for css
---- max_buttuons = max number of switch buttons before using a dropdown list instead
--]]
function Infobox:config(config)
for k, v in pairs(config) do
if k == 'infobox_name' then
self.infobox_name = mw.ustring.gsub(v, '%s', '_')
elseif k == 'max_buttons' then
self.max_buttons = tonumber(v)
end
end
if self.infobox_name == nil then
table.insert(self.errors, 'infobox_name needs to be defined in Infobox.new()\'s config!')
end
return self
end
--[[
Counts the number of versions in the infobox
Populates Infobox.version_names
Sets Infobox.default_version
--]]
function Infobox:parse_versions()
function insert_version_name(version_name)
table.insert(self.version_names, version_name)
if smwutils.valid_subobject_name(version_name) == false then
table.insert(self.errors, 'Illegal version value: must not be "0" nor contain a "." in the first five characters')
end
end
-- Count the versions and setup self.version_names
local i = 1
while self.args_raw['version'..i] do
insert_version_name(self.args_raw['version'..i])
i = i + 1
end
self.versions = i - 1
-- Should either have 0 or 2+ versions
if self.versions == 1 then
table.insert(self.errors, 'There should be multiple versions or no versions. If defining a custom version name for a single entry, use "version=Name" instead of "version1=Name".')
end
-- Handle the no version case - check for a custom version_name
if self.versions == 0 then
insert_version_name(self.args_raw['version'] or 'DEFAULT')
self.versions = 1
end
-- Check for a default_version
if self.args_raw['default_version'] then
self.default_version = tonumber(self.args_raw['default_version'])
if self.default_version > self.versions then -- Make sure the default version exists
self.default_version = 1
end
end
end
--[[
Define all used parameters (except for default_version/version)
-- name : parameter name as used in the Template
-- func : function to validate and process the Template argument
-- If func is a function, will call func(Infobox.raw_param(name))
-- If func is a table, contains the following key-value pairs:
---- name : function
---- params : list of arguments to pass to the function (use Infobox.raw_param(),
---- Infobox.param() and Infobox.smw_param() to use arguments)
-- empty (optional) : text to display in the infobox if func returns nil, defaults to "? (edit)"
-- category_never : category to add if func returns nil for all versions
-- category_partial : category to add if func returns nil for some versions, but a value for other versions
-- category_incomplete : category to add if func returns nil for at least 1 version (i.e. category_never and category_partial combined)
-- category_complete : category to add if func returns a value for all versions
-- smw_property (optional) : if this string is defined, the parameter will be saved into smw
-- smw_func (optional) : function to validate and process the Template argument to save into smw
-- func is used by default if smw_func is not defined
--]]
function Infobox:define_params(...)
-- For every parameter, store its corresponding function to self.params
for _, v in ipairs(...) do
if v.name then
local param = {}
-- Copy the function
if type(v.func) == 'function' or type(v.func) == 'table' then
param.func = v.func
end
-- If smw_property is defined, then use smw_func, or default to func if it is not defined
if v.smw_property then
param.smw_property = v.smw_property
if type(v.smw_func) == 'function' or type(v.smw_func) == 'table' then
param.smw_func = v.smw_func
else
param.smw_func = param.func
end
end
-- If empty is not defined, default message is "? (edit)"
param.empty = v.empty or editbutton("'''?''' (edit)")
-- Get the category names
param.category_never = v.category_never
param.category_partial = v.category_partial
param.category_incomplete = v.category_incomplete
param.category_complete = v.category_complete
-- Store the param
self.params[v.name] = param
table.insert(self.param_names, v.name)
end
end
return self
end
--[[
Fetches a param value. If the value is nil, will return the default value instead
-- arg: a non-table value (string, number, etc), or Infobox.param(name), Infobox.raw_param(name), Infobox.smw_param(name)
-- version: 0/'' for default, or else a number
Returns arg if a constant
param value (or default value) if Infobox.param(name), Infobox.raw_param(name), Infobox.smw_param(name)
--]]
function Infobox:get_param(arg, version)
if version == 0 then
version = ''
end
-- Handle Infobox.param(), Infobox.raw_param(), Infobox.smw_param()
if type(arg) == 'table' then
local value = self[arg.property][arg.param_name..version]
-- If nil, grab default value (which could be nil as well)
if value == nil then
value = self[arg.property][arg.param_name]
end
return value
end
-- Everything else passes through unmodified (string, number, etc)
return arg
end
--[[
Calculates the parsed value of a param
-- param_name : param_name as a string
-- version : 0/'' for default, or else a number
-- smw : boolean, will use smw_func if true, or func is false
--]]
function Infobox:parse_param(param_name, version, smw)
if version == 0 then
version = ''
end
-- use func or smw_func depending on smw argument
local param = self.params[param_name]
local func = smw and param.smw_func or param.func
-- call functions by passing the param_name
if type(func) == 'function' then
return func(self:get_param(self.raw_param(param_name), version))
-- call tables by grabbing the function and reading the param arguments
elseif type(func) == 'table' then
local func_name = func.name
local func_params = func.params
local func_fetched_params = {}
for _, func_param in ipairs(func_params) do
table.insert(func_fetched_params, self:get_param(func_param, version))
end
return func_name(unpack(func_fetched_params))
else
table.insert(self.errors, 'Invalid param definition for '..param_name)
end
end
--[[
Parses all the param values (args_parsed and args_smw)
--]]
function Infobox:parse_params()
-- Calculate the param value for all params and all versions
for _, param_name in ipairs(self.param_names) do
for version=0, self.versions do
if version == 0 then
version = ''
end
-- get the parsed value
self.args_parsed[param_name..version] = self:parse_param(param_name, version, false)
-- Only get the smw value if smw_property is defined
if self.params[param_name].smw_property then
self.args_smw[param_name..version] = self:parse_param(param_name, version, true)
end
end
end
end
--[[
Creates the table header
--]]
function Infobox:table_header()
-- Create infobox table
self.rtable = mw.html.create('table')
:addClass('plainlinks')
:addClass('infobox')
:addClass('infobox-'..self.infobox_name)
-- Create the switch datatable if multiple versions
if self.versions > 1 then
self.rtable:addClass('infobox-switch')
self.switch_datatable = mw.html.create('div')
:addClass('infobox-switch-resources')
:addClass('infobox-resources-'..self.infobox_name)
:addClass('hidden')
end
return self
end
--[[
If multiple versions exist, creates a set of buttons for switching
-- self.max_buttons : if the number of versions exceeds this value, a dropdown will be created instead
--]]
function Infobox:buttons()
if self.versions < 2 then
return
end
-- Button caption
local buttons = self.rtable:tag('caption')
:tag('div')
:addClass('infobox-buttons')
:attr('data-default-index', self.default_version)
-- Dropdown list instead of buttons if too many versions
if self.versions > self.max_buttons then
buttons:addClass('infobox-buttons-select')
end
-- Create all the buttons
for version=1, self.versions do
local button = buttons:tag('span')
:attr('data-switch-index', version)
:attr('data-switch-anchor', '#'..self.version_names[version])
:addClass('button')
:wikitext(self.version_names[version])
-- In case of dropdown list, hide the buttons as the switch gadget will convert them to a dropdown list - we can't directly create the dropdown list here as the select/option tags are rejected by wikitext
if self.versions > self.max_buttons then
button:addClass('hidden')
end
end
end
--[[
For each version, stores a subobject for all params that have smw_property defined
--]]
function Infobox:store_smw()
for version=1, self.versions do
-- Generate a subobject name
-- Reminder - subobject name cannot have a . in the first 5 characters
local subobject_name = self.version_names[version]
-- Store each param that has smw_property defined and is not nil
local subobject = {Infobox = self.infobox_name} -- Also store the current Infobox name
for _, param_name in ipairs(self.param_names) do
local property = self.params[param_name].smw_property
if property then
value = self:get_param(self.smw_param(param_name), version)
if value ~= nil then
subobject[property] = value
end
end
end
-- Keep a copy for debugging
self.__smw_debug[subobject_name] = subobject
-- Save subobjects if not in mainspace
if mw.title.getCurrentTitle():inNamespace(0) then
local result = true
if self.versions == 1 then
result = mw.smw.set(subobject)
else
result = mw.smw.subobject(subobject, subobject_name)
end
if result ~= true then
table.insert(self.errors, 'SMW error: '..result.error)
end
end
end
end
--[[
Automatically add categories for each param as defined in define_params()
--]]
function Infobox:parse_categories()
for _, param_name in ipairs(self.param_names) do
local param = self.params[param_name]
local defined = self:is_param_defined(Infobox.param(param_name))
if defined == 0 and param.category_never then
self.categories[param.category_never] = 1
end
if defined == 1 and param.category_partial then
self.categories[param.category_partial] = 1
end
if defined < 2 and param.category_incomplete then
self.categories[param.category_incomplete] = 1
end
if defined == 2 and param.category_complete then
self.categories[param.category_complete] = 1
end
end
end
--[[
When a parameter is added into the table, add the alternative versions' data into the switch datatable
-- content : a non-table value (string, number, etc), or Infobox.param(name), Infobox.raw_param(name), Infobox.smw_param(name)
Returns the name of the parameter in the tag 'data-attr-param'
--]]
function Infobox:add_switch_data(content)
if self.versions < 2 then
return false
end
-- Only needed for non-constant params
if type(content) ~= 'table' then
return false
end
-- Only needed if the param changes value between different versions
local first_value = self:get_param(content, 1)
local all_same = true
for version=2, self.versions do
if first_value ~= self:get_param(content, version) then
all_same = false
break
end
end
if all_same then
return false
end
-- Let's build the datatable
-- datum name: Prepend raw__ or smw__ if not a parsed argument
local name = content.param_name
if content.property == 'args_raw' then
name = 'raw__' + name
end
if content.property == 'args_smw' then
name = 'smw__' + name
end
data_param = self.switch_datatable:tag('span'):attr('data-attr-param', name)
-- Add each version to the datatable
for version=1, self.versions do
text = self:get_param(content, version)
if text == nil then
text = self.params[content.param_name].empty
end
data_param:tag('span'):attr('data-attr-index', version):wikitext(text)
end
-- return the 'data-attr-param' name
return name
end
--[[
Override tostring
--]]
function Infobox:__tostring()
-- Create error messages
local error_text = ''
for _, v in ipairs(self.errors) do
error_text = error_text..'<span class="mw-message-box-error">'..v..'</span>'
end
-- Create categories
local category_text = ''
for key, _ in pairs(self.categories) do
category_text = category_text..'[[Category:'..key..']]'
end
return tostring(self.rtable) .. tostring(self.switch_datatable) .. error_text .. category_text
end
--[[
Debug function
--]]
function Infobox:dump()
-- Temporarily detach the metatable so we don't override tostring anymore, allowing us to use dumpObject
setmetatable(self, nil)
mw.log(mw.dumpObject(self))
setmetatable(self, Infobox)
mw.log(tostring(self))
end
return Infobox
7362498d6c6475e25232fd0ba07d1f4d91ad53a8
Module:Infobox Scenery
828
844
1877
2024-04-09T14:00:04Z
Gau Cho
5
Created page with "local p = {} local Infobox = require('Module:Infobox') local parse = require('Module:Param Parse') function p.main(frame) local args = frame:getParent().args local config = { infobox_name = 'Scenery', } local params = { parse.name, parse.image, parse.release, parse.premium, parse.episode, } local infobox = Infobox.new(config, params, args) infobox :add_row{ {tag='th', content=Infobox.param('name'), class='infobox-header', colspan='20'},..."
Scribunto
text/plain
local p = {}
local Infobox = require('Module:Infobox')
local parse = require('Module:Param Parse')
function p.main(frame)
local args = frame:getParent().args
local config = {
infobox_name = 'Scenery',
}
local params = {
parse.name,
parse.image,
parse.release,
parse.premium,
parse.episode,
}
local infobox = Infobox.new(config, params, args)
infobox
:add_row{
{tag='th', content=Infobox.param('name'), class='infobox-header', colspan='20'},
}
:add_row{
{tag='td', content=Infobox.param('image'), class='infobox-image', colspan='20'},
}
:add_row{
{tag='th', content='Release', colspan="6"},
{tag='td', content=Infobox.param('release'), colspan="14"},
}
:add_row{
{tag='th', content='[[Episode]]', colspan="6"},
{tag='td', content=Infobox.param('episode'), colspan="14"},
}
:add_row{
{tag='th', content='[[Premium Pass|Premium]]', colspan="6"},
{tag='td', content=Infobox.param('premium'), colspan="14"},
}
:pad(20)
return infobox
end
return p
d4287a351c1d8bd479c24137731b006df4be9486
Module:Infobox Scenery/doc
828
845
1878
2024-04-09T14:00:15Z
Gau Cho
5
Created page with "{{No documentation}}"
wikitext
text/x-wiki
{{No documentation}}
ad36a615c98d03e22b03ecaa7b9d7d87b5d7b517
Template:Infobox Scenery
10
690
1879
1463
2024-04-09T14:00:44Z
Gau Cho
5
Replaced content with "{{#invoke:Infobox Scenery|main}}{{Mainonly|[[Category:Scenery]]}}<noinclude>{{/doc}}</noinclude>"
wikitext
text/x-wiki
{{#invoke:Infobox Scenery|main}}{{Mainonly|[[Category:Scenery]]}}<noinclude>{{/doc}}</noinclude>
c0b484c0dc4db046f052a2c50941673232315759
Old trunk
0
697
1880
1311
2024-04-09T14:01:20Z
Gau Cho
5
wikitext
text/x-wiki
{{Infobox Scenery
|name = Old trunk
|image = [[File:Old trunk.png]]
|release =
|episode =
}}
A '''old trunk''' is a piece of interactable scenery that can be found in [[Pirate Hideout]].{{CiteTwitter|url=https://twitter.com/AndrewCGower/status/1769048510177948004|author=Andrew Gower|date=16 March 2024|accessdate=24 March 2024|archiveurl=https://archive.is/whgCd|archivedate=24 March 2024|quote=}}
==References==
{{Reflist}}
b9a91a5abd0b689771df4bc86d74c80b8ec50b52
Trunk
0
685
1881
1310
2024-04-09T14:01:22Z
Gau Cho
5
wikitext
text/x-wiki
{{Infobox Scenery
|name = Trunk
|image = [[File:Trunk.png]]
|release =
|episode =
}}
A '''trunk''' is a piece of interactable scenery that can be found in [[Pirate Hideout]].{{CiteTwitter|url=https://twitter.com/AndrewCGower/status/1769048510177948004|author=Andrew Gower|date=16 March 2024|accessdate=24 March 2024|archiveurl=https://archive.is/whgCd|archivedate=24 March 2024|quote=}}
==References==
{{Reflist}}
8ce20875a76db2fc6acfa94da66072e06d725353
Module:Param Parse
828
673
1882
1852
2024-04-09T14:04:27Z
Gau Cho
5
Scribunto
text/plain
--[=[
-- Standardized functions to parse Infobox params
--]=]
-- <nowiki>
local parse = {}
-- Generic functions --
-----------------------
-- Standardized "has content" function
function parse.has_content(arg)
-- Return arg if any non-whitespace character is found
return string.match(arg or '', '%S') and arg or nil
end
-- Standardized numbers
function parse.number(num)
num = string.gsub(num or '',',','')
return tonumber(num)
end
-- Yes/No
local yes_no = {
['Yes'] = true,
['No'] = false,
['N/A'] = 'NIL',
}
function parse.yes_no(text)
if yes_no[text] ~= nil then
return text
end
return nil
end
function parse.yes_no_smw(text)
if text == 'N/A' then
return nil
end
return yes_no[text] or nil
end
-- Premade Params --
--------------------
-- Standardized name function
parse.name = {
name = 'name',
func = parse.has_content,
smw_property = 'Name',
}
-- Standardized image function
function parse.image_func(img)
if img and string.match(img, '%[%[File:.*%]%]') then
return img
end
return nil
end
function parse.image_smw(img)
return img and string.match(img, "File:.*%.%w%w%w") or nil
end
parse.image = {
name = 'image',
func = parse.image_func,
smw_property = 'Image',
smw_func = parse.image_smw,
empty = '[[Special:Upload|Please upload an image!]]',
category_incomplete = 'Needs image',
}
-- Episode
local valid_episodes = {['Hopeport'] = 1, ['Hopeforest'] = 1, ['Mine of Mantuban'] = 1, ['Crenopolis'] = 1}
function parse.episode_func(episode)
if valid_episodes[episode] then
return '[[File:'..episode..' episode icon.png|18px]] [['..episode..']]'
end
return nil
end
function parse.episode_smw(episode)
if valid_episodes[episode] then
return episode
end
return nil
end
parse.episode = {
name = 'episode',
func = parse.episode_func,
smw_property = 'Episode',
smw_func = parse.episode_smw,
category_incomplete = 'Needs episode',
}
-- Premium
parse.premium = {
name = 'premium',
func = parse.yes_no,
smw_property = 'Premium',
smw_func = parse.yes_no,
category_incomplete = 'Needs premium status',
}
-- Release (TODO)
parse.release = {
name = 'release',
func = parse.has_content,
}
-- Profession (TODO)
parse.profession = {
name = 'profession',
func = parse.has_content,
category_incomplete = 'Needs profession',
smw_property = 'Profession' -- TODO - Need to create property page
}
return parse
-- </nowiki>
63b944b421a9023c8dd12c0fff533aaf7d76219d
Module:Param Parse/doc
828
781
1883
1804
2024-04-09T14:04:40Z
Gau Cho
5
wikitext
text/x-wiki
{{documentation}}
These params and functions are used to validate and format information passed into an Infobox. See [[Module:Infobox]] for details and instructions on creating an Infobox. If the information is missing or not valid, the functions here should return nil.
Here is a summary of all the params:
{| class="wikitable"
! param
! explanation
|-
| parse.image
| <nowiki>[[File:IMAGE.png]]</nowiki>. Use the class '''infobox-image''' in the table
|-
| parse.episode
| Episode name
|-
| parse.premium
| Premium (Yes, No, N/A)
|-
| parse.release
| TODO
|-
| parse.profession
| TODO
|}
Here are some general use functions that can be used for custom or new params:
{| class="wikitable"
! function name
! explanation
|-
| has_content(arg)
| Returns arg if any non-whitespace character is found in the string.
|-
| number(num)
| Removes any commas and parses the string as a number
|-
| yes_no(text)
| Only accepts "Yes", "No" and "N/A"
|-
| yes_no_smw(text)
| Maps "Yes", "No" to true and false respectively
|}
== Creating New Params ==
Ideally, params should be defined here so that they can be reused between different Infoboxes. Here is how to create a new param:
<syntaxhighlight lang="lua">
parse.paramname = {
name = <param>,
func = <func>,
empty = 'empty', -- optional
category_never = 'category', -- optional
category_partial = 'category', -- optional
category_incomplete = 'category', -- optional
category_complete = 'category', -- optional
smw_property = 'Property', -- optional
smw_func = <func>, -- optional
}
</syntaxhighlight>
{| class="wikitable"
! key
! value
|-
| name
| parameter name as used in the Template
|-
| func
| A function in [[Module:Param Parse]] to validate and process the Template argument. You can also use a local function, but this is not recommended.
If func is a function, will call func(Infobox.raw_param(name)):
<syntaxhighlight lang="lua">
{name = <param>, func = <func>, ... },
</syntaxhighlight>
If func is a table, it takes the following parameters:
<syntaxhighlight lang="lua">
{name = <param>, func = { name = <func>, params = <func_params>}, ... },
</syntaxhighlight>
{| class="wikitable"
| name
| function in [[Module:Param Parse]]
|-
| params
| a list of parameters to pass the the function, in the form of constants, or Infobox.raw_param(name), Infobox.param(name), Infobox.smw_param(name)
|}
|-
| empty (optional)
| text to display in the infobox if func returns nil; defaults to "? (edit)"
|-
| category_never (optional)
| category to add if func returns nil for all versions
|-
| category_partial (optional)
| category to add if func returns nil for some versions, but a value for other versions
|-
| category_incomplete (optional)
| category to add if func returns nil for at least 1 version (i.e. category_never and category_partial combined)
|-
| category_complete (optional)
| category to add if func returns a value for all versions
|-
| smw_property (optional)
| if this string is defined, the parameter will be saved into SMW
|-
| smw_func (optional)
| function to validate and process the Template argument to save into SMW. func is used by default if smw_func is not defined
|}
5c3d0ff26f8a91e43321d25250d95baf6e3430a4
Module:Infobox Item
828
827
1884
1815
2024-04-09T14:05:01Z
Gau Cho
5
parse.profession
Scribunto
text/plain
local p = {}
local Infobox = require('Module:Infobox')
local parse = require('Module:Param Parse')
function p.main(frame)
local args = frame:getParent().args
local config = {
infobox_name = 'Item',
}
local params = {
parse.name,
parse.image,
parse.release,
parse.premium,
parse.episode,
parse.profession,
{name = 'value', func = parse.number, category_incomplete = 'Items needing value', smw_property = 'Value'}, -- TODO - move to Module:Param Parse once more details are available
}
local infobox = Infobox.new(config, params, args)
infobox
:add_row{
{tag='th', content=Infobox.param('name'), class='infobox-header', colspan='20'},
}
:add_row{
{tag='td', content=Infobox.param('image'), class='infobox-image', colspan='20'},
}
:add_row{
{tag='th', content='Release', colspan="6"},
{tag='td', content=Infobox.param('release'), colspan="14"},
}
:add_row{
{tag='th', content='[[Episode]]', colspan="6"},
{tag='td', content=Infobox.param('episode'), colspan="14"},
}
:add_row{
{tag='th', content='[[Premium Pass|Premium]]', colspan="6"},
{tag='td', content=Infobox.param('premium'), colspan="14"},
}
:add_row{
{tag='th', content='[[Profession]]', colspan="6"},
{tag='td', content=Infobox.param('profession'), colspan="14"},
}
:add_row{
{tag='th', content='Value', colspan="6"},
{tag='td', content=Infobox.param('value'), colspan="14"},
}
:pad(20)
return infobox
end
return p
6c8fc0d60adf19a2cf5d36f063895af50cec806c
Module:Infobox NPC
828
846
1885
2024-04-09T14:07:21Z
Gau Cho
5
Created page with "local p = {} local Infobox = require('Module:Infobox') local parse = require('Module:Param Parse') function p.main(frame) local args = frame:getParent().args local config = { infobox_name = 'Item', } local params = { parse.name, parse.image, parse.release, parse.premium, parse.episode, parse.profession, {name = 'shop', func = parse.has_content, smw_property = 'Shop'}, -- TODO - move to Module:Param Parse once more details are available, and crea..."
Scribunto
text/plain
local p = {}
local Infobox = require('Module:Infobox')
local parse = require('Module:Param Parse')
function p.main(frame)
local args = frame:getParent().args
local config = {
infobox_name = 'Item',
}
local params = {
parse.name,
parse.image,
parse.release,
parse.premium,
parse.episode,
parse.profession,
{name = 'shop', func = parse.has_content, smw_property = 'Shop'}, -- TODO - move to Module:Param Parse once more details are available, and create property page
}
local infobox = Infobox.new(config, params, args)
infobox
:add_row{
{tag='th', content=Infobox.param('name'), class='infobox-header', colspan='20'},
}
:add_row{
{tag='td', content=Infobox.param('image'), class='infobox-image', colspan='20'},
}
:add_row{
{tag='th', content='Release', colspan="6"},
{tag='td', content=Infobox.param('release'), colspan="14"},
}
:add_row{
{tag='th', content='[[Episode]]', colspan="6"},
{tag='td', content=Infobox.param('episode'), colspan="14"},
}
:add_row{
{tag='th', content='[[Premium Pass|Premium]]', colspan="6"},
{tag='td', content=Infobox.param('premium'), colspan="14"},
}
:add_row{
{tag='th', content='[[Profession]]', colspan="6"},
{tag='td', content=Infobox.param('profession'), colspan="14"},
}
if infobox:is_param_defined(Infobox.param('shop')) > 0 then
infobox:add_row{
{tag='td', content='[[Shop]]'},
{tag='td', content=Infobox.param('shop')},
}
end
infobox:pad(20)
return infobox
end
return p
ab18dfc19ec3dde8ab9bbcf4449a44e6667fc6b9
1886
1885
2024-04-09T14:07:32Z
Gau Cho
5
Scribunto
text/plain
local p = {}
local Infobox = require('Module:Infobox')
local parse = require('Module:Param Parse')
function p.main(frame)
local args = frame:getParent().args
local config = {
infobox_name = 'NPC',
}
local params = {
parse.name,
parse.image,
parse.release,
parse.premium,
parse.episode,
parse.profession,
{name = 'shop', func = parse.has_content, smw_property = 'Shop'}, -- TODO - move to Module:Param Parse once more details are available, and create property page
}
local infobox = Infobox.new(config, params, args)
infobox
:add_row{
{tag='th', content=Infobox.param('name'), class='infobox-header', colspan='20'},
}
:add_row{
{tag='td', content=Infobox.param('image'), class='infobox-image', colspan='20'},
}
:add_row{
{tag='th', content='Release', colspan="6"},
{tag='td', content=Infobox.param('release'), colspan="14"},
}
:add_row{
{tag='th', content='[[Episode]]', colspan="6"},
{tag='td', content=Infobox.param('episode'), colspan="14"},
}
:add_row{
{tag='th', content='[[Premium Pass|Premium]]', colspan="6"},
{tag='td', content=Infobox.param('premium'), colspan="14"},
}
:add_row{
{tag='th', content='[[Profession]]', colspan="6"},
{tag='td', content=Infobox.param('profession'), colspan="14"},
}
if infobox:is_param_defined(Infobox.param('shop')) > 0 then
infobox:add_row{
{tag='td', content='[[Shop]]'},
{tag='td', content=Infobox.param('shop')},
}
end
infobox:pad(20)
return infobox
end
return p
adc5748931c22a3d2534a7f493e3384fbe98fdb0
1888
1886
2024-04-09T14:10:24Z
Gau Cho
5
Scribunto
text/plain
local p = {}
local Infobox = require('Module:Infobox')
local parse = require('Module:Param Parse')
function p.main(frame)
local args = frame:getParent().args
local config = {
infobox_name = 'NPC',
}
local params = {
parse.name,
parse.image,
parse.release,
parse.premium,
parse.episode,
parse.profession,
{name = 'shop', func = parse.has_content, smw_property = 'Shop'}, -- TODO - move to Module:Param Parse once more details are available, and create property page
}
local infobox = Infobox.new(config, params, args)
infobox
:add_row{
{tag='th', content=Infobox.param('name'), class='infobox-header', colspan='20'},
}
:add_row{
{tag='td', content=Infobox.param('image'), class='infobox-image', colspan='20'},
}
:add_row{
{tag='th', content='Release', colspan="6"},
{tag='td', content=Infobox.param('release'), colspan="14"},
}
:add_row{
{tag='th', content='[[Episode]]', colspan="6"},
{tag='td', content=Infobox.param('episode'), colspan="14"},
}
:add_row{
{tag='th', content='[[Premium Pass|Premium]]', colspan="6"},
{tag='td', content=Infobox.param('premium'), colspan="14"},
}
:add_row{
{tag='th', content='[[Profession]]', colspan="6"},
{tag='td', content=Infobox.param('profession'), colspan="14"},
}
if infobox:is_param_defined(Infobox.param('shop')) > 0 then
infobox:add_row{
{tag='td', content='[[Shop]]', colspan="6"},
{tag='td', content=Infobox.param('shop'), colspan="14"},
}
end
infobox:pad(20)
return infobox
end
return p
d1a17f6798805da2fbbfe22401f345ecd2faf6a5
1890
1888
2024-04-09T14:11:31Z
Gau Cho
5
Scribunto
text/plain
local p = {}
local Infobox = require('Module:Infobox')
local parse = require('Module:Param Parse')
function p.main(frame)
local args = frame:getParent().args
local config = {
infobox_name = 'NPC',
}
local params = {
parse.name,
parse.image,
parse.release,
parse.premium,
parse.episode,
parse.profession,
{name = 'shop', func = parse.has_content, smw_property = 'Shop'}, -- TODO - move to Module:Param Parse once more details are available, and create property page
}
local infobox = Infobox.new(config, params, args)
infobox
:add_row{
{tag='th', content=Infobox.param('name'), class='infobox-header', colspan='20'},
}
:add_row{
{tag='td', content=Infobox.param('image'), class='infobox-image', colspan='20'},
}
:add_row{
{tag='th', content='Release', colspan="6"},
{tag='td', content=Infobox.param('release'), colspan="14"},
}
:add_row{
{tag='th', content='[[Episode]]', colspan="6"},
{tag='td', content=Infobox.param('episode'), colspan="14"},
}
:add_row{
{tag='th', content='[[Premium Pass|Premium]]', colspan="6"},
{tag='td', content=Infobox.param('premium'), colspan="14"},
}
:add_row{
{tag='th', content='[[Profession]]', colspan="6"},
{tag='td', content=Infobox.param('profession'), colspan="14"},
}
if infobox:is_param_defined(Infobox.param('shop')) > 0 then
infobox:add_row{
{tag='th', content='[[Shop]]', colspan="6"},
{tag='td', content=Infobox.param('shop'), colspan="14"},
}
end
infobox:pad(20)
return infobox
end
return p
7e963e9494c41e705a102991ebad08460e94c7e7
Template:Infobox NPC
10
719
1887
1454
2024-04-09T14:09:34Z
Gau Cho
5
Replaced content with "{{#invoke:Infobox NPC|main}}{{Mainonly|[[Category:Non-player characters]]}}<noinclude>{{/doc}}</noinclude>"
wikitext
text/x-wiki
{{#invoke:Infobox NPC|main}}{{Mainonly|[[Category:Non-player characters]]}}<noinclude>{{/doc}}</noinclude>
100f578c4eb413961b95e2afd075d5a212d2a01b
Module:Infobox NPC/doc
828
847
1889
2024-04-09T14:11:11Z
Gau Cho
5
Created page with "{{No documentation}}"
wikitext
text/x-wiki
{{No documentation}}
ad36a615c98d03e22b03ecaa7b9d7d87b5d7b517
Zeltay Tramagan
0
834
1891
1808
2024-04-09T14:13:53Z
Gau Cho
5
wikitext
text/x-wiki
{{Infobox NPC
|name = Zeltay Tramagan
|image = [[File:Zeltay Tramagan.png]]
|release =
|episode =
|profession =
}}
'''Zeltay Tramagan''' is an NPC located on the [[Town Square]] in [[Hopeport (location)|Hopeport]]{{CiteTwitter|author=@AndrewCGower|url=https://twitter.com/andrewcgower/status/1776276857706479810|date=5 April 2024|archiveurl=https://web.archive.org/web/20240406173123/https://twitter.com/andrewcgower/status/1776276857706479810|archivedate=6 April 2024|quote=store.steampowered.com/app/2791440/Brighter_Shores/ Quite a few people have been asking how the 'rooms' in Brighter Shores connect together, so I have a made a quick video of me running across a small section of Hopeport. You can see how easily you can move between rooms, and how the 'rooms' connect together to form a much larger world.|notes=Timestamp in the video: 0:04 / 1:41.|name=|group=}}.
==References==
<references/>
3daaaf4c0e2efbc8842d5b2563b26580a6b123b4
Fishmonger
0
835
1892
1809
2024-04-09T14:14:16Z
Gau Cho
5
wikitext
text/x-wiki
{{Infobox NPC
|name = Fishmonger
|image = [[File:Fishmonger.png]]
|release =
|episode =
|profession = Fisher
}}
'''Fishmonger''' is an NPC located on the [[Eel Street]] in [[Hopeport (location)|Hopeport]]{{CiteTwitter|author=@AndrewCGower|url=https://twitter.com/andrewcgower/status/1776276857706479810|date=5 April 2024|archiveurl=https://web.archive.org/web/20240406173123/https://twitter.com/andrewcgower/status/1776276857706479810|archivedate=6 April 2024|quote=store.steampowered.com/app/2791440/Brighter_Shores/ Quite a few people have been asking how the 'rooms' in Brighter Shores connect together, so I have a made a quick video of me running across a small section of Hopeport. You can see how easily you can move between rooms, and how the 'rooms' connect together to form a much larger world.|notes=Timestamp in the video: 0:16 / 1:41.|name=|group=}}.
==References==
<references/>
7c1a13781ed5aa03e2d748579d9941f3650294de
Jellyfish
0
848
1893
2024-04-09T16:40:45Z
Sam
60
created page
wikitext
text/x-wiki
Jellyfish are a type of monster.
List of Jellyfish:
* [[Tiderider]]
98f3a1346b95cdfba6ef3760dad34d798f205f44
1898
1893
2024-04-09T16:56:27Z
Sam
60
wikitext
text/x-wiki
Jellyfish are a catagory of monster.
List of Jellyfish:
* [[Tiderider]]
bddebc3a67aee9e734457a01d68bfac04adc1d63
1899
1898
2024-04-09T16:56:40Z
Sam
60
wikitext
text/x-wiki
Jellyfish are a category of monster.
List of Jellyfish:
* [[Tiderider]]
2251f4cc86f571248210bc6efcdb9f851b4ed6e7
1900
1899
2024-04-09T16:57:45Z
Sam
60
wikitext
text/x-wiki
Jellyfish are a category of monster.
List of Jellyfish:
* [[Tiderider]]
[[Category:Monsters]]
77d5fda4b8de1596d84d3581e1e0e884547977e5
1901
1900
2024-04-09T16:58:51Z
Sam
60
wikitext
text/x-wiki
'''Jellyfish''' are a category of monster.
List of Jellyfish:
* [[Tiderider]]
[[Category:Monsters]]
684f0b92fd31a241f87a1a2481e63420fe4c5971
Tiderider Jellyfish
0
849
1894
2024-04-09T16:42:16Z
Sam
60
created page
wikitext
text/x-wiki
{{Infobox NPC
|name = Tiderider
|image =
|release = Q3 2024
|episode =
|premium =
|profession =
}}
'''Tiderider''' is a [[monster]].
[[Category:Monsters]]
3a78774e6d574d55ec64bdc5aa72fb226c5ba35e
1896
1894
2024-04-09T16:44:49Z
Sam
60
wikitext
text/x-wiki
{{Infobox NPC
|name = Tiderider
|image = [[File:Tiderider.PNG]]
|release = Q3 2024
|episode =
|premium =
|profession =
}}
'''Tiderider''' is a [[monster]].
[[Category:Monsters]]
3ac486c067089364007179e54fac628d18fb7e85
1897
1896
2024-04-09T16:56:08Z
Sam
60
wikitext
text/x-wiki
{{Infobox NPC
|name = Tiderider
|image = [[File:Tiderider.PNG]]
|release = Q3 2024
|episode =
|premium =
|profession =
}}
'''Tiderider''' is a [[monster]] located in [[Jellyfish Landing]]. It is part of the [[Jellyfish]] category.
[[Category:Monsters]]
eba5a29561f0cc56a171820b77d66f96a2233237
File:Tiderider.png
6
850
1895
2024-04-09T16:44:06Z
Sam
60
Tiderider Jellyfish
wikitext
text/x-wiki
== Summary ==
Tiderider Jellyfish
97cf1d0154f2f846ccd9370e7e8aacd0448765db
User:Sam
2
851
1902
2024-04-09T16:59:40Z
Sam
60
Created page with "'''Hi'''"
wikitext
text/x-wiki
'''Hi'''
4c81df20dfbd99a124007cf748687de0dfd467af
Monsters
0
377
1903
1834
2024-04-09T17:02:15Z
Sam
60
wikitext
text/x-wiki
'''Monsters''' are creatures in [[Brighter Shores]] that can be attacked. They are fought in [[combat]] for their loot, including valuable currency items.
There are many monsters in Brighter Shores, including:
* [[Firetoad]]
* [[Grumpy Pirate]]
* [[Mawchest]]
* [[Punkupine]]
* [[Slime Fiend]]
* [[Sneaky Thief]]
* [[Wailing Shade]]
==Categories==
* Jellyfish
* Pirates
{{Mechanics}}
[[Category:Monsters]]
4b0bef700a8cb14ff9fa659b58816d3ac7a1dacf
Pirate
0
445
1904
728
2024-04-09T17:04:51Z
Sam
60
wikitext
text/x-wiki
{{DISPLAYTITLE:Pirates}}
'''Pirates''' are a type of [[monster]]. [[Grumpy Pirate]]s can be found in the [[Pirate Hideout]].
[[Category:Monsters]]
c099838dc7772bac372e854702066cd874f08006
1905
1904
2024-04-09T17:05:15Z
Sam
60
wikitext
text/x-wiki
'''Pirates''' are a type of [[monster]]. [[Grumpy Pirate]]s can be found in the [[Pirate Hideout]].
[[Category:Monsters]]
2d76415315f4cfc794634d8d6c8f6d14e2b07c16
1908
1905
2024-04-09T17:09:23Z
Sam
60
wikitext
text/x-wiki
'''Pirates''' are a category of [[monster]].
List of Pirates:
*[[Grumpy Pirate]]
[[Category:Monsters]]
78351b5301b75ae91d48511c95e212a4432c65db
1920
1908
2024-04-09T20:06:16Z
Gau Cho
5
wikitext
text/x-wiki
'''Pirates''' are a category of [[monster]].
List of Pirates:
*[[Grumpy Pirate]]
00360d0c0b9c258372172674b1eb579955ceea71
Monsters
0
377
1906
1903
2024-04-09T17:06:35Z
Sam
60
wikitext
text/x-wiki
'''Monsters''' are creatures in [[Brighter Shores]] that can be attacked. They are fought in [[combat]] for their loot, including valuable currency items.
There are many monsters in Brighter Shores, including:
* [[Firetoad]]
* [[Grumpy Pirate]]
* [[Mawchest]]
* [[Punkupine]]
* [[Slime Fiend]]
* [[Sneaky Thief]]
* [[Wailing Shade]]
==Categories==
* [[Jellyfish]]
* [[Pirates]]
{{Mechanics}}
[[Category:Monsters]]
878acb5c018b4f9130fb70ac5250e5fafde5bcd9
1907
1906
2024-04-09T17:07:35Z
Sam
60
wikitext
text/x-wiki
'''Monsters''' are creatures in [[Brighter Shores]] that can be attacked. They are fought in [[combat]] for their loot, including valuable currency items.
There are many monsters in Brighter Shores, including:
* [[Firetoad]]
* [[Grumpy Pirate]]
* [[Mawchest]]
* [[Punkupine]]
* [[Slime Fiend]]
* [[Sneaky Thief]]
* [[Wailing Shade]]
==Categories==
* [[Jellyfish]]
* [[Pirate]]
{{Mechanics}}
[[Category:Monsters]]
19bfbe829bf5909c7d7a0fc62ab35c791df78aa5
1910
1907
2024-04-09T17:11:27Z
Sam
60
wikitext
text/x-wiki
'''Monsters''' are creatures in [[Brighter Shores]] that can be attacked. They are fought in [[combat]] for their loot, including valuable currency items.
There are many monsters in Brighter Shores, including:
* [[Firetoad]]
* [[Mawchest]]
* [[Punkupine]]
* [[Slime Fiend]]
* [[Sneaky Thief]]
* [[Wailing Shade]]
==Categories==
* [[Jellyfish]]
* [[Pirate]]
{{Mechanics}}
[[Category:Monsters]]
19d2d986afa3a878fb715a6bc58cccd8ca3a3957
1919
1910
2024-04-09T20:06:10Z
Gau Cho
5
wikitext
text/x-wiki
'''Monsters''' are creatures in [[Brighter Shores]] that can be attacked. They are fought in [[combat]] for their loot, including valuable currency items.
There are many monsters in Brighter Shores, including:
* [[Firetoad]]
* [[Mawchest]]
* [[Punkupine]]
* [[Slime Fiend]]
* [[Sneaky Thief]]
* [[Wailing Shade]]
==Categories==
* [[Jellyfish]]
* [[Pirate]]
{{Mechanics}}
9db44c34eea98bf71759df174b84e0a8aafa964e
1944
1919
2024-04-10T06:12:27Z
Sam
60
/* Categories */
wikitext
text/x-wiki
'''Monsters''' are creatures in [[Brighter Shores]] that can be attacked. They are fought in [[combat]] for their loot, including valuable currency items.
There are many monsters in Brighter Shores, including:
* [[Firetoad]]
* [[Mawchest]]
* [[Punkupine]]
* [[Slime Fiend]]
* [[Sneaky Thief]]
* [[Wailing Shade]]
==Categories==
* [[Carnivorous Plant]]
* [[Jellyfish]]
* [[Pirate]]
{{Mechanics}}
12d556b9b11b13dd1a28247a7b83259e11c5ddc9
Jellyfish
0
848
1909
1901
2024-04-09T17:09:39Z
Sam
60
wikitext
text/x-wiki
'''Jellyfish''' are a category of [[monster]].
List of Jellyfish:
* [[Tiderider]]
[[Category:Monsters]]
e17b62769870342449a4c6b6d18ba61d708db0b2
1917
1909
2024-04-09T20:05:42Z
Gau Cho
5
wikitext
text/x-wiki
'''Jellyfish''' are a category of [[monster]].
List of Jellyfish:
* [[Tiderider]]
ba7bd26a4eaea8e3f1689b0cb89c851469db3770
Module:Infobox Monster/doc
828
852
1911
2024-04-09T20:00:46Z
Gau Cho
5
Created page with "{{No documentation}}"
wikitext
text/x-wiki
{{No documentation}}
ad36a615c98d03e22b03ecaa7b9d7d87b5d7b517
Module:Infobox Monster
828
853
1912
2024-04-09T20:02:51Z
Gau Cho
5
Created page with "local p = {} local Infobox = require('Module:Infobox') local parse = require('Module:Param Parse') function p.main(frame) local args = frame:getParent().args local config = { infobox_name = 'Monster', } local params = { parse.name, parse.image, parse.release, parse.premium, parse.episode, {name = 'hp', func = parse.number}, -- TODO - move to Module:Param Parse once more details are available, and create smw_property } local infobox = Infobox.n..."
Scribunto
text/plain
local p = {}
local Infobox = require('Module:Infobox')
local parse = require('Module:Param Parse')
function p.main(frame)
local args = frame:getParent().args
local config = {
infobox_name = 'Monster',
}
local params = {
parse.name,
parse.image,
parse.release,
parse.premium,
parse.episode,
{name = 'hp', func = parse.number}, -- TODO - move to Module:Param Parse once more details are available, and create smw_property
}
local infobox = Infobox.new(config, params, args)
infobox
:add_row{
{tag='th', content=Infobox.param('name'), class='infobox-header', colspan='20'},
}
:add_row{
{tag='td', content=Infobox.param('image'), class='infobox-image', colspan='20'},
}
:add_row{
{tag='th', content='Release', colspan="6"},
{tag='td', content=Infobox.param('release'), colspan="14"},
}
:add_row{
{tag='th', content='[[Episode]]', colspan="6"},
{tag='td', content=Infobox.param('episode'), colspan="14"},
}
:add_row{
{tag='th', content='[[Premium Pass|Premium]]', colspan="6"},
{tag='td', content=Infobox.param('premium'), colspan="14"},
}
:add_row{
{tag='th', content='[[Health]]', colspan="6"},
{tag='td', content=Infobox.param('hp'), colspan="14"},
}
:pad(20)
return infobox
end
return p
39fb7daf7228525aa4b8360792c76d8366830dba
Template:Infobox Monster
10
854
1913
2024-04-09T20:03:34Z
Gau Cho
5
Created page with "{{#invoke:Infobox Monster|main}}{{Mainonly|[[Category:Monsters]]}}<noinclude>{{/doc}}</noinclude>"
wikitext
text/x-wiki
{{#invoke:Infobox Monster|main}}{{Mainonly|[[Category:Monsters]]}}<noinclude>{{/doc}}</noinclude>
a6fd2c34a6a62f1bcc3175820a9be376c9b4b1fc
Template:Infobox Monster/doc
10
855
1914
2024-04-09T20:04:24Z
Gau Cho
5
Created page with "{{Documentation}} ==Parameters== ===name=== The name of the monster. ===image=== The image of the monster. ===release=== The release date of the monster. ===premium=== Whether or not this monster requires a [[premium pass]]. ===episode=== The episode of the monster. One of: * Hopeport * Hopeforest * Mine of Mantuban * Crenopolis ===hp=== The health of the monster. ==Quick copy== <pre>{{Infobox NPC |name = |image = |release = |premium = |episode = |hp = }}</..."
wikitext
text/x-wiki
{{Documentation}}
==Parameters==
===name===
The name of the monster.
===image===
The image of the monster.
===release===
The release date of the monster.
===premium===
Whether or not this monster requires a [[premium pass]].
===episode===
The episode of the monster.
One of:
* Hopeport
* Hopeforest
* Mine of Mantuban
* Crenopolis
===hp===
The health of the monster.
==Quick copy==
<pre>{{Infobox NPC
|name =
|image =
|release =
|premium =
|episode =
|hp =
}}</pre>
<includeonly>[[Category:Infobox templates]]</includeonly>
ead3b4389c85edd192065699c3f7891781582771
Firetoad
0
186
1915
1491
2024-04-09T20:05:13Z
Gau Cho
5
wikitext
text/x-wiki
{{Unofficial name}}
{{Infobox Monster
|name = Firetoad
|image = [[File:Firetoad.png]]
|release = Q3 2024
|episode = Hopeport
|premium = No
|hp =
}}
'''Firetoads''' are monsters found in caves. The Hopeport town guard fights firetoads regularly, to the point where it might at first glance be mistaken that that is all they do.{{CiteVideo|author=FenResearch|title=Brighter Shores Trailer|url=https://www.youtube.com/watch?v=7lolGQaorPo|timestamp=00:01 - 00:09|date=13 May, 2024|site=Youtube|name=Original Brighter Shores Trailer}}
Being that players first enter the game as members of the Hopeport town guard, it is anticipated that fighting firetoads will be one of the most common ways that players initially improve their combat abilities.
As their name implies, firetoads attack with fire, which is a long-range attack with a constant speed, independent of distance to target. Firetoads can use their fire attack every 2.5 seconds.
==Gallery==
<gallery>
Firetoads Trailer.jpg | Firetoads as shown in the original trailer for Brighter Shores.
</gallery>
==Trivia==
* Firetoads were the first named monsters to be presented to players, in the original trailer for the game.<ref name="Original Brighter Shores Trailer"/>
==References==
{{reflist}}
50701d3e71f1854349fc3a02e9447ec60c99ce95
Grumpy Pirate
0
450
1916
1832
2024-04-09T20:05:26Z
Gau Cho
5
wikitext
text/x-wiki
{{Infobox Monster
|name = Grumpy Pirate
|image =
|release = Q3 2024
|episode =
|premium =
|hp =
}}
'''Grumpy Pirate''' is a [[monster]] located in the [[Pirate Hideout]].
e801dbe5077613ae80de462c535953bfb351cd82
Mawchest
0
448
1918
1836
2024-04-09T20:05:55Z
Gau Cho
5
wikitext
text/x-wiki
{{Infobox Monster
|name = Mawchest
|image = [[File:Mawchest.PNG]]
|release = Q3 2024
|episode =
|premium =
|hp =
}}
'''Mawchest''' is a [[monster]].
1b12528e5462adef82a6df85737a5b5ee78fbb03
Punkupine
0
446
1921
1841
2024-04-09T20:06:25Z
Gau Cho
5
wikitext
text/x-wiki
{{Infobox Monster
|name = Punkupine
|image =
|release = Q3 2024
|episode =
|premium =
|hp =
}}
'''Punkupine''' is a [[monster]].
b0ac0f81aa3c28ce76ee060ecb87acde24794140
Slime Fiend
0
447
1922
1842
2024-04-09T20:06:39Z
Gau Cho
5
wikitext
text/x-wiki
{{Infobox Monster
|name = Slime Fiend
|image =
|release = Q3 2024
|episode =
|premium =
|hp =
}}
'''Slime Fiend''' is a [[monster]].
79b0c72a8625418aa627f8b3cfa17099c2ffd7a5
Sneaky Thief
0
100
1923
1843
2024-04-09T20:07:01Z
Gau Cho
5
wikitext
text/x-wiki
{{Infobox Monster
|name = Sneaky Thief
|image = [[File:Sneaky Thief.png]]
|release = Q3 2024
|episode =
|premium =
|hp = 1100
}}
'''Sneaky Thieves''' are a type of monster.
634b486f12ccaa64a7203c8be38fbb3f543b748e
Tiderider Jellyfish
0
849
1924
1897
2024-04-09T20:07:18Z
Gau Cho
5
wikitext
text/x-wiki
{{Infobox Monster
|name = Tiderider
|image = [[File:Tiderider.PNG]]
|release = Q3 2024
|episode =
|premium =
|hp =
}}
'''Tiderider''' is a [[monster]] located in [[Jellyfish Landing]]. It is part of the [[Jellyfish]] category.
33d363e8627d888f79abefbfd1b0a6472eb1c29b
1945
1924
2024-04-10T06:15:24Z
Sam
60
wikitext
text/x-wiki
{{Infobox Monster
|name = Tiderider
|image = [[File:Tiderider.PNG]]
|release = Q3 2024
|episode = Hopeport
|premium = No
|hp =
}}
'''Tiderider''' is a [[monster]] located in [[Jellyfish Landing]]. It is part of the [[Jellyfish]] category.
8405c8f0a210a59cd625cc6508ec3ef350ea72c0
Wailing Shade
0
85
1925
1844
2024-04-09T20:07:32Z
Gau Cho
5
wikitext
text/x-wiki
{{Infobox Monster
|name = Wailing Shade
|image = [[File:Wailing Shade.png]]
|release = Q3 2024
|episode =
|premium =
|hp = 682
}}
'''Wailing Shades''' are monsters.
a141707df304f3012a88b8ac0433aca7ac4b7d1c
Category:Monsters
14
134
1926
248
2024-04-09T20:08:32Z
Gau Cho
5
wikitext
text/x-wiki
{{Categoryheader|pages|that use [[Template:Infobox Monster]]}}
[[Category:Content]]
db069df0595f39d90c9de79e43271c6e2b8fb57f
User talk:Sam
3
856
1927
2024-04-09T20:18:52Z
Gau Cho
5
Created page with "Heya Sam! I'm not sure if you are on our [https://discord.gg/T8hfvcd2Vp Discord] or not, but just wanted to give you a headsup that I split [[Template:Infobox NPC]] into [[Template:Infobox NPC]] and [[Template:Infobox Monster]]! Cheers, --~~~~"
wikitext
text/x-wiki
Heya Sam! I'm not sure if you are on our [https://discord.gg/T8hfvcd2Vp Discord] or not, but just wanted to give you a headsup that I split [[Template:Infobox NPC]] into [[Template:Infobox NPC]] and [[Template:Infobox Monster]]!
Cheers,
--[[User:Gau Cho|Gau Cho]] ([[User talk:Gau Cho|talk]]) 20:18, 9 April 2024 (UTC)
664d7a76a84928a39b1e3956886584a976bb7664
User:Gau Cho
2
104
1928
1612
2024-04-09T20:19:40Z
Gau Cho
5
wikitext
text/x-wiki
Admin on BS wiki.
==Content==
*[[Module:Infobox]]
aedb8547a712fb4625e012624150d9a84771e6a9
File:Pirate Hideout.jpg
6
857
1929
2024-04-09T20:49:55Z
Yellowsap
63
wikitext
text/x-wiki
da39a3ee5e6b4b0d3255bfef95601890afd80709
1930
1929
2024-04-09T20:51:58Z
Yellowsap
63
wikitext
text/x-wiki
{{Fair use|link=https://twitter.com/AndrewCGower/status/1769048510177948004}}
6f5ca0034357c95ba9ae599fe98e554b5597558d
Pirate Hideout
0
442
1931
1482
2024-04-09T20:53:43Z
Yellowsap
63
wikitext
text/x-wiki
{{Infobox Location
|name = Pirate Hideout
|image = [[File:Pirate_Hideout.jpg|280px]]
|release =
|premium =
|episode =
}}
The '''Pirate Hideout''' is a [[location]]. It contains [[Gurnard]]s, [[Pirate]]s, [[Limpet]]s, [[Wrack]]s, and a few interactable scenery items.
8a50b08e6c075a8f6b7271d2194f445daf063b6a
User:Yellowsap
2
858
1932
2024-04-09T21:07:12Z
Yellowsap
63
Created page with "Discord: yellowsap"
wikitext
text/x-wiki
Discord: yellowsap
bc292d2445db2ffd01585f47179d771efd482bdf
File:Health potion.png
6
646
1933
1352
2024-04-09T21:56:53Z
Yellowsap
63
Yellowsap uploaded a new version of [[File:Health potion.png]]
wikitext
text/x-wiki
{{Transparency}}
== Summary ==
[[Category:Potion images]]
f9c1c2822d82368653bb196a5bd1431e096cf925
1934
1933
2024-04-09T21:57:17Z
Yellowsap
63
wikitext
text/x-wiki
== Summary ==
[[Category:Potion images]]
403612027df4e8aa7c694b3882d8a5d2b1b95b5c
File:Merchant potion.png
6
637
1935
1353
2024-04-10T05:47:36Z
Sam
60
Sam uploaded a new version of [[File:Merchant potion.png]]
wikitext
text/x-wiki
{{Transparency}}
[[Category:Potion images]]
376dd24b9050af743ffdd1b06a93cbee2621c131
1936
1935
2024-04-10T05:48:31Z
Sam
60
wikitext
text/x-wiki
[[Category:Potion images]]
388d06d85806717fa6f546638e7310b47cc31d1c
File:Bronze legs.png
6
742
1937
1377
2024-04-10T06:02:46Z
Sam
60
Sam uploaded a new version of [[File:Bronze legs.png]]
wikitext
text/x-wiki
== Summary ==
{{Transparency}}
Derivative from https://brightershores.com/screenshots/09_himatik_ruins.jpg.
[[Category:Equipment images]]
d8f86345b82132b6d2bf82675e4f6d8b3c07f303
1938
1937
2024-04-10T06:02:58Z
Sam
60
wikitext
text/x-wiki
== Summary ==
Derivative from https://brightershores.com/screenshots/09_himatik_ruins.jpg.
[[Category:Equipment images]]
99d9f9fa3ca48d11e5091632aca75953885232f9
Greenlid Carnivorous Plant
0
859
1939
2024-04-10T06:08:45Z
Sam
60
created page
wikitext
text/x-wiki
{{Infobox Monster
|name = Greenlid
|image =
|release = Q3 2024
|episode =
|premium =
|hp =
}}
'''Greenlids''' are monsters found by the [[Fallen Monument]].
019c3ed6a1ffbdb56e6d9b7be5af96a25c233b1d
1940
1939
2024-04-10T06:10:13Z
Sam
60
wikitext
text/x-wiki
{{Infobox Monster
|name = Greenlid
|image =
|release = Q3 2024
|episode =
|premium =
|hp =
}}
'''Greenlids''' are monsters found by the [[Fallen Monument]]. It is part of the [[Carnivorous Plant]] category.
90669955d277c0922e608f5b376f971a50a06b4c
1941
1940
2024-04-10T06:10:26Z
Sam
60
wikitext
text/x-wiki
{{Infobox Monster
|name = Greenlid
|image =
|release = Q3 2024
|episode =
|premium =
|hp =
}}
'''Greenlids''' are monsters found by the [[Fallen Monument]]. They are part of the [[Carnivorous Plant]] category.
3cb3001625d46662efb8627aca71f52c6d188053
1943
1941
2024-04-10T06:11:48Z
Sam
60
wikitext
text/x-wiki
{{Infobox Monster
|name = Greenlid
|image = [[File:Greenlid.PNG]]
|release = Q3 2024
|episode =
|premium =
|hp =
}}
'''Greenlids''' are monsters found by the [[Fallen Monument]]. They are part of the [[Carnivorous Plant]] category.
0c125fe8d27b54d62d4e9d3c6bd03e3fb52d32ac
File:Greenlid Carnivorous Plant.png
6
860
1942
2024-04-10T06:11:28Z
Sam
60
A Greenlid monster
wikitext
text/x-wiki
== Summary ==
A Greenlid monster
7c94bb88d44dfd0357d6248b6cfa1544a7741909
Passive Activity
0
337
1946
553
2024-04-10T09:13:17Z
82.5.156.136
0
Changed redirect target from [[Passive activity]] to [[Professions#Passive training]]
wikitext
text/x-wiki
#REDIRECT [[Professions#Passive training]]
4c37fa20aa7ec022c193b0ba116870e82080dfa6
File:Town Square.jpg
6
861
1947
2024-04-10T09:19:26Z
Yellowsap
63
wikitext
text/x-wiki
da39a3ee5e6b4b0d3255bfef95601890afd80709
1948
1947
2024-04-10T09:19:58Z
Yellowsap
63
wikitext
text/x-wiki
{{Fair use|link=https://twitter.com/AndrewCGower/status/1776276857706479810}}
2d80bc546769443ab1e88c27592359609c85832a
Town Square
0
838
1949
1822
2024-04-10T09:20:35Z
Yellowsap
63
wikitext
text/x-wiki
{{Infobox Location
|name = Town Square
|image = [[File:Town_Square.jpg|280px]]
|release =
|premium =
|episode = Hopeport
}}
The '''Town Square''' is a location in [[Hopeport (location)|Hopeport]].
d472e42a589635671f289f132f91ec24c4e8b887
File:Cryoknight potion.png
6
648
1950
1350
2024-04-10T09:36:38Z
Yellowsap
63
Yellowsap uploaded a new version of [[File:Cryoknight potion.png]]
wikitext
text/x-wiki
{{Transparency}}
== Summary ==
[[Category:Potion images]]
f9c1c2822d82368653bb196a5bd1431e096cf925
1951
1950
2024-04-10T09:38:19Z
Yellowsap
63
wikitext
text/x-wiki
== Summary ==
[[Category:Potion images]]
403612027df4e8aa7c694b3882d8a5d2b1b95b5c
Potion
0
298
1952
481
2024-04-10T10:10:23Z
Yellowsap
63
wikitext
text/x-wiki
'''Potions''' are consumables that may be brewed through the [[Alchemist]] [[profession]].
==List of potions==
{| class="wikitable"
! !! Potion
|-
| [[File:Cryoknight potion.png|30px|link=Cryoknight potion]] || [[Cryoknight potion]]
|-
| [[File:Hammermage potion.png|30px|link=Hammermage potion]] || [[Hammermage potion]]
|-
| [[File:Health potion.png|30px|link=Health potion]] || [[Health potion]]
|-
| [[File:Merchant potion.png|30px|link=Merchant potion]] || [[Merchant potion]]
|-
| [[File:Miner potion.png|30px|link=Miner potion]] || [[Miner potion]]
|}
7d54767f67e23729a86359305d7718ae9723cf29
File:Hammermage potion.png
6
633
1953
1351
2024-04-10T10:17:42Z
Yellowsap
63
Yellowsap uploaded a new version of [[File:Hammermage potion.png]]
wikitext
text/x-wiki
{{Transparency}}
[[Category:Potion images]]
376dd24b9050af743ffdd1b06a93cbee2621c131
File:Hammermage potion.png
6
633
1954
1953
2024-04-10T10:19:15Z
Yellowsap
63
wikitext
text/x-wiki
[[Category:Potion images]]
388d06d85806717fa6f546638e7310b47cc31d1c
File:Miner potion.png
6
467
1955
1354
2024-04-10T10:26:28Z
Yellowsap
63
Yellowsap uploaded a new version of [[File:Miner potion.png]]
wikitext
text/x-wiki
{{Transparency}}
[[Category:Potion images]]
f9a641b1e332f09765eddb6b339bbbdbf9680bab
1956
1955
2024-04-10T10:26:38Z
Yellowsap
63
wikitext
text/x-wiki
[[Category:Potion images]]
388d06d85806717fa6f546638e7310b47cc31d1c
Strength Arborae
0
862
1957
2024-04-10T10:52:01Z
Yellowsap
63
Created page with "{{Infobox Item |name = Arborae potion |image = [[File:Arborae potion.png]] |premium = |release = Q3 [[2024]] |episode = |profession = [[Alchemist]] |value = }} The '''Arborae potion''' is a type of [[potion]]. [[Category:Potions]]"
wikitext
text/x-wiki
{{Infobox Item
|name = Arborae potion
|image = [[File:Arborae potion.png]]
|premium =
|release = Q3 [[2024]]
|episode =
|profession = [[Alchemist]]
|value =
}}
The '''Arborae potion''' is a type of [[potion]].
[[Category:Potions]]
ee15737dd6138fddb2084da4c2f5b0674f7f3b37
1966
1957
2024-04-10T15:19:03Z
InvalidCards
4
wikitext
text/x-wiki
{{Infobox Item
|name = Arborae potion
|image = [[File:Arborae potion.png]]
|premium =
|release = Q3 [[2024]]
|episode =
|profession = [[Alchemist]]
|value =
}}
The '''Arborae potion''' is a type of [[potion]].{{CiteTrailer|timestamp=0:19}}
==References==
{{Reflist}}
[[Category:Potions]]
08f8fb3d89f1bce58d860c4a2c023e3aa905f952
File:Arborae potion.png
6
863
1958
2024-04-10T10:56:38Z
Yellowsap
63
wikitext
text/x-wiki
da39a3ee5e6b4b0d3255bfef95601890afd80709
Potion
0
298
1959
1952
2024-04-10T10:57:29Z
Yellowsap
63
wikitext
text/x-wiki
'''Potions''' are consumables that may be brewed through the [[Alchemist]] [[profession]].
==List of potions==
{| class="wikitable"
! !! Potion
|-
| [[File:Arborae potion.png|30px|link=Arborae potion]] || [[Arborae potion]]
|-
| [[File:Cryoknight potion.png|30px|link=Cryoknight potion]] || [[Cryoknight potion]]
|-
| [[File:Hammermage potion.png|30px|link=Hammermage potion]] || [[Hammermage potion]]
|-
| [[File:Health potion.png|30px|link=Health potion]] || [[Health potion]]
|-
| [[File:Merchant potion.png|30px|link=Merchant potion]] || [[Merchant potion]]
|-
| [[File:Miner potion.png|30px|link=Miner potion]] || [[Miner potion]]
|}
2c715ca5cff4575ece9204fd80541fd37a6a39d3
1962
1959
2024-04-10T15:03:24Z
Merds
25
/* List of potions */
wikitext
text/x-wiki
'''Potions''' are consumables that may be brewed through the [[Alchemist]] [[profession]].
==List of potions==
{| class="wikitable"
! colspan="2" | Potions
|-
| [[File:Arborae potion.png|30px|link=Arborae potion]] || [[Arborae potion]]
|-
| [[File:Cryoknight potion.png|30px|link=Cryoknight potion]] || [[Cryoknight potion]]
|-
| [[File:Hammermage potion.png|30px|link=Hammermage potion]] || [[Hammermage potion]]
|-
| [[File:Health potion.png|30px|link=Health potion]] || [[Health potion]]
|-
| [[File:Merchant potion.png|30px|link=Merchant potion]] || [[Merchant potion]]
|-
| [[File:Miner potion.png|30px|link=Miner potion]] || [[Miner potion]]
|}
342d726ef46312889a19220a96be2d9e9fbedd25
Coin
0
864
1960
2024-04-10T12:55:13Z
Yellowsap
63
Redirected page to [[Coins]]
wikitext
text/x-wiki
#REDIRECT [[Coins]]
0d90e1e9248a73fc4b0355940a621d7228d9214e
Potions
0
865
1961
2024-04-10T15:02:13Z
InvalidCards
4
Redirected page to [[Potion]]
wikitext
text/x-wiki
#REDIRECT [[Potion]]
56916a89a5e29f5e4a3f1161baf9dfbf508a69bd
Template:CiteTrailer
10
866
1963
2024-04-10T15:14:00Z
InvalidCards
4
Created page with "<includeonly>{{CiteVideo|author=FenResearch|title=Brighter Shores Trailer|url=https://www.youtube.com/watch?v=7lolGQaorPo|timestamp={{{timestamp|}}}|date=13 May, 2024|site=Youtube|name=Original Brighter Shores Trailer}}</includeonly><noinclude>{{/doc}}</noinclude>"
wikitext
text/x-wiki
<includeonly>{{CiteVideo|author=FenResearch|title=Brighter Shores Trailer|url=https://www.youtube.com/watch?v=7lolGQaorPo|timestamp={{{timestamp|}}}|date=13 May, 2024|site=Youtube|name=Original Brighter Shores Trailer}}</includeonly><noinclude>{{/doc}}</noinclude>
09addc8f0e459bd5241e27b33be78acf558e53f4
1968
1963
2024-04-10T15:45:36Z
Yellowsap
63
Correcting month.
wikitext
text/x-wiki
<includeonly>{{CiteVideo|author=FenResearch|title=Brighter Shores Trailer|url=https://www.youtube.com/watch?v=7lolGQaorPo|timestamp={{{timestamp|}}}|date=13 March, 2024|site=Youtube|name=Original Brighter Shores Trailer}}</includeonly><noinclude>{{/doc}}</noinclude>
7f379d92e855ebd0ca03feec33cc0e64295ea3d9
Template:CiteTrailer/doc
10
867
1964
2024-04-10T15:16:15Z
InvalidCards
4
Created page with "{{Documentation}} This template serves as a shortcut for {{t|CiteVideo}} specifically for the preview trailer of the game. The only accepted parameter is <code>timestamp</code>, which is passed directly to the underlying template. ==Usage== <pre><nowiki>{{CiteTrailer|timestamp=1:20}}</nowiki></pre> produces {{CiteTrailer|timestamp=1:20}} ==References== {{Reflist}}"
wikitext
text/x-wiki
{{Documentation}}
This template serves as a shortcut for {{t|CiteVideo}} specifically for the preview trailer of the game. The only accepted parameter is <code>timestamp</code>, which is passed directly to the underlying template.
==Usage==
<pre><nowiki>{{CiteTrailer|timestamp=1:20}}</nowiki></pre> produces {{CiteTrailer|timestamp=1:20}}
==References==
{{Reflist}}
b621f7b0e95ed7ec1c588489b30f955a59bc22cb
Firetoad
0
186
1965
1915
2024-04-10T15:16:56Z
InvalidCards
4
Swap to CiteTrailer
wikitext
text/x-wiki
{{Unofficial name}}
{{Infobox Monster
|name = Firetoad
|image = [[File:Firetoad.png]]
|release = Q3 2024
|episode = Hopeport
|premium = No
|hp =
}}
'''Firetoads''' are monsters found in caves. The Hopeport town guard fights firetoads regularly, to the point where it might at first glance be mistaken that that is all they do.{{CiteTrailer|timestamp=00:01 - 00:09}}
Being that players first enter the game as members of the Hopeport town guard, it is anticipated that fighting firetoads will be one of the most common ways that players initially improve their combat abilities.
As their name implies, firetoads attack with fire, which is a long-range attack with a constant speed, independent of distance to target. Firetoads can use their fire attack every 2.5 seconds.
==Gallery==
<gallery>
Firetoads Trailer.jpg | Firetoads as shown in the original trailer for Brighter Shores.
</gallery>
==Trivia==
* Firetoads were the first named monsters to be presented to players, in the original trailer for the game.<ref name="Original Brighter Shores Trailer"/>
==References==
{{reflist}}
71e3fc4d4374cc5a7e2de4bff1780bbc9be86c25
T.E.A. Machine
0
223
1967
395
2024-04-10T15:20:44Z
InvalidCards
4
refs
wikitext
text/x-wiki
[[File:T.E.A. Machine.png|thumb|right|A preview of the T.E.A. Machine.]]
The '''T.E.A. Machine''' is a machine in which players can load stones into to complete an action.{{CiteTrailer|timestamp=0:21}} The machine's exact purpose is currently unknown.
==References==
{{Reflist}}
787262254232c6ca14eb6a5614c0408e81550e81
Pirate Hideout
0
442
1969
1931
2024-04-10T15:51:39Z
Yellowsap
63
wikitext
text/x-wiki
{{Infobox Location
|name = Pirate Hideout
|image = [[File:Pirate_Hideout.jpg|280px]]
|release =
|premium =
|episode =
}}
The '''Pirate Hideout''' is a [[location]]. It contains [[Gurnard]]s, [[Pirate]]s, [[Limpet]]s, [[Wrack]]s, and a few interactable scenery items.{{CiteTwitter|author=AndrewCGower|url=https://twitter.com/AndrewCGower/status/1769048510177948004|quote=|date=16 March, 2024|archiveurl=|archivedate=|notes=|name=}}
==References==
{{Reflist}}
7648b6374796702720e5f29d1bf723a91ccb5f7b
1971
1969
2024-04-10T15:56:08Z
Yellowsap
63
wikitext
text/x-wiki
{{Infobox Location
|name = Pirate Hideout
|image = [[File:Pirate_Hideout.jpg|280px]]
|release =
|premium =
|episode =
}}
The '''Pirate Hideout''' is a [[location]]. It contains [[Gurnard]]s, [[Pirate]]s, [[Limpet]]s, [[Wrack]]s, and a few interactable scenery items.{{CiteTwitter|url=https://twitter.com/AndrewCGower/status/1769048510177948004|author=Andrew Gower|date=16 March 2024|archiveurl=https://archive.is/whgCd|archivedate=22 March 2024|notes=|name=}}
==References==
{{Reflist}}
d004f87761abdeef753da81c18031c113c18d350
Category:Unarchived Twitter references
14
868
1970
2024-04-10T15:54:23Z
BlackHawk
10
Created page with "{{Categoryheader|pages and images|Twitter references that have not been properly archived on [https://www.archive.today archive.today] or some other archive site|yes|{{T|CiteTwitter}}}} {{Hidden category}} [[Category:Maintenance categories]] __EXPECTUNUSEDCATEGORY__"
wikitext
text/x-wiki
{{Categoryheader|pages and images|Twitter references that have not been properly archived on [https://www.archive.today archive.today] or some other archive site|yes|{{T|CiteTwitter}}}}
{{Hidden category}}
[[Category:Maintenance categories]]
__EXPECTUNUSEDCATEGORY__
e27c399f3169f8ff73f04bc956aa5d7fa98d8a39
File:Coif.png
6
635
1972
1355
2024-04-10T16:27:52Z
Sam
60
Sam uploaded a new version of [[File:Coif.png]]
wikitext
text/x-wiki
{{Transparency}}
[[Category:Equipment images]]
97290063d01509323b496ae9a91a00bba30774f9
1973
1972
2024-04-10T16:28:11Z
Sam
60
wikitext
text/x-wiki
[[Category:Equipment images]]
c0f3495b1253ecbf1fbea2d80ea286868c4c9e0e
1977
1973
2024-04-10T17:23:10Z
Sam
60
Sam uploaded a new version of [[File:Coif.png]]
wikitext
text/x-wiki
[[Category:Equipment images]]
c0f3495b1253ecbf1fbea2d80ea286868c4c9e0e
File:Crossbow.png
6
730
1974
1358
2024-04-10T16:53:24Z
Sam
60
Sam uploaded a new version of [[File:Crossbow.png]]
wikitext
text/x-wiki
== Summary ==
{{Transparency}}
Derivative from https://brightershores.com/screenshots/03_shade_combat.jpg.
[[Category:Equipment images]]
efd0c43b6fa2a7da4c70430cfcac5260efbf7140
1975
1974
2024-04-10T16:53:53Z
Sam
60
wikitext
text/x-wiki
== Summary ==
Derivative from https://brightershores.com/screenshots/03_shade_combat.jpg.
[[Category:Equipment images]]
346f823e6d67fb046e18e84418bd1236b1585685
1976
1975
2024-04-10T17:21:59Z
Sam
60
Sam uploaded a new version of [[File:Crossbow.png]]
wikitext
text/x-wiki
== Summary ==
Derivative from https://brightershores.com/screenshots/03_shade_combat.jpg.
[[Category:Equipment images]]
346f823e6d67fb046e18e84418bd1236b1585685
File:Bronze legs.png
6
742
1978
1938
2024-04-10T17:24:27Z
Sam
60
Sam uploaded a new version of [[File:Bronze legs.png]]
wikitext
text/x-wiki
== Summary ==
Derivative from https://brightershores.com/screenshots/09_himatik_ruins.jpg.
[[Category:Equipment images]]
99d9f9fa3ca48d11e5091632aca75953885232f9
File:Merchant potion.png
6
637
1979
1936
2024-04-10T17:25:10Z
Sam
60
Sam uploaded a new version of [[File:Merchant potion.png]]
wikitext
text/x-wiki
[[Category:Potion images]]
388d06d85806717fa6f546638e7310b47cc31d1c
Grumpy Pirate
0
450
1980
1916
2024-04-10T17:32:30Z
InvalidCards
4
wikitext
text/x-wiki
{{Infobox Monster
|name = Grumpy Pirate
|image =
|release = Q3 2024
|episode =
|premium =
|hp =
}}
'''Grumpy Pirate''' is a [[monster]] located in the [[Pirate Hideout]].{{CiteTwitter|url=https://twitter.com/AndrewCGower/status/1769048510177948004|author=Andrew Gower|date=16 March 2024|archiveurl=https://archive.is/whgCd|archivedate=22 March 2024|notes=|name=}}
==References==
{{Reflist}}
801ff4d50a8e86710f3558e3737e2f3a2d349e01
1984
1980
2024-04-10T17:37:43Z
InvalidCards
4
wikitext
text/x-wiki
{{Infobox Monster
|name = Grumpy Pirate
|image =
|release = Q3 2024
|episode =
|premium =
|hp =
|variant = [[Pirate]]
}}
'''Grumpy Pirate''' is a [[monster]] located in the [[Pirate Hideout]].{{CiteTwitter|url=https://twitter.com/AndrewCGower/status/1769048510177948004|author=Andrew Gower|date=16 March 2024|archiveurl=https://archive.is/whgCd|archivedate=22 March 2024|notes=|name=}}
==References==
{{Reflist}}
2c705a433ad4fb9e7187e8b98ff37d8180a311b9
Module:Infobox Monster
828
853
1981
1912
2024-04-10T17:35:10Z
InvalidCards
4
Add variant parameter
Scribunto
text/plain
local p = {}
local Infobox = require('Module:Infobox')
local parse = require('Module:Param Parse')
function p.main(frame)
local args = frame:getParent().args
local config = {
infobox_name = 'Monster',
}
local params = {
parse.name,
parse.image,
parse.release,
parse.premium,
parse.episode,
{name = 'hp', func = parse.number}, -- TODO - move to Module:Param Parse once more details are available, and create smw_property
parse.variant,
}
local infobox = Infobox.new(config, params, args)
infobox
:add_row{
{tag='th', content=Infobox.param('name'), class='infobox-header', colspan='20'},
}
:add_row{
{tag='td', content=Infobox.param('image'), class='infobox-image', colspan='20'},
}
:add_row{
{tag='th', content='Release', colspan="6"},
{tag='td', content=Infobox.param('release'), colspan="14"},
}
:add_row{
{tag='th', content='[[Episode]]', colspan="6"},
{tag='td', content=Infobox.param('episode'), colspan="14"},
}
:add_row{
{tag='th', content='[[Premium Pass|Premium]]', colspan="6"},
{tag='td', content=Infobox.param('premium'), colspan="14"},
}
:add_row{
{tag='th', content='[[Health]]', colspan="6"},
{tag='td', content=Infobox.param('hp'), colspan="14"},
}
:add_row{
{tag='th', content='[[Variant]] of', colspan="6"},
{tag='td', content=Infobox.param('variant'), colspan="14"},
}
:pad(20)
return infobox
end
return p
468a9129c88933389f2185359d82b371e8ce0802
Module:Param Parse
828
673
1982
1882
2024-04-10T17:36:57Z
InvalidCards
4
Add variant parameter
Scribunto
text/plain
--[=[
-- Standardized functions to parse Infobox params
--]=]
-- <nowiki>
local parse = {}
-- Generic functions --
-----------------------
-- Standardized "has content" function
function parse.has_content(arg)
-- Return arg if any non-whitespace character is found
return string.match(arg or '', '%S') and arg or nil
end
-- Standardized numbers
function parse.number(num)
num = string.gsub(num or '',',','')
return tonumber(num)
end
-- Yes/No
local yes_no = {
['Yes'] = true,
['No'] = false,
['N/A'] = 'NIL',
}
function parse.yes_no(text)
if yes_no[text] ~= nil then
return text
end
return nil
end
function parse.yes_no_smw(text)
if text == 'N/A' then
return nil
end
return yes_no[text] or nil
end
-- Premade Params --
--------------------
-- Standardized name function
parse.name = {
name = 'name',
func = parse.has_content,
smw_property = 'Name',
}
-- Standardized image function
function parse.image_func(img)
if img and string.match(img, '%[%[File:.*%]%]') then
return img
end
return nil
end
function parse.image_smw(img)
return img and string.match(img, "File:.*%.%w%w%w") or nil
end
parse.image = {
name = 'image',
func = parse.image_func,
smw_property = 'Image',
smw_func = parse.image_smw,
empty = '[[Special:Upload|Please upload an image!]]',
category_incomplete = 'Needs image',
}
-- Episode
local valid_episodes = {['Hopeport'] = 1, ['Hopeforest'] = 1, ['Mine of Mantuban'] = 1, ['Crenopolis'] = 1}
function parse.episode_func(episode)
if valid_episodes[episode] then
return '[[File:'..episode..' episode icon.png|18px]] [['..episode..']]'
end
return nil
end
function parse.episode_smw(episode)
if valid_episodes[episode] then
return episode
end
return nil
end
parse.episode = {
name = 'episode',
func = parse.episode_func,
smw_property = 'Episode',
smw_func = parse.episode_smw,
category_incomplete = 'Needs episode',
}
-- Premium
parse.premium = {
name = 'premium',
func = parse.yes_no,
smw_property = 'Premium',
smw_func = parse.yes_no,
category_incomplete = 'Needs premium status',
}
-- Release (TODO)
parse.release = {
name = 'release',
func = parse.has_content,
}
-- Profession (TODO)
parse.profession = {
name = 'profession',
func = parse.has_content,
category_incomplete = 'Needs profession',
smw_property = 'Profession' -- TODO - Need to create property page
}
parse.variant = {
name = 'variant',
func = parse.has_content,
category_incomplete = 'Needs variant details',
smw_property = 'Variant of' -- TODO - Need to create property page
}
return parse
-- </nowiki>
5af87d5fba94110a0cd0db7346ad3ccefe023277
Module:Param Parse/doc
828
781
1983
1883
2024-04-10T17:37:29Z
InvalidCards
4
wikitext
text/x-wiki
{{documentation}}
These params and functions are used to validate and format information passed into an Infobox. See [[Module:Infobox]] for details and instructions on creating an Infobox. If the information is missing or not valid, the functions here should return nil.
Here is a summary of all the params:
{| class="wikitable"
! param
! explanation
|-
| parse.image
| <nowiki>[[File:IMAGE.png]]</nowiki>. Use the class '''infobox-image''' in the table
|-
| parse.episode
| Episode name
|-
| parse.premium
| Premium (Yes, No, N/A)
|-
| parse.release
| TODO
|-
| parse.profession
| TODO
|-
| parse.variant
| TODO - Which category the subject is a variant of
|}
Here are some general use functions that can be used for custom or new params:
{| class="wikitable"
! function name
! explanation
|-
| has_content(arg)
| Returns arg if any non-whitespace character is found in the string.
|-
| number(num)
| Removes any commas and parses the string as a number
|-
| yes_no(text)
| Only accepts "Yes", "No" and "N/A"
|-
| yes_no_smw(text)
| Maps "Yes", "No" to true and false respectively
|}
== Creating New Params ==
Ideally, params should be defined here so that they can be reused between different Infoboxes. Here is how to create a new param:
<syntaxhighlight lang="lua">
parse.paramname = {
name = <param>,
func = <func>,
empty = 'empty', -- optional
category_never = 'category', -- optional
category_partial = 'category', -- optional
category_incomplete = 'category', -- optional
category_complete = 'category', -- optional
smw_property = 'Property', -- optional
smw_func = <func>, -- optional
}
</syntaxhighlight>
{| class="wikitable"
! key
! value
|-
| name
| parameter name as used in the Template
|-
| func
| A function in [[Module:Param Parse]] to validate and process the Template argument. You can also use a local function, but this is not recommended.
If func is a function, will call func(Infobox.raw_param(name)):
<syntaxhighlight lang="lua">
{name = <param>, func = <func>, ... },
</syntaxhighlight>
If func is a table, it takes the following parameters:
<syntaxhighlight lang="lua">
{name = <param>, func = { name = <func>, params = <func_params>}, ... },
</syntaxhighlight>
{| class="wikitable"
| name
| function in [[Module:Param Parse]]
|-
| params
| a list of parameters to pass the the function, in the form of constants, or Infobox.raw_param(name), Infobox.param(name), Infobox.smw_param(name)
|}
|-
| empty (optional)
| text to display in the infobox if func returns nil; defaults to "? (edit)"
|-
| category_never (optional)
| category to add if func returns nil for all versions
|-
| category_partial (optional)
| category to add if func returns nil for some versions, but a value for other versions
|-
| category_incomplete (optional)
| category to add if func returns nil for at least 1 version (i.e. category_never and category_partial combined)
|-
| category_complete (optional)
| category to add if func returns a value for all versions
|-
| smw_property (optional)
| if this string is defined, the parameter will be saved into SMW
|-
| smw_func (optional)
| function to validate and process the Template argument to save into SMW. func is used by default if smw_func is not defined
|}
bff7207298057b6b3947fdbb9941c716f761009a
Variant
0
869
1985
2024-04-10T17:39:55Z
InvalidCards
4
Created page with "{{Unofficial name}} Most profession-based interactables have '''variants'''. They are a separate part of the name of the interactable, and are separated in the title bar by a profession icon. It is not currently known whether interactables have multiple variants, or what the influences of different variants are. [[Category:Mechanics]]"
wikitext
text/x-wiki
{{Unofficial name}}
Most profession-based interactables have '''variants'''. They are a separate part of the name of the interactable, and are separated in the title bar by a profession icon. It is not currently known whether interactables have multiple variants, or what the influences of different variants are.
[[Category:Mechanics]]
bd2c39b3ca5aa4cff787cb8aad188ed6d3004f79
1986
1985
2024-04-10T17:40:11Z
InvalidCards
4
wikitext
text/x-wiki
{{Unofficial name}}
Most profession-based interactables have '''variants'''. They are a separate part of the name of the interactable, and are separated from the base name in the title bar by a profession icon. It is not currently known whether interactables have multiple variants, or what the influences of different variants are.
[[Category:Mechanics]]
cc1c72d5f15fbcf0ba4ed6900ea22c3d68be172c
Pirate
0
445
1987
1920
2024-04-10T17:43:31Z
InvalidCards
4
wikitext
text/x-wiki
'''Pirates''' are a category of [[monster]].
The following [[variant]]s are known to exist:
*[[Grumpy Pirate]]
[[Category:Interactable category]]
5c3b32f3f5ae415b05bdeb88acb7dccc969f1b40
1988
1987
2024-04-10T17:44:04Z
InvalidCards
4
Should be plural
wikitext
text/x-wiki
'''Pirates''' are a category of [[monster]].
The following [[variant]]s are known to exist:
*[[Grumpy Pirate]]
[[Category:Interactable categories]]
e8fa3e618f670d9d0cd66954c6c9c3d5e227f46d
1993
1988
2024-04-10T17:48:36Z
InvalidCards
4
wikitext
text/x-wiki
{{Interactcategory|name=Pirates|type=[[monster]]}}
*[[Grumpy Pirate]]
48694ec728075373cee935d10639bb19ed0f30e3
Category:Interactable categories
14
870
1989
2024-04-10T17:44:46Z
InvalidCards
4
Created page with "{{Categoryheader|pages|in-game categories of interactable objects}} [[Category:Mechanics]]"
wikitext
text/x-wiki
{{Categoryheader|pages|in-game categories of interactable objects}}
[[Category:Mechanics]]
6cb4668edc80d85ace233269056cfa8a07059c81
File:Branch.png
6
466
1990
1837
2024-04-10T17:47:13Z
Sam
60
Sam uploaded a new version of [[File:Branch.png]]
wikitext
text/x-wiki
== Summary ==
A branch
c1eb7f12d01e99f3a260f388e798469ad89d929b
Template:Interactcategory
10
871
1991
2024-04-10T17:47:51Z
InvalidCards
4
Created page with "<includeonly>'''{{{name|(name missing)}}}''' are a category of {{{type|(type missing)}}}. The following [[variant]]s are known to exist:{{Mainonly|[[Category:Interactable categories]]}}</includeonly><noinclude>{{/doc}}</noinclude>"
wikitext
text/x-wiki
<includeonly>'''{{{name|(name missing)}}}''' are a category of {{{type|(type missing)}}}.
The following [[variant]]s are known to exist:{{Mainonly|[[Category:Interactable categories]]}}</includeonly><noinclude>{{/doc}}</noinclude>
b72cd4b6b139de226690c850a8ae220d283ac2d4
1992
1991
2024-04-10T17:48:29Z
InvalidCards
4
extra newline
wikitext
text/x-wiki
<includeonly>'''{{{name|(name missing)}}}''' are a category of {{{type|(type missing)}}}.
The following [[variant]]s are known to exist:{{Mainonly|[[Category:Interactable categories]]}}</includeonly><noinclude>{{/doc}}</noinclude>
0aaccada65bc3e398fdee240d510a2f79096edbb
Gurnard
0
444
1994
1423
2024-04-10T17:50:06Z
InvalidCards
4
wikitext
text/x-wiki
{{Interactcategory|name=Gurnards|type=[[Fisher]] interactable}}
* [[Yellowtail Gurnard]]
1db84d1aec71feb66db5b58f14a4282670f0b786
Yellowtail Gurnard
0
449
1995
1341
2024-04-10T17:51:41Z
InvalidCards
4
Removed redirect to [[Gurnard]]
wikitext
text/x-wiki
{{Infobox NPC
|name = Yellowtail Gurnard
|image =
|release =
|episode =
|profession = [[Fisher]]
}}
'''Yellowtail Gurnards''' are a type of [[fish]] and a variant of [[Gurnard]]s found in the [[Pirate Hideout]].{{CiteTwitter|url=https://twitter.com/AndrewCGower/status/1769048510177948004|author=Andrew Gower|date=16 March 2024|accessdate=22 March 2024|archiveurl=https://archive.is/whgCd|archivedate=22 March 2024|quote=}}
==References==
{{Reflist}}
130c2cc0df02177bf93a706bb22869ad144064b1
1996
1995
2024-04-10T17:51:53Z
InvalidCards
4
wikitext
text/x-wiki
{{Infobox NPC
|name = Yellowtail Gurnard
|image =
|release =
|episode =
|profession = [[Fisher]]
}}
'''Yellowtail Gurnards''' are a type of [[fish]] and a [[variant]] of [[Gurnard]]s found in the [[Pirate Hideout]].{{CiteTwitter|url=https://twitter.com/AndrewCGower/status/1769048510177948004|author=Andrew Gower|date=16 March 2024|accessdate=22 March 2024|archiveurl=https://archive.is/whgCd|archivedate=22 March 2024|quote=}}
==References==
{{Reflist}}
1338b921f65d1233d3c096c117656399194c1b98
File:Shield.png
6
744
1997
1379
2024-04-10T17:57:04Z
Sam
60
Sam uploaded a new version of [[File:Shield.png]]
wikitext
text/x-wiki
== Summary ==
{{Transparency}}
Derivative from https://brightershores.com/screenshots/09_himatik_ruins.jpg.
[[Category:Equipment images]]
d8f86345b82132b6d2bf82675e4f6d8b3c07f303
1998
1997
2024-04-10T17:57:22Z
Sam
60
wikitext
text/x-wiki
== Summary ==
Derivative from https://brightershores.com/screenshots/09_himatik_ruins.jpg.
[[Category:Equipment images]]
99d9f9fa3ca48d11e5091632aca75953885232f9
Limpet
0
451
1999
731
2024-04-10T17:57:48Z
InvalidCards
4
wikitext
text/x-wiki
{{Interactcategory|name=Limpets|type=[[Forager]] interactable}}
* [[Common Limpet]]
2dbd729874c3ccb13d09b5d47ab890af32105abc
Common Limpet
0
872
2000
2024-04-10T17:58:53Z
InvalidCards
4
Created page with "{{Infobox NPC |name = Common Limpet |image = |release = |episode = |profession = [[Forager]] }} '''Common Limpets''' are a type of [[Forager]] interactable and a [[variant]] of [[Limpet]]s found in the [[Pirate Hideout]].{{CiteTwitter|url=https://twitter.com/AndrewCGower/status/1769048510177948004|author=Andrew Gower|date=16 March 2024|accessdate=22 March 2024|archiveurl=https://archive.is/whgCd|archivedate=22 March 2024|quote=}} ==References== {{Reflist}}"
wikitext
text/x-wiki
{{Infobox NPC
|name = Common Limpet
|image =
|release =
|episode =
|profession = [[Forager]]
}}
'''Common Limpets''' are a type of [[Forager]] interactable and a [[variant]] of [[Limpet]]s found in the [[Pirate Hideout]].{{CiteTwitter|url=https://twitter.com/AndrewCGower/status/1769048510177948004|author=Andrew Gower|date=16 March 2024|accessdate=22 March 2024|archiveurl=https://archive.is/whgCd|archivedate=22 March 2024|quote=}}
==References==
{{Reflist}}
aebe9f754b8658bcfa087a5d400c88a9784d6b0f
Wrack
0
452
2001
730
2024-04-10T18:00:08Z
InvalidCards
4
wikitext
text/x-wiki
{{Interactcategory|name=Wrack|type=[[Forager]] interactable}}
* [[Bladder Wrack]]
03d94d549d5921a6270e2176a532320e80591744
Bladder Wrack
0
873
2002
2024-04-10T18:00:48Z
InvalidCards
4
Created page with "{{Infobox NPC |name = Bladder Wrack |image = |release = |episode = |profession = [[Forager]] }} '''Bladder Wracks''' are a type of [[Forager]] interactable and a [[variant]] of [[Wrack]]s found in the [[Pirate Hideout]].{{CiteTwitter|url=https://twitter.com/AndrewCGower/status/1769048510177948004|author=Andrew Gower|date=16 March 2024|accessdate=22 March 2024|archiveurl=https://archive.is/whgCd|archivedate=22 March 2024|quote=}} ==References== {{Reflist}}"
wikitext
text/x-wiki
{{Infobox NPC
|name = Bladder Wrack
|image =
|release =
|episode =
|profession = [[Forager]]
}}
'''Bladder Wracks''' are a type of [[Forager]] interactable and a [[variant]] of [[Wrack]]s found in the [[Pirate Hideout]].{{CiteTwitter|url=https://twitter.com/AndrewCGower/status/1769048510177948004|author=Andrew Gower|date=16 March 2024|accessdate=22 March 2024|archiveurl=https://archive.is/whgCd|archivedate=22 March 2024|quote=}}
==References==
{{Reflist}}
8c4475a70ff32f3d40602fe8464e410788a7242a
File:Iron legs.png
6
741
2003
1376
2024-04-10T18:03:33Z
Sam
60
Sam uploaded a new version of [[File:Iron legs.png]]
wikitext
text/x-wiki
== Summary ==
{{Transparency}}
Derivative from https://brightershores.com/screenshots/09_himatik_ruins.jpg.
[[Category:Equipment images]]
d8f86345b82132b6d2bf82675e4f6d8b3c07f303
Rope
0
874
2004
2024-04-10T18:03:45Z
InvalidCards
4
Created page with "{{Infobox Scenery |name = Rope |image = [[File:Rope.png]] |release = |episode = }} A '''rope''' is a piece of interactable scenery that can be found in [[Pirate Hideout]].{{CiteTwitter|url=https://twitter.com/AndrewCGower/status/1769048510177948004|author=Andrew Gower|date=16 March 2024|accessdate=24 March 2024|archiveurl=https://archive.is/whgCd|archivedate=24 March 2024|quote=}} ==References== {{Reflist}}"
wikitext
text/x-wiki
{{Infobox Scenery
|name = Rope
|image = [[File:Rope.png]]
|release =
|episode =
}}
A '''rope''' is a piece of interactable scenery that can be found in [[Pirate Hideout]].{{CiteTwitter|url=https://twitter.com/AndrewCGower/status/1769048510177948004|author=Andrew Gower|date=16 March 2024|accessdate=24 March 2024|archiveurl=https://archive.is/whgCd|archivedate=24 March 2024|quote=}}
==References==
{{Reflist}}
423e018e0b40672f77fd7da398b04b0a14f7a07b
File:Rope.png
6
875
2005
2024-04-10T18:04:08Z
InvalidCards
4
wikitext
text/x-wiki
da39a3ee5e6b4b0d3255bfef95601890afd80709
Pirate Hideout
0
442
2006
1971
2024-04-10T18:04:25Z
InvalidCards
4
wikitext
text/x-wiki
{{Infobox Location
|name = Pirate Hideout
|image = [[File:Pirate_Hideout.jpg|280px]]
|release =
|premium =
|episode =
}}
The '''Pirate Hideout''' is a [[location]]. It contains [[Yellowtail Gurnard]]s, [[Grumpy Pirate]]s, [[Common Limpet]]s, [[Bladder Wrack]]s, a [[rope]], a [[trunk]], and an [[old trunk]].{{CiteTwitter|url=https://twitter.com/AndrewCGower/status/1769048510177948004|author=Andrew Gower|date=16 March 2024|archiveurl=https://archive.is/whgCd|archivedate=22 March 2024|notes=|name=}}
==References==
{{Reflist}}
66e1a2bc5df0e1b39e3aa6c765b10d6d89e52270
File:Iron legs.png
6
741
2007
2003
2024-04-10T18:05:11Z
Sam
60
wikitext
text/x-wiki
== Summary ==
Derivative from https://brightershores.com/screenshots/09_himatik_ruins.jpg.
[[Category:Equipment images]]
99d9f9fa3ca48d11e5091632aca75953885232f9
Variant
0
869
2008
1986
2024-04-10T18:08:15Z
InvalidCards
4
wikitext
text/x-wiki
{{Unofficial name}}
Most profession-based interactables and some interactables without related professions have '''variants'''. They are a separate part of the name of the interactable, and are separated from the base name in the title bar by a profession icon. It is not currently known whether interactables have multiple variants, or what the influences of different variants are.
[[Category:Mechanics]]
1cc2cbdf7e9f8bb288f2c1bd34c43af352b37e32
File:Iron platebody.png
6
740
2009
1375
2024-04-10T18:15:47Z
Sam
60
Sam uploaded a new version of [[File:Iron platebody.png]]
wikitext
text/x-wiki
== Summary ==
{{Transparency}}
Derivative from https://brightershores.com/screenshots/09_himatik_ruins.jpg.
[[Category:Equipment images]]
d8f86345b82132b6d2bf82675e4f6d8b3c07f303
2010
2009
2024-04-10T18:15:57Z
Sam
60
wikitext
text/x-wiki
== Summary ==
Derivative from https://brightershores.com/screenshots/09_himatik_ruins.jpg.
[[Category:Equipment images]]
99d9f9fa3ca48d11e5091632aca75953885232f9
File:Log.png
6
737
2011
1372
2024-04-10T18:17:33Z
Sam
60
Sam uploaded a new version of [[File:Log.png]]
wikitext
text/x-wiki
== Summary ==
{{Transparency}}
Derivative from https://brightershores.com/screenshots/09_himatik_ruins.jpg.
[[Category:Item images]]
9539efc2f76d9c14eb57a0a46911745bb9583405
2013
2011
2024-04-10T18:17:44Z
Sam
60
wikitext
text/x-wiki
== Summary ==
Derivative from https://brightershores.com/screenshots/09_himatik_ruins.jpg.
[[Category:Item images]]
9c003c51ca3df174d06d1762e444834e2b0ed117
Zeltay Tramagan
0
834
2012
1891
2024-04-10T18:17:40Z
InvalidCards
4
minor switcharoo
wikitext
text/x-wiki
{{Infobox NPC
|name = Zeltay Tramagan
|image = [[File:Zeltay Tramagan.png]]
|release =
|episode =
|profession =
}}
'''Zeltay Tramagan''' is an NPC located on the [[Town Square]] in [[Hopeport (location)|Hopeport]].{{CiteTwitter|author=@AndrewCGower|url=https://twitter.com/andrewcgower/status/1776276857706479810|date=5 April 2024|archiveurl=https://web.archive.org/web/20240406173123/https://twitter.com/andrewcgower/status/1776276857706479810|archivedate=6 April 2024|quote=store.steampowered.com/app/2791440/Brighter_Shores/ Quite a few people have been asking how the 'rooms' in Brighter Shores connect together, so I have a made a quick video of me running across a small section of Hopeport. You can see how easily you can move between rooms, and how the 'rooms' connect together to form a much larger world.|notes=Timestamp in the video: 0:04 / 1:41.|name=|group=}}
==References==
<references/>
7568655b0fc634f4b9078865e368805bcfe131fe
File:Log basket.png
6
738
2014
1373
2024-04-10T18:25:18Z
Sam
60
Sam uploaded a new version of [[File:Log basket.png]]
wikitext
text/x-wiki
== Summary ==
{{Transparency}}
Derivative from https://brightershores.com/screenshots/09_himatik_ruins.jpg.
[[Category:Item images]]
9539efc2f76d9c14eb57a0a46911745bb9583405
2015
2014
2024-04-10T18:25:30Z
Sam
60
wikitext
text/x-wiki
== Summary ==
Derivative from https://brightershores.com/screenshots/09_himatik_ruins.jpg.
[[Category:Item images]]
9c003c51ca3df174d06d1762e444834e2b0ed117
File:Staff.png
6
732
2016
1360
2024-04-10T18:30:22Z
Sam
60
Sam uploaded a new version of [[File:Staff.png]]
wikitext
text/x-wiki
== Summary ==
{{Transparency}}
Derivative from https://brightershores.com/screenshots/03_shade_combat.jpg.
[[Category:Equipment images]]
efd0c43b6fa2a7da4c70430cfcac5260efbf7140
2017
2016
2024-04-10T18:30:33Z
Sam
60
wikitext
text/x-wiki
== Summary ==
Derivative from https://brightershores.com/screenshots/03_shade_combat.jpg.
[[Category:Equipment images]]
346f823e6d67fb046e18e84418bd1236b1585685
Fishmonger
0
835
2018
1892
2024-04-10T18:31:27Z
InvalidCards
4
wikitext
text/x-wiki
{{Infobox NPC
|name = Fishmonger
|image = [[File:Fishmonger.png]]
|release =
|episode =
|profession = Fisher
}}
'''Fishmonger''' is an NPC located on the [[Eel Street]] in [[Hopeport (location)|Hopeport]].{{CiteTwitter|author=@AndrewCGower|url=https://twitter.com/andrewcgower/status/1776276857706479810|date=5 April 2024|archiveurl=https://web.archive.org/web/20240406173123/https://twitter.com/andrewcgower/status/1776276857706479810|archivedate=6 April 2024|quote=store.steampowered.com/app/2791440/Brighter_Shores/ Quite a few people have been asking how the 'rooms' in Brighter Shores connect together, so I have a made a quick video of me running across a small section of Hopeport. You can see how easily you can move between rooms, and how the 'rooms' connect together to form a much larger world.|notes=Timestamp in the video: 0:16 / 1:41.|name=|group=}}
==References==
<references/>
69496770c3fd820aeb44868b0a20d43d98f2aeb7
Town Square
0
838
2019
1949
2024-04-10T18:32:38Z
InvalidCards
4
wikitext
text/x-wiki
{{Infobox Location
|name = Town Square
|image = [[File:Town_Square.jpg|280px]]
|release =
|premium =
|episode = Hopeport
}}
The '''Town Square''' is a location in [[Hopeport (location)|Hopeport]].{{CiteTwitter|author=@AndrewCGower|url=https://twitter.com/andrewcgower/status/1776276857706479810|date=5 April 2024|archiveurl=https://web.archive.org/web/20240406173123/https://twitter.com/andrewcgower/status/1776276857706479810|archivedate=6 April 2024|quote=store.steampowered.com/app/2791440/Brighter_Shores/ Quite a few people have been asking how the 'rooms' in Brighter Shores connect together, so I have a made a quick video of me running across a small section of Hopeport. You can see how easily you can move between rooms, and how the 'rooms' connect together to form a much larger world.|notes=Timestamp in the video: 0:00 / 1:41.|name=|group=}} It connects to the [[Eel Street Bridge]] in the south.
==References==
{{Reflist}}
4c6b7fafc4608749d838ba18cf934c645e0e032b
File:Mace.png
6
731
2020
1359
2024-04-10T18:33:10Z
Sam
60
Sam uploaded a new version of [[File:Mace.png]]
wikitext
text/x-wiki
== Summary ==
{{Transparency}}
Derivative from https://brightershores.com/screenshots/03_shade_combat.jpg.
[[Category:Equipment images]]
efd0c43b6fa2a7da4c70430cfcac5260efbf7140
2022
2020
2024-04-10T18:33:25Z
Sam
60
wikitext
text/x-wiki
== Summary ==
Derivative from https://brightershores.com/screenshots/03_shade_combat.jpg.
[[Category:Equipment images]]
346f823e6d67fb046e18e84418bd1236b1585685
Eel Street Bridge
0
809
2021
1863
2024-04-10T18:33:21Z
InvalidCards
4
wikitext
text/x-wiki
{{Infobox Location
|name = Eel Street Bridge
|image = [[File:Eel Street Bridge.jpg|280px]]
|release =
|premium =
|episode =
}}
The '''Eel Street Bridge''' is a location in [[Hopeport (location)|Hopeport]].{{CiteTwitter|author=@AndrewCGower|url=https://twitter.com/andrewcgower/status/1776276857706479810|date=5 April 2024|archiveurl=https://web.archive.org/web/20240406173123/https://twitter.com/andrewcgower/status/1776276857706479810|archivedate=6 April 2024|quote=store.steampowered.com/app/2791440/Brighter_Shores/ Quite a few people have been asking how the 'rooms' in Brighter Shores connect together, so I have a made a quick video of me running across a small section of Hopeport. You can see how easily you can move between rooms, and how the 'rooms' connect together to form a much larger world.|notes=Timestamp in the video: 0:07 / 1:41.|name=|group=}} The bridge connects [[Eel Street]] to the south and the Hopeport [[Town Square]] to the north.
==References==
{{Reflist}}
d15bebfcdb85dda38d531b0561f7c0826bac1110
Eel Street
0
810
2023
1864
2024-04-10T18:34:27Z
InvalidCards
4
wikitext
text/x-wiki
{{Infobox Location
|name = Eel Street
|image = [[File:Eel Street.jpg|280px]]
|release =
|premium =
|episode =
}}
'''Eel Street''' is a location in [[Hopeport (location)|Hopeport]].{{CiteTwitter|author=@AndrewCGower|url=https://twitter.com/andrewcgower/status/1776276857706479810|date=5 April 2024|archiveurl=https://web.archive.org/web/20240406173123/https://twitter.com/andrewcgower/status/1776276857706479810|archivedate=6 April 2024|quote=store.steampowered.com/app/2791440/Brighter_Shores/ Quite a few people have been asking how the 'rooms' in Brighter Shores connect together, so I have a made a quick video of me running across a small section of Hopeport. You can see how easily you can move between rooms, and how the 'rooms' connect together to form a much larger world.|notes=Timestamp in the video: 0:13 / 1:41.|name=|group=}} It is connected to the [[Eel Street Bridge]] to the north and the [[Central Waterfront]] to the south. A [[fishmonger]] is located on Eel Street.
==References==
{{Reflist}}
6834140838f5f36a27bddee6d12a27d0cb0e9599
Central Waterfront
0
811
2024
1865
2024-04-10T18:35:26Z
InvalidCards
4
wikitext
text/x-wiki
{{Infobox Location
|name = Central Waterfront
|image = [[File:Central Waterfront.jpg|280px]]
|release =
|premium =
|episode =
}}
The '''Central Waterfront''' is a location in [[Hopeport (location)|Hopeport]].{{CiteTwitter|author=@AndrewCGower|url=https://twitter.com/andrewcgower/status/1776276857706479810|date=5 April 2024|archiveurl=https://web.archive.org/web/20240406173123/https://twitter.com/andrewcgower/status/1776276857706479810|archivedate=6 April 2024|quote=store.steampowered.com/app/2791440/Brighter_Shores/ Quite a few people have been asking how the 'rooms' in Brighter Shores connect together, so I have a made a quick video of me running across a small section of Hopeport. You can see how easily you can move between rooms, and how the 'rooms' connect together to form a much larger world.|notes=Timestamp in the video: 0:20 / 1:41.|name=|group=}} It connects with [[Eel Street]] to the north and the [[West Waterfront]] to the west.
==References==
{{Reflist}}
2073e82b911b8b9b90cf92e144d11828accf9893
West Waterfront
0
812
2025
1866
2024-04-10T18:36:19Z
InvalidCards
4
wikitext
text/x-wiki
{{Infobox Location
|name = West Waterfront
|image = [[File:West Waterfront.jpg|280px]]
|release =
|premium =
|episode =
}}
The '''West Waterfront''' is a location in [[Hopeport (location)|Hopeport]].{{CiteTwitter|author=@AndrewCGower|url=https://twitter.com/andrewcgower/status/1776276857706479810|date=5 April 2024|archiveurl=https://web.archive.org/web/20240406173123/https://twitter.com/andrewcgower/status/1776276857706479810|archivedate=6 April 2024|quote=store.steampowered.com/app/2791440/Brighter_Shores/ Quite a few people have been asking how the 'rooms' in Brighter Shores connect together, so I have a made a quick video of me running across a small section of Hopeport. You can see how easily you can move between rooms, and how the 'rooms' connect together to form a much larger world.|notes=Timestamp in the video: 0:27 / 1:41.|name=|group=}} It connects to the [[Central Waterfront]] to the east and [[Sea Road]] to the west.
==References==
{{Reflist}}
f158ab2f565c8ceed5ed2aa78cacb78fe0c19b69
Sea Road
0
813
2026
1867
2024-04-10T18:37:01Z
InvalidCards
4
wikitext
text/x-wiki
{{Infobox Location
|name = Sea Road
|image = [[File:Sea Road.jpg|280px]]
|release =
|premium =
|episode =
}}
The '''Sea Road''' is a location in [[Hopeport (location)|Hopeport]].{{CiteTwitter|author=@AndrewCGower|url=https://twitter.com/andrewcgower/status/1776276857706479810|date=5 April 2024|archiveurl=https://web.archive.org/web/20240406173123/https://twitter.com/andrewcgower/status/1776276857706479810|archivedate=6 April 2024|quote=store.steampowered.com/app/2791440/Brighter_Shores/ Quite a few people have been asking how the 'rooms' in Brighter Shores connect together, so I have a made a quick video of me running across a small section of Hopeport. You can see how easily you can move between rooms, and how the 'rooms' connect together to form a much larger world.|notes=Timestamp in the video: 0:37 / 1:41.|name=|group=}} It connects to the [[West Waterfront]] to the east and [[East Beach]] to the south.
==References==
{{Reflist}}
f606c46e14c9747d94b25fa47c0bb9ea19db90cc
East Beach
0
814
2027
1868
2024-04-10T18:37:55Z
InvalidCards
4
wikitext
text/x-wiki
{{Infobox Location
|name = East Beach
|image = [[File:East Beach.jpg|280px]]
|release =
|premium =
|episode =
}}
The '''East Beach''' is a location in [[Hopeport (location)|Hopeport]].{{CiteTwitter|author=@AndrewCGower|url=https://twitter.com/andrewcgower/status/1776276857706479810|date=5 April 2024|archiveurl=https://web.archive.org/web/20240406173123/https://twitter.com/andrewcgower/status/1776276857706479810|archivedate=6 April 2024|quote=store.steampowered.com/app/2791440/Brighter_Shores/ Quite a few people have been asking how the 'rooms' in Brighter Shores connect together, so I have a made a quick video of me running across a small section of Hopeport. You can see how easily you can move between rooms, and how the 'rooms' connect together to form a much larger world.|notes=Timestamp in the video: 0:39 / 1:41.|name=|group=}} It connects to [[Sea Road]] in the north and the [[Seashells Seashore]] to the west.
==References==
{{Reflist}}
3dc95a839873aa2df0651c1edd9fa0849b7d3a9e
Seashells Seashore
0
815
2028
1869
2024-04-10T18:40:13Z
InvalidCards
4
wikitext
text/x-wiki
{{Infobox Location
|name = Seashells Seashore
|image = [[File:Seashells Seashore.jpg|280px]]
|release =
|premium =
|episode =
}}
'''Seashells Seashore''' is a location in [[Hopeport (location)|Hopeport]].{{CiteTwitter|author=@AndrewCGower|url=https://twitter.com/andrewcgower/status/1776276857706479810|date=5 April 2024|archiveurl=https://web.archive.org/web/20240406173123/https://twitter.com/andrewcgower/status/1776276857706479810|archivedate=6 April 2024|quote=store.steampowered.com/app/2791440/Brighter_Shores/ Quite a few people have been asking how the 'rooms' in Brighter Shores connect together, so I have a made a quick video of me running across a small section of Hopeport. You can see how easily you can move between rooms, and how the 'rooms' connect together to form a much larger world.|notes=Timestamp in the video: 0:49 / 1:41.|name=|group=}} It connects to the [[East Beach]] in the east and the [[Jellyfish Landing]] in the west. [[Shell]]s and a [[Rock Pool]] can be found on the beach.
==Trivia==
* This location is most likely named after the well-known {{wp|tongue twister}} "she sells seashells by the seashore".
==References==
{{Reflist}}
828b02151d8cef1264700ec40da971280ddfa076
Jellyfish Landing
0
816
2029
1870
2024-04-10T18:41:19Z
InvalidCards
4
wikitext
text/x-wiki
{{Infobox Location
|name = Jellyfish Landing
|image = [[File:Jellyfish Landing.jpg|280px]]
|release =
|premium =
|episode =
}}
'''Jellyfish Landing''' is a location in [[Hopeport (location)|Hopeport]].{{CiteTwitter|author=@AndrewCGower|url=https://twitter.com/andrewcgower/status/1776276857706479810|date=5 April 2024|archiveurl=https://web.archive.org/web/20240406173123/https://twitter.com/andrewcgower/status/1776276857706479810|archivedate=6 April 2024|quote=store.steampowered.com/app/2791440/Brighter_Shores/ Quite a few people have been asking how the 'rooms' in Brighter Shores connect together, so I have a made a quick video of me running across a small section of Hopeport. You can see how easily you can move between rooms, and how the 'rooms' connect together to form a much larger world.|notes=Timestamp in the video: 0:56 / 1:41.|name=|group=}} It connects to the [[Fallen Monument]] in the north and the [[Seashell Seashore]] in the east. [[Jellyfish]] can be found in the waters of the beach.
==References==
{{Reflist}}
6facf34a756759950eebda76d9db761c27851204
2030
2029
2024-04-10T18:41:37Z
InvalidCards
4
+s
wikitext
text/x-wiki
{{Infobox Location
|name = Jellyfish Landing
|image = [[File:Jellyfish Landing.jpg|280px]]
|release =
|premium =
|episode =
}}
'''Jellyfish Landing''' is a location in [[Hopeport (location)|Hopeport]].{{CiteTwitter|author=@AndrewCGower|url=https://twitter.com/andrewcgower/status/1776276857706479810|date=5 April 2024|archiveurl=https://web.archive.org/web/20240406173123/https://twitter.com/andrewcgower/status/1776276857706479810|archivedate=6 April 2024|quote=store.steampowered.com/app/2791440/Brighter_Shores/ Quite a few people have been asking how the 'rooms' in Brighter Shores connect together, so I have a made a quick video of me running across a small section of Hopeport. You can see how easily you can move between rooms, and how the 'rooms' connect together to form a much larger world.|notes=Timestamp in the video: 0:56 / 1:41.|name=|group=}} It connects to the [[Fallen Monument]] in the north and the [[Seashells Seashore]] in the east. [[Jellyfish]] can be found in the waters of the beach.
==References==
{{Reflist}}
e9b8afee1cc9b73a094f9b5308f3c493a6dfca23
File:Skeleton platebody.png
6
746
2031
1381
2024-04-10T18:42:10Z
Sam
60
Sam uploaded a new version of [[File:Skeleton platebody.png]]
wikitext
text/x-wiki
== Summary ==
{{Transparency}}
Derivative from https://brightershores.com/screenshots/09_himatik_ruins.jpg.
[[Category:Equipment images]]
d8f86345b82132b6d2bf82675e4f6d8b3c07f303
2032
2031
2024-04-10T18:42:21Z
Sam
60
transparent
wikitext
text/x-wiki
== Summary ==
Derivative from https://brightershores.com/screenshots/09_himatik_ruins.jpg.
[[Category:Equipment images]]
99d9f9fa3ca48d11e5091632aca75953885232f9
File:Sword.png
6
739
2033
1374
2024-04-10T18:42:43Z
Sam
60
Sam uploaded a new version of [[File:Sword.png]]
wikitext
text/x-wiki
== Summary ==
{{Transparency}}
Derivative from https://brightershores.com/screenshots/09_himatik_ruins.jpg.
[[Category:Equipment images]]
d8f86345b82132b6d2bf82675e4f6d8b3c07f303
2035
2033
2024-04-10T18:42:56Z
Sam
60
wikitext
text/x-wiki
== Summary ==
Derivative from https://brightershores.com/screenshots/09_himatik_ruins.jpg.
[[Category:Equipment images]]
99d9f9fa3ca48d11e5091632aca75953885232f9
Fallen Monument
0
817
2034
1871
2024-04-10T18:42:51Z
InvalidCards
4
wikitext
text/x-wiki
{{Infobox Location
|name = Fallen Monument
|image = [[File:Fallen Monument.jpg|280px]]
|release =
|premium =
|episode =
}}
The '''Fallen Monument''' is a location in [[Hopeport (location)|Hopeport]].{{CiteTwitter|author=@AndrewCGower|url=https://twitter.com/andrewcgower/status/1776276857706479810|date=5 April 2024|archiveurl=https://web.archive.org/web/20240406173123/https://twitter.com/andrewcgower/status/1776276857706479810|archivedate=6 April 2024|quote=store.steampowered.com/app/2791440/Brighter_Shores/ Quite a few people have been asking how the 'rooms' in Brighter Shores connect together, so I have a made a quick video of me running across a small section of Hopeport. You can see how easily you can move between rooms, and how the 'rooms' connect together to form a much larger world.|notes=Timestamp in the video: 1:03 / 1:41.|name=|group=}} It connects to the [[Crater]] in the north and the [[Jellyfish Landing]] in the south. [[Carnivorous Plant]]s can be found throughout the area.
==References==
{{Reflist}}
78b5594de479b7b377044215b883b1e6b95986fa
Crater
0
820
2036
1872
2024-04-10T18:43:47Z
InvalidCards
4
wikitext
text/x-wiki
{{Infobox Location
|name = Crater
|image = [[File:Crater.jpg|280px]]
|release =
|premium =
|episode =
}}
The '''Crater''' is a location in [[Hopeport (location)|Hopeport]].{{CiteTwitter|author=@AndrewCGower|url=https://twitter.com/andrewcgower/status/1776276857706479810|date=5 April 2024|archiveurl=https://web.archive.org/web/20240406173123/https://twitter.com/andrewcgower/status/1776276857706479810|archivedate=6 April 2024|quote=store.steampowered.com/app/2791440/Brighter_Shores/ Quite a few people have been asking how the 'rooms' in Brighter Shores connect together, so I have a made a quick video of me running across a small section of Hopeport. You can see how easily you can move between rooms, and how the 'rooms' connect together to form a much larger world.|notes=Timestamp in the video: 1:23 / 1:41.|name=|group=}} It connects to the [[Wasteland]] in the north and the [[Fallen Monument]] in the south. [[Giant Ant]]s and [[Hogberries]] can be found in the Crater.
Four [[Monument Piece]]s are placed throughout the area.
==References==
{{Reflist}}
505427a94e11fefa96bed0031fa2b7695ac6e029
Wasteland
0
822
2037
1873
2024-04-10T18:44:18Z
InvalidCards
4
wikitext
text/x-wiki
{{Infobox Location
|name = Wasteland
|image = [[File:Wasteland.jpg|280px]]
|release =
|premium =
|episode =
}}
The '''Wasteland''' is a location in [[Hopeport (location)|Hopeport]].{{CiteTwitter|author=@AndrewCGower|url=https://twitter.com/andrewcgower/status/1776276857706479810|date=5 April 2024|archiveurl=https://web.archive.org/web/20240406173123/https://twitter.com/andrewcgower/status/1776276857706479810|archivedate=6 April 2024|quote=store.steampowered.com/app/2791440/Brighter_Shores/ Quite a few people have been asking how the 'rooms' in Brighter Shores connect together, so I have a made a quick video of me running across a small section of Hopeport. You can see how easily you can move between rooms, and how the 'rooms' connect together to form a much larger world.|notes=Timestamp in the video: 1:34 / 1:41.|name=|group=}} It connects to the [[Crater]] in the south.
==References==
{{Reflist}}
6cf8db8b3f57495c1cbaa9f16ba1af0db92a30ef
Module:Infobox Monster
828
853
2038
1981
2024-04-10T18:47:13Z
InvalidCards
4
Scribunto
text/plain
local p = {}
local Infobox = require('Module:Infobox')
local parse = require('Module:Param Parse')
function p.main(frame)
local args = frame:getParent().args
local config = {
infobox_name = 'Monster',
}
local params = {
parse.name,
parse.image,
parse.release,
parse.premium,
parse.episode,
{name = 'level', func = parse.number}, -- TODO - same as below
{name = 'hp', func = parse.number}, -- TODO - move to Module:Param Parse once more details are available, and create smw_property
parse.variant,
}
local infobox = Infobox.new(config, params, args)
infobox
:add_row{
{tag='th', content=Infobox.param('name'), class='infobox-header', colspan='20'},
}
:add_row{
{tag='td', content=Infobox.param('image'), class='infobox-image', colspan='20'},
}
:add_row{
{tag='th', content='Release', colspan="6"},
{tag='td', content=Infobox.param('release'), colspan="14"},
}
:add_row{
{tag='th', content='[[Episode]]', colspan="6"},
{tag='td', content=Infobox.param('episode'), colspan="14"},
}
:add_row{
{tag='th', content='[[Premium Pass|Premium]]', colspan="6"},
{tag='td', content=Infobox.param('premium'), colspan="14"},
}
:add_row{
{tag='th', content='[[Level]]', colspan="6"},
{tag='td', content=Infobox.param('level'), colspan="14"}
}
:add_row{
{tag='th', content='[[Health]]', colspan="6"},
{tag='td', content=Infobox.param('hp'), colspan="14"},
}
:add_row{
{tag='th', content='[[Variant]] of', colspan="6"},
{tag='td', content=Infobox.param('variant'), colspan="14"},
}
:pad(20)
return infobox
end
return p
54af462ec6ca741859da83bde3cd1cb9792fc9ce
Grumpy Pirate
0
450
2039
1984
2024-04-10T18:47:56Z
InvalidCards
4
+level
wikitext
text/x-wiki
{{Infobox Monster
|name = Grumpy Pirate
|image =
|release = Q3 2024
|episode =
|premium =
|level = 49
|hp =
|variant = [[Pirate]]
}}
'''Grumpy Pirate''' is a [[monster]] located in the [[Pirate Hideout]].{{CiteTwitter|url=https://twitter.com/AndrewCGower/status/1769048510177948004|author=Andrew Gower|date=16 March 2024|archiveurl=https://archive.is/whgCd|archivedate=22 March 2024|notes=|name=}}
==References==
{{Reflist}}
7ca5415172716ce5b47afc1cfdac9d66d64b8700
Jellyfish
0
848
2040
1917
2024-04-10T18:48:50Z
Sam
60
wikitext
text/x-wiki
{{Interactcategory|name=Jellyfish|type=[[monster]]}}
*[[Tiderider]]
d4c63348ad1d17945d56e5a33581967a4113aeb4
Carnivorous Plant
0
876
2041
2024-04-10T18:49:50Z
InvalidCards
4
Created page with "{{Interactcategory|name=Carnivorous Plants|type=[[monster]]}} * [[Greenlid Carnivorous Plant]]"
wikitext
text/x-wiki
{{Interactcategory|name=Carnivorous Plants|type=[[monster]]}}
* [[Greenlid Carnivorous Plant]]
8251b29fe9e4c7730156c55221cef1943eb9ecc2
Greenlid Carnivorous Plant
0
859
2042
1943
2024-04-10T18:50:08Z
InvalidCards
4
InvalidCards moved page [[Greenlid]] to [[Greenlid Carnivorous Plant]] without leaving a redirect: Full name
wikitext
text/x-wiki
{{Infobox Monster
|name = Greenlid
|image = [[File:Greenlid.PNG]]
|release = Q3 2024
|episode =
|premium =
|hp =
}}
'''Greenlids''' are monsters found by the [[Fallen Monument]]. They are part of the [[Carnivorous Plant]] category.
0c125fe8d27b54d62d4e9d3c6bd03e3fb52d32ac
2044
2042
2024-04-10T18:51:54Z
InvalidCards
4
wikitext
text/x-wiki
{{Infobox Monster
|name = Greenlid
|image = [[File:Greenlid Carnivorous Plant.png]]
|release = Q3 2024
|episode =
|premium =
|level = 12
|hp =
|variant = [[Carnivorous Plant]]
}}
'''Greenlid Carnivorous Plants''' are monsters found by the [[Fallen Monument]].{{CiteTwitter|author=@AndrewCGower|url=https://twitter.com/andrewcgower/status/1776276857706479810|date=5 April 2024|archiveurl=https://web.archive.org/web/20240406173123/https://twitter.com/andrewcgower/status/1776276857706479810|archivedate=6 April 2024|quote=store.steampowered.com/app/2791440/Brighter_Shores/ Quite a few people have been asking how the 'rooms' in Brighter Shores connect together, so I have a made a quick video of me running across a small section of Hopeport. You can see how easily you can move between rooms, and how the 'rooms' connect together to form a much larger world.|notes=Timestamp in the video: 1:03 / 1:41.|name=|group=}}
==References==
{{Reflist}}
0e27bcc82776676bafa841200cda798ff378abd9
File:Greenlid Carnivorous Plant.png
6
860
2043
1942
2024-04-10T18:50:37Z
InvalidCards
4
InvalidCards moved page [[File:Greenlid.PNG]] to [[File:Greenlid Carnivorous Plant.png]] without leaving a redirect: Full name
wikitext
text/x-wiki
== Summary ==
A Greenlid monster
7c94bb88d44dfd0357d6248b6cfa1544a7741909
File:Steel legs.png
6
745
2045
1380
2024-04-10T18:52:18Z
Sam
60
Sam uploaded a new version of [[File:Steel legs.png]]
wikitext
text/x-wiki
== Summary ==
{{Transparency}}
Derivative from https://brightershores.com/screenshots/09_himatik_ruins.jpg.
[[Category:Equipment images]]
d8f86345b82132b6d2bf82675e4f6d8b3c07f303
2046
2045
2024-04-10T18:52:25Z
Sam
60
wikitext
text/x-wiki
== Summary ==
Derivative from https://brightershores.com/screenshots/09_himatik_ruins.jpg.
[[Category:Equipment images]]
99d9f9fa3ca48d11e5091632aca75953885232f9
File:Drone Giant Ant.png
6
877
2047
2024-04-10T18:55:41Z
Sam
60
Drone variant
wikitext
text/x-wiki
== Summary ==
Drone variant
2aa93d4b76456e909169598bdac89a74dc7c8738
2051
2047
2024-04-10T18:59:41Z
InvalidCards
4
InvalidCards moved page [[File:Drone.PNG]] to [[File:Drone Giant Ant.png]] without leaving a redirect
wikitext
text/x-wiki
== Summary ==
Drone variant
2aa93d4b76456e909169598bdac89a74dc7c8738
Pearlcap Crab
0
878
2048
2024-04-10T18:56:49Z
InvalidCards
4
Created page with "{{Infobox Monster |name = Grumpy Pirate |image = |release = Q3 2024 |episode = |premium = |level = 30 |hp = |variant = [[Crab]] }} '''Grumpy Pirate''' is a [[monster]] located on the [[East Beach]].{{CiteTwitter|author=@AndrewCGower|url=https://twitter.com/andrewcgower/status/1776276857706479810|date=5 April 2024|archiveurl=https://web.archive.org/web/20240406173123/https://twitter.com/andrewcgower/status/1776276857706479810|archivedate=6 April 2024|quote=store.steampo..."
wikitext
text/x-wiki
{{Infobox Monster
|name = Grumpy Pirate
|image =
|release = Q3 2024
|episode =
|premium =
|level = 30
|hp =
|variant = [[Crab]]
}}
'''Grumpy Pirate''' is a [[monster]] located on the [[East Beach]].{{CiteTwitter|author=@AndrewCGower|url=https://twitter.com/andrewcgower/status/1776276857706479810|date=5 April 2024|archiveurl=https://web.archive.org/web/20240406173123/https://twitter.com/andrewcgower/status/1776276857706479810|archivedate=6 April 2024|quote=store.steampowered.com/app/2791440/Brighter_Shores/ Quite a few people have been asking how the 'rooms' in Brighter Shores connect together, so I have a made a quick video of me running across a small section of Hopeport. You can see how easily you can move between rooms, and how the 'rooms' connect together to form a much larger world.|notes=Timestamp in the video: 0:39 / 1:41.|name=|group=}}
==References==
{{Reflist}}
7ab151a010ceaf4161360a4ed1338c51673fde99
Crab
0
879
2049
2024-04-10T18:57:15Z
InvalidCards
4
Created page with "{{Interactcategory|name=Crabs|type=[[monster]]}} * [[Pearlcap Crab]]"
wikitext
text/x-wiki
{{Interactcategory|name=Crabs|type=[[monster]]}}
* [[Pearlcap Crab]]
0156c9569c29203b354f257cdb69659d1d43ee25
Template:Infobox Monster/doc
10
855
2050
1914
2024-04-10T18:58:12Z
InvalidCards
4
wikitext
text/x-wiki
{{Documentation}}
==Parameters==
===name===
The name of the monster.
===image===
The image of the monster.
===release===
The release date of the monster.
===premium===
Whether or not this monster requires a [[premium pass]].
===episode===
The episode of the monster.
One of:
* Hopeport
* Hopeforest
* Mine of Mantuban
* Crenopolis
===level===
The level of the monster.
===hp===
The health of the monster.
===variant===
What base category the monster is a variant of.
==Quick copy==
<pre>{{Infobox NPC
|name =
|image =
|release =
|premium =
|episode =
|level =
|hp =
|variant =
}}</pre>
<includeonly>[[Category:Infobox templates]]</includeonly>
115c7cbee1d47df292d458c4371fa6c8ab05ab3d
Drone Giant Ant
0
880
2052
2024-04-10T19:00:52Z
Sam
60
created page
wikitext
text/x-wiki
{{Infobox Monster
|name = Drone
|image = [[File:Drone_Giant_Ant.png]]
|release = Q3 2024
|episode =
|premium =
|level = 44
|hp =
|variant = [[Giant Ant]]
}}
==References==
{{Reflist}}
ae832aac4f49183c1e9ade22e36f57c16c5aa84e
Giant Ant
0
881
2053
2024-04-10T19:01:48Z
Sam
60
created page
wikitext
text/x-wiki
{{Interactcategory|name=Giant Ants|type=[[monster]]}}
* [[Drone Giant Ant]]
24086a96c7214bd7da4c0a08f53641c97d0c96dd
Drone Giant Ant
0
880
2054
2052
2024-04-10T19:04:33Z
Sam
60
wikitext
text/x-wiki
{{Infobox Monster
|name = Drone
|image = [[File:Drone_Giant_Ant.png]]
|release = Q3 2024
|episode =
|premium =
|level = 44
|hp =
|variant = [[Giant Ant]]
}}
'''Drone Giant Ants''' are monsters found in the [[Crater]].{{CiteTwitter|author=@AndrewCGower|url=https://twitter.com/andrewcgower/status/1776276857706479810|date=5 April 2024|archiveurl=https://web.archive.org/web/20240406173123/https://twitter.com/andrewcgower/status/1776276857706479810|archivedate=6 April 2024|quote=store.steampowered.com/app/2791440/Brighter_Shores/ Quite a few people have been asking how the 'rooms' in Brighter Shores connect together, so I have a made a quick video of me running across a small section of Hopeport. You can see how easily you can move between rooms, and how the 'rooms' connect together to form a much larger world.|notes=Timestamp in the video: 1:30 / 1:41.|name=|group=}}
==References==
{{Reflist}}
8e44e9cd810fad68e2e4b2843e021b639242dbb2
2078
2054
2024-04-10T19:14:45Z
InvalidCards
4
wikitext
text/x-wiki
{{Infobox Monster
|name = Drone
|image = [[File:Drone_Giant_Ant.png]]
|release = Q3 2024
|episode =
|premium =
|level = 44
|hp =
|variant = [[Giant Ant]]
|passive = Yes
}}
'''Drone Giant Ants''' are monsters found in the [[Crater]].{{CiteTwitter|author=@AndrewCGower|url=https://twitter.com/andrewcgower/status/1776276857706479810|date=5 April 2024|archiveurl=https://web.archive.org/web/20240406173123/https://twitter.com/andrewcgower/status/1776276857706479810|archivedate=6 April 2024|quote=store.steampowered.com/app/2791440/Brighter_Shores/ Quite a few people have been asking how the 'rooms' in Brighter Shores connect together, so I have a made a quick video of me running across a small section of Hopeport. You can see how easily you can move between rooms, and how the 'rooms' connect together to form a much larger world.|notes=Timestamp in the video: 1:30 / 1:41.|name=|group=}}
==References==
{{Reflist}}
d8d87f08499e9033c3f31b1ed5885482bdc78ae0
File:Passive activity icon.png
6
882
2055
2024-04-10T19:04:59Z
InvalidCards
4
wikitext
text/x-wiki
da39a3ee5e6b4b0d3255bfef95601890afd80709
Professions
0
56
2056
1475
2024-04-10T19:06:17Z
InvalidCards
4
/* Passive training */
wikitext
text/x-wiki
'''Professions''' are skills that [[player]]s can train and utilise in [[Brighter Shores]]. Most professions can either be trained by the player actively playing the game, or passively while the game is closed.
As the player progresses through the game, more professions will become available for the player to learn. Players aren't limited to one profession at a time; they can utilise multiple at once.{{CiteGeneral|url=https://www.gamesradar.com/runescape-creator-answers-our-biggest-questions-about-his-new-mmo-brighter-shores-classes-professions-monetization-and-a-ttrpg-open-world/|title=RuneScape creator answers our biggest questions about his new MMO Brighter Shores: classes, professions, monetization, and a TTRPG open world|author=Austin Wood|date=23 March 2024|accessdate=23 March 2024|archiveurl=https://archive.is/AxMwI|archivedate=23 March 2024|name=griv}}
==Passive training==
Unlike other similar MMOs, players can continue to perform certain profession-related activities while logged out of the game. Activities eligible for passive training are marked with a moon icon [[File:Passive activity icon.png|18px]].
==List of professions==
{| class="wikitable"
! colspan="2" | Name !! Uses
|-
| [[File:Profession fisher.png|30px|link=Fisher]] || [[Fisher]] || Catching various [[fish]]
|-
| [[File:Profession forager.png|30px|link=Forager]] || [[Forager]] || Gathering items
|-
| || [[Chef]] || Cooking [[food]] items
|-
| [[File:Woodcutter icon.png|30px|link=Woodcutter]] || [[Woodcutter]] || Chopping down [[tree]]s
|-
| || [[Miner]] || Mining [[mineral]]s
|-
| [[File:Profession alchemist.png|30px|link=Alchemist]] || [[Alchemist]] || Brewing [[potion]]s
|-
| || [[Stonemason]] ||
|-
| || [[Merchant]] ||
|-
| || [[Blacksmith]] ||
|}
==Gallery==
<gallery mode="packed" heights="160">
File:Professions preview 1.jpg|Fisher, Forager, Chef
File:Professions preview 2.jpg|Woodcutter, Miner, Alchemist
File:Professions preview 3.jpg|Stonemason, Merchant, Blacksmith
</gallery>
==References==
{{Reflist}}
{{Professions}}
{{Mechanics}}
35aad2932776f15eeed3f6dc0a68bbb24a31175a
Module:Param Parse
828
673
2057
1982
2024-04-10T19:07:52Z
InvalidCards
4
Scribunto
text/plain
--[=[
-- Standardized functions to parse Infobox params
--]=]
-- <nowiki>
local parse = {}
-- Generic functions --
-----------------------
-- Standardized "has content" function
function parse.has_content(arg)
-- Return arg if any non-whitespace character is found
return string.match(arg or '', '%S') and arg or nil
end
-- Standardized numbers
function parse.number(num)
num = string.gsub(num or '',',','')
return tonumber(num)
end
-- Yes/No
local yes_no = {
['Yes'] = true,
['No'] = false,
['N/A'] = 'NIL',
}
function parse.yes_no(text)
if yes_no[text] ~= nil then
return text
end
return nil
end
function parse.yes_no_smw(text)
if text == 'N/A' then
return nil
end
return yes_no[text] or nil
end
-- Premade Params --
--------------------
-- Standardized name function
parse.name = {
name = 'name',
func = parse.has_content,
smw_property = 'Name',
}
-- Standardized image function
function parse.image_func(img)
if img and string.match(img, '%[%[File:.*%]%]') then
return img
end
return nil
end
function parse.image_smw(img)
return img and string.match(img, "File:.*%.%w%w%w") or nil
end
parse.image = {
name = 'image',
func = parse.image_func,
smw_property = 'Image',
smw_func = parse.image_smw,
empty = '[[Special:Upload|Please upload an image!]]',
category_incomplete = 'Needs image',
}
-- Episode
local valid_episodes = {['Hopeport'] = 1, ['Hopeforest'] = 1, ['Mine of Mantuban'] = 1, ['Crenopolis'] = 1}
function parse.episode_func(episode)
if valid_episodes[episode] then
return '[[File:'..episode..' episode icon.png|18px]] [['..episode..']]'
end
return nil
end
function parse.episode_smw(episode)
if valid_episodes[episode] then
return episode
end
return nil
end
parse.episode = {
name = 'episode',
func = parse.episode_func,
smw_property = 'Episode',
smw_func = parse.episode_smw,
category_incomplete = 'Needs episode',
}
-- Premium
parse.premium = {
name = 'premium',
func = parse.yes_no,
smw_property = 'Premium',
smw_func = parse.yes_no,
category_incomplete = 'Needs premium status',
}
-- Release (TODO)
parse.release = {
name = 'release',
func = parse.has_content,
}
-- Profession (TODO)
parse.profession = {
name = 'profession',
func = parse.has_content,
category_incomplete = 'Needs profession',
smw_property = 'Profession' -- TODO - Need to create property page
}
parse.variant = {
name = 'variant',
func = parse.has_content,
category_incomplete = 'Needs variant details',
smw_property = 'Variant of' -- TODO - Need to create property page
}
parse.passive = {
name = 'passive',
func = parse.yes_no,
smw_property = 'Passive',
smw_func = parse.yes_no,
category_incomplete = 'Needs passiveness'
}
return parse
-- </nowiki>
7a307a8fb46b5edd36c0d017d598ab9acacc76cf
File:Eel Street Bridge.jpg
6
883
2058
2024-04-10T19:08:02Z
Yellowsap
63
wikitext
text/x-wiki
da39a3ee5e6b4b0d3255bfef95601890afd80709
2059
2058
2024-04-10T19:08:12Z
Yellowsap
63
wikitext
text/x-wiki
{{Fair use|link=https://twitter.com/AndrewCGower/status/1776276857706479810}}
2d80bc546769443ab1e88c27592359609c85832a
Module:Infobox Monster
828
853
2060
2038
2024-04-10T19:08:49Z
InvalidCards
4
Scribunto
text/plain
local p = {}
local Infobox = require('Module:Infobox')
local parse = require('Module:Param Parse')
function p.main(frame)
local args = frame:getParent().args
local config = {
infobox_name = 'Monster',
}
local params = {
parse.name,
parse.image,
parse.release,
parse.premium,
parse.episode,
{name = 'level', func = parse.number}, -- TODO - same as below
{name = 'hp', func = parse.number}, -- TODO - move to Module:Param Parse once more details are available, and create smw_property
parse.variant,
parse.passive,
}
local infobox = Infobox.new(config, params, args)
infobox
:add_row{
{tag='th', content=Infobox.param('name'), class='infobox-header', colspan='20'},
}
:add_row{
{tag='td', content=Infobox.param('image'), class='infobox-image', colspan='20'},
}
:add_row{
{tag='th', content='Release', colspan="6"},
{tag='td', content=Infobox.param('release'), colspan="14"},
}
:add_row{
{tag='th', content='[[Episode]]', colspan="6"},
{tag='td', content=Infobox.param('episode'), colspan="14"},
}
:add_row{
{tag='th', content='[[Premium Pass|Premium]]', colspan="6"},
{tag='td', content=Infobox.param('premium'), colspan="14"},
}
:add_row{
{tag='th', content='[[Level]]', colspan="6"},
{tag='td', content=Infobox.param('level'), colspan="14"}
}
:add_row{
{tag='th', content='[[Health]]', colspan="6"},
{tag='td', content=Infobox.param('hp'), colspan="14"},
}
:add_row{
{tag='th', content='[[Variant]] of', colspan="6"},
{tag='td', content=Infobox.param('variant'), colspan="14"},
}
:add_row{
{tag='th', content='[[File:Passive activity icon.png|14px]] [[Passive activity]]', colspan="6"},
{tag='td', content=Infobox.param('passive'), colspan="14"},
}
:pad(20)
return infobox
end
return p
7b0a97a3303034abb547d4898a435cb1c9e14a9c
2061
2060
2024-04-10T19:09:17Z
InvalidCards
4
too big!
Scribunto
text/plain
local p = {}
local Infobox = require('Module:Infobox')
local parse = require('Module:Param Parse')
function p.main(frame)
local args = frame:getParent().args
local config = {
infobox_name = 'Monster',
}
local params = {
parse.name,
parse.image,
parse.release,
parse.premium,
parse.episode,
{name = 'level', func = parse.number}, -- TODO - same as below
{name = 'hp', func = parse.number}, -- TODO - move to Module:Param Parse once more details are available, and create smw_property
parse.variant,
parse.passive,
}
local infobox = Infobox.new(config, params, args)
infobox
:add_row{
{tag='th', content=Infobox.param('name'), class='infobox-header', colspan='20'},
}
:add_row{
{tag='td', content=Infobox.param('image'), class='infobox-image', colspan='20'},
}
:add_row{
{tag='th', content='Release', colspan="6"},
{tag='td', content=Infobox.param('release'), colspan="14"},
}
:add_row{
{tag='th', content='[[Episode]]', colspan="6"},
{tag='td', content=Infobox.param('episode'), colspan="14"},
}
:add_row{
{tag='th', content='[[Premium Pass|Premium]]', colspan="6"},
{tag='td', content=Infobox.param('premium'), colspan="14"},
}
:add_row{
{tag='th', content='[[Level]]', colspan="6"},
{tag='td', content=Infobox.param('level'), colspan="14"}
}
:add_row{
{tag='th', content='[[Health]]', colspan="6"},
{tag='td', content=Infobox.param('hp'), colspan="14"},
}
:add_row{
{tag='th', content='[[Variant]] of', colspan="6"},
{tag='td', content=Infobox.param('variant'), colspan="14"},
}
:add_row{
{tag='th', content='[[File:Passive activity icon.png|14px]] [[Passive activity|Passive]]', colspan="6"},
{tag='td', content=Infobox.param('passive'), colspan="14"},
}
:pad(20)
return infobox
end
return p
640bc3804ab2961ffbe921dcff108b92a5cc0f13
2064
2061
2024-04-10T19:09:45Z
InvalidCards
4
link icon as well
Scribunto
text/plain
local p = {}
local Infobox = require('Module:Infobox')
local parse = require('Module:Param Parse')
function p.main(frame)
local args = frame:getParent().args
local config = {
infobox_name = 'Monster',
}
local params = {
parse.name,
parse.image,
parse.release,
parse.premium,
parse.episode,
{name = 'level', func = parse.number}, -- TODO - same as below
{name = 'hp', func = parse.number}, -- TODO - move to Module:Param Parse once more details are available, and create smw_property
parse.variant,
parse.passive,
}
local infobox = Infobox.new(config, params, args)
infobox
:add_row{
{tag='th', content=Infobox.param('name'), class='infobox-header', colspan='20'},
}
:add_row{
{tag='td', content=Infobox.param('image'), class='infobox-image', colspan='20'},
}
:add_row{
{tag='th', content='Release', colspan="6"},
{tag='td', content=Infobox.param('release'), colspan="14"},
}
:add_row{
{tag='th', content='[[Episode]]', colspan="6"},
{tag='td', content=Infobox.param('episode'), colspan="14"},
}
:add_row{
{tag='th', content='[[Premium Pass|Premium]]', colspan="6"},
{tag='td', content=Infobox.param('premium'), colspan="14"},
}
:add_row{
{tag='th', content='[[Level]]', colspan="6"},
{tag='td', content=Infobox.param('level'), colspan="14"}
}
:add_row{
{tag='th', content='[[Health]]', colspan="6"},
{tag='td', content=Infobox.param('hp'), colspan="14"},
}
:add_row{
{tag='th', content='[[Variant]] of', colspan="6"},
{tag='td', content=Infobox.param('variant'), colspan="14"},
}
:add_row{
{tag='th', content='[[File:Passive activity icon.png|14px|link=Passive activity]] [[Passive activity|Passive]]', colspan="6"},
{tag='td', content=Infobox.param('passive'), colspan="14"},
}
:pad(20)
return infobox
end
return p
cb32d3e980e06afa803352b79437ec537e426a18
File:Eel Street.jpg
6
884
2062
2024-04-10T19:09:29Z
Yellowsap
63
wikitext
text/x-wiki
da39a3ee5e6b4b0d3255bfef95601890afd80709
2063
2062
2024-04-10T19:09:38Z
Yellowsap
63
wikitext
text/x-wiki
{{Fair use|link=https://twitter.com/AndrewCGower/status/1776276857706479810}}
2d80bc546769443ab1e88c27592359609c85832a
Template:Infobox Monster/doc
10
855
2065
2050
2024-04-10T19:10:34Z
InvalidCards
4
wikitext
text/x-wiki
{{Documentation}}
==Parameters==
===name===
The name of the monster.
===image===
The image of the monster.
===release===
The release date of the monster.
===premium===
Whether or not this monster requires a [[premium pass]].
===episode===
The episode of the monster.
One of:
* Hopeport
* Hopeforest
* Mine of Mantuban
* Crenopolis
===level===
The level of the monster.
===hp===
The health of the monster.
===variant===
What base category the monster is a variant of.
===passive===
Whether or not the monster is passively fightable, indicated by a moon icon [[File:Passive activity icon.png|18px]].
==Quick copy==
<pre>{{Infobox NPC
|name =
|image =
|release =
|premium =
|episode =
|level =
|hp =
|variant =
|passive =
}}</pre>
<includeonly>[[Category:Infobox templates]]</includeonly>
c9c08791c532966557e4a31cd8a6a5b4510a5c5d
File:Central Waterfront.jpg
6
885
2066
2024-04-10T19:10:53Z
Yellowsap
63
wikitext
text/x-wiki
da39a3ee5e6b4b0d3255bfef95601890afd80709
2067
2066
2024-04-10T19:11:00Z
Yellowsap
63
wikitext
text/x-wiki
{{Fair use|link=https://twitter.com/AndrewCGower/status/1776276857706479810}}
2d80bc546769443ab1e88c27592359609c85832a
Pearlcap Crab
0
878
2068
2048
2024-04-10T19:12:02Z
InvalidCards
4
wikitext
text/x-wiki
{{Infobox Monster
|name = Grumpy Pirate
|image =
|release = Q3 2024
|episode =
|premium =
|level = 30
|hp =
|variant = [[Crab]]
|passive = Yes
}}
'''Grumpy Pirate''' is a [[monster]] located on the [[East Beach]].{{CiteTwitter|author=@AndrewCGower|url=https://twitter.com/andrewcgower/status/1776276857706479810|date=5 April 2024|archiveurl=https://web.archive.org/web/20240406173123/https://twitter.com/andrewcgower/status/1776276857706479810|archivedate=6 April 2024|quote=store.steampowered.com/app/2791440/Brighter_Shores/ Quite a few people have been asking how the 'rooms' in Brighter Shores connect together, so I have a made a quick video of me running across a small section of Hopeport. You can see how easily you can move between rooms, and how the 'rooms' connect together to form a much larger world.|notes=Timestamp in the video: 0:39 / 1:41.|name=|group=}}
==References==
{{Reflist}}
0dc65ca449a98e25dfaa08bcad9ea5745fdbc41b
2086
2068
2024-04-10T19:17:26Z
InvalidCards
4
wikitext
text/x-wiki
{{Infobox Monster
|name = Grumpy Pirate
|image =
|release = Q3 2024
|episode =
|premium =
|level = 30
|hp =
|variant = [[Crab]]
|passive = Yes
}}
'''Pearlcap Crabs''' are [[monster]]s located on the [[East Beach]].{{CiteTwitter|author=@AndrewCGower|url=https://twitter.com/andrewcgower/status/1776276857706479810|date=5 April 2024|archiveurl=https://web.archive.org/web/20240406173123/https://twitter.com/andrewcgower/status/1776276857706479810|archivedate=6 April 2024|quote=store.steampowered.com/app/2791440/Brighter_Shores/ Quite a few people have been asking how the 'rooms' in Brighter Shores connect together, so I have a made a quick video of me running across a small section of Hopeport. You can see how easily you can move between rooms, and how the 'rooms' connect together to form a much larger world.|notes=Timestamp in the video: 0:39 / 1:41.|name=|group=}}
==References==
{{Reflist}}
29722047cd1327e931a0162852636671a96fe529
Monsters
0
377
2069
1944
2024-04-10T19:12:44Z
Sam
60
/* Categories */
wikitext
text/x-wiki
'''Monsters''' are creatures in [[Brighter Shores]] that can be attacked. They are fought in [[combat]] for their loot, including valuable currency items.
There are many monsters in Brighter Shores, including:
* [[Firetoad]]
* [[Mawchest]]
* [[Punkupine]]
* [[Slime Fiend]]
* [[Sneaky Thief]]
* [[Wailing Shade]]
==Categories==
* [[Carnivorous Plant]]
* [[Crab]]
* [[Giant Ant]]
* [[Jellyfish]]
* [[Pirate]]
{{Mechanics}}
0a36a75d641c39a7c37b18e4a41bc0b383201378
Tiderider Jellyfish
0
849
2070
1945
2024-04-10T19:12:52Z
InvalidCards
4
InvalidCards moved page [[Tiderider]] to [[Tiderider Jellyfish]] without leaving a redirect
wikitext
text/x-wiki
{{Infobox Monster
|name = Tiderider
|image = [[File:Tiderider.PNG]]
|release = Q3 2024
|episode = Hopeport
|premium = No
|hp =
}}
'''Tiderider''' is a [[monster]] located in [[Jellyfish Landing]]. It is part of the [[Jellyfish]] category.
8405c8f0a210a59cd625cc6508ec3ef350ea72c0
2074
2070
2024-04-10T19:13:39Z
InvalidCards
4
wikitext
text/x-wiki
{{Infobox Monster
|name = Tiderider
|image = [[File:Tiderider.PNG]]
|release = Q3 2024
|episode = Hopeport
|premium =
|level = 39
|hp =
|variant = [[Jellyfish]]
|passive = Yes
}}
'''Tiderider''' is a [[monster]] located in [[Jellyfish Landing]]. It is part of the [[Jellyfish]] category.
c10e9a6c671a266c63dafbe423919ee3308e971e
File:West Waterfront.jpg
6
886
2071
2024-04-10T19:12:54Z
Yellowsap
63
wikitext
text/x-wiki
da39a3ee5e6b4b0d3255bfef95601890afd80709
2072
2071
2024-04-10T19:13:01Z
Yellowsap
63
wikitext
text/x-wiki
{{Fair use|link=https://twitter.com/AndrewCGower/status/1776276857706479810}}
2d80bc546769443ab1e88c27592359609c85832a
Jellyfish
0
848
2073
2040
2024-04-10T19:13:04Z
InvalidCards
4
wikitext
text/x-wiki
{{Interactcategory|name=Jellyfish|type=[[monster]]}}
*[[Tiderider Jellyfish]]
7ac7349cf1b01c9ee0badcd9a5f0e57feb88b13c
Greenlid Carnivorous Plant
0
859
2075
2044
2024-04-10T19:14:06Z
InvalidCards
4
wikitext
text/x-wiki
{{Infobox Monster
|name = Greenlid
|image = [[File:Greenlid Carnivorous Plant.png]]
|release = Q3 2024
|episode =
|premium =
|level = 12
|hp =
|variant = [[Carnivorous Plant]]
|passive = No
}}
'''Greenlid Carnivorous Plants''' are monsters found by the [[Fallen Monument]].{{CiteTwitter|author=@AndrewCGower|url=https://twitter.com/andrewcgower/status/1776276857706479810|date=5 April 2024|archiveurl=https://web.archive.org/web/20240406173123/https://twitter.com/andrewcgower/status/1776276857706479810|archivedate=6 April 2024|quote=store.steampowered.com/app/2791440/Brighter_Shores/ Quite a few people have been asking how the 'rooms' in Brighter Shores connect together, so I have a made a quick video of me running across a small section of Hopeport. You can see how easily you can move between rooms, and how the 'rooms' connect together to form a much larger world.|notes=Timestamp in the video: 1:03 / 1:41.|name=|group=}}
==References==
{{Reflist}}
c202b62897e71abdbceb17ed895f0e926030a730
File:Sea Road.jpg
6
887
2076
2024-04-10T19:14:14Z
Yellowsap
63
wikitext
text/x-wiki
da39a3ee5e6b4b0d3255bfef95601890afd80709
2077
2076
2024-04-10T19:14:22Z
Yellowsap
63
wikitext
text/x-wiki
{{Fair use|link=https://twitter.com/AndrewCGower/status/1776276857706479810}}
2d80bc546769443ab1e88c27592359609c85832a
File:Punkupine.png
6
888
2079
2024-04-10T19:14:47Z
Sam
60
Punkupine
wikitext
text/x-wiki
== Summary ==
Punkupine
b734af889a6137e557bf0cd33345c96242f69733
Grumpy Pirate
0
450
2080
2039
2024-04-10T19:15:16Z
InvalidCards
4
wikitext
text/x-wiki
{{Infobox Monster
|name = Grumpy Pirate
|image =
|release = Q3 2024
|episode =
|premium =
|level = 49
|hp =
|variant = [[Pirate]]
|passive = Yes
}}
'''Grumpy Pirate''' is a [[monster]] located in the [[Pirate Hideout]].{{CiteTwitter|url=https://twitter.com/AndrewCGower/status/1769048510177948004|author=Andrew Gower|date=16 March 2024|archiveurl=https://archive.is/whgCd|archivedate=22 March 2024|notes=|name=}}
==References==
{{Reflist}}
70187533a52cc658482404b08cb89bc8ea579202
File:East Beach.jpg
6
889
2081
2024-04-10T19:15:28Z
Yellowsap
63
wikitext
text/x-wiki
da39a3ee5e6b4b0d3255bfef95601890afd80709
2082
2081
2024-04-10T19:15:35Z
Yellowsap
63
wikitext
text/x-wiki
{{Fair use|link=https://twitter.com/AndrewCGower/status/1776276857706479810}}
2d80bc546769443ab1e88c27592359609c85832a
Punkupine
0
446
2083
1921
2024-04-10T19:16:05Z
Sam
60
wikitext
text/x-wiki
{{Infobox Monster
|name = Punkupine
|image = [[File:Punkupine.PNG]]
|release = Q3 2024
|episode =
|premium =
|level =
|hp =
|variant =
|passive =
}}
'''Punkupine''' is a [[monster]].
469c870355ae13811bf7f58e30295e891ef490ed
File:Seashells Seashore.jpg
6
890
2084
2024-04-10T19:17:02Z
Yellowsap
63
wikitext
text/x-wiki
da39a3ee5e6b4b0d3255bfef95601890afd80709
2085
2084
2024-04-10T19:17:07Z
Yellowsap
63
wikitext
text/x-wiki
{{Fair use|link=https://twitter.com/AndrewCGower/status/1776276857706479810}}
2d80bc546769443ab1e88c27592359609c85832a
File:Jellyfish Landing.jpg
6
891
2087
2024-04-10T19:18:08Z
Yellowsap
63
wikitext
text/x-wiki
da39a3ee5e6b4b0d3255bfef95601890afd80709
2088
2087
2024-04-10T19:18:17Z
Yellowsap
63
wikitext
text/x-wiki
{{Fair use|link=https://twitter.com/AndrewCGower/status/1776276857706479810}}
2d80bc546769443ab1e88c27592359609c85832a
File:Slime fiend.png
6
892
2089
2024-04-10T19:19:38Z
Sam
60
Slime Fiend
wikitext
text/x-wiki
== Summary ==
Slime Fiend
93eede71692fd8687446806d13c7443c1551ca72
Slime Fiend
0
447
2090
1922
2024-04-10T19:20:34Z
Sam
60
wikitext
text/x-wiki
{{Infobox Monster
|name = Slime Fiend
|image = [[File:Slime_Fiend.PNG]]
|release = Q3 2024
|episode =
|premium =
|level =
|hp =
|variant =
|passive =
}}
'''Slime Fiend''' is a [[monster]].
04a417dc2cb18965e6f95cba9fc943913d076c63
2091
2090
2024-04-10T19:20:49Z
Sam
60
wikitext
text/x-wiki
{{Infobox Monster
|name = Slime Fiend
|image = [[File:Slime Fiend.PNG]]
|release = Q3 2024
|episode =
|premium =
|level =
|hp =
|variant =
|passive =
}}
'''Slime Fiend''' is a [[monster]].
8d6268a829164ed50a2c35b30e1af4fde2281967
2094
2091
2024-04-10T19:21:30Z
Sam
60
wikitext
text/x-wiki
{{Infobox Monster
|name = Slime Fiend
|image = [[File:Slime fiend.PNG]]
|release = Q3 2024
|episode =
|premium =
|level =
|hp =
|variant =
|passive =
}}
'''Slime Fiend''' is a [[monster]].
ea2f3c0282e8c7fa705bb63b9d5022264fb67a20
File:Fallen Monument.jpg
6
893
2092
2024-04-10T19:21:20Z
Yellowsap
63
wikitext
text/x-wiki
da39a3ee5e6b4b0d3255bfef95601890afd80709
2093
2092
2024-04-10T19:21:28Z
Yellowsap
63
wikitext
text/x-wiki
{{Fair use|link=https://twitter.com/AndrewCGower/status/1776276857706479810}}
2d80bc546769443ab1e88c27592359609c85832a
File:Crater.jpg
6
894
2095
2024-04-10T19:22:37Z
Yellowsap
63
wikitext
text/x-wiki
da39a3ee5e6b4b0d3255bfef95601890afd80709
2096
2095
2024-04-10T19:22:45Z
Yellowsap
63
wikitext
text/x-wiki
{{Fair use|link=https://twitter.com/AndrewCGower/status/1776276857706479810}}
2d80bc546769443ab1e88c27592359609c85832a
Monument Piece
0
895
2097
2024-04-10T19:22:50Z
InvalidCards
4
Created page with "{{Interactcategory|name=Monument Pieces|type=[[Forager]] interactables}} * [[Huge Monument Piece]]"
wikitext
text/x-wiki
{{Interactcategory|name=Monument Pieces|type=[[Forager]] interactables}}
* [[Huge Monument Piece]]
75b0bc5c3d7809461bf3de5bb138d519037dd366
File:Wasteland.jpg
6
896
2098
2024-04-10T19:24:10Z
Yellowsap
63
wikitext
text/x-wiki
da39a3ee5e6b4b0d3255bfef95601890afd80709
2100
2098
2024-04-10T19:24:18Z
Yellowsap
63
wikitext
text/x-wiki
{{Fair use|link=https://twitter.com/AndrewCGower/status/1776276857706479810}}
2d80bc546769443ab1e88c27592359609c85832a
Huge Monument Piece
0
897
2099
2024-04-10T19:24:17Z
InvalidCards
4
Created page with "'''Huge Monument Pieces''' are [[Forager]] interactables and [[variant]]s of the [[Monument Piece]] that can be found in the [[Crater]] and the [[Wasteland]].{{CiteTwitter|author=@AndrewCGower|url=https://twitter.com/andrewcgower/status/1776276857706479810|date=5 April 2024|archiveurl=https://web.archive.org/web/20240406173123/https://twitter.com/andrewcgower/status/1776276857706479810|archivedate=6 April 2024|quote=store.steampowered.com/app/2791440/Brighter_Shores/ Qui..."
wikitext
text/x-wiki
'''Huge Monument Pieces''' are [[Forager]] interactables and [[variant]]s of the [[Monument Piece]] that can be found in the [[Crater]] and the [[Wasteland]].{{CiteTwitter|author=@AndrewCGower|url=https://twitter.com/andrewcgower/status/1776276857706479810|date=5 April 2024|archiveurl=https://web.archive.org/web/20240406173123/https://twitter.com/andrewcgower/status/1776276857706479810|archivedate=6 April 2024|quote=store.steampowered.com/app/2791440/Brighter_Shores/ Quite a few people have been asking how the 'rooms' in Brighter Shores connect together, so I have a made a quick video of me running across a small section of Hopeport. You can see how easily you can move between rooms, and how the 'rooms' connect together to form a much larger world.|name=|group=}}
==References==
{{Reflist}}
4c9ceb925c4bac25fecc1c2a0c2119f8677535f7
Crater
0
820
2101
2036
2024-04-10T19:24:34Z
InvalidCards
4
wikitext
text/x-wiki
{{Infobox Location
|name = Crater
|image = [[File:Crater.jpg|280px]]
|release =
|premium =
|episode =
}}
The '''Crater''' is a location in [[Hopeport (location)|Hopeport]].{{CiteTwitter|author=@AndrewCGower|url=https://twitter.com/andrewcgower/status/1776276857706479810|date=5 April 2024|archiveurl=https://web.archive.org/web/20240406173123/https://twitter.com/andrewcgower/status/1776276857706479810|archivedate=6 April 2024|quote=store.steampowered.com/app/2791440/Brighter_Shores/ Quite a few people have been asking how the 'rooms' in Brighter Shores connect together, so I have a made a quick video of me running across a small section of Hopeport. You can see how easily you can move between rooms, and how the 'rooms' connect together to form a much larger world.|notes=Timestamp in the video: 1:23 / 1:41.|name=|group=}} It connects to the [[Wasteland]] in the north and the [[Fallen Monument]] in the south. [[Giant Ant]]s and [[Hogberries]] can be found in the Crater.
Four [[Huge Monument Piece]]s are placed throughout the area.
==References==
{{Reflist}}
3f63c1a175b258ca539068427470956b044d8ee0
Wasteland
0
822
2102
2037
2024-04-10T19:24:53Z
InvalidCards
4
wikitext
text/x-wiki
{{Infobox Location
|name = Wasteland
|image = [[File:Wasteland.jpg|280px]]
|release =
|premium =
|episode =
}}
The '''Wasteland''' is a location in [[Hopeport (location)|Hopeport]].{{CiteTwitter|author=@AndrewCGower|url=https://twitter.com/andrewcgower/status/1776276857706479810|date=5 April 2024|archiveurl=https://web.archive.org/web/20240406173123/https://twitter.com/andrewcgower/status/1776276857706479810|archivedate=6 April 2024|quote=store.steampowered.com/app/2791440/Brighter_Shores/ Quite a few people have been asking how the 'rooms' in Brighter Shores connect together, so I have a made a quick video of me running across a small section of Hopeport. You can see how easily you can move between rooms, and how the 'rooms' connect together to form a much larger world.|notes=Timestamp in the video: 1:34 / 1:41.|name=|group=}} It connects to the [[Crater]] in the south. Several [[Huge Monument Piece]]s are placed in the area.
==References==
{{Reflist}}
be5877cf3ca894c103774b52858834c4a0f3dd15
File:Miner.png
6
898
2103
2024-04-10T19:28:08Z
Sam
60
Mining snippet
wikitext
text/x-wiki
== Summary ==
Mining snippet
1acbc6f70d88fdb95df00ba2157dc9ed1bfb44a1
Miner
0
62
2104
1172
2024-04-10T19:29:41Z
Sam
60
wikitext
text/x-wiki
{{Infobox Profession
|name = Miner
|image =
}}
[[File:Miner.PNG|thumb|right|A player mining.]]
'''Miner''' is a type of [[professions|profession]] specialising in collecting [[minerals]].
{{Professions}}
15580861d8205357753a1bb9fb550c0bcce92ef4
2106
2104
2024-04-10T19:33:18Z
InvalidCards
4
wikitext
text/x-wiki
{{Infobox Profession
|name = Miner
|image =
}}
[[File:Miner.png|thumb|right|A player mining.]]
'''Miner''' is a type of [[professions|profession]] specialising in collecting [[minerals]].
{{Professions}}
3864ac7aa8cd3c8cf4e2f467a6d5617a982d90d4
File:Miner.png
6
898
2105
2103
2024-04-10T19:33:02Z
InvalidCards
4
InvalidCards moved page [[File:Miner.PNG]] to [[File:Miner.png]] without leaving a redirect: small extension
wikitext
text/x-wiki
== Summary ==
Mining snippet
1acbc6f70d88fdb95df00ba2157dc9ed1bfb44a1
File:Punkupine.png
6
888
2107
2079
2024-04-10T19:34:29Z
InvalidCards
4
InvalidCards moved page [[File:Punkupine.PNG]] to [[File:Punkupine.png]] without leaving a redirect: small extension
wikitext
text/x-wiki
== Summary ==
Punkupine
b734af889a6137e557bf0cd33345c96242f69733
Punkupine
0
446
2108
2083
2024-04-10T19:34:42Z
InvalidCards
4
wikitext
text/x-wiki
{{Infobox Monster
|name = Punkupine
|image = [[File:Punkupine.png]]
|release = Q3 2024
|episode =
|premium =
|level =
|hp =
|variant =
|passive =
}}
'''Punkupine''' is a [[monster]].
b59b77737c793a8b229ad046047545da2b7a4347
File:Slime fiend.png
6
892
2109
2089
2024-04-10T19:35:02Z
InvalidCards
4
InvalidCards moved page [[File:Slime fiend.PNG]] to [[File:Slime fiend.png]] without leaving a redirect: small extension
wikitext
text/x-wiki
== Summary ==
Slime Fiend
93eede71692fd8687446806d13c7443c1551ca72
Slime Fiend
0
447
2110
2094
2024-04-10T19:35:14Z
InvalidCards
4
wikitext
text/x-wiki
{{Infobox Monster
|name = Slime Fiend
|image = [[File:Slime fiend.png]]
|release = Q3 2024
|episode =
|premium =
|level =
|hp =
|variant =
|passive =
}}
'''Slime Fiend''' is a [[monster]].
2230c2d378fb56d63b89c94c93e4fb01d4aa0b0d
File:Tiderider.png
6
850
2111
1895
2024-04-10T19:35:36Z
InvalidCards
4
InvalidCards moved page [[File:Tiderider.PNG]] to [[File:Tiderider.png]] without leaving a redirect: small extension
wikitext
text/x-wiki
== Summary ==
Tiderider Jellyfish
97cf1d0154f2f846ccd9370e7e8aacd0448765db
Tiderider Jellyfish
0
849
2112
2074
2024-04-10T19:35:48Z
InvalidCards
4
wikitext
text/x-wiki
{{Infobox Monster
|name = Tiderider
|image = [[File:Tiderider.png]]
|release = Q3 2024
|episode = Hopeport
|premium =
|level = 39
|hp =
|variant = [[Jellyfish]]
|passive = Yes
}}
'''Tiderider''' is a [[monster]] located in [[Jellyfish Landing]]. It is part of the [[Jellyfish]] category.
3c5d98b9ae46a208dc98f22976588a7723fd2b5c
Module:Infobox Interactable
828
899
2113
2024-04-10T19:39:53Z
InvalidCards
4
Created page with "local p = {} local Infobox = require('Module:Infobox') local parse = require('Module:Param Parse') function p.main(frame) local args = frame:getParent().args local config = { infobox_name = 'Interactable', } local params = { parse.name, parse.image, parse.release, parse.premium, parse.episode, parse.profession, {name = 'level', func = parse.number}, -- TODO - move to Module:Param Parse once more details are available, and create smw_property p..."
Scribunto
text/plain
local p = {}
local Infobox = require('Module:Infobox')
local parse = require('Module:Param Parse')
function p.main(frame)
local args = frame:getParent().args
local config = {
infobox_name = 'Interactable',
}
local params = {
parse.name,
parse.image,
parse.release,
parse.premium,
parse.episode,
parse.profession,
{name = 'level', func = parse.number}, -- TODO - move to Module:Param Parse once more details are available, and create smw_property
parse.variant,
parse.passive,
}
local infobox = Infobox.new(config, params, args)
infobox
:add_row{
{tag='th', content=Infobox.param('name'), class='infobox-header', colspan='20'},
}
:add_row{
{tag='td', content=Infobox.param('image'), class='infobox-image', colspan='20'},
}
:add_row{
{tag='th', content='Release', colspan="6"},
{tag='td', content=Infobox.param('release'), colspan="14"},
}
:add_row{
{tag='th', content='[[Episode]]', colspan="6"},
{tag='td', content=Infobox.param('episode'), colspan="14"},
}
:add_row{
{tag='th', content='[[Premium Pass|Premium]]', colspan="6"},
{tag='td', content=Infobox.param('premium'), colspan="14"},
}
:add_row{
{tag='th', content='[[Level]]', colspan="6"},
{tag='td', content=Infobox.param('level'), colspan="14"}
}
:add_row{
{tag='th', content='[[Profession]]', colspan="6"},
{tag='td', content=Infobox.param('profession'), colspan="14"},
}
:add_row{
{tag='th', content='[[Variant]] of', colspan="6"},
{tag='td', content=Infobox.param('variant'), colspan="14"},
}
:add_row{
{tag='th', content='[[File:Passive activity icon.png|14px|link=Passive activity]] [[Passive activity|Passive]]', colspan="6"},
{tag='td', content=Infobox.param('passive'), colspan="14"},
}
:pad(20)
return infobox
end
return p
c38777e09505f7841656488b6f4bcb029606823c
Module:Infobox Interactable/doc
828
900
2114
2024-04-10T19:40:14Z
InvalidCards
4
Created page with "{{No documentation}}"
wikitext
text/x-wiki
{{No documentation}}
ad36a615c98d03e22b03ecaa7b9d7d87b5d7b517
Template:Infobox Interactable
10
901
2115
2024-04-10T19:40:44Z
InvalidCards
4
Created page with "{{#invoke:Infobox Interactable|main}}{{Mainonly|[[Category:Interactable]]}}<noinclude>{{/doc}}</noinclude>"
wikitext
text/x-wiki
{{#invoke:Infobox Interactable|main}}{{Mainonly|[[Category:Interactable]]}}<noinclude>{{/doc}}</noinclude>
ee20840d0ee496fffcff6be013b98efa8002820f
2126
2115
2024-04-10T19:51:12Z
InvalidCards
4
wikitext
text/x-wiki
{{#invoke:Infobox Interactable|main}}{{Mainonly|[[Category:Interactables]]}}<noinclude>{{/doc}}</noinclude>
bfb38c3c809a3fdfe4958536d9da8ed69fcf8a8d
Template:Infobox Interactable/doc
10
902
2116
2024-04-10T19:42:17Z
InvalidCards
4
Created page with "{{Documentation}} ==Parameters== ===name=== The name of the interactable. ===image=== The image of the interactable. ===release=== The release date of the interactable. ===premium=== Whether or not this interactable requires a [[premium pass]]. ===episode=== The episode of the interactable. One of: * Hopeport * Hopeforest * Mine of Mantuban * Crenopolis ===profession=== The profession used for the interactable. ===level=== The level of the interactable. ===varia..."
wikitext
text/x-wiki
{{Documentation}}
==Parameters==
===name===
The name of the interactable.
===image===
The image of the interactable.
===release===
The release date of the interactable.
===premium===
Whether or not this interactable requires a [[premium pass]].
===episode===
The episode of the interactable.
One of:
* Hopeport
* Hopeforest
* Mine of Mantuban
* Crenopolis
===profession===
The profession used for the interactable.
===level===
The level of the interactable.
===variant===
What base category the interactable is a variant of.
===passive===
Whether or not the interactable is passive, indicated by a moon icon [[File:Passive activity icon.png|18px]].
==Quick copy==
<pre>{{Infobox Interactable
|name =
|image =
|release =
|premium =
|episode =
|profession =
|hp =
|variant =
|passive =
}}</pre>
<includeonly>[[Category:Infobox templates]]</includeonly>
2cbb514a7f521edcc07074ccd4b8fc9173f04fbf
2118
2116
2024-04-10T19:43:07Z
InvalidCards
4
wikitext
text/x-wiki
{{Documentation}}
==Parameters==
===name===
The name of the interactable.
===image===
The image of the interactable.
===release===
The release date of the interactable.
===premium===
Whether or not this interactable requires a [[premium pass]].
===episode===
The episode of the interactable.
One of:
* Hopeport
* Hopeforest
* Mine of Mantuban
* Crenopolis
===profession===
The profession used for the interactable.
===level===
The level of the interactable.
===variant===
What base category the interactable is a variant of.
===passive===
Whether or not the interactable is passive, indicated by a moon icon [[File:Passive activity icon.png|18px]].
==Quick copy==
<pre>{{Infobox Interactable
|name =
|image =
|release =
|premium =
|episode =
|profession =
|level =
|variant =
|passive =
}}</pre>
<includeonly>[[Category:Infobox templates]]</includeonly>
41d709a960e3db6b7b7d78b21d4cd032d4e3db2c
Template:Infobox Monster/doc
10
855
2117
2065
2024-04-10T19:42:34Z
InvalidCards
4
fix typo
wikitext
text/x-wiki
{{Documentation}}
==Parameters==
===name===
The name of the monster.
===image===
The image of the monster.
===release===
The release date of the monster.
===premium===
Whether or not this monster requires a [[premium pass]].
===episode===
The episode of the monster.
One of:
* Hopeport
* Hopeforest
* Mine of Mantuban
* Crenopolis
===level===
The level of the monster.
===hp===
The health of the monster.
===variant===
What base category the monster is a variant of.
===passive===
Whether or not the monster is passively fightable, indicated by a moon icon [[File:Passive activity icon.png|18px]].
==Quick copy==
<pre>{{Infobox Monster
|name =
|image =
|release =
|premium =
|episode =
|level =
|hp =
|variant =
|passive =
}}</pre>
<includeonly>[[Category:Infobox templates]]</includeonly>
6252368e6bbfb671ef9447ed5278deb1588a72a9
Bladder Wrack
0
873
2119
2002
2024-04-10T19:44:04Z
InvalidCards
4
wikitext
text/x-wiki
{{Infobox Interactable
|name = Bladder Wrack
|image =
|release =
|premium =
|episode =
|profession = [[Forager]]
|level = 41
|variant = [[Wrack]]
|passive = No
}}
'''Bladder Wracks''' are a type of [[Forager]] interactable and a [[variant]] of [[Wrack]]s found in the [[Pirate Hideout]].{{CiteTwitter|url=https://twitter.com/AndrewCGower/status/1769048510177948004|author=Andrew Gower|date=16 March 2024|accessdate=22 March 2024|archiveurl=https://archive.is/whgCd|archivedate=22 March 2024|quote=}}
==References==
{{Reflist}}
3c5eccf4c2e8c9aa8214dbbc16d71443d16e37a0
Common Limpet
0
872
2120
2000
2024-04-10T19:44:36Z
InvalidCards
4
wikitext
text/x-wiki
{{Infobox Interactable
|name = Common Limpet
|image =
|release =
|premium =
|episode =
|profession = [[Forager]]
|level = 59
|variant = [[Limpet]]
|passive = No
}}
'''Common Limpets''' are a type of [[Forager]] interactable and a [[variant]] of [[Limpet]]s found in the [[Pirate Hideout]].{{CiteTwitter|url=https://twitter.com/AndrewCGower/status/1769048510177948004|author=Andrew Gower|date=16 March 2024|accessdate=22 March 2024|archiveurl=https://archive.is/whgCd|archivedate=22 March 2024|quote=}}
==References==
{{Reflist}}
cf2eb60136a79094575504d6d81b6cb966a033d1
Yellowtail Gurnard
0
449
2121
1996
2024-04-10T19:45:34Z
InvalidCards
4
wikitext
text/x-wiki
{{Infobox Interactable
|name = Yellowtail Gurnard
|image =
|release =
|premium =
|episode =
|profession = [[Fisher]]
|level = 14
|variant = [[Gurnard]]
|passive = No
}}
'''Yellowtail Gurnards''' are a type of [[fish]] and a [[variant]] of [[Gurnard]]s found in the [[Pirate Hideout]].{{CiteTwitter|url=https://twitter.com/AndrewCGower/status/1769048510177948004|author=Andrew Gower|date=16 March 2024|accessdate=22 March 2024|archiveurl=https://archive.is/whgCd|archivedate=22 March 2024|quote=}}
==References==
{{Reflist}}
079f84a2456384381f54209bcffa6e0e6abeb566
Kelp
0
904
2123
2024-04-10T19:47:14Z
InvalidCards
4
Created page with "{{Interactcategory|name=Kelp|type=[[Forager]] interactable}} * [[Brown Kelp]]"
wikitext
text/x-wiki
{{Interactcategory|name=Kelp|type=[[Forager]] interactable}}
* [[Brown Kelp]]
0b212d97fc11c12a30667878c5a3b868d604e8cb
Brown Kelp
0
905
2124
2024-04-10T19:49:14Z
InvalidCards
4
Created page with "{{Infobox Interactable |name = Brown Kelp |image = |release = |premium = |episode = |profession = [[Forager]] |level = 0 |variant = [[Kelp]] |passive = No }} '''Brown Kelp''' is a type of [[Forager]] interactable that can be found on the [[East Beach]].{{CiteTwitter|author=@AndrewCGower|url=https://twitter.com/andrewcgower/status/1776276857706479810|date=5 April 2024|archiveurl=https://web.archive.org/web/20240406173123/https://twitter.com/andrewcgower/status/1776276..."
wikitext
text/x-wiki
{{Infobox Interactable
|name = Brown Kelp
|image =
|release =
|premium =
|episode =
|profession = [[Forager]]
|level = 0
|variant = [[Kelp]]
|passive = No
}}
'''Brown Kelp''' is a type of [[Forager]] interactable that can be found on the [[East Beach]].{{CiteTwitter|author=@AndrewCGower|url=https://twitter.com/andrewcgower/status/1776276857706479810|date=5 April 2024|archiveurl=https://web.archive.org/web/20240406173123/https://twitter.com/andrewcgower/status/1776276857706479810|archivedate=6 April 2024|quote=store.steampowered.com/app/2791440/Brighter_Shores/ Quite a few people have been asking how the 'rooms' in Brighter Shores connect together, so I have a made a quick video of me running across a small section of Hopeport. You can see how easily you can move between rooms, and how the 'rooms' connect together to form a much larger world.|notes=Timestamp in the video: 0:39 / 1:41.|name=|group=}}
==References==
{{Reflist}}
2091da1698d35e7af375dc3d42d8dc7e4c76aeab
2133
2124
2024-04-10T19:57:05Z
InvalidCards
4
wikitext
text/x-wiki
{{Infobox Interactable
|name = Brown Kelp
|image =
|release =
|premium =
|episode =
|profession = [[Forager]]
|level = 0
|variant = [[Kelp]]
|passive = No
}}
'''Brown Kelp''' is a type of [[Forager]] interactable that can be found on the [[East Beach]] and the [[Jellyfish Landing]].{{CiteTwitter|author=@AndrewCGower|url=https://twitter.com/andrewcgower/status/1776276857706479810|date=5 April 2024|archiveurl=https://web.archive.org/web/20240406173123/https://twitter.com/andrewcgower/status/1776276857706479810|archivedate=6 April 2024|quote=store.steampowered.com/app/2791440/Brighter_Shores/ Quite a few people have been asking how the 'rooms' in Brighter Shores connect together, so I have a made a quick video of me running across a small section of Hopeport. You can see how easily you can move between rooms, and how the 'rooms' connect together to form a much larger world.|notes=Timestamp in the video: 0:39 / 1:41.|name=|group=}}
==References==
{{Reflist}}
a38b91e1305c4522661449edbf7a92df88d414dd
Category:Interactable categories
14
870
2125
1989
2024-04-10T19:50:49Z
InvalidCards
4
wikitext
text/x-wiki
{{Categoryheader|pages|in-game categories of interactable objects}}
[[Category:Mechanics]]
[[Category:Interactables]]
dc0ffa795a4c3af9ae6a4538b1efd36eae1115f4
Category:Interactables
14
906
2127
2024-04-10T19:51:46Z
InvalidCards
4
Created page with "{{Categoryheader|pages|skilling interactables}} [[Category:Content]]"
wikitext
text/x-wiki
{{Categoryheader|pages|skilling interactables}}
[[Category:Content]]
d8b7d444c486a2246c7771c03f6ae9a1610b89cf
Shell
0
907
2128
2024-04-10T19:52:26Z
InvalidCards
4
Created page with "{{Interactcategory|name=Shells|type=[[Forager]] interactable}} * [[Horn Shell]]"
wikitext
text/x-wiki
{{Interactcategory|name=Shells|type=[[Forager]] interactable}}
* [[Horn Shell]]
a789bb01e6575c99cc688ab47ea3349d43abc324
Horn Shell
0
908
2129
2024-04-10T19:53:23Z
InvalidCards
4
Created page with "{{Infobox Interactable |name = Horn Shell |image = |release = |premium = |episode = |profession = [[Forager]] |level = 6 |variant = [[Shell]] |passive = No }} '''Horn Shells''' are a type of [[Forager]] interactable that can be found on the [[East Beach]] and the [[Seashells Seashore]].{{CiteTwitter|author=@AndrewCGower|url=https://twitter.com/andrewcgower/status/1776276857706479810|date=5 April 2024|archiveurl=https://web.archive.org/web/20240406173123/https://twitt..."
wikitext
text/x-wiki
{{Infobox Interactable
|name = Horn Shell
|image =
|release =
|premium =
|episode =
|profession = [[Forager]]
|level = 6
|variant = [[Shell]]
|passive = No
}}
'''Horn Shells''' are a type of [[Forager]] interactable that can be found on the [[East Beach]] and the [[Seashells Seashore]].{{CiteTwitter|author=@AndrewCGower|url=https://twitter.com/andrewcgower/status/1776276857706479810|date=5 April 2024|archiveurl=https://web.archive.org/web/20240406173123/https://twitter.com/andrewcgower/status/1776276857706479810|archivedate=6 April 2024|quote=store.steampowered.com/app/2791440/Brighter_Shores/ Quite a few people have been asking how the 'rooms' in Brighter Shores connect together, so I have a made a quick video of me running across a small section of Hopeport. You can see how easily you can move between rooms, and how the 'rooms' connect together to form a much larger world.|notes=Timestamp in the video: 0:39 / 1:41.|name=|group=}}
==References==
{{Reflist}}
971770c46e01d6db97e4472083ea805c256404a8
Rock Pool
0
909
2130
2024-04-10T19:54:53Z
InvalidCards
4
Created page with "{{Infobox Interactable |name = Rock Pool |image = |release = |premium = |episode = |profession = [[Forager]] |level = 26 |variant = None |passive = Yes }} '''Rock Pools''' are a type of [[Forager]] interactable that can be found on the [[Seashells Seashore]].{{CiteTwitter|author=@AndrewCGower|url=https://twitter.com/andrewcgower/status/1776276857706479810|date=5 April 2024|archiveurl=https://web.archive.org/web/20240406173123/https://twitter.com/andrewcgower/status/1..."
wikitext
text/x-wiki
{{Infobox Interactable
|name = Rock Pool
|image =
|release =
|premium =
|episode =
|profession = [[Forager]]
|level = 26
|variant = None
|passive = Yes
}}
'''Rock Pools''' are a type of [[Forager]] interactable that can be found on the [[Seashells Seashore]].{{CiteTwitter|author=@AndrewCGower|url=https://twitter.com/andrewcgower/status/1776276857706479810|date=5 April 2024|archiveurl=https://web.archive.org/web/20240406173123/https://twitter.com/andrewcgower/status/1776276857706479810|archivedate=6 April 2024|quote=store.steampowered.com/app/2791440/Brighter_Shores/ Quite a few people have been asking how the 'rooms' in Brighter Shores connect together, so I have a made a quick video of me running across a small section of Hopeport. You can see how easily you can move between rooms, and how the 'rooms' connect together to form a much larger world.|notes=Timestamp in the video: 0:49 / 1:41.|name=|group=}}
==References==
{{Reflist}}
30f8483f377ee3564815b2e16ed5dd6b78fd724f
2142
2130
2024-04-10T20:34:58Z
Yellowsap
63
wikitext
text/x-wiki
{{Infobox Interactable
|name = Rock Pool
|image = [[File:Rock_Pool.png]]
|release =
|premium =
|episode =
|profession = [[Forager]]
|level = 26
|variant = None
|passive = Yes
}}
'''Rock Pools''' are a type of [[Forager]] interactable that can be found on the [[Seashells Seashore]].{{CiteTwitter|author=@AndrewCGower|url=https://twitter.com/andrewcgower/status/1776276857706479810|date=5 April 2024|archiveurl=https://web.archive.org/web/20240406173123/https://twitter.com/andrewcgower/status/1776276857706479810|archivedate=6 April 2024|quote=store.steampowered.com/app/2791440/Brighter_Shores/ Quite a few people have been asking how the 'rooms' in Brighter Shores connect together, so I have a made a quick video of me running across a small section of Hopeport. You can see how easily you can move between rooms, and how the 'rooms' connect together to form a much larger world.|notes=Timestamp in the video: 0:49 / 1:41.|name=|group=}}
==References==
{{Reflist}}
9162be1943bd72c3bffb8e4c22a9e7c20470bd49
Starfish
0
910
2131
2024-04-10T19:55:49Z
InvalidCards
4
Created page with "{{Interactcategory|name=Starfish|type=[[Forager]] interactable}} * [[Wrinkled Starfish]]"
wikitext
text/x-wiki
{{Interactcategory|name=Starfish|type=[[Forager]] interactable}}
* [[Wrinkled Starfish]]
a1d5fa93fe66bca1056bf80a4fedd5eba4c0d8ed
Wrinkled Starfish
0
911
2132
2024-04-10T19:56:35Z
InvalidCards
4
Created page with "{{Infobox Interactable |name = Wrinkled Starfish |image = |release = |premium = |episode = |profession = [[Forager]] |level = 18 |variant = [[Starfish]] |passive = No }} '''Wrinkled Starfish''' are a type of [[Forager]] interactable that can be found on the [[Jellyfish Landing]].{{CiteTwitter|author=@AndrewCGower|url=https://twitter.com/andrewcgower/status/1776276857706479810|date=5 April 2024|archiveurl=https://web.archive.org/web/20240406173123/https://twitter.com/..."
wikitext
text/x-wiki
{{Infobox Interactable
|name = Wrinkled Starfish
|image =
|release =
|premium =
|episode =
|profession = [[Forager]]
|level = 18
|variant = [[Starfish]]
|passive = No
}}
'''Wrinkled Starfish''' are a type of [[Forager]] interactable that can be found on the [[Jellyfish Landing]].{{CiteTwitter|author=@AndrewCGower|url=https://twitter.com/andrewcgower/status/1776276857706479810|date=5 April 2024|archiveurl=https://web.archive.org/web/20240406173123/https://twitter.com/andrewcgower/status/1776276857706479810|archivedate=6 April 2024|quote=store.steampowered.com/app/2791440/Brighter_Shores/ Quite a few people have been asking how the 'rooms' in Brighter Shores connect together, so I have a made a quick video of me running across a small section of Hopeport. You can see how easily you can move between rooms, and how the 'rooms' connect together to form a much larger world.|notes=Timestamp in the video: 0:56 / 1:41.|name=|group=}}
==References==
{{Reflist}}
3a952c43b7460f322d6693623fc598744cb9768b
Potato
0
912
2134
2024-04-10T19:57:49Z
InvalidCards
4
Created page with "{{Interactcategory|name=Potatoes|type=[[Forager]] interactable}} * [[Piper Potato]]"
wikitext
text/x-wiki
{{Interactcategory|name=Potatoes|type=[[Forager]] interactable}}
* [[Piper Potato]]
98b7dd337f5771c2b7fa95909b7540b37c54d21b
Piper Potato
0
913
2135
2024-04-10T19:58:33Z
InvalidCards
4
Created page with "{{Infobox Interactable |name = Piper Potato |image = |release = |premium = |episode = |profession = [[Forager]] |level = 8 |variant = [[Potato]] |passive = No }} '''Piper Potatoes''' are a type of [[Forager]] interactable that can be found at the [[Fallen Monument]].{{CiteTwitter|author=@AndrewCGower|url=https://twitter.com/andrewcgower/status/1776276857706479810|date=5 April 2024|archiveurl=https://web.archive.org/web/20240406173123/https://twitter.com/andrewcgower/..."
wikitext
text/x-wiki
{{Infobox Interactable
|name = Piper Potato
|image =
|release =
|premium =
|episode =
|profession = [[Forager]]
|level = 8
|variant = [[Potato]]
|passive = No
}}
'''Piper Potatoes''' are a type of [[Forager]] interactable that can be found at the [[Fallen Monument]].{{CiteTwitter|author=@AndrewCGower|url=https://twitter.com/andrewcgower/status/1776276857706479810|date=5 April 2024|archiveurl=https://web.archive.org/web/20240406173123/https://twitter.com/andrewcgower/status/1776276857706479810|archivedate=6 April 2024|quote=store.steampowered.com/app/2791440/Brighter_Shores/ Quite a few people have been asking how the 'rooms' in Brighter Shores connect together, so I have a made a quick video of me running across a small section of Hopeport. You can see how easily you can move between rooms, and how the 'rooms' connect together to form a much larger world.|notes=Timestamp in the video: 1:16 / 1:41.|name=|group=}}
==References==
{{Reflist}}
4eb55b1827a7c047ea8551eebf69ba2017b98003
Hogberries
0
914
2136
2024-04-10T19:59:17Z
InvalidCards
4
Created page with "{{Interactcategory|name=Hogberries|type=[[Forager]] interactable}} * [[Green Hogberries]]"
wikitext
text/x-wiki
{{Interactcategory|name=Hogberries|type=[[Forager]] interactable}}
* [[Green Hogberries]]
0c5abe04ab8a70418eca3c39783d5844b4a9e9d5
Green Hogberries
0
915
2137
2024-04-10T20:00:34Z
InvalidCards
4
Created page with "{{Infobox Interactable |name = Green Hogberries |image = |release = |premium = |episode = |profession = [[Forager]] |level = 29 |variant = [[Hogberries]] |passive = No }} '''Green Hogberries''' are a type of [[Forager]] interactable that can be found in the [[Crater]].{{CiteTwitter|author=@AndrewCGower|url=https://twitter.com/andrewcgower/status/1776276857706479810|date=5 April 2024|archiveurl=https://web.archive.org/web/20240406173123/https://twitter.com/andrewcgowe..."
wikitext
text/x-wiki
{{Infobox Interactable
|name = Green Hogberries
|image =
|release =
|premium =
|episode =
|profession = [[Forager]]
|level = 29
|variant = [[Hogberries]]
|passive = No
}}
'''Green Hogberries''' are a type of [[Forager]] interactable that can be found in the [[Crater]].{{CiteTwitter|author=@AndrewCGower|url=https://twitter.com/andrewcgower/status/1776276857706479810|date=5 April 2024|archiveurl=https://web.archive.org/web/20240406173123/https://twitter.com/andrewcgower/status/1776276857706479810|archivedate=6 April 2024|quote=store.steampowered.com/app/2791440/Brighter_Shores/ Quite a few people have been asking how the 'rooms' in Brighter Shores connect together, so I have a made a quick video of me running across a small section of Hopeport. You can see how easily you can move between rooms, and how the 'rooms' connect together to form a much larger world.|notes=Timestamp in the video: 1:23 / 1:41.|name=|group=}}
==References==
{{Reflist}}
7de03e2fb26a78ebe0c769155a823a3e19ee37fd
2145
2137
2024-04-10T20:40:40Z
Yellowsap
63
wikitext
text/x-wiki
{{Infobox Interactable
|name = Green Hogberries
|image = [[File:Green_hogberries.png]]
|release =
|premium =
|episode =
|profession = [[Forager]]
|level = 29
|variant = [[Hogberries]]
|passive = No
}}
'''Green Hogberries''' are a type of [[Forager]] interactable that can be found in the [[Crater]].{{CiteTwitter|author=@AndrewCGower|url=https://twitter.com/andrewcgower/status/1776276857706479810|date=5 April 2024|archiveurl=https://web.archive.org/web/20240406173123/https://twitter.com/andrewcgower/status/1776276857706479810|archivedate=6 April 2024|quote=store.steampowered.com/app/2791440/Brighter_Shores/ Quite a few people have been asking how the 'rooms' in Brighter Shores connect together, so I have a made a quick video of me running across a small section of Hopeport. You can see how easily you can move between rooms, and how the 'rooms' connect together to form a much larger world.|notes=Timestamp in the video: 1:23 / 1:41.|name=|group=}}
==References==
{{Reflist}}
4b0f6ee855d5cbbe448a0104e9b3807adeeac008
Huge Monument Piece
0
897
2138
2099
2024-04-10T20:01:03Z
InvalidCards
4
wikitext
text/x-wiki
{{Infobox Interactable
|name = Huge Monument Piece
|image =
|release =
|premium =
|episode =
|profession = [[Forager]]
|level = 14
|variant = [[Monument Piece]]
|passive = No
}}
'''Huge Monument Pieces''' are [[Forager]] interactables and [[variant]]s of the [[Monument Piece]] that can be found in the [[Crater]] and the [[Wasteland]].{{CiteTwitter|author=@AndrewCGower|url=https://twitter.com/andrewcgower/status/1776276857706479810|date=5 April 2024|archiveurl=https://web.archive.org/web/20240406173123/https://twitter.com/andrewcgower/status/1776276857706479810|archivedate=6 April 2024|quote=store.steampowered.com/app/2791440/Brighter_Shores/ Quite a few people have been asking how the 'rooms' in Brighter Shores connect together, so I have a made a quick video of me running across a small section of Hopeport. You can see how easily you can move between rooms, and how the 'rooms' connect together to form a much larger world.|name=|group=}}
==References==
{{Reflist}}
53101bff57d7b5a5c6a15ddc1d8141f20d090e71
Module:Param Parse
828
673
2139
2057
2024-04-10T20:11:53Z
Gau Cho
5
yes_no_smw instead of yes_no
Scribunto
text/plain
--[=[
-- Standardized functions to parse Infobox params
--]=]
-- <nowiki>
local parse = {}
-- Generic functions --
-----------------------
-- Standardized "has content" function
function parse.has_content(arg)
-- Return arg if any non-whitespace character is found
return string.match(arg or '', '%S') and arg or nil
end
-- Standardized numbers
function parse.number(num)
num = string.gsub(num or '',',','')
return tonumber(num)
end
-- Yes/No
local yes_no = {
['Yes'] = true,
['No'] = false,
['N/A'] = 'NIL',
}
function parse.yes_no(text)
if yes_no[text] ~= nil then
return text
end
return nil
end
function parse.yes_no_smw(text)
if text == 'N/A' then
return nil
end
return yes_no[text] or nil
end
-- Premade Params --
--------------------
-- Standardized name function
parse.name = {
name = 'name',
func = parse.has_content,
smw_property = 'Name',
}
-- Standardized image function
function parse.image_func(img)
if img and string.match(img, '%[%[File:.*%]%]') then
return img
end
return nil
end
function parse.image_smw(img)
return img and string.match(img, "File:.*%.%w%w%w") or nil
end
parse.image = {
name = 'image',
func = parse.image_func,
smw_property = 'Image',
smw_func = parse.image_smw,
empty = '[[Special:Upload|Please upload an image!]]',
category_incomplete = 'Needs image',
}
-- Episode
local valid_episodes = {['Hopeport'] = 1, ['Hopeforest'] = 1, ['Mine of Mantuban'] = 1, ['Crenopolis'] = 1}
function parse.episode_func(episode)
if valid_episodes[episode] then
return '[[File:'..episode..' episode icon.png|18px]] [['..episode..']]'
end
return nil
end
function parse.episode_smw(episode)
if valid_episodes[episode] then
return episode
end
return nil
end
parse.episode = {
name = 'episode',
func = parse.episode_func,
smw_property = 'Episode',
smw_func = parse.episode_smw,
category_incomplete = 'Needs episode',
}
-- Premium
parse.premium = {
name = 'premium',
func = parse.yes_no,
smw_property = 'Premium',
smw_func = parse.yes_no_smw,
category_incomplete = 'Needs premium status',
}
-- Release (TODO)
parse.release = {
name = 'release',
func = parse.has_content,
}
-- Profession (TODO)
parse.profession = {
name = 'profession',
func = parse.has_content,
category_incomplete = 'Needs profession',
smw_property = 'Profession' -- TODO - Need to create property page
}
parse.variant = {
name = 'variant',
func = parse.has_content,
category_incomplete = 'Needs variant details',
smw_property = 'Variant of' -- TODO - Need to create property page
}
parse.passive = {
name = 'passive',
func = parse.yes_no,
smw_property = 'Passive',
smw_func = parse.yes_no_smw,
category_incomplete = 'Needs passiveness'
}
return parse
-- </nowiki>
f84f9665f30c255d126aa1e61cfb88b990c2e1c4
2146
2139
2024-04-10T20:41:35Z
Gau Cho
5
yes_no_smw
Scribunto
text/plain
--[=[
-- Standardized functions to parse Infobox params
--]=]
-- <nowiki>
local parse = {}
-- Generic functions --
-----------------------
-- Standardized "has content" function
function parse.has_content(arg)
-- Return arg if any non-whitespace character is found
return string.match(arg or '', '%S') and arg or nil
end
-- Standardized numbers
function parse.number(num)
num = string.gsub(num or '',',','')
return tonumber(num)
end
-- Yes/No
local yes_no = {
['Yes'] = true,
['No'] = false,
['N/A'] = 'NIL',
}
function parse.yes_no(text)
if yes_no[text] ~= nil then
return text
end
return nil
end
function parse.yes_no_smw(text)
if text == 'N/A' then
return nil
end
local bool = yes_no[text]
if bool ~= nil then
return bool
end
return nil
end
-- Premade Params --
--------------------
-- Standardized name function
parse.name = {
name = 'name',
func = parse.has_content,
smw_property = 'Name',
}
-- Standardized image function
function parse.image_func(img)
if img and string.match(img, '%[%[File:.*%]%]') then
return img
end
return nil
end
function parse.image_smw(img)
return img and string.match(img, "File:.*%.%w%w%w") or nil
end
parse.image = {
name = 'image',
func = parse.image_func,
smw_property = 'Image',
smw_func = parse.image_smw,
empty = '[[Special:Upload|Please upload an image!]]',
category_incomplete = 'Needs image',
}
-- Episode
local valid_episodes = {['Hopeport'] = 1, ['Hopeforest'] = 1, ['Mine of Mantuban'] = 1, ['Crenopolis'] = 1}
function parse.episode_func(episode)
if valid_episodes[episode] then
return '[[File:'..episode..' episode icon.png|18px]] [['..episode..']]'
end
return nil
end
function parse.episode_smw(episode)
if valid_episodes[episode] then
return episode
end
return nil
end
parse.episode = {
name = 'episode',
func = parse.episode_func,
smw_property = 'Episode',
smw_func = parse.episode_smw,
category_incomplete = 'Needs episode',
}
-- Premium
parse.premium = {
name = 'premium',
func = parse.yes_no,
smw_property = 'Premium',
smw_func = parse.yes_no_smw,
category_incomplete = 'Needs premium status',
}
-- Release (TODO)
parse.release = {
name = 'release',
func = parse.has_content,
}
-- Profession (TODO)
parse.profession = {
name = 'profession',
func = parse.has_content,
category_incomplete = 'Needs profession',
smw_property = 'Profession' -- TODO - Need to create property page
}
parse.variant = {
name = 'variant',
func = parse.has_content,
category_incomplete = 'Needs variant details',
smw_property = 'Variant of' -- TODO - Need to create property page
}
parse.passive = {
name = 'passive',
func = parse.yes_no,
smw_property = 'Passive',
smw_func = parse.yes_no_smw,
category_incomplete = 'Needs passiveness'
}
return parse
-- </nowiki>
f4c15bddf298b745b1083d5b17666eab5105a178
2151
2146
2024-04-10T20:56:29Z
Gau Cho
5
yes_no_smw debugging
Scribunto
text/plain
--[=[
-- Standardized functions to parse Infobox params
--]=]
-- <nowiki>
local parse = {}
-- Generic functions --
-----------------------
-- Standardized "has content" function
function parse.has_content(arg)
-- Return arg if any non-whitespace character is found
return string.match(arg or '', '%S') and arg or nil
end
-- Standardized numbers
function parse.number(num)
num = string.gsub(num or '',',','')
return tonumber(num)
end
-- Yes/No
local yes_no = {
['Yes'] = 'true',
['No'] = 'false',
['N/A'] = 'NIL',
}
function parse.yes_no(text)
if yes_no[text] ~= nil then
return text
end
return nil
end
function parse.yes_no_smw(text)
if text == 'N/A' then
return nil
end
local bool = yes_no[text]
if bool ~= nil then
return bool
end
return nil
end
-- Premade Params --
--------------------
-- Standardized name function
parse.name = {
name = 'name',
func = parse.has_content,
smw_property = 'Name',
}
-- Standardized image function
function parse.image_func(img)
if img and string.match(img, '%[%[File:.*%]%]') then
return img
end
return nil
end
function parse.image_smw(img)
return img and string.match(img, "File:.*%.%w%w%w") or nil
end
parse.image = {
name = 'image',
func = parse.image_func,
smw_property = 'Image',
smw_func = parse.image_smw,
empty = '[[Special:Upload|Please upload an image!]]',
category_incomplete = 'Needs image',
}
-- Episode
local valid_episodes = {['Hopeport'] = 1, ['Hopeforest'] = 1, ['Mine of Mantuban'] = 1, ['Crenopolis'] = 1}
function parse.episode_func(episode)
if valid_episodes[episode] then
return '[[File:'..episode..' episode icon.png|18px]] [['..episode..']]'
end
return nil
end
function parse.episode_smw(episode)
if valid_episodes[episode] then
return episode
end
return nil
end
parse.episode = {
name = 'episode',
func = parse.episode_func,
smw_property = 'Episode',
smw_func = parse.episode_smw,
category_incomplete = 'Needs episode',
}
-- Premium
parse.premium = {
name = 'premium',
func = parse.yes_no,
smw_property = 'Premium',
smw_func = parse.yes_no_smw,
category_incomplete = 'Needs premium status',
}
-- Release (TODO)
parse.release = {
name = 'release',
func = parse.has_content,
}
-- Profession (TODO)
parse.profession = {
name = 'profession',
func = parse.has_content,
category_incomplete = 'Needs profession',
smw_property = 'Profession' -- TODO - Need to create property page
}
parse.variant = {
name = 'variant',
func = parse.has_content,
category_incomplete = 'Needs variant details',
smw_property = 'Variant of' -- TODO - Need to create property page
}
parse.passive = {
name = 'passive',
func = parse.yes_no,
smw_property = 'Passive',
smw_func = parse.yes_no_smw,
category_incomplete = 'Needs passiveness'
}
return parse
-- </nowiki>
7ed90a89414c0378e8f907648030ba251a7b1e30
File:Rock Pool.png
6
916
2140
2024-04-10T20:34:08Z
Yellowsap
63
wikitext
text/x-wiki
da39a3ee5e6b4b0d3255bfef95601890afd80709
2141
2140
2024-04-10T20:34:16Z
Yellowsap
63
wikitext
text/x-wiki
{{Fair use|link=https://twitter.com/AndrewCGower/status/1776276857706479810}}
2d80bc546769443ab1e88c27592359609c85832a
File:Green hogberries.png
6
917
2143
2024-04-10T20:39:55Z
Yellowsap
63
wikitext
text/x-wiki
da39a3ee5e6b4b0d3255bfef95601890afd80709
2144
2143
2024-04-10T20:40:17Z
Yellowsap
63
wikitext
text/x-wiki
{{Fair use|link=https://twitter.com/AndrewCGower/status/1776276857706479810}}
2d80bc546769443ab1e88c27592359609c85832a
Module:Infobox
828
102
2147
1876
2024-04-10T20:49:44Z
Gau Cho
5
Add a __dump param for debugging
Scribunto
text/plain
--[=[
-- For documentation, see [[Module:Infobox/doc]]
--]=]
-- <nowiki>
local editbutton = require('Module:Edit button')
local smwutils = require('Module:SMW Utils')
local Infobox = {}
Infobox.__index = Infobox
--[[
Infobox class
-- config: table containing configuration parameters
-- params : definitions for each used value
-- args : values passed from the Template
---- the following values are treated specially: default_version, version, version1, version2...
--]]
function Infobox.new(config, params, args)
local obj = setmetatable({
args_raw = args, -- parameters (uncleaned)
args_parsed = {}, -- parsed parameters
args_smw = {}, -- parameters parsed for smw
infobox_name = nil, -- template name
param_names = {}, -- ordered param list
params = {}, -- param definitions
max_buttons = 6, -- If there are more buttons than the max, the buttons will become a dropdown menu
default_version = 1, -- default version to populate the infobox
versions = nil, -- number of versions
version_names = {}, -- title of each version (for selection and SMW)
rtable = nil, -- infobox table to return at the end
switch_datatable = '', -- datatable for javascript for switch infoboxes
categories = {}, -- set of categories
errors = {}, -- list of errors
__smw_debug = {}, -- debug data for smw subobjects
},
Infobox)
-- Step 1, setup config vars and count the versions
obj:config(config)
obj:parse_versions()
-- Step 2, process the params
obj:define_params(params)
obj:parse_params()
-- Table
obj:table_header()
obj:buttons()
-- Misc
obj:store_smw()
obj:parse_categories()
if args_raw.__dump then
obj:dump()
end
return obj
end
--[[
Refers to a param after being processed by the validating func
Used in add_row(), define_params() and is_param_defined()
--]]
function Infobox.param(param_name)
param = {
property = 'args_parsed',
param_name = param_name,
}
return param
end
--[[
Refers to a param in raw form as passed from the Template
Used in add_row(), define_params() and is_param_defined()
--]]
function Infobox.raw_param(param_name)
param = {
property = 'args_raw',
param_name = param_name,
}
return param
end
--[[
Refers to a param after being processed by the validating smw_func
Used in add_row(), define_params() and is_param_defined()
--]]
function Infobox.smw_param(param_name)
param = {
property = 'args_smw',
param_name = param_name,
}
return param
end
--[[
Checks to see if a param is defined.
-- param: Infobox.param(name), Infobox.raw_param(name) or Infobox.smw_param(name)
Returns 0 if param is never defined
1 if param is defined for a fraction of the versions
2 if param is defined for all versions
]]
function Infobox:is_param_defined(param)
local undefined = 0
local defined = 0
for version = 1, self.versions do
local value = self:get_param(param, version)
if value ~= nil then
defined = 1
else
undefined = 1
end
end
return 1 + defined - undefined
end
--[[
Adds a row to the infobox table
Parameter should be a table of cells, where each cell is a table with the following arguments:
-- tag : 'td' or 'th'
-- content : a string or Infobox.param(name), Infobox.raw_param(name), Infobox.smw_param(name)
-- attr (optional) : mw.html:attr({ arg1 = '1', ... })
-- css (optional) : mw.html:css({ arg1 = '1', ...)
-- class (optional) : mw.html:addClass('arg')
---- class also supports a table of values, even though mw.html:addClass() does not
---- common classes: infobox-subheader
-- rowspan (optional) : mw.html:attr('rowspan',arg)
-- colspan (optional) : mw.html:attr('colspan',arg)
-- title (optional) : mw.html:attr('title',arg)
The row itself may be assigned a single class by setting the value of the key addClass
-- addClass : mw.html:addClass('arg')
-- this function currently only supports a single string
--]]
function Infobox:add_row(...)
local args = ...
local _row = self.rtable:tag('tr')
-- For each cell
for _, v in ipairs(args) do
local _cell = _row:tag(v.tag)
-- Optional parameters
if v.attr then
_cell:attr(v.attr)
end
if v.colspan then
_cell:attr('colspan',v.colspan)
end
if v.rowspan then
_cell:attr('rowspan',v.rowspan)
end
if v.title then
_cell:attr('title',v.title)
end
if v.css then
_cell:css(v.css)
end
if v.class then
if type(v.class) == 'string' then
_cell:addClass(v.class)
-- mw.html:addClass() doesn't function with tables, add in a loop
elseif type(v.class) == 'table' then
for _, w in ipairs(v.class) do
_cell:addClass(w)
end
end
end
-- Populate the cell contents
local content = self:get_param(v.content, self.default_version)
if content == nil then
content = self.params[v.content.param_name].empty
end
_cell:wikitext(content)
-- Add the switch data if multiple values exist
data_attr_param = self:add_switch_data(v.content)
if data_attr_param then
_cell:attr('data-attr-param', data_attr_param)
end
end
-- allow classes to be defined on the whole row
if args.addClass then
_row:addClass(args.addClass)
end
return self
end
--[[
Adds a blank row of padding spanning the given number of columns
--]]
function Infobox:pad(colspan, class)
local tr = self.rtable:tag('tr'):tag('td'):attr('colspan', colspan or 1):addClass('infobox-padding')
if class then
tr:addClass(class)
end
return self
end
--[[
Adds a class to the table as a whole
--]]
function Infobox:addClass(arg)
self.rtable:addClass(arg)
return self
end
--[[
Setup config values
-- config: table containing configuration parameters
---- infobox_name = mandatory unique identifier for this infobox, used for css
---- max_buttuons = max number of switch buttons before using a dropdown list instead
--]]
function Infobox:config(config)
for k, v in pairs(config) do
if k == 'infobox_name' then
self.infobox_name = mw.ustring.gsub(v, '%s', '_')
elseif k == 'max_buttons' then
self.max_buttons = tonumber(v)
end
end
if self.infobox_name == nil then
table.insert(self.errors, 'infobox_name needs to be defined in Infobox.new()\'s config!')
end
return self
end
--[[
Counts the number of versions in the infobox
Populates Infobox.version_names
Sets Infobox.default_version
--]]
function Infobox:parse_versions()
function insert_version_name(version_name)
table.insert(self.version_names, version_name)
if smwutils.valid_subobject_name(version_name) == false then
table.insert(self.errors, 'Illegal version value: must not be "0" nor contain a "." in the first five characters')
end
end
-- Count the versions and setup self.version_names
local i = 1
while self.args_raw['version'..i] do
insert_version_name(self.args_raw['version'..i])
i = i + 1
end
self.versions = i - 1
-- Should either have 0 or 2+ versions
if self.versions == 1 then
table.insert(self.errors, 'There should be multiple versions or no versions. If defining a custom version name for a single entry, use "version=Name" instead of "version1=Name".')
end
-- Handle the no version case - check for a custom version_name
if self.versions == 0 then
insert_version_name(self.args_raw['version'] or 'DEFAULT')
self.versions = 1
end
-- Check for a default_version
if self.args_raw['default_version'] then
self.default_version = tonumber(self.args_raw['default_version'])
if self.default_version > self.versions then -- Make sure the default version exists
self.default_version = 1
end
end
end
--[[
Define all used parameters (except for default_version/version)
-- name : parameter name as used in the Template
-- func : function to validate and process the Template argument
-- If func is a function, will call func(Infobox.raw_param(name))
-- If func is a table, contains the following key-value pairs:
---- name : function
---- params : list of arguments to pass to the function (use Infobox.raw_param(),
---- Infobox.param() and Infobox.smw_param() to use arguments)
-- empty (optional) : text to display in the infobox if func returns nil, defaults to "? (edit)"
-- category_never : category to add if func returns nil for all versions
-- category_partial : category to add if func returns nil for some versions, but a value for other versions
-- category_incomplete : category to add if func returns nil for at least 1 version (i.e. category_never and category_partial combined)
-- category_complete : category to add if func returns a value for all versions
-- smw_property (optional) : if this string is defined, the parameter will be saved into smw
-- smw_func (optional) : function to validate and process the Template argument to save into smw
-- func is used by default if smw_func is not defined
--]]
function Infobox:define_params(...)
-- For every parameter, store its corresponding function to self.params
for _, v in ipairs(...) do
if v.name then
local param = {}
-- Copy the function
if type(v.func) == 'function' or type(v.func) == 'table' then
param.func = v.func
end
-- If smw_property is defined, then use smw_func, or default to func if it is not defined
if v.smw_property then
param.smw_property = v.smw_property
if type(v.smw_func) == 'function' or type(v.smw_func) == 'table' then
param.smw_func = v.smw_func
else
param.smw_func = param.func
end
end
-- If empty is not defined, default message is "? (edit)"
param.empty = v.empty or editbutton("'''?''' (edit)")
-- Get the category names
param.category_never = v.category_never
param.category_partial = v.category_partial
param.category_incomplete = v.category_incomplete
param.category_complete = v.category_complete
-- Store the param
self.params[v.name] = param
table.insert(self.param_names, v.name)
end
end
return self
end
--[[
Fetches a param value. If the value is nil, will return the default value instead
-- arg: a non-table value (string, number, etc), or Infobox.param(name), Infobox.raw_param(name), Infobox.smw_param(name)
-- version: 0/'' for default, or else a number
Returns arg if a constant
param value (or default value) if Infobox.param(name), Infobox.raw_param(name), Infobox.smw_param(name)
--]]
function Infobox:get_param(arg, version)
if version == 0 then
version = ''
end
-- Handle Infobox.param(), Infobox.raw_param(), Infobox.smw_param()
if type(arg) == 'table' then
local value = self[arg.property][arg.param_name..version]
-- If nil, grab default value (which could be nil as well)
if value == nil then
value = self[arg.property][arg.param_name]
end
return value
end
-- Everything else passes through unmodified (string, number, etc)
return arg
end
--[[
Calculates the parsed value of a param
-- param_name : param_name as a string
-- version : 0/'' for default, or else a number
-- smw : boolean, will use smw_func if true, or func is false
--]]
function Infobox:parse_param(param_name, version, smw)
if version == 0 then
version = ''
end
-- use func or smw_func depending on smw argument
local param = self.params[param_name]
local func = smw and param.smw_func or param.func
-- call functions by passing the param_name
if type(func) == 'function' then
return func(self:get_param(self.raw_param(param_name), version))
-- call tables by grabbing the function and reading the param arguments
elseif type(func) == 'table' then
local func_name = func.name
local func_params = func.params
local func_fetched_params = {}
for _, func_param in ipairs(func_params) do
table.insert(func_fetched_params, self:get_param(func_param, version))
end
return func_name(unpack(func_fetched_params))
else
table.insert(self.errors, 'Invalid param definition for '..param_name)
end
end
--[[
Parses all the param values (args_parsed and args_smw)
--]]
function Infobox:parse_params()
-- Calculate the param value for all params and all versions
for _, param_name in ipairs(self.param_names) do
for version=0, self.versions do
if version == 0 then
version = ''
end
-- get the parsed value
self.args_parsed[param_name..version] = self:parse_param(param_name, version, false)
-- Only get the smw value if smw_property is defined
if self.params[param_name].smw_property then
self.args_smw[param_name..version] = self:parse_param(param_name, version, true)
end
end
end
end
--[[
Creates the table header
--]]
function Infobox:table_header()
-- Create infobox table
self.rtable = mw.html.create('table')
:addClass('plainlinks')
:addClass('infobox')
:addClass('infobox-'..self.infobox_name)
-- Create the switch datatable if multiple versions
if self.versions > 1 then
self.rtable:addClass('infobox-switch')
self.switch_datatable = mw.html.create('div')
:addClass('infobox-switch-resources')
:addClass('infobox-resources-'..self.infobox_name)
:addClass('hidden')
end
return self
end
--[[
If multiple versions exist, creates a set of buttons for switching
-- self.max_buttons : if the number of versions exceeds this value, a dropdown will be created instead
--]]
function Infobox:buttons()
if self.versions < 2 then
return
end
-- Button caption
local buttons = self.rtable:tag('caption')
:tag('div')
:addClass('infobox-buttons')
:attr('data-default-index', self.default_version)
-- Dropdown list instead of buttons if too many versions
if self.versions > self.max_buttons then
buttons:addClass('infobox-buttons-select')
end
-- Create all the buttons
for version=1, self.versions do
local button = buttons:tag('span')
:attr('data-switch-index', version)
:attr('data-switch-anchor', '#'..self.version_names[version])
:addClass('button')
:wikitext(self.version_names[version])
-- In case of dropdown list, hide the buttons as the switch gadget will convert them to a dropdown list - we can't directly create the dropdown list here as the select/option tags are rejected by wikitext
if self.versions > self.max_buttons then
button:addClass('hidden')
end
end
end
--[[
For each version, stores a subobject for all params that have smw_property defined
--]]
function Infobox:store_smw()
for version=1, self.versions do
-- Generate a subobject name
-- Reminder - subobject name cannot have a . in the first 5 characters
local subobject_name = self.version_names[version]
-- Store each param that has smw_property defined and is not nil
local subobject = {Infobox = self.infobox_name} -- Also store the current Infobox name
for _, param_name in ipairs(self.param_names) do
local property = self.params[param_name].smw_property
if property then
value = self:get_param(self.smw_param(param_name), version)
if value ~= nil then
subobject[property] = value
end
end
end
-- Keep a copy for debugging
self.__smw_debug[subobject_name] = subobject
-- Save subobjects if not in mainspace
if mw.title.getCurrentTitle():inNamespace(0) then
local result = true
if self.versions == 1 then
result = mw.smw.set(subobject)
else
result = mw.smw.subobject(subobject, subobject_name)
end
if result ~= true then
table.insert(self.errors, 'SMW error: '..result.error)
end
end
end
end
--[[
Automatically add categories for each param as defined in define_params()
--]]
function Infobox:parse_categories()
for _, param_name in ipairs(self.param_names) do
local param = self.params[param_name]
local defined = self:is_param_defined(Infobox.param(param_name))
if defined == 0 and param.category_never then
self.categories[param.category_never] = 1
end
if defined == 1 and param.category_partial then
self.categories[param.category_partial] = 1
end
if defined < 2 and param.category_incomplete then
self.categories[param.category_incomplete] = 1
end
if defined == 2 and param.category_complete then
self.categories[param.category_complete] = 1
end
end
end
--[[
When a parameter is added into the table, add the alternative versions' data into the switch datatable
-- content : a non-table value (string, number, etc), or Infobox.param(name), Infobox.raw_param(name), Infobox.smw_param(name)
Returns the name of the parameter in the tag 'data-attr-param'
--]]
function Infobox:add_switch_data(content)
if self.versions < 2 then
return false
end
-- Only needed for non-constant params
if type(content) ~= 'table' then
return false
end
-- Only needed if the param changes value between different versions
local first_value = self:get_param(content, 1)
local all_same = true
for version=2, self.versions do
if first_value ~= self:get_param(content, version) then
all_same = false
break
end
end
if all_same then
return false
end
-- Let's build the datatable
-- datum name: Prepend raw__ or smw__ if not a parsed argument
local name = content.param_name
if content.property == 'args_raw' then
name = 'raw__' + name
end
if content.property == 'args_smw' then
name = 'smw__' + name
end
data_param = self.switch_datatable:tag('span'):attr('data-attr-param', name)
-- Add each version to the datatable
for version=1, self.versions do
text = self:get_param(content, version)
if text == nil then
text = self.params[content.param_name].empty
end
data_param:tag('span'):attr('data-attr-index', version):wikitext(text)
end
-- return the 'data-attr-param' name
return name
end
--[[
Override tostring
--]]
function Infobox:__tostring()
-- Create error messages
local error_text = ''
for _, v in ipairs(self.errors) do
error_text = error_text..'<span class="mw-message-box-error">'..v..'</span>'
end
-- Create categories
local category_text = ''
for key, _ in pairs(self.categories) do
category_text = category_text..'[[Category:'..key..']]'
end
return tostring(self.rtable) .. tostring(self.switch_datatable) .. error_text .. category_text
end
--[[
Debug function
--]]
function Infobox:dump()
-- Temporarily detach the metatable so we don't override tostring anymore, allowing us to use dumpObject
setmetatable(self, nil)
mw.log(mw.dumpObject(self))
setmetatable(self, Infobox)
mw.log(tostring(self))
end
return Infobox
b54dcb4a7821ec32cc15493753e32634787fb468
2148
2147
2024-04-10T20:50:15Z
Gau Cho
5
Scribunto
text/plain
--[=[
-- For documentation, see [[Module:Infobox/doc]]
--]=]
-- <nowiki>
local editbutton = require('Module:Edit button')
local smwutils = require('Module:SMW Utils')
local Infobox = {}
Infobox.__index = Infobox
--[[
Infobox class
-- config: table containing configuration parameters
-- params : definitions for each used value
-- args : values passed from the Template
---- the following values are treated specially: default_version, version, version1, version2...
--]]
function Infobox.new(config, params, args)
local obj = setmetatable({
args_raw = args, -- parameters (uncleaned)
args_parsed = {}, -- parsed parameters
args_smw = {}, -- parameters parsed for smw
infobox_name = nil, -- template name
param_names = {}, -- ordered param list
params = {}, -- param definitions
max_buttons = 6, -- If there are more buttons than the max, the buttons will become a dropdown menu
default_version = 1, -- default version to populate the infobox
versions = nil, -- number of versions
version_names = {}, -- title of each version (for selection and SMW)
rtable = nil, -- infobox table to return at the end
switch_datatable = '', -- datatable for javascript for switch infoboxes
categories = {}, -- set of categories
errors = {}, -- list of errors
__smw_debug = {}, -- debug data for smw subobjects
},
Infobox)
-- Step 1, setup config vars and count the versions
obj:config(config)
obj:parse_versions()
-- Step 2, process the params
obj:define_params(params)
obj:parse_params()
-- Table
obj:table_header()
obj:buttons()
-- Misc
obj:store_smw()
obj:parse_categories()
if obj.args_raw.__dump then
obj:dump()
end
return obj
end
--[[
Refers to a param after being processed by the validating func
Used in add_row(), define_params() and is_param_defined()
--]]
function Infobox.param(param_name)
param = {
property = 'args_parsed',
param_name = param_name,
}
return param
end
--[[
Refers to a param in raw form as passed from the Template
Used in add_row(), define_params() and is_param_defined()
--]]
function Infobox.raw_param(param_name)
param = {
property = 'args_raw',
param_name = param_name,
}
return param
end
--[[
Refers to a param after being processed by the validating smw_func
Used in add_row(), define_params() and is_param_defined()
--]]
function Infobox.smw_param(param_name)
param = {
property = 'args_smw',
param_name = param_name,
}
return param
end
--[[
Checks to see if a param is defined.
-- param: Infobox.param(name), Infobox.raw_param(name) or Infobox.smw_param(name)
Returns 0 if param is never defined
1 if param is defined for a fraction of the versions
2 if param is defined for all versions
]]
function Infobox:is_param_defined(param)
local undefined = 0
local defined = 0
for version = 1, self.versions do
local value = self:get_param(param, version)
if value ~= nil then
defined = 1
else
undefined = 1
end
end
return 1 + defined - undefined
end
--[[
Adds a row to the infobox table
Parameter should be a table of cells, where each cell is a table with the following arguments:
-- tag : 'td' or 'th'
-- content : a string or Infobox.param(name), Infobox.raw_param(name), Infobox.smw_param(name)
-- attr (optional) : mw.html:attr({ arg1 = '1', ... })
-- css (optional) : mw.html:css({ arg1 = '1', ...)
-- class (optional) : mw.html:addClass('arg')
---- class also supports a table of values, even though mw.html:addClass() does not
---- common classes: infobox-subheader
-- rowspan (optional) : mw.html:attr('rowspan',arg)
-- colspan (optional) : mw.html:attr('colspan',arg)
-- title (optional) : mw.html:attr('title',arg)
The row itself may be assigned a single class by setting the value of the key addClass
-- addClass : mw.html:addClass('arg')
-- this function currently only supports a single string
--]]
function Infobox:add_row(...)
local args = ...
local _row = self.rtable:tag('tr')
-- For each cell
for _, v in ipairs(args) do
local _cell = _row:tag(v.tag)
-- Optional parameters
if v.attr then
_cell:attr(v.attr)
end
if v.colspan then
_cell:attr('colspan',v.colspan)
end
if v.rowspan then
_cell:attr('rowspan',v.rowspan)
end
if v.title then
_cell:attr('title',v.title)
end
if v.css then
_cell:css(v.css)
end
if v.class then
if type(v.class) == 'string' then
_cell:addClass(v.class)
-- mw.html:addClass() doesn't function with tables, add in a loop
elseif type(v.class) == 'table' then
for _, w in ipairs(v.class) do
_cell:addClass(w)
end
end
end
-- Populate the cell contents
local content = self:get_param(v.content, self.default_version)
if content == nil then
content = self.params[v.content.param_name].empty
end
_cell:wikitext(content)
-- Add the switch data if multiple values exist
data_attr_param = self:add_switch_data(v.content)
if data_attr_param then
_cell:attr('data-attr-param', data_attr_param)
end
end
-- allow classes to be defined on the whole row
if args.addClass then
_row:addClass(args.addClass)
end
return self
end
--[[
Adds a blank row of padding spanning the given number of columns
--]]
function Infobox:pad(colspan, class)
local tr = self.rtable:tag('tr'):tag('td'):attr('colspan', colspan or 1):addClass('infobox-padding')
if class then
tr:addClass(class)
end
return self
end
--[[
Adds a class to the table as a whole
--]]
function Infobox:addClass(arg)
self.rtable:addClass(arg)
return self
end
--[[
Setup config values
-- config: table containing configuration parameters
---- infobox_name = mandatory unique identifier for this infobox, used for css
---- max_buttuons = max number of switch buttons before using a dropdown list instead
--]]
function Infobox:config(config)
for k, v in pairs(config) do
if k == 'infobox_name' then
self.infobox_name = mw.ustring.gsub(v, '%s', '_')
elseif k == 'max_buttons' then
self.max_buttons = tonumber(v)
end
end
if self.infobox_name == nil then
table.insert(self.errors, 'infobox_name needs to be defined in Infobox.new()\'s config!')
end
return self
end
--[[
Counts the number of versions in the infobox
Populates Infobox.version_names
Sets Infobox.default_version
--]]
function Infobox:parse_versions()
function insert_version_name(version_name)
table.insert(self.version_names, version_name)
if smwutils.valid_subobject_name(version_name) == false then
table.insert(self.errors, 'Illegal version value: must not be "0" nor contain a "." in the first five characters')
end
end
-- Count the versions and setup self.version_names
local i = 1
while self.args_raw['version'..i] do
insert_version_name(self.args_raw['version'..i])
i = i + 1
end
self.versions = i - 1
-- Should either have 0 or 2+ versions
if self.versions == 1 then
table.insert(self.errors, 'There should be multiple versions or no versions. If defining a custom version name for a single entry, use "version=Name" instead of "version1=Name".')
end
-- Handle the no version case - check for a custom version_name
if self.versions == 0 then
insert_version_name(self.args_raw['version'] or 'DEFAULT')
self.versions = 1
end
-- Check for a default_version
if self.args_raw['default_version'] then
self.default_version = tonumber(self.args_raw['default_version'])
if self.default_version > self.versions then -- Make sure the default version exists
self.default_version = 1
end
end
end
--[[
Define all used parameters (except for default_version/version)
-- name : parameter name as used in the Template
-- func : function to validate and process the Template argument
-- If func is a function, will call func(Infobox.raw_param(name))
-- If func is a table, contains the following key-value pairs:
---- name : function
---- params : list of arguments to pass to the function (use Infobox.raw_param(),
---- Infobox.param() and Infobox.smw_param() to use arguments)
-- empty (optional) : text to display in the infobox if func returns nil, defaults to "? (edit)"
-- category_never : category to add if func returns nil for all versions
-- category_partial : category to add if func returns nil for some versions, but a value for other versions
-- category_incomplete : category to add if func returns nil for at least 1 version (i.e. category_never and category_partial combined)
-- category_complete : category to add if func returns a value for all versions
-- smw_property (optional) : if this string is defined, the parameter will be saved into smw
-- smw_func (optional) : function to validate and process the Template argument to save into smw
-- func is used by default if smw_func is not defined
--]]
function Infobox:define_params(...)
-- For every parameter, store its corresponding function to self.params
for _, v in ipairs(...) do
if v.name then
local param = {}
-- Copy the function
if type(v.func) == 'function' or type(v.func) == 'table' then
param.func = v.func
end
-- If smw_property is defined, then use smw_func, or default to func if it is not defined
if v.smw_property then
param.smw_property = v.smw_property
if type(v.smw_func) == 'function' or type(v.smw_func) == 'table' then
param.smw_func = v.smw_func
else
param.smw_func = param.func
end
end
-- If empty is not defined, default message is "? (edit)"
param.empty = v.empty or editbutton("'''?''' (edit)")
-- Get the category names
param.category_never = v.category_never
param.category_partial = v.category_partial
param.category_incomplete = v.category_incomplete
param.category_complete = v.category_complete
-- Store the param
self.params[v.name] = param
table.insert(self.param_names, v.name)
end
end
return self
end
--[[
Fetches a param value. If the value is nil, will return the default value instead
-- arg: a non-table value (string, number, etc), or Infobox.param(name), Infobox.raw_param(name), Infobox.smw_param(name)
-- version: 0/'' for default, or else a number
Returns arg if a constant
param value (or default value) if Infobox.param(name), Infobox.raw_param(name), Infobox.smw_param(name)
--]]
function Infobox:get_param(arg, version)
if version == 0 then
version = ''
end
-- Handle Infobox.param(), Infobox.raw_param(), Infobox.smw_param()
if type(arg) == 'table' then
local value = self[arg.property][arg.param_name..version]
-- If nil, grab default value (which could be nil as well)
if value == nil then
value = self[arg.property][arg.param_name]
end
return value
end
-- Everything else passes through unmodified (string, number, etc)
return arg
end
--[[
Calculates the parsed value of a param
-- param_name : param_name as a string
-- version : 0/'' for default, or else a number
-- smw : boolean, will use smw_func if true, or func is false
--]]
function Infobox:parse_param(param_name, version, smw)
if version == 0 then
version = ''
end
-- use func or smw_func depending on smw argument
local param = self.params[param_name]
local func = smw and param.smw_func or param.func
-- call functions by passing the param_name
if type(func) == 'function' then
return func(self:get_param(self.raw_param(param_name), version))
-- call tables by grabbing the function and reading the param arguments
elseif type(func) == 'table' then
local func_name = func.name
local func_params = func.params
local func_fetched_params = {}
for _, func_param in ipairs(func_params) do
table.insert(func_fetched_params, self:get_param(func_param, version))
end
return func_name(unpack(func_fetched_params))
else
table.insert(self.errors, 'Invalid param definition for '..param_name)
end
end
--[[
Parses all the param values (args_parsed and args_smw)
--]]
function Infobox:parse_params()
-- Calculate the param value for all params and all versions
for _, param_name in ipairs(self.param_names) do
for version=0, self.versions do
if version == 0 then
version = ''
end
-- get the parsed value
self.args_parsed[param_name..version] = self:parse_param(param_name, version, false)
-- Only get the smw value if smw_property is defined
if self.params[param_name].smw_property then
self.args_smw[param_name..version] = self:parse_param(param_name, version, true)
end
end
end
end
--[[
Creates the table header
--]]
function Infobox:table_header()
-- Create infobox table
self.rtable = mw.html.create('table')
:addClass('plainlinks')
:addClass('infobox')
:addClass('infobox-'..self.infobox_name)
-- Create the switch datatable if multiple versions
if self.versions > 1 then
self.rtable:addClass('infobox-switch')
self.switch_datatable = mw.html.create('div')
:addClass('infobox-switch-resources')
:addClass('infobox-resources-'..self.infobox_name)
:addClass('hidden')
end
return self
end
--[[
If multiple versions exist, creates a set of buttons for switching
-- self.max_buttons : if the number of versions exceeds this value, a dropdown will be created instead
--]]
function Infobox:buttons()
if self.versions < 2 then
return
end
-- Button caption
local buttons = self.rtable:tag('caption')
:tag('div')
:addClass('infobox-buttons')
:attr('data-default-index', self.default_version)
-- Dropdown list instead of buttons if too many versions
if self.versions > self.max_buttons then
buttons:addClass('infobox-buttons-select')
end
-- Create all the buttons
for version=1, self.versions do
local button = buttons:tag('span')
:attr('data-switch-index', version)
:attr('data-switch-anchor', '#'..self.version_names[version])
:addClass('button')
:wikitext(self.version_names[version])
-- In case of dropdown list, hide the buttons as the switch gadget will convert them to a dropdown list - we can't directly create the dropdown list here as the select/option tags are rejected by wikitext
if self.versions > self.max_buttons then
button:addClass('hidden')
end
end
end
--[[
For each version, stores a subobject for all params that have smw_property defined
--]]
function Infobox:store_smw()
for version=1, self.versions do
-- Generate a subobject name
-- Reminder - subobject name cannot have a . in the first 5 characters
local subobject_name = self.version_names[version]
-- Store each param that has smw_property defined and is not nil
local subobject = {Infobox = self.infobox_name} -- Also store the current Infobox name
for _, param_name in ipairs(self.param_names) do
local property = self.params[param_name].smw_property
if property then
value = self:get_param(self.smw_param(param_name), version)
if value ~= nil then
subobject[property] = value
end
end
end
-- Keep a copy for debugging
self.__smw_debug[subobject_name] = subobject
-- Save subobjects if not in mainspace
if mw.title.getCurrentTitle():inNamespace(0) then
local result = true
if self.versions == 1 then
result = mw.smw.set(subobject)
else
result = mw.smw.subobject(subobject, subobject_name)
end
if result ~= true then
table.insert(self.errors, 'SMW error: '..result.error)
end
end
end
end
--[[
Automatically add categories for each param as defined in define_params()
--]]
function Infobox:parse_categories()
for _, param_name in ipairs(self.param_names) do
local param = self.params[param_name]
local defined = self:is_param_defined(Infobox.param(param_name))
if defined == 0 and param.category_never then
self.categories[param.category_never] = 1
end
if defined == 1 and param.category_partial then
self.categories[param.category_partial] = 1
end
if defined < 2 and param.category_incomplete then
self.categories[param.category_incomplete] = 1
end
if defined == 2 and param.category_complete then
self.categories[param.category_complete] = 1
end
end
end
--[[
When a parameter is added into the table, add the alternative versions' data into the switch datatable
-- content : a non-table value (string, number, etc), or Infobox.param(name), Infobox.raw_param(name), Infobox.smw_param(name)
Returns the name of the parameter in the tag 'data-attr-param'
--]]
function Infobox:add_switch_data(content)
if self.versions < 2 then
return false
end
-- Only needed for non-constant params
if type(content) ~= 'table' then
return false
end
-- Only needed if the param changes value between different versions
local first_value = self:get_param(content, 1)
local all_same = true
for version=2, self.versions do
if first_value ~= self:get_param(content, version) then
all_same = false
break
end
end
if all_same then
return false
end
-- Let's build the datatable
-- datum name: Prepend raw__ or smw__ if not a parsed argument
local name = content.param_name
if content.property == 'args_raw' then
name = 'raw__' + name
end
if content.property == 'args_smw' then
name = 'smw__' + name
end
data_param = self.switch_datatable:tag('span'):attr('data-attr-param', name)
-- Add each version to the datatable
for version=1, self.versions do
text = self:get_param(content, version)
if text == nil then
text = self.params[content.param_name].empty
end
data_param:tag('span'):attr('data-attr-index', version):wikitext(text)
end
-- return the 'data-attr-param' name
return name
end
--[[
Override tostring
--]]
function Infobox:__tostring()
-- Create error messages
local error_text = ''
for _, v in ipairs(self.errors) do
error_text = error_text..'<span class="mw-message-box-error">'..v..'</span>'
end
-- Create categories
local category_text = ''
for key, _ in pairs(self.categories) do
category_text = category_text..'[[Category:'..key..']]'
end
return tostring(self.rtable) .. tostring(self.switch_datatable) .. error_text .. category_text
end
--[[
Debug function
--]]
function Infobox:dump()
-- Temporarily detach the metatable so we don't override tostring anymore, allowing us to use dumpObject
setmetatable(self, nil)
mw.log(mw.dumpObject(self))
setmetatable(self, Infobox)
mw.log(tostring(self))
end
return Infobox
008922114efdbe7b98cfc04585f95b356c2a08ff
2149
2148
2024-04-10T20:53:22Z
Gau Cho
5
Scribunto
text/plain
--[=[
-- For documentation, see [[Module:Infobox/doc]]
--]=]
-- <nowiki>
local editbutton = require('Module:Edit button')
local smwutils = require('Module:SMW Utils')
local Infobox = {}
Infobox.__index = Infobox
--[[
Infobox class
-- config: table containing configuration parameters
-- params : definitions for each used value
-- args : values passed from the Template
---- the following values are treated specially: default_version, version, version1, version2...
--]]
function Infobox.new(config, params, args)
local obj = setmetatable({
args_raw = args, -- parameters (uncleaned)
args_parsed = {}, -- parsed parameters
args_smw = {}, -- parameters parsed for smw
infobox_name = nil, -- template name
param_names = {}, -- ordered param list
params = {}, -- param definitions
max_buttons = 6, -- If there are more buttons than the max, the buttons will become a dropdown menu
default_version = 1, -- default version to populate the infobox
versions = nil, -- number of versions
version_names = {}, -- title of each version (for selection and SMW)
rtable = nil, -- infobox table to return at the end
switch_datatable = '', -- datatable for javascript for switch infoboxes
categories = {}, -- set of categories
errors = {}, -- list of errors
__smw_debug = {}, -- debug data for smw subobjects
},
Infobox)
-- Step 1, setup config vars and count the versions
obj:config(config)
obj:parse_versions()
-- Step 2, process the params
obj:define_params(params)
obj:parse_params()
-- Table
obj:table_header()
obj:buttons()
-- Misc
obj:store_smw()
obj:parse_categories()
return obj
end
--[[
Refers to a param after being processed by the validating func
Used in add_row(), define_params() and is_param_defined()
--]]
function Infobox.param(param_name)
param = {
property = 'args_parsed',
param_name = param_name,
}
return param
end
--[[
Refers to a param in raw form as passed from the Template
Used in add_row(), define_params() and is_param_defined()
--]]
function Infobox.raw_param(param_name)
param = {
property = 'args_raw',
param_name = param_name,
}
return param
end
--[[
Refers to a param after being processed by the validating smw_func
Used in add_row(), define_params() and is_param_defined()
--]]
function Infobox.smw_param(param_name)
param = {
property = 'args_smw',
param_name = param_name,
}
return param
end
--[[
Checks to see if a param is defined.
-- param: Infobox.param(name), Infobox.raw_param(name) or Infobox.smw_param(name)
Returns 0 if param is never defined
1 if param is defined for a fraction of the versions
2 if param is defined for all versions
]]
function Infobox:is_param_defined(param)
local undefined = 0
local defined = 0
for version = 1, self.versions do
local value = self:get_param(param, version)
if value ~= nil then
defined = 1
else
undefined = 1
end
end
return 1 + defined - undefined
end
--[[
Adds a row to the infobox table
Parameter should be a table of cells, where each cell is a table with the following arguments:
-- tag : 'td' or 'th'
-- content : a string or Infobox.param(name), Infobox.raw_param(name), Infobox.smw_param(name)
-- attr (optional) : mw.html:attr({ arg1 = '1', ... })
-- css (optional) : mw.html:css({ arg1 = '1', ...)
-- class (optional) : mw.html:addClass('arg')
---- class also supports a table of values, even though mw.html:addClass() does not
---- common classes: infobox-subheader
-- rowspan (optional) : mw.html:attr('rowspan',arg)
-- colspan (optional) : mw.html:attr('colspan',arg)
-- title (optional) : mw.html:attr('title',arg)
The row itself may be assigned a single class by setting the value of the key addClass
-- addClass : mw.html:addClass('arg')
-- this function currently only supports a single string
--]]
function Infobox:add_row(...)
local args = ...
local _row = self.rtable:tag('tr')
-- For each cell
for _, v in ipairs(args) do
local _cell = _row:tag(v.tag)
-- Optional parameters
if v.attr then
_cell:attr(v.attr)
end
if v.colspan then
_cell:attr('colspan',v.colspan)
end
if v.rowspan then
_cell:attr('rowspan',v.rowspan)
end
if v.title then
_cell:attr('title',v.title)
end
if v.css then
_cell:css(v.css)
end
if v.class then
if type(v.class) == 'string' then
_cell:addClass(v.class)
-- mw.html:addClass() doesn't function with tables, add in a loop
elseif type(v.class) == 'table' then
for _, w in ipairs(v.class) do
_cell:addClass(w)
end
end
end
-- Populate the cell contents
local content = self:get_param(v.content, self.default_version)
if content == nil then
content = self.params[v.content.param_name].empty
end
_cell:wikitext(content)
-- Add the switch data if multiple values exist
data_attr_param = self:add_switch_data(v.content)
if data_attr_param then
_cell:attr('data-attr-param', data_attr_param)
end
end
-- allow classes to be defined on the whole row
if args.addClass then
_row:addClass(args.addClass)
end
return self
end
--[[
Adds a blank row of padding spanning the given number of columns
--]]
function Infobox:pad(colspan, class)
local tr = self.rtable:tag('tr'):tag('td'):attr('colspan', colspan or 1):addClass('infobox-padding')
if class then
tr:addClass(class)
end
return self
end
--[[
Adds a class to the table as a whole
--]]
function Infobox:addClass(arg)
self.rtable:addClass(arg)
return self
end
--[[
Setup config values
-- config: table containing configuration parameters
---- infobox_name = mandatory unique identifier for this infobox, used for css
---- max_buttuons = max number of switch buttons before using a dropdown list instead
--]]
function Infobox:config(config)
for k, v in pairs(config) do
if k == 'infobox_name' then
self.infobox_name = mw.ustring.gsub(v, '%s', '_')
elseif k == 'max_buttons' then
self.max_buttons = tonumber(v)
end
end
if self.infobox_name == nil then
table.insert(self.errors, 'infobox_name needs to be defined in Infobox.new()\'s config!')
end
return self
end
--[[
Counts the number of versions in the infobox
Populates Infobox.version_names
Sets Infobox.default_version
--]]
function Infobox:parse_versions()
function insert_version_name(version_name)
table.insert(self.version_names, version_name)
if smwutils.valid_subobject_name(version_name) == false then
table.insert(self.errors, 'Illegal version value: must not be "0" nor contain a "." in the first five characters')
end
end
-- Count the versions and setup self.version_names
local i = 1
while self.args_raw['version'..i] do
insert_version_name(self.args_raw['version'..i])
i = i + 1
end
self.versions = i - 1
-- Should either have 0 or 2+ versions
if self.versions == 1 then
table.insert(self.errors, 'There should be multiple versions or no versions. If defining a custom version name for a single entry, use "version=Name" instead of "version1=Name".')
end
-- Handle the no version case - check for a custom version_name
if self.versions == 0 then
insert_version_name(self.args_raw['version'] or 'DEFAULT')
self.versions = 1
end
-- Check for a default_version
if self.args_raw['default_version'] then
self.default_version = tonumber(self.args_raw['default_version'])
if self.default_version > self.versions then -- Make sure the default version exists
self.default_version = 1
end
end
end
--[[
Define all used parameters (except for default_version/version)
-- name : parameter name as used in the Template
-- func : function to validate and process the Template argument
-- If func is a function, will call func(Infobox.raw_param(name))
-- If func is a table, contains the following key-value pairs:
---- name : function
---- params : list of arguments to pass to the function (use Infobox.raw_param(),
---- Infobox.param() and Infobox.smw_param() to use arguments)
-- empty (optional) : text to display in the infobox if func returns nil, defaults to "? (edit)"
-- category_never : category to add if func returns nil for all versions
-- category_partial : category to add if func returns nil for some versions, but a value for other versions
-- category_incomplete : category to add if func returns nil for at least 1 version (i.e. category_never and category_partial combined)
-- category_complete : category to add if func returns a value for all versions
-- smw_property (optional) : if this string is defined, the parameter will be saved into smw
-- smw_func (optional) : function to validate and process the Template argument to save into smw
-- func is used by default if smw_func is not defined
--]]
function Infobox:define_params(...)
-- For every parameter, store its corresponding function to self.params
for _, v in ipairs(...) do
if v.name then
local param = {}
-- Copy the function
if type(v.func) == 'function' or type(v.func) == 'table' then
param.func = v.func
end
-- If smw_property is defined, then use smw_func, or default to func if it is not defined
if v.smw_property then
param.smw_property = v.smw_property
if type(v.smw_func) == 'function' or type(v.smw_func) == 'table' then
param.smw_func = v.smw_func
else
param.smw_func = param.func
end
end
-- If empty is not defined, default message is "? (edit)"
param.empty = v.empty or editbutton("'''?''' (edit)")
-- Get the category names
param.category_never = v.category_never
param.category_partial = v.category_partial
param.category_incomplete = v.category_incomplete
param.category_complete = v.category_complete
-- Store the param
self.params[v.name] = param
table.insert(self.param_names, v.name)
end
end
return self
end
--[[
Fetches a param value. If the value is nil, will return the default value instead
-- arg: a non-table value (string, number, etc), or Infobox.param(name), Infobox.raw_param(name), Infobox.smw_param(name)
-- version: 0/'' for default, or else a number
Returns arg if a constant
param value (or default value) if Infobox.param(name), Infobox.raw_param(name), Infobox.smw_param(name)
--]]
function Infobox:get_param(arg, version)
if version == 0 then
version = ''
end
-- Handle Infobox.param(), Infobox.raw_param(), Infobox.smw_param()
if type(arg) == 'table' then
local value = self[arg.property][arg.param_name..version]
-- If nil, grab default value (which could be nil as well)
if value == nil then
value = self[arg.property][arg.param_name]
end
return value
end
-- Everything else passes through unmodified (string, number, etc)
return arg
end
--[[
Calculates the parsed value of a param
-- param_name : param_name as a string
-- version : 0/'' for default, or else a number
-- smw : boolean, will use smw_func if true, or func is false
--]]
function Infobox:parse_param(param_name, version, smw)
if version == 0 then
version = ''
end
-- use func or smw_func depending on smw argument
local param = self.params[param_name]
local func = smw and param.smw_func or param.func
-- call functions by passing the param_name
if type(func) == 'function' then
return func(self:get_param(self.raw_param(param_name), version))
-- call tables by grabbing the function and reading the param arguments
elseif type(func) == 'table' then
local func_name = func.name
local func_params = func.params
local func_fetched_params = {}
for _, func_param in ipairs(func_params) do
table.insert(func_fetched_params, self:get_param(func_param, version))
end
return func_name(unpack(func_fetched_params))
else
table.insert(self.errors, 'Invalid param definition for '..param_name)
end
end
--[[
Parses all the param values (args_parsed and args_smw)
--]]
function Infobox:parse_params()
-- Calculate the param value for all params and all versions
for _, param_name in ipairs(self.param_names) do
for version=0, self.versions do
if version == 0 then
version = ''
end
-- get the parsed value
self.args_parsed[param_name..version] = self:parse_param(param_name, version, false)
-- Only get the smw value if smw_property is defined
if self.params[param_name].smw_property then
self.args_smw[param_name..version] = self:parse_param(param_name, version, true)
end
end
end
end
--[[
Creates the table header
--]]
function Infobox:table_header()
-- Create infobox table
self.rtable = mw.html.create('table')
:addClass('plainlinks')
:addClass('infobox')
:addClass('infobox-'..self.infobox_name)
-- Create the switch datatable if multiple versions
if self.versions > 1 then
self.rtable:addClass('infobox-switch')
self.switch_datatable = mw.html.create('div')
:addClass('infobox-switch-resources')
:addClass('infobox-resources-'..self.infobox_name)
:addClass('hidden')
end
return self
end
--[[
If multiple versions exist, creates a set of buttons for switching
-- self.max_buttons : if the number of versions exceeds this value, a dropdown will be created instead
--]]
function Infobox:buttons()
if self.versions < 2 then
return
end
-- Button caption
local buttons = self.rtable:tag('caption')
:tag('div')
:addClass('infobox-buttons')
:attr('data-default-index', self.default_version)
-- Dropdown list instead of buttons if too many versions
if self.versions > self.max_buttons then
buttons:addClass('infobox-buttons-select')
end
-- Create all the buttons
for version=1, self.versions do
local button = buttons:tag('span')
:attr('data-switch-index', version)
:attr('data-switch-anchor', '#'..self.version_names[version])
:addClass('button')
:wikitext(self.version_names[version])
-- In case of dropdown list, hide the buttons as the switch gadget will convert them to a dropdown list - we can't directly create the dropdown list here as the select/option tags are rejected by wikitext
if self.versions > self.max_buttons then
button:addClass('hidden')
end
end
end
--[[
For each version, stores a subobject for all params that have smw_property defined
--]]
function Infobox:store_smw()
for version=1, self.versions do
-- Generate a subobject name
-- Reminder - subobject name cannot have a . in the first 5 characters
local subobject_name = self.version_names[version]
-- Store each param that has smw_property defined and is not nil
local subobject = {Infobox = self.infobox_name} -- Also store the current Infobox name
for _, param_name in ipairs(self.param_names) do
local property = self.params[param_name].smw_property
if property then
value = self:get_param(self.smw_param(param_name), version)
if value ~= nil then
subobject[property] = value
end
end
end
-- Keep a copy for debugging
self.__smw_debug[subobject_name] = subobject
-- Save subobjects if not in mainspace
if mw.title.getCurrentTitle():inNamespace(0) then
local result = true
if self.versions == 1 then
result = mw.smw.set(subobject)
else
result = mw.smw.subobject(subobject, subobject_name)
end
if result ~= true then
table.insert(self.errors, 'SMW error: '..result.error)
end
end
end
end
--[[
Automatically add categories for each param as defined in define_params()
--]]
function Infobox:parse_categories()
for _, param_name in ipairs(self.param_names) do
local param = self.params[param_name]
local defined = self:is_param_defined(Infobox.param(param_name))
if defined == 0 and param.category_never then
self.categories[param.category_never] = 1
end
if defined == 1 and param.category_partial then
self.categories[param.category_partial] = 1
end
if defined < 2 and param.category_incomplete then
self.categories[param.category_incomplete] = 1
end
if defined == 2 and param.category_complete then
self.categories[param.category_complete] = 1
end
end
end
--[[
When a parameter is added into the table, add the alternative versions' data into the switch datatable
-- content : a non-table value (string, number, etc), or Infobox.param(name), Infobox.raw_param(name), Infobox.smw_param(name)
Returns the name of the parameter in the tag 'data-attr-param'
--]]
function Infobox:add_switch_data(content)
if self.versions < 2 then
return false
end
-- Only needed for non-constant params
if type(content) ~= 'table' then
return false
end
-- Only needed if the param changes value between different versions
local first_value = self:get_param(content, 1)
local all_same = true
for version=2, self.versions do
if first_value ~= self:get_param(content, version) then
all_same = false
break
end
end
if all_same then
return false
end
-- Let's build the datatable
-- datum name: Prepend raw__ or smw__ if not a parsed argument
local name = content.param_name
if content.property == 'args_raw' then
name = 'raw__' + name
end
if content.property == 'args_smw' then
name = 'smw__' + name
end
data_param = self.switch_datatable:tag('span'):attr('data-attr-param', name)
-- Add each version to the datatable
for version=1, self.versions do
text = self:get_param(content, version)
if text == nil then
text = self.params[content.param_name].empty
end
data_param:tag('span'):attr('data-attr-index', version):wikitext(text)
end
-- return the 'data-attr-param' name
return name
end
--[[
Override tostring
--]]
function Infobox:__tostring()
-- Create error messages
local error_text = ''
for _, v in ipairs(self.errors) do
error_text = error_text..'<span class="mw-message-box-error">'..v..'</span>'
end
-- Create categories
local category_text = ''
for key, _ in pairs(self.categories) do
category_text = category_text..'[[Category:'..key..']]'
end
local dump = ''
if obj.args_raw.__dump then
setmetatable(self, nil)
dump = mw.dumpObject(self)
setmetatable(self, Infobox)
end
return tostring(self.rtable) .. tostring(self.switch_datatable) .. error_text .. category_text .. dump
end
--[[
Debug function
--]]
function Infobox:dump()
-- Temporarily detach the metatable so we don't override tostring anymore, allowing us to use dumpObject
setmetatable(self, nil)
mw.log(mw.dumpObject(self))
setmetatable(self, Infobox)
mw.log(tostring(self))
end
return Infobox
933d6280a9e4529e879ff1ec63a5d610675be26d
2150
2149
2024-04-10T20:53:42Z
Gau Cho
5
Scribunto
text/plain
--[=[
-- For documentation, see [[Module:Infobox/doc]]
--]=]
-- <nowiki>
local editbutton = require('Module:Edit button')
local smwutils = require('Module:SMW Utils')
local Infobox = {}
Infobox.__index = Infobox
--[[
Infobox class
-- config: table containing configuration parameters
-- params : definitions for each used value
-- args : values passed from the Template
---- the following values are treated specially: default_version, version, version1, version2...
--]]
function Infobox.new(config, params, args)
local obj = setmetatable({
args_raw = args, -- parameters (uncleaned)
args_parsed = {}, -- parsed parameters
args_smw = {}, -- parameters parsed for smw
infobox_name = nil, -- template name
param_names = {}, -- ordered param list
params = {}, -- param definitions
max_buttons = 6, -- If there are more buttons than the max, the buttons will become a dropdown menu
default_version = 1, -- default version to populate the infobox
versions = nil, -- number of versions
version_names = {}, -- title of each version (for selection and SMW)
rtable = nil, -- infobox table to return at the end
switch_datatable = '', -- datatable for javascript for switch infoboxes
categories = {}, -- set of categories
errors = {}, -- list of errors
__smw_debug = {}, -- debug data for smw subobjects
},
Infobox)
-- Step 1, setup config vars and count the versions
obj:config(config)
obj:parse_versions()
-- Step 2, process the params
obj:define_params(params)
obj:parse_params()
-- Table
obj:table_header()
obj:buttons()
-- Misc
obj:store_smw()
obj:parse_categories()
return obj
end
--[[
Refers to a param after being processed by the validating func
Used in add_row(), define_params() and is_param_defined()
--]]
function Infobox.param(param_name)
param = {
property = 'args_parsed',
param_name = param_name,
}
return param
end
--[[
Refers to a param in raw form as passed from the Template
Used in add_row(), define_params() and is_param_defined()
--]]
function Infobox.raw_param(param_name)
param = {
property = 'args_raw',
param_name = param_name,
}
return param
end
--[[
Refers to a param after being processed by the validating smw_func
Used in add_row(), define_params() and is_param_defined()
--]]
function Infobox.smw_param(param_name)
param = {
property = 'args_smw',
param_name = param_name,
}
return param
end
--[[
Checks to see if a param is defined.
-- param: Infobox.param(name), Infobox.raw_param(name) or Infobox.smw_param(name)
Returns 0 if param is never defined
1 if param is defined for a fraction of the versions
2 if param is defined for all versions
]]
function Infobox:is_param_defined(param)
local undefined = 0
local defined = 0
for version = 1, self.versions do
local value = self:get_param(param, version)
if value ~= nil then
defined = 1
else
undefined = 1
end
end
return 1 + defined - undefined
end
--[[
Adds a row to the infobox table
Parameter should be a table of cells, where each cell is a table with the following arguments:
-- tag : 'td' or 'th'
-- content : a string or Infobox.param(name), Infobox.raw_param(name), Infobox.smw_param(name)
-- attr (optional) : mw.html:attr({ arg1 = '1', ... })
-- css (optional) : mw.html:css({ arg1 = '1', ...)
-- class (optional) : mw.html:addClass('arg')
---- class also supports a table of values, even though mw.html:addClass() does not
---- common classes: infobox-subheader
-- rowspan (optional) : mw.html:attr('rowspan',arg)
-- colspan (optional) : mw.html:attr('colspan',arg)
-- title (optional) : mw.html:attr('title',arg)
The row itself may be assigned a single class by setting the value of the key addClass
-- addClass : mw.html:addClass('arg')
-- this function currently only supports a single string
--]]
function Infobox:add_row(...)
local args = ...
local _row = self.rtable:tag('tr')
-- For each cell
for _, v in ipairs(args) do
local _cell = _row:tag(v.tag)
-- Optional parameters
if v.attr then
_cell:attr(v.attr)
end
if v.colspan then
_cell:attr('colspan',v.colspan)
end
if v.rowspan then
_cell:attr('rowspan',v.rowspan)
end
if v.title then
_cell:attr('title',v.title)
end
if v.css then
_cell:css(v.css)
end
if v.class then
if type(v.class) == 'string' then
_cell:addClass(v.class)
-- mw.html:addClass() doesn't function with tables, add in a loop
elseif type(v.class) == 'table' then
for _, w in ipairs(v.class) do
_cell:addClass(w)
end
end
end
-- Populate the cell contents
local content = self:get_param(v.content, self.default_version)
if content == nil then
content = self.params[v.content.param_name].empty
end
_cell:wikitext(content)
-- Add the switch data if multiple values exist
data_attr_param = self:add_switch_data(v.content)
if data_attr_param then
_cell:attr('data-attr-param', data_attr_param)
end
end
-- allow classes to be defined on the whole row
if args.addClass then
_row:addClass(args.addClass)
end
return self
end
--[[
Adds a blank row of padding spanning the given number of columns
--]]
function Infobox:pad(colspan, class)
local tr = self.rtable:tag('tr'):tag('td'):attr('colspan', colspan or 1):addClass('infobox-padding')
if class then
tr:addClass(class)
end
return self
end
--[[
Adds a class to the table as a whole
--]]
function Infobox:addClass(arg)
self.rtable:addClass(arg)
return self
end
--[[
Setup config values
-- config: table containing configuration parameters
---- infobox_name = mandatory unique identifier for this infobox, used for css
---- max_buttuons = max number of switch buttons before using a dropdown list instead
--]]
function Infobox:config(config)
for k, v in pairs(config) do
if k == 'infobox_name' then
self.infobox_name = mw.ustring.gsub(v, '%s', '_')
elseif k == 'max_buttons' then
self.max_buttons = tonumber(v)
end
end
if self.infobox_name == nil then
table.insert(self.errors, 'infobox_name needs to be defined in Infobox.new()\'s config!')
end
return self
end
--[[
Counts the number of versions in the infobox
Populates Infobox.version_names
Sets Infobox.default_version
--]]
function Infobox:parse_versions()
function insert_version_name(version_name)
table.insert(self.version_names, version_name)
if smwutils.valid_subobject_name(version_name) == false then
table.insert(self.errors, 'Illegal version value: must not be "0" nor contain a "." in the first five characters')
end
end
-- Count the versions and setup self.version_names
local i = 1
while self.args_raw['version'..i] do
insert_version_name(self.args_raw['version'..i])
i = i + 1
end
self.versions = i - 1
-- Should either have 0 or 2+ versions
if self.versions == 1 then
table.insert(self.errors, 'There should be multiple versions or no versions. If defining a custom version name for a single entry, use "version=Name" instead of "version1=Name".')
end
-- Handle the no version case - check for a custom version_name
if self.versions == 0 then
insert_version_name(self.args_raw['version'] or 'DEFAULT')
self.versions = 1
end
-- Check for a default_version
if self.args_raw['default_version'] then
self.default_version = tonumber(self.args_raw['default_version'])
if self.default_version > self.versions then -- Make sure the default version exists
self.default_version = 1
end
end
end
--[[
Define all used parameters (except for default_version/version)
-- name : parameter name as used in the Template
-- func : function to validate and process the Template argument
-- If func is a function, will call func(Infobox.raw_param(name))
-- If func is a table, contains the following key-value pairs:
---- name : function
---- params : list of arguments to pass to the function (use Infobox.raw_param(),
---- Infobox.param() and Infobox.smw_param() to use arguments)
-- empty (optional) : text to display in the infobox if func returns nil, defaults to "? (edit)"
-- category_never : category to add if func returns nil for all versions
-- category_partial : category to add if func returns nil for some versions, but a value for other versions
-- category_incomplete : category to add if func returns nil for at least 1 version (i.e. category_never and category_partial combined)
-- category_complete : category to add if func returns a value for all versions
-- smw_property (optional) : if this string is defined, the parameter will be saved into smw
-- smw_func (optional) : function to validate and process the Template argument to save into smw
-- func is used by default if smw_func is not defined
--]]
function Infobox:define_params(...)
-- For every parameter, store its corresponding function to self.params
for _, v in ipairs(...) do
if v.name then
local param = {}
-- Copy the function
if type(v.func) == 'function' or type(v.func) == 'table' then
param.func = v.func
end
-- If smw_property is defined, then use smw_func, or default to func if it is not defined
if v.smw_property then
param.smw_property = v.smw_property
if type(v.smw_func) == 'function' or type(v.smw_func) == 'table' then
param.smw_func = v.smw_func
else
param.smw_func = param.func
end
end
-- If empty is not defined, default message is "? (edit)"
param.empty = v.empty or editbutton("'''?''' (edit)")
-- Get the category names
param.category_never = v.category_never
param.category_partial = v.category_partial
param.category_incomplete = v.category_incomplete
param.category_complete = v.category_complete
-- Store the param
self.params[v.name] = param
table.insert(self.param_names, v.name)
end
end
return self
end
--[[
Fetches a param value. If the value is nil, will return the default value instead
-- arg: a non-table value (string, number, etc), or Infobox.param(name), Infobox.raw_param(name), Infobox.smw_param(name)
-- version: 0/'' for default, or else a number
Returns arg if a constant
param value (or default value) if Infobox.param(name), Infobox.raw_param(name), Infobox.smw_param(name)
--]]
function Infobox:get_param(arg, version)
if version == 0 then
version = ''
end
-- Handle Infobox.param(), Infobox.raw_param(), Infobox.smw_param()
if type(arg) == 'table' then
local value = self[arg.property][arg.param_name..version]
-- If nil, grab default value (which could be nil as well)
if value == nil then
value = self[arg.property][arg.param_name]
end
return value
end
-- Everything else passes through unmodified (string, number, etc)
return arg
end
--[[
Calculates the parsed value of a param
-- param_name : param_name as a string
-- version : 0/'' for default, or else a number
-- smw : boolean, will use smw_func if true, or func is false
--]]
function Infobox:parse_param(param_name, version, smw)
if version == 0 then
version = ''
end
-- use func or smw_func depending on smw argument
local param = self.params[param_name]
local func = smw and param.smw_func or param.func
-- call functions by passing the param_name
if type(func) == 'function' then
return func(self:get_param(self.raw_param(param_name), version))
-- call tables by grabbing the function and reading the param arguments
elseif type(func) == 'table' then
local func_name = func.name
local func_params = func.params
local func_fetched_params = {}
for _, func_param in ipairs(func_params) do
table.insert(func_fetched_params, self:get_param(func_param, version))
end
return func_name(unpack(func_fetched_params))
else
table.insert(self.errors, 'Invalid param definition for '..param_name)
end
end
--[[
Parses all the param values (args_parsed and args_smw)
--]]
function Infobox:parse_params()
-- Calculate the param value for all params and all versions
for _, param_name in ipairs(self.param_names) do
for version=0, self.versions do
if version == 0 then
version = ''
end
-- get the parsed value
self.args_parsed[param_name..version] = self:parse_param(param_name, version, false)
-- Only get the smw value if smw_property is defined
if self.params[param_name].smw_property then
self.args_smw[param_name..version] = self:parse_param(param_name, version, true)
end
end
end
end
--[[
Creates the table header
--]]
function Infobox:table_header()
-- Create infobox table
self.rtable = mw.html.create('table')
:addClass('plainlinks')
:addClass('infobox')
:addClass('infobox-'..self.infobox_name)
-- Create the switch datatable if multiple versions
if self.versions > 1 then
self.rtable:addClass('infobox-switch')
self.switch_datatable = mw.html.create('div')
:addClass('infobox-switch-resources')
:addClass('infobox-resources-'..self.infobox_name)
:addClass('hidden')
end
return self
end
--[[
If multiple versions exist, creates a set of buttons for switching
-- self.max_buttons : if the number of versions exceeds this value, a dropdown will be created instead
--]]
function Infobox:buttons()
if self.versions < 2 then
return
end
-- Button caption
local buttons = self.rtable:tag('caption')
:tag('div')
:addClass('infobox-buttons')
:attr('data-default-index', self.default_version)
-- Dropdown list instead of buttons if too many versions
if self.versions > self.max_buttons then
buttons:addClass('infobox-buttons-select')
end
-- Create all the buttons
for version=1, self.versions do
local button = buttons:tag('span')
:attr('data-switch-index', version)
:attr('data-switch-anchor', '#'..self.version_names[version])
:addClass('button')
:wikitext(self.version_names[version])
-- In case of dropdown list, hide the buttons as the switch gadget will convert them to a dropdown list - we can't directly create the dropdown list here as the select/option tags are rejected by wikitext
if self.versions > self.max_buttons then
button:addClass('hidden')
end
end
end
--[[
For each version, stores a subobject for all params that have smw_property defined
--]]
function Infobox:store_smw()
for version=1, self.versions do
-- Generate a subobject name
-- Reminder - subobject name cannot have a . in the first 5 characters
local subobject_name = self.version_names[version]
-- Store each param that has smw_property defined and is not nil
local subobject = {Infobox = self.infobox_name} -- Also store the current Infobox name
for _, param_name in ipairs(self.param_names) do
local property = self.params[param_name].smw_property
if property then
value = self:get_param(self.smw_param(param_name), version)
if value ~= nil then
subobject[property] = value
end
end
end
-- Keep a copy for debugging
self.__smw_debug[subobject_name] = subobject
-- Save subobjects if not in mainspace
if mw.title.getCurrentTitle():inNamespace(0) then
local result = true
if self.versions == 1 then
result = mw.smw.set(subobject)
else
result = mw.smw.subobject(subobject, subobject_name)
end
if result ~= true then
table.insert(self.errors, 'SMW error: '..result.error)
end
end
end
end
--[[
Automatically add categories for each param as defined in define_params()
--]]
function Infobox:parse_categories()
for _, param_name in ipairs(self.param_names) do
local param = self.params[param_name]
local defined = self:is_param_defined(Infobox.param(param_name))
if defined == 0 and param.category_never then
self.categories[param.category_never] = 1
end
if defined == 1 and param.category_partial then
self.categories[param.category_partial] = 1
end
if defined < 2 and param.category_incomplete then
self.categories[param.category_incomplete] = 1
end
if defined == 2 and param.category_complete then
self.categories[param.category_complete] = 1
end
end
end
--[[
When a parameter is added into the table, add the alternative versions' data into the switch datatable
-- content : a non-table value (string, number, etc), or Infobox.param(name), Infobox.raw_param(name), Infobox.smw_param(name)
Returns the name of the parameter in the tag 'data-attr-param'
--]]
function Infobox:add_switch_data(content)
if self.versions < 2 then
return false
end
-- Only needed for non-constant params
if type(content) ~= 'table' then
return false
end
-- Only needed if the param changes value between different versions
local first_value = self:get_param(content, 1)
local all_same = true
for version=2, self.versions do
if first_value ~= self:get_param(content, version) then
all_same = false
break
end
end
if all_same then
return false
end
-- Let's build the datatable
-- datum name: Prepend raw__ or smw__ if not a parsed argument
local name = content.param_name
if content.property == 'args_raw' then
name = 'raw__' + name
end
if content.property == 'args_smw' then
name = 'smw__' + name
end
data_param = self.switch_datatable:tag('span'):attr('data-attr-param', name)
-- Add each version to the datatable
for version=1, self.versions do
text = self:get_param(content, version)
if text == nil then
text = self.params[content.param_name].empty
end
data_param:tag('span'):attr('data-attr-index', version):wikitext(text)
end
-- return the 'data-attr-param' name
return name
end
--[[
Override tostring
--]]
function Infobox:__tostring()
-- Create error messages
local error_text = ''
for _, v in ipairs(self.errors) do
error_text = error_text..'<span class="mw-message-box-error">'..v..'</span>'
end
-- Create categories
local category_text = ''
for key, _ in pairs(self.categories) do
category_text = category_text..'[[Category:'..key..']]'
end
local dump = ''
if self.args_raw.__dump then
setmetatable(self, nil)
dump = mw.dumpObject(self)
setmetatable(self, Infobox)
end
return tostring(self.rtable) .. tostring(self.switch_datatable) .. error_text .. category_text .. dump
end
--[[
Debug function
--]]
function Infobox:dump()
-- Temporarily detach the metatable so we don't override tostring anymore, allowing us to use dumpObject
setmetatable(self, nil)
mw.log(mw.dumpObject(self))
setmetatable(self, Infobox)
mw.log(tostring(self))
end
return Infobox
c54651da609123c0fbfa47d49ec5c25505ad297c
2152
2150
2024-04-10T20:57:16Z
Gau Cho
5
__dump
Scribunto
text/plain
--[=[
-- For documentation, see [[Module:Infobox/doc]]
--]=]
-- <nowiki>
local editbutton = require('Module:Edit button')
local smwutils = require('Module:SMW Utils')
local Infobox = {}
Infobox.__index = Infobox
--[[
Infobox class
-- config: table containing configuration parameters
-- params : definitions for each used value
-- args : values passed from the Template
---- the following values are treated specially: default_version, version, version1, version2...
--]]
function Infobox.new(config, params, args)
local obj = setmetatable({
args_raw = args, -- parameters (uncleaned)
args_parsed = {}, -- parsed parameters
args_smw = {}, -- parameters parsed for smw
infobox_name = nil, -- template name
param_names = {}, -- ordered param list
params = {}, -- param definitions
max_buttons = 6, -- If there are more buttons than the max, the buttons will become a dropdown menu
default_version = 1, -- default version to populate the infobox
versions = nil, -- number of versions
version_names = {}, -- title of each version (for selection and SMW)
rtable = nil, -- infobox table to return at the end
switch_datatable = '', -- datatable for javascript for switch infoboxes
categories = {}, -- set of categories
errors = {}, -- list of errors
__smw_debug = {}, -- debug data for smw subobjects
},
Infobox)
-- Step 1, setup config vars and count the versions
obj:config(config)
obj:parse_versions()
-- Step 2, process the params
obj:define_params(params)
obj:parse_params()
-- Table
obj:table_header()
obj:buttons()
-- Misc
obj:store_smw()
obj:parse_categories()
return obj
end
--[[
Refers to a param after being processed by the validating func
Used in add_row(), define_params() and is_param_defined()
--]]
function Infobox.param(param_name)
param = {
property = 'args_parsed',
param_name = param_name,
}
return param
end
--[[
Refers to a param in raw form as passed from the Template
Used in add_row(), define_params() and is_param_defined()
--]]
function Infobox.raw_param(param_name)
param = {
property = 'args_raw',
param_name = param_name,
}
return param
end
--[[
Refers to a param after being processed by the validating smw_func
Used in add_row(), define_params() and is_param_defined()
--]]
function Infobox.smw_param(param_name)
param = {
property = 'args_smw',
param_name = param_name,
}
return param
end
--[[
Checks to see if a param is defined.
-- param: Infobox.param(name), Infobox.raw_param(name) or Infobox.smw_param(name)
Returns 0 if param is never defined
1 if param is defined for a fraction of the versions
2 if param is defined for all versions
]]
function Infobox:is_param_defined(param)
local undefined = 0
local defined = 0
for version = 1, self.versions do
local value = self:get_param(param, version)
if value ~= nil then
defined = 1
else
undefined = 1
end
end
return 1 + defined - undefined
end
--[[
Adds a row to the infobox table
Parameter should be a table of cells, where each cell is a table with the following arguments:
-- tag : 'td' or 'th'
-- content : a string or Infobox.param(name), Infobox.raw_param(name), Infobox.smw_param(name)
-- attr (optional) : mw.html:attr({ arg1 = '1', ... })
-- css (optional) : mw.html:css({ arg1 = '1', ...)
-- class (optional) : mw.html:addClass('arg')
---- class also supports a table of values, even though mw.html:addClass() does not
---- common classes: infobox-subheader
-- rowspan (optional) : mw.html:attr('rowspan',arg)
-- colspan (optional) : mw.html:attr('colspan',arg)
-- title (optional) : mw.html:attr('title',arg)
The row itself may be assigned a single class by setting the value of the key addClass
-- addClass : mw.html:addClass('arg')
-- this function currently only supports a single string
--]]
function Infobox:add_row(...)
local args = ...
local _row = self.rtable:tag('tr')
-- For each cell
for _, v in ipairs(args) do
local _cell = _row:tag(v.tag)
-- Optional parameters
if v.attr then
_cell:attr(v.attr)
end
if v.colspan then
_cell:attr('colspan',v.colspan)
end
if v.rowspan then
_cell:attr('rowspan',v.rowspan)
end
if v.title then
_cell:attr('title',v.title)
end
if v.css then
_cell:css(v.css)
end
if v.class then
if type(v.class) == 'string' then
_cell:addClass(v.class)
-- mw.html:addClass() doesn't function with tables, add in a loop
elseif type(v.class) == 'table' then
for _, w in ipairs(v.class) do
_cell:addClass(w)
end
end
end
-- Populate the cell contents
local content = self:get_param(v.content, self.default_version)
if content == nil then
content = self.params[v.content.param_name].empty
end
_cell:wikitext(content)
-- Add the switch data if multiple values exist
data_attr_param = self:add_switch_data(v.content)
if data_attr_param then
_cell:attr('data-attr-param', data_attr_param)
end
end
-- allow classes to be defined on the whole row
if args.addClass then
_row:addClass(args.addClass)
end
return self
end
--[[
Adds a blank row of padding spanning the given number of columns
--]]
function Infobox:pad(colspan, class)
local tr = self.rtable:tag('tr'):tag('td'):attr('colspan', colspan or 1):addClass('infobox-padding')
if class then
tr:addClass(class)
end
return self
end
--[[
Adds a class to the table as a whole
--]]
function Infobox:addClass(arg)
self.rtable:addClass(arg)
return self
end
--[[
Setup config values
-- config: table containing configuration parameters
---- infobox_name = mandatory unique identifier for this infobox, used for css
---- max_buttuons = max number of switch buttons before using a dropdown list instead
--]]
function Infobox:config(config)
for k, v in pairs(config) do
if k == 'infobox_name' then
self.infobox_name = mw.ustring.gsub(v, '%s', '_')
elseif k == 'max_buttons' then
self.max_buttons = tonumber(v)
end
end
if self.infobox_name == nil then
table.insert(self.errors, 'infobox_name needs to be defined in Infobox.new()\'s config!')
end
return self
end
--[[
Counts the number of versions in the infobox
Populates Infobox.version_names
Sets Infobox.default_version
--]]
function Infobox:parse_versions()
function insert_version_name(version_name)
table.insert(self.version_names, version_name)
if smwutils.valid_subobject_name(version_name) == false then
table.insert(self.errors, 'Illegal version value: must not be "0" nor contain a "." in the first five characters')
end
end
-- Count the versions and setup self.version_names
local i = 1
while self.args_raw['version'..i] do
insert_version_name(self.args_raw['version'..i])
i = i + 1
end
self.versions = i - 1
-- Should either have 0 or 2+ versions
if self.versions == 1 then
table.insert(self.errors, 'There should be multiple versions or no versions. If defining a custom version name for a single entry, use "version=Name" instead of "version1=Name".')
end
-- Handle the no version case - check for a custom version_name
if self.versions == 0 then
insert_version_name(self.args_raw['version'] or 'DEFAULT')
self.versions = 1
end
-- Check for a default_version
if self.args_raw['default_version'] then
self.default_version = tonumber(self.args_raw['default_version'])
if self.default_version > self.versions then -- Make sure the default version exists
self.default_version = 1
end
end
end
--[[
Define all used parameters (except for default_version/version)
-- name : parameter name as used in the Template
-- func : function to validate and process the Template argument
-- If func is a function, will call func(Infobox.raw_param(name))
-- If func is a table, contains the following key-value pairs:
---- name : function
---- params : list of arguments to pass to the function (use Infobox.raw_param(),
---- Infobox.param() and Infobox.smw_param() to use arguments)
-- empty (optional) : text to display in the infobox if func returns nil, defaults to "? (edit)"
-- category_never : category to add if func returns nil for all versions
-- category_partial : category to add if func returns nil for some versions, but a value for other versions
-- category_incomplete : category to add if func returns nil for at least 1 version (i.e. category_never and category_partial combined)
-- category_complete : category to add if func returns a value for all versions
-- smw_property (optional) : if this string is defined, the parameter will be saved into smw
-- smw_func (optional) : function to validate and process the Template argument to save into smw
-- func is used by default if smw_func is not defined
--]]
function Infobox:define_params(...)
-- For every parameter, store its corresponding function to self.params
for _, v in ipairs(...) do
if v.name then
local param = {}
-- Copy the function
if type(v.func) == 'function' or type(v.func) == 'table' then
param.func = v.func
end
-- If smw_property is defined, then use smw_func, or default to func if it is not defined
if v.smw_property then
param.smw_property = v.smw_property
if type(v.smw_func) == 'function' or type(v.smw_func) == 'table' then
param.smw_func = v.smw_func
else
param.smw_func = param.func
end
end
-- If empty is not defined, default message is "? (edit)"
param.empty = v.empty or editbutton("'''?''' (edit)")
-- Get the category names
param.category_never = v.category_never
param.category_partial = v.category_partial
param.category_incomplete = v.category_incomplete
param.category_complete = v.category_complete
-- Store the param
self.params[v.name] = param
table.insert(self.param_names, v.name)
end
end
return self
end
--[[
Fetches a param value. If the value is nil, will return the default value instead
-- arg: a non-table value (string, number, etc), or Infobox.param(name), Infobox.raw_param(name), Infobox.smw_param(name)
-- version: 0/'' for default, or else a number
Returns arg if a constant
param value (or default value) if Infobox.param(name), Infobox.raw_param(name), Infobox.smw_param(name)
--]]
function Infobox:get_param(arg, version)
if version == 0 then
version = ''
end
-- Handle Infobox.param(), Infobox.raw_param(), Infobox.smw_param()
if type(arg) == 'table' then
local value = self[arg.property][arg.param_name..version]
-- If nil, grab default value (which could be nil as well)
if value == nil then
value = self[arg.property][arg.param_name]
end
return value
end
-- Everything else passes through unmodified (string, number, etc)
return arg
end
--[[
Calculates the parsed value of a param
-- param_name : param_name as a string
-- version : 0/'' for default, or else a number
-- smw : boolean, will use smw_func if true, or func is false
--]]
function Infobox:parse_param(param_name, version, smw)
if version == 0 then
version = ''
end
-- use func or smw_func depending on smw argument
local param = self.params[param_name]
local func = smw and param.smw_func or param.func
-- call functions by passing the param_name
if type(func) == 'function' then
return func(self:get_param(self.raw_param(param_name), version))
-- call tables by grabbing the function and reading the param arguments
elseif type(func) == 'table' then
local func_name = func.name
local func_params = func.params
local func_fetched_params = {}
for _, func_param in ipairs(func_params) do
table.insert(func_fetched_params, self:get_param(func_param, version))
end
return func_name(unpack(func_fetched_params))
else
table.insert(self.errors, 'Invalid param definition for '..param_name)
end
end
--[[
Parses all the param values (args_parsed and args_smw)
--]]
function Infobox:parse_params()
-- Calculate the param value for all params and all versions
for _, param_name in ipairs(self.param_names) do
for version=0, self.versions do
if version == 0 then
version = ''
end
-- get the parsed value
self.args_parsed[param_name..version] = self:parse_param(param_name, version, false)
-- Only get the smw value if smw_property is defined
if self.params[param_name].smw_property then
self.args_smw[param_name..version] = self:parse_param(param_name, version, true)
end
end
end
end
--[[
Creates the table header
--]]
function Infobox:table_header()
-- Create infobox table
self.rtable = mw.html.create('table')
:addClass('plainlinks')
:addClass('infobox')
:addClass('infobox-'..self.infobox_name)
-- Create the switch datatable if multiple versions
if self.versions > 1 then
self.rtable:addClass('infobox-switch')
self.switch_datatable = mw.html.create('div')
:addClass('infobox-switch-resources')
:addClass('infobox-resources-'..self.infobox_name)
:addClass('hidden')
end
return self
end
--[[
If multiple versions exist, creates a set of buttons for switching
-- self.max_buttons : if the number of versions exceeds this value, a dropdown will be created instead
--]]
function Infobox:buttons()
if self.versions < 2 then
return
end
-- Button caption
local buttons = self.rtable:tag('caption')
:tag('div')
:addClass('infobox-buttons')
:attr('data-default-index', self.default_version)
-- Dropdown list instead of buttons if too many versions
if self.versions > self.max_buttons then
buttons:addClass('infobox-buttons-select')
end
-- Create all the buttons
for version=1, self.versions do
local button = buttons:tag('span')
:attr('data-switch-index', version)
:attr('data-switch-anchor', '#'..self.version_names[version])
:addClass('button')
:wikitext(self.version_names[version])
-- In case of dropdown list, hide the buttons as the switch gadget will convert them to a dropdown list - we can't directly create the dropdown list here as the select/option tags are rejected by wikitext
if self.versions > self.max_buttons then
button:addClass('hidden')
end
end
end
--[[
For each version, stores a subobject for all params that have smw_property defined
--]]
function Infobox:store_smw()
for version=1, self.versions do
-- Generate a subobject name
-- Reminder - subobject name cannot have a . in the first 5 characters
local subobject_name = self.version_names[version]
-- Store each param that has smw_property defined and is not nil
local subobject = {Infobox = self.infobox_name} -- Also store the current Infobox name
for _, param_name in ipairs(self.param_names) do
local property = self.params[param_name].smw_property
if property then
value = self:get_param(self.smw_param(param_name), version)
if value ~= nil then
subobject[property] = value
end
end
end
-- Keep a copy for debugging
self.__smw_debug[subobject_name] = subobject
-- Save subobjects if not in mainspace
if mw.title.getCurrentTitle():inNamespace(0) then
local result = true
if self.versions == 1 then
result = mw.smw.set(subobject)
else
result = mw.smw.subobject(subobject, subobject_name)
end
if result ~= true then
table.insert(self.errors, 'SMW error: '..result.error)
end
end
end
end
--[[
Automatically add categories for each param as defined in define_params()
--]]
function Infobox:parse_categories()
for _, param_name in ipairs(self.param_names) do
local param = self.params[param_name]
local defined = self:is_param_defined(Infobox.param(param_name))
if defined == 0 and param.category_never then
self.categories[param.category_never] = 1
end
if defined == 1 and param.category_partial then
self.categories[param.category_partial] = 1
end
if defined < 2 and param.category_incomplete then
self.categories[param.category_incomplete] = 1
end
if defined == 2 and param.category_complete then
self.categories[param.category_complete] = 1
end
end
end
--[[
When a parameter is added into the table, add the alternative versions' data into the switch datatable
-- content : a non-table value (string, number, etc), or Infobox.param(name), Infobox.raw_param(name), Infobox.smw_param(name)
Returns the name of the parameter in the tag 'data-attr-param'
--]]
function Infobox:add_switch_data(content)
if self.versions < 2 then
return false
end
-- Only needed for non-constant params
if type(content) ~= 'table' then
return false
end
-- Only needed if the param changes value between different versions
local first_value = self:get_param(content, 1)
local all_same = true
for version=2, self.versions do
if first_value ~= self:get_param(content, version) then
all_same = false
break
end
end
if all_same then
return false
end
-- Let's build the datatable
-- datum name: Prepend raw__ or smw__ if not a parsed argument
local name = content.param_name
if content.property == 'args_raw' then
name = 'raw__' + name
end
if content.property == 'args_smw' then
name = 'smw__' + name
end
data_param = self.switch_datatable:tag('span'):attr('data-attr-param', name)
-- Add each version to the datatable
for version=1, self.versions do
text = self:get_param(content, version)
if text == nil then
text = self.params[content.param_name].empty
end
data_param:tag('span'):attr('data-attr-index', version):wikitext(text)
end
-- return the 'data-attr-param' name
return name
end
--[[
Override tostring
--]]
function Infobox:__tostring()
-- Create error messages
local error_text = ''
for _, v in ipairs(self.errors) do
error_text = error_text..'<span class="mw-message-box-error">'..v..'</span>'
end
-- Create categories
local category_text = ''
for key, _ in pairs(self.categories) do
category_text = category_text..'[[Category:'..key..']]'
end
local dump = ''
if self.args_raw.__dump then
setmetatable(self, nil)
dump = '<nowiki>'..mw.dumpObject(self)..'</nowiki>'
setmetatable(self, Infobox)
end
return tostring(self.rtable) .. tostring(self.switch_datatable) .. error_text .. category_text .. dump
end
--[[
Debug function
--]]
function Infobox:dump()
-- Temporarily detach the metatable so we don't override tostring anymore, allowing us to use dumpObject
setmetatable(self, nil)
mw.log(mw.dumpObject(self))
setmetatable(self, Infobox)
mw.log(tostring(self))
end
return Infobox
794a03eefdc66b9aa8d81e8bc842066feee93448
Module:Infobox/doc
828
504
2153
1806
2024-04-10T21:02:37Z
Gau Cho
5
__dump
wikitext
text/x-wiki
{{documentation}}
{{ToC|right}}
==Creating a template step-by-step==
===Import Module:Infobox and Module:Param Parse===
<syntaxhighlight lang="lua">
local Infobox = require('Module:Infobox')
local parse = require('Module:Param Parse')
</syntaxhighlight>
===Unpack the frame arguments from the Template===
<syntaxhighlight lang="lua">
local p = {}
function p.main(frame)
local args = frame:getParent().args
...
</syntaxhighlight>
===Setup the Module config settings===
<syntaxhighlight lang="lua">
local config = {
infobox_name = 'Scenery',
}
</syntaxhighlight>
===Map your arguments to parsing functions===
{{Main|Module:Param Parse}}
Use the params in [[Module:Param Parse]] to validate and format the data - feel free to create your own new params in [[Module:Param Parse]].
<syntaxhighlight lang="lua">
local params = {
parse.name,
parse.image,
{name = 'examine', func = parse.has_content, smw_property = 'Examine'}, -- Custom param
parse.episode,
...
}
</syntaxhighlight>
===Define an Infobox object===
{{Main|Module:Infobox#new}}
<syntaxhighlight lang="lua">
local infobox = Infobox.new(config, params, args)
</syntaxhighlight>
===Create your table===
{{Main|Module:Infobox#create}}
<syntaxhighlight lang="lua">
infobox
:add_row{
{tag='th', content=Infobox.param('name'), class='infobox-header', colspan='20'},
}
:add_row{
{tag='td', content=Infobox.param('image'), class='infobox-image', colspan='20'},
}
:pad("20")
:add_row{
{tag='td', content='Info', class='infobox-subheader', colspan='20'},
}
:pad("20")
:add_row{
{tag='th', content='Examine', colspan="6"},
{tag='td', content=Infobox.param('examine'), colspan="14"},
}
:add_row{
{tag='th', content='[[Episode]]', colspan="6"},
{tag='td', content=Infobox.param('episode'), colspan="14"},
}
...
</syntaxhighlight>
===You're done!===
<syntaxhighlight lang="lua">
return infobox
end
return p
</syntaxhighlight>
==Functions==
=== Special params ===
You don't need to do anything about these special parameters, but they may be used as parameters within the Template:
{| class="wikitable"
! param
! explanation
|-
| version1, version2, version3
| Button label and SMW name for each switch version of the infobox
|-
| default_version
| The default version to display when the page is loaded
|-
| version
| If there is only a single version, you can use version to set the SMW name (default SMW name is "DEFAULT")
|}
=== Referring to params ===
Each parameter can have a different value for each version. In addition, there are 3 different representations of each value. Therefore, a parameter must be accessed via one of the 3 helper functions:
{| class="wikitable"
! helper function
! example
! explanation
|-
| Infobox.raw_param(name)
| "1000"
| Raw value as passed by the Template
|-
| Infobox.param(name)
| "1,000"
| Value formatted for display in the Infobox
|-
| Infobox.smw_param(name)
| 1000
| Value formatted to be saved as an SMW property
|}
=== Infobox.new(config, params, args) ===
Creates a new infobox. Automatically parses the arguments, creates SMW subobjects and adds categories.
<syntaxhighlight lang="lua">
local infobox = Infobox.new(config, params, args)
</syntaxhighlight>
==== config ====
There are only 2 parameters for config
<syntaxhighlight lang="lua">
local config = {
infobox_name = 'Scenery', -- mandatory unique identifier for css
max_buttons = 6, -- optional, defaults to 6, max number of switch buttons before using a dropdown list instead
}
</syntaxhighlight>
==== params ====
A list of parameters to be processed by the Infobox module
<syntaxhighlight lang="lua">
local params = {
{ name = <param>, func = <func>, ... },
...
}
</syntaxhighlight>
{| class="wikitable"
! key
! value
|-
| name
| parameter name as used in the Template
|-
| func
| A function in [[Module:Param Parse]] to validate and process the Template argument. You can also use a local function, but this is not recommended.
If func is a function, will call func(Infobox.raw_param(name)):
<syntaxhighlight lang="lua">
{name = <param>, func = <func>, ... },
</syntaxhighlight>
If func is a table, it takes the following parameters:
<syntaxhighlight lang="lua">
{name = <param>, func = { name = <func>, params = <func_params>}, ... },
</syntaxhighlight>
{| class="wikitable"
| name
| function in [[Module:Param Parse]]
|-
| params
| a list of parameters to pass the the function, in the form of constants, or Infobox.raw_param(name), Infobox.param(name), Infobox.smw_param(name)
|}
|-
| empty (optional)
| text to display in the infobox if func returns nil; defaults to "? (edit)"
|-
| category_never (optional)
| category to add if func returns nil for all versions
|-
| category_partial (optional)
| category to add if func returns nil for some versions, but a value for other versions
|-
| category_incomplete (optional)
| category to add if func returns nil for at least 1 version (i.e. category_never and category_partial combined)
|-
| category_complete (optional)
| category to add if func returns a value for all versions
|-
| smw_property (optional)
| if this string is defined, the parameter will be saved into SMW
|-
| smw_func (optional)
| function to validate and process the Template argument to save into SMW. func is used by default if smw_func is not defined
|}
==== args ====
Arguments passed via the Template
<syntaxhighlight lang="lua">
local args = frame:getParent().args
</syntaxhighlight>
=== infobox:is_param_defined(param) ===
Used to conditionally display a line in the infobox
<syntaxhighlight lang="lua">
infobox:add_row{
{tag='th', content=Infobox.param('name'), class='infobox.subheader', colspan='2'},
}
if infobox:is_param_defined(Infobox.param('owner')) > 0 then
infobox:add_row{
{tag='td', content='[[Owner]]'},
{tag='td', content=Infobox.param('owner')},
}
end
</syntaxhighlight>
{| class="wikitable"
| param
| a parameter referenced via Infobox.raw_param(name), Infobox.param(name) or Infobox.smw_param(name)
|-
| Returns
| 0 if param is never defined
1 if param is defined for a fraction of the versions
2 if param is defined for all versions
|}
=== Infobox:add_row(...) ===
Adds a row to the infobox table. Parameter should be a table of cells:
<syntaxhighlight lang="lua">
infobox:add_row{
{tag='td', content='[[Cell1]]', ...},
{tag='td', content=Infobox.param('param'), ...},
{tag='td', content='[[Cell3]]', ...},
...
addClass = 'row-class'
}
</syntaxhighlight>
Each cell should have a set of key-values, of which only the tag and content are mandatory:
{| class="wikitable"
! key
! value
|-
| tag
| 'td' or 'th'
|-
| content
| a string or Infobox.param(name), Infobox.raw_param(name), Infobox.smw_param(name)
|-
| attr (optional)
| a table of attributes to add to the cell
mw.html:attr({ arg1 = '1', ... })
|-
| css (optional)
| a table of css to add to the cell
mw.html:css({ arg1 = '1', ... })
|-
| class (optional)
| a string with a class to add, or a table of classes to add. '''infobox-header''', '''infobox-subheader''' and '''infobox-image''' are commonly used.
mw.html:addClass(...)
|-
| rowspan (optional)
| Set the cell rowspan
mw.html:attr('rowspan',arg)
|-
| rowspan (optional)
| Set the cell colspan
mw.html:attr('colspan',arg)
|-
| title (optional)
| Set the cell title
mw.html:attr('title',arg)
|}
=== Infobox:pad(colspan, class) ===
Adds a blank row of padding spanning the given number of columns. Will always add the class '''infobox-padding''', but can optionally add another class:
<syntaxhighlight lang="lua">
infobox:pad("10", class=<class>)
</syntaxhighlight>
=== Infobox:addClass(class) ===
Adds a class to the entire table
<syntaxhighlight lang="lua">
infobox:addClass(class)
</syntaxhighlight>
=== Infobox:dump() ===
Logs all the values into the Debug console for debugging purposes. You can also dump all the values in an Infobox template by setting a template parameter "__dump = Yes".
55e4ae4cad51b4be2465dd79ef16e1618ef8f411
File:Melv.png
6
918
2154
2024-04-10T21:16:23Z
Yellowsap
63
wikitext
text/x-wiki
da39a3ee5e6b4b0d3255bfef95601890afd80709
File:Melv.png
6
918
2155
2154
2024-04-10T21:16:41Z
Yellowsap
63
wikitext
text/x-wiki
{{Fair use|link=https://brightershores.com/screenshots/18_melvs_supplies.jpg}}
8a8ebe7db892431d8a0eb2b08ddf493acfadc5fd
Melv
0
87
2156
1429
2024-04-10T21:18:22Z
Yellowsap
63
wikitext
text/x-wiki
{{Infobox NPC
|name = Melv
|image = [[File:Melv.png]]
|release =
|episode =
|profession = [[Merchant]]
|shop = [[Melv's Fishing Supplies]]
}}
'''Melv''' is the shop owner of [[Melv's Fishing Supplies]].
2868352185ebc8b988c33281235dce8d58f9c70c
File:Common Limpet.png
6
919
2157
2024-04-10T21:43:57Z
Yellowsap
63
wikitext
text/x-wiki
da39a3ee5e6b4b0d3255bfef95601890afd80709
2158
2157
2024-04-10T21:44:40Z
Yellowsap
63
wikitext
text/x-wiki
{{Fair use|link=https://twitter.com/AndrewCGower/status/1769048510177948004}}
6f5ca0034357c95ba9ae599fe98e554b5597558d
Common Limpet
0
872
2159
2120
2024-04-10T21:45:35Z
Yellowsap
63
wikitext
text/x-wiki
{{Infobox Interactable
|name = Common Limpet
|image = [[File:Common limpet.png]]
|release =
|premium =
|episode =
|profession = [[Forager]]
|level = 59
|variant = [[Limpet]]
|passive = No
}}
'''Common Limpets''' are a type of [[Forager]] interactable and a [[variant]] of [[Limpet]]s found in the [[Pirate Hideout]].{{CiteTwitter|url=https://twitter.com/AndrewCGower/status/1769048510177948004|author=Andrew Gower|date=16 March 2024|accessdate=22 March 2024|archiveurl=https://archive.is/whgCd|archivedate=22 March 2024|quote=}}
==References==
{{Reflist}}
b043bd16c4b04bdcdbf325b60e03cd13d0b5833d
2160
2159
2024-04-10T21:46:05Z
Yellowsap
63
wikitext
text/x-wiki
{{Infobox Interactable
|name = Common Limpet
|image = [[File:Common Limpet.png]]
|release =
|premium =
|episode =
|profession = [[Forager]]
|level = 59
|variant = [[Limpet]]
|passive = No
}}
'''Common Limpets''' are a type of [[Forager]] interactable and a [[variant]] of [[Limpet]]s found in the [[Pirate Hideout]].{{CiteTwitter|url=https://twitter.com/AndrewCGower/status/1769048510177948004|author=Andrew Gower|date=16 March 2024|accessdate=22 March 2024|archiveurl=https://archive.is/whgCd|archivedate=22 March 2024|quote=}}
==References==
{{Reflist}}
a2945c467541c49f10c41b95e3b395eb4217ea6a
Template:Weapons
10
920
2161
2024-04-10T22:08:25Z
Yellowsap
63
Created page with "{{Navbox |name = Weapons |title = [[Weapons]] |gtitle1 = Melee |group1 = * [[Mace]] * [[Shield]] * [[Sword]] |gtitle2 = Ranged |group2 = * [[Crossbow]] |gtitle3 = Magic |group3 = * [[Staff]] }}{{Ctg|Weapons}}"
wikitext
text/x-wiki
{{Navbox
|name = Weapons
|title = [[Weapons]]
|gtitle1 = Melee
|group1 =
* [[Mace]]
* [[Shield]]
* [[Sword]]
|gtitle2 = Ranged
|group2 =
* [[Crossbow]]
|gtitle3 = Magic
|group3 =
* [[Staff]]
}}{{Ctg|Weapons}}
12ed14f9987f2400049291bc99d2545ebfef8bf1
2167
2161
2024-04-10T22:23:19Z
Yellowsap
63
wikitext
text/x-wiki
{{Navbox
|name = Weapons
|title = [[Weapons]]
|gtitle1 = Melee
|group1 =
* [[Hammer]]
* [[Mace]]
* [[Sword]]
|gtitle2 = Ranged
|group2 =
* [[Crossbow]]
|gtitle3 = Magic
|group3 =
* [[Staff]]
}}{{Ctg|Weapons}}
31ec3208da53e06748cf16b5400954212c143448
Mace
0
734
2162
1779
2024-04-10T22:15:25Z
Yellowsap
63
wikitext
text/x-wiki
{{Unofficial name}}
{{Infobox Item
|name = Mace
|image = [[File:Mace.png]]
|release =
|episode =
|profession = Combat
|value =
}}
A '''mace''' is a type of [[weapon]] in [[Brighter Shores]].<ref>https://brightershores.com/screenshots/03_shade_combat.jpg</ref>
==Gallery==
<gallery mode="packed" heights="200">
File:Mace equipped.png|A player with a mace equipped.
</gallery>
==References==
{{Reflist}}
{{Weapons}}
[[Category:Equipment]]
3ad17e926d92813a90e6483143d20451226e14f6
Sword
0
193
2163
1789
2024-04-10T22:17:13Z
Yellowsap
63
wikitext
text/x-wiki
{{Unofficial name}}
{{Infobox Item
|name = Sword
|image = [[File:Sword.png]]
|release = Q3 [[2024]]
|episode = Unknown
|profession = Combat
|value = 50
}}
'''Swords'''<ref>https://brightershores.com/screenshots/09_himatik_ruins.jpg</ref> are a type of [[weapon]] in [[Brighter Shores]], typically utilised by the [[cryoknight]] class.
==References==
{{Reflist}}
{{Weapons}}
[[Category:Equipment]]
232d1b17ac10c7990cd39fe14ada65d9174a2a9c
Crossbow
0
192
2164
1763
2024-04-10T22:18:25Z
Yellowsap
63
wikitext
text/x-wiki
{{Unofficial name}}
{{Infobox Item
|name = Crossbow
|image = [[File:Crossbow.png]]
|release =
|episode =
|profession = Combat
|value = 0
}}
'''Crossbows''' are a type of [[weapon]] in [[Brighter Shores]]<ref>https://brightershores.com/screenshots/03_shade_combat.jpg</ref>, typically utilised by the [[guardian]] class.
==References==
{{Reflist}}
{{Weapons}}
[[Category:Equipment]]
606822bc6170650fc76fc1320bae0abe59c831f6
Staff
0
733
2165
1792
2024-04-10T22:19:45Z
Yellowsap
63
wikitext
text/x-wiki
{{Unofficial name}}
{{Infobox Item
|name = Staff
|image = [[File:Staff.png]]
|release =
|episode =
|profession = Combat
|value =
}}
A '''staff''' is a type of [[weapon]] in [[Brighter Shores]].<ref>https://brightershores.com/screenshots/03_shade_combat.jpg</ref>
==References==
{{Reflist}}
{{Weapons}}
[[Category:Equipment]]
4e7a93a5f8f30e51532557ea2c2dabd21cc7cc73
Category:Weapons
14
921
2166
2024-04-10T22:21:22Z
Yellowsap
63
Created page with "{{Categoryheader|pages|weapons}} [[Category:Weapons]]"
wikitext
text/x-wiki
{{Categoryheader|pages|weapons}}
[[Category:Weapons]]
7a75b066726ece50469b9fb3e227d6b6b57db015
Weapons
0
922
2168
2024-04-10T22:29:54Z
Yellowsap
63
Created page with "'''Weapons''' are items that [[players]] use to inflict damage in [[combat]]. They may be crafted through the [[Blacksmith|Blacksmith profession]]. ==Weapon types== ===Melee=== *[[Hammer]] *[[Mace]] *[[Sword]] ===Ranged=== *[[Crossbow]] ===Magic=== *[[Staff]] {{Weapons}}"
wikitext
text/x-wiki
'''Weapons''' are items that [[players]] use to inflict damage in [[combat]]. They may be crafted through the [[Blacksmith|Blacksmith profession]].
==Weapon types==
===Melee===
*[[Hammer]]
*[[Mace]]
*[[Sword]]
===Ranged===
*[[Crossbow]]
===Magic===
*[[Staff]]
{{Weapons}}
217d59067d8735fa3af66d44ec0807a40e17184c
Players
0
923
2169
2024-04-10T22:30:29Z
Yellowsap
63
Redirected page to [[Player]]
wikitext
text/x-wiki
#REDIRECT [[Player]]
2ffc7e7a91be927b1725a157e148ea02e23a0cea
Weapon
0
924
2170
2024-04-10T22:30:49Z
Yellowsap
63
Redirected page to [[Weapons]]
wikitext
text/x-wiki
#REDIRECT [[Weapons]]
b2b7726a0610fead897f74c818ef48da98b1204e
Hammer
0
925
2171
2024-04-10T22:32:09Z
Yellowsap
63
Created page with "{{Unofficial name}} {{Infobox Item |name = Hammer |image = [[File:Hammer.png]] |release = |episode = |profession = Combat |value = }} '''Hammer''' is a type of [[weapon]] in [[Brighter Shores]].<ref>https://brightershores.com/screenshots/16_thief_combat.jpg</ref> ==References== {{Reflist}} {{Weapons}} [[Category:Equipment]]"
wikitext
text/x-wiki
{{Unofficial name}}
{{Infobox Item
|name = Hammer
|image = [[File:Hammer.png]]
|release =
|episode =
|profession = Combat
|value =
}}
'''Hammer''' is a type of [[weapon]] in [[Brighter Shores]].<ref>https://brightershores.com/screenshots/16_thief_combat.jpg</ref>
==References==
{{Reflist}}
{{Weapons}}
[[Category:Equipment]]
ed404e5108787f55dbe9eb2c0291bde250a556fc
File:Hammer.png
6
926
2172
2024-04-10T22:36:00Z
Yellowsap
63
wikitext
text/x-wiki
da39a3ee5e6b4b0d3255bfef95601890afd80709
2173
2172
2024-04-10T22:36:27Z
Yellowsap
63
wikitext
text/x-wiki
{{Fair use|link=https://brightershores.com/screenshots/16_thief_combat.jpg}}
b67b7020b4601d2e5335b33791b78bfec3ff863b
2174
2173
2024-04-10T22:38:20Z
Yellowsap
63
wikitext
text/x-wiki
{{Fair use|link=https://brightershores.com/screenshots/16_thief_combat.jpg}}
== Summary ==
[[Category:Equipment images]]
3e6844b76c338e2e133ef39dda707b1feab74f59
File:Staff.png
6
732
2175
2017
2024-04-10T22:38:44Z
Yellowsap
63
wikitext
text/x-wiki
{{Fair use|link=https://brightershores.com/screenshots/03_shade_combat.jpg}}
== Summary ==
[[Category:Equipment images]]
be29ab3ebc78c3a36a3beb221e9778ae5ea4f39d
File:Crossbow.png
6
730
2176
1976
2024-04-10T22:39:18Z
Yellowsap
63
wikitext
text/x-wiki
{{Fair use|link=https://brightershores.com/screenshots/03_shade_combat.jpg}}
== Summary ==
[[Category:Equipment images]]
be29ab3ebc78c3a36a3beb221e9778ae5ea4f39d
File:Mace.png
6
731
2177
2022
2024-04-10T22:39:32Z
Yellowsap
63
wikitext
text/x-wiki
{{Fair use|link=https://brightershores.com/screenshots/03_shade_combat.jpg}}
== Summary ==
[[Category:Equipment images]]
be29ab3ebc78c3a36a3beb221e9778ae5ea4f39d
File:Sword.png
6
739
2178
2035
2024-04-10T22:40:05Z
Yellowsap
63
wikitext
text/x-wiki
{{Fair use|link=https://brightershores.com/screenshots/09_himatik_ruins.jpg}}
== Summary ==
[[Category:Equipment images]]
9ea1293ff54617962b7a7239c58b4574b77e5da2
File:Shield.png
6
744
2179
1998
2024-04-10T22:40:36Z
Yellowsap
63
wikitext
text/x-wiki
{{Fair use|link=https://brightershores.com/screenshots/03_shade_combat.jpg}}
== Summary ==
[[Category:Equipment images]]
be29ab3ebc78c3a36a3beb221e9778ae5ea4f39d
2180
2179
2024-04-10T22:40:46Z
Yellowsap
63
wikitext
text/x-wiki
{{Fair use|link=https://brightershores.com/screenshots/09_himatik_ruins.jpg}}
== Summary ==
[[Category:Equipment images]]
9ea1293ff54617962b7a7239c58b4574b77e5da2
Fen Research
0
55
2181
791
2024-04-11T00:43:06Z
2601:246:5000:E11:C898:8885:198:A5B0
0
Fixed the URL to the Twitter account for @FenResearch
wikitext
text/x-wiki
'''Fen Research''' is a game development studio based in [[Wikipedia:Cambridge|Cambridge]], UK. Founded by [[Andrew Gower]], it is currently actively developing the game [[Brighter Shores]].
Their official X, formerly known as Twitter, account is [https://twitter.com/FenResearch @FenResearch]
[[Category:Fen Research|#]]
4cf48e0eca847e456f8668e2ec4cf13e475c8d96
File:Arborae potion.png
6
863
2182
1958
2024-04-11T11:04:37Z
Yellowsap
63
wikitext
text/x-wiki
[[Category:Potion images]]
388d06d85806717fa6f546638e7310b47cc31d1c
Category:Needs passiveness
14
927
2183
2024-04-11T12:29:16Z
BlackHawk
10
Created page with "{{Categoryheader|pages|monster page that needs the passiveness added|yes|{{T|Infobox Monster}} with the <code>passive</code> parameter not filled in}} {{Hidden category}} [[Category:Needs information]] __EXPECTUNUSEDCATEGORY__"
wikitext
text/x-wiki
{{Categoryheader|pages|monster page that needs the passiveness added|yes|{{T|Infobox Monster}} with the <code>passive</code> parameter not filled in}}
{{Hidden category}}
[[Category:Needs information]]
__EXPECTUNUSEDCATEGORY__
04af851884119287c18a6d88cd5ff7facf420fee
2185
2183
2024-04-11T12:32:07Z
BlackHawk
10
wikitext
text/x-wiki
{{Categoryheader|pages|monster page that needs the passiveness added|yes|{{T|Infobox Monster}} with the <code>passive</code> parameter not filled in}}
{{Hidden category}}
[[Category:Needs information]]
[[Category:Maintenance categories]]
__EXPECTUNUSEDCATEGORY__
861dab9eff25cdbb6de6295b0cf5c0c1fd3351bd
Category:Needs profession
14
928
2184
2024-04-11T12:31:44Z
BlackHawk
10
Created page with "{{Categoryheader|pages|pages that need the profession added|yes|infoboxes that need the <code>episode</code> parameter filled}} {{Hidden category}} [[Category:Needs information]] [[Category:Maintenance categories]] __EXPECTUNUSEDCATEGORY__"
wikitext
text/x-wiki
{{Categoryheader|pages|pages that need the profession added|yes|infoboxes that need the <code>episode</code> parameter filled}}
{{Hidden category}}
[[Category:Needs information]]
[[Category:Maintenance categories]]
__EXPECTUNUSEDCATEGORY__
461c033118be1be0364464cc4cf4a301c30d76c9
Category:Needs variant details
14
929
2186
2024-04-11T12:33:40Z
BlackHawk
10
Created page with "{{Categoryheader|pages|monster page that need the variant added|yes|{{T|Infobox Interactable}} and {{T|Infobox Monster}} with the <code>variant</code> parameter not filled in}} {{Hidden category}} [[Category:Needs information]] [[Category:Maintenance categories]] __EXPECTUNUSEDCATEGORY__"
wikitext
text/x-wiki
{{Categoryheader|pages|monster page that need the variant added|yes|{{T|Infobox Interactable}} and {{T|Infobox Monster}} with the <code>variant</code> parameter not filled in}}
{{Hidden category}}
[[Category:Needs information]]
[[Category:Maintenance categories]]
__EXPECTUNUSEDCATEGORY__
d15c8bb0b621d45978272774c04029f908be60c9
Property:Passive
302
930
2187
2024-04-11T12:36:58Z
BlackHawk
10
Created page with "{{property|type=boolean}}"
wikitext
text/x-wiki
{{property|type=boolean}}
2cbc30543419a0b2c67e3e032254ec8eba536499
Property:Variant of
302
931
2188
2024-04-11T12:40:12Z
BlackHawk
10
Created page with "{{property|type=page|templates= * [[Module:Infobox Interactable]] * [[Module:Infobox Monster]] }}"
wikitext
text/x-wiki
{{property|type=page|templates=
* [[Module:Infobox Interactable]]
* [[Module:Infobox Monster]]
}}
259ec20972110ac096e81c1465eb9f43b07121f1
Template:Property
10
802
2189
1635
2024-04-11T12:42:26Z
BlackHawk
10
wikitext
text/x-wiki
This page tracks and controls the '''{{PAGENAME}}''' property. This property accepts and displays values that are [[has type::{{{type|page}}}]]s. {{{notes|}}}
{{#if:{{{templates|}}}|This property is added by the following templates:
{{{templates}}}
|This property is not added by any template.}}
----
[{{fullurl:Special:Ask|q={{urlencode:[[{{PAGENAME}}::+]]}}&limit=500&po={{urlencode:?{{PAGENAME}}}} }} '''Table of all articles using this property''']<noinclude>{{/doc}}<templatedata>
{
"params": {
"type": {
"label": "Data type",
"description": "SMW data type of the property - see [https://www.semantic-mediawiki.org/wiki/Help:List_of_datatypes]",
"example": "text",
"type": "string",
"default": "page",
"required": true
},
"notes": {
"label": "Notes",
"description": "Notes/description of property use and any special properties",
"example": "Used to specify if the entity is members-only or not.",
"type": "string",
"suggested": true
},
"templates": {
"label": "Templates",
"description": "List of templates and modules that set the property automatically",
"example": "\n* [[Template:Infobox NPC]]\n* [[Module:Infobox Monster]]",
"type": "string",
"suggested": true
}
},
"description": "Formats a property page and sets the data type",
"format": "block"
}
</templatedata>[[Category:Transclusion templates]]</noinclude>
ca75b36e93e620416480f03a8fc460affa40e2ea
Property:Profession
302
932
2190
2024-04-11T12:47:23Z
BlackHawk
10
Created page with "{{property|type=page|templates= * [[Module:Infobox Interactable]] * [[Module:Infobox Item]] * [[Module:Infobox NPC]] }}"
wikitext
text/x-wiki
{{property|type=page|templates=
* [[Module:Infobox Interactable]]
* [[Module:Infobox Item]]
* [[Module:Infobox NPC]]
}}
508c8efeef3de6b7332b86bf1c1abebaddfbdbc4
Property:Shop
302
933
2191
2024-04-11T12:48:40Z
BlackHawk
10
Created page with "{{property|type=page|templates= * [[Module:Infobox NPC]] }}"
wikitext
text/x-wiki
{{property|type=page|templates=
* [[Module:Infobox NPC]]
}}
b10d9ddbcb74807079855dd5ba30e73d57b226bf
User:BlackHawk/Sandbox
2
780
2192
1500
2024-04-11T12:53:58Z
BlackHawk
10
Blanked the page
wikitext
text/x-wiki
da39a3ee5e6b4b0d3255bfef95601890afd80709
Fishmonger
0
835
2193
2018
2024-04-11T12:57:41Z
InvalidCards
4
wikitext
text/x-wiki
{{Infobox NPC
|name = Fishmonger
|image = [[File:Fishmonger.png]]
|release =
|episode =
|profession = Fisher
|shop = Yes
}}
'''Fishmonger''' is an NPC located on the [[Eel Street]] in [[Hopeport (location)|Hopeport]].{{CiteTwitter|author=@AndrewCGower|url=https://twitter.com/andrewcgower/status/1776276857706479810|date=5 April 2024|archiveurl=https://web.archive.org/web/20240406173123/https://twitter.com/andrewcgower/status/1776276857706479810|archivedate=6 April 2024|quote=store.steampowered.com/app/2791440/Brighter_Shores/ Quite a few people have been asking how the 'rooms' in Brighter Shores connect together, so I have a made a quick video of me running across a small section of Hopeport. You can see how easily you can move between rooms, and how the 'rooms' connect together to form a much larger world.|notes=Timestamp in the video: 0:16 / 1:41.|name=|group=}}
==References==
<references/>
e43f2d9575d05b9771587ab2e3f0873efab05609
Town Square
0
838
2194
2019
2024-04-11T12:58:32Z
InvalidCards
4
wikitext
text/x-wiki
{{Infobox Location
|name = Town Square
|image = [[File:Town_Square.jpg|280px]]
|release =
|premium =
|episode = Hopeport
}}
The '''Town Square''' is a location in [[Hopeport (location)|Hopeport]].{{CiteTwitter|author=@AndrewCGower|url=https://twitter.com/andrewcgower/status/1776276857706479810|date=5 April 2024|archiveurl=https://web.archive.org/web/20240406173123/https://twitter.com/andrewcgower/status/1776276857706479810|archivedate=6 April 2024|quote=store.steampowered.com/app/2791440/Brighter_Shores/ Quite a few people have been asking how the 'rooms' in Brighter Shores connect together, so I have a made a quick video of me running across a small section of Hopeport. You can see how easily you can move between rooms, and how the 'rooms' connect together to form a much larger world.|notes=Timestamp in the video: 0:00 / 1:41.|name=|group=}} It connects to the [[Eel Street Bridge]] in the south. [[Zeltay Tramagan]] sells items in the square.
==References==
{{Reflist}}
62ea6e2e5d5220334eb92bfccde4f5e8a0ad800d
Zeltay Tramagan
0
834
2195
2012
2024-04-11T12:58:43Z
InvalidCards
4
wikitext
text/x-wiki
{{Infobox NPC
|name = Zeltay Tramagan
|image = [[File:Zeltay Tramagan.png]]
|release =
|episode =
|profession =
|shop = Yes
}}
'''Zeltay Tramagan''' is an NPC located on the [[Town Square]] in [[Hopeport (location)|Hopeport]].{{CiteTwitter|author=@AndrewCGower|url=https://twitter.com/andrewcgower/status/1776276857706479810|date=5 April 2024|archiveurl=https://web.archive.org/web/20240406173123/https://twitter.com/andrewcgower/status/1776276857706479810|archivedate=6 April 2024|quote=store.steampowered.com/app/2791440/Brighter_Shores/ Quite a few people have been asking how the 'rooms' in Brighter Shores connect together, so I have a made a quick video of me running across a small section of Hopeport. You can see how easily you can move between rooms, and how the 'rooms' connect together to form a much larger world.|notes=Timestamp in the video: 0:04 / 1:41.|name=|group=}}
==References==
<references/>
4e3f4fb50db58e9c6ad260307b9adbdb2271c9b9
User:BlackHawk
2
934
2196
2024-04-11T12:59:59Z
BlackHawk
10
Created page with "Hey there. Let me know if I can help!"
wikitext
text/x-wiki
Hey there. Let me know if I can help!
a087590788df0b191327ff9d6c8ec4994b75bd2b
Module:Infobox Shop
828
935
2197
2024-04-11T13:20:00Z
BlackHawk
10
Created page with "local p = {} local Infobox = require('Module:Infobox') local parse = require('Module:Param Parse') function p.main(frame) local args = frame:getParent().args local config = { infobox_name = 'Shop', } local params = { parse.name, parse.image, parse.release, parse.premium, parse.episode, {name = 'owner', func = parse.has_content, smw_property = 'Shop owner'}, } local infobox = Infobox.new(config, params, args) infobox :add_row{ {tag='th',..."
Scribunto
text/plain
local p = {}
local Infobox = require('Module:Infobox')
local parse = require('Module:Param Parse')
function p.main(frame)
local args = frame:getParent().args
local config = {
infobox_name = 'Shop',
}
local params = {
parse.name,
parse.image,
parse.release,
parse.premium,
parse.episode,
{name = 'owner', func = parse.has_content, smw_property = 'Shop owner'},
}
local infobox = Infobox.new(config, params, args)
infobox
:add_row{
{tag='th', content=Infobox.param('name'), class='infobox-header', colspan='20'},
}
:add_row{
{tag='td', content=Infobox.param('image'), class='infobox-image', colspan='20'},
}
:add_row{
{tag='th', content='Release', colspan="6"},
{tag='td', content=Infobox.param('release'), colspan="14"},
}
:add_row{
{tag='th', content='[[Episode]]', colspan="6"},
{tag='td', content=Infobox.param('episode'), colspan="14"},
}
:add_row{
{tag='th', content='[[Premium Pass|Premium]]', colspan="6"},
{tag='td', content=Infobox.param('premium'), colspan="14"},
}
:add_row{
{tag='th', content='Owner', colspan="6"},
{tag='td', content=Infobox.param('owner'), colspan="14"},
}
infobox:pad(20)
return infobox
end
return p
62aad0b9903d7761f01d533eb449f27922fce6cc
Module:Infobox Shop/doc
828
936
2198
2024-04-11T13:20:22Z
BlackHawk
10
Created page with "{{No documentation}}"
wikitext
text/x-wiki
{{No documentation}}
ad36a615c98d03e22b03ecaa7b9d7d87b5d7b517
Template:Infobox Shop
10
937
2199
2024-04-11T13:21:00Z
BlackHawk
10
Created page with "{{#invoke:Infobox Shop|main}}{{Mainonly|[[Category:Shops]]}}<noinclude>{{/doc}}</noinclude>"
wikitext
text/x-wiki
{{#invoke:Infobox Shop|main}}{{Mainonly|[[Category:Shops]]}}<noinclude>{{/doc}}</noinclude>
107f4e9f5cd918df10931dd841db7432b7a1bcf5
Template:Infobox Shop/doc
10
938
2200
2024-04-11T13:21:53Z
BlackHawk
10
Created page with "{{Documentation}} ==Parameters== ===name=== The name of the shop. ===image=== The image of the shop. ===release=== The release date of the shop. ===premium=== Whether or not this shop requires a [[premium pass]]. ===episode=== The episode of the shop. One of: * Hopeport * Hopeforest * Mine of Mantuban * Crenopolis ===owner=== The owner of the shop. ==Quick copy== <pre>{{Infobox Shop |name = |image = |release = |premium = |episode = |owner = }}</pre> <inclu..."
wikitext
text/x-wiki
{{Documentation}}
==Parameters==
===name===
The name of the shop.
===image===
The image of the shop.
===release===
The release date of the shop.
===premium===
Whether or not this shop requires a [[premium pass]].
===episode===
The episode of the shop.
One of:
* Hopeport
* Hopeforest
* Mine of Mantuban
* Crenopolis
===owner===
The owner of the shop.
==Quick copy==
<pre>{{Infobox Shop
|name =
|image =
|release =
|premium =
|episode =
|owner =
}}</pre>
<includeonly>[[Category:Infobox templates]]</includeonly>
e1440042ec03b33129979120588cf0821cd5d3c8
Melv's Fishing Supplies
0
86
2201
319
2024-04-11T13:26:15Z
BlackHawk
10
wikitext
text/x-wiki
{{Infobox Shop
|name = Melv's Fishing Supplies
|image = [[File:Melv's Fishing Supplies.jpg|280px]]
|release =
|premium =
|episode =
|owner = [[Melv]]
}}
'''Melv's Fishing Supplies''' is a [[Fisher]] shop run by [[Melv]].
15de6ab7aebbc5bd54f840e24a50d46cbe59b984
Lani's Curiosities
0
92
2202
323
2024-04-11T13:26:45Z
BlackHawk
10
wikitext
text/x-wiki
{{Infobox Shop
|name = Lani's Curiosities
|image = [[File:Lani's Curiosities.jpg|280px]]
|release =
|premium =
|episode =
|owner = [[Lani]]
}}
'''Lani's Curiosities''' is a shop run by [[Lani]].
ca8d16f59d54dc2cc574fedc6d17381e21d1bf9d
File:Combat actions weapons slot.jpg
6
939
2203
2024-04-11T14:30:09Z
Yellowsap
63
wikitext
text/x-wiki
da39a3ee5e6b4b0d3255bfef95601890afd80709
2204
2203
2024-04-11T14:30:58Z
Yellowsap
63
wikitext
text/x-wiki
{{Fair use|link=https://brightershores.com/screenshots/03_shade_combat.jpg
[[Category:Interface images]]
f34128a439b1eefac1e990ebc2ff74b1772e182f
Weapons
0
922
2205
2168
2024-04-11T14:32:25Z
Yellowsap
63
wikitext
text/x-wiki
[[File:Combat actions weapons slot.jpg|thumb|right|Weapons equipped by a player.]]
'''Weapons''' are items that [[players]] use to inflict damage in [[combat]]. They may be crafted through the [[Blacksmith|Blacksmith profession]].
Certain weapons have a [[damage]] type which is indicated by an icon on the top left of the weapon's icon. It is currently unknown how a weapon gets its damage type or if this can be changed.
==Weapon types==
===Melee===
*[[Claw]]
*[[Hammer]]
*[[Mace]]
*[[Sword]]
===Ranged===
*[[Crossbow]]
*[[Spiked Balls]]
===Magic===
*[[Staff]]
{{Weapons}}
28e3b176e1adc162533a583d8602a995dcacd6d2
2237
2205
2024-04-11T16:50:53Z
Yellowsap
63
Minor word change.
wikitext
text/x-wiki
[[File:Combat actions weapons slot.jpg|thumb|right|Weapons equipped by a player.]]
'''Weapons''' are items that [[players]] use to inflict damage in [[combat]]. They may be crafted through the [[Blacksmith|Blacksmith profession]].
Certain weapons have a [[damage]] type which is indicated by a symbol on the top left of the weapon's icon. It is currently unknown how a weapon gets its damage type or if this can be changed.
==Weapon types==
===Melee===
*[[Claw]]
*[[Hammer]]
*[[Mace]]
*[[Sword]]
===Ranged===
*[[Crossbow]]
*[[Spiked Balls]]
===Magic===
*[[Staff]]
{{Weapons}}
ce38dc9b763fbfcc3eaaabaa29c25c39c0ca6a3b
File:Spiked balls.png
6
940
2206
2024-04-11T14:40:02Z
Yellowsap
63
wikitext
text/x-wiki
da39a3ee5e6b4b0d3255bfef95601890afd80709
2207
2206
2024-04-11T14:40:35Z
Yellowsap
63
wikitext
text/x-wiki
{{Fair use|link=https://brightershores.com/screenshots/16_thief_combat.jpg}}
[[Category:Equipment images]]
bcc430b84e32671477cd055940faf5e0ef5d7d07
Spiked Balls
0
941
2208
2024-04-11T14:41:03Z
Yellowsap
63
Created page with "{{Unofficial name}} {{Infobox Item |name = Spiked Balls |image = [[File:Spiked balls.png]] |release = |episode = |profession = Combat |value = }} '''Spiked Balls''' are a type of [[weapon]] in [[Brighter Shores]].<ref>https://brightershores.com/screenshots/16_thief_combat.jpg</ref> ==References== {{Reflist}} {{Weapons}} [[Category:Equipment]]"
wikitext
text/x-wiki
{{Unofficial name}}
{{Infobox Item
|name = Spiked Balls
|image = [[File:Spiked balls.png]]
|release =
|episode =
|profession = Combat
|value =
}}
'''Spiked Balls''' are a type of [[weapon]] in [[Brighter Shores]].<ref>https://brightershores.com/screenshots/16_thief_combat.jpg</ref>
==References==
{{Reflist}}
{{Weapons}}
[[Category:Equipment]]
3cff1d2c15f2d4372ba07674edf8d1a69cca5b71
Template:Weapons
10
920
2209
2167
2024-04-11T14:41:45Z
Yellowsap
63
wikitext
text/x-wiki
{{Navbox
|name = Weapons
|title = [[Weapons]]
|gtitle1 = Melee
|group1 =
* [[Claw]]
* [[Hammer]]
* [[Mace]]
* [[Sword]]
|gtitle2 = Ranged
|group2 =
* [[Crossbow]]
* [[Spiked Balls]]
|gtitle3 = Magic
|group3 =
* [[Staff]]
}}{{Ctg|Weapons}}
1ac0353d5891c04a3ac256fe9209bce7d3cff4bd
File:Claw.png
6
942
2210
2024-04-11T14:45:52Z
Yellowsap
63
wikitext
text/x-wiki
da39a3ee5e6b4b0d3255bfef95601890afd80709
2211
2210
2024-04-11T14:46:11Z
Yellowsap
63
wikitext
text/x-wiki
{{Fair use|link=https://brightershores.com/screenshots/16_thief_combat.jpg}}
[[Category:Equipment images]]
bcc430b84e32671477cd055940faf5e0ef5d7d07
Claw
0
943
2212
2024-04-11T14:46:35Z
Yellowsap
63
Created page with "{{Unofficial name}} {{Infobox Item |name = Claw |image = [[File:Claw.png]] |release = |episode = |profession = Combat |value = }} A '''Claw''' is a type of [[weapon]] in [[Brighter Shores]].<ref>https://brightershores.com/screenshots/16_thief_combat.jpg</ref> ==References== {{Reflist}} {{Weapons}} [[Category:Equipment]]"
wikitext
text/x-wiki
{{Unofficial name}}
{{Infobox Item
|name = Claw
|image = [[File:Claw.png]]
|release =
|episode =
|profession = Combat
|value =
}}
A '''Claw''' is a type of [[weapon]] in [[Brighter Shores]].<ref>https://brightershores.com/screenshots/16_thief_combat.jpg</ref>
==References==
{{Reflist}}
{{Weapons}}
[[Category:Equipment]]
3ac5d70436c7228b18c6ea715f0ec08a0947d556
MediaWiki:Common.less/templates.less
8
25
2213
1680
2024-04-11T16:00:30Z
BlackHawk
10
less
less
/* ==================
TEMPLATES
==================*/
:root {
--keypress-background: @gallery;
--keypress-border: @silver;
--keypress-color: @mineshaft;
}
// TOC
.toc {
.toctitle > * {
color: @white;
}
}
// NAVBOX
.navbox {
.navbox-title {
color: @white;
}
.navbox-list {
&:not(last-child) {
border-bottom: none;
}
}
}
// Template:Archive list
.archivelist {
background-color: @infobox-background;
border: solid 1px @infobox-border-color;
box-shadow: @box-shadow;
float: right;
margin: 5px;
padding: 5px;
text-align: center;
width: 120px;
}
// Template:Shortcut
.shortcut {
border: 1px solid @infobox-border-color;
background: @infobox-background;
float: right;
font-size: .8em;
margin: 0.5em 0em 0.5em 1em;
padding: 0.5em;
text-align: center;
}
// Hatnotes: [[Module:Hatnote]]
.hatnote,
.seealso {
font-style: italic;
i {
font-style: normal;
}
}
// two classes - hatnote gets much customisation in minerva but seealso doesnt
div.hatnote,
div.seealso {
// 0.5em is <p>'s top and bottom margin
// 1.6em to match <dd>/<ul> indent
margin: .5em 1.6em;
& + & {
margin-top: -0.5em;
}
}
// Template:Key press
.keypress {
background: var(--keypress-background);
color: var(--keypress-color);
font-family: inherit;
border: 1px solid var(--keypress-border);
border-radius: @border-radius;
font-size: 0.9em;
margin: 0 0.1em;
padding: 0.1em 0.4em;
white-space: nowrap;
}
// Template:Relative location
.relative-location {
background: @infobox-background;
border: 1px solid @infobox-border-color;
border-spacing: 0;
box-shadow: @box-shadow;
margin: 5px;
text-align: center;
&-txt {
color: var(--text-color);
}
&-header {
background: @infobox-header-color;
}
}
deb7a064dddfd500761e569be17188e658b66a8a
2220
2213
2024-04-11T16:15:02Z
BlackHawk
10
less
less
/* ==================
TEMPLATES
==================*/
:root {
--keypress-background: @gallery;
--keypress-border: @silver;
--keypress-color: @mineshaft;
}
// TOC
.toc {
.toctitle > * {
color: @white;
}
}
// NAVBOX
.navbox {
.navbox-title {
color: @white;
}
.navbox-list {
&:not(last-child) {
border-bottom: none;
}
}
}
// Template:Archive list
.archivelist {
background-color: @infobox-background;
border: solid 1px @infobox-border-color;
box-shadow: @box-shadow;
float: right;
margin: 5px;
padding: 5px;
text-align: center;
width: 120px;
}
// Template:Shortcut
.shortcut {
border: 1px solid @infobox-border-color;
background: @infobox-background;
float: right;
font-size: .8em;
margin: 0.5em 0em 0.5em 1em;
padding: 0.5em;
text-align: center;
}
// Hatnotes: [[Module:Hatnote]]
.hatnote,
.seealso {
font-style: italic;
i {
font-style: normal;
}
}
// two classes - hatnote gets much customisation in minerva but seealso doesnt
div.hatnote,
div.seealso {
// 0.5em is <p>'s top and bottom margin
// 1.6em to match <dd>/<ul> indent
margin: .5em 1.6em;
& + & {
margin-top: -0.5em;
}
}
// Template:Key press
.keypress {
background: var(--keypress-background);
color: var(--keypress-color);
font-family: inherit;
border: 1px solid var(--keypress-border);
border-radius: @border-radius;
font-size: 0.9em;
margin: 0 0.1em;
padding: 0.1em 0.4em;
white-space: nowrap;
}
// Template:Relative location
.relative-location {
background: @infobox-background;
border: 1px solid @infobox-border-color;
border-spacing: 0;
box-shadow: @box-shadow;
text-align: center;
&-txt {
color: var(--text-color);
}
&-header {
background: @infobox-header-color;
}
}
8d588b2416483dfef21c6cb34f62161363210780
2226
2220
2024-04-11T16:19:19Z
BlackHawk
10
less
less
/* ==================
TEMPLATES
==================*/
:root {
--keypress-background: @gallery;
--keypress-border: @silver;
--keypress-color: @mineshaft;
}
// TOC
.toc {
.toctitle > * {
color: @white;
}
}
// NAVBOX
.navbox {
.navbox-title {
color: @white;
}
.navbox-list {
&:not(last-child) {
border-bottom: none;
}
}
}
// Template:Archive list
.archivelist {
background-color: @infobox-background;
border: solid 1px @infobox-border-color;
box-shadow: @box-shadow;
float: right;
margin: 5px;
padding: 5px;
text-align: center;
width: 120px;
}
// Template:Shortcut
.shortcut {
border: 1px solid @infobox-border-color;
background: @infobox-background;
float: right;
font-size: .8em;
margin: 0.5em 0em 0.5em 1em;
padding: 0.5em;
text-align: center;
}
// Hatnotes: [[Module:Hatnote]]
.hatnote,
.seealso {
font-style: italic;
i {
font-style: normal;
}
}
// two classes - hatnote gets much customisation in minerva but seealso doesnt
div.hatnote,
div.seealso {
// 0.5em is <p>'s top and bottom margin
// 1.6em to match <dd>/<ul> indent
margin: .5em 1.6em;
& + & {
margin-top: -0.5em;
}
}
// Template:Key press
.keypress {
background: var(--keypress-background);
color: var(--keypress-color);
font-family: inherit;
border: 1px solid var(--keypress-border);
border-radius: @border-radius;
font-size: 0.9em;
margin: 0 0.1em;
padding: 0.1em 0.4em;
white-space: nowrap;
}
// Template:Relative location
.relative-location {
background: @infobox-background;
border: 1px solid @infobox-border-color;
border-spacing: 0;
box-shadow: @box-shadow;
text-align: center;
&-txt {
color: @white;
}
&-header {
background: @infobox-header-color;
}
}
0f2abc8d1849d88222a77d53cf6e258402e9b54d
2233
2226
2024-04-11T16:24:54Z
BlackHawk
10
less
less
/* ==================
TEMPLATES
==================*/
:root {
--keypress-background: @gallery;
--keypress-border: @silver;
--keypress-color: @mineshaft;
}
// TOC
.toc {
.toctitle > * {
color: @white;
}
}
// NAVBOX
.navbox {
.navbox-title {
color: @white;
}
.navbox-list {
&:not(last-child) {
border-bottom: none;
}
}
}
// Template:Archive list
.archivelist {
background-color: @infobox-background;
border: solid 1px @infobox-border-color;
box-shadow: @box-shadow;
float: right;
margin: 5px;
padding: 5px;
text-align: center;
width: 120px;
}
// Template:Shortcut
.shortcut {
border: 1px solid @infobox-border-color;
background: @infobox-background;
float: right;
font-size: .8em;
margin: 0.5em 0em 0.5em 1em;
padding: 0.5em;
text-align: center;
}
// Hatnotes: [[Module:Hatnote]]
.hatnote,
.seealso {
font-style: italic;
i {
font-style: normal;
}
}
// two classes - hatnote gets much customisation in minerva but seealso doesnt
div.hatnote,
div.seealso {
// 0.5em is <p>'s top and bottom margin
// 1.6em to match <dd>/<ul> indent
margin: .5em 1.6em;
& + & {
margin-top: -0.5em;
}
}
// Template:Key press
.keypress {
background: var(--keypress-background);
color: var(--keypress-color);
font-family: inherit;
border: 1px solid var(--keypress-border);
border-radius: @border-radius;
font-size: 0.9em;
margin: 0 0.1em;
padding: 0.1em 0.4em;
white-space: nowrap;
}
// Template:Relative location
.relative-location {
background: @infobox-background;
border: 1px solid @infobox-border-color;
border-spacing: 0;
box-shadow: @box-shadow;
text-align: center;
&-header {
background: @infobox-header-color;
color: @white;
font-weight: bold;
}
}
5ca0f212713b76819c35d8c77babaf58786e6a27
MediaWiki:Common.css
8
30
2214
1813
2024-04-11T16:00:39Z
BlackHawk
10
Updating CSS from [[MediaWiki:Common.less]]
css
text/css
/* <pre> */
:root {
--body-main: #fdfcfc;
--body-light: #f5f0eb;
--body-mid: #d1b9ad;
--body-dark: #b1886f;
--body-border: #d1b9ad;
--body-background-color: #173a4d;
--button-background: #605443;
--button-color: #fff;
--button-border: #3c352a;
--button-dark: #18140c;
--button-light: #3a301d;
--sidebar: #cfc08d;
--background-text-color: #e2dbc8;
--background-link-color: #e2bd8a;
--search-box: #efeee6;
--link-color: #6e452b;
--redlink-color: #ba0000;
--text-color: #2F2828;
--byline-color: #ccc;
--subtle-color: #afa19a;
--admin-blue: #332e75;
--bearcat-green: #13592e;
--awb-purple: #933b96;
--rsw-blue: #438ab6;
--osrsw-brown: #605443;
--thumb-bg: var(--body-light);
--thumb-caption-bg: var(--body-mid);
--sourceeditor-input-background: #fff;
--sourceeditor-background: var(--body-light);
--sourceeditor-background-secondary: var(--body-light);
--sourceeditor-border: var(--body-mid);
--codemirror-gutter-background: var(--body-mid);
}
@font-face {
font-family: 'Lora';
font-weight: 400 700;
font-style: normal;
font-display: swap;
src: url('filepath://Lora.woff2') format('woff2');
}
@font-face {
font-family: 'Lora';
font-weight: 400 700;
font-style: italic;
font-display: swap;
src: url('filepath://Lora-Italic.woff2') format('woff2');
}
:root {
--base-text-color: #36414f;
--base-heading-color: #444e5a;
--base-heading-border: #e4eaee;
--mw-code-background-color: var(--body-light);
--body-background-image: url('filepath://Wiki_background.jpg');
}
#mw-page-base {
background: none;
}
.mw-body {
background-color: var(--body-main);
color: var(--text-color);
border-color: transparent;
box-shadow: 0 0 7px rgba(0, 0, 0, 0.15);
margin-top: 0;
}
h1,
h2,
h3,
h4,
h5,
h6 {
color: var(--text-color);
}
h1,
h2 {
border-color: var(--body-border);
}
.mw-body h1,
.mw-body-content h1,
.mw-body-content h2,
.mw-body-content h3,
.mw-body-content h4,
.mw-body-content h5,
.mw-body-content h6 {
font-family: 'Lora', 'Palatino', 'Georgia', serif;
}
.mw-parser-output h2:first-of-type {
clear: left;
}
.mw-footer {
color: var(--background-text-color);
}
.mw-footer li {
color: var(--background-text-color);
}
.mw-footer a,
.mw-footer a:active,
.mw-footer a:visited {
color: var(--background-link-color);
}
::placeholder {
color: var(--subtle-color);
}
a {
color: var(--link-color);
}
a:visited,
a:active {
color: var(--link-color);
}
a.new {
color: var(--redlink-color);
}
a.new:visited {
color: var(--redlink-color);
}
.mw-parser-output a.extiw,
.mw-parser-output a.external {
color: var(--link-color);
}
.mw-parser-output a.extiw:visited,
.mw-parser-output a.external:visited,
.mw-parser-output a.extiw:active,
.mw-parser-output a.external:active {
color: var(--link-color);
}
.jsPurgeLink a.external {
color: var(--link-color);
}
:root {
--errorbox-bg: #feecea;
--errorbox-border: #ee4231;
--warningbox-bg: #fef9de;
--warningbox-border: #f9d000;
--successbox-bg: #ecf8e3;
--successbox-border: #6bc71f;
}
.mw-message-box-error,
.errorbox,
.mw-message-box-warning,
.warningbox,
.mw-message-box-success,
.successbox,
.usermessage {
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
}
.mw-message-box-error,
.errorbox {
background-color: var(--errorbox-bg);
border-color: var(--errorbox-border);
}
.mw-message-box-warning,
.warningbox,
.usermessage {
background-color: var(--warningbox-bg);
border-color: var(--warningbox-border);
}
.mw-message-box-success,
.successbox {
background-color: var(--successbox-bg);
border-color: var(--successbox-border);
}
.catlinks {
background: var(--body-light);
border: 1px solid var(--body-dark);
padding: 8px 15px;
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
}
.catlinks li {
border-color: var(--body-mid);
}
.filehistory a img,
#file img {
background: url("data:image/svg+xml,%3C%3Fxml version='1.0' encoding='UTF-8'%3F%3E%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16'%3E%3Cpath d='M0 0h8v16h8V8H0z' opacity='.13'/%3E%3C/svg%3E") repeat;
}
#file img:hover {
background: none;
}
.mw-highlight {
background: none;
}
.mw-highlight .linenos {
background-color: var(--mw-code-background-color);
color: var(--body-border);
}
.mw-highlight a:hover .linenos,
.mw-highlight .hll a .linenos {
color: var(--body-dark);
}
.mw-content-ltr.mw-highlight-lines pre,
.mw-content-ltr.content .mw-highlight-lines pre {
box-shadow: inset 2.75em 0 0 var(--mw-code-background-color);
}
#pagehistory ul {
list-style: none;
margin: 0;
}
#pagehistory li {
border: 1px solid transparent;
padding: 1px 10px;
margin: 2px 0;
}
#pagehistory li.selected {
background-color: var(--body-light);
color: inherit;
border: 1px dashed var(--body-border);
outline: none;
}
#mw-history-compare > div:first-of-type {
position: -webkit-sticky;
position: sticky;
top: 0;
background-color: var(--body-main);
border-bottom: 1px solid var(--body-dark);
padding: 0.25em 0;
}
.wgl-stickyheader #mw-history-compare > div:first-of-type {
top: 2.5rem;
}
.autocomment,
.autocomment a,
.autocomment a:visited {
color: var(--link-color);
}
li span.deleted,
span.history-deleted {
color: var(--byline-color);
}
.mw-usertoollinks-contribs-no-edits,
.mw-usertoollinks-contribs-no-edits:visited {
color: var(--redlink-color);
}
.CategoryTreeToggle {
color: var(--link-color);
}
body.wgl-stickyheader.action-view .mw-headline:target::before {
display: block;
content: '';
margin-top: -3rem;
height: 3rem;
visibility: hidden;
pointer-events: none;
}
.mw-mmv-post-image {
color: var(--text-color);
background-color: var(--body-main);
}
.mw-mmv-image-metadata {
border-top-color: var(--body-mid);
background-color: var(--body-light);
}
.mw-mmv-dialog,
.mw-mmv-dialog .mw-mmv-dialog-down-arrow,
.mw-mmv-options-dialog .mw-mmv-dialog-down-arrow {
background-color: var(--body-light);
box-shadow: none;
}
.mw-mmv-options-enable-alert {
background-color: var(--body-light);
color: var(--text-color);
}
.mw-mmv-options-dialog-header,
.mw-mmv-options-text-header,
.mw-mmv-options-text-body,
.mw-mmv-options-enable-alert,
.mw-mmv-options-dialog .mw-mmv-disable-confirmation .mw-mmv-options-dialog-header,
.mw-mmv-options-dialog .mw-mmv-disable-confirmation .mw-mmv-options-text-header {
color: var(--text-color);
}
.mw-revslider-container {
border-color: var(--sidebar);
}
.mw-revslider-slider-wrapper {
border-top-color: var(--sidebar);
}
.mw-ui-button {
background-color: var(--ooui-normal);
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
}
.mw-ui-button:not(:disabled):hover,
.mw-ui-button:not(:disabled):active {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
}
.mw-ui-button:not(:disabled):focus {
color: var(--ooui-text);
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent), inset 0 0 0 2px #fff;
}
.mw-ui-button:not(:disabled):visited {
color: var(--ooui-text);
}
.mw-ui-button.mw-ui-progressive:not(:disabled) {
background-color: var(--ooui-progressive);
color: #fff;
border-color: var(--ooui-progressive);
}
.mw-ui-button.mw-ui-progressive:not(:disabled):hover {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
}
.mw-ui-button.mw-ui-progressive:not(:disabled):focus {
box-shadow: inset 0 0 0 1px var(--ooui-accent), inset 0 0 0 2px #fff;
}
.mw-ui-button.mw-ui-progressive:not(:disabled):active,
.mw-ui-button.mw-ui-progressive:not(:disabled).is-on {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
box-shadow: none;
}
.mw-ui-button.mw-ui-destructive:not( :disabled ) {
color: #fff;
}
.mw-ui-button.mw-ui-quiet,
.mw-ui-button.mw-ui-quiet.mw-ui-progressive,
.mw-ui-button.mw-ui-quiet.mw-ui-destructive {
color: var(--text-color);
}
input[type='checkbox']:hover + .mw-ui-button.mw-ui-quiet,
input[type='checkbox']:hover + .mw-ui-button.mw-ui-quiet.mw-ui-progressive,
input[type='checkbox']:hover + .mw-ui-button.mw-ui-quiet.mw-ui-destructive,
.mw-ui-button.mw-ui-quiet:hover,
.mw-ui-button.mw-ui-quiet.mw-ui-progressive:hover,
.mw-ui-button.mw-ui-quiet.mw-ui-destructive:hover {
background-color: rgba(0, 24, 73, 0.02745098);
color: var(--text-color);
border-color: transparent;
}
input[type='checkbox']:focus + .mw-ui-button.mw-ui-quiet,
input[type='checkbox']:focus + .mw-ui-button.mw-ui-quiet.mw-ui-progressive,
input[type='checkbox']:focus + .mw-ui-button.mw-ui-quiet.mw-ui-destructive,
.mw-ui-button.mw-ui-quiet:focus,
.mw-ui-button.mw-ui-quiet.mw-ui-progressive:focus,
.mw-ui-button.mw-ui-quiet.mw-ui-destructive:focus {
color: var(--text-color);
}
input[type='checkbox']:active + .mw-ui-button.mw-ui-quiet,
input[type='checkbox']:active + .mw-ui-button.mw-ui-quiet.mw-ui-progressive,
input[type='checkbox']:active + .mw-ui-button.mw-ui-quiet.mw-ui-destructive,
.mw-ui-button.mw-ui-quiet:active,
.mw-ui-button.mw-ui-quiet.mw-ui-progressive:active,
.mw-ui-button.mw-ui-quiet.mw-ui-destructive:active {
background-color: rgba(0, 36, 73, 0.08235294);
color: var(--text-color);
border-color: #72777d;
}
.mw-ui-input {
background-color: var(--ooui-input);
color: var(--text-color);
border-color: var(--ooui-input-border);
}
.mw-ui-input:hover {
border-color: var(--ooui-input-border--hover);
}
.mw-ui-input::placeholder {
color: var(--byline-color);
}
.mw-content-ltr .redirectText li:first-child {
padding: 0;
background: 0;
}
.mw-content-ltr .redirectText li:first-child::before {
content: '';
background: currentcolor;
-webkit-mask: url("filepath://Redirect-arrow.svg") no-repeat 50% 50% / contain;
mask: url("filepath://Redirect-arrow.svg") no-repeat 50% 50% / contain;
display: inline-block;
width: 47px;
height: 20px;
}
.vector-search-box-inner {
background: var(--body-main) !important;
box-shadow: inset 0 -7px 7px -7px rgba(0, 0, 0, 0.15) !important;
}
.vector-menu-dropdown .vector-menu-heading {
color: var(--vector-tab-link-color) !important;
}
.vector-menu-dropdown .vector-menu-heading:hover {
color: var(--vector-tab-link-color) !important;
}
.vector-menu-dropdown .vector-menu-heading:focus {
color: var(--vector-tab-link-color) !important;
}
:root {
--wikitable-header-bg: var(--body-dark);
--wikitable-border: var(--body-border);
--wikitable-bg: var(--body-light);
--wikitable-bg-lighter: #e9e3d6;
--wikitable-color: var(--text-color);
--table-na-background: rgba(255, 255, 255, 0.3);
--table-na-color: var(--subtle-color);
--table-yes-background: #c3e8a3;
--table-yes-color: #2e5e05;
--table-no-background: #fbc0ba;
--table-no-color: #801c13;
--table-maybe-background: #fcea94;
--table-maybe-color: #786300;
}
.wikitable {
background: var(--wikitable-bg);
color: var(--wikitable-color);
border-color: var(--wikitable-border);
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
}
.wikitable > tr > th,
.wikitable > tr > td,
.wikitable > * > tr > th,
.wikitable > * > tr > td {
border-color: var(--wikitable-border);
}
.wikitable > tr > th.table-noborder,
.wikitable > tr > td.table-noborder,
.wikitable > * > tr > th.table-noborder,
.wikitable > * > tr > td.table-noborder {
border-left-style: hidden;
border-right-style: hidden;
padding-left: 0;
padding-right: 0;
}
.wikitable > tr > th,
.wikitable > * > tr > th {
background-color: var(--wikitable-header-bg);
color: #fff;
}
.tabber .wikitable {
box-shadow: none;
}
.mw_metadata td,
.mw_metadata th {
border-color: var(--wikitable-border);
}
.mw_metadata th {
background-color: var(--wikitable-header-bg);
}
.mw_metadata td {
background-color: var(--wikitable-bg);
}
.mw-datatable {
border-color: var(--wikitable-border);
}
.mw-datatable td,
.mw-datatable th {
border-color: var(--wikitable-border);
}
.mw-datatable th {
background-color: var(--wikitable-header-bg);
}
.mw-datatable td {
background-color: var(--wikitable-bg);
}
.mw-datatable tr:hover td {
background-color: var(--wikitable-bg);
}
table.alternating-rows tr:nth-child(odd),
table.alternating-cols td:nth-child(odd) {
background: var(--wikitable-alternating-bg);
}
.table-na {
background: var(--table-na-background);
color: var(--table-na-color);
vertical-align: middle;
text-align: center;
}
.table-yes {
background: var(--table-yes-background);
color: var(--table-yes-color);
}
.table-positive {
background: var(--table-yes-background);
}
.table-no {
background: var(--table-no-background);
color: var(--table-no-color);
}
.table-negative {
background: var(--table-no-background);
}
.table-maybe {
background: var(--table-maybe-background);
color: var(--table-maybe-color);
}
#mw-allmessagestable .am_actual,
#mw-allmessagestable .am_default {
background-color: var(--wikitable-bg);
}
#mw-allmessagestable .am_default:hover,
#mw-allmessagestable .am_actual:hover,
#mw-allmessagestable tbody:hover td {
background-color: var(--wikitable-bg-lighter);
}
table.wikitable td.no-cell-spacing {
padding: 0;
height: 0;
}
table.wikitable td.no-cell-spacing table {
margin: -1px;
width: calc(100% + 2px);
height: calc(100% + 2px);
}
.plainlist ol,
.plainlist ul {
margin: 0;
}
.plainlist li {
margin-bottom: 0;
list-style: none;
}
table.align-right-1 td:nth-of-type(1),
table.align-right-2 td:nth-of-type(2),
table.align-right-3 td:nth-of-type(3),
table.align-right-4 td:nth-of-type(4),
table.align-right-5 td:nth-of-type(5),
table.align-right-6 td:nth-of-type(6),
table.align-right-7 td:nth-of-type(7),
table.align-right-8 td:nth-of-type(8),
table.align-right-9 td:nth-of-type(9),
table.align-right-10 td:nth-of-type(10),
table.align-right-11 td:nth-of-type(11),
table.align-right-12 td:nth-of-type(12),
table.align-right-13 td:nth-of-type(13),
table.align-right-14 td:nth-of-type(14),
table.align-right-15 td:nth-of-type(15),
table.align-right-16 td:nth-of-type(16),
table.align-right-17 td:nth-of-type(17),
table.align-right-18 td:nth-of-type(18),
table.align-right-19 td:nth-of-type(19),
table.align-right-20 td:nth-of-type(20) {
text-align: right;
}
table.align-center-1 td:nth-of-type(1),
table.align-center-2 td:nth-of-type(2),
table.align-center-3 td:nth-of-type(3),
table.align-center-4 td:nth-of-type(4),
table.align-center-5 td:nth-of-type(5),
table.align-center-6 td:nth-of-type(6),
table.align-center-7 td:nth-of-type(7),
table.align-center-8 td:nth-of-type(8),
table.align-center-9 td:nth-of-type(9),
table.align-center-10 td:nth-of-type(10),
table.align-center-11 td:nth-of-type(11),
table.align-center-12 td:nth-of-type(12),
table.align-center-13 td:nth-of-type(13),
table.align-center-14 td:nth-of-type(14),
table.align-center-15 td:nth-of-type(15),
table.align-center-16 td:nth-of-type(16),
table.align-center-17 td:nth-of-type(17),
table.align-center-18 td:nth-of-type(18),
table.align-center-19 td:nth-of-type(19),
table.align-center-20 td:nth-of-type(20) {
text-align: center;
}
table.align-left-1 td:nth-of-type(1),
table.align-left-2 td:nth-of-type(2),
table.align-left-3 td:nth-of-type(3),
table.align-left-4 td:nth-of-type(4),
table.align-left-5 td:nth-of-type(5),
table.align-left-6 td:nth-of-type(6),
table.align-left-7 td:nth-of-type(7),
table.align-left-8 td:nth-of-type(8),
table.align-left-9 td:nth-of-type(9),
table.align-left-10 td:nth-of-type(10),
table.align-left-11 td:nth-of-type(11),
table.align-left-12 td:nth-of-type(12),
table.align-left-13 td:nth-of-type(13),
table.align-left-14 td:nth-of-type(14),
table.align-left-15 td:nth-of-type(15),
table.align-left-16 td:nth-of-type(16),
table.align-left-17 td:nth-of-type(17),
table.align-left-18 td:nth-of-type(18),
table.align-left-19 td:nth-of-type(19),
table.align-left-20 td:nth-of-type(20) {
text-align: left;
}
:root {
--diff-addedline-border-color: #438ab5;
--diff-addedline-background: #bddff2;
--diff-addedline-color: #000;
--diff-deletedline-border-color: #379541;
--diff-deletedline-background: #c1edbf;
--diff-deletedline-color: #000;
--diff-context-border-color: var(--body-mid);
--diff-context-background: var(--body-mid);
}
.diff-context {
border-color: var(--diff-context-border-color);
background: var(--diff-context-background);
color: inherit;
}
.diff-addedline {
border-color: var(--diff-addedline-border-color);
}
.diff-addedline .diffchange {
background: var(--diff-addedline-background);
color: var(--diff-addedline-color);
}
.diff-deletedline {
border-color: var(--diff-deletedline-border-color);
}
.diff-deletedline .diffchange {
background: var(--diff-deletedline-background);
color: var(--diff-deletedline-color);
}
.mw-diff-movedpara-left:after,
.mw-diff-movedpara-right:after {
color: var(--text-color);
}
.mw-notification {
background-color: var(--body-light);
border-color: var(--body-border);
color: var(--text-color);
}
.mw-echo-ui-notificationsInboxWidget-toolbarWrapper {
background: var(--body-main);
}
.mw-body-content .mw-echo-ui-datedSubGroupListWidget-title-secondary {
color: var(--byline-color);
}
.mw-echo-ui-pageNotificationsOptionWidget.oo-ui-optionWidget-selected {
background-color: var(--ooui-normal);
color: var(--ooui-accent);
}
.mw-echo-ui-pageNotificationsOptionWidget-label-count {
background-color: var(--ooui-normal);
color: var(--byline-color);
}
.oo-ui-optionWidget-selected .mw-echo-ui-pageNotificationsOptionWidget-label-count {
color: var(--ooui-accent);
}
.mw-echo-ui-pageNotificationsOptionWidget.oo-ui-optionWidget-highlighted {
background-color: var(--ooui-normal);
color: var(--text-color);
}
.mw-echo-ui-crossWikiUnreadFilterWidget {
border-color: var(--body-border);
}
.mw-echo-ui-crossWikiUnreadFilterWidget-subtitle {
color: var(--byline-color);
}
.mw-echo-ui-notificationBadgeButtonPopupWidget-popup > .oo-ui-popupWidget-popup > .oo-ui-popupWidget-head,
.mw-echo-ui-notificationBadgeButtonPopupWidget-popup > .oo-ui-popupWidget-popup > .oo-ui-popupWidget-footer {
border-color: var(--ooui-interface-border);
}
.mw-echo-ui-notificationBadgeButtonPopupWidget-popup > .oo-ui-popupWidget-popup > .oo-ui-popupWidget-footer .mw-echo-ui-notificationBadgeButtonPopupWidget-footer-buttons .oo-ui-buttonElement:last-child {
border-left-color: var(--ooui-normal-border);
}
.mw-echo-ui-notificationItemWidget {
background-color: var(--ooui-normal);
border-color: var(--ooui-normal-border);
}
.mw-echo-ui-notificationItemWidget:hover,
.mw-echo-ui-notificationItemWidget-unread:hover {
background-color: var(--ooui-normal--hover);
}
.mw-echo-ui-notificationItemWidget:last-child {
border-bottom-color: var(--ooui-normal-border);
}
.mw-echo-ui-notificationItemWidget-unread {
background-color: var(--search-box);
}
.mw-echo-ui-crossWikiNotificationItemWidget-group,
.mw-echo-ui-bundleNotificationItemWidget-group {
background-color: var(--ooui-interface);
}
.mw-echo-ui-toggleReadCircleButtonWidget-circle {
background-color: var(--ooui-progressive);
}
.mw-echo-ui-toggleReadCircleButtonWidget:hover .mw-echo-ui-toggleReadCircleButtonWidget-circle {
background-color: var(--ooui-progressive--hover);
}
.mw-echo-ui-toggleReadCircleButtonWidget-circle-unread {
background-color: var(--ooui-normal);
border-color: var(--ooui-normal-border);
}
.mw-echo-ui-notificationItemWidget-content-message-header,
.mw-echo-ui-notificationItemWidget-content-message-body,
.mw-echo-ui-menuItemWidget > .oo-ui-buttonElement-button > .oo-ui-labelElement-label,
.mw-echo-ui-notificationItemWidget-content-actions-timestamp {
color: var(--ooui-text);
}
.mw-echo-ui-bundleNotificationItemWidget-group {
background-color: var(--body-main);
}
@keyframes unseen-fadeout-to-unread {
from {
background-color: var(--wikitable-bg-lighter);
}
to {
background-color: var(--search-box);
}
}
@keyframes unseen-fadeout-to-read {
from {
background-color: var(--wikitable-bg-lighter);
}
to {
background-color: var(--body-main);
}
}
.mwe-popups {
background: var(--body-light);
}
.mwe-popups .mwe-popups-container {
color: var(--text-color);
background: var(--body-light);
}
.mwe-popups .mwe-popups-container.flipped-x-y:before,
.mwe-popups .mwe-popups-container.flipped-y:before {
border-top: none;
}
.mwe-popups .mwe-popups-container.mwe-popups-no-image-tri:before {
border-bottom: none;
}
.mwe-popups .mwe-popups-container.flipped-x-y:after,
.mwe-popups .mwe-popups-container.flipped-y:after {
border-top-color: var(--body-light);
}
.mwe-popups .mwe-popups-container.mwe-popups-no-image-tri:after {
border-bottom-color: var(--body-light);
}
.mwe-popups .mwe-popups-settings-icon:hover,
.mwe-popups .mwe-popups-settings-icon:active {
background-color: var(--ooui-normal--hover);
}
.mwe-popups .mw-ui-icon-element:not(.disabled):hover {
background: none;
}
.mwe-popups .mwe-popups-extract {
color: var(--text-color);
}
.mwe-popups .mwe-popups-extract[dir='ltr']:after {
background-image: linear-gradient(to right, rgba(49, 62, 89, 0), var(--body-light) 50%);
}
.mwe-popups-overlay {
background-color: var(--ooui-window-background);
}
#mwe-popups-settings {
background: var(--ooui-interface);
border-color: var(--ooui-interface-border);
color: var(--text-color);
}
#mwe-popups-settings header {
border-color: var(--ooui-interface-border);
}
#mwe-popups-settings main#mwe-popups-settings-form p {
color: var(--byline-color);
}
#mwe-popups-settings main#mwe-popups-settings-form form label > span {
color: var(--ooui-text);
}
:root {
--smw-ask-options-even-bg: var(--body-mid);
--smw-ask-options-odd-bg: var(--body-light);
--smw-ask-action-btn-lblue-bg: var(--body-main);
--smw-ask-action-btn-lblue-color: #000;
--smw-ask-action-btn-lblue-border-color: var(--body-light);
--smw-ask-action-btn-dblue-bg: var(--body-light);
--smw-ask-action-btn-dblue-color: #fff;
--smw-ask-action-btn-dblue-border-color: var(--button-border);
}
.smw-ask-condition fieldset,
.smw-ask-printhead fieldset {
border-color: var(--sidebar);
}
.smw-ask-search fieldset,
.smw-ask-format fieldset,
.smw-ask-options fieldset {
border-color: var(--sidebar);
}
.strike > span:before,
.strike > span:after {
background: var(--sidebar);
}
.smw-ask-options-fields tr td {
background-color: var(--smw-ask-options-even-bg);
}
.smw-ask-options-fields tr:nth-child(odd) td {
background-color: var(--smw-ask-options-odd-bg);
}
.smw-ask-action-btn.smw-ask-action-btn-lblue,
.smw-ask-action-btn.smw-ask-action-btn-lblue:hover,
.smw-ask-action-btn.smw-ask-action-btn-lblue:visited {
background-color: var(--smw-ask-action-btn-lblue-bg);
color: var(--smw-ask-action-btn-lblue-color);
border-color: var(--smw-ask-action-btn-lblue-border-color);
}
.smw-ask-action-btn.smw-ask-action-btn-dblue,
.smw-ask-action-btn.smw-ask-action-btn-dblue:hover,
.smw-ask-action-btn.smw-ask-action-btn-dblue:visited {
background-color: var(--smw-ask-action-btn-dblue-bg);
color: var(--smw-ask-action-btn-dblue-color);
border-color: var(--smw-ask-action-btn-dblue-border-color);
}
.smw-ask-query textarea,
.smw-ask-actions textarea {
background-color: var(--ooui-interface);
border-color: var(--ooui-interface-border);
color: var(--ooui-text);
}
.smw-ask-query-format select {
background-color: var(--ooui-interface);
border: 1px solid var(--ooui-interface-border);
color: var(--ooui-text);
}
.smw-ask-toplinks {
background-color: var(--body-mid);
}
.smw-ask-toplinks span.smw-icon-info {
background: none;
padding: 0 !important;
}
.smw-ask-toplinks span.smw-icon-info::before {
content: '';
background: var(--text-color);
-webkit-mask: url("data:image/svg+xml,%3C%3Fxml version='1.0' encoding='UTF-8'%3F%3E%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 20 20'%3E%3Ctitle%3Einfo%3C/title%3E%3Cpath d='M10 0C4.477 0 0 4.477 0 10s4.477 10 10 10 10-4.477 10-10S15.523 0 10 0zM9 5h2v2H9zm0 4h2v6H9z'/%3E%3C/svg%3E") no-repeat 50% 50% / contain;
mask: url("data:image/svg+xml,%3C%3Fxml version='1.0' encoding='UTF-8'%3F%3E%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 20 20'%3E%3Ctitle%3Einfo%3C/title%3E%3Cpath d='M10 0C4.477 0 0 4.477 0 10s4.477 10 10 10 10-4.477 10-10S15.523 0 10 0zM9 5h2v2H9zm0 4h2v6H9z'/%3E%3C/svg%3E") no-repeat 50% 50% / contain;
padding: 0 0 3px 18px;
}
.smw-ask-options-row-odd {
background-color: var(--body-light);
}
.smw-ask-options-row-even {
background-color: var(--body-mid);
}
#options-toggle:not(:checked) + #options-list .options-parameter-list:after {
background-image: linear-gradient(to bottom, transparent, var(--body-mid) 90%);
}
.smw-ask-button-submit input {
background-color: var(--ooui-normal);
border-color: var(--ooui-normal-border);
color: var(--text-color);
}
.smw-ask-button-submit input:hover,
.smw-ask-button-lgrey:hover {
background-color: var(--ooui-normal--hover);
border-color: var(--ooui-normal-border);
}
input.smw-ask-action-btn.smw-ask-action-btn-dblue {
background-color: var(--ooui-normal);
border-color: var(--ooui-normal-border);
color: var(--ooui-text);
}
a.smw-ask-action-btn.smw-ask-action-btn-lblue {
background-color: var(--body-mid);
border-color: var(--body-mid);
color: var(--ooui-text);
}
a.smw-ask-action-btn.smw-ask-action-btn-lblue:visited {
background-color: var(--body-mid);
border-color: var(--body-mid);
color: var(--ooui-text);
}
a.smw-ask-action-btn.smw-ask-action-btn-lblue:hover {
background-color: var(--body-mid);
border-color: var(--body-mid);
color: var(--ooui-text);
}
a.smw-ask-action-btn-lgrey {
background-color: var(--ooui-normal);
border-color: var(--ooui-normal-border);
color: var(--ooui-text);
}
a.smw-ask-action-btn-lgrey:hover {
background-color: var(--ooui-normal--hover);
border-color: var(--ooui-normal-border);
color: var(--ooui-text);
}
.smw-callout-error {
background-color: var(--errorbox-bg);
border-color: var(--errorbox-border);
}
.smw-callout-info {
background-color: var(--body-light);
border-color: var(--body-dark);
}
.smw-callout-success {
background-color: var(--successbox-bg);
border-color: var(--successbox-border);
}
.smw-callout-warning {
background-color: var(--warningbox-bg);
border-color: var(--warningbox-bg);
}
.smw-tabs input.nav-tab:checked + label.nav-label,
.smw-tabs input.nav-tab:checked + label.nav-label:hover {
color: inherit;
}
#tab-smw-property-value:checked + label.nav-label .usage-count {
color: #fff;
background-color: var(--ooui-progressive);
}
#tab-smw-property-value:checked + label.nav-label .usage-count.moderate {
color: #fff;
background-color: #b55e0c;
border-color: #b55e0c;
}
#tab-smw-property-value:checked + label.nav-label .usage-count.high {
color: #fff;
background-color: #9f261e;
border-color: #9f261e;
}
.smw-property-page-results .header-title {
background-color: var(--ooui-interface);
border-bottom-color: var(--ooui-interface-border);
color: var(--ooui-text);
}
.smw-property-page-results .value-row:hover {
background-color: var(--ooui-normal--hover);
}
.smw-property-page-results .smw-table .header-row {
color: var(--text-color);
}
.tippy-tooltip.light-border-theme {
background-color: var(--body-light);
color: var(--text-color);
}
.tippy-tooltip.light-border-theme .tippy-arrow {
border-top-color: var(--body-light);
}
.tippy-tooltip.light-border-theme .tippy-arrow:after {
border-top-color: var(--body-light);
}
.tippy-header {
background-color: var(--body-dark);
border-bottom-color: var(--body-mid);
}
.smw-ui-input-filter {
background-color: var(--ooui-interface);
border-color: var(--ooui-interface-border);
color: var(--ooui-text);
}
.smw-ui-input-filter input {
border-left-color: var(--ooui-interface-border) !important;
color: var(--ooui-text) !important;
}
.smw-ui-pagination .page-link.link-disabled {
background-color: var(--ooui-disabled);
border-color: var(--ooui-disabled-border);
color: var(--subtle-color);
}
.smw-ui-pagination .page-link {
background-color: var(--ooui-normal);
border-color: var(--ooui-normal-border);
color: var(--link-color);
}
.smw-ui-pagination .page-link:hover {
background-color: var(--ooui-normal--hover);
border-color: var(--ooui-normal-border);
color: var(--link-color);
}
.smw-ui-pagination .page-link.link-active {
color: #fff;
background-color: var(--ooui-progressive);
border-color: var(--ooui-progressive);
}
.smw-tabs input.nav-tab:checked + label.nav-label {
border-color: var(--ooui-normal-border);
}
.smw-tabs section,
.smw-tabs .subtab-content {
border-top-color: var(--ooui-normal-border);
}
.smw-column-header {
color: var(--text-color);
}
.smw-factbox {
background: var(--body-main);
border-color: transparent;
}
.mw-body .mw-indicators #mw-indicator-smw-entity-examiner.mw-indicator .smw-indicator-vertical-bar-loader {
display: none;
}
.smwb-theme-light .smwb-title,
.smwb-theme-light .smwb-center,
.smwb-theme-light .smwb-actions,
.smwb-theme-light .smwb-prophead {
background-color: var(--body-mid);
}
.smwb-theme-light .smwb-factbox {
border-left-color: var(--body-mid);
}
.smwb-theme-light .smwb-ifactbox {
border-right-color: var(--body-mid);
}
.smwb-theme-light .smwb-propval {
background-color: var(--body-light);
}
.smwb-action-separator {
border-color: var(--wikitable-border);
}
.smwb-bottom {
border-bottom: 1px solid var(--wikitable-border);
}
.smwb-ifactbox .smwb-cell,
.smwb-factbox .smwb-cell {
border-top: 1px solid var(--wikitable-border);
}
.smwb-propvalue .smwb-prophead,
.smwb-ipropvalue .smwb-prophead,
.smwb-propvalue .smwb-propval,
.smwb-ipropvalue .smwb-propval {
font-size: 0.9em;
}
:root {
--filter-black-to-link: invert(36%) sepia(58%) saturate(433%) hue-rotate(344deg) brightness(100%) contrast(91%);
}
#bodyContent span.smwbrowse a {
color: black;
background-image: url('filepath://Smwbrowse.svg');
filter: var(--filter-black-to-link);
}
#bodyContent span.smwbrowse a:hover {
color: black;
background-image: url('filepath://Smwbrowse-hover.svg');
text-decoration: underline;
}
#bodyContent span.smwsearch a {
color: black;
filter: var(--filter-black-to-link);
background-image: url('filepath://Smwsearch.svg');
}
#bodyContent span.smwsearch a:hover {
color: black;
background-image: url('filepath://Smwsearch-hover.svg');
text-decoration: underline;
}
:root {
--tabber-tab-bg: var(--body-light);
--tabber-tab-border-color: var(--body-border);
--tabber-active-tab-bg: var(--body-light);
--tabber-active-tab-color: var(--text-color);
--tabber-active-tab-hover-bg: var(--body-light);
--tabber-active-tab-hover-border-color: var(--body-border);
--tabber-active-tab-hover-color: var(--text-color);
--tabber-active-tab-border-hider-color: var(--body-light);
--tabber-inactive-tab-bg: var(--body-background-color);
--tabber-inactive-tab-border-color: var(--body-border);
--tabber-inactive-tab-color: var(--text-color);
--tabber-inactive-tab-hover-bg: var(--body-light);
--tabber-inactive-tab-hover-border-color: var(--body-border);
}
.tabber {
margin: 1em 0;
}
.tabber .tabbertab {
background-color: var(--tabber-tab-bg);
border: 1px solid var(--tabber-tab-border-color);
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
padding: 1em 1.5em;
}
ul.tabbernav {
border: none;
margin-left: 2em;
margin-bottom: 0;
margin-right: 2em;
padding: 0;
font-family: inherit;
}
ul.tabbernav li.tabberactive > a {
background-color: var(--tabber-active-tab-bg);
color: var(--tabber-active-tab-color);
border-bottom: none;
position: relative;
}
ul.tabbernav li.tabberactive > a:hover {
color: var(--tabber-active-tab-hover-color);
background-color: var(--tabber-active-tab-hover-bg);
border-color: var(--tabber-active-tab-hover-border-color);
border-bottom: none;
}
ul.tabbernav li.tabberactive > a::after {
content: '';
position: absolute;
left: 0;
right: 0;
bottom: -1px;
border-bottom: 2px solid var(--tabber-active-tab-border-hider-color);
}
ul.tabbernav li a {
background-color: var(--tabber-inactive-tab-bg);
border-bottom: transparent;
border-color: var(--tabber-inactive-tab-border-color);
color: var(--tabber-inactive-tab-color);
display: inline-block;
font-size: 110%;
padding: 0.5em 1em;
}
ul.tabbernav li a:hover {
background-color: var(--tabber-inactive-tab-hover-bg);
border-color: var(--tabber-inactive-tab-hover-border-color);
}
ul.tabbernav li a:link,
ul.tabbernav li a:visited {
color: var(--tabber-inactive-tab-color);
}
:root {
--ooui-text: var(--text-color);
--ooui-interface: var(--body-light);
--ooui-interface-border: var(--body-border);
--ooui-window-background: rgba(255, 255, 255, 0.5);
--ooui-normal: #cdb3a6;
--ooui-normal--hover: #d8c4ba;
--ooui-normal-border: #d1b9ad;
--ooui-progressive: #936243;
--ooui-progressive--hover: #b27a57;
--ooui-accent: var(--link-color);
--ooui-input: #fff;
--ooui-input-border: #d1b9ad;
--ooui-input-border--hover: #ae846f;
--ooui-disabled: #ece3de;
--ooui-disabled-border: #e3d5ce;
--ooui-disabled-text: var(--subtle-color);
--ooui-pending-background-image: repeating-linear-gradient(-45deg, var(--search-box), var(--search-box) 20px, var(--body-main) 20px, var(--body-main) 30px);
}
.oo-ui-widget {
color: var(--ooui-text);
}
.oo-ui-checkboxInputWidget [type='checkbox'] + span,
.oo-ui-radioInputWidget [type='radio'] + span {
background-color: var(--ooui-input);
border-color: var(--ooui-input-border);
}
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:checked + span,
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:indeterminate + span {
background-color: var(--ooui-progressive);
border-color: var(--ooui-progressive);
}
.oo-ui-radioInputWidget.oo-ui-widget-enabled [type='radio']:checked + span {
border-color: var(--ooui-progressive);
}
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:checked:hover + span,
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:indeterminate:hover + span {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
}
.oo-ui-radioInputWidget.oo-ui-widget-enabled [type='radio']:checked:hover + span {
border-color: var(--ooui-progressive--hover);
}
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:hover + span,
.oo-ui-radioInputWidget.oo-ui-widget-enabled [type='radio']:hover + span {
border-color: var(--ooui-accent);
}
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:focus + span {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:active + span,
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:checked:active + span,
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:indeterminate:active + span {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
box-shadow: inset 0 0 0 1px var(--ooui-progressive--hover);
}
.oo-ui-radioInputWidget.oo-ui-widget-enabled [type='radio']:active + span {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
}
.oo-ui-radioInputWidget.oo-ui-widget-enabled [type='radio']:checked:active + span {
border-color: var(--ooui-progressive--hover);
box-shadow: inset 0 0 0 1px var(--ooui-progressive--hover);
}
.oo-ui-radioInputWidget.oo-ui-widget-enabled [type='radio']:checked:active + span:before {
border-color: var(--ooui-progressive--hover);
}
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:checked:focus + span,
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:indeterminate:focus + span {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent), inset 0 0 0 2px #fff;
}
.oo-ui-checkboxInputWidget [type='checkbox']:disabled + span,
.oo-ui-radioInputWidget [type='radio']:disabled + span {
background-color: var(--ooui-disabled);
border-color: var(--ooui-disabled);
}
.oo-ui-dropdownWidget-handle {
border-color: var(--ooui-normal-border);
}
.oo-ui-dropdownWidget.oo-ui-widget-enabled .oo-ui-dropdownWidget-handle {
background-color: var(--ooui-normal);
color: var(--ooui-text);
}
.oo-ui-dropdownWidget.oo-ui-widget-enabled .oo-ui-dropdownWidget-handle:hover {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
}
.oo-ui-dropdownWidget.oo-ui-widget-enabled .oo-ui-dropdownWidget-handle:active {
color: var(--ooui-text);
}
.oo-ui-dropdownWidget.oo-ui-widget-enabled .oo-ui-dropdownWidget-handle:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-dropdownWidget.oo-ui-widget-enabled.oo-ui-dropdownWidget-open .oo-ui-dropdownWidget-handle {
background-color: var(--ooui-normal--hover);
}
.oo-ui-dropdownWidget.oo-ui-widget-disabled .oo-ui-dropdownWidget-handle {
color: var(--ooui-disabled-text);
text-shadow: none;
border-color: var(--ooui-disabled-border);
background-color: var(--ooui-disabled);
}
.oo-ui-dropdownInputWidget select {
border-color: var(--ooui-normal-border);
}
.oo-ui-dropdownInputWidget option {
background-color: var(--ooui-interface);
}
.oo-ui-dropdownInputWidget.oo-ui-widget-enabled {
background-color: var(--ooui-normal);
}
.oo-ui-dropdownInputWidget.oo-ui-widget-enabled:hover {
background-color: var(--ooui-normal--hover);
}
.oo-ui-dropdownInputWidget.oo-ui-widget-enabled select {
color: var(--ooui-text);
}
.oo-ui-dropdownInputWidget.oo-ui-widget-enabled select:hover,
.oo-ui-dropdownInputWidget.oo-ui-widget-enabled select:active {
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
}
.oo-ui-dropdownInputWidget.oo-ui-widget-enabled select:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-labelWidget.oo-ui-inline-help {
color: var(--byline-color);
}
.oo-ui-menuSelectWidget {
background-color: var(--ooui-interface);
border-color: var(--ooui-interface-border);
}
.oo-ui-menuSelectWidget-frameless {
box-shadow: inset 0 -1px 0 0 var(--ooui-normal-border);
}
.oo-ui-menuSectionOptionWidget {
color: var(--byline-color);
}
.oo-ui-menuOptionWidget.oo-ui-optionWidget-highlighted,
.oo-ui-menuOptionWidget.oo-ui-optionWidget-selected {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
}
.oo-ui-menuOptionWidget.oo-ui-optionWidget-selected.oo-ui-menuOptionWidget.oo-ui-optionWidget-highlighted,
.oo-ui-menuOptionWidget.oo-ui-optionWidget-pressed.oo-ui-menuOptionWidget.oo-ui-optionWidget-highlighted {
color: var(--ooui-accent);
}
.oo-ui-menuOptionWidget.oo-ui-widget-enabled.oo-ui-optionWidget {
color: var(--ooui-text);
}
.oo-ui-messageDialog-title {
color: inherit;
}
.oo-ui-messageWidget.oo-ui-messageWidget-block.oo-ui-flaggedElement-error {
background-color: var(--errorbox-bg);
border-color: var(--errorbox-border);
}
.oo-ui-messageWidget.oo-ui-messageWidget-block.oo-ui-flaggedElement-warning {
background-color: var(--warningbox-bg);
border-color: var(--warningbox-border);
}
.oo-ui-messageWidget.oo-ui-messageWidget-block.oo-ui-flaggedElement-success {
background-color: var(--successbox-bg);
border-color: var(--successbox-border);
}
.oo-ui-messageWidget.oo-ui-messageWidget-block.oo-ui-flaggedElement-notice {
background-color: var(--messagebox-info-background);
border-color: var(--messagebox-info-border);
}
.oo-ui-messageWidget.oo-ui-flaggedElement-error:not(.oo-ui-messageWidget-block),
.oo-ui-messageWidget.oo-ui-flaggedElement-success:not(.oo-ui-messageWidget-block) {
color: var(--ooui-text);
}
.oo-ui-optionWidget.oo-ui-widget-disabled {
color: var(--ooui-disabled-text);
}
.oo-ui-outlineControlsWidget {
background-color: var(--ooui-normal);
}
.oo-ui-outlineOptionWidget.oo-ui-optionWidget-highlighted {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
}
.oo-ui-popupWidget-popup {
background-color: var(--ooui-interface);
border-color: var(--ooui-interface-border);
}
.oo-ui-popupWidget-anchored-top .oo-ui-popupWidget-anchor:after {
border-bottom-color: var(--ooui-interface);
}
.oo-ui-popupWidget-anchored-top .oo-ui-popupWidget-anchor:before {
border-bottom-color: var(--ooui-interface-border);
}
.oo-ui-popupWidget-anchored-bottom .oo-ui-popupWidget-anchor:after {
border-top-color: var(--ooui-interface);
}
.oo-ui-popupWidget-anchored-bottom .oo-ui-popupWidget-anchor:before {
border-top-color: var(--ooui-interface-border);
}
.oo-ui-popupWidget-anchored-start .oo-ui-popupWidget-anchor:after {
border-right-color: var(--ooui-interface);
}
.oo-ui-popupWidget-anchored-start .oo-ui-popupWidget-anchor:before {
border-right-color: var(--ooui-interface-border);
}
.oo-ui-popupWidget-anchored-end .oo-ui-popupWidget-anchor:after {
border-left-color: var(--ooui-interface);
}
.oo-ui-popupWidget-anchored-end .oo-ui-popupWidget-anchor:before {
border-left-color: var(--ooui-interface-border);
}
.oo-ui-searchWidget-query {
border-bottom-color: var(--ooui-interface-border);
}
.oo-ui-selectFileWidget-dropTarget {
background-color: var(--ooui-interface);
border-color: var(--ooui-interface-border);
}
.oo-ui-selectFileWidget.oo-ui-widget-enabled.oo-ui-selectFileWidget-dropTarget {
background-color: var(--ooui-interface);
}
.oo-ui-selectFileWidget.oo-ui-widget-enabled.oo-ui-selectFileWidget-dropTarget:hover {
border-color: var(--ooui-input-border--hover);
}
.oo-ui-tabOptionWidget {
color: var(--ooui-text);
}
.oo-ui-tabSelectWidget-framed .oo-ui-tabOptionWidget.oo-ui-optionWidget-selected {
background-color: var(--body-dark);
color: var(--ooui-text);
}
.oo-ui-tabSelectWidget-framed .oo-ui-tabOptionWidget.oo-ui-optionWidget-selected .oo-ui-labelElement-label {
border-bottom-color: var(--body-border);
}
.oo-ui-tabSelectWidget-framed .oo-ui-tabOptionWidget.oo-ui-widget-enabled:hover,
.oo-ui-tabSelectWidget-framed .oo-ui-tabOptionWidget.oo-ui-widget-enabled:active {
background-color: var(--body-light);
color: var(--ooui-text);
}
.oo-ui-tabSelectWidget-framed .oo-ui-tabOptionWidget.oo-ui-widget-enabled.oo-ui-optionWidget-selected:hover {
background-color: var(--body-dark);
}
.oo-ui-tabSelectWidget-frameless .oo-ui-tabOptionWidget.oo-ui-optionWidget-selected {
color: var(--ooui-progressive);
box-shadow: inset 0 -2px 0 0 var(--ooui-progressive);
}
.oo-ui-tabSelectWidget-frameless .oo-ui-tabOptionWidget.oo-ui-optionWidget-selected:hover,
.oo-ui-tabSelectWidget-frameless .oo-ui-tabOptionWidget.oo-ui-optionWidget-selected:focus {
color: var(--ooui-progressive--hover);
box-shadow: inset 0 -2px 0 0 var(--ooui-progressive--hover);
}
.oo-ui-tabSelectWidget-framed {
background: none;
border-bottom: 1px solid var(--ooui-interface-border);
}
.oo-ui-tabSelectWidget-frameless {
box-shadow: inset 0 -1px 0 0 var(--ooui-interface-border);
}
.oo-ui-tabSelectWidget-mobile {
}
.oo-ui-tabSelectWidget-mobile.oo-ui-tabSelectWidget-framed:after {
background: var(--mobile-navbox-linear-gradient);
}
.oo-ui-tabSelectWidget-mobile.oo-ui-tabSelectWidget-frameless:after {
background: var(--mobile-navbox-linear-gradient);
}
.oo-ui-tagItemWidget {
border-color: var(--ooui-normal-border);
}
.oo-ui-tagItemWidget.oo-ui-widget-enabled {
color: var(--ooui-text);
}
.oo-ui-tagItemWidget.oo-ui-widget-enabled:hover {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
}
.oo-ui-tagItemWidget.oo-ui-widget-enabled:not( .oo-ui-tagItemWidget-fixed ) {
background-color: var(--ooui-normal);
}
.oo-ui-tagItemWidget.oo-ui-widget-enabled .oo-ui-buttonElement-button:hover {
background-color: var(--ooui-normal--hover);
}
.oo-ui-tagMultiselectWidget.oo-ui-widget-enabled {
background-color: var(--ooui-interface);
}
.oo-ui-tagMultiselectWidget.oo-ui-widget-enabled.oo-ui-tagMultiselectWidget-outlined {
background-color: var(--ooui-normal);
}
.oo-ui-tagMultiselectWidget.oo-ui-widget-enabled.oo-ui-tagMultiselectWidget-outlined .oo-ui-tagItemWidget.oo-ui-widget-enabled {
background-color: var(--ooui-interface);
}
.oo-ui-textInputWidget .oo-ui-inputWidget-input {
background-color: var(--ooui-input);
color: var(--ooui-text);
border-color: var(--ooui-input-border);
}
.oo-ui-textInputWidget.oo-ui-widget-enabled .oo-ui-inputWidget-input::placeholder {
color: var(--subtle-color);
}
.oo-ui-textInputWidget.oo-ui-widget-enabled .oo-ui-inputWidget-input:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-textInputWidget.oo-ui-widget-enabled .oo-ui-inputWidget-input[readonly]:not(.oo-ui-pendingElement-pending) {
background-color: var(--ooui-disabled);
color: var(--ooui-disabled-text);
}
.oo-ui-textInputWidget.oo-ui-widget-enabled:hover .oo-ui-inputWidget-input {
border-color: var(--ooui-input-border--hover);
}
.oo-ui-textInputWidget.oo-ui-widget-enabled:hover .oo-ui-inputWidget-input:focus {
border-color: var(--ooui-accent);
}
@media screen and (min-width: 0) {
.oo-ui-textInputWidget.oo-ui-widget-enabled textarea.oo-ui-inputWidget-input:focus {
outline: 1px solid var(--ooui-accent);
}
}
.oo-ui-textInputWidget.oo-ui-widget-disabled .oo-ui-inputWidget-input {
background-color: var(--ooui-disabled);
color: var(--ooui-disabled-text);
text-shadow: none;
border-color: var(--ooui-disabled-border);
}
.oo-ui-toggleSwitchWidget {
background-color: var(--ooui-input);
border-color: var(--ooui-input-border);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled .oo-ui-toggleSwitchWidget-grip {
background-color: var(--ooui-input);
border-color: var(--ooui-input-border);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:hover {
background-color: var(--ooui-input);
border-color: var(--ooui-accent);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:hover .oo-ui-toggleSwitchWidget-grip {
background-color: var(--ooui-input);
border-color: var(--ooui-accent);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:active,
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:active:hover,
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:active:focus {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
box-shadow: inset 0 0 0 1px var(--ooui-progressive--hover);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:active .oo-ui-toggleSwitchWidget-grip,
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:active:hover .oo-ui-toggleSwitchWidget-grip,
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:active:focus .oo-ui-toggleSwitchWidget-grip {
background-color: var(--ooui-input);
border-color: var(--ooui-input);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:focus .oo-ui-toggleSwitchWidget-grip {
border-color: var(--ooui-accent);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled.oo-ui-toggleWidget-on {
background-color: var(--ooui-progressive);
border-color: var(--ooui-progressive);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled.oo-ui-toggleWidget-on .oo-ui-toggleSwitchWidget-grip {
background-color: var(--ooui-input);
border-color: var(--ooui-input);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled.oo-ui-toggleWidget-on:hover {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled.oo-ui-toggleWidget-on:active,
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled.oo-ui-toggleWidget-on:active:hover {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled.oo-ui-toggleWidget-on:focus {
border-color: var(--ooui-progressive);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled.oo-ui-toggleWidget-on:focus::before {
border-color: #fff;
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-disabled {
background-color: var(--ooui-disabled);
border-color: var(--ooui-disabled);
}
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled > .oo-ui-buttonElement-button {
color: var(--ooui-text);
}
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled > .oo-ui-buttonElement-button:hover {
color: var(--ooui-text);
}
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled > .oo-ui-buttonElement-button:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled.oo-ui-buttonElement-pressed > input.oo-ui-buttonElement-button,
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled > .oo-ui-buttonElement-button:active {
color: var(--ooui-text);
}
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button,
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button:hover {
color: var(--ooui-text);
}
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button:active,
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive.oo-ui-buttonElement-pressed > .oo-ui-buttonElement-button {
color: var(--ooui-text);
border-color: var(--ooui-text);
}
.oo-ui-buttonElement-frameless.oo-ui-widget-disabled > .oo-ui-buttonElement-button {
color: var(--ooui-disabled-text);
}
.oo-ui-buttonElement-framed.oo-ui-widget-disabled > .oo-ui-buttonElement-button {
background-color: var(--ooui-disabled);
border-color: var(--ooui-disabled-border);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled > .oo-ui-buttonElement-button {
background-color: var(--ooui-normal);
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled > .oo-ui-buttonElement-button:hover {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled > .oo-ui-buttonElement-button:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-buttonElement-active > .oo-ui-buttonElement-button {
background-color: var(--ooui-progressive--hover);
color: #fff;
border-color: var(--ooui-progressive--hover);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-buttonElement-active > .oo-ui-buttonElement-button:focus {
border-color: var(--ooui-progressive--hover);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled > .oo-ui-buttonElement-button:active,
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-buttonElement-pressed > .oo-ui-buttonElement-button {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive {
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button {
color: var(--ooui-text);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button:hover {
background-color: var(--ooui-normal--hover);
border-color: var(--ooui-progressive--hover);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-destructive > .oo-ui-buttonElement-button {
color: var(--ooui-text);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-destructive > .oo-ui-buttonElement-button:hover {
background-color: var(--ooui-normal--hover);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button {
background-color: var(--ooui-progressive);
border-color: var(--ooui-progressive);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button:hover {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent), inset 0 0 0 2px #fff;
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button:active,
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive.oo-ui-buttonElement-pressed > .oo-ui-buttonElement-button,
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive.oo-ui-buttonElement-active > .oo-ui-buttonElement-button,
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive.oo-ui-popupToolGroup-active > .oo-ui-buttonElement-button {
color: #fff;
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
}
.oo-ui-pendingElement-pending {
background-image: var(--ooui-pending-background-image);
background-size: 200%;
animation: oo-ui-pendingElement-stripes 6s linear infinite;
}
@keyframes oo-ui-pendingElement-stripes {
100% {
background-position: 100%;
}
}
.oo-ui-messageDialog-content > .oo-ui-window-foot {
outline-color: var(--ooui-interface-border);
}
.oo-ui-messageDialog-message {
color: var(--ooui-text);
}
.oo-ui-messageDialog-actions-horizontal .oo-ui-actionWidget {
border-right-color: var(--ooui-interface-border);
}
.oo-ui-messageDialog-actions-vertical .oo-ui-actionWidget {
border-bottom-color: var(--ooui-interface-border);
}
.oo-ui-processDialog-content .oo-ui-window-head,
.oo-ui-processDialog-content .oo-ui-window-foot {
outline-color: var(--ooui-interface-border);
}
.oo-ui-processDialog .oo-ui-actionWidget > .oo-ui-buttonElement-button {
border-top-color: transparent;
border-bottom-color: transparent;
}
.oo-ui-processDialog .oo-ui-actionWidget > .oo-ui-buttonElement-button:hover,
.oo-ui-processDialog .oo-ui-actionWidget > .oo-ui-buttonElement-button:active {
border-top-color: transparent;
border-bottom-color: transparent;
}
.oo-ui-processDialog .oo-ui-actionWidget:not( .oo-ui-flaggedElement-progressive ):not( .oo-ui-flaggedElement-destructive ) > .oo-ui-buttonElement-button:hover,
.oo-ui-processDialog .oo-ui-actionWidget:not( .oo-ui-flaggedElement-progressive ):not( .oo-ui-flaggedElement-destructive ) > .oo-ui-buttonElement-button:active {
border-right-color: var(--ooui-interface-border);
border-left-color: transparent;
}
.oo-ui-processDialog .oo-ui-actionWidget:not( .oo-ui-flaggedElement-progressive ):not( .oo-ui-flaggedElement-destructive ) > .oo-ui-buttonElement-button:focus {
border-color: var(--ooui-accent);
}
.oo-ui-processDialog-actions-safe .oo-ui-actionWidget > .oo-ui-buttonElement-button,
.oo-ui-processDialog-actions-other .oo-ui-actionWidget > .oo-ui-buttonElement-button {
border-right-color: var(--ooui-normal-border);
border-left-color: transparent;
}
.oo-ui-processDialog-actions-safe .oo-ui-widget-enabled.oo-ui-iconElement:not( .oo-ui-labelElement ) > .oo-ui-buttonElement-button:hover {
background-color: var(--ooui-normal--hover);
border-right-color: var(--ooui-interface-border);
}
.oo-ui-windowManager-modal > .oo-ui-dialog {
background-color: var(--ooui-window-background);
}
.oo-ui-windowManager-modal > .oo-ui-dialog > .oo-ui-window-frame {
background-color: var(--ooui-interface);
}
.oo-ui-windowManager-modal.oo-ui-windowManager-floating > .oo-ui-dialog > .oo-ui-window-frame {
border-color: var(--ooui-interface-border);
}
.oo-ui-window {
color: var(--ooui-text);
}
.oo-ui-toolbar-bar {
background-color: var(--ooui-interface);
color: var(--ooui-text);
}
.oo-ui-toolbar-position-top > .oo-ui-toolbar-bar {
border-bottom-color: var(--body-mid);
}
.oo-ui-toolbar-bar .oo-ui-bookletLayout > .oo-ui-menuLayout-menu {
border-right-color: var(--body-mid);
}
.oo-ui-tool.oo-ui-widget-enabled > .oo-ui-tool-link:hover {
background-color: var(--ooui-normal--hover);
}
.oo-ui-tool.oo-ui-widget-enabled > .oo-ui-tool-link:focus {
outline: 1px solid var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-tool.oo-ui-widget-enabled > .oo-ui-tool-link:active,
.oo-ui-tool.oo-ui-widget-enabled.oo-ui-tool-active > .oo-ui-tool-link,
.oo-ui-tool.oo-ui-widget-enabled.oo-ui-popupToolGroup-active > .oo-ui-tool-link {
background-color: var(--ooui-normal--hover);
color: var(--ooui-accent);
box-shadow: none;
}
.oo-ui-tool.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive > .oo-ui-tool-link {
background-color: var(--ooui-progressive);
}
.oo-ui-tool.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive > .oo-ui-tool-link:hover {
background-color: var(--ooui-progressive--hover);
}
.oo-ui-tool.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive > .oo-ui-tool-link:focus {
box-shadow: inset 0 0 0 1px var(--ooui-accent), inset 0 0 0 2px #fff;
}
.oo-ui-tool.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive > .oo-ui-tool-link:active,
.oo-ui-tool.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive.oo-ui-tool-active > .oo-ui-tool-link {
background-color: var(--ooui-progressive--hover);
}
.oo-ui-listToolGroup-tools .oo-ui-tool.oo-ui-widget-enabled {
background-color: var(--ooui-normal);
}
.oo-ui-listToolGroup-tools .oo-ui-tool.oo-ui-widget-enabled:hover {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
}
.oo-ui-listToolGroup-tools .oo-ui-tool-active.oo-ui-widget-enabled .oo-ui-tool-link .oo-ui-tool-title {
color: var(--ooui-progressive);
}
.oo-ui-menuToolGroup {
border-left-color: var(--body-mid);
border-right-color: var(--body-mid);
}
.oo-ui-popupToolGroup-tools {
background-color: var(--ooui-interface);
border-color: var(--body-mid);
}
.oo-ui-popupToolGroup.oo-ui-widget-enabled > .oo-ui-popupToolGroup-handle:hover {
background-color: var(--ooui-normal--hover);
}
.oo-ui-popupToolGroup.oo-ui-widget-enabled > .oo-ui-popupToolGroup-handle:focus {
outline: 1px solid var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-toolbar-actions .oo-ui-popupToolGroup.oo-ui-widget-enabled > .oo-ui-popupToolGroup-handle:hover {
border-right-color: var(--ooui-normal--hover);
}
.oo-ui-popupToolGroup-tools .oo-ui-tool.oo-ui-widget-enabled .oo-ui-tool-link:focus {
box-shadow: inset 0 0 0 2px var(--ooui-accent);
}
.oo-ui-popupToolGroup-tools .oo-ui-tool-active.oo-ui-widget-enabled .oo-ui-tool-link .oo-ui-tool-title {
color: var(--ooui-progressive);
}
.oo-ui-popupToolGroup.oo-ui-popupToolGroup-active > .oo-ui-popupToolGroup-handle {
background-color: var(--ooui-normal);
color: var(--ooui-accent);
}
.oo-ui-popupToolGroup.oo-ui-popupToolGroup-active > .oo-ui-popupToolGroup-handle:hover {
background-color: var(--ooui-normal--hover);
color: var(--ooui-accent);
}
.oo-ui-bookletLayout-outlinePanel > .oo-ui-outlineControlsWidget {
border-top-color: var(--ooui-interface-border);
}
.oo-ui-bookletLayout > .oo-ui-menuLayout-menu {
border-right-color: var(--ooui-interface-border);
}
.oo-ui-fieldLayout-disabled > .oo-ui-fieldLayout-body > .oo-ui-fieldLayout-header > .oo-ui-labelElement-label {
color: var(--ooui-disabled-text);
}
.oo-ui-panelLayout-framed {
border-color: var(--sidebar);
}
.oo-ui-icon-settings {
background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' width='20' height='20' viewBox='0 0 20 20'%3E%3Ctitle%3Esettings%3C/title%3E%3Cg transform='translate(10 10)'%3E%3Cpath id='a' d='M1.5-10h-3l-1 6.5h5m0 7h-5l1 6.5h3'/%3E%3Cuse xlink:href='%23a' transform='rotate(45)'/%3E%3Cuse xlink:href='%23a' transform='rotate(90)'/%3E%3Cuse xlink:href='%23a' transform='rotate(135)'/%3E%3C/g%3E%3Cpath d='M10 2.5a7.5 7.5 0 0 0 0 15 7.5 7.5 0 0 0 0-15v4a3.5 3.5 0 0 1 0 7 3.5 3.5 0 0 1 0-7'/%3E%3C/svg%3E");
}
.oo-ui-icon-clear {
background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 20 20'%3E%3Ctitle%3Eclear%3C/title%3E%3Cpath d='M10 0a10 10 0 1 0 10 10A10 10 0 0 0 10 0zm5.66 14.24-1.41 1.41L10 11.41l-4.24 4.25-1.42-1.42L8.59 10 4.34 5.76l1.42-1.42L10 8.59l4.24-4.24 1.41 1.41L11.41 10z'/%3E%3C/svg%3E");
}
.mw-widget-dateInputWidget-handle {
background-color: var(--ooui-input);
color: var(--ooui-text);
border-color: var(--ooui-input-border);
}
.mw-widget-dateInputWidget-calendar {
background-color: var(--ooui-interface);
}
.mw-widget-dateInputWidget.oo-ui-widget-enabled .mw-widget-dateInputWidget-handle:hover {
border-color: var(--ooui-input-border--hover);
}
.mw-widget-calendarWidget {
border-color: var(--ooui-interface-border);
}
.mw-widget-calendarWidget:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.mw-widget-calendarWidget-day,
.mw-widget-calendarWidget-day-heading {
color: var(--ooui-text);
}
.mw-widget-calendarWidget-day-additional {
color: var(--ooui-text);
opacity: 0.67;
}
.mw-widget-calendarWidget-day-today {
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.mw-widget-calendarWidget-item:hover {
background-color: var(--ooui-progressive);
}
.mw-widget-calendarWidget-item-selected {
background-color: var(--ooui-progressive--hover);
}
.mw-widgets-datetime-calendarWidget {
background-color: var(--ooui-interface);
border-color: var(--ooui-interface-border);
}
.mw-widgets-datetime-calendarWidget:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent), 0 2px 2px 0 rgba(0, 0, 0, 0.25);
}
.mw-widgets-datetime-calendarWidget-grid .mw-widgets-datetime-calendarWidget-cell.mw-widgets-datetime-calendarWidget-extra .oo-ui-buttonElement-button .oo-ui-labelElement-label {
color: var(--subtle-color);
}
.mw-widgets-datetime-calendarWidget-grid .mw-widgets-datetime-calendarWidget-cell.mw-widgets-datetime-calendarWidget-selected .oo-ui-buttonElement-button {
background-color: var(--ooui-progressive--hover);
}
.mw-widgets-datetime-dateTimeInputWidget-handle {
background-color: var(--ooui-input);
color: var(--ooui-text);
border-color: var(--ooui-input-border);
}
.mw-widgets-datetime-dateTimeInputWidget.oo-ui-widget-enabled.mw-widgets-datetime-dateTimeInputWidget-handle:hover {
border-color: var(--ooui-input-border--hover);
}
.mw-widgets-datetime-dateTimeInputWidget.oo-ui-widget-enabled:hover input,
.mw-widgets-datetime-dateTimeInputWidget.oo-ui-widget-enabled:hover textarea {
border-color: var(--ooui-input-border--hover);
}
.mw-widgets-datetime-dateTimeInputWidget.oo-ui-widget-enabled .mw-widgets-datetime-dateTimeInputWidget-editField:hover {
background-color: var(--ooui-normal);
}
.ve-activated .ve-init-mw-desktopArticleTarget-originalContent #catlinks:hover {
background: var(--ooui-normal--hover);
}
.ve-ui-overlay {
font-family: inherit;
}
.oo-ui-toolbar-position-top .ve-ui-toolbarDialog-position-above {
border-top-color: var(--body-mid);
}
.ve-ce-branchNode-blockSlug,
.ve-ce-branchNode-newSlug {
outline-color: var(--body-border);
background-color: var(--ooui-interface);
}
.ve-ui-specialCharacterPage h3 {
color: var(--byline-color);
}
.ve-ui-specialCharacterPage-character {
border-color: var(--body-mid);
}
.ve-ui-specialCharacterPage-character:hover {
border-color: var(--body-dark);
}
.ve-ce-linkAnnotation.ve-ce-annotation-active {
box-shadow: 0 0 0 1px var(--body-mid);
background: none;
}
.ve-ui-desktopContext .ve-ui-linkContextItem .ve-ui-linkContextItem-label {
border-color: var(--body-border);
}
.ve-ui-mwHelpPopupTool-version-label,
.ve-ui-mwHelpPopupTool-version-link,
.ve-ui-mwHelpPopupTool-version-date {
color: var(--byline-color);
}
.ve-ce-tableCellableNode {
border-color: var(--body-mid);
}
.ve-ce-mwReferencesListNode-muted {
color: var(--byline-color);
}
.ve-ui-mwTemplatePage-description,
.ve-ui-mwParameterPage-label,
.ve-ui-mwParameterPage-description-required,
.ve-ui-mwParameterPage-description-deprecated {
color: var(--byline-color);
}
.mw-widget-titleWidget-menu .mw-widget-titleOptionWidget-description {
color: var(--byline-color);
}
.ve-ui-mwGalleryDialog-menuLayout > .oo-ui-menuLayout-menu,
.ve-ui-mwGalleryDialog-innerMenuLayout > .oo-ui-menuLayout-menu,
.ve-ui-mwGalleryDialog .ve-ui-mwGalleryDialog-image-container,
.ve-ui-targetWidget {
border-color: var(--body-border);
}
.ve-ui-targetWidget:not(.oo-ui-pendingElement-pending) {
background-color: var(--body-main);
}
.ve-ui-mwSaveDialog {
color: var(--ooui-text);
}
.ve-ui-mwSaveDialog-options {
background-color: var(--ooui-interface);
border-color: var(--body-border);
}
.ve-ui-mwSaveDialog-summary {
background-color: var(--ooui-input);
}
.ve-ui-mwSaveDialog-editSummary-count {
border-color: var(--body-border);
}
.ve-ui-mwSaveDialog-license {
color: var(--byline-color);
}
.ve-ui-mwReferenceContextItem-muted {
color: var(--byline-color);
}
.ve-ui-mwNoticesPopupTool-items > div:not(:first-child),
.ve-ui-mwHelpPopupTool-item:not(:first-child) {
border-color: var(--body-border);
}
.ve-ui-mwTransclusionOutlineControlsWidget {
background-color: var(--ooui-interface);
border-top-color: var(--body-border);
}
.ve-ui-mwTransclusionOutlineTemplateWidget-sticky {
background-color: var(--ooui-interface);
}
.ve-ui-mwTransclusionOutlineTemplateWidget .ve-ui-mwTransclusionOutlineParameterWidget.oo-ui-optionWidget-highlighted {
color: var(--ooui-text);
}
.ve-ui-mwTransclusionOutlineTemplateWidget-no-template-parameters {
color: var(--subtle-color);
}
.ve-ui-mwParameterPage-undocumentedLabel {
color: var(--subtle-color);
}
.ve-ui-mwTwoPaneTransclusionDialogLayout > .oo-ui-menuLayout-menu {
border-right: var(--body-border);
}
.ve-ui-mwParameterPage-doc-required,
.ve-ui-mwParameterPage-doc-deprecated,
.ve-ui-mwParameterPage-inlineDescription .ve-ui-mwParameterPage-doc-example {
color: var(--byline-color);
}
.ve-ui-expandableContent-toggle {
background-color: var(--ooui-interface);
}
.ve-ui-expandableContent-fade {
background: linear-gradient(to right, rgba(255, 255, 255, 0) 0, var(--ooui-interface) 90%);
}
.ve-ui-commandHelpDialog-shortcut > kbd,
.ve-ui-commandHelpDialog-sequence > kbd {
background-color: var(--keypress-background);
color: var(--keypress-color);
border-color: var(--keypress-border);
box-shadow: none;
text-shadow: none;
}
.ve-init-mw-desktopArticleTarget-toolbarPlaceholder-floating .ve-init-mw-desktopArticleTarget-toolbarPlaceholder-bar {
background: var(--ooui-interface);
}
.ve-init-mw-desktopArticleTarget-toolbarPlaceholder-bar {
border-bottom-color: var(--body-mid);
}
figure[typeof~='mw:File/Thumb'],
figure[typeof~='mw:File/Frame'],
figure[typeof~='mw:Image/Thumb'],
figure[typeof~='mw:Video/Thumb'],
figure[typeof~='mw:Image/Frame'],
figure[typeof~='mw:Video/Frame'] {
border: none;
background-color: var(--thumb-bg);
}
figure[typeof~='mw:File/Thumb'] > a:first-child > *:first-child:not( .mw-broken-media ),
figure[typeof~='mw:File/Frame'] > a:first-child > *:first-child:not( .mw-broken-media ),
figure[typeof~='mw:Image/Thumb'] > a:first-child > *:first-child:not( .mw-broken-media ),
figure[typeof~='mw:Video/Thumb'] > a:first-child > *:first-child:not( .mw-broken-media ),
figure[typeof~='mw:Image/Frame'] > a:first-child > *:first-child:not( .mw-broken-media ),
figure[typeof~='mw:Video/Frame'] > a:first-child > *:first-child:not( .mw-broken-media ) {
border: none;
background: var(--thumb-bg);
}
figure[typeof~='mw:File/Thumb'] > figcaption,
figure[typeof~='mw:File/Frame'] > figcaption,
figure[typeof~='mw:Image/Thumb'] > figcaption,
figure[typeof~='mw:Video/Thumb'] > figcaption,
figure[typeof~='mw:Image/Frame'] > figcaption,
figure[typeof~='mw:Video/Frame'] > figcaption {
border: none;
background-color: var(--thumb-caption-bg);
padding: 4px 6px;
}
:root {
--keypress-background: #eee;
--keypress-border: #ccc;
--keypress-color: #333;
}
.toc .toctitle > * {
color: #fff;
}
.navbox .navbox-title {
color: #fff;
}
.navbox .navbox-list:not(last-child) {
border-bottom: none;
}
.archivelist {
background-color: var(--body-light);
border: solid 1px var(--body-border);
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
float: right;
margin: 5px;
padding: 5px;
text-align: center;
width: 120px;
}
.shortcut {
border: 1px solid var(--body-border);
background: var(--body-light);
float: right;
font-size: 0.8em;
margin: 0.5em 0em 0.5em 1em;
padding: 0.5em;
text-align: center;
}
.hatnote,
.seealso {
font-style: italic;
}
.hatnote i,
.seealso i {
font-style: normal;
}
div.hatnote,
div.seealso {
margin: 0.5em 1.6em;
}
div.hatnote + div.hatnote,
div.hatnote + div.seealso,
div.seealso + div.hatnote,
div.seealso + div.seealso {
margin-top: -0.5em;
}
.keypress {
background: var(--keypress-background);
color: var(--keypress-color);
font-family: inherit;
border: 1px solid var(--keypress-border);
border-radius: 2px;
font-size: 0.9em;
margin: 0 0.1em;
padding: 0.1em 0.4em;
white-space: nowrap;
}
.relative-location {
background: var(--body-light);
border: 1px solid var(--body-border);
border-spacing: 0;
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
margin: 5px;
text-align: center;
}
.relative-location-txt {
color: var(--text-color);
}
.relative-location-header {
background: var(--body-dark);
}
:root {
--documentation-background: #f9fafa;
--documentation-link-color: #e4eaee;
--documentation-headers-color: #fff;
--documentation-header-background: #949eaa;
--documentation-subheader-background: #808c9a;
--documentation-border: #e4eaee;
}
.documentation {
background: var(--documentation-background);
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
margin: 1em 0;
}
.documentation pre,
.documentation code {
background-color: var(--documentation-background);
border-color: var(--documentation-border);
}
.documentation h2,
.documentation hr {
border-color: var(--documentation-border);
}
.documentation-header {
color: var(--documentation-headers-color);
background: var(--documentation-header-background);
font-weight: bold;
padding: 1em 1.5em;
}
.documentation-title {
font-size: 1.25em;
}
.documentation-subheader {
color: var(--documentation-headers-color);
background: var(--documentation-subheader-background);
padding: 0.5em 1.5em;
}
.documentation-subheader a,
.documentation-subheader a:visited,
.documentation-subheader a:active {
color: var(--documentation-link-color);
}
.documentation-documentation,
.documentation-links {
font-size: 0.85em;
}
.documentation-content {
padding: 1em 1.5em;
}
.mw-templatedata-doc-params dl:not(:empty) {
column-count: 3;
border-top: 1px solid var(--body-border);
margin-bottom: 0.5em;
}
.mw-templatedata-doc-params dt::after {
content: ":";
}
.mw-templatedata-doc-params dd,
.mw-templatedata-doc-params dt {
margin: 0.1em 2em;
min-width: auto;
}
.mw-templatedata-doc-muted {
color: var(--subtle-color);
font-style: italic;
}
:root {
--infobox-text-color: var(--text-color);
--table-header: var(--body-dark);
--table-subheader: var(--body-mid);
--table-body: var(--body-light);
--table-border: var(--body-border);
}
.infobox {
font-size: 0.85em;
width: 300px;
border-collapse: collapse;
float: right;
table-layout: fixed;
margin: 0.5em 0 1em 1em;
}
.infobox .infobox-buttons {
display: flex;
flex-wrap: wrap;
justify-content: center;
grid-gap: 3px;
margin-bottom: 3px;
}
.infobox .infobox-buttons .button {
background: var(--table-subheader);
padding: 0 5px;
font-weight: bold;
flex: 1 1 20%;
max-width: 20%;
color: #fff;
}
.infobox .infobox-buttons .button.button-selected {
background: var(--table-header);
}
.infobox tbody {
border: 1px solid var(--table-border);
background: var(--table-body);
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(231, 215, 199, 0.5);
}
.infobox .infobox-header {
background: var(--table-header);
padding: 0.5em 0;
text-align: center;
color: #fff;
font-size: 1.15em;
font-weight: bold;
line-height: 1.4em;
}
.infobox .infobox-image {
text-align: center;
}
.infobox .infobox-subheader {
background: var(--table-subheader);
font-weight: bold;
text-align: center;
color: #fff;
}
.infobox .infobox-subheader a {
color: var(--link-color);
}
.infobox .infobox-padding {
backgound: var(--table-body);
}
.infobox tr td:not(.infobox-padding) {
padding: 0.2em 0.5em;
}
.infobox th:not(.infobox-header):not(.infobox-subheader):not(.infobox-nested) {
border-right: 2px solid var(--table-subheader);
text-align: right;
padding: 0.2em 0.5em;
}
.infobox select {
max-width: 300px;
}
.hidden {
display: none;
}
ol.references,
.reflist {
font-size: 90%;
}
.reflist {
list-style-type: decimal;
}
.reflist .references {
font-size: 100%;
list-style-type: inherit;
}
.reflist-lower-alpha {
list-style-type: lower-alpha;
}
ol.references li:target,
sup.reference:target {
background-color: var(--body-light);
}
.hideQuotes .refhide {
display: none;
}
:root {
--messagebox-obsolete-background: #cfcfcf;
--messagebox-obsolete-border: #464646;
--messagebox-obsolete-color: var(--text-color);
--messagebox-obsolete-link-color: #6c6c6c;
--messagebox-info-background: #ebebeb;
--messagebox-info-border: #898989;
--messagebox-info-color: var(--text-color);
--messagebox-info-link-color: #6c6c6c;
--messagebox-action-background: #c7e8fa;
--messagebox-action-border: #0b5884;
--messagebox-action-color: var(--text-color);
--messagebox-action-link-color: #03436b;
--messagebox-warn-background: #dfc0ba;
--messagebox-warn-border: #861c10;
--messagebox-warn-color: var(--text-color);
--messagebox-warn-link-color: #8e221a;
--messagebox-safe-background: #d8f0d3;
--messagebox-safe-border: #1b8408;
--messagebox-safe-color: var(--text-color);
--messagebox-safe-link-color: #1b8408;
--messagebox-disambig-background: #ebebeb;
--messagebox-disambig-border: #898989;
--messagebox-disambig-color: var(--text-color);
--messagebox-disambig-link-color: #6c6c6c;
--messagebox-discord-background: #5865f2;
--messagebox-discord-border: #4c57d0;
--messagebox-discord-link-color: #d2e5fc;
}
.mw-message-box,
.mw-message-box-error,
.mw-message-box-warning,
.mw-message-box-success,
.usermessage {
color: var(--text-color);
}
.messagebox {
width: 65%;
margin: 0.5em auto;
border-left: 15px solid;
border-color: var(--body-dark);
background-color: var(--body-light);
box-sizing: border-box;
}
.messagebox.obsolete {
background-color: var(--messagebox-obsolete-background);
border-color: var(--messagebox-obsolete-border);
color: var(--messagebox-obsolete-color);
}
.messagebox.obsolete a,
.messagebox.obsolete a:visited,
.messagebox.obsolete a:active {
color: var(--messagebox-obsolete-link-color);
}
.messagebox.info {
background-color: var(--messagebox-info-background);
border-color: var(--messagebox-info-border);
color: var(--messagebox-info-color);
}
.messagebox.info a,
.messagebox.info a:visited,
.messagebox.info a:active {
color: var(--messagebox-info-link-color);
}
.messagebox.action {
background-color: var(--messagebox-action-background);
border-color: var(--messagebox-action-border);
color: var(--messagebox-action-color);
}
.messagebox.action a,
.messagebox.action a:visited,
.messagebox.action a:active {
color: var(--messagebox-action-link-color);
}
.messagebox.warn {
background-color: var(--messagebox-warn-background);
border-color: var(--messagebox-warn-border);
color: var(--messagebox-warn-color);
}
.messagebox.warn a,
.messagebox.warn a:visited,
.messagebox.warn a:active {
color: var(--messagebox-warn-link-color);
}
.messagebox.safe {
background-color: var(--messagebox-safe-background);
border-color: var(--messagebox-safe-border);
color: var(--messagebox-safe-color);
}
.messagebox.safe a,
.messagebox.safe a:visited,
.messagebox.safe a:active {
color: var(--messagebox-safe-link-color);
}
.messagebox.disambig {
background-color: var(--messagebox-disambig-background);
border-color: var(--messagebox-disambig-border);
color: var(--messagebox-disambig-color);
}
.messagebox.disambig a,
.messagebox.disambig a:visited,
.messagebox.disambig a:active {
color: var(--messagebox-disambig-link-color);
}
.messagebox.discord {
background-color: var(--messagebox-discord-background);
border-color: var(--messagebox-discord-border);
color: #fff;
}
.messagebox.discord a,
.messagebox.discord a:visited,
.messagebox.discord a:active {
color: var(--messagebox-discord-link-color);
}
.messagebox.discord a.external,
.messagebox.discord a:visited.external,
.messagebox.discord a:active.external {
font-style: italic;
}
.messagebox.stub {
width: 40%;
}
.messagebox.hasdialogue {
padding: 0 10px;
width: auto;
}
:root {
--byline-arrow-filter: invert(29%) sepia(0%) saturate(376%) hue-rotate(172deg) brightness(87%) contrast(80%);
--tile-border-color: var(--body-border);
--tile-background-color: var(--body-light);
--tile-link-button-color: #f5e9db;
--tile-link-button-highlight-color: #dfccb0;
--tile-dark-color: #fff;
--tile-dark-bg: var(--body-dark);
--tile-dark-link-color: #ccc;
--tile-dark-byline-color: rgba(255, 255, 255, 0.7);
--tile-dark-header-color: #fff;
}
.tile {
background: var(--tile-background-color);
border: 1px solid var(--tile-border-color);
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
padding: 1.5em 2em 1em;
max-width: 40em;
}
.tile h2 {
font-size: 1.4em;
font-weight: bold;
border: none;
margin: 0 0 0.4em;
}
.tile .byline + h2 {
margin-top: -0.5em;
}
.tile.dark {
color: var(--tile-dark-color);
background: var(--tile-dark-bg);
border: none;
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.3);
}
.tile.dark h2 {
color: var(--tile-dark-header-color);
}
.tile.dark a {
color: var(--tile-dark-link-color);
}
.tile.dark .byline {
color: var(--tile-dark-byline-color);
}
.byline {
font-size: 0.9em;
color: var(--byline-color);
}
.byline a {
color: var(--byline-color);
}
.tile-row {
display: flex;
flex-flow: row wrap;
margin-bottom: 1em;
}
.tile-halves {
display: flex;
flex-flow: row wrap;
background: var(--tile-background-color);
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
}
.tile-halves h2 {
font-size: 1.4em;
font-weight: bold;
border: none;
margin: 0 0 0.4em;
}
.tile-halves .byline + h2 {
margin-top: -0.5em;
}
.tile-top {
width: 100%;
padding: 1.3rem 1.5rem 0.6rem;
}
.tile-top.tile-image {
display: flex;
align-items: center;
background-color: var(--body-light);
overflow: hidden;
padding: 0;
height: 13vw;
max-height: 12em;
transition: 0.4s ease-out;
}
.tile-halves:hover .tile-top.tile-image img {
transform: scale(1.1);
transition: 0.5s ease-out;
}
.tile-top.tile-image a {
width: 100%;
}
.tile-top.tile-image img {
width: 100%;
object-fit: cover;
max-height: 200px;
transition: 0.4s ease-out;
}
.tile-bottom {
background: var(--body-dark);
width: 100%;
padding: 1rem 1.5rem 0.6rem;
}
.tile-bottom h2 a {
color: #fff !important;
}
.tile-bottom.link-button {
align-self: flex-end;
padding: 0;
}
.tile-bottom.link-button a {
display: block;
text-align: center;
padding: 0.75em 1.5em 0.8em;
text-decoration: none;
}
.tile-bottom.read-more {
background: var(--tile-link-button-color);
transition: 0.3s ease-out;
}
.tile-bottom.read-more a {
color: var(--byline-color);
font-weight: bold;
text-align: right;
}
.tile-bottom.read-more:hover {
background: var(--tile-link-button-highlight-color);
}
.tile-bottom.read-more:hover .arrow {
transform: translateX(50%);
}
.tile-bottom.read-more .arrow {
filter: var(--byline-arrow-filter);
margin-left: 0.4em;
transition: 0.3s ease-out;
}
body.page-Main_Page.action-view .catlinks,
body.page-Main_Page.action-view #contentSub,
body.page-Main_Page.action-view #firstHeading,
body.page-Main_Page.action-view #siteNotice {
display: none;
}
body.page-Main_Page .mw-parser-output {
max-width: 75em;
margin: 0 auto;
}
body.page-Main_Page.action-view .catlinks,
body.page-Main_Page.action-view #contentSub,
body.page-Main_Page.action-view #siteNotice {
display: none;
}
.mainpage-header {
display: flex;
margin: 2.6em 1.75em 1.5em;
}
.mainpage-header .header-intro {
flex: 2;
}
.mainpage-header .header-intro h1 {
font-size: 2.5em;
font-weight: bold;
border: none;
margin: 0 0 0.15em;
}
.mainpage-header .header-intro p {
font-size: 1.1em;
line-height: 1.7em;
}
.mainpage-header .header-stats {
flex: 1;
display: flex;
justify-content: center;
align-items: center;
margin-top: -1em;
}
.mainpage-body {
display: grid;
grid-template-areas: "event event event" "update update update" "content content content" "left left right";
gap: 0.9rem;
grid-template-columns: repeat(3, 1fr);
}
.mainpage-body h2 a {
color: var(--text-color);
}
.mainpage-body .tile {
padding-left: 1.75em;
padding-right: 1.75em;
max-width: 100%;
}
.mainpage-body .tile-row {
width: 100%;
margin-bottom: 0;
}
.mainpage-body .tile-row {
display: grid;
gap: 0.9rem;
}
.mainpage-contents.tile-row {
display: flex;
}
.mainpage-contents.tile-row .tile-top {
height: 5.5rem;
}
.mainpage-left {
grid-area: left;
flex: 2;
display: flex;
flex-flow: column wrap;
}
.mainpage-left > * {
margin: 0 0 0.9rem;
}
.mainpage-right {
grid-area: right;
flex: 1;
display: flex;
flex-flow: column wrap;
}
.mainpage-right > * {
margin: 0 0 0.9rem;
}
.arrow {
background: url('filepath://White-chevron.svg') no-repeat;
display: inline-block;
height: 0.7rem;
width: 0.45rem;
vertical-align: middle;
}
.arrow.dark {
filter: invert(80%);
}
.mainpage-contents {
grid-area: content;
grid-template-columns: repeat(6, 1fr);
}
.mainpage-contents .tile-halves {
flex: 1;
}
.mainpage-contents .tile-top {
height: 4.5rem;
position: relative;
}
.mainpage-contents .tile-top.tile-image img {
height: auto;
}
.mainpage-contents h2 {
margin: 0;
padding: 0;
}
.mainpage-contents .tile-bottom.link-button a {
padding: 0.75em 0.2em;
}
.popular-pages ul {
display: grid;
grid-template-columns: repeat(3, 1fr);
grid-gap: 0.6em;
margin: 1em 0 0.7em 0;
}
.mp-popular-page-light {
display: flex;
align-items: center;
background-color: var(--button-background);
transition: 100ms;
}
.mp-popular-page-light a {
flex: 1;
display: block;
color: #fff;
font-weight: bold;
text-align: center;
text-decoration: none;
padding: 0.7em 1em;
}
.mp-popular-page-light:hover {
filter: brightness(115%);
transition: 100ms;
}
.mainpage-social {
border: none;
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.3);
}
.mainpage-social .tile-top {
display: flex;
align-items: center;
padding: 1em 1.5em;
}
.mainpage-social .tile-top a {
flex: 1;
position: relative;
text-decoration: none;
}
.mainpage-social .tile-top a:hover .arrow {
transform: translateX(50%);
}
.mainpage-social .tile-bottom {
border: none;
padding: 1em 1.75em;
}
.mainpage-social .tile-bottom p {
color: #fff;
font-weight: bold;
font-size: 0.9em;
text-align: center;
text-transform: uppercase;
letter-spacing: 0.03em;
margin: 0;
}
.mainpage-social .social-icon {
margin-right: 0.75em;
text-align: center;
width: 60px;
}
.mainpage-social .social-header {
color: #fff;
font-weight: bold;
font-size: 1.15em;
margin: 0.5em 0 -0.15em;
}
.mainpage-social .server-tagline {
color: rgba(255, 255, 255, 0.9);
margin-bottom: 0.5em;
}
.mainpage-social .arrow {
position: absolute;
top: calc(50% - .5em);
right: 0;
height: 1em;
width: 0.7em;
background-size: 0.7em 1em;
transition: 0.3s ease-out;
}
.mainpage-social.mainpage-discord .tile-top {
background: #5865f2;
}
.mainpage-social.mainpage-discord .tile-bottom {
background: #525ee0;
}
.mainpage-social.mainpage-twitter .tile-top {
background: #15202b;
}
.mainpage-social.mainpage-twitter .tile-bottom {
background: #121c26;
}
.mainpage-editing {
border: none;
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.3);
}
.mainpage-editing .tile-top {
background: #438ab5;
}
.mainpage-editing .tile-bottom {
background: #3980ab;
border: none;
padding: 0.8rem 1.5rem 0.4rem;
}
.mainpage-editing h2,
.mainpage-editing a {
color: #fff;
}
.mainpage-editing p {
color: rgba(255, 255, 255, 0.9);
}
.mainpage-editing ul {
list-style-image: url('filepath://Transparent-chevron.svg');
}
@media only screen and (max-width: 1200px) {
.mainpage-contents {
grid-template-columns: repeat(3, 1fr);
}
}
@media only screen and (max-width: 1000px) {
.mainpage-body {
grid-template-areas: "event event event" "update update update" "content content content" "left left left" "right right right";
}
.mainpage-recent-updates {
grid-template-columns: repeat(2, 1fr);
}
.mainpage-recent-updates .tile-halves:last-child {
display: none;
}
.mainpage-recent-updates .tile-halves:hover .tile-top img {
transform: scale(1.04);
}
.mainpage-recent-updates .tile-top {
height: 18vw;
min-height: 9em;
}
.mainpage-header .header-stats {
display: none;
}
.mainpage-left > *:last-child,
.mainpage-right > *:last-child {
margin-bottom: 0;
}
.popular-pages ul {
grid-template-columns: repeat(2, 1fr);
}
}
@media only screen and (max-width: 720px) {
.mainpage-recent-updates {
grid-template-columns: none;
}
.mainpage-recent-updates .tile-halves:last-child {
display: flex;
}
.mainpage-contents {
grid-template-columns: repeat(2, 1fr);
}
}
.mw-prefs-buttons {
background-color: var(--body-main);
border-top-color: var(--body-border);
box-shadow: none;
}
.mw-prefs-tabs-wrapper.oo-ui-panelLayout-framed,
.mw-prefs-tabs > .oo-ui-menuLayout-content > .oo-ui-indexLayout-stackLayout > .oo-ui-tabPanelLayout {
border-color: var(--body-border);
}
.mw-htmlform-ooui .mw-htmlform-matrix tbody tr:nth-child(even) td {
background-color: var(--body-light);
}
.mw-htmlform-ooui .mw-htmlform-matrix tbody tr:hover td {
background-color: var(--body-mid);
}
:root {
--rc-positive-color: #407813;
--rc-negative-color: #b41e0f;
}
.mw-plusminus-pos {
color: var(--rc-positive-color);
}
.mw-plusminus-neg {
color: var(--rc-negative-color);
}
.client-js .mw-recentchanges-toplinks:not(.mw-recentchanges-toplinks-collapsed) {
border-color: var(--body-border);
background-color: var(--body-light);
border-radius: 2px;
}
.mw-rcfilters-ui-filterTagMultiselectWidget-wrapper-content-title {
color: var(--text-color);
}
.mw-rcfilters-ui-filterTagMultiselectWidget-emptyFilters {
color: var(--byline-color);
}
.mw-rcfilters-ui-filterTagMultiselectWidget.oo-ui-widget-enabled .oo-ui-tagMultiselectWidget-handle {
background-color: var(--ooui-interface);
border-color: var(--ooui-interface-border);
}
.mw-rcfilters-ui-filterTagMultiselectWidget-views-select-widget.oo-ui-widget {
border-color: var(--ooui-interface-border);
}
.mw-rcfilters-collapsed .mw-rcfilters-ui-filterTagMultiselectWidget {
border-bottom-color: var(--ooui-interface-border);
}
.mw-rcfilters-ui-menuSelectWidget-footer {
background-color: var(--ooui-interface);
border-color: var(--ooui-interface-border);
}
.mw-rcfilters-ui-viewSwitchWidget label.oo-ui-labelWidget {
color: var(--byline-color);
}
.mw-rcfilters-ui-tagItemWidget-popup-content {
color: var(--ooui-text);
}
.mw-changeslist-legend,
.mw-rcfilters-ui-changesListWrapperWidget .mw-changeslist-legend {
background-color: var(--body-light);
border-color: var(--body-dark);
}
.mw-rcfilters-ui-changesListWrapperWidget-previousChangesIndicator {
border-color: var(--sidebar);
}
.client-js .mw-changeslist ul,
.client-js .mw-changeslist table.mw-enhanced-rc {
margin-left: 0;
}
.mw-rcfilters-ui-watchlistTopSectionWidget-separator {
border-color: var(--sidebar);
}
.mw-rcfilters-ui-itemMenuOptionWidget-header {
border-bottom-color: var(--ooui-interface);
background-color: var(--ooui-interface-border);
}
.mw-rcfilters-ui-itemMenuOptionWidget:not(:last-child):not(.mw-rcfilters-ui-itemMenuOptionWidget-identifier-talk) {
border-bottom-color: var(--ooui-normal-border);
}
.mw-rcfilters-ui-itemMenuOptionWidget-label-title,
.mw-rcfilters-ui-itemMenuOptionWidget-label-desc {
color: var(--text-color);
}
.mw-rcfilters-ui-filterMenuOptionWidget.oo-ui-flaggedElement-muted:not(.oo-ui-optionWidget-selected) {
background-color: var(--body-main);
}
.mw-rcfilters-ui-filterMenuOptionWidget.oo-ui-flaggedElement-muted .mw-rcfilters-ui-itemMenuOptionWidget-label-title,
.mw-rcfilters-ui-filterMenuOptionWidget.oo-ui-flaggedElement-muted .mw-rcfilters-ui-itemMenuOptionWidget-label-desc {
color: var(--subtle-color);
}
.mw-rcfilters-ui-filterMenuSectionOptionWidget {
background-color: var(--body-mid);
}
.mw-rcfilters-ui-filterMenuSectionOptionWidget-header-title.oo-ui-labelElement-label {
color: var(--ooui-text);
}
.mw-rcfilters-ui-filterMenuHeaderWidget-title {
color: var(--ooui-text);
}
.mw-rcfilters-ui-filterMenuHeaderWidget-header {
border-bottom-color: var(--ooui-interface-border);
background-color: var(--ooui-interface);
}
.mw-rcfilters-ui-itemMenuOptionWidget-view-namespaces {
border-top-color: var(--ooui-interface-border);
}
.mw-rcfilters-ui-datePopupWidget {
border-color: var(--ooui-interface-border);
}
.mw-rcfilters-ui-datePopupWidget .mw-rcfilters-ui-valuePickerWidget-title {
color: var(--byline-color);
}
.mw-rcfilters-ui-savedLinksListItemWidget-label {
color: var(--ooui-accent);
}
.client-js .mw-changeslist.mw-rcfilters-ui-changesListWrapperWidget-highlighted ul,
.client-js .mw-changeslist.mw-rcfilters-ui-changesListWrapperWidget-highlighted table.mw-enhanced-rc {
margin-left: 1.5em;
}
.page-Special_CreateAccount .mw-ui-container,
.page-Special_UserLogin .mw-ui-container {
max-width: 64rem;
margin: 0 auto;
}
.mw-number-text {
color: var(--byline-color);
}
.mw-body-content .mw-number-text h3 {
color: var(--text-color);
}
#mw-indicator-mw-helplink a {
background: none;
padding: 0;
display: flex;
align-items: center;
}
#mw-indicator-mw-helplink a::before {
content: '';
margin-right: 5px;
-webkit-mask: url("/resources/src/mediawiki.helplink/images/helpNotice.svg?46d34") no-repeat 50% 50% / contain;
mask: url("/resources/src/mediawiki.helplink/images/helpNotice.svg?46d34") no-repeat 50% 50% / contain;
background: var(--text-color);
height: 20px;
width: 20px;
}
.results-info {
color: inherit;
}
.mw-search-profile-tabs {
background-color: var(--body-mid);
border-color: transparent;
}
.search-types .current a {
color: inherit;
}
#mw-searchoptions {
background-color: var(--body-mid);
border-color: transparent;
}
#mw-searchoptions .divider {
border-color: var(--body-border);
}
#mw-searchoptions h4 {
font-family: inherit;
}
#mw-searchoptions .oo-ui-labelElement:nth-of-type(odd) {
font-weight: bold;
}
.searchresult {
line-height: 1.5;
}
.searchalttitle,
#mw-search-interwiki li {
font-size: 90%;
}
.mw-search-result-data {
color: var(--byline-color);
}
.page-Special_ListFiles a.image img {
width: inherit;
height: inherit;
}
.page-Special_ListFiles .TablePager_col_thumb {
text-align: center;
}
#editcount table[border="1"] {
background-color: var(--body-main) !important;
border-color: var(--wikitable-border) !important;
margin-top: 0.5em;
}
#editcount table[border="1"] th,
#editcount table[border="1"] td {
padding: 0.2em 0.4em;
}
#editcount table[border="1"] th {
background-color: var(--wikitable-header-bg);
border: 1px solid var(--wikitable-border);
}
#editcount table[border="1"] td {
border: 1px solid var(--wikitable-border);
}
#editcount table[border="1"] tr:nth-child(odd) {
background-color: var(--body-light);
}
.mw-echo-ui-notificationBadgeButtonPopupWidget-popup > .oo-ui-popupWidget-popup .mw-echo-ui-placeholderItemWidget {
background-color: inherit;
}
table.mw-interwikitable.body td.mw-interwikitable-local-yes {
background-color: var(--table-yes-background);
color: var(--table-yes-color);
}
.mw-protectedpages-unknown {
color: var(--byline-color);
}
.watchlistredir,
.allpagesredirect {
font-style: italic;
}
.allpagesredirect:after {
color: var(--byline-color);
content: " (redirect)";
}
.mw-apisandbox-toolbar {
background: var(--body-main);
}
.oo-ui-menuOptionWidget .mw-apisandbox-flag {
color: var(--byline-color);
}
tr.mw-abusefilter-list-disabled,
tr.mw-abusefilter-list-disabled td {
color: var(--byline-color);
}
table.mw-abuselog-details {
background: var(--wikitable-bg);
border-color: var(--wikitable-border);
}
table.mw-abuselog-details th {
background: var(--wikitable-header-bg);
}
table.mw-abuselog-details th,
table.mw-abuselog-details td {
border-color: var(--wikitable-border);
}
.mw-abusefilter-log-hidden-entry {
color: var(--subtle-color);
}
body td.mw-abusefilter-history-changed {
background: var(--table-no-background);
}
div.mw-abusefilter-editor,
#mw-abusefilter-warn-preview,
#mw-abusefilter-disallow-preview {
border-color: var(--ooui-input-border);
}
.mw-destfile-warning {
border-color: var(--warningbox-border);
color: var(--text-color);
background-color: var(--warningbox-bg);
}
span.fileinput-button {
background-color: var(--ooui-normal);
border-color: var(--ooui-normal-border);
color: var(--ooui-text);
}
ul.fileupload-results li.ful-success {
background-color: var(--successbox-bg);
}
ul.fileupload-results li.ful-success a {
color: var(--link-color);
}
ul.fileupload-results li.ful-error {
background-color: var(--errorbox-bg);
}
.color-container {
display: flex;
margin: 2em auto;
width: 80%;
max-width: 60em;
}
.color-column {
flex: 1;
margin-right: 1em;
}
.color-column:last-child {
margin-right: 0;
}
.color-column h3 {
padding: 0;
}
.color-group {
color: #333;
padding: 1em 1.5em;
transition: 0.2s ease-out;
}
.color-group:hover {
transform: scale(1.03);
}
.color-group.dark {
color: #fff;
}
.color-group .variable,
.color-group .hexcode {
font-family: monospace;
font-size: 1.1em;
-webkit-user-select: all;
-moz-user-select: all;
-ms-user-select: all;
user-select: all;
margin: 0;
}
body.wgl-readermode .color-group .variable,
body.wgl-readermode .color-group .hexcode {
font-size: inherit;
}
.color-group .variable {
font-weight: bold;
}
#t-print,
#t-permalink {
display: none;
}
#filetoc {
border-radius: 2px;
background: var(--body-mid);
border-color: transparent;
margin: 0.5em auto;
text-align: center;
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
}
li.gallerybox div.thumb {
border: none;
background-color: var(--thumb-bg);
}
.smwfact {
display: none;
}
.list-header {
background-color: var(--body-mid);
color: inherit;
}
.editOptions {
color: var(--text-color);
background-color: var(--sourceeditor-background-secondary);
border-color: var(--sourceeditor-border);
}
.mw-json th,
.mw-json td {
border-color: var(--wikitable-border);
}
.mw-json td {
background: var(--wikitable-bg);
}
.mw-json th {
background: var(--wikitable-header-bg);
}
1681ef5aa4630c260a9019ccd3c2899453cd65cb
2221
2214
2024-04-11T16:15:09Z
BlackHawk
10
Updating CSS from [[MediaWiki:Common.less]]
css
text/css
/* <pre> */
:root {
--body-main: #fdfcfc;
--body-light: #f5f0eb;
--body-mid: #d1b9ad;
--body-dark: #b1886f;
--body-border: #d1b9ad;
--body-background-color: #173a4d;
--button-background: #605443;
--button-color: #fff;
--button-border: #3c352a;
--button-dark: #18140c;
--button-light: #3a301d;
--sidebar: #cfc08d;
--background-text-color: #e2dbc8;
--background-link-color: #e2bd8a;
--search-box: #efeee6;
--link-color: #6e452b;
--redlink-color: #ba0000;
--text-color: #2F2828;
--byline-color: #ccc;
--subtle-color: #afa19a;
--admin-blue: #332e75;
--bearcat-green: #13592e;
--awb-purple: #933b96;
--rsw-blue: #438ab6;
--osrsw-brown: #605443;
--thumb-bg: var(--body-light);
--thumb-caption-bg: var(--body-mid);
--sourceeditor-input-background: #fff;
--sourceeditor-background: var(--body-light);
--sourceeditor-background-secondary: var(--body-light);
--sourceeditor-border: var(--body-mid);
--codemirror-gutter-background: var(--body-mid);
}
@font-face {
font-family: 'Lora';
font-weight: 400 700;
font-style: normal;
font-display: swap;
src: url('filepath://Lora.woff2') format('woff2');
}
@font-face {
font-family: 'Lora';
font-weight: 400 700;
font-style: italic;
font-display: swap;
src: url('filepath://Lora-Italic.woff2') format('woff2');
}
:root {
--base-text-color: #36414f;
--base-heading-color: #444e5a;
--base-heading-border: #e4eaee;
--mw-code-background-color: var(--body-light);
--body-background-image: url('filepath://Wiki_background.jpg');
}
#mw-page-base {
background: none;
}
.mw-body {
background-color: var(--body-main);
color: var(--text-color);
border-color: transparent;
box-shadow: 0 0 7px rgba(0, 0, 0, 0.15);
margin-top: 0;
}
h1,
h2,
h3,
h4,
h5,
h6 {
color: var(--text-color);
}
h1,
h2 {
border-color: var(--body-border);
}
.mw-body h1,
.mw-body-content h1,
.mw-body-content h2,
.mw-body-content h3,
.mw-body-content h4,
.mw-body-content h5,
.mw-body-content h6 {
font-family: 'Lora', 'Palatino', 'Georgia', serif;
}
.mw-parser-output h2:first-of-type {
clear: left;
}
.mw-footer {
color: var(--background-text-color);
}
.mw-footer li {
color: var(--background-text-color);
}
.mw-footer a,
.mw-footer a:active,
.mw-footer a:visited {
color: var(--background-link-color);
}
::placeholder {
color: var(--subtle-color);
}
a {
color: var(--link-color);
}
a:visited,
a:active {
color: var(--link-color);
}
a.new {
color: var(--redlink-color);
}
a.new:visited {
color: var(--redlink-color);
}
.mw-parser-output a.extiw,
.mw-parser-output a.external {
color: var(--link-color);
}
.mw-parser-output a.extiw:visited,
.mw-parser-output a.external:visited,
.mw-parser-output a.extiw:active,
.mw-parser-output a.external:active {
color: var(--link-color);
}
.jsPurgeLink a.external {
color: var(--link-color);
}
:root {
--errorbox-bg: #feecea;
--errorbox-border: #ee4231;
--warningbox-bg: #fef9de;
--warningbox-border: #f9d000;
--successbox-bg: #ecf8e3;
--successbox-border: #6bc71f;
}
.mw-message-box-error,
.errorbox,
.mw-message-box-warning,
.warningbox,
.mw-message-box-success,
.successbox,
.usermessage {
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
}
.mw-message-box-error,
.errorbox {
background-color: var(--errorbox-bg);
border-color: var(--errorbox-border);
}
.mw-message-box-warning,
.warningbox,
.usermessage {
background-color: var(--warningbox-bg);
border-color: var(--warningbox-border);
}
.mw-message-box-success,
.successbox {
background-color: var(--successbox-bg);
border-color: var(--successbox-border);
}
.catlinks {
background: var(--body-light);
border: 1px solid var(--body-dark);
padding: 8px 15px;
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
}
.catlinks li {
border-color: var(--body-mid);
}
.filehistory a img,
#file img {
background: url("data:image/svg+xml,%3C%3Fxml version='1.0' encoding='UTF-8'%3F%3E%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16'%3E%3Cpath d='M0 0h8v16h8V8H0z' opacity='.13'/%3E%3C/svg%3E") repeat;
}
#file img:hover {
background: none;
}
.mw-highlight {
background: none;
}
.mw-highlight .linenos {
background-color: var(--mw-code-background-color);
color: var(--body-border);
}
.mw-highlight a:hover .linenos,
.mw-highlight .hll a .linenos {
color: var(--body-dark);
}
.mw-content-ltr.mw-highlight-lines pre,
.mw-content-ltr.content .mw-highlight-lines pre {
box-shadow: inset 2.75em 0 0 var(--mw-code-background-color);
}
#pagehistory ul {
list-style: none;
margin: 0;
}
#pagehistory li {
border: 1px solid transparent;
padding: 1px 10px;
margin: 2px 0;
}
#pagehistory li.selected {
background-color: var(--body-light);
color: inherit;
border: 1px dashed var(--body-border);
outline: none;
}
#mw-history-compare > div:first-of-type {
position: -webkit-sticky;
position: sticky;
top: 0;
background-color: var(--body-main);
border-bottom: 1px solid var(--body-dark);
padding: 0.25em 0;
}
.wgl-stickyheader #mw-history-compare > div:first-of-type {
top: 2.5rem;
}
.autocomment,
.autocomment a,
.autocomment a:visited {
color: var(--link-color);
}
li span.deleted,
span.history-deleted {
color: var(--byline-color);
}
.mw-usertoollinks-contribs-no-edits,
.mw-usertoollinks-contribs-no-edits:visited {
color: var(--redlink-color);
}
.CategoryTreeToggle {
color: var(--link-color);
}
body.wgl-stickyheader.action-view .mw-headline:target::before {
display: block;
content: '';
margin-top: -3rem;
height: 3rem;
visibility: hidden;
pointer-events: none;
}
.mw-mmv-post-image {
color: var(--text-color);
background-color: var(--body-main);
}
.mw-mmv-image-metadata {
border-top-color: var(--body-mid);
background-color: var(--body-light);
}
.mw-mmv-dialog,
.mw-mmv-dialog .mw-mmv-dialog-down-arrow,
.mw-mmv-options-dialog .mw-mmv-dialog-down-arrow {
background-color: var(--body-light);
box-shadow: none;
}
.mw-mmv-options-enable-alert {
background-color: var(--body-light);
color: var(--text-color);
}
.mw-mmv-options-dialog-header,
.mw-mmv-options-text-header,
.mw-mmv-options-text-body,
.mw-mmv-options-enable-alert,
.mw-mmv-options-dialog .mw-mmv-disable-confirmation .mw-mmv-options-dialog-header,
.mw-mmv-options-dialog .mw-mmv-disable-confirmation .mw-mmv-options-text-header {
color: var(--text-color);
}
.mw-revslider-container {
border-color: var(--sidebar);
}
.mw-revslider-slider-wrapper {
border-top-color: var(--sidebar);
}
.mw-ui-button {
background-color: var(--ooui-normal);
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
}
.mw-ui-button:not(:disabled):hover,
.mw-ui-button:not(:disabled):active {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
}
.mw-ui-button:not(:disabled):focus {
color: var(--ooui-text);
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent), inset 0 0 0 2px #fff;
}
.mw-ui-button:not(:disabled):visited {
color: var(--ooui-text);
}
.mw-ui-button.mw-ui-progressive:not(:disabled) {
background-color: var(--ooui-progressive);
color: #fff;
border-color: var(--ooui-progressive);
}
.mw-ui-button.mw-ui-progressive:not(:disabled):hover {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
}
.mw-ui-button.mw-ui-progressive:not(:disabled):focus {
box-shadow: inset 0 0 0 1px var(--ooui-accent), inset 0 0 0 2px #fff;
}
.mw-ui-button.mw-ui-progressive:not(:disabled):active,
.mw-ui-button.mw-ui-progressive:not(:disabled).is-on {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
box-shadow: none;
}
.mw-ui-button.mw-ui-destructive:not( :disabled ) {
color: #fff;
}
.mw-ui-button.mw-ui-quiet,
.mw-ui-button.mw-ui-quiet.mw-ui-progressive,
.mw-ui-button.mw-ui-quiet.mw-ui-destructive {
color: var(--text-color);
}
input[type='checkbox']:hover + .mw-ui-button.mw-ui-quiet,
input[type='checkbox']:hover + .mw-ui-button.mw-ui-quiet.mw-ui-progressive,
input[type='checkbox']:hover + .mw-ui-button.mw-ui-quiet.mw-ui-destructive,
.mw-ui-button.mw-ui-quiet:hover,
.mw-ui-button.mw-ui-quiet.mw-ui-progressive:hover,
.mw-ui-button.mw-ui-quiet.mw-ui-destructive:hover {
background-color: rgba(0, 24, 73, 0.02745098);
color: var(--text-color);
border-color: transparent;
}
input[type='checkbox']:focus + .mw-ui-button.mw-ui-quiet,
input[type='checkbox']:focus + .mw-ui-button.mw-ui-quiet.mw-ui-progressive,
input[type='checkbox']:focus + .mw-ui-button.mw-ui-quiet.mw-ui-destructive,
.mw-ui-button.mw-ui-quiet:focus,
.mw-ui-button.mw-ui-quiet.mw-ui-progressive:focus,
.mw-ui-button.mw-ui-quiet.mw-ui-destructive:focus {
color: var(--text-color);
}
input[type='checkbox']:active + .mw-ui-button.mw-ui-quiet,
input[type='checkbox']:active + .mw-ui-button.mw-ui-quiet.mw-ui-progressive,
input[type='checkbox']:active + .mw-ui-button.mw-ui-quiet.mw-ui-destructive,
.mw-ui-button.mw-ui-quiet:active,
.mw-ui-button.mw-ui-quiet.mw-ui-progressive:active,
.mw-ui-button.mw-ui-quiet.mw-ui-destructive:active {
background-color: rgba(0, 36, 73, 0.08235294);
color: var(--text-color);
border-color: #72777d;
}
.mw-ui-input {
background-color: var(--ooui-input);
color: var(--text-color);
border-color: var(--ooui-input-border);
}
.mw-ui-input:hover {
border-color: var(--ooui-input-border--hover);
}
.mw-ui-input::placeholder {
color: var(--byline-color);
}
.mw-content-ltr .redirectText li:first-child {
padding: 0;
background: 0;
}
.mw-content-ltr .redirectText li:first-child::before {
content: '';
background: currentcolor;
-webkit-mask: url("filepath://Redirect-arrow.svg") no-repeat 50% 50% / contain;
mask: url("filepath://Redirect-arrow.svg") no-repeat 50% 50% / contain;
display: inline-block;
width: 47px;
height: 20px;
}
.vector-search-box-inner {
background: var(--body-main) !important;
box-shadow: inset 0 -7px 7px -7px rgba(0, 0, 0, 0.15) !important;
}
.vector-menu-dropdown .vector-menu-heading {
color: var(--vector-tab-link-color) !important;
}
.vector-menu-dropdown .vector-menu-heading:hover {
color: var(--vector-tab-link-color) !important;
}
.vector-menu-dropdown .vector-menu-heading:focus {
color: var(--vector-tab-link-color) !important;
}
:root {
--wikitable-header-bg: var(--body-dark);
--wikitable-border: var(--body-border);
--wikitable-bg: var(--body-light);
--wikitable-bg-lighter: #e9e3d6;
--wikitable-color: var(--text-color);
--table-na-background: rgba(255, 255, 255, 0.3);
--table-na-color: var(--subtle-color);
--table-yes-background: #c3e8a3;
--table-yes-color: #2e5e05;
--table-no-background: #fbc0ba;
--table-no-color: #801c13;
--table-maybe-background: #fcea94;
--table-maybe-color: #786300;
}
.wikitable {
background: var(--wikitable-bg);
color: var(--wikitable-color);
border-color: var(--wikitable-border);
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
}
.wikitable > tr > th,
.wikitable > tr > td,
.wikitable > * > tr > th,
.wikitable > * > tr > td {
border-color: var(--wikitable-border);
}
.wikitable > tr > th.table-noborder,
.wikitable > tr > td.table-noborder,
.wikitable > * > tr > th.table-noborder,
.wikitable > * > tr > td.table-noborder {
border-left-style: hidden;
border-right-style: hidden;
padding-left: 0;
padding-right: 0;
}
.wikitable > tr > th,
.wikitable > * > tr > th {
background-color: var(--wikitable-header-bg);
color: #fff;
}
.tabber .wikitable {
box-shadow: none;
}
.mw_metadata td,
.mw_metadata th {
border-color: var(--wikitable-border);
}
.mw_metadata th {
background-color: var(--wikitable-header-bg);
}
.mw_metadata td {
background-color: var(--wikitable-bg);
}
.mw-datatable {
border-color: var(--wikitable-border);
}
.mw-datatable td,
.mw-datatable th {
border-color: var(--wikitable-border);
}
.mw-datatable th {
background-color: var(--wikitable-header-bg);
}
.mw-datatable td {
background-color: var(--wikitable-bg);
}
.mw-datatable tr:hover td {
background-color: var(--wikitable-bg);
}
table.alternating-rows tr:nth-child(odd),
table.alternating-cols td:nth-child(odd) {
background: var(--wikitable-alternating-bg);
}
.table-na {
background: var(--table-na-background);
color: var(--table-na-color);
vertical-align: middle;
text-align: center;
}
.table-yes {
background: var(--table-yes-background);
color: var(--table-yes-color);
}
.table-positive {
background: var(--table-yes-background);
}
.table-no {
background: var(--table-no-background);
color: var(--table-no-color);
}
.table-negative {
background: var(--table-no-background);
}
.table-maybe {
background: var(--table-maybe-background);
color: var(--table-maybe-color);
}
#mw-allmessagestable .am_actual,
#mw-allmessagestable .am_default {
background-color: var(--wikitable-bg);
}
#mw-allmessagestable .am_default:hover,
#mw-allmessagestable .am_actual:hover,
#mw-allmessagestable tbody:hover td {
background-color: var(--wikitable-bg-lighter);
}
table.wikitable td.no-cell-spacing {
padding: 0;
height: 0;
}
table.wikitable td.no-cell-spacing table {
margin: -1px;
width: calc(100% + 2px);
height: calc(100% + 2px);
}
.plainlist ol,
.plainlist ul {
margin: 0;
}
.plainlist li {
margin-bottom: 0;
list-style: none;
}
table.align-right-1 td:nth-of-type(1),
table.align-right-2 td:nth-of-type(2),
table.align-right-3 td:nth-of-type(3),
table.align-right-4 td:nth-of-type(4),
table.align-right-5 td:nth-of-type(5),
table.align-right-6 td:nth-of-type(6),
table.align-right-7 td:nth-of-type(7),
table.align-right-8 td:nth-of-type(8),
table.align-right-9 td:nth-of-type(9),
table.align-right-10 td:nth-of-type(10),
table.align-right-11 td:nth-of-type(11),
table.align-right-12 td:nth-of-type(12),
table.align-right-13 td:nth-of-type(13),
table.align-right-14 td:nth-of-type(14),
table.align-right-15 td:nth-of-type(15),
table.align-right-16 td:nth-of-type(16),
table.align-right-17 td:nth-of-type(17),
table.align-right-18 td:nth-of-type(18),
table.align-right-19 td:nth-of-type(19),
table.align-right-20 td:nth-of-type(20) {
text-align: right;
}
table.align-center-1 td:nth-of-type(1),
table.align-center-2 td:nth-of-type(2),
table.align-center-3 td:nth-of-type(3),
table.align-center-4 td:nth-of-type(4),
table.align-center-5 td:nth-of-type(5),
table.align-center-6 td:nth-of-type(6),
table.align-center-7 td:nth-of-type(7),
table.align-center-8 td:nth-of-type(8),
table.align-center-9 td:nth-of-type(9),
table.align-center-10 td:nth-of-type(10),
table.align-center-11 td:nth-of-type(11),
table.align-center-12 td:nth-of-type(12),
table.align-center-13 td:nth-of-type(13),
table.align-center-14 td:nth-of-type(14),
table.align-center-15 td:nth-of-type(15),
table.align-center-16 td:nth-of-type(16),
table.align-center-17 td:nth-of-type(17),
table.align-center-18 td:nth-of-type(18),
table.align-center-19 td:nth-of-type(19),
table.align-center-20 td:nth-of-type(20) {
text-align: center;
}
table.align-left-1 td:nth-of-type(1),
table.align-left-2 td:nth-of-type(2),
table.align-left-3 td:nth-of-type(3),
table.align-left-4 td:nth-of-type(4),
table.align-left-5 td:nth-of-type(5),
table.align-left-6 td:nth-of-type(6),
table.align-left-7 td:nth-of-type(7),
table.align-left-8 td:nth-of-type(8),
table.align-left-9 td:nth-of-type(9),
table.align-left-10 td:nth-of-type(10),
table.align-left-11 td:nth-of-type(11),
table.align-left-12 td:nth-of-type(12),
table.align-left-13 td:nth-of-type(13),
table.align-left-14 td:nth-of-type(14),
table.align-left-15 td:nth-of-type(15),
table.align-left-16 td:nth-of-type(16),
table.align-left-17 td:nth-of-type(17),
table.align-left-18 td:nth-of-type(18),
table.align-left-19 td:nth-of-type(19),
table.align-left-20 td:nth-of-type(20) {
text-align: left;
}
:root {
--diff-addedline-border-color: #438ab5;
--diff-addedline-background: #bddff2;
--diff-addedline-color: #000;
--diff-deletedline-border-color: #379541;
--diff-deletedline-background: #c1edbf;
--diff-deletedline-color: #000;
--diff-context-border-color: var(--body-mid);
--diff-context-background: var(--body-mid);
}
.diff-context {
border-color: var(--diff-context-border-color);
background: var(--diff-context-background);
color: inherit;
}
.diff-addedline {
border-color: var(--diff-addedline-border-color);
}
.diff-addedline .diffchange {
background: var(--diff-addedline-background);
color: var(--diff-addedline-color);
}
.diff-deletedline {
border-color: var(--diff-deletedline-border-color);
}
.diff-deletedline .diffchange {
background: var(--diff-deletedline-background);
color: var(--diff-deletedline-color);
}
.mw-diff-movedpara-left:after,
.mw-diff-movedpara-right:after {
color: var(--text-color);
}
.mw-notification {
background-color: var(--body-light);
border-color: var(--body-border);
color: var(--text-color);
}
.mw-echo-ui-notificationsInboxWidget-toolbarWrapper {
background: var(--body-main);
}
.mw-body-content .mw-echo-ui-datedSubGroupListWidget-title-secondary {
color: var(--byline-color);
}
.mw-echo-ui-pageNotificationsOptionWidget.oo-ui-optionWidget-selected {
background-color: var(--ooui-normal);
color: var(--ooui-accent);
}
.mw-echo-ui-pageNotificationsOptionWidget-label-count {
background-color: var(--ooui-normal);
color: var(--byline-color);
}
.oo-ui-optionWidget-selected .mw-echo-ui-pageNotificationsOptionWidget-label-count {
color: var(--ooui-accent);
}
.mw-echo-ui-pageNotificationsOptionWidget.oo-ui-optionWidget-highlighted {
background-color: var(--ooui-normal);
color: var(--text-color);
}
.mw-echo-ui-crossWikiUnreadFilterWidget {
border-color: var(--body-border);
}
.mw-echo-ui-crossWikiUnreadFilterWidget-subtitle {
color: var(--byline-color);
}
.mw-echo-ui-notificationBadgeButtonPopupWidget-popup > .oo-ui-popupWidget-popup > .oo-ui-popupWidget-head,
.mw-echo-ui-notificationBadgeButtonPopupWidget-popup > .oo-ui-popupWidget-popup > .oo-ui-popupWidget-footer {
border-color: var(--ooui-interface-border);
}
.mw-echo-ui-notificationBadgeButtonPopupWidget-popup > .oo-ui-popupWidget-popup > .oo-ui-popupWidget-footer .mw-echo-ui-notificationBadgeButtonPopupWidget-footer-buttons .oo-ui-buttonElement:last-child {
border-left-color: var(--ooui-normal-border);
}
.mw-echo-ui-notificationItemWidget {
background-color: var(--ooui-normal);
border-color: var(--ooui-normal-border);
}
.mw-echo-ui-notificationItemWidget:hover,
.mw-echo-ui-notificationItemWidget-unread:hover {
background-color: var(--ooui-normal--hover);
}
.mw-echo-ui-notificationItemWidget:last-child {
border-bottom-color: var(--ooui-normal-border);
}
.mw-echo-ui-notificationItemWidget-unread {
background-color: var(--search-box);
}
.mw-echo-ui-crossWikiNotificationItemWidget-group,
.mw-echo-ui-bundleNotificationItemWidget-group {
background-color: var(--ooui-interface);
}
.mw-echo-ui-toggleReadCircleButtonWidget-circle {
background-color: var(--ooui-progressive);
}
.mw-echo-ui-toggleReadCircleButtonWidget:hover .mw-echo-ui-toggleReadCircleButtonWidget-circle {
background-color: var(--ooui-progressive--hover);
}
.mw-echo-ui-toggleReadCircleButtonWidget-circle-unread {
background-color: var(--ooui-normal);
border-color: var(--ooui-normal-border);
}
.mw-echo-ui-notificationItemWidget-content-message-header,
.mw-echo-ui-notificationItemWidget-content-message-body,
.mw-echo-ui-menuItemWidget > .oo-ui-buttonElement-button > .oo-ui-labelElement-label,
.mw-echo-ui-notificationItemWidget-content-actions-timestamp {
color: var(--ooui-text);
}
.mw-echo-ui-bundleNotificationItemWidget-group {
background-color: var(--body-main);
}
@keyframes unseen-fadeout-to-unread {
from {
background-color: var(--wikitable-bg-lighter);
}
to {
background-color: var(--search-box);
}
}
@keyframes unseen-fadeout-to-read {
from {
background-color: var(--wikitable-bg-lighter);
}
to {
background-color: var(--body-main);
}
}
.mwe-popups {
background: var(--body-light);
}
.mwe-popups .mwe-popups-container {
color: var(--text-color);
background: var(--body-light);
}
.mwe-popups .mwe-popups-container.flipped-x-y:before,
.mwe-popups .mwe-popups-container.flipped-y:before {
border-top: none;
}
.mwe-popups .mwe-popups-container.mwe-popups-no-image-tri:before {
border-bottom: none;
}
.mwe-popups .mwe-popups-container.flipped-x-y:after,
.mwe-popups .mwe-popups-container.flipped-y:after {
border-top-color: var(--body-light);
}
.mwe-popups .mwe-popups-container.mwe-popups-no-image-tri:after {
border-bottom-color: var(--body-light);
}
.mwe-popups .mwe-popups-settings-icon:hover,
.mwe-popups .mwe-popups-settings-icon:active {
background-color: var(--ooui-normal--hover);
}
.mwe-popups .mw-ui-icon-element:not(.disabled):hover {
background: none;
}
.mwe-popups .mwe-popups-extract {
color: var(--text-color);
}
.mwe-popups .mwe-popups-extract[dir='ltr']:after {
background-image: linear-gradient(to right, rgba(49, 62, 89, 0), var(--body-light) 50%);
}
.mwe-popups-overlay {
background-color: var(--ooui-window-background);
}
#mwe-popups-settings {
background: var(--ooui-interface);
border-color: var(--ooui-interface-border);
color: var(--text-color);
}
#mwe-popups-settings header {
border-color: var(--ooui-interface-border);
}
#mwe-popups-settings main#mwe-popups-settings-form p {
color: var(--byline-color);
}
#mwe-popups-settings main#mwe-popups-settings-form form label > span {
color: var(--ooui-text);
}
:root {
--smw-ask-options-even-bg: var(--body-mid);
--smw-ask-options-odd-bg: var(--body-light);
--smw-ask-action-btn-lblue-bg: var(--body-main);
--smw-ask-action-btn-lblue-color: #000;
--smw-ask-action-btn-lblue-border-color: var(--body-light);
--smw-ask-action-btn-dblue-bg: var(--body-light);
--smw-ask-action-btn-dblue-color: #fff;
--smw-ask-action-btn-dblue-border-color: var(--button-border);
}
.smw-ask-condition fieldset,
.smw-ask-printhead fieldset {
border-color: var(--sidebar);
}
.smw-ask-search fieldset,
.smw-ask-format fieldset,
.smw-ask-options fieldset {
border-color: var(--sidebar);
}
.strike > span:before,
.strike > span:after {
background: var(--sidebar);
}
.smw-ask-options-fields tr td {
background-color: var(--smw-ask-options-even-bg);
}
.smw-ask-options-fields tr:nth-child(odd) td {
background-color: var(--smw-ask-options-odd-bg);
}
.smw-ask-action-btn.smw-ask-action-btn-lblue,
.smw-ask-action-btn.smw-ask-action-btn-lblue:hover,
.smw-ask-action-btn.smw-ask-action-btn-lblue:visited {
background-color: var(--smw-ask-action-btn-lblue-bg);
color: var(--smw-ask-action-btn-lblue-color);
border-color: var(--smw-ask-action-btn-lblue-border-color);
}
.smw-ask-action-btn.smw-ask-action-btn-dblue,
.smw-ask-action-btn.smw-ask-action-btn-dblue:hover,
.smw-ask-action-btn.smw-ask-action-btn-dblue:visited {
background-color: var(--smw-ask-action-btn-dblue-bg);
color: var(--smw-ask-action-btn-dblue-color);
border-color: var(--smw-ask-action-btn-dblue-border-color);
}
.smw-ask-query textarea,
.smw-ask-actions textarea {
background-color: var(--ooui-interface);
border-color: var(--ooui-interface-border);
color: var(--ooui-text);
}
.smw-ask-query-format select {
background-color: var(--ooui-interface);
border: 1px solid var(--ooui-interface-border);
color: var(--ooui-text);
}
.smw-ask-toplinks {
background-color: var(--body-mid);
}
.smw-ask-toplinks span.smw-icon-info {
background: none;
padding: 0 !important;
}
.smw-ask-toplinks span.smw-icon-info::before {
content: '';
background: var(--text-color);
-webkit-mask: url("data:image/svg+xml,%3C%3Fxml version='1.0' encoding='UTF-8'%3F%3E%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 20 20'%3E%3Ctitle%3Einfo%3C/title%3E%3Cpath d='M10 0C4.477 0 0 4.477 0 10s4.477 10 10 10 10-4.477 10-10S15.523 0 10 0zM9 5h2v2H9zm0 4h2v6H9z'/%3E%3C/svg%3E") no-repeat 50% 50% / contain;
mask: url("data:image/svg+xml,%3C%3Fxml version='1.0' encoding='UTF-8'%3F%3E%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 20 20'%3E%3Ctitle%3Einfo%3C/title%3E%3Cpath d='M10 0C4.477 0 0 4.477 0 10s4.477 10 10 10 10-4.477 10-10S15.523 0 10 0zM9 5h2v2H9zm0 4h2v6H9z'/%3E%3C/svg%3E") no-repeat 50% 50% / contain;
padding: 0 0 3px 18px;
}
.smw-ask-options-row-odd {
background-color: var(--body-light);
}
.smw-ask-options-row-even {
background-color: var(--body-mid);
}
#options-toggle:not(:checked) + #options-list .options-parameter-list:after {
background-image: linear-gradient(to bottom, transparent, var(--body-mid) 90%);
}
.smw-ask-button-submit input {
background-color: var(--ooui-normal);
border-color: var(--ooui-normal-border);
color: var(--text-color);
}
.smw-ask-button-submit input:hover,
.smw-ask-button-lgrey:hover {
background-color: var(--ooui-normal--hover);
border-color: var(--ooui-normal-border);
}
input.smw-ask-action-btn.smw-ask-action-btn-dblue {
background-color: var(--ooui-normal);
border-color: var(--ooui-normal-border);
color: var(--ooui-text);
}
a.smw-ask-action-btn.smw-ask-action-btn-lblue {
background-color: var(--body-mid);
border-color: var(--body-mid);
color: var(--ooui-text);
}
a.smw-ask-action-btn.smw-ask-action-btn-lblue:visited {
background-color: var(--body-mid);
border-color: var(--body-mid);
color: var(--ooui-text);
}
a.smw-ask-action-btn.smw-ask-action-btn-lblue:hover {
background-color: var(--body-mid);
border-color: var(--body-mid);
color: var(--ooui-text);
}
a.smw-ask-action-btn-lgrey {
background-color: var(--ooui-normal);
border-color: var(--ooui-normal-border);
color: var(--ooui-text);
}
a.smw-ask-action-btn-lgrey:hover {
background-color: var(--ooui-normal--hover);
border-color: var(--ooui-normal-border);
color: var(--ooui-text);
}
.smw-callout-error {
background-color: var(--errorbox-bg);
border-color: var(--errorbox-border);
}
.smw-callout-info {
background-color: var(--body-light);
border-color: var(--body-dark);
}
.smw-callout-success {
background-color: var(--successbox-bg);
border-color: var(--successbox-border);
}
.smw-callout-warning {
background-color: var(--warningbox-bg);
border-color: var(--warningbox-bg);
}
.smw-tabs input.nav-tab:checked + label.nav-label,
.smw-tabs input.nav-tab:checked + label.nav-label:hover {
color: inherit;
}
#tab-smw-property-value:checked + label.nav-label .usage-count {
color: #fff;
background-color: var(--ooui-progressive);
}
#tab-smw-property-value:checked + label.nav-label .usage-count.moderate {
color: #fff;
background-color: #b55e0c;
border-color: #b55e0c;
}
#tab-smw-property-value:checked + label.nav-label .usage-count.high {
color: #fff;
background-color: #9f261e;
border-color: #9f261e;
}
.smw-property-page-results .header-title {
background-color: var(--ooui-interface);
border-bottom-color: var(--ooui-interface-border);
color: var(--ooui-text);
}
.smw-property-page-results .value-row:hover {
background-color: var(--ooui-normal--hover);
}
.smw-property-page-results .smw-table .header-row {
color: var(--text-color);
}
.tippy-tooltip.light-border-theme {
background-color: var(--body-light);
color: var(--text-color);
}
.tippy-tooltip.light-border-theme .tippy-arrow {
border-top-color: var(--body-light);
}
.tippy-tooltip.light-border-theme .tippy-arrow:after {
border-top-color: var(--body-light);
}
.tippy-header {
background-color: var(--body-dark);
border-bottom-color: var(--body-mid);
}
.smw-ui-input-filter {
background-color: var(--ooui-interface);
border-color: var(--ooui-interface-border);
color: var(--ooui-text);
}
.smw-ui-input-filter input {
border-left-color: var(--ooui-interface-border) !important;
color: var(--ooui-text) !important;
}
.smw-ui-pagination .page-link.link-disabled {
background-color: var(--ooui-disabled);
border-color: var(--ooui-disabled-border);
color: var(--subtle-color);
}
.smw-ui-pagination .page-link {
background-color: var(--ooui-normal);
border-color: var(--ooui-normal-border);
color: var(--link-color);
}
.smw-ui-pagination .page-link:hover {
background-color: var(--ooui-normal--hover);
border-color: var(--ooui-normal-border);
color: var(--link-color);
}
.smw-ui-pagination .page-link.link-active {
color: #fff;
background-color: var(--ooui-progressive);
border-color: var(--ooui-progressive);
}
.smw-tabs input.nav-tab:checked + label.nav-label {
border-color: var(--ooui-normal-border);
}
.smw-tabs section,
.smw-tabs .subtab-content {
border-top-color: var(--ooui-normal-border);
}
.smw-column-header {
color: var(--text-color);
}
.smw-factbox {
background: var(--body-main);
border-color: transparent;
}
.mw-body .mw-indicators #mw-indicator-smw-entity-examiner.mw-indicator .smw-indicator-vertical-bar-loader {
display: none;
}
.smwb-theme-light .smwb-title,
.smwb-theme-light .smwb-center,
.smwb-theme-light .smwb-actions,
.smwb-theme-light .smwb-prophead {
background-color: var(--body-mid);
}
.smwb-theme-light .smwb-factbox {
border-left-color: var(--body-mid);
}
.smwb-theme-light .smwb-ifactbox {
border-right-color: var(--body-mid);
}
.smwb-theme-light .smwb-propval {
background-color: var(--body-light);
}
.smwb-action-separator {
border-color: var(--wikitable-border);
}
.smwb-bottom {
border-bottom: 1px solid var(--wikitable-border);
}
.smwb-ifactbox .smwb-cell,
.smwb-factbox .smwb-cell {
border-top: 1px solid var(--wikitable-border);
}
.smwb-propvalue .smwb-prophead,
.smwb-ipropvalue .smwb-prophead,
.smwb-propvalue .smwb-propval,
.smwb-ipropvalue .smwb-propval {
font-size: 0.9em;
}
:root {
--filter-black-to-link: invert(36%) sepia(58%) saturate(433%) hue-rotate(344deg) brightness(100%) contrast(91%);
}
#bodyContent span.smwbrowse a {
color: black;
background-image: url('filepath://Smwbrowse.svg');
filter: var(--filter-black-to-link);
}
#bodyContent span.smwbrowse a:hover {
color: black;
background-image: url('filepath://Smwbrowse-hover.svg');
text-decoration: underline;
}
#bodyContent span.smwsearch a {
color: black;
filter: var(--filter-black-to-link);
background-image: url('filepath://Smwsearch.svg');
}
#bodyContent span.smwsearch a:hover {
color: black;
background-image: url('filepath://Smwsearch-hover.svg');
text-decoration: underline;
}
:root {
--tabber-tab-bg: var(--body-light);
--tabber-tab-border-color: var(--body-border);
--tabber-active-tab-bg: var(--body-light);
--tabber-active-tab-color: var(--text-color);
--tabber-active-tab-hover-bg: var(--body-light);
--tabber-active-tab-hover-border-color: var(--body-border);
--tabber-active-tab-hover-color: var(--text-color);
--tabber-active-tab-border-hider-color: var(--body-light);
--tabber-inactive-tab-bg: var(--body-background-color);
--tabber-inactive-tab-border-color: var(--body-border);
--tabber-inactive-tab-color: var(--text-color);
--tabber-inactive-tab-hover-bg: var(--body-light);
--tabber-inactive-tab-hover-border-color: var(--body-border);
}
.tabber {
margin: 1em 0;
}
.tabber .tabbertab {
background-color: var(--tabber-tab-bg);
border: 1px solid var(--tabber-tab-border-color);
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
padding: 1em 1.5em;
}
ul.tabbernav {
border: none;
margin-left: 2em;
margin-bottom: 0;
margin-right: 2em;
padding: 0;
font-family: inherit;
}
ul.tabbernav li.tabberactive > a {
background-color: var(--tabber-active-tab-bg);
color: var(--tabber-active-tab-color);
border-bottom: none;
position: relative;
}
ul.tabbernav li.tabberactive > a:hover {
color: var(--tabber-active-tab-hover-color);
background-color: var(--tabber-active-tab-hover-bg);
border-color: var(--tabber-active-tab-hover-border-color);
border-bottom: none;
}
ul.tabbernav li.tabberactive > a::after {
content: '';
position: absolute;
left: 0;
right: 0;
bottom: -1px;
border-bottom: 2px solid var(--tabber-active-tab-border-hider-color);
}
ul.tabbernav li a {
background-color: var(--tabber-inactive-tab-bg);
border-bottom: transparent;
border-color: var(--tabber-inactive-tab-border-color);
color: var(--tabber-inactive-tab-color);
display: inline-block;
font-size: 110%;
padding: 0.5em 1em;
}
ul.tabbernav li a:hover {
background-color: var(--tabber-inactive-tab-hover-bg);
border-color: var(--tabber-inactive-tab-hover-border-color);
}
ul.tabbernav li a:link,
ul.tabbernav li a:visited {
color: var(--tabber-inactive-tab-color);
}
:root {
--ooui-text: var(--text-color);
--ooui-interface: var(--body-light);
--ooui-interface-border: var(--body-border);
--ooui-window-background: rgba(255, 255, 255, 0.5);
--ooui-normal: #cdb3a6;
--ooui-normal--hover: #d8c4ba;
--ooui-normal-border: #d1b9ad;
--ooui-progressive: #936243;
--ooui-progressive--hover: #b27a57;
--ooui-accent: var(--link-color);
--ooui-input: #fff;
--ooui-input-border: #d1b9ad;
--ooui-input-border--hover: #ae846f;
--ooui-disabled: #ece3de;
--ooui-disabled-border: #e3d5ce;
--ooui-disabled-text: var(--subtle-color);
--ooui-pending-background-image: repeating-linear-gradient(-45deg, var(--search-box), var(--search-box) 20px, var(--body-main) 20px, var(--body-main) 30px);
}
.oo-ui-widget {
color: var(--ooui-text);
}
.oo-ui-checkboxInputWidget [type='checkbox'] + span,
.oo-ui-radioInputWidget [type='radio'] + span {
background-color: var(--ooui-input);
border-color: var(--ooui-input-border);
}
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:checked + span,
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:indeterminate + span {
background-color: var(--ooui-progressive);
border-color: var(--ooui-progressive);
}
.oo-ui-radioInputWidget.oo-ui-widget-enabled [type='radio']:checked + span {
border-color: var(--ooui-progressive);
}
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:checked:hover + span,
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:indeterminate:hover + span {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
}
.oo-ui-radioInputWidget.oo-ui-widget-enabled [type='radio']:checked:hover + span {
border-color: var(--ooui-progressive--hover);
}
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:hover + span,
.oo-ui-radioInputWidget.oo-ui-widget-enabled [type='radio']:hover + span {
border-color: var(--ooui-accent);
}
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:focus + span {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:active + span,
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:checked:active + span,
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:indeterminate:active + span {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
box-shadow: inset 0 0 0 1px var(--ooui-progressive--hover);
}
.oo-ui-radioInputWidget.oo-ui-widget-enabled [type='radio']:active + span {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
}
.oo-ui-radioInputWidget.oo-ui-widget-enabled [type='radio']:checked:active + span {
border-color: var(--ooui-progressive--hover);
box-shadow: inset 0 0 0 1px var(--ooui-progressive--hover);
}
.oo-ui-radioInputWidget.oo-ui-widget-enabled [type='radio']:checked:active + span:before {
border-color: var(--ooui-progressive--hover);
}
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:checked:focus + span,
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:indeterminate:focus + span {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent), inset 0 0 0 2px #fff;
}
.oo-ui-checkboxInputWidget [type='checkbox']:disabled + span,
.oo-ui-radioInputWidget [type='radio']:disabled + span {
background-color: var(--ooui-disabled);
border-color: var(--ooui-disabled);
}
.oo-ui-dropdownWidget-handle {
border-color: var(--ooui-normal-border);
}
.oo-ui-dropdownWidget.oo-ui-widget-enabled .oo-ui-dropdownWidget-handle {
background-color: var(--ooui-normal);
color: var(--ooui-text);
}
.oo-ui-dropdownWidget.oo-ui-widget-enabled .oo-ui-dropdownWidget-handle:hover {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
}
.oo-ui-dropdownWidget.oo-ui-widget-enabled .oo-ui-dropdownWidget-handle:active {
color: var(--ooui-text);
}
.oo-ui-dropdownWidget.oo-ui-widget-enabled .oo-ui-dropdownWidget-handle:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-dropdownWidget.oo-ui-widget-enabled.oo-ui-dropdownWidget-open .oo-ui-dropdownWidget-handle {
background-color: var(--ooui-normal--hover);
}
.oo-ui-dropdownWidget.oo-ui-widget-disabled .oo-ui-dropdownWidget-handle {
color: var(--ooui-disabled-text);
text-shadow: none;
border-color: var(--ooui-disabled-border);
background-color: var(--ooui-disabled);
}
.oo-ui-dropdownInputWidget select {
border-color: var(--ooui-normal-border);
}
.oo-ui-dropdownInputWidget option {
background-color: var(--ooui-interface);
}
.oo-ui-dropdownInputWidget.oo-ui-widget-enabled {
background-color: var(--ooui-normal);
}
.oo-ui-dropdownInputWidget.oo-ui-widget-enabled:hover {
background-color: var(--ooui-normal--hover);
}
.oo-ui-dropdownInputWidget.oo-ui-widget-enabled select {
color: var(--ooui-text);
}
.oo-ui-dropdownInputWidget.oo-ui-widget-enabled select:hover,
.oo-ui-dropdownInputWidget.oo-ui-widget-enabled select:active {
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
}
.oo-ui-dropdownInputWidget.oo-ui-widget-enabled select:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-labelWidget.oo-ui-inline-help {
color: var(--byline-color);
}
.oo-ui-menuSelectWidget {
background-color: var(--ooui-interface);
border-color: var(--ooui-interface-border);
}
.oo-ui-menuSelectWidget-frameless {
box-shadow: inset 0 -1px 0 0 var(--ooui-normal-border);
}
.oo-ui-menuSectionOptionWidget {
color: var(--byline-color);
}
.oo-ui-menuOptionWidget.oo-ui-optionWidget-highlighted,
.oo-ui-menuOptionWidget.oo-ui-optionWidget-selected {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
}
.oo-ui-menuOptionWidget.oo-ui-optionWidget-selected.oo-ui-menuOptionWidget.oo-ui-optionWidget-highlighted,
.oo-ui-menuOptionWidget.oo-ui-optionWidget-pressed.oo-ui-menuOptionWidget.oo-ui-optionWidget-highlighted {
color: var(--ooui-accent);
}
.oo-ui-menuOptionWidget.oo-ui-widget-enabled.oo-ui-optionWidget {
color: var(--ooui-text);
}
.oo-ui-messageDialog-title {
color: inherit;
}
.oo-ui-messageWidget.oo-ui-messageWidget-block.oo-ui-flaggedElement-error {
background-color: var(--errorbox-bg);
border-color: var(--errorbox-border);
}
.oo-ui-messageWidget.oo-ui-messageWidget-block.oo-ui-flaggedElement-warning {
background-color: var(--warningbox-bg);
border-color: var(--warningbox-border);
}
.oo-ui-messageWidget.oo-ui-messageWidget-block.oo-ui-flaggedElement-success {
background-color: var(--successbox-bg);
border-color: var(--successbox-border);
}
.oo-ui-messageWidget.oo-ui-messageWidget-block.oo-ui-flaggedElement-notice {
background-color: var(--messagebox-info-background);
border-color: var(--messagebox-info-border);
}
.oo-ui-messageWidget.oo-ui-flaggedElement-error:not(.oo-ui-messageWidget-block),
.oo-ui-messageWidget.oo-ui-flaggedElement-success:not(.oo-ui-messageWidget-block) {
color: var(--ooui-text);
}
.oo-ui-optionWidget.oo-ui-widget-disabled {
color: var(--ooui-disabled-text);
}
.oo-ui-outlineControlsWidget {
background-color: var(--ooui-normal);
}
.oo-ui-outlineOptionWidget.oo-ui-optionWidget-highlighted {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
}
.oo-ui-popupWidget-popup {
background-color: var(--ooui-interface);
border-color: var(--ooui-interface-border);
}
.oo-ui-popupWidget-anchored-top .oo-ui-popupWidget-anchor:after {
border-bottom-color: var(--ooui-interface);
}
.oo-ui-popupWidget-anchored-top .oo-ui-popupWidget-anchor:before {
border-bottom-color: var(--ooui-interface-border);
}
.oo-ui-popupWidget-anchored-bottom .oo-ui-popupWidget-anchor:after {
border-top-color: var(--ooui-interface);
}
.oo-ui-popupWidget-anchored-bottom .oo-ui-popupWidget-anchor:before {
border-top-color: var(--ooui-interface-border);
}
.oo-ui-popupWidget-anchored-start .oo-ui-popupWidget-anchor:after {
border-right-color: var(--ooui-interface);
}
.oo-ui-popupWidget-anchored-start .oo-ui-popupWidget-anchor:before {
border-right-color: var(--ooui-interface-border);
}
.oo-ui-popupWidget-anchored-end .oo-ui-popupWidget-anchor:after {
border-left-color: var(--ooui-interface);
}
.oo-ui-popupWidget-anchored-end .oo-ui-popupWidget-anchor:before {
border-left-color: var(--ooui-interface-border);
}
.oo-ui-searchWidget-query {
border-bottom-color: var(--ooui-interface-border);
}
.oo-ui-selectFileWidget-dropTarget {
background-color: var(--ooui-interface);
border-color: var(--ooui-interface-border);
}
.oo-ui-selectFileWidget.oo-ui-widget-enabled.oo-ui-selectFileWidget-dropTarget {
background-color: var(--ooui-interface);
}
.oo-ui-selectFileWidget.oo-ui-widget-enabled.oo-ui-selectFileWidget-dropTarget:hover {
border-color: var(--ooui-input-border--hover);
}
.oo-ui-tabOptionWidget {
color: var(--ooui-text);
}
.oo-ui-tabSelectWidget-framed .oo-ui-tabOptionWidget.oo-ui-optionWidget-selected {
background-color: var(--body-dark);
color: var(--ooui-text);
}
.oo-ui-tabSelectWidget-framed .oo-ui-tabOptionWidget.oo-ui-optionWidget-selected .oo-ui-labelElement-label {
border-bottom-color: var(--body-border);
}
.oo-ui-tabSelectWidget-framed .oo-ui-tabOptionWidget.oo-ui-widget-enabled:hover,
.oo-ui-tabSelectWidget-framed .oo-ui-tabOptionWidget.oo-ui-widget-enabled:active {
background-color: var(--body-light);
color: var(--ooui-text);
}
.oo-ui-tabSelectWidget-framed .oo-ui-tabOptionWidget.oo-ui-widget-enabled.oo-ui-optionWidget-selected:hover {
background-color: var(--body-dark);
}
.oo-ui-tabSelectWidget-frameless .oo-ui-tabOptionWidget.oo-ui-optionWidget-selected {
color: var(--ooui-progressive);
box-shadow: inset 0 -2px 0 0 var(--ooui-progressive);
}
.oo-ui-tabSelectWidget-frameless .oo-ui-tabOptionWidget.oo-ui-optionWidget-selected:hover,
.oo-ui-tabSelectWidget-frameless .oo-ui-tabOptionWidget.oo-ui-optionWidget-selected:focus {
color: var(--ooui-progressive--hover);
box-shadow: inset 0 -2px 0 0 var(--ooui-progressive--hover);
}
.oo-ui-tabSelectWidget-framed {
background: none;
border-bottom: 1px solid var(--ooui-interface-border);
}
.oo-ui-tabSelectWidget-frameless {
box-shadow: inset 0 -1px 0 0 var(--ooui-interface-border);
}
.oo-ui-tabSelectWidget-mobile {
}
.oo-ui-tabSelectWidget-mobile.oo-ui-tabSelectWidget-framed:after {
background: var(--mobile-navbox-linear-gradient);
}
.oo-ui-tabSelectWidget-mobile.oo-ui-tabSelectWidget-frameless:after {
background: var(--mobile-navbox-linear-gradient);
}
.oo-ui-tagItemWidget {
border-color: var(--ooui-normal-border);
}
.oo-ui-tagItemWidget.oo-ui-widget-enabled {
color: var(--ooui-text);
}
.oo-ui-tagItemWidget.oo-ui-widget-enabled:hover {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
}
.oo-ui-tagItemWidget.oo-ui-widget-enabled:not( .oo-ui-tagItemWidget-fixed ) {
background-color: var(--ooui-normal);
}
.oo-ui-tagItemWidget.oo-ui-widget-enabled .oo-ui-buttonElement-button:hover {
background-color: var(--ooui-normal--hover);
}
.oo-ui-tagMultiselectWidget.oo-ui-widget-enabled {
background-color: var(--ooui-interface);
}
.oo-ui-tagMultiselectWidget.oo-ui-widget-enabled.oo-ui-tagMultiselectWidget-outlined {
background-color: var(--ooui-normal);
}
.oo-ui-tagMultiselectWidget.oo-ui-widget-enabled.oo-ui-tagMultiselectWidget-outlined .oo-ui-tagItemWidget.oo-ui-widget-enabled {
background-color: var(--ooui-interface);
}
.oo-ui-textInputWidget .oo-ui-inputWidget-input {
background-color: var(--ooui-input);
color: var(--ooui-text);
border-color: var(--ooui-input-border);
}
.oo-ui-textInputWidget.oo-ui-widget-enabled .oo-ui-inputWidget-input::placeholder {
color: var(--subtle-color);
}
.oo-ui-textInputWidget.oo-ui-widget-enabled .oo-ui-inputWidget-input:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-textInputWidget.oo-ui-widget-enabled .oo-ui-inputWidget-input[readonly]:not(.oo-ui-pendingElement-pending) {
background-color: var(--ooui-disabled);
color: var(--ooui-disabled-text);
}
.oo-ui-textInputWidget.oo-ui-widget-enabled:hover .oo-ui-inputWidget-input {
border-color: var(--ooui-input-border--hover);
}
.oo-ui-textInputWidget.oo-ui-widget-enabled:hover .oo-ui-inputWidget-input:focus {
border-color: var(--ooui-accent);
}
@media screen and (min-width: 0) {
.oo-ui-textInputWidget.oo-ui-widget-enabled textarea.oo-ui-inputWidget-input:focus {
outline: 1px solid var(--ooui-accent);
}
}
.oo-ui-textInputWidget.oo-ui-widget-disabled .oo-ui-inputWidget-input {
background-color: var(--ooui-disabled);
color: var(--ooui-disabled-text);
text-shadow: none;
border-color: var(--ooui-disabled-border);
}
.oo-ui-toggleSwitchWidget {
background-color: var(--ooui-input);
border-color: var(--ooui-input-border);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled .oo-ui-toggleSwitchWidget-grip {
background-color: var(--ooui-input);
border-color: var(--ooui-input-border);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:hover {
background-color: var(--ooui-input);
border-color: var(--ooui-accent);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:hover .oo-ui-toggleSwitchWidget-grip {
background-color: var(--ooui-input);
border-color: var(--ooui-accent);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:active,
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:active:hover,
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:active:focus {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
box-shadow: inset 0 0 0 1px var(--ooui-progressive--hover);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:active .oo-ui-toggleSwitchWidget-grip,
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:active:hover .oo-ui-toggleSwitchWidget-grip,
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:active:focus .oo-ui-toggleSwitchWidget-grip {
background-color: var(--ooui-input);
border-color: var(--ooui-input);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:focus .oo-ui-toggleSwitchWidget-grip {
border-color: var(--ooui-accent);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled.oo-ui-toggleWidget-on {
background-color: var(--ooui-progressive);
border-color: var(--ooui-progressive);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled.oo-ui-toggleWidget-on .oo-ui-toggleSwitchWidget-grip {
background-color: var(--ooui-input);
border-color: var(--ooui-input);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled.oo-ui-toggleWidget-on:hover {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled.oo-ui-toggleWidget-on:active,
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled.oo-ui-toggleWidget-on:active:hover {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled.oo-ui-toggleWidget-on:focus {
border-color: var(--ooui-progressive);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled.oo-ui-toggleWidget-on:focus::before {
border-color: #fff;
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-disabled {
background-color: var(--ooui-disabled);
border-color: var(--ooui-disabled);
}
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled > .oo-ui-buttonElement-button {
color: var(--ooui-text);
}
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled > .oo-ui-buttonElement-button:hover {
color: var(--ooui-text);
}
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled > .oo-ui-buttonElement-button:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled.oo-ui-buttonElement-pressed > input.oo-ui-buttonElement-button,
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled > .oo-ui-buttonElement-button:active {
color: var(--ooui-text);
}
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button,
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button:hover {
color: var(--ooui-text);
}
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button:active,
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive.oo-ui-buttonElement-pressed > .oo-ui-buttonElement-button {
color: var(--ooui-text);
border-color: var(--ooui-text);
}
.oo-ui-buttonElement-frameless.oo-ui-widget-disabled > .oo-ui-buttonElement-button {
color: var(--ooui-disabled-text);
}
.oo-ui-buttonElement-framed.oo-ui-widget-disabled > .oo-ui-buttonElement-button {
background-color: var(--ooui-disabled);
border-color: var(--ooui-disabled-border);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled > .oo-ui-buttonElement-button {
background-color: var(--ooui-normal);
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled > .oo-ui-buttonElement-button:hover {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled > .oo-ui-buttonElement-button:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-buttonElement-active > .oo-ui-buttonElement-button {
background-color: var(--ooui-progressive--hover);
color: #fff;
border-color: var(--ooui-progressive--hover);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-buttonElement-active > .oo-ui-buttonElement-button:focus {
border-color: var(--ooui-progressive--hover);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled > .oo-ui-buttonElement-button:active,
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-buttonElement-pressed > .oo-ui-buttonElement-button {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive {
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button {
color: var(--ooui-text);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button:hover {
background-color: var(--ooui-normal--hover);
border-color: var(--ooui-progressive--hover);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-destructive > .oo-ui-buttonElement-button {
color: var(--ooui-text);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-destructive > .oo-ui-buttonElement-button:hover {
background-color: var(--ooui-normal--hover);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button {
background-color: var(--ooui-progressive);
border-color: var(--ooui-progressive);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button:hover {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent), inset 0 0 0 2px #fff;
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button:active,
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive.oo-ui-buttonElement-pressed > .oo-ui-buttonElement-button,
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive.oo-ui-buttonElement-active > .oo-ui-buttonElement-button,
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive.oo-ui-popupToolGroup-active > .oo-ui-buttonElement-button {
color: #fff;
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
}
.oo-ui-pendingElement-pending {
background-image: var(--ooui-pending-background-image);
background-size: 200%;
animation: oo-ui-pendingElement-stripes 6s linear infinite;
}
@keyframes oo-ui-pendingElement-stripes {
100% {
background-position: 100%;
}
}
.oo-ui-messageDialog-content > .oo-ui-window-foot {
outline-color: var(--ooui-interface-border);
}
.oo-ui-messageDialog-message {
color: var(--ooui-text);
}
.oo-ui-messageDialog-actions-horizontal .oo-ui-actionWidget {
border-right-color: var(--ooui-interface-border);
}
.oo-ui-messageDialog-actions-vertical .oo-ui-actionWidget {
border-bottom-color: var(--ooui-interface-border);
}
.oo-ui-processDialog-content .oo-ui-window-head,
.oo-ui-processDialog-content .oo-ui-window-foot {
outline-color: var(--ooui-interface-border);
}
.oo-ui-processDialog .oo-ui-actionWidget > .oo-ui-buttonElement-button {
border-top-color: transparent;
border-bottom-color: transparent;
}
.oo-ui-processDialog .oo-ui-actionWidget > .oo-ui-buttonElement-button:hover,
.oo-ui-processDialog .oo-ui-actionWidget > .oo-ui-buttonElement-button:active {
border-top-color: transparent;
border-bottom-color: transparent;
}
.oo-ui-processDialog .oo-ui-actionWidget:not( .oo-ui-flaggedElement-progressive ):not( .oo-ui-flaggedElement-destructive ) > .oo-ui-buttonElement-button:hover,
.oo-ui-processDialog .oo-ui-actionWidget:not( .oo-ui-flaggedElement-progressive ):not( .oo-ui-flaggedElement-destructive ) > .oo-ui-buttonElement-button:active {
border-right-color: var(--ooui-interface-border);
border-left-color: transparent;
}
.oo-ui-processDialog .oo-ui-actionWidget:not( .oo-ui-flaggedElement-progressive ):not( .oo-ui-flaggedElement-destructive ) > .oo-ui-buttonElement-button:focus {
border-color: var(--ooui-accent);
}
.oo-ui-processDialog-actions-safe .oo-ui-actionWidget > .oo-ui-buttonElement-button,
.oo-ui-processDialog-actions-other .oo-ui-actionWidget > .oo-ui-buttonElement-button {
border-right-color: var(--ooui-normal-border);
border-left-color: transparent;
}
.oo-ui-processDialog-actions-safe .oo-ui-widget-enabled.oo-ui-iconElement:not( .oo-ui-labelElement ) > .oo-ui-buttonElement-button:hover {
background-color: var(--ooui-normal--hover);
border-right-color: var(--ooui-interface-border);
}
.oo-ui-windowManager-modal > .oo-ui-dialog {
background-color: var(--ooui-window-background);
}
.oo-ui-windowManager-modal > .oo-ui-dialog > .oo-ui-window-frame {
background-color: var(--ooui-interface);
}
.oo-ui-windowManager-modal.oo-ui-windowManager-floating > .oo-ui-dialog > .oo-ui-window-frame {
border-color: var(--ooui-interface-border);
}
.oo-ui-window {
color: var(--ooui-text);
}
.oo-ui-toolbar-bar {
background-color: var(--ooui-interface);
color: var(--ooui-text);
}
.oo-ui-toolbar-position-top > .oo-ui-toolbar-bar {
border-bottom-color: var(--body-mid);
}
.oo-ui-toolbar-bar .oo-ui-bookletLayout > .oo-ui-menuLayout-menu {
border-right-color: var(--body-mid);
}
.oo-ui-tool.oo-ui-widget-enabled > .oo-ui-tool-link:hover {
background-color: var(--ooui-normal--hover);
}
.oo-ui-tool.oo-ui-widget-enabled > .oo-ui-tool-link:focus {
outline: 1px solid var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-tool.oo-ui-widget-enabled > .oo-ui-tool-link:active,
.oo-ui-tool.oo-ui-widget-enabled.oo-ui-tool-active > .oo-ui-tool-link,
.oo-ui-tool.oo-ui-widget-enabled.oo-ui-popupToolGroup-active > .oo-ui-tool-link {
background-color: var(--ooui-normal--hover);
color: var(--ooui-accent);
box-shadow: none;
}
.oo-ui-tool.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive > .oo-ui-tool-link {
background-color: var(--ooui-progressive);
}
.oo-ui-tool.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive > .oo-ui-tool-link:hover {
background-color: var(--ooui-progressive--hover);
}
.oo-ui-tool.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive > .oo-ui-tool-link:focus {
box-shadow: inset 0 0 0 1px var(--ooui-accent), inset 0 0 0 2px #fff;
}
.oo-ui-tool.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive > .oo-ui-tool-link:active,
.oo-ui-tool.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive.oo-ui-tool-active > .oo-ui-tool-link {
background-color: var(--ooui-progressive--hover);
}
.oo-ui-listToolGroup-tools .oo-ui-tool.oo-ui-widget-enabled {
background-color: var(--ooui-normal);
}
.oo-ui-listToolGroup-tools .oo-ui-tool.oo-ui-widget-enabled:hover {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
}
.oo-ui-listToolGroup-tools .oo-ui-tool-active.oo-ui-widget-enabled .oo-ui-tool-link .oo-ui-tool-title {
color: var(--ooui-progressive);
}
.oo-ui-menuToolGroup {
border-left-color: var(--body-mid);
border-right-color: var(--body-mid);
}
.oo-ui-popupToolGroup-tools {
background-color: var(--ooui-interface);
border-color: var(--body-mid);
}
.oo-ui-popupToolGroup.oo-ui-widget-enabled > .oo-ui-popupToolGroup-handle:hover {
background-color: var(--ooui-normal--hover);
}
.oo-ui-popupToolGroup.oo-ui-widget-enabled > .oo-ui-popupToolGroup-handle:focus {
outline: 1px solid var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-toolbar-actions .oo-ui-popupToolGroup.oo-ui-widget-enabled > .oo-ui-popupToolGroup-handle:hover {
border-right-color: var(--ooui-normal--hover);
}
.oo-ui-popupToolGroup-tools .oo-ui-tool.oo-ui-widget-enabled .oo-ui-tool-link:focus {
box-shadow: inset 0 0 0 2px var(--ooui-accent);
}
.oo-ui-popupToolGroup-tools .oo-ui-tool-active.oo-ui-widget-enabled .oo-ui-tool-link .oo-ui-tool-title {
color: var(--ooui-progressive);
}
.oo-ui-popupToolGroup.oo-ui-popupToolGroup-active > .oo-ui-popupToolGroup-handle {
background-color: var(--ooui-normal);
color: var(--ooui-accent);
}
.oo-ui-popupToolGroup.oo-ui-popupToolGroup-active > .oo-ui-popupToolGroup-handle:hover {
background-color: var(--ooui-normal--hover);
color: var(--ooui-accent);
}
.oo-ui-bookletLayout-outlinePanel > .oo-ui-outlineControlsWidget {
border-top-color: var(--ooui-interface-border);
}
.oo-ui-bookletLayout > .oo-ui-menuLayout-menu {
border-right-color: var(--ooui-interface-border);
}
.oo-ui-fieldLayout-disabled > .oo-ui-fieldLayout-body > .oo-ui-fieldLayout-header > .oo-ui-labelElement-label {
color: var(--ooui-disabled-text);
}
.oo-ui-panelLayout-framed {
border-color: var(--sidebar);
}
.oo-ui-icon-settings {
background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' width='20' height='20' viewBox='0 0 20 20'%3E%3Ctitle%3Esettings%3C/title%3E%3Cg transform='translate(10 10)'%3E%3Cpath id='a' d='M1.5-10h-3l-1 6.5h5m0 7h-5l1 6.5h3'/%3E%3Cuse xlink:href='%23a' transform='rotate(45)'/%3E%3Cuse xlink:href='%23a' transform='rotate(90)'/%3E%3Cuse xlink:href='%23a' transform='rotate(135)'/%3E%3C/g%3E%3Cpath d='M10 2.5a7.5 7.5 0 0 0 0 15 7.5 7.5 0 0 0 0-15v4a3.5 3.5 0 0 1 0 7 3.5 3.5 0 0 1 0-7'/%3E%3C/svg%3E");
}
.oo-ui-icon-clear {
background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 20 20'%3E%3Ctitle%3Eclear%3C/title%3E%3Cpath d='M10 0a10 10 0 1 0 10 10A10 10 0 0 0 10 0zm5.66 14.24-1.41 1.41L10 11.41l-4.24 4.25-1.42-1.42L8.59 10 4.34 5.76l1.42-1.42L10 8.59l4.24-4.24 1.41 1.41L11.41 10z'/%3E%3C/svg%3E");
}
.mw-widget-dateInputWidget-handle {
background-color: var(--ooui-input);
color: var(--ooui-text);
border-color: var(--ooui-input-border);
}
.mw-widget-dateInputWidget-calendar {
background-color: var(--ooui-interface);
}
.mw-widget-dateInputWidget.oo-ui-widget-enabled .mw-widget-dateInputWidget-handle:hover {
border-color: var(--ooui-input-border--hover);
}
.mw-widget-calendarWidget {
border-color: var(--ooui-interface-border);
}
.mw-widget-calendarWidget:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.mw-widget-calendarWidget-day,
.mw-widget-calendarWidget-day-heading {
color: var(--ooui-text);
}
.mw-widget-calendarWidget-day-additional {
color: var(--ooui-text);
opacity: 0.67;
}
.mw-widget-calendarWidget-day-today {
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.mw-widget-calendarWidget-item:hover {
background-color: var(--ooui-progressive);
}
.mw-widget-calendarWidget-item-selected {
background-color: var(--ooui-progressive--hover);
}
.mw-widgets-datetime-calendarWidget {
background-color: var(--ooui-interface);
border-color: var(--ooui-interface-border);
}
.mw-widgets-datetime-calendarWidget:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent), 0 2px 2px 0 rgba(0, 0, 0, 0.25);
}
.mw-widgets-datetime-calendarWidget-grid .mw-widgets-datetime-calendarWidget-cell.mw-widgets-datetime-calendarWidget-extra .oo-ui-buttonElement-button .oo-ui-labelElement-label {
color: var(--subtle-color);
}
.mw-widgets-datetime-calendarWidget-grid .mw-widgets-datetime-calendarWidget-cell.mw-widgets-datetime-calendarWidget-selected .oo-ui-buttonElement-button {
background-color: var(--ooui-progressive--hover);
}
.mw-widgets-datetime-dateTimeInputWidget-handle {
background-color: var(--ooui-input);
color: var(--ooui-text);
border-color: var(--ooui-input-border);
}
.mw-widgets-datetime-dateTimeInputWidget.oo-ui-widget-enabled.mw-widgets-datetime-dateTimeInputWidget-handle:hover {
border-color: var(--ooui-input-border--hover);
}
.mw-widgets-datetime-dateTimeInputWidget.oo-ui-widget-enabled:hover input,
.mw-widgets-datetime-dateTimeInputWidget.oo-ui-widget-enabled:hover textarea {
border-color: var(--ooui-input-border--hover);
}
.mw-widgets-datetime-dateTimeInputWidget.oo-ui-widget-enabled .mw-widgets-datetime-dateTimeInputWidget-editField:hover {
background-color: var(--ooui-normal);
}
.ve-activated .ve-init-mw-desktopArticleTarget-originalContent #catlinks:hover {
background: var(--ooui-normal--hover);
}
.ve-ui-overlay {
font-family: inherit;
}
.oo-ui-toolbar-position-top .ve-ui-toolbarDialog-position-above {
border-top-color: var(--body-mid);
}
.ve-ce-branchNode-blockSlug,
.ve-ce-branchNode-newSlug {
outline-color: var(--body-border);
background-color: var(--ooui-interface);
}
.ve-ui-specialCharacterPage h3 {
color: var(--byline-color);
}
.ve-ui-specialCharacterPage-character {
border-color: var(--body-mid);
}
.ve-ui-specialCharacterPage-character:hover {
border-color: var(--body-dark);
}
.ve-ce-linkAnnotation.ve-ce-annotation-active {
box-shadow: 0 0 0 1px var(--body-mid);
background: none;
}
.ve-ui-desktopContext .ve-ui-linkContextItem .ve-ui-linkContextItem-label {
border-color: var(--body-border);
}
.ve-ui-mwHelpPopupTool-version-label,
.ve-ui-mwHelpPopupTool-version-link,
.ve-ui-mwHelpPopupTool-version-date {
color: var(--byline-color);
}
.ve-ce-tableCellableNode {
border-color: var(--body-mid);
}
.ve-ce-mwReferencesListNode-muted {
color: var(--byline-color);
}
.ve-ui-mwTemplatePage-description,
.ve-ui-mwParameterPage-label,
.ve-ui-mwParameterPage-description-required,
.ve-ui-mwParameterPage-description-deprecated {
color: var(--byline-color);
}
.mw-widget-titleWidget-menu .mw-widget-titleOptionWidget-description {
color: var(--byline-color);
}
.ve-ui-mwGalleryDialog-menuLayout > .oo-ui-menuLayout-menu,
.ve-ui-mwGalleryDialog-innerMenuLayout > .oo-ui-menuLayout-menu,
.ve-ui-mwGalleryDialog .ve-ui-mwGalleryDialog-image-container,
.ve-ui-targetWidget {
border-color: var(--body-border);
}
.ve-ui-targetWidget:not(.oo-ui-pendingElement-pending) {
background-color: var(--body-main);
}
.ve-ui-mwSaveDialog {
color: var(--ooui-text);
}
.ve-ui-mwSaveDialog-options {
background-color: var(--ooui-interface);
border-color: var(--body-border);
}
.ve-ui-mwSaveDialog-summary {
background-color: var(--ooui-input);
}
.ve-ui-mwSaveDialog-editSummary-count {
border-color: var(--body-border);
}
.ve-ui-mwSaveDialog-license {
color: var(--byline-color);
}
.ve-ui-mwReferenceContextItem-muted {
color: var(--byline-color);
}
.ve-ui-mwNoticesPopupTool-items > div:not(:first-child),
.ve-ui-mwHelpPopupTool-item:not(:first-child) {
border-color: var(--body-border);
}
.ve-ui-mwTransclusionOutlineControlsWidget {
background-color: var(--ooui-interface);
border-top-color: var(--body-border);
}
.ve-ui-mwTransclusionOutlineTemplateWidget-sticky {
background-color: var(--ooui-interface);
}
.ve-ui-mwTransclusionOutlineTemplateWidget .ve-ui-mwTransclusionOutlineParameterWidget.oo-ui-optionWidget-highlighted {
color: var(--ooui-text);
}
.ve-ui-mwTransclusionOutlineTemplateWidget-no-template-parameters {
color: var(--subtle-color);
}
.ve-ui-mwParameterPage-undocumentedLabel {
color: var(--subtle-color);
}
.ve-ui-mwTwoPaneTransclusionDialogLayout > .oo-ui-menuLayout-menu {
border-right: var(--body-border);
}
.ve-ui-mwParameterPage-doc-required,
.ve-ui-mwParameterPage-doc-deprecated,
.ve-ui-mwParameterPage-inlineDescription .ve-ui-mwParameterPage-doc-example {
color: var(--byline-color);
}
.ve-ui-expandableContent-toggle {
background-color: var(--ooui-interface);
}
.ve-ui-expandableContent-fade {
background: linear-gradient(to right, rgba(255, 255, 255, 0) 0, var(--ooui-interface) 90%);
}
.ve-ui-commandHelpDialog-shortcut > kbd,
.ve-ui-commandHelpDialog-sequence > kbd {
background-color: var(--keypress-background);
color: var(--keypress-color);
border-color: var(--keypress-border);
box-shadow: none;
text-shadow: none;
}
.ve-init-mw-desktopArticleTarget-toolbarPlaceholder-floating .ve-init-mw-desktopArticleTarget-toolbarPlaceholder-bar {
background: var(--ooui-interface);
}
.ve-init-mw-desktopArticleTarget-toolbarPlaceholder-bar {
border-bottom-color: var(--body-mid);
}
figure[typeof~='mw:File/Thumb'],
figure[typeof~='mw:File/Frame'],
figure[typeof~='mw:Image/Thumb'],
figure[typeof~='mw:Video/Thumb'],
figure[typeof~='mw:Image/Frame'],
figure[typeof~='mw:Video/Frame'] {
border: none;
background-color: var(--thumb-bg);
}
figure[typeof~='mw:File/Thumb'] > a:first-child > *:first-child:not( .mw-broken-media ),
figure[typeof~='mw:File/Frame'] > a:first-child > *:first-child:not( .mw-broken-media ),
figure[typeof~='mw:Image/Thumb'] > a:first-child > *:first-child:not( .mw-broken-media ),
figure[typeof~='mw:Video/Thumb'] > a:first-child > *:first-child:not( .mw-broken-media ),
figure[typeof~='mw:Image/Frame'] > a:first-child > *:first-child:not( .mw-broken-media ),
figure[typeof~='mw:Video/Frame'] > a:first-child > *:first-child:not( .mw-broken-media ) {
border: none;
background: var(--thumb-bg);
}
figure[typeof~='mw:File/Thumb'] > figcaption,
figure[typeof~='mw:File/Frame'] > figcaption,
figure[typeof~='mw:Image/Thumb'] > figcaption,
figure[typeof~='mw:Video/Thumb'] > figcaption,
figure[typeof~='mw:Image/Frame'] > figcaption,
figure[typeof~='mw:Video/Frame'] > figcaption {
border: none;
background-color: var(--thumb-caption-bg);
padding: 4px 6px;
}
:root {
--keypress-background: #eee;
--keypress-border: #ccc;
--keypress-color: #333;
}
.toc .toctitle > * {
color: #fff;
}
.navbox .navbox-title {
color: #fff;
}
.navbox .navbox-list:not(last-child) {
border-bottom: none;
}
.archivelist {
background-color: var(--body-light);
border: solid 1px var(--body-border);
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
float: right;
margin: 5px;
padding: 5px;
text-align: center;
width: 120px;
}
.shortcut {
border: 1px solid var(--body-border);
background: var(--body-light);
float: right;
font-size: 0.8em;
margin: 0.5em 0em 0.5em 1em;
padding: 0.5em;
text-align: center;
}
.hatnote,
.seealso {
font-style: italic;
}
.hatnote i,
.seealso i {
font-style: normal;
}
div.hatnote,
div.seealso {
margin: 0.5em 1.6em;
}
div.hatnote + div.hatnote,
div.hatnote + div.seealso,
div.seealso + div.hatnote,
div.seealso + div.seealso {
margin-top: -0.5em;
}
.keypress {
background: var(--keypress-background);
color: var(--keypress-color);
font-family: inherit;
border: 1px solid var(--keypress-border);
border-radius: 2px;
font-size: 0.9em;
margin: 0 0.1em;
padding: 0.1em 0.4em;
white-space: nowrap;
}
.relative-location {
background: var(--body-light);
border: 1px solid var(--body-border);
border-spacing: 0;
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
text-align: center;
}
.relative-location-txt {
color: var(--text-color);
}
.relative-location-header {
background: var(--body-dark);
}
:root {
--documentation-background: #f9fafa;
--documentation-link-color: #e4eaee;
--documentation-headers-color: #fff;
--documentation-header-background: #949eaa;
--documentation-subheader-background: #808c9a;
--documentation-border: #e4eaee;
}
.documentation {
background: var(--documentation-background);
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
margin: 1em 0;
}
.documentation pre,
.documentation code {
background-color: var(--documentation-background);
border-color: var(--documentation-border);
}
.documentation h2,
.documentation hr {
border-color: var(--documentation-border);
}
.documentation-header {
color: var(--documentation-headers-color);
background: var(--documentation-header-background);
font-weight: bold;
padding: 1em 1.5em;
}
.documentation-title {
font-size: 1.25em;
}
.documentation-subheader {
color: var(--documentation-headers-color);
background: var(--documentation-subheader-background);
padding: 0.5em 1.5em;
}
.documentation-subheader a,
.documentation-subheader a:visited,
.documentation-subheader a:active {
color: var(--documentation-link-color);
}
.documentation-documentation,
.documentation-links {
font-size: 0.85em;
}
.documentation-content {
padding: 1em 1.5em;
}
.mw-templatedata-doc-params dl:not(:empty) {
column-count: 3;
border-top: 1px solid var(--body-border);
margin-bottom: 0.5em;
}
.mw-templatedata-doc-params dt::after {
content: ":";
}
.mw-templatedata-doc-params dd,
.mw-templatedata-doc-params dt {
margin: 0.1em 2em;
min-width: auto;
}
.mw-templatedata-doc-muted {
color: var(--subtle-color);
font-style: italic;
}
:root {
--infobox-text-color: var(--text-color);
--table-header: var(--body-dark);
--table-subheader: var(--body-mid);
--table-body: var(--body-light);
--table-border: var(--body-border);
}
.infobox {
font-size: 0.85em;
width: 300px;
border-collapse: collapse;
float: right;
table-layout: fixed;
margin: 0.5em 0 1em 1em;
}
.infobox .infobox-buttons {
display: flex;
flex-wrap: wrap;
justify-content: center;
grid-gap: 3px;
margin-bottom: 3px;
}
.infobox .infobox-buttons .button {
background: var(--table-subheader);
padding: 0 5px;
font-weight: bold;
flex: 1 1 20%;
max-width: 20%;
color: #fff;
}
.infobox .infobox-buttons .button.button-selected {
background: var(--table-header);
}
.infobox tbody {
border: 1px solid var(--table-border);
background: var(--table-body);
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(231, 215, 199, 0.5);
}
.infobox .infobox-header {
background: var(--table-header);
padding: 0.5em 0;
text-align: center;
color: #fff;
font-size: 1.15em;
font-weight: bold;
line-height: 1.4em;
}
.infobox .infobox-image {
text-align: center;
}
.infobox .infobox-subheader {
background: var(--table-subheader);
font-weight: bold;
text-align: center;
color: #fff;
}
.infobox .infobox-subheader a {
color: var(--link-color);
}
.infobox .infobox-padding {
backgound: var(--table-body);
}
.infobox tr td:not(.infobox-padding) {
padding: 0.2em 0.5em;
}
.infobox th:not(.infobox-header):not(.infobox-subheader):not(.infobox-nested) {
border-right: 2px solid var(--table-subheader);
text-align: right;
padding: 0.2em 0.5em;
}
.infobox select {
max-width: 300px;
}
.hidden {
display: none;
}
ol.references,
.reflist {
font-size: 90%;
}
.reflist {
list-style-type: decimal;
}
.reflist .references {
font-size: 100%;
list-style-type: inherit;
}
.reflist-lower-alpha {
list-style-type: lower-alpha;
}
ol.references li:target,
sup.reference:target {
background-color: var(--body-light);
}
.hideQuotes .refhide {
display: none;
}
:root {
--messagebox-obsolete-background: #cfcfcf;
--messagebox-obsolete-border: #464646;
--messagebox-obsolete-color: var(--text-color);
--messagebox-obsolete-link-color: #6c6c6c;
--messagebox-info-background: #ebebeb;
--messagebox-info-border: #898989;
--messagebox-info-color: var(--text-color);
--messagebox-info-link-color: #6c6c6c;
--messagebox-action-background: #c7e8fa;
--messagebox-action-border: #0b5884;
--messagebox-action-color: var(--text-color);
--messagebox-action-link-color: #03436b;
--messagebox-warn-background: #dfc0ba;
--messagebox-warn-border: #861c10;
--messagebox-warn-color: var(--text-color);
--messagebox-warn-link-color: #8e221a;
--messagebox-safe-background: #d8f0d3;
--messagebox-safe-border: #1b8408;
--messagebox-safe-color: var(--text-color);
--messagebox-safe-link-color: #1b8408;
--messagebox-disambig-background: #ebebeb;
--messagebox-disambig-border: #898989;
--messagebox-disambig-color: var(--text-color);
--messagebox-disambig-link-color: #6c6c6c;
--messagebox-discord-background: #5865f2;
--messagebox-discord-border: #4c57d0;
--messagebox-discord-link-color: #d2e5fc;
}
.mw-message-box,
.mw-message-box-error,
.mw-message-box-warning,
.mw-message-box-success,
.usermessage {
color: var(--text-color);
}
.messagebox {
width: 65%;
margin: 0.5em auto;
border-left: 15px solid;
border-color: var(--body-dark);
background-color: var(--body-light);
box-sizing: border-box;
}
.messagebox.obsolete {
background-color: var(--messagebox-obsolete-background);
border-color: var(--messagebox-obsolete-border);
color: var(--messagebox-obsolete-color);
}
.messagebox.obsolete a,
.messagebox.obsolete a:visited,
.messagebox.obsolete a:active {
color: var(--messagebox-obsolete-link-color);
}
.messagebox.info {
background-color: var(--messagebox-info-background);
border-color: var(--messagebox-info-border);
color: var(--messagebox-info-color);
}
.messagebox.info a,
.messagebox.info a:visited,
.messagebox.info a:active {
color: var(--messagebox-info-link-color);
}
.messagebox.action {
background-color: var(--messagebox-action-background);
border-color: var(--messagebox-action-border);
color: var(--messagebox-action-color);
}
.messagebox.action a,
.messagebox.action a:visited,
.messagebox.action a:active {
color: var(--messagebox-action-link-color);
}
.messagebox.warn {
background-color: var(--messagebox-warn-background);
border-color: var(--messagebox-warn-border);
color: var(--messagebox-warn-color);
}
.messagebox.warn a,
.messagebox.warn a:visited,
.messagebox.warn a:active {
color: var(--messagebox-warn-link-color);
}
.messagebox.safe {
background-color: var(--messagebox-safe-background);
border-color: var(--messagebox-safe-border);
color: var(--messagebox-safe-color);
}
.messagebox.safe a,
.messagebox.safe a:visited,
.messagebox.safe a:active {
color: var(--messagebox-safe-link-color);
}
.messagebox.disambig {
background-color: var(--messagebox-disambig-background);
border-color: var(--messagebox-disambig-border);
color: var(--messagebox-disambig-color);
}
.messagebox.disambig a,
.messagebox.disambig a:visited,
.messagebox.disambig a:active {
color: var(--messagebox-disambig-link-color);
}
.messagebox.discord {
background-color: var(--messagebox-discord-background);
border-color: var(--messagebox-discord-border);
color: #fff;
}
.messagebox.discord a,
.messagebox.discord a:visited,
.messagebox.discord a:active {
color: var(--messagebox-discord-link-color);
}
.messagebox.discord a.external,
.messagebox.discord a:visited.external,
.messagebox.discord a:active.external {
font-style: italic;
}
.messagebox.stub {
width: 40%;
}
.messagebox.hasdialogue {
padding: 0 10px;
width: auto;
}
:root {
--byline-arrow-filter: invert(29%) sepia(0%) saturate(376%) hue-rotate(172deg) brightness(87%) contrast(80%);
--tile-border-color: var(--body-border);
--tile-background-color: var(--body-light);
--tile-link-button-color: #f5e9db;
--tile-link-button-highlight-color: #dfccb0;
--tile-dark-color: #fff;
--tile-dark-bg: var(--body-dark);
--tile-dark-link-color: #ccc;
--tile-dark-byline-color: rgba(255, 255, 255, 0.7);
--tile-dark-header-color: #fff;
}
.tile {
background: var(--tile-background-color);
border: 1px solid var(--tile-border-color);
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
padding: 1.5em 2em 1em;
max-width: 40em;
}
.tile h2 {
font-size: 1.4em;
font-weight: bold;
border: none;
margin: 0 0 0.4em;
}
.tile .byline + h2 {
margin-top: -0.5em;
}
.tile.dark {
color: var(--tile-dark-color);
background: var(--tile-dark-bg);
border: none;
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.3);
}
.tile.dark h2 {
color: var(--tile-dark-header-color);
}
.tile.dark a {
color: var(--tile-dark-link-color);
}
.tile.dark .byline {
color: var(--tile-dark-byline-color);
}
.byline {
font-size: 0.9em;
color: var(--byline-color);
}
.byline a {
color: var(--byline-color);
}
.tile-row {
display: flex;
flex-flow: row wrap;
margin-bottom: 1em;
}
.tile-halves {
display: flex;
flex-flow: row wrap;
background: var(--tile-background-color);
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
}
.tile-halves h2 {
font-size: 1.4em;
font-weight: bold;
border: none;
margin: 0 0 0.4em;
}
.tile-halves .byline + h2 {
margin-top: -0.5em;
}
.tile-top {
width: 100%;
padding: 1.3rem 1.5rem 0.6rem;
}
.tile-top.tile-image {
display: flex;
align-items: center;
background-color: var(--body-light);
overflow: hidden;
padding: 0;
height: 13vw;
max-height: 12em;
transition: 0.4s ease-out;
}
.tile-halves:hover .tile-top.tile-image img {
transform: scale(1.1);
transition: 0.5s ease-out;
}
.tile-top.tile-image a {
width: 100%;
}
.tile-top.tile-image img {
width: 100%;
object-fit: cover;
max-height: 200px;
transition: 0.4s ease-out;
}
.tile-bottom {
background: var(--body-dark);
width: 100%;
padding: 1rem 1.5rem 0.6rem;
}
.tile-bottom h2 a {
color: #fff !important;
}
.tile-bottom.link-button {
align-self: flex-end;
padding: 0;
}
.tile-bottom.link-button a {
display: block;
text-align: center;
padding: 0.75em 1.5em 0.8em;
text-decoration: none;
}
.tile-bottom.read-more {
background: var(--tile-link-button-color);
transition: 0.3s ease-out;
}
.tile-bottom.read-more a {
color: var(--byline-color);
font-weight: bold;
text-align: right;
}
.tile-bottom.read-more:hover {
background: var(--tile-link-button-highlight-color);
}
.tile-bottom.read-more:hover .arrow {
transform: translateX(50%);
}
.tile-bottom.read-more .arrow {
filter: var(--byline-arrow-filter);
margin-left: 0.4em;
transition: 0.3s ease-out;
}
body.page-Main_Page.action-view .catlinks,
body.page-Main_Page.action-view #contentSub,
body.page-Main_Page.action-view #firstHeading,
body.page-Main_Page.action-view #siteNotice {
display: none;
}
body.page-Main_Page .mw-parser-output {
max-width: 75em;
margin: 0 auto;
}
body.page-Main_Page.action-view .catlinks,
body.page-Main_Page.action-view #contentSub,
body.page-Main_Page.action-view #siteNotice {
display: none;
}
.mainpage-header {
display: flex;
margin: 2.6em 1.75em 1.5em;
}
.mainpage-header .header-intro {
flex: 2;
}
.mainpage-header .header-intro h1 {
font-size: 2.5em;
font-weight: bold;
border: none;
margin: 0 0 0.15em;
}
.mainpage-header .header-intro p {
font-size: 1.1em;
line-height: 1.7em;
}
.mainpage-header .header-stats {
flex: 1;
display: flex;
justify-content: center;
align-items: center;
margin-top: -1em;
}
.mainpage-body {
display: grid;
grid-template-areas: "event event event" "update update update" "content content content" "left left right";
gap: 0.9rem;
grid-template-columns: repeat(3, 1fr);
}
.mainpage-body h2 a {
color: var(--text-color);
}
.mainpage-body .tile {
padding-left: 1.75em;
padding-right: 1.75em;
max-width: 100%;
}
.mainpage-body .tile-row {
width: 100%;
margin-bottom: 0;
}
.mainpage-body .tile-row {
display: grid;
gap: 0.9rem;
}
.mainpage-contents.tile-row {
display: flex;
}
.mainpage-contents.tile-row .tile-top {
height: 5.5rem;
}
.mainpage-left {
grid-area: left;
flex: 2;
display: flex;
flex-flow: column wrap;
}
.mainpage-left > * {
margin: 0 0 0.9rem;
}
.mainpage-right {
grid-area: right;
flex: 1;
display: flex;
flex-flow: column wrap;
}
.mainpage-right > * {
margin: 0 0 0.9rem;
}
.arrow {
background: url('filepath://White-chevron.svg') no-repeat;
display: inline-block;
height: 0.7rem;
width: 0.45rem;
vertical-align: middle;
}
.arrow.dark {
filter: invert(80%);
}
.mainpage-contents {
grid-area: content;
grid-template-columns: repeat(6, 1fr);
}
.mainpage-contents .tile-halves {
flex: 1;
}
.mainpage-contents .tile-top {
height: 4.5rem;
position: relative;
}
.mainpage-contents .tile-top.tile-image img {
height: auto;
}
.mainpage-contents h2 {
margin: 0;
padding: 0;
}
.mainpage-contents .tile-bottom.link-button a {
padding: 0.75em 0.2em;
}
.popular-pages ul {
display: grid;
grid-template-columns: repeat(3, 1fr);
grid-gap: 0.6em;
margin: 1em 0 0.7em 0;
}
.mp-popular-page-light {
display: flex;
align-items: center;
background-color: var(--button-background);
transition: 100ms;
}
.mp-popular-page-light a {
flex: 1;
display: block;
color: #fff;
font-weight: bold;
text-align: center;
text-decoration: none;
padding: 0.7em 1em;
}
.mp-popular-page-light:hover {
filter: brightness(115%);
transition: 100ms;
}
.mainpage-social {
border: none;
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.3);
}
.mainpage-social .tile-top {
display: flex;
align-items: center;
padding: 1em 1.5em;
}
.mainpage-social .tile-top a {
flex: 1;
position: relative;
text-decoration: none;
}
.mainpage-social .tile-top a:hover .arrow {
transform: translateX(50%);
}
.mainpage-social .tile-bottom {
border: none;
padding: 1em 1.75em;
}
.mainpage-social .tile-bottom p {
color: #fff;
font-weight: bold;
font-size: 0.9em;
text-align: center;
text-transform: uppercase;
letter-spacing: 0.03em;
margin: 0;
}
.mainpage-social .social-icon {
margin-right: 0.75em;
text-align: center;
width: 60px;
}
.mainpage-social .social-header {
color: #fff;
font-weight: bold;
font-size: 1.15em;
margin: 0.5em 0 -0.15em;
}
.mainpage-social .server-tagline {
color: rgba(255, 255, 255, 0.9);
margin-bottom: 0.5em;
}
.mainpage-social .arrow {
position: absolute;
top: calc(50% - .5em);
right: 0;
height: 1em;
width: 0.7em;
background-size: 0.7em 1em;
transition: 0.3s ease-out;
}
.mainpage-social.mainpage-discord .tile-top {
background: #5865f2;
}
.mainpage-social.mainpage-discord .tile-bottom {
background: #525ee0;
}
.mainpage-social.mainpage-twitter .tile-top {
background: #15202b;
}
.mainpage-social.mainpage-twitter .tile-bottom {
background: #121c26;
}
.mainpage-editing {
border: none;
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.3);
}
.mainpage-editing .tile-top {
background: #438ab5;
}
.mainpage-editing .tile-bottom {
background: #3980ab;
border: none;
padding: 0.8rem 1.5rem 0.4rem;
}
.mainpage-editing h2,
.mainpage-editing a {
color: #fff;
}
.mainpage-editing p {
color: rgba(255, 255, 255, 0.9);
}
.mainpage-editing ul {
list-style-image: url('filepath://Transparent-chevron.svg');
}
@media only screen and (max-width: 1200px) {
.mainpage-contents {
grid-template-columns: repeat(3, 1fr);
}
}
@media only screen and (max-width: 1000px) {
.mainpage-body {
grid-template-areas: "event event event" "update update update" "content content content" "left left left" "right right right";
}
.mainpage-recent-updates {
grid-template-columns: repeat(2, 1fr);
}
.mainpage-recent-updates .tile-halves:last-child {
display: none;
}
.mainpage-recent-updates .tile-halves:hover .tile-top img {
transform: scale(1.04);
}
.mainpage-recent-updates .tile-top {
height: 18vw;
min-height: 9em;
}
.mainpage-header .header-stats {
display: none;
}
.mainpage-left > *:last-child,
.mainpage-right > *:last-child {
margin-bottom: 0;
}
.popular-pages ul {
grid-template-columns: repeat(2, 1fr);
}
}
@media only screen and (max-width: 720px) {
.mainpage-recent-updates {
grid-template-columns: none;
}
.mainpage-recent-updates .tile-halves:last-child {
display: flex;
}
.mainpage-contents {
grid-template-columns: repeat(2, 1fr);
}
}
.mw-prefs-buttons {
background-color: var(--body-main);
border-top-color: var(--body-border);
box-shadow: none;
}
.mw-prefs-tabs-wrapper.oo-ui-panelLayout-framed,
.mw-prefs-tabs > .oo-ui-menuLayout-content > .oo-ui-indexLayout-stackLayout > .oo-ui-tabPanelLayout {
border-color: var(--body-border);
}
.mw-htmlform-ooui .mw-htmlform-matrix tbody tr:nth-child(even) td {
background-color: var(--body-light);
}
.mw-htmlform-ooui .mw-htmlform-matrix tbody tr:hover td {
background-color: var(--body-mid);
}
:root {
--rc-positive-color: #407813;
--rc-negative-color: #b41e0f;
}
.mw-plusminus-pos {
color: var(--rc-positive-color);
}
.mw-plusminus-neg {
color: var(--rc-negative-color);
}
.client-js .mw-recentchanges-toplinks:not(.mw-recentchanges-toplinks-collapsed) {
border-color: var(--body-border);
background-color: var(--body-light);
border-radius: 2px;
}
.mw-rcfilters-ui-filterTagMultiselectWidget-wrapper-content-title {
color: var(--text-color);
}
.mw-rcfilters-ui-filterTagMultiselectWidget-emptyFilters {
color: var(--byline-color);
}
.mw-rcfilters-ui-filterTagMultiselectWidget.oo-ui-widget-enabled .oo-ui-tagMultiselectWidget-handle {
background-color: var(--ooui-interface);
border-color: var(--ooui-interface-border);
}
.mw-rcfilters-ui-filterTagMultiselectWidget-views-select-widget.oo-ui-widget {
border-color: var(--ooui-interface-border);
}
.mw-rcfilters-collapsed .mw-rcfilters-ui-filterTagMultiselectWidget {
border-bottom-color: var(--ooui-interface-border);
}
.mw-rcfilters-ui-menuSelectWidget-footer {
background-color: var(--ooui-interface);
border-color: var(--ooui-interface-border);
}
.mw-rcfilters-ui-viewSwitchWidget label.oo-ui-labelWidget {
color: var(--byline-color);
}
.mw-rcfilters-ui-tagItemWidget-popup-content {
color: var(--ooui-text);
}
.mw-changeslist-legend,
.mw-rcfilters-ui-changesListWrapperWidget .mw-changeslist-legend {
background-color: var(--body-light);
border-color: var(--body-dark);
}
.mw-rcfilters-ui-changesListWrapperWidget-previousChangesIndicator {
border-color: var(--sidebar);
}
.client-js .mw-changeslist ul,
.client-js .mw-changeslist table.mw-enhanced-rc {
margin-left: 0;
}
.mw-rcfilters-ui-watchlistTopSectionWidget-separator {
border-color: var(--sidebar);
}
.mw-rcfilters-ui-itemMenuOptionWidget-header {
border-bottom-color: var(--ooui-interface);
background-color: var(--ooui-interface-border);
}
.mw-rcfilters-ui-itemMenuOptionWidget:not(:last-child):not(.mw-rcfilters-ui-itemMenuOptionWidget-identifier-talk) {
border-bottom-color: var(--ooui-normal-border);
}
.mw-rcfilters-ui-itemMenuOptionWidget-label-title,
.mw-rcfilters-ui-itemMenuOptionWidget-label-desc {
color: var(--text-color);
}
.mw-rcfilters-ui-filterMenuOptionWidget.oo-ui-flaggedElement-muted:not(.oo-ui-optionWidget-selected) {
background-color: var(--body-main);
}
.mw-rcfilters-ui-filterMenuOptionWidget.oo-ui-flaggedElement-muted .mw-rcfilters-ui-itemMenuOptionWidget-label-title,
.mw-rcfilters-ui-filterMenuOptionWidget.oo-ui-flaggedElement-muted .mw-rcfilters-ui-itemMenuOptionWidget-label-desc {
color: var(--subtle-color);
}
.mw-rcfilters-ui-filterMenuSectionOptionWidget {
background-color: var(--body-mid);
}
.mw-rcfilters-ui-filterMenuSectionOptionWidget-header-title.oo-ui-labelElement-label {
color: var(--ooui-text);
}
.mw-rcfilters-ui-filterMenuHeaderWidget-title {
color: var(--ooui-text);
}
.mw-rcfilters-ui-filterMenuHeaderWidget-header {
border-bottom-color: var(--ooui-interface-border);
background-color: var(--ooui-interface);
}
.mw-rcfilters-ui-itemMenuOptionWidget-view-namespaces {
border-top-color: var(--ooui-interface-border);
}
.mw-rcfilters-ui-datePopupWidget {
border-color: var(--ooui-interface-border);
}
.mw-rcfilters-ui-datePopupWidget .mw-rcfilters-ui-valuePickerWidget-title {
color: var(--byline-color);
}
.mw-rcfilters-ui-savedLinksListItemWidget-label {
color: var(--ooui-accent);
}
.client-js .mw-changeslist.mw-rcfilters-ui-changesListWrapperWidget-highlighted ul,
.client-js .mw-changeslist.mw-rcfilters-ui-changesListWrapperWidget-highlighted table.mw-enhanced-rc {
margin-left: 1.5em;
}
.page-Special_CreateAccount .mw-ui-container,
.page-Special_UserLogin .mw-ui-container {
max-width: 64rem;
margin: 0 auto;
}
.mw-number-text {
color: var(--byline-color);
}
.mw-body-content .mw-number-text h3 {
color: var(--text-color);
}
#mw-indicator-mw-helplink a {
background: none;
padding: 0;
display: flex;
align-items: center;
}
#mw-indicator-mw-helplink a::before {
content: '';
margin-right: 5px;
-webkit-mask: url("/resources/src/mediawiki.helplink/images/helpNotice.svg?46d34") no-repeat 50% 50% / contain;
mask: url("/resources/src/mediawiki.helplink/images/helpNotice.svg?46d34") no-repeat 50% 50% / contain;
background: var(--text-color);
height: 20px;
width: 20px;
}
.results-info {
color: inherit;
}
.mw-search-profile-tabs {
background-color: var(--body-mid);
border-color: transparent;
}
.search-types .current a {
color: inherit;
}
#mw-searchoptions {
background-color: var(--body-mid);
border-color: transparent;
}
#mw-searchoptions .divider {
border-color: var(--body-border);
}
#mw-searchoptions h4 {
font-family: inherit;
}
#mw-searchoptions .oo-ui-labelElement:nth-of-type(odd) {
font-weight: bold;
}
.searchresult {
line-height: 1.5;
}
.searchalttitle,
#mw-search-interwiki li {
font-size: 90%;
}
.mw-search-result-data {
color: var(--byline-color);
}
.page-Special_ListFiles a.image img {
width: inherit;
height: inherit;
}
.page-Special_ListFiles .TablePager_col_thumb {
text-align: center;
}
#editcount table[border="1"] {
background-color: var(--body-main) !important;
border-color: var(--wikitable-border) !important;
margin-top: 0.5em;
}
#editcount table[border="1"] th,
#editcount table[border="1"] td {
padding: 0.2em 0.4em;
}
#editcount table[border="1"] th {
background-color: var(--wikitable-header-bg);
border: 1px solid var(--wikitable-border);
}
#editcount table[border="1"] td {
border: 1px solid var(--wikitable-border);
}
#editcount table[border="1"] tr:nth-child(odd) {
background-color: var(--body-light);
}
.mw-echo-ui-notificationBadgeButtonPopupWidget-popup > .oo-ui-popupWidget-popup .mw-echo-ui-placeholderItemWidget {
background-color: inherit;
}
table.mw-interwikitable.body td.mw-interwikitable-local-yes {
background-color: var(--table-yes-background);
color: var(--table-yes-color);
}
.mw-protectedpages-unknown {
color: var(--byline-color);
}
.watchlistredir,
.allpagesredirect {
font-style: italic;
}
.allpagesredirect:after {
color: var(--byline-color);
content: " (redirect)";
}
.mw-apisandbox-toolbar {
background: var(--body-main);
}
.oo-ui-menuOptionWidget .mw-apisandbox-flag {
color: var(--byline-color);
}
tr.mw-abusefilter-list-disabled,
tr.mw-abusefilter-list-disabled td {
color: var(--byline-color);
}
table.mw-abuselog-details {
background: var(--wikitable-bg);
border-color: var(--wikitable-border);
}
table.mw-abuselog-details th {
background: var(--wikitable-header-bg);
}
table.mw-abuselog-details th,
table.mw-abuselog-details td {
border-color: var(--wikitable-border);
}
.mw-abusefilter-log-hidden-entry {
color: var(--subtle-color);
}
body td.mw-abusefilter-history-changed {
background: var(--table-no-background);
}
div.mw-abusefilter-editor,
#mw-abusefilter-warn-preview,
#mw-abusefilter-disallow-preview {
border-color: var(--ooui-input-border);
}
.mw-destfile-warning {
border-color: var(--warningbox-border);
color: var(--text-color);
background-color: var(--warningbox-bg);
}
span.fileinput-button {
background-color: var(--ooui-normal);
border-color: var(--ooui-normal-border);
color: var(--ooui-text);
}
ul.fileupload-results li.ful-success {
background-color: var(--successbox-bg);
}
ul.fileupload-results li.ful-success a {
color: var(--link-color);
}
ul.fileupload-results li.ful-error {
background-color: var(--errorbox-bg);
}
.color-container {
display: flex;
margin: 2em auto;
width: 80%;
max-width: 60em;
}
.color-column {
flex: 1;
margin-right: 1em;
}
.color-column:last-child {
margin-right: 0;
}
.color-column h3 {
padding: 0;
}
.color-group {
color: #333;
padding: 1em 1.5em;
transition: 0.2s ease-out;
}
.color-group:hover {
transform: scale(1.03);
}
.color-group.dark {
color: #fff;
}
.color-group .variable,
.color-group .hexcode {
font-family: monospace;
font-size: 1.1em;
-webkit-user-select: all;
-moz-user-select: all;
-ms-user-select: all;
user-select: all;
margin: 0;
}
body.wgl-readermode .color-group .variable,
body.wgl-readermode .color-group .hexcode {
font-size: inherit;
}
.color-group .variable {
font-weight: bold;
}
#t-print,
#t-permalink {
display: none;
}
#filetoc {
border-radius: 2px;
background: var(--body-mid);
border-color: transparent;
margin: 0.5em auto;
text-align: center;
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
}
li.gallerybox div.thumb {
border: none;
background-color: var(--thumb-bg);
}
.smwfact {
display: none;
}
.list-header {
background-color: var(--body-mid);
color: inherit;
}
.editOptions {
color: var(--text-color);
background-color: var(--sourceeditor-background-secondary);
border-color: var(--sourceeditor-border);
}
.mw-json th,
.mw-json td {
border-color: var(--wikitable-border);
}
.mw-json td {
background: var(--wikitable-bg);
}
.mw-json th {
background: var(--wikitable-header-bg);
}
2aad25410c9cc98df41d1b860c1517232fb198eb
2227
2221
2024-04-11T16:19:28Z
BlackHawk
10
Updating CSS from [[MediaWiki:Common.less]]
css
text/css
/* <pre> */
:root {
--body-main: #fdfcfc;
--body-light: #f5f0eb;
--body-mid: #d1b9ad;
--body-dark: #b1886f;
--body-border: #d1b9ad;
--body-background-color: #173a4d;
--button-background: #605443;
--button-color: #fff;
--button-border: #3c352a;
--button-dark: #18140c;
--button-light: #3a301d;
--sidebar: #cfc08d;
--background-text-color: #e2dbc8;
--background-link-color: #e2bd8a;
--search-box: #efeee6;
--link-color: #6e452b;
--redlink-color: #ba0000;
--text-color: #2F2828;
--byline-color: #ccc;
--subtle-color: #afa19a;
--admin-blue: #332e75;
--bearcat-green: #13592e;
--awb-purple: #933b96;
--rsw-blue: #438ab6;
--osrsw-brown: #605443;
--thumb-bg: var(--body-light);
--thumb-caption-bg: var(--body-mid);
--sourceeditor-input-background: #fff;
--sourceeditor-background: var(--body-light);
--sourceeditor-background-secondary: var(--body-light);
--sourceeditor-border: var(--body-mid);
--codemirror-gutter-background: var(--body-mid);
}
@font-face {
font-family: 'Lora';
font-weight: 400 700;
font-style: normal;
font-display: swap;
src: url('filepath://Lora.woff2') format('woff2');
}
@font-face {
font-family: 'Lora';
font-weight: 400 700;
font-style: italic;
font-display: swap;
src: url('filepath://Lora-Italic.woff2') format('woff2');
}
:root {
--base-text-color: #36414f;
--base-heading-color: #444e5a;
--base-heading-border: #e4eaee;
--mw-code-background-color: var(--body-light);
--body-background-image: url('filepath://Wiki_background.jpg');
}
#mw-page-base {
background: none;
}
.mw-body {
background-color: var(--body-main);
color: var(--text-color);
border-color: transparent;
box-shadow: 0 0 7px rgba(0, 0, 0, 0.15);
margin-top: 0;
}
h1,
h2,
h3,
h4,
h5,
h6 {
color: var(--text-color);
}
h1,
h2 {
border-color: var(--body-border);
}
.mw-body h1,
.mw-body-content h1,
.mw-body-content h2,
.mw-body-content h3,
.mw-body-content h4,
.mw-body-content h5,
.mw-body-content h6 {
font-family: 'Lora', 'Palatino', 'Georgia', serif;
}
.mw-parser-output h2:first-of-type {
clear: left;
}
.mw-footer {
color: var(--background-text-color);
}
.mw-footer li {
color: var(--background-text-color);
}
.mw-footer a,
.mw-footer a:active,
.mw-footer a:visited {
color: var(--background-link-color);
}
::placeholder {
color: var(--subtle-color);
}
a {
color: var(--link-color);
}
a:visited,
a:active {
color: var(--link-color);
}
a.new {
color: var(--redlink-color);
}
a.new:visited {
color: var(--redlink-color);
}
.mw-parser-output a.extiw,
.mw-parser-output a.external {
color: var(--link-color);
}
.mw-parser-output a.extiw:visited,
.mw-parser-output a.external:visited,
.mw-parser-output a.extiw:active,
.mw-parser-output a.external:active {
color: var(--link-color);
}
.jsPurgeLink a.external {
color: var(--link-color);
}
:root {
--errorbox-bg: #feecea;
--errorbox-border: #ee4231;
--warningbox-bg: #fef9de;
--warningbox-border: #f9d000;
--successbox-bg: #ecf8e3;
--successbox-border: #6bc71f;
}
.mw-message-box-error,
.errorbox,
.mw-message-box-warning,
.warningbox,
.mw-message-box-success,
.successbox,
.usermessage {
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
}
.mw-message-box-error,
.errorbox {
background-color: var(--errorbox-bg);
border-color: var(--errorbox-border);
}
.mw-message-box-warning,
.warningbox,
.usermessage {
background-color: var(--warningbox-bg);
border-color: var(--warningbox-border);
}
.mw-message-box-success,
.successbox {
background-color: var(--successbox-bg);
border-color: var(--successbox-border);
}
.catlinks {
background: var(--body-light);
border: 1px solid var(--body-dark);
padding: 8px 15px;
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
}
.catlinks li {
border-color: var(--body-mid);
}
.filehistory a img,
#file img {
background: url("data:image/svg+xml,%3C%3Fxml version='1.0' encoding='UTF-8'%3F%3E%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16'%3E%3Cpath d='M0 0h8v16h8V8H0z' opacity='.13'/%3E%3C/svg%3E") repeat;
}
#file img:hover {
background: none;
}
.mw-highlight {
background: none;
}
.mw-highlight .linenos {
background-color: var(--mw-code-background-color);
color: var(--body-border);
}
.mw-highlight a:hover .linenos,
.mw-highlight .hll a .linenos {
color: var(--body-dark);
}
.mw-content-ltr.mw-highlight-lines pre,
.mw-content-ltr.content .mw-highlight-lines pre {
box-shadow: inset 2.75em 0 0 var(--mw-code-background-color);
}
#pagehistory ul {
list-style: none;
margin: 0;
}
#pagehistory li {
border: 1px solid transparent;
padding: 1px 10px;
margin: 2px 0;
}
#pagehistory li.selected {
background-color: var(--body-light);
color: inherit;
border: 1px dashed var(--body-border);
outline: none;
}
#mw-history-compare > div:first-of-type {
position: -webkit-sticky;
position: sticky;
top: 0;
background-color: var(--body-main);
border-bottom: 1px solid var(--body-dark);
padding: 0.25em 0;
}
.wgl-stickyheader #mw-history-compare > div:first-of-type {
top: 2.5rem;
}
.autocomment,
.autocomment a,
.autocomment a:visited {
color: var(--link-color);
}
li span.deleted,
span.history-deleted {
color: var(--byline-color);
}
.mw-usertoollinks-contribs-no-edits,
.mw-usertoollinks-contribs-no-edits:visited {
color: var(--redlink-color);
}
.CategoryTreeToggle {
color: var(--link-color);
}
body.wgl-stickyheader.action-view .mw-headline:target::before {
display: block;
content: '';
margin-top: -3rem;
height: 3rem;
visibility: hidden;
pointer-events: none;
}
.mw-mmv-post-image {
color: var(--text-color);
background-color: var(--body-main);
}
.mw-mmv-image-metadata {
border-top-color: var(--body-mid);
background-color: var(--body-light);
}
.mw-mmv-dialog,
.mw-mmv-dialog .mw-mmv-dialog-down-arrow,
.mw-mmv-options-dialog .mw-mmv-dialog-down-arrow {
background-color: var(--body-light);
box-shadow: none;
}
.mw-mmv-options-enable-alert {
background-color: var(--body-light);
color: var(--text-color);
}
.mw-mmv-options-dialog-header,
.mw-mmv-options-text-header,
.mw-mmv-options-text-body,
.mw-mmv-options-enable-alert,
.mw-mmv-options-dialog .mw-mmv-disable-confirmation .mw-mmv-options-dialog-header,
.mw-mmv-options-dialog .mw-mmv-disable-confirmation .mw-mmv-options-text-header {
color: var(--text-color);
}
.mw-revslider-container {
border-color: var(--sidebar);
}
.mw-revslider-slider-wrapper {
border-top-color: var(--sidebar);
}
.mw-ui-button {
background-color: var(--ooui-normal);
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
}
.mw-ui-button:not(:disabled):hover,
.mw-ui-button:not(:disabled):active {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
}
.mw-ui-button:not(:disabled):focus {
color: var(--ooui-text);
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent), inset 0 0 0 2px #fff;
}
.mw-ui-button:not(:disabled):visited {
color: var(--ooui-text);
}
.mw-ui-button.mw-ui-progressive:not(:disabled) {
background-color: var(--ooui-progressive);
color: #fff;
border-color: var(--ooui-progressive);
}
.mw-ui-button.mw-ui-progressive:not(:disabled):hover {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
}
.mw-ui-button.mw-ui-progressive:not(:disabled):focus {
box-shadow: inset 0 0 0 1px var(--ooui-accent), inset 0 0 0 2px #fff;
}
.mw-ui-button.mw-ui-progressive:not(:disabled):active,
.mw-ui-button.mw-ui-progressive:not(:disabled).is-on {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
box-shadow: none;
}
.mw-ui-button.mw-ui-destructive:not( :disabled ) {
color: #fff;
}
.mw-ui-button.mw-ui-quiet,
.mw-ui-button.mw-ui-quiet.mw-ui-progressive,
.mw-ui-button.mw-ui-quiet.mw-ui-destructive {
color: var(--text-color);
}
input[type='checkbox']:hover + .mw-ui-button.mw-ui-quiet,
input[type='checkbox']:hover + .mw-ui-button.mw-ui-quiet.mw-ui-progressive,
input[type='checkbox']:hover + .mw-ui-button.mw-ui-quiet.mw-ui-destructive,
.mw-ui-button.mw-ui-quiet:hover,
.mw-ui-button.mw-ui-quiet.mw-ui-progressive:hover,
.mw-ui-button.mw-ui-quiet.mw-ui-destructive:hover {
background-color: rgba(0, 24, 73, 0.02745098);
color: var(--text-color);
border-color: transparent;
}
input[type='checkbox']:focus + .mw-ui-button.mw-ui-quiet,
input[type='checkbox']:focus + .mw-ui-button.mw-ui-quiet.mw-ui-progressive,
input[type='checkbox']:focus + .mw-ui-button.mw-ui-quiet.mw-ui-destructive,
.mw-ui-button.mw-ui-quiet:focus,
.mw-ui-button.mw-ui-quiet.mw-ui-progressive:focus,
.mw-ui-button.mw-ui-quiet.mw-ui-destructive:focus {
color: var(--text-color);
}
input[type='checkbox']:active + .mw-ui-button.mw-ui-quiet,
input[type='checkbox']:active + .mw-ui-button.mw-ui-quiet.mw-ui-progressive,
input[type='checkbox']:active + .mw-ui-button.mw-ui-quiet.mw-ui-destructive,
.mw-ui-button.mw-ui-quiet:active,
.mw-ui-button.mw-ui-quiet.mw-ui-progressive:active,
.mw-ui-button.mw-ui-quiet.mw-ui-destructive:active {
background-color: rgba(0, 36, 73, 0.08235294);
color: var(--text-color);
border-color: #72777d;
}
.mw-ui-input {
background-color: var(--ooui-input);
color: var(--text-color);
border-color: var(--ooui-input-border);
}
.mw-ui-input:hover {
border-color: var(--ooui-input-border--hover);
}
.mw-ui-input::placeholder {
color: var(--byline-color);
}
.mw-content-ltr .redirectText li:first-child {
padding: 0;
background: 0;
}
.mw-content-ltr .redirectText li:first-child::before {
content: '';
background: currentcolor;
-webkit-mask: url("filepath://Redirect-arrow.svg") no-repeat 50% 50% / contain;
mask: url("filepath://Redirect-arrow.svg") no-repeat 50% 50% / contain;
display: inline-block;
width: 47px;
height: 20px;
}
.vector-search-box-inner {
background: var(--body-main) !important;
box-shadow: inset 0 -7px 7px -7px rgba(0, 0, 0, 0.15) !important;
}
.vector-menu-dropdown .vector-menu-heading {
color: var(--vector-tab-link-color) !important;
}
.vector-menu-dropdown .vector-menu-heading:hover {
color: var(--vector-tab-link-color) !important;
}
.vector-menu-dropdown .vector-menu-heading:focus {
color: var(--vector-tab-link-color) !important;
}
:root {
--wikitable-header-bg: var(--body-dark);
--wikitable-border: var(--body-border);
--wikitable-bg: var(--body-light);
--wikitable-bg-lighter: #e9e3d6;
--wikitable-color: var(--text-color);
--table-na-background: rgba(255, 255, 255, 0.3);
--table-na-color: var(--subtle-color);
--table-yes-background: #c3e8a3;
--table-yes-color: #2e5e05;
--table-no-background: #fbc0ba;
--table-no-color: #801c13;
--table-maybe-background: #fcea94;
--table-maybe-color: #786300;
}
.wikitable {
background: var(--wikitable-bg);
color: var(--wikitable-color);
border-color: var(--wikitable-border);
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
}
.wikitable > tr > th,
.wikitable > tr > td,
.wikitable > * > tr > th,
.wikitable > * > tr > td {
border-color: var(--wikitable-border);
}
.wikitable > tr > th.table-noborder,
.wikitable > tr > td.table-noborder,
.wikitable > * > tr > th.table-noborder,
.wikitable > * > tr > td.table-noborder {
border-left-style: hidden;
border-right-style: hidden;
padding-left: 0;
padding-right: 0;
}
.wikitable > tr > th,
.wikitable > * > tr > th {
background-color: var(--wikitable-header-bg);
color: #fff;
}
.tabber .wikitable {
box-shadow: none;
}
.mw_metadata td,
.mw_metadata th {
border-color: var(--wikitable-border);
}
.mw_metadata th {
background-color: var(--wikitable-header-bg);
}
.mw_metadata td {
background-color: var(--wikitable-bg);
}
.mw-datatable {
border-color: var(--wikitable-border);
}
.mw-datatable td,
.mw-datatable th {
border-color: var(--wikitable-border);
}
.mw-datatable th {
background-color: var(--wikitable-header-bg);
}
.mw-datatable td {
background-color: var(--wikitable-bg);
}
.mw-datatable tr:hover td {
background-color: var(--wikitable-bg);
}
table.alternating-rows tr:nth-child(odd),
table.alternating-cols td:nth-child(odd) {
background: var(--wikitable-alternating-bg);
}
.table-na {
background: var(--table-na-background);
color: var(--table-na-color);
vertical-align: middle;
text-align: center;
}
.table-yes {
background: var(--table-yes-background);
color: var(--table-yes-color);
}
.table-positive {
background: var(--table-yes-background);
}
.table-no {
background: var(--table-no-background);
color: var(--table-no-color);
}
.table-negative {
background: var(--table-no-background);
}
.table-maybe {
background: var(--table-maybe-background);
color: var(--table-maybe-color);
}
#mw-allmessagestable .am_actual,
#mw-allmessagestable .am_default {
background-color: var(--wikitable-bg);
}
#mw-allmessagestable .am_default:hover,
#mw-allmessagestable .am_actual:hover,
#mw-allmessagestable tbody:hover td {
background-color: var(--wikitable-bg-lighter);
}
table.wikitable td.no-cell-spacing {
padding: 0;
height: 0;
}
table.wikitable td.no-cell-spacing table {
margin: -1px;
width: calc(100% + 2px);
height: calc(100% + 2px);
}
.plainlist ol,
.plainlist ul {
margin: 0;
}
.plainlist li {
margin-bottom: 0;
list-style: none;
}
table.align-right-1 td:nth-of-type(1),
table.align-right-2 td:nth-of-type(2),
table.align-right-3 td:nth-of-type(3),
table.align-right-4 td:nth-of-type(4),
table.align-right-5 td:nth-of-type(5),
table.align-right-6 td:nth-of-type(6),
table.align-right-7 td:nth-of-type(7),
table.align-right-8 td:nth-of-type(8),
table.align-right-9 td:nth-of-type(9),
table.align-right-10 td:nth-of-type(10),
table.align-right-11 td:nth-of-type(11),
table.align-right-12 td:nth-of-type(12),
table.align-right-13 td:nth-of-type(13),
table.align-right-14 td:nth-of-type(14),
table.align-right-15 td:nth-of-type(15),
table.align-right-16 td:nth-of-type(16),
table.align-right-17 td:nth-of-type(17),
table.align-right-18 td:nth-of-type(18),
table.align-right-19 td:nth-of-type(19),
table.align-right-20 td:nth-of-type(20) {
text-align: right;
}
table.align-center-1 td:nth-of-type(1),
table.align-center-2 td:nth-of-type(2),
table.align-center-3 td:nth-of-type(3),
table.align-center-4 td:nth-of-type(4),
table.align-center-5 td:nth-of-type(5),
table.align-center-6 td:nth-of-type(6),
table.align-center-7 td:nth-of-type(7),
table.align-center-8 td:nth-of-type(8),
table.align-center-9 td:nth-of-type(9),
table.align-center-10 td:nth-of-type(10),
table.align-center-11 td:nth-of-type(11),
table.align-center-12 td:nth-of-type(12),
table.align-center-13 td:nth-of-type(13),
table.align-center-14 td:nth-of-type(14),
table.align-center-15 td:nth-of-type(15),
table.align-center-16 td:nth-of-type(16),
table.align-center-17 td:nth-of-type(17),
table.align-center-18 td:nth-of-type(18),
table.align-center-19 td:nth-of-type(19),
table.align-center-20 td:nth-of-type(20) {
text-align: center;
}
table.align-left-1 td:nth-of-type(1),
table.align-left-2 td:nth-of-type(2),
table.align-left-3 td:nth-of-type(3),
table.align-left-4 td:nth-of-type(4),
table.align-left-5 td:nth-of-type(5),
table.align-left-6 td:nth-of-type(6),
table.align-left-7 td:nth-of-type(7),
table.align-left-8 td:nth-of-type(8),
table.align-left-9 td:nth-of-type(9),
table.align-left-10 td:nth-of-type(10),
table.align-left-11 td:nth-of-type(11),
table.align-left-12 td:nth-of-type(12),
table.align-left-13 td:nth-of-type(13),
table.align-left-14 td:nth-of-type(14),
table.align-left-15 td:nth-of-type(15),
table.align-left-16 td:nth-of-type(16),
table.align-left-17 td:nth-of-type(17),
table.align-left-18 td:nth-of-type(18),
table.align-left-19 td:nth-of-type(19),
table.align-left-20 td:nth-of-type(20) {
text-align: left;
}
:root {
--diff-addedline-border-color: #438ab5;
--diff-addedline-background: #bddff2;
--diff-addedline-color: #000;
--diff-deletedline-border-color: #379541;
--diff-deletedline-background: #c1edbf;
--diff-deletedline-color: #000;
--diff-context-border-color: var(--body-mid);
--diff-context-background: var(--body-mid);
}
.diff-context {
border-color: var(--diff-context-border-color);
background: var(--diff-context-background);
color: inherit;
}
.diff-addedline {
border-color: var(--diff-addedline-border-color);
}
.diff-addedline .diffchange {
background: var(--diff-addedline-background);
color: var(--diff-addedline-color);
}
.diff-deletedline {
border-color: var(--diff-deletedline-border-color);
}
.diff-deletedline .diffchange {
background: var(--diff-deletedline-background);
color: var(--diff-deletedline-color);
}
.mw-diff-movedpara-left:after,
.mw-diff-movedpara-right:after {
color: var(--text-color);
}
.mw-notification {
background-color: var(--body-light);
border-color: var(--body-border);
color: var(--text-color);
}
.mw-echo-ui-notificationsInboxWidget-toolbarWrapper {
background: var(--body-main);
}
.mw-body-content .mw-echo-ui-datedSubGroupListWidget-title-secondary {
color: var(--byline-color);
}
.mw-echo-ui-pageNotificationsOptionWidget.oo-ui-optionWidget-selected {
background-color: var(--ooui-normal);
color: var(--ooui-accent);
}
.mw-echo-ui-pageNotificationsOptionWidget-label-count {
background-color: var(--ooui-normal);
color: var(--byline-color);
}
.oo-ui-optionWidget-selected .mw-echo-ui-pageNotificationsOptionWidget-label-count {
color: var(--ooui-accent);
}
.mw-echo-ui-pageNotificationsOptionWidget.oo-ui-optionWidget-highlighted {
background-color: var(--ooui-normal);
color: var(--text-color);
}
.mw-echo-ui-crossWikiUnreadFilterWidget {
border-color: var(--body-border);
}
.mw-echo-ui-crossWikiUnreadFilterWidget-subtitle {
color: var(--byline-color);
}
.mw-echo-ui-notificationBadgeButtonPopupWidget-popup > .oo-ui-popupWidget-popup > .oo-ui-popupWidget-head,
.mw-echo-ui-notificationBadgeButtonPopupWidget-popup > .oo-ui-popupWidget-popup > .oo-ui-popupWidget-footer {
border-color: var(--ooui-interface-border);
}
.mw-echo-ui-notificationBadgeButtonPopupWidget-popup > .oo-ui-popupWidget-popup > .oo-ui-popupWidget-footer .mw-echo-ui-notificationBadgeButtonPopupWidget-footer-buttons .oo-ui-buttonElement:last-child {
border-left-color: var(--ooui-normal-border);
}
.mw-echo-ui-notificationItemWidget {
background-color: var(--ooui-normal);
border-color: var(--ooui-normal-border);
}
.mw-echo-ui-notificationItemWidget:hover,
.mw-echo-ui-notificationItemWidget-unread:hover {
background-color: var(--ooui-normal--hover);
}
.mw-echo-ui-notificationItemWidget:last-child {
border-bottom-color: var(--ooui-normal-border);
}
.mw-echo-ui-notificationItemWidget-unread {
background-color: var(--search-box);
}
.mw-echo-ui-crossWikiNotificationItemWidget-group,
.mw-echo-ui-bundleNotificationItemWidget-group {
background-color: var(--ooui-interface);
}
.mw-echo-ui-toggleReadCircleButtonWidget-circle {
background-color: var(--ooui-progressive);
}
.mw-echo-ui-toggleReadCircleButtonWidget:hover .mw-echo-ui-toggleReadCircleButtonWidget-circle {
background-color: var(--ooui-progressive--hover);
}
.mw-echo-ui-toggleReadCircleButtonWidget-circle-unread {
background-color: var(--ooui-normal);
border-color: var(--ooui-normal-border);
}
.mw-echo-ui-notificationItemWidget-content-message-header,
.mw-echo-ui-notificationItemWidget-content-message-body,
.mw-echo-ui-menuItemWidget > .oo-ui-buttonElement-button > .oo-ui-labelElement-label,
.mw-echo-ui-notificationItemWidget-content-actions-timestamp {
color: var(--ooui-text);
}
.mw-echo-ui-bundleNotificationItemWidget-group {
background-color: var(--body-main);
}
@keyframes unseen-fadeout-to-unread {
from {
background-color: var(--wikitable-bg-lighter);
}
to {
background-color: var(--search-box);
}
}
@keyframes unseen-fadeout-to-read {
from {
background-color: var(--wikitable-bg-lighter);
}
to {
background-color: var(--body-main);
}
}
.mwe-popups {
background: var(--body-light);
}
.mwe-popups .mwe-popups-container {
color: var(--text-color);
background: var(--body-light);
}
.mwe-popups .mwe-popups-container.flipped-x-y:before,
.mwe-popups .mwe-popups-container.flipped-y:before {
border-top: none;
}
.mwe-popups .mwe-popups-container.mwe-popups-no-image-tri:before {
border-bottom: none;
}
.mwe-popups .mwe-popups-container.flipped-x-y:after,
.mwe-popups .mwe-popups-container.flipped-y:after {
border-top-color: var(--body-light);
}
.mwe-popups .mwe-popups-container.mwe-popups-no-image-tri:after {
border-bottom-color: var(--body-light);
}
.mwe-popups .mwe-popups-settings-icon:hover,
.mwe-popups .mwe-popups-settings-icon:active {
background-color: var(--ooui-normal--hover);
}
.mwe-popups .mw-ui-icon-element:not(.disabled):hover {
background: none;
}
.mwe-popups .mwe-popups-extract {
color: var(--text-color);
}
.mwe-popups .mwe-popups-extract[dir='ltr']:after {
background-image: linear-gradient(to right, rgba(49, 62, 89, 0), var(--body-light) 50%);
}
.mwe-popups-overlay {
background-color: var(--ooui-window-background);
}
#mwe-popups-settings {
background: var(--ooui-interface);
border-color: var(--ooui-interface-border);
color: var(--text-color);
}
#mwe-popups-settings header {
border-color: var(--ooui-interface-border);
}
#mwe-popups-settings main#mwe-popups-settings-form p {
color: var(--byline-color);
}
#mwe-popups-settings main#mwe-popups-settings-form form label > span {
color: var(--ooui-text);
}
:root {
--smw-ask-options-even-bg: var(--body-mid);
--smw-ask-options-odd-bg: var(--body-light);
--smw-ask-action-btn-lblue-bg: var(--body-main);
--smw-ask-action-btn-lblue-color: #000;
--smw-ask-action-btn-lblue-border-color: var(--body-light);
--smw-ask-action-btn-dblue-bg: var(--body-light);
--smw-ask-action-btn-dblue-color: #fff;
--smw-ask-action-btn-dblue-border-color: var(--button-border);
}
.smw-ask-condition fieldset,
.smw-ask-printhead fieldset {
border-color: var(--sidebar);
}
.smw-ask-search fieldset,
.smw-ask-format fieldset,
.smw-ask-options fieldset {
border-color: var(--sidebar);
}
.strike > span:before,
.strike > span:after {
background: var(--sidebar);
}
.smw-ask-options-fields tr td {
background-color: var(--smw-ask-options-even-bg);
}
.smw-ask-options-fields tr:nth-child(odd) td {
background-color: var(--smw-ask-options-odd-bg);
}
.smw-ask-action-btn.smw-ask-action-btn-lblue,
.smw-ask-action-btn.smw-ask-action-btn-lblue:hover,
.smw-ask-action-btn.smw-ask-action-btn-lblue:visited {
background-color: var(--smw-ask-action-btn-lblue-bg);
color: var(--smw-ask-action-btn-lblue-color);
border-color: var(--smw-ask-action-btn-lblue-border-color);
}
.smw-ask-action-btn.smw-ask-action-btn-dblue,
.smw-ask-action-btn.smw-ask-action-btn-dblue:hover,
.smw-ask-action-btn.smw-ask-action-btn-dblue:visited {
background-color: var(--smw-ask-action-btn-dblue-bg);
color: var(--smw-ask-action-btn-dblue-color);
border-color: var(--smw-ask-action-btn-dblue-border-color);
}
.smw-ask-query textarea,
.smw-ask-actions textarea {
background-color: var(--ooui-interface);
border-color: var(--ooui-interface-border);
color: var(--ooui-text);
}
.smw-ask-query-format select {
background-color: var(--ooui-interface);
border: 1px solid var(--ooui-interface-border);
color: var(--ooui-text);
}
.smw-ask-toplinks {
background-color: var(--body-mid);
}
.smw-ask-toplinks span.smw-icon-info {
background: none;
padding: 0 !important;
}
.smw-ask-toplinks span.smw-icon-info::before {
content: '';
background: var(--text-color);
-webkit-mask: url("data:image/svg+xml,%3C%3Fxml version='1.0' encoding='UTF-8'%3F%3E%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 20 20'%3E%3Ctitle%3Einfo%3C/title%3E%3Cpath d='M10 0C4.477 0 0 4.477 0 10s4.477 10 10 10 10-4.477 10-10S15.523 0 10 0zM9 5h2v2H9zm0 4h2v6H9z'/%3E%3C/svg%3E") no-repeat 50% 50% / contain;
mask: url("data:image/svg+xml,%3C%3Fxml version='1.0' encoding='UTF-8'%3F%3E%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 20 20'%3E%3Ctitle%3Einfo%3C/title%3E%3Cpath d='M10 0C4.477 0 0 4.477 0 10s4.477 10 10 10 10-4.477 10-10S15.523 0 10 0zM9 5h2v2H9zm0 4h2v6H9z'/%3E%3C/svg%3E") no-repeat 50% 50% / contain;
padding: 0 0 3px 18px;
}
.smw-ask-options-row-odd {
background-color: var(--body-light);
}
.smw-ask-options-row-even {
background-color: var(--body-mid);
}
#options-toggle:not(:checked) + #options-list .options-parameter-list:after {
background-image: linear-gradient(to bottom, transparent, var(--body-mid) 90%);
}
.smw-ask-button-submit input {
background-color: var(--ooui-normal);
border-color: var(--ooui-normal-border);
color: var(--text-color);
}
.smw-ask-button-submit input:hover,
.smw-ask-button-lgrey:hover {
background-color: var(--ooui-normal--hover);
border-color: var(--ooui-normal-border);
}
input.smw-ask-action-btn.smw-ask-action-btn-dblue {
background-color: var(--ooui-normal);
border-color: var(--ooui-normal-border);
color: var(--ooui-text);
}
a.smw-ask-action-btn.smw-ask-action-btn-lblue {
background-color: var(--body-mid);
border-color: var(--body-mid);
color: var(--ooui-text);
}
a.smw-ask-action-btn.smw-ask-action-btn-lblue:visited {
background-color: var(--body-mid);
border-color: var(--body-mid);
color: var(--ooui-text);
}
a.smw-ask-action-btn.smw-ask-action-btn-lblue:hover {
background-color: var(--body-mid);
border-color: var(--body-mid);
color: var(--ooui-text);
}
a.smw-ask-action-btn-lgrey {
background-color: var(--ooui-normal);
border-color: var(--ooui-normal-border);
color: var(--ooui-text);
}
a.smw-ask-action-btn-lgrey:hover {
background-color: var(--ooui-normal--hover);
border-color: var(--ooui-normal-border);
color: var(--ooui-text);
}
.smw-callout-error {
background-color: var(--errorbox-bg);
border-color: var(--errorbox-border);
}
.smw-callout-info {
background-color: var(--body-light);
border-color: var(--body-dark);
}
.smw-callout-success {
background-color: var(--successbox-bg);
border-color: var(--successbox-border);
}
.smw-callout-warning {
background-color: var(--warningbox-bg);
border-color: var(--warningbox-bg);
}
.smw-tabs input.nav-tab:checked + label.nav-label,
.smw-tabs input.nav-tab:checked + label.nav-label:hover {
color: inherit;
}
#tab-smw-property-value:checked + label.nav-label .usage-count {
color: #fff;
background-color: var(--ooui-progressive);
}
#tab-smw-property-value:checked + label.nav-label .usage-count.moderate {
color: #fff;
background-color: #b55e0c;
border-color: #b55e0c;
}
#tab-smw-property-value:checked + label.nav-label .usage-count.high {
color: #fff;
background-color: #9f261e;
border-color: #9f261e;
}
.smw-property-page-results .header-title {
background-color: var(--ooui-interface);
border-bottom-color: var(--ooui-interface-border);
color: var(--ooui-text);
}
.smw-property-page-results .value-row:hover {
background-color: var(--ooui-normal--hover);
}
.smw-property-page-results .smw-table .header-row {
color: var(--text-color);
}
.tippy-tooltip.light-border-theme {
background-color: var(--body-light);
color: var(--text-color);
}
.tippy-tooltip.light-border-theme .tippy-arrow {
border-top-color: var(--body-light);
}
.tippy-tooltip.light-border-theme .tippy-arrow:after {
border-top-color: var(--body-light);
}
.tippy-header {
background-color: var(--body-dark);
border-bottom-color: var(--body-mid);
}
.smw-ui-input-filter {
background-color: var(--ooui-interface);
border-color: var(--ooui-interface-border);
color: var(--ooui-text);
}
.smw-ui-input-filter input {
border-left-color: var(--ooui-interface-border) !important;
color: var(--ooui-text) !important;
}
.smw-ui-pagination .page-link.link-disabled {
background-color: var(--ooui-disabled);
border-color: var(--ooui-disabled-border);
color: var(--subtle-color);
}
.smw-ui-pagination .page-link {
background-color: var(--ooui-normal);
border-color: var(--ooui-normal-border);
color: var(--link-color);
}
.smw-ui-pagination .page-link:hover {
background-color: var(--ooui-normal--hover);
border-color: var(--ooui-normal-border);
color: var(--link-color);
}
.smw-ui-pagination .page-link.link-active {
color: #fff;
background-color: var(--ooui-progressive);
border-color: var(--ooui-progressive);
}
.smw-tabs input.nav-tab:checked + label.nav-label {
border-color: var(--ooui-normal-border);
}
.smw-tabs section,
.smw-tabs .subtab-content {
border-top-color: var(--ooui-normal-border);
}
.smw-column-header {
color: var(--text-color);
}
.smw-factbox {
background: var(--body-main);
border-color: transparent;
}
.mw-body .mw-indicators #mw-indicator-smw-entity-examiner.mw-indicator .smw-indicator-vertical-bar-loader {
display: none;
}
.smwb-theme-light .smwb-title,
.smwb-theme-light .smwb-center,
.smwb-theme-light .smwb-actions,
.smwb-theme-light .smwb-prophead {
background-color: var(--body-mid);
}
.smwb-theme-light .smwb-factbox {
border-left-color: var(--body-mid);
}
.smwb-theme-light .smwb-ifactbox {
border-right-color: var(--body-mid);
}
.smwb-theme-light .smwb-propval {
background-color: var(--body-light);
}
.smwb-action-separator {
border-color: var(--wikitable-border);
}
.smwb-bottom {
border-bottom: 1px solid var(--wikitable-border);
}
.smwb-ifactbox .smwb-cell,
.smwb-factbox .smwb-cell {
border-top: 1px solid var(--wikitable-border);
}
.smwb-propvalue .smwb-prophead,
.smwb-ipropvalue .smwb-prophead,
.smwb-propvalue .smwb-propval,
.smwb-ipropvalue .smwb-propval {
font-size: 0.9em;
}
:root {
--filter-black-to-link: invert(36%) sepia(58%) saturate(433%) hue-rotate(344deg) brightness(100%) contrast(91%);
}
#bodyContent span.smwbrowse a {
color: black;
background-image: url('filepath://Smwbrowse.svg');
filter: var(--filter-black-to-link);
}
#bodyContent span.smwbrowse a:hover {
color: black;
background-image: url('filepath://Smwbrowse-hover.svg');
text-decoration: underline;
}
#bodyContent span.smwsearch a {
color: black;
filter: var(--filter-black-to-link);
background-image: url('filepath://Smwsearch.svg');
}
#bodyContent span.smwsearch a:hover {
color: black;
background-image: url('filepath://Smwsearch-hover.svg');
text-decoration: underline;
}
:root {
--tabber-tab-bg: var(--body-light);
--tabber-tab-border-color: var(--body-border);
--tabber-active-tab-bg: var(--body-light);
--tabber-active-tab-color: var(--text-color);
--tabber-active-tab-hover-bg: var(--body-light);
--tabber-active-tab-hover-border-color: var(--body-border);
--tabber-active-tab-hover-color: var(--text-color);
--tabber-active-tab-border-hider-color: var(--body-light);
--tabber-inactive-tab-bg: var(--body-background-color);
--tabber-inactive-tab-border-color: var(--body-border);
--tabber-inactive-tab-color: var(--text-color);
--tabber-inactive-tab-hover-bg: var(--body-light);
--tabber-inactive-tab-hover-border-color: var(--body-border);
}
.tabber {
margin: 1em 0;
}
.tabber .tabbertab {
background-color: var(--tabber-tab-bg);
border: 1px solid var(--tabber-tab-border-color);
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
padding: 1em 1.5em;
}
ul.tabbernav {
border: none;
margin-left: 2em;
margin-bottom: 0;
margin-right: 2em;
padding: 0;
font-family: inherit;
}
ul.tabbernav li.tabberactive > a {
background-color: var(--tabber-active-tab-bg);
color: var(--tabber-active-tab-color);
border-bottom: none;
position: relative;
}
ul.tabbernav li.tabberactive > a:hover {
color: var(--tabber-active-tab-hover-color);
background-color: var(--tabber-active-tab-hover-bg);
border-color: var(--tabber-active-tab-hover-border-color);
border-bottom: none;
}
ul.tabbernav li.tabberactive > a::after {
content: '';
position: absolute;
left: 0;
right: 0;
bottom: -1px;
border-bottom: 2px solid var(--tabber-active-tab-border-hider-color);
}
ul.tabbernav li a {
background-color: var(--tabber-inactive-tab-bg);
border-bottom: transparent;
border-color: var(--tabber-inactive-tab-border-color);
color: var(--tabber-inactive-tab-color);
display: inline-block;
font-size: 110%;
padding: 0.5em 1em;
}
ul.tabbernav li a:hover {
background-color: var(--tabber-inactive-tab-hover-bg);
border-color: var(--tabber-inactive-tab-hover-border-color);
}
ul.tabbernav li a:link,
ul.tabbernav li a:visited {
color: var(--tabber-inactive-tab-color);
}
:root {
--ooui-text: var(--text-color);
--ooui-interface: var(--body-light);
--ooui-interface-border: var(--body-border);
--ooui-window-background: rgba(255, 255, 255, 0.5);
--ooui-normal: #cdb3a6;
--ooui-normal--hover: #d8c4ba;
--ooui-normal-border: #d1b9ad;
--ooui-progressive: #936243;
--ooui-progressive--hover: #b27a57;
--ooui-accent: var(--link-color);
--ooui-input: #fff;
--ooui-input-border: #d1b9ad;
--ooui-input-border--hover: #ae846f;
--ooui-disabled: #ece3de;
--ooui-disabled-border: #e3d5ce;
--ooui-disabled-text: var(--subtle-color);
--ooui-pending-background-image: repeating-linear-gradient(-45deg, var(--search-box), var(--search-box) 20px, var(--body-main) 20px, var(--body-main) 30px);
}
.oo-ui-widget {
color: var(--ooui-text);
}
.oo-ui-checkboxInputWidget [type='checkbox'] + span,
.oo-ui-radioInputWidget [type='radio'] + span {
background-color: var(--ooui-input);
border-color: var(--ooui-input-border);
}
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:checked + span,
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:indeterminate + span {
background-color: var(--ooui-progressive);
border-color: var(--ooui-progressive);
}
.oo-ui-radioInputWidget.oo-ui-widget-enabled [type='radio']:checked + span {
border-color: var(--ooui-progressive);
}
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:checked:hover + span,
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:indeterminate:hover + span {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
}
.oo-ui-radioInputWidget.oo-ui-widget-enabled [type='radio']:checked:hover + span {
border-color: var(--ooui-progressive--hover);
}
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:hover + span,
.oo-ui-radioInputWidget.oo-ui-widget-enabled [type='radio']:hover + span {
border-color: var(--ooui-accent);
}
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:focus + span {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:active + span,
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:checked:active + span,
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:indeterminate:active + span {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
box-shadow: inset 0 0 0 1px var(--ooui-progressive--hover);
}
.oo-ui-radioInputWidget.oo-ui-widget-enabled [type='radio']:active + span {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
}
.oo-ui-radioInputWidget.oo-ui-widget-enabled [type='radio']:checked:active + span {
border-color: var(--ooui-progressive--hover);
box-shadow: inset 0 0 0 1px var(--ooui-progressive--hover);
}
.oo-ui-radioInputWidget.oo-ui-widget-enabled [type='radio']:checked:active + span:before {
border-color: var(--ooui-progressive--hover);
}
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:checked:focus + span,
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:indeterminate:focus + span {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent), inset 0 0 0 2px #fff;
}
.oo-ui-checkboxInputWidget [type='checkbox']:disabled + span,
.oo-ui-radioInputWidget [type='radio']:disabled + span {
background-color: var(--ooui-disabled);
border-color: var(--ooui-disabled);
}
.oo-ui-dropdownWidget-handle {
border-color: var(--ooui-normal-border);
}
.oo-ui-dropdownWidget.oo-ui-widget-enabled .oo-ui-dropdownWidget-handle {
background-color: var(--ooui-normal);
color: var(--ooui-text);
}
.oo-ui-dropdownWidget.oo-ui-widget-enabled .oo-ui-dropdownWidget-handle:hover {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
}
.oo-ui-dropdownWidget.oo-ui-widget-enabled .oo-ui-dropdownWidget-handle:active {
color: var(--ooui-text);
}
.oo-ui-dropdownWidget.oo-ui-widget-enabled .oo-ui-dropdownWidget-handle:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-dropdownWidget.oo-ui-widget-enabled.oo-ui-dropdownWidget-open .oo-ui-dropdownWidget-handle {
background-color: var(--ooui-normal--hover);
}
.oo-ui-dropdownWidget.oo-ui-widget-disabled .oo-ui-dropdownWidget-handle {
color: var(--ooui-disabled-text);
text-shadow: none;
border-color: var(--ooui-disabled-border);
background-color: var(--ooui-disabled);
}
.oo-ui-dropdownInputWidget select {
border-color: var(--ooui-normal-border);
}
.oo-ui-dropdownInputWidget option {
background-color: var(--ooui-interface);
}
.oo-ui-dropdownInputWidget.oo-ui-widget-enabled {
background-color: var(--ooui-normal);
}
.oo-ui-dropdownInputWidget.oo-ui-widget-enabled:hover {
background-color: var(--ooui-normal--hover);
}
.oo-ui-dropdownInputWidget.oo-ui-widget-enabled select {
color: var(--ooui-text);
}
.oo-ui-dropdownInputWidget.oo-ui-widget-enabled select:hover,
.oo-ui-dropdownInputWidget.oo-ui-widget-enabled select:active {
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
}
.oo-ui-dropdownInputWidget.oo-ui-widget-enabled select:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-labelWidget.oo-ui-inline-help {
color: var(--byline-color);
}
.oo-ui-menuSelectWidget {
background-color: var(--ooui-interface);
border-color: var(--ooui-interface-border);
}
.oo-ui-menuSelectWidget-frameless {
box-shadow: inset 0 -1px 0 0 var(--ooui-normal-border);
}
.oo-ui-menuSectionOptionWidget {
color: var(--byline-color);
}
.oo-ui-menuOptionWidget.oo-ui-optionWidget-highlighted,
.oo-ui-menuOptionWidget.oo-ui-optionWidget-selected {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
}
.oo-ui-menuOptionWidget.oo-ui-optionWidget-selected.oo-ui-menuOptionWidget.oo-ui-optionWidget-highlighted,
.oo-ui-menuOptionWidget.oo-ui-optionWidget-pressed.oo-ui-menuOptionWidget.oo-ui-optionWidget-highlighted {
color: var(--ooui-accent);
}
.oo-ui-menuOptionWidget.oo-ui-widget-enabled.oo-ui-optionWidget {
color: var(--ooui-text);
}
.oo-ui-messageDialog-title {
color: inherit;
}
.oo-ui-messageWidget.oo-ui-messageWidget-block.oo-ui-flaggedElement-error {
background-color: var(--errorbox-bg);
border-color: var(--errorbox-border);
}
.oo-ui-messageWidget.oo-ui-messageWidget-block.oo-ui-flaggedElement-warning {
background-color: var(--warningbox-bg);
border-color: var(--warningbox-border);
}
.oo-ui-messageWidget.oo-ui-messageWidget-block.oo-ui-flaggedElement-success {
background-color: var(--successbox-bg);
border-color: var(--successbox-border);
}
.oo-ui-messageWidget.oo-ui-messageWidget-block.oo-ui-flaggedElement-notice {
background-color: var(--messagebox-info-background);
border-color: var(--messagebox-info-border);
}
.oo-ui-messageWidget.oo-ui-flaggedElement-error:not(.oo-ui-messageWidget-block),
.oo-ui-messageWidget.oo-ui-flaggedElement-success:not(.oo-ui-messageWidget-block) {
color: var(--ooui-text);
}
.oo-ui-optionWidget.oo-ui-widget-disabled {
color: var(--ooui-disabled-text);
}
.oo-ui-outlineControlsWidget {
background-color: var(--ooui-normal);
}
.oo-ui-outlineOptionWidget.oo-ui-optionWidget-highlighted {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
}
.oo-ui-popupWidget-popup {
background-color: var(--ooui-interface);
border-color: var(--ooui-interface-border);
}
.oo-ui-popupWidget-anchored-top .oo-ui-popupWidget-anchor:after {
border-bottom-color: var(--ooui-interface);
}
.oo-ui-popupWidget-anchored-top .oo-ui-popupWidget-anchor:before {
border-bottom-color: var(--ooui-interface-border);
}
.oo-ui-popupWidget-anchored-bottom .oo-ui-popupWidget-anchor:after {
border-top-color: var(--ooui-interface);
}
.oo-ui-popupWidget-anchored-bottom .oo-ui-popupWidget-anchor:before {
border-top-color: var(--ooui-interface-border);
}
.oo-ui-popupWidget-anchored-start .oo-ui-popupWidget-anchor:after {
border-right-color: var(--ooui-interface);
}
.oo-ui-popupWidget-anchored-start .oo-ui-popupWidget-anchor:before {
border-right-color: var(--ooui-interface-border);
}
.oo-ui-popupWidget-anchored-end .oo-ui-popupWidget-anchor:after {
border-left-color: var(--ooui-interface);
}
.oo-ui-popupWidget-anchored-end .oo-ui-popupWidget-anchor:before {
border-left-color: var(--ooui-interface-border);
}
.oo-ui-searchWidget-query {
border-bottom-color: var(--ooui-interface-border);
}
.oo-ui-selectFileWidget-dropTarget {
background-color: var(--ooui-interface);
border-color: var(--ooui-interface-border);
}
.oo-ui-selectFileWidget.oo-ui-widget-enabled.oo-ui-selectFileWidget-dropTarget {
background-color: var(--ooui-interface);
}
.oo-ui-selectFileWidget.oo-ui-widget-enabled.oo-ui-selectFileWidget-dropTarget:hover {
border-color: var(--ooui-input-border--hover);
}
.oo-ui-tabOptionWidget {
color: var(--ooui-text);
}
.oo-ui-tabSelectWidget-framed .oo-ui-tabOptionWidget.oo-ui-optionWidget-selected {
background-color: var(--body-dark);
color: var(--ooui-text);
}
.oo-ui-tabSelectWidget-framed .oo-ui-tabOptionWidget.oo-ui-optionWidget-selected .oo-ui-labelElement-label {
border-bottom-color: var(--body-border);
}
.oo-ui-tabSelectWidget-framed .oo-ui-tabOptionWidget.oo-ui-widget-enabled:hover,
.oo-ui-tabSelectWidget-framed .oo-ui-tabOptionWidget.oo-ui-widget-enabled:active {
background-color: var(--body-light);
color: var(--ooui-text);
}
.oo-ui-tabSelectWidget-framed .oo-ui-tabOptionWidget.oo-ui-widget-enabled.oo-ui-optionWidget-selected:hover {
background-color: var(--body-dark);
}
.oo-ui-tabSelectWidget-frameless .oo-ui-tabOptionWidget.oo-ui-optionWidget-selected {
color: var(--ooui-progressive);
box-shadow: inset 0 -2px 0 0 var(--ooui-progressive);
}
.oo-ui-tabSelectWidget-frameless .oo-ui-tabOptionWidget.oo-ui-optionWidget-selected:hover,
.oo-ui-tabSelectWidget-frameless .oo-ui-tabOptionWidget.oo-ui-optionWidget-selected:focus {
color: var(--ooui-progressive--hover);
box-shadow: inset 0 -2px 0 0 var(--ooui-progressive--hover);
}
.oo-ui-tabSelectWidget-framed {
background: none;
border-bottom: 1px solid var(--ooui-interface-border);
}
.oo-ui-tabSelectWidget-frameless {
box-shadow: inset 0 -1px 0 0 var(--ooui-interface-border);
}
.oo-ui-tabSelectWidget-mobile {
}
.oo-ui-tabSelectWidget-mobile.oo-ui-tabSelectWidget-framed:after {
background: var(--mobile-navbox-linear-gradient);
}
.oo-ui-tabSelectWidget-mobile.oo-ui-tabSelectWidget-frameless:after {
background: var(--mobile-navbox-linear-gradient);
}
.oo-ui-tagItemWidget {
border-color: var(--ooui-normal-border);
}
.oo-ui-tagItemWidget.oo-ui-widget-enabled {
color: var(--ooui-text);
}
.oo-ui-tagItemWidget.oo-ui-widget-enabled:hover {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
}
.oo-ui-tagItemWidget.oo-ui-widget-enabled:not( .oo-ui-tagItemWidget-fixed ) {
background-color: var(--ooui-normal);
}
.oo-ui-tagItemWidget.oo-ui-widget-enabled .oo-ui-buttonElement-button:hover {
background-color: var(--ooui-normal--hover);
}
.oo-ui-tagMultiselectWidget.oo-ui-widget-enabled {
background-color: var(--ooui-interface);
}
.oo-ui-tagMultiselectWidget.oo-ui-widget-enabled.oo-ui-tagMultiselectWidget-outlined {
background-color: var(--ooui-normal);
}
.oo-ui-tagMultiselectWidget.oo-ui-widget-enabled.oo-ui-tagMultiselectWidget-outlined .oo-ui-tagItemWidget.oo-ui-widget-enabled {
background-color: var(--ooui-interface);
}
.oo-ui-textInputWidget .oo-ui-inputWidget-input {
background-color: var(--ooui-input);
color: var(--ooui-text);
border-color: var(--ooui-input-border);
}
.oo-ui-textInputWidget.oo-ui-widget-enabled .oo-ui-inputWidget-input::placeholder {
color: var(--subtle-color);
}
.oo-ui-textInputWidget.oo-ui-widget-enabled .oo-ui-inputWidget-input:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-textInputWidget.oo-ui-widget-enabled .oo-ui-inputWidget-input[readonly]:not(.oo-ui-pendingElement-pending) {
background-color: var(--ooui-disabled);
color: var(--ooui-disabled-text);
}
.oo-ui-textInputWidget.oo-ui-widget-enabled:hover .oo-ui-inputWidget-input {
border-color: var(--ooui-input-border--hover);
}
.oo-ui-textInputWidget.oo-ui-widget-enabled:hover .oo-ui-inputWidget-input:focus {
border-color: var(--ooui-accent);
}
@media screen and (min-width: 0) {
.oo-ui-textInputWidget.oo-ui-widget-enabled textarea.oo-ui-inputWidget-input:focus {
outline: 1px solid var(--ooui-accent);
}
}
.oo-ui-textInputWidget.oo-ui-widget-disabled .oo-ui-inputWidget-input {
background-color: var(--ooui-disabled);
color: var(--ooui-disabled-text);
text-shadow: none;
border-color: var(--ooui-disabled-border);
}
.oo-ui-toggleSwitchWidget {
background-color: var(--ooui-input);
border-color: var(--ooui-input-border);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled .oo-ui-toggleSwitchWidget-grip {
background-color: var(--ooui-input);
border-color: var(--ooui-input-border);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:hover {
background-color: var(--ooui-input);
border-color: var(--ooui-accent);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:hover .oo-ui-toggleSwitchWidget-grip {
background-color: var(--ooui-input);
border-color: var(--ooui-accent);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:active,
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:active:hover,
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:active:focus {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
box-shadow: inset 0 0 0 1px var(--ooui-progressive--hover);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:active .oo-ui-toggleSwitchWidget-grip,
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:active:hover .oo-ui-toggleSwitchWidget-grip,
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:active:focus .oo-ui-toggleSwitchWidget-grip {
background-color: var(--ooui-input);
border-color: var(--ooui-input);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:focus .oo-ui-toggleSwitchWidget-grip {
border-color: var(--ooui-accent);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled.oo-ui-toggleWidget-on {
background-color: var(--ooui-progressive);
border-color: var(--ooui-progressive);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled.oo-ui-toggleWidget-on .oo-ui-toggleSwitchWidget-grip {
background-color: var(--ooui-input);
border-color: var(--ooui-input);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled.oo-ui-toggleWidget-on:hover {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled.oo-ui-toggleWidget-on:active,
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled.oo-ui-toggleWidget-on:active:hover {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled.oo-ui-toggleWidget-on:focus {
border-color: var(--ooui-progressive);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled.oo-ui-toggleWidget-on:focus::before {
border-color: #fff;
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-disabled {
background-color: var(--ooui-disabled);
border-color: var(--ooui-disabled);
}
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled > .oo-ui-buttonElement-button {
color: var(--ooui-text);
}
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled > .oo-ui-buttonElement-button:hover {
color: var(--ooui-text);
}
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled > .oo-ui-buttonElement-button:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled.oo-ui-buttonElement-pressed > input.oo-ui-buttonElement-button,
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled > .oo-ui-buttonElement-button:active {
color: var(--ooui-text);
}
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button,
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button:hover {
color: var(--ooui-text);
}
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button:active,
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive.oo-ui-buttonElement-pressed > .oo-ui-buttonElement-button {
color: var(--ooui-text);
border-color: var(--ooui-text);
}
.oo-ui-buttonElement-frameless.oo-ui-widget-disabled > .oo-ui-buttonElement-button {
color: var(--ooui-disabled-text);
}
.oo-ui-buttonElement-framed.oo-ui-widget-disabled > .oo-ui-buttonElement-button {
background-color: var(--ooui-disabled);
border-color: var(--ooui-disabled-border);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled > .oo-ui-buttonElement-button {
background-color: var(--ooui-normal);
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled > .oo-ui-buttonElement-button:hover {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled > .oo-ui-buttonElement-button:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-buttonElement-active > .oo-ui-buttonElement-button {
background-color: var(--ooui-progressive--hover);
color: #fff;
border-color: var(--ooui-progressive--hover);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-buttonElement-active > .oo-ui-buttonElement-button:focus {
border-color: var(--ooui-progressive--hover);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled > .oo-ui-buttonElement-button:active,
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-buttonElement-pressed > .oo-ui-buttonElement-button {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive {
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button {
color: var(--ooui-text);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button:hover {
background-color: var(--ooui-normal--hover);
border-color: var(--ooui-progressive--hover);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-destructive > .oo-ui-buttonElement-button {
color: var(--ooui-text);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-destructive > .oo-ui-buttonElement-button:hover {
background-color: var(--ooui-normal--hover);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button {
background-color: var(--ooui-progressive);
border-color: var(--ooui-progressive);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button:hover {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent), inset 0 0 0 2px #fff;
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button:active,
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive.oo-ui-buttonElement-pressed > .oo-ui-buttonElement-button,
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive.oo-ui-buttonElement-active > .oo-ui-buttonElement-button,
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive.oo-ui-popupToolGroup-active > .oo-ui-buttonElement-button {
color: #fff;
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
}
.oo-ui-pendingElement-pending {
background-image: var(--ooui-pending-background-image);
background-size: 200%;
animation: oo-ui-pendingElement-stripes 6s linear infinite;
}
@keyframes oo-ui-pendingElement-stripes {
100% {
background-position: 100%;
}
}
.oo-ui-messageDialog-content > .oo-ui-window-foot {
outline-color: var(--ooui-interface-border);
}
.oo-ui-messageDialog-message {
color: var(--ooui-text);
}
.oo-ui-messageDialog-actions-horizontal .oo-ui-actionWidget {
border-right-color: var(--ooui-interface-border);
}
.oo-ui-messageDialog-actions-vertical .oo-ui-actionWidget {
border-bottom-color: var(--ooui-interface-border);
}
.oo-ui-processDialog-content .oo-ui-window-head,
.oo-ui-processDialog-content .oo-ui-window-foot {
outline-color: var(--ooui-interface-border);
}
.oo-ui-processDialog .oo-ui-actionWidget > .oo-ui-buttonElement-button {
border-top-color: transparent;
border-bottom-color: transparent;
}
.oo-ui-processDialog .oo-ui-actionWidget > .oo-ui-buttonElement-button:hover,
.oo-ui-processDialog .oo-ui-actionWidget > .oo-ui-buttonElement-button:active {
border-top-color: transparent;
border-bottom-color: transparent;
}
.oo-ui-processDialog .oo-ui-actionWidget:not( .oo-ui-flaggedElement-progressive ):not( .oo-ui-flaggedElement-destructive ) > .oo-ui-buttonElement-button:hover,
.oo-ui-processDialog .oo-ui-actionWidget:not( .oo-ui-flaggedElement-progressive ):not( .oo-ui-flaggedElement-destructive ) > .oo-ui-buttonElement-button:active {
border-right-color: var(--ooui-interface-border);
border-left-color: transparent;
}
.oo-ui-processDialog .oo-ui-actionWidget:not( .oo-ui-flaggedElement-progressive ):not( .oo-ui-flaggedElement-destructive ) > .oo-ui-buttonElement-button:focus {
border-color: var(--ooui-accent);
}
.oo-ui-processDialog-actions-safe .oo-ui-actionWidget > .oo-ui-buttonElement-button,
.oo-ui-processDialog-actions-other .oo-ui-actionWidget > .oo-ui-buttonElement-button {
border-right-color: var(--ooui-normal-border);
border-left-color: transparent;
}
.oo-ui-processDialog-actions-safe .oo-ui-widget-enabled.oo-ui-iconElement:not( .oo-ui-labelElement ) > .oo-ui-buttonElement-button:hover {
background-color: var(--ooui-normal--hover);
border-right-color: var(--ooui-interface-border);
}
.oo-ui-windowManager-modal > .oo-ui-dialog {
background-color: var(--ooui-window-background);
}
.oo-ui-windowManager-modal > .oo-ui-dialog > .oo-ui-window-frame {
background-color: var(--ooui-interface);
}
.oo-ui-windowManager-modal.oo-ui-windowManager-floating > .oo-ui-dialog > .oo-ui-window-frame {
border-color: var(--ooui-interface-border);
}
.oo-ui-window {
color: var(--ooui-text);
}
.oo-ui-toolbar-bar {
background-color: var(--ooui-interface);
color: var(--ooui-text);
}
.oo-ui-toolbar-position-top > .oo-ui-toolbar-bar {
border-bottom-color: var(--body-mid);
}
.oo-ui-toolbar-bar .oo-ui-bookletLayout > .oo-ui-menuLayout-menu {
border-right-color: var(--body-mid);
}
.oo-ui-tool.oo-ui-widget-enabled > .oo-ui-tool-link:hover {
background-color: var(--ooui-normal--hover);
}
.oo-ui-tool.oo-ui-widget-enabled > .oo-ui-tool-link:focus {
outline: 1px solid var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-tool.oo-ui-widget-enabled > .oo-ui-tool-link:active,
.oo-ui-tool.oo-ui-widget-enabled.oo-ui-tool-active > .oo-ui-tool-link,
.oo-ui-tool.oo-ui-widget-enabled.oo-ui-popupToolGroup-active > .oo-ui-tool-link {
background-color: var(--ooui-normal--hover);
color: var(--ooui-accent);
box-shadow: none;
}
.oo-ui-tool.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive > .oo-ui-tool-link {
background-color: var(--ooui-progressive);
}
.oo-ui-tool.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive > .oo-ui-tool-link:hover {
background-color: var(--ooui-progressive--hover);
}
.oo-ui-tool.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive > .oo-ui-tool-link:focus {
box-shadow: inset 0 0 0 1px var(--ooui-accent), inset 0 0 0 2px #fff;
}
.oo-ui-tool.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive > .oo-ui-tool-link:active,
.oo-ui-tool.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive.oo-ui-tool-active > .oo-ui-tool-link {
background-color: var(--ooui-progressive--hover);
}
.oo-ui-listToolGroup-tools .oo-ui-tool.oo-ui-widget-enabled {
background-color: var(--ooui-normal);
}
.oo-ui-listToolGroup-tools .oo-ui-tool.oo-ui-widget-enabled:hover {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
}
.oo-ui-listToolGroup-tools .oo-ui-tool-active.oo-ui-widget-enabled .oo-ui-tool-link .oo-ui-tool-title {
color: var(--ooui-progressive);
}
.oo-ui-menuToolGroup {
border-left-color: var(--body-mid);
border-right-color: var(--body-mid);
}
.oo-ui-popupToolGroup-tools {
background-color: var(--ooui-interface);
border-color: var(--body-mid);
}
.oo-ui-popupToolGroup.oo-ui-widget-enabled > .oo-ui-popupToolGroup-handle:hover {
background-color: var(--ooui-normal--hover);
}
.oo-ui-popupToolGroup.oo-ui-widget-enabled > .oo-ui-popupToolGroup-handle:focus {
outline: 1px solid var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-toolbar-actions .oo-ui-popupToolGroup.oo-ui-widget-enabled > .oo-ui-popupToolGroup-handle:hover {
border-right-color: var(--ooui-normal--hover);
}
.oo-ui-popupToolGroup-tools .oo-ui-tool.oo-ui-widget-enabled .oo-ui-tool-link:focus {
box-shadow: inset 0 0 0 2px var(--ooui-accent);
}
.oo-ui-popupToolGroup-tools .oo-ui-tool-active.oo-ui-widget-enabled .oo-ui-tool-link .oo-ui-tool-title {
color: var(--ooui-progressive);
}
.oo-ui-popupToolGroup.oo-ui-popupToolGroup-active > .oo-ui-popupToolGroup-handle {
background-color: var(--ooui-normal);
color: var(--ooui-accent);
}
.oo-ui-popupToolGroup.oo-ui-popupToolGroup-active > .oo-ui-popupToolGroup-handle:hover {
background-color: var(--ooui-normal--hover);
color: var(--ooui-accent);
}
.oo-ui-bookletLayout-outlinePanel > .oo-ui-outlineControlsWidget {
border-top-color: var(--ooui-interface-border);
}
.oo-ui-bookletLayout > .oo-ui-menuLayout-menu {
border-right-color: var(--ooui-interface-border);
}
.oo-ui-fieldLayout-disabled > .oo-ui-fieldLayout-body > .oo-ui-fieldLayout-header > .oo-ui-labelElement-label {
color: var(--ooui-disabled-text);
}
.oo-ui-panelLayout-framed {
border-color: var(--sidebar);
}
.oo-ui-icon-settings {
background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' width='20' height='20' viewBox='0 0 20 20'%3E%3Ctitle%3Esettings%3C/title%3E%3Cg transform='translate(10 10)'%3E%3Cpath id='a' d='M1.5-10h-3l-1 6.5h5m0 7h-5l1 6.5h3'/%3E%3Cuse xlink:href='%23a' transform='rotate(45)'/%3E%3Cuse xlink:href='%23a' transform='rotate(90)'/%3E%3Cuse xlink:href='%23a' transform='rotate(135)'/%3E%3C/g%3E%3Cpath d='M10 2.5a7.5 7.5 0 0 0 0 15 7.5 7.5 0 0 0 0-15v4a3.5 3.5 0 0 1 0 7 3.5 3.5 0 0 1 0-7'/%3E%3C/svg%3E");
}
.oo-ui-icon-clear {
background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 20 20'%3E%3Ctitle%3Eclear%3C/title%3E%3Cpath d='M10 0a10 10 0 1 0 10 10A10 10 0 0 0 10 0zm5.66 14.24-1.41 1.41L10 11.41l-4.24 4.25-1.42-1.42L8.59 10 4.34 5.76l1.42-1.42L10 8.59l4.24-4.24 1.41 1.41L11.41 10z'/%3E%3C/svg%3E");
}
.mw-widget-dateInputWidget-handle {
background-color: var(--ooui-input);
color: var(--ooui-text);
border-color: var(--ooui-input-border);
}
.mw-widget-dateInputWidget-calendar {
background-color: var(--ooui-interface);
}
.mw-widget-dateInputWidget.oo-ui-widget-enabled .mw-widget-dateInputWidget-handle:hover {
border-color: var(--ooui-input-border--hover);
}
.mw-widget-calendarWidget {
border-color: var(--ooui-interface-border);
}
.mw-widget-calendarWidget:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.mw-widget-calendarWidget-day,
.mw-widget-calendarWidget-day-heading {
color: var(--ooui-text);
}
.mw-widget-calendarWidget-day-additional {
color: var(--ooui-text);
opacity: 0.67;
}
.mw-widget-calendarWidget-day-today {
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.mw-widget-calendarWidget-item:hover {
background-color: var(--ooui-progressive);
}
.mw-widget-calendarWidget-item-selected {
background-color: var(--ooui-progressive--hover);
}
.mw-widgets-datetime-calendarWidget {
background-color: var(--ooui-interface);
border-color: var(--ooui-interface-border);
}
.mw-widgets-datetime-calendarWidget:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent), 0 2px 2px 0 rgba(0, 0, 0, 0.25);
}
.mw-widgets-datetime-calendarWidget-grid .mw-widgets-datetime-calendarWidget-cell.mw-widgets-datetime-calendarWidget-extra .oo-ui-buttonElement-button .oo-ui-labelElement-label {
color: var(--subtle-color);
}
.mw-widgets-datetime-calendarWidget-grid .mw-widgets-datetime-calendarWidget-cell.mw-widgets-datetime-calendarWidget-selected .oo-ui-buttonElement-button {
background-color: var(--ooui-progressive--hover);
}
.mw-widgets-datetime-dateTimeInputWidget-handle {
background-color: var(--ooui-input);
color: var(--ooui-text);
border-color: var(--ooui-input-border);
}
.mw-widgets-datetime-dateTimeInputWidget.oo-ui-widget-enabled.mw-widgets-datetime-dateTimeInputWidget-handle:hover {
border-color: var(--ooui-input-border--hover);
}
.mw-widgets-datetime-dateTimeInputWidget.oo-ui-widget-enabled:hover input,
.mw-widgets-datetime-dateTimeInputWidget.oo-ui-widget-enabled:hover textarea {
border-color: var(--ooui-input-border--hover);
}
.mw-widgets-datetime-dateTimeInputWidget.oo-ui-widget-enabled .mw-widgets-datetime-dateTimeInputWidget-editField:hover {
background-color: var(--ooui-normal);
}
.ve-activated .ve-init-mw-desktopArticleTarget-originalContent #catlinks:hover {
background: var(--ooui-normal--hover);
}
.ve-ui-overlay {
font-family: inherit;
}
.oo-ui-toolbar-position-top .ve-ui-toolbarDialog-position-above {
border-top-color: var(--body-mid);
}
.ve-ce-branchNode-blockSlug,
.ve-ce-branchNode-newSlug {
outline-color: var(--body-border);
background-color: var(--ooui-interface);
}
.ve-ui-specialCharacterPage h3 {
color: var(--byline-color);
}
.ve-ui-specialCharacterPage-character {
border-color: var(--body-mid);
}
.ve-ui-specialCharacterPage-character:hover {
border-color: var(--body-dark);
}
.ve-ce-linkAnnotation.ve-ce-annotation-active {
box-shadow: 0 0 0 1px var(--body-mid);
background: none;
}
.ve-ui-desktopContext .ve-ui-linkContextItem .ve-ui-linkContextItem-label {
border-color: var(--body-border);
}
.ve-ui-mwHelpPopupTool-version-label,
.ve-ui-mwHelpPopupTool-version-link,
.ve-ui-mwHelpPopupTool-version-date {
color: var(--byline-color);
}
.ve-ce-tableCellableNode {
border-color: var(--body-mid);
}
.ve-ce-mwReferencesListNode-muted {
color: var(--byline-color);
}
.ve-ui-mwTemplatePage-description,
.ve-ui-mwParameterPage-label,
.ve-ui-mwParameterPage-description-required,
.ve-ui-mwParameterPage-description-deprecated {
color: var(--byline-color);
}
.mw-widget-titleWidget-menu .mw-widget-titleOptionWidget-description {
color: var(--byline-color);
}
.ve-ui-mwGalleryDialog-menuLayout > .oo-ui-menuLayout-menu,
.ve-ui-mwGalleryDialog-innerMenuLayout > .oo-ui-menuLayout-menu,
.ve-ui-mwGalleryDialog .ve-ui-mwGalleryDialog-image-container,
.ve-ui-targetWidget {
border-color: var(--body-border);
}
.ve-ui-targetWidget:not(.oo-ui-pendingElement-pending) {
background-color: var(--body-main);
}
.ve-ui-mwSaveDialog {
color: var(--ooui-text);
}
.ve-ui-mwSaveDialog-options {
background-color: var(--ooui-interface);
border-color: var(--body-border);
}
.ve-ui-mwSaveDialog-summary {
background-color: var(--ooui-input);
}
.ve-ui-mwSaveDialog-editSummary-count {
border-color: var(--body-border);
}
.ve-ui-mwSaveDialog-license {
color: var(--byline-color);
}
.ve-ui-mwReferenceContextItem-muted {
color: var(--byline-color);
}
.ve-ui-mwNoticesPopupTool-items > div:not(:first-child),
.ve-ui-mwHelpPopupTool-item:not(:first-child) {
border-color: var(--body-border);
}
.ve-ui-mwTransclusionOutlineControlsWidget {
background-color: var(--ooui-interface);
border-top-color: var(--body-border);
}
.ve-ui-mwTransclusionOutlineTemplateWidget-sticky {
background-color: var(--ooui-interface);
}
.ve-ui-mwTransclusionOutlineTemplateWidget .ve-ui-mwTransclusionOutlineParameterWidget.oo-ui-optionWidget-highlighted {
color: var(--ooui-text);
}
.ve-ui-mwTransclusionOutlineTemplateWidget-no-template-parameters {
color: var(--subtle-color);
}
.ve-ui-mwParameterPage-undocumentedLabel {
color: var(--subtle-color);
}
.ve-ui-mwTwoPaneTransclusionDialogLayout > .oo-ui-menuLayout-menu {
border-right: var(--body-border);
}
.ve-ui-mwParameterPage-doc-required,
.ve-ui-mwParameterPage-doc-deprecated,
.ve-ui-mwParameterPage-inlineDescription .ve-ui-mwParameterPage-doc-example {
color: var(--byline-color);
}
.ve-ui-expandableContent-toggle {
background-color: var(--ooui-interface);
}
.ve-ui-expandableContent-fade {
background: linear-gradient(to right, rgba(255, 255, 255, 0) 0, var(--ooui-interface) 90%);
}
.ve-ui-commandHelpDialog-shortcut > kbd,
.ve-ui-commandHelpDialog-sequence > kbd {
background-color: var(--keypress-background);
color: var(--keypress-color);
border-color: var(--keypress-border);
box-shadow: none;
text-shadow: none;
}
.ve-init-mw-desktopArticleTarget-toolbarPlaceholder-floating .ve-init-mw-desktopArticleTarget-toolbarPlaceholder-bar {
background: var(--ooui-interface);
}
.ve-init-mw-desktopArticleTarget-toolbarPlaceholder-bar {
border-bottom-color: var(--body-mid);
}
figure[typeof~='mw:File/Thumb'],
figure[typeof~='mw:File/Frame'],
figure[typeof~='mw:Image/Thumb'],
figure[typeof~='mw:Video/Thumb'],
figure[typeof~='mw:Image/Frame'],
figure[typeof~='mw:Video/Frame'] {
border: none;
background-color: var(--thumb-bg);
}
figure[typeof~='mw:File/Thumb'] > a:first-child > *:first-child:not( .mw-broken-media ),
figure[typeof~='mw:File/Frame'] > a:first-child > *:first-child:not( .mw-broken-media ),
figure[typeof~='mw:Image/Thumb'] > a:first-child > *:first-child:not( .mw-broken-media ),
figure[typeof~='mw:Video/Thumb'] > a:first-child > *:first-child:not( .mw-broken-media ),
figure[typeof~='mw:Image/Frame'] > a:first-child > *:first-child:not( .mw-broken-media ),
figure[typeof~='mw:Video/Frame'] > a:first-child > *:first-child:not( .mw-broken-media ) {
border: none;
background: var(--thumb-bg);
}
figure[typeof~='mw:File/Thumb'] > figcaption,
figure[typeof~='mw:File/Frame'] > figcaption,
figure[typeof~='mw:Image/Thumb'] > figcaption,
figure[typeof~='mw:Video/Thumb'] > figcaption,
figure[typeof~='mw:Image/Frame'] > figcaption,
figure[typeof~='mw:Video/Frame'] > figcaption {
border: none;
background-color: var(--thumb-caption-bg);
padding: 4px 6px;
}
:root {
--keypress-background: #eee;
--keypress-border: #ccc;
--keypress-color: #333;
}
.toc .toctitle > * {
color: #fff;
}
.navbox .navbox-title {
color: #fff;
}
.navbox .navbox-list:not(last-child) {
border-bottom: none;
}
.archivelist {
background-color: var(--body-light);
border: solid 1px var(--body-border);
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
float: right;
margin: 5px;
padding: 5px;
text-align: center;
width: 120px;
}
.shortcut {
border: 1px solid var(--body-border);
background: var(--body-light);
float: right;
font-size: 0.8em;
margin: 0.5em 0em 0.5em 1em;
padding: 0.5em;
text-align: center;
}
.hatnote,
.seealso {
font-style: italic;
}
.hatnote i,
.seealso i {
font-style: normal;
}
div.hatnote,
div.seealso {
margin: 0.5em 1.6em;
}
div.hatnote + div.hatnote,
div.hatnote + div.seealso,
div.seealso + div.hatnote,
div.seealso + div.seealso {
margin-top: -0.5em;
}
.keypress {
background: var(--keypress-background);
color: var(--keypress-color);
font-family: inherit;
border: 1px solid var(--keypress-border);
border-radius: 2px;
font-size: 0.9em;
margin: 0 0.1em;
padding: 0.1em 0.4em;
white-space: nowrap;
}
.relative-location {
background: var(--body-light);
border: 1px solid var(--body-border);
border-spacing: 0;
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
text-align: center;
}
.relative-location-txt {
color: #fff;
}
.relative-location-header {
background: var(--body-dark);
}
:root {
--documentation-background: #f9fafa;
--documentation-link-color: #e4eaee;
--documentation-headers-color: #fff;
--documentation-header-background: #949eaa;
--documentation-subheader-background: #808c9a;
--documentation-border: #e4eaee;
}
.documentation {
background: var(--documentation-background);
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
margin: 1em 0;
}
.documentation pre,
.documentation code {
background-color: var(--documentation-background);
border-color: var(--documentation-border);
}
.documentation h2,
.documentation hr {
border-color: var(--documentation-border);
}
.documentation-header {
color: var(--documentation-headers-color);
background: var(--documentation-header-background);
font-weight: bold;
padding: 1em 1.5em;
}
.documentation-title {
font-size: 1.25em;
}
.documentation-subheader {
color: var(--documentation-headers-color);
background: var(--documentation-subheader-background);
padding: 0.5em 1.5em;
}
.documentation-subheader a,
.documentation-subheader a:visited,
.documentation-subheader a:active {
color: var(--documentation-link-color);
}
.documentation-documentation,
.documentation-links {
font-size: 0.85em;
}
.documentation-content {
padding: 1em 1.5em;
}
.mw-templatedata-doc-params dl:not(:empty) {
column-count: 3;
border-top: 1px solid var(--body-border);
margin-bottom: 0.5em;
}
.mw-templatedata-doc-params dt::after {
content: ":";
}
.mw-templatedata-doc-params dd,
.mw-templatedata-doc-params dt {
margin: 0.1em 2em;
min-width: auto;
}
.mw-templatedata-doc-muted {
color: var(--subtle-color);
font-style: italic;
}
:root {
--infobox-text-color: var(--text-color);
--table-header: var(--body-dark);
--table-subheader: var(--body-mid);
--table-body: var(--body-light);
--table-border: var(--body-border);
}
.infobox {
font-size: 0.85em;
width: 300px;
border-collapse: collapse;
float: right;
table-layout: fixed;
margin: 0.5em 0 1em 1em;
}
.infobox .infobox-buttons {
display: flex;
flex-wrap: wrap;
justify-content: center;
grid-gap: 3px;
margin-bottom: 3px;
}
.infobox .infobox-buttons .button {
background: var(--table-subheader);
padding: 0 5px;
font-weight: bold;
flex: 1 1 20%;
max-width: 20%;
color: #fff;
}
.infobox .infobox-buttons .button.button-selected {
background: var(--table-header);
}
.infobox tbody {
border: 1px solid var(--table-border);
background: var(--table-body);
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(231, 215, 199, 0.5);
}
.infobox .infobox-header {
background: var(--table-header);
padding: 0.5em 0;
text-align: center;
color: #fff;
font-size: 1.15em;
font-weight: bold;
line-height: 1.4em;
}
.infobox .infobox-image {
text-align: center;
}
.infobox .infobox-subheader {
background: var(--table-subheader);
font-weight: bold;
text-align: center;
color: #fff;
}
.infobox .infobox-subheader a {
color: var(--link-color);
}
.infobox .infobox-padding {
backgound: var(--table-body);
}
.infobox tr td:not(.infobox-padding) {
padding: 0.2em 0.5em;
}
.infobox th:not(.infobox-header):not(.infobox-subheader):not(.infobox-nested) {
border-right: 2px solid var(--table-subheader);
text-align: right;
padding: 0.2em 0.5em;
}
.infobox select {
max-width: 300px;
}
.hidden {
display: none;
}
ol.references,
.reflist {
font-size: 90%;
}
.reflist {
list-style-type: decimal;
}
.reflist .references {
font-size: 100%;
list-style-type: inherit;
}
.reflist-lower-alpha {
list-style-type: lower-alpha;
}
ol.references li:target,
sup.reference:target {
background-color: var(--body-light);
}
.hideQuotes .refhide {
display: none;
}
:root {
--messagebox-obsolete-background: #cfcfcf;
--messagebox-obsolete-border: #464646;
--messagebox-obsolete-color: var(--text-color);
--messagebox-obsolete-link-color: #6c6c6c;
--messagebox-info-background: #ebebeb;
--messagebox-info-border: #898989;
--messagebox-info-color: var(--text-color);
--messagebox-info-link-color: #6c6c6c;
--messagebox-action-background: #c7e8fa;
--messagebox-action-border: #0b5884;
--messagebox-action-color: var(--text-color);
--messagebox-action-link-color: #03436b;
--messagebox-warn-background: #dfc0ba;
--messagebox-warn-border: #861c10;
--messagebox-warn-color: var(--text-color);
--messagebox-warn-link-color: #8e221a;
--messagebox-safe-background: #d8f0d3;
--messagebox-safe-border: #1b8408;
--messagebox-safe-color: var(--text-color);
--messagebox-safe-link-color: #1b8408;
--messagebox-disambig-background: #ebebeb;
--messagebox-disambig-border: #898989;
--messagebox-disambig-color: var(--text-color);
--messagebox-disambig-link-color: #6c6c6c;
--messagebox-discord-background: #5865f2;
--messagebox-discord-border: #4c57d0;
--messagebox-discord-link-color: #d2e5fc;
}
.mw-message-box,
.mw-message-box-error,
.mw-message-box-warning,
.mw-message-box-success,
.usermessage {
color: var(--text-color);
}
.messagebox {
width: 65%;
margin: 0.5em auto;
border-left: 15px solid;
border-color: var(--body-dark);
background-color: var(--body-light);
box-sizing: border-box;
}
.messagebox.obsolete {
background-color: var(--messagebox-obsolete-background);
border-color: var(--messagebox-obsolete-border);
color: var(--messagebox-obsolete-color);
}
.messagebox.obsolete a,
.messagebox.obsolete a:visited,
.messagebox.obsolete a:active {
color: var(--messagebox-obsolete-link-color);
}
.messagebox.info {
background-color: var(--messagebox-info-background);
border-color: var(--messagebox-info-border);
color: var(--messagebox-info-color);
}
.messagebox.info a,
.messagebox.info a:visited,
.messagebox.info a:active {
color: var(--messagebox-info-link-color);
}
.messagebox.action {
background-color: var(--messagebox-action-background);
border-color: var(--messagebox-action-border);
color: var(--messagebox-action-color);
}
.messagebox.action a,
.messagebox.action a:visited,
.messagebox.action a:active {
color: var(--messagebox-action-link-color);
}
.messagebox.warn {
background-color: var(--messagebox-warn-background);
border-color: var(--messagebox-warn-border);
color: var(--messagebox-warn-color);
}
.messagebox.warn a,
.messagebox.warn a:visited,
.messagebox.warn a:active {
color: var(--messagebox-warn-link-color);
}
.messagebox.safe {
background-color: var(--messagebox-safe-background);
border-color: var(--messagebox-safe-border);
color: var(--messagebox-safe-color);
}
.messagebox.safe a,
.messagebox.safe a:visited,
.messagebox.safe a:active {
color: var(--messagebox-safe-link-color);
}
.messagebox.disambig {
background-color: var(--messagebox-disambig-background);
border-color: var(--messagebox-disambig-border);
color: var(--messagebox-disambig-color);
}
.messagebox.disambig a,
.messagebox.disambig a:visited,
.messagebox.disambig a:active {
color: var(--messagebox-disambig-link-color);
}
.messagebox.discord {
background-color: var(--messagebox-discord-background);
border-color: var(--messagebox-discord-border);
color: #fff;
}
.messagebox.discord a,
.messagebox.discord a:visited,
.messagebox.discord a:active {
color: var(--messagebox-discord-link-color);
}
.messagebox.discord a.external,
.messagebox.discord a:visited.external,
.messagebox.discord a:active.external {
font-style: italic;
}
.messagebox.stub {
width: 40%;
}
.messagebox.hasdialogue {
padding: 0 10px;
width: auto;
}
:root {
--byline-arrow-filter: invert(29%) sepia(0%) saturate(376%) hue-rotate(172deg) brightness(87%) contrast(80%);
--tile-border-color: var(--body-border);
--tile-background-color: var(--body-light);
--tile-link-button-color: #f5e9db;
--tile-link-button-highlight-color: #dfccb0;
--tile-dark-color: #fff;
--tile-dark-bg: var(--body-dark);
--tile-dark-link-color: #ccc;
--tile-dark-byline-color: rgba(255, 255, 255, 0.7);
--tile-dark-header-color: #fff;
}
.tile {
background: var(--tile-background-color);
border: 1px solid var(--tile-border-color);
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
padding: 1.5em 2em 1em;
max-width: 40em;
}
.tile h2 {
font-size: 1.4em;
font-weight: bold;
border: none;
margin: 0 0 0.4em;
}
.tile .byline + h2 {
margin-top: -0.5em;
}
.tile.dark {
color: var(--tile-dark-color);
background: var(--tile-dark-bg);
border: none;
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.3);
}
.tile.dark h2 {
color: var(--tile-dark-header-color);
}
.tile.dark a {
color: var(--tile-dark-link-color);
}
.tile.dark .byline {
color: var(--tile-dark-byline-color);
}
.byline {
font-size: 0.9em;
color: var(--byline-color);
}
.byline a {
color: var(--byline-color);
}
.tile-row {
display: flex;
flex-flow: row wrap;
margin-bottom: 1em;
}
.tile-halves {
display: flex;
flex-flow: row wrap;
background: var(--tile-background-color);
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
}
.tile-halves h2 {
font-size: 1.4em;
font-weight: bold;
border: none;
margin: 0 0 0.4em;
}
.tile-halves .byline + h2 {
margin-top: -0.5em;
}
.tile-top {
width: 100%;
padding: 1.3rem 1.5rem 0.6rem;
}
.tile-top.tile-image {
display: flex;
align-items: center;
background-color: var(--body-light);
overflow: hidden;
padding: 0;
height: 13vw;
max-height: 12em;
transition: 0.4s ease-out;
}
.tile-halves:hover .tile-top.tile-image img {
transform: scale(1.1);
transition: 0.5s ease-out;
}
.tile-top.tile-image a {
width: 100%;
}
.tile-top.tile-image img {
width: 100%;
object-fit: cover;
max-height: 200px;
transition: 0.4s ease-out;
}
.tile-bottom {
background: var(--body-dark);
width: 100%;
padding: 1rem 1.5rem 0.6rem;
}
.tile-bottom h2 a {
color: #fff !important;
}
.tile-bottom.link-button {
align-self: flex-end;
padding: 0;
}
.tile-bottom.link-button a {
display: block;
text-align: center;
padding: 0.75em 1.5em 0.8em;
text-decoration: none;
}
.tile-bottom.read-more {
background: var(--tile-link-button-color);
transition: 0.3s ease-out;
}
.tile-bottom.read-more a {
color: var(--byline-color);
font-weight: bold;
text-align: right;
}
.tile-bottom.read-more:hover {
background: var(--tile-link-button-highlight-color);
}
.tile-bottom.read-more:hover .arrow {
transform: translateX(50%);
}
.tile-bottom.read-more .arrow {
filter: var(--byline-arrow-filter);
margin-left: 0.4em;
transition: 0.3s ease-out;
}
body.page-Main_Page.action-view .catlinks,
body.page-Main_Page.action-view #contentSub,
body.page-Main_Page.action-view #firstHeading,
body.page-Main_Page.action-view #siteNotice {
display: none;
}
body.page-Main_Page .mw-parser-output {
max-width: 75em;
margin: 0 auto;
}
body.page-Main_Page.action-view .catlinks,
body.page-Main_Page.action-view #contentSub,
body.page-Main_Page.action-view #siteNotice {
display: none;
}
.mainpage-header {
display: flex;
margin: 2.6em 1.75em 1.5em;
}
.mainpage-header .header-intro {
flex: 2;
}
.mainpage-header .header-intro h1 {
font-size: 2.5em;
font-weight: bold;
border: none;
margin: 0 0 0.15em;
}
.mainpage-header .header-intro p {
font-size: 1.1em;
line-height: 1.7em;
}
.mainpage-header .header-stats {
flex: 1;
display: flex;
justify-content: center;
align-items: center;
margin-top: -1em;
}
.mainpage-body {
display: grid;
grid-template-areas: "event event event" "update update update" "content content content" "left left right";
gap: 0.9rem;
grid-template-columns: repeat(3, 1fr);
}
.mainpage-body h2 a {
color: var(--text-color);
}
.mainpage-body .tile {
padding-left: 1.75em;
padding-right: 1.75em;
max-width: 100%;
}
.mainpage-body .tile-row {
width: 100%;
margin-bottom: 0;
}
.mainpage-body .tile-row {
display: grid;
gap: 0.9rem;
}
.mainpage-contents.tile-row {
display: flex;
}
.mainpage-contents.tile-row .tile-top {
height: 5.5rem;
}
.mainpage-left {
grid-area: left;
flex: 2;
display: flex;
flex-flow: column wrap;
}
.mainpage-left > * {
margin: 0 0 0.9rem;
}
.mainpage-right {
grid-area: right;
flex: 1;
display: flex;
flex-flow: column wrap;
}
.mainpage-right > * {
margin: 0 0 0.9rem;
}
.arrow {
background: url('filepath://White-chevron.svg') no-repeat;
display: inline-block;
height: 0.7rem;
width: 0.45rem;
vertical-align: middle;
}
.arrow.dark {
filter: invert(80%);
}
.mainpage-contents {
grid-area: content;
grid-template-columns: repeat(6, 1fr);
}
.mainpage-contents .tile-halves {
flex: 1;
}
.mainpage-contents .tile-top {
height: 4.5rem;
position: relative;
}
.mainpage-contents .tile-top.tile-image img {
height: auto;
}
.mainpage-contents h2 {
margin: 0;
padding: 0;
}
.mainpage-contents .tile-bottom.link-button a {
padding: 0.75em 0.2em;
}
.popular-pages ul {
display: grid;
grid-template-columns: repeat(3, 1fr);
grid-gap: 0.6em;
margin: 1em 0 0.7em 0;
}
.mp-popular-page-light {
display: flex;
align-items: center;
background-color: var(--button-background);
transition: 100ms;
}
.mp-popular-page-light a {
flex: 1;
display: block;
color: #fff;
font-weight: bold;
text-align: center;
text-decoration: none;
padding: 0.7em 1em;
}
.mp-popular-page-light:hover {
filter: brightness(115%);
transition: 100ms;
}
.mainpage-social {
border: none;
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.3);
}
.mainpage-social .tile-top {
display: flex;
align-items: center;
padding: 1em 1.5em;
}
.mainpage-social .tile-top a {
flex: 1;
position: relative;
text-decoration: none;
}
.mainpage-social .tile-top a:hover .arrow {
transform: translateX(50%);
}
.mainpage-social .tile-bottom {
border: none;
padding: 1em 1.75em;
}
.mainpage-social .tile-bottom p {
color: #fff;
font-weight: bold;
font-size: 0.9em;
text-align: center;
text-transform: uppercase;
letter-spacing: 0.03em;
margin: 0;
}
.mainpage-social .social-icon {
margin-right: 0.75em;
text-align: center;
width: 60px;
}
.mainpage-social .social-header {
color: #fff;
font-weight: bold;
font-size: 1.15em;
margin: 0.5em 0 -0.15em;
}
.mainpage-social .server-tagline {
color: rgba(255, 255, 255, 0.9);
margin-bottom: 0.5em;
}
.mainpage-social .arrow {
position: absolute;
top: calc(50% - .5em);
right: 0;
height: 1em;
width: 0.7em;
background-size: 0.7em 1em;
transition: 0.3s ease-out;
}
.mainpage-social.mainpage-discord .tile-top {
background: #5865f2;
}
.mainpage-social.mainpage-discord .tile-bottom {
background: #525ee0;
}
.mainpage-social.mainpage-twitter .tile-top {
background: #15202b;
}
.mainpage-social.mainpage-twitter .tile-bottom {
background: #121c26;
}
.mainpage-editing {
border: none;
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.3);
}
.mainpage-editing .tile-top {
background: #438ab5;
}
.mainpage-editing .tile-bottom {
background: #3980ab;
border: none;
padding: 0.8rem 1.5rem 0.4rem;
}
.mainpage-editing h2,
.mainpage-editing a {
color: #fff;
}
.mainpage-editing p {
color: rgba(255, 255, 255, 0.9);
}
.mainpage-editing ul {
list-style-image: url('filepath://Transparent-chevron.svg');
}
@media only screen and (max-width: 1200px) {
.mainpage-contents {
grid-template-columns: repeat(3, 1fr);
}
}
@media only screen and (max-width: 1000px) {
.mainpage-body {
grid-template-areas: "event event event" "update update update" "content content content" "left left left" "right right right";
}
.mainpage-recent-updates {
grid-template-columns: repeat(2, 1fr);
}
.mainpage-recent-updates .tile-halves:last-child {
display: none;
}
.mainpage-recent-updates .tile-halves:hover .tile-top img {
transform: scale(1.04);
}
.mainpage-recent-updates .tile-top {
height: 18vw;
min-height: 9em;
}
.mainpage-header .header-stats {
display: none;
}
.mainpage-left > *:last-child,
.mainpage-right > *:last-child {
margin-bottom: 0;
}
.popular-pages ul {
grid-template-columns: repeat(2, 1fr);
}
}
@media only screen and (max-width: 720px) {
.mainpage-recent-updates {
grid-template-columns: none;
}
.mainpage-recent-updates .tile-halves:last-child {
display: flex;
}
.mainpage-contents {
grid-template-columns: repeat(2, 1fr);
}
}
.mw-prefs-buttons {
background-color: var(--body-main);
border-top-color: var(--body-border);
box-shadow: none;
}
.mw-prefs-tabs-wrapper.oo-ui-panelLayout-framed,
.mw-prefs-tabs > .oo-ui-menuLayout-content > .oo-ui-indexLayout-stackLayout > .oo-ui-tabPanelLayout {
border-color: var(--body-border);
}
.mw-htmlform-ooui .mw-htmlform-matrix tbody tr:nth-child(even) td {
background-color: var(--body-light);
}
.mw-htmlform-ooui .mw-htmlform-matrix tbody tr:hover td {
background-color: var(--body-mid);
}
:root {
--rc-positive-color: #407813;
--rc-negative-color: #b41e0f;
}
.mw-plusminus-pos {
color: var(--rc-positive-color);
}
.mw-plusminus-neg {
color: var(--rc-negative-color);
}
.client-js .mw-recentchanges-toplinks:not(.mw-recentchanges-toplinks-collapsed) {
border-color: var(--body-border);
background-color: var(--body-light);
border-radius: 2px;
}
.mw-rcfilters-ui-filterTagMultiselectWidget-wrapper-content-title {
color: var(--text-color);
}
.mw-rcfilters-ui-filterTagMultiselectWidget-emptyFilters {
color: var(--byline-color);
}
.mw-rcfilters-ui-filterTagMultiselectWidget.oo-ui-widget-enabled .oo-ui-tagMultiselectWidget-handle {
background-color: var(--ooui-interface);
border-color: var(--ooui-interface-border);
}
.mw-rcfilters-ui-filterTagMultiselectWidget-views-select-widget.oo-ui-widget {
border-color: var(--ooui-interface-border);
}
.mw-rcfilters-collapsed .mw-rcfilters-ui-filterTagMultiselectWidget {
border-bottom-color: var(--ooui-interface-border);
}
.mw-rcfilters-ui-menuSelectWidget-footer {
background-color: var(--ooui-interface);
border-color: var(--ooui-interface-border);
}
.mw-rcfilters-ui-viewSwitchWidget label.oo-ui-labelWidget {
color: var(--byline-color);
}
.mw-rcfilters-ui-tagItemWidget-popup-content {
color: var(--ooui-text);
}
.mw-changeslist-legend,
.mw-rcfilters-ui-changesListWrapperWidget .mw-changeslist-legend {
background-color: var(--body-light);
border-color: var(--body-dark);
}
.mw-rcfilters-ui-changesListWrapperWidget-previousChangesIndicator {
border-color: var(--sidebar);
}
.client-js .mw-changeslist ul,
.client-js .mw-changeslist table.mw-enhanced-rc {
margin-left: 0;
}
.mw-rcfilters-ui-watchlistTopSectionWidget-separator {
border-color: var(--sidebar);
}
.mw-rcfilters-ui-itemMenuOptionWidget-header {
border-bottom-color: var(--ooui-interface);
background-color: var(--ooui-interface-border);
}
.mw-rcfilters-ui-itemMenuOptionWidget:not(:last-child):not(.mw-rcfilters-ui-itemMenuOptionWidget-identifier-talk) {
border-bottom-color: var(--ooui-normal-border);
}
.mw-rcfilters-ui-itemMenuOptionWidget-label-title,
.mw-rcfilters-ui-itemMenuOptionWidget-label-desc {
color: var(--text-color);
}
.mw-rcfilters-ui-filterMenuOptionWidget.oo-ui-flaggedElement-muted:not(.oo-ui-optionWidget-selected) {
background-color: var(--body-main);
}
.mw-rcfilters-ui-filterMenuOptionWidget.oo-ui-flaggedElement-muted .mw-rcfilters-ui-itemMenuOptionWidget-label-title,
.mw-rcfilters-ui-filterMenuOptionWidget.oo-ui-flaggedElement-muted .mw-rcfilters-ui-itemMenuOptionWidget-label-desc {
color: var(--subtle-color);
}
.mw-rcfilters-ui-filterMenuSectionOptionWidget {
background-color: var(--body-mid);
}
.mw-rcfilters-ui-filterMenuSectionOptionWidget-header-title.oo-ui-labelElement-label {
color: var(--ooui-text);
}
.mw-rcfilters-ui-filterMenuHeaderWidget-title {
color: var(--ooui-text);
}
.mw-rcfilters-ui-filterMenuHeaderWidget-header {
border-bottom-color: var(--ooui-interface-border);
background-color: var(--ooui-interface);
}
.mw-rcfilters-ui-itemMenuOptionWidget-view-namespaces {
border-top-color: var(--ooui-interface-border);
}
.mw-rcfilters-ui-datePopupWidget {
border-color: var(--ooui-interface-border);
}
.mw-rcfilters-ui-datePopupWidget .mw-rcfilters-ui-valuePickerWidget-title {
color: var(--byline-color);
}
.mw-rcfilters-ui-savedLinksListItemWidget-label {
color: var(--ooui-accent);
}
.client-js .mw-changeslist.mw-rcfilters-ui-changesListWrapperWidget-highlighted ul,
.client-js .mw-changeslist.mw-rcfilters-ui-changesListWrapperWidget-highlighted table.mw-enhanced-rc {
margin-left: 1.5em;
}
.page-Special_CreateAccount .mw-ui-container,
.page-Special_UserLogin .mw-ui-container {
max-width: 64rem;
margin: 0 auto;
}
.mw-number-text {
color: var(--byline-color);
}
.mw-body-content .mw-number-text h3 {
color: var(--text-color);
}
#mw-indicator-mw-helplink a {
background: none;
padding: 0;
display: flex;
align-items: center;
}
#mw-indicator-mw-helplink a::before {
content: '';
margin-right: 5px;
-webkit-mask: url("/resources/src/mediawiki.helplink/images/helpNotice.svg?46d34") no-repeat 50% 50% / contain;
mask: url("/resources/src/mediawiki.helplink/images/helpNotice.svg?46d34") no-repeat 50% 50% / contain;
background: var(--text-color);
height: 20px;
width: 20px;
}
.results-info {
color: inherit;
}
.mw-search-profile-tabs {
background-color: var(--body-mid);
border-color: transparent;
}
.search-types .current a {
color: inherit;
}
#mw-searchoptions {
background-color: var(--body-mid);
border-color: transparent;
}
#mw-searchoptions .divider {
border-color: var(--body-border);
}
#mw-searchoptions h4 {
font-family: inherit;
}
#mw-searchoptions .oo-ui-labelElement:nth-of-type(odd) {
font-weight: bold;
}
.searchresult {
line-height: 1.5;
}
.searchalttitle,
#mw-search-interwiki li {
font-size: 90%;
}
.mw-search-result-data {
color: var(--byline-color);
}
.page-Special_ListFiles a.image img {
width: inherit;
height: inherit;
}
.page-Special_ListFiles .TablePager_col_thumb {
text-align: center;
}
#editcount table[border="1"] {
background-color: var(--body-main) !important;
border-color: var(--wikitable-border) !important;
margin-top: 0.5em;
}
#editcount table[border="1"] th,
#editcount table[border="1"] td {
padding: 0.2em 0.4em;
}
#editcount table[border="1"] th {
background-color: var(--wikitable-header-bg);
border: 1px solid var(--wikitable-border);
}
#editcount table[border="1"] td {
border: 1px solid var(--wikitable-border);
}
#editcount table[border="1"] tr:nth-child(odd) {
background-color: var(--body-light);
}
.mw-echo-ui-notificationBadgeButtonPopupWidget-popup > .oo-ui-popupWidget-popup .mw-echo-ui-placeholderItemWidget {
background-color: inherit;
}
table.mw-interwikitable.body td.mw-interwikitable-local-yes {
background-color: var(--table-yes-background);
color: var(--table-yes-color);
}
.mw-protectedpages-unknown {
color: var(--byline-color);
}
.watchlistredir,
.allpagesredirect {
font-style: italic;
}
.allpagesredirect:after {
color: var(--byline-color);
content: " (redirect)";
}
.mw-apisandbox-toolbar {
background: var(--body-main);
}
.oo-ui-menuOptionWidget .mw-apisandbox-flag {
color: var(--byline-color);
}
tr.mw-abusefilter-list-disabled,
tr.mw-abusefilter-list-disabled td {
color: var(--byline-color);
}
table.mw-abuselog-details {
background: var(--wikitable-bg);
border-color: var(--wikitable-border);
}
table.mw-abuselog-details th {
background: var(--wikitable-header-bg);
}
table.mw-abuselog-details th,
table.mw-abuselog-details td {
border-color: var(--wikitable-border);
}
.mw-abusefilter-log-hidden-entry {
color: var(--subtle-color);
}
body td.mw-abusefilter-history-changed {
background: var(--table-no-background);
}
div.mw-abusefilter-editor,
#mw-abusefilter-warn-preview,
#mw-abusefilter-disallow-preview {
border-color: var(--ooui-input-border);
}
.mw-destfile-warning {
border-color: var(--warningbox-border);
color: var(--text-color);
background-color: var(--warningbox-bg);
}
span.fileinput-button {
background-color: var(--ooui-normal);
border-color: var(--ooui-normal-border);
color: var(--ooui-text);
}
ul.fileupload-results li.ful-success {
background-color: var(--successbox-bg);
}
ul.fileupload-results li.ful-success a {
color: var(--link-color);
}
ul.fileupload-results li.ful-error {
background-color: var(--errorbox-bg);
}
.color-container {
display: flex;
margin: 2em auto;
width: 80%;
max-width: 60em;
}
.color-column {
flex: 1;
margin-right: 1em;
}
.color-column:last-child {
margin-right: 0;
}
.color-column h3 {
padding: 0;
}
.color-group {
color: #333;
padding: 1em 1.5em;
transition: 0.2s ease-out;
}
.color-group:hover {
transform: scale(1.03);
}
.color-group.dark {
color: #fff;
}
.color-group .variable,
.color-group .hexcode {
font-family: monospace;
font-size: 1.1em;
-webkit-user-select: all;
-moz-user-select: all;
-ms-user-select: all;
user-select: all;
margin: 0;
}
body.wgl-readermode .color-group .variable,
body.wgl-readermode .color-group .hexcode {
font-size: inherit;
}
.color-group .variable {
font-weight: bold;
}
#t-print,
#t-permalink {
display: none;
}
#filetoc {
border-radius: 2px;
background: var(--body-mid);
border-color: transparent;
margin: 0.5em auto;
text-align: center;
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
}
li.gallerybox div.thumb {
border: none;
background-color: var(--thumb-bg);
}
.smwfact {
display: none;
}
.list-header {
background-color: var(--body-mid);
color: inherit;
}
.editOptions {
color: var(--text-color);
background-color: var(--sourceeditor-background-secondary);
border-color: var(--sourceeditor-border);
}
.mw-json th,
.mw-json td {
border-color: var(--wikitable-border);
}
.mw-json td {
background: var(--wikitable-bg);
}
.mw-json th {
background: var(--wikitable-header-bg);
}
814dc9b9e973361187dd006cf6929db78c11fe44
2234
2227
2024-04-11T16:25:00Z
BlackHawk
10
Updating CSS from [[MediaWiki:Common.less]]
css
text/css
/* <pre> */
:root {
--body-main: #fdfcfc;
--body-light: #f5f0eb;
--body-mid: #d1b9ad;
--body-dark: #b1886f;
--body-border: #d1b9ad;
--body-background-color: #173a4d;
--button-background: #605443;
--button-color: #fff;
--button-border: #3c352a;
--button-dark: #18140c;
--button-light: #3a301d;
--sidebar: #cfc08d;
--background-text-color: #e2dbc8;
--background-link-color: #e2bd8a;
--search-box: #efeee6;
--link-color: #6e452b;
--redlink-color: #ba0000;
--text-color: #2F2828;
--byline-color: #ccc;
--subtle-color: #afa19a;
--admin-blue: #332e75;
--bearcat-green: #13592e;
--awb-purple: #933b96;
--rsw-blue: #438ab6;
--osrsw-brown: #605443;
--thumb-bg: var(--body-light);
--thumb-caption-bg: var(--body-mid);
--sourceeditor-input-background: #fff;
--sourceeditor-background: var(--body-light);
--sourceeditor-background-secondary: var(--body-light);
--sourceeditor-border: var(--body-mid);
--codemirror-gutter-background: var(--body-mid);
}
@font-face {
font-family: 'Lora';
font-weight: 400 700;
font-style: normal;
font-display: swap;
src: url('filepath://Lora.woff2') format('woff2');
}
@font-face {
font-family: 'Lora';
font-weight: 400 700;
font-style: italic;
font-display: swap;
src: url('filepath://Lora-Italic.woff2') format('woff2');
}
:root {
--base-text-color: #36414f;
--base-heading-color: #444e5a;
--base-heading-border: #e4eaee;
--mw-code-background-color: var(--body-light);
--body-background-image: url('filepath://Wiki_background.jpg');
}
#mw-page-base {
background: none;
}
.mw-body {
background-color: var(--body-main);
color: var(--text-color);
border-color: transparent;
box-shadow: 0 0 7px rgba(0, 0, 0, 0.15);
margin-top: 0;
}
h1,
h2,
h3,
h4,
h5,
h6 {
color: var(--text-color);
}
h1,
h2 {
border-color: var(--body-border);
}
.mw-body h1,
.mw-body-content h1,
.mw-body-content h2,
.mw-body-content h3,
.mw-body-content h4,
.mw-body-content h5,
.mw-body-content h6 {
font-family: 'Lora', 'Palatino', 'Georgia', serif;
}
.mw-parser-output h2:first-of-type {
clear: left;
}
.mw-footer {
color: var(--background-text-color);
}
.mw-footer li {
color: var(--background-text-color);
}
.mw-footer a,
.mw-footer a:active,
.mw-footer a:visited {
color: var(--background-link-color);
}
::placeholder {
color: var(--subtle-color);
}
a {
color: var(--link-color);
}
a:visited,
a:active {
color: var(--link-color);
}
a.new {
color: var(--redlink-color);
}
a.new:visited {
color: var(--redlink-color);
}
.mw-parser-output a.extiw,
.mw-parser-output a.external {
color: var(--link-color);
}
.mw-parser-output a.extiw:visited,
.mw-parser-output a.external:visited,
.mw-parser-output a.extiw:active,
.mw-parser-output a.external:active {
color: var(--link-color);
}
.jsPurgeLink a.external {
color: var(--link-color);
}
:root {
--errorbox-bg: #feecea;
--errorbox-border: #ee4231;
--warningbox-bg: #fef9de;
--warningbox-border: #f9d000;
--successbox-bg: #ecf8e3;
--successbox-border: #6bc71f;
}
.mw-message-box-error,
.errorbox,
.mw-message-box-warning,
.warningbox,
.mw-message-box-success,
.successbox,
.usermessage {
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
}
.mw-message-box-error,
.errorbox {
background-color: var(--errorbox-bg);
border-color: var(--errorbox-border);
}
.mw-message-box-warning,
.warningbox,
.usermessage {
background-color: var(--warningbox-bg);
border-color: var(--warningbox-border);
}
.mw-message-box-success,
.successbox {
background-color: var(--successbox-bg);
border-color: var(--successbox-border);
}
.catlinks {
background: var(--body-light);
border: 1px solid var(--body-dark);
padding: 8px 15px;
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
}
.catlinks li {
border-color: var(--body-mid);
}
.filehistory a img,
#file img {
background: url("data:image/svg+xml,%3C%3Fxml version='1.0' encoding='UTF-8'%3F%3E%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16'%3E%3Cpath d='M0 0h8v16h8V8H0z' opacity='.13'/%3E%3C/svg%3E") repeat;
}
#file img:hover {
background: none;
}
.mw-highlight {
background: none;
}
.mw-highlight .linenos {
background-color: var(--mw-code-background-color);
color: var(--body-border);
}
.mw-highlight a:hover .linenos,
.mw-highlight .hll a .linenos {
color: var(--body-dark);
}
.mw-content-ltr.mw-highlight-lines pre,
.mw-content-ltr.content .mw-highlight-lines pre {
box-shadow: inset 2.75em 0 0 var(--mw-code-background-color);
}
#pagehistory ul {
list-style: none;
margin: 0;
}
#pagehistory li {
border: 1px solid transparent;
padding: 1px 10px;
margin: 2px 0;
}
#pagehistory li.selected {
background-color: var(--body-light);
color: inherit;
border: 1px dashed var(--body-border);
outline: none;
}
#mw-history-compare > div:first-of-type {
position: -webkit-sticky;
position: sticky;
top: 0;
background-color: var(--body-main);
border-bottom: 1px solid var(--body-dark);
padding: 0.25em 0;
}
.wgl-stickyheader #mw-history-compare > div:first-of-type {
top: 2.5rem;
}
.autocomment,
.autocomment a,
.autocomment a:visited {
color: var(--link-color);
}
li span.deleted,
span.history-deleted {
color: var(--byline-color);
}
.mw-usertoollinks-contribs-no-edits,
.mw-usertoollinks-contribs-no-edits:visited {
color: var(--redlink-color);
}
.CategoryTreeToggle {
color: var(--link-color);
}
body.wgl-stickyheader.action-view .mw-headline:target::before {
display: block;
content: '';
margin-top: -3rem;
height: 3rem;
visibility: hidden;
pointer-events: none;
}
.mw-mmv-post-image {
color: var(--text-color);
background-color: var(--body-main);
}
.mw-mmv-image-metadata {
border-top-color: var(--body-mid);
background-color: var(--body-light);
}
.mw-mmv-dialog,
.mw-mmv-dialog .mw-mmv-dialog-down-arrow,
.mw-mmv-options-dialog .mw-mmv-dialog-down-arrow {
background-color: var(--body-light);
box-shadow: none;
}
.mw-mmv-options-enable-alert {
background-color: var(--body-light);
color: var(--text-color);
}
.mw-mmv-options-dialog-header,
.mw-mmv-options-text-header,
.mw-mmv-options-text-body,
.mw-mmv-options-enable-alert,
.mw-mmv-options-dialog .mw-mmv-disable-confirmation .mw-mmv-options-dialog-header,
.mw-mmv-options-dialog .mw-mmv-disable-confirmation .mw-mmv-options-text-header {
color: var(--text-color);
}
.mw-revslider-container {
border-color: var(--sidebar);
}
.mw-revslider-slider-wrapper {
border-top-color: var(--sidebar);
}
.mw-ui-button {
background-color: var(--ooui-normal);
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
}
.mw-ui-button:not(:disabled):hover,
.mw-ui-button:not(:disabled):active {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
}
.mw-ui-button:not(:disabled):focus {
color: var(--ooui-text);
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent), inset 0 0 0 2px #fff;
}
.mw-ui-button:not(:disabled):visited {
color: var(--ooui-text);
}
.mw-ui-button.mw-ui-progressive:not(:disabled) {
background-color: var(--ooui-progressive);
color: #fff;
border-color: var(--ooui-progressive);
}
.mw-ui-button.mw-ui-progressive:not(:disabled):hover {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
}
.mw-ui-button.mw-ui-progressive:not(:disabled):focus {
box-shadow: inset 0 0 0 1px var(--ooui-accent), inset 0 0 0 2px #fff;
}
.mw-ui-button.mw-ui-progressive:not(:disabled):active,
.mw-ui-button.mw-ui-progressive:not(:disabled).is-on {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
box-shadow: none;
}
.mw-ui-button.mw-ui-destructive:not( :disabled ) {
color: #fff;
}
.mw-ui-button.mw-ui-quiet,
.mw-ui-button.mw-ui-quiet.mw-ui-progressive,
.mw-ui-button.mw-ui-quiet.mw-ui-destructive {
color: var(--text-color);
}
input[type='checkbox']:hover + .mw-ui-button.mw-ui-quiet,
input[type='checkbox']:hover + .mw-ui-button.mw-ui-quiet.mw-ui-progressive,
input[type='checkbox']:hover + .mw-ui-button.mw-ui-quiet.mw-ui-destructive,
.mw-ui-button.mw-ui-quiet:hover,
.mw-ui-button.mw-ui-quiet.mw-ui-progressive:hover,
.mw-ui-button.mw-ui-quiet.mw-ui-destructive:hover {
background-color: rgba(0, 24, 73, 0.02745098);
color: var(--text-color);
border-color: transparent;
}
input[type='checkbox']:focus + .mw-ui-button.mw-ui-quiet,
input[type='checkbox']:focus + .mw-ui-button.mw-ui-quiet.mw-ui-progressive,
input[type='checkbox']:focus + .mw-ui-button.mw-ui-quiet.mw-ui-destructive,
.mw-ui-button.mw-ui-quiet:focus,
.mw-ui-button.mw-ui-quiet.mw-ui-progressive:focus,
.mw-ui-button.mw-ui-quiet.mw-ui-destructive:focus {
color: var(--text-color);
}
input[type='checkbox']:active + .mw-ui-button.mw-ui-quiet,
input[type='checkbox']:active + .mw-ui-button.mw-ui-quiet.mw-ui-progressive,
input[type='checkbox']:active + .mw-ui-button.mw-ui-quiet.mw-ui-destructive,
.mw-ui-button.mw-ui-quiet:active,
.mw-ui-button.mw-ui-quiet.mw-ui-progressive:active,
.mw-ui-button.mw-ui-quiet.mw-ui-destructive:active {
background-color: rgba(0, 36, 73, 0.08235294);
color: var(--text-color);
border-color: #72777d;
}
.mw-ui-input {
background-color: var(--ooui-input);
color: var(--text-color);
border-color: var(--ooui-input-border);
}
.mw-ui-input:hover {
border-color: var(--ooui-input-border--hover);
}
.mw-ui-input::placeholder {
color: var(--byline-color);
}
.mw-content-ltr .redirectText li:first-child {
padding: 0;
background: 0;
}
.mw-content-ltr .redirectText li:first-child::before {
content: '';
background: currentcolor;
-webkit-mask: url("filepath://Redirect-arrow.svg") no-repeat 50% 50% / contain;
mask: url("filepath://Redirect-arrow.svg") no-repeat 50% 50% / contain;
display: inline-block;
width: 47px;
height: 20px;
}
.vector-search-box-inner {
background: var(--body-main) !important;
box-shadow: inset 0 -7px 7px -7px rgba(0, 0, 0, 0.15) !important;
}
.vector-menu-dropdown .vector-menu-heading {
color: var(--vector-tab-link-color) !important;
}
.vector-menu-dropdown .vector-menu-heading:hover {
color: var(--vector-tab-link-color) !important;
}
.vector-menu-dropdown .vector-menu-heading:focus {
color: var(--vector-tab-link-color) !important;
}
:root {
--wikitable-header-bg: var(--body-dark);
--wikitable-border: var(--body-border);
--wikitable-bg: var(--body-light);
--wikitable-bg-lighter: #e9e3d6;
--wikitable-color: var(--text-color);
--table-na-background: rgba(255, 255, 255, 0.3);
--table-na-color: var(--subtle-color);
--table-yes-background: #c3e8a3;
--table-yes-color: #2e5e05;
--table-no-background: #fbc0ba;
--table-no-color: #801c13;
--table-maybe-background: #fcea94;
--table-maybe-color: #786300;
}
.wikitable {
background: var(--wikitable-bg);
color: var(--wikitable-color);
border-color: var(--wikitable-border);
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
}
.wikitable > tr > th,
.wikitable > tr > td,
.wikitable > * > tr > th,
.wikitable > * > tr > td {
border-color: var(--wikitable-border);
}
.wikitable > tr > th.table-noborder,
.wikitable > tr > td.table-noborder,
.wikitable > * > tr > th.table-noborder,
.wikitable > * > tr > td.table-noborder {
border-left-style: hidden;
border-right-style: hidden;
padding-left: 0;
padding-right: 0;
}
.wikitable > tr > th,
.wikitable > * > tr > th {
background-color: var(--wikitable-header-bg);
color: #fff;
}
.tabber .wikitable {
box-shadow: none;
}
.mw_metadata td,
.mw_metadata th {
border-color: var(--wikitable-border);
}
.mw_metadata th {
background-color: var(--wikitable-header-bg);
}
.mw_metadata td {
background-color: var(--wikitable-bg);
}
.mw-datatable {
border-color: var(--wikitable-border);
}
.mw-datatable td,
.mw-datatable th {
border-color: var(--wikitable-border);
}
.mw-datatable th {
background-color: var(--wikitable-header-bg);
}
.mw-datatable td {
background-color: var(--wikitable-bg);
}
.mw-datatable tr:hover td {
background-color: var(--wikitable-bg);
}
table.alternating-rows tr:nth-child(odd),
table.alternating-cols td:nth-child(odd) {
background: var(--wikitable-alternating-bg);
}
.table-na {
background: var(--table-na-background);
color: var(--table-na-color);
vertical-align: middle;
text-align: center;
}
.table-yes {
background: var(--table-yes-background);
color: var(--table-yes-color);
}
.table-positive {
background: var(--table-yes-background);
}
.table-no {
background: var(--table-no-background);
color: var(--table-no-color);
}
.table-negative {
background: var(--table-no-background);
}
.table-maybe {
background: var(--table-maybe-background);
color: var(--table-maybe-color);
}
#mw-allmessagestable .am_actual,
#mw-allmessagestable .am_default {
background-color: var(--wikitable-bg);
}
#mw-allmessagestable .am_default:hover,
#mw-allmessagestable .am_actual:hover,
#mw-allmessagestable tbody:hover td {
background-color: var(--wikitable-bg-lighter);
}
table.wikitable td.no-cell-spacing {
padding: 0;
height: 0;
}
table.wikitable td.no-cell-spacing table {
margin: -1px;
width: calc(100% + 2px);
height: calc(100% + 2px);
}
.plainlist ol,
.plainlist ul {
margin: 0;
}
.plainlist li {
margin-bottom: 0;
list-style: none;
}
table.align-right-1 td:nth-of-type(1),
table.align-right-2 td:nth-of-type(2),
table.align-right-3 td:nth-of-type(3),
table.align-right-4 td:nth-of-type(4),
table.align-right-5 td:nth-of-type(5),
table.align-right-6 td:nth-of-type(6),
table.align-right-7 td:nth-of-type(7),
table.align-right-8 td:nth-of-type(8),
table.align-right-9 td:nth-of-type(9),
table.align-right-10 td:nth-of-type(10),
table.align-right-11 td:nth-of-type(11),
table.align-right-12 td:nth-of-type(12),
table.align-right-13 td:nth-of-type(13),
table.align-right-14 td:nth-of-type(14),
table.align-right-15 td:nth-of-type(15),
table.align-right-16 td:nth-of-type(16),
table.align-right-17 td:nth-of-type(17),
table.align-right-18 td:nth-of-type(18),
table.align-right-19 td:nth-of-type(19),
table.align-right-20 td:nth-of-type(20) {
text-align: right;
}
table.align-center-1 td:nth-of-type(1),
table.align-center-2 td:nth-of-type(2),
table.align-center-3 td:nth-of-type(3),
table.align-center-4 td:nth-of-type(4),
table.align-center-5 td:nth-of-type(5),
table.align-center-6 td:nth-of-type(6),
table.align-center-7 td:nth-of-type(7),
table.align-center-8 td:nth-of-type(8),
table.align-center-9 td:nth-of-type(9),
table.align-center-10 td:nth-of-type(10),
table.align-center-11 td:nth-of-type(11),
table.align-center-12 td:nth-of-type(12),
table.align-center-13 td:nth-of-type(13),
table.align-center-14 td:nth-of-type(14),
table.align-center-15 td:nth-of-type(15),
table.align-center-16 td:nth-of-type(16),
table.align-center-17 td:nth-of-type(17),
table.align-center-18 td:nth-of-type(18),
table.align-center-19 td:nth-of-type(19),
table.align-center-20 td:nth-of-type(20) {
text-align: center;
}
table.align-left-1 td:nth-of-type(1),
table.align-left-2 td:nth-of-type(2),
table.align-left-3 td:nth-of-type(3),
table.align-left-4 td:nth-of-type(4),
table.align-left-5 td:nth-of-type(5),
table.align-left-6 td:nth-of-type(6),
table.align-left-7 td:nth-of-type(7),
table.align-left-8 td:nth-of-type(8),
table.align-left-9 td:nth-of-type(9),
table.align-left-10 td:nth-of-type(10),
table.align-left-11 td:nth-of-type(11),
table.align-left-12 td:nth-of-type(12),
table.align-left-13 td:nth-of-type(13),
table.align-left-14 td:nth-of-type(14),
table.align-left-15 td:nth-of-type(15),
table.align-left-16 td:nth-of-type(16),
table.align-left-17 td:nth-of-type(17),
table.align-left-18 td:nth-of-type(18),
table.align-left-19 td:nth-of-type(19),
table.align-left-20 td:nth-of-type(20) {
text-align: left;
}
:root {
--diff-addedline-border-color: #438ab5;
--diff-addedline-background: #bddff2;
--diff-addedline-color: #000;
--diff-deletedline-border-color: #379541;
--diff-deletedline-background: #c1edbf;
--diff-deletedline-color: #000;
--diff-context-border-color: var(--body-mid);
--diff-context-background: var(--body-mid);
}
.diff-context {
border-color: var(--diff-context-border-color);
background: var(--diff-context-background);
color: inherit;
}
.diff-addedline {
border-color: var(--diff-addedline-border-color);
}
.diff-addedline .diffchange {
background: var(--diff-addedline-background);
color: var(--diff-addedline-color);
}
.diff-deletedline {
border-color: var(--diff-deletedline-border-color);
}
.diff-deletedline .diffchange {
background: var(--diff-deletedline-background);
color: var(--diff-deletedline-color);
}
.mw-diff-movedpara-left:after,
.mw-diff-movedpara-right:after {
color: var(--text-color);
}
.mw-notification {
background-color: var(--body-light);
border-color: var(--body-border);
color: var(--text-color);
}
.mw-echo-ui-notificationsInboxWidget-toolbarWrapper {
background: var(--body-main);
}
.mw-body-content .mw-echo-ui-datedSubGroupListWidget-title-secondary {
color: var(--byline-color);
}
.mw-echo-ui-pageNotificationsOptionWidget.oo-ui-optionWidget-selected {
background-color: var(--ooui-normal);
color: var(--ooui-accent);
}
.mw-echo-ui-pageNotificationsOptionWidget-label-count {
background-color: var(--ooui-normal);
color: var(--byline-color);
}
.oo-ui-optionWidget-selected .mw-echo-ui-pageNotificationsOptionWidget-label-count {
color: var(--ooui-accent);
}
.mw-echo-ui-pageNotificationsOptionWidget.oo-ui-optionWidget-highlighted {
background-color: var(--ooui-normal);
color: var(--text-color);
}
.mw-echo-ui-crossWikiUnreadFilterWidget {
border-color: var(--body-border);
}
.mw-echo-ui-crossWikiUnreadFilterWidget-subtitle {
color: var(--byline-color);
}
.mw-echo-ui-notificationBadgeButtonPopupWidget-popup > .oo-ui-popupWidget-popup > .oo-ui-popupWidget-head,
.mw-echo-ui-notificationBadgeButtonPopupWidget-popup > .oo-ui-popupWidget-popup > .oo-ui-popupWidget-footer {
border-color: var(--ooui-interface-border);
}
.mw-echo-ui-notificationBadgeButtonPopupWidget-popup > .oo-ui-popupWidget-popup > .oo-ui-popupWidget-footer .mw-echo-ui-notificationBadgeButtonPopupWidget-footer-buttons .oo-ui-buttonElement:last-child {
border-left-color: var(--ooui-normal-border);
}
.mw-echo-ui-notificationItemWidget {
background-color: var(--ooui-normal);
border-color: var(--ooui-normal-border);
}
.mw-echo-ui-notificationItemWidget:hover,
.mw-echo-ui-notificationItemWidget-unread:hover {
background-color: var(--ooui-normal--hover);
}
.mw-echo-ui-notificationItemWidget:last-child {
border-bottom-color: var(--ooui-normal-border);
}
.mw-echo-ui-notificationItemWidget-unread {
background-color: var(--search-box);
}
.mw-echo-ui-crossWikiNotificationItemWidget-group,
.mw-echo-ui-bundleNotificationItemWidget-group {
background-color: var(--ooui-interface);
}
.mw-echo-ui-toggleReadCircleButtonWidget-circle {
background-color: var(--ooui-progressive);
}
.mw-echo-ui-toggleReadCircleButtonWidget:hover .mw-echo-ui-toggleReadCircleButtonWidget-circle {
background-color: var(--ooui-progressive--hover);
}
.mw-echo-ui-toggleReadCircleButtonWidget-circle-unread {
background-color: var(--ooui-normal);
border-color: var(--ooui-normal-border);
}
.mw-echo-ui-notificationItemWidget-content-message-header,
.mw-echo-ui-notificationItemWidget-content-message-body,
.mw-echo-ui-menuItemWidget > .oo-ui-buttonElement-button > .oo-ui-labelElement-label,
.mw-echo-ui-notificationItemWidget-content-actions-timestamp {
color: var(--ooui-text);
}
.mw-echo-ui-bundleNotificationItemWidget-group {
background-color: var(--body-main);
}
@keyframes unseen-fadeout-to-unread {
from {
background-color: var(--wikitable-bg-lighter);
}
to {
background-color: var(--search-box);
}
}
@keyframes unseen-fadeout-to-read {
from {
background-color: var(--wikitable-bg-lighter);
}
to {
background-color: var(--body-main);
}
}
.mwe-popups {
background: var(--body-light);
}
.mwe-popups .mwe-popups-container {
color: var(--text-color);
background: var(--body-light);
}
.mwe-popups .mwe-popups-container.flipped-x-y:before,
.mwe-popups .mwe-popups-container.flipped-y:before {
border-top: none;
}
.mwe-popups .mwe-popups-container.mwe-popups-no-image-tri:before {
border-bottom: none;
}
.mwe-popups .mwe-popups-container.flipped-x-y:after,
.mwe-popups .mwe-popups-container.flipped-y:after {
border-top-color: var(--body-light);
}
.mwe-popups .mwe-popups-container.mwe-popups-no-image-tri:after {
border-bottom-color: var(--body-light);
}
.mwe-popups .mwe-popups-settings-icon:hover,
.mwe-popups .mwe-popups-settings-icon:active {
background-color: var(--ooui-normal--hover);
}
.mwe-popups .mw-ui-icon-element:not(.disabled):hover {
background: none;
}
.mwe-popups .mwe-popups-extract {
color: var(--text-color);
}
.mwe-popups .mwe-popups-extract[dir='ltr']:after {
background-image: linear-gradient(to right, rgba(49, 62, 89, 0), var(--body-light) 50%);
}
.mwe-popups-overlay {
background-color: var(--ooui-window-background);
}
#mwe-popups-settings {
background: var(--ooui-interface);
border-color: var(--ooui-interface-border);
color: var(--text-color);
}
#mwe-popups-settings header {
border-color: var(--ooui-interface-border);
}
#mwe-popups-settings main#mwe-popups-settings-form p {
color: var(--byline-color);
}
#mwe-popups-settings main#mwe-popups-settings-form form label > span {
color: var(--ooui-text);
}
:root {
--smw-ask-options-even-bg: var(--body-mid);
--smw-ask-options-odd-bg: var(--body-light);
--smw-ask-action-btn-lblue-bg: var(--body-main);
--smw-ask-action-btn-lblue-color: #000;
--smw-ask-action-btn-lblue-border-color: var(--body-light);
--smw-ask-action-btn-dblue-bg: var(--body-light);
--smw-ask-action-btn-dblue-color: #fff;
--smw-ask-action-btn-dblue-border-color: var(--button-border);
}
.smw-ask-condition fieldset,
.smw-ask-printhead fieldset {
border-color: var(--sidebar);
}
.smw-ask-search fieldset,
.smw-ask-format fieldset,
.smw-ask-options fieldset {
border-color: var(--sidebar);
}
.strike > span:before,
.strike > span:after {
background: var(--sidebar);
}
.smw-ask-options-fields tr td {
background-color: var(--smw-ask-options-even-bg);
}
.smw-ask-options-fields tr:nth-child(odd) td {
background-color: var(--smw-ask-options-odd-bg);
}
.smw-ask-action-btn.smw-ask-action-btn-lblue,
.smw-ask-action-btn.smw-ask-action-btn-lblue:hover,
.smw-ask-action-btn.smw-ask-action-btn-lblue:visited {
background-color: var(--smw-ask-action-btn-lblue-bg);
color: var(--smw-ask-action-btn-lblue-color);
border-color: var(--smw-ask-action-btn-lblue-border-color);
}
.smw-ask-action-btn.smw-ask-action-btn-dblue,
.smw-ask-action-btn.smw-ask-action-btn-dblue:hover,
.smw-ask-action-btn.smw-ask-action-btn-dblue:visited {
background-color: var(--smw-ask-action-btn-dblue-bg);
color: var(--smw-ask-action-btn-dblue-color);
border-color: var(--smw-ask-action-btn-dblue-border-color);
}
.smw-ask-query textarea,
.smw-ask-actions textarea {
background-color: var(--ooui-interface);
border-color: var(--ooui-interface-border);
color: var(--ooui-text);
}
.smw-ask-query-format select {
background-color: var(--ooui-interface);
border: 1px solid var(--ooui-interface-border);
color: var(--ooui-text);
}
.smw-ask-toplinks {
background-color: var(--body-mid);
}
.smw-ask-toplinks span.smw-icon-info {
background: none;
padding: 0 !important;
}
.smw-ask-toplinks span.smw-icon-info::before {
content: '';
background: var(--text-color);
-webkit-mask: url("data:image/svg+xml,%3C%3Fxml version='1.0' encoding='UTF-8'%3F%3E%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 20 20'%3E%3Ctitle%3Einfo%3C/title%3E%3Cpath d='M10 0C4.477 0 0 4.477 0 10s4.477 10 10 10 10-4.477 10-10S15.523 0 10 0zM9 5h2v2H9zm0 4h2v6H9z'/%3E%3C/svg%3E") no-repeat 50% 50% / contain;
mask: url("data:image/svg+xml,%3C%3Fxml version='1.0' encoding='UTF-8'%3F%3E%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 20 20'%3E%3Ctitle%3Einfo%3C/title%3E%3Cpath d='M10 0C4.477 0 0 4.477 0 10s4.477 10 10 10 10-4.477 10-10S15.523 0 10 0zM9 5h2v2H9zm0 4h2v6H9z'/%3E%3C/svg%3E") no-repeat 50% 50% / contain;
padding: 0 0 3px 18px;
}
.smw-ask-options-row-odd {
background-color: var(--body-light);
}
.smw-ask-options-row-even {
background-color: var(--body-mid);
}
#options-toggle:not(:checked) + #options-list .options-parameter-list:after {
background-image: linear-gradient(to bottom, transparent, var(--body-mid) 90%);
}
.smw-ask-button-submit input {
background-color: var(--ooui-normal);
border-color: var(--ooui-normal-border);
color: var(--text-color);
}
.smw-ask-button-submit input:hover,
.smw-ask-button-lgrey:hover {
background-color: var(--ooui-normal--hover);
border-color: var(--ooui-normal-border);
}
input.smw-ask-action-btn.smw-ask-action-btn-dblue {
background-color: var(--ooui-normal);
border-color: var(--ooui-normal-border);
color: var(--ooui-text);
}
a.smw-ask-action-btn.smw-ask-action-btn-lblue {
background-color: var(--body-mid);
border-color: var(--body-mid);
color: var(--ooui-text);
}
a.smw-ask-action-btn.smw-ask-action-btn-lblue:visited {
background-color: var(--body-mid);
border-color: var(--body-mid);
color: var(--ooui-text);
}
a.smw-ask-action-btn.smw-ask-action-btn-lblue:hover {
background-color: var(--body-mid);
border-color: var(--body-mid);
color: var(--ooui-text);
}
a.smw-ask-action-btn-lgrey {
background-color: var(--ooui-normal);
border-color: var(--ooui-normal-border);
color: var(--ooui-text);
}
a.smw-ask-action-btn-lgrey:hover {
background-color: var(--ooui-normal--hover);
border-color: var(--ooui-normal-border);
color: var(--ooui-text);
}
.smw-callout-error {
background-color: var(--errorbox-bg);
border-color: var(--errorbox-border);
}
.smw-callout-info {
background-color: var(--body-light);
border-color: var(--body-dark);
}
.smw-callout-success {
background-color: var(--successbox-bg);
border-color: var(--successbox-border);
}
.smw-callout-warning {
background-color: var(--warningbox-bg);
border-color: var(--warningbox-bg);
}
.smw-tabs input.nav-tab:checked + label.nav-label,
.smw-tabs input.nav-tab:checked + label.nav-label:hover {
color: inherit;
}
#tab-smw-property-value:checked + label.nav-label .usage-count {
color: #fff;
background-color: var(--ooui-progressive);
}
#tab-smw-property-value:checked + label.nav-label .usage-count.moderate {
color: #fff;
background-color: #b55e0c;
border-color: #b55e0c;
}
#tab-smw-property-value:checked + label.nav-label .usage-count.high {
color: #fff;
background-color: #9f261e;
border-color: #9f261e;
}
.smw-property-page-results .header-title {
background-color: var(--ooui-interface);
border-bottom-color: var(--ooui-interface-border);
color: var(--ooui-text);
}
.smw-property-page-results .value-row:hover {
background-color: var(--ooui-normal--hover);
}
.smw-property-page-results .smw-table .header-row {
color: var(--text-color);
}
.tippy-tooltip.light-border-theme {
background-color: var(--body-light);
color: var(--text-color);
}
.tippy-tooltip.light-border-theme .tippy-arrow {
border-top-color: var(--body-light);
}
.tippy-tooltip.light-border-theme .tippy-arrow:after {
border-top-color: var(--body-light);
}
.tippy-header {
background-color: var(--body-dark);
border-bottom-color: var(--body-mid);
}
.smw-ui-input-filter {
background-color: var(--ooui-interface);
border-color: var(--ooui-interface-border);
color: var(--ooui-text);
}
.smw-ui-input-filter input {
border-left-color: var(--ooui-interface-border) !important;
color: var(--ooui-text) !important;
}
.smw-ui-pagination .page-link.link-disabled {
background-color: var(--ooui-disabled);
border-color: var(--ooui-disabled-border);
color: var(--subtle-color);
}
.smw-ui-pagination .page-link {
background-color: var(--ooui-normal);
border-color: var(--ooui-normal-border);
color: var(--link-color);
}
.smw-ui-pagination .page-link:hover {
background-color: var(--ooui-normal--hover);
border-color: var(--ooui-normal-border);
color: var(--link-color);
}
.smw-ui-pagination .page-link.link-active {
color: #fff;
background-color: var(--ooui-progressive);
border-color: var(--ooui-progressive);
}
.smw-tabs input.nav-tab:checked + label.nav-label {
border-color: var(--ooui-normal-border);
}
.smw-tabs section,
.smw-tabs .subtab-content {
border-top-color: var(--ooui-normal-border);
}
.smw-column-header {
color: var(--text-color);
}
.smw-factbox {
background: var(--body-main);
border-color: transparent;
}
.mw-body .mw-indicators #mw-indicator-smw-entity-examiner.mw-indicator .smw-indicator-vertical-bar-loader {
display: none;
}
.smwb-theme-light .smwb-title,
.smwb-theme-light .smwb-center,
.smwb-theme-light .smwb-actions,
.smwb-theme-light .smwb-prophead {
background-color: var(--body-mid);
}
.smwb-theme-light .smwb-factbox {
border-left-color: var(--body-mid);
}
.smwb-theme-light .smwb-ifactbox {
border-right-color: var(--body-mid);
}
.smwb-theme-light .smwb-propval {
background-color: var(--body-light);
}
.smwb-action-separator {
border-color: var(--wikitable-border);
}
.smwb-bottom {
border-bottom: 1px solid var(--wikitable-border);
}
.smwb-ifactbox .smwb-cell,
.smwb-factbox .smwb-cell {
border-top: 1px solid var(--wikitable-border);
}
.smwb-propvalue .smwb-prophead,
.smwb-ipropvalue .smwb-prophead,
.smwb-propvalue .smwb-propval,
.smwb-ipropvalue .smwb-propval {
font-size: 0.9em;
}
:root {
--filter-black-to-link: invert(36%) sepia(58%) saturate(433%) hue-rotate(344deg) brightness(100%) contrast(91%);
}
#bodyContent span.smwbrowse a {
color: black;
background-image: url('filepath://Smwbrowse.svg');
filter: var(--filter-black-to-link);
}
#bodyContent span.smwbrowse a:hover {
color: black;
background-image: url('filepath://Smwbrowse-hover.svg');
text-decoration: underline;
}
#bodyContent span.smwsearch a {
color: black;
filter: var(--filter-black-to-link);
background-image: url('filepath://Smwsearch.svg');
}
#bodyContent span.smwsearch a:hover {
color: black;
background-image: url('filepath://Smwsearch-hover.svg');
text-decoration: underline;
}
:root {
--tabber-tab-bg: var(--body-light);
--tabber-tab-border-color: var(--body-border);
--tabber-active-tab-bg: var(--body-light);
--tabber-active-tab-color: var(--text-color);
--tabber-active-tab-hover-bg: var(--body-light);
--tabber-active-tab-hover-border-color: var(--body-border);
--tabber-active-tab-hover-color: var(--text-color);
--tabber-active-tab-border-hider-color: var(--body-light);
--tabber-inactive-tab-bg: var(--body-background-color);
--tabber-inactive-tab-border-color: var(--body-border);
--tabber-inactive-tab-color: var(--text-color);
--tabber-inactive-tab-hover-bg: var(--body-light);
--tabber-inactive-tab-hover-border-color: var(--body-border);
}
.tabber {
margin: 1em 0;
}
.tabber .tabbertab {
background-color: var(--tabber-tab-bg);
border: 1px solid var(--tabber-tab-border-color);
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
padding: 1em 1.5em;
}
ul.tabbernav {
border: none;
margin-left: 2em;
margin-bottom: 0;
margin-right: 2em;
padding: 0;
font-family: inherit;
}
ul.tabbernav li.tabberactive > a {
background-color: var(--tabber-active-tab-bg);
color: var(--tabber-active-tab-color);
border-bottom: none;
position: relative;
}
ul.tabbernav li.tabberactive > a:hover {
color: var(--tabber-active-tab-hover-color);
background-color: var(--tabber-active-tab-hover-bg);
border-color: var(--tabber-active-tab-hover-border-color);
border-bottom: none;
}
ul.tabbernav li.tabberactive > a::after {
content: '';
position: absolute;
left: 0;
right: 0;
bottom: -1px;
border-bottom: 2px solid var(--tabber-active-tab-border-hider-color);
}
ul.tabbernav li a {
background-color: var(--tabber-inactive-tab-bg);
border-bottom: transparent;
border-color: var(--tabber-inactive-tab-border-color);
color: var(--tabber-inactive-tab-color);
display: inline-block;
font-size: 110%;
padding: 0.5em 1em;
}
ul.tabbernav li a:hover {
background-color: var(--tabber-inactive-tab-hover-bg);
border-color: var(--tabber-inactive-tab-hover-border-color);
}
ul.tabbernav li a:link,
ul.tabbernav li a:visited {
color: var(--tabber-inactive-tab-color);
}
:root {
--ooui-text: var(--text-color);
--ooui-interface: var(--body-light);
--ooui-interface-border: var(--body-border);
--ooui-window-background: rgba(255, 255, 255, 0.5);
--ooui-normal: #cdb3a6;
--ooui-normal--hover: #d8c4ba;
--ooui-normal-border: #d1b9ad;
--ooui-progressive: #936243;
--ooui-progressive--hover: #b27a57;
--ooui-accent: var(--link-color);
--ooui-input: #fff;
--ooui-input-border: #d1b9ad;
--ooui-input-border--hover: #ae846f;
--ooui-disabled: #ece3de;
--ooui-disabled-border: #e3d5ce;
--ooui-disabled-text: var(--subtle-color);
--ooui-pending-background-image: repeating-linear-gradient(-45deg, var(--search-box), var(--search-box) 20px, var(--body-main) 20px, var(--body-main) 30px);
}
.oo-ui-widget {
color: var(--ooui-text);
}
.oo-ui-checkboxInputWidget [type='checkbox'] + span,
.oo-ui-radioInputWidget [type='radio'] + span {
background-color: var(--ooui-input);
border-color: var(--ooui-input-border);
}
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:checked + span,
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:indeterminate + span {
background-color: var(--ooui-progressive);
border-color: var(--ooui-progressive);
}
.oo-ui-radioInputWidget.oo-ui-widget-enabled [type='radio']:checked + span {
border-color: var(--ooui-progressive);
}
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:checked:hover + span,
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:indeterminate:hover + span {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
}
.oo-ui-radioInputWidget.oo-ui-widget-enabled [type='radio']:checked:hover + span {
border-color: var(--ooui-progressive--hover);
}
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:hover + span,
.oo-ui-radioInputWidget.oo-ui-widget-enabled [type='radio']:hover + span {
border-color: var(--ooui-accent);
}
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:focus + span {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:active + span,
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:checked:active + span,
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:indeterminate:active + span {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
box-shadow: inset 0 0 0 1px var(--ooui-progressive--hover);
}
.oo-ui-radioInputWidget.oo-ui-widget-enabled [type='radio']:active + span {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
}
.oo-ui-radioInputWidget.oo-ui-widget-enabled [type='radio']:checked:active + span {
border-color: var(--ooui-progressive--hover);
box-shadow: inset 0 0 0 1px var(--ooui-progressive--hover);
}
.oo-ui-radioInputWidget.oo-ui-widget-enabled [type='radio']:checked:active + span:before {
border-color: var(--ooui-progressive--hover);
}
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:checked:focus + span,
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:indeterminate:focus + span {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent), inset 0 0 0 2px #fff;
}
.oo-ui-checkboxInputWidget [type='checkbox']:disabled + span,
.oo-ui-radioInputWidget [type='radio']:disabled + span {
background-color: var(--ooui-disabled);
border-color: var(--ooui-disabled);
}
.oo-ui-dropdownWidget-handle {
border-color: var(--ooui-normal-border);
}
.oo-ui-dropdownWidget.oo-ui-widget-enabled .oo-ui-dropdownWidget-handle {
background-color: var(--ooui-normal);
color: var(--ooui-text);
}
.oo-ui-dropdownWidget.oo-ui-widget-enabled .oo-ui-dropdownWidget-handle:hover {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
}
.oo-ui-dropdownWidget.oo-ui-widget-enabled .oo-ui-dropdownWidget-handle:active {
color: var(--ooui-text);
}
.oo-ui-dropdownWidget.oo-ui-widget-enabled .oo-ui-dropdownWidget-handle:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-dropdownWidget.oo-ui-widget-enabled.oo-ui-dropdownWidget-open .oo-ui-dropdownWidget-handle {
background-color: var(--ooui-normal--hover);
}
.oo-ui-dropdownWidget.oo-ui-widget-disabled .oo-ui-dropdownWidget-handle {
color: var(--ooui-disabled-text);
text-shadow: none;
border-color: var(--ooui-disabled-border);
background-color: var(--ooui-disabled);
}
.oo-ui-dropdownInputWidget select {
border-color: var(--ooui-normal-border);
}
.oo-ui-dropdownInputWidget option {
background-color: var(--ooui-interface);
}
.oo-ui-dropdownInputWidget.oo-ui-widget-enabled {
background-color: var(--ooui-normal);
}
.oo-ui-dropdownInputWidget.oo-ui-widget-enabled:hover {
background-color: var(--ooui-normal--hover);
}
.oo-ui-dropdownInputWidget.oo-ui-widget-enabled select {
color: var(--ooui-text);
}
.oo-ui-dropdownInputWidget.oo-ui-widget-enabled select:hover,
.oo-ui-dropdownInputWidget.oo-ui-widget-enabled select:active {
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
}
.oo-ui-dropdownInputWidget.oo-ui-widget-enabled select:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-labelWidget.oo-ui-inline-help {
color: var(--byline-color);
}
.oo-ui-menuSelectWidget {
background-color: var(--ooui-interface);
border-color: var(--ooui-interface-border);
}
.oo-ui-menuSelectWidget-frameless {
box-shadow: inset 0 -1px 0 0 var(--ooui-normal-border);
}
.oo-ui-menuSectionOptionWidget {
color: var(--byline-color);
}
.oo-ui-menuOptionWidget.oo-ui-optionWidget-highlighted,
.oo-ui-menuOptionWidget.oo-ui-optionWidget-selected {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
}
.oo-ui-menuOptionWidget.oo-ui-optionWidget-selected.oo-ui-menuOptionWidget.oo-ui-optionWidget-highlighted,
.oo-ui-menuOptionWidget.oo-ui-optionWidget-pressed.oo-ui-menuOptionWidget.oo-ui-optionWidget-highlighted {
color: var(--ooui-accent);
}
.oo-ui-menuOptionWidget.oo-ui-widget-enabled.oo-ui-optionWidget {
color: var(--ooui-text);
}
.oo-ui-messageDialog-title {
color: inherit;
}
.oo-ui-messageWidget.oo-ui-messageWidget-block.oo-ui-flaggedElement-error {
background-color: var(--errorbox-bg);
border-color: var(--errorbox-border);
}
.oo-ui-messageWidget.oo-ui-messageWidget-block.oo-ui-flaggedElement-warning {
background-color: var(--warningbox-bg);
border-color: var(--warningbox-border);
}
.oo-ui-messageWidget.oo-ui-messageWidget-block.oo-ui-flaggedElement-success {
background-color: var(--successbox-bg);
border-color: var(--successbox-border);
}
.oo-ui-messageWidget.oo-ui-messageWidget-block.oo-ui-flaggedElement-notice {
background-color: var(--messagebox-info-background);
border-color: var(--messagebox-info-border);
}
.oo-ui-messageWidget.oo-ui-flaggedElement-error:not(.oo-ui-messageWidget-block),
.oo-ui-messageWidget.oo-ui-flaggedElement-success:not(.oo-ui-messageWidget-block) {
color: var(--ooui-text);
}
.oo-ui-optionWidget.oo-ui-widget-disabled {
color: var(--ooui-disabled-text);
}
.oo-ui-outlineControlsWidget {
background-color: var(--ooui-normal);
}
.oo-ui-outlineOptionWidget.oo-ui-optionWidget-highlighted {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
}
.oo-ui-popupWidget-popup {
background-color: var(--ooui-interface);
border-color: var(--ooui-interface-border);
}
.oo-ui-popupWidget-anchored-top .oo-ui-popupWidget-anchor:after {
border-bottom-color: var(--ooui-interface);
}
.oo-ui-popupWidget-anchored-top .oo-ui-popupWidget-anchor:before {
border-bottom-color: var(--ooui-interface-border);
}
.oo-ui-popupWidget-anchored-bottom .oo-ui-popupWidget-anchor:after {
border-top-color: var(--ooui-interface);
}
.oo-ui-popupWidget-anchored-bottom .oo-ui-popupWidget-anchor:before {
border-top-color: var(--ooui-interface-border);
}
.oo-ui-popupWidget-anchored-start .oo-ui-popupWidget-anchor:after {
border-right-color: var(--ooui-interface);
}
.oo-ui-popupWidget-anchored-start .oo-ui-popupWidget-anchor:before {
border-right-color: var(--ooui-interface-border);
}
.oo-ui-popupWidget-anchored-end .oo-ui-popupWidget-anchor:after {
border-left-color: var(--ooui-interface);
}
.oo-ui-popupWidget-anchored-end .oo-ui-popupWidget-anchor:before {
border-left-color: var(--ooui-interface-border);
}
.oo-ui-searchWidget-query {
border-bottom-color: var(--ooui-interface-border);
}
.oo-ui-selectFileWidget-dropTarget {
background-color: var(--ooui-interface);
border-color: var(--ooui-interface-border);
}
.oo-ui-selectFileWidget.oo-ui-widget-enabled.oo-ui-selectFileWidget-dropTarget {
background-color: var(--ooui-interface);
}
.oo-ui-selectFileWidget.oo-ui-widget-enabled.oo-ui-selectFileWidget-dropTarget:hover {
border-color: var(--ooui-input-border--hover);
}
.oo-ui-tabOptionWidget {
color: var(--ooui-text);
}
.oo-ui-tabSelectWidget-framed .oo-ui-tabOptionWidget.oo-ui-optionWidget-selected {
background-color: var(--body-dark);
color: var(--ooui-text);
}
.oo-ui-tabSelectWidget-framed .oo-ui-tabOptionWidget.oo-ui-optionWidget-selected .oo-ui-labelElement-label {
border-bottom-color: var(--body-border);
}
.oo-ui-tabSelectWidget-framed .oo-ui-tabOptionWidget.oo-ui-widget-enabled:hover,
.oo-ui-tabSelectWidget-framed .oo-ui-tabOptionWidget.oo-ui-widget-enabled:active {
background-color: var(--body-light);
color: var(--ooui-text);
}
.oo-ui-tabSelectWidget-framed .oo-ui-tabOptionWidget.oo-ui-widget-enabled.oo-ui-optionWidget-selected:hover {
background-color: var(--body-dark);
}
.oo-ui-tabSelectWidget-frameless .oo-ui-tabOptionWidget.oo-ui-optionWidget-selected {
color: var(--ooui-progressive);
box-shadow: inset 0 -2px 0 0 var(--ooui-progressive);
}
.oo-ui-tabSelectWidget-frameless .oo-ui-tabOptionWidget.oo-ui-optionWidget-selected:hover,
.oo-ui-tabSelectWidget-frameless .oo-ui-tabOptionWidget.oo-ui-optionWidget-selected:focus {
color: var(--ooui-progressive--hover);
box-shadow: inset 0 -2px 0 0 var(--ooui-progressive--hover);
}
.oo-ui-tabSelectWidget-framed {
background: none;
border-bottom: 1px solid var(--ooui-interface-border);
}
.oo-ui-tabSelectWidget-frameless {
box-shadow: inset 0 -1px 0 0 var(--ooui-interface-border);
}
.oo-ui-tabSelectWidget-mobile {
}
.oo-ui-tabSelectWidget-mobile.oo-ui-tabSelectWidget-framed:after {
background: var(--mobile-navbox-linear-gradient);
}
.oo-ui-tabSelectWidget-mobile.oo-ui-tabSelectWidget-frameless:after {
background: var(--mobile-navbox-linear-gradient);
}
.oo-ui-tagItemWidget {
border-color: var(--ooui-normal-border);
}
.oo-ui-tagItemWidget.oo-ui-widget-enabled {
color: var(--ooui-text);
}
.oo-ui-tagItemWidget.oo-ui-widget-enabled:hover {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
}
.oo-ui-tagItemWidget.oo-ui-widget-enabled:not( .oo-ui-tagItemWidget-fixed ) {
background-color: var(--ooui-normal);
}
.oo-ui-tagItemWidget.oo-ui-widget-enabled .oo-ui-buttonElement-button:hover {
background-color: var(--ooui-normal--hover);
}
.oo-ui-tagMultiselectWidget.oo-ui-widget-enabled {
background-color: var(--ooui-interface);
}
.oo-ui-tagMultiselectWidget.oo-ui-widget-enabled.oo-ui-tagMultiselectWidget-outlined {
background-color: var(--ooui-normal);
}
.oo-ui-tagMultiselectWidget.oo-ui-widget-enabled.oo-ui-tagMultiselectWidget-outlined .oo-ui-tagItemWidget.oo-ui-widget-enabled {
background-color: var(--ooui-interface);
}
.oo-ui-textInputWidget .oo-ui-inputWidget-input {
background-color: var(--ooui-input);
color: var(--ooui-text);
border-color: var(--ooui-input-border);
}
.oo-ui-textInputWidget.oo-ui-widget-enabled .oo-ui-inputWidget-input::placeholder {
color: var(--subtle-color);
}
.oo-ui-textInputWidget.oo-ui-widget-enabled .oo-ui-inputWidget-input:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-textInputWidget.oo-ui-widget-enabled .oo-ui-inputWidget-input[readonly]:not(.oo-ui-pendingElement-pending) {
background-color: var(--ooui-disabled);
color: var(--ooui-disabled-text);
}
.oo-ui-textInputWidget.oo-ui-widget-enabled:hover .oo-ui-inputWidget-input {
border-color: var(--ooui-input-border--hover);
}
.oo-ui-textInputWidget.oo-ui-widget-enabled:hover .oo-ui-inputWidget-input:focus {
border-color: var(--ooui-accent);
}
@media screen and (min-width: 0) {
.oo-ui-textInputWidget.oo-ui-widget-enabled textarea.oo-ui-inputWidget-input:focus {
outline: 1px solid var(--ooui-accent);
}
}
.oo-ui-textInputWidget.oo-ui-widget-disabled .oo-ui-inputWidget-input {
background-color: var(--ooui-disabled);
color: var(--ooui-disabled-text);
text-shadow: none;
border-color: var(--ooui-disabled-border);
}
.oo-ui-toggleSwitchWidget {
background-color: var(--ooui-input);
border-color: var(--ooui-input-border);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled .oo-ui-toggleSwitchWidget-grip {
background-color: var(--ooui-input);
border-color: var(--ooui-input-border);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:hover {
background-color: var(--ooui-input);
border-color: var(--ooui-accent);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:hover .oo-ui-toggleSwitchWidget-grip {
background-color: var(--ooui-input);
border-color: var(--ooui-accent);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:active,
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:active:hover,
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:active:focus {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
box-shadow: inset 0 0 0 1px var(--ooui-progressive--hover);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:active .oo-ui-toggleSwitchWidget-grip,
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:active:hover .oo-ui-toggleSwitchWidget-grip,
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:active:focus .oo-ui-toggleSwitchWidget-grip {
background-color: var(--ooui-input);
border-color: var(--ooui-input);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:focus .oo-ui-toggleSwitchWidget-grip {
border-color: var(--ooui-accent);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled.oo-ui-toggleWidget-on {
background-color: var(--ooui-progressive);
border-color: var(--ooui-progressive);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled.oo-ui-toggleWidget-on .oo-ui-toggleSwitchWidget-grip {
background-color: var(--ooui-input);
border-color: var(--ooui-input);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled.oo-ui-toggleWidget-on:hover {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled.oo-ui-toggleWidget-on:active,
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled.oo-ui-toggleWidget-on:active:hover {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled.oo-ui-toggleWidget-on:focus {
border-color: var(--ooui-progressive);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled.oo-ui-toggleWidget-on:focus::before {
border-color: #fff;
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-disabled {
background-color: var(--ooui-disabled);
border-color: var(--ooui-disabled);
}
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled > .oo-ui-buttonElement-button {
color: var(--ooui-text);
}
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled > .oo-ui-buttonElement-button:hover {
color: var(--ooui-text);
}
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled > .oo-ui-buttonElement-button:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled.oo-ui-buttonElement-pressed > input.oo-ui-buttonElement-button,
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled > .oo-ui-buttonElement-button:active {
color: var(--ooui-text);
}
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button,
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button:hover {
color: var(--ooui-text);
}
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button:active,
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive.oo-ui-buttonElement-pressed > .oo-ui-buttonElement-button {
color: var(--ooui-text);
border-color: var(--ooui-text);
}
.oo-ui-buttonElement-frameless.oo-ui-widget-disabled > .oo-ui-buttonElement-button {
color: var(--ooui-disabled-text);
}
.oo-ui-buttonElement-framed.oo-ui-widget-disabled > .oo-ui-buttonElement-button {
background-color: var(--ooui-disabled);
border-color: var(--ooui-disabled-border);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled > .oo-ui-buttonElement-button {
background-color: var(--ooui-normal);
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled > .oo-ui-buttonElement-button:hover {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled > .oo-ui-buttonElement-button:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-buttonElement-active > .oo-ui-buttonElement-button {
background-color: var(--ooui-progressive--hover);
color: #fff;
border-color: var(--ooui-progressive--hover);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-buttonElement-active > .oo-ui-buttonElement-button:focus {
border-color: var(--ooui-progressive--hover);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled > .oo-ui-buttonElement-button:active,
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-buttonElement-pressed > .oo-ui-buttonElement-button {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive {
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button {
color: var(--ooui-text);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button:hover {
background-color: var(--ooui-normal--hover);
border-color: var(--ooui-progressive--hover);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-destructive > .oo-ui-buttonElement-button {
color: var(--ooui-text);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-destructive > .oo-ui-buttonElement-button:hover {
background-color: var(--ooui-normal--hover);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button {
background-color: var(--ooui-progressive);
border-color: var(--ooui-progressive);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button:hover {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent), inset 0 0 0 2px #fff;
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button:active,
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive.oo-ui-buttonElement-pressed > .oo-ui-buttonElement-button,
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive.oo-ui-buttonElement-active > .oo-ui-buttonElement-button,
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive.oo-ui-popupToolGroup-active > .oo-ui-buttonElement-button {
color: #fff;
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
}
.oo-ui-pendingElement-pending {
background-image: var(--ooui-pending-background-image);
background-size: 200%;
animation: oo-ui-pendingElement-stripes 6s linear infinite;
}
@keyframes oo-ui-pendingElement-stripes {
100% {
background-position: 100%;
}
}
.oo-ui-messageDialog-content > .oo-ui-window-foot {
outline-color: var(--ooui-interface-border);
}
.oo-ui-messageDialog-message {
color: var(--ooui-text);
}
.oo-ui-messageDialog-actions-horizontal .oo-ui-actionWidget {
border-right-color: var(--ooui-interface-border);
}
.oo-ui-messageDialog-actions-vertical .oo-ui-actionWidget {
border-bottom-color: var(--ooui-interface-border);
}
.oo-ui-processDialog-content .oo-ui-window-head,
.oo-ui-processDialog-content .oo-ui-window-foot {
outline-color: var(--ooui-interface-border);
}
.oo-ui-processDialog .oo-ui-actionWidget > .oo-ui-buttonElement-button {
border-top-color: transparent;
border-bottom-color: transparent;
}
.oo-ui-processDialog .oo-ui-actionWidget > .oo-ui-buttonElement-button:hover,
.oo-ui-processDialog .oo-ui-actionWidget > .oo-ui-buttonElement-button:active {
border-top-color: transparent;
border-bottom-color: transparent;
}
.oo-ui-processDialog .oo-ui-actionWidget:not( .oo-ui-flaggedElement-progressive ):not( .oo-ui-flaggedElement-destructive ) > .oo-ui-buttonElement-button:hover,
.oo-ui-processDialog .oo-ui-actionWidget:not( .oo-ui-flaggedElement-progressive ):not( .oo-ui-flaggedElement-destructive ) > .oo-ui-buttonElement-button:active {
border-right-color: var(--ooui-interface-border);
border-left-color: transparent;
}
.oo-ui-processDialog .oo-ui-actionWidget:not( .oo-ui-flaggedElement-progressive ):not( .oo-ui-flaggedElement-destructive ) > .oo-ui-buttonElement-button:focus {
border-color: var(--ooui-accent);
}
.oo-ui-processDialog-actions-safe .oo-ui-actionWidget > .oo-ui-buttonElement-button,
.oo-ui-processDialog-actions-other .oo-ui-actionWidget > .oo-ui-buttonElement-button {
border-right-color: var(--ooui-normal-border);
border-left-color: transparent;
}
.oo-ui-processDialog-actions-safe .oo-ui-widget-enabled.oo-ui-iconElement:not( .oo-ui-labelElement ) > .oo-ui-buttonElement-button:hover {
background-color: var(--ooui-normal--hover);
border-right-color: var(--ooui-interface-border);
}
.oo-ui-windowManager-modal > .oo-ui-dialog {
background-color: var(--ooui-window-background);
}
.oo-ui-windowManager-modal > .oo-ui-dialog > .oo-ui-window-frame {
background-color: var(--ooui-interface);
}
.oo-ui-windowManager-modal.oo-ui-windowManager-floating > .oo-ui-dialog > .oo-ui-window-frame {
border-color: var(--ooui-interface-border);
}
.oo-ui-window {
color: var(--ooui-text);
}
.oo-ui-toolbar-bar {
background-color: var(--ooui-interface);
color: var(--ooui-text);
}
.oo-ui-toolbar-position-top > .oo-ui-toolbar-bar {
border-bottom-color: var(--body-mid);
}
.oo-ui-toolbar-bar .oo-ui-bookletLayout > .oo-ui-menuLayout-menu {
border-right-color: var(--body-mid);
}
.oo-ui-tool.oo-ui-widget-enabled > .oo-ui-tool-link:hover {
background-color: var(--ooui-normal--hover);
}
.oo-ui-tool.oo-ui-widget-enabled > .oo-ui-tool-link:focus {
outline: 1px solid var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-tool.oo-ui-widget-enabled > .oo-ui-tool-link:active,
.oo-ui-tool.oo-ui-widget-enabled.oo-ui-tool-active > .oo-ui-tool-link,
.oo-ui-tool.oo-ui-widget-enabled.oo-ui-popupToolGroup-active > .oo-ui-tool-link {
background-color: var(--ooui-normal--hover);
color: var(--ooui-accent);
box-shadow: none;
}
.oo-ui-tool.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive > .oo-ui-tool-link {
background-color: var(--ooui-progressive);
}
.oo-ui-tool.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive > .oo-ui-tool-link:hover {
background-color: var(--ooui-progressive--hover);
}
.oo-ui-tool.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive > .oo-ui-tool-link:focus {
box-shadow: inset 0 0 0 1px var(--ooui-accent), inset 0 0 0 2px #fff;
}
.oo-ui-tool.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive > .oo-ui-tool-link:active,
.oo-ui-tool.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive.oo-ui-tool-active > .oo-ui-tool-link {
background-color: var(--ooui-progressive--hover);
}
.oo-ui-listToolGroup-tools .oo-ui-tool.oo-ui-widget-enabled {
background-color: var(--ooui-normal);
}
.oo-ui-listToolGroup-tools .oo-ui-tool.oo-ui-widget-enabled:hover {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
}
.oo-ui-listToolGroup-tools .oo-ui-tool-active.oo-ui-widget-enabled .oo-ui-tool-link .oo-ui-tool-title {
color: var(--ooui-progressive);
}
.oo-ui-menuToolGroup {
border-left-color: var(--body-mid);
border-right-color: var(--body-mid);
}
.oo-ui-popupToolGroup-tools {
background-color: var(--ooui-interface);
border-color: var(--body-mid);
}
.oo-ui-popupToolGroup.oo-ui-widget-enabled > .oo-ui-popupToolGroup-handle:hover {
background-color: var(--ooui-normal--hover);
}
.oo-ui-popupToolGroup.oo-ui-widget-enabled > .oo-ui-popupToolGroup-handle:focus {
outline: 1px solid var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-toolbar-actions .oo-ui-popupToolGroup.oo-ui-widget-enabled > .oo-ui-popupToolGroup-handle:hover {
border-right-color: var(--ooui-normal--hover);
}
.oo-ui-popupToolGroup-tools .oo-ui-tool.oo-ui-widget-enabled .oo-ui-tool-link:focus {
box-shadow: inset 0 0 0 2px var(--ooui-accent);
}
.oo-ui-popupToolGroup-tools .oo-ui-tool-active.oo-ui-widget-enabled .oo-ui-tool-link .oo-ui-tool-title {
color: var(--ooui-progressive);
}
.oo-ui-popupToolGroup.oo-ui-popupToolGroup-active > .oo-ui-popupToolGroup-handle {
background-color: var(--ooui-normal);
color: var(--ooui-accent);
}
.oo-ui-popupToolGroup.oo-ui-popupToolGroup-active > .oo-ui-popupToolGroup-handle:hover {
background-color: var(--ooui-normal--hover);
color: var(--ooui-accent);
}
.oo-ui-bookletLayout-outlinePanel > .oo-ui-outlineControlsWidget {
border-top-color: var(--ooui-interface-border);
}
.oo-ui-bookletLayout > .oo-ui-menuLayout-menu {
border-right-color: var(--ooui-interface-border);
}
.oo-ui-fieldLayout-disabled > .oo-ui-fieldLayout-body > .oo-ui-fieldLayout-header > .oo-ui-labelElement-label {
color: var(--ooui-disabled-text);
}
.oo-ui-panelLayout-framed {
border-color: var(--sidebar);
}
.oo-ui-icon-settings {
background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' width='20' height='20' viewBox='0 0 20 20'%3E%3Ctitle%3Esettings%3C/title%3E%3Cg transform='translate(10 10)'%3E%3Cpath id='a' d='M1.5-10h-3l-1 6.5h5m0 7h-5l1 6.5h3'/%3E%3Cuse xlink:href='%23a' transform='rotate(45)'/%3E%3Cuse xlink:href='%23a' transform='rotate(90)'/%3E%3Cuse xlink:href='%23a' transform='rotate(135)'/%3E%3C/g%3E%3Cpath d='M10 2.5a7.5 7.5 0 0 0 0 15 7.5 7.5 0 0 0 0-15v4a3.5 3.5 0 0 1 0 7 3.5 3.5 0 0 1 0-7'/%3E%3C/svg%3E");
}
.oo-ui-icon-clear {
background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 20 20'%3E%3Ctitle%3Eclear%3C/title%3E%3Cpath d='M10 0a10 10 0 1 0 10 10A10 10 0 0 0 10 0zm5.66 14.24-1.41 1.41L10 11.41l-4.24 4.25-1.42-1.42L8.59 10 4.34 5.76l1.42-1.42L10 8.59l4.24-4.24 1.41 1.41L11.41 10z'/%3E%3C/svg%3E");
}
.mw-widget-dateInputWidget-handle {
background-color: var(--ooui-input);
color: var(--ooui-text);
border-color: var(--ooui-input-border);
}
.mw-widget-dateInputWidget-calendar {
background-color: var(--ooui-interface);
}
.mw-widget-dateInputWidget.oo-ui-widget-enabled .mw-widget-dateInputWidget-handle:hover {
border-color: var(--ooui-input-border--hover);
}
.mw-widget-calendarWidget {
border-color: var(--ooui-interface-border);
}
.mw-widget-calendarWidget:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.mw-widget-calendarWidget-day,
.mw-widget-calendarWidget-day-heading {
color: var(--ooui-text);
}
.mw-widget-calendarWidget-day-additional {
color: var(--ooui-text);
opacity: 0.67;
}
.mw-widget-calendarWidget-day-today {
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.mw-widget-calendarWidget-item:hover {
background-color: var(--ooui-progressive);
}
.mw-widget-calendarWidget-item-selected {
background-color: var(--ooui-progressive--hover);
}
.mw-widgets-datetime-calendarWidget {
background-color: var(--ooui-interface);
border-color: var(--ooui-interface-border);
}
.mw-widgets-datetime-calendarWidget:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent), 0 2px 2px 0 rgba(0, 0, 0, 0.25);
}
.mw-widgets-datetime-calendarWidget-grid .mw-widgets-datetime-calendarWidget-cell.mw-widgets-datetime-calendarWidget-extra .oo-ui-buttonElement-button .oo-ui-labelElement-label {
color: var(--subtle-color);
}
.mw-widgets-datetime-calendarWidget-grid .mw-widgets-datetime-calendarWidget-cell.mw-widgets-datetime-calendarWidget-selected .oo-ui-buttonElement-button {
background-color: var(--ooui-progressive--hover);
}
.mw-widgets-datetime-dateTimeInputWidget-handle {
background-color: var(--ooui-input);
color: var(--ooui-text);
border-color: var(--ooui-input-border);
}
.mw-widgets-datetime-dateTimeInputWidget.oo-ui-widget-enabled.mw-widgets-datetime-dateTimeInputWidget-handle:hover {
border-color: var(--ooui-input-border--hover);
}
.mw-widgets-datetime-dateTimeInputWidget.oo-ui-widget-enabled:hover input,
.mw-widgets-datetime-dateTimeInputWidget.oo-ui-widget-enabled:hover textarea {
border-color: var(--ooui-input-border--hover);
}
.mw-widgets-datetime-dateTimeInputWidget.oo-ui-widget-enabled .mw-widgets-datetime-dateTimeInputWidget-editField:hover {
background-color: var(--ooui-normal);
}
.ve-activated .ve-init-mw-desktopArticleTarget-originalContent #catlinks:hover {
background: var(--ooui-normal--hover);
}
.ve-ui-overlay {
font-family: inherit;
}
.oo-ui-toolbar-position-top .ve-ui-toolbarDialog-position-above {
border-top-color: var(--body-mid);
}
.ve-ce-branchNode-blockSlug,
.ve-ce-branchNode-newSlug {
outline-color: var(--body-border);
background-color: var(--ooui-interface);
}
.ve-ui-specialCharacterPage h3 {
color: var(--byline-color);
}
.ve-ui-specialCharacterPage-character {
border-color: var(--body-mid);
}
.ve-ui-specialCharacterPage-character:hover {
border-color: var(--body-dark);
}
.ve-ce-linkAnnotation.ve-ce-annotation-active {
box-shadow: 0 0 0 1px var(--body-mid);
background: none;
}
.ve-ui-desktopContext .ve-ui-linkContextItem .ve-ui-linkContextItem-label {
border-color: var(--body-border);
}
.ve-ui-mwHelpPopupTool-version-label,
.ve-ui-mwHelpPopupTool-version-link,
.ve-ui-mwHelpPopupTool-version-date {
color: var(--byline-color);
}
.ve-ce-tableCellableNode {
border-color: var(--body-mid);
}
.ve-ce-mwReferencesListNode-muted {
color: var(--byline-color);
}
.ve-ui-mwTemplatePage-description,
.ve-ui-mwParameterPage-label,
.ve-ui-mwParameterPage-description-required,
.ve-ui-mwParameterPage-description-deprecated {
color: var(--byline-color);
}
.mw-widget-titleWidget-menu .mw-widget-titleOptionWidget-description {
color: var(--byline-color);
}
.ve-ui-mwGalleryDialog-menuLayout > .oo-ui-menuLayout-menu,
.ve-ui-mwGalleryDialog-innerMenuLayout > .oo-ui-menuLayout-menu,
.ve-ui-mwGalleryDialog .ve-ui-mwGalleryDialog-image-container,
.ve-ui-targetWidget {
border-color: var(--body-border);
}
.ve-ui-targetWidget:not(.oo-ui-pendingElement-pending) {
background-color: var(--body-main);
}
.ve-ui-mwSaveDialog {
color: var(--ooui-text);
}
.ve-ui-mwSaveDialog-options {
background-color: var(--ooui-interface);
border-color: var(--body-border);
}
.ve-ui-mwSaveDialog-summary {
background-color: var(--ooui-input);
}
.ve-ui-mwSaveDialog-editSummary-count {
border-color: var(--body-border);
}
.ve-ui-mwSaveDialog-license {
color: var(--byline-color);
}
.ve-ui-mwReferenceContextItem-muted {
color: var(--byline-color);
}
.ve-ui-mwNoticesPopupTool-items > div:not(:first-child),
.ve-ui-mwHelpPopupTool-item:not(:first-child) {
border-color: var(--body-border);
}
.ve-ui-mwTransclusionOutlineControlsWidget {
background-color: var(--ooui-interface);
border-top-color: var(--body-border);
}
.ve-ui-mwTransclusionOutlineTemplateWidget-sticky {
background-color: var(--ooui-interface);
}
.ve-ui-mwTransclusionOutlineTemplateWidget .ve-ui-mwTransclusionOutlineParameterWidget.oo-ui-optionWidget-highlighted {
color: var(--ooui-text);
}
.ve-ui-mwTransclusionOutlineTemplateWidget-no-template-parameters {
color: var(--subtle-color);
}
.ve-ui-mwParameterPage-undocumentedLabel {
color: var(--subtle-color);
}
.ve-ui-mwTwoPaneTransclusionDialogLayout > .oo-ui-menuLayout-menu {
border-right: var(--body-border);
}
.ve-ui-mwParameterPage-doc-required,
.ve-ui-mwParameterPage-doc-deprecated,
.ve-ui-mwParameterPage-inlineDescription .ve-ui-mwParameterPage-doc-example {
color: var(--byline-color);
}
.ve-ui-expandableContent-toggle {
background-color: var(--ooui-interface);
}
.ve-ui-expandableContent-fade {
background: linear-gradient(to right, rgba(255, 255, 255, 0) 0, var(--ooui-interface) 90%);
}
.ve-ui-commandHelpDialog-shortcut > kbd,
.ve-ui-commandHelpDialog-sequence > kbd {
background-color: var(--keypress-background);
color: var(--keypress-color);
border-color: var(--keypress-border);
box-shadow: none;
text-shadow: none;
}
.ve-init-mw-desktopArticleTarget-toolbarPlaceholder-floating .ve-init-mw-desktopArticleTarget-toolbarPlaceholder-bar {
background: var(--ooui-interface);
}
.ve-init-mw-desktopArticleTarget-toolbarPlaceholder-bar {
border-bottom-color: var(--body-mid);
}
figure[typeof~='mw:File/Thumb'],
figure[typeof~='mw:File/Frame'],
figure[typeof~='mw:Image/Thumb'],
figure[typeof~='mw:Video/Thumb'],
figure[typeof~='mw:Image/Frame'],
figure[typeof~='mw:Video/Frame'] {
border: none;
background-color: var(--thumb-bg);
}
figure[typeof~='mw:File/Thumb'] > a:first-child > *:first-child:not( .mw-broken-media ),
figure[typeof~='mw:File/Frame'] > a:first-child > *:first-child:not( .mw-broken-media ),
figure[typeof~='mw:Image/Thumb'] > a:first-child > *:first-child:not( .mw-broken-media ),
figure[typeof~='mw:Video/Thumb'] > a:first-child > *:first-child:not( .mw-broken-media ),
figure[typeof~='mw:Image/Frame'] > a:first-child > *:first-child:not( .mw-broken-media ),
figure[typeof~='mw:Video/Frame'] > a:first-child > *:first-child:not( .mw-broken-media ) {
border: none;
background: var(--thumb-bg);
}
figure[typeof~='mw:File/Thumb'] > figcaption,
figure[typeof~='mw:File/Frame'] > figcaption,
figure[typeof~='mw:Image/Thumb'] > figcaption,
figure[typeof~='mw:Video/Thumb'] > figcaption,
figure[typeof~='mw:Image/Frame'] > figcaption,
figure[typeof~='mw:Video/Frame'] > figcaption {
border: none;
background-color: var(--thumb-caption-bg);
padding: 4px 6px;
}
:root {
--keypress-background: #eee;
--keypress-border: #ccc;
--keypress-color: #333;
}
.toc .toctitle > * {
color: #fff;
}
.navbox .navbox-title {
color: #fff;
}
.navbox .navbox-list:not(last-child) {
border-bottom: none;
}
.archivelist {
background-color: var(--body-light);
border: solid 1px var(--body-border);
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
float: right;
margin: 5px;
padding: 5px;
text-align: center;
width: 120px;
}
.shortcut {
border: 1px solid var(--body-border);
background: var(--body-light);
float: right;
font-size: 0.8em;
margin: 0.5em 0em 0.5em 1em;
padding: 0.5em;
text-align: center;
}
.hatnote,
.seealso {
font-style: italic;
}
.hatnote i,
.seealso i {
font-style: normal;
}
div.hatnote,
div.seealso {
margin: 0.5em 1.6em;
}
div.hatnote + div.hatnote,
div.hatnote + div.seealso,
div.seealso + div.hatnote,
div.seealso + div.seealso {
margin-top: -0.5em;
}
.keypress {
background: var(--keypress-background);
color: var(--keypress-color);
font-family: inherit;
border: 1px solid var(--keypress-border);
border-radius: 2px;
font-size: 0.9em;
margin: 0 0.1em;
padding: 0.1em 0.4em;
white-space: nowrap;
}
.relative-location {
background: var(--body-light);
border: 1px solid var(--body-border);
border-spacing: 0;
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
text-align: center;
}
.relative-location-header {
background: var(--body-dark);
color: #fff;
font-weight: bold;
}
:root {
--documentation-background: #f9fafa;
--documentation-link-color: #e4eaee;
--documentation-headers-color: #fff;
--documentation-header-background: #949eaa;
--documentation-subheader-background: #808c9a;
--documentation-border: #e4eaee;
}
.documentation {
background: var(--documentation-background);
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
margin: 1em 0;
}
.documentation pre,
.documentation code {
background-color: var(--documentation-background);
border-color: var(--documentation-border);
}
.documentation h2,
.documentation hr {
border-color: var(--documentation-border);
}
.documentation-header {
color: var(--documentation-headers-color);
background: var(--documentation-header-background);
font-weight: bold;
padding: 1em 1.5em;
}
.documentation-title {
font-size: 1.25em;
}
.documentation-subheader {
color: var(--documentation-headers-color);
background: var(--documentation-subheader-background);
padding: 0.5em 1.5em;
}
.documentation-subheader a,
.documentation-subheader a:visited,
.documentation-subheader a:active {
color: var(--documentation-link-color);
}
.documentation-documentation,
.documentation-links {
font-size: 0.85em;
}
.documentation-content {
padding: 1em 1.5em;
}
.mw-templatedata-doc-params dl:not(:empty) {
column-count: 3;
border-top: 1px solid var(--body-border);
margin-bottom: 0.5em;
}
.mw-templatedata-doc-params dt::after {
content: ":";
}
.mw-templatedata-doc-params dd,
.mw-templatedata-doc-params dt {
margin: 0.1em 2em;
min-width: auto;
}
.mw-templatedata-doc-muted {
color: var(--subtle-color);
font-style: italic;
}
:root {
--infobox-text-color: var(--text-color);
--table-header: var(--body-dark);
--table-subheader: var(--body-mid);
--table-body: var(--body-light);
--table-border: var(--body-border);
}
.infobox {
font-size: 0.85em;
width: 300px;
border-collapse: collapse;
float: right;
table-layout: fixed;
margin: 0.5em 0 1em 1em;
}
.infobox .infobox-buttons {
display: flex;
flex-wrap: wrap;
justify-content: center;
grid-gap: 3px;
margin-bottom: 3px;
}
.infobox .infobox-buttons .button {
background: var(--table-subheader);
padding: 0 5px;
font-weight: bold;
flex: 1 1 20%;
max-width: 20%;
color: #fff;
}
.infobox .infobox-buttons .button.button-selected {
background: var(--table-header);
}
.infobox tbody {
border: 1px solid var(--table-border);
background: var(--table-body);
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(231, 215, 199, 0.5);
}
.infobox .infobox-header {
background: var(--table-header);
padding: 0.5em 0;
text-align: center;
color: #fff;
font-size: 1.15em;
font-weight: bold;
line-height: 1.4em;
}
.infobox .infobox-image {
text-align: center;
}
.infobox .infobox-subheader {
background: var(--table-subheader);
font-weight: bold;
text-align: center;
color: #fff;
}
.infobox .infobox-subheader a {
color: var(--link-color);
}
.infobox .infobox-padding {
backgound: var(--table-body);
}
.infobox tr td:not(.infobox-padding) {
padding: 0.2em 0.5em;
}
.infobox th:not(.infobox-header):not(.infobox-subheader):not(.infobox-nested) {
border-right: 2px solid var(--table-subheader);
text-align: right;
padding: 0.2em 0.5em;
}
.infobox select {
max-width: 300px;
}
.hidden {
display: none;
}
ol.references,
.reflist {
font-size: 90%;
}
.reflist {
list-style-type: decimal;
}
.reflist .references {
font-size: 100%;
list-style-type: inherit;
}
.reflist-lower-alpha {
list-style-type: lower-alpha;
}
ol.references li:target,
sup.reference:target {
background-color: var(--body-light);
}
.hideQuotes .refhide {
display: none;
}
:root {
--messagebox-obsolete-background: #cfcfcf;
--messagebox-obsolete-border: #464646;
--messagebox-obsolete-color: var(--text-color);
--messagebox-obsolete-link-color: #6c6c6c;
--messagebox-info-background: #ebebeb;
--messagebox-info-border: #898989;
--messagebox-info-color: var(--text-color);
--messagebox-info-link-color: #6c6c6c;
--messagebox-action-background: #c7e8fa;
--messagebox-action-border: #0b5884;
--messagebox-action-color: var(--text-color);
--messagebox-action-link-color: #03436b;
--messagebox-warn-background: #dfc0ba;
--messagebox-warn-border: #861c10;
--messagebox-warn-color: var(--text-color);
--messagebox-warn-link-color: #8e221a;
--messagebox-safe-background: #d8f0d3;
--messagebox-safe-border: #1b8408;
--messagebox-safe-color: var(--text-color);
--messagebox-safe-link-color: #1b8408;
--messagebox-disambig-background: #ebebeb;
--messagebox-disambig-border: #898989;
--messagebox-disambig-color: var(--text-color);
--messagebox-disambig-link-color: #6c6c6c;
--messagebox-discord-background: #5865f2;
--messagebox-discord-border: #4c57d0;
--messagebox-discord-link-color: #d2e5fc;
}
.mw-message-box,
.mw-message-box-error,
.mw-message-box-warning,
.mw-message-box-success,
.usermessage {
color: var(--text-color);
}
.messagebox {
width: 65%;
margin: 0.5em auto;
border-left: 15px solid;
border-color: var(--body-dark);
background-color: var(--body-light);
box-sizing: border-box;
}
.messagebox.obsolete {
background-color: var(--messagebox-obsolete-background);
border-color: var(--messagebox-obsolete-border);
color: var(--messagebox-obsolete-color);
}
.messagebox.obsolete a,
.messagebox.obsolete a:visited,
.messagebox.obsolete a:active {
color: var(--messagebox-obsolete-link-color);
}
.messagebox.info {
background-color: var(--messagebox-info-background);
border-color: var(--messagebox-info-border);
color: var(--messagebox-info-color);
}
.messagebox.info a,
.messagebox.info a:visited,
.messagebox.info a:active {
color: var(--messagebox-info-link-color);
}
.messagebox.action {
background-color: var(--messagebox-action-background);
border-color: var(--messagebox-action-border);
color: var(--messagebox-action-color);
}
.messagebox.action a,
.messagebox.action a:visited,
.messagebox.action a:active {
color: var(--messagebox-action-link-color);
}
.messagebox.warn {
background-color: var(--messagebox-warn-background);
border-color: var(--messagebox-warn-border);
color: var(--messagebox-warn-color);
}
.messagebox.warn a,
.messagebox.warn a:visited,
.messagebox.warn a:active {
color: var(--messagebox-warn-link-color);
}
.messagebox.safe {
background-color: var(--messagebox-safe-background);
border-color: var(--messagebox-safe-border);
color: var(--messagebox-safe-color);
}
.messagebox.safe a,
.messagebox.safe a:visited,
.messagebox.safe a:active {
color: var(--messagebox-safe-link-color);
}
.messagebox.disambig {
background-color: var(--messagebox-disambig-background);
border-color: var(--messagebox-disambig-border);
color: var(--messagebox-disambig-color);
}
.messagebox.disambig a,
.messagebox.disambig a:visited,
.messagebox.disambig a:active {
color: var(--messagebox-disambig-link-color);
}
.messagebox.discord {
background-color: var(--messagebox-discord-background);
border-color: var(--messagebox-discord-border);
color: #fff;
}
.messagebox.discord a,
.messagebox.discord a:visited,
.messagebox.discord a:active {
color: var(--messagebox-discord-link-color);
}
.messagebox.discord a.external,
.messagebox.discord a:visited.external,
.messagebox.discord a:active.external {
font-style: italic;
}
.messagebox.stub {
width: 40%;
}
.messagebox.hasdialogue {
padding: 0 10px;
width: auto;
}
:root {
--byline-arrow-filter: invert(29%) sepia(0%) saturate(376%) hue-rotate(172deg) brightness(87%) contrast(80%);
--tile-border-color: var(--body-border);
--tile-background-color: var(--body-light);
--tile-link-button-color: #f5e9db;
--tile-link-button-highlight-color: #dfccb0;
--tile-dark-color: #fff;
--tile-dark-bg: var(--body-dark);
--tile-dark-link-color: #ccc;
--tile-dark-byline-color: rgba(255, 255, 255, 0.7);
--tile-dark-header-color: #fff;
}
.tile {
background: var(--tile-background-color);
border: 1px solid var(--tile-border-color);
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
padding: 1.5em 2em 1em;
max-width: 40em;
}
.tile h2 {
font-size: 1.4em;
font-weight: bold;
border: none;
margin: 0 0 0.4em;
}
.tile .byline + h2 {
margin-top: -0.5em;
}
.tile.dark {
color: var(--tile-dark-color);
background: var(--tile-dark-bg);
border: none;
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.3);
}
.tile.dark h2 {
color: var(--tile-dark-header-color);
}
.tile.dark a {
color: var(--tile-dark-link-color);
}
.tile.dark .byline {
color: var(--tile-dark-byline-color);
}
.byline {
font-size: 0.9em;
color: var(--byline-color);
}
.byline a {
color: var(--byline-color);
}
.tile-row {
display: flex;
flex-flow: row wrap;
margin-bottom: 1em;
}
.tile-halves {
display: flex;
flex-flow: row wrap;
background: var(--tile-background-color);
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
}
.tile-halves h2 {
font-size: 1.4em;
font-weight: bold;
border: none;
margin: 0 0 0.4em;
}
.tile-halves .byline + h2 {
margin-top: -0.5em;
}
.tile-top {
width: 100%;
padding: 1.3rem 1.5rem 0.6rem;
}
.tile-top.tile-image {
display: flex;
align-items: center;
background-color: var(--body-light);
overflow: hidden;
padding: 0;
height: 13vw;
max-height: 12em;
transition: 0.4s ease-out;
}
.tile-halves:hover .tile-top.tile-image img {
transform: scale(1.1);
transition: 0.5s ease-out;
}
.tile-top.tile-image a {
width: 100%;
}
.tile-top.tile-image img {
width: 100%;
object-fit: cover;
max-height: 200px;
transition: 0.4s ease-out;
}
.tile-bottom {
background: var(--body-dark);
width: 100%;
padding: 1rem 1.5rem 0.6rem;
}
.tile-bottom h2 a {
color: #fff !important;
}
.tile-bottom.link-button {
align-self: flex-end;
padding: 0;
}
.tile-bottom.link-button a {
display: block;
text-align: center;
padding: 0.75em 1.5em 0.8em;
text-decoration: none;
}
.tile-bottom.read-more {
background: var(--tile-link-button-color);
transition: 0.3s ease-out;
}
.tile-bottom.read-more a {
color: var(--byline-color);
font-weight: bold;
text-align: right;
}
.tile-bottom.read-more:hover {
background: var(--tile-link-button-highlight-color);
}
.tile-bottom.read-more:hover .arrow {
transform: translateX(50%);
}
.tile-bottom.read-more .arrow {
filter: var(--byline-arrow-filter);
margin-left: 0.4em;
transition: 0.3s ease-out;
}
body.page-Main_Page.action-view .catlinks,
body.page-Main_Page.action-view #contentSub,
body.page-Main_Page.action-view #firstHeading,
body.page-Main_Page.action-view #siteNotice {
display: none;
}
body.page-Main_Page .mw-parser-output {
max-width: 75em;
margin: 0 auto;
}
body.page-Main_Page.action-view .catlinks,
body.page-Main_Page.action-view #contentSub,
body.page-Main_Page.action-view #siteNotice {
display: none;
}
.mainpage-header {
display: flex;
margin: 2.6em 1.75em 1.5em;
}
.mainpage-header .header-intro {
flex: 2;
}
.mainpage-header .header-intro h1 {
font-size: 2.5em;
font-weight: bold;
border: none;
margin: 0 0 0.15em;
}
.mainpage-header .header-intro p {
font-size: 1.1em;
line-height: 1.7em;
}
.mainpage-header .header-stats {
flex: 1;
display: flex;
justify-content: center;
align-items: center;
margin-top: -1em;
}
.mainpage-body {
display: grid;
grid-template-areas: "event event event" "update update update" "content content content" "left left right";
gap: 0.9rem;
grid-template-columns: repeat(3, 1fr);
}
.mainpage-body h2 a {
color: var(--text-color);
}
.mainpage-body .tile {
padding-left: 1.75em;
padding-right: 1.75em;
max-width: 100%;
}
.mainpage-body .tile-row {
width: 100%;
margin-bottom: 0;
}
.mainpage-body .tile-row {
display: grid;
gap: 0.9rem;
}
.mainpage-contents.tile-row {
display: flex;
}
.mainpage-contents.tile-row .tile-top {
height: 5.5rem;
}
.mainpage-left {
grid-area: left;
flex: 2;
display: flex;
flex-flow: column wrap;
}
.mainpage-left > * {
margin: 0 0 0.9rem;
}
.mainpage-right {
grid-area: right;
flex: 1;
display: flex;
flex-flow: column wrap;
}
.mainpage-right > * {
margin: 0 0 0.9rem;
}
.arrow {
background: url('filepath://White-chevron.svg') no-repeat;
display: inline-block;
height: 0.7rem;
width: 0.45rem;
vertical-align: middle;
}
.arrow.dark {
filter: invert(80%);
}
.mainpage-contents {
grid-area: content;
grid-template-columns: repeat(6, 1fr);
}
.mainpage-contents .tile-halves {
flex: 1;
}
.mainpage-contents .tile-top {
height: 4.5rem;
position: relative;
}
.mainpage-contents .tile-top.tile-image img {
height: auto;
}
.mainpage-contents h2 {
margin: 0;
padding: 0;
}
.mainpage-contents .tile-bottom.link-button a {
padding: 0.75em 0.2em;
}
.popular-pages ul {
display: grid;
grid-template-columns: repeat(3, 1fr);
grid-gap: 0.6em;
margin: 1em 0 0.7em 0;
}
.mp-popular-page-light {
display: flex;
align-items: center;
background-color: var(--button-background);
transition: 100ms;
}
.mp-popular-page-light a {
flex: 1;
display: block;
color: #fff;
font-weight: bold;
text-align: center;
text-decoration: none;
padding: 0.7em 1em;
}
.mp-popular-page-light:hover {
filter: brightness(115%);
transition: 100ms;
}
.mainpage-social {
border: none;
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.3);
}
.mainpage-social .tile-top {
display: flex;
align-items: center;
padding: 1em 1.5em;
}
.mainpage-social .tile-top a {
flex: 1;
position: relative;
text-decoration: none;
}
.mainpage-social .tile-top a:hover .arrow {
transform: translateX(50%);
}
.mainpage-social .tile-bottom {
border: none;
padding: 1em 1.75em;
}
.mainpage-social .tile-bottom p {
color: #fff;
font-weight: bold;
font-size: 0.9em;
text-align: center;
text-transform: uppercase;
letter-spacing: 0.03em;
margin: 0;
}
.mainpage-social .social-icon {
margin-right: 0.75em;
text-align: center;
width: 60px;
}
.mainpage-social .social-header {
color: #fff;
font-weight: bold;
font-size: 1.15em;
margin: 0.5em 0 -0.15em;
}
.mainpage-social .server-tagline {
color: rgba(255, 255, 255, 0.9);
margin-bottom: 0.5em;
}
.mainpage-social .arrow {
position: absolute;
top: calc(50% - .5em);
right: 0;
height: 1em;
width: 0.7em;
background-size: 0.7em 1em;
transition: 0.3s ease-out;
}
.mainpage-social.mainpage-discord .tile-top {
background: #5865f2;
}
.mainpage-social.mainpage-discord .tile-bottom {
background: #525ee0;
}
.mainpage-social.mainpage-twitter .tile-top {
background: #15202b;
}
.mainpage-social.mainpage-twitter .tile-bottom {
background: #121c26;
}
.mainpage-editing {
border: none;
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.3);
}
.mainpage-editing .tile-top {
background: #438ab5;
}
.mainpage-editing .tile-bottom {
background: #3980ab;
border: none;
padding: 0.8rem 1.5rem 0.4rem;
}
.mainpage-editing h2,
.mainpage-editing a {
color: #fff;
}
.mainpage-editing p {
color: rgba(255, 255, 255, 0.9);
}
.mainpage-editing ul {
list-style-image: url('filepath://Transparent-chevron.svg');
}
@media only screen and (max-width: 1200px) {
.mainpage-contents {
grid-template-columns: repeat(3, 1fr);
}
}
@media only screen and (max-width: 1000px) {
.mainpage-body {
grid-template-areas: "event event event" "update update update" "content content content" "left left left" "right right right";
}
.mainpage-recent-updates {
grid-template-columns: repeat(2, 1fr);
}
.mainpage-recent-updates .tile-halves:last-child {
display: none;
}
.mainpage-recent-updates .tile-halves:hover .tile-top img {
transform: scale(1.04);
}
.mainpage-recent-updates .tile-top {
height: 18vw;
min-height: 9em;
}
.mainpage-header .header-stats {
display: none;
}
.mainpage-left > *:last-child,
.mainpage-right > *:last-child {
margin-bottom: 0;
}
.popular-pages ul {
grid-template-columns: repeat(2, 1fr);
}
}
@media only screen and (max-width: 720px) {
.mainpage-recent-updates {
grid-template-columns: none;
}
.mainpage-recent-updates .tile-halves:last-child {
display: flex;
}
.mainpage-contents {
grid-template-columns: repeat(2, 1fr);
}
}
.mw-prefs-buttons {
background-color: var(--body-main);
border-top-color: var(--body-border);
box-shadow: none;
}
.mw-prefs-tabs-wrapper.oo-ui-panelLayout-framed,
.mw-prefs-tabs > .oo-ui-menuLayout-content > .oo-ui-indexLayout-stackLayout > .oo-ui-tabPanelLayout {
border-color: var(--body-border);
}
.mw-htmlform-ooui .mw-htmlform-matrix tbody tr:nth-child(even) td {
background-color: var(--body-light);
}
.mw-htmlform-ooui .mw-htmlform-matrix tbody tr:hover td {
background-color: var(--body-mid);
}
:root {
--rc-positive-color: #407813;
--rc-negative-color: #b41e0f;
}
.mw-plusminus-pos {
color: var(--rc-positive-color);
}
.mw-plusminus-neg {
color: var(--rc-negative-color);
}
.client-js .mw-recentchanges-toplinks:not(.mw-recentchanges-toplinks-collapsed) {
border-color: var(--body-border);
background-color: var(--body-light);
border-radius: 2px;
}
.mw-rcfilters-ui-filterTagMultiselectWidget-wrapper-content-title {
color: var(--text-color);
}
.mw-rcfilters-ui-filterTagMultiselectWidget-emptyFilters {
color: var(--byline-color);
}
.mw-rcfilters-ui-filterTagMultiselectWidget.oo-ui-widget-enabled .oo-ui-tagMultiselectWidget-handle {
background-color: var(--ooui-interface);
border-color: var(--ooui-interface-border);
}
.mw-rcfilters-ui-filterTagMultiselectWidget-views-select-widget.oo-ui-widget {
border-color: var(--ooui-interface-border);
}
.mw-rcfilters-collapsed .mw-rcfilters-ui-filterTagMultiselectWidget {
border-bottom-color: var(--ooui-interface-border);
}
.mw-rcfilters-ui-menuSelectWidget-footer {
background-color: var(--ooui-interface);
border-color: var(--ooui-interface-border);
}
.mw-rcfilters-ui-viewSwitchWidget label.oo-ui-labelWidget {
color: var(--byline-color);
}
.mw-rcfilters-ui-tagItemWidget-popup-content {
color: var(--ooui-text);
}
.mw-changeslist-legend,
.mw-rcfilters-ui-changesListWrapperWidget .mw-changeslist-legend {
background-color: var(--body-light);
border-color: var(--body-dark);
}
.mw-rcfilters-ui-changesListWrapperWidget-previousChangesIndicator {
border-color: var(--sidebar);
}
.client-js .mw-changeslist ul,
.client-js .mw-changeslist table.mw-enhanced-rc {
margin-left: 0;
}
.mw-rcfilters-ui-watchlistTopSectionWidget-separator {
border-color: var(--sidebar);
}
.mw-rcfilters-ui-itemMenuOptionWidget-header {
border-bottom-color: var(--ooui-interface);
background-color: var(--ooui-interface-border);
}
.mw-rcfilters-ui-itemMenuOptionWidget:not(:last-child):not(.mw-rcfilters-ui-itemMenuOptionWidget-identifier-talk) {
border-bottom-color: var(--ooui-normal-border);
}
.mw-rcfilters-ui-itemMenuOptionWidget-label-title,
.mw-rcfilters-ui-itemMenuOptionWidget-label-desc {
color: var(--text-color);
}
.mw-rcfilters-ui-filterMenuOptionWidget.oo-ui-flaggedElement-muted:not(.oo-ui-optionWidget-selected) {
background-color: var(--body-main);
}
.mw-rcfilters-ui-filterMenuOptionWidget.oo-ui-flaggedElement-muted .mw-rcfilters-ui-itemMenuOptionWidget-label-title,
.mw-rcfilters-ui-filterMenuOptionWidget.oo-ui-flaggedElement-muted .mw-rcfilters-ui-itemMenuOptionWidget-label-desc {
color: var(--subtle-color);
}
.mw-rcfilters-ui-filterMenuSectionOptionWidget {
background-color: var(--body-mid);
}
.mw-rcfilters-ui-filterMenuSectionOptionWidget-header-title.oo-ui-labelElement-label {
color: var(--ooui-text);
}
.mw-rcfilters-ui-filterMenuHeaderWidget-title {
color: var(--ooui-text);
}
.mw-rcfilters-ui-filterMenuHeaderWidget-header {
border-bottom-color: var(--ooui-interface-border);
background-color: var(--ooui-interface);
}
.mw-rcfilters-ui-itemMenuOptionWidget-view-namespaces {
border-top-color: var(--ooui-interface-border);
}
.mw-rcfilters-ui-datePopupWidget {
border-color: var(--ooui-interface-border);
}
.mw-rcfilters-ui-datePopupWidget .mw-rcfilters-ui-valuePickerWidget-title {
color: var(--byline-color);
}
.mw-rcfilters-ui-savedLinksListItemWidget-label {
color: var(--ooui-accent);
}
.client-js .mw-changeslist.mw-rcfilters-ui-changesListWrapperWidget-highlighted ul,
.client-js .mw-changeslist.mw-rcfilters-ui-changesListWrapperWidget-highlighted table.mw-enhanced-rc {
margin-left: 1.5em;
}
.page-Special_CreateAccount .mw-ui-container,
.page-Special_UserLogin .mw-ui-container {
max-width: 64rem;
margin: 0 auto;
}
.mw-number-text {
color: var(--byline-color);
}
.mw-body-content .mw-number-text h3 {
color: var(--text-color);
}
#mw-indicator-mw-helplink a {
background: none;
padding: 0;
display: flex;
align-items: center;
}
#mw-indicator-mw-helplink a::before {
content: '';
margin-right: 5px;
-webkit-mask: url("/resources/src/mediawiki.helplink/images/helpNotice.svg?46d34") no-repeat 50% 50% / contain;
mask: url("/resources/src/mediawiki.helplink/images/helpNotice.svg?46d34") no-repeat 50% 50% / contain;
background: var(--text-color);
height: 20px;
width: 20px;
}
.results-info {
color: inherit;
}
.mw-search-profile-tabs {
background-color: var(--body-mid);
border-color: transparent;
}
.search-types .current a {
color: inherit;
}
#mw-searchoptions {
background-color: var(--body-mid);
border-color: transparent;
}
#mw-searchoptions .divider {
border-color: var(--body-border);
}
#mw-searchoptions h4 {
font-family: inherit;
}
#mw-searchoptions .oo-ui-labelElement:nth-of-type(odd) {
font-weight: bold;
}
.searchresult {
line-height: 1.5;
}
.searchalttitle,
#mw-search-interwiki li {
font-size: 90%;
}
.mw-search-result-data {
color: var(--byline-color);
}
.page-Special_ListFiles a.image img {
width: inherit;
height: inherit;
}
.page-Special_ListFiles .TablePager_col_thumb {
text-align: center;
}
#editcount table[border="1"] {
background-color: var(--body-main) !important;
border-color: var(--wikitable-border) !important;
margin-top: 0.5em;
}
#editcount table[border="1"] th,
#editcount table[border="1"] td {
padding: 0.2em 0.4em;
}
#editcount table[border="1"] th {
background-color: var(--wikitable-header-bg);
border: 1px solid var(--wikitable-border);
}
#editcount table[border="1"] td {
border: 1px solid var(--wikitable-border);
}
#editcount table[border="1"] tr:nth-child(odd) {
background-color: var(--body-light);
}
.mw-echo-ui-notificationBadgeButtonPopupWidget-popup > .oo-ui-popupWidget-popup .mw-echo-ui-placeholderItemWidget {
background-color: inherit;
}
table.mw-interwikitable.body td.mw-interwikitable-local-yes {
background-color: var(--table-yes-background);
color: var(--table-yes-color);
}
.mw-protectedpages-unknown {
color: var(--byline-color);
}
.watchlistredir,
.allpagesredirect {
font-style: italic;
}
.allpagesredirect:after {
color: var(--byline-color);
content: " (redirect)";
}
.mw-apisandbox-toolbar {
background: var(--body-main);
}
.oo-ui-menuOptionWidget .mw-apisandbox-flag {
color: var(--byline-color);
}
tr.mw-abusefilter-list-disabled,
tr.mw-abusefilter-list-disabled td {
color: var(--byline-color);
}
table.mw-abuselog-details {
background: var(--wikitable-bg);
border-color: var(--wikitable-border);
}
table.mw-abuselog-details th {
background: var(--wikitable-header-bg);
}
table.mw-abuselog-details th,
table.mw-abuselog-details td {
border-color: var(--wikitable-border);
}
.mw-abusefilter-log-hidden-entry {
color: var(--subtle-color);
}
body td.mw-abusefilter-history-changed {
background: var(--table-no-background);
}
div.mw-abusefilter-editor,
#mw-abusefilter-warn-preview,
#mw-abusefilter-disallow-preview {
border-color: var(--ooui-input-border);
}
.mw-destfile-warning {
border-color: var(--warningbox-border);
color: var(--text-color);
background-color: var(--warningbox-bg);
}
span.fileinput-button {
background-color: var(--ooui-normal);
border-color: var(--ooui-normal-border);
color: var(--ooui-text);
}
ul.fileupload-results li.ful-success {
background-color: var(--successbox-bg);
}
ul.fileupload-results li.ful-success a {
color: var(--link-color);
}
ul.fileupload-results li.ful-error {
background-color: var(--errorbox-bg);
}
.color-container {
display: flex;
margin: 2em auto;
width: 80%;
max-width: 60em;
}
.color-column {
flex: 1;
margin-right: 1em;
}
.color-column:last-child {
margin-right: 0;
}
.color-column h3 {
padding: 0;
}
.color-group {
color: #333;
padding: 1em 1.5em;
transition: 0.2s ease-out;
}
.color-group:hover {
transform: scale(1.03);
}
.color-group.dark {
color: #fff;
}
.color-group .variable,
.color-group .hexcode {
font-family: monospace;
font-size: 1.1em;
-webkit-user-select: all;
-moz-user-select: all;
-ms-user-select: all;
user-select: all;
margin: 0;
}
body.wgl-readermode .color-group .variable,
body.wgl-readermode .color-group .hexcode {
font-size: inherit;
}
.color-group .variable {
font-weight: bold;
}
#t-print,
#t-permalink {
display: none;
}
#filetoc {
border-radius: 2px;
background: var(--body-mid);
border-color: transparent;
margin: 0.5em auto;
text-align: center;
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
}
li.gallerybox div.thumb {
border: none;
background-color: var(--thumb-bg);
}
.smwfact {
display: none;
}
.list-header {
background-color: var(--body-mid);
color: inherit;
}
.editOptions {
color: var(--text-color);
background-color: var(--sourceeditor-background-secondary);
border-color: var(--sourceeditor-border);
}
.mw-json th,
.mw-json td {
border-color: var(--wikitable-border);
}
.mw-json td {
background: var(--wikitable-bg);
}
.mw-json th {
background: var(--wikitable-header-bg);
}
6633f2d30a6d8a93eef4ab9bf65a1b63a7fe0317
Template:Relative location
10
944
2215
2024-04-11T16:02:16Z
BlackHawk
10
Created page with "{| class="relative-location" style="float:{{{float|right}}}; width:{{{width|200px}}}; clear:{{{clear|right}}};" {{#if:{{{image|}}}|{{!}}- {{!}}colspan="5"{{!}}{{{image}}} {{!}}- |}} | colspan="5" class="relative-location-header" |<span class="relative-location-txt">Relative location</span> |- | colspan="5" style="text-align:center;" |{{#if:{{{north|}}}|[[{{{north|}}}]]|}} |- | colspan="5" style="text-align:center;" |{{#if:{{{north|}}}|↑|}} |- | style="width:25%" |{{..."
wikitext
text/x-wiki
{| class="relative-location" style="float:{{{float|right}}}; width:{{{width|200px}}}; clear:{{{clear|right}}};"
{{#if:{{{image|}}}|{{!}}-
{{!}}colspan="5"{{!}}{{{image}}}
{{!}}- |}}
| colspan="5" class="relative-location-header" |<span class="relative-location-txt">Relative location</span>
|-
| colspan="5" style="text-align:center;" |{{#if:{{{north|}}}|[[{{{north|}}}]]|}}
|-
| colspan="5" style="text-align:center;" |{{#if:{{{north|}}}|↑|}}
|-
| style="width:25%" |{{#if:{{{west|}}}|[[{{{west|}}}]]|}}
| style="width:7.5%" |{{#if:{{{west|}}}|←|}}
| style="width:25%; align-items: center;" |'''{{{location|{{PAGENAME}}}}}'''
| style="width:7.5%" |{{#if:{{{east|}}}|→|}}
| style="width:25%" |{{#if:{{{east|}}}|[[{{{east|}}}]]|}}
|-
| colspan="5" style="text-align:center;" |{{#if:{{{south|}}}|↓|}}
|-
| colspan="5" style="text-align:center;" |{{#if:{{{south|}}}|[[{{{south|}}}]]|}}
|}<noinclude>{{/doc}}</noinclude>
{{Mainonly|[[Category:Locations]]}}
a4ed14f8c3615fae14a04cf6715ff1535f14be60
2219
2215
2024-04-11T16:13:38Z
BlackHawk
10
wikitext
text/x-wiki
{| class="relative-location" style="float:{{{float|right}}}; width:{{{width|300px}}}; clear:{{{clear|right}}};"
{{#if:{{{image|}}}|{{!}}-
{{!}}colspan="5"{{!}}{{{image}}}
{{!}}- |}}
| colspan="5" class="relative-location-header" |<span class="relative-location-txt">Relative location</span>
|-
| colspan="5" style="text-align:center;" |{{#if:{{{north|}}}|[[{{{north|}}}]]|}}
|-
| colspan="5" style="text-align:center;" |{{#if:{{{north|}}}|↑|}}
|-
| style="width:25%" |{{#if:{{{west|}}}|[[{{{west|}}}]]|}}
| style="width:7.5%" |{{#if:{{{west|}}}|←|}}
| style="width:25%; align-items: center;" |'''{{{location|{{PAGENAME}}}}}'''
| style="width:7.5%" |{{#if:{{{east|}}}|→|}}
| style="width:25%" |{{#if:{{{east|}}}|[[{{{east|}}}]]|}}
|-
| colspan="5" style="text-align:center;" |{{#if:{{{south|}}}|↓|}}
|-
| colspan="5" style="text-align:center;" |{{#if:{{{south|}}}|[[{{{south|}}}]]|}}
|}<noinclude>{{/doc}}</noinclude>
{{Mainonly|[[Category:Locations]]}}
3868a7fe0758bee36bb89e3f308cc19ed71d5bd2
2235
2219
2024-04-11T16:25:38Z
BlackHawk
10
wikitext
text/x-wiki
{| class="relative-location" style="float:{{{float|right}}}; width:{{{width|300px}}}; clear:{{{clear|right}}};"
{{#if:{{{image|}}}|{{!}}-
{{!}}colspan="5"{{!}}{{{image}}}
{{!}}- |}}
| colspan="5" class="relative-location-header" | Relative location
|-
| colspan="5" style="text-align:center;" | {{#if:{{{north|}}}|[[{{{north|}}}]]|}}
|-
| colspan="5" style="text-align:center;" | {{#if:{{{north|}}}|↑|}}
|-
| style="width:25%" | {{#if:{{{west|}}}|[[{{{west|}}}]]|}}
| style="width:7.5%" | {{#if:{{{west|}}}|←|}}
| style="width:25%; align-items: center;" | '''{{{location|{{PAGENAME}}}}}'''
| style="width:7.5%" | {{#if:{{{east|}}}|→|}}
| style="width:25%" | {{#if:{{{east|}}}|[[{{{east|}}}]]|}}
|-
| colspan="5" style="text-align:center;" | {{#if:{{{south|}}}|↓|}}
|-
| colspan="5" style="text-align:center;" | {{#if:{{{south|}}}|[[{{{south|}}}]]|}}
|}<noinclude>{{/doc}}</noinclude>
{{Mainonly|[[Category:Locations]]}}
b21da4483e94d269019e0b727a4e7a68f28b34ad
Template:Relative location/doc
10
945
2216
2024-04-11T16:10:36Z
BlackHawk
10
Created page with "{{documentation}} The '''Relative location''' template is used to display graphically where a location is in terms of other locations. Refer to the [[locations]] page to see what should be given the Relative Location template. ==Usage== <pre> {{Relative location |location = |north = |east = |south = |west = }} </pre> ==Examples== ===North, south, east, and west=== {{Relative location |location = Sea Road |north = |east = West Waterfront |south = East Beach |west =..."
wikitext
text/x-wiki
{{documentation}}
The '''Relative location''' template is used to display graphically where a location is in terms of other locations.
Refer to the [[locations]] page to see what should be given the Relative Location template.
==Usage==
<pre>
{{Relative location
|location =
|north =
|east =
|south =
|west =
}}
</pre>
==Examples==
===North, south, east, and west===
{{Relative location
|location = Sea Road
|north =
|east = West Waterfront
|south = East Beach
|west =
}}
<pre>
{{Relative location
|location = Sea Road
|north =
|east = West Waterfront
|south = East Beach
|west =
}}
</pre>
{{clear}}
===South only; width 400 pixels===
{{Relative location
|location = Sea Road
|width = 400px
|south = East Beach
}}
<pre>
{{Relative location
|location = Sea Road
|width = 400px
|south = East Beach
}}
</pre>
{{clear}}
===North, south, east, west; floated to the left===
{{Relative location
|location = Sea Road
|north =
|east = West Waterfront
|south = East Beach
|west =
|float = left
}}
<pre>
{{Relative location
|location = Sea Road
|north =
|east = West Waterfront
|south = East Beach
|west =
|float = left
}}
</pre>
<includeonly>[[Category:Navigational templates|{{PAGENAME}}]]</includeonly>
846273e194c7ce3936d3d896fbfd13d0048b9c9a
Sea Road
0
813
2217
2026
2024-04-11T16:11:59Z
BlackHawk
10
wikitext
text/x-wiki
{{Infobox Location
|name = Sea Road
|image = [[File:Sea Road.jpg|280px]]
|release =
|premium =
|episode =
}}
{{Relative location
|location = Sea Road
|north =
|east = West Waterfront
|south = East Beach
|west =
}}
The '''Sea Road''' is a location in [[Hopeport (location)|Hopeport]].{{CiteTwitter|author=@AndrewCGower|url=https://twitter.com/andrewcgower/status/1776276857706479810|date=5 April 2024|archiveurl=https://web.archive.org/web/20240406173123/https://twitter.com/andrewcgower/status/1776276857706479810|archivedate=6 April 2024|quote=store.steampowered.com/app/2791440/Brighter_Shores/ Quite a few people have been asking how the 'rooms' in Brighter Shores connect together, so I have a made a quick video of me running across a small section of Hopeport. You can see how easily you can move between rooms, and how the 'rooms' connect together to form a much larger world.|notes=Timestamp in the video: 0:37 / 1:41.|name=|group=}} It connects to the [[West Waterfront]] to the east and [[East Beach]] to the south.
==References==
{{Reflist}}
9d011ee5970808ca094e5b7fbd9ea099c8aa8406
2253
2217
2024-04-11T17:14:34Z
BlackHawk
10
wikitext
text/x-wiki
{{Infobox Location
|name = Sea Road
|image = [[File:Sea Road.jpg|280px]]
|release = Q3 [[2024]]
|premium = No
|episode = Hopeport
}}
{{Relative location
|location = Sea Road
|north =
|east = West Waterfront
|south = East Beach
|west =
}}
The '''Sea Road''' is a location in [[Hopeport (location)|Hopeport]].{{CiteTwitter|author=@AndrewCGower|url=https://twitter.com/andrewcgower/status/1776276857706479810|date=5 April 2024|archiveurl=https://web.archive.org/web/20240406173123/https://twitter.com/andrewcgower/status/1776276857706479810|archivedate=6 April 2024|quote=store.steampowered.com/app/2791440/Brighter_Shores/ Quite a few people have been asking how the 'rooms' in Brighter Shores connect together, so I have a made a quick video of me running across a small section of Hopeport. You can see how easily you can move between rooms, and how the 'rooms' connect together to form a much larger world.|notes=Timestamp in the video: 0:37 / 1:41.|name=|group=}} It connects to the [[West Waterfront]] to the east and [[East Beach]] to the south.
==References==
{{Reflist}}
72da7cf1a7a40409395d0e366c009ee79274b059
West Waterfront
0
812
2218
2025
2024-04-11T16:13:17Z
BlackHawk
10
wikitext
text/x-wiki
{{Infobox Location
|name = West Waterfront
|image = [[File:West Waterfront.jpg|280px]]
|release =
|premium =
|episode =
}}
{{Relative location
|location = West Waterfront
|north =
|east = Central Waterfront
|south =
|west = Sea Road
}}
The '''West Waterfront''' is a location in [[Hopeport (location)|Hopeport]].{{CiteTwitter|author=@AndrewCGower|url=https://twitter.com/andrewcgower/status/1776276857706479810|date=5 April 2024|archiveurl=https://web.archive.org/web/20240406173123/https://twitter.com/andrewcgower/status/1776276857706479810|archivedate=6 April 2024|quote=store.steampowered.com/app/2791440/Brighter_Shores/ Quite a few people have been asking how the 'rooms' in Brighter Shores connect together, so I have a made a quick video of me running across a small section of Hopeport. You can see how easily you can move between rooms, and how the 'rooms' connect together to form a much larger world.|notes=Timestamp in the video: 0:27 / 1:41.|name=|group=}} It connects to the [[Central Waterfront]] to the east and [[Sea Road]] to the west.
==References==
{{Reflist}}
2da6f40ee17dd9246853fc235ff32c9d78f48006
2254
2218
2024-04-11T17:14:40Z
BlackHawk
10
wikitext
text/x-wiki
{{Infobox Location
|name = West Waterfront
|image = [[File:West Waterfront.jpg|280px]]
|release = Q3 [[2024]]
|premium = No
|episode = Hopeport
}}
{{Relative location
|location = West Waterfront
|north =
|east = Central Waterfront
|south =
|west = Sea Road
}}
The '''West Waterfront''' is a location in [[Hopeport (location)|Hopeport]].{{CiteTwitter|author=@AndrewCGower|url=https://twitter.com/andrewcgower/status/1776276857706479810|date=5 April 2024|archiveurl=https://web.archive.org/web/20240406173123/https://twitter.com/andrewcgower/status/1776276857706479810|archivedate=6 April 2024|quote=store.steampowered.com/app/2791440/Brighter_Shores/ Quite a few people have been asking how the 'rooms' in Brighter Shores connect together, so I have a made a quick video of me running across a small section of Hopeport. You can see how easily you can move between rooms, and how the 'rooms' connect together to form a much larger world.|notes=Timestamp in the video: 0:27 / 1:41.|name=|group=}} It connects to the [[Central Waterfront]] to the east and [[Sea Road]] to the west.
==References==
{{Reflist}}
70d672c1e17b0a7e0d7db6498652feb0e415118b
Central Waterfront
0
811
2222
2024
2024-04-11T16:15:57Z
BlackHawk
10
wikitext
text/x-wiki
{{Infobox Location
|name = Central Waterfront
|image = [[File:Central Waterfront.jpg|280px]]
|release =
|premium =
|episode =
}}
{{Relative location
|location = Central Waterfront
|north = Eel Street
|east =
|south =
|west = West Waterfront
}}
The '''Central Waterfront''' is a location in [[Hopeport (location)|Hopeport]].{{CiteTwitter|author=@AndrewCGower|url=https://twitter.com/andrewcgower/status/1776276857706479810|date=5 April 2024|archiveurl=https://web.archive.org/web/20240406173123/https://twitter.com/andrewcgower/status/1776276857706479810|archivedate=6 April 2024|quote=store.steampowered.com/app/2791440/Brighter_Shores/ Quite a few people have been asking how the 'rooms' in Brighter Shores connect together, so I have a made a quick video of me running across a small section of Hopeport. You can see how easily you can move between rooms, and how the 'rooms' connect together to form a much larger world.|notes=Timestamp in the video: 0:20 / 1:41.|name=|group=}} It connects with [[Eel Street]] to the north and the [[West Waterfront]] to the west.
==References==
{{Reflist}}
65959de5c757fc45dd2507cf8efb9456e7a4d265
Eel Street
0
810
2223
2023
2024-04-11T16:16:37Z
BlackHawk
10
wikitext
text/x-wiki
{{Infobox Location
|name = Eel Street
|image = [[File:Eel Street.jpg|280px]]
|release =
|premium =
|episode =
}}
{{Relative location
|location = Eel Street
|north = Eel Street Bridge
|east =
|south = Central Waterfront
|west =
}}
'''Eel Street''' is a location in [[Hopeport (location)|Hopeport]].{{CiteTwitter|author=@AndrewCGower|url=https://twitter.com/andrewcgower/status/1776276857706479810|date=5 April 2024|archiveurl=https://web.archive.org/web/20240406173123/https://twitter.com/andrewcgower/status/1776276857706479810|archivedate=6 April 2024|quote=store.steampowered.com/app/2791440/Brighter_Shores/ Quite a few people have been asking how the 'rooms' in Brighter Shores connect together, so I have a made a quick video of me running across a small section of Hopeport. You can see how easily you can move between rooms, and how the 'rooms' connect together to form a much larger world.|notes=Timestamp in the video: 0:13 / 1:41.|name=|group=}} It is connected to the [[Eel Street Bridge]] to the north and the [[Central Waterfront]] to the south. A [[fishmonger]] is located on Eel Street.
==References==
{{Reflist}}
237e290498d745a065d0b6cdd4b5b09c2c9796eb
Eel Street Bridge
0
809
2224
2021
2024-04-11T16:17:07Z
BlackHawk
10
wikitext
text/x-wiki
{{Infobox Location
|name = Eel Street Bridge
|image = [[File:Eel Street Bridge.jpg|280px]]
|release =
|premium =
|episode =
}}
{{Relative location
|location = Eel Street Bridge
|north = Town Square
|east =
|south = Eel Street
|west =
}}
The '''Eel Street Bridge''' is a location in [[Hopeport (location)|Hopeport]].{{CiteTwitter|author=@AndrewCGower|url=https://twitter.com/andrewcgower/status/1776276857706479810|date=5 April 2024|archiveurl=https://web.archive.org/web/20240406173123/https://twitter.com/andrewcgower/status/1776276857706479810|archivedate=6 April 2024|quote=store.steampowered.com/app/2791440/Brighter_Shores/ Quite a few people have been asking how the 'rooms' in Brighter Shores connect together, so I have a made a quick video of me running across a small section of Hopeport. You can see how easily you can move between rooms, and how the 'rooms' connect together to form a much larger world.|notes=Timestamp in the video: 0:07 / 1:41.|name=|group=}} The bridge connects [[Eel Street]] to the south and the Hopeport [[Town Square]] to the north.
==References==
{{Reflist}}
60b0e63054cedaa99199d61db70b8ccfe19911c5
Town Square
0
838
2225
2194
2024-04-11T16:17:40Z
BlackHawk
10
wikitext
text/x-wiki
{{Infobox Location
|name = Town Square
|image = [[File:Town_Square.jpg|280px]]
|release =
|premium =
|episode = Hopeport
}}
{{Relative location
|location = Town Square
|north =
|east =
|south = Eel Street Bridge
|west =
}}
The '''Town Square''' is a location in [[Hopeport (location)|Hopeport]].{{CiteTwitter|author=@AndrewCGower|url=https://twitter.com/andrewcgower/status/1776276857706479810|date=5 April 2024|archiveurl=https://web.archive.org/web/20240406173123/https://twitter.com/andrewcgower/status/1776276857706479810|archivedate=6 April 2024|quote=store.steampowered.com/app/2791440/Brighter_Shores/ Quite a few people have been asking how the 'rooms' in Brighter Shores connect together, so I have a made a quick video of me running across a small section of Hopeport. You can see how easily you can move between rooms, and how the 'rooms' connect together to form a much larger world.|notes=Timestamp in the video: 0:00 / 1:41.|name=|group=}} It connects to the [[Eel Street Bridge]] in the south. [[Zeltay Tramagan]] sells items in the square.
==References==
{{Reflist}}
97d28e113d3393990c4eb3d6a4ca504979a1e594
East Beach
0
814
2228
2027
2024-04-11T16:21:07Z
BlackHawk
10
wikitext
text/x-wiki
{{Infobox Location
|name = East Beach
|image = [[File:East Beach.jpg|280px]]
|release =
|premium =
|episode =
}}
{{Relative location
|location = East Beach
|north = Sea Road
|east =
|south =
|west = Seashells Seashore
}}
The '''East Beach''' is a location in [[Hopeport (location)|Hopeport]].{{CiteTwitter|author=@AndrewCGower|url=https://twitter.com/andrewcgower/status/1776276857706479810|date=5 April 2024|archiveurl=https://web.archive.org/web/20240406173123/https://twitter.com/andrewcgower/status/1776276857706479810|archivedate=6 April 2024|quote=store.steampowered.com/app/2791440/Brighter_Shores/ Quite a few people have been asking how the 'rooms' in Brighter Shores connect together, so I have a made a quick video of me running across a small section of Hopeport. You can see how easily you can move between rooms, and how the 'rooms' connect together to form a much larger world.|notes=Timestamp in the video: 0:39 / 1:41.|name=|group=}} It connects to [[Sea Road]] in the north and the [[Seashells Seashore]] to the west.
==References==
{{Reflist}}
7f36f68e03482e6d2a04b921ba655f82e2c2c38b
2252
2228
2024-04-11T17:14:28Z
BlackHawk
10
wikitext
text/x-wiki
{{Infobox Location
|name = East Beach
|image = [[File:East Beach.jpg|280px]]
|release = Q3 [[2024]]
|premium = No
|episode = Hopeport
}}
{{Relative location
|location = East Beach
|north = Sea Road
|east =
|south =
|west = Seashells Seashore
}}
The '''East Beach''' is a location in [[Hopeport (location)|Hopeport]].{{CiteTwitter|author=@AndrewCGower|url=https://twitter.com/andrewcgower/status/1776276857706479810|date=5 April 2024|archiveurl=https://web.archive.org/web/20240406173123/https://twitter.com/andrewcgower/status/1776276857706479810|archivedate=6 April 2024|quote=store.steampowered.com/app/2791440/Brighter_Shores/ Quite a few people have been asking how the 'rooms' in Brighter Shores connect together, so I have a made a quick video of me running across a small section of Hopeport. You can see how easily you can move between rooms, and how the 'rooms' connect together to form a much larger world.|notes=Timestamp in the video: 0:39 / 1:41.|name=|group=}} It connects to [[Sea Road]] in the north and the [[Seashells Seashore]] to the west.
==References==
{{Reflist}}
a7a229fa6265e8f9e398e70ecd3e547aff6e2363
Seashells Seashore
0
815
2229
2028
2024-04-11T16:21:50Z
BlackHawk
10
wikitext
text/x-wiki
{{Infobox Location
|name = Seashells Seashore
|image = [[File:Seashells Seashore.jpg|280px]]
|release =
|premium =
|episode =
}}
{{Relative location
|location = Seashells Seashore
|north =
|east = East Beach
|south =
|west = Jellyfish Landing
}}
'''Seashells Seashore''' is a location in [[Hopeport (location)|Hopeport]].{{CiteTwitter|author=@AndrewCGower|url=https://twitter.com/andrewcgower/status/1776276857706479810|date=5 April 2024|archiveurl=https://web.archive.org/web/20240406173123/https://twitter.com/andrewcgower/status/1776276857706479810|archivedate=6 April 2024|quote=store.steampowered.com/app/2791440/Brighter_Shores/ Quite a few people have been asking how the 'rooms' in Brighter Shores connect together, so I have a made a quick video of me running across a small section of Hopeport. You can see how easily you can move between rooms, and how the 'rooms' connect together to form a much larger world.|notes=Timestamp in the video: 0:49 / 1:41.|name=|group=}} It connects to the [[East Beach]] in the east and the [[Jellyfish Landing]] in the west. [[Shell]]s and a [[Rock Pool]] can be found on the beach.
==Trivia==
* This location is most likely named after the well-known {{wp|tongue twister}} "she sells seashells by the seashore".
==References==
{{Reflist}}
256c428e263ccf81f81d6a7616d9164d0385d05e
2251
2229
2024-04-11T17:14:22Z
BlackHawk
10
wikitext
text/x-wiki
{{Infobox Location
|name = Seashells Seashore
|image = [[File:Seashells Seashore.jpg|280px]]
|release = Q3 [[2024]]
|premium = No
|episode = Hopeport
}}
{{Relative location
|location = Seashells Seashore
|north =
|east = East Beach
|south =
|west = Jellyfish Landing
}}
'''Seashells Seashore''' is a location in [[Hopeport (location)|Hopeport]].{{CiteTwitter|author=@AndrewCGower|url=https://twitter.com/andrewcgower/status/1776276857706479810|date=5 April 2024|archiveurl=https://web.archive.org/web/20240406173123/https://twitter.com/andrewcgower/status/1776276857706479810|archivedate=6 April 2024|quote=store.steampowered.com/app/2791440/Brighter_Shores/ Quite a few people have been asking how the 'rooms' in Brighter Shores connect together, so I have a made a quick video of me running across a small section of Hopeport. You can see how easily you can move between rooms, and how the 'rooms' connect together to form a much larger world.|notes=Timestamp in the video: 0:49 / 1:41.|name=|group=}} It connects to the [[East Beach]] in the east and the [[Jellyfish Landing]] in the west. [[Shell]]s and a [[Rock Pool]] can be found on the beach.
==Trivia==
* This location is most likely named after the well-known {{wp|tongue twister}} "she sells seashells by the seashore".
==References==
{{Reflist}}
bf5b6f394fb8c4b192939a6834ebac540b3b7be2
Jellyfish Landing
0
816
2230
2030
2024-04-11T16:22:31Z
BlackHawk
10
wikitext
text/x-wiki
{{Infobox Location
|name = Jellyfish Landing
|image = [[File:Jellyfish Landing.jpg|280px]]
|release =
|premium =
|episode =
}}
{{Relative location
|location = Jellyfish Landing
|north = Fallen Monument
|east = Seashells Seashore
|south =
|west =
}}
'''Jellyfish Landing''' is a location in [[Hopeport (location)|Hopeport]].{{CiteTwitter|author=@AndrewCGower|url=https://twitter.com/andrewcgower/status/1776276857706479810|date=5 April 2024|archiveurl=https://web.archive.org/web/20240406173123/https://twitter.com/andrewcgower/status/1776276857706479810|archivedate=6 April 2024|quote=store.steampowered.com/app/2791440/Brighter_Shores/ Quite a few people have been asking how the 'rooms' in Brighter Shores connect together, so I have a made a quick video of me running across a small section of Hopeport. You can see how easily you can move between rooms, and how the 'rooms' connect together to form a much larger world.|notes=Timestamp in the video: 0:56 / 1:41.|name=|group=}} It connects to the [[Fallen Monument]] in the north and the [[Seashells Seashore]] in the east. [[Jellyfish]] can be found in the waters of the beach.
==References==
{{Reflist}}
e6e6c451f4ad5b9af91f257bf450a628de54eeef
2250
2230
2024-04-11T17:11:56Z
BlackHawk
10
wikitext
text/x-wiki
{{Infobox Location
|name = Jellyfish Landing
|image = [[File:Jellyfish Landing.jpg|280px]]
|release = Q3 [[2024]]
|premium = No
|episode = Hopeport
}}
{{Relative location
|location = Jellyfish Landing
|north = Fallen Monument
|east = Seashells Seashore
|south =
|west =
}}
'''Jellyfish Landing''' is a location in [[Hopeport (location)|Hopeport]].{{CiteTwitter|author=@AndrewCGower|url=https://twitter.com/andrewcgower/status/1776276857706479810|date=5 April 2024|archiveurl=https://web.archive.org/web/20240406173123/https://twitter.com/andrewcgower/status/1776276857706479810|archivedate=6 April 2024|quote=store.steampowered.com/app/2791440/Brighter_Shores/ Quite a few people have been asking how the 'rooms' in Brighter Shores connect together, so I have a made a quick video of me running across a small section of Hopeport. You can see how easily you can move between rooms, and how the 'rooms' connect together to form a much larger world.|notes=Timestamp in the video: 0:56 / 1:41.|name=|group=}} It connects to the [[Fallen Monument]] in the north and the [[Seashells Seashore]] in the east. [[Jellyfish]] can be found in the waters of the beach.
==References==
{{Reflist}}
675067beeda5e213af3ef0a55f72cab73c0d5b97
Fallen Monument
0
817
2231
2034
2024-04-11T16:23:00Z
BlackHawk
10
wikitext
text/x-wiki
{{Infobox Location
|name = Fallen Monument
|image = [[File:Fallen Monument.jpg|280px]]
|release =
|premium =
|episode =
}}
{{Relative location
|location = Fallen Monument
|north = Crater
|east =
|south = Jellyfish Landing
|west =
}}
The '''Fallen Monument''' is a location in [[Hopeport (location)|Hopeport]].{{CiteTwitter|author=@AndrewCGower|url=https://twitter.com/andrewcgower/status/1776276857706479810|date=5 April 2024|archiveurl=https://web.archive.org/web/20240406173123/https://twitter.com/andrewcgower/status/1776276857706479810|archivedate=6 April 2024|quote=store.steampowered.com/app/2791440/Brighter_Shores/ Quite a few people have been asking how the 'rooms' in Brighter Shores connect together, so I have a made a quick video of me running across a small section of Hopeport. You can see how easily you can move between rooms, and how the 'rooms' connect together to form a much larger world.|notes=Timestamp in the video: 1:03 / 1:41.|name=|group=}} It connects to the [[Crater]] in the north and the [[Jellyfish Landing]] in the south. [[Carnivorous Plant]]s can be found throughout the area.
==References==
{{Reflist}}
038c5326d340955883b5cff713701a9e57145f70
2247
2231
2024-04-11T17:11:24Z
BlackHawk
10
wikitext
text/x-wiki
{{Infobox Location
|name = Fallen Monument
|image = [[File:Fallen Monument.jpg|280px]]
|release = Q3 [[2024]]
|premium = No
|episode = Hopeport
}}
{{Relative location
|location = Fallen Monument
|north = Crater
|east =
|south = Jellyfish Landing
|west =
}}
The '''Fallen Monument''' is a location in [[Hopeport (location)|Hopeport]].{{CiteTwitter|author=@AndrewCGower|url=https://twitter.com/andrewcgower/status/1776276857706479810|date=5 April 2024|archiveurl=https://web.archive.org/web/20240406173123/https://twitter.com/andrewcgower/status/1776276857706479810|archivedate=6 April 2024|quote=store.steampowered.com/app/2791440/Brighter_Shores/ Quite a few people have been asking how the 'rooms' in Brighter Shores connect together, so I have a made a quick video of me running across a small section of Hopeport. You can see how easily you can move between rooms, and how the 'rooms' connect together to form a much larger world.|notes=Timestamp in the video: 1:03 / 1:41.|name=|group=}} It connects to the [[Crater]] in the north and the [[Jellyfish Landing]] in the south. [[Carnivorous Plant]]s can be found throughout the area.
==References==
{{Reflist}}
8c672ccc420bc8fa984694b72e8448d2f8c8b1e9
Crater
0
820
2232
2101
2024-04-11T16:23:28Z
BlackHawk
10
wikitext
text/x-wiki
{{Infobox Location
|name = Crater
|image = [[File:Crater.jpg|280px]]
|release =
|premium =
|episode =
}}
{{Relative location
|location = Crater
|north = Wasteland
|east =
|south = Fallen Monument
|west =
}}
The '''Crater''' is a location in [[Hopeport (location)|Hopeport]].{{CiteTwitter|author=@AndrewCGower|url=https://twitter.com/andrewcgower/status/1776276857706479810|date=5 April 2024|archiveurl=https://web.archive.org/web/20240406173123/https://twitter.com/andrewcgower/status/1776276857706479810|archivedate=6 April 2024|quote=store.steampowered.com/app/2791440/Brighter_Shores/ Quite a few people have been asking how the 'rooms' in Brighter Shores connect together, so I have a made a quick video of me running across a small section of Hopeport. You can see how easily you can move between rooms, and how the 'rooms' connect together to form a much larger world.|notes=Timestamp in the video: 1:23 / 1:41.|name=|group=}} It connects to the [[Wasteland]] in the north and the [[Fallen Monument]] in the south. [[Giant Ant]]s and [[Hogberries]] can be found in the Crater.
Four [[Huge Monument Piece]]s are placed throughout the area.
==References==
{{Reflist}}
9e003d40470da6e8362322747c47494473fddadf
2249
2232
2024-04-11T17:11:47Z
BlackHawk
10
wikitext
text/x-wiki
{{Infobox Location
|name = Crater
|image = [[File:Crater.jpg|280px]]
|release = Q3 [[2024]]
|premium = No
|episode = Hopeport
}}
{{Relative location
|location = Crater
|north = Wasteland
|east =
|south = Fallen Monument
|west =
}}
The '''Crater''' is a location in [[Hopeport (location)|Hopeport]].{{CiteTwitter|author=@AndrewCGower|url=https://twitter.com/andrewcgower/status/1776276857706479810|date=5 April 2024|archiveurl=https://web.archive.org/web/20240406173123/https://twitter.com/andrewcgower/status/1776276857706479810|archivedate=6 April 2024|quote=store.steampowered.com/app/2791440/Brighter_Shores/ Quite a few people have been asking how the 'rooms' in Brighter Shores connect together, so I have a made a quick video of me running across a small section of Hopeport. You can see how easily you can move between rooms, and how the 'rooms' connect together to form a much larger world.|notes=Timestamp in the video: 1:23 / 1:41.|name=|group=}} It connects to the [[Wasteland]] in the north and the [[Fallen Monument]] in the south. [[Giant Ant]]s and [[Hogberries]] can be found in the Crater.
Four [[Huge Monument Piece]]s are placed throughout the area.
==References==
{{Reflist}}
f89b7b8749ec38ad1ef03dde80fc2b217dc5fbc5
Wasteland
0
822
2236
2102
2024-04-11T16:26:03Z
ToofleBerry
6
wikitext
text/x-wiki
{{Infobox Location
|name = Wasteland
|image = [[File:Wasteland.jpg|280px]]
|release =
|premium =
|episode =
}}
{{Relative location
|location = Wasteland
|north =
|east =
|south = Crater
|west =
}}
The '''Wasteland''' is a location in [[Hopeport (location)|Hopeport]].{{CiteTwitter|author=@AndrewCGower|url=https://twitter.com/andrewcgower/status/1776276857706479810|date=5 April 2024|archiveurl=https://web.archive.org/web/20240406173123/https://twitter.com/andrewcgower/status/1776276857706479810|archivedate=6 April 2024|quote=store.steampowered.com/app/2791440/Brighter_Shores/ Quite a few people have been asking how the 'rooms' in Brighter Shores connect together, so I have a made a quick video of me running across a small section of Hopeport. You can see how easily you can move between rooms, and how the 'rooms' connect together to form a much larger world.|notes=Timestamp in the video: 1:34 / 1:41.|name=|group=}} It connects to the [[Crater]] in the south. Several [[Huge Monument Piece]]s are placed in the area.
==References==
{{Reflist}}
dcda296c87db14ea194c8020cba6ec6ff059ef60
2248
2236
2024-04-11T17:11:40Z
BlackHawk
10
wikitext
text/x-wiki
{{Infobox Location
|name = Wasteland
|image = [[File:Wasteland.jpg|280px]]
|release = Q3 [[2024]]
|premium = No
|episode = Hopeport
}}
{{Relative location
|location = Wasteland
|north =
|east =
|south = Crater
|west =
}}
The '''Wasteland''' is a location in [[Hopeport (location)|Hopeport]].{{CiteTwitter|author=@AndrewCGower|url=https://twitter.com/andrewcgower/status/1776276857706479810|date=5 April 2024|archiveurl=https://web.archive.org/web/20240406173123/https://twitter.com/andrewcgower/status/1776276857706479810|archivedate=6 April 2024|quote=store.steampowered.com/app/2791440/Brighter_Shores/ Quite a few people have been asking how the 'rooms' in Brighter Shores connect together, so I have a made a quick video of me running across a small section of Hopeport. You can see how easily you can move between rooms, and how the 'rooms' connect together to form a much larger world.|notes=Timestamp in the video: 1:34 / 1:41.|name=|group=}} It connects to the [[Crater]] in the south. Several [[Huge Monument Piece]]s are placed in the area.
==References==
{{Reflist}}
4f6d9a24d76a2ac9d33ce8fe84f623c7a1534663
File:Thief combat.jpg
6
946
2238
2024-04-11T17:01:56Z
Yellowsap
63
wikitext
text/x-wiki
da39a3ee5e6b4b0d3255bfef95601890afd80709
2239
2238
2024-04-11T17:02:10Z
Yellowsap
63
wikitext
text/x-wiki
{{Fair use|link=https://brightershores.com/screenshots/16_thief_combat.jpg}}
b67b7020b4601d2e5335b33791b78bfec3ff863b
File:Cryoknight damage icon.png
6
947
2240
2024-04-11T17:09:20Z
Yellowsap
63
[[Category:Interface images]]
wikitext
text/x-wiki
== Summary ==
[[Category:Interface images]]
97d0b55fd7c3057d0d36a20b8810c22e635904b9
File:Fire damage icon.png
6
948
2241
2024-04-11T17:09:31Z
Yellowsap
63
[[Category:Interface images]]
wikitext
text/x-wiki
== Summary ==
[[Category:Interface images]]
97d0b55fd7c3057d0d36a20b8810c22e635904b9
File:Guardian damage icon.png
6
949
2242
2024-04-11T17:09:44Z
Yellowsap
63
[[Category:Interface images]]
wikitext
text/x-wiki
== Summary ==
[[Category:Interface images]]
97d0b55fd7c3057d0d36a20b8810c22e635904b9
File:Hammermage damage icon.png
6
950
2243
2024-04-11T17:09:54Z
Yellowsap
63
[[Category:Interface images]]
wikitext
text/x-wiki
== Summary ==
[[Category:Interface images]]
97d0b55fd7c3057d0d36a20b8810c22e635904b9
File:Necrotic damage icon.png
6
951
2244
2024-04-11T17:10:07Z
Yellowsap
63
[[Category:Interface images]]
wikitext
text/x-wiki
== Summary ==
[[Category:Interface images]]
97d0b55fd7c3057d0d36a20b8810c22e635904b9
File:Physical damage icon.png
6
952
2245
2024-04-11T17:10:17Z
Yellowsap
63
[[Category:Interface images]]
wikitext
text/x-wiki
== Summary ==
[[Category:Interface images]]
97d0b55fd7c3057d0d36a20b8810c22e635904b9
Damage
0
953
2246
2024-04-11T17:11:24Z
Yellowsap
63
Created page with "{{Unofficial name}} [[File:Thief combat.jpg|thumb|right|A player taking Cryoknight damage.]] '''Damage''' is what is used to describe a monster's and/or player's attacks from their combat actions. Damage is split into different types and is possibly determined by the player's [[weapon]]. A weapon can also have no damage type. ==List of damage types== {| class="wikitable" ! colspan="2" | Types |- | [[File:Cryoknight damage icon.png|30px]] || Cryoknight |- | File:Fire d..."
wikitext
text/x-wiki
{{Unofficial name}}
[[File:Thief combat.jpg|thumb|right|A player taking Cryoknight damage.]]
'''Damage''' is what is used to describe a monster's and/or player's attacks from their combat actions. Damage is split into different types and is possibly determined by the player's [[weapon]]. A weapon can also have no damage type.
==List of damage types==
{| class="wikitable"
! colspan="2" | Types
|-
| [[File:Cryoknight damage icon.png|30px]] || Cryoknight
|-
| [[File:Fire damage icon.png|30px]] || Fire
|-
| [[File:Guardian damage icon.png|30px]] || Guardian
|-
| [[File:Hammermage damage icon.png|30px]] || Hammermage
|-
| [[File:Physical damage icon.png|30px]] || Physical
|-
| [[File:Necrotic damage icon.png|30px]] || Necrotic
|}
[[Category:Mechanics]]
82778f7ecd6e6d496a7f981c4398ee22042578d2
Central Waterfront
0
811
2255
2222
2024-04-11T17:14:46Z
BlackHawk
10
wikitext
text/x-wiki
{{Infobox Location
|name = Central Waterfront
|image = [[File:Central Waterfront.jpg|280px]]
|release = Q3 [[2024]]
|premium = No
|episode = Hopeport
}}
{{Relative location
|location = Central Waterfront
|north = Eel Street
|east =
|south =
|west = West Waterfront
}}
The '''Central Waterfront''' is a location in [[Hopeport (location)|Hopeport]].{{CiteTwitter|author=@AndrewCGower|url=https://twitter.com/andrewcgower/status/1776276857706479810|date=5 April 2024|archiveurl=https://web.archive.org/web/20240406173123/https://twitter.com/andrewcgower/status/1776276857706479810|archivedate=6 April 2024|quote=store.steampowered.com/app/2791440/Brighter_Shores/ Quite a few people have been asking how the 'rooms' in Brighter Shores connect together, so I have a made a quick video of me running across a small section of Hopeport. You can see how easily you can move between rooms, and how the 'rooms' connect together to form a much larger world.|notes=Timestamp in the video: 0:20 / 1:41.|name=|group=}} It connects with [[Eel Street]] to the north and the [[West Waterfront]] to the west.
==References==
{{Reflist}}
30ccbee8cf35b9d17082947bd14c50cc8b25a109
Eel Street
0
810
2256
2223
2024-04-11T17:14:52Z
BlackHawk
10
wikitext
text/x-wiki
{{Infobox Location
|name = Eel Street
|image = [[File:Eel Street.jpg|280px]]
|release = Q3 [[2024]]
|premium = No
|episode = Hopeport
}}
{{Relative location
|location = Eel Street
|north = Eel Street Bridge
|east =
|south = Central Waterfront
|west =
}}
'''Eel Street''' is a location in [[Hopeport (location)|Hopeport]].{{CiteTwitter|author=@AndrewCGower|url=https://twitter.com/andrewcgower/status/1776276857706479810|date=5 April 2024|archiveurl=https://web.archive.org/web/20240406173123/https://twitter.com/andrewcgower/status/1776276857706479810|archivedate=6 April 2024|quote=store.steampowered.com/app/2791440/Brighter_Shores/ Quite a few people have been asking how the 'rooms' in Brighter Shores connect together, so I have a made a quick video of me running across a small section of Hopeport. You can see how easily you can move between rooms, and how the 'rooms' connect together to form a much larger world.|notes=Timestamp in the video: 0:13 / 1:41.|name=|group=}} It is connected to the [[Eel Street Bridge]] to the north and the [[Central Waterfront]] to the south. A [[fishmonger]] is located on Eel Street.
==References==
{{Reflist}}
90e0a4e71e6b831092264efbadcd389c98f19b44
Eel Street Bridge
0
809
2257
2224
2024-04-11T17:15:01Z
BlackHawk
10
wikitext
text/x-wiki
{{Infobox Location
|name = Eel Street Bridge
|image = [[File:Eel Street Bridge.jpg|280px]]
|release = Q3 [[2024]]
|premium = No
|episode = Hopeport
}}
{{Relative location
|location = Eel Street Bridge
|north = Town Square
|east =
|south = Eel Street
|west =
}}
The '''Eel Street Bridge''' is a location in [[Hopeport (location)|Hopeport]].{{CiteTwitter|author=@AndrewCGower|url=https://twitter.com/andrewcgower/status/1776276857706479810|date=5 April 2024|archiveurl=https://web.archive.org/web/20240406173123/https://twitter.com/andrewcgower/status/1776276857706479810|archivedate=6 April 2024|quote=store.steampowered.com/app/2791440/Brighter_Shores/ Quite a few people have been asking how the 'rooms' in Brighter Shores connect together, so I have a made a quick video of me running across a small section of Hopeport. You can see how easily you can move between rooms, and how the 'rooms' connect together to form a much larger world.|notes=Timestamp in the video: 0:07 / 1:41.|name=|group=}} The bridge connects [[Eel Street]] to the south and the Hopeport [[Town Square]] to the north.
==References==
{{Reflist}}
8af82592f66f210cc7ff2a290ffad8c08cb1a12a
Town Square
0
838
2258
2225
2024-04-11T17:15:08Z
BlackHawk
10
wikitext
text/x-wiki
{{Infobox Location
|name = Town Square
|image = [[File:Town_Square.jpg|280px]]
|release = Q3 [[2024]]
|premium = No
|episode = Hopeport
}}
{{Relative location
|location = Town Square
|north =
|east =
|south = Eel Street Bridge
|west =
}}
The '''Town Square''' is a location in [[Hopeport (location)|Hopeport]].{{CiteTwitter|author=@AndrewCGower|url=https://twitter.com/andrewcgower/status/1776276857706479810|date=5 April 2024|archiveurl=https://web.archive.org/web/20240406173123/https://twitter.com/andrewcgower/status/1776276857706479810|archivedate=6 April 2024|quote=store.steampowered.com/app/2791440/Brighter_Shores/ Quite a few people have been asking how the 'rooms' in Brighter Shores connect together, so I have a made a quick video of me running across a small section of Hopeport. You can see how easily you can move between rooms, and how the 'rooms' connect together to form a much larger world.|notes=Timestamp in the video: 0:00 / 1:41.|name=|group=}} It connects to the [[Eel Street Bridge]] in the south. [[Zeltay Tramagan]] sells items in the square.
==References==
{{Reflist}}
6cbf4fc2551bd7e09ee5dcb94f6cc6c743ee867e
Brighter Shores:Access levels
4
954
2259
2024-04-11T17:46:23Z
BlackHawk
10
Created page with "{{Nutshell|All users on the Brighter Shores Wiki have the ability to view and read pages. A number of special user roles exist, with advanced rights.}} {{Shortcut|BS:AL|BS:ACCESS|BS:RIGHTS}} A contributor's ability to perform certain actions on the [[Brighter Shores:About|Brighter Shores Wiki]] depends on their '''access level'''. This is determined by whether the editor is logged into an account, whether the account has a sufficient age, and what additional rights have..."
wikitext
text/x-wiki
{{Nutshell|All users on the Brighter Shores Wiki have the ability to view and read pages. A number of special user roles exist, with advanced rights.}}
{{Shortcut|BS:AL|BS:ACCESS|BS:RIGHTS}}
A contributor's ability to perform certain actions on the [[Brighter Shores:About|Brighter Shores Wiki]] depends on their '''access level'''. This is determined by whether the editor is logged into an account, whether the account has a sufficient age, and what additional rights have been assigned to the account.
Everyone is able to read the Brighter Shores Wiki. Unless they are [[Brighter Shores:Block policy|blocked]], they may freely edit most pages without the need to be logged in. Further access levels need to be assigned manually by a user with the appropriate authority. Editors with more experience and good standing can request advanced permissions.
This page provides a summary for each usergroup. For a full list of abilities available to usergroups, see [[Special:ListGroupRights]].
{{ToC|right}}
==Overview==
All visitors to the site, including unregistered users, are part of the <code>'*'</code> group, and all logged-in users are also part of the <code>'user'</code> group. Others, such as <code>'sysop'</code> and <code>'bureaucrat'</code>, are given only after community discussion and consensus.
===Unregistered users===
Contributors who have not [[Special:CreateAccount|created an account]] or [[Special:UserLogin|logged in]] are identified by their IP address rather than a username, and may read all pages (except restricted [[Help:Special page|special pages]]), and edit pages that are not [[Brighter Shores:Protection policy|protected or semi-protected]]. They cannot upload files or images. They must answer a CAPTCHA if they wish to make an edit which involves the addition of one or more external links, and click a confirm link to purge pages.
===Registered users===
Users who've signed in can do everything IP addresses can do, but they can also upload files, move pages, maintain a watchlist, set preferences, and mark edits as minor. Users are automatically promoted into the <code>'autoconfirmed'</code> pseudo-group when their account is more than four days old and has at least five edits, giving them the ability to edit semi-protected pages.
==Local level==
===Bots===
{{Main|Brighter Shores:Bots}}
Bots are automated accounts that perform certain tasks on the wiki. Bots have their edits flagged with a '''b''' in Special:RecentChanges, and have their edits hidden by default. A minor edit made by a bot to a user talk page will not trigger any notifications.
See [[Special:ListUsers/bot]] for a list of the wiki's {{NUMINGROUP:bot}} bots.
===Administrators===
{{Main|Brighter Shores:Administrators}}
Adminstrators have access to a number of tools to allow them to carry out certain functions on the wiki. The tools cover processes such as deletion, protection, blocking, and access to the MediaWiki interface. Administrators also take responsibility for judging the outcome of discussions on the [[BS:FG|Forum Grove]]. Administrator rights are granted by the community through [[Brighter Shores:Requests for adminship|Requests for adminship]].
See [[Special:ListUsers/sysop]] for a list of the wiki's {{NUMINGROUP:sysop}} administrators.
===Bureaucrats===
Bureaucrat rights are granted by the community to exceptionally trusted users who are allowed to perform certain actions on other users' accounts. Bureaucrats have all rights available to administrators, as well as extended access to [[Special:UserRights]], enabling them to add users to the <code>'bureaucrat'</code> group (but not remove them), and both add and remove users from the <code>'administrator'</code> and <code>'bot'</code> user groups.
See [[Special:ListUsers/bureaucrat]] for a list of the wiki's {{NUMINGROUP:bureaucrat}} bureaucrats.
===CheckUsers===
{{Main|Brighter Shores:Check user}}
Users who are in the <code>'checkuser'</code> usergroup have access to [[Special:CheckUser]]. They are able to view a list of all IP addresses used by a user account to edit the Brighter Shores Wiki, a list of all edits made by an IP, or all user accounts that have used an IP address. They may also view a log of such requests. As process for granting CheckUser has not yet been formalised, there are no local CheckUsers.
See [[Special:ListUsers/checkuser]] for a list of the wiki's {{NUMINGROUP:checkuser}} CheckUsers.
{{Help}}
89130c36ea74ccfd76ea683f18342d0ca1b50fce
Brighter Shores:AL
4
955
2260
2024-04-11T17:46:48Z
BlackHawk
10
Redirected page to [[Brighter Shores:Access levels]]
wikitext
text/x-wiki
#REDIRECT [[Brighter Shores:Access levels]]
8570502af55875a53d5d5d2e4c652cdaba185278
Brighter Shores:ACCESS
4
956
2261
2024-04-11T17:46:56Z
BlackHawk
10
Redirected page to [[Brighter Shores:Access levels]]
wikitext
text/x-wiki
#REDIRECT [[Brighter Shores:Access levels]]
8570502af55875a53d5d5d2e4c652cdaba185278
Brighter Shores:RIGHTS
4
957
2262
2024-04-11T17:47:00Z
BlackHawk
10
Redirected page to [[Brighter Shores:Access levels]]
wikitext
text/x-wiki
#REDIRECT [[Brighter Shores:Access levels]]
8570502af55875a53d5d5d2e4c652cdaba185278
Forum:Forum Grove
110
545
2263
948
2024-04-11T17:48:04Z
BlackHawk
10
wikitext
text/x-wiki
{{Shortcut|BS:FG|FG|Forum Grove}}
'''Forum Grove''' is a place where community members can discuss larger changes to the wiki, such as policy proposals or suggestions to substantially redesign content pages. As this page is viewed by a variety of editors, you can expect fair and centralised discussions. Broadly construed, if the community would be interested in the topic, start it here. Even if a discussion is taking place elsewhere, it may be appropriate to announce that discussion here as well. To add a new topic, type the title in the box below and click "Add new topic".
<center><big>Please only post here if it concerns the Wiki.</big></center>
<center>Threads on in-game discussion, such as requesting a Shield of Arrav partner may be deleted. Additionally, if you have any questions regarding the wiki, they may be answered on [[Brighter Shores:User help|User help]] or [[Brighter Shores:Administrator requests|Administrator requests]].</center>
<div style="text-align:center;">'''[[Special:Recentchangeslinked/Category:{{PAGENAME}}|View recent changes for this forum]]''' {{*}} '''[[:Category:{{PAGENAME}}|View alphabetic list of topics]]''' {{*}} '''[[Brighter Shores:Forum Archives|View the archives]]'''</div>
----
<!-- <table width="100%"><tr><td><!-- You could create (or transclude) a forum header here --><!-- </td><td width="50%"> -->
<inputbox>
type=create
prefix=Forum:
preload=Template:Forumheader/{{PAGENAME}}
buttonlabel=Add new topic
</inputbox><!-- </td></tr></table> -->
==Active threads==
{| class="discussiontable" style="width:100%"
! class="topic" style="width:55%" | Topic
! class="edited" style="width:25%" | Last edit
! class="edited-by" style="width:20%" | Last author
|}
<dpl>
namespace=Forum
category=Forum Grove
notcategory=Forum archives by date closed
notcategory=Brighter Shores Wiki community
noresultsheader=There are no active discussions.
shownamespace=false
addlasteditor=true
addeditdate=true
ordermethod=lastedit
order=descending
mode=userformat
include={forumheader}:%TITLE%:%DATE%:%USER%
table=style="width:100%; border:0; margin-top:2px" class="dpltable",-
tablerow=class="topic" style="width:55%"|[[Forum:%%|%%]],class="edited" style="width:25%"|{{#if:%%|{{#time:H:i, j F Y|%%}}|–}},class="edited-by" style="width:20%"|{{#if:%%|[[User:%%|%%]]|–}}
allowcachedresults=false
</dpl>
==Archived threads==
{| class="discussiontable archive" style="width:100%; margin-bottom:-2px"
! class="topic" style="width:45%" | Topic
! class="rg-archive" style="width:25%" | Archived on
! class="rg-archive" style="width:16%" | Archived by
! class="rg-archive" style="width:14%" | Forum type
|}
<dpl>
namespace=Forum
category=Forum archives by date closed
shownamespace=false
addlasteditor=true
ordermethod=sortkey
order=descending
mode=userformat
include={forumheader}:%TITLE%:date:user:type
table=style="width:100%; border:0; margin-top:2px" class="dpltable archive",-
tablerow=class="topic" style="width:45%"|[[Forum:%%|%%]],class="rg-archive" style="width:25%"|{{#if:%%|{{#time:H:i, j F Y|%%}}|–}},class="rg-archive" style="width:16%"|{{#if:%%|[[User:%%|%%]]|–}},class="rg-archive" style="width:14%"|{{#if:%%|[[:Category:Forum archives/{{#switch:{{lc:%%}}|community=Community|content=Content|discussion=Discussion|miscellaneous|misc=Miscellaneous|policy=Policy|technical|tech=Technical|user-related|user=User-related|clan chat|clan=Clan chat|meta=Meta|%%}}|{{#switch:{{lc:%%}}|community=Community|content=Content|discussion=Discussion|miscellaneous|misc=Miscellaneous|policy=Policy|technical|tech=Technical|user-related|user=User-related|clan chat|clan=Clan chat|meta=Meta|%%}}]]|-}}
allowcachedresults=false
count={%DPL_count:25%}
</dpl>
[[Category:Brighter Shores Wiki community]]
[[Category:Forum Grove| ]]
b7b82f7a4cdf83aff21575dfa809b7b8408ec2d0
Brighter Shores:FG
4
958
2264
2024-04-11T17:48:16Z
BlackHawk
10
Redirected page to [[Forum:Forum Grove]]
wikitext
text/x-wiki
#REDIRECT [[Forum:Forum Grove]]
827d0794c13dd4fea3549f3a41ab3df53ac618af
Forum Grove
0
959
2265
2024-04-11T17:48:21Z
BlackHawk
10
Redirected page to [[Forum:Forum Grove]]
wikitext
text/x-wiki
#REDIRECT [[Forum:Forum Grove]]
827d0794c13dd4fea3549f3a41ab3df53ac618af
Help:Special page
12
960
2266
2024-04-11T17:51:21Z
BlackHawk
10
Created page with "The [[Help:Namespace|namespace]] "Special:" consists of '''"special pages"'''. These have no corresponding wikitext; they are created by the software on demand. They are useful to see things going on in the wiki or looking at the wiki's statistics. This page is probably more useful for experienced users, though new users may also find it beneficial. ==Special pages for all users== All of the below linked Special pages produce content particular to this wiki. ;Special p..."
wikitext
text/x-wiki
The [[Help:Namespace|namespace]] "Special:" consists of '''"special pages"'''. These have no corresponding wikitext; they are created by the software on demand. They are useful to see things going on in the wiki or looking at the wiki's statistics. This page is probably more useful for experienced users, though new users may also find it beneficial.
==Special pages for all users==
All of the below linked Special pages produce content particular to this wiki.
;Special pages
: [[Special:Specialpages]] : A list of all special pages for all users.
; Recent changes
: [[Special:Recentchanges]] : The latest edits in the project.
;Upload file
: [[Special:Upload]] : Upload a file to the wiki.
;Image list
: [[Special:Imagelist]] : List of images uploaded that can be sorted by size or date
;New images
: [[Special:Newimages]] : Gallery of new files.
;User list
: [[Special:Listusers]] : A list of all registered users.
;Admins list
: [[Special:Listadmins]] : A list of all [[RuneScape:Administrators|administrators]]; an automatic list is at [[Special:Listusers/Sysop]].
;Statistics
: [[Special:Statistics]] : Total number of pages, images, and users.
;Random page
: [[Special:Randompage]] : Redirects to a random page from the main namespace which is not a redirect. Other namespaces can be specified as a parameter, eg: [[Special:Randompage/Talk]].
;Orphaned pages
: [[Special:Lonelypages]] : Articles with no links to them in the wiki.
;Uncategorised pages
: [[Special:Uncategorizedpages]] : Pages without category tags. This page refreshes once or twice a day, so if you placed a category on a page without one, you will still see it listed on this page for awhile.
;Unused images
: [[Special:Unusedimages]]
;Wanted pages
: [[Special:Wantedpages]] : Articles which have been requested / most wanted, specifically those that have at least 2 incoming links, but do not exist.
;Short pages
: [[Special:Shortpages]] : Pages in the main namespace, with size of the wikitext (excluding any templates used) in bytes, in order of increasing size.
;Long pages
: [[Special:Longpages]] : Pages in the main namespace, with size in bytes, in order of decreasing size.
;New pages
: [[Special:Newpages]] : Newest pages with creation date and time, current size, user who created the page, and first edit summary, in reverse order of creation.
;Oldest pages
: [[Special:Ancientpages]] : Pages in the main namespace, with date and time of last edit, in order of last edit.
;Dead-end pages
: [[Special:Deadendpages]] : Pages that do not link to any other articles.
;Double redirects
: [[Special:Doubleredirects]]
;Broken redirects
: [[Special:Brokenredirects]]
;What links here
: [[Special:Whatlinkshere]]
;Most categories
: [[Special:Mostcategories]] : Articles with the most categories.
;Most revisions
: [[Special:Mostrevisions]] : Articles with the most revisions (edits).
;All pages
: [[Special:Allpages]] : All pages in a specified namespace in alphabetical order, including redirects (italicised).
;All system messages
: [[Special:Allmessages]] : Displays all pages in the [[Help:MediaWiki namespace|MediaWiki namespace]].
;Pages starting with a given prefix
: [[Special:Prefixindex]]; if the last character of the prefix is a space or underscore it is ignored. One of many important applications is to find subpages with "fullpagename/".
;Find external links
: [[Special:Linksearch]]
;List of blocked IP addresses and usernames
: [[Special:Ipblocklist]] : Currently blocked IPs and usernames.
;Book sources
: [[Special:Booksources]] : ISBN Book Sources.
;Categories
: [[Special:Categories]] : Lists all the categories in the wiki.
;Uncategorised categories
: [[Special:Uncategorizedcategories]]
;Export pages
: [[Special:Export]] : Produces an XML file containing the wikitext and metadata of either the current version only, or all revisions, of one or more pages, specified in the form of a list; the XML file is in the format required for Special:Import; exporting is typically done either in preparation of applying the latter at another MediaWiki project, or for searching within old page revisions.
;Version
: [[Special:Version]] : Shows the version of the MediaWiki software the wiki is currently running, and a listing of extensions installed.
;Captcha
:[[Special:Captcha]] : On projects supporting this <nowiki>[[mediazilla:4845|feature]]</nowiki>.
;Confirm your email address
:[[Special:Confirmemail]]
;My preferences
: [[Special:Preferences]] : Select preferences to customize the appearance and behaviour of the software. See [[Help:Preferences]].
;My watchlist
: [[Special:Watchlist]] : Show the pages you are watching.
;My page
: [[Special:Mypage]] : Link to the user page of the user who follows it.
;My talk page
: [[Special:Mytalk]] : Link to the talk page of the user who follows it.
;Edit count
: [[Special:Editcount]]
;Login
: [[Special:Userlogin]] : Creates new login cookie.
;Logout
: [[Special:Userlogout]] : Destroys cookie.
==Restricted special pages==
;Block user
: [[Special:Blockip]] : Sysop only. Used to block or unblock users, IPs and ranges of IPs.
;Import pages
: [[Special:Import]] : Sysop only. Imports the wikitext and metadata of one or more revisions of one or more pages by uploading an XML file in the format produced by Special:Export (typically after applying the latter at another MediaWiki project).
;Unwatched pages
: [[Special:Unwatchedpages]] : Sysop only. Shows pages not watched by any user.
;Restore deleted page
: [[Special:Undelete]] : Sysop only. View deleted pages.
==Logs==
[[Special:Log]] - Combined display of various logs. You can narrow down the view by:
*Selecting a log type, including:
** [[Special:Log/block|Block log]] - Blocks and unblocks.
** [[Special:Log/protect|Protection log]] - Protected and unprotected pages.
** [[Special:Log/rights|User rights log]] - Dates when users were given admin status or had it removed.
** [[Special:Log/delete|Deletion log]] - Deleted and undeleted pages.
** [[Special:Log/upload|Upload log]] - List of images uploaded.
** [[Special:Log/move|Move log]] - Pages moved.
** [[Special:Log/import|Import log]] - Imports.
** [[Special:Log/gvrollback|Rollback rights log]] - Changes to non-sysops' rollback rights.
*entering the full name without prefix of the acting user (usual case-sensitivity)
*entering the full name of the affected page (usual case-sensitivity, e.g. "Image:Map South Holland.png"), or the full name including prefix of the affected user (in the case of blocking, setting user rights, setting bot status, and user creation) or without prefix (in the case of renaming a user)
It does not seem possible to search by editor for edits of deleted pages. They can only be seen by a sysop with Special:Undelete if the exact page name is known.
There are no logs available on the site for:
*adding or removing a page from a user's list of page to watch (the user can only view the current state)
*change of preferences of a user (ditto)
*viewing a page
*editing and previewing a page without saving
*applying [[Special:Export]]
*unfinished operations (e.g. an attempted page move)
==Miscellaneous==
*Special pages can be linked to as usual, like [[Special:Recentchanges]].
*Special pages requiring a target page may give an error message if the target is not supplied:
::[[Special:Recentchangeslinked/Help:Template]]
::[[Special:Whatlinkshere/Help:Template]]
or prompt for the target if it was not supplied yet; with target the link is e.g.
::[[Special:Linksearch/*.kennisnet.nl]]
*Special pages requiring a target user:
::[[Special:Contributions/User]]
*Special page allowing a starting page:
::[[Special:Allpages/Template]] (Standard prefixes are ignored, compare [[Special:Allpages/Template:C]])
::In some cases the full URL has to be given, like an external link, for example https://runescape.wiki/index.php?title=Special:Recentchanges&days=3&limit=10 (last 10 changes).
::[[Special:Random/Template]]
*Some special pages can be included, such as [[Special:Newpages|Newpages]], [[Special:Wantedpages|Wantedpages]], [[Special:Allpages|Allpages]], [[Special:Prefixindex|Prefixindex]], and [[Special:Recentchanges|Recentchanges]].
::<nowiki>{{</nowiki>[[Special:Newpages]]/5<nowiki>}}</nowiki> gives 5 new pages:
{{Special:Newpages/5}}
{{Help}}
a565a025641853205be062cebd349fd0bd3a095c
Brighter Shores:Forum Grove
4
961
2267
2024-04-11T18:00:17Z
BlackHawk
10
Redirected page to [[Forum:Forum Grove]]
wikitext
text/x-wiki
#REDIRECT [[Forum:Forum Grove]]
827d0794c13dd4fea3549f3a41ab3df53ac618af
Help:Namespace
12
962
2268
2024-04-11T18:00:50Z
BlackHawk
10
Created page with "{{shortcut|H:NAME}} '''Namespace'''s are the basic grouping system for pages on the wiki. Generally the namespace describes the base purpose of the page, for example articles about things in Brighter Shores (items, monsters, etc are in the ''main'' (no prefix) namespace. __NOTOC__ ==Primary Brighter Shores Wiki namespaces== For a complete list [https://brightershoreswiki.org/api.php?action=query&meta=siteinfo&siprop=namespaces&formatversion=2 use this api query]. ===Fo..."
wikitext
text/x-wiki
{{shortcut|H:NAME}}
'''Namespace'''s are the basic grouping system for pages on the wiki. Generally the namespace describes the base purpose of the page, for example articles about things in Brighter Shores (items, monsters, etc are in the ''main'' (no prefix) namespace.
__NOTOC__
==Primary Brighter Shores Wiki namespaces==
For a complete list [https://brightershoreswiki.org/api.php?action=query&meta=siteinfo&siprop=namespaces&formatversion=2 use this api query].
===Forum===
The [{{fullurl:Special:AllPages|namespace=110}} ''Forum:''] namespace is used for [[Brighter Shores:Forum Grove]] discussion pages.
===Template===
The [{{fullurl:Special:AllPages|namespace=10}} ''Template:''] namespace is used for templates to be transcluded on other pages.
===Module===
The [{{fullurl:Special:AllPages|namespace=828}} ''Module:''] namespace is used to house code for modules written in [[Brighter Shores:Lua|Lua]] ({{WP|Lua|Wikipedia entry}}). For an examples, see [[RuneScape:Lua/Modules|here]].
==Complete list==
{| class="wikitable" style="margin-left: 2em"
|+Namespace IDs
! Namespace !! Article ID !! Talk ID
|-
| Media || -2 || N/A
|-
| Special || -1 || N/A
|-
| (main) || 0 || 1
|-
| User || 2 || 3
|-
| Brighter Shores || 4 || 5
|-
| File || 6 || 7
|-
| MediaWiki || 8 || 9
|-
| Template || 10 || 11
|-
| Help || 12 || 13
|-
| Category || 14 || 15
|-
| Update || 100 || 101
|-
| Forum || 110 || 111
|-
| Property || 302 || 303
|-
| Concept || 308 || 309
|-
| smw/schema || 312 || 313
|-
| Rule || 314 || 315
|-
| Module || 828 || 829
|-
| Gadget || 2300 || 2301
|-
| Gadget definition || 2302 || 2303
|}
{{Help}}
215f51e0bc301c770b48057b24a55c269d7ed0f3
2269
2268
2024-04-11T18:01:21Z
BlackHawk
10
wikitext
text/x-wiki
{{shortcut|H:NAME}}
'''Namespace'''s are the basic grouping system for pages on the wiki. Generally the namespace describes the base purpose of the page, for example articles about things in Brighter Shores (items, monsters, etc.) are in the ''main'' (no prefix) namespace.
__NOTOC__
==Primary Brighter Shores Wiki namespaces==
For a complete list [https://brightershoreswiki.org/api.php?action=query&meta=siteinfo&siprop=namespaces&formatversion=2 use this api query].
===Forum===
The [{{fullurl:Special:AllPages|namespace=110}} ''Forum:''] namespace is used for [[Brighter Shores:Forum Grove]] discussion pages.
===Template===
The [{{fullurl:Special:AllPages|namespace=10}} ''Template:''] namespace is used for templates to be transcluded on other pages.
===Module===
The [{{fullurl:Special:AllPages|namespace=828}} ''Module:''] namespace is used to house code for modules written in [[Brighter Shores:Lua|Lua]] ({{WP|Lua|Wikipedia entry}}). For an examples, see [[RuneScape:Lua/Modules|here]].
==Complete list==
{| class="wikitable" style="margin-left: 2em"
|+Namespace IDs
! Namespace !! Article ID !! Talk ID
|-
| Media || -2 || N/A
|-
| Special || -1 || N/A
|-
| (main) || 0 || 1
|-
| User || 2 || 3
|-
| Brighter Shores || 4 || 5
|-
| File || 6 || 7
|-
| MediaWiki || 8 || 9
|-
| Template || 10 || 11
|-
| Help || 12 || 13
|-
| Category || 14 || 15
|-
| Update || 100 || 101
|-
| Forum || 110 || 111
|-
| Property || 302 || 303
|-
| Concept || 308 || 309
|-
| smw/schema || 312 || 313
|-
| Rule || 314 || 315
|-
| Module || 828 || 829
|-
| Gadget || 2300 || 2301
|-
| Gadget definition || 2302 || 2303
|}
{{Help}}
3a7bb9ce6235aebb1281483ef3920858cd64f877
MediaWiki:Common.less/templates.less
8
25
2270
2233
2024-04-11T18:18:38Z
BlackHawk
10
less
less
/* ==================
TEMPLATES
==================*/
:root {
--keypress-background: @gallery;
--keypress-border: @silver;
--keypress-color: @mineshaft;
}
// TOC
.toc {
.toctitle > * {
color: @white;
}
}
// NAVBOX
.navbox {
.navbox-title {
color: @white;
}
}
// Template:Archive list
.archivelist {
background-color: @infobox-background;
border: solid 1px @infobox-border-color;
box-shadow: @box-shadow;
float: right;
margin: 5px;
padding: 5px;
text-align: center;
width: 120px;
}
// Template:Shortcut
.shortcut {
border: 1px solid @infobox-border-color;
background: @infobox-background;
float: right;
font-size: .8em;
margin: 0.5em 0em 0.5em 1em;
padding: 0.5em;
text-align: center;
}
// Hatnotes: [[Module:Hatnote]]
.hatnote,
.seealso {
font-style: italic;
i {
font-style: normal;
}
}
// two classes - hatnote gets much customisation in minerva but seealso doesnt
div.hatnote,
div.seealso {
// 0.5em is <p>'s top and bottom margin
// 1.6em to match <dd>/<ul> indent
margin: .5em 1.6em;
& + & {
margin-top: -0.5em;
}
}
// Template:Key press
.keypress {
background: var(--keypress-background);
color: var(--keypress-color);
font-family: inherit;
border: 1px solid var(--keypress-border);
border-radius: @border-radius;
font-size: 0.9em;
margin: 0 0.1em;
padding: 0.1em 0.4em;
white-space: nowrap;
}
// Template:Relative location
.relative-location {
background: @infobox-background;
border: 1px solid @infobox-border-color;
border-spacing: 0;
box-shadow: @box-shadow;
text-align: center;
&-header {
background: @infobox-header-color;
color: @white;
font-weight: bold;
}
}
620a1518a30d4e97d0ed4215f0bdbf5bf12bb2fb
2302
2270
2024-04-11T20:28:17Z
Merds
25
less
less
/* ==================
TEMPLATES
==================*/
:root {
--keypress-background: @gallery;
--keypress-border: @silver;
--keypress-color: @mineshaft;
}
// TOC
.toc {
.toctitle > * {
color: @white;
.toctogglelabel {
color: var(--table-header-link);
}
}
}
// NAVBOX
.navbox {
.navbox-title {
color: @white;
a {
color: var(--table-header-link);
}
}
}
// Template:Archive list
.archivelist {
background-color: @infobox-background;
border: solid 1px @infobox-border-color;
box-shadow: @box-shadow;
float: right;
margin: 5px;
padding: 5px;
text-align: center;
width: 120px;
}
// Template:Shortcut
.shortcut {
border: 1px solid @infobox-border-color;
background: @infobox-background;
float: right;
font-size: .8em;
margin: 0.5em 0em 0.5em 1em;
padding: 0.5em;
text-align: center;
}
// Hatnotes: [[Module:Hatnote]]
.hatnote,
.seealso {
font-style: italic;
i {
font-style: normal;
}
}
// two classes - hatnote gets much customisation in minerva but seealso doesnt
div.hatnote,
div.seealso {
// 0.5em is <p>'s top and bottom margin
// 1.6em to match <dd>/<ul> indent
margin: .5em 1.6em;
& + & {
margin-top: -0.5em;
}
}
// Template:Key press
.keypress {
background: var(--keypress-background);
color: var(--keypress-color);
font-family: inherit;
border: 1px solid var(--keypress-border);
border-radius: @border-radius;
font-size: 0.9em;
margin: 0 0.1em;
padding: 0.1em 0.4em;
white-space: nowrap;
}
// Template:Relative location
.relative-location {
background: @infobox-background;
border: 1px solid @infobox-border-color;
border-spacing: 0;
box-shadow: @box-shadow;
text-align: center;
&-header {
background: @infobox-header-color;
color: @white;
font-weight: bold;
}
}
4541ff847a8d77a3a912adc3f9a53c76e604ae1c
MediaWiki:Common.css
8
30
2271
2234
2024-04-11T18:18:45Z
BlackHawk
10
Updating CSS from [[MediaWiki:Common.less]]
css
text/css
/* <pre> */
:root {
--body-main: #fdfcfc;
--body-light: #f5f0eb;
--body-mid: #d1b9ad;
--body-dark: #b1886f;
--body-border: #d1b9ad;
--body-background-color: #173a4d;
--button-background: #605443;
--button-color: #fff;
--button-border: #3c352a;
--button-dark: #18140c;
--button-light: #3a301d;
--sidebar: #cfc08d;
--background-text-color: #e2dbc8;
--background-link-color: #e2bd8a;
--search-box: #efeee6;
--link-color: #6e452b;
--redlink-color: #ba0000;
--text-color: #2F2828;
--byline-color: #ccc;
--subtle-color: #afa19a;
--admin-blue: #332e75;
--bearcat-green: #13592e;
--awb-purple: #933b96;
--rsw-blue: #438ab6;
--osrsw-brown: #605443;
--thumb-bg: var(--body-light);
--thumb-caption-bg: var(--body-mid);
--sourceeditor-input-background: #fff;
--sourceeditor-background: var(--body-light);
--sourceeditor-background-secondary: var(--body-light);
--sourceeditor-border: var(--body-mid);
--codemirror-gutter-background: var(--body-mid);
}
@font-face {
font-family: 'Lora';
font-weight: 400 700;
font-style: normal;
font-display: swap;
src: url('filepath://Lora.woff2') format('woff2');
}
@font-face {
font-family: 'Lora';
font-weight: 400 700;
font-style: italic;
font-display: swap;
src: url('filepath://Lora-Italic.woff2') format('woff2');
}
:root {
--base-text-color: #36414f;
--base-heading-color: #444e5a;
--base-heading-border: #e4eaee;
--mw-code-background-color: var(--body-light);
--body-background-image: url('filepath://Wiki_background.jpg');
}
#mw-page-base {
background: none;
}
.mw-body {
background-color: var(--body-main);
color: var(--text-color);
border-color: transparent;
box-shadow: 0 0 7px rgba(0, 0, 0, 0.15);
margin-top: 0;
}
h1,
h2,
h3,
h4,
h5,
h6 {
color: var(--text-color);
}
h1,
h2 {
border-color: var(--body-border);
}
.mw-body h1,
.mw-body-content h1,
.mw-body-content h2,
.mw-body-content h3,
.mw-body-content h4,
.mw-body-content h5,
.mw-body-content h6 {
font-family: 'Lora', 'Palatino', 'Georgia', serif;
}
.mw-parser-output h2:first-of-type {
clear: left;
}
.mw-footer {
color: var(--background-text-color);
}
.mw-footer li {
color: var(--background-text-color);
}
.mw-footer a,
.mw-footer a:active,
.mw-footer a:visited {
color: var(--background-link-color);
}
::placeholder {
color: var(--subtle-color);
}
a {
color: var(--link-color);
}
a:visited,
a:active {
color: var(--link-color);
}
a.new {
color: var(--redlink-color);
}
a.new:visited {
color: var(--redlink-color);
}
.mw-parser-output a.extiw,
.mw-parser-output a.external {
color: var(--link-color);
}
.mw-parser-output a.extiw:visited,
.mw-parser-output a.external:visited,
.mw-parser-output a.extiw:active,
.mw-parser-output a.external:active {
color: var(--link-color);
}
.jsPurgeLink a.external {
color: var(--link-color);
}
:root {
--errorbox-bg: #feecea;
--errorbox-border: #ee4231;
--warningbox-bg: #fef9de;
--warningbox-border: #f9d000;
--successbox-bg: #ecf8e3;
--successbox-border: #6bc71f;
}
.mw-message-box-error,
.errorbox,
.mw-message-box-warning,
.warningbox,
.mw-message-box-success,
.successbox,
.usermessage {
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
}
.mw-message-box-error,
.errorbox {
background-color: var(--errorbox-bg);
border-color: var(--errorbox-border);
}
.mw-message-box-warning,
.warningbox,
.usermessage {
background-color: var(--warningbox-bg);
border-color: var(--warningbox-border);
}
.mw-message-box-success,
.successbox {
background-color: var(--successbox-bg);
border-color: var(--successbox-border);
}
.catlinks {
background: var(--body-light);
border: 1px solid var(--body-dark);
padding: 8px 15px;
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
}
.catlinks li {
border-color: var(--body-mid);
}
.filehistory a img,
#file img {
background: url("data:image/svg+xml,%3C%3Fxml version='1.0' encoding='UTF-8'%3F%3E%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16'%3E%3Cpath d='M0 0h8v16h8V8H0z' opacity='.13'/%3E%3C/svg%3E") repeat;
}
#file img:hover {
background: none;
}
.mw-highlight {
background: none;
}
.mw-highlight .linenos {
background-color: var(--mw-code-background-color);
color: var(--body-border);
}
.mw-highlight a:hover .linenos,
.mw-highlight .hll a .linenos {
color: var(--body-dark);
}
.mw-content-ltr.mw-highlight-lines pre,
.mw-content-ltr.content .mw-highlight-lines pre {
box-shadow: inset 2.75em 0 0 var(--mw-code-background-color);
}
#pagehistory ul {
list-style: none;
margin: 0;
}
#pagehistory li {
border: 1px solid transparent;
padding: 1px 10px;
margin: 2px 0;
}
#pagehistory li.selected {
background-color: var(--body-light);
color: inherit;
border: 1px dashed var(--body-border);
outline: none;
}
#mw-history-compare > div:first-of-type {
position: -webkit-sticky;
position: sticky;
top: 0;
background-color: var(--body-main);
border-bottom: 1px solid var(--body-dark);
padding: 0.25em 0;
}
.wgl-stickyheader #mw-history-compare > div:first-of-type {
top: 2.5rem;
}
.autocomment,
.autocomment a,
.autocomment a:visited {
color: var(--link-color);
}
li span.deleted,
span.history-deleted {
color: var(--byline-color);
}
.mw-usertoollinks-contribs-no-edits,
.mw-usertoollinks-contribs-no-edits:visited {
color: var(--redlink-color);
}
.CategoryTreeToggle {
color: var(--link-color);
}
body.wgl-stickyheader.action-view .mw-headline:target::before {
display: block;
content: '';
margin-top: -3rem;
height: 3rem;
visibility: hidden;
pointer-events: none;
}
.mw-mmv-post-image {
color: var(--text-color);
background-color: var(--body-main);
}
.mw-mmv-image-metadata {
border-top-color: var(--body-mid);
background-color: var(--body-light);
}
.mw-mmv-dialog,
.mw-mmv-dialog .mw-mmv-dialog-down-arrow,
.mw-mmv-options-dialog .mw-mmv-dialog-down-arrow {
background-color: var(--body-light);
box-shadow: none;
}
.mw-mmv-options-enable-alert {
background-color: var(--body-light);
color: var(--text-color);
}
.mw-mmv-options-dialog-header,
.mw-mmv-options-text-header,
.mw-mmv-options-text-body,
.mw-mmv-options-enable-alert,
.mw-mmv-options-dialog .mw-mmv-disable-confirmation .mw-mmv-options-dialog-header,
.mw-mmv-options-dialog .mw-mmv-disable-confirmation .mw-mmv-options-text-header {
color: var(--text-color);
}
.mw-revslider-container {
border-color: var(--sidebar);
}
.mw-revslider-slider-wrapper {
border-top-color: var(--sidebar);
}
.mw-ui-button {
background-color: var(--ooui-normal);
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
}
.mw-ui-button:not(:disabled):hover,
.mw-ui-button:not(:disabled):active {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
}
.mw-ui-button:not(:disabled):focus {
color: var(--ooui-text);
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent), inset 0 0 0 2px #fff;
}
.mw-ui-button:not(:disabled):visited {
color: var(--ooui-text);
}
.mw-ui-button.mw-ui-progressive:not(:disabled) {
background-color: var(--ooui-progressive);
color: #fff;
border-color: var(--ooui-progressive);
}
.mw-ui-button.mw-ui-progressive:not(:disabled):hover {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
}
.mw-ui-button.mw-ui-progressive:not(:disabled):focus {
box-shadow: inset 0 0 0 1px var(--ooui-accent), inset 0 0 0 2px #fff;
}
.mw-ui-button.mw-ui-progressive:not(:disabled):active,
.mw-ui-button.mw-ui-progressive:not(:disabled).is-on {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
box-shadow: none;
}
.mw-ui-button.mw-ui-destructive:not( :disabled ) {
color: #fff;
}
.mw-ui-button.mw-ui-quiet,
.mw-ui-button.mw-ui-quiet.mw-ui-progressive,
.mw-ui-button.mw-ui-quiet.mw-ui-destructive {
color: var(--text-color);
}
input[type='checkbox']:hover + .mw-ui-button.mw-ui-quiet,
input[type='checkbox']:hover + .mw-ui-button.mw-ui-quiet.mw-ui-progressive,
input[type='checkbox']:hover + .mw-ui-button.mw-ui-quiet.mw-ui-destructive,
.mw-ui-button.mw-ui-quiet:hover,
.mw-ui-button.mw-ui-quiet.mw-ui-progressive:hover,
.mw-ui-button.mw-ui-quiet.mw-ui-destructive:hover {
background-color: rgba(0, 24, 73, 0.02745098);
color: var(--text-color);
border-color: transparent;
}
input[type='checkbox']:focus + .mw-ui-button.mw-ui-quiet,
input[type='checkbox']:focus + .mw-ui-button.mw-ui-quiet.mw-ui-progressive,
input[type='checkbox']:focus + .mw-ui-button.mw-ui-quiet.mw-ui-destructive,
.mw-ui-button.mw-ui-quiet:focus,
.mw-ui-button.mw-ui-quiet.mw-ui-progressive:focus,
.mw-ui-button.mw-ui-quiet.mw-ui-destructive:focus {
color: var(--text-color);
}
input[type='checkbox']:active + .mw-ui-button.mw-ui-quiet,
input[type='checkbox']:active + .mw-ui-button.mw-ui-quiet.mw-ui-progressive,
input[type='checkbox']:active + .mw-ui-button.mw-ui-quiet.mw-ui-destructive,
.mw-ui-button.mw-ui-quiet:active,
.mw-ui-button.mw-ui-quiet.mw-ui-progressive:active,
.mw-ui-button.mw-ui-quiet.mw-ui-destructive:active {
background-color: rgba(0, 36, 73, 0.08235294);
color: var(--text-color);
border-color: #72777d;
}
.mw-ui-input {
background-color: var(--ooui-input);
color: var(--text-color);
border-color: var(--ooui-input-border);
}
.mw-ui-input:hover {
border-color: var(--ooui-input-border--hover);
}
.mw-ui-input::placeholder {
color: var(--byline-color);
}
.mw-content-ltr .redirectText li:first-child {
padding: 0;
background: 0;
}
.mw-content-ltr .redirectText li:first-child::before {
content: '';
background: currentcolor;
-webkit-mask: url("filepath://Redirect-arrow.svg") no-repeat 50% 50% / contain;
mask: url("filepath://Redirect-arrow.svg") no-repeat 50% 50% / contain;
display: inline-block;
width: 47px;
height: 20px;
}
.vector-search-box-inner {
background: var(--body-main) !important;
box-shadow: inset 0 -7px 7px -7px rgba(0, 0, 0, 0.15) !important;
}
.vector-menu-dropdown .vector-menu-heading {
color: var(--vector-tab-link-color) !important;
}
.vector-menu-dropdown .vector-menu-heading:hover {
color: var(--vector-tab-link-color) !important;
}
.vector-menu-dropdown .vector-menu-heading:focus {
color: var(--vector-tab-link-color) !important;
}
:root {
--wikitable-header-bg: var(--body-dark);
--wikitable-border: var(--body-border);
--wikitable-bg: var(--body-light);
--wikitable-bg-lighter: #e9e3d6;
--wikitable-color: var(--text-color);
--table-na-background: rgba(255, 255, 255, 0.3);
--table-na-color: var(--subtle-color);
--table-yes-background: #c3e8a3;
--table-yes-color: #2e5e05;
--table-no-background: #fbc0ba;
--table-no-color: #801c13;
--table-maybe-background: #fcea94;
--table-maybe-color: #786300;
}
.wikitable {
background: var(--wikitable-bg);
color: var(--wikitable-color);
border-color: var(--wikitable-border);
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
}
.wikitable > tr > th,
.wikitable > tr > td,
.wikitable > * > tr > th,
.wikitable > * > tr > td {
border-color: var(--wikitable-border);
}
.wikitable > tr > th.table-noborder,
.wikitable > tr > td.table-noborder,
.wikitable > * > tr > th.table-noborder,
.wikitable > * > tr > td.table-noborder {
border-left-style: hidden;
border-right-style: hidden;
padding-left: 0;
padding-right: 0;
}
.wikitable > tr > th,
.wikitable > * > tr > th {
background-color: var(--wikitable-header-bg);
color: #fff;
}
.tabber .wikitable {
box-shadow: none;
}
.mw_metadata td,
.mw_metadata th {
border-color: var(--wikitable-border);
}
.mw_metadata th {
background-color: var(--wikitable-header-bg);
}
.mw_metadata td {
background-color: var(--wikitable-bg);
}
.mw-datatable {
border-color: var(--wikitable-border);
}
.mw-datatable td,
.mw-datatable th {
border-color: var(--wikitable-border);
}
.mw-datatable th {
background-color: var(--wikitable-header-bg);
}
.mw-datatable td {
background-color: var(--wikitable-bg);
}
.mw-datatable tr:hover td {
background-color: var(--wikitable-bg);
}
table.alternating-rows tr:nth-child(odd),
table.alternating-cols td:nth-child(odd) {
background: var(--wikitable-alternating-bg);
}
.table-na {
background: var(--table-na-background);
color: var(--table-na-color);
vertical-align: middle;
text-align: center;
}
.table-yes {
background: var(--table-yes-background);
color: var(--table-yes-color);
}
.table-positive {
background: var(--table-yes-background);
}
.table-no {
background: var(--table-no-background);
color: var(--table-no-color);
}
.table-negative {
background: var(--table-no-background);
}
.table-maybe {
background: var(--table-maybe-background);
color: var(--table-maybe-color);
}
#mw-allmessagestable .am_actual,
#mw-allmessagestable .am_default {
background-color: var(--wikitable-bg);
}
#mw-allmessagestable .am_default:hover,
#mw-allmessagestable .am_actual:hover,
#mw-allmessagestable tbody:hover td {
background-color: var(--wikitable-bg-lighter);
}
table.wikitable td.no-cell-spacing {
padding: 0;
height: 0;
}
table.wikitable td.no-cell-spacing table {
margin: -1px;
width: calc(100% + 2px);
height: calc(100% + 2px);
}
.plainlist ol,
.plainlist ul {
margin: 0;
}
.plainlist li {
margin-bottom: 0;
list-style: none;
}
table.align-right-1 td:nth-of-type(1),
table.align-right-2 td:nth-of-type(2),
table.align-right-3 td:nth-of-type(3),
table.align-right-4 td:nth-of-type(4),
table.align-right-5 td:nth-of-type(5),
table.align-right-6 td:nth-of-type(6),
table.align-right-7 td:nth-of-type(7),
table.align-right-8 td:nth-of-type(8),
table.align-right-9 td:nth-of-type(9),
table.align-right-10 td:nth-of-type(10),
table.align-right-11 td:nth-of-type(11),
table.align-right-12 td:nth-of-type(12),
table.align-right-13 td:nth-of-type(13),
table.align-right-14 td:nth-of-type(14),
table.align-right-15 td:nth-of-type(15),
table.align-right-16 td:nth-of-type(16),
table.align-right-17 td:nth-of-type(17),
table.align-right-18 td:nth-of-type(18),
table.align-right-19 td:nth-of-type(19),
table.align-right-20 td:nth-of-type(20) {
text-align: right;
}
table.align-center-1 td:nth-of-type(1),
table.align-center-2 td:nth-of-type(2),
table.align-center-3 td:nth-of-type(3),
table.align-center-4 td:nth-of-type(4),
table.align-center-5 td:nth-of-type(5),
table.align-center-6 td:nth-of-type(6),
table.align-center-7 td:nth-of-type(7),
table.align-center-8 td:nth-of-type(8),
table.align-center-9 td:nth-of-type(9),
table.align-center-10 td:nth-of-type(10),
table.align-center-11 td:nth-of-type(11),
table.align-center-12 td:nth-of-type(12),
table.align-center-13 td:nth-of-type(13),
table.align-center-14 td:nth-of-type(14),
table.align-center-15 td:nth-of-type(15),
table.align-center-16 td:nth-of-type(16),
table.align-center-17 td:nth-of-type(17),
table.align-center-18 td:nth-of-type(18),
table.align-center-19 td:nth-of-type(19),
table.align-center-20 td:nth-of-type(20) {
text-align: center;
}
table.align-left-1 td:nth-of-type(1),
table.align-left-2 td:nth-of-type(2),
table.align-left-3 td:nth-of-type(3),
table.align-left-4 td:nth-of-type(4),
table.align-left-5 td:nth-of-type(5),
table.align-left-6 td:nth-of-type(6),
table.align-left-7 td:nth-of-type(7),
table.align-left-8 td:nth-of-type(8),
table.align-left-9 td:nth-of-type(9),
table.align-left-10 td:nth-of-type(10),
table.align-left-11 td:nth-of-type(11),
table.align-left-12 td:nth-of-type(12),
table.align-left-13 td:nth-of-type(13),
table.align-left-14 td:nth-of-type(14),
table.align-left-15 td:nth-of-type(15),
table.align-left-16 td:nth-of-type(16),
table.align-left-17 td:nth-of-type(17),
table.align-left-18 td:nth-of-type(18),
table.align-left-19 td:nth-of-type(19),
table.align-left-20 td:nth-of-type(20) {
text-align: left;
}
:root {
--diff-addedline-border-color: #438ab5;
--diff-addedline-background: #bddff2;
--diff-addedline-color: #000;
--diff-deletedline-border-color: #379541;
--diff-deletedline-background: #c1edbf;
--diff-deletedline-color: #000;
--diff-context-border-color: var(--body-mid);
--diff-context-background: var(--body-mid);
}
.diff-context {
border-color: var(--diff-context-border-color);
background: var(--diff-context-background);
color: inherit;
}
.diff-addedline {
border-color: var(--diff-addedline-border-color);
}
.diff-addedline .diffchange {
background: var(--diff-addedline-background);
color: var(--diff-addedline-color);
}
.diff-deletedline {
border-color: var(--diff-deletedline-border-color);
}
.diff-deletedline .diffchange {
background: var(--diff-deletedline-background);
color: var(--diff-deletedline-color);
}
.mw-diff-movedpara-left:after,
.mw-diff-movedpara-right:after {
color: var(--text-color);
}
.mw-notification {
background-color: var(--body-light);
border-color: var(--body-border);
color: var(--text-color);
}
.mw-echo-ui-notificationsInboxWidget-toolbarWrapper {
background: var(--body-main);
}
.mw-body-content .mw-echo-ui-datedSubGroupListWidget-title-secondary {
color: var(--byline-color);
}
.mw-echo-ui-pageNotificationsOptionWidget.oo-ui-optionWidget-selected {
background-color: var(--ooui-normal);
color: var(--ooui-accent);
}
.mw-echo-ui-pageNotificationsOptionWidget-label-count {
background-color: var(--ooui-normal);
color: var(--byline-color);
}
.oo-ui-optionWidget-selected .mw-echo-ui-pageNotificationsOptionWidget-label-count {
color: var(--ooui-accent);
}
.mw-echo-ui-pageNotificationsOptionWidget.oo-ui-optionWidget-highlighted {
background-color: var(--ooui-normal);
color: var(--text-color);
}
.mw-echo-ui-crossWikiUnreadFilterWidget {
border-color: var(--body-border);
}
.mw-echo-ui-crossWikiUnreadFilterWidget-subtitle {
color: var(--byline-color);
}
.mw-echo-ui-notificationBadgeButtonPopupWidget-popup > .oo-ui-popupWidget-popup > .oo-ui-popupWidget-head,
.mw-echo-ui-notificationBadgeButtonPopupWidget-popup > .oo-ui-popupWidget-popup > .oo-ui-popupWidget-footer {
border-color: var(--ooui-interface-border);
}
.mw-echo-ui-notificationBadgeButtonPopupWidget-popup > .oo-ui-popupWidget-popup > .oo-ui-popupWidget-footer .mw-echo-ui-notificationBadgeButtonPopupWidget-footer-buttons .oo-ui-buttonElement:last-child {
border-left-color: var(--ooui-normal-border);
}
.mw-echo-ui-notificationItemWidget {
background-color: var(--ooui-normal);
border-color: var(--ooui-normal-border);
}
.mw-echo-ui-notificationItemWidget:hover,
.mw-echo-ui-notificationItemWidget-unread:hover {
background-color: var(--ooui-normal--hover);
}
.mw-echo-ui-notificationItemWidget:last-child {
border-bottom-color: var(--ooui-normal-border);
}
.mw-echo-ui-notificationItemWidget-unread {
background-color: var(--search-box);
}
.mw-echo-ui-crossWikiNotificationItemWidget-group,
.mw-echo-ui-bundleNotificationItemWidget-group {
background-color: var(--ooui-interface);
}
.mw-echo-ui-toggleReadCircleButtonWidget-circle {
background-color: var(--ooui-progressive);
}
.mw-echo-ui-toggleReadCircleButtonWidget:hover .mw-echo-ui-toggleReadCircleButtonWidget-circle {
background-color: var(--ooui-progressive--hover);
}
.mw-echo-ui-toggleReadCircleButtonWidget-circle-unread {
background-color: var(--ooui-normal);
border-color: var(--ooui-normal-border);
}
.mw-echo-ui-notificationItemWidget-content-message-header,
.mw-echo-ui-notificationItemWidget-content-message-body,
.mw-echo-ui-menuItemWidget > .oo-ui-buttonElement-button > .oo-ui-labelElement-label,
.mw-echo-ui-notificationItemWidget-content-actions-timestamp {
color: var(--ooui-text);
}
.mw-echo-ui-bundleNotificationItemWidget-group {
background-color: var(--body-main);
}
@keyframes unseen-fadeout-to-unread {
from {
background-color: var(--wikitable-bg-lighter);
}
to {
background-color: var(--search-box);
}
}
@keyframes unseen-fadeout-to-read {
from {
background-color: var(--wikitable-bg-lighter);
}
to {
background-color: var(--body-main);
}
}
.mwe-popups {
background: var(--body-light);
}
.mwe-popups .mwe-popups-container {
color: var(--text-color);
background: var(--body-light);
}
.mwe-popups .mwe-popups-container.flipped-x-y:before,
.mwe-popups .mwe-popups-container.flipped-y:before {
border-top: none;
}
.mwe-popups .mwe-popups-container.mwe-popups-no-image-tri:before {
border-bottom: none;
}
.mwe-popups .mwe-popups-container.flipped-x-y:after,
.mwe-popups .mwe-popups-container.flipped-y:after {
border-top-color: var(--body-light);
}
.mwe-popups .mwe-popups-container.mwe-popups-no-image-tri:after {
border-bottom-color: var(--body-light);
}
.mwe-popups .mwe-popups-settings-icon:hover,
.mwe-popups .mwe-popups-settings-icon:active {
background-color: var(--ooui-normal--hover);
}
.mwe-popups .mw-ui-icon-element:not(.disabled):hover {
background: none;
}
.mwe-popups .mwe-popups-extract {
color: var(--text-color);
}
.mwe-popups .mwe-popups-extract[dir='ltr']:after {
background-image: linear-gradient(to right, rgba(49, 62, 89, 0), var(--body-light) 50%);
}
.mwe-popups-overlay {
background-color: var(--ooui-window-background);
}
#mwe-popups-settings {
background: var(--ooui-interface);
border-color: var(--ooui-interface-border);
color: var(--text-color);
}
#mwe-popups-settings header {
border-color: var(--ooui-interface-border);
}
#mwe-popups-settings main#mwe-popups-settings-form p {
color: var(--byline-color);
}
#mwe-popups-settings main#mwe-popups-settings-form form label > span {
color: var(--ooui-text);
}
:root {
--smw-ask-options-even-bg: var(--body-mid);
--smw-ask-options-odd-bg: var(--body-light);
--smw-ask-action-btn-lblue-bg: var(--body-main);
--smw-ask-action-btn-lblue-color: #000;
--smw-ask-action-btn-lblue-border-color: var(--body-light);
--smw-ask-action-btn-dblue-bg: var(--body-light);
--smw-ask-action-btn-dblue-color: #fff;
--smw-ask-action-btn-dblue-border-color: var(--button-border);
}
.smw-ask-condition fieldset,
.smw-ask-printhead fieldset {
border-color: var(--sidebar);
}
.smw-ask-search fieldset,
.smw-ask-format fieldset,
.smw-ask-options fieldset {
border-color: var(--sidebar);
}
.strike > span:before,
.strike > span:after {
background: var(--sidebar);
}
.smw-ask-options-fields tr td {
background-color: var(--smw-ask-options-even-bg);
}
.smw-ask-options-fields tr:nth-child(odd) td {
background-color: var(--smw-ask-options-odd-bg);
}
.smw-ask-action-btn.smw-ask-action-btn-lblue,
.smw-ask-action-btn.smw-ask-action-btn-lblue:hover,
.smw-ask-action-btn.smw-ask-action-btn-lblue:visited {
background-color: var(--smw-ask-action-btn-lblue-bg);
color: var(--smw-ask-action-btn-lblue-color);
border-color: var(--smw-ask-action-btn-lblue-border-color);
}
.smw-ask-action-btn.smw-ask-action-btn-dblue,
.smw-ask-action-btn.smw-ask-action-btn-dblue:hover,
.smw-ask-action-btn.smw-ask-action-btn-dblue:visited {
background-color: var(--smw-ask-action-btn-dblue-bg);
color: var(--smw-ask-action-btn-dblue-color);
border-color: var(--smw-ask-action-btn-dblue-border-color);
}
.smw-ask-query textarea,
.smw-ask-actions textarea {
background-color: var(--ooui-interface);
border-color: var(--ooui-interface-border);
color: var(--ooui-text);
}
.smw-ask-query-format select {
background-color: var(--ooui-interface);
border: 1px solid var(--ooui-interface-border);
color: var(--ooui-text);
}
.smw-ask-toplinks {
background-color: var(--body-mid);
}
.smw-ask-toplinks span.smw-icon-info {
background: none;
padding: 0 !important;
}
.smw-ask-toplinks span.smw-icon-info::before {
content: '';
background: var(--text-color);
-webkit-mask: url("data:image/svg+xml,%3C%3Fxml version='1.0' encoding='UTF-8'%3F%3E%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 20 20'%3E%3Ctitle%3Einfo%3C/title%3E%3Cpath d='M10 0C4.477 0 0 4.477 0 10s4.477 10 10 10 10-4.477 10-10S15.523 0 10 0zM9 5h2v2H9zm0 4h2v6H9z'/%3E%3C/svg%3E") no-repeat 50% 50% / contain;
mask: url("data:image/svg+xml,%3C%3Fxml version='1.0' encoding='UTF-8'%3F%3E%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 20 20'%3E%3Ctitle%3Einfo%3C/title%3E%3Cpath d='M10 0C4.477 0 0 4.477 0 10s4.477 10 10 10 10-4.477 10-10S15.523 0 10 0zM9 5h2v2H9zm0 4h2v6H9z'/%3E%3C/svg%3E") no-repeat 50% 50% / contain;
padding: 0 0 3px 18px;
}
.smw-ask-options-row-odd {
background-color: var(--body-light);
}
.smw-ask-options-row-even {
background-color: var(--body-mid);
}
#options-toggle:not(:checked) + #options-list .options-parameter-list:after {
background-image: linear-gradient(to bottom, transparent, var(--body-mid) 90%);
}
.smw-ask-button-submit input {
background-color: var(--ooui-normal);
border-color: var(--ooui-normal-border);
color: var(--text-color);
}
.smw-ask-button-submit input:hover,
.smw-ask-button-lgrey:hover {
background-color: var(--ooui-normal--hover);
border-color: var(--ooui-normal-border);
}
input.smw-ask-action-btn.smw-ask-action-btn-dblue {
background-color: var(--ooui-normal);
border-color: var(--ooui-normal-border);
color: var(--ooui-text);
}
a.smw-ask-action-btn.smw-ask-action-btn-lblue {
background-color: var(--body-mid);
border-color: var(--body-mid);
color: var(--ooui-text);
}
a.smw-ask-action-btn.smw-ask-action-btn-lblue:visited {
background-color: var(--body-mid);
border-color: var(--body-mid);
color: var(--ooui-text);
}
a.smw-ask-action-btn.smw-ask-action-btn-lblue:hover {
background-color: var(--body-mid);
border-color: var(--body-mid);
color: var(--ooui-text);
}
a.smw-ask-action-btn-lgrey {
background-color: var(--ooui-normal);
border-color: var(--ooui-normal-border);
color: var(--ooui-text);
}
a.smw-ask-action-btn-lgrey:hover {
background-color: var(--ooui-normal--hover);
border-color: var(--ooui-normal-border);
color: var(--ooui-text);
}
.smw-callout-error {
background-color: var(--errorbox-bg);
border-color: var(--errorbox-border);
}
.smw-callout-info {
background-color: var(--body-light);
border-color: var(--body-dark);
}
.smw-callout-success {
background-color: var(--successbox-bg);
border-color: var(--successbox-border);
}
.smw-callout-warning {
background-color: var(--warningbox-bg);
border-color: var(--warningbox-bg);
}
.smw-tabs input.nav-tab:checked + label.nav-label,
.smw-tabs input.nav-tab:checked + label.nav-label:hover {
color: inherit;
}
#tab-smw-property-value:checked + label.nav-label .usage-count {
color: #fff;
background-color: var(--ooui-progressive);
}
#tab-smw-property-value:checked + label.nav-label .usage-count.moderate {
color: #fff;
background-color: #b55e0c;
border-color: #b55e0c;
}
#tab-smw-property-value:checked + label.nav-label .usage-count.high {
color: #fff;
background-color: #9f261e;
border-color: #9f261e;
}
.smw-property-page-results .header-title {
background-color: var(--ooui-interface);
border-bottom-color: var(--ooui-interface-border);
color: var(--ooui-text);
}
.smw-property-page-results .value-row:hover {
background-color: var(--ooui-normal--hover);
}
.smw-property-page-results .smw-table .header-row {
color: var(--text-color);
}
.tippy-tooltip.light-border-theme {
background-color: var(--body-light);
color: var(--text-color);
}
.tippy-tooltip.light-border-theme .tippy-arrow {
border-top-color: var(--body-light);
}
.tippy-tooltip.light-border-theme .tippy-arrow:after {
border-top-color: var(--body-light);
}
.tippy-header {
background-color: var(--body-dark);
border-bottom-color: var(--body-mid);
}
.smw-ui-input-filter {
background-color: var(--ooui-interface);
border-color: var(--ooui-interface-border);
color: var(--ooui-text);
}
.smw-ui-input-filter input {
border-left-color: var(--ooui-interface-border) !important;
color: var(--ooui-text) !important;
}
.smw-ui-pagination .page-link.link-disabled {
background-color: var(--ooui-disabled);
border-color: var(--ooui-disabled-border);
color: var(--subtle-color);
}
.smw-ui-pagination .page-link {
background-color: var(--ooui-normal);
border-color: var(--ooui-normal-border);
color: var(--link-color);
}
.smw-ui-pagination .page-link:hover {
background-color: var(--ooui-normal--hover);
border-color: var(--ooui-normal-border);
color: var(--link-color);
}
.smw-ui-pagination .page-link.link-active {
color: #fff;
background-color: var(--ooui-progressive);
border-color: var(--ooui-progressive);
}
.smw-tabs input.nav-tab:checked + label.nav-label {
border-color: var(--ooui-normal-border);
}
.smw-tabs section,
.smw-tabs .subtab-content {
border-top-color: var(--ooui-normal-border);
}
.smw-column-header {
color: var(--text-color);
}
.smw-factbox {
background: var(--body-main);
border-color: transparent;
}
.mw-body .mw-indicators #mw-indicator-smw-entity-examiner.mw-indicator .smw-indicator-vertical-bar-loader {
display: none;
}
.smwb-theme-light .smwb-title,
.smwb-theme-light .smwb-center,
.smwb-theme-light .smwb-actions,
.smwb-theme-light .smwb-prophead {
background-color: var(--body-mid);
}
.smwb-theme-light .smwb-factbox {
border-left-color: var(--body-mid);
}
.smwb-theme-light .smwb-ifactbox {
border-right-color: var(--body-mid);
}
.smwb-theme-light .smwb-propval {
background-color: var(--body-light);
}
.smwb-action-separator {
border-color: var(--wikitable-border);
}
.smwb-bottom {
border-bottom: 1px solid var(--wikitable-border);
}
.smwb-ifactbox .smwb-cell,
.smwb-factbox .smwb-cell {
border-top: 1px solid var(--wikitable-border);
}
.smwb-propvalue .smwb-prophead,
.smwb-ipropvalue .smwb-prophead,
.smwb-propvalue .smwb-propval,
.smwb-ipropvalue .smwb-propval {
font-size: 0.9em;
}
:root {
--filter-black-to-link: invert(36%) sepia(58%) saturate(433%) hue-rotate(344deg) brightness(100%) contrast(91%);
}
#bodyContent span.smwbrowse a {
color: black;
background-image: url('filepath://Smwbrowse.svg');
filter: var(--filter-black-to-link);
}
#bodyContent span.smwbrowse a:hover {
color: black;
background-image: url('filepath://Smwbrowse-hover.svg');
text-decoration: underline;
}
#bodyContent span.smwsearch a {
color: black;
filter: var(--filter-black-to-link);
background-image: url('filepath://Smwsearch.svg');
}
#bodyContent span.smwsearch a:hover {
color: black;
background-image: url('filepath://Smwsearch-hover.svg');
text-decoration: underline;
}
:root {
--tabber-tab-bg: var(--body-light);
--tabber-tab-border-color: var(--body-border);
--tabber-active-tab-bg: var(--body-light);
--tabber-active-tab-color: var(--text-color);
--tabber-active-tab-hover-bg: var(--body-light);
--tabber-active-tab-hover-border-color: var(--body-border);
--tabber-active-tab-hover-color: var(--text-color);
--tabber-active-tab-border-hider-color: var(--body-light);
--tabber-inactive-tab-bg: var(--body-background-color);
--tabber-inactive-tab-border-color: var(--body-border);
--tabber-inactive-tab-color: var(--text-color);
--tabber-inactive-tab-hover-bg: var(--body-light);
--tabber-inactive-tab-hover-border-color: var(--body-border);
}
.tabber {
margin: 1em 0;
}
.tabber .tabbertab {
background-color: var(--tabber-tab-bg);
border: 1px solid var(--tabber-tab-border-color);
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
padding: 1em 1.5em;
}
ul.tabbernav {
border: none;
margin-left: 2em;
margin-bottom: 0;
margin-right: 2em;
padding: 0;
font-family: inherit;
}
ul.tabbernav li.tabberactive > a {
background-color: var(--tabber-active-tab-bg);
color: var(--tabber-active-tab-color);
border-bottom: none;
position: relative;
}
ul.tabbernav li.tabberactive > a:hover {
color: var(--tabber-active-tab-hover-color);
background-color: var(--tabber-active-tab-hover-bg);
border-color: var(--tabber-active-tab-hover-border-color);
border-bottom: none;
}
ul.tabbernav li.tabberactive > a::after {
content: '';
position: absolute;
left: 0;
right: 0;
bottom: -1px;
border-bottom: 2px solid var(--tabber-active-tab-border-hider-color);
}
ul.tabbernav li a {
background-color: var(--tabber-inactive-tab-bg);
border-bottom: transparent;
border-color: var(--tabber-inactive-tab-border-color);
color: var(--tabber-inactive-tab-color);
display: inline-block;
font-size: 110%;
padding: 0.5em 1em;
}
ul.tabbernav li a:hover {
background-color: var(--tabber-inactive-tab-hover-bg);
border-color: var(--tabber-inactive-tab-hover-border-color);
}
ul.tabbernav li a:link,
ul.tabbernav li a:visited {
color: var(--tabber-inactive-tab-color);
}
:root {
--ooui-text: var(--text-color);
--ooui-interface: var(--body-light);
--ooui-interface-border: var(--body-border);
--ooui-window-background: rgba(255, 255, 255, 0.5);
--ooui-normal: #cdb3a6;
--ooui-normal--hover: #d8c4ba;
--ooui-normal-border: #d1b9ad;
--ooui-progressive: #936243;
--ooui-progressive--hover: #b27a57;
--ooui-accent: var(--link-color);
--ooui-input: #fff;
--ooui-input-border: #d1b9ad;
--ooui-input-border--hover: #ae846f;
--ooui-disabled: #ece3de;
--ooui-disabled-border: #e3d5ce;
--ooui-disabled-text: var(--subtle-color);
--ooui-pending-background-image: repeating-linear-gradient(-45deg, var(--search-box), var(--search-box) 20px, var(--body-main) 20px, var(--body-main) 30px);
}
.oo-ui-widget {
color: var(--ooui-text);
}
.oo-ui-checkboxInputWidget [type='checkbox'] + span,
.oo-ui-radioInputWidget [type='radio'] + span {
background-color: var(--ooui-input);
border-color: var(--ooui-input-border);
}
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:checked + span,
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:indeterminate + span {
background-color: var(--ooui-progressive);
border-color: var(--ooui-progressive);
}
.oo-ui-radioInputWidget.oo-ui-widget-enabled [type='radio']:checked + span {
border-color: var(--ooui-progressive);
}
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:checked:hover + span,
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:indeterminate:hover + span {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
}
.oo-ui-radioInputWidget.oo-ui-widget-enabled [type='radio']:checked:hover + span {
border-color: var(--ooui-progressive--hover);
}
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:hover + span,
.oo-ui-radioInputWidget.oo-ui-widget-enabled [type='radio']:hover + span {
border-color: var(--ooui-accent);
}
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:focus + span {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:active + span,
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:checked:active + span,
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:indeterminate:active + span {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
box-shadow: inset 0 0 0 1px var(--ooui-progressive--hover);
}
.oo-ui-radioInputWidget.oo-ui-widget-enabled [type='radio']:active + span {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
}
.oo-ui-radioInputWidget.oo-ui-widget-enabled [type='radio']:checked:active + span {
border-color: var(--ooui-progressive--hover);
box-shadow: inset 0 0 0 1px var(--ooui-progressive--hover);
}
.oo-ui-radioInputWidget.oo-ui-widget-enabled [type='radio']:checked:active + span:before {
border-color: var(--ooui-progressive--hover);
}
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:checked:focus + span,
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:indeterminate:focus + span {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent), inset 0 0 0 2px #fff;
}
.oo-ui-checkboxInputWidget [type='checkbox']:disabled + span,
.oo-ui-radioInputWidget [type='radio']:disabled + span {
background-color: var(--ooui-disabled);
border-color: var(--ooui-disabled);
}
.oo-ui-dropdownWidget-handle {
border-color: var(--ooui-normal-border);
}
.oo-ui-dropdownWidget.oo-ui-widget-enabled .oo-ui-dropdownWidget-handle {
background-color: var(--ooui-normal);
color: var(--ooui-text);
}
.oo-ui-dropdownWidget.oo-ui-widget-enabled .oo-ui-dropdownWidget-handle:hover {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
}
.oo-ui-dropdownWidget.oo-ui-widget-enabled .oo-ui-dropdownWidget-handle:active {
color: var(--ooui-text);
}
.oo-ui-dropdownWidget.oo-ui-widget-enabled .oo-ui-dropdownWidget-handle:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-dropdownWidget.oo-ui-widget-enabled.oo-ui-dropdownWidget-open .oo-ui-dropdownWidget-handle {
background-color: var(--ooui-normal--hover);
}
.oo-ui-dropdownWidget.oo-ui-widget-disabled .oo-ui-dropdownWidget-handle {
color: var(--ooui-disabled-text);
text-shadow: none;
border-color: var(--ooui-disabled-border);
background-color: var(--ooui-disabled);
}
.oo-ui-dropdownInputWidget select {
border-color: var(--ooui-normal-border);
}
.oo-ui-dropdownInputWidget option {
background-color: var(--ooui-interface);
}
.oo-ui-dropdownInputWidget.oo-ui-widget-enabled {
background-color: var(--ooui-normal);
}
.oo-ui-dropdownInputWidget.oo-ui-widget-enabled:hover {
background-color: var(--ooui-normal--hover);
}
.oo-ui-dropdownInputWidget.oo-ui-widget-enabled select {
color: var(--ooui-text);
}
.oo-ui-dropdownInputWidget.oo-ui-widget-enabled select:hover,
.oo-ui-dropdownInputWidget.oo-ui-widget-enabled select:active {
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
}
.oo-ui-dropdownInputWidget.oo-ui-widget-enabled select:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-labelWidget.oo-ui-inline-help {
color: var(--byline-color);
}
.oo-ui-menuSelectWidget {
background-color: var(--ooui-interface);
border-color: var(--ooui-interface-border);
}
.oo-ui-menuSelectWidget-frameless {
box-shadow: inset 0 -1px 0 0 var(--ooui-normal-border);
}
.oo-ui-menuSectionOptionWidget {
color: var(--byline-color);
}
.oo-ui-menuOptionWidget.oo-ui-optionWidget-highlighted,
.oo-ui-menuOptionWidget.oo-ui-optionWidget-selected {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
}
.oo-ui-menuOptionWidget.oo-ui-optionWidget-selected.oo-ui-menuOptionWidget.oo-ui-optionWidget-highlighted,
.oo-ui-menuOptionWidget.oo-ui-optionWidget-pressed.oo-ui-menuOptionWidget.oo-ui-optionWidget-highlighted {
color: var(--ooui-accent);
}
.oo-ui-menuOptionWidget.oo-ui-widget-enabled.oo-ui-optionWidget {
color: var(--ooui-text);
}
.oo-ui-messageDialog-title {
color: inherit;
}
.oo-ui-messageWidget.oo-ui-messageWidget-block.oo-ui-flaggedElement-error {
background-color: var(--errorbox-bg);
border-color: var(--errorbox-border);
}
.oo-ui-messageWidget.oo-ui-messageWidget-block.oo-ui-flaggedElement-warning {
background-color: var(--warningbox-bg);
border-color: var(--warningbox-border);
}
.oo-ui-messageWidget.oo-ui-messageWidget-block.oo-ui-flaggedElement-success {
background-color: var(--successbox-bg);
border-color: var(--successbox-border);
}
.oo-ui-messageWidget.oo-ui-messageWidget-block.oo-ui-flaggedElement-notice {
background-color: var(--messagebox-info-background);
border-color: var(--messagebox-info-border);
}
.oo-ui-messageWidget.oo-ui-flaggedElement-error:not(.oo-ui-messageWidget-block),
.oo-ui-messageWidget.oo-ui-flaggedElement-success:not(.oo-ui-messageWidget-block) {
color: var(--ooui-text);
}
.oo-ui-optionWidget.oo-ui-widget-disabled {
color: var(--ooui-disabled-text);
}
.oo-ui-outlineControlsWidget {
background-color: var(--ooui-normal);
}
.oo-ui-outlineOptionWidget.oo-ui-optionWidget-highlighted {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
}
.oo-ui-popupWidget-popup {
background-color: var(--ooui-interface);
border-color: var(--ooui-interface-border);
}
.oo-ui-popupWidget-anchored-top .oo-ui-popupWidget-anchor:after {
border-bottom-color: var(--ooui-interface);
}
.oo-ui-popupWidget-anchored-top .oo-ui-popupWidget-anchor:before {
border-bottom-color: var(--ooui-interface-border);
}
.oo-ui-popupWidget-anchored-bottom .oo-ui-popupWidget-anchor:after {
border-top-color: var(--ooui-interface);
}
.oo-ui-popupWidget-anchored-bottom .oo-ui-popupWidget-anchor:before {
border-top-color: var(--ooui-interface-border);
}
.oo-ui-popupWidget-anchored-start .oo-ui-popupWidget-anchor:after {
border-right-color: var(--ooui-interface);
}
.oo-ui-popupWidget-anchored-start .oo-ui-popupWidget-anchor:before {
border-right-color: var(--ooui-interface-border);
}
.oo-ui-popupWidget-anchored-end .oo-ui-popupWidget-anchor:after {
border-left-color: var(--ooui-interface);
}
.oo-ui-popupWidget-anchored-end .oo-ui-popupWidget-anchor:before {
border-left-color: var(--ooui-interface-border);
}
.oo-ui-searchWidget-query {
border-bottom-color: var(--ooui-interface-border);
}
.oo-ui-selectFileWidget-dropTarget {
background-color: var(--ooui-interface);
border-color: var(--ooui-interface-border);
}
.oo-ui-selectFileWidget.oo-ui-widget-enabled.oo-ui-selectFileWidget-dropTarget {
background-color: var(--ooui-interface);
}
.oo-ui-selectFileWidget.oo-ui-widget-enabled.oo-ui-selectFileWidget-dropTarget:hover {
border-color: var(--ooui-input-border--hover);
}
.oo-ui-tabOptionWidget {
color: var(--ooui-text);
}
.oo-ui-tabSelectWidget-framed .oo-ui-tabOptionWidget.oo-ui-optionWidget-selected {
background-color: var(--body-dark);
color: var(--ooui-text);
}
.oo-ui-tabSelectWidget-framed .oo-ui-tabOptionWidget.oo-ui-optionWidget-selected .oo-ui-labelElement-label {
border-bottom-color: var(--body-border);
}
.oo-ui-tabSelectWidget-framed .oo-ui-tabOptionWidget.oo-ui-widget-enabled:hover,
.oo-ui-tabSelectWidget-framed .oo-ui-tabOptionWidget.oo-ui-widget-enabled:active {
background-color: var(--body-light);
color: var(--ooui-text);
}
.oo-ui-tabSelectWidget-framed .oo-ui-tabOptionWidget.oo-ui-widget-enabled.oo-ui-optionWidget-selected:hover {
background-color: var(--body-dark);
}
.oo-ui-tabSelectWidget-frameless .oo-ui-tabOptionWidget.oo-ui-optionWidget-selected {
color: var(--ooui-progressive);
box-shadow: inset 0 -2px 0 0 var(--ooui-progressive);
}
.oo-ui-tabSelectWidget-frameless .oo-ui-tabOptionWidget.oo-ui-optionWidget-selected:hover,
.oo-ui-tabSelectWidget-frameless .oo-ui-tabOptionWidget.oo-ui-optionWidget-selected:focus {
color: var(--ooui-progressive--hover);
box-shadow: inset 0 -2px 0 0 var(--ooui-progressive--hover);
}
.oo-ui-tabSelectWidget-framed {
background: none;
border-bottom: 1px solid var(--ooui-interface-border);
}
.oo-ui-tabSelectWidget-frameless {
box-shadow: inset 0 -1px 0 0 var(--ooui-interface-border);
}
.oo-ui-tabSelectWidget-mobile {
}
.oo-ui-tabSelectWidget-mobile.oo-ui-tabSelectWidget-framed:after {
background: var(--mobile-navbox-linear-gradient);
}
.oo-ui-tabSelectWidget-mobile.oo-ui-tabSelectWidget-frameless:after {
background: var(--mobile-navbox-linear-gradient);
}
.oo-ui-tagItemWidget {
border-color: var(--ooui-normal-border);
}
.oo-ui-tagItemWidget.oo-ui-widget-enabled {
color: var(--ooui-text);
}
.oo-ui-tagItemWidget.oo-ui-widget-enabled:hover {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
}
.oo-ui-tagItemWidget.oo-ui-widget-enabled:not( .oo-ui-tagItemWidget-fixed ) {
background-color: var(--ooui-normal);
}
.oo-ui-tagItemWidget.oo-ui-widget-enabled .oo-ui-buttonElement-button:hover {
background-color: var(--ooui-normal--hover);
}
.oo-ui-tagMultiselectWidget.oo-ui-widget-enabled {
background-color: var(--ooui-interface);
}
.oo-ui-tagMultiselectWidget.oo-ui-widget-enabled.oo-ui-tagMultiselectWidget-outlined {
background-color: var(--ooui-normal);
}
.oo-ui-tagMultiselectWidget.oo-ui-widget-enabled.oo-ui-tagMultiselectWidget-outlined .oo-ui-tagItemWidget.oo-ui-widget-enabled {
background-color: var(--ooui-interface);
}
.oo-ui-textInputWidget .oo-ui-inputWidget-input {
background-color: var(--ooui-input);
color: var(--ooui-text);
border-color: var(--ooui-input-border);
}
.oo-ui-textInputWidget.oo-ui-widget-enabled .oo-ui-inputWidget-input::placeholder {
color: var(--subtle-color);
}
.oo-ui-textInputWidget.oo-ui-widget-enabled .oo-ui-inputWidget-input:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-textInputWidget.oo-ui-widget-enabled .oo-ui-inputWidget-input[readonly]:not(.oo-ui-pendingElement-pending) {
background-color: var(--ooui-disabled);
color: var(--ooui-disabled-text);
}
.oo-ui-textInputWidget.oo-ui-widget-enabled:hover .oo-ui-inputWidget-input {
border-color: var(--ooui-input-border--hover);
}
.oo-ui-textInputWidget.oo-ui-widget-enabled:hover .oo-ui-inputWidget-input:focus {
border-color: var(--ooui-accent);
}
@media screen and (min-width: 0) {
.oo-ui-textInputWidget.oo-ui-widget-enabled textarea.oo-ui-inputWidget-input:focus {
outline: 1px solid var(--ooui-accent);
}
}
.oo-ui-textInputWidget.oo-ui-widget-disabled .oo-ui-inputWidget-input {
background-color: var(--ooui-disabled);
color: var(--ooui-disabled-text);
text-shadow: none;
border-color: var(--ooui-disabled-border);
}
.oo-ui-toggleSwitchWidget {
background-color: var(--ooui-input);
border-color: var(--ooui-input-border);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled .oo-ui-toggleSwitchWidget-grip {
background-color: var(--ooui-input);
border-color: var(--ooui-input-border);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:hover {
background-color: var(--ooui-input);
border-color: var(--ooui-accent);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:hover .oo-ui-toggleSwitchWidget-grip {
background-color: var(--ooui-input);
border-color: var(--ooui-accent);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:active,
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:active:hover,
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:active:focus {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
box-shadow: inset 0 0 0 1px var(--ooui-progressive--hover);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:active .oo-ui-toggleSwitchWidget-grip,
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:active:hover .oo-ui-toggleSwitchWidget-grip,
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:active:focus .oo-ui-toggleSwitchWidget-grip {
background-color: var(--ooui-input);
border-color: var(--ooui-input);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:focus .oo-ui-toggleSwitchWidget-grip {
border-color: var(--ooui-accent);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled.oo-ui-toggleWidget-on {
background-color: var(--ooui-progressive);
border-color: var(--ooui-progressive);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled.oo-ui-toggleWidget-on .oo-ui-toggleSwitchWidget-grip {
background-color: var(--ooui-input);
border-color: var(--ooui-input);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled.oo-ui-toggleWidget-on:hover {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled.oo-ui-toggleWidget-on:active,
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled.oo-ui-toggleWidget-on:active:hover {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled.oo-ui-toggleWidget-on:focus {
border-color: var(--ooui-progressive);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled.oo-ui-toggleWidget-on:focus::before {
border-color: #fff;
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-disabled {
background-color: var(--ooui-disabled);
border-color: var(--ooui-disabled);
}
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled > .oo-ui-buttonElement-button {
color: var(--ooui-text);
}
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled > .oo-ui-buttonElement-button:hover {
color: var(--ooui-text);
}
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled > .oo-ui-buttonElement-button:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled.oo-ui-buttonElement-pressed > input.oo-ui-buttonElement-button,
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled > .oo-ui-buttonElement-button:active {
color: var(--ooui-text);
}
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button,
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button:hover {
color: var(--ooui-text);
}
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button:active,
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive.oo-ui-buttonElement-pressed > .oo-ui-buttonElement-button {
color: var(--ooui-text);
border-color: var(--ooui-text);
}
.oo-ui-buttonElement-frameless.oo-ui-widget-disabled > .oo-ui-buttonElement-button {
color: var(--ooui-disabled-text);
}
.oo-ui-buttonElement-framed.oo-ui-widget-disabled > .oo-ui-buttonElement-button {
background-color: var(--ooui-disabled);
border-color: var(--ooui-disabled-border);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled > .oo-ui-buttonElement-button {
background-color: var(--ooui-normal);
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled > .oo-ui-buttonElement-button:hover {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled > .oo-ui-buttonElement-button:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-buttonElement-active > .oo-ui-buttonElement-button {
background-color: var(--ooui-progressive--hover);
color: #fff;
border-color: var(--ooui-progressive--hover);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-buttonElement-active > .oo-ui-buttonElement-button:focus {
border-color: var(--ooui-progressive--hover);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled > .oo-ui-buttonElement-button:active,
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-buttonElement-pressed > .oo-ui-buttonElement-button {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive {
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button {
color: var(--ooui-text);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button:hover {
background-color: var(--ooui-normal--hover);
border-color: var(--ooui-progressive--hover);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-destructive > .oo-ui-buttonElement-button {
color: var(--ooui-text);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-destructive > .oo-ui-buttonElement-button:hover {
background-color: var(--ooui-normal--hover);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button {
background-color: var(--ooui-progressive);
border-color: var(--ooui-progressive);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button:hover {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent), inset 0 0 0 2px #fff;
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button:active,
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive.oo-ui-buttonElement-pressed > .oo-ui-buttonElement-button,
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive.oo-ui-buttonElement-active > .oo-ui-buttonElement-button,
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive.oo-ui-popupToolGroup-active > .oo-ui-buttonElement-button {
color: #fff;
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
}
.oo-ui-pendingElement-pending {
background-image: var(--ooui-pending-background-image);
background-size: 200%;
animation: oo-ui-pendingElement-stripes 6s linear infinite;
}
@keyframes oo-ui-pendingElement-stripes {
100% {
background-position: 100%;
}
}
.oo-ui-messageDialog-content > .oo-ui-window-foot {
outline-color: var(--ooui-interface-border);
}
.oo-ui-messageDialog-message {
color: var(--ooui-text);
}
.oo-ui-messageDialog-actions-horizontal .oo-ui-actionWidget {
border-right-color: var(--ooui-interface-border);
}
.oo-ui-messageDialog-actions-vertical .oo-ui-actionWidget {
border-bottom-color: var(--ooui-interface-border);
}
.oo-ui-processDialog-content .oo-ui-window-head,
.oo-ui-processDialog-content .oo-ui-window-foot {
outline-color: var(--ooui-interface-border);
}
.oo-ui-processDialog .oo-ui-actionWidget > .oo-ui-buttonElement-button {
border-top-color: transparent;
border-bottom-color: transparent;
}
.oo-ui-processDialog .oo-ui-actionWidget > .oo-ui-buttonElement-button:hover,
.oo-ui-processDialog .oo-ui-actionWidget > .oo-ui-buttonElement-button:active {
border-top-color: transparent;
border-bottom-color: transparent;
}
.oo-ui-processDialog .oo-ui-actionWidget:not( .oo-ui-flaggedElement-progressive ):not( .oo-ui-flaggedElement-destructive ) > .oo-ui-buttonElement-button:hover,
.oo-ui-processDialog .oo-ui-actionWidget:not( .oo-ui-flaggedElement-progressive ):not( .oo-ui-flaggedElement-destructive ) > .oo-ui-buttonElement-button:active {
border-right-color: var(--ooui-interface-border);
border-left-color: transparent;
}
.oo-ui-processDialog .oo-ui-actionWidget:not( .oo-ui-flaggedElement-progressive ):not( .oo-ui-flaggedElement-destructive ) > .oo-ui-buttonElement-button:focus {
border-color: var(--ooui-accent);
}
.oo-ui-processDialog-actions-safe .oo-ui-actionWidget > .oo-ui-buttonElement-button,
.oo-ui-processDialog-actions-other .oo-ui-actionWidget > .oo-ui-buttonElement-button {
border-right-color: var(--ooui-normal-border);
border-left-color: transparent;
}
.oo-ui-processDialog-actions-safe .oo-ui-widget-enabled.oo-ui-iconElement:not( .oo-ui-labelElement ) > .oo-ui-buttonElement-button:hover {
background-color: var(--ooui-normal--hover);
border-right-color: var(--ooui-interface-border);
}
.oo-ui-windowManager-modal > .oo-ui-dialog {
background-color: var(--ooui-window-background);
}
.oo-ui-windowManager-modal > .oo-ui-dialog > .oo-ui-window-frame {
background-color: var(--ooui-interface);
}
.oo-ui-windowManager-modal.oo-ui-windowManager-floating > .oo-ui-dialog > .oo-ui-window-frame {
border-color: var(--ooui-interface-border);
}
.oo-ui-window {
color: var(--ooui-text);
}
.oo-ui-toolbar-bar {
background-color: var(--ooui-interface);
color: var(--ooui-text);
}
.oo-ui-toolbar-position-top > .oo-ui-toolbar-bar {
border-bottom-color: var(--body-mid);
}
.oo-ui-toolbar-bar .oo-ui-bookletLayout > .oo-ui-menuLayout-menu {
border-right-color: var(--body-mid);
}
.oo-ui-tool.oo-ui-widget-enabled > .oo-ui-tool-link:hover {
background-color: var(--ooui-normal--hover);
}
.oo-ui-tool.oo-ui-widget-enabled > .oo-ui-tool-link:focus {
outline: 1px solid var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-tool.oo-ui-widget-enabled > .oo-ui-tool-link:active,
.oo-ui-tool.oo-ui-widget-enabled.oo-ui-tool-active > .oo-ui-tool-link,
.oo-ui-tool.oo-ui-widget-enabled.oo-ui-popupToolGroup-active > .oo-ui-tool-link {
background-color: var(--ooui-normal--hover);
color: var(--ooui-accent);
box-shadow: none;
}
.oo-ui-tool.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive > .oo-ui-tool-link {
background-color: var(--ooui-progressive);
}
.oo-ui-tool.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive > .oo-ui-tool-link:hover {
background-color: var(--ooui-progressive--hover);
}
.oo-ui-tool.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive > .oo-ui-tool-link:focus {
box-shadow: inset 0 0 0 1px var(--ooui-accent), inset 0 0 0 2px #fff;
}
.oo-ui-tool.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive > .oo-ui-tool-link:active,
.oo-ui-tool.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive.oo-ui-tool-active > .oo-ui-tool-link {
background-color: var(--ooui-progressive--hover);
}
.oo-ui-listToolGroup-tools .oo-ui-tool.oo-ui-widget-enabled {
background-color: var(--ooui-normal);
}
.oo-ui-listToolGroup-tools .oo-ui-tool.oo-ui-widget-enabled:hover {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
}
.oo-ui-listToolGroup-tools .oo-ui-tool-active.oo-ui-widget-enabled .oo-ui-tool-link .oo-ui-tool-title {
color: var(--ooui-progressive);
}
.oo-ui-menuToolGroup {
border-left-color: var(--body-mid);
border-right-color: var(--body-mid);
}
.oo-ui-popupToolGroup-tools {
background-color: var(--ooui-interface);
border-color: var(--body-mid);
}
.oo-ui-popupToolGroup.oo-ui-widget-enabled > .oo-ui-popupToolGroup-handle:hover {
background-color: var(--ooui-normal--hover);
}
.oo-ui-popupToolGroup.oo-ui-widget-enabled > .oo-ui-popupToolGroup-handle:focus {
outline: 1px solid var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-toolbar-actions .oo-ui-popupToolGroup.oo-ui-widget-enabled > .oo-ui-popupToolGroup-handle:hover {
border-right-color: var(--ooui-normal--hover);
}
.oo-ui-popupToolGroup-tools .oo-ui-tool.oo-ui-widget-enabled .oo-ui-tool-link:focus {
box-shadow: inset 0 0 0 2px var(--ooui-accent);
}
.oo-ui-popupToolGroup-tools .oo-ui-tool-active.oo-ui-widget-enabled .oo-ui-tool-link .oo-ui-tool-title {
color: var(--ooui-progressive);
}
.oo-ui-popupToolGroup.oo-ui-popupToolGroup-active > .oo-ui-popupToolGroup-handle {
background-color: var(--ooui-normal);
color: var(--ooui-accent);
}
.oo-ui-popupToolGroup.oo-ui-popupToolGroup-active > .oo-ui-popupToolGroup-handle:hover {
background-color: var(--ooui-normal--hover);
color: var(--ooui-accent);
}
.oo-ui-bookletLayout-outlinePanel > .oo-ui-outlineControlsWidget {
border-top-color: var(--ooui-interface-border);
}
.oo-ui-bookletLayout > .oo-ui-menuLayout-menu {
border-right-color: var(--ooui-interface-border);
}
.oo-ui-fieldLayout-disabled > .oo-ui-fieldLayout-body > .oo-ui-fieldLayout-header > .oo-ui-labelElement-label {
color: var(--ooui-disabled-text);
}
.oo-ui-panelLayout-framed {
border-color: var(--sidebar);
}
.oo-ui-icon-settings {
background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' width='20' height='20' viewBox='0 0 20 20'%3E%3Ctitle%3Esettings%3C/title%3E%3Cg transform='translate(10 10)'%3E%3Cpath id='a' d='M1.5-10h-3l-1 6.5h5m0 7h-5l1 6.5h3'/%3E%3Cuse xlink:href='%23a' transform='rotate(45)'/%3E%3Cuse xlink:href='%23a' transform='rotate(90)'/%3E%3Cuse xlink:href='%23a' transform='rotate(135)'/%3E%3C/g%3E%3Cpath d='M10 2.5a7.5 7.5 0 0 0 0 15 7.5 7.5 0 0 0 0-15v4a3.5 3.5 0 0 1 0 7 3.5 3.5 0 0 1 0-7'/%3E%3C/svg%3E");
}
.oo-ui-icon-clear {
background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 20 20'%3E%3Ctitle%3Eclear%3C/title%3E%3Cpath d='M10 0a10 10 0 1 0 10 10A10 10 0 0 0 10 0zm5.66 14.24-1.41 1.41L10 11.41l-4.24 4.25-1.42-1.42L8.59 10 4.34 5.76l1.42-1.42L10 8.59l4.24-4.24 1.41 1.41L11.41 10z'/%3E%3C/svg%3E");
}
.mw-widget-dateInputWidget-handle {
background-color: var(--ooui-input);
color: var(--ooui-text);
border-color: var(--ooui-input-border);
}
.mw-widget-dateInputWidget-calendar {
background-color: var(--ooui-interface);
}
.mw-widget-dateInputWidget.oo-ui-widget-enabled .mw-widget-dateInputWidget-handle:hover {
border-color: var(--ooui-input-border--hover);
}
.mw-widget-calendarWidget {
border-color: var(--ooui-interface-border);
}
.mw-widget-calendarWidget:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.mw-widget-calendarWidget-day,
.mw-widget-calendarWidget-day-heading {
color: var(--ooui-text);
}
.mw-widget-calendarWidget-day-additional {
color: var(--ooui-text);
opacity: 0.67;
}
.mw-widget-calendarWidget-day-today {
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.mw-widget-calendarWidget-item:hover {
background-color: var(--ooui-progressive);
}
.mw-widget-calendarWidget-item-selected {
background-color: var(--ooui-progressive--hover);
}
.mw-widgets-datetime-calendarWidget {
background-color: var(--ooui-interface);
border-color: var(--ooui-interface-border);
}
.mw-widgets-datetime-calendarWidget:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent), 0 2px 2px 0 rgba(0, 0, 0, 0.25);
}
.mw-widgets-datetime-calendarWidget-grid .mw-widgets-datetime-calendarWidget-cell.mw-widgets-datetime-calendarWidget-extra .oo-ui-buttonElement-button .oo-ui-labelElement-label {
color: var(--subtle-color);
}
.mw-widgets-datetime-calendarWidget-grid .mw-widgets-datetime-calendarWidget-cell.mw-widgets-datetime-calendarWidget-selected .oo-ui-buttonElement-button {
background-color: var(--ooui-progressive--hover);
}
.mw-widgets-datetime-dateTimeInputWidget-handle {
background-color: var(--ooui-input);
color: var(--ooui-text);
border-color: var(--ooui-input-border);
}
.mw-widgets-datetime-dateTimeInputWidget.oo-ui-widget-enabled.mw-widgets-datetime-dateTimeInputWidget-handle:hover {
border-color: var(--ooui-input-border--hover);
}
.mw-widgets-datetime-dateTimeInputWidget.oo-ui-widget-enabled:hover input,
.mw-widgets-datetime-dateTimeInputWidget.oo-ui-widget-enabled:hover textarea {
border-color: var(--ooui-input-border--hover);
}
.mw-widgets-datetime-dateTimeInputWidget.oo-ui-widget-enabled .mw-widgets-datetime-dateTimeInputWidget-editField:hover {
background-color: var(--ooui-normal);
}
.ve-activated .ve-init-mw-desktopArticleTarget-originalContent #catlinks:hover {
background: var(--ooui-normal--hover);
}
.ve-ui-overlay {
font-family: inherit;
}
.oo-ui-toolbar-position-top .ve-ui-toolbarDialog-position-above {
border-top-color: var(--body-mid);
}
.ve-ce-branchNode-blockSlug,
.ve-ce-branchNode-newSlug {
outline-color: var(--body-border);
background-color: var(--ooui-interface);
}
.ve-ui-specialCharacterPage h3 {
color: var(--byline-color);
}
.ve-ui-specialCharacterPage-character {
border-color: var(--body-mid);
}
.ve-ui-specialCharacterPage-character:hover {
border-color: var(--body-dark);
}
.ve-ce-linkAnnotation.ve-ce-annotation-active {
box-shadow: 0 0 0 1px var(--body-mid);
background: none;
}
.ve-ui-desktopContext .ve-ui-linkContextItem .ve-ui-linkContextItem-label {
border-color: var(--body-border);
}
.ve-ui-mwHelpPopupTool-version-label,
.ve-ui-mwHelpPopupTool-version-link,
.ve-ui-mwHelpPopupTool-version-date {
color: var(--byline-color);
}
.ve-ce-tableCellableNode {
border-color: var(--body-mid);
}
.ve-ce-mwReferencesListNode-muted {
color: var(--byline-color);
}
.ve-ui-mwTemplatePage-description,
.ve-ui-mwParameterPage-label,
.ve-ui-mwParameterPage-description-required,
.ve-ui-mwParameterPage-description-deprecated {
color: var(--byline-color);
}
.mw-widget-titleWidget-menu .mw-widget-titleOptionWidget-description {
color: var(--byline-color);
}
.ve-ui-mwGalleryDialog-menuLayout > .oo-ui-menuLayout-menu,
.ve-ui-mwGalleryDialog-innerMenuLayout > .oo-ui-menuLayout-menu,
.ve-ui-mwGalleryDialog .ve-ui-mwGalleryDialog-image-container,
.ve-ui-targetWidget {
border-color: var(--body-border);
}
.ve-ui-targetWidget:not(.oo-ui-pendingElement-pending) {
background-color: var(--body-main);
}
.ve-ui-mwSaveDialog {
color: var(--ooui-text);
}
.ve-ui-mwSaveDialog-options {
background-color: var(--ooui-interface);
border-color: var(--body-border);
}
.ve-ui-mwSaveDialog-summary {
background-color: var(--ooui-input);
}
.ve-ui-mwSaveDialog-editSummary-count {
border-color: var(--body-border);
}
.ve-ui-mwSaveDialog-license {
color: var(--byline-color);
}
.ve-ui-mwReferenceContextItem-muted {
color: var(--byline-color);
}
.ve-ui-mwNoticesPopupTool-items > div:not(:first-child),
.ve-ui-mwHelpPopupTool-item:not(:first-child) {
border-color: var(--body-border);
}
.ve-ui-mwTransclusionOutlineControlsWidget {
background-color: var(--ooui-interface);
border-top-color: var(--body-border);
}
.ve-ui-mwTransclusionOutlineTemplateWidget-sticky {
background-color: var(--ooui-interface);
}
.ve-ui-mwTransclusionOutlineTemplateWidget .ve-ui-mwTransclusionOutlineParameterWidget.oo-ui-optionWidget-highlighted {
color: var(--ooui-text);
}
.ve-ui-mwTransclusionOutlineTemplateWidget-no-template-parameters {
color: var(--subtle-color);
}
.ve-ui-mwParameterPage-undocumentedLabel {
color: var(--subtle-color);
}
.ve-ui-mwTwoPaneTransclusionDialogLayout > .oo-ui-menuLayout-menu {
border-right: var(--body-border);
}
.ve-ui-mwParameterPage-doc-required,
.ve-ui-mwParameterPage-doc-deprecated,
.ve-ui-mwParameterPage-inlineDescription .ve-ui-mwParameterPage-doc-example {
color: var(--byline-color);
}
.ve-ui-expandableContent-toggle {
background-color: var(--ooui-interface);
}
.ve-ui-expandableContent-fade {
background: linear-gradient(to right, rgba(255, 255, 255, 0) 0, var(--ooui-interface) 90%);
}
.ve-ui-commandHelpDialog-shortcut > kbd,
.ve-ui-commandHelpDialog-sequence > kbd {
background-color: var(--keypress-background);
color: var(--keypress-color);
border-color: var(--keypress-border);
box-shadow: none;
text-shadow: none;
}
.ve-init-mw-desktopArticleTarget-toolbarPlaceholder-floating .ve-init-mw-desktopArticleTarget-toolbarPlaceholder-bar {
background: var(--ooui-interface);
}
.ve-init-mw-desktopArticleTarget-toolbarPlaceholder-bar {
border-bottom-color: var(--body-mid);
}
figure[typeof~='mw:File/Thumb'],
figure[typeof~='mw:File/Frame'],
figure[typeof~='mw:Image/Thumb'],
figure[typeof~='mw:Video/Thumb'],
figure[typeof~='mw:Image/Frame'],
figure[typeof~='mw:Video/Frame'] {
border: none;
background-color: var(--thumb-bg);
}
figure[typeof~='mw:File/Thumb'] > a:first-child > *:first-child:not( .mw-broken-media ),
figure[typeof~='mw:File/Frame'] > a:first-child > *:first-child:not( .mw-broken-media ),
figure[typeof~='mw:Image/Thumb'] > a:first-child > *:first-child:not( .mw-broken-media ),
figure[typeof~='mw:Video/Thumb'] > a:first-child > *:first-child:not( .mw-broken-media ),
figure[typeof~='mw:Image/Frame'] > a:first-child > *:first-child:not( .mw-broken-media ),
figure[typeof~='mw:Video/Frame'] > a:first-child > *:first-child:not( .mw-broken-media ) {
border: none;
background: var(--thumb-bg);
}
figure[typeof~='mw:File/Thumb'] > figcaption,
figure[typeof~='mw:File/Frame'] > figcaption,
figure[typeof~='mw:Image/Thumb'] > figcaption,
figure[typeof~='mw:Video/Thumb'] > figcaption,
figure[typeof~='mw:Image/Frame'] > figcaption,
figure[typeof~='mw:Video/Frame'] > figcaption {
border: none;
background-color: var(--thumb-caption-bg);
padding: 4px 6px;
}
:root {
--keypress-background: #eee;
--keypress-border: #ccc;
--keypress-color: #333;
}
.toc .toctitle > * {
color: #fff;
}
.navbox .navbox-title {
color: #fff;
}
.archivelist {
background-color: var(--body-light);
border: solid 1px var(--body-border);
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
float: right;
margin: 5px;
padding: 5px;
text-align: center;
width: 120px;
}
.shortcut {
border: 1px solid var(--body-border);
background: var(--body-light);
float: right;
font-size: 0.8em;
margin: 0.5em 0em 0.5em 1em;
padding: 0.5em;
text-align: center;
}
.hatnote,
.seealso {
font-style: italic;
}
.hatnote i,
.seealso i {
font-style: normal;
}
div.hatnote,
div.seealso {
margin: 0.5em 1.6em;
}
div.hatnote + div.hatnote,
div.hatnote + div.seealso,
div.seealso + div.hatnote,
div.seealso + div.seealso {
margin-top: -0.5em;
}
.keypress {
background: var(--keypress-background);
color: var(--keypress-color);
font-family: inherit;
border: 1px solid var(--keypress-border);
border-radius: 2px;
font-size: 0.9em;
margin: 0 0.1em;
padding: 0.1em 0.4em;
white-space: nowrap;
}
.relative-location {
background: var(--body-light);
border: 1px solid var(--body-border);
border-spacing: 0;
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
text-align: center;
}
.relative-location-header {
background: var(--body-dark);
color: #fff;
font-weight: bold;
}
:root {
--documentation-background: #f9fafa;
--documentation-link-color: #e4eaee;
--documentation-headers-color: #fff;
--documentation-header-background: #949eaa;
--documentation-subheader-background: #808c9a;
--documentation-border: #e4eaee;
}
.documentation {
background: var(--documentation-background);
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
margin: 1em 0;
}
.documentation pre,
.documentation code {
background-color: var(--documentation-background);
border-color: var(--documentation-border);
}
.documentation h2,
.documentation hr {
border-color: var(--documentation-border);
}
.documentation-header {
color: var(--documentation-headers-color);
background: var(--documentation-header-background);
font-weight: bold;
padding: 1em 1.5em;
}
.documentation-title {
font-size: 1.25em;
}
.documentation-subheader {
color: var(--documentation-headers-color);
background: var(--documentation-subheader-background);
padding: 0.5em 1.5em;
}
.documentation-subheader a,
.documentation-subheader a:visited,
.documentation-subheader a:active {
color: var(--documentation-link-color);
}
.documentation-documentation,
.documentation-links {
font-size: 0.85em;
}
.documentation-content {
padding: 1em 1.5em;
}
.mw-templatedata-doc-params dl:not(:empty) {
column-count: 3;
border-top: 1px solid var(--body-border);
margin-bottom: 0.5em;
}
.mw-templatedata-doc-params dt::after {
content: ":";
}
.mw-templatedata-doc-params dd,
.mw-templatedata-doc-params dt {
margin: 0.1em 2em;
min-width: auto;
}
.mw-templatedata-doc-muted {
color: var(--subtle-color);
font-style: italic;
}
:root {
--infobox-text-color: var(--text-color);
--table-header: var(--body-dark);
--table-subheader: var(--body-mid);
--table-body: var(--body-light);
--table-border: var(--body-border);
}
.infobox {
font-size: 0.85em;
width: 300px;
border-collapse: collapse;
float: right;
table-layout: fixed;
margin: 0.5em 0 1em 1em;
}
.infobox .infobox-buttons {
display: flex;
flex-wrap: wrap;
justify-content: center;
grid-gap: 3px;
margin-bottom: 3px;
}
.infobox .infobox-buttons .button {
background: var(--table-subheader);
padding: 0 5px;
font-weight: bold;
flex: 1 1 20%;
max-width: 20%;
color: #fff;
}
.infobox .infobox-buttons .button.button-selected {
background: var(--table-header);
}
.infobox tbody {
border: 1px solid var(--table-border);
background: var(--table-body);
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(231, 215, 199, 0.5);
}
.infobox .infobox-header {
background: var(--table-header);
padding: 0.5em 0;
text-align: center;
color: #fff;
font-size: 1.15em;
font-weight: bold;
line-height: 1.4em;
}
.infobox .infobox-image {
text-align: center;
}
.infobox .infobox-subheader {
background: var(--table-subheader);
font-weight: bold;
text-align: center;
color: #fff;
}
.infobox .infobox-subheader a {
color: var(--link-color);
}
.infobox .infobox-padding {
backgound: var(--table-body);
}
.infobox tr td:not(.infobox-padding) {
padding: 0.2em 0.5em;
}
.infobox th:not(.infobox-header):not(.infobox-subheader):not(.infobox-nested) {
border-right: 2px solid var(--table-subheader);
text-align: right;
padding: 0.2em 0.5em;
}
.infobox select {
max-width: 300px;
}
.hidden {
display: none;
}
ol.references,
.reflist {
font-size: 90%;
}
.reflist {
list-style-type: decimal;
}
.reflist .references {
font-size: 100%;
list-style-type: inherit;
}
.reflist-lower-alpha {
list-style-type: lower-alpha;
}
ol.references li:target,
sup.reference:target {
background-color: var(--body-light);
}
.hideQuotes .refhide {
display: none;
}
:root {
--messagebox-obsolete-background: #cfcfcf;
--messagebox-obsolete-border: #464646;
--messagebox-obsolete-color: var(--text-color);
--messagebox-obsolete-link-color: #6c6c6c;
--messagebox-info-background: #ebebeb;
--messagebox-info-border: #898989;
--messagebox-info-color: var(--text-color);
--messagebox-info-link-color: #6c6c6c;
--messagebox-action-background: #c7e8fa;
--messagebox-action-border: #0b5884;
--messagebox-action-color: var(--text-color);
--messagebox-action-link-color: #03436b;
--messagebox-warn-background: #dfc0ba;
--messagebox-warn-border: #861c10;
--messagebox-warn-color: var(--text-color);
--messagebox-warn-link-color: #8e221a;
--messagebox-safe-background: #d8f0d3;
--messagebox-safe-border: #1b8408;
--messagebox-safe-color: var(--text-color);
--messagebox-safe-link-color: #1b8408;
--messagebox-disambig-background: #ebebeb;
--messagebox-disambig-border: #898989;
--messagebox-disambig-color: var(--text-color);
--messagebox-disambig-link-color: #6c6c6c;
--messagebox-discord-background: #5865f2;
--messagebox-discord-border: #4c57d0;
--messagebox-discord-link-color: #d2e5fc;
}
.mw-message-box,
.mw-message-box-error,
.mw-message-box-warning,
.mw-message-box-success,
.usermessage {
color: var(--text-color);
}
.messagebox {
width: 65%;
margin: 0.5em auto;
border-left: 15px solid;
border-color: var(--body-dark);
background-color: var(--body-light);
box-sizing: border-box;
}
.messagebox.obsolete {
background-color: var(--messagebox-obsolete-background);
border-color: var(--messagebox-obsolete-border);
color: var(--messagebox-obsolete-color);
}
.messagebox.obsolete a,
.messagebox.obsolete a:visited,
.messagebox.obsolete a:active {
color: var(--messagebox-obsolete-link-color);
}
.messagebox.info {
background-color: var(--messagebox-info-background);
border-color: var(--messagebox-info-border);
color: var(--messagebox-info-color);
}
.messagebox.info a,
.messagebox.info a:visited,
.messagebox.info a:active {
color: var(--messagebox-info-link-color);
}
.messagebox.action {
background-color: var(--messagebox-action-background);
border-color: var(--messagebox-action-border);
color: var(--messagebox-action-color);
}
.messagebox.action a,
.messagebox.action a:visited,
.messagebox.action a:active {
color: var(--messagebox-action-link-color);
}
.messagebox.warn {
background-color: var(--messagebox-warn-background);
border-color: var(--messagebox-warn-border);
color: var(--messagebox-warn-color);
}
.messagebox.warn a,
.messagebox.warn a:visited,
.messagebox.warn a:active {
color: var(--messagebox-warn-link-color);
}
.messagebox.safe {
background-color: var(--messagebox-safe-background);
border-color: var(--messagebox-safe-border);
color: var(--messagebox-safe-color);
}
.messagebox.safe a,
.messagebox.safe a:visited,
.messagebox.safe a:active {
color: var(--messagebox-safe-link-color);
}
.messagebox.disambig {
background-color: var(--messagebox-disambig-background);
border-color: var(--messagebox-disambig-border);
color: var(--messagebox-disambig-color);
}
.messagebox.disambig a,
.messagebox.disambig a:visited,
.messagebox.disambig a:active {
color: var(--messagebox-disambig-link-color);
}
.messagebox.discord {
background-color: var(--messagebox-discord-background);
border-color: var(--messagebox-discord-border);
color: #fff;
}
.messagebox.discord a,
.messagebox.discord a:visited,
.messagebox.discord a:active {
color: var(--messagebox-discord-link-color);
}
.messagebox.discord a.external,
.messagebox.discord a:visited.external,
.messagebox.discord a:active.external {
font-style: italic;
}
.messagebox.stub {
width: 40%;
}
.messagebox.hasdialogue {
padding: 0 10px;
width: auto;
}
:root {
--byline-arrow-filter: invert(29%) sepia(0%) saturate(376%) hue-rotate(172deg) brightness(87%) contrast(80%);
--tile-border-color: var(--body-border);
--tile-background-color: var(--body-light);
--tile-link-button-color: #f5e9db;
--tile-link-button-highlight-color: #dfccb0;
--tile-dark-color: #fff;
--tile-dark-bg: var(--body-dark);
--tile-dark-link-color: #ccc;
--tile-dark-byline-color: rgba(255, 255, 255, 0.7);
--tile-dark-header-color: #fff;
}
.tile {
background: var(--tile-background-color);
border: 1px solid var(--tile-border-color);
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
padding: 1.5em 2em 1em;
max-width: 40em;
}
.tile h2 {
font-size: 1.4em;
font-weight: bold;
border: none;
margin: 0 0 0.4em;
}
.tile .byline + h2 {
margin-top: -0.5em;
}
.tile.dark {
color: var(--tile-dark-color);
background: var(--tile-dark-bg);
border: none;
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.3);
}
.tile.dark h2 {
color: var(--tile-dark-header-color);
}
.tile.dark a {
color: var(--tile-dark-link-color);
}
.tile.dark .byline {
color: var(--tile-dark-byline-color);
}
.byline {
font-size: 0.9em;
color: var(--byline-color);
}
.byline a {
color: var(--byline-color);
}
.tile-row {
display: flex;
flex-flow: row wrap;
margin-bottom: 1em;
}
.tile-halves {
display: flex;
flex-flow: row wrap;
background: var(--tile-background-color);
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
}
.tile-halves h2 {
font-size: 1.4em;
font-weight: bold;
border: none;
margin: 0 0 0.4em;
}
.tile-halves .byline + h2 {
margin-top: -0.5em;
}
.tile-top {
width: 100%;
padding: 1.3rem 1.5rem 0.6rem;
}
.tile-top.tile-image {
display: flex;
align-items: center;
background-color: var(--body-light);
overflow: hidden;
padding: 0;
height: 13vw;
max-height: 12em;
transition: 0.4s ease-out;
}
.tile-halves:hover .tile-top.tile-image img {
transform: scale(1.1);
transition: 0.5s ease-out;
}
.tile-top.tile-image a {
width: 100%;
}
.tile-top.tile-image img {
width: 100%;
object-fit: cover;
max-height: 200px;
transition: 0.4s ease-out;
}
.tile-bottom {
background: var(--body-dark);
width: 100%;
padding: 1rem 1.5rem 0.6rem;
}
.tile-bottom h2 a {
color: #fff !important;
}
.tile-bottom.link-button {
align-self: flex-end;
padding: 0;
}
.tile-bottom.link-button a {
display: block;
text-align: center;
padding: 0.75em 1.5em 0.8em;
text-decoration: none;
}
.tile-bottom.read-more {
background: var(--tile-link-button-color);
transition: 0.3s ease-out;
}
.tile-bottom.read-more a {
color: var(--byline-color);
font-weight: bold;
text-align: right;
}
.tile-bottom.read-more:hover {
background: var(--tile-link-button-highlight-color);
}
.tile-bottom.read-more:hover .arrow {
transform: translateX(50%);
}
.tile-bottom.read-more .arrow {
filter: var(--byline-arrow-filter);
margin-left: 0.4em;
transition: 0.3s ease-out;
}
body.page-Main_Page.action-view .catlinks,
body.page-Main_Page.action-view #contentSub,
body.page-Main_Page.action-view #firstHeading,
body.page-Main_Page.action-view #siteNotice {
display: none;
}
body.page-Main_Page .mw-parser-output {
max-width: 75em;
margin: 0 auto;
}
body.page-Main_Page.action-view .catlinks,
body.page-Main_Page.action-view #contentSub,
body.page-Main_Page.action-view #siteNotice {
display: none;
}
.mainpage-header {
display: flex;
margin: 2.6em 1.75em 1.5em;
}
.mainpage-header .header-intro {
flex: 2;
}
.mainpage-header .header-intro h1 {
font-size: 2.5em;
font-weight: bold;
border: none;
margin: 0 0 0.15em;
}
.mainpage-header .header-intro p {
font-size: 1.1em;
line-height: 1.7em;
}
.mainpage-header .header-stats {
flex: 1;
display: flex;
justify-content: center;
align-items: center;
margin-top: -1em;
}
.mainpage-body {
display: grid;
grid-template-areas: "event event event" "update update update" "content content content" "left left right";
gap: 0.9rem;
grid-template-columns: repeat(3, 1fr);
}
.mainpage-body h2 a {
color: var(--text-color);
}
.mainpage-body .tile {
padding-left: 1.75em;
padding-right: 1.75em;
max-width: 100%;
}
.mainpage-body .tile-row {
width: 100%;
margin-bottom: 0;
}
.mainpage-body .tile-row {
display: grid;
gap: 0.9rem;
}
.mainpage-contents.tile-row {
display: flex;
}
.mainpage-contents.tile-row .tile-top {
height: 5.5rem;
}
.mainpage-left {
grid-area: left;
flex: 2;
display: flex;
flex-flow: column wrap;
}
.mainpage-left > * {
margin: 0 0 0.9rem;
}
.mainpage-right {
grid-area: right;
flex: 1;
display: flex;
flex-flow: column wrap;
}
.mainpage-right > * {
margin: 0 0 0.9rem;
}
.arrow {
background: url('filepath://White-chevron.svg') no-repeat;
display: inline-block;
height: 0.7rem;
width: 0.45rem;
vertical-align: middle;
}
.arrow.dark {
filter: invert(80%);
}
.mainpage-contents {
grid-area: content;
grid-template-columns: repeat(6, 1fr);
}
.mainpage-contents .tile-halves {
flex: 1;
}
.mainpage-contents .tile-top {
height: 4.5rem;
position: relative;
}
.mainpage-contents .tile-top.tile-image img {
height: auto;
}
.mainpage-contents h2 {
margin: 0;
padding: 0;
}
.mainpage-contents .tile-bottom.link-button a {
padding: 0.75em 0.2em;
}
.popular-pages ul {
display: grid;
grid-template-columns: repeat(3, 1fr);
grid-gap: 0.6em;
margin: 1em 0 0.7em 0;
}
.mp-popular-page-light {
display: flex;
align-items: center;
background-color: var(--button-background);
transition: 100ms;
}
.mp-popular-page-light a {
flex: 1;
display: block;
color: #fff;
font-weight: bold;
text-align: center;
text-decoration: none;
padding: 0.7em 1em;
}
.mp-popular-page-light:hover {
filter: brightness(115%);
transition: 100ms;
}
.mainpage-social {
border: none;
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.3);
}
.mainpage-social .tile-top {
display: flex;
align-items: center;
padding: 1em 1.5em;
}
.mainpage-social .tile-top a {
flex: 1;
position: relative;
text-decoration: none;
}
.mainpage-social .tile-top a:hover .arrow {
transform: translateX(50%);
}
.mainpage-social .tile-bottom {
border: none;
padding: 1em 1.75em;
}
.mainpage-social .tile-bottom p {
color: #fff;
font-weight: bold;
font-size: 0.9em;
text-align: center;
text-transform: uppercase;
letter-spacing: 0.03em;
margin: 0;
}
.mainpage-social .social-icon {
margin-right: 0.75em;
text-align: center;
width: 60px;
}
.mainpage-social .social-header {
color: #fff;
font-weight: bold;
font-size: 1.15em;
margin: 0.5em 0 -0.15em;
}
.mainpage-social .server-tagline {
color: rgba(255, 255, 255, 0.9);
margin-bottom: 0.5em;
}
.mainpage-social .arrow {
position: absolute;
top: calc(50% - .5em);
right: 0;
height: 1em;
width: 0.7em;
background-size: 0.7em 1em;
transition: 0.3s ease-out;
}
.mainpage-social.mainpage-discord .tile-top {
background: #5865f2;
}
.mainpage-social.mainpage-discord .tile-bottom {
background: #525ee0;
}
.mainpage-social.mainpage-twitter .tile-top {
background: #15202b;
}
.mainpage-social.mainpage-twitter .tile-bottom {
background: #121c26;
}
.mainpage-editing {
border: none;
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.3);
}
.mainpage-editing .tile-top {
background: #438ab5;
}
.mainpage-editing .tile-bottom {
background: #3980ab;
border: none;
padding: 0.8rem 1.5rem 0.4rem;
}
.mainpage-editing h2,
.mainpage-editing a {
color: #fff;
}
.mainpage-editing p {
color: rgba(255, 255, 255, 0.9);
}
.mainpage-editing ul {
list-style-image: url('filepath://Transparent-chevron.svg');
}
@media only screen and (max-width: 1200px) {
.mainpage-contents {
grid-template-columns: repeat(3, 1fr);
}
}
@media only screen and (max-width: 1000px) {
.mainpage-body {
grid-template-areas: "event event event" "update update update" "content content content" "left left left" "right right right";
}
.mainpage-recent-updates {
grid-template-columns: repeat(2, 1fr);
}
.mainpage-recent-updates .tile-halves:last-child {
display: none;
}
.mainpage-recent-updates .tile-halves:hover .tile-top img {
transform: scale(1.04);
}
.mainpage-recent-updates .tile-top {
height: 18vw;
min-height: 9em;
}
.mainpage-header .header-stats {
display: none;
}
.mainpage-left > *:last-child,
.mainpage-right > *:last-child {
margin-bottom: 0;
}
.popular-pages ul {
grid-template-columns: repeat(2, 1fr);
}
}
@media only screen and (max-width: 720px) {
.mainpage-recent-updates {
grid-template-columns: none;
}
.mainpage-recent-updates .tile-halves:last-child {
display: flex;
}
.mainpage-contents {
grid-template-columns: repeat(2, 1fr);
}
}
.mw-prefs-buttons {
background-color: var(--body-main);
border-top-color: var(--body-border);
box-shadow: none;
}
.mw-prefs-tabs-wrapper.oo-ui-panelLayout-framed,
.mw-prefs-tabs > .oo-ui-menuLayout-content > .oo-ui-indexLayout-stackLayout > .oo-ui-tabPanelLayout {
border-color: var(--body-border);
}
.mw-htmlform-ooui .mw-htmlform-matrix tbody tr:nth-child(even) td {
background-color: var(--body-light);
}
.mw-htmlform-ooui .mw-htmlform-matrix tbody tr:hover td {
background-color: var(--body-mid);
}
:root {
--rc-positive-color: #407813;
--rc-negative-color: #b41e0f;
}
.mw-plusminus-pos {
color: var(--rc-positive-color);
}
.mw-plusminus-neg {
color: var(--rc-negative-color);
}
.client-js .mw-recentchanges-toplinks:not(.mw-recentchanges-toplinks-collapsed) {
border-color: var(--body-border);
background-color: var(--body-light);
border-radius: 2px;
}
.mw-rcfilters-ui-filterTagMultiselectWidget-wrapper-content-title {
color: var(--text-color);
}
.mw-rcfilters-ui-filterTagMultiselectWidget-emptyFilters {
color: var(--byline-color);
}
.mw-rcfilters-ui-filterTagMultiselectWidget.oo-ui-widget-enabled .oo-ui-tagMultiselectWidget-handle {
background-color: var(--ooui-interface);
border-color: var(--ooui-interface-border);
}
.mw-rcfilters-ui-filterTagMultiselectWidget-views-select-widget.oo-ui-widget {
border-color: var(--ooui-interface-border);
}
.mw-rcfilters-collapsed .mw-rcfilters-ui-filterTagMultiselectWidget {
border-bottom-color: var(--ooui-interface-border);
}
.mw-rcfilters-ui-menuSelectWidget-footer {
background-color: var(--ooui-interface);
border-color: var(--ooui-interface-border);
}
.mw-rcfilters-ui-viewSwitchWidget label.oo-ui-labelWidget {
color: var(--byline-color);
}
.mw-rcfilters-ui-tagItemWidget-popup-content {
color: var(--ooui-text);
}
.mw-changeslist-legend,
.mw-rcfilters-ui-changesListWrapperWidget .mw-changeslist-legend {
background-color: var(--body-light);
border-color: var(--body-dark);
}
.mw-rcfilters-ui-changesListWrapperWidget-previousChangesIndicator {
border-color: var(--sidebar);
}
.client-js .mw-changeslist ul,
.client-js .mw-changeslist table.mw-enhanced-rc {
margin-left: 0;
}
.mw-rcfilters-ui-watchlistTopSectionWidget-separator {
border-color: var(--sidebar);
}
.mw-rcfilters-ui-itemMenuOptionWidget-header {
border-bottom-color: var(--ooui-interface);
background-color: var(--ooui-interface-border);
}
.mw-rcfilters-ui-itemMenuOptionWidget:not(:last-child):not(.mw-rcfilters-ui-itemMenuOptionWidget-identifier-talk) {
border-bottom-color: var(--ooui-normal-border);
}
.mw-rcfilters-ui-itemMenuOptionWidget-label-title,
.mw-rcfilters-ui-itemMenuOptionWidget-label-desc {
color: var(--text-color);
}
.mw-rcfilters-ui-filterMenuOptionWidget.oo-ui-flaggedElement-muted:not(.oo-ui-optionWidget-selected) {
background-color: var(--body-main);
}
.mw-rcfilters-ui-filterMenuOptionWidget.oo-ui-flaggedElement-muted .mw-rcfilters-ui-itemMenuOptionWidget-label-title,
.mw-rcfilters-ui-filterMenuOptionWidget.oo-ui-flaggedElement-muted .mw-rcfilters-ui-itemMenuOptionWidget-label-desc {
color: var(--subtle-color);
}
.mw-rcfilters-ui-filterMenuSectionOptionWidget {
background-color: var(--body-mid);
}
.mw-rcfilters-ui-filterMenuSectionOptionWidget-header-title.oo-ui-labelElement-label {
color: var(--ooui-text);
}
.mw-rcfilters-ui-filterMenuHeaderWidget-title {
color: var(--ooui-text);
}
.mw-rcfilters-ui-filterMenuHeaderWidget-header {
border-bottom-color: var(--ooui-interface-border);
background-color: var(--ooui-interface);
}
.mw-rcfilters-ui-itemMenuOptionWidget-view-namespaces {
border-top-color: var(--ooui-interface-border);
}
.mw-rcfilters-ui-datePopupWidget {
border-color: var(--ooui-interface-border);
}
.mw-rcfilters-ui-datePopupWidget .mw-rcfilters-ui-valuePickerWidget-title {
color: var(--byline-color);
}
.mw-rcfilters-ui-savedLinksListItemWidget-label {
color: var(--ooui-accent);
}
.client-js .mw-changeslist.mw-rcfilters-ui-changesListWrapperWidget-highlighted ul,
.client-js .mw-changeslist.mw-rcfilters-ui-changesListWrapperWidget-highlighted table.mw-enhanced-rc {
margin-left: 1.5em;
}
.page-Special_CreateAccount .mw-ui-container,
.page-Special_UserLogin .mw-ui-container {
max-width: 64rem;
margin: 0 auto;
}
.mw-number-text {
color: var(--byline-color);
}
.mw-body-content .mw-number-text h3 {
color: var(--text-color);
}
#mw-indicator-mw-helplink a {
background: none;
padding: 0;
display: flex;
align-items: center;
}
#mw-indicator-mw-helplink a::before {
content: '';
margin-right: 5px;
-webkit-mask: url("/resources/src/mediawiki.helplink/images/helpNotice.svg?46d34") no-repeat 50% 50% / contain;
mask: url("/resources/src/mediawiki.helplink/images/helpNotice.svg?46d34") no-repeat 50% 50% / contain;
background: var(--text-color);
height: 20px;
width: 20px;
}
.results-info {
color: inherit;
}
.mw-search-profile-tabs {
background-color: var(--body-mid);
border-color: transparent;
}
.search-types .current a {
color: inherit;
}
#mw-searchoptions {
background-color: var(--body-mid);
border-color: transparent;
}
#mw-searchoptions .divider {
border-color: var(--body-border);
}
#mw-searchoptions h4 {
font-family: inherit;
}
#mw-searchoptions .oo-ui-labelElement:nth-of-type(odd) {
font-weight: bold;
}
.searchresult {
line-height: 1.5;
}
.searchalttitle,
#mw-search-interwiki li {
font-size: 90%;
}
.mw-search-result-data {
color: var(--byline-color);
}
.page-Special_ListFiles a.image img {
width: inherit;
height: inherit;
}
.page-Special_ListFiles .TablePager_col_thumb {
text-align: center;
}
#editcount table[border="1"] {
background-color: var(--body-main) !important;
border-color: var(--wikitable-border) !important;
margin-top: 0.5em;
}
#editcount table[border="1"] th,
#editcount table[border="1"] td {
padding: 0.2em 0.4em;
}
#editcount table[border="1"] th {
background-color: var(--wikitable-header-bg);
border: 1px solid var(--wikitable-border);
}
#editcount table[border="1"] td {
border: 1px solid var(--wikitable-border);
}
#editcount table[border="1"] tr:nth-child(odd) {
background-color: var(--body-light);
}
.mw-echo-ui-notificationBadgeButtonPopupWidget-popup > .oo-ui-popupWidget-popup .mw-echo-ui-placeholderItemWidget {
background-color: inherit;
}
table.mw-interwikitable.body td.mw-interwikitable-local-yes {
background-color: var(--table-yes-background);
color: var(--table-yes-color);
}
.mw-protectedpages-unknown {
color: var(--byline-color);
}
.watchlistredir,
.allpagesredirect {
font-style: italic;
}
.allpagesredirect:after {
color: var(--byline-color);
content: " (redirect)";
}
.mw-apisandbox-toolbar {
background: var(--body-main);
}
.oo-ui-menuOptionWidget .mw-apisandbox-flag {
color: var(--byline-color);
}
tr.mw-abusefilter-list-disabled,
tr.mw-abusefilter-list-disabled td {
color: var(--byline-color);
}
table.mw-abuselog-details {
background: var(--wikitable-bg);
border-color: var(--wikitable-border);
}
table.mw-abuselog-details th {
background: var(--wikitable-header-bg);
}
table.mw-abuselog-details th,
table.mw-abuselog-details td {
border-color: var(--wikitable-border);
}
.mw-abusefilter-log-hidden-entry {
color: var(--subtle-color);
}
body td.mw-abusefilter-history-changed {
background: var(--table-no-background);
}
div.mw-abusefilter-editor,
#mw-abusefilter-warn-preview,
#mw-abusefilter-disallow-preview {
border-color: var(--ooui-input-border);
}
.mw-destfile-warning {
border-color: var(--warningbox-border);
color: var(--text-color);
background-color: var(--warningbox-bg);
}
span.fileinput-button {
background-color: var(--ooui-normal);
border-color: var(--ooui-normal-border);
color: var(--ooui-text);
}
ul.fileupload-results li.ful-success {
background-color: var(--successbox-bg);
}
ul.fileupload-results li.ful-success a {
color: var(--link-color);
}
ul.fileupload-results li.ful-error {
background-color: var(--errorbox-bg);
}
.color-container {
display: flex;
margin: 2em auto;
width: 80%;
max-width: 60em;
}
.color-column {
flex: 1;
margin-right: 1em;
}
.color-column:last-child {
margin-right: 0;
}
.color-column h3 {
padding: 0;
}
.color-group {
color: #333;
padding: 1em 1.5em;
transition: 0.2s ease-out;
}
.color-group:hover {
transform: scale(1.03);
}
.color-group.dark {
color: #fff;
}
.color-group .variable,
.color-group .hexcode {
font-family: monospace;
font-size: 1.1em;
-webkit-user-select: all;
-moz-user-select: all;
-ms-user-select: all;
user-select: all;
margin: 0;
}
body.wgl-readermode .color-group .variable,
body.wgl-readermode .color-group .hexcode {
font-size: inherit;
}
.color-group .variable {
font-weight: bold;
}
#t-print,
#t-permalink {
display: none;
}
#filetoc {
border-radius: 2px;
background: var(--body-mid);
border-color: transparent;
margin: 0.5em auto;
text-align: center;
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
}
li.gallerybox div.thumb {
border: none;
background-color: var(--thumb-bg);
}
.smwfact {
display: none;
}
.list-header {
background-color: var(--body-mid);
color: inherit;
}
.editOptions {
color: var(--text-color);
background-color: var(--sourceeditor-background-secondary);
border-color: var(--sourceeditor-border);
}
.mw-json th,
.mw-json td {
border-color: var(--wikitable-border);
}
.mw-json td {
background: var(--wikitable-bg);
}
.mw-json th {
background: var(--wikitable-header-bg);
}
cf87e166e8be216a877a0f93f8c6cc06eb3e57fe
2301
2271
2024-04-11T19:51:25Z
Merds
25
Updating CSS from [[MediaWiki:Common.less]]
css
text/css
/* <pre> */
:root {
--body-main: #fdfcfc;
--body-light: #f5f0eb;
--body-mid: #d1b9ad;
--body-dark: #b1886f;
--body-border: #d1b9ad;
--body-background-color: #173a4d;
--button-background: #605443;
--button-color: #fff;
--button-border: #3c352a;
--button-dark: #18140c;
--button-light: #3a301d;
--sidebar: #cfc08d;
--background-text-color: #e2dbc8;
--background-link-color: #e2bd8a;
--search-box: #efeee6;
--link-color: #ab6d46;
--redlink-color: #ba0000;
--text-color: #2F2828;
--byline-color: #ccc;
--subtle-color: #afa19a;
--admin-blue: #332e75;
--bearcat-green: #13592e;
--awb-purple: #933b96;
--rsw-blue: #438ab6;
--osrsw-brown: #605443;
--thumb-bg: var(--body-light);
--thumb-caption-bg: var(--body-mid);
--sourceeditor-input-background: #fff;
--sourceeditor-background: var(--body-light);
--sourceeditor-background-secondary: var(--body-light);
--sourceeditor-border: var(--body-mid);
--codemirror-gutter-background: var(--body-mid);
}
@font-face {
font-family: 'Lora';
font-weight: 400 700;
font-style: normal;
font-display: swap;
src: url('filepath://Lora.woff2') format('woff2');
}
@font-face {
font-family: 'Lora';
font-weight: 400 700;
font-style: italic;
font-display: swap;
src: url('filepath://Lora-Italic.woff2') format('woff2');
}
:root {
--base-text-color: #36414f;
--base-heading-color: #444e5a;
--base-heading-border: #e4eaee;
--mw-code-background-color: var(--body-light);
--body-background-image: url('filepath://Wiki_background.jpg');
}
#mw-page-base {
background: none;
}
.mw-body {
background-color: var(--body-main);
color: var(--text-color);
border-color: transparent;
box-shadow: 0 0 7px rgba(0, 0, 0, 0.15);
margin-top: 0;
}
h1,
h2,
h3,
h4,
h5,
h6 {
color: var(--text-color);
}
h1,
h2 {
border-color: var(--body-border);
}
.mw-body h1,
.mw-body-content h1,
.mw-body-content h2,
.mw-body-content h3,
.mw-body-content h4,
.mw-body-content h5,
.mw-body-content h6 {
font-family: 'Lora', 'Palatino', 'Georgia', serif;
}
.mw-parser-output h2:first-of-type {
clear: left;
}
.mw-footer {
color: var(--background-text-color);
}
.mw-footer li {
color: var(--background-text-color);
}
.mw-footer a,
.mw-footer a:active,
.mw-footer a:visited {
color: var(--background-link-color);
}
::placeholder {
color: var(--subtle-color);
}
a {
color: var(--link-color);
}
a:visited,
a:active {
color: var(--link-color);
}
a.new {
color: var(--redlink-color);
}
a.new:visited {
color: var(--redlink-color);
}
.mw-parser-output a.extiw,
.mw-parser-output a.external {
color: var(--link-color);
}
.mw-parser-output a.extiw:visited,
.mw-parser-output a.external:visited,
.mw-parser-output a.extiw:active,
.mw-parser-output a.external:active {
color: var(--link-color);
}
.jsPurgeLink a.external {
color: var(--link-color);
}
:root {
--errorbox-bg: #feecea;
--errorbox-border: #ee4231;
--warningbox-bg: #fef9de;
--warningbox-border: #f9d000;
--successbox-bg: #ecf8e3;
--successbox-border: #6bc71f;
}
.mw-message-box-error,
.errorbox,
.mw-message-box-warning,
.warningbox,
.mw-message-box-success,
.successbox,
.usermessage {
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
}
.mw-message-box-error,
.errorbox {
background-color: var(--errorbox-bg);
border-color: var(--errorbox-border);
}
.mw-message-box-warning,
.warningbox,
.usermessage {
background-color: var(--warningbox-bg);
border-color: var(--warningbox-border);
}
.mw-message-box-success,
.successbox {
background-color: var(--successbox-bg);
border-color: var(--successbox-border);
}
.catlinks {
background: var(--body-light);
border: 1px solid var(--body-dark);
padding: 8px 15px;
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
}
.catlinks li {
border-color: var(--body-mid);
}
.filehistory a img,
#file img {
background: url("data:image/svg+xml,%3C%3Fxml version='1.0' encoding='UTF-8'%3F%3E%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16'%3E%3Cpath d='M0 0h8v16h8V8H0z' opacity='.13'/%3E%3C/svg%3E") repeat;
}
#file img:hover {
background: none;
}
.mw-highlight {
background: none;
}
.mw-highlight .linenos {
background-color: var(--mw-code-background-color);
color: var(--body-border);
}
.mw-highlight a:hover .linenos,
.mw-highlight .hll a .linenos {
color: var(--body-dark);
}
.mw-content-ltr.mw-highlight-lines pre,
.mw-content-ltr.content .mw-highlight-lines pre {
box-shadow: inset 2.75em 0 0 var(--mw-code-background-color);
}
#pagehistory ul {
list-style: none;
margin: 0;
}
#pagehistory li {
border: 1px solid transparent;
padding: 1px 10px;
margin: 2px 0;
}
#pagehistory li.selected {
background-color: var(--body-light);
color: inherit;
border: 1px dashed var(--body-border);
outline: none;
}
#mw-history-compare > div:first-of-type {
position: -webkit-sticky;
position: sticky;
top: 0;
background-color: var(--body-main);
border-bottom: 1px solid var(--body-dark);
padding: 0.25em 0;
}
.wgl-stickyheader #mw-history-compare > div:first-of-type {
top: 2.5rem;
}
.autocomment,
.autocomment a,
.autocomment a:visited {
color: var(--link-color);
}
li span.deleted,
span.history-deleted {
color: var(--byline-color);
}
.mw-usertoollinks-contribs-no-edits,
.mw-usertoollinks-contribs-no-edits:visited {
color: var(--redlink-color);
}
.CategoryTreeToggle {
color: var(--link-color);
}
body.wgl-stickyheader.action-view .mw-headline:target::before {
display: block;
content: '';
margin-top: -3rem;
height: 3rem;
visibility: hidden;
pointer-events: none;
}
.mw-mmv-post-image {
color: var(--text-color);
background-color: var(--body-main);
}
.mw-mmv-image-metadata {
border-top-color: var(--body-mid);
background-color: var(--body-light);
}
.mw-mmv-dialog,
.mw-mmv-dialog .mw-mmv-dialog-down-arrow,
.mw-mmv-options-dialog .mw-mmv-dialog-down-arrow {
background-color: var(--body-light);
box-shadow: none;
}
.mw-mmv-options-enable-alert {
background-color: var(--body-light);
color: var(--text-color);
}
.mw-mmv-options-dialog-header,
.mw-mmv-options-text-header,
.mw-mmv-options-text-body,
.mw-mmv-options-enable-alert,
.mw-mmv-options-dialog .mw-mmv-disable-confirmation .mw-mmv-options-dialog-header,
.mw-mmv-options-dialog .mw-mmv-disable-confirmation .mw-mmv-options-text-header {
color: var(--text-color);
}
.mw-revslider-container {
border-color: var(--sidebar);
}
.mw-revslider-slider-wrapper {
border-top-color: var(--sidebar);
}
.mw-ui-button {
background-color: var(--ooui-normal);
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
}
.mw-ui-button:not(:disabled):hover,
.mw-ui-button:not(:disabled):active {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
}
.mw-ui-button:not(:disabled):focus {
color: var(--ooui-text);
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent), inset 0 0 0 2px #fff;
}
.mw-ui-button:not(:disabled):visited {
color: var(--ooui-text);
}
.mw-ui-button.mw-ui-progressive:not(:disabled) {
background-color: var(--ooui-progressive);
color: #fff;
border-color: var(--ooui-progressive);
}
.mw-ui-button.mw-ui-progressive:not(:disabled):hover {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
}
.mw-ui-button.mw-ui-progressive:not(:disabled):focus {
box-shadow: inset 0 0 0 1px var(--ooui-accent), inset 0 0 0 2px #fff;
}
.mw-ui-button.mw-ui-progressive:not(:disabled):active,
.mw-ui-button.mw-ui-progressive:not(:disabled).is-on {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
box-shadow: none;
}
.mw-ui-button.mw-ui-destructive:not( :disabled ) {
color: #fff;
}
.mw-ui-button.mw-ui-quiet,
.mw-ui-button.mw-ui-quiet.mw-ui-progressive,
.mw-ui-button.mw-ui-quiet.mw-ui-destructive {
color: var(--text-color);
}
input[type='checkbox']:hover + .mw-ui-button.mw-ui-quiet,
input[type='checkbox']:hover + .mw-ui-button.mw-ui-quiet.mw-ui-progressive,
input[type='checkbox']:hover + .mw-ui-button.mw-ui-quiet.mw-ui-destructive,
.mw-ui-button.mw-ui-quiet:hover,
.mw-ui-button.mw-ui-quiet.mw-ui-progressive:hover,
.mw-ui-button.mw-ui-quiet.mw-ui-destructive:hover {
background-color: rgba(0, 24, 73, 0.02745098);
color: var(--text-color);
border-color: transparent;
}
input[type='checkbox']:focus + .mw-ui-button.mw-ui-quiet,
input[type='checkbox']:focus + .mw-ui-button.mw-ui-quiet.mw-ui-progressive,
input[type='checkbox']:focus + .mw-ui-button.mw-ui-quiet.mw-ui-destructive,
.mw-ui-button.mw-ui-quiet:focus,
.mw-ui-button.mw-ui-quiet.mw-ui-progressive:focus,
.mw-ui-button.mw-ui-quiet.mw-ui-destructive:focus {
color: var(--text-color);
}
input[type='checkbox']:active + .mw-ui-button.mw-ui-quiet,
input[type='checkbox']:active + .mw-ui-button.mw-ui-quiet.mw-ui-progressive,
input[type='checkbox']:active + .mw-ui-button.mw-ui-quiet.mw-ui-destructive,
.mw-ui-button.mw-ui-quiet:active,
.mw-ui-button.mw-ui-quiet.mw-ui-progressive:active,
.mw-ui-button.mw-ui-quiet.mw-ui-destructive:active {
background-color: rgba(0, 36, 73, 0.08235294);
color: var(--text-color);
border-color: #72777d;
}
.mw-ui-input {
background-color: var(--ooui-input);
color: var(--text-color);
border-color: var(--ooui-input-border);
}
.mw-ui-input:hover {
border-color: var(--ooui-input-border--hover);
}
.mw-ui-input::placeholder {
color: var(--byline-color);
}
.mw-content-ltr .redirectText li:first-child {
padding: 0;
background: 0;
}
.mw-content-ltr .redirectText li:first-child::before {
content: '';
background: currentcolor;
-webkit-mask: url("filepath://Redirect-arrow.svg") no-repeat 50% 50% / contain;
mask: url("filepath://Redirect-arrow.svg") no-repeat 50% 50% / contain;
display: inline-block;
width: 47px;
height: 20px;
}
.vector-search-box-inner {
background: var(--body-main) !important;
box-shadow: inset 0 -7px 7px -7px rgba(0, 0, 0, 0.15) !important;
}
.vector-menu-dropdown .vector-menu-heading {
color: var(--vector-tab-link-color) !important;
}
.vector-menu-dropdown .vector-menu-heading:hover {
color: var(--vector-tab-link-color) !important;
}
.vector-menu-dropdown .vector-menu-heading:focus {
color: var(--vector-tab-link-color) !important;
}
:root {
--wikitable-header-bg: var(--body-dark);
--wikitable-border: var(--body-border);
--wikitable-bg: var(--body-light);
--wikitable-bg-lighter: #e9e3d6;
--wikitable-color: var(--text-color);
--table-na-background: rgba(255, 255, 255, 0.3);
--table-na-color: var(--subtle-color);
--table-yes-background: #c3e8a3;
--table-yes-color: #2e5e05;
--table-no-background: #fbc0ba;
--table-no-color: #801c13;
--table-maybe-background: #fcea94;
--table-maybe-color: #786300;
}
.wikitable {
background: var(--wikitable-bg);
color: var(--wikitable-color);
border-color: var(--wikitable-border);
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
}
.wikitable > tr > th,
.wikitable > tr > td,
.wikitable > * > tr > th,
.wikitable > * > tr > td {
border-color: var(--wikitable-border);
}
.wikitable > tr > th.table-noborder,
.wikitable > tr > td.table-noborder,
.wikitable > * > tr > th.table-noborder,
.wikitable > * > tr > td.table-noborder {
border-left-style: hidden;
border-right-style: hidden;
padding-left: 0;
padding-right: 0;
}
.wikitable > tr > th,
.wikitable > * > tr > th {
background-color: var(--wikitable-header-bg);
color: #fff;
}
.tabber .wikitable {
box-shadow: none;
}
.mw_metadata td,
.mw_metadata th {
border-color: var(--wikitable-border);
}
.mw_metadata th {
background-color: var(--wikitable-header-bg);
}
.mw_metadata td {
background-color: var(--wikitable-bg);
}
.mw-datatable {
border-color: var(--wikitable-border);
}
.mw-datatable td,
.mw-datatable th {
border-color: var(--wikitable-border);
}
.mw-datatable th {
background-color: var(--wikitable-header-bg);
}
.mw-datatable td {
background-color: var(--wikitable-bg);
}
.mw-datatable tr:hover td {
background-color: var(--wikitable-bg);
}
table.alternating-rows tr:nth-child(odd),
table.alternating-cols td:nth-child(odd) {
background: var(--wikitable-alternating-bg);
}
.table-na {
background: var(--table-na-background);
color: var(--table-na-color);
vertical-align: middle;
text-align: center;
}
.table-yes {
background: var(--table-yes-background);
color: var(--table-yes-color);
}
.table-positive {
background: var(--table-yes-background);
}
.table-no {
background: var(--table-no-background);
color: var(--table-no-color);
}
.table-negative {
background: var(--table-no-background);
}
.table-maybe {
background: var(--table-maybe-background);
color: var(--table-maybe-color);
}
#mw-allmessagestable .am_actual,
#mw-allmessagestable .am_default {
background-color: var(--wikitable-bg);
}
#mw-allmessagestable .am_default:hover,
#mw-allmessagestable .am_actual:hover,
#mw-allmessagestable tbody:hover td {
background-color: var(--wikitable-bg-lighter);
}
table.wikitable td.no-cell-spacing {
padding: 0;
height: 0;
}
table.wikitable td.no-cell-spacing table {
margin: -1px;
width: calc(100% + 2px);
height: calc(100% + 2px);
}
.plainlist ol,
.plainlist ul {
margin: 0;
}
.plainlist li {
margin-bottom: 0;
list-style: none;
}
table.align-right-1 td:nth-of-type(1),
table.align-right-2 td:nth-of-type(2),
table.align-right-3 td:nth-of-type(3),
table.align-right-4 td:nth-of-type(4),
table.align-right-5 td:nth-of-type(5),
table.align-right-6 td:nth-of-type(6),
table.align-right-7 td:nth-of-type(7),
table.align-right-8 td:nth-of-type(8),
table.align-right-9 td:nth-of-type(9),
table.align-right-10 td:nth-of-type(10),
table.align-right-11 td:nth-of-type(11),
table.align-right-12 td:nth-of-type(12),
table.align-right-13 td:nth-of-type(13),
table.align-right-14 td:nth-of-type(14),
table.align-right-15 td:nth-of-type(15),
table.align-right-16 td:nth-of-type(16),
table.align-right-17 td:nth-of-type(17),
table.align-right-18 td:nth-of-type(18),
table.align-right-19 td:nth-of-type(19),
table.align-right-20 td:nth-of-type(20) {
text-align: right;
}
table.align-center-1 td:nth-of-type(1),
table.align-center-2 td:nth-of-type(2),
table.align-center-3 td:nth-of-type(3),
table.align-center-4 td:nth-of-type(4),
table.align-center-5 td:nth-of-type(5),
table.align-center-6 td:nth-of-type(6),
table.align-center-7 td:nth-of-type(7),
table.align-center-8 td:nth-of-type(8),
table.align-center-9 td:nth-of-type(9),
table.align-center-10 td:nth-of-type(10),
table.align-center-11 td:nth-of-type(11),
table.align-center-12 td:nth-of-type(12),
table.align-center-13 td:nth-of-type(13),
table.align-center-14 td:nth-of-type(14),
table.align-center-15 td:nth-of-type(15),
table.align-center-16 td:nth-of-type(16),
table.align-center-17 td:nth-of-type(17),
table.align-center-18 td:nth-of-type(18),
table.align-center-19 td:nth-of-type(19),
table.align-center-20 td:nth-of-type(20) {
text-align: center;
}
table.align-left-1 td:nth-of-type(1),
table.align-left-2 td:nth-of-type(2),
table.align-left-3 td:nth-of-type(3),
table.align-left-4 td:nth-of-type(4),
table.align-left-5 td:nth-of-type(5),
table.align-left-6 td:nth-of-type(6),
table.align-left-7 td:nth-of-type(7),
table.align-left-8 td:nth-of-type(8),
table.align-left-9 td:nth-of-type(9),
table.align-left-10 td:nth-of-type(10),
table.align-left-11 td:nth-of-type(11),
table.align-left-12 td:nth-of-type(12),
table.align-left-13 td:nth-of-type(13),
table.align-left-14 td:nth-of-type(14),
table.align-left-15 td:nth-of-type(15),
table.align-left-16 td:nth-of-type(16),
table.align-left-17 td:nth-of-type(17),
table.align-left-18 td:nth-of-type(18),
table.align-left-19 td:nth-of-type(19),
table.align-left-20 td:nth-of-type(20) {
text-align: left;
}
:root {
--diff-addedline-border-color: #438ab5;
--diff-addedline-background: #bddff2;
--diff-addedline-color: #000;
--diff-deletedline-border-color: #379541;
--diff-deletedline-background: #c1edbf;
--diff-deletedline-color: #000;
--diff-context-border-color: var(--body-mid);
--diff-context-background: var(--body-mid);
}
.diff-context {
border-color: var(--diff-context-border-color);
background: var(--diff-context-background);
color: inherit;
}
.diff-addedline {
border-color: var(--diff-addedline-border-color);
}
.diff-addedline .diffchange {
background: var(--diff-addedline-background);
color: var(--diff-addedline-color);
}
.diff-deletedline {
border-color: var(--diff-deletedline-border-color);
}
.diff-deletedline .diffchange {
background: var(--diff-deletedline-background);
color: var(--diff-deletedline-color);
}
.mw-diff-movedpara-left:after,
.mw-diff-movedpara-right:after {
color: var(--text-color);
}
.mw-notification {
background-color: var(--body-light);
border-color: var(--body-border);
color: var(--text-color);
}
.mw-echo-ui-notificationsInboxWidget-toolbarWrapper {
background: var(--body-main);
}
.mw-body-content .mw-echo-ui-datedSubGroupListWidget-title-secondary {
color: var(--byline-color);
}
.mw-echo-ui-pageNotificationsOptionWidget.oo-ui-optionWidget-selected {
background-color: var(--ooui-normal);
color: var(--ooui-accent);
}
.mw-echo-ui-pageNotificationsOptionWidget-label-count {
background-color: var(--ooui-normal);
color: var(--byline-color);
}
.oo-ui-optionWidget-selected .mw-echo-ui-pageNotificationsOptionWidget-label-count {
color: var(--ooui-accent);
}
.mw-echo-ui-pageNotificationsOptionWidget.oo-ui-optionWidget-highlighted {
background-color: var(--ooui-normal);
color: var(--text-color);
}
.mw-echo-ui-crossWikiUnreadFilterWidget {
border-color: var(--body-border);
}
.mw-echo-ui-crossWikiUnreadFilterWidget-subtitle {
color: var(--byline-color);
}
.mw-echo-ui-notificationBadgeButtonPopupWidget-popup > .oo-ui-popupWidget-popup > .oo-ui-popupWidget-head,
.mw-echo-ui-notificationBadgeButtonPopupWidget-popup > .oo-ui-popupWidget-popup > .oo-ui-popupWidget-footer {
border-color: var(--ooui-interface-border);
}
.mw-echo-ui-notificationBadgeButtonPopupWidget-popup > .oo-ui-popupWidget-popup > .oo-ui-popupWidget-footer .mw-echo-ui-notificationBadgeButtonPopupWidget-footer-buttons .oo-ui-buttonElement:last-child {
border-left-color: var(--ooui-normal-border);
}
.mw-echo-ui-notificationItemWidget {
background-color: var(--ooui-normal);
border-color: var(--ooui-normal-border);
}
.mw-echo-ui-notificationItemWidget:hover,
.mw-echo-ui-notificationItemWidget-unread:hover {
background-color: var(--ooui-normal--hover);
}
.mw-echo-ui-notificationItemWidget:last-child {
border-bottom-color: var(--ooui-normal-border);
}
.mw-echo-ui-notificationItemWidget-unread {
background-color: var(--search-box);
}
.mw-echo-ui-crossWikiNotificationItemWidget-group,
.mw-echo-ui-bundleNotificationItemWidget-group {
background-color: var(--ooui-interface);
}
.mw-echo-ui-toggleReadCircleButtonWidget-circle {
background-color: var(--ooui-progressive);
}
.mw-echo-ui-toggleReadCircleButtonWidget:hover .mw-echo-ui-toggleReadCircleButtonWidget-circle {
background-color: var(--ooui-progressive--hover);
}
.mw-echo-ui-toggleReadCircleButtonWidget-circle-unread {
background-color: var(--ooui-normal);
border-color: var(--ooui-normal-border);
}
.mw-echo-ui-notificationItemWidget-content-message-header,
.mw-echo-ui-notificationItemWidget-content-message-body,
.mw-echo-ui-menuItemWidget > .oo-ui-buttonElement-button > .oo-ui-labelElement-label,
.mw-echo-ui-notificationItemWidget-content-actions-timestamp {
color: var(--ooui-text);
}
.mw-echo-ui-bundleNotificationItemWidget-group {
background-color: var(--body-main);
}
@keyframes unseen-fadeout-to-unread {
from {
background-color: var(--wikitable-bg-lighter);
}
to {
background-color: var(--search-box);
}
}
@keyframes unseen-fadeout-to-read {
from {
background-color: var(--wikitable-bg-lighter);
}
to {
background-color: var(--body-main);
}
}
.mwe-popups {
background: var(--body-light);
}
.mwe-popups .mwe-popups-container {
color: var(--text-color);
background: var(--body-light);
}
.mwe-popups .mwe-popups-container.flipped-x-y:before,
.mwe-popups .mwe-popups-container.flipped-y:before {
border-top: none;
}
.mwe-popups .mwe-popups-container.mwe-popups-no-image-tri:before {
border-bottom: none;
}
.mwe-popups .mwe-popups-container.flipped-x-y:after,
.mwe-popups .mwe-popups-container.flipped-y:after {
border-top-color: var(--body-light);
}
.mwe-popups .mwe-popups-container.mwe-popups-no-image-tri:after {
border-bottom-color: var(--body-light);
}
.mwe-popups .mwe-popups-settings-icon:hover,
.mwe-popups .mwe-popups-settings-icon:active {
background-color: var(--ooui-normal--hover);
}
.mwe-popups .mw-ui-icon-element:not(.disabled):hover {
background: none;
}
.mwe-popups .mwe-popups-extract {
color: var(--text-color);
}
.mwe-popups .mwe-popups-extract[dir='ltr']:after {
background-image: linear-gradient(to right, rgba(49, 62, 89, 0), var(--body-light) 50%);
}
.mwe-popups-overlay {
background-color: var(--ooui-window-background);
}
#mwe-popups-settings {
background: var(--ooui-interface);
border-color: var(--ooui-interface-border);
color: var(--text-color);
}
#mwe-popups-settings header {
border-color: var(--ooui-interface-border);
}
#mwe-popups-settings main#mwe-popups-settings-form p {
color: var(--byline-color);
}
#mwe-popups-settings main#mwe-popups-settings-form form label > span {
color: var(--ooui-text);
}
:root {
--smw-ask-options-even-bg: var(--body-mid);
--smw-ask-options-odd-bg: var(--body-light);
--smw-ask-action-btn-lblue-bg: var(--body-main);
--smw-ask-action-btn-lblue-color: #000;
--smw-ask-action-btn-lblue-border-color: var(--body-light);
--smw-ask-action-btn-dblue-bg: var(--body-light);
--smw-ask-action-btn-dblue-color: #fff;
--smw-ask-action-btn-dblue-border-color: var(--button-border);
}
.smw-ask-condition fieldset,
.smw-ask-printhead fieldset {
border-color: var(--sidebar);
}
.smw-ask-search fieldset,
.smw-ask-format fieldset,
.smw-ask-options fieldset {
border-color: var(--sidebar);
}
.strike > span:before,
.strike > span:after {
background: var(--sidebar);
}
.smw-ask-options-fields tr td {
background-color: var(--smw-ask-options-even-bg);
}
.smw-ask-options-fields tr:nth-child(odd) td {
background-color: var(--smw-ask-options-odd-bg);
}
.smw-ask-action-btn.smw-ask-action-btn-lblue,
.smw-ask-action-btn.smw-ask-action-btn-lblue:hover,
.smw-ask-action-btn.smw-ask-action-btn-lblue:visited {
background-color: var(--smw-ask-action-btn-lblue-bg);
color: var(--smw-ask-action-btn-lblue-color);
border-color: var(--smw-ask-action-btn-lblue-border-color);
}
.smw-ask-action-btn.smw-ask-action-btn-dblue,
.smw-ask-action-btn.smw-ask-action-btn-dblue:hover,
.smw-ask-action-btn.smw-ask-action-btn-dblue:visited {
background-color: var(--smw-ask-action-btn-dblue-bg);
color: var(--smw-ask-action-btn-dblue-color);
border-color: var(--smw-ask-action-btn-dblue-border-color);
}
.smw-ask-query textarea,
.smw-ask-actions textarea {
background-color: var(--ooui-interface);
border-color: var(--ooui-interface-border);
color: var(--ooui-text);
}
.smw-ask-query-format select {
background-color: var(--ooui-interface);
border: 1px solid var(--ooui-interface-border);
color: var(--ooui-text);
}
.smw-ask-toplinks {
background-color: var(--body-mid);
}
.smw-ask-toplinks span.smw-icon-info {
background: none;
padding: 0 !important;
}
.smw-ask-toplinks span.smw-icon-info::before {
content: '';
background: var(--text-color);
-webkit-mask: url("data:image/svg+xml,%3C%3Fxml version='1.0' encoding='UTF-8'%3F%3E%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 20 20'%3E%3Ctitle%3Einfo%3C/title%3E%3Cpath d='M10 0C4.477 0 0 4.477 0 10s4.477 10 10 10 10-4.477 10-10S15.523 0 10 0zM9 5h2v2H9zm0 4h2v6H9z'/%3E%3C/svg%3E") no-repeat 50% 50% / contain;
mask: url("data:image/svg+xml,%3C%3Fxml version='1.0' encoding='UTF-8'%3F%3E%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 20 20'%3E%3Ctitle%3Einfo%3C/title%3E%3Cpath d='M10 0C4.477 0 0 4.477 0 10s4.477 10 10 10 10-4.477 10-10S15.523 0 10 0zM9 5h2v2H9zm0 4h2v6H9z'/%3E%3C/svg%3E") no-repeat 50% 50% / contain;
padding: 0 0 3px 18px;
}
.smw-ask-options-row-odd {
background-color: var(--body-light);
}
.smw-ask-options-row-even {
background-color: var(--body-mid);
}
#options-toggle:not(:checked) + #options-list .options-parameter-list:after {
background-image: linear-gradient(to bottom, transparent, var(--body-mid) 90%);
}
.smw-ask-button-submit input {
background-color: var(--ooui-normal);
border-color: var(--ooui-normal-border);
color: var(--text-color);
}
.smw-ask-button-submit input:hover,
.smw-ask-button-lgrey:hover {
background-color: var(--ooui-normal--hover);
border-color: var(--ooui-normal-border);
}
input.smw-ask-action-btn.smw-ask-action-btn-dblue {
background-color: var(--ooui-normal);
border-color: var(--ooui-normal-border);
color: var(--ooui-text);
}
a.smw-ask-action-btn.smw-ask-action-btn-lblue {
background-color: var(--body-mid);
border-color: var(--body-mid);
color: var(--ooui-text);
}
a.smw-ask-action-btn.smw-ask-action-btn-lblue:visited {
background-color: var(--body-mid);
border-color: var(--body-mid);
color: var(--ooui-text);
}
a.smw-ask-action-btn.smw-ask-action-btn-lblue:hover {
background-color: var(--body-mid);
border-color: var(--body-mid);
color: var(--ooui-text);
}
a.smw-ask-action-btn-lgrey {
background-color: var(--ooui-normal);
border-color: var(--ooui-normal-border);
color: var(--ooui-text);
}
a.smw-ask-action-btn-lgrey:hover {
background-color: var(--ooui-normal--hover);
border-color: var(--ooui-normal-border);
color: var(--ooui-text);
}
.smw-callout-error {
background-color: var(--errorbox-bg);
border-color: var(--errorbox-border);
}
.smw-callout-info {
background-color: var(--body-light);
border-color: var(--body-dark);
}
.smw-callout-success {
background-color: var(--successbox-bg);
border-color: var(--successbox-border);
}
.smw-callout-warning {
background-color: var(--warningbox-bg);
border-color: var(--warningbox-bg);
}
.smw-tabs input.nav-tab:checked + label.nav-label,
.smw-tabs input.nav-tab:checked + label.nav-label:hover {
color: inherit;
}
#tab-smw-property-value:checked + label.nav-label .usage-count {
color: #fff;
background-color: var(--ooui-progressive);
}
#tab-smw-property-value:checked + label.nav-label .usage-count.moderate {
color: #fff;
background-color: #b55e0c;
border-color: #b55e0c;
}
#tab-smw-property-value:checked + label.nav-label .usage-count.high {
color: #fff;
background-color: #9f261e;
border-color: #9f261e;
}
.smw-property-page-results .header-title {
background-color: var(--ooui-interface);
border-bottom-color: var(--ooui-interface-border);
color: var(--ooui-text);
}
.smw-property-page-results .value-row:hover {
background-color: var(--ooui-normal--hover);
}
.smw-property-page-results .smw-table .header-row {
color: var(--text-color);
}
.tippy-tooltip.light-border-theme {
background-color: var(--body-light);
color: var(--text-color);
}
.tippy-tooltip.light-border-theme .tippy-arrow {
border-top-color: var(--body-light);
}
.tippy-tooltip.light-border-theme .tippy-arrow:after {
border-top-color: var(--body-light);
}
.tippy-header {
background-color: var(--body-dark);
border-bottom-color: var(--body-mid);
}
.smw-ui-input-filter {
background-color: var(--ooui-interface);
border-color: var(--ooui-interface-border);
color: var(--ooui-text);
}
.smw-ui-input-filter input {
border-left-color: var(--ooui-interface-border) !important;
color: var(--ooui-text) !important;
}
.smw-ui-pagination .page-link.link-disabled {
background-color: var(--ooui-disabled);
border-color: var(--ooui-disabled-border);
color: var(--subtle-color);
}
.smw-ui-pagination .page-link {
background-color: var(--ooui-normal);
border-color: var(--ooui-normal-border);
color: var(--link-color);
}
.smw-ui-pagination .page-link:hover {
background-color: var(--ooui-normal--hover);
border-color: var(--ooui-normal-border);
color: var(--link-color);
}
.smw-ui-pagination .page-link.link-active {
color: #fff;
background-color: var(--ooui-progressive);
border-color: var(--ooui-progressive);
}
.smw-tabs input.nav-tab:checked + label.nav-label {
border-color: var(--ooui-normal-border);
}
.smw-tabs section,
.smw-tabs .subtab-content {
border-top-color: var(--ooui-normal-border);
}
.smw-column-header {
color: var(--text-color);
}
.smw-factbox {
background: var(--body-main);
border-color: transparent;
}
.mw-body .mw-indicators #mw-indicator-smw-entity-examiner.mw-indicator .smw-indicator-vertical-bar-loader {
display: none;
}
.smwb-theme-light .smwb-title,
.smwb-theme-light .smwb-center,
.smwb-theme-light .smwb-actions,
.smwb-theme-light .smwb-prophead {
background-color: var(--body-mid);
}
.smwb-theme-light .smwb-factbox {
border-left-color: var(--body-mid);
}
.smwb-theme-light .smwb-ifactbox {
border-right-color: var(--body-mid);
}
.smwb-theme-light .smwb-propval {
background-color: var(--body-light);
}
.smwb-action-separator {
border-color: var(--wikitable-border);
}
.smwb-bottom {
border-bottom: 1px solid var(--wikitable-border);
}
.smwb-ifactbox .smwb-cell,
.smwb-factbox .smwb-cell {
border-top: 1px solid var(--wikitable-border);
}
.smwb-propvalue .smwb-prophead,
.smwb-ipropvalue .smwb-prophead,
.smwb-propvalue .smwb-propval,
.smwb-ipropvalue .smwb-propval {
font-size: 0.9em;
}
:root {
--filter-black-to-link: invert(36%) sepia(58%) saturate(433%) hue-rotate(344deg) brightness(100%) contrast(91%);
}
#bodyContent span.smwbrowse a {
color: black;
background-image: url('filepath://Smwbrowse.svg');
filter: var(--filter-black-to-link);
}
#bodyContent span.smwbrowse a:hover {
color: black;
background-image: url('filepath://Smwbrowse-hover.svg');
text-decoration: underline;
}
#bodyContent span.smwsearch a {
color: black;
filter: var(--filter-black-to-link);
background-image: url('filepath://Smwsearch.svg');
}
#bodyContent span.smwsearch a:hover {
color: black;
background-image: url('filepath://Smwsearch-hover.svg');
text-decoration: underline;
}
:root {
--tabber-tab-bg: var(--body-light);
--tabber-tab-border-color: var(--body-border);
--tabber-active-tab-bg: var(--body-light);
--tabber-active-tab-color: var(--text-color);
--tabber-active-tab-hover-bg: var(--body-light);
--tabber-active-tab-hover-border-color: var(--body-border);
--tabber-active-tab-hover-color: var(--text-color);
--tabber-active-tab-border-hider-color: var(--body-light);
--tabber-inactive-tab-bg: var(--body-background-color);
--tabber-inactive-tab-border-color: var(--body-border);
--tabber-inactive-tab-color: var(--text-color);
--tabber-inactive-tab-hover-bg: var(--body-light);
--tabber-inactive-tab-hover-border-color: var(--body-border);
}
.tabber {
margin: 1em 0;
}
.tabber .tabbertab {
background-color: var(--tabber-tab-bg);
border: 1px solid var(--tabber-tab-border-color);
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
padding: 1em 1.5em;
}
ul.tabbernav {
border: none;
margin-left: 2em;
margin-bottom: 0;
margin-right: 2em;
padding: 0;
font-family: inherit;
}
ul.tabbernav li.tabberactive > a {
background-color: var(--tabber-active-tab-bg);
color: var(--tabber-active-tab-color);
border-bottom: none;
position: relative;
}
ul.tabbernav li.tabberactive > a:hover {
color: var(--tabber-active-tab-hover-color);
background-color: var(--tabber-active-tab-hover-bg);
border-color: var(--tabber-active-tab-hover-border-color);
border-bottom: none;
}
ul.tabbernav li.tabberactive > a::after {
content: '';
position: absolute;
left: 0;
right: 0;
bottom: -1px;
border-bottom: 2px solid var(--tabber-active-tab-border-hider-color);
}
ul.tabbernav li a {
background-color: var(--tabber-inactive-tab-bg);
border-bottom: transparent;
border-color: var(--tabber-inactive-tab-border-color);
color: var(--tabber-inactive-tab-color);
display: inline-block;
font-size: 110%;
padding: 0.5em 1em;
}
ul.tabbernav li a:hover {
background-color: var(--tabber-inactive-tab-hover-bg);
border-color: var(--tabber-inactive-tab-hover-border-color);
}
ul.tabbernav li a:link,
ul.tabbernav li a:visited {
color: var(--tabber-inactive-tab-color);
}
:root {
--ooui-text: var(--text-color);
--ooui-interface: var(--body-light);
--ooui-interface-border: var(--body-border);
--ooui-window-background: rgba(255, 255, 255, 0.5);
--ooui-normal: #cdb3a6;
--ooui-normal--hover: #d8c4ba;
--ooui-normal-border: #d1b9ad;
--ooui-progressive: #936243;
--ooui-progressive--hover: #b27a57;
--ooui-accent: var(--link-color);
--ooui-input: #fff;
--ooui-input-border: #d1b9ad;
--ooui-input-border--hover: #ae846f;
--ooui-disabled: #ece3de;
--ooui-disabled-border: #e3d5ce;
--ooui-disabled-text: var(--subtle-color);
--ooui-pending-background-image: repeating-linear-gradient(-45deg, var(--search-box), var(--search-box) 20px, var(--body-main) 20px, var(--body-main) 30px);
}
.oo-ui-widget {
color: var(--ooui-text);
}
.oo-ui-checkboxInputWidget [type='checkbox'] + span,
.oo-ui-radioInputWidget [type='radio'] + span {
background-color: var(--ooui-input);
border-color: var(--ooui-input-border);
}
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:checked + span,
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:indeterminate + span {
background-color: var(--ooui-progressive);
border-color: var(--ooui-progressive);
}
.oo-ui-radioInputWidget.oo-ui-widget-enabled [type='radio']:checked + span {
border-color: var(--ooui-progressive);
}
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:checked:hover + span,
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:indeterminate:hover + span {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
}
.oo-ui-radioInputWidget.oo-ui-widget-enabled [type='radio']:checked:hover + span {
border-color: var(--ooui-progressive--hover);
}
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:hover + span,
.oo-ui-radioInputWidget.oo-ui-widget-enabled [type='radio']:hover + span {
border-color: var(--ooui-accent);
}
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:focus + span {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:active + span,
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:checked:active + span,
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:indeterminate:active + span {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
box-shadow: inset 0 0 0 1px var(--ooui-progressive--hover);
}
.oo-ui-radioInputWidget.oo-ui-widget-enabled [type='radio']:active + span {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
}
.oo-ui-radioInputWidget.oo-ui-widget-enabled [type='radio']:checked:active + span {
border-color: var(--ooui-progressive--hover);
box-shadow: inset 0 0 0 1px var(--ooui-progressive--hover);
}
.oo-ui-radioInputWidget.oo-ui-widget-enabled [type='radio']:checked:active + span:before {
border-color: var(--ooui-progressive--hover);
}
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:checked:focus + span,
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:indeterminate:focus + span {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent), inset 0 0 0 2px #fff;
}
.oo-ui-checkboxInputWidget [type='checkbox']:disabled + span,
.oo-ui-radioInputWidget [type='radio']:disabled + span {
background-color: var(--ooui-disabled);
border-color: var(--ooui-disabled);
}
.oo-ui-dropdownWidget-handle {
border-color: var(--ooui-normal-border);
}
.oo-ui-dropdownWidget.oo-ui-widget-enabled .oo-ui-dropdownWidget-handle {
background-color: var(--ooui-normal);
color: var(--ooui-text);
}
.oo-ui-dropdownWidget.oo-ui-widget-enabled .oo-ui-dropdownWidget-handle:hover {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
}
.oo-ui-dropdownWidget.oo-ui-widget-enabled .oo-ui-dropdownWidget-handle:active {
color: var(--ooui-text);
}
.oo-ui-dropdownWidget.oo-ui-widget-enabled .oo-ui-dropdownWidget-handle:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-dropdownWidget.oo-ui-widget-enabled.oo-ui-dropdownWidget-open .oo-ui-dropdownWidget-handle {
background-color: var(--ooui-normal--hover);
}
.oo-ui-dropdownWidget.oo-ui-widget-disabled .oo-ui-dropdownWidget-handle {
color: var(--ooui-disabled-text);
text-shadow: none;
border-color: var(--ooui-disabled-border);
background-color: var(--ooui-disabled);
}
.oo-ui-dropdownInputWidget select {
border-color: var(--ooui-normal-border);
}
.oo-ui-dropdownInputWidget option {
background-color: var(--ooui-interface);
}
.oo-ui-dropdownInputWidget.oo-ui-widget-enabled {
background-color: var(--ooui-normal);
}
.oo-ui-dropdownInputWidget.oo-ui-widget-enabled:hover {
background-color: var(--ooui-normal--hover);
}
.oo-ui-dropdownInputWidget.oo-ui-widget-enabled select {
color: var(--ooui-text);
}
.oo-ui-dropdownInputWidget.oo-ui-widget-enabled select:hover,
.oo-ui-dropdownInputWidget.oo-ui-widget-enabled select:active {
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
}
.oo-ui-dropdownInputWidget.oo-ui-widget-enabled select:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-labelWidget.oo-ui-inline-help {
color: var(--byline-color);
}
.oo-ui-menuSelectWidget {
background-color: var(--ooui-interface);
border-color: var(--ooui-interface-border);
}
.oo-ui-menuSelectWidget-frameless {
box-shadow: inset 0 -1px 0 0 var(--ooui-normal-border);
}
.oo-ui-menuSectionOptionWidget {
color: var(--byline-color);
}
.oo-ui-menuOptionWidget.oo-ui-optionWidget-highlighted,
.oo-ui-menuOptionWidget.oo-ui-optionWidget-selected {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
}
.oo-ui-menuOptionWidget.oo-ui-optionWidget-selected.oo-ui-menuOptionWidget.oo-ui-optionWidget-highlighted,
.oo-ui-menuOptionWidget.oo-ui-optionWidget-pressed.oo-ui-menuOptionWidget.oo-ui-optionWidget-highlighted {
color: var(--ooui-accent);
}
.oo-ui-menuOptionWidget.oo-ui-widget-enabled.oo-ui-optionWidget {
color: var(--ooui-text);
}
.oo-ui-messageDialog-title {
color: inherit;
}
.oo-ui-messageWidget.oo-ui-messageWidget-block.oo-ui-flaggedElement-error {
background-color: var(--errorbox-bg);
border-color: var(--errorbox-border);
}
.oo-ui-messageWidget.oo-ui-messageWidget-block.oo-ui-flaggedElement-warning {
background-color: var(--warningbox-bg);
border-color: var(--warningbox-border);
}
.oo-ui-messageWidget.oo-ui-messageWidget-block.oo-ui-flaggedElement-success {
background-color: var(--successbox-bg);
border-color: var(--successbox-border);
}
.oo-ui-messageWidget.oo-ui-messageWidget-block.oo-ui-flaggedElement-notice {
background-color: var(--messagebox-info-background);
border-color: var(--messagebox-info-border);
}
.oo-ui-messageWidget.oo-ui-flaggedElement-error:not(.oo-ui-messageWidget-block),
.oo-ui-messageWidget.oo-ui-flaggedElement-success:not(.oo-ui-messageWidget-block) {
color: var(--ooui-text);
}
.oo-ui-optionWidget.oo-ui-widget-disabled {
color: var(--ooui-disabled-text);
}
.oo-ui-outlineControlsWidget {
background-color: var(--ooui-normal);
}
.oo-ui-outlineOptionWidget.oo-ui-optionWidget-highlighted {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
}
.oo-ui-popupWidget-popup {
background-color: var(--ooui-interface);
border-color: var(--ooui-interface-border);
}
.oo-ui-popupWidget-anchored-top .oo-ui-popupWidget-anchor:after {
border-bottom-color: var(--ooui-interface);
}
.oo-ui-popupWidget-anchored-top .oo-ui-popupWidget-anchor:before {
border-bottom-color: var(--ooui-interface-border);
}
.oo-ui-popupWidget-anchored-bottom .oo-ui-popupWidget-anchor:after {
border-top-color: var(--ooui-interface);
}
.oo-ui-popupWidget-anchored-bottom .oo-ui-popupWidget-anchor:before {
border-top-color: var(--ooui-interface-border);
}
.oo-ui-popupWidget-anchored-start .oo-ui-popupWidget-anchor:after {
border-right-color: var(--ooui-interface);
}
.oo-ui-popupWidget-anchored-start .oo-ui-popupWidget-anchor:before {
border-right-color: var(--ooui-interface-border);
}
.oo-ui-popupWidget-anchored-end .oo-ui-popupWidget-anchor:after {
border-left-color: var(--ooui-interface);
}
.oo-ui-popupWidget-anchored-end .oo-ui-popupWidget-anchor:before {
border-left-color: var(--ooui-interface-border);
}
.oo-ui-searchWidget-query {
border-bottom-color: var(--ooui-interface-border);
}
.oo-ui-selectFileWidget-dropTarget {
background-color: var(--ooui-interface);
border-color: var(--ooui-interface-border);
}
.oo-ui-selectFileWidget.oo-ui-widget-enabled.oo-ui-selectFileWidget-dropTarget {
background-color: var(--ooui-interface);
}
.oo-ui-selectFileWidget.oo-ui-widget-enabled.oo-ui-selectFileWidget-dropTarget:hover {
border-color: var(--ooui-input-border--hover);
}
.oo-ui-tabOptionWidget {
color: var(--ooui-text);
}
.oo-ui-tabSelectWidget-framed .oo-ui-tabOptionWidget.oo-ui-optionWidget-selected {
background-color: var(--body-dark);
color: var(--ooui-text);
}
.oo-ui-tabSelectWidget-framed .oo-ui-tabOptionWidget.oo-ui-optionWidget-selected .oo-ui-labelElement-label {
border-bottom-color: var(--body-border);
}
.oo-ui-tabSelectWidget-framed .oo-ui-tabOptionWidget.oo-ui-widget-enabled:hover,
.oo-ui-tabSelectWidget-framed .oo-ui-tabOptionWidget.oo-ui-widget-enabled:active {
background-color: var(--body-light);
color: var(--ooui-text);
}
.oo-ui-tabSelectWidget-framed .oo-ui-tabOptionWidget.oo-ui-widget-enabled.oo-ui-optionWidget-selected:hover {
background-color: var(--body-dark);
}
.oo-ui-tabSelectWidget-frameless .oo-ui-tabOptionWidget.oo-ui-optionWidget-selected {
color: var(--ooui-progressive);
box-shadow: inset 0 -2px 0 0 var(--ooui-progressive);
}
.oo-ui-tabSelectWidget-frameless .oo-ui-tabOptionWidget.oo-ui-optionWidget-selected:hover,
.oo-ui-tabSelectWidget-frameless .oo-ui-tabOptionWidget.oo-ui-optionWidget-selected:focus {
color: var(--ooui-progressive--hover);
box-shadow: inset 0 -2px 0 0 var(--ooui-progressive--hover);
}
.oo-ui-tabSelectWidget-framed {
background: none;
border-bottom: 1px solid var(--ooui-interface-border);
}
.oo-ui-tabSelectWidget-frameless {
box-shadow: inset 0 -1px 0 0 var(--ooui-interface-border);
}
.oo-ui-tabSelectWidget-mobile {
}
.oo-ui-tabSelectWidget-mobile.oo-ui-tabSelectWidget-framed:after {
background: var(--mobile-navbox-linear-gradient);
}
.oo-ui-tabSelectWidget-mobile.oo-ui-tabSelectWidget-frameless:after {
background: var(--mobile-navbox-linear-gradient);
}
.oo-ui-tagItemWidget {
border-color: var(--ooui-normal-border);
}
.oo-ui-tagItemWidget.oo-ui-widget-enabled {
color: var(--ooui-text);
}
.oo-ui-tagItemWidget.oo-ui-widget-enabled:hover {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
}
.oo-ui-tagItemWidget.oo-ui-widget-enabled:not( .oo-ui-tagItemWidget-fixed ) {
background-color: var(--ooui-normal);
}
.oo-ui-tagItemWidget.oo-ui-widget-enabled .oo-ui-buttonElement-button:hover {
background-color: var(--ooui-normal--hover);
}
.oo-ui-tagMultiselectWidget.oo-ui-widget-enabled {
background-color: var(--ooui-interface);
}
.oo-ui-tagMultiselectWidget.oo-ui-widget-enabled.oo-ui-tagMultiselectWidget-outlined {
background-color: var(--ooui-normal);
}
.oo-ui-tagMultiselectWidget.oo-ui-widget-enabled.oo-ui-tagMultiselectWidget-outlined .oo-ui-tagItemWidget.oo-ui-widget-enabled {
background-color: var(--ooui-interface);
}
.oo-ui-textInputWidget .oo-ui-inputWidget-input {
background-color: var(--ooui-input);
color: var(--ooui-text);
border-color: var(--ooui-input-border);
}
.oo-ui-textInputWidget.oo-ui-widget-enabled .oo-ui-inputWidget-input::placeholder {
color: var(--subtle-color);
}
.oo-ui-textInputWidget.oo-ui-widget-enabled .oo-ui-inputWidget-input:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-textInputWidget.oo-ui-widget-enabled .oo-ui-inputWidget-input[readonly]:not(.oo-ui-pendingElement-pending) {
background-color: var(--ooui-disabled);
color: var(--ooui-disabled-text);
}
.oo-ui-textInputWidget.oo-ui-widget-enabled:hover .oo-ui-inputWidget-input {
border-color: var(--ooui-input-border--hover);
}
.oo-ui-textInputWidget.oo-ui-widget-enabled:hover .oo-ui-inputWidget-input:focus {
border-color: var(--ooui-accent);
}
@media screen and (min-width: 0) {
.oo-ui-textInputWidget.oo-ui-widget-enabled textarea.oo-ui-inputWidget-input:focus {
outline: 1px solid var(--ooui-accent);
}
}
.oo-ui-textInputWidget.oo-ui-widget-disabled .oo-ui-inputWidget-input {
background-color: var(--ooui-disabled);
color: var(--ooui-disabled-text);
text-shadow: none;
border-color: var(--ooui-disabled-border);
}
.oo-ui-toggleSwitchWidget {
background-color: var(--ooui-input);
border-color: var(--ooui-input-border);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled .oo-ui-toggleSwitchWidget-grip {
background-color: var(--ooui-input);
border-color: var(--ooui-input-border);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:hover {
background-color: var(--ooui-input);
border-color: var(--ooui-accent);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:hover .oo-ui-toggleSwitchWidget-grip {
background-color: var(--ooui-input);
border-color: var(--ooui-accent);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:active,
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:active:hover,
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:active:focus {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
box-shadow: inset 0 0 0 1px var(--ooui-progressive--hover);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:active .oo-ui-toggleSwitchWidget-grip,
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:active:hover .oo-ui-toggleSwitchWidget-grip,
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:active:focus .oo-ui-toggleSwitchWidget-grip {
background-color: var(--ooui-input);
border-color: var(--ooui-input);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:focus .oo-ui-toggleSwitchWidget-grip {
border-color: var(--ooui-accent);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled.oo-ui-toggleWidget-on {
background-color: var(--ooui-progressive);
border-color: var(--ooui-progressive);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled.oo-ui-toggleWidget-on .oo-ui-toggleSwitchWidget-grip {
background-color: var(--ooui-input);
border-color: var(--ooui-input);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled.oo-ui-toggleWidget-on:hover {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled.oo-ui-toggleWidget-on:active,
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled.oo-ui-toggleWidget-on:active:hover {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled.oo-ui-toggleWidget-on:focus {
border-color: var(--ooui-progressive);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled.oo-ui-toggleWidget-on:focus::before {
border-color: #fff;
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-disabled {
background-color: var(--ooui-disabled);
border-color: var(--ooui-disabled);
}
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled > .oo-ui-buttonElement-button {
color: var(--ooui-text);
}
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled > .oo-ui-buttonElement-button:hover {
color: var(--ooui-text);
}
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled > .oo-ui-buttonElement-button:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled.oo-ui-buttonElement-pressed > input.oo-ui-buttonElement-button,
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled > .oo-ui-buttonElement-button:active {
color: var(--ooui-text);
}
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button,
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button:hover {
color: var(--ooui-text);
}
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button:active,
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive.oo-ui-buttonElement-pressed > .oo-ui-buttonElement-button {
color: var(--ooui-text);
border-color: var(--ooui-text);
}
.oo-ui-buttonElement-frameless.oo-ui-widget-disabled > .oo-ui-buttonElement-button {
color: var(--ooui-disabled-text);
}
.oo-ui-buttonElement-framed.oo-ui-widget-disabled > .oo-ui-buttonElement-button {
background-color: var(--ooui-disabled);
border-color: var(--ooui-disabled-border);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled > .oo-ui-buttonElement-button {
background-color: var(--ooui-normal);
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled > .oo-ui-buttonElement-button:hover {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled > .oo-ui-buttonElement-button:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-buttonElement-active > .oo-ui-buttonElement-button {
background-color: var(--ooui-progressive--hover);
color: #fff;
border-color: var(--ooui-progressive--hover);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-buttonElement-active > .oo-ui-buttonElement-button:focus {
border-color: var(--ooui-progressive--hover);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled > .oo-ui-buttonElement-button:active,
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-buttonElement-pressed > .oo-ui-buttonElement-button {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive {
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button {
color: var(--ooui-text);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button:hover {
background-color: var(--ooui-normal--hover);
border-color: var(--ooui-progressive--hover);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-destructive > .oo-ui-buttonElement-button {
color: var(--ooui-text);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-destructive > .oo-ui-buttonElement-button:hover {
background-color: var(--ooui-normal--hover);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button {
background-color: var(--ooui-progressive);
border-color: var(--ooui-progressive);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button:hover {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent), inset 0 0 0 2px #fff;
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button:active,
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive.oo-ui-buttonElement-pressed > .oo-ui-buttonElement-button,
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive.oo-ui-buttonElement-active > .oo-ui-buttonElement-button,
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive.oo-ui-popupToolGroup-active > .oo-ui-buttonElement-button {
color: #fff;
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
}
.oo-ui-pendingElement-pending {
background-image: var(--ooui-pending-background-image);
background-size: 200%;
animation: oo-ui-pendingElement-stripes 6s linear infinite;
}
@keyframes oo-ui-pendingElement-stripes {
100% {
background-position: 100%;
}
}
.oo-ui-messageDialog-content > .oo-ui-window-foot {
outline-color: var(--ooui-interface-border);
}
.oo-ui-messageDialog-message {
color: var(--ooui-text);
}
.oo-ui-messageDialog-actions-horizontal .oo-ui-actionWidget {
border-right-color: var(--ooui-interface-border);
}
.oo-ui-messageDialog-actions-vertical .oo-ui-actionWidget {
border-bottom-color: var(--ooui-interface-border);
}
.oo-ui-processDialog-content .oo-ui-window-head,
.oo-ui-processDialog-content .oo-ui-window-foot {
outline-color: var(--ooui-interface-border);
}
.oo-ui-processDialog .oo-ui-actionWidget > .oo-ui-buttonElement-button {
border-top-color: transparent;
border-bottom-color: transparent;
}
.oo-ui-processDialog .oo-ui-actionWidget > .oo-ui-buttonElement-button:hover,
.oo-ui-processDialog .oo-ui-actionWidget > .oo-ui-buttonElement-button:active {
border-top-color: transparent;
border-bottom-color: transparent;
}
.oo-ui-processDialog .oo-ui-actionWidget:not( .oo-ui-flaggedElement-progressive ):not( .oo-ui-flaggedElement-destructive ) > .oo-ui-buttonElement-button:hover,
.oo-ui-processDialog .oo-ui-actionWidget:not( .oo-ui-flaggedElement-progressive ):not( .oo-ui-flaggedElement-destructive ) > .oo-ui-buttonElement-button:active {
border-right-color: var(--ooui-interface-border);
border-left-color: transparent;
}
.oo-ui-processDialog .oo-ui-actionWidget:not( .oo-ui-flaggedElement-progressive ):not( .oo-ui-flaggedElement-destructive ) > .oo-ui-buttonElement-button:focus {
border-color: var(--ooui-accent);
}
.oo-ui-processDialog-actions-safe .oo-ui-actionWidget > .oo-ui-buttonElement-button,
.oo-ui-processDialog-actions-other .oo-ui-actionWidget > .oo-ui-buttonElement-button {
border-right-color: var(--ooui-normal-border);
border-left-color: transparent;
}
.oo-ui-processDialog-actions-safe .oo-ui-widget-enabled.oo-ui-iconElement:not( .oo-ui-labelElement ) > .oo-ui-buttonElement-button:hover {
background-color: var(--ooui-normal--hover);
border-right-color: var(--ooui-interface-border);
}
.oo-ui-windowManager-modal > .oo-ui-dialog {
background-color: var(--ooui-window-background);
}
.oo-ui-windowManager-modal > .oo-ui-dialog > .oo-ui-window-frame {
background-color: var(--ooui-interface);
}
.oo-ui-windowManager-modal.oo-ui-windowManager-floating > .oo-ui-dialog > .oo-ui-window-frame {
border-color: var(--ooui-interface-border);
}
.oo-ui-window {
color: var(--ooui-text);
}
.oo-ui-toolbar-bar {
background-color: var(--ooui-interface);
color: var(--ooui-text);
}
.oo-ui-toolbar-position-top > .oo-ui-toolbar-bar {
border-bottom-color: var(--body-mid);
}
.oo-ui-toolbar-bar .oo-ui-bookletLayout > .oo-ui-menuLayout-menu {
border-right-color: var(--body-mid);
}
.oo-ui-tool.oo-ui-widget-enabled > .oo-ui-tool-link:hover {
background-color: var(--ooui-normal--hover);
}
.oo-ui-tool.oo-ui-widget-enabled > .oo-ui-tool-link:focus {
outline: 1px solid var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-tool.oo-ui-widget-enabled > .oo-ui-tool-link:active,
.oo-ui-tool.oo-ui-widget-enabled.oo-ui-tool-active > .oo-ui-tool-link,
.oo-ui-tool.oo-ui-widget-enabled.oo-ui-popupToolGroup-active > .oo-ui-tool-link {
background-color: var(--ooui-normal--hover);
color: var(--ooui-accent);
box-shadow: none;
}
.oo-ui-tool.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive > .oo-ui-tool-link {
background-color: var(--ooui-progressive);
}
.oo-ui-tool.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive > .oo-ui-tool-link:hover {
background-color: var(--ooui-progressive--hover);
}
.oo-ui-tool.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive > .oo-ui-tool-link:focus {
box-shadow: inset 0 0 0 1px var(--ooui-accent), inset 0 0 0 2px #fff;
}
.oo-ui-tool.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive > .oo-ui-tool-link:active,
.oo-ui-tool.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive.oo-ui-tool-active > .oo-ui-tool-link {
background-color: var(--ooui-progressive--hover);
}
.oo-ui-listToolGroup-tools .oo-ui-tool.oo-ui-widget-enabled {
background-color: var(--ooui-normal);
}
.oo-ui-listToolGroup-tools .oo-ui-tool.oo-ui-widget-enabled:hover {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
}
.oo-ui-listToolGroup-tools .oo-ui-tool-active.oo-ui-widget-enabled .oo-ui-tool-link .oo-ui-tool-title {
color: var(--ooui-progressive);
}
.oo-ui-menuToolGroup {
border-left-color: var(--body-mid);
border-right-color: var(--body-mid);
}
.oo-ui-popupToolGroup-tools {
background-color: var(--ooui-interface);
border-color: var(--body-mid);
}
.oo-ui-popupToolGroup.oo-ui-widget-enabled > .oo-ui-popupToolGroup-handle:hover {
background-color: var(--ooui-normal--hover);
}
.oo-ui-popupToolGroup.oo-ui-widget-enabled > .oo-ui-popupToolGroup-handle:focus {
outline: 1px solid var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-toolbar-actions .oo-ui-popupToolGroup.oo-ui-widget-enabled > .oo-ui-popupToolGroup-handle:hover {
border-right-color: var(--ooui-normal--hover);
}
.oo-ui-popupToolGroup-tools .oo-ui-tool.oo-ui-widget-enabled .oo-ui-tool-link:focus {
box-shadow: inset 0 0 0 2px var(--ooui-accent);
}
.oo-ui-popupToolGroup-tools .oo-ui-tool-active.oo-ui-widget-enabled .oo-ui-tool-link .oo-ui-tool-title {
color: var(--ooui-progressive);
}
.oo-ui-popupToolGroup.oo-ui-popupToolGroup-active > .oo-ui-popupToolGroup-handle {
background-color: var(--ooui-normal);
color: var(--ooui-accent);
}
.oo-ui-popupToolGroup.oo-ui-popupToolGroup-active > .oo-ui-popupToolGroup-handle:hover {
background-color: var(--ooui-normal--hover);
color: var(--ooui-accent);
}
.oo-ui-bookletLayout-outlinePanel > .oo-ui-outlineControlsWidget {
border-top-color: var(--ooui-interface-border);
}
.oo-ui-bookletLayout > .oo-ui-menuLayout-menu {
border-right-color: var(--ooui-interface-border);
}
.oo-ui-fieldLayout-disabled > .oo-ui-fieldLayout-body > .oo-ui-fieldLayout-header > .oo-ui-labelElement-label {
color: var(--ooui-disabled-text);
}
.oo-ui-panelLayout-framed {
border-color: var(--sidebar);
}
.oo-ui-icon-settings {
background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' width='20' height='20' viewBox='0 0 20 20'%3E%3Ctitle%3Esettings%3C/title%3E%3Cg transform='translate(10 10)'%3E%3Cpath id='a' d='M1.5-10h-3l-1 6.5h5m0 7h-5l1 6.5h3'/%3E%3Cuse xlink:href='%23a' transform='rotate(45)'/%3E%3Cuse xlink:href='%23a' transform='rotate(90)'/%3E%3Cuse xlink:href='%23a' transform='rotate(135)'/%3E%3C/g%3E%3Cpath d='M10 2.5a7.5 7.5 0 0 0 0 15 7.5 7.5 0 0 0 0-15v4a3.5 3.5 0 0 1 0 7 3.5 3.5 0 0 1 0-7'/%3E%3C/svg%3E");
}
.oo-ui-icon-clear {
background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 20 20'%3E%3Ctitle%3Eclear%3C/title%3E%3Cpath d='M10 0a10 10 0 1 0 10 10A10 10 0 0 0 10 0zm5.66 14.24-1.41 1.41L10 11.41l-4.24 4.25-1.42-1.42L8.59 10 4.34 5.76l1.42-1.42L10 8.59l4.24-4.24 1.41 1.41L11.41 10z'/%3E%3C/svg%3E");
}
.mw-widget-dateInputWidget-handle {
background-color: var(--ooui-input);
color: var(--ooui-text);
border-color: var(--ooui-input-border);
}
.mw-widget-dateInputWidget-calendar {
background-color: var(--ooui-interface);
}
.mw-widget-dateInputWidget.oo-ui-widget-enabled .mw-widget-dateInputWidget-handle:hover {
border-color: var(--ooui-input-border--hover);
}
.mw-widget-calendarWidget {
border-color: var(--ooui-interface-border);
}
.mw-widget-calendarWidget:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.mw-widget-calendarWidget-day,
.mw-widget-calendarWidget-day-heading {
color: var(--ooui-text);
}
.mw-widget-calendarWidget-day-additional {
color: var(--ooui-text);
opacity: 0.67;
}
.mw-widget-calendarWidget-day-today {
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.mw-widget-calendarWidget-item:hover {
background-color: var(--ooui-progressive);
}
.mw-widget-calendarWidget-item-selected {
background-color: var(--ooui-progressive--hover);
}
.mw-widgets-datetime-calendarWidget {
background-color: var(--ooui-interface);
border-color: var(--ooui-interface-border);
}
.mw-widgets-datetime-calendarWidget:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent), 0 2px 2px 0 rgba(0, 0, 0, 0.25);
}
.mw-widgets-datetime-calendarWidget-grid .mw-widgets-datetime-calendarWidget-cell.mw-widgets-datetime-calendarWidget-extra .oo-ui-buttonElement-button .oo-ui-labelElement-label {
color: var(--subtle-color);
}
.mw-widgets-datetime-calendarWidget-grid .mw-widgets-datetime-calendarWidget-cell.mw-widgets-datetime-calendarWidget-selected .oo-ui-buttonElement-button {
background-color: var(--ooui-progressive--hover);
}
.mw-widgets-datetime-dateTimeInputWidget-handle {
background-color: var(--ooui-input);
color: var(--ooui-text);
border-color: var(--ooui-input-border);
}
.mw-widgets-datetime-dateTimeInputWidget.oo-ui-widget-enabled.mw-widgets-datetime-dateTimeInputWidget-handle:hover {
border-color: var(--ooui-input-border--hover);
}
.mw-widgets-datetime-dateTimeInputWidget.oo-ui-widget-enabled:hover input,
.mw-widgets-datetime-dateTimeInputWidget.oo-ui-widget-enabled:hover textarea {
border-color: var(--ooui-input-border--hover);
}
.mw-widgets-datetime-dateTimeInputWidget.oo-ui-widget-enabled .mw-widgets-datetime-dateTimeInputWidget-editField:hover {
background-color: var(--ooui-normal);
}
.ve-activated .ve-init-mw-desktopArticleTarget-originalContent #catlinks:hover {
background: var(--ooui-normal--hover);
}
.ve-ui-overlay {
font-family: inherit;
}
.oo-ui-toolbar-position-top .ve-ui-toolbarDialog-position-above {
border-top-color: var(--body-mid);
}
.ve-ce-branchNode-blockSlug,
.ve-ce-branchNode-newSlug {
outline-color: var(--body-border);
background-color: var(--ooui-interface);
}
.ve-ui-specialCharacterPage h3 {
color: var(--byline-color);
}
.ve-ui-specialCharacterPage-character {
border-color: var(--body-mid);
}
.ve-ui-specialCharacterPage-character:hover {
border-color: var(--body-dark);
}
.ve-ce-linkAnnotation.ve-ce-annotation-active {
box-shadow: 0 0 0 1px var(--body-mid);
background: none;
}
.ve-ui-desktopContext .ve-ui-linkContextItem .ve-ui-linkContextItem-label {
border-color: var(--body-border);
}
.ve-ui-mwHelpPopupTool-version-label,
.ve-ui-mwHelpPopupTool-version-link,
.ve-ui-mwHelpPopupTool-version-date {
color: var(--byline-color);
}
.ve-ce-tableCellableNode {
border-color: var(--body-mid);
}
.ve-ce-mwReferencesListNode-muted {
color: var(--byline-color);
}
.ve-ui-mwTemplatePage-description,
.ve-ui-mwParameterPage-label,
.ve-ui-mwParameterPage-description-required,
.ve-ui-mwParameterPage-description-deprecated {
color: var(--byline-color);
}
.mw-widget-titleWidget-menu .mw-widget-titleOptionWidget-description {
color: var(--byline-color);
}
.ve-ui-mwGalleryDialog-menuLayout > .oo-ui-menuLayout-menu,
.ve-ui-mwGalleryDialog-innerMenuLayout > .oo-ui-menuLayout-menu,
.ve-ui-mwGalleryDialog .ve-ui-mwGalleryDialog-image-container,
.ve-ui-targetWidget {
border-color: var(--body-border);
}
.ve-ui-targetWidget:not(.oo-ui-pendingElement-pending) {
background-color: var(--body-main);
}
.ve-ui-mwSaveDialog {
color: var(--ooui-text);
}
.ve-ui-mwSaveDialog-options {
background-color: var(--ooui-interface);
border-color: var(--body-border);
}
.ve-ui-mwSaveDialog-summary {
background-color: var(--ooui-input);
}
.ve-ui-mwSaveDialog-editSummary-count {
border-color: var(--body-border);
}
.ve-ui-mwSaveDialog-license {
color: var(--byline-color);
}
.ve-ui-mwReferenceContextItem-muted {
color: var(--byline-color);
}
.ve-ui-mwNoticesPopupTool-items > div:not(:first-child),
.ve-ui-mwHelpPopupTool-item:not(:first-child) {
border-color: var(--body-border);
}
.ve-ui-mwTransclusionOutlineControlsWidget {
background-color: var(--ooui-interface);
border-top-color: var(--body-border);
}
.ve-ui-mwTransclusionOutlineTemplateWidget-sticky {
background-color: var(--ooui-interface);
}
.ve-ui-mwTransclusionOutlineTemplateWidget .ve-ui-mwTransclusionOutlineParameterWidget.oo-ui-optionWidget-highlighted {
color: var(--ooui-text);
}
.ve-ui-mwTransclusionOutlineTemplateWidget-no-template-parameters {
color: var(--subtle-color);
}
.ve-ui-mwParameterPage-undocumentedLabel {
color: var(--subtle-color);
}
.ve-ui-mwTwoPaneTransclusionDialogLayout > .oo-ui-menuLayout-menu {
border-right: var(--body-border);
}
.ve-ui-mwParameterPage-doc-required,
.ve-ui-mwParameterPage-doc-deprecated,
.ve-ui-mwParameterPage-inlineDescription .ve-ui-mwParameterPage-doc-example {
color: var(--byline-color);
}
.ve-ui-expandableContent-toggle {
background-color: var(--ooui-interface);
}
.ve-ui-expandableContent-fade {
background: linear-gradient(to right, rgba(255, 255, 255, 0) 0, var(--ooui-interface) 90%);
}
.ve-ui-commandHelpDialog-shortcut > kbd,
.ve-ui-commandHelpDialog-sequence > kbd {
background-color: var(--keypress-background);
color: var(--keypress-color);
border-color: var(--keypress-border);
box-shadow: none;
text-shadow: none;
}
.ve-init-mw-desktopArticleTarget-toolbarPlaceholder-floating .ve-init-mw-desktopArticleTarget-toolbarPlaceholder-bar {
background: var(--ooui-interface);
}
.ve-init-mw-desktopArticleTarget-toolbarPlaceholder-bar {
border-bottom-color: var(--body-mid);
}
figure[typeof~='mw:File/Thumb'],
figure[typeof~='mw:File/Frame'],
figure[typeof~='mw:Image/Thumb'],
figure[typeof~='mw:Video/Thumb'],
figure[typeof~='mw:Image/Frame'],
figure[typeof~='mw:Video/Frame'] {
border: none;
background-color: var(--thumb-bg);
}
figure[typeof~='mw:File/Thumb'] > a:first-child > *:first-child:not( .mw-broken-media ),
figure[typeof~='mw:File/Frame'] > a:first-child > *:first-child:not( .mw-broken-media ),
figure[typeof~='mw:Image/Thumb'] > a:first-child > *:first-child:not( .mw-broken-media ),
figure[typeof~='mw:Video/Thumb'] > a:first-child > *:first-child:not( .mw-broken-media ),
figure[typeof~='mw:Image/Frame'] > a:first-child > *:first-child:not( .mw-broken-media ),
figure[typeof~='mw:Video/Frame'] > a:first-child > *:first-child:not( .mw-broken-media ) {
border: none;
background: var(--thumb-bg);
}
figure[typeof~='mw:File/Thumb'] > figcaption,
figure[typeof~='mw:File/Frame'] > figcaption,
figure[typeof~='mw:Image/Thumb'] > figcaption,
figure[typeof~='mw:Video/Thumb'] > figcaption,
figure[typeof~='mw:Image/Frame'] > figcaption,
figure[typeof~='mw:Video/Frame'] > figcaption {
border: none;
background-color: var(--thumb-caption-bg);
padding: 4px 6px;
}
:root {
--keypress-background: #eee;
--keypress-border: #ccc;
--keypress-color: #333;
}
.toc .toctitle > * {
color: #fff;
}
.navbox .navbox-title {
color: #fff;
}
.archivelist {
background-color: var(--body-light);
border: solid 1px var(--body-border);
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
float: right;
margin: 5px;
padding: 5px;
text-align: center;
width: 120px;
}
.shortcut {
border: 1px solid var(--body-border);
background: var(--body-light);
float: right;
font-size: 0.8em;
margin: 0.5em 0em 0.5em 1em;
padding: 0.5em;
text-align: center;
}
.hatnote,
.seealso {
font-style: italic;
}
.hatnote i,
.seealso i {
font-style: normal;
}
div.hatnote,
div.seealso {
margin: 0.5em 1.6em;
}
div.hatnote + div.hatnote,
div.hatnote + div.seealso,
div.seealso + div.hatnote,
div.seealso + div.seealso {
margin-top: -0.5em;
}
.keypress {
background: var(--keypress-background);
color: var(--keypress-color);
font-family: inherit;
border: 1px solid var(--keypress-border);
border-radius: 2px;
font-size: 0.9em;
margin: 0 0.1em;
padding: 0.1em 0.4em;
white-space: nowrap;
}
.relative-location {
background: var(--body-light);
border: 1px solid var(--body-border);
border-spacing: 0;
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
text-align: center;
}
.relative-location-header {
background: var(--body-dark);
color: #fff;
font-weight: bold;
}
:root {
--documentation-background: #f9fafa;
--documentation-link-color: #e4eaee;
--documentation-headers-color: #fff;
--documentation-header-background: #949eaa;
--documentation-subheader-background: #808c9a;
--documentation-border: #e4eaee;
}
.documentation {
background: var(--documentation-background);
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
margin: 1em 0;
}
.documentation pre,
.documentation code {
background-color: var(--documentation-background);
border-color: var(--documentation-border);
}
.documentation h2,
.documentation hr {
border-color: var(--documentation-border);
}
.documentation-header {
color: var(--documentation-headers-color);
background: var(--documentation-header-background);
font-weight: bold;
padding: 1em 1.5em;
}
.documentation-title {
font-size: 1.25em;
}
.documentation-subheader {
color: var(--documentation-headers-color);
background: var(--documentation-subheader-background);
padding: 0.5em 1.5em;
}
.documentation-subheader a,
.documentation-subheader a:visited,
.documentation-subheader a:active {
color: var(--documentation-link-color);
}
.documentation-documentation,
.documentation-links {
font-size: 0.85em;
}
.documentation-content {
padding: 1em 1.5em;
}
.mw-templatedata-doc-params dl:not(:empty) {
column-count: 3;
border-top: 1px solid var(--body-border);
margin-bottom: 0.5em;
}
.mw-templatedata-doc-params dt::after {
content: ":";
}
.mw-templatedata-doc-params dd,
.mw-templatedata-doc-params dt {
margin: 0.1em 2em;
min-width: auto;
}
.mw-templatedata-doc-muted {
color: var(--subtle-color);
font-style: italic;
}
:root {
--infobox-text-color: var(--text-color);
--table-header: var(--body-dark);
--table-subheader: var(--body-mid);
--table-body: var(--body-light);
--table-border: var(--body-border);
}
.infobox {
font-size: 0.85em;
width: 300px;
border-collapse: collapse;
float: right;
table-layout: fixed;
margin: 0.5em 0 1em 1em;
}
.infobox .infobox-buttons {
display: flex;
flex-wrap: wrap;
justify-content: center;
grid-gap: 3px;
margin-bottom: 3px;
}
.infobox .infobox-buttons .button {
background: var(--table-subheader);
padding: 0 5px;
font-weight: bold;
flex: 1 1 20%;
max-width: 20%;
color: #fff;
}
.infobox .infobox-buttons .button.button-selected {
background: var(--table-header);
}
.infobox tbody {
border: 1px solid var(--table-border);
background: var(--table-body);
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(231, 215, 199, 0.5);
}
.infobox .infobox-header {
background: var(--table-header);
padding: 0.5em 0;
text-align: center;
color: #fff;
font-size: 1.15em;
font-weight: bold;
line-height: 1.4em;
}
.infobox .infobox-image {
text-align: center;
}
.infobox .infobox-subheader {
background: var(--table-subheader);
font-weight: bold;
text-align: center;
color: #fff;
}
.infobox .infobox-subheader a {
color: var(--link-color);
}
.infobox .infobox-padding {
backgound: var(--table-body);
}
.infobox tr td:not(.infobox-padding) {
padding: 0.2em 0.5em;
}
.infobox th:not(.infobox-header):not(.infobox-subheader):not(.infobox-nested) {
border-right: 2px solid var(--table-subheader);
text-align: right;
padding: 0.2em 0.5em;
}
.infobox select {
max-width: 300px;
}
.hidden {
display: none;
}
ol.references,
.reflist {
font-size: 90%;
}
.reflist {
list-style-type: decimal;
}
.reflist .references {
font-size: 100%;
list-style-type: inherit;
}
.reflist-lower-alpha {
list-style-type: lower-alpha;
}
ol.references li:target,
sup.reference:target {
background-color: var(--body-light);
}
.hideQuotes .refhide {
display: none;
}
:root {
--messagebox-obsolete-background: #cfcfcf;
--messagebox-obsolete-border: #464646;
--messagebox-obsolete-color: var(--text-color);
--messagebox-obsolete-link-color: #6c6c6c;
--messagebox-info-background: #ebebeb;
--messagebox-info-border: #898989;
--messagebox-info-color: var(--text-color);
--messagebox-info-link-color: #6c6c6c;
--messagebox-action-background: #c7e8fa;
--messagebox-action-border: #0b5884;
--messagebox-action-color: var(--text-color);
--messagebox-action-link-color: #03436b;
--messagebox-warn-background: #dfc0ba;
--messagebox-warn-border: #861c10;
--messagebox-warn-color: var(--text-color);
--messagebox-warn-link-color: #8e221a;
--messagebox-safe-background: #d8f0d3;
--messagebox-safe-border: #1b8408;
--messagebox-safe-color: var(--text-color);
--messagebox-safe-link-color: #1b8408;
--messagebox-disambig-background: #ebebeb;
--messagebox-disambig-border: #898989;
--messagebox-disambig-color: var(--text-color);
--messagebox-disambig-link-color: #6c6c6c;
--messagebox-discord-background: #5865f2;
--messagebox-discord-border: #4c57d0;
--messagebox-discord-link-color: #d2e5fc;
}
.mw-message-box,
.mw-message-box-error,
.mw-message-box-warning,
.mw-message-box-success,
.usermessage {
color: var(--text-color);
}
.messagebox {
width: 65%;
margin: 0.5em auto;
border-left: 15px solid;
border-color: var(--body-dark);
background-color: var(--body-light);
box-sizing: border-box;
}
.messagebox.obsolete {
background-color: var(--messagebox-obsolete-background);
border-color: var(--messagebox-obsolete-border);
color: var(--messagebox-obsolete-color);
}
.messagebox.obsolete a,
.messagebox.obsolete a:visited,
.messagebox.obsolete a:active {
color: var(--messagebox-obsolete-link-color);
}
.messagebox.info {
background-color: var(--messagebox-info-background);
border-color: var(--messagebox-info-border);
color: var(--messagebox-info-color);
}
.messagebox.info a,
.messagebox.info a:visited,
.messagebox.info a:active {
color: var(--messagebox-info-link-color);
}
.messagebox.action {
background-color: var(--messagebox-action-background);
border-color: var(--messagebox-action-border);
color: var(--messagebox-action-color);
}
.messagebox.action a,
.messagebox.action a:visited,
.messagebox.action a:active {
color: var(--messagebox-action-link-color);
}
.messagebox.warn {
background-color: var(--messagebox-warn-background);
border-color: var(--messagebox-warn-border);
color: var(--messagebox-warn-color);
}
.messagebox.warn a,
.messagebox.warn a:visited,
.messagebox.warn a:active {
color: var(--messagebox-warn-link-color);
}
.messagebox.safe {
background-color: var(--messagebox-safe-background);
border-color: var(--messagebox-safe-border);
color: var(--messagebox-safe-color);
}
.messagebox.safe a,
.messagebox.safe a:visited,
.messagebox.safe a:active {
color: var(--messagebox-safe-link-color);
}
.messagebox.disambig {
background-color: var(--messagebox-disambig-background);
border-color: var(--messagebox-disambig-border);
color: var(--messagebox-disambig-color);
}
.messagebox.disambig a,
.messagebox.disambig a:visited,
.messagebox.disambig a:active {
color: var(--messagebox-disambig-link-color);
}
.messagebox.discord {
background-color: var(--messagebox-discord-background);
border-color: var(--messagebox-discord-border);
color: #fff;
}
.messagebox.discord a,
.messagebox.discord a:visited,
.messagebox.discord a:active {
color: var(--messagebox-discord-link-color);
}
.messagebox.discord a.external,
.messagebox.discord a:visited.external,
.messagebox.discord a:active.external {
font-style: italic;
}
.messagebox.stub {
width: 40%;
}
.messagebox.hasdialogue {
padding: 0 10px;
width: auto;
}
:root {
--byline-arrow-filter: invert(29%) sepia(0%) saturate(376%) hue-rotate(172deg) brightness(87%) contrast(80%);
--tile-border-color: var(--body-border);
--tile-background-color: var(--body-light);
--tile-link-button-color: #f5e9db;
--tile-link-button-highlight-color: #dfccb0;
--tile-dark-color: #fff;
--tile-dark-bg: var(--body-dark);
--tile-dark-link-color: #ccc;
--tile-dark-byline-color: rgba(255, 255, 255, 0.7);
--tile-dark-header-color: #fff;
}
.tile {
background: var(--tile-background-color);
border: 1px solid var(--tile-border-color);
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
padding: 1.5em 2em 1em;
max-width: 40em;
}
.tile h2 {
font-size: 1.4em;
font-weight: bold;
border: none;
margin: 0 0 0.4em;
}
.tile .byline + h2 {
margin-top: -0.5em;
}
.tile.dark {
color: var(--tile-dark-color);
background: var(--tile-dark-bg);
border: none;
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.3);
}
.tile.dark h2 {
color: var(--tile-dark-header-color);
}
.tile.dark a {
color: var(--tile-dark-link-color);
}
.tile.dark .byline {
color: var(--tile-dark-byline-color);
}
.byline {
font-size: 0.9em;
color: var(--byline-color);
}
.byline a {
color: var(--byline-color);
}
.tile-row {
display: flex;
flex-flow: row wrap;
margin-bottom: 1em;
}
.tile-halves {
display: flex;
flex-flow: row wrap;
background: var(--tile-background-color);
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
}
.tile-halves h2 {
font-size: 1.4em;
font-weight: bold;
border: none;
margin: 0 0 0.4em;
}
.tile-halves .byline + h2 {
margin-top: -0.5em;
}
.tile-top {
width: 100%;
padding: 1.3rem 1.5rem 0.6rem;
}
.tile-top.tile-image {
display: flex;
align-items: center;
background-color: var(--body-light);
overflow: hidden;
padding: 0;
height: 13vw;
max-height: 12em;
transition: 0.4s ease-out;
}
.tile-halves:hover .tile-top.tile-image img {
transform: scale(1.1);
transition: 0.5s ease-out;
}
.tile-top.tile-image a {
width: 100%;
}
.tile-top.tile-image img {
width: 100%;
object-fit: cover;
max-height: 200px;
transition: 0.4s ease-out;
}
.tile-bottom {
background: var(--body-dark);
width: 100%;
padding: 1rem 1.5rem 0.6rem;
}
.tile-bottom h2 a {
color: #fff !important;
}
.tile-bottom.link-button {
align-self: flex-end;
padding: 0;
}
.tile-bottom.link-button a {
display: block;
text-align: center;
padding: 0.75em 1.5em 0.8em;
text-decoration: none;
}
.tile-bottom.read-more {
background: var(--tile-link-button-color);
transition: 0.3s ease-out;
}
.tile-bottom.read-more a {
color: var(--byline-color);
font-weight: bold;
text-align: right;
}
.tile-bottom.read-more:hover {
background: var(--tile-link-button-highlight-color);
}
.tile-bottom.read-more:hover .arrow {
transform: translateX(50%);
}
.tile-bottom.read-more .arrow {
filter: var(--byline-arrow-filter);
margin-left: 0.4em;
transition: 0.3s ease-out;
}
body.page-Main_Page.action-view .catlinks,
body.page-Main_Page.action-view #contentSub,
body.page-Main_Page.action-view #firstHeading,
body.page-Main_Page.action-view #siteNotice {
display: none;
}
body.page-Main_Page .mw-parser-output {
max-width: 75em;
margin: 0 auto;
}
body.page-Main_Page.action-view .catlinks,
body.page-Main_Page.action-view #contentSub,
body.page-Main_Page.action-view #siteNotice {
display: none;
}
.mainpage-header {
display: flex;
margin: 2.6em 1.75em 1.5em;
}
.mainpage-header .header-intro {
flex: 2;
}
.mainpage-header .header-intro h1 {
font-size: 2.5em;
font-weight: bold;
border: none;
margin: 0 0 0.15em;
}
.mainpage-header .header-intro p {
font-size: 1.1em;
line-height: 1.7em;
}
.mainpage-header .header-stats {
flex: 1;
display: flex;
justify-content: center;
align-items: center;
margin-top: -1em;
}
.mainpage-body {
display: grid;
grid-template-areas: "event event event" "update update update" "content content content" "left left right";
gap: 0.9rem;
grid-template-columns: repeat(3, 1fr);
}
.mainpage-body h2 a {
color: var(--text-color);
}
.mainpage-body .tile {
padding-left: 1.75em;
padding-right: 1.75em;
max-width: 100%;
}
.mainpage-body .tile-row {
width: 100%;
margin-bottom: 0;
}
.mainpage-body .tile-row {
display: grid;
gap: 0.9rem;
}
.mainpage-contents.tile-row {
display: flex;
}
.mainpage-contents.tile-row .tile-top {
height: 5.5rem;
}
.mainpage-left {
grid-area: left;
flex: 2;
display: flex;
flex-flow: column wrap;
}
.mainpage-left > * {
margin: 0 0 0.9rem;
}
.mainpage-right {
grid-area: right;
flex: 1;
display: flex;
flex-flow: column wrap;
}
.mainpage-right > * {
margin: 0 0 0.9rem;
}
.arrow {
background: url('filepath://White-chevron.svg') no-repeat;
display: inline-block;
height: 0.7rem;
width: 0.45rem;
vertical-align: middle;
}
.arrow.dark {
filter: invert(80%);
}
.mainpage-contents {
grid-area: content;
grid-template-columns: repeat(6, 1fr);
}
.mainpage-contents .tile-halves {
flex: 1;
}
.mainpage-contents .tile-top {
height: 4.5rem;
position: relative;
}
.mainpage-contents .tile-top.tile-image img {
height: auto;
}
.mainpage-contents h2 {
margin: 0;
padding: 0;
}
.mainpage-contents .tile-bottom.link-button a {
padding: 0.75em 0.2em;
}
.popular-pages ul {
display: grid;
grid-template-columns: repeat(3, 1fr);
grid-gap: 0.6em;
margin: 1em 0 0.7em 0;
}
.mp-popular-page-light {
display: flex;
align-items: center;
background-color: var(--button-background);
transition: 100ms;
}
.mp-popular-page-light a {
flex: 1;
display: block;
color: #fff;
font-weight: bold;
text-align: center;
text-decoration: none;
padding: 0.7em 1em;
}
.mp-popular-page-light:hover {
filter: brightness(115%);
transition: 100ms;
}
.mainpage-social {
border: none;
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.3);
}
.mainpage-social .tile-top {
display: flex;
align-items: center;
padding: 1em 1.5em;
}
.mainpage-social .tile-top a {
flex: 1;
position: relative;
text-decoration: none;
}
.mainpage-social .tile-top a:hover .arrow {
transform: translateX(50%);
}
.mainpage-social .tile-bottom {
border: none;
padding: 1em 1.75em;
}
.mainpage-social .tile-bottom p {
color: #fff;
font-weight: bold;
font-size: 0.9em;
text-align: center;
text-transform: uppercase;
letter-spacing: 0.03em;
margin: 0;
}
.mainpage-social .social-icon {
margin-right: 0.75em;
text-align: center;
width: 60px;
}
.mainpage-social .social-header {
color: #fff;
font-weight: bold;
font-size: 1.15em;
margin: 0.5em 0 -0.15em;
}
.mainpage-social .server-tagline {
color: rgba(255, 255, 255, 0.9);
margin-bottom: 0.5em;
}
.mainpage-social .arrow {
position: absolute;
top: calc(50% - .5em);
right: 0;
height: 1em;
width: 0.7em;
background-size: 0.7em 1em;
transition: 0.3s ease-out;
}
.mainpage-social.mainpage-discord .tile-top {
background: #5865f2;
}
.mainpage-social.mainpage-discord .tile-bottom {
background: #525ee0;
}
.mainpage-social.mainpage-twitter .tile-top {
background: #15202b;
}
.mainpage-social.mainpage-twitter .tile-bottom {
background: #121c26;
}
.mainpage-editing {
border: none;
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.3);
}
.mainpage-editing .tile-top {
background: #438ab5;
}
.mainpage-editing .tile-bottom {
background: #3980ab;
border: none;
padding: 0.8rem 1.5rem 0.4rem;
}
.mainpage-editing h2,
.mainpage-editing a {
color: #fff;
}
.mainpage-editing p {
color: rgba(255, 255, 255, 0.9);
}
.mainpage-editing ul {
list-style-image: url('filepath://Transparent-chevron.svg');
}
@media only screen and (max-width: 1200px) {
.mainpage-contents {
grid-template-columns: repeat(3, 1fr);
}
}
@media only screen and (max-width: 1000px) {
.mainpage-body {
grid-template-areas: "event event event" "update update update" "content content content" "left left left" "right right right";
}
.mainpage-recent-updates {
grid-template-columns: repeat(2, 1fr);
}
.mainpage-recent-updates .tile-halves:last-child {
display: none;
}
.mainpage-recent-updates .tile-halves:hover .tile-top img {
transform: scale(1.04);
}
.mainpage-recent-updates .tile-top {
height: 18vw;
min-height: 9em;
}
.mainpage-header .header-stats {
display: none;
}
.mainpage-left > *:last-child,
.mainpage-right > *:last-child {
margin-bottom: 0;
}
.popular-pages ul {
grid-template-columns: repeat(2, 1fr);
}
}
@media only screen and (max-width: 720px) {
.mainpage-recent-updates {
grid-template-columns: none;
}
.mainpage-recent-updates .tile-halves:last-child {
display: flex;
}
.mainpage-contents {
grid-template-columns: repeat(2, 1fr);
}
}
.mw-prefs-buttons {
background-color: var(--body-main);
border-top-color: var(--body-border);
box-shadow: none;
}
.mw-prefs-tabs-wrapper.oo-ui-panelLayout-framed,
.mw-prefs-tabs > .oo-ui-menuLayout-content > .oo-ui-indexLayout-stackLayout > .oo-ui-tabPanelLayout {
border-color: var(--body-border);
}
.mw-htmlform-ooui .mw-htmlform-matrix tbody tr:nth-child(even) td {
background-color: var(--body-light);
}
.mw-htmlform-ooui .mw-htmlform-matrix tbody tr:hover td {
background-color: var(--body-mid);
}
:root {
--rc-positive-color: #407813;
--rc-negative-color: #b41e0f;
}
.mw-plusminus-pos {
color: var(--rc-positive-color);
}
.mw-plusminus-neg {
color: var(--rc-negative-color);
}
.client-js .mw-recentchanges-toplinks:not(.mw-recentchanges-toplinks-collapsed) {
border-color: var(--body-border);
background-color: var(--body-light);
border-radius: 2px;
}
.mw-rcfilters-ui-filterTagMultiselectWidget-wrapper-content-title {
color: var(--text-color);
}
.mw-rcfilters-ui-filterTagMultiselectWidget-emptyFilters {
color: var(--byline-color);
}
.mw-rcfilters-ui-filterTagMultiselectWidget.oo-ui-widget-enabled .oo-ui-tagMultiselectWidget-handle {
background-color: var(--ooui-interface);
border-color: var(--ooui-interface-border);
}
.mw-rcfilters-ui-filterTagMultiselectWidget-views-select-widget.oo-ui-widget {
border-color: var(--ooui-interface-border);
}
.mw-rcfilters-collapsed .mw-rcfilters-ui-filterTagMultiselectWidget {
border-bottom-color: var(--ooui-interface-border);
}
.mw-rcfilters-ui-menuSelectWidget-footer {
background-color: var(--ooui-interface);
border-color: var(--ooui-interface-border);
}
.mw-rcfilters-ui-viewSwitchWidget label.oo-ui-labelWidget {
color: var(--byline-color);
}
.mw-rcfilters-ui-tagItemWidget-popup-content {
color: var(--ooui-text);
}
.mw-changeslist-legend,
.mw-rcfilters-ui-changesListWrapperWidget .mw-changeslist-legend {
background-color: var(--body-light);
border-color: var(--body-dark);
}
.mw-rcfilters-ui-changesListWrapperWidget-previousChangesIndicator {
border-color: var(--sidebar);
}
.client-js .mw-changeslist ul,
.client-js .mw-changeslist table.mw-enhanced-rc {
margin-left: 0;
}
.mw-rcfilters-ui-watchlistTopSectionWidget-separator {
border-color: var(--sidebar);
}
.mw-rcfilters-ui-itemMenuOptionWidget-header {
border-bottom-color: var(--ooui-interface);
background-color: var(--ooui-interface-border);
}
.mw-rcfilters-ui-itemMenuOptionWidget:not(:last-child):not(.mw-rcfilters-ui-itemMenuOptionWidget-identifier-talk) {
border-bottom-color: var(--ooui-normal-border);
}
.mw-rcfilters-ui-itemMenuOptionWidget-label-title,
.mw-rcfilters-ui-itemMenuOptionWidget-label-desc {
color: var(--text-color);
}
.mw-rcfilters-ui-filterMenuOptionWidget.oo-ui-flaggedElement-muted:not(.oo-ui-optionWidget-selected) {
background-color: var(--body-main);
}
.mw-rcfilters-ui-filterMenuOptionWidget.oo-ui-flaggedElement-muted .mw-rcfilters-ui-itemMenuOptionWidget-label-title,
.mw-rcfilters-ui-filterMenuOptionWidget.oo-ui-flaggedElement-muted .mw-rcfilters-ui-itemMenuOptionWidget-label-desc {
color: var(--subtle-color);
}
.mw-rcfilters-ui-filterMenuSectionOptionWidget {
background-color: var(--body-mid);
}
.mw-rcfilters-ui-filterMenuSectionOptionWidget-header-title.oo-ui-labelElement-label {
color: var(--ooui-text);
}
.mw-rcfilters-ui-filterMenuHeaderWidget-title {
color: var(--ooui-text);
}
.mw-rcfilters-ui-filterMenuHeaderWidget-header {
border-bottom-color: var(--ooui-interface-border);
background-color: var(--ooui-interface);
}
.mw-rcfilters-ui-itemMenuOptionWidget-view-namespaces {
border-top-color: var(--ooui-interface-border);
}
.mw-rcfilters-ui-datePopupWidget {
border-color: var(--ooui-interface-border);
}
.mw-rcfilters-ui-datePopupWidget .mw-rcfilters-ui-valuePickerWidget-title {
color: var(--byline-color);
}
.mw-rcfilters-ui-savedLinksListItemWidget-label {
color: var(--ooui-accent);
}
.client-js .mw-changeslist.mw-rcfilters-ui-changesListWrapperWidget-highlighted ul,
.client-js .mw-changeslist.mw-rcfilters-ui-changesListWrapperWidget-highlighted table.mw-enhanced-rc {
margin-left: 1.5em;
}
.page-Special_CreateAccount .mw-ui-container,
.page-Special_UserLogin .mw-ui-container {
max-width: 64rem;
margin: 0 auto;
}
.mw-number-text {
color: var(--byline-color);
}
.mw-body-content .mw-number-text h3 {
color: var(--text-color);
}
#mw-indicator-mw-helplink a {
background: none;
padding: 0;
display: flex;
align-items: center;
}
#mw-indicator-mw-helplink a::before {
content: '';
margin-right: 5px;
-webkit-mask: url("/resources/src/mediawiki.helplink/images/helpNotice.svg?46d34") no-repeat 50% 50% / contain;
mask: url("/resources/src/mediawiki.helplink/images/helpNotice.svg?46d34") no-repeat 50% 50% / contain;
background: var(--text-color);
height: 20px;
width: 20px;
}
.results-info {
color: inherit;
}
.mw-search-profile-tabs {
background-color: var(--body-mid);
border-color: transparent;
}
.search-types .current a {
color: inherit;
}
#mw-searchoptions {
background-color: var(--body-mid);
border-color: transparent;
}
#mw-searchoptions .divider {
border-color: var(--body-border);
}
#mw-searchoptions h4 {
font-family: inherit;
}
#mw-searchoptions .oo-ui-labelElement:nth-of-type(odd) {
font-weight: bold;
}
.searchresult {
line-height: 1.5;
}
.searchalttitle,
#mw-search-interwiki li {
font-size: 90%;
}
.mw-search-result-data {
color: var(--byline-color);
}
.page-Special_ListFiles a.image img {
width: inherit;
height: inherit;
}
.page-Special_ListFiles .TablePager_col_thumb {
text-align: center;
}
#editcount table[border="1"] {
background-color: var(--body-main) !important;
border-color: var(--wikitable-border) !important;
margin-top: 0.5em;
}
#editcount table[border="1"] th,
#editcount table[border="1"] td {
padding: 0.2em 0.4em;
}
#editcount table[border="1"] th {
background-color: var(--wikitable-header-bg);
border: 1px solid var(--wikitable-border);
}
#editcount table[border="1"] td {
border: 1px solid var(--wikitable-border);
}
#editcount table[border="1"] tr:nth-child(odd) {
background-color: var(--body-light);
}
.mw-echo-ui-notificationBadgeButtonPopupWidget-popup > .oo-ui-popupWidget-popup .mw-echo-ui-placeholderItemWidget {
background-color: inherit;
}
table.mw-interwikitable.body td.mw-interwikitable-local-yes {
background-color: var(--table-yes-background);
color: var(--table-yes-color);
}
.mw-protectedpages-unknown {
color: var(--byline-color);
}
.watchlistredir,
.allpagesredirect {
font-style: italic;
}
.allpagesredirect:after {
color: var(--byline-color);
content: " (redirect)";
}
.mw-apisandbox-toolbar {
background: var(--body-main);
}
.oo-ui-menuOptionWidget .mw-apisandbox-flag {
color: var(--byline-color);
}
tr.mw-abusefilter-list-disabled,
tr.mw-abusefilter-list-disabled td {
color: var(--byline-color);
}
table.mw-abuselog-details {
background: var(--wikitable-bg);
border-color: var(--wikitable-border);
}
table.mw-abuselog-details th {
background: var(--wikitable-header-bg);
}
table.mw-abuselog-details th,
table.mw-abuselog-details td {
border-color: var(--wikitable-border);
}
.mw-abusefilter-log-hidden-entry {
color: var(--subtle-color);
}
body td.mw-abusefilter-history-changed {
background: var(--table-no-background);
}
div.mw-abusefilter-editor,
#mw-abusefilter-warn-preview,
#mw-abusefilter-disallow-preview {
border-color: var(--ooui-input-border);
}
.mw-destfile-warning {
border-color: var(--warningbox-border);
color: var(--text-color);
background-color: var(--warningbox-bg);
}
span.fileinput-button {
background-color: var(--ooui-normal);
border-color: var(--ooui-normal-border);
color: var(--ooui-text);
}
ul.fileupload-results li.ful-success {
background-color: var(--successbox-bg);
}
ul.fileupload-results li.ful-success a {
color: var(--link-color);
}
ul.fileupload-results li.ful-error {
background-color: var(--errorbox-bg);
}
.color-container {
display: flex;
margin: 2em auto;
width: 80%;
max-width: 60em;
}
.color-column {
flex: 1;
margin-right: 1em;
}
.color-column:last-child {
margin-right: 0;
}
.color-column h3 {
padding: 0;
}
.color-group {
color: #333;
padding: 1em 1.5em;
transition: 0.2s ease-out;
}
.color-group:hover {
transform: scale(1.03);
}
.color-group.dark {
color: #fff;
}
.color-group .variable,
.color-group .hexcode {
font-family: monospace;
font-size: 1.1em;
-webkit-user-select: all;
-moz-user-select: all;
-ms-user-select: all;
user-select: all;
margin: 0;
}
body.wgl-readermode .color-group .variable,
body.wgl-readermode .color-group .hexcode {
font-size: inherit;
}
.color-group .variable {
font-weight: bold;
}
#t-print,
#t-permalink {
display: none;
}
#filetoc {
border-radius: 2px;
background: var(--body-mid);
border-color: transparent;
margin: 0.5em auto;
text-align: center;
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
}
li.gallerybox div.thumb {
border: none;
background-color: var(--thumb-bg);
}
.smwfact {
display: none;
}
.list-header {
background-color: var(--body-mid);
color: inherit;
}
.editOptions {
color: var(--text-color);
background-color: var(--sourceeditor-background-secondary);
border-color: var(--sourceeditor-border);
}
.mw-json th,
.mw-json td {
border-color: var(--wikitable-border);
}
.mw-json td {
background: var(--wikitable-bg);
}
.mw-json th {
background: var(--wikitable-header-bg);
}
44f1a995d8e5150bca040ac5cc75ac177be14985
Template:Help
10
963
2272
2024-04-11T18:22:57Z
BlackHawk
10
Created page with "{{Navbox |name = Help |title = [[Help:Contents|Help]] |style1 = text-align:center |group1 = * [[Help:Editing/Your first edit|Your first edit]] * [[Help:Editing|Editing guides]] * [[Brighter Shores:Policies|Policies]] |gtitle2 = General |group2 = * [[Help:Toolbar|Toolbar]] * [[Help:APIs|APIs]] * [[Help:Audio|Audio files]] * [[Help:Archive|Archiving]] * [[Help:Creating a page|Creating pages]] * [[Help:Editing|Editing]] * [[Help:Namespace|Namespaces]] * Help:Pr..."
wikitext
text/x-wiki
{{Navbox
|name = Help
|title = [[Help:Contents|Help]]
|style1 = text-align:center
|group1 =
* [[Help:Editing/Your first edit|Your first edit]]
* [[Help:Editing|Editing guides]]
* [[Brighter Shores:Policies|Policies]]
|gtitle2 = General
|group2 =
* [[Help:Toolbar|Toolbar]]
* [[Help:APIs|APIs]]
* [[Help:Audio|Audio files]]
* [[Help:Archive|Archiving]]
* [[Help:Creating a page|Creating pages]]
* [[Help:Editing|Editing]]
* [[Help:Namespace|Namespaces]]
* [[Help:Preferences|Preferences]]
* [[Help:Revert|Revert]]
* [[Help:Searching|Searching]]
* [[Help:Special page|Special pages]]
* [[Brighter Shores:Access levels|User access levels]]
* [[Help:Automatic edit summaries|Automatic edit summaries]]
* [[Help:Bots|Bots]]
* [[Help:Cache|Cache]]
* [[Help:Bypass your cache|Bypass your cache]]
* [[Help:Changing your username|Changing your username]]
* [[Help:Colour codes|Colour codes]]
* [[Help:Customising skins|Customising skins]]
* [[Help:Customising your signature|Customising your signature]]
* [[Help:Email notification|Email notification]]
* [[Help:Gallery|Gallery]]
* [[Help:Image copyright tags|Image copyright tags]]
* [[Help:Images|Images]]
* [[Help:Interlanguage links|Interlanguage links]]
* [[Help:Job queue|Job queue]]
* [[Help:Links|Links]]
* [[Help:List|List]]
* [[Help:Magic words|Magic words]]
* [[Help:Moving pages|Moving pages]]
* [[Help:Notifications|Notifications]]
* [[Help:Redirects|Redirects]]
|gtitle3 = [[Help:Gadgets|Gadgets]]
|group3 =
*
|gtitle4 = [[Help:Extensions|Extensions]]
|group4 =
* [[Help:Magic words|Magic words]]
* [[Help:Parser functions|Parser functions]]
* [[Help:Editing/DPL guide|DPL 3]]
|gtitle5 = [[Brighter Shores:Administrators|Administrator]]
|group5 =
* [[Help:Administrators' how-to guide|Administrators' how-to guide]]
* [[Help:MediaWiki namespace|MediaWiki namespace]]
* [[Help:Blocking users|Blocking users]]
* [[Help:Deletion|Deletion]]
* [[Help:Bureaucrats' how-to guide|Bureaucrats' how-to guide]]
}}<includeonly>[[Category:Help]]</includeonly>
ca4de246306fbeaf6c7e8eb1f58c3476e860e519
Brighter Shores:Policies
4
470
2273
1087
2024-04-11T18:23:46Z
BlackHawk
10
wikitext
text/x-wiki
To ensure that people can contribute in good faith to the wiki, the Brighter Shores Wiki has several easy-to-follow policies. These are generally modelled on similar wikis of this nature, including Wikipedia. The key to maintaining a successful wiki is by making decisions through [[wikipedia:Wikipedia:Consensus|consensus]], which is what we aim to do at all times.
==Community policies==
* '''Ownership''' – Users do not own the pages and files they edit or create. They exist to better the wiki in some shape or form.
* '''Protection''' – Unless there are reasonable grounds for protecting one, pages should remain fully editable by users to ensure wide collaboration is possible.
* '''Status and opinion-weight''' – An editor should not be treated differently or have any extra weight on their opinions based on their experience or status.
* '''Three-revert rule''' – Explain the changes you make in the edit summary. Rather than engaging in a revert war with another user, discuss it in the talk page.
* '''Use common sense''' – Common sense takes precedence over any policy. Be reasonable.
==Content policies==
* '''Granularity''' – Anything notable, excluding players, may have its own article.
* '''Neutral point of view''' – Pages on the wiki should always be written from a neutral point of view.
* '''Spoilers''' – Articles may contain content that spoils some of the game. There are no warnings on the wiki, so viewers should read at their own risk.
* '''Assume good faith''' – Always assume that an editor's actions were an attempt to improve the wiki.
* '''Don't delete discussions''' – Don't delete previous discussions. These include user talk pages.
* '''Don't edit userpages''' – There's no reason to edit another user's pages under most circumstances.
* '''Blocking users''' – Disruptive users can be blocked from editing by administrators. Blocked users can still read all pages, but can't edit any page except their user talk page.
* '''Treating other users with respect''' – Be nice and don't try to cause unnecessary strife.
{{Help}}
d288918dcdf00ec28ca3ba9dea4c1f92a6146a72
Category:Help
14
964
2274
2024-04-11T18:25:15Z
BlackHawk
10
Created page with "{{Categoryheader|pages|[[Help:Contents]]||}} [[Category:Brighter Shores Wiki community|Help]]"
wikitext
text/x-wiki
{{Categoryheader|pages|[[Help:Contents]]||}}
[[Category:Brighter Shores Wiki community|Help]]
f08a440bba422afca2636a7a8ba90df5a00a083f
Brighter Shores:Discord
4
965
2275
2024-04-11T18:38:32Z
BlackHawk
10
Redirected page to [[Meta:Discord]]
wikitext
text/x-wiki
#REDIRECT [[Meta:Discord]]
84d3e749ca7554eacbeace6521aae4e5f1fb1946
Brighter Shores:Check user
4
966
2276
2024-04-11T18:39:49Z
BlackHawk
10
Created page with "{{shortcut|BS:CHECK|BS:CHECKUSER}} '''CheckUser''' is a tool which is used by users in the checkuser group to effectively fight vandalism. ==Applications== Checkuser has three major applications: * Finding the range of IPs which are vandalising, so the said range can be blocked. * Finding what IP a vandalising account uses, for the purpose of effectively blocking it. * Finding which users use a common IP, for looking into abuse of multiple accounts. Under no circumst..."
wikitext
text/x-wiki
{{shortcut|BS:CHECK|BS:CHECKUSER}}
'''CheckUser''' is a tool which is used by users in the checkuser group to effectively fight vandalism.
==Applications==
Checkuser has three major applications:
* Finding the range of IPs which are vandalising, so the said range can be blocked.
* Finding what IP a vandalising account uses, for the purpose of effectively blocking it.
* Finding which users use a common IP, for looking into abuse of multiple accounts.
Under no circumstances is the CheckUser tool to be used in any other fashion, and especially not by a curious checkuser who wants to know a user's IP.
==CheckUser log==
The CheckUser Log is available to other CheckUsers [[Special:CheckUserLog|here]]. However, as only CheckUsers can see the log, CheckUsers are encouraged to log their actions [[/Log|here]] for all users to see, but removing the data that can be used to link users and their IPs (as a CheckUser use typically involves getting an account's IP(s), then checking the accounts associated with the IP(s), thus a raw log is easy to deduce what IP corresponds to what user). An example log entry is below:
{{Checkuser log|type=ip|date=22:53, 11 April 2024|checker=Example|user=Insert vandal|reason=reason|follow=y}}
Which uses the code:
<pre>{{Checkuser log|type=ip|date=22:53, 11 April 2024|checker=Example|user=Insert vandal|reason=reason|follow=y}}</pre>
==Requesting a CheckUser==
If you need a checkuser and the situation conforms to the above rules, you can either contact [[Special:ListUsers/checkuser|one of the checkusers]] directly (via their talk page, [[Brighter Shores:Discord|Discord]], or any other method), or post a request on [[Brighter Shores:Administrator requests|Administrator requests]].
[[Category:Brighter Shores Wiki community|CheckUser]]
bff48144f8e7d5b1917d4b7010a417d258606ce8
Brighter Shores:Check user/Log
4
967
2277
2024-04-11T18:41:03Z
BlackHawk
10
Created page with "This is a log of checkuser actions performed. Please only log actions performed on accounts. Do not list actions performed on IP addresses. {{Checkuser log|type=ip|date=22:53, 11 April 2024|checker=Example|user=Insert vandal|reason=reason|follow=y}}"
wikitext
text/x-wiki
This is a log of checkuser actions performed. Please only log actions performed on accounts. Do not list actions performed on IP addresses.
{{Checkuser log|type=ip|date=22:53, 11 April 2024|checker=Example|user=Insert vandal|reason=reason|follow=y}}
f0cdf9130072e5e3407be46ba58d8a64903a1213
2278
2277
2024-04-11T18:42:05Z
BlackHawk
10
wikitext
text/x-wiki
{{Shortcut|BS:CHECK/L}}
__NOINDEX__
This is a log of checkuser actions performed. Please only log actions performed on accounts. Do not list actions performed on IP addresses.
{{Checkuser log|type=ip|date=22:53, 11 April 2024|checker=Example|user=Insert vandal|reason=reason|follow=y}}
175957d146b36704aee14aa1fc968c210ee49235
Category:Noindexed pages
14
968
2279
2024-04-11T18:42:26Z
BlackHawk
10
Created page with "{{Categoryheader|pages|those with <code><nowiki>__NOINDEX__</nowiki></code> to prevent search engines from caching data|||static=no}} __NOINDEX__ {{Hidden category}} [[Category:Tracking categories]]"
wikitext
text/x-wiki
{{Categoryheader|pages|those with <code><nowiki>__NOINDEX__</nowiki></code> to prevent search engines from caching data|||static=no}}
__NOINDEX__
{{Hidden category}}
[[Category:Tracking categories]]
344aacea79bc2b9b5b4d30f2213835d76a21ffc2
Brighter Shores:CHECK
4
969
2280
2024-04-11T18:42:53Z
BlackHawk
10
Redirected page to [[Brighter Shores:Check user]]
wikitext
text/x-wiki
#REDIRECT [[Brighter Shores:Check user]]
3716919ff80354b86c8c93e067f541295b267a07
Brighter Shores:CHECKUSER
4
970
2281
2024-04-11T18:42:57Z
BlackHawk
10
Redirected page to [[Brighter Shores:Check user]]
wikitext
text/x-wiki
#REDIRECT [[Brighter Shores:Check user]]
3716919ff80354b86c8c93e067f541295b267a07
Template:Checkuser log
10
971
2282
2024-04-11T18:43:54Z
BlackHawk
10
Created page with "<includeonly>*{{#ifexpr:{{#if:{{{date|}}}|0|1}}=1 or {{#if:{{{checker|}}}|0|1}}=1 or {{#if:{{{user|}}}|0|1}}=1|<span class="error">'''Error: Missing parameters (date, checker, or user)'''</span>|{{#switch:{{lc:{{{type|ips}}}}} |ips |ip={{#vardefine:type|IP addresses}} |users |user={{#vardefine:type|users}} |edits |edit={{#vardefine:type|edits}} }}}}{{{date}}}, [[User:{{{checker}}}|{{{checker}}}]] got {{#var:type}} for [[User:{{{user}}}|{{{user}}}]] (User talk:{{{user}}..."
wikitext
text/x-wiki
<includeonly>*{{#ifexpr:{{#if:{{{date|}}}|0|1}}=1 or {{#if:{{{checker|}}}|0|1}}=1 or {{#if:{{{user|}}}|0|1}}=1|<span class="error">'''Error: Missing parameters (date, checker, or user)'''</span>|{{#switch:{{lc:{{{type|ips}}}}}
|ips
|ip={{#vardefine:type|IP addresses}}
|users
|user={{#vardefine:type|users}}
|edits
|edit={{#vardefine:type|edits}}
}}}}{{{date}}}, [[User:{{{checker}}}|{{{checker}}}]] got {{#var:type}} for [[User:{{{user}}}|{{{user}}}]] ([[User talk:{{{user}}}|Talk]] {{!}} [[Special:Contributions/{{{user}}}|contribs]]){{#if:{{{follow|}}}|, and followed up by getting user(s) for the IP(s) returned}} {{#if:{{{reason|}}}|(''{{{reason}}}'')}}</includeonly><noinclude>{{/doc}}</noinclude>
3b357e9f1f6fa933e042e1a0bf44b29ce31ac899
Template:Checkuser log/doc
10
972
2283
2024-04-11T18:44:19Z
BlackHawk
10
Created page with "{{Documentation}} The '''checkuser log''' template is used on [[Brighter Shores:Check user/Log]] to format the entries. ==Parameters== <pre>{{Checkuser log |type= |date= |checker= |user= |reason= |follow= }}</pre> * <code>type</code> - the type of checkuser carried out, either: '''ip''' (for getting IPs from a username) or '''edit''' (for getting edits from a username) * <code>date</code> - the date and time that the checkuser was carried out. This will be converted to..."
wikitext
text/x-wiki
{{Documentation}}
The '''checkuser log''' template is used on [[Brighter Shores:Check user/Log]] to format the entries.
==Parameters==
<pre>{{Checkuser log
|type=
|date=
|checker=
|user=
|reason=
|follow=
}}</pre>
* <code>type</code> - the type of checkuser carried out, either: '''ip''' (for getting IPs from a username) or '''edit''' (for getting edits from a username)
* <code>date</code> - the date and time that the checkuser was carried out. This will be converted to a consistent format in UTC.
* <code>checker</code> - the user carrying out the check. Do not include the User: prefix.
* <code>user</code> - the user being checked. Do not list checks performed on IP addresses.
* <code>reason</code> - the reason given for the check, preferably the same reason as given on the checkuser form.
* <code>follow</code> - if you followed up getting IPs from a username with a check for users from those IPs, then define this variable. This allows actions performed on IPs to be recorded without listing the IPs in question for privacy.
<includeonly>[[Category:Formatting templates|{{PAGENAME}}]]</includeonly>
004191d600b21e08590a4372355e9b727b40a8b5
Brighter Shores:CHECK/L
4
973
2284
2024-04-11T18:44:39Z
BlackHawk
10
Redirected page to [[Brighter Shores:Check user/Log]]
wikitext
text/x-wiki
#REDIRECT [[Brighter Shores:Check user/Log]]
30834cb97ee8e468b92decd23fc0c7521f2fe9b1
Template:Soft redirect
10
974
2285
2024-04-11T18:46:07Z
BlackHawk
10
Created page with "<div class="soft-redirect" style="display: flex; margin-top: 2em; margin-bottom: 1.5em"> <div style="margin-top: 0.15em">[[File:Redirect-arrow.svg|64px|Soft redirect to:|link=]]</div> <div><span style="font-size: 140%">[[{{{1}}}|{{{2|{{{1}}}}}}]]</span><br /><span style="font-size: 90%">This page is a {{Wp|Wikipedia:Soft redirect|soft redirect|class=}}.</span></div> </div><includeonly>[[Category:Soft redirects]]</includeonly><noinclude>{{/doc}}</noinclude>"
wikitext
text/x-wiki
<div class="soft-redirect" style="display: flex; margin-top: 2em; margin-bottom: 1.5em">
<div style="margin-top: 0.15em">[[File:Redirect-arrow.svg|64px|Soft redirect to:|link=]]</div>
<div><span style="font-size: 140%">[[{{{1}}}|{{{2|{{{1}}}}}}]]</span><br /><span style="font-size: 90%">This page is a {{Wp|Wikipedia:Soft redirect|soft redirect|class=}}.</span></div>
</div><includeonly>[[Category:Soft redirects]]</includeonly><noinclude>{{/doc}}</noinclude>
79670194c54ff03a985bb25ca77af50b79f5a5f7
Template:Soft redirect/doc
10
975
2286
2024-04-11T18:46:47Z
BlackHawk
10
Created page with "{{Documentation}} This template creates a notice for '''soft redirects''', a replacement of usual or "hard" redirects used when the destination is a sister wiki (such as the Meta Wiki) or a Wikimedia site (such as Wikipedia). ==Usage== {{T|Soft redirect|''destination''|''alternate title''}} <includeonly>[[Category:Transclusion templates|{{PAGENAME}}]]</includeonly>"
wikitext
text/x-wiki
{{Documentation}}
This template creates a notice for '''soft redirects''', a replacement of usual or "hard" redirects used when the destination is a sister wiki (such as the Meta Wiki) or a Wikimedia site (such as Wikipedia).
==Usage==
{{T|Soft redirect|''destination''|''alternate title''}}
<includeonly>[[Category:Transclusion templates|{{PAGENAME}}]]</includeonly>
5d00650b1741f30db458f8aa582a2d7e91d2108a
Help:Changing your username
12
976
2287
2024-04-11T18:47:09Z
BlackHawk
10
Created page with "{{Soft redirect|meta:User renames}}"
wikitext
text/x-wiki
{{Soft redirect|meta:User renames}}
d7b1f59f42c392b993ed7f74ab00951a57065e3e
Category:Soft redirects
14
977
2288
2024-04-11T18:47:52Z
BlackHawk
10
Created page with "{{Categoryheader|pages|soft redirects|yes|{{T|Soft redirect}}}} [[Category:Maintenance categories]]"
wikitext
text/x-wiki
{{Categoryheader|pages|soft redirects|yes|{{T|Soft redirect}}}}
[[Category:Maintenance categories]]
94733310502a43c82d68ac560d8ee92c5b512d0f
Help:Automatic edit summaries
12
978
2289
2024-04-11T18:48:42Z
BlackHawk
10
Created page with "'''Automatic edit summaries''' are created when certain actions are performed and an alternate summary is not provided. These summaries will be saved in the page histories indefinitely and may not be altered. Automatic edit summaries appear when: * Blanking a page * Replacing most of a page * Creating a new page * Redirecting a page * Undoing or reverting an edit Furthermore, when editing a specific section of a page or creating a new section, the section title will ap..."
wikitext
text/x-wiki
'''Automatic edit summaries''' are created when certain actions are performed and an alternate summary is not provided. These summaries will be saved in the page histories indefinitely and may not be altered.
Automatic edit summaries appear when:
* Blanking a page
* Replacing most of a page
* Creating a new page
* Redirecting a page
* Undoing or reverting an edit
Furthermore, when editing a specific section of a page or creating a new section, the section title will appear in the edit summary unless you choose to remove it.
{{Help}}
9468ecfb0fc30585afffb095b1708e8eb9fee98d
Help:Gallery
12
979
2290
2024-04-11T18:53:38Z
BlackHawk
10
Created page with "Galleries are an image syntax that creates a gallery of thumbnails (or similar image series). The syntax is: <pre> <gallery> File:file_name.ext|caption|alt=alt language File:file_name.ext|caption|alt=alt language {...} </gallery> </pre> Note that the image code is not enclosed in brackets when enclosed in gallery tags. Images can be preceded by '''Image:''', '''File:''' or nothing, however using '''Image:''' is preferred. Captions are optional, and may contain wiki li..."
wikitext
text/x-wiki
Galleries are an image syntax that creates a gallery of thumbnails (or similar image series). The syntax is:
<pre>
<gallery>
File:file_name.ext|caption|alt=alt language
File:file_name.ext|caption|alt=alt language
{...}
</gallery>
</pre>
Note that the image code is not enclosed in brackets when enclosed in gallery tags. Images can be preceded by '''Image:''', '''File:''' or nothing, however using '''Image:''' is preferred.
Captions are optional, and may contain wiki links or other formatting. Some of the parameters controlling thumb output can also be used here, specifically the ones that modify the file (as opposed to ones that control where in the page the image falls). For example, with multi-paged media like pdfs, you can use code like <code>page=4</code>.
The File: prefix can be omitted. However, it is helpful to include it as an aid for quickly locating image specifiers in the wikitext (for example, when cleaning up page layout).
'''Note that currently we do not support pdfs!'''
For example:
<pre>
<gallery>
File:Wiki.png|Item 1
File:Wiki.png|a link to [[Help:Contents]]
File:Wiki.png
File:Wiki.png|alt=An example image. It has flowers
File:Wiki.png|''italic caption''
Wiki.png|on page "{{PAGENAME}}"
</gallery>
</pre>
is formatted as:
<gallery>
File:Wiki.png|Item 1
File:Wiki.png|a link to [[Help:Contents]]
File:Wiki.png
File:Wiki.png|alt=An example image. It has flowers
File:Wiki.png|''italic caption''
Wiki.png|on page "{{PAGENAME}}"
</gallery>
==Mode parameter==
A mode parameter is available, taking options as follows:
* <code>traditional</code> is the original gallery type used by MediaWiki.
* <code>nolines</code> is similar to <code>traditional</code>, but with no border lines.
* <code>packed</code> causes images to have the same height but different widths, with little space between the images. The rows in this {{wp|Responsive web design|responsive}} mode organize themselves according to the width of the screen.
* <code>packed-overlay</code> shows the caption overlaid on the image, in a semi-transparent white box.
* <code>packed-hover</code> is similar to <code>packed-overlay</code>, but with the caption and box only showing up on hover.
* <code>slideshow</code> creates a slideshow of the images.
==Optional gallery attributes==
The gallery tag itself takes several additional parameters, specified as attribute name-value pairs:
<pre>
<gallery {parameters}>
{images}
</gallery>
</pre>
* <code>caption="{caption}"</code>: (caption text between double quotes for more than a word) sets a caption centered atop the gallery. Only plain text may be used in the caption; formatting, templates and the like will not work.
* <code>widths={width}px</code>: sets the (max) widths of the images; the default value is 120px. ''Note the plural: width'''s'''''.
* <code>heights={heights}px</code>: sets the (max) heights of the images; the default value is 120px.
* <code>perrow={integer}</code>: sets the number of images per row. 0 means automatically adjust based on width of screen.
* <code>showfilename={anything}</code>: Show the filenames of the images in the individual captions for each image (1.17+).
* <code>mode={traditional|nolines|packed|packed-hover|packed-overlay|slideshow}</code>: See section above (1.22+; 1.28+ for "slideshow").
* <code>showthumbnails</code>: For "slideshow" mode only, display the strip with image thumbnails below the slideshow by default (1.29+).
==See also==
* [[mw:Help:Images#Rendering_a_gallery_of_images|Help:Images]] The MediaWiki help page on images
{{Help}}
f855a0b141795a88f83fe99befb021cb74209498
Help:Creating a page
12
980
2291
2024-04-11T19:01:04Z
BlackHawk
10
Created page with "There are five easy ways to '''create a new page''': # You can click a red link to the title of the new page from an existing one. You can also create the link yourself in an existing page related page. # You can also start a new page by typing the URL directly. An easy way to produce the URL is editing the last part of the URL of another page in the same project. To prevent your new page being an "orphan", you should link to it from other pages. # If you search for a p..."
wikitext
text/x-wiki
There are five easy ways to '''create a new page''':
# You can click a red link to the title of the new page from an existing one. You can also create the link yourself in an existing page related page.
# You can also start a new page by typing the URL directly. An easy way to produce the URL is editing the last part of the URL of another page in the same project. To prevent your new page being an "orphan", you should link to it from other pages.
# If you search for a page that is not yet on this wiki, you will see a red link at the top of the search list. Clicking this is another way to get to the edit page for the new article.
# Use the ''Make new page'' link at the bottom of the left sidebar, which opens a popup dialogue to create a new page.
# The easiest way to create an article is with an ''inputbox''. Typing the new title in the box and pressing "create article" will take you to the edit page for that article. To see how to add an inputbox, look at the code for the edit box of this page. However, before doing this, you should search to see if there is already a page name with one similar to yours. Below is an inputbox ready for your article!
<table width="100%"><tr>
<inputbox>
break=no
buttonlabel=Create article
type=create
</inputbox>
</tr></table>
Once you've started the new page, you'll see some grey boxes above the edit window (the window where you type). These help you select what kind of page you're making. If you're making a page that's not one of those buttons, then just ignore them and make it the way you want.
{{Help}}
a4e28e6ed5195f7e3a57db3ba37a5f90448005ef
Talk:Brighter Shores Wiki/notice
1
981
2292
2024-04-11T19:09:41Z
BlackHawk
10
Created page with "{{Archive list |pagename=Talk:Brighter Shores Wiki |alink=yes }} {| class="messagebox info" |<div style="font-size:140%; text-align:center">[[File:Information icon-grey.svg|40px]]</div> || '''This page is only for discussion of the Main Page.'''<br><div style="font-size:0.85em; line-height:1.4em;">If you wish to discuss large changes to the Brighter Shores Wiki, please go to the [[Forum:Forum Grove|Forum Grove]]. If you need help, please use Brighter Shores:User help|U..."
wikitext
text/x-wiki
{{Archive list
|pagename=Talk:Brighter Shores Wiki
|alink=yes
}}
{| class="messagebox info"
|<div style="font-size:140%; text-align:center">[[File:Information icon-grey.svg|40px]]</div> || '''This page is only for discussion of the Main Page.'''<br><div style="font-size:0.85em; line-height:1.4em;">If you wish to discuss large changes to the Brighter Shores Wiki, please go to the [[Forum:Forum Grove|Forum Grove]]. If you need help, please use [[Brighter Shores:User help|User help]] or [[Brighter Shores:Administrator requests|Administrator requests]].</div>
|}
a530340536baba9f710b4069fe418f4e992d32e4
Talk:Brighter Shores Wiki
1
982
2293
2024-04-11T19:10:19Z
BlackHawk
10
Created page with "{{/notice}}<!-- {{Talkheader}} transcluded from /notice -->"
wikitext
text/x-wiki
{{/notice}}<!-- {{Talkheader}} transcluded from /notice -->
f49cd11e5c25dac0b61b7aca2598f5ae3a24d84f
Help:Archive
12
983
2294
2024-04-11T19:12:50Z
BlackHawk
10
Created page with "{{shortcut|H:ARCHIVE}} '''Archives''' of talk pages are made when a talk page becomes too long (due to [[Wikipedia:Wikipedia:Article size|browser limits]], 32kb is generally considered the maximum length). '''Utilising the "Move this page" feature for such an operation is not at all advised.''' Please note that [[Wikipedia:Wikipedia:Refactoring talk pages|refactoring a talk page]] is an alternative to archiving it. ==Sequential archives== Cutting and pasting the text..."
wikitext
text/x-wiki
{{shortcut|H:ARCHIVE}}
'''Archives''' of talk pages are made when a talk page becomes too long (due to [[Wikipedia:Wikipedia:Article size|browser limits]], 32kb is generally considered the maximum length).
'''Utilising the "Move this page" feature for such an operation is not at all advised.'''
Please note that [[Wikipedia:Wikipedia:Refactoring talk pages|refactoring a talk page]] is an alternative to archiving it.
==Sequential archives==
Cutting and pasting the text to be archived into a new page is considered the best method for archiving a talk page.
When archiving old discussions, it is customary to leave current, ongoing discussions on the existing talk page. In some cases, a header text is also preserved.
For example, to archive the discussion on the talk page of this article:
:1. Start at the Talk page.
:2. Click on "Edit this page".
:3. At the top of the edit area, type in:
::<nowiki>[[Help talk:Archive/Archive 1]]</nowiki>
:4. Click on show preview.
:5. Once the preview is on your screen, highlight the desired text in the edit box.
:6. Cut the desired text from the page using CTRL-x or the cut command in the menu bar.
:7. Click on the red coloured "Help talk:Archive/Archive 1" that is in the preview text. This will open a new page with an empty edit area.
:8. Paste (using CTRL-v or the paste command in the menu bar) the desired text into the new page ("Help talk:Archive/Archive 1") and the click on "save page".
:9. Finally, place a link to the archive on the talk page.
In due time, you would end up with a sequence of archives files named ''Archive 1'', ''Archive 2'', ''Archive 3'' and so forth.
== Archives by sub-topic ==
To complement or replace a series of sequential archives, consider organizing archives by sub-topic. This is less appropriate for personal talk pages than for talk pages in the article or project namespace, where it may be desirable to be able to refer to earlier discussions quickly.
An example of sequential archiving can be found at [[Wikipedia:Wikipedia talk:Naming conventions|Wikipedia talk:Naming conventions]].
Sometimes subpages under the given talk page are appropriate. Other times, it may be best to move comments to the talk page of a logically related article. So, for example, a discussion of French politics at "Talk:France" could be moved to the talk page of the "Politics of France" article.
In general, if you have two or more sequential archives, organising archives by topic may be a better alternative.
==Monolithic discussion file==
For certain discussion pages, particularly those concerned with policy, which don't lend themselves to organizing by topic, the following alternative archiving strategy may be preferable.
In this method, texts are simply deleted from a page and not moved to a different file. To reference an earlier discussion, you simply provide a link to an earlier version of the page. All discussions remain in one monolithic page file. One small caveat: it is not possible to link to an earlier version of a page with an internal-style link. You have to supply the full URL.
To create a link to an earlier version of a talk page:
*Open the Page History of the page
*Open the relevant earlier version of the page which still contains the discussion.
*Copy the complete URL from the navigation bar of your browser.
*Paste this into the latest version of the Talk page. It will look something like this:
:<nowiki>https://brightershoreswiki.org/w/Talk:Premium_Pass?oldid=826</nowiki>
You would then format this like this:
:<nowiki>[https://brightershoreswiki.org/w/Talk:Premium_Pass?oldid=826 earlier discussion].</nowiki>
:''Note: because this is an URL and not a Wikilink, you use single square brackets ([ ]) rather than double ([[ ]]) and you use a space rather than a vertical bar (|) to separate the URL from the label.
The final result will look like this::
:Also see this [https://brightershoreswiki.org/w/Talk:Premium_Pass?oldid=826 earlier discussion].
This archiving strategy can be particularly useful for ''summarising'' discussions; you provide a succinct overview of the various points of view and a link to the complete discussion.
==User talk pages==
It is recommended that you do not attempt to archive another user's talk page. These are not subject to the recommendations on this page, and each user may choose alternate means to archive their own talk page.
When archiving your talk page by moving it, be aware that this causes the newly-created archive to be added to the watchlist of any user who was previously watching your talk page. This could be annoying for people who have no desire to watch your talk archives.
==Conclusions==
Separate archive files have the advantage that they are indexed and can be searched, whereas this is not the case with the monolithic approach.
This should be taken into consideration for pages where people repeatedly ask the same kinds of questions and it is useful to be able to search the archives.
In closing, there are no ''fixed rules'' about archiving discussions on the Brighter Shores Wiki.
==See also==
* [[Wikipedia:Wikipedia:How to archive a talk page|How to archive a talk page at Wikipedia]], on which this page was based.
{{Help}}
2aba63b572d529c55050e4e5203f41e8e2ea8fec
Brighter Shores:Copyrights
4
984
2295
2024-04-11T19:18:10Z
BlackHawk
10
Created page with "{{Soft redirect|meta:Project:Copyrights}}"
wikitext
text/x-wiki
{{Soft redirect|meta:Project:Copyrights}}
aea8d5e86f11f93eaf1d7702314cfbba31b41b97
Help:Cache
12
985
2296
2024-04-11T19:18:15Z
BlackHawk
10
Created page with "[[Category:Help]] {{Nutshell|If you're experiencing issues with wiki page or image updates, try [[Help:Cache#How to clear your cache|clearing your cache]].}} ==Background== Internet browsers require the utilisation of what is called a '''cache''' or '''browser cache''', which is a temporary storage area on your computer's hard drive to which website data is stored for increased webpage performance. Simply put, your cache allows webpages to load faster. A cache differs fr..."
wikitext
text/x-wiki
[[Category:Help]]
{{Nutshell|If you're experiencing issues with wiki page or image updates, try [[Help:Cache#How to clear your cache|clearing your cache]].}}
==Background==
Internet browsers require the utilisation of what is called a '''cache''' or '''browser cache''', which is a temporary storage area on your computer's hard drive to which website data is stored for increased webpage performance. Simply put, your cache allows webpages to load faster. A cache differs from a ''Cookie'', in that a ''Cookie'' is used to allow a website to use certain information about your computer to improve your browser's future performance.
The idea behind the cache is that most websites utilise a base layout on all or most of their pages. For instance, the Brighter Shores Wiki logo appears at the top-right of every Brighter Shores Wiki page. A cache enables the browser to download the logo image once, so that it doesn't have to download it every time a new page is opened.
Ironically, there are times when clearing one's cache is helpful for website performance. Additionally, a web browser's cache may take up significant space on one's hard drive.
Examples of problems that may occur due to one's cache may be seen with the updating of certain images on the Brighter Shores Wiki. Editors continually update images throughout the wiki in order to maintain the latest, cleanest versions of those images. However, due to issues with one's cache and the way a website interacts with it, these updates may not take effect immediately. Furthermore, there are privacy issues that may warrant a reset of one's cache (such as when ''logging out'' of your Brighter Shores Wiki account).
==How to clear your cache==
If you are experiencing problems while using the Brighter Shores Wiki, try clearing your browser's cache. To clear/reset/delete/empty your cache, find your browser below and follow the instructions:
===Google Chrome===
# Open Google Chrome
# Click More ⋮ (Three stacked dots at the top-right corner of the browser).
# ''More tools'' > ''Clear browsing data...''
## '''NOTE:''' This menu may also be accessed by pressing {{key press|Ctrl|Shift|Delete}}
# In the ''Time range'' dropdown menu, select ''All time''
# Uncheck ☐ everything except ''Cached images and files''
# Click '''Clear data'''
===Firefox===
# Open Firefox
# Click on Settings (three stacked horizontal bars at the top-right corner of the browser)
# Click ''History'' > ''Clear Recent History...''
## '''NOTE:''' This menu may also be accessed by pressing {{key press|Ctrl|Shift|Delete}}
# In the ''Time range to clear:'' dropdown menu, select ''Everything''
# Ensure the '''Details''' list is expanded and check ☑ '''Cache'''
# Click '''Clear Now'''
===Internet Explorer 9, 10, & 11===
# Open Internet Explorer
# Click on Tools (the gear icon at the top-right corner of the browser) > Safety > Delete browsing history
## '''NOTE:''' This menu may also be accessed by pressing {{key press|Ctrl|Shift|Delete}}
# Uncheck ☐ ''Preserve Favorites website data'' and check ☑ both ''Temporary Internet Files'' and ''Cookies''
# Click '''Delete'''
# You will get a confirmation at the bottom of your browser's window when it has successfully cleared your cache and cookies.
===Microsoft Edge===
# Open Microsoft Edge
# Click on ''more options'' (•••), at the top-right corner of the page
# Select ''Settings'' at the bottom of the menu
# Select ''Choose what to clear'', under ''Clear browsing data''
# Check ☑ ''Cached data and files''
# Click '''Clear'''
===Safari===
# Open Safari
# Click on the '''Safari''' menu at the top-left corner of the screen (if in fullscreen mode, hold the pointer at the top-edge of the screen to show the Menu Bar)
# Select ''Preferences...''
## '''NOTE:''' This menu may also be accessed by pressing {{key press|⌘|,}} ({{key press|Command|,}})
# Select ''Advanced'' (Gear Icon)
# Ensure the '''Develop''' menu is enabled by checking ☑ ''Show Develop menu in menu bar''
# Select the '''Develop''' menu in the menu bar at the top of the screen > ''Empty Caches''
## '''NOTE:''' The cache may be cleared directly by pressing {{key press|⌥|⌘|E}} ({{key press|Option|Command|E}})
==How to bypass your cache==
{{main|Help:Bypass your cache}}
{{Help}}
c778696e4572fc0de5264c34a346e133a7ca6554
Help:Job queue
12
986
2297
2024-04-11T19:20:36Z
BlackHawk
10
Created page with "The '''job queue''' performs long-running tasks asynchronously. The job queue is designed to hold many short tasks using [[wikipedia:batch processing|batch processing]]. ==Job examples== ===Updating links tables when a template changes=== When a template changes, MediaWiki adds a job to the job queue for each article transcluding that template. Each job is a command to read an article, expand any templates, and update the link table accordingly. Previously, the host ar..."
wikitext
text/x-wiki
The '''job queue''' performs long-running tasks asynchronously. The job queue is designed to hold many short tasks using [[wikipedia:batch processing|batch processing]].
==Job examples==
===Updating links tables when a template changes===
When a template changes, MediaWiki adds a job to the job queue for each article transcluding that template. Each job is a command to read an article, expand any templates, and update the link table accordingly. Previously, the host articles would remain outdated until either their parser cache expires or until a user edits the article.
===HTML cache invalidation===
A wider class of operations can result in invalidation of the HTML cache for a large number of pages:
* Changing an image (all the thumbnails have to be re-rendered, and their sizes recalculated)
* Deleting a page (all the links to it from other pages need to change from blue to red)
* Creating or undeleting a page (like above, but from red to blue)
* Changing a template (all the pages that transclude the template need updating)
Except for template changes, these operations do not invalidate the links tables, but they do invalidate the HTML cache of all pages linking to that page, or using that image. Invalidating the cache of a page is a short operation; it only requires updating a single database field and sending a multicast packet to clear the caches. But if there are more than about 1000 to do, it takes a long time. By default, one job is added per 300 operations.
Note, however, that even if purging the cache of a page is a short operation, reparsing a complex page that is not in the cache may be expensive, specially if a highly used template is edited and causes lots of pages to be purged in a short period of time and your wiki has lots of concurrent visitors loading a wide spread of pages.
==Typical values==
During a period of low load, the job queue might be zero. On the Brighter Shores Wiki in off-peak hours, it might be near 0 but during a busy day it may be few hundred to a thousand but it can quickly fluctuate by 10% or more.
The current number of jobs in the queue can be viewed using the api: <code>api.php?action=query&meta=siteinfo&siprop=statistics</code> ([[Special:ApiSandbox#action=query&format=json&meta=siteinfo&siprop=statistics|try in API sandbox]]).
==See also==
* [[mw:Manual:Job queue|Manual:Job queue]]
* [[wikipedia:Help:Job queue|help:Job queue]]
{{Help}}
6e404d2280cababe05122aa277a57d164eabf102
Help:List
12
987
2298
2024-04-11T19:27:54Z
BlackHawk
10
Created page with "<div style="float:right;">__TOC__</div> This help page explains how to create and edit lists on the Brighter Shores wiki. ==List basics== There are three basic types of lists: '''ordered lists''', '''unordered lists''', and '''definition lists'''. In the following sections, ordered lists are used for examples. Unordered lists would give corresponding results. {|class="wikitable" ! Wikitext !! Rendering |- |<pre> * Lists are easy to do: ** start every line * with a sta..."
wikitext
text/x-wiki
<div style="float:right;">__TOC__</div>
This help page explains how to create and edit lists on the Brighter Shores wiki.
==List basics==
There are three basic types of lists: '''ordered lists''', '''unordered lists''', and '''definition lists'''. In the following sections, ordered lists are used for examples. Unordered lists would give corresponding results.
{|class="wikitable"
! Wikitext !! Rendering
|-
|<pre>
* Lists are easy to do:
** start every line
* with a star
** more stars mean
*** deeper levels</pre>
||
* Lists are easy to do:
** start every line
* with a star
** more stars mean
*** deeper levels
|-
|<pre>
* A newline
* in a list
marks the end of the list.
Of course
* you can
* start again.</pre>
|
* A newline
* in a list
marks the end of the list.
Of course
* you can
* start again.
|-
|<pre>
# Numbered lists are good
## very organized
## easy to follow</pre>
|
# Numbered lists are good
## very organized
## easy to follow
|-
|<pre>
* You can also
** break lines
** like this</pre>
|
* You can also
**break lines
**like this
|-
|<pre>
; Definition lists
; item : definition
; semicolon plus term
: colon plus definition</pre>
|
; Definition lists
; item : definition
; semicolon plus term
: colon plus definition
|-
|<pre>
; Mixed definition lists
; item 1 : definition
:; sub-item 1 plus term
:: two colons plus definition
:; sub-item 2 : colon plus definition
; item 2
: back to the main list</pre>
|
; Mixed definition lists
; item 1 : definition
:; sub-item 1 plus term
:: two colons plus definition
:; sub-item 2 : colon plus definition
; item 2
: back to the main list
|-
|<pre>
* Or create mixed lists
*# and nest them
*#* like this
*#*; definitions
*#*: work:
*#*; apple
*#*; banana
*#*: fruits</pre>
|
* Or create mixed lists
*# and nest them
*#* like this
*#*; definitions
*#*: work:
*#*; apple
*#*; banana
*#*: fruits
|}
==Paragraphs in lists==
For simplicity, list items in wiki markup cannot be longer than a paragraph. A following blank line will end the list and reset the counter on ordered lists. Separating unordered list items usually has no noticeable effects.
Paragraphs can be forced in lists by using HTML tags. Two line break symbols, <code><nowiki><br /><br /></nowiki></code>, will create the desired effect. So will enclosing all but the first paragraph with <code><nowiki><p>...</p></nowiki></code>.
For a list with items of more than one paragraph long, adding a blank line between items may be necessary to avoid confusion.
==Continuing a list item after a sub-item==
In HTML, a list item may contain several sublists, not necessarily adjacent; thus there may be parts of the list item not only before the first sublist, but also between sublists, and after the last one. However, in wiki-syntax, sublists follow the same rules as sections of a page: the only possible part of the list item not in sublists is before the first sublist.
In the case of an unnumbered first-level list in wikitext code this limitation can be overcome by splitting the list into multiple lists; indented text between the partial lists may visually serve as part of a list item after a sublist; however, this may give, depending on CSS, a blank line before and after each list, in which case, for uniformity, every first-level list item could be made a separate list.
Numbered lists illustrate that what should look like one list may, for the software, consist of multiple lists; unnumbered lists give a corresponding result, except that the problem of restarting with 1 is not applicable.
{| style="border:1px;border-spacing:1px;" class="wikitable sortable" cellpadding="5"
|- style=""
|
<pre><ol>
<li><translate><!--T:28--> list item</translate> A1
<ol>
<li><translate><!--T:29--> list item</translate> B1</li>
<li><translate><!--T:30--> list item</translate> B2</li>
</ol><translate><!--T:31--> continuing list item</translate> A1
</li>
<li><translate><!--T:32--> list item</translate> A2</li>
</ol></pre>
| <ol>
<li> list item A1
<ol>
<li>list item B1</li>
<li>list item B2</li>
</ol>continuing list item A1
</li>
<li>list item A2</li>
</ol>
|- style="font-weight:bold;text-align:center;"
| colspan="2" | vs.
|- style=""
|<pre>
#list item A1
##list item B1
##list item B2
#:continuing list item A1
#list item A2</pre>
|
#list item A1
##list item B1
##list item B2
#:continuing list item A1
#list item A2
|}
One level deeper, with a sublist item continuing after a sub-sublist, one gets even more blank lines; however, the continuation of the first-level list is not affected:
<pre>
#list item A1
##list item B1
###list item C1
##:continuing list item B1
##list item B2
#list item A2
</pre>
gives
#list item A1
##list item B1
###list item C1
##:continuing list item B1
##list item B2
#list item A2
It is possible to embed unnumbered bullets inside enclosing numbered items:
<pre>
# list item A
#* nested bullet A1
#* nested bullet A2
# continuing list item B
#* nested bullet B1
#* nested bullet B2
</pre>
gives
# list item A
#* nested bullet A1
#* nested bullet A2
# continuing list item B
#* nested bullet B1
#* nested bullet B2
==Changing the list type==
The list type (which type of marker appears before the list item) can be changed in CSS by setting the [http://www.w3.org/TR/REC-CSS2/generate.html#lists list-style-type] property:
{|class="wikitable"
! Wikitext !! Rendering
|-
|
<pre><ol style="list-style-type:lower-roman">
<li>About the author</li>
<li>Foreword to the first edition</li>
<li>Foreword to the second edition></li>
</ol></pre>
|<ol style="list-style-type:lower-roman">
<li>About the author</li>
<li>Foreword to the first edition</li>
<li>Foreword to the second edition</li>
</ol>
|-
|
<pre><ol style="list-style-type:lower-alpha">
<li>About the author</li>
<li>Foreword to the first edition</li>
<li>Foreword to the second edition</li>
</ol></pre>
|<ol style="list-style-type:lower-alpha">
<li>About the author</li>
<li>Foreword to the first edition</li>
<li>Foreword to the second edition</li>
</ol>
|}
==Extra indentation of lists==
In a numbered list in a large font, some browsers do not show more than two digits, unless extra indentation is applied (if there are multiple columns: for each column). This can be done with CSS:
<pre>ol { margin-left: 2cm}</pre>
or alternatively, like below.
{|class="wikitable"
! Wikitext !! Rendering
! style="width: 40%" |Comments
|-
|
<pre>
:# abc
:# def
:# ghi
</pre>
|
:# abc
:# def
:# ghi
| A list of one or more lines starting with a colon creates a [http://www.w3.org/TR/html4/struct/lists.html#edef-DL definition list] without definition terms, and with the items as definition descriptions, hence indented. However, if the colons are in front of the codes "*" or "#" of an unordered or ordered list, the list is treated as one definition description, so the whole list is indented.
|-
|
<pre>
<ul>
<ol>
<li>abc</li>
<li>def</li>
<li>ghi</li>
</ol>
</ul>
</pre>
|
<ul>
<ol>
<li>abc</li>
<li>def</li>
<li>ghi</li>
</ol>
</ul>
| MediaWiki translates an unordered list (ul) without any list items (li) into a div with a <code>style="margin-left: 2em"</code>, causing indentation of the contents. This is '''the most versatile method''', as it allows starting with a number other than 1, see below.
|-
|
<pre>
<ul>
# abc
# def
# ghi
</ul>
</pre>
|
<ul>
# abc
# def
# ghi
</ul>
| Like above, with the content of the "unordered list without any list items", which itself is an ordered list, expressed with # codes. The HTML produced, and hence the rendering, is the same. This is the '''recommended''' method when starting the list at 1.
|}
==Specifying a starting value==
Specifying a starting value is possible with HTML syntax.
{| style="width:100%"
| style="width: 50%" |
<pre>
<ol start="9">
<li>Amsterdam</li>
<li>Rotterdam</li>
<li>The Hague</li>
</ol>
</pre>
|
<ol start="9">
<li>Amsterdam</li>
<li>Rotterdam</li>
<li>The Hague</li>
</ol>
|}
Or:
{| style="width:100%"
| style="width: 50%" |
<pre>
<ol>
<li value="9">Amsterdam</li>
<li value="8">Rotterdam</li>
<li value="7">The Hague</li>
</ol>
</pre>
|
<ol>
<li value="9">Amsterdam</li>
<li value="8">Rotterdam</li>
<li value="7">The Hague</li>
</ol>
|}
==Comparison with a table==
Apart from providing automatic numbering, the numbered list also aligns the contents of the items, comparable with using table syntax:
<pre>
{|
|-
| align=right | 9.|| Amsterdam
|-
| align=right | 10.|| Rotterdam
|-
| align=right | 11.|| The Hague
|}
</pre>
gives:
{|
|-
| align=right | 9.|| Amsterdam
|-
| align=right | 10.|| Rotterdam
|-
| align=right | 11.|| The Hague
|}
This non-automatic numbering has the advantage that if a text refers to the numbers, insertion or deletion of an item does not disturb the correspondence.
==Multi-column lists==
=== Multi-column bulleted list ===
<pre>
<div style="column-count:2;-moz-column-count:2;-webkit-column-count:2">
* apple
* carpet
* geography
* mountain
* nowhere
* postage
* ragged
* toast
</div>
</pre>
gives:
<div style="column-count:2;-moz-column-count:2;-webkit-column-count:2">
* apple
* carpet
* geography
* mountain
* nowhere
* postage
* ragged
* toast
</div>
<pre>
<div style="column-count:3;-moz-column-count:3;-webkit-column-count:3">
* apple
* carpet
* geography
* mountain
* nowhere
* postage
* ragged
* toast
</div>
</pre>
gives:
<div style="column-count:3;-moz-column-count:3;-webkit-column-count:3">
* apple
* carpet
* geography
* mountain
* nowhere
* postage
* ragged
* toast
</div>
===Multi-column numbered list===
<pre>
<div style="column-count:3;-moz-column-count:3;-webkit-column-count:3">
# apple
# carpet
# geography
# mountain
# nowhere
# postage
# ragged
# toast
</div>
</pre>
gives:
<div style="column-count:3;-moz-column-count:3;-webkit-column-count:3">
# apple
# carpet
# geography
# mountain
# nowhere
# postage
# ragged
# toast
</div>
Below a starting value is specified, with HTML-syntax (for the first column either wiki-syntax or HTML-syntax can be used).
In combination with the extra indentation explained in the previous section:
<pre>
{| valign="top"
|-
|<ul><ol start="125"><li>a<li>bb<li>ccc</ol></ul>
|<ul><ol start="128"><li>ddd<li>ee<li>f</ol></ul>
|}
</pre>
gives:
{| valign="top"
|-
|<ul><ol start="125"><li>a<li>bb<li>ccc</ol></ul>
|<ul><ol start="128"><li>ddd<li>ee<li>f</ol></ul>
|}
==Streamlined style or horizontal style==
It is also possible to present short lists using very basic formatting, such as:
<pre>''Title of list:'' example 1, example 2, example 3</pre>
''Title of list:'' example 1, example 2, example 3
This style requires less space on the page, and is preferred if there are only a few entries in the list, it can be read easily, and a direct edit point is not required. The list items should start with a lowercase letter unless they are proper nouns.
==Tables==
A one-column table is very similar to a list, but it allows sorting. If the wikitext itself is already sorted with the same sortkey, this advantage does not apply. A multiple-column table allows sorting on any column.
See also: [[wikipedia:en:When to use tables|When to use tables]]
==Changing unordered lists to ordered ones==
With the CSS:
<pre>ul { list-style: decimal }</pre>
unordered lists are changed to ordered ones. This applies (as far as the CSS selector does not restrict this) to all ul-lists in the HTML source code:
* those produced with *
* those with <nowiki><ul></nowiki> in the wikitext
* those produced by the system
Since each special page, like other pages, has a class based on the pagename, one can separately specify for each type whether the lists should be ordered, see [[Help:Customising skins]]. Use: <code>body.page-Special_Contributions ul { list-style: decimal }</code> for [[Special:Contributions]] and <code>body.mw-special-Whatlinkshere ul { list-style: decimal }</code> for [[Special:Whatlinkshere]]. However, it does not seem possible to make all page history lists ordered (unless one makes all lists ordered), because the class name is based on the page for which the history is viewed.
==See also==
* [[mw:Help:Lists|Help:Lists]] on MediaWiki
* [[wikipedia:Help:List|Help:List]] on wikipedia
{{Help}}
94edebc0dce165b0619888dbcf83413ca98ab1d3
MediaWiki:Common.less
8
5
2299
1812
2024-04-11T19:29:31Z
Merds
25
less
less
/* =============================================================================
* This is the root Less file that is parsed to produce [[MediaWiki:Common.css]].
*
* These styles will be applied to all skins (desktop and mobile).
* -----------------------------------------------------------------------------
* Less documentation: <http://lesscss.org/features/>
* Gadget: <https://meta.weirdgloop.org/w/MediaWiki:Gadget-Less.js>
* Core Less JS: <https://meta.weirdgloop.org/w/MediaWiki:Gadget-Less-core.js>
* Non-standard mixins: <https://meta.weirdgloop.org/w/MediaWiki:Gadget-LessMixins.less>
* Online Less tester: <https://lesscss.org/less-preview/>
* ============================================================================= */
// ===== CSS Variables =====
@common: 'MediaWiki:Common.less';
:root {
--body-main: #fdfcfc;
--body-light: #f5f0eb;
--body-mid: #d1b9ad;
--body-dark: #b1886f;
--body-border: #d1b9ad;
--body-background-color: #173a4d;
--button-background: #605443;
--button-color: @white;
--button-border: #3c352a;
--button-dark: #18140c;
--button-light: #3a301d;
--sidebar: #cfc08d;
--background-text-color: #e2dbc8;
--background-link-color: #e2bd8a;
--search-box: #efeee6;
--link-color: #ab6d46;
--redlink-color: #ba0000;
--text-color: #2F2828; /* @mine-shaft */
--byline-color: @silver;
--subtle-color: #afa19a; /* old: @boulder; */
--admin-blue: #332e75;
--bearcat-green: #13592e;
--awb-purple: #933b96;
--rsw-blue: #438ab6;
--osrsw-brown: #605443;
// used for gallery & thumbs
--thumb-bg: var(--body-light);
--thumb-caption-bg: var(--body-mid);
// for sourceeditor - CodeMirror and WikiEditor's that are only available on
// desktop are also here to not fragment the vars across many files
--sourceeditor-input-background: @white;
--sourceeditor-background: var(--body-light);
--sourceeditor-background-secondary: var(--body-light); // used on .editOptions
--sourceeditor-border: var(--body-mid);
--codemirror-gutter-background: var(--body-mid);
}
// ===== Imports =====
// include fonts first
@import '@{common}/mixins.less';
@import '@{common}/fonts.less'; // Font definitions and font stack definitions
@import '@{common}/variables.less'; // Less variables
@import '@{common}/elements.less'; // HTML elements
@import '@{common}/links.less'; // Link colours
// Interface
@import '@{common}/interface.less'; // MW common elements
@import '@{common}/wikitables.less'; // .wikitable class and etc
@import '@{common}/diff.less'; // Revision differences
@import '@{common}/notifications.less';
@import '@{common}/pagepreviews.less'; // Page preview popups
@import '@{common}/smw.less'; // Semantic MediaWiki
@import '@{common}/tabber.less'; // <tabber>
@import '@{common}/ooui.less'; // OOUI Customisations
@import '@{common}/visualeditor.less'; // VisualEditor
// Templates
@import '@{common}/templates.less'; // Various templates
@import '@{common}/documentation.less'; // [[Template:Documentation]]
@import '@{common}/infobox.less'; // Infobox vars
@import '@{common}/references.less'; // <references>
@import '@{common}/messagebox.less'; // Messagebox templates
// Page specific
@import '@{common}/tiles.less'; // Main page tiles
@import '@{common}/mainpage.less'; // Main page
@import '@{common}/prefs.less'; // Wiki preferences theming
@import '@{common}/specials.less'; // Special pages
@import '@{common}/bstheme.less'; // [[BS:THEME]]
// ===== Miscellaneous =====
// hide certain links in sidebar tools
#t-print,
#t-permalink {
display: none;
}
#filetoc {
border-radius: @border-radius;
background: @BODY_MID;
border-color: transparent;
margin: 0.5em auto;
text-align: center;
box-shadow: @box-shadow;
}
// Galleries
li.gallerybox div.thumb {
border: none;
background-color: var(--thumb-bg);
}
.smwfact {
display: none;
}
// applies to mobile talk pages, and smw??
.list-header {
background-color: var(--body-mid);
color: inherit;
}
// Source editor w/o syntaxhighlight; also applies to mobile in case JS is
// turned off
.editOptions {
color: var(--text-color);
background-color: var(--sourceeditor-background-secondary);
border-color: var(--sourceeditor-border);
}
// .json pages
.mw-json {
th,
td {
border-color: var(--wikitable-border);
}
// instead of selecting `tr`, do this to avoid dealing with mw-json-* classes
td {
background: var(--wikitable-bg);
}
th {
background: var(--wikitable-header-bg);
}
}
3e7299671464ffc38d4051387282929aae4d16c7
2303
2299
2024-04-11T20:28:22Z
Merds
25
less
less
/* =============================================================================
* This is the root Less file that is parsed to produce [[MediaWiki:Common.css]].
*
* These styles will be applied to all skins (desktop and mobile).
* -----------------------------------------------------------------------------
* Less documentation: <http://lesscss.org/features/>
* Gadget: <https://meta.weirdgloop.org/w/MediaWiki:Gadget-Less.js>
* Core Less JS: <https://meta.weirdgloop.org/w/MediaWiki:Gadget-Less-core.js>
* Non-standard mixins: <https://meta.weirdgloop.org/w/MediaWiki:Gadget-LessMixins.less>
* Online Less tester: <https://lesscss.org/less-preview/>
* ============================================================================= */
// ===== CSS Variables =====
@common: 'MediaWiki:Common.less';
:root {
--body-main: #fdfcfc;
--body-light: #f5f0eb;
--body-mid: #d1b9ad;
--body-dark: #b1886f;
--body-border: #d1b9ad;
--body-background-color: #173a4d;
--button-background: #605443;
--button-color: @white;
--button-border: #3c352a;
--button-dark: #18140c;
--button-light: #3a301d;
--sidebar: #cfc08d;
--background-text-color: #e2dbc8;
--background-link-color: #e2bd8a;
--search-box: #efeee6;
--link-color: #ab6d46;
--table-header-link: #794f34;
--redlink-color: #ba0000;
--text-color: #2F2828; /* @mine-shaft */
--byline-color: @silver;
--subtle-color: #afa19a; /* old: @boulder; */
--admin-blue: #332e75;
--bearcat-green: #13592e;
--awb-purple: #933b96;
--rsw-blue: #438ab6;
--osrsw-brown: #605443;
// used for gallery & thumbs
--thumb-bg: var(--body-light);
--thumb-caption-bg: var(--body-mid);
// for sourceeditor - CodeMirror and WikiEditor's that are only available on
// desktop are also here to not fragment the vars across many files
--sourceeditor-input-background: @white;
--sourceeditor-background: var(--body-light);
--sourceeditor-background-secondary: var(--body-light); // used on .editOptions
--sourceeditor-border: var(--body-mid);
--codemirror-gutter-background: var(--body-mid);
}
// ===== Imports =====
// include fonts first
@import '@{common}/mixins.less';
@import '@{common}/fonts.less'; // Font definitions and font stack definitions
@import '@{common}/variables.less'; // Less variables
@import '@{common}/elements.less'; // HTML elements
@import '@{common}/links.less'; // Link colours
// Interface
@import '@{common}/interface.less'; // MW common elements
@import '@{common}/wikitables.less'; // .wikitable class and etc
@import '@{common}/diff.less'; // Revision differences
@import '@{common}/notifications.less';
@import '@{common}/pagepreviews.less'; // Page preview popups
@import '@{common}/smw.less'; // Semantic MediaWiki
@import '@{common}/tabber.less'; // <tabber>
@import '@{common}/ooui.less'; // OOUI Customisations
@import '@{common}/visualeditor.less'; // VisualEditor
// Templates
@import '@{common}/templates.less'; // Various templates
@import '@{common}/documentation.less'; // [[Template:Documentation]]
@import '@{common}/infobox.less'; // Infobox vars
@import '@{common}/references.less'; // <references>
@import '@{common}/messagebox.less'; // Messagebox templates
// Page specific
@import '@{common}/tiles.less'; // Main page tiles
@import '@{common}/mainpage.less'; // Main page
@import '@{common}/prefs.less'; // Wiki preferences theming
@import '@{common}/specials.less'; // Special pages
@import '@{common}/bstheme.less'; // [[BS:THEME]]
// ===== Miscellaneous =====
// hide certain links in sidebar tools
#t-print,
#t-permalink {
display: none;
}
#filetoc {
border-radius: @border-radius;
background: @BODY_MID;
border-color: transparent;
margin: 0.5em auto;
text-align: center;
box-shadow: @box-shadow;
}
// Galleries
li.gallerybox div.thumb {
border: none;
background-color: var(--thumb-bg);
}
.smwfact {
display: none;
}
// applies to mobile talk pages, and smw??
.list-header {
background-color: var(--body-mid);
color: inherit;
}
// Source editor w/o syntaxhighlight; also applies to mobile in case JS is
// turned off
.editOptions {
color: var(--text-color);
background-color: var(--sourceeditor-background-secondary);
border-color: var(--sourceeditor-border);
}
// .json pages
.mw-json {
th,
td {
border-color: var(--wikitable-border);
}
// instead of selecting `tr`, do this to avoid dealing with mw-json-* classes
td {
background: var(--wikitable-bg);
}
th {
background: var(--wikitable-header-bg);
}
}
09a8b19bf695351e84cacc4087a835b792b384ad
Barricades
0
79
2300
1854
2024-04-11T19:51:00Z
Yellowsap
63
wikitext
text/x-wiki
{{Infobox Location
|name = Barricades
|image = [[File:Barricades.jpg|280px]]
|release = Q3 [[2024]]
|premium = No
|episode = Hopeport
}}
{{Relative location
|location = Barricades
|north =
|east = Mine Entrance
|south =
|west =
}}
The '''Barricades''' is a location that leads into the [[Mine Entrance]], which is guarded by a [[barricade guard]]. The player must talk to [[Captain Jal Degreene]] as part of a quest in order to be allowed through.
0304aab0e2b16c741e584d4150f8c547c4513a9d
User:Merds/Sandbox
2
652
2304
1709
2024-04-11T20:29:38Z
Merds
25
wikitext
text/x-wiki
This page contains information about the '''look of the Brighter Shores Wiki'''.
==Colours==
<div class="color-container">
<div class="color-column">
<h3>Body</h3>
<div class="color-group" style="background: #d1b9ad;">
<p class="variable">--body-border</p>
<p class="hexcode">#d1b9ad</p>
</div>
<div class="color-group dark" style="background: #b1886f;">
<p class="variable">--body-dark</p>
<p class="hexcode">#b1886f</p>
</div>
<div class="color-group" style="background: #d1b9ad;">
<p class="variable">--body-mid</p>
<p class="hexcode">#d1b9ad</p>
</div>
<div class="color-group" style="background: #f5f0eb;">
<p class="variable">--body-light</p>
<p class="hexcode">#f5f0eb</p>
</div>
<div class="color-group" style="background: #fdfcfc;">
<p class="variable">--body-main</p>
<p class="hexcode">#fdfcfc</p>
</div>
<div class="color-group dark" style="background: #173a4d;">
<p class="variable">--body-background-color</p>
<p class="hexcode">#173a4d</p>
</div>
</div>
<div class="color-column">
<h3>Buttons and links</h3>
<div class="color-group dark" style="background: #3c352a;">
<p class="variable">--button-border</p>
<p class="hexcode">#3c352a;</p>
</div>
<div class="color-group dark" style="background: #18140c;">
<p class="variable">--button-dark</p>
<p class="hexcode">#18140c</p>
</div>
<div class="color-group dark" style="background: #3a301d;">
<p class="variable">--button-light</p>
<p class="hexcode">#3a301d</p>
</div>
<div class="color-group dark" style="background: #ab6d46;">
<p class="variable">--link-color</p>
<p class="hexcode">#ab6d46</p>
</div>
<div class="color-group dark" style="background: #794f34;">
<p class="variable">--table-link-color</p>
<p class="hexcode">#794f34</p>
</div>
<div class="color-group dark" style="background: #52351e;">
<p class="variable">--background-link-color</p>
<p class="hexcode">#52351e</p>
</div>
</div>
e8b2664632c21b41e5c71326c4595068e9902b51
MediaWiki:Common.less/wikitables.less
8
17
2305
1564
2024-04-11T20:31:43Z
Merds
25
less
less
:root {
--wikitable-header-bg: @BODY_DARK;
--wikitable-border: @BODY_BORDER;
--wikitable-bg: @BODY_LIGHT;
--wikitable-bg-lighter: #e9e3d6; // lighten(@wikitable-bg, 10%); Used on hover effect
--wikitable-color: @TEXT_COLOR;
--table-na-background: fade(@white, 30);
--table-na-color: var(--subtle-color);
--table-yes-background: @caper;
--table-yes-color: @san-felix;
--table-no-background: @apricot-peach;
--table-no-color: @mocaccino;
--table-maybe-background: @golden;
--table-maybe-color: @cinnamon;
}
// Brown-ify defaults
.wikitable {
background: var(--wikitable-bg);
color: var(--wikitable-color);
border-color: var(--wikitable-border);
box-shadow: @box-shadow;
// All cells borders
> tr > th,
> tr > td,
> * > tr > th,
> * > tr > td {
border-color: var(--wikitable-border);
// Template:NoBorder
&.table-noborder {
border-left-style: hidden;
border-right-style: hidden;
padding-left: 0;
padding-right: 0;
}
}
// All header cells bg
> tr > th,
> * > tr > th {
background-color: var(--wikitable-header-bg);
color: @white;
a {
color: var(--table-link-color);
}
}
// Already in a box
.tabber & {
box-shadow: none;
}
}
// Metadata tables, allmessages, etc
.mw_metadata {
td,
th {
border-color: var(--wikitable-border);
}
th {
background-color: var(--wikitable-header-bg);
}
td {
background-color: var(--wikitable-bg);
}
}
// Special:AllPages, BlockList, etc
.mw-datatable {
border-color: var(--wikitable-border);
td,
th {
border-color: var(--wikitable-border);
}
// cells
th {
background-color: var(--wikitable-header-bg);
a {
color: var(--table-link-color);
}
}
// headers
td {
background-color: var(--wikitable-bg);
}
// on hover on both cells
tr:hover td {
background-color: var(--wikitable-bg);
}
}
// alternating colours (similar to spreadsheets)
table.alternating-rows tr:nth-child(odd),
table.alternating-cols td:nth-child(odd) {
background: var(--wikitable-alternating-bg);
}
// Template:NA
.table-na {
background: var(--table-na-background);
color: var(--table-na-color);
vertical-align: middle;
text-align: center;
}
// Template:Yes
.table-yes {
background: var(--table-yes-background);
color: var(--table-yes-color);
}
.table-positive {
background: var(--table-yes-background);
}
// Template:No
.table-no {
background: var(--table-no-background);
color: var(--table-no-color);
}
.table-negative {
background: var(--table-no-background);
}
// Template:Maybe
.table-maybe {
background: var(--table-maybe-background);
color: var(--table-maybe-color);
}
// Special:AllMessages
#mw-allmessagestable {
.am_actual,
.am_default {
background-color: var(--wikitable-bg);
}
.am_default:hover,
.am_actual:hover,
tbody:hover td {
background-color: var(--wikitable-bg-lighter);
}
}
// For tables within tables, to make them take up the full space of a cell
table.wikitable td.no-cell-spacing {
padding: 0;
height: 0; // actual height is overridden by content height, but this allows height:100% to stretch to full td height
table {
margin: -1px; // collapse borders with parent td
width: calc(100% + 2px);
height: calc(100% + 2px);
}
}
// used on mmg table and similar
// to hide bullet points
.plainlist {
ol,
ul {
margin: 0;
}
li {
margin-bottom: 0; // might make lists slightly clamped tho
list-style: none;
}
}
/* table alignment help */
/* nth td from the left is right-aligned - ths are ignored */
table.align-right-1 td:nth-of-type(1),
table.align-right-2 td:nth-of-type(2),
table.align-right-3 td:nth-of-type(3),
table.align-right-4 td:nth-of-type(4),
table.align-right-5 td:nth-of-type(5),
table.align-right-6 td:nth-of-type(6),
table.align-right-7 td:nth-of-type(7),
table.align-right-8 td:nth-of-type(8),
table.align-right-9 td:nth-of-type(9),
table.align-right-10 td:nth-of-type(10),
table.align-right-11 td:nth-of-type(11),
table.align-right-12 td:nth-of-type(12),
table.align-right-13 td:nth-of-type(13),
table.align-right-14 td:nth-of-type(14),
table.align-right-15 td:nth-of-type(15),
table.align-right-16 td:nth-of-type(16),
table.align-right-17 td:nth-of-type(17),
table.align-right-18 td:nth-of-type(18),
table.align-right-19 td:nth-of-type(19),
table.align-right-20 td:nth-of-type(20) {
text-align: right;
}
/* center */
table.align-center-1 td:nth-of-type(1),
table.align-center-2 td:nth-of-type(2),
table.align-center-3 td:nth-of-type(3),
table.align-center-4 td:nth-of-type(4),
table.align-center-5 td:nth-of-type(5),
table.align-center-6 td:nth-of-type(6),
table.align-center-7 td:nth-of-type(7),
table.align-center-8 td:nth-of-type(8),
table.align-center-9 td:nth-of-type(9),
table.align-center-10 td:nth-of-type(10),
table.align-center-11 td:nth-of-type(11),
table.align-center-12 td:nth-of-type(12),
table.align-center-13 td:nth-of-type(13),
table.align-center-14 td:nth-of-type(14),
table.align-center-15 td:nth-of-type(15),
table.align-center-16 td:nth-of-type(16),
table.align-center-17 td:nth-of-type(17),
table.align-center-18 td:nth-of-type(18),
table.align-center-19 td:nth-of-type(19),
table.align-center-20 td:nth-of-type(20) {
text-align: center;
}
/* left */
table.align-left-1 td:nth-of-type(1),
table.align-left-2 td:nth-of-type(2),
table.align-left-3 td:nth-of-type(3),
table.align-left-4 td:nth-of-type(4),
table.align-left-5 td:nth-of-type(5),
table.align-left-6 td:nth-of-type(6),
table.align-left-7 td:nth-of-type(7),
table.align-left-8 td:nth-of-type(8),
table.align-left-9 td:nth-of-type(9),
table.align-left-10 td:nth-of-type(10),
table.align-left-11 td:nth-of-type(11),
table.align-left-12 td:nth-of-type(12),
table.align-left-13 td:nth-of-type(13),
table.align-left-14 td:nth-of-type(14),
table.align-left-15 td:nth-of-type(15),
table.align-left-16 td:nth-of-type(16),
table.align-left-17 td:nth-of-type(17),
table.align-left-18 td:nth-of-type(18),
table.align-left-19 td:nth-of-type(19),
table.align-left-20 td:nth-of-type(20) {
text-align: left;
}
ead443903cc445909f189de183489491a87a4880
MediaWiki:Common.css
8
30
2306
2301
2024-04-11T20:31:52Z
Merds
25
Updating CSS from [[MediaWiki:Common.less]]
css
text/css
/* <pre> */
:root {
--body-main: #fdfcfc;
--body-light: #f5f0eb;
--body-mid: #d1b9ad;
--body-dark: #b1886f;
--body-border: #d1b9ad;
--body-background-color: #173a4d;
--button-background: #605443;
--button-color: #fff;
--button-border: #3c352a;
--button-dark: #18140c;
--button-light: #3a301d;
--sidebar: #cfc08d;
--background-text-color: #e2dbc8;
--background-link-color: #e2bd8a;
--search-box: #efeee6;
--link-color: #ab6d46;
--table-header-link: #794f34;
--redlink-color: #ba0000;
--text-color: #2F2828;
--byline-color: #ccc;
--subtle-color: #afa19a;
--admin-blue: #332e75;
--bearcat-green: #13592e;
--awb-purple: #933b96;
--rsw-blue: #438ab6;
--osrsw-brown: #605443;
--thumb-bg: var(--body-light);
--thumb-caption-bg: var(--body-mid);
--sourceeditor-input-background: #fff;
--sourceeditor-background: var(--body-light);
--sourceeditor-background-secondary: var(--body-light);
--sourceeditor-border: var(--body-mid);
--codemirror-gutter-background: var(--body-mid);
}
@font-face {
font-family: 'Lora';
font-weight: 400 700;
font-style: normal;
font-display: swap;
src: url('filepath://Lora.woff2') format('woff2');
}
@font-face {
font-family: 'Lora';
font-weight: 400 700;
font-style: italic;
font-display: swap;
src: url('filepath://Lora-Italic.woff2') format('woff2');
}
:root {
--base-text-color: #36414f;
--base-heading-color: #444e5a;
--base-heading-border: #e4eaee;
--mw-code-background-color: var(--body-light);
--body-background-image: url('filepath://Wiki_background.jpg');
}
#mw-page-base {
background: none;
}
.mw-body {
background-color: var(--body-main);
color: var(--text-color);
border-color: transparent;
box-shadow: 0 0 7px rgba(0, 0, 0, 0.15);
margin-top: 0;
}
h1,
h2,
h3,
h4,
h5,
h6 {
color: var(--text-color);
}
h1,
h2 {
border-color: var(--body-border);
}
.mw-body h1,
.mw-body-content h1,
.mw-body-content h2,
.mw-body-content h3,
.mw-body-content h4,
.mw-body-content h5,
.mw-body-content h6 {
font-family: 'Lora', 'Palatino', 'Georgia', serif;
}
.mw-parser-output h2:first-of-type {
clear: left;
}
.mw-footer {
color: var(--background-text-color);
}
.mw-footer li {
color: var(--background-text-color);
}
.mw-footer a,
.mw-footer a:active,
.mw-footer a:visited {
color: var(--background-link-color);
}
::placeholder {
color: var(--subtle-color);
}
a {
color: var(--link-color);
}
a:visited,
a:active {
color: var(--link-color);
}
a.new {
color: var(--redlink-color);
}
a.new:visited {
color: var(--redlink-color);
}
.mw-parser-output a.extiw,
.mw-parser-output a.external {
color: var(--link-color);
}
.mw-parser-output a.extiw:visited,
.mw-parser-output a.external:visited,
.mw-parser-output a.extiw:active,
.mw-parser-output a.external:active {
color: var(--link-color);
}
.jsPurgeLink a.external {
color: var(--link-color);
}
:root {
--errorbox-bg: #feecea;
--errorbox-border: #ee4231;
--warningbox-bg: #fef9de;
--warningbox-border: #f9d000;
--successbox-bg: #ecf8e3;
--successbox-border: #6bc71f;
}
.mw-message-box-error,
.errorbox,
.mw-message-box-warning,
.warningbox,
.mw-message-box-success,
.successbox,
.usermessage {
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
}
.mw-message-box-error,
.errorbox {
background-color: var(--errorbox-bg);
border-color: var(--errorbox-border);
}
.mw-message-box-warning,
.warningbox,
.usermessage {
background-color: var(--warningbox-bg);
border-color: var(--warningbox-border);
}
.mw-message-box-success,
.successbox {
background-color: var(--successbox-bg);
border-color: var(--successbox-border);
}
.catlinks {
background: var(--body-light);
border: 1px solid var(--body-dark);
padding: 8px 15px;
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
}
.catlinks li {
border-color: var(--body-mid);
}
.filehistory a img,
#file img {
background: url("data:image/svg+xml,%3C%3Fxml version='1.0' encoding='UTF-8'%3F%3E%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16'%3E%3Cpath d='M0 0h8v16h8V8H0z' opacity='.13'/%3E%3C/svg%3E") repeat;
}
#file img:hover {
background: none;
}
.mw-highlight {
background: none;
}
.mw-highlight .linenos {
background-color: var(--mw-code-background-color);
color: var(--body-border);
}
.mw-highlight a:hover .linenos,
.mw-highlight .hll a .linenos {
color: var(--body-dark);
}
.mw-content-ltr.mw-highlight-lines pre,
.mw-content-ltr.content .mw-highlight-lines pre {
box-shadow: inset 2.75em 0 0 var(--mw-code-background-color);
}
#pagehistory ul {
list-style: none;
margin: 0;
}
#pagehistory li {
border: 1px solid transparent;
padding: 1px 10px;
margin: 2px 0;
}
#pagehistory li.selected {
background-color: var(--body-light);
color: inherit;
border: 1px dashed var(--body-border);
outline: none;
}
#mw-history-compare > div:first-of-type {
position: -webkit-sticky;
position: sticky;
top: 0;
background-color: var(--body-main);
border-bottom: 1px solid var(--body-dark);
padding: 0.25em 0;
}
.wgl-stickyheader #mw-history-compare > div:first-of-type {
top: 2.5rem;
}
.autocomment,
.autocomment a,
.autocomment a:visited {
color: var(--link-color);
}
li span.deleted,
span.history-deleted {
color: var(--byline-color);
}
.mw-usertoollinks-contribs-no-edits,
.mw-usertoollinks-contribs-no-edits:visited {
color: var(--redlink-color);
}
.CategoryTreeToggle {
color: var(--link-color);
}
body.wgl-stickyheader.action-view .mw-headline:target::before {
display: block;
content: '';
margin-top: -3rem;
height: 3rem;
visibility: hidden;
pointer-events: none;
}
.mw-mmv-post-image {
color: var(--text-color);
background-color: var(--body-main);
}
.mw-mmv-image-metadata {
border-top-color: var(--body-mid);
background-color: var(--body-light);
}
.mw-mmv-dialog,
.mw-mmv-dialog .mw-mmv-dialog-down-arrow,
.mw-mmv-options-dialog .mw-mmv-dialog-down-arrow {
background-color: var(--body-light);
box-shadow: none;
}
.mw-mmv-options-enable-alert {
background-color: var(--body-light);
color: var(--text-color);
}
.mw-mmv-options-dialog-header,
.mw-mmv-options-text-header,
.mw-mmv-options-text-body,
.mw-mmv-options-enable-alert,
.mw-mmv-options-dialog .mw-mmv-disable-confirmation .mw-mmv-options-dialog-header,
.mw-mmv-options-dialog .mw-mmv-disable-confirmation .mw-mmv-options-text-header {
color: var(--text-color);
}
.mw-revslider-container {
border-color: var(--sidebar);
}
.mw-revslider-slider-wrapper {
border-top-color: var(--sidebar);
}
.mw-ui-button {
background-color: var(--ooui-normal);
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
}
.mw-ui-button:not(:disabled):hover,
.mw-ui-button:not(:disabled):active {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
}
.mw-ui-button:not(:disabled):focus {
color: var(--ooui-text);
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent), inset 0 0 0 2px #fff;
}
.mw-ui-button:not(:disabled):visited {
color: var(--ooui-text);
}
.mw-ui-button.mw-ui-progressive:not(:disabled) {
background-color: var(--ooui-progressive);
color: #fff;
border-color: var(--ooui-progressive);
}
.mw-ui-button.mw-ui-progressive:not(:disabled):hover {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
}
.mw-ui-button.mw-ui-progressive:not(:disabled):focus {
box-shadow: inset 0 0 0 1px var(--ooui-accent), inset 0 0 0 2px #fff;
}
.mw-ui-button.mw-ui-progressive:not(:disabled):active,
.mw-ui-button.mw-ui-progressive:not(:disabled).is-on {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
box-shadow: none;
}
.mw-ui-button.mw-ui-destructive:not( :disabled ) {
color: #fff;
}
.mw-ui-button.mw-ui-quiet,
.mw-ui-button.mw-ui-quiet.mw-ui-progressive,
.mw-ui-button.mw-ui-quiet.mw-ui-destructive {
color: var(--text-color);
}
input[type='checkbox']:hover + .mw-ui-button.mw-ui-quiet,
input[type='checkbox']:hover + .mw-ui-button.mw-ui-quiet.mw-ui-progressive,
input[type='checkbox']:hover + .mw-ui-button.mw-ui-quiet.mw-ui-destructive,
.mw-ui-button.mw-ui-quiet:hover,
.mw-ui-button.mw-ui-quiet.mw-ui-progressive:hover,
.mw-ui-button.mw-ui-quiet.mw-ui-destructive:hover {
background-color: rgba(0, 24, 73, 0.02745098);
color: var(--text-color);
border-color: transparent;
}
input[type='checkbox']:focus + .mw-ui-button.mw-ui-quiet,
input[type='checkbox']:focus + .mw-ui-button.mw-ui-quiet.mw-ui-progressive,
input[type='checkbox']:focus + .mw-ui-button.mw-ui-quiet.mw-ui-destructive,
.mw-ui-button.mw-ui-quiet:focus,
.mw-ui-button.mw-ui-quiet.mw-ui-progressive:focus,
.mw-ui-button.mw-ui-quiet.mw-ui-destructive:focus {
color: var(--text-color);
}
input[type='checkbox']:active + .mw-ui-button.mw-ui-quiet,
input[type='checkbox']:active + .mw-ui-button.mw-ui-quiet.mw-ui-progressive,
input[type='checkbox']:active + .mw-ui-button.mw-ui-quiet.mw-ui-destructive,
.mw-ui-button.mw-ui-quiet:active,
.mw-ui-button.mw-ui-quiet.mw-ui-progressive:active,
.mw-ui-button.mw-ui-quiet.mw-ui-destructive:active {
background-color: rgba(0, 36, 73, 0.08235294);
color: var(--text-color);
border-color: #72777d;
}
.mw-ui-input {
background-color: var(--ooui-input);
color: var(--text-color);
border-color: var(--ooui-input-border);
}
.mw-ui-input:hover {
border-color: var(--ooui-input-border--hover);
}
.mw-ui-input::placeholder {
color: var(--byline-color);
}
.mw-content-ltr .redirectText li:first-child {
padding: 0;
background: 0;
}
.mw-content-ltr .redirectText li:first-child::before {
content: '';
background: currentcolor;
-webkit-mask: url("filepath://Redirect-arrow.svg") no-repeat 50% 50% / contain;
mask: url("filepath://Redirect-arrow.svg") no-repeat 50% 50% / contain;
display: inline-block;
width: 47px;
height: 20px;
}
.vector-search-box-inner {
background: var(--body-main) !important;
box-shadow: inset 0 -7px 7px -7px rgba(0, 0, 0, 0.15) !important;
}
.vector-menu-dropdown .vector-menu-heading {
color: var(--vector-tab-link-color) !important;
}
.vector-menu-dropdown .vector-menu-heading:hover {
color: var(--vector-tab-link-color) !important;
}
.vector-menu-dropdown .vector-menu-heading:focus {
color: var(--vector-tab-link-color) !important;
}
:root {
--wikitable-header-bg: var(--body-dark);
--wikitable-border: var(--body-border);
--wikitable-bg: var(--body-light);
--wikitable-bg-lighter: #e9e3d6;
--wikitable-color: var(--text-color);
--table-na-background: rgba(255, 255, 255, 0.3);
--table-na-color: var(--subtle-color);
--table-yes-background: #c3e8a3;
--table-yes-color: #2e5e05;
--table-no-background: #fbc0ba;
--table-no-color: #801c13;
--table-maybe-background: #fcea94;
--table-maybe-color: #786300;
}
.wikitable {
background: var(--wikitable-bg);
color: var(--wikitable-color);
border-color: var(--wikitable-border);
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
}
.wikitable > tr > th,
.wikitable > tr > td,
.wikitable > * > tr > th,
.wikitable > * > tr > td {
border-color: var(--wikitable-border);
}
.wikitable > tr > th.table-noborder,
.wikitable > tr > td.table-noborder,
.wikitable > * > tr > th.table-noborder,
.wikitable > * > tr > td.table-noborder {
border-left-style: hidden;
border-right-style: hidden;
padding-left: 0;
padding-right: 0;
}
.wikitable > tr > th,
.wikitable > * > tr > th {
background-color: var(--wikitable-header-bg);
color: #fff;
}
.wikitable > tr > th a,
.wikitable > * > tr > th a {
color: var(--table-link-color);
}
.tabber .wikitable {
box-shadow: none;
}
.mw_metadata td,
.mw_metadata th {
border-color: var(--wikitable-border);
}
.mw_metadata th {
background-color: var(--wikitable-header-bg);
}
.mw_metadata td {
background-color: var(--wikitable-bg);
}
.mw-datatable {
border-color: var(--wikitable-border);
}
.mw-datatable td,
.mw-datatable th {
border-color: var(--wikitable-border);
}
.mw-datatable th {
background-color: var(--wikitable-header-bg);
}
.mw-datatable th a {
color: var(--table-link-color);
}
.mw-datatable td {
background-color: var(--wikitable-bg);
}
.mw-datatable tr:hover td {
background-color: var(--wikitable-bg);
}
table.alternating-rows tr:nth-child(odd),
table.alternating-cols td:nth-child(odd) {
background: var(--wikitable-alternating-bg);
}
.table-na {
background: var(--table-na-background);
color: var(--table-na-color);
vertical-align: middle;
text-align: center;
}
.table-yes {
background: var(--table-yes-background);
color: var(--table-yes-color);
}
.table-positive {
background: var(--table-yes-background);
}
.table-no {
background: var(--table-no-background);
color: var(--table-no-color);
}
.table-negative {
background: var(--table-no-background);
}
.table-maybe {
background: var(--table-maybe-background);
color: var(--table-maybe-color);
}
#mw-allmessagestable .am_actual,
#mw-allmessagestable .am_default {
background-color: var(--wikitable-bg);
}
#mw-allmessagestable .am_default:hover,
#mw-allmessagestable .am_actual:hover,
#mw-allmessagestable tbody:hover td {
background-color: var(--wikitable-bg-lighter);
}
table.wikitable td.no-cell-spacing {
padding: 0;
height: 0;
}
table.wikitable td.no-cell-spacing table {
margin: -1px;
width: calc(100% + 2px);
height: calc(100% + 2px);
}
.plainlist ol,
.plainlist ul {
margin: 0;
}
.plainlist li {
margin-bottom: 0;
list-style: none;
}
table.align-right-1 td:nth-of-type(1),
table.align-right-2 td:nth-of-type(2),
table.align-right-3 td:nth-of-type(3),
table.align-right-4 td:nth-of-type(4),
table.align-right-5 td:nth-of-type(5),
table.align-right-6 td:nth-of-type(6),
table.align-right-7 td:nth-of-type(7),
table.align-right-8 td:nth-of-type(8),
table.align-right-9 td:nth-of-type(9),
table.align-right-10 td:nth-of-type(10),
table.align-right-11 td:nth-of-type(11),
table.align-right-12 td:nth-of-type(12),
table.align-right-13 td:nth-of-type(13),
table.align-right-14 td:nth-of-type(14),
table.align-right-15 td:nth-of-type(15),
table.align-right-16 td:nth-of-type(16),
table.align-right-17 td:nth-of-type(17),
table.align-right-18 td:nth-of-type(18),
table.align-right-19 td:nth-of-type(19),
table.align-right-20 td:nth-of-type(20) {
text-align: right;
}
table.align-center-1 td:nth-of-type(1),
table.align-center-2 td:nth-of-type(2),
table.align-center-3 td:nth-of-type(3),
table.align-center-4 td:nth-of-type(4),
table.align-center-5 td:nth-of-type(5),
table.align-center-6 td:nth-of-type(6),
table.align-center-7 td:nth-of-type(7),
table.align-center-8 td:nth-of-type(8),
table.align-center-9 td:nth-of-type(9),
table.align-center-10 td:nth-of-type(10),
table.align-center-11 td:nth-of-type(11),
table.align-center-12 td:nth-of-type(12),
table.align-center-13 td:nth-of-type(13),
table.align-center-14 td:nth-of-type(14),
table.align-center-15 td:nth-of-type(15),
table.align-center-16 td:nth-of-type(16),
table.align-center-17 td:nth-of-type(17),
table.align-center-18 td:nth-of-type(18),
table.align-center-19 td:nth-of-type(19),
table.align-center-20 td:nth-of-type(20) {
text-align: center;
}
table.align-left-1 td:nth-of-type(1),
table.align-left-2 td:nth-of-type(2),
table.align-left-3 td:nth-of-type(3),
table.align-left-4 td:nth-of-type(4),
table.align-left-5 td:nth-of-type(5),
table.align-left-6 td:nth-of-type(6),
table.align-left-7 td:nth-of-type(7),
table.align-left-8 td:nth-of-type(8),
table.align-left-9 td:nth-of-type(9),
table.align-left-10 td:nth-of-type(10),
table.align-left-11 td:nth-of-type(11),
table.align-left-12 td:nth-of-type(12),
table.align-left-13 td:nth-of-type(13),
table.align-left-14 td:nth-of-type(14),
table.align-left-15 td:nth-of-type(15),
table.align-left-16 td:nth-of-type(16),
table.align-left-17 td:nth-of-type(17),
table.align-left-18 td:nth-of-type(18),
table.align-left-19 td:nth-of-type(19),
table.align-left-20 td:nth-of-type(20) {
text-align: left;
}
:root {
--diff-addedline-border-color: #438ab5;
--diff-addedline-background: #bddff2;
--diff-addedline-color: #000;
--diff-deletedline-border-color: #379541;
--diff-deletedline-background: #c1edbf;
--diff-deletedline-color: #000;
--diff-context-border-color: var(--body-mid);
--diff-context-background: var(--body-mid);
}
.diff-context {
border-color: var(--diff-context-border-color);
background: var(--diff-context-background);
color: inherit;
}
.diff-addedline {
border-color: var(--diff-addedline-border-color);
}
.diff-addedline .diffchange {
background: var(--diff-addedline-background);
color: var(--diff-addedline-color);
}
.diff-deletedline {
border-color: var(--diff-deletedline-border-color);
}
.diff-deletedline .diffchange {
background: var(--diff-deletedline-background);
color: var(--diff-deletedline-color);
}
.mw-diff-movedpara-left:after,
.mw-diff-movedpara-right:after {
color: var(--text-color);
}
.mw-notification {
background-color: var(--body-light);
border-color: var(--body-border);
color: var(--text-color);
}
.mw-echo-ui-notificationsInboxWidget-toolbarWrapper {
background: var(--body-main);
}
.mw-body-content .mw-echo-ui-datedSubGroupListWidget-title-secondary {
color: var(--byline-color);
}
.mw-echo-ui-pageNotificationsOptionWidget.oo-ui-optionWidget-selected {
background-color: var(--ooui-normal);
color: var(--ooui-accent);
}
.mw-echo-ui-pageNotificationsOptionWidget-label-count {
background-color: var(--ooui-normal);
color: var(--byline-color);
}
.oo-ui-optionWidget-selected .mw-echo-ui-pageNotificationsOptionWidget-label-count {
color: var(--ooui-accent);
}
.mw-echo-ui-pageNotificationsOptionWidget.oo-ui-optionWidget-highlighted {
background-color: var(--ooui-normal);
color: var(--text-color);
}
.mw-echo-ui-crossWikiUnreadFilterWidget {
border-color: var(--body-border);
}
.mw-echo-ui-crossWikiUnreadFilterWidget-subtitle {
color: var(--byline-color);
}
.mw-echo-ui-notificationBadgeButtonPopupWidget-popup > .oo-ui-popupWidget-popup > .oo-ui-popupWidget-head,
.mw-echo-ui-notificationBadgeButtonPopupWidget-popup > .oo-ui-popupWidget-popup > .oo-ui-popupWidget-footer {
border-color: var(--ooui-interface-border);
}
.mw-echo-ui-notificationBadgeButtonPopupWidget-popup > .oo-ui-popupWidget-popup > .oo-ui-popupWidget-footer .mw-echo-ui-notificationBadgeButtonPopupWidget-footer-buttons .oo-ui-buttonElement:last-child {
border-left-color: var(--ooui-normal-border);
}
.mw-echo-ui-notificationItemWidget {
background-color: var(--ooui-normal);
border-color: var(--ooui-normal-border);
}
.mw-echo-ui-notificationItemWidget:hover,
.mw-echo-ui-notificationItemWidget-unread:hover {
background-color: var(--ooui-normal--hover);
}
.mw-echo-ui-notificationItemWidget:last-child {
border-bottom-color: var(--ooui-normal-border);
}
.mw-echo-ui-notificationItemWidget-unread {
background-color: var(--search-box);
}
.mw-echo-ui-crossWikiNotificationItemWidget-group,
.mw-echo-ui-bundleNotificationItemWidget-group {
background-color: var(--ooui-interface);
}
.mw-echo-ui-toggleReadCircleButtonWidget-circle {
background-color: var(--ooui-progressive);
}
.mw-echo-ui-toggleReadCircleButtonWidget:hover .mw-echo-ui-toggleReadCircleButtonWidget-circle {
background-color: var(--ooui-progressive--hover);
}
.mw-echo-ui-toggleReadCircleButtonWidget-circle-unread {
background-color: var(--ooui-normal);
border-color: var(--ooui-normal-border);
}
.mw-echo-ui-notificationItemWidget-content-message-header,
.mw-echo-ui-notificationItemWidget-content-message-body,
.mw-echo-ui-menuItemWidget > .oo-ui-buttonElement-button > .oo-ui-labelElement-label,
.mw-echo-ui-notificationItemWidget-content-actions-timestamp {
color: var(--ooui-text);
}
.mw-echo-ui-bundleNotificationItemWidget-group {
background-color: var(--body-main);
}
@keyframes unseen-fadeout-to-unread {
from {
background-color: var(--wikitable-bg-lighter);
}
to {
background-color: var(--search-box);
}
}
@keyframes unseen-fadeout-to-read {
from {
background-color: var(--wikitable-bg-lighter);
}
to {
background-color: var(--body-main);
}
}
.mwe-popups {
background: var(--body-light);
}
.mwe-popups .mwe-popups-container {
color: var(--text-color);
background: var(--body-light);
}
.mwe-popups .mwe-popups-container.flipped-x-y:before,
.mwe-popups .mwe-popups-container.flipped-y:before {
border-top: none;
}
.mwe-popups .mwe-popups-container.mwe-popups-no-image-tri:before {
border-bottom: none;
}
.mwe-popups .mwe-popups-container.flipped-x-y:after,
.mwe-popups .mwe-popups-container.flipped-y:after {
border-top-color: var(--body-light);
}
.mwe-popups .mwe-popups-container.mwe-popups-no-image-tri:after {
border-bottom-color: var(--body-light);
}
.mwe-popups .mwe-popups-settings-icon:hover,
.mwe-popups .mwe-popups-settings-icon:active {
background-color: var(--ooui-normal--hover);
}
.mwe-popups .mw-ui-icon-element:not(.disabled):hover {
background: none;
}
.mwe-popups .mwe-popups-extract {
color: var(--text-color);
}
.mwe-popups .mwe-popups-extract[dir='ltr']:after {
background-image: linear-gradient(to right, rgba(49, 62, 89, 0), var(--body-light) 50%);
}
.mwe-popups-overlay {
background-color: var(--ooui-window-background);
}
#mwe-popups-settings {
background: var(--ooui-interface);
border-color: var(--ooui-interface-border);
color: var(--text-color);
}
#mwe-popups-settings header {
border-color: var(--ooui-interface-border);
}
#mwe-popups-settings main#mwe-popups-settings-form p {
color: var(--byline-color);
}
#mwe-popups-settings main#mwe-popups-settings-form form label > span {
color: var(--ooui-text);
}
:root {
--smw-ask-options-even-bg: var(--body-mid);
--smw-ask-options-odd-bg: var(--body-light);
--smw-ask-action-btn-lblue-bg: var(--body-main);
--smw-ask-action-btn-lblue-color: #000;
--smw-ask-action-btn-lblue-border-color: var(--body-light);
--smw-ask-action-btn-dblue-bg: var(--body-light);
--smw-ask-action-btn-dblue-color: #fff;
--smw-ask-action-btn-dblue-border-color: var(--button-border);
}
.smw-ask-condition fieldset,
.smw-ask-printhead fieldset {
border-color: var(--sidebar);
}
.smw-ask-search fieldset,
.smw-ask-format fieldset,
.smw-ask-options fieldset {
border-color: var(--sidebar);
}
.strike > span:before,
.strike > span:after {
background: var(--sidebar);
}
.smw-ask-options-fields tr td {
background-color: var(--smw-ask-options-even-bg);
}
.smw-ask-options-fields tr:nth-child(odd) td {
background-color: var(--smw-ask-options-odd-bg);
}
.smw-ask-action-btn.smw-ask-action-btn-lblue,
.smw-ask-action-btn.smw-ask-action-btn-lblue:hover,
.smw-ask-action-btn.smw-ask-action-btn-lblue:visited {
background-color: var(--smw-ask-action-btn-lblue-bg);
color: var(--smw-ask-action-btn-lblue-color);
border-color: var(--smw-ask-action-btn-lblue-border-color);
}
.smw-ask-action-btn.smw-ask-action-btn-dblue,
.smw-ask-action-btn.smw-ask-action-btn-dblue:hover,
.smw-ask-action-btn.smw-ask-action-btn-dblue:visited {
background-color: var(--smw-ask-action-btn-dblue-bg);
color: var(--smw-ask-action-btn-dblue-color);
border-color: var(--smw-ask-action-btn-dblue-border-color);
}
.smw-ask-query textarea,
.smw-ask-actions textarea {
background-color: var(--ooui-interface);
border-color: var(--ooui-interface-border);
color: var(--ooui-text);
}
.smw-ask-query-format select {
background-color: var(--ooui-interface);
border: 1px solid var(--ooui-interface-border);
color: var(--ooui-text);
}
.smw-ask-toplinks {
background-color: var(--body-mid);
}
.smw-ask-toplinks span.smw-icon-info {
background: none;
padding: 0 !important;
}
.smw-ask-toplinks span.smw-icon-info::before {
content: '';
background: var(--text-color);
-webkit-mask: url("data:image/svg+xml,%3C%3Fxml version='1.0' encoding='UTF-8'%3F%3E%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 20 20'%3E%3Ctitle%3Einfo%3C/title%3E%3Cpath d='M10 0C4.477 0 0 4.477 0 10s4.477 10 10 10 10-4.477 10-10S15.523 0 10 0zM9 5h2v2H9zm0 4h2v6H9z'/%3E%3C/svg%3E") no-repeat 50% 50% / contain;
mask: url("data:image/svg+xml,%3C%3Fxml version='1.0' encoding='UTF-8'%3F%3E%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 20 20'%3E%3Ctitle%3Einfo%3C/title%3E%3Cpath d='M10 0C4.477 0 0 4.477 0 10s4.477 10 10 10 10-4.477 10-10S15.523 0 10 0zM9 5h2v2H9zm0 4h2v6H9z'/%3E%3C/svg%3E") no-repeat 50% 50% / contain;
padding: 0 0 3px 18px;
}
.smw-ask-options-row-odd {
background-color: var(--body-light);
}
.smw-ask-options-row-even {
background-color: var(--body-mid);
}
#options-toggle:not(:checked) + #options-list .options-parameter-list:after {
background-image: linear-gradient(to bottom, transparent, var(--body-mid) 90%);
}
.smw-ask-button-submit input {
background-color: var(--ooui-normal);
border-color: var(--ooui-normal-border);
color: var(--text-color);
}
.smw-ask-button-submit input:hover,
.smw-ask-button-lgrey:hover {
background-color: var(--ooui-normal--hover);
border-color: var(--ooui-normal-border);
}
input.smw-ask-action-btn.smw-ask-action-btn-dblue {
background-color: var(--ooui-normal);
border-color: var(--ooui-normal-border);
color: var(--ooui-text);
}
a.smw-ask-action-btn.smw-ask-action-btn-lblue {
background-color: var(--body-mid);
border-color: var(--body-mid);
color: var(--ooui-text);
}
a.smw-ask-action-btn.smw-ask-action-btn-lblue:visited {
background-color: var(--body-mid);
border-color: var(--body-mid);
color: var(--ooui-text);
}
a.smw-ask-action-btn.smw-ask-action-btn-lblue:hover {
background-color: var(--body-mid);
border-color: var(--body-mid);
color: var(--ooui-text);
}
a.smw-ask-action-btn-lgrey {
background-color: var(--ooui-normal);
border-color: var(--ooui-normal-border);
color: var(--ooui-text);
}
a.smw-ask-action-btn-lgrey:hover {
background-color: var(--ooui-normal--hover);
border-color: var(--ooui-normal-border);
color: var(--ooui-text);
}
.smw-callout-error {
background-color: var(--errorbox-bg);
border-color: var(--errorbox-border);
}
.smw-callout-info {
background-color: var(--body-light);
border-color: var(--body-dark);
}
.smw-callout-success {
background-color: var(--successbox-bg);
border-color: var(--successbox-border);
}
.smw-callout-warning {
background-color: var(--warningbox-bg);
border-color: var(--warningbox-bg);
}
.smw-tabs input.nav-tab:checked + label.nav-label,
.smw-tabs input.nav-tab:checked + label.nav-label:hover {
color: inherit;
}
#tab-smw-property-value:checked + label.nav-label .usage-count {
color: #fff;
background-color: var(--ooui-progressive);
}
#tab-smw-property-value:checked + label.nav-label .usage-count.moderate {
color: #fff;
background-color: #b55e0c;
border-color: #b55e0c;
}
#tab-smw-property-value:checked + label.nav-label .usage-count.high {
color: #fff;
background-color: #9f261e;
border-color: #9f261e;
}
.smw-property-page-results .header-title {
background-color: var(--ooui-interface);
border-bottom-color: var(--ooui-interface-border);
color: var(--ooui-text);
}
.smw-property-page-results .value-row:hover {
background-color: var(--ooui-normal--hover);
}
.smw-property-page-results .smw-table .header-row {
color: var(--text-color);
}
.tippy-tooltip.light-border-theme {
background-color: var(--body-light);
color: var(--text-color);
}
.tippy-tooltip.light-border-theme .tippy-arrow {
border-top-color: var(--body-light);
}
.tippy-tooltip.light-border-theme .tippy-arrow:after {
border-top-color: var(--body-light);
}
.tippy-header {
background-color: var(--body-dark);
border-bottom-color: var(--body-mid);
}
.smw-ui-input-filter {
background-color: var(--ooui-interface);
border-color: var(--ooui-interface-border);
color: var(--ooui-text);
}
.smw-ui-input-filter input {
border-left-color: var(--ooui-interface-border) !important;
color: var(--ooui-text) !important;
}
.smw-ui-pagination .page-link.link-disabled {
background-color: var(--ooui-disabled);
border-color: var(--ooui-disabled-border);
color: var(--subtle-color);
}
.smw-ui-pagination .page-link {
background-color: var(--ooui-normal);
border-color: var(--ooui-normal-border);
color: var(--link-color);
}
.smw-ui-pagination .page-link:hover {
background-color: var(--ooui-normal--hover);
border-color: var(--ooui-normal-border);
color: var(--link-color);
}
.smw-ui-pagination .page-link.link-active {
color: #fff;
background-color: var(--ooui-progressive);
border-color: var(--ooui-progressive);
}
.smw-tabs input.nav-tab:checked + label.nav-label {
border-color: var(--ooui-normal-border);
}
.smw-tabs section,
.smw-tabs .subtab-content {
border-top-color: var(--ooui-normal-border);
}
.smw-column-header {
color: var(--text-color);
}
.smw-factbox {
background: var(--body-main);
border-color: transparent;
}
.mw-body .mw-indicators #mw-indicator-smw-entity-examiner.mw-indicator .smw-indicator-vertical-bar-loader {
display: none;
}
.smwb-theme-light .smwb-title,
.smwb-theme-light .smwb-center,
.smwb-theme-light .smwb-actions,
.smwb-theme-light .smwb-prophead {
background-color: var(--body-mid);
}
.smwb-theme-light .smwb-factbox {
border-left-color: var(--body-mid);
}
.smwb-theme-light .smwb-ifactbox {
border-right-color: var(--body-mid);
}
.smwb-theme-light .smwb-propval {
background-color: var(--body-light);
}
.smwb-action-separator {
border-color: var(--wikitable-border);
}
.smwb-bottom {
border-bottom: 1px solid var(--wikitable-border);
}
.smwb-ifactbox .smwb-cell,
.smwb-factbox .smwb-cell {
border-top: 1px solid var(--wikitable-border);
}
.smwb-propvalue .smwb-prophead,
.smwb-ipropvalue .smwb-prophead,
.smwb-propvalue .smwb-propval,
.smwb-ipropvalue .smwb-propval {
font-size: 0.9em;
}
:root {
--filter-black-to-link: invert(36%) sepia(58%) saturate(433%) hue-rotate(344deg) brightness(100%) contrast(91%);
}
#bodyContent span.smwbrowse a {
color: black;
background-image: url('filepath://Smwbrowse.svg');
filter: var(--filter-black-to-link);
}
#bodyContent span.smwbrowse a:hover {
color: black;
background-image: url('filepath://Smwbrowse-hover.svg');
text-decoration: underline;
}
#bodyContent span.smwsearch a {
color: black;
filter: var(--filter-black-to-link);
background-image: url('filepath://Smwsearch.svg');
}
#bodyContent span.smwsearch a:hover {
color: black;
background-image: url('filepath://Smwsearch-hover.svg');
text-decoration: underline;
}
:root {
--tabber-tab-bg: var(--body-light);
--tabber-tab-border-color: var(--body-border);
--tabber-active-tab-bg: var(--body-light);
--tabber-active-tab-color: var(--text-color);
--tabber-active-tab-hover-bg: var(--body-light);
--tabber-active-tab-hover-border-color: var(--body-border);
--tabber-active-tab-hover-color: var(--text-color);
--tabber-active-tab-border-hider-color: var(--body-light);
--tabber-inactive-tab-bg: var(--body-background-color);
--tabber-inactive-tab-border-color: var(--body-border);
--tabber-inactive-tab-color: var(--text-color);
--tabber-inactive-tab-hover-bg: var(--body-light);
--tabber-inactive-tab-hover-border-color: var(--body-border);
}
.tabber {
margin: 1em 0;
}
.tabber .tabbertab {
background-color: var(--tabber-tab-bg);
border: 1px solid var(--tabber-tab-border-color);
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
padding: 1em 1.5em;
}
ul.tabbernav {
border: none;
margin-left: 2em;
margin-bottom: 0;
margin-right: 2em;
padding: 0;
font-family: inherit;
}
ul.tabbernav li.tabberactive > a {
background-color: var(--tabber-active-tab-bg);
color: var(--tabber-active-tab-color);
border-bottom: none;
position: relative;
}
ul.tabbernav li.tabberactive > a:hover {
color: var(--tabber-active-tab-hover-color);
background-color: var(--tabber-active-tab-hover-bg);
border-color: var(--tabber-active-tab-hover-border-color);
border-bottom: none;
}
ul.tabbernav li.tabberactive > a::after {
content: '';
position: absolute;
left: 0;
right: 0;
bottom: -1px;
border-bottom: 2px solid var(--tabber-active-tab-border-hider-color);
}
ul.tabbernav li a {
background-color: var(--tabber-inactive-tab-bg);
border-bottom: transparent;
border-color: var(--tabber-inactive-tab-border-color);
color: var(--tabber-inactive-tab-color);
display: inline-block;
font-size: 110%;
padding: 0.5em 1em;
}
ul.tabbernav li a:hover {
background-color: var(--tabber-inactive-tab-hover-bg);
border-color: var(--tabber-inactive-tab-hover-border-color);
}
ul.tabbernav li a:link,
ul.tabbernav li a:visited {
color: var(--tabber-inactive-tab-color);
}
:root {
--ooui-text: var(--text-color);
--ooui-interface: var(--body-light);
--ooui-interface-border: var(--body-border);
--ooui-window-background: rgba(255, 255, 255, 0.5);
--ooui-normal: #cdb3a6;
--ooui-normal--hover: #d8c4ba;
--ooui-normal-border: #d1b9ad;
--ooui-progressive: #936243;
--ooui-progressive--hover: #b27a57;
--ooui-accent: var(--link-color);
--ooui-input: #fff;
--ooui-input-border: #d1b9ad;
--ooui-input-border--hover: #ae846f;
--ooui-disabled: #ece3de;
--ooui-disabled-border: #e3d5ce;
--ooui-disabled-text: var(--subtle-color);
--ooui-pending-background-image: repeating-linear-gradient(-45deg, var(--search-box), var(--search-box) 20px, var(--body-main) 20px, var(--body-main) 30px);
}
.oo-ui-widget {
color: var(--ooui-text);
}
.oo-ui-checkboxInputWidget [type='checkbox'] + span,
.oo-ui-radioInputWidget [type='radio'] + span {
background-color: var(--ooui-input);
border-color: var(--ooui-input-border);
}
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:checked + span,
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:indeterminate + span {
background-color: var(--ooui-progressive);
border-color: var(--ooui-progressive);
}
.oo-ui-radioInputWidget.oo-ui-widget-enabled [type='radio']:checked + span {
border-color: var(--ooui-progressive);
}
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:checked:hover + span,
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:indeterminate:hover + span {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
}
.oo-ui-radioInputWidget.oo-ui-widget-enabled [type='radio']:checked:hover + span {
border-color: var(--ooui-progressive--hover);
}
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:hover + span,
.oo-ui-radioInputWidget.oo-ui-widget-enabled [type='radio']:hover + span {
border-color: var(--ooui-accent);
}
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:focus + span {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:active + span,
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:checked:active + span,
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:indeterminate:active + span {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
box-shadow: inset 0 0 0 1px var(--ooui-progressive--hover);
}
.oo-ui-radioInputWidget.oo-ui-widget-enabled [type='radio']:active + span {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
}
.oo-ui-radioInputWidget.oo-ui-widget-enabled [type='radio']:checked:active + span {
border-color: var(--ooui-progressive--hover);
box-shadow: inset 0 0 0 1px var(--ooui-progressive--hover);
}
.oo-ui-radioInputWidget.oo-ui-widget-enabled [type='radio']:checked:active + span:before {
border-color: var(--ooui-progressive--hover);
}
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:checked:focus + span,
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:indeterminate:focus + span {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent), inset 0 0 0 2px #fff;
}
.oo-ui-checkboxInputWidget [type='checkbox']:disabled + span,
.oo-ui-radioInputWidget [type='radio']:disabled + span {
background-color: var(--ooui-disabled);
border-color: var(--ooui-disabled);
}
.oo-ui-dropdownWidget-handle {
border-color: var(--ooui-normal-border);
}
.oo-ui-dropdownWidget.oo-ui-widget-enabled .oo-ui-dropdownWidget-handle {
background-color: var(--ooui-normal);
color: var(--ooui-text);
}
.oo-ui-dropdownWidget.oo-ui-widget-enabled .oo-ui-dropdownWidget-handle:hover {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
}
.oo-ui-dropdownWidget.oo-ui-widget-enabled .oo-ui-dropdownWidget-handle:active {
color: var(--ooui-text);
}
.oo-ui-dropdownWidget.oo-ui-widget-enabled .oo-ui-dropdownWidget-handle:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-dropdownWidget.oo-ui-widget-enabled.oo-ui-dropdownWidget-open .oo-ui-dropdownWidget-handle {
background-color: var(--ooui-normal--hover);
}
.oo-ui-dropdownWidget.oo-ui-widget-disabled .oo-ui-dropdownWidget-handle {
color: var(--ooui-disabled-text);
text-shadow: none;
border-color: var(--ooui-disabled-border);
background-color: var(--ooui-disabled);
}
.oo-ui-dropdownInputWidget select {
border-color: var(--ooui-normal-border);
}
.oo-ui-dropdownInputWidget option {
background-color: var(--ooui-interface);
}
.oo-ui-dropdownInputWidget.oo-ui-widget-enabled {
background-color: var(--ooui-normal);
}
.oo-ui-dropdownInputWidget.oo-ui-widget-enabled:hover {
background-color: var(--ooui-normal--hover);
}
.oo-ui-dropdownInputWidget.oo-ui-widget-enabled select {
color: var(--ooui-text);
}
.oo-ui-dropdownInputWidget.oo-ui-widget-enabled select:hover,
.oo-ui-dropdownInputWidget.oo-ui-widget-enabled select:active {
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
}
.oo-ui-dropdownInputWidget.oo-ui-widget-enabled select:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-labelWidget.oo-ui-inline-help {
color: var(--byline-color);
}
.oo-ui-menuSelectWidget {
background-color: var(--ooui-interface);
border-color: var(--ooui-interface-border);
}
.oo-ui-menuSelectWidget-frameless {
box-shadow: inset 0 -1px 0 0 var(--ooui-normal-border);
}
.oo-ui-menuSectionOptionWidget {
color: var(--byline-color);
}
.oo-ui-menuOptionWidget.oo-ui-optionWidget-highlighted,
.oo-ui-menuOptionWidget.oo-ui-optionWidget-selected {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
}
.oo-ui-menuOptionWidget.oo-ui-optionWidget-selected.oo-ui-menuOptionWidget.oo-ui-optionWidget-highlighted,
.oo-ui-menuOptionWidget.oo-ui-optionWidget-pressed.oo-ui-menuOptionWidget.oo-ui-optionWidget-highlighted {
color: var(--ooui-accent);
}
.oo-ui-menuOptionWidget.oo-ui-widget-enabled.oo-ui-optionWidget {
color: var(--ooui-text);
}
.oo-ui-messageDialog-title {
color: inherit;
}
.oo-ui-messageWidget.oo-ui-messageWidget-block.oo-ui-flaggedElement-error {
background-color: var(--errorbox-bg);
border-color: var(--errorbox-border);
}
.oo-ui-messageWidget.oo-ui-messageWidget-block.oo-ui-flaggedElement-warning {
background-color: var(--warningbox-bg);
border-color: var(--warningbox-border);
}
.oo-ui-messageWidget.oo-ui-messageWidget-block.oo-ui-flaggedElement-success {
background-color: var(--successbox-bg);
border-color: var(--successbox-border);
}
.oo-ui-messageWidget.oo-ui-messageWidget-block.oo-ui-flaggedElement-notice {
background-color: var(--messagebox-info-background);
border-color: var(--messagebox-info-border);
}
.oo-ui-messageWidget.oo-ui-flaggedElement-error:not(.oo-ui-messageWidget-block),
.oo-ui-messageWidget.oo-ui-flaggedElement-success:not(.oo-ui-messageWidget-block) {
color: var(--ooui-text);
}
.oo-ui-optionWidget.oo-ui-widget-disabled {
color: var(--ooui-disabled-text);
}
.oo-ui-outlineControlsWidget {
background-color: var(--ooui-normal);
}
.oo-ui-outlineOptionWidget.oo-ui-optionWidget-highlighted {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
}
.oo-ui-popupWidget-popup {
background-color: var(--ooui-interface);
border-color: var(--ooui-interface-border);
}
.oo-ui-popupWidget-anchored-top .oo-ui-popupWidget-anchor:after {
border-bottom-color: var(--ooui-interface);
}
.oo-ui-popupWidget-anchored-top .oo-ui-popupWidget-anchor:before {
border-bottom-color: var(--ooui-interface-border);
}
.oo-ui-popupWidget-anchored-bottom .oo-ui-popupWidget-anchor:after {
border-top-color: var(--ooui-interface);
}
.oo-ui-popupWidget-anchored-bottom .oo-ui-popupWidget-anchor:before {
border-top-color: var(--ooui-interface-border);
}
.oo-ui-popupWidget-anchored-start .oo-ui-popupWidget-anchor:after {
border-right-color: var(--ooui-interface);
}
.oo-ui-popupWidget-anchored-start .oo-ui-popupWidget-anchor:before {
border-right-color: var(--ooui-interface-border);
}
.oo-ui-popupWidget-anchored-end .oo-ui-popupWidget-anchor:after {
border-left-color: var(--ooui-interface);
}
.oo-ui-popupWidget-anchored-end .oo-ui-popupWidget-anchor:before {
border-left-color: var(--ooui-interface-border);
}
.oo-ui-searchWidget-query {
border-bottom-color: var(--ooui-interface-border);
}
.oo-ui-selectFileWidget-dropTarget {
background-color: var(--ooui-interface);
border-color: var(--ooui-interface-border);
}
.oo-ui-selectFileWidget.oo-ui-widget-enabled.oo-ui-selectFileWidget-dropTarget {
background-color: var(--ooui-interface);
}
.oo-ui-selectFileWidget.oo-ui-widget-enabled.oo-ui-selectFileWidget-dropTarget:hover {
border-color: var(--ooui-input-border--hover);
}
.oo-ui-tabOptionWidget {
color: var(--ooui-text);
}
.oo-ui-tabSelectWidget-framed .oo-ui-tabOptionWidget.oo-ui-optionWidget-selected {
background-color: var(--body-dark);
color: var(--ooui-text);
}
.oo-ui-tabSelectWidget-framed .oo-ui-tabOptionWidget.oo-ui-optionWidget-selected .oo-ui-labelElement-label {
border-bottom-color: var(--body-border);
}
.oo-ui-tabSelectWidget-framed .oo-ui-tabOptionWidget.oo-ui-widget-enabled:hover,
.oo-ui-tabSelectWidget-framed .oo-ui-tabOptionWidget.oo-ui-widget-enabled:active {
background-color: var(--body-light);
color: var(--ooui-text);
}
.oo-ui-tabSelectWidget-framed .oo-ui-tabOptionWidget.oo-ui-widget-enabled.oo-ui-optionWidget-selected:hover {
background-color: var(--body-dark);
}
.oo-ui-tabSelectWidget-frameless .oo-ui-tabOptionWidget.oo-ui-optionWidget-selected {
color: var(--ooui-progressive);
box-shadow: inset 0 -2px 0 0 var(--ooui-progressive);
}
.oo-ui-tabSelectWidget-frameless .oo-ui-tabOptionWidget.oo-ui-optionWidget-selected:hover,
.oo-ui-tabSelectWidget-frameless .oo-ui-tabOptionWidget.oo-ui-optionWidget-selected:focus {
color: var(--ooui-progressive--hover);
box-shadow: inset 0 -2px 0 0 var(--ooui-progressive--hover);
}
.oo-ui-tabSelectWidget-framed {
background: none;
border-bottom: 1px solid var(--ooui-interface-border);
}
.oo-ui-tabSelectWidget-frameless {
box-shadow: inset 0 -1px 0 0 var(--ooui-interface-border);
}
.oo-ui-tabSelectWidget-mobile {
}
.oo-ui-tabSelectWidget-mobile.oo-ui-tabSelectWidget-framed:after {
background: var(--mobile-navbox-linear-gradient);
}
.oo-ui-tabSelectWidget-mobile.oo-ui-tabSelectWidget-frameless:after {
background: var(--mobile-navbox-linear-gradient);
}
.oo-ui-tagItemWidget {
border-color: var(--ooui-normal-border);
}
.oo-ui-tagItemWidget.oo-ui-widget-enabled {
color: var(--ooui-text);
}
.oo-ui-tagItemWidget.oo-ui-widget-enabled:hover {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
}
.oo-ui-tagItemWidget.oo-ui-widget-enabled:not( .oo-ui-tagItemWidget-fixed ) {
background-color: var(--ooui-normal);
}
.oo-ui-tagItemWidget.oo-ui-widget-enabled .oo-ui-buttonElement-button:hover {
background-color: var(--ooui-normal--hover);
}
.oo-ui-tagMultiselectWidget.oo-ui-widget-enabled {
background-color: var(--ooui-interface);
}
.oo-ui-tagMultiselectWidget.oo-ui-widget-enabled.oo-ui-tagMultiselectWidget-outlined {
background-color: var(--ooui-normal);
}
.oo-ui-tagMultiselectWidget.oo-ui-widget-enabled.oo-ui-tagMultiselectWidget-outlined .oo-ui-tagItemWidget.oo-ui-widget-enabled {
background-color: var(--ooui-interface);
}
.oo-ui-textInputWidget .oo-ui-inputWidget-input {
background-color: var(--ooui-input);
color: var(--ooui-text);
border-color: var(--ooui-input-border);
}
.oo-ui-textInputWidget.oo-ui-widget-enabled .oo-ui-inputWidget-input::placeholder {
color: var(--subtle-color);
}
.oo-ui-textInputWidget.oo-ui-widget-enabled .oo-ui-inputWidget-input:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-textInputWidget.oo-ui-widget-enabled .oo-ui-inputWidget-input[readonly]:not(.oo-ui-pendingElement-pending) {
background-color: var(--ooui-disabled);
color: var(--ooui-disabled-text);
}
.oo-ui-textInputWidget.oo-ui-widget-enabled:hover .oo-ui-inputWidget-input {
border-color: var(--ooui-input-border--hover);
}
.oo-ui-textInputWidget.oo-ui-widget-enabled:hover .oo-ui-inputWidget-input:focus {
border-color: var(--ooui-accent);
}
@media screen and (min-width: 0) {
.oo-ui-textInputWidget.oo-ui-widget-enabled textarea.oo-ui-inputWidget-input:focus {
outline: 1px solid var(--ooui-accent);
}
}
.oo-ui-textInputWidget.oo-ui-widget-disabled .oo-ui-inputWidget-input {
background-color: var(--ooui-disabled);
color: var(--ooui-disabled-text);
text-shadow: none;
border-color: var(--ooui-disabled-border);
}
.oo-ui-toggleSwitchWidget {
background-color: var(--ooui-input);
border-color: var(--ooui-input-border);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled .oo-ui-toggleSwitchWidget-grip {
background-color: var(--ooui-input);
border-color: var(--ooui-input-border);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:hover {
background-color: var(--ooui-input);
border-color: var(--ooui-accent);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:hover .oo-ui-toggleSwitchWidget-grip {
background-color: var(--ooui-input);
border-color: var(--ooui-accent);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:active,
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:active:hover,
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:active:focus {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
box-shadow: inset 0 0 0 1px var(--ooui-progressive--hover);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:active .oo-ui-toggleSwitchWidget-grip,
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:active:hover .oo-ui-toggleSwitchWidget-grip,
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:active:focus .oo-ui-toggleSwitchWidget-grip {
background-color: var(--ooui-input);
border-color: var(--ooui-input);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:focus .oo-ui-toggleSwitchWidget-grip {
border-color: var(--ooui-accent);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled.oo-ui-toggleWidget-on {
background-color: var(--ooui-progressive);
border-color: var(--ooui-progressive);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled.oo-ui-toggleWidget-on .oo-ui-toggleSwitchWidget-grip {
background-color: var(--ooui-input);
border-color: var(--ooui-input);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled.oo-ui-toggleWidget-on:hover {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled.oo-ui-toggleWidget-on:active,
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled.oo-ui-toggleWidget-on:active:hover {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled.oo-ui-toggleWidget-on:focus {
border-color: var(--ooui-progressive);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled.oo-ui-toggleWidget-on:focus::before {
border-color: #fff;
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-disabled {
background-color: var(--ooui-disabled);
border-color: var(--ooui-disabled);
}
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled > .oo-ui-buttonElement-button {
color: var(--ooui-text);
}
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled > .oo-ui-buttonElement-button:hover {
color: var(--ooui-text);
}
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled > .oo-ui-buttonElement-button:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled.oo-ui-buttonElement-pressed > input.oo-ui-buttonElement-button,
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled > .oo-ui-buttonElement-button:active {
color: var(--ooui-text);
}
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button,
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button:hover {
color: var(--ooui-text);
}
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button:active,
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive.oo-ui-buttonElement-pressed > .oo-ui-buttonElement-button {
color: var(--ooui-text);
border-color: var(--ooui-text);
}
.oo-ui-buttonElement-frameless.oo-ui-widget-disabled > .oo-ui-buttonElement-button {
color: var(--ooui-disabled-text);
}
.oo-ui-buttonElement-framed.oo-ui-widget-disabled > .oo-ui-buttonElement-button {
background-color: var(--ooui-disabled);
border-color: var(--ooui-disabled-border);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled > .oo-ui-buttonElement-button {
background-color: var(--ooui-normal);
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled > .oo-ui-buttonElement-button:hover {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled > .oo-ui-buttonElement-button:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-buttonElement-active > .oo-ui-buttonElement-button {
background-color: var(--ooui-progressive--hover);
color: #fff;
border-color: var(--ooui-progressive--hover);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-buttonElement-active > .oo-ui-buttonElement-button:focus {
border-color: var(--ooui-progressive--hover);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled > .oo-ui-buttonElement-button:active,
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-buttonElement-pressed > .oo-ui-buttonElement-button {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive {
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button {
color: var(--ooui-text);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button:hover {
background-color: var(--ooui-normal--hover);
border-color: var(--ooui-progressive--hover);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-destructive > .oo-ui-buttonElement-button {
color: var(--ooui-text);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-destructive > .oo-ui-buttonElement-button:hover {
background-color: var(--ooui-normal--hover);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button {
background-color: var(--ooui-progressive);
border-color: var(--ooui-progressive);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button:hover {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent), inset 0 0 0 2px #fff;
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button:active,
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive.oo-ui-buttonElement-pressed > .oo-ui-buttonElement-button,
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive.oo-ui-buttonElement-active > .oo-ui-buttonElement-button,
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive.oo-ui-popupToolGroup-active > .oo-ui-buttonElement-button {
color: #fff;
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
}
.oo-ui-pendingElement-pending {
background-image: var(--ooui-pending-background-image);
background-size: 200%;
animation: oo-ui-pendingElement-stripes 6s linear infinite;
}
@keyframes oo-ui-pendingElement-stripes {
100% {
background-position: 100%;
}
}
.oo-ui-messageDialog-content > .oo-ui-window-foot {
outline-color: var(--ooui-interface-border);
}
.oo-ui-messageDialog-message {
color: var(--ooui-text);
}
.oo-ui-messageDialog-actions-horizontal .oo-ui-actionWidget {
border-right-color: var(--ooui-interface-border);
}
.oo-ui-messageDialog-actions-vertical .oo-ui-actionWidget {
border-bottom-color: var(--ooui-interface-border);
}
.oo-ui-processDialog-content .oo-ui-window-head,
.oo-ui-processDialog-content .oo-ui-window-foot {
outline-color: var(--ooui-interface-border);
}
.oo-ui-processDialog .oo-ui-actionWidget > .oo-ui-buttonElement-button {
border-top-color: transparent;
border-bottom-color: transparent;
}
.oo-ui-processDialog .oo-ui-actionWidget > .oo-ui-buttonElement-button:hover,
.oo-ui-processDialog .oo-ui-actionWidget > .oo-ui-buttonElement-button:active {
border-top-color: transparent;
border-bottom-color: transparent;
}
.oo-ui-processDialog .oo-ui-actionWidget:not( .oo-ui-flaggedElement-progressive ):not( .oo-ui-flaggedElement-destructive ) > .oo-ui-buttonElement-button:hover,
.oo-ui-processDialog .oo-ui-actionWidget:not( .oo-ui-flaggedElement-progressive ):not( .oo-ui-flaggedElement-destructive ) > .oo-ui-buttonElement-button:active {
border-right-color: var(--ooui-interface-border);
border-left-color: transparent;
}
.oo-ui-processDialog .oo-ui-actionWidget:not( .oo-ui-flaggedElement-progressive ):not( .oo-ui-flaggedElement-destructive ) > .oo-ui-buttonElement-button:focus {
border-color: var(--ooui-accent);
}
.oo-ui-processDialog-actions-safe .oo-ui-actionWidget > .oo-ui-buttonElement-button,
.oo-ui-processDialog-actions-other .oo-ui-actionWidget > .oo-ui-buttonElement-button {
border-right-color: var(--ooui-normal-border);
border-left-color: transparent;
}
.oo-ui-processDialog-actions-safe .oo-ui-widget-enabled.oo-ui-iconElement:not( .oo-ui-labelElement ) > .oo-ui-buttonElement-button:hover {
background-color: var(--ooui-normal--hover);
border-right-color: var(--ooui-interface-border);
}
.oo-ui-windowManager-modal > .oo-ui-dialog {
background-color: var(--ooui-window-background);
}
.oo-ui-windowManager-modal > .oo-ui-dialog > .oo-ui-window-frame {
background-color: var(--ooui-interface);
}
.oo-ui-windowManager-modal.oo-ui-windowManager-floating > .oo-ui-dialog > .oo-ui-window-frame {
border-color: var(--ooui-interface-border);
}
.oo-ui-window {
color: var(--ooui-text);
}
.oo-ui-toolbar-bar {
background-color: var(--ooui-interface);
color: var(--ooui-text);
}
.oo-ui-toolbar-position-top > .oo-ui-toolbar-bar {
border-bottom-color: var(--body-mid);
}
.oo-ui-toolbar-bar .oo-ui-bookletLayout > .oo-ui-menuLayout-menu {
border-right-color: var(--body-mid);
}
.oo-ui-tool.oo-ui-widget-enabled > .oo-ui-tool-link:hover {
background-color: var(--ooui-normal--hover);
}
.oo-ui-tool.oo-ui-widget-enabled > .oo-ui-tool-link:focus {
outline: 1px solid var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-tool.oo-ui-widget-enabled > .oo-ui-tool-link:active,
.oo-ui-tool.oo-ui-widget-enabled.oo-ui-tool-active > .oo-ui-tool-link,
.oo-ui-tool.oo-ui-widget-enabled.oo-ui-popupToolGroup-active > .oo-ui-tool-link {
background-color: var(--ooui-normal--hover);
color: var(--ooui-accent);
box-shadow: none;
}
.oo-ui-tool.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive > .oo-ui-tool-link {
background-color: var(--ooui-progressive);
}
.oo-ui-tool.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive > .oo-ui-tool-link:hover {
background-color: var(--ooui-progressive--hover);
}
.oo-ui-tool.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive > .oo-ui-tool-link:focus {
box-shadow: inset 0 0 0 1px var(--ooui-accent), inset 0 0 0 2px #fff;
}
.oo-ui-tool.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive > .oo-ui-tool-link:active,
.oo-ui-tool.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive.oo-ui-tool-active > .oo-ui-tool-link {
background-color: var(--ooui-progressive--hover);
}
.oo-ui-listToolGroup-tools .oo-ui-tool.oo-ui-widget-enabled {
background-color: var(--ooui-normal);
}
.oo-ui-listToolGroup-tools .oo-ui-tool.oo-ui-widget-enabled:hover {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
}
.oo-ui-listToolGroup-tools .oo-ui-tool-active.oo-ui-widget-enabled .oo-ui-tool-link .oo-ui-tool-title {
color: var(--ooui-progressive);
}
.oo-ui-menuToolGroup {
border-left-color: var(--body-mid);
border-right-color: var(--body-mid);
}
.oo-ui-popupToolGroup-tools {
background-color: var(--ooui-interface);
border-color: var(--body-mid);
}
.oo-ui-popupToolGroup.oo-ui-widget-enabled > .oo-ui-popupToolGroup-handle:hover {
background-color: var(--ooui-normal--hover);
}
.oo-ui-popupToolGroup.oo-ui-widget-enabled > .oo-ui-popupToolGroup-handle:focus {
outline: 1px solid var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-toolbar-actions .oo-ui-popupToolGroup.oo-ui-widget-enabled > .oo-ui-popupToolGroup-handle:hover {
border-right-color: var(--ooui-normal--hover);
}
.oo-ui-popupToolGroup-tools .oo-ui-tool.oo-ui-widget-enabled .oo-ui-tool-link:focus {
box-shadow: inset 0 0 0 2px var(--ooui-accent);
}
.oo-ui-popupToolGroup-tools .oo-ui-tool-active.oo-ui-widget-enabled .oo-ui-tool-link .oo-ui-tool-title {
color: var(--ooui-progressive);
}
.oo-ui-popupToolGroup.oo-ui-popupToolGroup-active > .oo-ui-popupToolGroup-handle {
background-color: var(--ooui-normal);
color: var(--ooui-accent);
}
.oo-ui-popupToolGroup.oo-ui-popupToolGroup-active > .oo-ui-popupToolGroup-handle:hover {
background-color: var(--ooui-normal--hover);
color: var(--ooui-accent);
}
.oo-ui-bookletLayout-outlinePanel > .oo-ui-outlineControlsWidget {
border-top-color: var(--ooui-interface-border);
}
.oo-ui-bookletLayout > .oo-ui-menuLayout-menu {
border-right-color: var(--ooui-interface-border);
}
.oo-ui-fieldLayout-disabled > .oo-ui-fieldLayout-body > .oo-ui-fieldLayout-header > .oo-ui-labelElement-label {
color: var(--ooui-disabled-text);
}
.oo-ui-panelLayout-framed {
border-color: var(--sidebar);
}
.oo-ui-icon-settings {
background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' width='20' height='20' viewBox='0 0 20 20'%3E%3Ctitle%3Esettings%3C/title%3E%3Cg transform='translate(10 10)'%3E%3Cpath id='a' d='M1.5-10h-3l-1 6.5h5m0 7h-5l1 6.5h3'/%3E%3Cuse xlink:href='%23a' transform='rotate(45)'/%3E%3Cuse xlink:href='%23a' transform='rotate(90)'/%3E%3Cuse xlink:href='%23a' transform='rotate(135)'/%3E%3C/g%3E%3Cpath d='M10 2.5a7.5 7.5 0 0 0 0 15 7.5 7.5 0 0 0 0-15v4a3.5 3.5 0 0 1 0 7 3.5 3.5 0 0 1 0-7'/%3E%3C/svg%3E");
}
.oo-ui-icon-clear {
background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 20 20'%3E%3Ctitle%3Eclear%3C/title%3E%3Cpath d='M10 0a10 10 0 1 0 10 10A10 10 0 0 0 10 0zm5.66 14.24-1.41 1.41L10 11.41l-4.24 4.25-1.42-1.42L8.59 10 4.34 5.76l1.42-1.42L10 8.59l4.24-4.24 1.41 1.41L11.41 10z'/%3E%3C/svg%3E");
}
.mw-widget-dateInputWidget-handle {
background-color: var(--ooui-input);
color: var(--ooui-text);
border-color: var(--ooui-input-border);
}
.mw-widget-dateInputWidget-calendar {
background-color: var(--ooui-interface);
}
.mw-widget-dateInputWidget.oo-ui-widget-enabled .mw-widget-dateInputWidget-handle:hover {
border-color: var(--ooui-input-border--hover);
}
.mw-widget-calendarWidget {
border-color: var(--ooui-interface-border);
}
.mw-widget-calendarWidget:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.mw-widget-calendarWidget-day,
.mw-widget-calendarWidget-day-heading {
color: var(--ooui-text);
}
.mw-widget-calendarWidget-day-additional {
color: var(--ooui-text);
opacity: 0.67;
}
.mw-widget-calendarWidget-day-today {
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.mw-widget-calendarWidget-item:hover {
background-color: var(--ooui-progressive);
}
.mw-widget-calendarWidget-item-selected {
background-color: var(--ooui-progressive--hover);
}
.mw-widgets-datetime-calendarWidget {
background-color: var(--ooui-interface);
border-color: var(--ooui-interface-border);
}
.mw-widgets-datetime-calendarWidget:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent), 0 2px 2px 0 rgba(0, 0, 0, 0.25);
}
.mw-widgets-datetime-calendarWidget-grid .mw-widgets-datetime-calendarWidget-cell.mw-widgets-datetime-calendarWidget-extra .oo-ui-buttonElement-button .oo-ui-labelElement-label {
color: var(--subtle-color);
}
.mw-widgets-datetime-calendarWidget-grid .mw-widgets-datetime-calendarWidget-cell.mw-widgets-datetime-calendarWidget-selected .oo-ui-buttonElement-button {
background-color: var(--ooui-progressive--hover);
}
.mw-widgets-datetime-dateTimeInputWidget-handle {
background-color: var(--ooui-input);
color: var(--ooui-text);
border-color: var(--ooui-input-border);
}
.mw-widgets-datetime-dateTimeInputWidget.oo-ui-widget-enabled.mw-widgets-datetime-dateTimeInputWidget-handle:hover {
border-color: var(--ooui-input-border--hover);
}
.mw-widgets-datetime-dateTimeInputWidget.oo-ui-widget-enabled:hover input,
.mw-widgets-datetime-dateTimeInputWidget.oo-ui-widget-enabled:hover textarea {
border-color: var(--ooui-input-border--hover);
}
.mw-widgets-datetime-dateTimeInputWidget.oo-ui-widget-enabled .mw-widgets-datetime-dateTimeInputWidget-editField:hover {
background-color: var(--ooui-normal);
}
.ve-activated .ve-init-mw-desktopArticleTarget-originalContent #catlinks:hover {
background: var(--ooui-normal--hover);
}
.ve-ui-overlay {
font-family: inherit;
}
.oo-ui-toolbar-position-top .ve-ui-toolbarDialog-position-above {
border-top-color: var(--body-mid);
}
.ve-ce-branchNode-blockSlug,
.ve-ce-branchNode-newSlug {
outline-color: var(--body-border);
background-color: var(--ooui-interface);
}
.ve-ui-specialCharacterPage h3 {
color: var(--byline-color);
}
.ve-ui-specialCharacterPage-character {
border-color: var(--body-mid);
}
.ve-ui-specialCharacterPage-character:hover {
border-color: var(--body-dark);
}
.ve-ce-linkAnnotation.ve-ce-annotation-active {
box-shadow: 0 0 0 1px var(--body-mid);
background: none;
}
.ve-ui-desktopContext .ve-ui-linkContextItem .ve-ui-linkContextItem-label {
border-color: var(--body-border);
}
.ve-ui-mwHelpPopupTool-version-label,
.ve-ui-mwHelpPopupTool-version-link,
.ve-ui-mwHelpPopupTool-version-date {
color: var(--byline-color);
}
.ve-ce-tableCellableNode {
border-color: var(--body-mid);
}
.ve-ce-mwReferencesListNode-muted {
color: var(--byline-color);
}
.ve-ui-mwTemplatePage-description,
.ve-ui-mwParameterPage-label,
.ve-ui-mwParameterPage-description-required,
.ve-ui-mwParameterPage-description-deprecated {
color: var(--byline-color);
}
.mw-widget-titleWidget-menu .mw-widget-titleOptionWidget-description {
color: var(--byline-color);
}
.ve-ui-mwGalleryDialog-menuLayout > .oo-ui-menuLayout-menu,
.ve-ui-mwGalleryDialog-innerMenuLayout > .oo-ui-menuLayout-menu,
.ve-ui-mwGalleryDialog .ve-ui-mwGalleryDialog-image-container,
.ve-ui-targetWidget {
border-color: var(--body-border);
}
.ve-ui-targetWidget:not(.oo-ui-pendingElement-pending) {
background-color: var(--body-main);
}
.ve-ui-mwSaveDialog {
color: var(--ooui-text);
}
.ve-ui-mwSaveDialog-options {
background-color: var(--ooui-interface);
border-color: var(--body-border);
}
.ve-ui-mwSaveDialog-summary {
background-color: var(--ooui-input);
}
.ve-ui-mwSaveDialog-editSummary-count {
border-color: var(--body-border);
}
.ve-ui-mwSaveDialog-license {
color: var(--byline-color);
}
.ve-ui-mwReferenceContextItem-muted {
color: var(--byline-color);
}
.ve-ui-mwNoticesPopupTool-items > div:not(:first-child),
.ve-ui-mwHelpPopupTool-item:not(:first-child) {
border-color: var(--body-border);
}
.ve-ui-mwTransclusionOutlineControlsWidget {
background-color: var(--ooui-interface);
border-top-color: var(--body-border);
}
.ve-ui-mwTransclusionOutlineTemplateWidget-sticky {
background-color: var(--ooui-interface);
}
.ve-ui-mwTransclusionOutlineTemplateWidget .ve-ui-mwTransclusionOutlineParameterWidget.oo-ui-optionWidget-highlighted {
color: var(--ooui-text);
}
.ve-ui-mwTransclusionOutlineTemplateWidget-no-template-parameters {
color: var(--subtle-color);
}
.ve-ui-mwParameterPage-undocumentedLabel {
color: var(--subtle-color);
}
.ve-ui-mwTwoPaneTransclusionDialogLayout > .oo-ui-menuLayout-menu {
border-right: var(--body-border);
}
.ve-ui-mwParameterPage-doc-required,
.ve-ui-mwParameterPage-doc-deprecated,
.ve-ui-mwParameterPage-inlineDescription .ve-ui-mwParameterPage-doc-example {
color: var(--byline-color);
}
.ve-ui-expandableContent-toggle {
background-color: var(--ooui-interface);
}
.ve-ui-expandableContent-fade {
background: linear-gradient(to right, rgba(255, 255, 255, 0) 0, var(--ooui-interface) 90%);
}
.ve-ui-commandHelpDialog-shortcut > kbd,
.ve-ui-commandHelpDialog-sequence > kbd {
background-color: var(--keypress-background);
color: var(--keypress-color);
border-color: var(--keypress-border);
box-shadow: none;
text-shadow: none;
}
.ve-init-mw-desktopArticleTarget-toolbarPlaceholder-floating .ve-init-mw-desktopArticleTarget-toolbarPlaceholder-bar {
background: var(--ooui-interface);
}
.ve-init-mw-desktopArticleTarget-toolbarPlaceholder-bar {
border-bottom-color: var(--body-mid);
}
figure[typeof~='mw:File/Thumb'],
figure[typeof~='mw:File/Frame'],
figure[typeof~='mw:Image/Thumb'],
figure[typeof~='mw:Video/Thumb'],
figure[typeof~='mw:Image/Frame'],
figure[typeof~='mw:Video/Frame'] {
border: none;
background-color: var(--thumb-bg);
}
figure[typeof~='mw:File/Thumb'] > a:first-child > *:first-child:not( .mw-broken-media ),
figure[typeof~='mw:File/Frame'] > a:first-child > *:first-child:not( .mw-broken-media ),
figure[typeof~='mw:Image/Thumb'] > a:first-child > *:first-child:not( .mw-broken-media ),
figure[typeof~='mw:Video/Thumb'] > a:first-child > *:first-child:not( .mw-broken-media ),
figure[typeof~='mw:Image/Frame'] > a:first-child > *:first-child:not( .mw-broken-media ),
figure[typeof~='mw:Video/Frame'] > a:first-child > *:first-child:not( .mw-broken-media ) {
border: none;
background: var(--thumb-bg);
}
figure[typeof~='mw:File/Thumb'] > figcaption,
figure[typeof~='mw:File/Frame'] > figcaption,
figure[typeof~='mw:Image/Thumb'] > figcaption,
figure[typeof~='mw:Video/Thumb'] > figcaption,
figure[typeof~='mw:Image/Frame'] > figcaption,
figure[typeof~='mw:Video/Frame'] > figcaption {
border: none;
background-color: var(--thumb-caption-bg);
padding: 4px 6px;
}
:root {
--keypress-background: #eee;
--keypress-border: #ccc;
--keypress-color: #333;
}
.toc .toctitle > * {
color: #fff;
}
.toc .toctitle > * .toctogglelabel {
color: var(--table-header-link);
}
.navbox .navbox-title {
color: #fff;
}
.navbox .navbox-title a {
color: var(--table-header-link);
}
.archivelist {
background-color: var(--body-light);
border: solid 1px var(--body-border);
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
float: right;
margin: 5px;
padding: 5px;
text-align: center;
width: 120px;
}
.shortcut {
border: 1px solid var(--body-border);
background: var(--body-light);
float: right;
font-size: 0.8em;
margin: 0.5em 0em 0.5em 1em;
padding: 0.5em;
text-align: center;
}
.hatnote,
.seealso {
font-style: italic;
}
.hatnote i,
.seealso i {
font-style: normal;
}
div.hatnote,
div.seealso {
margin: 0.5em 1.6em;
}
div.hatnote + div.hatnote,
div.hatnote + div.seealso,
div.seealso + div.hatnote,
div.seealso + div.seealso {
margin-top: -0.5em;
}
.keypress {
background: var(--keypress-background);
color: var(--keypress-color);
font-family: inherit;
border: 1px solid var(--keypress-border);
border-radius: 2px;
font-size: 0.9em;
margin: 0 0.1em;
padding: 0.1em 0.4em;
white-space: nowrap;
}
.relative-location {
background: var(--body-light);
border: 1px solid var(--body-border);
border-spacing: 0;
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
text-align: center;
}
.relative-location-header {
background: var(--body-dark);
color: #fff;
font-weight: bold;
}
:root {
--documentation-background: #f9fafa;
--documentation-link-color: #e4eaee;
--documentation-headers-color: #fff;
--documentation-header-background: #949eaa;
--documentation-subheader-background: #808c9a;
--documentation-border: #e4eaee;
}
.documentation {
background: var(--documentation-background);
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
margin: 1em 0;
}
.documentation pre,
.documentation code {
background-color: var(--documentation-background);
border-color: var(--documentation-border);
}
.documentation h2,
.documentation hr {
border-color: var(--documentation-border);
}
.documentation-header {
color: var(--documentation-headers-color);
background: var(--documentation-header-background);
font-weight: bold;
padding: 1em 1.5em;
}
.documentation-title {
font-size: 1.25em;
}
.documentation-subheader {
color: var(--documentation-headers-color);
background: var(--documentation-subheader-background);
padding: 0.5em 1.5em;
}
.documentation-subheader a,
.documentation-subheader a:visited,
.documentation-subheader a:active {
color: var(--documentation-link-color);
}
.documentation-documentation,
.documentation-links {
font-size: 0.85em;
}
.documentation-content {
padding: 1em 1.5em;
}
.mw-templatedata-doc-params dl:not(:empty) {
column-count: 3;
border-top: 1px solid var(--body-border);
margin-bottom: 0.5em;
}
.mw-templatedata-doc-params dt::after {
content: ":";
}
.mw-templatedata-doc-params dd,
.mw-templatedata-doc-params dt {
margin: 0.1em 2em;
min-width: auto;
}
.mw-templatedata-doc-muted {
color: var(--subtle-color);
font-style: italic;
}
:root {
--infobox-text-color: var(--text-color);
--table-header: var(--body-dark);
--table-subheader: var(--body-mid);
--table-body: var(--body-light);
--table-border: var(--body-border);
}
.infobox {
font-size: 0.85em;
width: 300px;
border-collapse: collapse;
float: right;
table-layout: fixed;
margin: 0.5em 0 1em 1em;
}
.infobox .infobox-buttons {
display: flex;
flex-wrap: wrap;
justify-content: center;
grid-gap: 3px;
margin-bottom: 3px;
}
.infobox .infobox-buttons .button {
background: var(--table-subheader);
padding: 0 5px;
font-weight: bold;
flex: 1 1 20%;
max-width: 20%;
color: #fff;
}
.infobox .infobox-buttons .button.button-selected {
background: var(--table-header);
}
.infobox tbody {
border: 1px solid var(--table-border);
background: var(--table-body);
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(231, 215, 199, 0.5);
}
.infobox .infobox-header {
background: var(--table-header);
padding: 0.5em 0;
text-align: center;
color: #fff;
font-size: 1.15em;
font-weight: bold;
line-height: 1.4em;
}
.infobox .infobox-image {
text-align: center;
}
.infobox .infobox-subheader {
background: var(--table-subheader);
font-weight: bold;
text-align: center;
color: #fff;
}
.infobox .infobox-subheader a {
color: var(--link-color);
}
.infobox .infobox-padding {
backgound: var(--table-body);
}
.infobox tr td:not(.infobox-padding) {
padding: 0.2em 0.5em;
}
.infobox th:not(.infobox-header):not(.infobox-subheader):not(.infobox-nested) {
border-right: 2px solid var(--table-subheader);
text-align: right;
padding: 0.2em 0.5em;
}
.infobox select {
max-width: 300px;
}
.hidden {
display: none;
}
ol.references,
.reflist {
font-size: 90%;
}
.reflist {
list-style-type: decimal;
}
.reflist .references {
font-size: 100%;
list-style-type: inherit;
}
.reflist-lower-alpha {
list-style-type: lower-alpha;
}
ol.references li:target,
sup.reference:target {
background-color: var(--body-light);
}
.hideQuotes .refhide {
display: none;
}
:root {
--messagebox-obsolete-background: #cfcfcf;
--messagebox-obsolete-border: #464646;
--messagebox-obsolete-color: var(--text-color);
--messagebox-obsolete-link-color: #6c6c6c;
--messagebox-info-background: #ebebeb;
--messagebox-info-border: #898989;
--messagebox-info-color: var(--text-color);
--messagebox-info-link-color: #6c6c6c;
--messagebox-action-background: #c7e8fa;
--messagebox-action-border: #0b5884;
--messagebox-action-color: var(--text-color);
--messagebox-action-link-color: #03436b;
--messagebox-warn-background: #dfc0ba;
--messagebox-warn-border: #861c10;
--messagebox-warn-color: var(--text-color);
--messagebox-warn-link-color: #8e221a;
--messagebox-safe-background: #d8f0d3;
--messagebox-safe-border: #1b8408;
--messagebox-safe-color: var(--text-color);
--messagebox-safe-link-color: #1b8408;
--messagebox-disambig-background: #ebebeb;
--messagebox-disambig-border: #898989;
--messagebox-disambig-color: var(--text-color);
--messagebox-disambig-link-color: #6c6c6c;
--messagebox-discord-background: #5865f2;
--messagebox-discord-border: #4c57d0;
--messagebox-discord-link-color: #d2e5fc;
}
.mw-message-box,
.mw-message-box-error,
.mw-message-box-warning,
.mw-message-box-success,
.usermessage {
color: var(--text-color);
}
.messagebox {
width: 65%;
margin: 0.5em auto;
border-left: 15px solid;
border-color: var(--body-dark);
background-color: var(--body-light);
box-sizing: border-box;
}
.messagebox.obsolete {
background-color: var(--messagebox-obsolete-background);
border-color: var(--messagebox-obsolete-border);
color: var(--messagebox-obsolete-color);
}
.messagebox.obsolete a,
.messagebox.obsolete a:visited,
.messagebox.obsolete a:active {
color: var(--messagebox-obsolete-link-color);
}
.messagebox.info {
background-color: var(--messagebox-info-background);
border-color: var(--messagebox-info-border);
color: var(--messagebox-info-color);
}
.messagebox.info a,
.messagebox.info a:visited,
.messagebox.info a:active {
color: var(--messagebox-info-link-color);
}
.messagebox.action {
background-color: var(--messagebox-action-background);
border-color: var(--messagebox-action-border);
color: var(--messagebox-action-color);
}
.messagebox.action a,
.messagebox.action a:visited,
.messagebox.action a:active {
color: var(--messagebox-action-link-color);
}
.messagebox.warn {
background-color: var(--messagebox-warn-background);
border-color: var(--messagebox-warn-border);
color: var(--messagebox-warn-color);
}
.messagebox.warn a,
.messagebox.warn a:visited,
.messagebox.warn a:active {
color: var(--messagebox-warn-link-color);
}
.messagebox.safe {
background-color: var(--messagebox-safe-background);
border-color: var(--messagebox-safe-border);
color: var(--messagebox-safe-color);
}
.messagebox.safe a,
.messagebox.safe a:visited,
.messagebox.safe a:active {
color: var(--messagebox-safe-link-color);
}
.messagebox.disambig {
background-color: var(--messagebox-disambig-background);
border-color: var(--messagebox-disambig-border);
color: var(--messagebox-disambig-color);
}
.messagebox.disambig a,
.messagebox.disambig a:visited,
.messagebox.disambig a:active {
color: var(--messagebox-disambig-link-color);
}
.messagebox.discord {
background-color: var(--messagebox-discord-background);
border-color: var(--messagebox-discord-border);
color: #fff;
}
.messagebox.discord a,
.messagebox.discord a:visited,
.messagebox.discord a:active {
color: var(--messagebox-discord-link-color);
}
.messagebox.discord a.external,
.messagebox.discord a:visited.external,
.messagebox.discord a:active.external {
font-style: italic;
}
.messagebox.stub {
width: 40%;
}
.messagebox.hasdialogue {
padding: 0 10px;
width: auto;
}
:root {
--byline-arrow-filter: invert(29%) sepia(0%) saturate(376%) hue-rotate(172deg) brightness(87%) contrast(80%);
--tile-border-color: var(--body-border);
--tile-background-color: var(--body-light);
--tile-link-button-color: #f5e9db;
--tile-link-button-highlight-color: #dfccb0;
--tile-dark-color: #fff;
--tile-dark-bg: var(--body-dark);
--tile-dark-link-color: #ccc;
--tile-dark-byline-color: rgba(255, 255, 255, 0.7);
--tile-dark-header-color: #fff;
}
.tile {
background: var(--tile-background-color);
border: 1px solid var(--tile-border-color);
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
padding: 1.5em 2em 1em;
max-width: 40em;
}
.tile h2 {
font-size: 1.4em;
font-weight: bold;
border: none;
margin: 0 0 0.4em;
}
.tile .byline + h2 {
margin-top: -0.5em;
}
.tile.dark {
color: var(--tile-dark-color);
background: var(--tile-dark-bg);
border: none;
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.3);
}
.tile.dark h2 {
color: var(--tile-dark-header-color);
}
.tile.dark a {
color: var(--tile-dark-link-color);
}
.tile.dark .byline {
color: var(--tile-dark-byline-color);
}
.byline {
font-size: 0.9em;
color: var(--byline-color);
}
.byline a {
color: var(--byline-color);
}
.tile-row {
display: flex;
flex-flow: row wrap;
margin-bottom: 1em;
}
.tile-halves {
display: flex;
flex-flow: row wrap;
background: var(--tile-background-color);
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
}
.tile-halves h2 {
font-size: 1.4em;
font-weight: bold;
border: none;
margin: 0 0 0.4em;
}
.tile-halves .byline + h2 {
margin-top: -0.5em;
}
.tile-top {
width: 100%;
padding: 1.3rem 1.5rem 0.6rem;
}
.tile-top.tile-image {
display: flex;
align-items: center;
background-color: var(--body-light);
overflow: hidden;
padding: 0;
height: 13vw;
max-height: 12em;
transition: 0.4s ease-out;
}
.tile-halves:hover .tile-top.tile-image img {
transform: scale(1.1);
transition: 0.5s ease-out;
}
.tile-top.tile-image a {
width: 100%;
}
.tile-top.tile-image img {
width: 100%;
object-fit: cover;
max-height: 200px;
transition: 0.4s ease-out;
}
.tile-bottom {
background: var(--body-dark);
width: 100%;
padding: 1rem 1.5rem 0.6rem;
}
.tile-bottom h2 a {
color: #fff !important;
}
.tile-bottom.link-button {
align-self: flex-end;
padding: 0;
}
.tile-bottom.link-button a {
display: block;
text-align: center;
padding: 0.75em 1.5em 0.8em;
text-decoration: none;
}
.tile-bottom.read-more {
background: var(--tile-link-button-color);
transition: 0.3s ease-out;
}
.tile-bottom.read-more a {
color: var(--byline-color);
font-weight: bold;
text-align: right;
}
.tile-bottom.read-more:hover {
background: var(--tile-link-button-highlight-color);
}
.tile-bottom.read-more:hover .arrow {
transform: translateX(50%);
}
.tile-bottom.read-more .arrow {
filter: var(--byline-arrow-filter);
margin-left: 0.4em;
transition: 0.3s ease-out;
}
body.page-Main_Page.action-view .catlinks,
body.page-Main_Page.action-view #contentSub,
body.page-Main_Page.action-view #firstHeading,
body.page-Main_Page.action-view #siteNotice {
display: none;
}
body.page-Main_Page .mw-parser-output {
max-width: 75em;
margin: 0 auto;
}
body.page-Main_Page.action-view .catlinks,
body.page-Main_Page.action-view #contentSub,
body.page-Main_Page.action-view #siteNotice {
display: none;
}
.mainpage-header {
display: flex;
margin: 2.6em 1.75em 1.5em;
}
.mainpage-header .header-intro {
flex: 2;
}
.mainpage-header .header-intro h1 {
font-size: 2.5em;
font-weight: bold;
border: none;
margin: 0 0 0.15em;
}
.mainpage-header .header-intro p {
font-size: 1.1em;
line-height: 1.7em;
}
.mainpage-header .header-stats {
flex: 1;
display: flex;
justify-content: center;
align-items: center;
margin-top: -1em;
}
.mainpage-body {
display: grid;
grid-template-areas: "event event event" "update update update" "content content content" "left left right";
gap: 0.9rem;
grid-template-columns: repeat(3, 1fr);
}
.mainpage-body h2 a {
color: var(--text-color);
}
.mainpage-body .tile {
padding-left: 1.75em;
padding-right: 1.75em;
max-width: 100%;
}
.mainpage-body .tile-row {
width: 100%;
margin-bottom: 0;
}
.mainpage-body .tile-row {
display: grid;
gap: 0.9rem;
}
.mainpage-contents.tile-row {
display: flex;
}
.mainpage-contents.tile-row .tile-top {
height: 5.5rem;
}
.mainpage-left {
grid-area: left;
flex: 2;
display: flex;
flex-flow: column wrap;
}
.mainpage-left > * {
margin: 0 0 0.9rem;
}
.mainpage-right {
grid-area: right;
flex: 1;
display: flex;
flex-flow: column wrap;
}
.mainpage-right > * {
margin: 0 0 0.9rem;
}
.arrow {
background: url('filepath://White-chevron.svg') no-repeat;
display: inline-block;
height: 0.7rem;
width: 0.45rem;
vertical-align: middle;
}
.arrow.dark {
filter: invert(80%);
}
.mainpage-contents {
grid-area: content;
grid-template-columns: repeat(6, 1fr);
}
.mainpage-contents .tile-halves {
flex: 1;
}
.mainpage-contents .tile-top {
height: 4.5rem;
position: relative;
}
.mainpage-contents .tile-top.tile-image img {
height: auto;
}
.mainpage-contents h2 {
margin: 0;
padding: 0;
}
.mainpage-contents .tile-bottom.link-button a {
padding: 0.75em 0.2em;
}
.popular-pages ul {
display: grid;
grid-template-columns: repeat(3, 1fr);
grid-gap: 0.6em;
margin: 1em 0 0.7em 0;
}
.mp-popular-page-light {
display: flex;
align-items: center;
background-color: var(--button-background);
transition: 100ms;
}
.mp-popular-page-light a {
flex: 1;
display: block;
color: #fff;
font-weight: bold;
text-align: center;
text-decoration: none;
padding: 0.7em 1em;
}
.mp-popular-page-light:hover {
filter: brightness(115%);
transition: 100ms;
}
.mainpage-social {
border: none;
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.3);
}
.mainpage-social .tile-top {
display: flex;
align-items: center;
padding: 1em 1.5em;
}
.mainpage-social .tile-top a {
flex: 1;
position: relative;
text-decoration: none;
}
.mainpage-social .tile-top a:hover .arrow {
transform: translateX(50%);
}
.mainpage-social .tile-bottom {
border: none;
padding: 1em 1.75em;
}
.mainpage-social .tile-bottom p {
color: #fff;
font-weight: bold;
font-size: 0.9em;
text-align: center;
text-transform: uppercase;
letter-spacing: 0.03em;
margin: 0;
}
.mainpage-social .social-icon {
margin-right: 0.75em;
text-align: center;
width: 60px;
}
.mainpage-social .social-header {
color: #fff;
font-weight: bold;
font-size: 1.15em;
margin: 0.5em 0 -0.15em;
}
.mainpage-social .server-tagline {
color: rgba(255, 255, 255, 0.9);
margin-bottom: 0.5em;
}
.mainpage-social .arrow {
position: absolute;
top: calc(50% - .5em);
right: 0;
height: 1em;
width: 0.7em;
background-size: 0.7em 1em;
transition: 0.3s ease-out;
}
.mainpage-social.mainpage-discord .tile-top {
background: #5865f2;
}
.mainpage-social.mainpage-discord .tile-bottom {
background: #525ee0;
}
.mainpage-social.mainpage-twitter .tile-top {
background: #15202b;
}
.mainpage-social.mainpage-twitter .tile-bottom {
background: #121c26;
}
.mainpage-editing {
border: none;
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.3);
}
.mainpage-editing .tile-top {
background: #438ab5;
}
.mainpage-editing .tile-bottom {
background: #3980ab;
border: none;
padding: 0.8rem 1.5rem 0.4rem;
}
.mainpage-editing h2,
.mainpage-editing a {
color: #fff;
}
.mainpage-editing p {
color: rgba(255, 255, 255, 0.9);
}
.mainpage-editing ul {
list-style-image: url('filepath://Transparent-chevron.svg');
}
@media only screen and (max-width: 1200px) {
.mainpage-contents {
grid-template-columns: repeat(3, 1fr);
}
}
@media only screen and (max-width: 1000px) {
.mainpage-body {
grid-template-areas: "event event event" "update update update" "content content content" "left left left" "right right right";
}
.mainpage-recent-updates {
grid-template-columns: repeat(2, 1fr);
}
.mainpage-recent-updates .tile-halves:last-child {
display: none;
}
.mainpage-recent-updates .tile-halves:hover .tile-top img {
transform: scale(1.04);
}
.mainpage-recent-updates .tile-top {
height: 18vw;
min-height: 9em;
}
.mainpage-header .header-stats {
display: none;
}
.mainpage-left > *:last-child,
.mainpage-right > *:last-child {
margin-bottom: 0;
}
.popular-pages ul {
grid-template-columns: repeat(2, 1fr);
}
}
@media only screen and (max-width: 720px) {
.mainpage-recent-updates {
grid-template-columns: none;
}
.mainpage-recent-updates .tile-halves:last-child {
display: flex;
}
.mainpage-contents {
grid-template-columns: repeat(2, 1fr);
}
}
.mw-prefs-buttons {
background-color: var(--body-main);
border-top-color: var(--body-border);
box-shadow: none;
}
.mw-prefs-tabs-wrapper.oo-ui-panelLayout-framed,
.mw-prefs-tabs > .oo-ui-menuLayout-content > .oo-ui-indexLayout-stackLayout > .oo-ui-tabPanelLayout {
border-color: var(--body-border);
}
.mw-htmlform-ooui .mw-htmlform-matrix tbody tr:nth-child(even) td {
background-color: var(--body-light);
}
.mw-htmlform-ooui .mw-htmlform-matrix tbody tr:hover td {
background-color: var(--body-mid);
}
:root {
--rc-positive-color: #407813;
--rc-negative-color: #b41e0f;
}
.mw-plusminus-pos {
color: var(--rc-positive-color);
}
.mw-plusminus-neg {
color: var(--rc-negative-color);
}
.client-js .mw-recentchanges-toplinks:not(.mw-recentchanges-toplinks-collapsed) {
border-color: var(--body-border);
background-color: var(--body-light);
border-radius: 2px;
}
.mw-rcfilters-ui-filterTagMultiselectWidget-wrapper-content-title {
color: var(--text-color);
}
.mw-rcfilters-ui-filterTagMultiselectWidget-emptyFilters {
color: var(--byline-color);
}
.mw-rcfilters-ui-filterTagMultiselectWidget.oo-ui-widget-enabled .oo-ui-tagMultiselectWidget-handle {
background-color: var(--ooui-interface);
border-color: var(--ooui-interface-border);
}
.mw-rcfilters-ui-filterTagMultiselectWidget-views-select-widget.oo-ui-widget {
border-color: var(--ooui-interface-border);
}
.mw-rcfilters-collapsed .mw-rcfilters-ui-filterTagMultiselectWidget {
border-bottom-color: var(--ooui-interface-border);
}
.mw-rcfilters-ui-menuSelectWidget-footer {
background-color: var(--ooui-interface);
border-color: var(--ooui-interface-border);
}
.mw-rcfilters-ui-viewSwitchWidget label.oo-ui-labelWidget {
color: var(--byline-color);
}
.mw-rcfilters-ui-tagItemWidget-popup-content {
color: var(--ooui-text);
}
.mw-changeslist-legend,
.mw-rcfilters-ui-changesListWrapperWidget .mw-changeslist-legend {
background-color: var(--body-light);
border-color: var(--body-dark);
}
.mw-rcfilters-ui-changesListWrapperWidget-previousChangesIndicator {
border-color: var(--sidebar);
}
.client-js .mw-changeslist ul,
.client-js .mw-changeslist table.mw-enhanced-rc {
margin-left: 0;
}
.mw-rcfilters-ui-watchlistTopSectionWidget-separator {
border-color: var(--sidebar);
}
.mw-rcfilters-ui-itemMenuOptionWidget-header {
border-bottom-color: var(--ooui-interface);
background-color: var(--ooui-interface-border);
}
.mw-rcfilters-ui-itemMenuOptionWidget:not(:last-child):not(.mw-rcfilters-ui-itemMenuOptionWidget-identifier-talk) {
border-bottom-color: var(--ooui-normal-border);
}
.mw-rcfilters-ui-itemMenuOptionWidget-label-title,
.mw-rcfilters-ui-itemMenuOptionWidget-label-desc {
color: var(--text-color);
}
.mw-rcfilters-ui-filterMenuOptionWidget.oo-ui-flaggedElement-muted:not(.oo-ui-optionWidget-selected) {
background-color: var(--body-main);
}
.mw-rcfilters-ui-filterMenuOptionWidget.oo-ui-flaggedElement-muted .mw-rcfilters-ui-itemMenuOptionWidget-label-title,
.mw-rcfilters-ui-filterMenuOptionWidget.oo-ui-flaggedElement-muted .mw-rcfilters-ui-itemMenuOptionWidget-label-desc {
color: var(--subtle-color);
}
.mw-rcfilters-ui-filterMenuSectionOptionWidget {
background-color: var(--body-mid);
}
.mw-rcfilters-ui-filterMenuSectionOptionWidget-header-title.oo-ui-labelElement-label {
color: var(--ooui-text);
}
.mw-rcfilters-ui-filterMenuHeaderWidget-title {
color: var(--ooui-text);
}
.mw-rcfilters-ui-filterMenuHeaderWidget-header {
border-bottom-color: var(--ooui-interface-border);
background-color: var(--ooui-interface);
}
.mw-rcfilters-ui-itemMenuOptionWidget-view-namespaces {
border-top-color: var(--ooui-interface-border);
}
.mw-rcfilters-ui-datePopupWidget {
border-color: var(--ooui-interface-border);
}
.mw-rcfilters-ui-datePopupWidget .mw-rcfilters-ui-valuePickerWidget-title {
color: var(--byline-color);
}
.mw-rcfilters-ui-savedLinksListItemWidget-label {
color: var(--ooui-accent);
}
.client-js .mw-changeslist.mw-rcfilters-ui-changesListWrapperWidget-highlighted ul,
.client-js .mw-changeslist.mw-rcfilters-ui-changesListWrapperWidget-highlighted table.mw-enhanced-rc {
margin-left: 1.5em;
}
.page-Special_CreateAccount .mw-ui-container,
.page-Special_UserLogin .mw-ui-container {
max-width: 64rem;
margin: 0 auto;
}
.mw-number-text {
color: var(--byline-color);
}
.mw-body-content .mw-number-text h3 {
color: var(--text-color);
}
#mw-indicator-mw-helplink a {
background: none;
padding: 0;
display: flex;
align-items: center;
}
#mw-indicator-mw-helplink a::before {
content: '';
margin-right: 5px;
-webkit-mask: url("/resources/src/mediawiki.helplink/images/helpNotice.svg?46d34") no-repeat 50% 50% / contain;
mask: url("/resources/src/mediawiki.helplink/images/helpNotice.svg?46d34") no-repeat 50% 50% / contain;
background: var(--text-color);
height: 20px;
width: 20px;
}
.results-info {
color: inherit;
}
.mw-search-profile-tabs {
background-color: var(--body-mid);
border-color: transparent;
}
.search-types .current a {
color: inherit;
}
#mw-searchoptions {
background-color: var(--body-mid);
border-color: transparent;
}
#mw-searchoptions .divider {
border-color: var(--body-border);
}
#mw-searchoptions h4 {
font-family: inherit;
}
#mw-searchoptions .oo-ui-labelElement:nth-of-type(odd) {
font-weight: bold;
}
.searchresult {
line-height: 1.5;
}
.searchalttitle,
#mw-search-interwiki li {
font-size: 90%;
}
.mw-search-result-data {
color: var(--byline-color);
}
.page-Special_ListFiles a.image img {
width: inherit;
height: inherit;
}
.page-Special_ListFiles .TablePager_col_thumb {
text-align: center;
}
#editcount table[border="1"] {
background-color: var(--body-main) !important;
border-color: var(--wikitable-border) !important;
margin-top: 0.5em;
}
#editcount table[border="1"] th,
#editcount table[border="1"] td {
padding: 0.2em 0.4em;
}
#editcount table[border="1"] th {
background-color: var(--wikitable-header-bg);
border: 1px solid var(--wikitable-border);
}
#editcount table[border="1"] td {
border: 1px solid var(--wikitable-border);
}
#editcount table[border="1"] tr:nth-child(odd) {
background-color: var(--body-light);
}
.mw-echo-ui-notificationBadgeButtonPopupWidget-popup > .oo-ui-popupWidget-popup .mw-echo-ui-placeholderItemWidget {
background-color: inherit;
}
table.mw-interwikitable.body td.mw-interwikitable-local-yes {
background-color: var(--table-yes-background);
color: var(--table-yes-color);
}
.mw-protectedpages-unknown {
color: var(--byline-color);
}
.watchlistredir,
.allpagesredirect {
font-style: italic;
}
.allpagesredirect:after {
color: var(--byline-color);
content: " (redirect)";
}
.mw-apisandbox-toolbar {
background: var(--body-main);
}
.oo-ui-menuOptionWidget .mw-apisandbox-flag {
color: var(--byline-color);
}
tr.mw-abusefilter-list-disabled,
tr.mw-abusefilter-list-disabled td {
color: var(--byline-color);
}
table.mw-abuselog-details {
background: var(--wikitable-bg);
border-color: var(--wikitable-border);
}
table.mw-abuselog-details th {
background: var(--wikitable-header-bg);
}
table.mw-abuselog-details th,
table.mw-abuselog-details td {
border-color: var(--wikitable-border);
}
.mw-abusefilter-log-hidden-entry {
color: var(--subtle-color);
}
body td.mw-abusefilter-history-changed {
background: var(--table-no-background);
}
div.mw-abusefilter-editor,
#mw-abusefilter-warn-preview,
#mw-abusefilter-disallow-preview {
border-color: var(--ooui-input-border);
}
.mw-destfile-warning {
border-color: var(--warningbox-border);
color: var(--text-color);
background-color: var(--warningbox-bg);
}
span.fileinput-button {
background-color: var(--ooui-normal);
border-color: var(--ooui-normal-border);
color: var(--ooui-text);
}
ul.fileupload-results li.ful-success {
background-color: var(--successbox-bg);
}
ul.fileupload-results li.ful-success a {
color: var(--link-color);
}
ul.fileupload-results li.ful-error {
background-color: var(--errorbox-bg);
}
.color-container {
display: flex;
margin: 2em auto;
width: 80%;
max-width: 60em;
}
.color-column {
flex: 1;
margin-right: 1em;
}
.color-column:last-child {
margin-right: 0;
}
.color-column h3 {
padding: 0;
}
.color-group {
color: #333;
padding: 1em 1.5em;
transition: 0.2s ease-out;
}
.color-group:hover {
transform: scale(1.03);
}
.color-group.dark {
color: #fff;
}
.color-group .variable,
.color-group .hexcode {
font-family: monospace;
font-size: 1.1em;
-webkit-user-select: all;
-moz-user-select: all;
-ms-user-select: all;
user-select: all;
margin: 0;
}
body.wgl-readermode .color-group .variable,
body.wgl-readermode .color-group .hexcode {
font-size: inherit;
}
.color-group .variable {
font-weight: bold;
}
#t-print,
#t-permalink {
display: none;
}
#filetoc {
border-radius: 2px;
background: var(--body-mid);
border-color: transparent;
margin: 0.5em auto;
text-align: center;
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
}
li.gallerybox div.thumb {
border: none;
background-color: var(--thumb-bg);
}
.smwfact {
display: none;
}
.list-header {
background-color: var(--body-mid);
color: inherit;
}
.editOptions {
color: var(--text-color);
background-color: var(--sourceeditor-background-secondary);
border-color: var(--sourceeditor-border);
}
.mw-json th,
.mw-json td {
border-color: var(--wikitable-border);
}
.mw-json td {
background: var(--wikitable-bg);
}
.mw-json th {
background: var(--wikitable-header-bg);
}
5f8ab479558e5c49afafe71bec4f2c233114e22e
2309
2306
2024-04-11T22:43:21Z
Merds
25
Updating CSS from [[MediaWiki:Common.less]]
css
text/css
/* <pre> */
:root {
--body-main: #fdfcfc;
--body-light: #f5f0eb;
--body-mid: #d1b9ad;
--body-dark: #b1886f;
--body-border: #d1b9ad;
--body-background-color: #173a4d;
--button-background: #605443;
--button-color: #fff;
--button-border: #3c352a;
--button-dark: #18140c;
--button-light: #3a301d;
--sidebar: #cfc08d;
--background-text-color: #e2dbc8;
--background-link-color: #e2bd8a;
--search-box: #efeee6;
--link-color: #ab6d46;
--table-header-link: #794f34;
--redlink-color: #ba0000;
--text-color: #2F2828;
--byline-color: #ccc;
--subtle-color: #afa19a;
--admin-blue: #332e75;
--bearcat-green: #13592e;
--awb-purple: #933b96;
--rsw-blue: #438ab6;
--osrsw-brown: #605443;
--thumb-bg: var(--body-light);
--thumb-caption-bg: var(--body-mid);
--sourceeditor-input-background: #fff;
--sourceeditor-background: var(--body-light);
--sourceeditor-background-secondary: var(--body-light);
--sourceeditor-border: var(--body-mid);
--codemirror-gutter-background: var(--body-mid);
}
@font-face {
font-family: 'Lora';
font-weight: 400 700;
font-style: normal;
font-display: swap;
src: url('filepath://Lora.woff2') format('woff2');
}
@font-face {
font-family: 'Lora';
font-weight: 400 700;
font-style: italic;
font-display: swap;
src: url('filepath://Lora-Italic.woff2') format('woff2');
}
:root {
--base-text-color: #36414f;
--base-heading-color: #444e5a;
--base-heading-border: #e4eaee;
--mw-code-background-color: var(--body-light);
--body-background-image: url('filepath://Wiki_background.jpg');
}
#mw-page-base {
background: none;
}
.mw-body {
background-color: var(--body-main);
color: var(--text-color);
border-color: transparent;
box-shadow: 0 0 7px rgba(0, 0, 0, 0.15);
margin-top: 0;
}
h1,
h2,
h3,
h4,
h5,
h6 {
color: var(--text-color);
}
h1,
h2 {
border-color: var(--body-border);
}
.mw-body h1,
.mw-body-content h1,
.mw-body-content h2,
.mw-body-content h3,
.mw-body-content h4,
.mw-body-content h5,
.mw-body-content h6 {
font-family: 'Lora', 'Palatino', 'Georgia', serif;
}
.mw-parser-output h2:first-of-type {
clear: left;
}
.mw-footer {
color: var(--background-text-color);
}
.mw-footer li {
color: var(--background-text-color);
}
.mw-footer a,
.mw-footer a:active,
.mw-footer a:visited {
color: var(--background-link-color);
}
::placeholder {
color: var(--subtle-color);
}
a {
color: var(--link-color);
}
a:visited,
a:active {
color: var(--link-color);
}
a.new {
color: var(--redlink-color);
}
a.new:visited {
color: var(--redlink-color);
}
.mw-parser-output a.extiw,
.mw-parser-output a.external {
color: var(--link-color);
}
.mw-parser-output a.extiw:visited,
.mw-parser-output a.external:visited,
.mw-parser-output a.extiw:active,
.mw-parser-output a.external:active {
color: var(--link-color);
}
.jsPurgeLink a.external {
color: var(--link-color);
}
:root {
--errorbox-bg: #feecea;
--errorbox-border: #ee4231;
--warningbox-bg: #fef9de;
--warningbox-border: #f9d000;
--successbox-bg: #ecf8e3;
--successbox-border: #6bc71f;
}
.mw-message-box-error,
.errorbox,
.mw-message-box-warning,
.warningbox,
.mw-message-box-success,
.successbox,
.usermessage {
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
}
.mw-message-box-error,
.errorbox {
background-color: var(--errorbox-bg);
border-color: var(--errorbox-border);
}
.mw-message-box-warning,
.warningbox,
.usermessage {
background-color: var(--warningbox-bg);
border-color: var(--warningbox-border);
}
.mw-message-box-success,
.successbox {
background-color: var(--successbox-bg);
border-color: var(--successbox-border);
}
.catlinks {
background: var(--body-light);
border: 1px solid var(--body-dark);
padding: 8px 15px;
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
}
.catlinks li {
border-color: var(--body-mid);
}
.filehistory a img,
#file img {
background: url("data:image/svg+xml,%3C%3Fxml version='1.0' encoding='UTF-8'%3F%3E%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16'%3E%3Cpath d='M0 0h8v16h8V8H0z' opacity='.13'/%3E%3C/svg%3E") repeat;
}
#file img:hover {
background: none;
}
.mw-highlight {
background: none;
}
.mw-highlight .linenos {
background-color: var(--mw-code-background-color);
color: var(--body-border);
}
.mw-highlight a:hover .linenos,
.mw-highlight .hll a .linenos {
color: var(--body-dark);
}
.mw-content-ltr.mw-highlight-lines pre,
.mw-content-ltr.content .mw-highlight-lines pre {
box-shadow: inset 2.75em 0 0 var(--mw-code-background-color);
}
#pagehistory ul {
list-style: none;
margin: 0;
}
#pagehistory li {
border: 1px solid transparent;
padding: 1px 10px;
margin: 2px 0;
}
#pagehistory li.selected {
background-color: var(--body-light);
color: inherit;
border: 1px dashed var(--body-border);
outline: none;
}
#mw-history-compare > div:first-of-type {
position: -webkit-sticky;
position: sticky;
top: 0;
background-color: var(--body-main);
border-bottom: 1px solid var(--body-dark);
padding: 0.25em 0;
}
.wgl-stickyheader #mw-history-compare > div:first-of-type {
top: 2.5rem;
}
.autocomment,
.autocomment a,
.autocomment a:visited {
color: var(--link-color);
}
li span.deleted,
span.history-deleted {
color: var(--byline-color);
}
.mw-usertoollinks-contribs-no-edits,
.mw-usertoollinks-contribs-no-edits:visited {
color: var(--redlink-color);
}
.CategoryTreeToggle {
color: var(--link-color);
}
body.wgl-stickyheader.action-view .mw-headline:target::before {
display: block;
content: '';
margin-top: -3rem;
height: 3rem;
visibility: hidden;
pointer-events: none;
}
.mw-mmv-post-image {
color: var(--text-color);
background-color: var(--body-main);
}
.mw-mmv-image-metadata {
border-top-color: var(--body-mid);
background-color: var(--body-light);
}
.mw-mmv-dialog,
.mw-mmv-dialog .mw-mmv-dialog-down-arrow,
.mw-mmv-options-dialog .mw-mmv-dialog-down-arrow {
background-color: var(--body-light);
box-shadow: none;
}
.mw-mmv-options-enable-alert {
background-color: var(--body-light);
color: var(--text-color);
}
.mw-mmv-options-dialog-header,
.mw-mmv-options-text-header,
.mw-mmv-options-text-body,
.mw-mmv-options-enable-alert,
.mw-mmv-options-dialog .mw-mmv-disable-confirmation .mw-mmv-options-dialog-header,
.mw-mmv-options-dialog .mw-mmv-disable-confirmation .mw-mmv-options-text-header {
color: var(--text-color);
}
.mw-revslider-container {
border-color: var(--sidebar);
}
.mw-revslider-slider-wrapper {
border-top-color: var(--sidebar);
}
.mw-ui-button {
background-color: var(--ooui-normal);
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
}
.mw-ui-button:not(:disabled):hover,
.mw-ui-button:not(:disabled):active {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
}
.mw-ui-button:not(:disabled):focus {
color: var(--ooui-text);
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent), inset 0 0 0 2px #fff;
}
.mw-ui-button:not(:disabled):visited {
color: var(--ooui-text);
}
.mw-ui-button.mw-ui-progressive:not(:disabled) {
background-color: var(--ooui-progressive);
color: #fff;
border-color: var(--ooui-progressive);
}
.mw-ui-button.mw-ui-progressive:not(:disabled):hover {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
}
.mw-ui-button.mw-ui-progressive:not(:disabled):focus {
box-shadow: inset 0 0 0 1px var(--ooui-accent), inset 0 0 0 2px #fff;
}
.mw-ui-button.mw-ui-progressive:not(:disabled):active,
.mw-ui-button.mw-ui-progressive:not(:disabled).is-on {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
box-shadow: none;
}
.mw-ui-button.mw-ui-destructive:not( :disabled ) {
color: #fff;
}
.mw-ui-button.mw-ui-quiet,
.mw-ui-button.mw-ui-quiet.mw-ui-progressive,
.mw-ui-button.mw-ui-quiet.mw-ui-destructive {
color: var(--text-color);
}
input[type='checkbox']:hover + .mw-ui-button.mw-ui-quiet,
input[type='checkbox']:hover + .mw-ui-button.mw-ui-quiet.mw-ui-progressive,
input[type='checkbox']:hover + .mw-ui-button.mw-ui-quiet.mw-ui-destructive,
.mw-ui-button.mw-ui-quiet:hover,
.mw-ui-button.mw-ui-quiet.mw-ui-progressive:hover,
.mw-ui-button.mw-ui-quiet.mw-ui-destructive:hover {
background-color: rgba(0, 24, 73, 0.02745098);
color: var(--text-color);
border-color: transparent;
}
input[type='checkbox']:focus + .mw-ui-button.mw-ui-quiet,
input[type='checkbox']:focus + .mw-ui-button.mw-ui-quiet.mw-ui-progressive,
input[type='checkbox']:focus + .mw-ui-button.mw-ui-quiet.mw-ui-destructive,
.mw-ui-button.mw-ui-quiet:focus,
.mw-ui-button.mw-ui-quiet.mw-ui-progressive:focus,
.mw-ui-button.mw-ui-quiet.mw-ui-destructive:focus {
color: var(--text-color);
}
input[type='checkbox']:active + .mw-ui-button.mw-ui-quiet,
input[type='checkbox']:active + .mw-ui-button.mw-ui-quiet.mw-ui-progressive,
input[type='checkbox']:active + .mw-ui-button.mw-ui-quiet.mw-ui-destructive,
.mw-ui-button.mw-ui-quiet:active,
.mw-ui-button.mw-ui-quiet.mw-ui-progressive:active,
.mw-ui-button.mw-ui-quiet.mw-ui-destructive:active {
background-color: rgba(0, 36, 73, 0.08235294);
color: var(--text-color);
border-color: #72777d;
}
.mw-ui-input {
background-color: var(--ooui-input);
color: var(--text-color);
border-color: var(--ooui-input-border);
}
.mw-ui-input:hover {
border-color: var(--ooui-input-border--hover);
}
.mw-ui-input::placeholder {
color: var(--byline-color);
}
.mw-content-ltr .redirectText li:first-child {
padding: 0;
background: 0;
}
.mw-content-ltr .redirectText li:first-child::before {
content: '';
background: currentcolor;
-webkit-mask: url("filepath://Redirect-arrow.svg") no-repeat 50% 50% / contain;
mask: url("filepath://Redirect-arrow.svg") no-repeat 50% 50% / contain;
display: inline-block;
width: 47px;
height: 20px;
}
.vector-search-box-inner {
background: var(--body-main) !important;
box-shadow: inset 0 -7px 7px -7px rgba(0, 0, 0, 0.15) !important;
}
.vector-menu-dropdown .vector-menu-heading {
color: var(--vector-tab-link-color) !important;
}
.vector-menu-dropdown .vector-menu-heading:hover {
color: var(--vector-tab-link-color) !important;
}
.vector-menu-dropdown .vector-menu-heading:focus {
color: var(--vector-tab-link-color) !important;
}
.vector-menu-portal .vector-menu-heading {
color: var(--background-text-color) !important;
font-weight: bold !important;
background: none !important;
}
.vector-menu-portal .vector-menu-content li a,
.vector-menu-portal .vector-menu-content li a:visited {
color: var(--background-link-color) !important;
}
:root {
--wikitable-header-bg: var(--body-dark);
--wikitable-border: var(--body-border);
--wikitable-bg: var(--body-light);
--wikitable-bg-lighter: #e9e3d6;
--wikitable-color: var(--text-color);
--table-na-background: rgba(255, 255, 255, 0.3);
--table-na-color: var(--subtle-color);
--table-yes-background: #c3e8a3;
--table-yes-color: #2e5e05;
--table-no-background: #fbc0ba;
--table-no-color: #801c13;
--table-maybe-background: #fcea94;
--table-maybe-color: #786300;
}
.wikitable {
background: var(--wikitable-bg);
color: var(--wikitable-color);
border-color: var(--wikitable-border);
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
}
.wikitable > tr > th,
.wikitable > tr > td,
.wikitable > * > tr > th,
.wikitable > * > tr > td {
border-color: var(--wikitable-border);
}
.wikitable > tr > th.table-noborder,
.wikitable > tr > td.table-noborder,
.wikitable > * > tr > th.table-noborder,
.wikitable > * > tr > td.table-noborder {
border-left-style: hidden;
border-right-style: hidden;
padding-left: 0;
padding-right: 0;
}
.wikitable > tr > th,
.wikitable > * > tr > th {
background-color: var(--wikitable-header-bg);
color: #fff;
}
.wikitable > tr > th a,
.wikitable > * > tr > th a {
color: var(--table-link-color);
}
.tabber .wikitable {
box-shadow: none;
}
.mw_metadata td,
.mw_metadata th {
border-color: var(--wikitable-border);
}
.mw_metadata th {
background-color: var(--wikitable-header-bg);
}
.mw_metadata td {
background-color: var(--wikitable-bg);
}
.mw-datatable {
border-color: var(--wikitable-border);
}
.mw-datatable td,
.mw-datatable th {
border-color: var(--wikitable-border);
}
.mw-datatable th {
background-color: var(--wikitable-header-bg);
}
.mw-datatable th a {
color: var(--table-link-color);
}
.mw-datatable td {
background-color: var(--wikitable-bg);
}
.mw-datatable tr:hover td {
background-color: var(--wikitable-bg);
}
table.alternating-rows tr:nth-child(odd),
table.alternating-cols td:nth-child(odd) {
background: var(--wikitable-alternating-bg);
}
.table-na {
background: var(--table-na-background);
color: var(--table-na-color);
vertical-align: middle;
text-align: center;
}
.table-yes {
background: var(--table-yes-background);
color: var(--table-yes-color);
}
.table-positive {
background: var(--table-yes-background);
}
.table-no {
background: var(--table-no-background);
color: var(--table-no-color);
}
.table-negative {
background: var(--table-no-background);
}
.table-maybe {
background: var(--table-maybe-background);
color: var(--table-maybe-color);
}
#mw-allmessagestable .am_actual,
#mw-allmessagestable .am_default {
background-color: var(--wikitable-bg);
}
#mw-allmessagestable .am_default:hover,
#mw-allmessagestable .am_actual:hover,
#mw-allmessagestable tbody:hover td {
background-color: var(--wikitable-bg-lighter);
}
table.wikitable td.no-cell-spacing {
padding: 0;
height: 0;
}
table.wikitable td.no-cell-spacing table {
margin: -1px;
width: calc(100% + 2px);
height: calc(100% + 2px);
}
.plainlist ol,
.plainlist ul {
margin: 0;
}
.plainlist li {
margin-bottom: 0;
list-style: none;
}
table.align-right-1 td:nth-of-type(1),
table.align-right-2 td:nth-of-type(2),
table.align-right-3 td:nth-of-type(3),
table.align-right-4 td:nth-of-type(4),
table.align-right-5 td:nth-of-type(5),
table.align-right-6 td:nth-of-type(6),
table.align-right-7 td:nth-of-type(7),
table.align-right-8 td:nth-of-type(8),
table.align-right-9 td:nth-of-type(9),
table.align-right-10 td:nth-of-type(10),
table.align-right-11 td:nth-of-type(11),
table.align-right-12 td:nth-of-type(12),
table.align-right-13 td:nth-of-type(13),
table.align-right-14 td:nth-of-type(14),
table.align-right-15 td:nth-of-type(15),
table.align-right-16 td:nth-of-type(16),
table.align-right-17 td:nth-of-type(17),
table.align-right-18 td:nth-of-type(18),
table.align-right-19 td:nth-of-type(19),
table.align-right-20 td:nth-of-type(20) {
text-align: right;
}
table.align-center-1 td:nth-of-type(1),
table.align-center-2 td:nth-of-type(2),
table.align-center-3 td:nth-of-type(3),
table.align-center-4 td:nth-of-type(4),
table.align-center-5 td:nth-of-type(5),
table.align-center-6 td:nth-of-type(6),
table.align-center-7 td:nth-of-type(7),
table.align-center-8 td:nth-of-type(8),
table.align-center-9 td:nth-of-type(9),
table.align-center-10 td:nth-of-type(10),
table.align-center-11 td:nth-of-type(11),
table.align-center-12 td:nth-of-type(12),
table.align-center-13 td:nth-of-type(13),
table.align-center-14 td:nth-of-type(14),
table.align-center-15 td:nth-of-type(15),
table.align-center-16 td:nth-of-type(16),
table.align-center-17 td:nth-of-type(17),
table.align-center-18 td:nth-of-type(18),
table.align-center-19 td:nth-of-type(19),
table.align-center-20 td:nth-of-type(20) {
text-align: center;
}
table.align-left-1 td:nth-of-type(1),
table.align-left-2 td:nth-of-type(2),
table.align-left-3 td:nth-of-type(3),
table.align-left-4 td:nth-of-type(4),
table.align-left-5 td:nth-of-type(5),
table.align-left-6 td:nth-of-type(6),
table.align-left-7 td:nth-of-type(7),
table.align-left-8 td:nth-of-type(8),
table.align-left-9 td:nth-of-type(9),
table.align-left-10 td:nth-of-type(10),
table.align-left-11 td:nth-of-type(11),
table.align-left-12 td:nth-of-type(12),
table.align-left-13 td:nth-of-type(13),
table.align-left-14 td:nth-of-type(14),
table.align-left-15 td:nth-of-type(15),
table.align-left-16 td:nth-of-type(16),
table.align-left-17 td:nth-of-type(17),
table.align-left-18 td:nth-of-type(18),
table.align-left-19 td:nth-of-type(19),
table.align-left-20 td:nth-of-type(20) {
text-align: left;
}
:root {
--diff-addedline-border-color: #438ab5;
--diff-addedline-background: #bddff2;
--diff-addedline-color: #000;
--diff-deletedline-border-color: #379541;
--diff-deletedline-background: #c1edbf;
--diff-deletedline-color: #000;
--diff-context-border-color: var(--body-mid);
--diff-context-background: var(--body-mid);
}
.diff-context {
border-color: var(--diff-context-border-color);
background: var(--diff-context-background);
color: inherit;
}
.diff-addedline {
border-color: var(--diff-addedline-border-color);
}
.diff-addedline .diffchange {
background: var(--diff-addedline-background);
color: var(--diff-addedline-color);
}
.diff-deletedline {
border-color: var(--diff-deletedline-border-color);
}
.diff-deletedline .diffchange {
background: var(--diff-deletedline-background);
color: var(--diff-deletedline-color);
}
.mw-diff-movedpara-left:after,
.mw-diff-movedpara-right:after {
color: var(--text-color);
}
.mw-notification {
background-color: var(--body-light);
border-color: var(--body-border);
color: var(--text-color);
}
.mw-echo-ui-notificationsInboxWidget-toolbarWrapper {
background: var(--body-main);
}
.mw-body-content .mw-echo-ui-datedSubGroupListWidget-title-secondary {
color: var(--byline-color);
}
.mw-echo-ui-pageNotificationsOptionWidget.oo-ui-optionWidget-selected {
background-color: var(--ooui-normal);
color: var(--ooui-accent);
}
.mw-echo-ui-pageNotificationsOptionWidget-label-count {
background-color: var(--ooui-normal);
color: var(--byline-color);
}
.oo-ui-optionWidget-selected .mw-echo-ui-pageNotificationsOptionWidget-label-count {
color: var(--ooui-accent);
}
.mw-echo-ui-pageNotificationsOptionWidget.oo-ui-optionWidget-highlighted {
background-color: var(--ooui-normal);
color: var(--text-color);
}
.mw-echo-ui-crossWikiUnreadFilterWidget {
border-color: var(--body-border);
}
.mw-echo-ui-crossWikiUnreadFilterWidget-subtitle {
color: var(--byline-color);
}
.mw-echo-ui-notificationBadgeButtonPopupWidget-popup > .oo-ui-popupWidget-popup > .oo-ui-popupWidget-head,
.mw-echo-ui-notificationBadgeButtonPopupWidget-popup > .oo-ui-popupWidget-popup > .oo-ui-popupWidget-footer {
border-color: var(--ooui-interface-border);
}
.mw-echo-ui-notificationBadgeButtonPopupWidget-popup > .oo-ui-popupWidget-popup > .oo-ui-popupWidget-footer .mw-echo-ui-notificationBadgeButtonPopupWidget-footer-buttons .oo-ui-buttonElement:last-child {
border-left-color: var(--ooui-normal-border);
}
.mw-echo-ui-notificationItemWidget {
background-color: var(--ooui-normal);
border-color: var(--ooui-normal-border);
}
.mw-echo-ui-notificationItemWidget:hover,
.mw-echo-ui-notificationItemWidget-unread:hover {
background-color: var(--ooui-normal--hover);
}
.mw-echo-ui-notificationItemWidget:last-child {
border-bottom-color: var(--ooui-normal-border);
}
.mw-echo-ui-notificationItemWidget-unread {
background-color: var(--search-box);
}
.mw-echo-ui-crossWikiNotificationItemWidget-group,
.mw-echo-ui-bundleNotificationItemWidget-group {
background-color: var(--ooui-interface);
}
.mw-echo-ui-toggleReadCircleButtonWidget-circle {
background-color: var(--ooui-progressive);
}
.mw-echo-ui-toggleReadCircleButtonWidget:hover .mw-echo-ui-toggleReadCircleButtonWidget-circle {
background-color: var(--ooui-progressive--hover);
}
.mw-echo-ui-toggleReadCircleButtonWidget-circle-unread {
background-color: var(--ooui-normal);
border-color: var(--ooui-normal-border);
}
.mw-echo-ui-notificationItemWidget-content-message-header,
.mw-echo-ui-notificationItemWidget-content-message-body,
.mw-echo-ui-menuItemWidget > .oo-ui-buttonElement-button > .oo-ui-labelElement-label,
.mw-echo-ui-notificationItemWidget-content-actions-timestamp {
color: var(--ooui-text);
}
.mw-echo-ui-bundleNotificationItemWidget-group {
background-color: var(--body-main);
}
@keyframes unseen-fadeout-to-unread {
from {
background-color: var(--wikitable-bg-lighter);
}
to {
background-color: var(--search-box);
}
}
@keyframes unseen-fadeout-to-read {
from {
background-color: var(--wikitable-bg-lighter);
}
to {
background-color: var(--body-main);
}
}
.mwe-popups {
background: var(--body-light);
}
.mwe-popups .mwe-popups-container {
color: var(--text-color);
background: var(--body-light);
}
.mwe-popups .mwe-popups-container.flipped-x-y:before,
.mwe-popups .mwe-popups-container.flipped-y:before {
border-top: none;
}
.mwe-popups .mwe-popups-container.mwe-popups-no-image-tri:before {
border-bottom: none;
}
.mwe-popups .mwe-popups-container.flipped-x-y:after,
.mwe-popups .mwe-popups-container.flipped-y:after {
border-top-color: var(--body-light);
}
.mwe-popups .mwe-popups-container.mwe-popups-no-image-tri:after {
border-bottom-color: var(--body-light);
}
.mwe-popups .mwe-popups-settings-icon:hover,
.mwe-popups .mwe-popups-settings-icon:active {
background-color: var(--ooui-normal--hover);
}
.mwe-popups .mw-ui-icon-element:not(.disabled):hover {
background: none;
}
.mwe-popups .mwe-popups-extract {
color: var(--text-color);
}
.mwe-popups .mwe-popups-extract[dir='ltr']:after {
background-image: linear-gradient(to right, rgba(49, 62, 89, 0), var(--body-light) 50%);
}
.mwe-popups-overlay {
background-color: var(--ooui-window-background);
}
#mwe-popups-settings {
background: var(--ooui-interface);
border-color: var(--ooui-interface-border);
color: var(--text-color);
}
#mwe-popups-settings header {
border-color: var(--ooui-interface-border);
}
#mwe-popups-settings main#mwe-popups-settings-form p {
color: var(--byline-color);
}
#mwe-popups-settings main#mwe-popups-settings-form form label > span {
color: var(--ooui-text);
}
:root {
--smw-ask-options-even-bg: var(--body-mid);
--smw-ask-options-odd-bg: var(--body-light);
--smw-ask-action-btn-lblue-bg: var(--body-main);
--smw-ask-action-btn-lblue-color: #000;
--smw-ask-action-btn-lblue-border-color: var(--body-light);
--smw-ask-action-btn-dblue-bg: var(--body-light);
--smw-ask-action-btn-dblue-color: #fff;
--smw-ask-action-btn-dblue-border-color: var(--button-border);
}
.smw-ask-condition fieldset,
.smw-ask-printhead fieldset {
border-color: var(--sidebar);
}
.smw-ask-search fieldset,
.smw-ask-format fieldset,
.smw-ask-options fieldset {
border-color: var(--sidebar);
}
.strike > span:before,
.strike > span:after {
background: var(--sidebar);
}
.smw-ask-options-fields tr td {
background-color: var(--smw-ask-options-even-bg);
}
.smw-ask-options-fields tr:nth-child(odd) td {
background-color: var(--smw-ask-options-odd-bg);
}
.smw-ask-action-btn.smw-ask-action-btn-lblue,
.smw-ask-action-btn.smw-ask-action-btn-lblue:hover,
.smw-ask-action-btn.smw-ask-action-btn-lblue:visited {
background-color: var(--smw-ask-action-btn-lblue-bg);
color: var(--smw-ask-action-btn-lblue-color);
border-color: var(--smw-ask-action-btn-lblue-border-color);
}
.smw-ask-action-btn.smw-ask-action-btn-dblue,
.smw-ask-action-btn.smw-ask-action-btn-dblue:hover,
.smw-ask-action-btn.smw-ask-action-btn-dblue:visited {
background-color: var(--smw-ask-action-btn-dblue-bg);
color: var(--smw-ask-action-btn-dblue-color);
border-color: var(--smw-ask-action-btn-dblue-border-color);
}
.smw-ask-query textarea,
.smw-ask-actions textarea {
background-color: var(--ooui-interface);
border-color: var(--ooui-interface-border);
color: var(--ooui-text);
}
.smw-ask-query-format select {
background-color: var(--ooui-interface);
border: 1px solid var(--ooui-interface-border);
color: var(--ooui-text);
}
.smw-ask-toplinks {
background-color: var(--body-mid);
}
.smw-ask-toplinks span.smw-icon-info {
background: none;
padding: 0 !important;
}
.smw-ask-toplinks span.smw-icon-info::before {
content: '';
background: var(--text-color);
-webkit-mask: url("data:image/svg+xml,%3C%3Fxml version='1.0' encoding='UTF-8'%3F%3E%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 20 20'%3E%3Ctitle%3Einfo%3C/title%3E%3Cpath d='M10 0C4.477 0 0 4.477 0 10s4.477 10 10 10 10-4.477 10-10S15.523 0 10 0zM9 5h2v2H9zm0 4h2v6H9z'/%3E%3C/svg%3E") no-repeat 50% 50% / contain;
mask: url("data:image/svg+xml,%3C%3Fxml version='1.0' encoding='UTF-8'%3F%3E%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 20 20'%3E%3Ctitle%3Einfo%3C/title%3E%3Cpath d='M10 0C4.477 0 0 4.477 0 10s4.477 10 10 10 10-4.477 10-10S15.523 0 10 0zM9 5h2v2H9zm0 4h2v6H9z'/%3E%3C/svg%3E") no-repeat 50% 50% / contain;
padding: 0 0 3px 18px;
}
.smw-ask-options-row-odd {
background-color: var(--body-light);
}
.smw-ask-options-row-even {
background-color: var(--body-mid);
}
#options-toggle:not(:checked) + #options-list .options-parameter-list:after {
background-image: linear-gradient(to bottom, transparent, var(--body-mid) 90%);
}
.smw-ask-button-submit input {
background-color: var(--ooui-normal);
border-color: var(--ooui-normal-border);
color: var(--text-color);
}
.smw-ask-button-submit input:hover,
.smw-ask-button-lgrey:hover {
background-color: var(--ooui-normal--hover);
border-color: var(--ooui-normal-border);
}
input.smw-ask-action-btn.smw-ask-action-btn-dblue {
background-color: var(--ooui-normal);
border-color: var(--ooui-normal-border);
color: var(--ooui-text);
}
a.smw-ask-action-btn.smw-ask-action-btn-lblue {
background-color: var(--body-mid);
border-color: var(--body-mid);
color: var(--ooui-text);
}
a.smw-ask-action-btn.smw-ask-action-btn-lblue:visited {
background-color: var(--body-mid);
border-color: var(--body-mid);
color: var(--ooui-text);
}
a.smw-ask-action-btn.smw-ask-action-btn-lblue:hover {
background-color: var(--body-mid);
border-color: var(--body-mid);
color: var(--ooui-text);
}
a.smw-ask-action-btn-lgrey {
background-color: var(--ooui-normal);
border-color: var(--ooui-normal-border);
color: var(--ooui-text);
}
a.smw-ask-action-btn-lgrey:hover {
background-color: var(--ooui-normal--hover);
border-color: var(--ooui-normal-border);
color: var(--ooui-text);
}
.smw-callout-error {
background-color: var(--errorbox-bg);
border-color: var(--errorbox-border);
}
.smw-callout-info {
background-color: var(--body-light);
border-color: var(--body-dark);
}
.smw-callout-success {
background-color: var(--successbox-bg);
border-color: var(--successbox-border);
}
.smw-callout-warning {
background-color: var(--warningbox-bg);
border-color: var(--warningbox-bg);
}
.smw-tabs input.nav-tab:checked + label.nav-label,
.smw-tabs input.nav-tab:checked + label.nav-label:hover {
color: inherit;
}
#tab-smw-property-value:checked + label.nav-label .usage-count {
color: #fff;
background-color: var(--ooui-progressive);
}
#tab-smw-property-value:checked + label.nav-label .usage-count.moderate {
color: #fff;
background-color: #b55e0c;
border-color: #b55e0c;
}
#tab-smw-property-value:checked + label.nav-label .usage-count.high {
color: #fff;
background-color: #9f261e;
border-color: #9f261e;
}
.smw-property-page-results .header-title {
background-color: var(--ooui-interface);
border-bottom-color: var(--ooui-interface-border);
color: var(--ooui-text);
}
.smw-property-page-results .value-row:hover {
background-color: var(--ooui-normal--hover);
}
.smw-property-page-results .smw-table .header-row {
color: var(--text-color);
}
.tippy-tooltip.light-border-theme {
background-color: var(--body-light);
color: var(--text-color);
}
.tippy-tooltip.light-border-theme .tippy-arrow {
border-top-color: var(--body-light);
}
.tippy-tooltip.light-border-theme .tippy-arrow:after {
border-top-color: var(--body-light);
}
.tippy-header {
background-color: var(--body-dark);
border-bottom-color: var(--body-mid);
}
.smw-ui-input-filter {
background-color: var(--ooui-interface);
border-color: var(--ooui-interface-border);
color: var(--ooui-text);
}
.smw-ui-input-filter input {
border-left-color: var(--ooui-interface-border) !important;
color: var(--ooui-text) !important;
}
.smw-ui-pagination .page-link.link-disabled {
background-color: var(--ooui-disabled);
border-color: var(--ooui-disabled-border);
color: var(--subtle-color);
}
.smw-ui-pagination .page-link {
background-color: var(--ooui-normal);
border-color: var(--ooui-normal-border);
color: var(--link-color);
}
.smw-ui-pagination .page-link:hover {
background-color: var(--ooui-normal--hover);
border-color: var(--ooui-normal-border);
color: var(--link-color);
}
.smw-ui-pagination .page-link.link-active {
color: #fff;
background-color: var(--ooui-progressive);
border-color: var(--ooui-progressive);
}
.smw-tabs input.nav-tab:checked + label.nav-label {
border-color: var(--ooui-normal-border);
}
.smw-tabs section,
.smw-tabs .subtab-content {
border-top-color: var(--ooui-normal-border);
}
.smw-column-header {
color: var(--text-color);
}
.smw-factbox {
background: var(--body-main);
border-color: transparent;
}
.mw-body .mw-indicators #mw-indicator-smw-entity-examiner.mw-indicator .smw-indicator-vertical-bar-loader {
display: none;
}
.smwb-theme-light .smwb-title,
.smwb-theme-light .smwb-center,
.smwb-theme-light .smwb-actions,
.smwb-theme-light .smwb-prophead {
background-color: var(--body-mid);
}
.smwb-theme-light .smwb-factbox {
border-left-color: var(--body-mid);
}
.smwb-theme-light .smwb-ifactbox {
border-right-color: var(--body-mid);
}
.smwb-theme-light .smwb-propval {
background-color: var(--body-light);
}
.smwb-action-separator {
border-color: var(--wikitable-border);
}
.smwb-bottom {
border-bottom: 1px solid var(--wikitable-border);
}
.smwb-ifactbox .smwb-cell,
.smwb-factbox .smwb-cell {
border-top: 1px solid var(--wikitable-border);
}
.smwb-propvalue .smwb-prophead,
.smwb-ipropvalue .smwb-prophead,
.smwb-propvalue .smwb-propval,
.smwb-ipropvalue .smwb-propval {
font-size: 0.9em;
}
:root {
--filter-black-to-link: invert(36%) sepia(58%) saturate(433%) hue-rotate(344deg) brightness(100%) contrast(91%);
}
#bodyContent span.smwbrowse a {
color: black;
background-image: url('filepath://Smwbrowse.svg');
filter: var(--filter-black-to-link);
}
#bodyContent span.smwbrowse a:hover {
color: black;
background-image: url('filepath://Smwbrowse-hover.svg');
text-decoration: underline;
}
#bodyContent span.smwsearch a {
color: black;
filter: var(--filter-black-to-link);
background-image: url('filepath://Smwsearch.svg');
}
#bodyContent span.smwsearch a:hover {
color: black;
background-image: url('filepath://Smwsearch-hover.svg');
text-decoration: underline;
}
:root {
--tabber-tab-bg: var(--body-light);
--tabber-tab-border-color: var(--body-border);
--tabber-active-tab-bg: var(--body-light);
--tabber-active-tab-color: var(--text-color);
--tabber-active-tab-hover-bg: var(--body-light);
--tabber-active-tab-hover-border-color: var(--body-border);
--tabber-active-tab-hover-color: var(--text-color);
--tabber-active-tab-border-hider-color: var(--body-light);
--tabber-inactive-tab-bg: var(--body-background-color);
--tabber-inactive-tab-border-color: var(--body-border);
--tabber-inactive-tab-color: var(--text-color);
--tabber-inactive-tab-hover-bg: var(--body-light);
--tabber-inactive-tab-hover-border-color: var(--body-border);
}
.tabber {
margin: 1em 0;
}
.tabber .tabbertab {
background-color: var(--tabber-tab-bg);
border: 1px solid var(--tabber-tab-border-color);
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
padding: 1em 1.5em;
}
ul.tabbernav {
border: none;
margin-left: 2em;
margin-bottom: 0;
margin-right: 2em;
padding: 0;
font-family: inherit;
}
ul.tabbernav li.tabberactive > a {
background-color: var(--tabber-active-tab-bg);
color: var(--tabber-active-tab-color);
border-bottom: none;
position: relative;
}
ul.tabbernav li.tabberactive > a:hover {
color: var(--tabber-active-tab-hover-color);
background-color: var(--tabber-active-tab-hover-bg);
border-color: var(--tabber-active-tab-hover-border-color);
border-bottom: none;
}
ul.tabbernav li.tabberactive > a::after {
content: '';
position: absolute;
left: 0;
right: 0;
bottom: -1px;
border-bottom: 2px solid var(--tabber-active-tab-border-hider-color);
}
ul.tabbernav li a {
background-color: var(--tabber-inactive-tab-bg);
border-bottom: transparent;
border-color: var(--tabber-inactive-tab-border-color);
color: var(--tabber-inactive-tab-color);
display: inline-block;
font-size: 110%;
padding: 0.5em 1em;
}
ul.tabbernav li a:hover {
background-color: var(--tabber-inactive-tab-hover-bg);
border-color: var(--tabber-inactive-tab-hover-border-color);
}
ul.tabbernav li a:link,
ul.tabbernav li a:visited {
color: var(--tabber-inactive-tab-color);
}
:root {
--ooui-text: var(--text-color);
--ooui-interface: var(--body-light);
--ooui-interface-border: var(--body-border);
--ooui-window-background: rgba(255, 255, 255, 0.5);
--ooui-normal: #cdb3a6;
--ooui-normal--hover: #d8c4ba;
--ooui-normal-border: #d1b9ad;
--ooui-progressive: #936243;
--ooui-progressive--hover: #b27a57;
--ooui-accent: var(--link-color);
--ooui-input: #fff;
--ooui-input-border: #d1b9ad;
--ooui-input-border--hover: #ae846f;
--ooui-disabled: #ece3de;
--ooui-disabled-border: #e3d5ce;
--ooui-disabled-text: var(--subtle-color);
--ooui-pending-background-image: repeating-linear-gradient(-45deg, var(--search-box), var(--search-box) 20px, var(--body-main) 20px, var(--body-main) 30px);
}
.oo-ui-widget {
color: var(--ooui-text);
}
.oo-ui-checkboxInputWidget [type='checkbox'] + span,
.oo-ui-radioInputWidget [type='radio'] + span {
background-color: var(--ooui-input);
border-color: var(--ooui-input-border);
}
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:checked + span,
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:indeterminate + span {
background-color: var(--ooui-progressive);
border-color: var(--ooui-progressive);
}
.oo-ui-radioInputWidget.oo-ui-widget-enabled [type='radio']:checked + span {
border-color: var(--ooui-progressive);
}
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:checked:hover + span,
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:indeterminate:hover + span {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
}
.oo-ui-radioInputWidget.oo-ui-widget-enabled [type='radio']:checked:hover + span {
border-color: var(--ooui-progressive--hover);
}
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:hover + span,
.oo-ui-radioInputWidget.oo-ui-widget-enabled [type='radio']:hover + span {
border-color: var(--ooui-accent);
}
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:focus + span {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:active + span,
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:checked:active + span,
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:indeterminate:active + span {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
box-shadow: inset 0 0 0 1px var(--ooui-progressive--hover);
}
.oo-ui-radioInputWidget.oo-ui-widget-enabled [type='radio']:active + span {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
}
.oo-ui-radioInputWidget.oo-ui-widget-enabled [type='radio']:checked:active + span {
border-color: var(--ooui-progressive--hover);
box-shadow: inset 0 0 0 1px var(--ooui-progressive--hover);
}
.oo-ui-radioInputWidget.oo-ui-widget-enabled [type='radio']:checked:active + span:before {
border-color: var(--ooui-progressive--hover);
}
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:checked:focus + span,
.oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type='checkbox']:indeterminate:focus + span {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent), inset 0 0 0 2px #fff;
}
.oo-ui-checkboxInputWidget [type='checkbox']:disabled + span,
.oo-ui-radioInputWidget [type='radio']:disabled + span {
background-color: var(--ooui-disabled);
border-color: var(--ooui-disabled);
}
.oo-ui-dropdownWidget-handle {
border-color: var(--ooui-normal-border);
}
.oo-ui-dropdownWidget.oo-ui-widget-enabled .oo-ui-dropdownWidget-handle {
background-color: var(--ooui-normal);
color: var(--ooui-text);
}
.oo-ui-dropdownWidget.oo-ui-widget-enabled .oo-ui-dropdownWidget-handle:hover {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
}
.oo-ui-dropdownWidget.oo-ui-widget-enabled .oo-ui-dropdownWidget-handle:active {
color: var(--ooui-text);
}
.oo-ui-dropdownWidget.oo-ui-widget-enabled .oo-ui-dropdownWidget-handle:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-dropdownWidget.oo-ui-widget-enabled.oo-ui-dropdownWidget-open .oo-ui-dropdownWidget-handle {
background-color: var(--ooui-normal--hover);
}
.oo-ui-dropdownWidget.oo-ui-widget-disabled .oo-ui-dropdownWidget-handle {
color: var(--ooui-disabled-text);
text-shadow: none;
border-color: var(--ooui-disabled-border);
background-color: var(--ooui-disabled);
}
.oo-ui-dropdownInputWidget select {
border-color: var(--ooui-normal-border);
}
.oo-ui-dropdownInputWidget option {
background-color: var(--ooui-interface);
}
.oo-ui-dropdownInputWidget.oo-ui-widget-enabled {
background-color: var(--ooui-normal);
}
.oo-ui-dropdownInputWidget.oo-ui-widget-enabled:hover {
background-color: var(--ooui-normal--hover);
}
.oo-ui-dropdownInputWidget.oo-ui-widget-enabled select {
color: var(--ooui-text);
}
.oo-ui-dropdownInputWidget.oo-ui-widget-enabled select:hover,
.oo-ui-dropdownInputWidget.oo-ui-widget-enabled select:active {
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
}
.oo-ui-dropdownInputWidget.oo-ui-widget-enabled select:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-labelWidget.oo-ui-inline-help {
color: var(--byline-color);
}
.oo-ui-menuSelectWidget {
background-color: var(--ooui-interface);
border-color: var(--ooui-interface-border);
}
.oo-ui-menuSelectWidget-frameless {
box-shadow: inset 0 -1px 0 0 var(--ooui-normal-border);
}
.oo-ui-menuSectionOptionWidget {
color: var(--byline-color);
}
.oo-ui-menuOptionWidget.oo-ui-optionWidget-highlighted,
.oo-ui-menuOptionWidget.oo-ui-optionWidget-selected {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
}
.oo-ui-menuOptionWidget.oo-ui-optionWidget-selected.oo-ui-menuOptionWidget.oo-ui-optionWidget-highlighted,
.oo-ui-menuOptionWidget.oo-ui-optionWidget-pressed.oo-ui-menuOptionWidget.oo-ui-optionWidget-highlighted {
color: var(--ooui-accent);
}
.oo-ui-menuOptionWidget.oo-ui-widget-enabled.oo-ui-optionWidget {
color: var(--ooui-text);
}
.oo-ui-messageDialog-title {
color: inherit;
}
.oo-ui-messageWidget.oo-ui-messageWidget-block.oo-ui-flaggedElement-error {
background-color: var(--errorbox-bg);
border-color: var(--errorbox-border);
}
.oo-ui-messageWidget.oo-ui-messageWidget-block.oo-ui-flaggedElement-warning {
background-color: var(--warningbox-bg);
border-color: var(--warningbox-border);
}
.oo-ui-messageWidget.oo-ui-messageWidget-block.oo-ui-flaggedElement-success {
background-color: var(--successbox-bg);
border-color: var(--successbox-border);
}
.oo-ui-messageWidget.oo-ui-messageWidget-block.oo-ui-flaggedElement-notice {
background-color: var(--messagebox-info-background);
border-color: var(--messagebox-info-border);
}
.oo-ui-messageWidget.oo-ui-flaggedElement-error:not(.oo-ui-messageWidget-block),
.oo-ui-messageWidget.oo-ui-flaggedElement-success:not(.oo-ui-messageWidget-block) {
color: var(--ooui-text);
}
.oo-ui-optionWidget.oo-ui-widget-disabled {
color: var(--ooui-disabled-text);
}
.oo-ui-outlineControlsWidget {
background-color: var(--ooui-normal);
}
.oo-ui-outlineOptionWidget.oo-ui-optionWidget-highlighted {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
}
.oo-ui-popupWidget-popup {
background-color: var(--ooui-interface);
border-color: var(--ooui-interface-border);
}
.oo-ui-popupWidget-anchored-top .oo-ui-popupWidget-anchor:after {
border-bottom-color: var(--ooui-interface);
}
.oo-ui-popupWidget-anchored-top .oo-ui-popupWidget-anchor:before {
border-bottom-color: var(--ooui-interface-border);
}
.oo-ui-popupWidget-anchored-bottom .oo-ui-popupWidget-anchor:after {
border-top-color: var(--ooui-interface);
}
.oo-ui-popupWidget-anchored-bottom .oo-ui-popupWidget-anchor:before {
border-top-color: var(--ooui-interface-border);
}
.oo-ui-popupWidget-anchored-start .oo-ui-popupWidget-anchor:after {
border-right-color: var(--ooui-interface);
}
.oo-ui-popupWidget-anchored-start .oo-ui-popupWidget-anchor:before {
border-right-color: var(--ooui-interface-border);
}
.oo-ui-popupWidget-anchored-end .oo-ui-popupWidget-anchor:after {
border-left-color: var(--ooui-interface);
}
.oo-ui-popupWidget-anchored-end .oo-ui-popupWidget-anchor:before {
border-left-color: var(--ooui-interface-border);
}
.oo-ui-searchWidget-query {
border-bottom-color: var(--ooui-interface-border);
}
.oo-ui-selectFileWidget-dropTarget {
background-color: var(--ooui-interface);
border-color: var(--ooui-interface-border);
}
.oo-ui-selectFileWidget.oo-ui-widget-enabled.oo-ui-selectFileWidget-dropTarget {
background-color: var(--ooui-interface);
}
.oo-ui-selectFileWidget.oo-ui-widget-enabled.oo-ui-selectFileWidget-dropTarget:hover {
border-color: var(--ooui-input-border--hover);
}
.oo-ui-tabOptionWidget {
color: var(--ooui-text);
}
.oo-ui-tabSelectWidget-framed .oo-ui-tabOptionWidget.oo-ui-optionWidget-selected {
background-color: var(--body-dark);
color: var(--ooui-text);
}
.oo-ui-tabSelectWidget-framed .oo-ui-tabOptionWidget.oo-ui-optionWidget-selected .oo-ui-labelElement-label {
border-bottom-color: var(--body-border);
}
.oo-ui-tabSelectWidget-framed .oo-ui-tabOptionWidget.oo-ui-widget-enabled:hover,
.oo-ui-tabSelectWidget-framed .oo-ui-tabOptionWidget.oo-ui-widget-enabled:active {
background-color: var(--body-light);
color: var(--ooui-text);
}
.oo-ui-tabSelectWidget-framed .oo-ui-tabOptionWidget.oo-ui-widget-enabled.oo-ui-optionWidget-selected:hover {
background-color: var(--body-dark);
}
.oo-ui-tabSelectWidget-frameless .oo-ui-tabOptionWidget.oo-ui-optionWidget-selected {
color: var(--ooui-progressive);
box-shadow: inset 0 -2px 0 0 var(--ooui-progressive);
}
.oo-ui-tabSelectWidget-frameless .oo-ui-tabOptionWidget.oo-ui-optionWidget-selected:hover,
.oo-ui-tabSelectWidget-frameless .oo-ui-tabOptionWidget.oo-ui-optionWidget-selected:focus {
color: var(--ooui-progressive--hover);
box-shadow: inset 0 -2px 0 0 var(--ooui-progressive--hover);
}
.oo-ui-tabSelectWidget-framed {
background: none;
border-bottom: 1px solid var(--ooui-interface-border);
}
.oo-ui-tabSelectWidget-frameless {
box-shadow: inset 0 -1px 0 0 var(--ooui-interface-border);
}
.oo-ui-tabSelectWidget-mobile {
}
.oo-ui-tabSelectWidget-mobile.oo-ui-tabSelectWidget-framed:after {
background: var(--mobile-navbox-linear-gradient);
}
.oo-ui-tabSelectWidget-mobile.oo-ui-tabSelectWidget-frameless:after {
background: var(--mobile-navbox-linear-gradient);
}
.oo-ui-tagItemWidget {
border-color: var(--ooui-normal-border);
}
.oo-ui-tagItemWidget.oo-ui-widget-enabled {
color: var(--ooui-text);
}
.oo-ui-tagItemWidget.oo-ui-widget-enabled:hover {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
}
.oo-ui-tagItemWidget.oo-ui-widget-enabled:not( .oo-ui-tagItemWidget-fixed ) {
background-color: var(--ooui-normal);
}
.oo-ui-tagItemWidget.oo-ui-widget-enabled .oo-ui-buttonElement-button:hover {
background-color: var(--ooui-normal--hover);
}
.oo-ui-tagMultiselectWidget.oo-ui-widget-enabled {
background-color: var(--ooui-interface);
}
.oo-ui-tagMultiselectWidget.oo-ui-widget-enabled.oo-ui-tagMultiselectWidget-outlined {
background-color: var(--ooui-normal);
}
.oo-ui-tagMultiselectWidget.oo-ui-widget-enabled.oo-ui-tagMultiselectWidget-outlined .oo-ui-tagItemWidget.oo-ui-widget-enabled {
background-color: var(--ooui-interface);
}
.oo-ui-textInputWidget .oo-ui-inputWidget-input {
background-color: var(--ooui-input);
color: var(--ooui-text);
border-color: var(--ooui-input-border);
}
.oo-ui-textInputWidget.oo-ui-widget-enabled .oo-ui-inputWidget-input::placeholder {
color: var(--subtle-color);
}
.oo-ui-textInputWidget.oo-ui-widget-enabled .oo-ui-inputWidget-input:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-textInputWidget.oo-ui-widget-enabled .oo-ui-inputWidget-input[readonly]:not(.oo-ui-pendingElement-pending) {
background-color: var(--ooui-disabled);
color: var(--ooui-disabled-text);
}
.oo-ui-textInputWidget.oo-ui-widget-enabled:hover .oo-ui-inputWidget-input {
border-color: var(--ooui-input-border--hover);
}
.oo-ui-textInputWidget.oo-ui-widget-enabled:hover .oo-ui-inputWidget-input:focus {
border-color: var(--ooui-accent);
}
@media screen and (min-width: 0) {
.oo-ui-textInputWidget.oo-ui-widget-enabled textarea.oo-ui-inputWidget-input:focus {
outline: 1px solid var(--ooui-accent);
}
}
.oo-ui-textInputWidget.oo-ui-widget-disabled .oo-ui-inputWidget-input {
background-color: var(--ooui-disabled);
color: var(--ooui-disabled-text);
text-shadow: none;
border-color: var(--ooui-disabled-border);
}
.oo-ui-toggleSwitchWidget {
background-color: var(--ooui-input);
border-color: var(--ooui-input-border);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled .oo-ui-toggleSwitchWidget-grip {
background-color: var(--ooui-input);
border-color: var(--ooui-input-border);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:hover {
background-color: var(--ooui-input);
border-color: var(--ooui-accent);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:hover .oo-ui-toggleSwitchWidget-grip {
background-color: var(--ooui-input);
border-color: var(--ooui-accent);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:active,
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:active:hover,
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:active:focus {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
box-shadow: inset 0 0 0 1px var(--ooui-progressive--hover);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:active .oo-ui-toggleSwitchWidget-grip,
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:active:hover .oo-ui-toggleSwitchWidget-grip,
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:active:focus .oo-ui-toggleSwitchWidget-grip {
background-color: var(--ooui-input);
border-color: var(--ooui-input);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:focus .oo-ui-toggleSwitchWidget-grip {
border-color: var(--ooui-accent);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled.oo-ui-toggleWidget-on {
background-color: var(--ooui-progressive);
border-color: var(--ooui-progressive);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled.oo-ui-toggleWidget-on .oo-ui-toggleSwitchWidget-grip {
background-color: var(--ooui-input);
border-color: var(--ooui-input);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled.oo-ui-toggleWidget-on:hover {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled.oo-ui-toggleWidget-on:active,
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled.oo-ui-toggleWidget-on:active:hover {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled.oo-ui-toggleWidget-on:focus {
border-color: var(--ooui-progressive);
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-enabled.oo-ui-toggleWidget-on:focus::before {
border-color: #fff;
}
.oo-ui-toggleSwitchWidget.oo-ui-widget-disabled {
background-color: var(--ooui-disabled);
border-color: var(--ooui-disabled);
}
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled > .oo-ui-buttonElement-button {
color: var(--ooui-text);
}
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled > .oo-ui-buttonElement-button:hover {
color: var(--ooui-text);
}
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled > .oo-ui-buttonElement-button:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled.oo-ui-buttonElement-pressed > input.oo-ui-buttonElement-button,
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled > .oo-ui-buttonElement-button:active {
color: var(--ooui-text);
}
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button,
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button:hover {
color: var(--ooui-text);
}
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button:active,
.oo-ui-buttonElement-frameless.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive.oo-ui-buttonElement-pressed > .oo-ui-buttonElement-button {
color: var(--ooui-text);
border-color: var(--ooui-text);
}
.oo-ui-buttonElement-frameless.oo-ui-widget-disabled > .oo-ui-buttonElement-button {
color: var(--ooui-disabled-text);
}
.oo-ui-buttonElement-framed.oo-ui-widget-disabled > .oo-ui-buttonElement-button {
background-color: var(--ooui-disabled);
border-color: var(--ooui-disabled-border);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled > .oo-ui-buttonElement-button {
background-color: var(--ooui-normal);
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled > .oo-ui-buttonElement-button:hover {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled > .oo-ui-buttonElement-button:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-buttonElement-active > .oo-ui-buttonElement-button {
background-color: var(--ooui-progressive--hover);
color: #fff;
border-color: var(--ooui-progressive--hover);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-buttonElement-active > .oo-ui-buttonElement-button:focus {
border-color: var(--ooui-progressive--hover);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled > .oo-ui-buttonElement-button:active,
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-buttonElement-pressed > .oo-ui-buttonElement-button {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive {
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button {
color: var(--ooui-text);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button:hover {
background-color: var(--ooui-normal--hover);
border-color: var(--ooui-progressive--hover);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-destructive > .oo-ui-buttonElement-button {
color: var(--ooui-text);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-destructive > .oo-ui-buttonElement-button:hover {
background-color: var(--ooui-normal--hover);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button {
background-color: var(--ooui-progressive);
border-color: var(--ooui-progressive);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button:hover {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent), inset 0 0 0 2px #fff;
}
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button:active,
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive.oo-ui-buttonElement-pressed > .oo-ui-buttonElement-button,
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive.oo-ui-buttonElement-active > .oo-ui-buttonElement-button,
.oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive.oo-ui-popupToolGroup-active > .oo-ui-buttonElement-button {
color: #fff;
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
}
.oo-ui-pendingElement-pending {
background-image: var(--ooui-pending-background-image);
background-size: 200%;
animation: oo-ui-pendingElement-stripes 6s linear infinite;
}
@keyframes oo-ui-pendingElement-stripes {
100% {
background-position: 100%;
}
}
.oo-ui-messageDialog-content > .oo-ui-window-foot {
outline-color: var(--ooui-interface-border);
}
.oo-ui-messageDialog-message {
color: var(--ooui-text);
}
.oo-ui-messageDialog-actions-horizontal .oo-ui-actionWidget {
border-right-color: var(--ooui-interface-border);
}
.oo-ui-messageDialog-actions-vertical .oo-ui-actionWidget {
border-bottom-color: var(--ooui-interface-border);
}
.oo-ui-processDialog-content .oo-ui-window-head,
.oo-ui-processDialog-content .oo-ui-window-foot {
outline-color: var(--ooui-interface-border);
}
.oo-ui-processDialog .oo-ui-actionWidget > .oo-ui-buttonElement-button {
border-top-color: transparent;
border-bottom-color: transparent;
}
.oo-ui-processDialog .oo-ui-actionWidget > .oo-ui-buttonElement-button:hover,
.oo-ui-processDialog .oo-ui-actionWidget > .oo-ui-buttonElement-button:active {
border-top-color: transparent;
border-bottom-color: transparent;
}
.oo-ui-processDialog .oo-ui-actionWidget:not( .oo-ui-flaggedElement-progressive ):not( .oo-ui-flaggedElement-destructive ) > .oo-ui-buttonElement-button:hover,
.oo-ui-processDialog .oo-ui-actionWidget:not( .oo-ui-flaggedElement-progressive ):not( .oo-ui-flaggedElement-destructive ) > .oo-ui-buttonElement-button:active {
border-right-color: var(--ooui-interface-border);
border-left-color: transparent;
}
.oo-ui-processDialog .oo-ui-actionWidget:not( .oo-ui-flaggedElement-progressive ):not( .oo-ui-flaggedElement-destructive ) > .oo-ui-buttonElement-button:focus {
border-color: var(--ooui-accent);
}
.oo-ui-processDialog-actions-safe .oo-ui-actionWidget > .oo-ui-buttonElement-button,
.oo-ui-processDialog-actions-other .oo-ui-actionWidget > .oo-ui-buttonElement-button {
border-right-color: var(--ooui-normal-border);
border-left-color: transparent;
}
.oo-ui-processDialog-actions-safe .oo-ui-widget-enabled.oo-ui-iconElement:not( .oo-ui-labelElement ) > .oo-ui-buttonElement-button:hover {
background-color: var(--ooui-normal--hover);
border-right-color: var(--ooui-interface-border);
}
.oo-ui-windowManager-modal > .oo-ui-dialog {
background-color: var(--ooui-window-background);
}
.oo-ui-windowManager-modal > .oo-ui-dialog > .oo-ui-window-frame {
background-color: var(--ooui-interface);
}
.oo-ui-windowManager-modal.oo-ui-windowManager-floating > .oo-ui-dialog > .oo-ui-window-frame {
border-color: var(--ooui-interface-border);
}
.oo-ui-window {
color: var(--ooui-text);
}
.oo-ui-toolbar-bar {
background-color: var(--ooui-interface);
color: var(--ooui-text);
}
.oo-ui-toolbar-position-top > .oo-ui-toolbar-bar {
border-bottom-color: var(--body-mid);
}
.oo-ui-toolbar-bar .oo-ui-bookletLayout > .oo-ui-menuLayout-menu {
border-right-color: var(--body-mid);
}
.oo-ui-tool.oo-ui-widget-enabled > .oo-ui-tool-link:hover {
background-color: var(--ooui-normal--hover);
}
.oo-ui-tool.oo-ui-widget-enabled > .oo-ui-tool-link:focus {
outline: 1px solid var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-tool.oo-ui-widget-enabled > .oo-ui-tool-link:active,
.oo-ui-tool.oo-ui-widget-enabled.oo-ui-tool-active > .oo-ui-tool-link,
.oo-ui-tool.oo-ui-widget-enabled.oo-ui-popupToolGroup-active > .oo-ui-tool-link {
background-color: var(--ooui-normal--hover);
color: var(--ooui-accent);
box-shadow: none;
}
.oo-ui-tool.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive > .oo-ui-tool-link {
background-color: var(--ooui-progressive);
}
.oo-ui-tool.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive > .oo-ui-tool-link:hover {
background-color: var(--ooui-progressive--hover);
}
.oo-ui-tool.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive > .oo-ui-tool-link:focus {
box-shadow: inset 0 0 0 1px var(--ooui-accent), inset 0 0 0 2px #fff;
}
.oo-ui-tool.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive > .oo-ui-tool-link:active,
.oo-ui-tool.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive.oo-ui-tool-active > .oo-ui-tool-link {
background-color: var(--ooui-progressive--hover);
}
.oo-ui-listToolGroup-tools .oo-ui-tool.oo-ui-widget-enabled {
background-color: var(--ooui-normal);
}
.oo-ui-listToolGroup-tools .oo-ui-tool.oo-ui-widget-enabled:hover {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
}
.oo-ui-listToolGroup-tools .oo-ui-tool-active.oo-ui-widget-enabled .oo-ui-tool-link .oo-ui-tool-title {
color: var(--ooui-progressive);
}
.oo-ui-menuToolGroup {
border-left-color: var(--body-mid);
border-right-color: var(--body-mid);
}
.oo-ui-popupToolGroup-tools {
background-color: var(--ooui-interface);
border-color: var(--body-mid);
}
.oo-ui-popupToolGroup.oo-ui-widget-enabled > .oo-ui-popupToolGroup-handle:hover {
background-color: var(--ooui-normal--hover);
}
.oo-ui-popupToolGroup.oo-ui-widget-enabled > .oo-ui-popupToolGroup-handle:focus {
outline: 1px solid var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.oo-ui-toolbar-actions .oo-ui-popupToolGroup.oo-ui-widget-enabled > .oo-ui-popupToolGroup-handle:hover {
border-right-color: var(--ooui-normal--hover);
}
.oo-ui-popupToolGroup-tools .oo-ui-tool.oo-ui-widget-enabled .oo-ui-tool-link:focus {
box-shadow: inset 0 0 0 2px var(--ooui-accent);
}
.oo-ui-popupToolGroup-tools .oo-ui-tool-active.oo-ui-widget-enabled .oo-ui-tool-link .oo-ui-tool-title {
color: var(--ooui-progressive);
}
.oo-ui-popupToolGroup.oo-ui-popupToolGroup-active > .oo-ui-popupToolGroup-handle {
background-color: var(--ooui-normal);
color: var(--ooui-accent);
}
.oo-ui-popupToolGroup.oo-ui-popupToolGroup-active > .oo-ui-popupToolGroup-handle:hover {
background-color: var(--ooui-normal--hover);
color: var(--ooui-accent);
}
.oo-ui-bookletLayout-outlinePanel > .oo-ui-outlineControlsWidget {
border-top-color: var(--ooui-interface-border);
}
.oo-ui-bookletLayout > .oo-ui-menuLayout-menu {
border-right-color: var(--ooui-interface-border);
}
.oo-ui-fieldLayout-disabled > .oo-ui-fieldLayout-body > .oo-ui-fieldLayout-header > .oo-ui-labelElement-label {
color: var(--ooui-disabled-text);
}
.oo-ui-panelLayout-framed {
border-color: var(--sidebar);
}
.oo-ui-icon-settings {
background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' width='20' height='20' viewBox='0 0 20 20'%3E%3Ctitle%3Esettings%3C/title%3E%3Cg transform='translate(10 10)'%3E%3Cpath id='a' d='M1.5-10h-3l-1 6.5h5m0 7h-5l1 6.5h3'/%3E%3Cuse xlink:href='%23a' transform='rotate(45)'/%3E%3Cuse xlink:href='%23a' transform='rotate(90)'/%3E%3Cuse xlink:href='%23a' transform='rotate(135)'/%3E%3C/g%3E%3Cpath d='M10 2.5a7.5 7.5 0 0 0 0 15 7.5 7.5 0 0 0 0-15v4a3.5 3.5 0 0 1 0 7 3.5 3.5 0 0 1 0-7'/%3E%3C/svg%3E");
}
.oo-ui-icon-clear {
background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 20 20'%3E%3Ctitle%3Eclear%3C/title%3E%3Cpath d='M10 0a10 10 0 1 0 10 10A10 10 0 0 0 10 0zm5.66 14.24-1.41 1.41L10 11.41l-4.24 4.25-1.42-1.42L8.59 10 4.34 5.76l1.42-1.42L10 8.59l4.24-4.24 1.41 1.41L11.41 10z'/%3E%3C/svg%3E");
}
.mw-widget-dateInputWidget-handle {
background-color: var(--ooui-input);
color: var(--ooui-text);
border-color: var(--ooui-input-border);
}
.mw-widget-dateInputWidget-calendar {
background-color: var(--ooui-interface);
}
.mw-widget-dateInputWidget.oo-ui-widget-enabled .mw-widget-dateInputWidget-handle:hover {
border-color: var(--ooui-input-border--hover);
}
.mw-widget-calendarWidget {
border-color: var(--ooui-interface-border);
}
.mw-widget-calendarWidget:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.mw-widget-calendarWidget-day,
.mw-widget-calendarWidget-day-heading {
color: var(--ooui-text);
}
.mw-widget-calendarWidget-day-additional {
color: var(--ooui-text);
opacity: 0.67;
}
.mw-widget-calendarWidget-day-today {
box-shadow: inset 0 0 0 1px var(--ooui-accent);
}
.mw-widget-calendarWidget-item:hover {
background-color: var(--ooui-progressive);
}
.mw-widget-calendarWidget-item-selected {
background-color: var(--ooui-progressive--hover);
}
.mw-widgets-datetime-calendarWidget {
background-color: var(--ooui-interface);
border-color: var(--ooui-interface-border);
}
.mw-widgets-datetime-calendarWidget:focus {
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent), 0 2px 2px 0 rgba(0, 0, 0, 0.25);
}
.mw-widgets-datetime-calendarWidget-grid .mw-widgets-datetime-calendarWidget-cell.mw-widgets-datetime-calendarWidget-extra .oo-ui-buttonElement-button .oo-ui-labelElement-label {
color: var(--subtle-color);
}
.mw-widgets-datetime-calendarWidget-grid .mw-widgets-datetime-calendarWidget-cell.mw-widgets-datetime-calendarWidget-selected .oo-ui-buttonElement-button {
background-color: var(--ooui-progressive--hover);
}
.mw-widgets-datetime-dateTimeInputWidget-handle {
background-color: var(--ooui-input);
color: var(--ooui-text);
border-color: var(--ooui-input-border);
}
.mw-widgets-datetime-dateTimeInputWidget.oo-ui-widget-enabled.mw-widgets-datetime-dateTimeInputWidget-handle:hover {
border-color: var(--ooui-input-border--hover);
}
.mw-widgets-datetime-dateTimeInputWidget.oo-ui-widget-enabled:hover input,
.mw-widgets-datetime-dateTimeInputWidget.oo-ui-widget-enabled:hover textarea {
border-color: var(--ooui-input-border--hover);
}
.mw-widgets-datetime-dateTimeInputWidget.oo-ui-widget-enabled .mw-widgets-datetime-dateTimeInputWidget-editField:hover {
background-color: var(--ooui-normal);
}
.ve-activated .ve-init-mw-desktopArticleTarget-originalContent #catlinks:hover {
background: var(--ooui-normal--hover);
}
.ve-ui-overlay {
font-family: inherit;
}
.oo-ui-toolbar-position-top .ve-ui-toolbarDialog-position-above {
border-top-color: var(--body-mid);
}
.ve-ce-branchNode-blockSlug,
.ve-ce-branchNode-newSlug {
outline-color: var(--body-border);
background-color: var(--ooui-interface);
}
.ve-ui-specialCharacterPage h3 {
color: var(--byline-color);
}
.ve-ui-specialCharacterPage-character {
border-color: var(--body-mid);
}
.ve-ui-specialCharacterPage-character:hover {
border-color: var(--body-dark);
}
.ve-ce-linkAnnotation.ve-ce-annotation-active {
box-shadow: 0 0 0 1px var(--body-mid);
background: none;
}
.ve-ui-desktopContext .ve-ui-linkContextItem .ve-ui-linkContextItem-label {
border-color: var(--body-border);
}
.ve-ui-mwHelpPopupTool-version-label,
.ve-ui-mwHelpPopupTool-version-link,
.ve-ui-mwHelpPopupTool-version-date {
color: var(--byline-color);
}
.ve-ce-tableCellableNode {
border-color: var(--body-mid);
}
.ve-ce-mwReferencesListNode-muted {
color: var(--byline-color);
}
.ve-ui-mwTemplatePage-description,
.ve-ui-mwParameterPage-label,
.ve-ui-mwParameterPage-description-required,
.ve-ui-mwParameterPage-description-deprecated {
color: var(--byline-color);
}
.mw-widget-titleWidget-menu .mw-widget-titleOptionWidget-description {
color: var(--byline-color);
}
.ve-ui-mwGalleryDialog-menuLayout > .oo-ui-menuLayout-menu,
.ve-ui-mwGalleryDialog-innerMenuLayout > .oo-ui-menuLayout-menu,
.ve-ui-mwGalleryDialog .ve-ui-mwGalleryDialog-image-container,
.ve-ui-targetWidget {
border-color: var(--body-border);
}
.ve-ui-targetWidget:not(.oo-ui-pendingElement-pending) {
background-color: var(--body-main);
}
.ve-ui-mwSaveDialog {
color: var(--ooui-text);
}
.ve-ui-mwSaveDialog-options {
background-color: var(--ooui-interface);
border-color: var(--body-border);
}
.ve-ui-mwSaveDialog-summary {
background-color: var(--ooui-input);
}
.ve-ui-mwSaveDialog-editSummary-count {
border-color: var(--body-border);
}
.ve-ui-mwSaveDialog-license {
color: var(--byline-color);
}
.ve-ui-mwReferenceContextItem-muted {
color: var(--byline-color);
}
.ve-ui-mwNoticesPopupTool-items > div:not(:first-child),
.ve-ui-mwHelpPopupTool-item:not(:first-child) {
border-color: var(--body-border);
}
.ve-ui-mwTransclusionOutlineControlsWidget {
background-color: var(--ooui-interface);
border-top-color: var(--body-border);
}
.ve-ui-mwTransclusionOutlineTemplateWidget-sticky {
background-color: var(--ooui-interface);
}
.ve-ui-mwTransclusionOutlineTemplateWidget .ve-ui-mwTransclusionOutlineParameterWidget.oo-ui-optionWidget-highlighted {
color: var(--ooui-text);
}
.ve-ui-mwTransclusionOutlineTemplateWidget-no-template-parameters {
color: var(--subtle-color);
}
.ve-ui-mwParameterPage-undocumentedLabel {
color: var(--subtle-color);
}
.ve-ui-mwTwoPaneTransclusionDialogLayout > .oo-ui-menuLayout-menu {
border-right: var(--body-border);
}
.ve-ui-mwParameterPage-doc-required,
.ve-ui-mwParameterPage-doc-deprecated,
.ve-ui-mwParameterPage-inlineDescription .ve-ui-mwParameterPage-doc-example {
color: var(--byline-color);
}
.ve-ui-expandableContent-toggle {
background-color: var(--ooui-interface);
}
.ve-ui-expandableContent-fade {
background: linear-gradient(to right, rgba(255, 255, 255, 0) 0, var(--ooui-interface) 90%);
}
.ve-ui-commandHelpDialog-shortcut > kbd,
.ve-ui-commandHelpDialog-sequence > kbd {
background-color: var(--keypress-background);
color: var(--keypress-color);
border-color: var(--keypress-border);
box-shadow: none;
text-shadow: none;
}
.ve-init-mw-desktopArticleTarget-toolbarPlaceholder-floating .ve-init-mw-desktopArticleTarget-toolbarPlaceholder-bar {
background: var(--ooui-interface);
}
.ve-init-mw-desktopArticleTarget-toolbarPlaceholder-bar {
border-bottom-color: var(--body-mid);
}
figure[typeof~='mw:File/Thumb'],
figure[typeof~='mw:File/Frame'],
figure[typeof~='mw:Image/Thumb'],
figure[typeof~='mw:Video/Thumb'],
figure[typeof~='mw:Image/Frame'],
figure[typeof~='mw:Video/Frame'] {
border: none;
background-color: var(--thumb-bg);
}
figure[typeof~='mw:File/Thumb'] > a:first-child > *:first-child:not( .mw-broken-media ),
figure[typeof~='mw:File/Frame'] > a:first-child > *:first-child:not( .mw-broken-media ),
figure[typeof~='mw:Image/Thumb'] > a:first-child > *:first-child:not( .mw-broken-media ),
figure[typeof~='mw:Video/Thumb'] > a:first-child > *:first-child:not( .mw-broken-media ),
figure[typeof~='mw:Image/Frame'] > a:first-child > *:first-child:not( .mw-broken-media ),
figure[typeof~='mw:Video/Frame'] > a:first-child > *:first-child:not( .mw-broken-media ) {
border: none;
background: var(--thumb-bg);
}
figure[typeof~='mw:File/Thumb'] > figcaption,
figure[typeof~='mw:File/Frame'] > figcaption,
figure[typeof~='mw:Image/Thumb'] > figcaption,
figure[typeof~='mw:Video/Thumb'] > figcaption,
figure[typeof~='mw:Image/Frame'] > figcaption,
figure[typeof~='mw:Video/Frame'] > figcaption {
border: none;
background-color: var(--thumb-caption-bg);
padding: 4px 6px;
}
:root {
--keypress-background: #eee;
--keypress-border: #ccc;
--keypress-color: #333;
}
.toc .toctitle > * {
color: #fff;
}
.toc .toctitle > * .toctogglelabel {
color: var(--table-header-link);
}
.navbox .navbox-title {
color: #fff;
}
.navbox .navbox-title a {
color: var(--table-header-link);
}
.archivelist {
background-color: var(--body-light);
border: solid 1px var(--body-border);
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
float: right;
margin: 5px;
padding: 5px;
text-align: center;
width: 120px;
}
.shortcut {
border: 1px solid var(--body-border);
background: var(--body-light);
float: right;
font-size: 0.8em;
margin: 0.5em 0em 0.5em 1em;
padding: 0.5em;
text-align: center;
}
.hatnote,
.seealso {
font-style: italic;
}
.hatnote i,
.seealso i {
font-style: normal;
}
div.hatnote,
div.seealso {
margin: 0.5em 1.6em;
}
div.hatnote + div.hatnote,
div.hatnote + div.seealso,
div.seealso + div.hatnote,
div.seealso + div.seealso {
margin-top: -0.5em;
}
.keypress {
background: var(--keypress-background);
color: var(--keypress-color);
font-family: inherit;
border: 1px solid var(--keypress-border);
border-radius: 2px;
font-size: 0.9em;
margin: 0 0.1em;
padding: 0.1em 0.4em;
white-space: nowrap;
}
.relative-location {
background: var(--body-light);
border: 1px solid var(--body-border);
border-spacing: 0;
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
text-align: center;
}
.relative-location-header {
background: var(--body-dark);
color: #fff;
font-weight: bold;
}
:root {
--documentation-background: #f9fafa;
--documentation-link-color: #e4eaee;
--documentation-headers-color: #fff;
--documentation-header-background: #949eaa;
--documentation-subheader-background: #808c9a;
--documentation-border: #e4eaee;
}
.documentation {
background: var(--documentation-background);
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
margin: 1em 0;
}
.documentation pre,
.documentation code {
background-color: var(--documentation-background);
border-color: var(--documentation-border);
}
.documentation h2,
.documentation hr {
border-color: var(--documentation-border);
}
.documentation-header {
color: var(--documentation-headers-color);
background: var(--documentation-header-background);
font-weight: bold;
padding: 1em 1.5em;
}
.documentation-title {
font-size: 1.25em;
}
.documentation-subheader {
color: var(--documentation-headers-color);
background: var(--documentation-subheader-background);
padding: 0.5em 1.5em;
}
.documentation-subheader a,
.documentation-subheader a:visited,
.documentation-subheader a:active {
color: var(--documentation-link-color);
}
.documentation-documentation,
.documentation-links {
font-size: 0.85em;
}
.documentation-content {
padding: 1em 1.5em;
}
.mw-templatedata-doc-params dl:not(:empty) {
column-count: 3;
border-top: 1px solid var(--body-border);
margin-bottom: 0.5em;
}
.mw-templatedata-doc-params dt::after {
content: ":";
}
.mw-templatedata-doc-params dd,
.mw-templatedata-doc-params dt {
margin: 0.1em 2em;
min-width: auto;
}
.mw-templatedata-doc-muted {
color: var(--subtle-color);
font-style: italic;
}
:root {
--infobox-text-color: var(--text-color);
--table-header: var(--body-dark);
--table-subheader: var(--body-mid);
--table-body: var(--body-light);
--table-border: var(--body-border);
}
.infobox {
font-size: 0.85em;
width: 300px;
border-collapse: collapse;
float: right;
table-layout: fixed;
margin: 0.5em 0 1em 1em;
}
.infobox .infobox-buttons {
display: flex;
flex-wrap: wrap;
justify-content: center;
grid-gap: 3px;
margin-bottom: 3px;
}
.infobox .infobox-buttons .button {
background: var(--table-subheader);
padding: 0 5px;
font-weight: bold;
flex: 1 1 20%;
max-width: 20%;
color: #fff;
}
.infobox .infobox-buttons .button.button-selected {
background: var(--table-header);
}
.infobox tbody {
border: 1px solid var(--table-border);
background: var(--table-body);
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(231, 215, 199, 0.5);
}
.infobox .infobox-header {
background: var(--table-header);
padding: 0.5em 0;
text-align: center;
color: #fff;
font-size: 1.15em;
font-weight: bold;
line-height: 1.4em;
}
.infobox .infobox-image {
text-align: center;
}
.infobox .infobox-subheader {
background: var(--table-subheader);
font-weight: bold;
text-align: center;
color: #fff;
}
.infobox .infobox-subheader a {
color: var(--link-color);
}
.infobox .infobox-padding {
backgound: var(--table-body);
}
.infobox tr td:not(.infobox-padding) {
padding: 0.2em 0.5em;
}
.infobox th:not(.infobox-header):not(.infobox-subheader):not(.infobox-nested) {
border-right: 2px solid var(--table-subheader);
text-align: right;
padding: 0.2em 0.5em;
}
.infobox select {
max-width: 300px;
}
.hidden {
display: none;
}
ol.references,
.reflist {
font-size: 90%;
}
.reflist {
list-style-type: decimal;
}
.reflist .references {
font-size: 100%;
list-style-type: inherit;
}
.reflist-lower-alpha {
list-style-type: lower-alpha;
}
ol.references li:target,
sup.reference:target {
background-color: var(--body-light);
}
.hideQuotes .refhide {
display: none;
}
:root {
--messagebox-obsolete-background: #cfcfcf;
--messagebox-obsolete-border: #464646;
--messagebox-obsolete-color: var(--text-color);
--messagebox-obsolete-link-color: #6c6c6c;
--messagebox-info-background: #ebebeb;
--messagebox-info-border: #898989;
--messagebox-info-color: var(--text-color);
--messagebox-info-link-color: #6c6c6c;
--messagebox-action-background: #c7e8fa;
--messagebox-action-border: #0b5884;
--messagebox-action-color: var(--text-color);
--messagebox-action-link-color: #03436b;
--messagebox-warn-background: #dfc0ba;
--messagebox-warn-border: #861c10;
--messagebox-warn-color: var(--text-color);
--messagebox-warn-link-color: #8e221a;
--messagebox-safe-background: #d8f0d3;
--messagebox-safe-border: #1b8408;
--messagebox-safe-color: var(--text-color);
--messagebox-safe-link-color: #1b8408;
--messagebox-disambig-background: #ebebeb;
--messagebox-disambig-border: #898989;
--messagebox-disambig-color: var(--text-color);
--messagebox-disambig-link-color: #6c6c6c;
--messagebox-discord-background: #5865f2;
--messagebox-discord-border: #4c57d0;
--messagebox-discord-link-color: #d2e5fc;
}
.mw-message-box,
.mw-message-box-error,
.mw-message-box-warning,
.mw-message-box-success,
.usermessage {
color: var(--text-color);
}
.messagebox {
width: 65%;
margin: 0.5em auto;
border-left: 15px solid;
border-color: var(--body-dark);
background-color: var(--body-light);
box-sizing: border-box;
}
.messagebox.obsolete {
background-color: var(--messagebox-obsolete-background);
border-color: var(--messagebox-obsolete-border);
color: var(--messagebox-obsolete-color);
}
.messagebox.obsolete a,
.messagebox.obsolete a:visited,
.messagebox.obsolete a:active {
color: var(--messagebox-obsolete-link-color);
}
.messagebox.info {
background-color: var(--messagebox-info-background);
border-color: var(--messagebox-info-border);
color: var(--messagebox-info-color);
}
.messagebox.info a,
.messagebox.info a:visited,
.messagebox.info a:active {
color: var(--messagebox-info-link-color);
}
.messagebox.action {
background-color: var(--messagebox-action-background);
border-color: var(--messagebox-action-border);
color: var(--messagebox-action-color);
}
.messagebox.action a,
.messagebox.action a:visited,
.messagebox.action a:active {
color: var(--messagebox-action-link-color);
}
.messagebox.warn {
background-color: var(--messagebox-warn-background);
border-color: var(--messagebox-warn-border);
color: var(--messagebox-warn-color);
}
.messagebox.warn a,
.messagebox.warn a:visited,
.messagebox.warn a:active {
color: var(--messagebox-warn-link-color);
}
.messagebox.safe {
background-color: var(--messagebox-safe-background);
border-color: var(--messagebox-safe-border);
color: var(--messagebox-safe-color);
}
.messagebox.safe a,
.messagebox.safe a:visited,
.messagebox.safe a:active {
color: var(--messagebox-safe-link-color);
}
.messagebox.disambig {
background-color: var(--messagebox-disambig-background);
border-color: var(--messagebox-disambig-border);
color: var(--messagebox-disambig-color);
}
.messagebox.disambig a,
.messagebox.disambig a:visited,
.messagebox.disambig a:active {
color: var(--messagebox-disambig-link-color);
}
.messagebox.discord {
background-color: var(--messagebox-discord-background);
border-color: var(--messagebox-discord-border);
color: #fff;
}
.messagebox.discord a,
.messagebox.discord a:visited,
.messagebox.discord a:active {
color: var(--messagebox-discord-link-color);
}
.messagebox.discord a.external,
.messagebox.discord a:visited.external,
.messagebox.discord a:active.external {
font-style: italic;
}
.messagebox.stub {
width: 40%;
}
.messagebox.hasdialogue {
padding: 0 10px;
width: auto;
}
:root {
--byline-arrow-filter: invert(29%) sepia(0%) saturate(376%) hue-rotate(172deg) brightness(87%) contrast(80%);
--tile-border-color: var(--body-border);
--tile-background-color: var(--body-light);
--tile-link-button-color: #f5e9db;
--tile-link-button-highlight-color: #dfccb0;
--tile-dark-color: #fff;
--tile-dark-bg: var(--body-dark);
--tile-dark-link-color: #ccc;
--tile-dark-byline-color: rgba(255, 255, 255, 0.7);
--tile-dark-header-color: #fff;
}
.tile {
background: var(--tile-background-color);
border: 1px solid var(--tile-border-color);
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
padding: 1.5em 2em 1em;
max-width: 40em;
}
.tile h2 {
font-size: 1.4em;
font-weight: bold;
border: none;
margin: 0 0 0.4em;
}
.tile .byline + h2 {
margin-top: -0.5em;
}
.tile.dark {
color: var(--tile-dark-color);
background: var(--tile-dark-bg);
border: none;
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.3);
}
.tile.dark h2 {
color: var(--tile-dark-header-color);
}
.tile.dark a {
color: var(--tile-dark-link-color);
}
.tile.dark .byline {
color: var(--tile-dark-byline-color);
}
.byline {
font-size: 0.9em;
color: var(--byline-color);
}
.byline a {
color: var(--byline-color);
}
.tile-row {
display: flex;
flex-flow: row wrap;
margin-bottom: 1em;
}
.tile-halves {
display: flex;
flex-flow: row wrap;
background: var(--tile-background-color);
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
}
.tile-halves h2 {
font-size: 1.4em;
font-weight: bold;
border: none;
margin: 0 0 0.4em;
}
.tile-halves .byline + h2 {
margin-top: -0.5em;
}
.tile-top {
width: 100%;
padding: 1.3rem 1.5rem 0.6rem;
}
.tile-top.tile-image {
display: flex;
align-items: center;
background-color: var(--body-light);
overflow: hidden;
padding: 0;
height: 13vw;
max-height: 12em;
transition: 0.4s ease-out;
}
.tile-halves:hover .tile-top.tile-image img {
transform: scale(1.1);
transition: 0.5s ease-out;
}
.tile-top.tile-image a {
width: 100%;
}
.tile-top.tile-image img {
width: 100%;
object-fit: cover;
max-height: 200px;
transition: 0.4s ease-out;
}
.tile-bottom {
background: var(--body-dark);
width: 100%;
padding: 1rem 1.5rem 0.6rem;
}
.tile-bottom h2 a {
color: #fff !important;
}
.tile-bottom.link-button {
align-self: flex-end;
padding: 0;
}
.tile-bottom.link-button a {
display: block;
text-align: center;
padding: 0.75em 1.5em 0.8em;
text-decoration: none;
}
.tile-bottom.read-more {
background: var(--tile-link-button-color);
transition: 0.3s ease-out;
}
.tile-bottom.read-more a {
color: var(--byline-color);
font-weight: bold;
text-align: right;
}
.tile-bottom.read-more:hover {
background: var(--tile-link-button-highlight-color);
}
.tile-bottom.read-more:hover .arrow {
transform: translateX(50%);
}
.tile-bottom.read-more .arrow {
filter: var(--byline-arrow-filter);
margin-left: 0.4em;
transition: 0.3s ease-out;
}
body.page-Main_Page.action-view .catlinks,
body.page-Main_Page.action-view #contentSub,
body.page-Main_Page.action-view #firstHeading,
body.page-Main_Page.action-view #siteNotice {
display: none;
}
body.page-Main_Page .mw-parser-output {
max-width: 75em;
margin: 0 auto;
}
body.page-Main_Page.action-view .catlinks,
body.page-Main_Page.action-view #contentSub,
body.page-Main_Page.action-view #siteNotice {
display: none;
}
.mainpage-header {
display: flex;
margin: 2.6em 1.75em 1.5em;
}
.mainpage-header .header-intro {
flex: 2;
}
.mainpage-header .header-intro h1 {
font-size: 2.5em;
font-weight: bold;
border: none;
margin: 0 0 0.15em;
}
.mainpage-header .header-intro p {
font-size: 1.1em;
line-height: 1.7em;
}
.mainpage-header .header-stats {
flex: 1;
display: flex;
justify-content: center;
align-items: center;
margin-top: -1em;
}
.mainpage-body {
display: grid;
grid-template-areas: "event event event" "update update update" "content content content" "left left right";
gap: 0.9rem;
grid-template-columns: repeat(3, 1fr);
}
.mainpage-body h2 a {
color: var(--text-color);
}
.mainpage-body .tile {
padding-left: 1.75em;
padding-right: 1.75em;
max-width: 100%;
}
.mainpage-body .tile-row {
width: 100%;
margin-bottom: 0;
}
.mainpage-body .tile-row {
display: grid;
gap: 0.9rem;
}
.mainpage-contents.tile-row {
display: flex;
}
.mainpage-contents.tile-row .tile-top {
height: 5.5rem;
}
.mainpage-left {
grid-area: left;
flex: 2;
display: flex;
flex-flow: column wrap;
}
.mainpage-left > * {
margin: 0 0 0.9rem;
}
.mainpage-right {
grid-area: right;
flex: 1;
display: flex;
flex-flow: column wrap;
}
.mainpage-right > * {
margin: 0 0 0.9rem;
}
.arrow {
background: url('filepath://White-chevron.svg') no-repeat;
display: inline-block;
height: 0.7rem;
width: 0.45rem;
vertical-align: middle;
}
.arrow.dark {
filter: invert(80%);
}
.mainpage-contents {
grid-area: content;
grid-template-columns: repeat(6, 1fr);
}
.mainpage-contents .tile-halves {
flex: 1;
}
.mainpage-contents .tile-top {
height: 4.5rem;
position: relative;
}
.mainpage-contents .tile-top.tile-image img {
height: auto;
}
.mainpage-contents h2 {
margin: 0;
padding: 0;
}
.mainpage-contents .tile-bottom.link-button a {
padding: 0.75em 0.2em;
}
.popular-pages ul {
display: grid;
grid-template-columns: repeat(3, 1fr);
grid-gap: 0.6em;
margin: 1em 0 0.7em 0;
}
.mp-popular-page-light {
display: flex;
align-items: center;
background-color: var(--button-background);
transition: 100ms;
}
.mp-popular-page-light a {
flex: 1;
display: block;
color: #fff;
font-weight: bold;
text-align: center;
text-decoration: none;
padding: 0.7em 1em;
}
.mp-popular-page-light:hover {
filter: brightness(115%);
transition: 100ms;
}
.mainpage-social {
border: none;
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.3);
}
.mainpage-social .tile-top {
display: flex;
align-items: center;
padding: 1em 1.5em;
}
.mainpage-social .tile-top a {
flex: 1;
position: relative;
text-decoration: none;
}
.mainpage-social .tile-top a:hover .arrow {
transform: translateX(50%);
}
.mainpage-social .tile-bottom {
border: none;
padding: 1em 1.75em;
}
.mainpage-social .tile-bottom p {
color: #fff;
font-weight: bold;
font-size: 0.9em;
text-align: center;
text-transform: uppercase;
letter-spacing: 0.03em;
margin: 0;
}
.mainpage-social .social-icon {
margin-right: 0.75em;
text-align: center;
width: 60px;
}
.mainpage-social .social-header {
color: #fff;
font-weight: bold;
font-size: 1.15em;
margin: 0.5em 0 -0.15em;
}
.mainpage-social .server-tagline {
color: rgba(255, 255, 255, 0.9);
margin-bottom: 0.5em;
}
.mainpage-social .arrow {
position: absolute;
top: calc(50% - .5em);
right: 0;
height: 1em;
width: 0.7em;
background-size: 0.7em 1em;
transition: 0.3s ease-out;
}
.mainpage-social.mainpage-discord .tile-top {
background: #5865f2;
}
.mainpage-social.mainpage-discord .tile-bottom {
background: #525ee0;
}
.mainpage-social.mainpage-twitter .tile-top {
background: #15202b;
}
.mainpage-social.mainpage-twitter .tile-bottom {
background: #121c26;
}
.mainpage-editing {
border: none;
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.3);
}
.mainpage-editing .tile-top {
background: #438ab5;
}
.mainpage-editing .tile-bottom {
background: #3980ab;
border: none;
padding: 0.8rem 1.5rem 0.4rem;
}
.mainpage-editing h2,
.mainpage-editing a {
color: #fff;
}
.mainpage-editing p {
color: rgba(255, 255, 255, 0.9);
}
.mainpage-editing ul {
list-style-image: url('filepath://Transparent-chevron.svg');
}
@media only screen and (max-width: 1200px) {
.mainpage-contents {
grid-template-columns: repeat(3, 1fr);
}
}
@media only screen and (max-width: 1000px) {
.mainpage-body {
grid-template-areas: "event event event" "update update update" "content content content" "left left left" "right right right";
}
.mainpage-recent-updates {
grid-template-columns: repeat(2, 1fr);
}
.mainpage-recent-updates .tile-halves:last-child {
display: none;
}
.mainpage-recent-updates .tile-halves:hover .tile-top img {
transform: scale(1.04);
}
.mainpage-recent-updates .tile-top {
height: 18vw;
min-height: 9em;
}
.mainpage-header .header-stats {
display: none;
}
.mainpage-left > *:last-child,
.mainpage-right > *:last-child {
margin-bottom: 0;
}
.popular-pages ul {
grid-template-columns: repeat(2, 1fr);
}
}
@media only screen and (max-width: 720px) {
.mainpage-recent-updates {
grid-template-columns: none;
}
.mainpage-recent-updates .tile-halves:last-child {
display: flex;
}
.mainpage-contents {
grid-template-columns: repeat(2, 1fr);
}
}
.mw-prefs-buttons {
background-color: var(--body-main);
border-top-color: var(--body-border);
box-shadow: none;
}
.mw-prefs-tabs-wrapper.oo-ui-panelLayout-framed,
.mw-prefs-tabs > .oo-ui-menuLayout-content > .oo-ui-indexLayout-stackLayout > .oo-ui-tabPanelLayout {
border-color: var(--body-border);
}
.mw-htmlform-ooui .mw-htmlform-matrix tbody tr:nth-child(even) td {
background-color: var(--body-light);
}
.mw-htmlform-ooui .mw-htmlform-matrix tbody tr:hover td {
background-color: var(--body-mid);
}
:root {
--rc-positive-color: #407813;
--rc-negative-color: #b41e0f;
}
.mw-plusminus-pos {
color: var(--rc-positive-color);
}
.mw-plusminus-neg {
color: var(--rc-negative-color);
}
.client-js .mw-recentchanges-toplinks:not(.mw-recentchanges-toplinks-collapsed) {
border-color: var(--body-border);
background-color: var(--body-light);
border-radius: 2px;
}
.mw-rcfilters-ui-filterTagMultiselectWidget-wrapper-content-title {
color: var(--text-color);
}
.mw-rcfilters-ui-filterTagMultiselectWidget-emptyFilters {
color: var(--byline-color);
}
.mw-rcfilters-ui-filterTagMultiselectWidget.oo-ui-widget-enabled .oo-ui-tagMultiselectWidget-handle {
background-color: var(--ooui-interface);
border-color: var(--ooui-interface-border);
}
.mw-rcfilters-ui-filterTagMultiselectWidget-views-select-widget.oo-ui-widget {
border-color: var(--ooui-interface-border);
}
.mw-rcfilters-collapsed .mw-rcfilters-ui-filterTagMultiselectWidget {
border-bottom-color: var(--ooui-interface-border);
}
.mw-rcfilters-ui-menuSelectWidget-footer {
background-color: var(--ooui-interface);
border-color: var(--ooui-interface-border);
}
.mw-rcfilters-ui-viewSwitchWidget label.oo-ui-labelWidget {
color: var(--byline-color);
}
.mw-rcfilters-ui-tagItemWidget-popup-content {
color: var(--ooui-text);
}
.mw-changeslist-legend,
.mw-rcfilters-ui-changesListWrapperWidget .mw-changeslist-legend {
background-color: var(--body-light);
border-color: var(--body-dark);
}
.mw-rcfilters-ui-changesListWrapperWidget-previousChangesIndicator {
border-color: var(--sidebar);
}
.client-js .mw-changeslist ul,
.client-js .mw-changeslist table.mw-enhanced-rc {
margin-left: 0;
}
.mw-rcfilters-ui-watchlistTopSectionWidget-separator {
border-color: var(--sidebar);
}
.mw-rcfilters-ui-itemMenuOptionWidget-header {
border-bottom-color: var(--ooui-interface);
background-color: var(--ooui-interface-border);
}
.mw-rcfilters-ui-itemMenuOptionWidget:not(:last-child):not(.mw-rcfilters-ui-itemMenuOptionWidget-identifier-talk) {
border-bottom-color: var(--ooui-normal-border);
}
.mw-rcfilters-ui-itemMenuOptionWidget-label-title,
.mw-rcfilters-ui-itemMenuOptionWidget-label-desc {
color: var(--text-color);
}
.mw-rcfilters-ui-filterMenuOptionWidget.oo-ui-flaggedElement-muted:not(.oo-ui-optionWidget-selected) {
background-color: var(--body-main);
}
.mw-rcfilters-ui-filterMenuOptionWidget.oo-ui-flaggedElement-muted .mw-rcfilters-ui-itemMenuOptionWidget-label-title,
.mw-rcfilters-ui-filterMenuOptionWidget.oo-ui-flaggedElement-muted .mw-rcfilters-ui-itemMenuOptionWidget-label-desc {
color: var(--subtle-color);
}
.mw-rcfilters-ui-filterMenuSectionOptionWidget {
background-color: var(--body-mid);
}
.mw-rcfilters-ui-filterMenuSectionOptionWidget-header-title.oo-ui-labelElement-label {
color: var(--ooui-text);
}
.mw-rcfilters-ui-filterMenuHeaderWidget-title {
color: var(--ooui-text);
}
.mw-rcfilters-ui-filterMenuHeaderWidget-header {
border-bottom-color: var(--ooui-interface-border);
background-color: var(--ooui-interface);
}
.mw-rcfilters-ui-itemMenuOptionWidget-view-namespaces {
border-top-color: var(--ooui-interface-border);
}
.mw-rcfilters-ui-datePopupWidget {
border-color: var(--ooui-interface-border);
}
.mw-rcfilters-ui-datePopupWidget .mw-rcfilters-ui-valuePickerWidget-title {
color: var(--byline-color);
}
.mw-rcfilters-ui-savedLinksListItemWidget-label {
color: var(--ooui-accent);
}
.client-js .mw-changeslist.mw-rcfilters-ui-changesListWrapperWidget-highlighted ul,
.client-js .mw-changeslist.mw-rcfilters-ui-changesListWrapperWidget-highlighted table.mw-enhanced-rc {
margin-left: 1.5em;
}
.page-Special_CreateAccount .mw-ui-container,
.page-Special_UserLogin .mw-ui-container {
max-width: 64rem;
margin: 0 auto;
}
.mw-number-text {
color: var(--byline-color);
}
.mw-body-content .mw-number-text h3 {
color: var(--text-color);
}
#mw-indicator-mw-helplink a {
background: none;
padding: 0;
display: flex;
align-items: center;
}
#mw-indicator-mw-helplink a::before {
content: '';
margin-right: 5px;
-webkit-mask: url("/resources/src/mediawiki.helplink/images/helpNotice.svg?46d34") no-repeat 50% 50% / contain;
mask: url("/resources/src/mediawiki.helplink/images/helpNotice.svg?46d34") no-repeat 50% 50% / contain;
background: var(--text-color);
height: 20px;
width: 20px;
}
.results-info {
color: inherit;
}
.mw-search-profile-tabs {
background-color: var(--body-mid);
border-color: transparent;
}
.search-types .current a {
color: inherit;
}
#mw-searchoptions {
background-color: var(--body-mid);
border-color: transparent;
}
#mw-searchoptions .divider {
border-color: var(--body-border);
}
#mw-searchoptions h4 {
font-family: inherit;
}
#mw-searchoptions .oo-ui-labelElement:nth-of-type(odd) {
font-weight: bold;
}
.searchresult {
line-height: 1.5;
}
.searchalttitle,
#mw-search-interwiki li {
font-size: 90%;
}
.mw-search-result-data {
color: var(--byline-color);
}
.page-Special_ListFiles a.image img {
width: inherit;
height: inherit;
}
.page-Special_ListFiles .TablePager_col_thumb {
text-align: center;
}
#editcount table[border="1"] {
background-color: var(--body-main) !important;
border-color: var(--wikitable-border) !important;
margin-top: 0.5em;
}
#editcount table[border="1"] th,
#editcount table[border="1"] td {
padding: 0.2em 0.4em;
}
#editcount table[border="1"] th {
background-color: var(--wikitable-header-bg);
border: 1px solid var(--wikitable-border);
}
#editcount table[border="1"] td {
border: 1px solid var(--wikitable-border);
}
#editcount table[border="1"] tr:nth-child(odd) {
background-color: var(--body-light);
}
.mw-echo-ui-notificationBadgeButtonPopupWidget-popup > .oo-ui-popupWidget-popup .mw-echo-ui-placeholderItemWidget {
background-color: inherit;
}
table.mw-interwikitable.body td.mw-interwikitable-local-yes {
background-color: var(--table-yes-background);
color: var(--table-yes-color);
}
.mw-protectedpages-unknown {
color: var(--byline-color);
}
.watchlistredir,
.allpagesredirect {
font-style: italic;
}
.allpagesredirect:after {
color: var(--byline-color);
content: " (redirect)";
}
.mw-apisandbox-toolbar {
background: var(--body-main);
}
.oo-ui-menuOptionWidget .mw-apisandbox-flag {
color: var(--byline-color);
}
tr.mw-abusefilter-list-disabled,
tr.mw-abusefilter-list-disabled td {
color: var(--byline-color);
}
table.mw-abuselog-details {
background: var(--wikitable-bg);
border-color: var(--wikitable-border);
}
table.mw-abuselog-details th {
background: var(--wikitable-header-bg);
}
table.mw-abuselog-details th,
table.mw-abuselog-details td {
border-color: var(--wikitable-border);
}
.mw-abusefilter-log-hidden-entry {
color: var(--subtle-color);
}
body td.mw-abusefilter-history-changed {
background: var(--table-no-background);
}
div.mw-abusefilter-editor,
#mw-abusefilter-warn-preview,
#mw-abusefilter-disallow-preview {
border-color: var(--ooui-input-border);
}
.mw-destfile-warning {
border-color: var(--warningbox-border);
color: var(--text-color);
background-color: var(--warningbox-bg);
}
span.fileinput-button {
background-color: var(--ooui-normal);
border-color: var(--ooui-normal-border);
color: var(--ooui-text);
}
ul.fileupload-results li.ful-success {
background-color: var(--successbox-bg);
}
ul.fileupload-results li.ful-success a {
color: var(--link-color);
}
ul.fileupload-results li.ful-error {
background-color: var(--errorbox-bg);
}
.color-container {
display: flex;
margin: 2em auto;
width: 80%;
max-width: 60em;
}
.color-column {
flex: 1;
margin-right: 1em;
}
.color-column:last-child {
margin-right: 0;
}
.color-column h3 {
padding: 0;
}
.color-group {
color: #333;
padding: 1em 1.5em;
transition: 0.2s ease-out;
}
.color-group:hover {
transform: scale(1.03);
}
.color-group.dark {
color: #fff;
}
.color-group .variable,
.color-group .hexcode {
font-family: monospace;
font-size: 1.1em;
-webkit-user-select: all;
-moz-user-select: all;
-ms-user-select: all;
user-select: all;
margin: 0;
}
body.wgl-readermode .color-group .variable,
body.wgl-readermode .color-group .hexcode {
font-size: inherit;
}
.color-group .variable {
font-weight: bold;
}
#t-print,
#t-permalink {
display: none;
}
#filetoc {
border-radius: 2px;
background: var(--body-mid);
border-color: transparent;
margin: 0.5em auto;
text-align: center;
box-shadow: 0 0.25rem 0.35rem -0.25rem rgba(0, 0, 0, 0.1);
}
li.gallerybox div.thumb {
border: none;
background-color: var(--thumb-bg);
}
.smwfact {
display: none;
}
.list-header {
background-color: var(--body-mid);
color: inherit;
}
.editOptions {
color: var(--text-color);
background-color: var(--sourceeditor-background-secondary);
border-color: var(--sourceeditor-border);
}
.mw-json th,
.mw-json td {
border-color: var(--wikitable-border);
}
.mw-json td {
background: var(--wikitable-bg);
}
.mw-json th {
background: var(--wikitable-header-bg);
}
7d8f1fd65678c81a1966a8153eaacd9c04e1f5ab
Professions
0
56
2307
2056
2024-04-11T20:36:52Z
Merds
25
/* List of professions */
wikitext
text/x-wiki
'''Professions''' are skills that [[player]]s can train and utilise in [[Brighter Shores]]. Most professions can either be trained by the player actively playing the game, or passively while the game is closed.
As the player progresses through the game, more professions will become available for the player to learn. Players aren't limited to one profession at a time; they can utilise multiple at once.{{CiteGeneral|url=https://www.gamesradar.com/runescape-creator-answers-our-biggest-questions-about-his-new-mmo-brighter-shores-classes-professions-monetization-and-a-ttrpg-open-world/|title=RuneScape creator answers our biggest questions about his new MMO Brighter Shores: classes, professions, monetization, and a TTRPG open world|author=Austin Wood|date=23 March 2024|accessdate=23 March 2024|archiveurl=https://archive.is/AxMwI|archivedate=23 March 2024|name=griv}}
==Passive training==
Unlike other similar MMOs, players can continue to perform certain profession-related activities while logged out of the game. Activities eligible for passive training are marked with a moon icon [[File:Passive activity icon.png|18px]].
==List of professions==
{| class="wikitable align-center-1"
! colspan="2" | Name !! Uses
|-
| [[File:Profession fisher.png|x30px|link=Fisher]] || [[Fisher]] || Catching various [[fish]]
|-
| [[File:Profession forager.png|x30px|link=Forager]] || [[Forager]] || Gathering items
|-
| || [[Chef]] || Cooking [[food]] items
|-
| [[File:Woodcutter icon.png|x30px|link=Woodcutter]] || [[Woodcutter]] || Chopping down [[tree]]s
|-
| || [[Miner]] || Mining [[mineral]]s
|-
| [[File:Profession alchemist.png|x30px|link=Alchemist]] || [[Alchemist]] || Brewing [[potion]]s
|-
| || [[Stonemason]] ||
|-
| || [[Merchant]] ||
|-
| || [[Blacksmith]] ||
|}
==Gallery==
<gallery mode="packed" heights="160">
File:Professions preview 1.jpg|Fisher, Forager, Chef
File:Professions preview 2.jpg|Woodcutter, Miner, Alchemist
File:Professions preview 3.jpg|Stonemason, Merchant, Blacksmith
</gallery>
==References==
{{Reflist}}
{{Professions}}
{{Mechanics}}
2ce2db343635e1951b47655d9ba8ec7493fd7687
MediaWiki:Common.less/interface.less
8
16
2308
1663
2024-04-11T22:42:47Z
Merds
25
less
less
/* =====================
Common MediaWiki
elements inside .mw-body
===================== */
:root {
--errorbox-bg: @bridesmaid;
--errorbox-border: @flamingo;
--warningbox-bg: @half-dutch;
--warningbox-border: @supernova;
--successbox-bg: @frost;
--successbox-border: @lima;
}
// core mw messagebox
.mw-message-box-error, .errorbox,
.mw-message-box-warning, .warningbox,
.mw-message-box-success, .successbox,
// anon talk page message alert
.usermessage {
box-shadow: @box-shadow;
}
.mw-message-box-error, .errorbox {
background-color: var(--errorbox-bg);
border-color: var(--errorbox-border);
}
.mw-message-box-warning, .warningbox,
.usermessage {
background-color: var(--warningbox-bg);
border-color: var(--warningbox-border);
}
.mw-message-box-success, .successbox {
background-color: var(--successbox-bg);
border-color: var(--successbox-border);
}
.catlinks {
background: var(--body-light);
border: 1px solid var(--body-dark);
padding: 8px 15px;
box-shadow: @box-shadow;
li {
border-color: var(--body-mid);
}
}
// checkered background in file pages
.filehistory a img,
#file img {
background: url("data:image/svg+xml,%3C%3Fxml version='1.0' encoding='UTF-8'%3F%3E%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16'%3E%3Cpath d='M0 0h8v16h8V8H0z' opacity='.13'/%3E%3C/svg%3E") repeat;
}
#file img:hover {
background: none;
}
// Prevents undesired background showing when next to expanded toc
.mw-highlight {
background: none;
.linenos {
background-color: var(--mw-code-background-color);
// line number
color: var(--body-border);
}
// line number hover
a:hover .linenos,
.hll a .linenos {
color: var(--body-dark);
}
}
.mw-content-ltr.mw-highlight-lines pre,
.mw-content-ltr.content .mw-highlight-lines pre {
box-shadow: inset 2.75em 0 0 var(--mw-code-background-color);
}
// page history
#pagehistory {
ul {
list-style: none;
margin: 0;
}
li {
border: 1px solid transparent;
padding: 1px 10px;
margin: 2px 0;
&.selected {
background-color: var(--body-light);
color: inherit;
border: 1px dashed var(--body-border);
outline: none;
}
}
}
// Sticky compare rev
#mw-history-compare > div:first-of-type {
position: -webkit-sticky;
position: sticky;
top: 0;
background-color: var(--body-main);
border-bottom: 1px solid @BODY_DARK;
padding: .25em 0;
.wgl-stickyheader & {
top: 2.5rem; // = height of stickyheader
}
}
// auto section edit summaries
.autocomment,
.autocomment a,
.autocomment a:visited {
color: var(--link-color);
}
// revdeleted logs: "(log details removed)"
li span.deleted,
span.history-deleted {
color: var(--byline-color);
}
// redlinked contribs page for users without edits
.mw-usertoollinks-contribs-no-edits,
.mw-usertoollinks-contribs-no-edits:visited {
color: var(--redlink-color);
}
.CategoryTreeToggle {
color: var(--link-color);
}
/* --------------------------------------
fix section heading being hidden
underneath sticky header
-------------------------------------- */
// technique from <https://css-tricks.com/hash-tag-links-padding/>
body.wgl-stickyheader.action-view .mw-headline:target::before {
display: block;
content: '';
margin-top: -3rem;
height: 3rem;
visibility: hidden;
pointer-events: none;
}
/* ------------------------
MultimediaViewer
------------------------*/
// main lightbox
.mw-mmv-post-image {
color: var(--text-color);
background-color: var(--body-main);
}
// metadata panel
.mw-mmv-image-metadata {
border-top-color: var(--body-mid);
background-color: var(--body-light);
}
// download box and etc
.mw-mmv-dialog,
.mw-mmv-dialog .mw-mmv-dialog-down-arrow,
.mw-mmv-options-dialog .mw-mmv-dialog-down-arrow {
background-color: var(--body-light);
box-shadow: none;
}
// activation box header
.mw-mmv-options-enable-alert {
background-color: var(--body-light);
color: var(--text-color);
}
// use consistent text color for all for simplicity
.mw-mmv-options-dialog-header,
.mw-mmv-options-text-header,
.mw-mmv-options-text-body,
// activation box
.mw-mmv-options-enable-alert,
// deactivation box
.mw-mmv-options-dialog .mw-mmv-disable-confirmation .mw-mmv-options-dialog-header,
.mw-mmv-options-dialog .mw-mmv-disable-confirmation .mw-mmv-options-text-header {
color: var(--text-color);
}
/* ------------------------
RevisionSlider
------------------------*/
.mw-revslider-container {
border-color: var(--sidebar);
}
.mw-revslider-slider-wrapper {
border-top-color: var(--sidebar);
}
/* ------------------------
mediawiki.ui
------------------------*/
.mw-ui {
&-button {
background-color: var(--ooui-normal);
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
&:not(:disabled) {
&:hover,
&:active {
background-color: var(--ooui-normal--hover);
color: var(--ooui-text);
border-color: var(--ooui-normal-border);
}
&:focus {
color: var(--ooui-text);
border-color: var(--ooui-accent);
box-shadow: inset 0 0 0 1px var(--ooui-accent),inset 0 0 0 2px #fff;
}
// there's an override for it
&:visited {
color: var(--ooui-text);
}
}
&.mw-ui-progressive {
&:not(:disabled) {
background-color: var(--ooui-progressive);
color: #fff;
border-color: var(--ooui-progressive);
&:hover {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
}
&:focus {
box-shadow: inset 0 0 0 1px var(--ooui-accent),inset 0 0 0 2px #fff;
}
&:active,
&.is-on {
background-color: var(--ooui-progressive--hover);
border-color: var(--ooui-progressive--hover);
box-shadow: none;
}
}
}
}
// a lot of these need to be redefined since they have the same specificity
// as the above
&-button&-destructive:not( :disabled ) {
color: #fff;
}
&-button&-quiet,
&-button&-quiet&-progressive,
&-button&-quiet&-destructive {
// background-color: transparent;
color: var(--text-color);
}
input[type='checkbox']:hover + &-button&-quiet,
input[type='checkbox']:hover + &-button&-quiet&-progressive,
input[type='checkbox']:hover + &-button&-quiet&-destructive,
&-button&-quiet:hover,
&-button&-quiet&-progressive:hover,
&-button&-quiet&-destructive:hover {
background-color: rgba(0,24,73,0.02745098);
color: var(--text-color);
border-color: transparent
}
input[type='checkbox']:focus + &-button&-quiet,
input[type='checkbox']:focus + &-button&-quiet&-progressive,
input[type='checkbox']:focus + &-button&-quiet&-destructive,
&-button&-quiet:focus,
&-button&-quiet&-progressive:focus,
&-button&-quiet&-destructive:focus {
color: var(--text-color);
// border-color: #36c;
// box-shadow: inset 0 0 0 1px #36c,inset 0 0 0 2px #fff
}
input[type='checkbox']:active + &-button&-quiet,
input[type='checkbox']:active + &-button&-quiet&-progressive,
input[type='checkbox']:active + &-button&-quiet&-destructive,
&-button&-quiet:active,
&-button&-quiet&-progressive:active,
&-button&-quiet&-destructive:active {
background-color: rgba(0,36,73,0.08235294);
color: var(--text-color);
border-color: #72777d;
// box-shadow: none
}
&-input {
background-color: var(--ooui-input);
color: var(--text-color);
border-color: var(--ooui-input-border);
&:hover {
border-color: var(--ooui-input-border--hover);
}
&::placeholder {
color: var(--byline-color);
}
}
}
/* ------------------------
Redirects
------------------------*/
// convert to mask
.mw-content-ltr .redirectText li {
&:first-child {
padding: 0;
background: 0;
&::before {
content:'';
background: currentcolor;
.mask("filepath://Redirect-arrow.svg");
display: inline-block;
width: 47px;
height: 20px;
}
}
}
/* -------------------------------------------------------------
HEADER bits because I'm not sure where I can put this
------------------------------------------------------------ */
/* Search bar */
.vector-search-box-inner {
background: var(--body-main) !important;
box-shadow: inset 0 -7px 7px -7px rgba(0,0,0,0.15) !important;
}
/* "More" button */
.vector-menu-dropdown {
.vector-menu-heading {
color: var(--vector-tab-link-color) !important;
&:hover {
color: var(--vector-tab-link-color) !important;
}
&:focus {
color: var(--vector-tab-link-color) !important;
}
}
}
/* Sidebar */
.vector-menu-portal {
.vector-menu-heading {
color: var(--background-text-color) !important;
font-weight: bold !important;
background: none !important;
}
.vector-menu-content {
li {
a, a:visited {
color: var(--background-link-color) !important;
}
}
}
}
fd8bbfc11f58a6a0da6c50865a3ded2cfbf34ff6
The Delectable Dab Restaurant
0
89
2310
904
2024-04-11T23:56:26Z
Yellowsap
63
wikitext
text/x-wiki
{{Infobox Shop
|name = The Delectable Dab Restaurant
|image = [[File:The Deletectable Dab Restaurant.jpg|280px]]
|release =
|premium =
|episode =
|owner =
}}
'''The Deletectable Dab Restaurant''' is a restaurant.
cf39847e86a163859e75c55dab9aab7bf9cfd5bc
User:Merds
2
531
2311
903
2024-04-12T09:09:26Z
Merds
25
wikitext
text/x-wiki
== '''Subpages''' ==
<dpl>
namespace = User
titleregexp = Merds\/
order = ascending
ordermethod = sortkey
</dpl>
c379b70b5569a589b6b55641abb3585f5cff22ef
File:Yellowtail gurnard.png
6
988
2312
2024-04-12T11:01:40Z
Yellowsap
63
wikitext
text/x-wiki
da39a3ee5e6b4b0d3255bfef95601890afd80709
2313
2312
2024-04-12T11:04:22Z
Yellowsap
63
wikitext
text/x-wiki
{{Fair use|link=https://twitter.com/AndrewCGower/status/1769048510177948004}}
6f5ca0034357c95ba9ae599fe98e554b5597558d
Yellowtail Gurnard
0
449
2314
2121
2024-04-12T11:05:09Z
Yellowsap
63
wikitext
text/x-wiki
{{Infobox Interactable
|name = Yellowtail Gurnard
|image = [[File:Yellowtail gurnard.png]]
|release =
|premium =
|episode =
|profession = [[Fisher]]
|level = 14
|variant = [[Gurnard]]
|passive = No
}}
'''Yellowtail Gurnards''' are a type of [[fish]] and a [[variant]] of [[Gurnard]]s found in the [[Pirate Hideout]].{{CiteTwitter|url=https://twitter.com/AndrewCGower/status/1769048510177948004|author=Andrew Gower|date=16 March 2024|accessdate=22 March 2024|archiveurl=https://archive.is/whgCd|archivedate=22 March 2024|quote=}}
==References==
{{Reflist}}
5359084ae514f0ae8f8a4d4c8dac2a3191148f3e
MediaWiki:Gadget-editCount.js
8
344
2315
571
2024-04-12T11:45:04Z
Habblet
11
fix edit count element selector
javascript
text/javascript
/**
* Adds total edit count on User, User talk and Contributions as a PortletLink
* @author Jr_Mime
*/
(function ($, mw, bs) {
$( document ).ready(function() {
if (mw.config.get('wgNamespaceNumber') === 2 || mw.config.get('wgNamespaceNumber') === 3 || mw.config.get("wgCanonicalSpecialPageName") == "Contributions") {
var user = mw.config.get('wgRelevantUserName');
mw.util.addPortletLink(
'p-namespaces',
mw.util.getUrl('Special:EditCount/' + user),
'.. edits',
'ca-nstab-editcount',
'Click to open the user\'s full editcount'
);
$.post("/w/Special:EditCount/" + user).done(function (data) {
var edits_total_element = $(data).find("#editcount > table > tbody > tr:nth-child(2) > td:nth-child(2) > table > tbody > tr:last-child > td:nth-child(2)");
if (!edits_total_element.length) {
$("#ca-nstab-editcount").css("display","none");
return;
} else {
$("#ca-nstab-editcount > a").text(edits_total_element.text() + ' edits')
}
});
}
});
})(jQuery, mediaWiki, bswiki);
c86f1a0836764bcf7f1919327e767d56bc411b2e
MediaWiki:Editcount-before
8
989
2316
2024-04-12T11:49:50Z
Merds
25
Created blank page
wikitext
text/x-wiki
da39a3ee5e6b4b0d3255bfef95601890afd80709
Spells
0
990
2317
2024-04-13T22:43:27Z
Yellowsap
63
Created page with "'''Spells''' are abilities that [[player]]s can learn.{{CiteTwitter|url=https://twitter.com/AndrewCGower/status/1769048510177948004|author=Andrew Gower|date=16 March 2024|accessdate=22 March 2024|quote=Once you learn the sense spell you can highlight everything interactive nearby.|archiveurl=https://archive.is/whgCd|archivedate=22 March 2024}} ==List of Spells== *[[Sense]] ==References== {{Reflist}} [[Category:Spells]]"
wikitext
text/x-wiki
'''Spells''' are abilities that [[player]]s can learn.{{CiteTwitter|url=https://twitter.com/AndrewCGower/status/1769048510177948004|author=Andrew Gower|date=16 March 2024|accessdate=22 March 2024|quote=Once you learn the sense spell you can highlight everything interactive nearby.|archiveurl=https://archive.is/whgCd|archivedate=22 March 2024}}
==List of Spells==
*[[Sense]]
==References==
{{Reflist}}
[[Category:Spells]]
54c1e36ac5c4a19693a93f3b81c738619fd67836
2319
2317
2024-04-13T23:34:14Z
Merds
25
Merds moved page [[Spell]] to [[Spells]]: S
wikitext
text/x-wiki
'''Spells''' are abilities that [[player]]s can learn.{{CiteTwitter|url=https://twitter.com/AndrewCGower/status/1769048510177948004|author=Andrew Gower|date=16 March 2024|accessdate=22 March 2024|quote=Once you learn the sense spell you can highlight everything interactive nearby.|archiveurl=https://archive.is/whgCd|archivedate=22 March 2024}}
==List of Spells==
*[[Sense]]
==References==
{{Reflist}}
[[Category:Spells]]
54c1e36ac5c4a19693a93f3b81c738619fd67836
2349
2319
2024-04-20T08:15:30Z
Tony MP
66
/* List of Spells */
wikitext
text/x-wiki
'''Spells''' are abilities that [[player]]s can learn.{{CiteTwitter|url=https://twitter.com/AndrewCGower/status/1769048510177948004|author=Andrew Gower|date=16 March 2024|accessdate=22 March 2024|quote=Once you learn the sense spell you can highlight everything interactive nearby.|archiveurl=https://archive.is/whgCd|archivedate=22 March 2024}}
==List of Spells==
*[[Sense]]
*Arborae
==References==
{{Reflist}}
[[Category:Spells]]
0433ac0fd7016284ea71c8a38d7df7858fc876a6
2353
2349
2024-04-20T08:26:51Z
Tony MP
66
/* List of Spells */
wikitext
text/x-wiki
'''Spells''' are abilities that [[player]]s can learn.{{CiteTwitter|url=https://twitter.com/AndrewCGower/status/1769048510177948004|author=Andrew Gower|date=16 March 2024|accessdate=22 March 2024|quote=Once you learn the sense spell you can highlight everything interactive nearby.|archiveurl=https://archive.is/whgCd|archivedate=22 March 2024}}
==List of Spells==
*[[Sense]]
*[[Arborae]]
==References==
{{Reflist}}
[[Category:Spells]]
b8eecd540cc1d201d741786fda1e60836b555b0d
Category:Spells
14
991
2318
2024-04-13T23:13:56Z
Yellowsap
63
Created page with "{{Categoryheader|pages|[[Spell]]}} [[Category:Content]]"
wikitext
text/x-wiki
{{Categoryheader|pages|[[Spell]]}}
[[Category:Content]]
79f38c97cee85c806e4956eaf4902c14c3d22a99
2321
2318
2024-04-14T09:14:41Z
Yellowsap
63
wikitext
text/x-wiki
{{Categoryheader|pages|[[Spells]]}}
[[Category:Content]]
bb93240a2b1d0f987319b1e1afcd3a281e0727c6
Spell
0
992
2320
2024-04-13T23:34:14Z
Merds
25
Merds moved page [[Spell]] to [[Spells]]: S
wikitext
text/x-wiki
#REDIRECT [[Spells]]
c8a27f1503c11fd3baeba6cfa38d407183f64eb5
File:Profession alchemist.png
6
736
2322
1368
2024-04-19T17:57:39Z
Yellowsap
63
Yellowsap uploaded a new version of [[File:Profession alchemist.png]]
wikitext
text/x-wiki
== Summary ==
Derivative from https://brightershores.com/screenshots/09_himatik_ruins.jpg.
[[Category:Profession icons]]
a065329f7d726072a0e3f5135ca44e6be4fac44e
2323
2322
2024-04-19T17:59:07Z
Yellowsap
63
wikitext
text/x-wiki
== Summary ==
Derivative from https://twitter.com/PaulJGower/status/1781334642265559394.
[[Category:Profession icons]]
8b88266c6f30dfc60b1745755510fb886de9ce26
Strength Cryonae
0
647
2324
1777
2024-04-19T18:13:53Z
Yellowsap
63
Yellowsap moved page [[Cryoknight potion]] to [[Strength Cryonae]]: Named here https://twitter.com/PaulJGower/status/1781334642265559394/photo/1.
wikitext
text/x-wiki
{{Unofficial name}}
{{Infobox Item
|name = Cryoknight potion
|image = [[File:Cryoknight potion.png]]
|release =
|profession = Alchemist
|value =
}}
'''Cryoknight potions''' are a type of [[potion]].<ref>https://brightershores.com/screenshots/03_shade_combat.jpg</ref>
==References==
{{Reflist}}
[[Category:Potions]]
0de592332e9c06012b419205b3a45963046089e2
2332
2324
2024-04-19T18:50:20Z
Yellowsap
63
wikitext
text/x-wiki
{{Infobox Item
|name = Strength Cryonae
|image = [[File:Cryoknight potion.png]]
|release = Q3 [[2024]]
|episode = Hopeport
|profession = Alchemist
|value =
}}
'''Strength Cryonae''' is a type of [[potion]].<ref>https://brightershores.com/screenshots/03_shade_combat.jpg</ref>
==Creation==
{| class="wikitable"
! colspan="2" | Reagents
|-
| [[File:Wrinkled starfish.png|30px|link=Wrinkled Starfish]] || [[Wrinkled Starfish]]
|}
==References==
{{Reflist}}
[[Category:Potions]]
b517a5bb42f98003dc35af968085572637e676dc
Cryoknight potion
0
993
2325
2024-04-19T18:13:53Z
Yellowsap
63
Yellowsap moved page [[Cryoknight potion]] to [[Strength Cryonae]]: Named here https://twitter.com/PaulJGower/status/1781334642265559394/photo/1.
wikitext
text/x-wiki
#REDIRECT [[Strength Cryonae]]
d08adedee8a9c6282832f890a2e4d283f6f54f30
Strength Arborae
0
862
2326
1966
2024-04-19T18:14:33Z
Yellowsap
63
Yellowsap moved page [[Arborae potion]] to [[Strength Arborae]]
wikitext
text/x-wiki
{{Infobox Item
|name = Arborae potion
|image = [[File:Arborae potion.png]]
|premium =
|release = Q3 [[2024]]
|episode =
|profession = [[Alchemist]]
|value =
}}
The '''Arborae potion''' is a type of [[potion]].{{CiteTrailer|timestamp=0:19}}
==References==
{{Reflist}}
[[Category:Potions]]
08f8fb3d89f1bce58d860c4a2c023e3aa905f952
2333
2326
2024-04-19T18:51:06Z
Yellowsap
63
wikitext
text/x-wiki
{{Infobox Item
|name = Strength Arborae
|image = [[File:Arborae potion.png]]
|premium =
|release = Q3 [[2024]]
|episode =
|profession = [[Alchemist]]
|value =
}}
'''Strength Arborae''' is a type of [[potion]].{{CiteTrailer|timestamp=0:19}}
==References==
{{Reflist}}
[[Category:Potions]]
abc49e2b24d003c617354e5258a4ad0e381ecb35
Arborae potion
0
994
2327
2024-04-19T18:14:33Z
Yellowsap
63
Yellowsap moved page [[Arborae potion]] to [[Strength Arborae]]
wikitext
text/x-wiki
#REDIRECT [[Strength Arborae]]
59776dec5961cb1c608060304be9d1bafb0b96e7
Potion
0
298
2328
1962
2024-04-19T18:27:32Z
Yellowsap
63
wikitext
text/x-wiki
'''Potions''' are consumables that may be brewed through the [[Alchemist]] [[profession]].
The reagents to brew a potion are stored in the [[Potion Reagents Bank]].
==List of potions==
{| class="wikitable"
! colspan="2" | Potions
|-
| [[File:Hammermage potion.png|30px|link=Hammermage potion]] || [[Hammermage potion]]
|-
| [[File:Health potion.png|30px|link=Health potion]] || [[Health potion]]
|-
| [[File:Merchant potion.png|30px|link=Merchant potion]] || [[Merchant potion]]
|-
| [[File:Miner potion.png|30px|link=Miner potion]] || [[Miner potion]]
|-
| [[File:Arborae potion.png|30px|link=Strength Arborae]] || [[Strength Arborae]]
|-
| [[File:Cryoknight potion.png|30px|link=Strength Cryonae]] || [[Strength Cryonae]]
|}
268c7bfbe581d49d15bd800a80e1764330eaee65
File:Wrinkled starfish.png
6
995
2329
2024-04-19T18:45:25Z
Yellowsap
63
wikitext
text/x-wiki
da39a3ee5e6b4b0d3255bfef95601890afd80709
2330
2329
2024-04-19T18:48:37Z
Yellowsap
63
wikitext
text/x-wiki
{{Fair use|link=https://twitter.com/AndrewCGower/status/1769048510177948004}}
6f5ca0034357c95ba9ae599fe98e554b5597558d
2331
2330
2024-04-19T18:49:03Z
Yellowsap
63
Correcting link.
wikitext
text/x-wiki
{{Fair use|link=https://twitter.com/PaulJGower/status/1781334642265559394}}
a82b58219cdc5d7a81b5be3d09a6d56e15257d85
Wrinkled Starfish
0
911
2334
2132
2024-04-19T20:13:15Z
ToofleBerry
6
wikitext
text/x-wiki
{{Infobox Item
|name = Strength Cryonae
|image = [[File:Wrinkled starfish.png]]
|release = Q3 [[2024]]
|episode = Hopeport
|profession = Alchemist
|value = 380
}}
'''Wrinkled Starfish''' can be obtained from [[Wrinkled Starfish (Interactible)]] and is a regent for [[Strength Cryonae]].
==References==
{{Reflist}}
3cb60d431ea7adecdbd2196cba3854e4d2c4972a
2336
2334
2024-04-19T20:13:46Z
ToofleBerry
6
wikitext
text/x-wiki
{{Infobox Item
|name = Wrinkled Starfish
|image = [[File:Wrinkled starfish.png]]
|release = Q3 [[2024]]
|episode = Hopeport
|profession = Alchemist
|value = 380
}}
'''Wrinkled Starfish''' can be obtained from [[Wrinkled Starfish (Interactible)]] and is a regent for [[Strength Cryonae]].
==References==
{{Reflist}}
2894d5007d879563ab0122c9ddd5daaeb6f57d9f
Wrinkled Starfish (Interactible)
0
996
2335
2024-04-19T20:13:19Z
ToofleBerry
6
Created page with "{{Infobox Interactable |name = Wrinkled Starfish |image = |release = |premium = |episode = |profession = [[Forager]] |level = 18 |variant = [[Starfish]] |passive = No }} '''Wrinkled Starfish''' are a type of [[Forager]] interactable that can be found on the [[Jellyfish Landing]].{{CiteTwitter|author=@AndrewCGower|url=https://twitter.com/andrewcgower/status/1776276857706479810|date=5 April 2024|archiveurl=https://web.archive.org/web/20240406173123/https://twitter.com/..."
wikitext
text/x-wiki
{{Infobox Interactable
|name = Wrinkled Starfish
|image =
|release =
|premium =
|episode =
|profession = [[Forager]]
|level = 18
|variant = [[Starfish]]
|passive = No
}}
'''Wrinkled Starfish''' are a type of [[Forager]] interactable that can be found on the [[Jellyfish Landing]].{{CiteTwitter|author=@AndrewCGower|url=https://twitter.com/andrewcgower/status/1776276857706479810|date=5 April 2024|archiveurl=https://web.archive.org/web/20240406173123/https://twitter.com/andrewcgower/status/1776276857706479810|archivedate=6 April 2024|quote=store.steampowered.com/app/2791440/Brighter_Shores/ Quite a few people have been asking how the 'rooms' in Brighter Shores connect together, so I have a made a quick video of me running across a small section of Hopeport. You can see how easily you can move between rooms, and how the 'rooms' connect together to form a much larger world.|notes=Timestamp in the video: 0:56 / 1:41.|name=|group=}}
==References==
{{Reflist}}
3a952c43b7460f322d6693623fc598744cb9768b
File:Crashed Cart.png
6
997
2337
2024-04-20T07:55:41Z
Tony MP
66
wikitext
text/x-wiki
A crashed cart
22eb8b57f9dda9b70f3f4524a214fe7ff1de3d05
Crashed Cart
0
998
2338
2024-04-20T07:59:26Z
Tony MP
66
Created page with " == Crashed Cart == '''Crashed Carts''' can be found around [[Hopeport (location)|Hopeport]]. {{Infobox Item |name = Crashed Cart |image = [[File:Crashed_Cart.png]] |release = Q3 2024 |premium = No }}"
wikitext
text/x-wiki
== Crashed Cart ==
'''Crashed Carts''' can be found around [[Hopeport (location)|Hopeport]].
{{Infobox Item
|name = Crashed Cart
|image = [[File:Crashed_Cart.png]]
|release = Q3 2024
|premium = No
}}
17264d9252e0fe7067458835364f2e42598347b7
2339
2338
2024-04-20T08:00:13Z
Tony MP
66
/* Crashed Cart */
wikitext
text/x-wiki
== Crashed Cart ==
'''Crashed Carts''' can be found around [[Hopeport (location)|Hopeport]].
{{Infobox Item
|name = Crashed Cart
|image = [[File:Crashed_Cart.png]]
|release = Q3 2024
|premium = No
|Examine=I hope they were insured.}}
dcaf4a9257dd412f2ca5e1a9024f32298fe0e98b
2340
2339
2024-04-20T08:02:20Z
Tony MP
66
/* Crashed Cart */
wikitext
text/x-wiki
== Crashed Cart ==
'''Crashed Carts''' can be found around [[Hopeport (location)|Hopeport]].
{{Infobox Item
|name = Crashed Cart
|image = [[File:Crashed_Cart.png]]
|release = Q3 2024
|Examine=I hope they were insured.|Premium=No}}
2bc6a0bfcb0135f71529c0c5ccc15b828a41d955
2341
2340
2024-04-20T08:02:36Z
Tony MP
66
wikitext
text/x-wiki
== Crashed Cart ==
'''Crashed Carts''' can be found around [[Hopeport (location)|Hopeport]].
{{Infobox Item
|name = Crashed Cart
|image = [[File:Crashed_Cart.png]]
|release = Q3 2024
|Examine=I hope they were insured.|
Premium=No}}
77e68922c5422846c043b3e596fcd520eb9c576a
2342
2341
2024-04-20T08:03:16Z
Tony MP
66
/* Crashed Cart */
wikitext
text/x-wiki
== Crashed Cart ==
'''Crashed Carts''' can be found around [[Hopeport (location)|Hopeport]].
{{Infobox Item
|name = Crashed Cart
|image = [[File:Crashed_Cart.png]]
|release = Q3 2024
|Examine= I hope they were insured.
|Premium= No}}
df32fe22d2ab5d3908265b52850235d68c69bc31
2343
2342
2024-04-20T08:07:34Z
Tony MP
66
/* Crashed Cart */
wikitext
text/x-wiki
== Crashed Cart ==
'''Crashed Carts''' can be found around [[Hopeport (location)|Hopeport]].
{{Infobox Item
|name = Crashed Cart
|image = [[File:Crashed_Cart.png]]
|release = Q3 2024
|premium = No
|episode =
|Examine = "I hope they were insured."
|value =
}}
6c313e7a7a36312153080e71d6152ed1f1d2dc54
2344
2343
2024-04-20T08:08:21Z
Tony MP
66
wikitext
text/x-wiki
== Crashed Cart ==
'''Crashed Carts''' can be found around [[Hopeport (location)|Hopeport]].
{{Infobox Item
|name = Crashed Cart
|image = [[File:Crashed_Cart.png]]
|release = Q3 2024
|premium = No
|episode =
|Examine = "I hope they were insured."
}}
051da772b852b94265fb6180f57f153377684a28
2354
2344
2024-04-20T10:23:44Z
Yellowsap
63
wikitext
text/x-wiki
{{Infobox Item
|name = Crashed Cart
|image = [[File:Crashed_Cart.png]]
|release = Q3 2024
|premium = No
|episode =
|Examine = "I hope they were insured."
}}
'''Crashed Carts''' may be found around [[Hopeport (location)|Hopeport]].
b8415c5ee1c398da48c5682bf69d9511a71d1395
File:Freshmat Moss Monster.png
6
999
2345
2024-04-20T08:11:23Z
Tony MP
66
wikitext
text/x-wiki
Image of a Freshmat
2490eb8479505e44e9897bddbc470e53d0de52e8
Freshmat Moss Monster
0
1000
2346
2024-04-20T08:13:37Z
Tony MP
66
Created page with "== Freshmat == '''Freshmat''' can be found at *Location needed*. Freshmats are a type of Moss Monster. They are immune to the Arborate spell. {{Infobox Item |name = Freshmat |image = [[File:Freshmat.png]] |release = Q3 2024 |premium = No |episode = |Examine = "Animal, vegetable, and mineral all at once." }}"
wikitext
text/x-wiki
== Freshmat ==
'''Freshmat''' can be found at *Location needed*.
Freshmats are a type of Moss Monster. They are immune to the Arborate spell.
{{Infobox Item
|name = Freshmat
|image = [[File:Freshmat.png]]
|release = Q3 2024
|premium = No
|episode =
|Examine = "Animal, vegetable, and mineral all at once."
}}
5753081e2e181ad7204837ad9da3706b4d37865e
2347
2346
2024-04-20T08:14:15Z
Tony MP
66
wikitext
text/x-wiki
== Freshmat ==
'''Freshmat''' can be found at *Location needed*.
Freshmats are a type of Moss Monster. They are immune to the Arborate spell.
{{Infobox Item
|name = Freshmat
|image = [[File:Freshmat.png]]
|release = Q3 2024
|premium = No
|episode =
|level = 30
|Examine = "Animal, vegetable, and mineral all at once."
}}
2800573f3b3ae29ddbf70ab1f3613bfd453cb4b6
2348
2347
2024-04-20T08:14:45Z
Tony MP
66
/* Freshmat */
wikitext
text/x-wiki
== Freshmat ==
'''Freshmat''' can be found at *Location needed*.
Freshmats are a type of Moss Monster. They are immune to the Arborae spell.
{{Infobox Item
|name = Freshmat
|image = [[File:Freshmat.png]]
|release = Q3 2024
|premium = No
|episode =
|level = 30
|Examine = "Animal, vegetable, and mineral all at once."
}}
6ffab9ba2c942346b734710673160dd76724f33f
Arborae
0
1001
2350
2024-04-20T08:19:02Z
Tony MP
66
Created page with "== Arborae == '''Arborae''' is a spell that [[players]] can use. Certain monsters, such as [[Freshmat|Freshmats]], are immune to Arborae."
wikitext
text/x-wiki
== Arborae ==
'''Arborae''' is a spell that [[players]] can use. Certain monsters, such as [[Freshmat|Freshmats]], are immune to Arborae.
18a25d0e35ff798821b6a72b7a736fdc92562116
File:Robyn Nockright.png
6
1002
2351
2024-04-20T08:25:10Z
Tony MP
66
wikitext
text/x-wiki
An image of Robyn Nockright
d75f98eb1d44a91c7ece5e7af2ef07471c7019ae
Robyn nockright
0
1003
2352
2024-04-20T08:25:40Z
Tony MP
66
Created page with "== Robyn Nockright == '''Robyn Nockright''' is an NPC who uses her sharpshooting to protect Hopeport. {{Infobox NPC |name = Robyn Nockright |image = [[File:Robyn_Nockright.png]] |release = Q3 2024 |episode = |profession = Ranger |shop = Unknown }}"
wikitext
text/x-wiki
== Robyn Nockright ==
'''Robyn Nockright''' is an NPC who uses her sharpshooting to protect Hopeport.
{{Infobox NPC
|name = Robyn Nockright
|image = [[File:Robyn_Nockright.png]]
|release = Q3 2024
|episode =
|profession = Ranger
|shop = Unknown
}}
8418d95c70e73b3f1ab2fe4aa44aa0b8e44de96f
Freshmat Moss Monster
0
1000
2355
2348
2024-04-20T10:25:17Z
Yellowsap
63
Yellowsap moved page [[Freshmat]] to [[Freshmat Moss Monster]]
wikitext
text/x-wiki
== Freshmat ==
'''Freshmat''' can be found at *Location needed*.
Freshmats are a type of Moss Monster. They are immune to the Arborae spell.
{{Infobox Item
|name = Freshmat
|image = [[File:Freshmat.png]]
|release = Q3 2024
|premium = No
|episode =
|level = 30
|Examine = "Animal, vegetable, and mineral all at once."
}}
6ffab9ba2c942346b734710673160dd76724f33f
2357
2355
2024-04-20T10:30:31Z
Yellowsap
63
wikitext
text/x-wiki
{{Infobox Monster
|name = Freshmat
|image = [[File:Freshmat.png]]
|release =
|premium =
|episode =
|level = 30
|hp = 152
|variant = [[Moss Monster]]
|Examine = "Animal, vegetable, and mineral all at once."
|passive = No
}}
'''Freshmat Moss Monster''' is a [[monster]].
They are immune to [[Damage|Arborae damage]].
e3bc2775ce51e5e855ba0d083ddd804413bf3f1c
2367
2357
2024-04-20T18:56:36Z
Yellowsap
63
wikitext
text/x-wiki
{{Infobox Monster
|name = Freshmat
|image = [[File:Freshmat Moss Monster.png]]
|release =
|premium =
|episode =
|level = 30
|hp = 152
|variant = [[Moss Monster]]
|Examine = "Animal, vegetable, and mineral all at once."
|passive = No
}}
'''Freshmat Moss Monster''' is a [[monster]].
They are immune to [[Damage|Arborae damage]].
f37615376bddb79fb3a54dd95082e71950f8cb93
Freshmat
0
1004
2356
2024-04-20T10:25:17Z
Yellowsap
63
Yellowsap moved page [[Freshmat]] to [[Freshmat Moss Monster]]
wikitext
text/x-wiki
#REDIRECT [[Freshmat Moss Monster]]
3e99c4c5536c1e1c97f3ead74bd94ed49a7ee4db
Monsters
0
377
2358
2069
2024-04-20T10:31:01Z
Yellowsap
63
wikitext
text/x-wiki
'''Monsters''' are creatures in [[Brighter Shores]] that can be attacked. They are fought in [[combat]] for their loot, including valuable currency items.
There are many monsters in Brighter Shores, including:
* [[Firetoad]]
* [[Mawchest]]
* [[Punkupine]]
* [[Slime Fiend]]
* [[Sneaky Thief]]
* [[Wailing Shade]]
==Categories==
* [[Carnivorous Plant]]
* [[Crab]]
* [[Giant Ant]]
* [[Jellyfish]]
* [[Moss Monster]]
* [[Pirate]]
{{Mechanics}}
23b7d7632132a685cacaa4be182862870c3974c9
Moss Monster
0
1005
2359
2024-04-20T10:31:38Z
Yellowsap
63
Created page with "{{Interactcategory|name=Moss Monster|type=[[monster]]}} *[[Freshmat Moss Monster]]"
wikitext
text/x-wiki
{{Interactcategory|name=Moss Monster|type=[[monster]]}}
*[[Freshmat Moss Monster]]
6e3c937a220ccf8b5fb4de47ef424e77a58ea611
Damage
0
953
2360
2246
2024-04-20T10:32:20Z
Yellowsap
63
wikitext
text/x-wiki
{{Unofficial name}}
[[File:Thief combat.jpg|thumb|right|A player taking Cryoknight damage.]]
'''Damage''' is what is used to describe a monster's and/or player's attacks from their combat actions. Damage is split into different types and is possibly determined by the player's [[weapon]]. A weapon can also have no damage type.
==List of damage types==
{| class="wikitable"
! colspan="2" | Types
|-
| [[File:Guardian damage icon.png|30px]] || Arborae
|-
| [[File:Cryoknight damage icon.png|30px]] || Cryonae
|-
| [[File:Fire damage icon.png|30px]] || Fire
|-
| [[File:Hammermage damage icon.png|30px]] || Hammermage
|-
| [[File:Physical damage icon.png|30px]] || Physical
|-
| [[File:Necrotic damage icon.png|30px]] || Necrotic
|}
[[Category:Mechanics]]
b72b23b3300798489ae486996028f82c1716d4ff
Spells
0
990
2361
2353
2024-04-20T10:32:57Z
Yellowsap
63
wikitext
text/x-wiki
'''Spells''' are abilities that [[player]]s can learn.{{CiteTwitter|url=https://twitter.com/AndrewCGower/status/1769048510177948004|author=Andrew Gower|date=16 March 2024|accessdate=22 March 2024|quote=Once you learn the sense spell you can highlight everything interactive nearby.|archiveurl=https://archive.is/whgCd|archivedate=22 March 2024}}
==List of Spells==
*[[Sense]]
==References==
{{Reflist}}
[[Category:Spells]]
54c1e36ac5c4a19693a93f3b81c738619fd67836
Robyn nockright
0
1003
2362
2352
2024-04-20T10:36:58Z
Yellowsap
63
wikitext
text/x-wiki
{{Infobox NPC
|name = Robyn Nockright
|image = [[File:Robyn_Nockright.png]]
|release = Q3 2024
|episode = Hopeport
|profession =
}}
'''Robyn Nockright''' is an NPC. She uses her sharpshooting to protect [[Hopeport (location)|Hopeport]].
c461c2799f312d52f15a55566188a26dc1701266
Crashed Cart
0
998
2363
2354
2024-04-20T18:41:30Z
Yellowsap
63
wikitext
text/x-wiki
{{Infobox Scenery
|name = Crashed Cart
|image = [[File:Crashed_Cart.png]]
|release =
|premium =
|episode = Hopeforest
|Examine = "I hope they were insured."
}}
'''Crashed Carts''' may be found around [[Hopeforest (location)|Hopeforest]].
9d4ae14d4c9a543f64e15beba887d32865cf36f3
Module:Infobox Scenery
828
844
2364
1877
2024-04-20T18:43:53Z
Yellowsap
63
Scribunto
text/plain
local p = {}
local Infobox = require('Module:Infobox')
local parse = require('Module:Param Parse')
function p.main(frame)
local args = frame:getParent().args
local config = {
infobox_name = 'Scenery',
}
local params = {
parse.name,
parse.image,
parse.release,
parse.premium,
parse.episode,
parse.examine,
}
local infobox = Infobox.new(config, params, args)
infobox
:add_row{
{tag='th', content=Infobox.param('name'), class='infobox-header', colspan='20'},
}
:add_row{
{tag='td', content=Infobox.param('image'), class='infobox-image', colspan='20'},
}
:add_row{
{tag='th', content='Release', colspan="6"},
{tag='td', content=Infobox.param('release'), colspan="14"},
}
:add_row{
{tag='th', content='[[Episode]]', colspan="6"},
{tag='td', content=Infobox.param('episode'), colspan="14"},
}
:add_row{
{tag='th', content='[[Premium Pass|Premium]]', colspan="6"},
{tag='td', content=Infobox.param('premium'), colspan="14"},
}
:add_row{
{tag='th', content='Examine', colspan="6"},
{tag='td', content=Infobox.param('examine'), colspan="14"}
}
:pad(20)
return infobox
end
return p
7f1a67d05e4f943360bbffd7c39266ce456795b6
2365
2364
2024-04-20T18:44:48Z
Yellowsap
63
Undo revision [[Special:Diff/2364|2364]] by [[Special:Contributions/Yellowsap|Yellowsap]] ([[User talk:Yellowsap|talk]])
Scribunto
text/plain
local p = {}
local Infobox = require('Module:Infobox')
local parse = require('Module:Param Parse')
function p.main(frame)
local args = frame:getParent().args
local config = {
infobox_name = 'Scenery',
}
local params = {
parse.name,
parse.image,
parse.release,
parse.premium,
parse.episode,
}
local infobox = Infobox.new(config, params, args)
infobox
:add_row{
{tag='th', content=Infobox.param('name'), class='infobox-header', colspan='20'},
}
:add_row{
{tag='td', content=Infobox.param('image'), class='infobox-image', colspan='20'},
}
:add_row{
{tag='th', content='Release', colspan="6"},
{tag='td', content=Infobox.param('release'), colspan="14"},
}
:add_row{
{tag='th', content='[[Episode]]', colspan="6"},
{tag='td', content=Infobox.param('episode'), colspan="14"},
}
:add_row{
{tag='th', content='[[Premium Pass|Premium]]', colspan="6"},
{tag='td', content=Infobox.param('premium'), colspan="14"},
}
:pad(20)
return infobox
end
return p
d4287a351c1d8bd479c24137731b006df4be9486
2370
2365
2024-04-20T19:30:51Z
Gau Cho
5
Scribunto
text/plain
local p = {}
local Infobox = require('Module:Infobox')
local parse = require('Module:Param Parse')
function p.main(frame)
local args = frame:getParent().args
local config = {
infobox_name = 'Scenery',
}
local params = {
parse.name,
parse.image,
parse.release,
parse.premium,
parse.episode,
parse.examine,
}
local infobox = Infobox.new(config, params, args)
infobox
:add_row{
{tag='th', content=Infobox.param('name'), class='infobox-header', colspan='20'},
}
:add_row{
{tag='td', content=Infobox.param('image'), class='infobox-image', colspan='20'},
}
:add_row{
{tag='th', content='Release', colspan="6"},
{tag='td', content=Infobox.param('release'), colspan="14"},
}
:add_row{
{tag='th', content='[[Episode]]', colspan="6"},
{tag='td', content=Infobox.param('episode'), colspan="14"},
}
:add_row{
{tag='th', content='[[Premium Pass|Premium]]', colspan="6"},
{tag='td', content=Infobox.param('premium'), colspan="14"},
}
:add_row{
{tag='th', content='Examine', colspan="6"},
{tag='td', content=Infobox.param('examine'), colspan="14"}
}
:pad(20)
return infobox
end
return p
7f1a67d05e4f943360bbffd7c39266ce456795b6
File:Freshmat Moss Monster.png
6
999
2366
2345
2024-04-20T18:56:16Z
Yellowsap
63
Yellowsap moved page [[File:Freshmat.png]] to [[File:Freshmat Moss Monster.png]] without leaving a redirect: Match page name.
wikitext
text/x-wiki
Image of a Freshmat
2490eb8479505e44e9897bddbc470e53d0de52e8
Module:Param Parse
828
673
2368
2151
2024-04-20T19:29:43Z
Gau Cho
5
Examine
Scribunto
text/plain
--[=[
-- Standardized functions to parse Infobox params
--]=]
-- <nowiki>
local parse = {}
-- Generic functions --
-----------------------
-- Standardized "has content" function
function parse.has_content(arg)
-- Return arg if any non-whitespace character is found
return string.match(arg or '', '%S') and arg or nil
end
-- Standardized numbers
function parse.number(num)
num = string.gsub(num or '',',','')
return tonumber(num)
end
-- Yes/No
local yes_no = {
['Yes'] = 'true',
['No'] = 'false',
['N/A'] = 'NIL',
}
function parse.yes_no(text)
if yes_no[text] ~= nil then
return text
end
return nil
end
function parse.yes_no_smw(text)
if text == 'N/A' then
return nil
end
local bool = yes_no[text]
if bool ~= nil then
return bool
end
return nil
end
-- Premade Params --
--------------------
-- Standardized name function
parse.name = {
name = 'name',
func = parse.has_content,
smw_property = 'Name',
}
-- Standardized examine function
parse.examine = {
name = 'examine',
func = parse.has_content,
smw_property = 'Examine',
}
-- Standardized image function
function parse.image_func(img)
if img and string.match(img, '%[%[File:.*%]%]') then
return img
end
return nil
end
function parse.image_smw(img)
return img and string.match(img, "File:.*%.%w%w%w") or nil
end
parse.image = {
name = 'image',
func = parse.image_func,
smw_property = 'Image',
smw_func = parse.image_smw,
empty = '[[Special:Upload|Please upload an image!]]',
category_incomplete = 'Needs image',
}
-- Episode
local valid_episodes = {['Hopeport'] = 1, ['Hopeforest'] = 1, ['Mine of Mantuban'] = 1, ['Crenopolis'] = 1}
function parse.episode_func(episode)
if valid_episodes[episode] then
return '[[File:'..episode..' episode icon.png|18px]] [['..episode..']]'
end
return nil
end
function parse.episode_smw(episode)
if valid_episodes[episode] then
return episode
end
return nil
end
parse.episode = {
name = 'episode',
func = parse.episode_func,
smw_property = 'Episode',
smw_func = parse.episode_smw,
category_incomplete = 'Needs episode',
}
-- Premium
parse.premium = {
name = 'premium',
func = parse.yes_no,
smw_property = 'Premium',
smw_func = parse.yes_no_smw,
category_incomplete = 'Needs premium status',
}
-- Release (TODO)
parse.release = {
name = 'release',
func = parse.has_content,
}
-- Profession (TODO)
parse.profession = {
name = 'profession',
func = parse.has_content,
category_incomplete = 'Needs profession',
smw_property = 'Profession' -- TODO - Need to create property page
}
parse.variant = {
name = 'variant',
func = parse.has_content,
category_incomplete = 'Needs variant details',
smw_property = 'Variant of' -- TODO - Need to create property page
}
parse.passive = {
name = 'passive',
func = parse.yes_no,
smw_property = 'Passive',
smw_func = parse.yes_no_smw,
category_incomplete = 'Needs passiveness'
}
return parse
-- </nowiki>
931e0410cdb6ce766296edccb9f8257a5cc9ddd2
2371
2368
2024-04-20T19:34:51Z
Gau Cho
5
Add incomplete categories
Scribunto
text/plain
--[=[
-- Standardized functions to parse Infobox params
--]=]
-- <nowiki>
local parse = {}
-- Generic functions --
-----------------------
-- Standardized "has content" function
function parse.has_content(arg)
-- Return arg if any non-whitespace character is found
return string.match(arg or '', '%S') and arg or nil
end
-- Standardized numbers
function parse.number(num)
num = string.gsub(num or '',',','')
return tonumber(num)
end
-- Yes/No
local yes_no = {
['Yes'] = 'true',
['No'] = 'false',
['N/A'] = 'NIL',
}
function parse.yes_no(text)
if yes_no[text] ~= nil then
return text
end
return nil
end
function parse.yes_no_smw(text)
if text == 'N/A' then
return nil
end
local bool = yes_no[text]
if bool ~= nil then
return bool
end
return nil
end
-- Premade Params --
--------------------
-- Standardized name function
parse.name = {
name = 'name',
func = parse.has_content,
smw_property = 'Name',
category_incomplete = 'Needs name',
}
-- Standardized examine function
parse.examine = {
name = 'examine',
func = parse.has_content,
smw_property = 'Examine',
category_incomplete = 'Needs examine',
}
-- Standardized image function
function parse.image_func(img)
if img and string.match(img, '%[%[File:.*%]%]') then
return img
end
return nil
end
function parse.image_smw(img)
return img and string.match(img, "File:.*%.%w%w%w") or nil
end
parse.image = {
name = 'image',
func = parse.image_func,
smw_property = 'Image',
smw_func = parse.image_smw,
empty = '[[Special:Upload|Please upload an image!]]',
category_incomplete = 'Needs image',
}
-- Episode
local valid_episodes = {['Hopeport'] = 1, ['Hopeforest'] = 1, ['Mine of Mantuban'] = 1, ['Crenopolis'] = 1}
function parse.episode_func(episode)
if valid_episodes[episode] then
return '[[File:'..episode..' episode icon.png|18px]] [['..episode..']]'
end
return nil
end
function parse.episode_smw(episode)
if valid_episodes[episode] then
return episode
end
return nil
end
parse.episode = {
name = 'episode',
func = parse.episode_func,
smw_property = 'Episode',
smw_func = parse.episode_smw,
category_incomplete = 'Needs episode',
}
-- Premium
parse.premium = {
name = 'premium',
func = parse.yes_no,
smw_property = 'Premium',
smw_func = parse.yes_no_smw,
category_incomplete = 'Needs premium status',
}
-- Release (TODO)
parse.release = {
name = 'release',
func = parse.has_content,
}
-- Profession (TODO)
parse.profession = {
name = 'profession',
func = parse.has_content,
category_incomplete = 'Needs profession',
smw_property = 'Profession' -- TODO - Need to create property page
}
parse.variant = {
name = 'variant',
func = parse.has_content,
category_incomplete = 'Needs variant details',
smw_property = 'Variant of' -- TODO - Need to create property page
}
parse.passive = {
name = 'passive',
func = parse.yes_no,
smw_property = 'Passive',
smw_func = parse.yes_no_smw,
category_incomplete = 'Needs passiveness'
}
return parse
-- </nowiki>
423bb677bcf735776ec2828e48bd18ee63982e6c
Module:Param Parse/doc
828
781
2369
1983
2024-04-20T19:30:30Z
Gau Cho
5
wikitext
text/x-wiki
{{documentation}}
These params and functions are used to validate and format information passed into an Infobox. See [[Module:Infobox]] for details and instructions on creating an Infobox. If the information is missing or not valid, the functions here should return nil.
Here is a summary of all the params:
{| class="wikitable"
! param
! explanation
|-
| parse.name
| Title
|-
| parse.examine
| Examine info
|-
| parse.image
| <nowiki>[[File:IMAGE.png]]</nowiki>. Use the class '''infobox-image''' in the table
|-
| parse.episode
| Episode name
|-
| parse.premium
| Premium (Yes, No, N/A)
|-
| parse.release
| TODO
|-
| parse.profession
| TODO
|-
| parse.variant
| TODO - Which category the subject is a variant of
|}
Here are some general use functions that can be used for custom or new params:
{| class="wikitable"
! function name
! explanation
|-
| has_content(arg)
| Returns arg if any non-whitespace character is found in the string.
|-
| number(num)
| Removes any commas and parses the string as a number
|-
| yes_no(text)
| Only accepts "Yes", "No" and "N/A"
|-
| yes_no_smw(text)
| Maps "Yes", "No" to true and false respectively
|}
== Creating New Params ==
Ideally, params should be defined here so that they can be reused between different Infoboxes. Here is how to create a new param:
<syntaxhighlight lang="lua">
parse.paramname = {
name = <param>,
func = <func>,
empty = 'empty', -- optional
category_never = 'category', -- optional
category_partial = 'category', -- optional
category_incomplete = 'category', -- optional
category_complete = 'category', -- optional
smw_property = 'Property', -- optional
smw_func = <func>, -- optional
}
</syntaxhighlight>
{| class="wikitable"
! key
! value
|-
| name
| parameter name as used in the Template
|-
| func
| A function in [[Module:Param Parse]] to validate and process the Template argument. You can also use a local function, but this is not recommended.
If func is a function, will call func(Infobox.raw_param(name)):
<syntaxhighlight lang="lua">
{name = <param>, func = <func>, ... },
</syntaxhighlight>
If func is a table, it takes the following parameters:
<syntaxhighlight lang="lua">
{name = <param>, func = { name = <func>, params = <func_params>}, ... },
</syntaxhighlight>
{| class="wikitable"
| name
| function in [[Module:Param Parse]]
|-
| params
| a list of parameters to pass the the function, in the form of constants, or Infobox.raw_param(name), Infobox.param(name), Infobox.smw_param(name)
|}
|-
| empty (optional)
| text to display in the infobox if func returns nil; defaults to "? (edit)"
|-
| category_never (optional)
| category to add if func returns nil for all versions
|-
| category_partial (optional)
| category to add if func returns nil for some versions, but a value for other versions
|-
| category_incomplete (optional)
| category to add if func returns nil for at least 1 version (i.e. category_never and category_partial combined)
|-
| category_complete (optional)
| category to add if func returns a value for all versions
|-
| smw_property (optional)
| if this string is defined, the parameter will be saved into SMW
|-
| smw_func (optional)
| function to validate and process the Template argument to save into SMW. func is used by default if smw_func is not defined
|}
12251ac3cbeb1f9fca31d535f82a36c2abe44340